Cuprins:
- Pasul 1: Piese necesare
- Pasul 2: placa TB6612FNG Breakout
- Pasul 3: Pin Out
- Pasul 4: Scheme
- Pasul 5: Cablare
- Pasul 6: Descărcarea și instalarea bibliotecii
- Pasul 7: Rularea exemplului de cod
- Pasul 8: Biblioteca explicată
Video: Conducerea motoarelor mici cu TB6612FNG: 8 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
TB6612FNG este un driver cu motor dual IC de la Toshiba. Există o mulțime de plăci de rupere acolo și este una dintre cele mai populare alegeri pentru a conduce motoare mici.
Există o mulțime de resurse online pentru a începe cu TB6612FNG, dar am decis să scriu asta oricum pentru a compila mai bine ceea ce am întâlnit.
Mă voi concentra asupra logicii de control și voi explica în detaliu biblioteca de drivere de motor Sparkfun TB6612FNG în acest instructable.
Pasul 1: Piese necesare
Iată ce vom folosi astăzi:
1) Motoare Micro Metal
2) Driver motor TB6612FNG
3) Un cablu Arduino și USB
4) Sursa de alimentare pentru motoare
5) Pană de pâine
6) fire de jumper
Pasul 2: placa TB6612FNG Breakout
După cum am menționat anterior, există o mulțime de plăci de rupere de la diferiți producători pentru TB6612FNG. Toate au mai mult sau mai puțin aceleași componente pe ele și, de asemenea, un pinout similar.
Condensatoarele sunt lipite pe placă pentru protecție împotriva zgomotului de la motoare, deci nu va trebui să lipiți condensatorii ceramici pe motoare.
IC vine, de asemenea, cu diode interne pentru a proteja împotriva EMF din spate de la motoare. Dar a avea măsuri suplimentare de siguranță nu dăunează nimănui. Nu le-am adăugat pentru că motoarele mele nu sunt foarte mari și îmi lipsesc diodele: |
Pasul 3: Pin Out
Placa de separare TB6612FNG are un pinout foarte convenabil. Toate ieșirile, intrările și conexiunile de alimentare ale motorului sunt grupate frumos pentru o ușurință maximă de utilizare.
Am făcut o ilustrație a pinouturilor și a modului de conectare a acestora, sper că va fi la îndemână la conectarea tuturor acelor fire:)
Pasul 4: Scheme
Sunt destul de nou în ceea ce privește utilizarea Fritzing. Mi se pare destul de dificil de înțeles schemele circuitelor de la Fritzing, dar vizualizarea panoului de verificare este convenabilă pentru Instructables. Simțiți-vă liber să puneți orice întrebare dacă oricare dintre conexiunile cablului pare confuză.
Pasul 5: Cablare
Conectați totul conform schemelor. Există o mulțime de fire, asigurați-vă că verificați de două ori după fiecare conexiune.
Am folosit următorii pini Arduino pentru intrările driverului motorului:
Driver motor -> Număr pin Arduino
1) PWMA -> 5
2) INA1 -> 2
3) INA2 -> 4
4) PWMB -> 6
5) INB1 -> 7
6) INB2 -> 8
Lucruri care pot merge prost în acest pas: 1) Nu inversați polaritatea în timp ce conectați Vm și GND de la sursa de alimentare. S-ar putea să vă prăjiți șoferul motorului.
2) Asigurați-vă că conectați PWMA și PWMB la pinii PWM de pe arduino.
3) Nu uitați să conectați Arduino GND și GND de la driverul motorului dacă utilizați o sursă de alimentare diferită pentru fiecare.
Pasul 6: Descărcarea și instalarea bibliotecii
Descărcați biblioteca de pe pagina GitHub a Sparkfun.
După ce ați descărcat fișierul zip, deschideți ID-ul Arduino.
Din Sketch> Include Library> Add. Zip Library, adăugați biblioteca pe care ați descărcat-o.
Odată instalat cu succes, ar trebui să apară în Fișier> Exemple, ca „SparkFun TB6612FNG Motor Library”
Dacă întâmpinați dificultăți în descărcarea și instalarea unei biblioteci Arduino, consultați pasul 5 din acest instructable.
Pasul 7: Rularea exemplului de cod
Acum că avem biblioteca noastră gata, putem încărca exemplul de cod pentru a-l testa.
1) Deschideți exemplul „MotorTestRun” din „Biblioteca de drivere motor Sparkfun TB6612FNG” listată în bibliotecile dvs.
Notă: dacă nu utilizați aceleași numere de pini ca cele menționate la pasul 5, asigurați-vă că schimbați definițiile pini în funcție de configurarea dvs.
2) Selectați-vă consiliul de administrație
3) Încărcați codul și motoarele ar trebui să înceapă să se miște
Odată ce încărcați motoarele ar trebui să înceapă să se miște. Dacă nu sunt, verificați din nou cablajul.
Pasul 8: Biblioteca explicată
Acum, pentru a explica cum să utilizați biblioteca pentru propria bucată de cod.
Mai întâi începeți cu importarea bibliotecii și inițializarea pinilor pe arduino
#include
#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6 # define STBY 9
Pentru a inițializa obiectele motorului, trebuie să setați decalaje pentru fiecare motor. Imaginați-vă dacă faceți o comandă înainte pe motorul dvs. și se învârte în sens invers. Puteți să-l reconectați manual sau puteți schimba offsetul de aici. Un mic hack QoL nifty adăugat de SparkFun. Valorile acestor compensări sunt fie 1, fie -1.
Apoi, trebuie să inițializați fiecare dintre motoare cu următorii 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);
Și cu aceasta, ați terminat inițializarea bibliotecii. Nu mai sunt pași în funcția setup (), doar executăm codul în funcția loop ().
Metoda motorului are următoarele funcții. Tinker pentru a le verifica pe toate.
1).drive (valoare, timp)
Motor_name = numele motorului dvs. obiect valoare = 255 până la -255; valorile negative vor face ca motorul să se deplaseze în timp invers = timp în milisecunde
2). Frână ()
Funcția de frânare nu ia niciun argument, frânează motoarele.
3) frână (, <motor_name2)
Funcția de frânare ia numele obiectelor motorului ca argumente. Frânează motoarele trecute în funcție.
4) înainte (,, timp) înainte (,, viteză, timp)
Funcția acceptă numele a două obiecte motor, opțional viteza și timpul PWM în milisecunde și rulează motorul în direcția înainte pentru perioada de timp trecută. Dacă valoarea vitezei este negativă, motorul va merge înapoi. Viteza implicită este setată la 255.
5) înapoi (,, timp) înapoi (,, viteză, timp)
Funcția acceptă numele obiectului motorului două, opțional viteza și timpul PWM în milisecunde și rulează motorul în direcția înainte pentru perioada de timp trecută. Dacă valoarea vitezei este negativă, motorul va merge înainte. Viteza implicită este setată la 255.
6) stânga (,, viteză) dreapta (,, viteză)
Funcția acceptă două nume de obiecte motor și viteză. Ordinea obiectelor motor transmise ca parametri este importantă. Pentru a conduce motoare simple, utilizați în schimb.drive ().
Recomandat:
Controlul motoarelor DC cu Arduino și L293: 5 pași (cu imagini)
Controlul motoarelor de curent continuu cu Arduino și L293: Mod ușor de control al motoarelor de curent continuu. Tot ce aveți nevoie este cunoștințe în electronică și programare Dacă aveți întrebări sau probleme, puteți să mă contactați prin e-mail: [email protected] Vizitați canalul meu de YouTube: https : //www.youtube.com/channel/UCuS39O01OyP
Conducerea benzii LED RGB folosind Arduino: 4 pași
Conducerea benzii LED RGB folosind Arduino: Bună băieți, în acest instructable vom face un circuit pentru a rula o bandă LED 12V RGB cu arduino. Deoarece știm că arduino nu poate avea suficientă putere pentru a rula o bandă LED RGB, așa că trebuie să amplificăm semnalul arduino pentru a alimenta banda LED cu altă sursă, așa că vom fi
Controlul motoarelor de curent continuu cu L298N folosind microcontrolerul CloudX: 3 pași
Controlul motoarelor de curent continuu cu L298N folosind microcontrolerul CloudX: În acest proiect vom explica modul de utilizare a podului nostru L298N H pentru a crește și reduce viteza motorului de curent continuu. Modulul H-bridge L298N poate fi utilizat cu motoare care au o tensiune cuprinsă între 5 și 35V DC. Există, de asemenea, un regulator de 5V la bord, deci dacă
Construirea de roboți mici: realizarea de roboți micro-sumo de un inch cubic și mai mici: 5 pași (cu imagini)
Construirea de roboți mici: realizarea de roboți micro-sumo de un inch cubic și mai mici: Iată câteva detalii despre construirea unor roboți și circuite mici. Acest instructable va acoperi, de asemenea, câteva sfaturi și tehnici de bază care sunt utile în construirea roboților de orice dimensiune. Pentru mine, una dintre marile provocări în electronică este să văd cât de mic este
Utilizarea motoarelor cu IC L293D: 6 pași (cu imagini)
Utilizarea motoarelor cu IC L293D: Acesta este un ghid rapid cu câteva informații suplimentare (configurații pin etc.) pe care le-am învățat pe parcurs despre cum să folosesc L293D cu Arduino, arătând că putem: A) Utilizați o sursă de alimentare suplimentară pentru alimentarea motorului de curent continuu. B) Utilizați L293D c