Obsah:

Riadenie malých motorov s TB6612FNG: 8 krokov
Riadenie malých motorov s TB6612FNG: 8 krokov

Video: Riadenie malých motorov s TB6612FNG: 8 krokov

Video: Riadenie malých motorov s TB6612FNG: 8 krokov
Video: 6 самых неудовлетворительных внедорожников 2022 года по версии Consumer Reports 2024, December
Anonim
Riadenie malých motorov s TB6612FNG
Riadenie malých motorov s TB6612FNG

TB6612FNG je IC s dvojitým motorom od spoločnosti Toshiba. Existuje na to veľa oddeľovacích dosiek a je to jedna z najobľúbenejších možností riadenia malých motorov.

Existuje veľa online zdrojov, ako začať s TB6612FNG, ale rozhodol som sa to napísať tak, aby som lepšie skomponoval to, na čo som prišiel.

V tomto návode sa zameriam na logiku ovládania a tiež podrobne vysvetlím knižnicu motorových ovládačov Sparkfun TB6612FNG.

Krok 1: Potrebné diely

Tu budeme používať dnes:

1) Micro Metal motory

2) Ovládač motora TB6612FNG

3) Kábel Arduino a USB

4) Zdroj energie pre motory

5) Breadboard

6) Prepojovacie vodiče

Krok 2: Oddeľovacia doska TB6612FNG

Oddeľovacia doska TB6612FNG
Oddeľovacia doska TB6612FNG

Ako som už spomenul, pre TB6612FNG existuje veľa oddeľovacích dosiek od rôznych výrobcov. Všetky majú na sebe viac -menej rovnaké komponenty a tiež podobný vývod.

Kondenzátory sú spájkované na dosku na ochranu pred hlukom z motorov, takže tieto keramické kondenzátory nebudete musieť spájkovať s motormi.

IC má tiež vnútorné diódy na ochranu pred zadným EMF z motorov. Dodatočné bezpečnostné opatrenia však nikomu neublížili. Nepridal som ich, pretože moje motory nie sú príliš veľké a chýbajú mi diódy: |

Krok 3: Pin Out

Pin Outs
Pin Outs

Prelomová doska TB6612FNG má veľmi presvedčivý pinout. Všetky výstupy motora, vstupy a napájacie pripojenia sú pekne zoskupené, aby sa zaistilo maximálne jednoduché použitie.

Urobil som ilustráciu pinoutov a ich prepojenia, dúfam, že sa to bude hodiť pri spájaní všetkých tých vodičov:)

Krok 4: Schémy

Schémy
Schémy
Schémy
Schémy

S používaním Fritzingu som celkom nový. Zdá sa mi, že schémy obvodov od spoločnosti Fritzing sú pomerne ťažko pochopiteľné, ale zobrazenie na lište je vhodné pre Instructables. Ak niektoré z káblových prepojení vyzerá mätúco, neváhajte sa opýtať.

Krok 5: Zapojenie

Zapojenie
Zapojenie

Všetko zapojte podľa schém. Existuje veľa drôtov, preto ich po každom pripojení dvakrát skontrolujte.

Na vstupy ovládača motora som použil nasledujúce piny Arduino:

Ovládač motora -> Číslo PIN Arduino

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Veci, ktoré sa môžu v tomto kroku pokaziť: 1) Pri pripájaní Vm a GND zo zdroja energie neotočte polaritu. Môžete usmažiť vodiča motora.

2) Nezabudnite pripojiť kolíky PWMA a PWMB k PWM na Arduine.

3) Nezabudnite pripojiť Arduino GND a GND z ovládača motora, ak pre každý používate iný zdroj napájania.

Krok 6: Stiahnutie a inštalácia knižnice

Stiahnite si knižnicu zo stránky GitHub spoločnosti Sparkfun.

Po stiahnutí súboru zip otvorte svoje Arduino IDE.

Zo Sketch> Include Library> Add. Zip Library pridajte knižnicu, ktorú ste stiahli.

Po úspešnej inštalácii by sa mal objaviť v Súbore> Príklady ako „Motorová knižnica SparkFun TB6612FNG“

Ak máte problémy so sťahovaním a inštaláciou knižnice Arduino, pozrite si krok 5 tohto návodu.

Krok 7: Spustenie ukážkového kódu

Teraz, keď máme knižnicu pripravenú, môžeme nahrať ukážkový kód a otestovať ho.

1) Otvorte príklad „MotorTestRun“z „Knižnice ovládačov motorov Sparkfun TB6612FNG“uvedenej vo vašich knižniciach.

Poznámka: Ak nepoužívate rovnaké čísla pinov, ako sú uvedené v kroku 5, určite zmeňte definície pinov podľa svojho nastavenia.

2) Vyberte si nástenku u správcu rady

3) Odošlite kód a motory by sa mali začať pohybovať

Akonáhle nahráte, motory by sa mali začať pohybovať. Ak nie sú, znova skontrolujte zapojenie.

Krok 8: Vysvetlenie knižnice

Teraz vysvetlíme, ako používať knižnicu na vlastný kus kódu.

Najprv začnite importom knižnice a inicializáciou pinov na arduino

#zahrnúť

#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6 #define STBY 9

Na inicializáciu svojich motorových predmetov musíte pre každé motory nastaviť offsety. Predstavte si, že na motore robíte príkaz dopredu a otáča sa naopak. Môžete ho manuálne previnúť späť alebo môžete odsadenie jednoducho zmeniť. Šikovný malý hack QoL pridaný spoločnosťou SparkFun. Hodnoty týchto posunov sú buď 1 alebo -1.

Potom musíte inicializovať každý z motorov s nasledujúcimi parametrami;

Motor = motor (kolík 1, kolík 2, kolík PWM, offset, kolík v pohotovostnom režime)

const int offsetA = 1;

konšt. ofset offB = 1; Motor motor1 = motor (AIN1, AIN2, PWMA, offsetA, STBY);

A tým je inicializácia knižnice hotová. Žiadne ďalšie kroky vo funkcii setup (), spustíme iba kód vo funkcii loop ().

Motorická metóda má nasledujúce funkcie. Pohrajte sa, aby ste ich všetky skontrolovali.

1). Pohon (hodnota, čas)

Motor_name = názov hodnoty vášho objektu motora = 255 až -255; záporné hodnoty spôsobia, že sa motor bude pohybovať v opačnom čase = čas v milisekundách

2).brzda ()

Funkcia brzdy nevyžaduje žiadne argumenty, brzdí motory.

3) brzda (, <názov_motora2)

Funkcia brzdy berie názvy motorových objektov ako argumenty. Brzdy motorov prešli do funkcie.

4) dopredu (,, čas) dopredu (,, rýchlosť, čas)

Funkcia akceptuje názov dvoch motorových objektov, voliteľne rýchlosť a čas PWM v milisekundách a po uplynutí dlhého času spustí motor v smere dopredu. Ak je hodnota rýchlosti záporná, motor sa vráti späť. Predvolená rýchlosť je nastavená na 255.

5) späť (,, čas) späť (,, rýchlosť, čas)

Funkcia akceptuje názov dvoch motorových objektov, voliteľne rýchlosť a čas PWM v milisekundách a po uplynutí dlhého času spustí motor v smere dopredu. Ak je hodnota rýchlosti záporná, motor pôjde dopredu. Predvolená rýchlosť je nastavená na 255.

6) vľavo (,, rýchlosť) vpravo (,, rýchlosť)

Funkcia akceptuje dva názvy motorových objektov a rýchlosť. Poradie motorových predmetov, ktoré prešli ako parametre, je dôležité. Na pohon jednotlivých motorov použite namiesto toho.drive ().

Odporúča: