Obsah:

Řízení malých motorů s TB6612FNG: 8 kroků
Řízení malých motorů s TB6612FNG: 8 kroků

Video: Řízení malých motorů s TB6612FNG: 8 kroků

Video: Řízení malých motorů s TB6612FNG: 8 kroků
Video: Jak řídit motorový člun když je to vaše poprvé 2024, Listopad
Anonim
Řízení malých motorů s TB6612FNG
Řízení malých motorů s TB6612FNG

TB6612FNG je dvoumotorový ovladač IC od společnosti Toshiba. Existuje spousta rozbíjecích desek a je to jedna z nejpopulárnějších možností pohonu malých motorů.

Existuje spousta online zdrojů, jak začít s TB6612FNG, ale rozhodl jsem se to napsat tak jako tak, abych lépe zkompiloval to, na co jsem narazil.

Budu se soustředit na logiku ovládání a také podrobně vysvětlím knihovnu motorů Sparkfun TB6612FNG v tomto návodu.

Krok 1: Potřebné díly

Dnes použijeme toto:

1) Micro Metal motory

2) Ovladač motoru TB6612FNG

3) Kabel Arduino a USB

4) Zdroj energie pro motory

5) Breadboard

6) Propojovací vodiče

Krok 2: Oddělovací deska TB6612FNG

Oddělovací deska TB6612FNG
Oddělovací deska TB6612FNG

Jak jsem již zmínil, pro TB6612FNG existuje spousta odlamovacích desek od různých výrobců. Všechny mají na sobě víceméně stejné komponenty a také podobný vývod.

Kondenzátory jsou připájeny na desku kvůli ochraně před hlukem z motorů, takže tyto keramické kondenzátory nebudete muset připájet k motorům.

Integrovaný obvod je dodáván také s vnitřními diodami, které chrání před zpětným EMF z motorů. Dodatečná bezpečnostní opatření ale nikomu neublížila. Nepřidal jsem je, protože moje motory nejsou příliš velké a mám nedostatek diod: |

Krok 3: Pin Outs

Pin Outs
Pin Outs

Odlamovací deska TB6612FNG má velmi přesvědčivý pinout. Všechny výstupy, vstupy a napájecí přípojky motoru jsou pěkně seskupeny pro maximální snadné použití.

Udělal jsem ilustraci vývodů a jejich připojení, doufám, že se to bude hodit při připojování všech těch vodičů:)

Krok 4: Schémata

Schémata
Schémata
Schémata
Schémata

Jsem docela nový v používání Fritzing. Shledávám schémata obvodů z Fritzingu docela obtížně pochopitelná, ale zobrazení na breadboardu je vhodné pro Instructables. Neváhejte se na cokoli zeptat, pokud některé z drátových připojení vypadá matoucí.

Krok 5: Zapojení

Zapojení
Zapojení

Zapojte vše podle schémat. Je tu spousta vodičů, nezapomeňte to po každém připojení zkontrolovat.

Pro vstupy ovladače motoru jsem použil následující piny Arduino:

Motor Driver -> Arduino Pin Number

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Věci, které se mohou v tomto kroku pokazit: 1) Při připojování Vm a GND ze zdroje napájení neobracejte polaritu. Můžete usmažit řidiče motoru.

2) Ujistěte se, že jste připojili PWMA a PWMB k pinům PWM na Arduinu.

3) Nezapomeňte připojit Arduino GND a GND z ovladače motoru, pokud pro každý používáte jiný zdroj energie.

Krok 6: Stažení a instalace knihovny

Stáhněte si knihovnu ze stránky GitHub společnosti Sparkfun.

Jakmile si stáhnete soubor zip, otevřete Arduino IDE.

Ze Sketch> Include Library> Add. Zip Library přidejte staženou knihovnu.

Po úspěšné instalaci by se měl zobrazit v nabídce Soubor> Příklady jako „SparkFun TB6612FNG Motor Library“

Pokud máte potíže se stahováním a instalací knihovny Arduino, podívejte se na krok 5 tohoto pokynu.

Krok 7: Spuštění ukázkového kódu

Nyní, když máme připravenou naši knihovnu, můžeme nahrát ukázkový kód a otestovat jej.

1) Otevřete příklad 'MotorTestRun' z knihovny 'Sparkfun TB6612FNG Motor Driver Library' uvedené ve vašich knihovnách.

Poznámka: Pokud nepoužíváte stejná čísla pinů, jak je uvedeno v kroku 5, změňte definice pinů podle svého nastavení.

2) Vyberte si nástěnku u správce vývěsky

3) Nahrajte kód a motory by se měly začít pohybovat

Jakmile nahrajete, motory by se měly začít pohybovat. Pokud tomu tak není, zkontrolujte znovu zapojení.

Krok 8: Vysvětlení knihovny

Nyní vysvětlíme, jak používat knihovnu pro vlastní část kódu.

Nejprve začněte importem knihovny a inicializací pinů na arduino

#zahrnout

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

Chcete -li inicializovat své objekty motoru, musíte nastavit offsety pro každý motor. Představte si, že na motoru děláte příkaz vpřed a on se točí vzad. Můžete jej ručně přepojit, nebo můžete odsud změnit posun. Šikovný malý hack QoL přidaný SparkFunem. Hodnoty těchto offsetů jsou buď 1 nebo -1.

Poté musíte inicializovat každý z motorů s následujícími parametry;

Motor = Motor (Pin 1, Pin 2, PWM pin, offset, Standby pin)

konstantní offsetA = 1;

konstantní offsetB = 1; Motor motor1 = Motor (AIN1, AIN2, PWMA, offsetA, STBY);

A tím je inicializace knihovny hotová. Žádné další kroky ve funkci setup (), pouze spustíme kód ve funkci loop ().

Metoda motoru má následující funkce. Tinker kolem, aby je všechny zkontroloval.

1). Pohon (hodnota, čas)

Motor_name = název hodnoty vašeho objektu motoru = 255 až -255; záporné hodnoty způsobí pohyb motoru v opačném čase = čas v milisekundách

2).brzda ()

Funkce brzdy nevyžaduje žádné argumenty, brzdí motory.

3) brzda (, <název_motoru2)

Funkce brzdy bere jako argument názvy motorových objektů. Brzdy motorů přešly do funkce.

4) vpřed (,, čas) vpřed (,, rychlost, čas)

Funkce akceptuje název dvou motorových objektů, volitelně rychlost a čas PWM v milisekundách a po uplynulý čas spustí motor vpřed. Pokud je hodnota rychlosti záporná, motor se vrátí zpět. Výchozí rychlost je nastavena na 255.

5) zpět (,, čas) zpět (,, rychlost, čas)

Funkce akceptuje název dvou motorových objektů, volitelně rychlost a čas PWM v milisekundách a po uplynulý čas spustí motor vpřed. Pokud je hodnota rychlosti záporná, motor půjde vpřed. Výchozí rychlost je nastavena na 255.

6) vlevo (,, rychlost) vpravo (,, rychlost)

Funkce přijímá dva názvy motorových objektů a rychlost. Pořadí předaných motorových objektů jako parametrů je důležité. K pohonu jednotlivých motorů použijte místo toho.drive ().

Doporučuje: