Tartalomjegyzék:

Kis motorok vezetése a TB6612FNG segítségével: 8 lépés
Kis motorok vezetése a TB6612FNG segítségével: 8 lépés

Videó: Kis motorok vezetése a TB6612FNG segítségével: 8 lépés

Videó: Kis motorok vezetése a TB6612FNG segítségével: 8 lépés
Videó: Top 10 SnowRunner BEST trucks for SEASON 8: Grand Harvest 2024, November
Anonim
Kis motorok vezetése a TB6612FNG -vel
Kis motorok vezetése a TB6612FNG -vel

A TB6612FNG a Toshiba kettős motoros illesztőprogramja. Rengeteg kitörési tábla létezik erre, és ez az egyik legnépszerűbb választás a kis motorok meghajtására.

Rengeteg online forrás található a TB6612FNG használatának megkezdéséhez, de úgy döntöttem, hogy ezt mégis megírom, hogy jobban összeállítsam, amire bukkantam.

A vezérlő logikára összpontosítok, és részletesen elmagyarázom a Sparkfun TB6612FNG motorvezérlő könyvtárat ebben az utasításban.

1. lépés: Szükséges alkatrészek

Ezt fogjuk ma használni:

1) Mikrofém motorok

2) TB6612FNG motorvezérlő

3) Arduino és USB kábel

4) A motorok áramforrása

5) Kenyeretábla

6) Jumper vezetékek

2. lépés: A TB6612FNG Breakout Board

A TB6612FNG Breakout Board
A TB6612FNG Breakout Board

Ahogy korábban említettem, a TB6612FNG -hez rengeteg kitörő tábla található a különböző gyártóktól. Mindegyiken többé -kevésbé ugyanazok az alkatrészek vannak, és hasonló pinout is.

A kondenzátorok a táblához vannak forrasztva, hogy megvédjék a motorok zaját, így nem kell ezeket a kerámia kondenzátorokat forrasztani a motorokhoz.

Az IC belső diódákkal is rendelkezik, amelyek megvédik a motorokat a hátsó EMF -től. De az extra biztonsági intézkedések senkinek sem ártanak. Nem adtam hozzá őket, mert a motorjaim nem túl nagyok, és kevés a diódám: |

3. lépés: Rögzítse a kimeneteket

Pin Outs
Pin Outs

A TB6612FNG kitörőtáblán nagyon kényelmes pinout van. Az összes motor kimenet, bemenet és tápcsatlakozás szépen csoportosítva van a maximális könnyű használat érdekében.

Illusztrációt készítettem a pinoutokról és a csatlakoztatásukról, remélem, hogy jól jön, ha mindezeket a vezetékeket csatlakoztatom:)

4. lépés: Sémák

Vázlatok
Vázlatok
Vázlatok
Vázlatok

Elég kezdő vagyok a Fritzing használatában. A Fritzing áramköri sémáit meglehetősen nehezen értem, de a kenyérpanel nézet kényelmes az Instructables számára. Nyugodtan tegyen fel kérdéseket, ha a vezetékek bármelyike zavarosnak tűnik.

5. lépés: Csatlakoztassa

Bekötés
Bekötés

Csatlakoztasson mindent a vázlatok szerint. Sok vezeték van, minden csatlakozás után ellenőrizze újra.

A következő Arduino csapokat használtam a motorvezérlő bemeneteihez:

Motorvezérlő -> Arduino PIN -szám

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Ebben a lépésben hibák történhetnek: 1) Ne fordítsa meg a polaritást, miközben a Vm -t és a GND -t csatlakoztatja az áramforráshoz. Lehet, hogy megsüti a motoros sofőrjét.

2) Győződjön meg arról, hogy a PWMA és a PWMB csatlakozik az arduino PWM csapjaihoz.

3) Ne felejtse el csatlakoztatni az Arduino GND -t és a GND -t a motorvezérlőből, ha mindegyikhez más áramforrást használ.

6. lépés: A könyvtár letöltése és telepítése

Töltse le a könyvtárat a Sparkfun GitHub oldaláról.

Miután letöltötte a zip fájlt, nyissa meg az Arduino IDE -t.

A Vázlat> Könyvtár bevonása>. Zip könyvtár hozzáadása menüpontban adja hozzá a letöltött könyvtárat.

A sikeres telepítés után meg kell jelennie a Fájl> Példák oldalon, "SparkFun TB6612FNG Motor Library" néven

Ha problémái vannak az Arduino könyvtár letöltésével és telepítésével, nézze meg ennek az utasításnak az 5. lépését.

7. lépés: A példakód futtatása

Most, hogy elkészült a könyvtárunk, feltölthetjük a példakódot, hogy kipróbálhassuk.

1) Nyissa meg a „MotorTestRun” példát a könyvtáraiban felsorolt „Sparkfun TB6612FNG Motor Driver Library” -ből.

Megjegyzés: Ha nem ugyanazokat a PIN -kódokat használja, mint az 5. lépésben, akkor feltétlenül módosítsa a PIN -meghatározásokat a beállításoknak megfelelően.

2) Válassza ki a táblát a fórumkezelőből

3) Töltse fel a kódot, és a motoroknak mozogniuk kell

A feltöltés után a motoroknak mozogniuk kell. Ha nem, ellenőrizze újra a vezetékeket.

8. lépés: A könyvtár magyarázata

Most magyarázza el, hogyan kell használni a könyvtárat saját kódrészletéhez.

Először a könyvtár importálásával és a pin -ek inicializálásával kezdje az arduino -n

#befoglalni

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

A motorobjektumok inicializálásához minden motorhoz korrekciót kell beállítani. Képzeld el, ha előrehajtó parancsot hajtasz végre a motorodon, és hátramenetben forog. Manuálisan újracsavarozhatja, vagy egyszerűen megváltoztathatja az eltolást. Finom kis QoL hack hozzáadta a SparkFun. Ezeknek az eltolásoknak az értéke 1 vagy -1.

Ezután a következő paraméterekkel kell inicializálnia mindegyik motort;

Motor = Motor (1 -es, 2 -es tű, PWM -tű, eltolás, készenléti tű)

const int eltolásA = 1;

const int eltolásB = 1; Motor motor1 = Motor (AIN1, AIN2, PWMA, offsetA, STBY);

Ezzel befejezte a könyvtár inicializálását. Nincs több lépés a setup () függvényben, csak futtatjuk a kódot a loop () függvényben.

A motoros módszer a következő funkciókkal rendelkezik. Bicikli körül, hogy megnézze őket.

1).hajtás (érték, idő)

Motor_név = motorobjektum neve érték = 255 --255; negatív értékek miatt a motor fordított időben mozog = idő ezredmásodpercben

2). Fék ()

A fékfunkció nem vesz fel érveket, fékezi a motorokat.

3) fék (, <motor_neve2)

A fékfunkció argumentumként veszi figyelembe a motorobjektumok nevét. Fékezi a motorokat a funkcióba.

4) előre (,, idő) előre (,, sebesség, idő)

A Funkció két motorobjektum nevét fogadja el, opcionálisan PWM sebességet és időt ezredmásodpercben, és a motort előre haladva irányítja az eltelt ideig. Ha a fordulatszám negatív, a motor visszafelé indul. Az alapértelmezett sebesség 255.

5) vissza (,, idő) vissza (,, sebesség, idő)

A Funkció két motorobjektum nevét fogadja el, opcionálisan PWM sebességet és időt ezredmásodpercben, és a motort előre haladva irányítja az eltelt ideig. Ha a sebesség értéke negatív, a motor előre megy. Az alapértelmezett sebesség 255.

6) bal (,, sebesség) jobb (,, sebesség)

A függvény két motorobjektum -nevet és sebességet fogad el. Fontos a paraméterekként átadott motorobjektumok sorrendje. Egyetlen motor meghajtásához használja a.drive () parancsot.

Ajánlott: