Inhoudsopgave:
- Stap 1: Benodigde onderdelen
- Stap 2: Het TB6612FNG Breakout Board
- Stap 3: Pin-outs
- Stap 4: Schema's
- Stap 5: Bedrading Het Up
- Stap 6: De bibliotheek downloaden en installeren
- Stap 7: De voorbeeldcode uitvoeren
- Stap 8: De bibliotheek uitgelegd
Video: Kleine motoren aansturen met de TB6612FNG - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:17
De TB6612FNG is een dual motor driver IC van Toshiba. Er zijn tal van breakout-boards voor en het is een van de meest populaire keuzes om kleine motoren aan te drijven.
Er zijn tal van online bronnen om aan de slag te gaan met de TB6612FNG, maar ik besloot dit toch te schrijven om beter te kunnen compileren wat ik tegenkwam.
Ik zal me concentreren op de besturingslogica en ook de Sparkfun TB6612FNG-motorstuurprogrammabibliotheek in detail uitleggen in deze instructable.
Stap 1: Benodigde onderdelen
Dit is wat we vandaag gaan gebruiken:
1) Micro-metaalmotoren
2) TB6612FNG-motorstuurprogramma
3) Een Arduino- en USB-kabel
4) Stroombron voor de motoren
5) Broodplank
6) Doorverbindingsdraden
Stap 2: Het TB6612FNG Breakout Board
Zoals ik eerder al zei, zijn er tal van breakout-boards van verschillende fabrikanten voor de TB6612FNG. Ze hebben allemaal min of meer dezelfde componenten en ook een vergelijkbare pinout.
Condensatoren zijn op het bord gesoldeerd ter bescherming tegen ruis van de motoren, zodat u die keramische condensatoren niet aan de motoren hoeft te solderen.
Het IC wordt ook geleverd met interne diodes om te beschermen tegen EMF van de motoren. Maar het hebben van extra veiligheidsmaatregelen doet niemand pijn. Ik heb ze niet toegevoegd omdat mijn motoren niet erg groot zijn en ik een tekort aan diodes heb:|
Stap 3: Pin-outs
Het TB6612FNG breakout board heeft een zeer handige pinout. Alle motoruitgangen, ingangen en stroomaansluitingen zijn mooi gegroepeerd voor maximaal gebruiksgemak.
Ik heb een illustratie gemaakt van de pinouts en hoe je ze moet aansluiten, ik hoop dat het van pas komt bij het aansluiten van al die draden:)
Stap 4: Schema's
Ik ben vrij nieuw in het gebruik van Fritzing. Ik vind de circuitschema's van Fritzing vrij moeilijk te begrijpen, maar de breadboard-weergave is handig voor Instructables. Voel je vrij om vragen te stellen als een van de draadverbindingen er verwarrend uitziet.
Stap 5: Bedrading Het Up
Sluit alles aan volgens schema. Er zijn veel draden, controleer het na elke verbinding.
Ik heb de volgende Arduino-pinnen gebruikt voor de ingangen van de motordriver:
Motorstuurprogramma -> Arduino-pinnummer
1) PWMA -> 5
2) INA1 -> 2
3) INA2 -> 4
4) PWMB -> 6
5) INB1 -> 7
6) INB2 -> 8
Dingen die fout kunnen gaan in deze stap: 1) Keer de polariteit niet om tijdens het aansluiten van de Vm en de GND van de stroombron. Je zou je motordriver kunnen braden.
2) Zorg ervoor dat u de PWMA en PWMB aansluit op de PWM-pinnen op de arduino.
3) Vergeet niet om de Arduino GND en de GND van de motordriver aan te sluiten als u voor elk een andere stroombron gebruikt.
Stap 6: De bibliotheek downloaden en installeren
Download de bibliotheek van de GitHub-pagina van Sparkfun.
Nadat u het zipbestand hebt gedownload, opent u uw Arduino IDE.
Voeg vanuit Sketch > Bibliotheek opnemen >. Zip-bibliotheek toevoegen de bibliotheek toe die u hebt gedownload.
Eenmaal succesvol geïnstalleerd, zou het moeten verschijnen in Bestand> Voorbeelden, als 'SparkFun TB6612FNG Motor Library'
Als je problemen hebt met het downloaden en installeren van een Arduino-bibliotheek, bekijk dan stap 5 van dit instructable.
Stap 7: De voorbeeldcode uitvoeren
Nu we onze bibliotheek gereed hebben, kunnen we de voorbeeldcode uploaden om deze uit te testen.
1) Open het voorbeeld 'MotorTestRun' uit de 'Sparkfun TB6612FNG Motor Driver Library' die in uw bibliotheken wordt vermeld.
Opmerking: als u niet dezelfde pincodes gebruikt als vermeld in stap 5, zorg er dan voor dat u de pindefinities wijzigt in overeenstemming met uw instellingen.
2) Selecteer je board bij de boardmanager
3) Upload uw code en de motoren zouden moeten beginnen te bewegen
Zodra u het uploadt, moeten de motoren beginnen te bewegen. Als dit niet het geval is, controleert u uw bedrading opnieuw.
Stap 8: De bibliotheek uitgelegd
Nu om uit te leggen hoe u de bibliotheek kunt gebruiken voor uw eigen stukje code.
Begin eerst met het importeren van de bibliotheek en het initialiseren van de pinnen op arduino
#erbij betrekken
#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6#define STBY 9
Om uw motorobjecten te initialiseren, moet u offsets instellen voor elke motor. Stel je voor dat je een voorwaartse opdracht op je motor doet, en hij draait in zijn achteruit. U kunt het handmatig opnieuw bedraden, of u kunt de offset vanaf hier wijzigen. Handige kleine QoL-hack toegevoegd door SparkFun. De waarden van deze offsets zijn 1 of -1.
U moet dan elk van de motoren initialiseren met de volgende parameters;
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);
En hiermee bent u klaar met het initialiseren van de bibliotheek. Geen stappen meer in de setup()-functie, we voeren de code gewoon uit in de loop()-functie.
De motormethode heeft de volgende functies. Knutselen om ze allemaal te bekijken.
1).drive (waarde, tijd)
Motor_name = naam van uw motor objectwaarde= 255 tot -255; negatieve waarden zorgen ervoor dat de motor achteruit gaat = tijd in milliseconden
2).rem()
Remfunctie accepteert geen argumenten, remt de motoren.
3) rem(, <motor_name2)
De remfunctie neemt de namen van motorobjecten als argumenten. Remt de motoren die in de functie zijn overgegaan.
4) vooruit(,, tijd) vooruit(,, snelheid, tijd)
Functie accepteert de naam van twee motorobjecten, optioneel PWM-snelheid en -tijd in milliseconden en laat de motor gedurende de verstreken tijd in voorwaartse richting lopen. Als de waarde van de snelheid negatief is, gaat de motor achteruit. De standaardsnelheid is ingesteld op 255.
5) terug(,, tijd) terug(,, snelheid, tijd)
Functie accepteert de naam van twee motorobjecten, optioneel PWM-snelheid en -tijd in milliseconden en laat de motor gedurende de verstreken tijd in voorwaartse richting lopen. Als de waarde van de snelheid negatief is, zal de motor vooruit gaan. De standaardsnelheid is ingesteld op 255.
6) links(,, snelheid) rechts(,, snelheid)
Functie accepteert twee namen van motorobjecten en snelheid. De volgorde van de motorobjecten die als parameters worden doorgegeven, is belangrijk. Gebruik in plaats daarvan.drive() om enkele motoren aan te drijven.
Aanbevolen:
Track&trace voor kleine winkels: 9 stappen (met afbeeldingen)
Track&trace voor kleine winkels: dit is een systeem dat is gemaakt voor kleine winkels en dat op e-bikes of e-scooters moet worden gemonteerd voor leveringen op korte afstand, bijvoorbeeld een bakkerij die gebak wil bezorgen. Wat betekent Track en Trace?Track en trace is een systeem dat door ca
Android-applicatie maken voor kleine bedrijven met behulp van MIT APP en Google Fusion Table: 7 stappen
Android-applicatie maken voor kleine bedrijven met behulp van MIT APP en Google Fusion Table: Heb je ooit je eigen applicatie willen maken die beschikbaar kan zijn in de Google Play Store !!! Als u een bedrijf heeft, zal deze tutorial uw leven veranderen. Na deze zorgvuldig te hebben gelezen, kunt u uw eigen Aanvraag maken. Voor
Een LCD aansturen met I2C-module: 8 stappen
Een LCD-scherm besturen met I2C-module: in deze tutorial zullen we zien hoe een LCD-scherm werkt en hoe u het gemakkelijker kunt gebruiken met de I2C-module
Project kleine auto: 9 stappen (met afbeeldingen)
Project Small Car: Deze auto is gemaakt als creatieve activiteit voor studenten van het Erasmus-project. De Small Car vierde groot succes. Dus heb ik besloten om dit kleine, bescheiden en toch zeer leerzame project met de gemeenschap te delen. Het is ideaal om studenten te entertainen, voor ins
Borstelloze motoren: 7 stappen
Borstelloze motoren: dit instructable is een gids/overzicht van de motortechnologie achter moderne enthousiaste quadcoptermotoren. Bekijk deze geweldige video om je te laten zien waartoe quadcopters in staat zijn. (Let op het volume. Het wordt erg luid) Alle eer gaat naar de oorsprong