Kazalo:

Vožnja majhnih motorjev s TB6612FNG: 8 korakov
Vožnja majhnih motorjev s TB6612FNG: 8 korakov

Video: Vožnja majhnih motorjev s TB6612FNG: 8 korakov

Video: Vožnja majhnih motorjev s TB6612FNG: 8 korakov
Video: 6 самых неудовлетворительных внедорожников 2022 года по версии Consumer Reports 2024, November
Anonim
Vožnja majhnih motorjev s TB6612FNG
Vožnja majhnih motorjev s TB6612FNG

TB6612FNG je IC z dvojnim motorjem iz Toshibe. Za to obstaja veliko odmičnih plošč in je ena izmed najbolj priljubljenih možnosti za pogon majhnih motorjev.

Za začetek uporabe TB6612FNG je na voljo veliko spletnih virov, vendar sem se vseeno odločil, da bom to napisal, da bom bolje sestavil tisto, kar sem naletel.

Osredotočil se bom na krmilno logiko in v tem navodilu podrobno razložil knjižnico gonilnikov motorja Sparkfun TB6612FNG.

1. korak: potrebni deli

Danes bomo uporabili naslednje:

1) Motorji iz mikro kovine

2) Gonilnik motorja TB6612FNG

3) Arduino in USB kabel

4) Vir energije za motorje

5) Ogledna plošča

6) Mostične žice

Korak: Odbojna plošča TB6612FNG

Prelomna deska TB6612FNG
Prelomna deska TB6612FNG

Kot sem že omenil, obstaja veliko odmičnih plošč različnih proizvajalcev za TB6612FNG. Vsi imajo na sebi bolj ali manj enake komponente in tudi podoben pinout.

Kondenzatorji so spajani na ploščo za zaščito pred hrupom motorjev, zato vam ni treba spajkati teh keramičnih kondenzatorjev na motorje.

IC ima tudi notranje diode za zaščito EMF od motorjev. Toda dodatni varnostni ukrepi ne poškodujejo nikogar. Nisem jih dodal, ker moji motorji niso zelo veliki in mi primanjkuje diod: |

3. korak: Priključite izhode

Pin Outs
Pin Outs

Odklopna plošča TB6612FNG ima zelo udoben izpis. Vsi izhodi motorja, vhodi in napajalni priključki so lepo združeni za maksimalno enostavnost uporabe.

Naredil sem ponazoritev pinoutov in kako jih povezati, upam, da mi bo prišel prav, ko povežem vse te žice:)

4. korak: Sheme

Sheme
Sheme
Sheme
Sheme

Ravno nov sem pri uporabi Fritzinga. Sheme vezja iz Fritzinga se mi zdijo precej težko razumljive, toda pogled na ploščo je primeren za Instructables. Če katera od žičnih povezav izgleda zmedeno, vprašajte.

5. korak: Ožičenje

Ožičenje
Ožičenje

Vse povežite v skladu s shemami. Obstaja veliko žic, po vsaki povezavi preverite še enkrat.

Za vhode gonilnika motorja sem uporabil naslednje zatiče Arduino:

Gonilnik motorja -> Arduino PIN številka

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Stvari, ki bi lahko bile v tem koraku narobe: 1) Ne spreminjajte polarnosti, medtem ko povezujete Vm in GND z virom napajanja. Lahko prepražite voznika motorja.

2) PWMA in PWMB priključite na zatiče PWM na arduinu.

3) Ne pozabite priključiti Arduino GND in GND iz gonilnika motorja, če uporabljate drugačen vir napajanja za vsakega.

6. korak: Prenos in namestitev knjižnice

Knjižnico prenesite s strani Sparkfun GitHub.

Ko prenesete datoteko zip, odprite svoj Arduino IDE.

V razdelku Sketch> Include Library> Add. Zip Library dodajte knjižnico, ki ste jo prenesli.

Ko je uspešno nameščen, bi se moral prikazati v meniju Datoteka> Primeri kot "SparkFun TB6612FNG Motor Library"

Če imate težave s prenosom in namestitvijo knjižnice Arduino, si oglejte 5. korak tega navodila.

7. korak: Zaženite primer kode

Zdaj, ko imamo knjižnico pripravljeno, lahko naložimo primer kode, da jo preizkusimo.

1) Odprite primer "MotorTestRun" iz "Sparkfun TB6612FNG Motor Driver Library", navedene v vaših knjižnicah.

Opomba: Če ne uporabljate enakih številk zatičev, kot je omenjeno v 5. koraku, spremenite definicije nožic glede na nastavitve.

2) V upravitelju plošče izberite svojo ploščo

3) Naložite svojo kodo in motorji bi se morali začeti premikati

Ko naložite, bi se morali motorji začeti premikati. Če niso, ponovno preverite ožičenje.

8. korak: Razložena knjižnica

Zdaj pa razložite, kako uporabljati knjižnico za svoj del kode.

Najprej začnite z uvozom knjižnice in inicializacijo zatičev na arduinu

#vključi

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

Če želite inicializirati svoje motorne objekte, morate za vsakega motorja nastaviti odmike. Predstavljajte si, če na svojem motorju izvajate ukaz za naprej in se vrti nazaj. Lahko ga ročno ponovno povežete ali pa tukaj spremenite odmik. Vrhunski mali kramp QoL, ki ga je dodal SparkFun. Vrednosti teh odmikov so 1 ali -1.

Nato morate inicializirati vsakega motorja z naslednjimi parametri;

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

const int offsetA = 1;

const int offsetB = 1; Motor motor1 = motor (AIN1, AIN2, PWMA, offsetA, STBY);

S tem ste končali z inicializacijo knjižnice. Ni več korakov v funkciji setup (), samo zaženemo kodo v funkciji loop ().

Motorna metoda ima naslednje funkcije. Pomislite, da jih vse preverite.

1).drive (vrednost, čas)

Motor_name = ime vašega motornega objekta value = 255 do -255; negativne vrednosti povzročijo, da se motor premakne v času povratka = čas v milisekundah

2).brake ()

Zavorna funkcija ne sprejme nobenih argumentov, zavira motorje.

3) zavora (, <ime_motorja2)

Zavorna funkcija vzame imena motornih objektov kot argumente. Zavore so motorji prešli v funkcijo.

4) naprej (,, čas) naprej (,, hitrost, čas)

Funkcija sprejme ime dveh motornih objektov, po izbiri hitrost in čas PWM v milisekundah, in motor preusmeri v smeri naprej za pretekli čas. Če je vrednost hitrosti negativna, se motor vrne nazaj. Privzeta hitrost je nastavljena na 255.

5) nazaj (,, čas) nazaj (,, hitrost, čas)

Funkcija sprejme ime dveh motornih objektov, po izbiri hitrost in čas PWM v milisekundah, in motor preusmeri v smeri naprej za pretekli čas. Če je vrednost hitrosti negativna, bo motor šel naprej. Privzeta hitrost je nastavljena na 255.

6) levo (,, hitrost) desno (,, hitrost)

Funkcija sprejema dva imena motornih objektov in hitrost. Pomemben je vrstni red motornih objektov, ki so podani kot parametri. Za pogon enojnih motorjev uporabite.drive ().

Priporočena: