Indholdsfortegnelse:
- Trin 1: Påkrævede dele
- Trin 2: TB6612FNG Breakout Board
- Trin 3: Pin Outs
- Trin 4: Skemaer
- Trin 5: Tilslut det
- Trin 6: Download og installation af biblioteket
- Trin 7: Kørsel af eksempelkoden
- Trin 8: Biblioteket forklaret
Video: Kørsel af små motorer med TB6612FNG: 8 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
TB6612FNG er en dobbeltmotor driver IC fra Toshiba. Der er masser af breakout boards derude til det, og det er et af de mest populære valg at køre små motorer.
Der er masser af online ressourcer til at komme i gang med TB6612FNG, men jeg besluttede at skrive dette alligevel for bedre at kompilere det, jeg stødte på.
Jeg vil fokusere på kontrollogikken og også forklare Sparkfun TB6612FNG -motordriverbiblioteket i detaljer i denne instruktive.
Trin 1: Påkrævede dele
Her er hvad vi skal bruge i dag:
1) Micro Metal motorer
2) TB6612FNG motor driver
3) Et Arduino- og USB -kabel
4) Strømkilde til motorerne
5) Brødbræt
6) Jumper -tråde
Trin 2: TB6612FNG Breakout Board
Som jeg nævnte før, er der masser af breakout boards fra forskellige producenter til TB6612FNG. Alle har mere eller mindre de samme komponenter på dem og også lignende pinout.
Kondensatorer er loddet på kortet for at beskytte mod støj fra motorerne, så du behøver ikke at lodde de keramiske kondensatorer til motorerne.
IC'en leveres også med interne dioder til beskyttelse mod EMF fra motorerne. Men at have ekstra sikkerhedsforanstaltninger skader ingen. Jeg tilføjede dem ikke, fordi mine motorer ikke er særlig store, og jeg mangler dioder: |
Trin 3: Pin Outs
TB6612FNG breakout board har en meget overbevisende pinout. Alle motorudgange, indgange og strømforbindelser er pænt grupperet for maksimal brugervenlighed.
Jeg lavede en illustration af pinouts og hvordan man forbinder dem, jeg håber det kommer til nytte når man tilslutter alle disse ledninger:)
Trin 4: Skemaer
Jeg er ret ny til at bruge Fritzing. Jeg finder kredsløbsskemaerne fra Fritzing ret vanskelige at forstå, men visningen på brødbrættet er praktisk for Instructables. Stil gerne spørgsmål, hvis nogen af ledningsforbindelserne ser forvirrende ud.
Trin 5: Tilslut det
Tilslut alt efter skemaer. Der er mange ledninger, sørg for at dobbelttjekke efter hver forbindelse.
Jeg brugte følgende Arduino Pins til motordriverindgange:
Motorfører -> Arduino pin -nummer
1) PWMA -> 5
2) INA1 -> 2
3) INA2 -> 4
4) PWMB -> 6
5) INB1 -> 7
6) INB2 -> 8
Ting, der kan gå galt i dette trin: 1) Vend ikke polariteten, mens du forbinder Vm og GND fra strømkilden. Du kan stege din bilist.
2) Sørg for at tilslutte PWMA og PWMB til PWM ben på arduinoen.
3) Husk at tilslutte Arduino GND og GND fra motordriveren, hvis du bruger en anden strømkilde til hver.
Trin 6: Download og installation af biblioteket
Download biblioteket fra Sparkfun's GitHub -side.
Når du har downloadet zip -filen, skal du åbne din Arduino IDE.
Fra Skitse> Inkluder bibliotek> Tilføj. Zip -bibliotek, tilføj det bibliotek, du har downloadet.
Når den er installeret, skal den vises i Filer> Eksempler som 'SparkFun TB6612FNG Motor Library'
Hvis du har problemer med at downloade og installere et Arduino -bibliotek, kan du tjekke trin 5 i denne instruks.
Trin 7: Kørsel af eksempelkoden
Nu hvor vi har vores bibliotek klar, kan vi uploade eksempelkoden for at teste den.
1) Åbn 'MotorTestRun' -eksemplet fra 'Sparkfun TB6612FNG Motor Driver Library', der er angivet på dine biblioteker.
Bemærk: Hvis du ikke bruger de samme pin -numre som nævnt i trin 5, skal du sørge for at ændre stiftdefinitionerne til i henhold til din opsætning.
2) Vælg din bestyrelse fra bestyrelseslederen
3) Upload din kode, og motorerne skal begynde at bevæge sig
Når du har uploadet motorerne, skal de begynde at bevæge sig. Hvis de ikke er det, skal du kontrollere dine ledninger igen.
Trin 8: Biblioteket forklaret
Nu for at forklare, hvordan du bruger biblioteket til dit eget stykke kode.
Begynd først med at importere biblioteket og initialisere stifterne på arduino
#omfatte
#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6 #define STBY 9
For at initialisere dine motorobjekter skal du udligne forskydninger for hver motor. Tænk, hvis du laver en kommando fremad på din motor, og den drejer omvendt. Du kan manuelt rewire det, eller du kan bare ændre forskydningen herfra. Nifty little QoL hack tilføjet af SparkFun. Værdierne for disse forskydninger er enten 1 eller -1.
Du skal derefter initialisere hver af motorerne med følgende parametre;
Motor = Motor (Pin 1, Pin 2, PWM pin, offset, Standby pin)
const int offsetA = 1;
const int offsetB = 1; Motormotor1 = Motor (AIN1, AIN2, PWMA, offsetA, STBY);
Og med dette er du færdig med at initialisere biblioteket. Ikke flere trin i setup () -funktionen, vi kører bare koden i loop () -funktionen.
Motormetoden har følgende funktioner. Tinker rundt for at tjekke dem alle ud.
1).drive (værdi, tid)
Motornavn = navn på din motor objektværdi = 255 til -255; negative værdier får motoren til at bevæge sig i reversetime = tid i millisekunder
2). Bremse ()
Bremsefunktionen tager ingen argumenter, bremser motorerne.
3) bremse (, <motornavn2)
Bremsefunktionen tager motorobjektnavne som argumenter. Bremser motorerne ind i funktionen.
4) frem (,, tid) frem (,, hastighed, tid)
Funktionen accepterer to motorobjekts navn, eventuelt PWM -hastighed og tid i millisekunder og kører motoren fremad i den forløbne tid. Hvis hastighedsværdien er negativ, går motoren baglæns. Standardhastigheden er indstillet til 255.
5) tilbage (,, tid) tilbage (,, hastighed, tid)
Funktionen accepterer to motorobjekts navn, eventuelt PWM -hastighed og tid i millisekunder og kører motoren fremad i den forløbne tid. Hvis værdien af hastigheden er negativ, går motoren fremad. Standardhastigheden er indstillet til 255.
6) venstre (,, hastighed) højre (,, hastighed)
Funktionen accepterer to motorobjektnavne og hastighed. Rækkefølgen af de motorobjekter, der passeres som parametre, er vigtig. Hvis du vil køre enkeltmotorer, skal du bruge.drive () i stedet.
Anbefalede:
DIY GPS -datalogger til dig næste kørsel/vandresti: 11 trin (med billeder)
DIY GPS -datalogger til dig næste kørsel/vandresti: Dette er en GPS -datalogger, som du kan bruge til flere formål, f.eks. Hvis du vil logge din lange køretur, du tog i weekenden for at tjekke efterårets farver. eller du har et yndlingsspor, du besøger i løbet af efteråret hvert år, og du vil
Kørsel af LCD med I2C -modul: 8 trin
Kørsel af en LCD med I2C -modul: I denne vejledning vil vi se, hvordan en LCD -skærm fungerer, og hvordan den lettere kan bruges med I2C -modulet
Simulator kørsel med Arduino: 7 trin
Simulator kørsel med Arduino: min køresimulator i mit soveværelse
Kørsel af et relæ med en Arduino: 9 trin
Kørsel af et relæ med en Arduino: Hej alle sammen, velkommen tilbage til min kanal. Dette er min 4. vejledning om, hvordan man kører et RELÆ (ikke et relæmodul) med en Arduino. Der er hundredvis af vejledninger til rådighed om, hvordan man bruger et " relæmodul " men jeg kunne ikke finde en god, der er
NODEMCU LUA ESP8266 Kørsel af en M5450B7 LED Display Driver IC: 5 trin (med billeder)
NODEMCU LUA ESP8266 Kørsel af en M5450B7 LED -skærmdriver IC: M5450B7 er en 40 Pin DIP LED -skærmdriver IC. Det ser snarere ud som et dyr, men det er relativt let at styre og programmere. Der er 34 output pins, der kan have en LED tilsluttet til hver enkelt. Enheden synker strøm frem for at levere den, så c