Inhoudsopgave:

28BYJ-48 5V stappenmotor en A4988-stuurprogramma - Ajarnpa
28BYJ-48 5V stappenmotor en A4988-stuurprogramma - Ajarnpa

Video: 28BYJ-48 5V stappenmotor en A4988-stuurprogramma - Ajarnpa

Video: 28BYJ-48 5V stappenmotor en A4988-stuurprogramma - Ajarnpa
Video: How to use the A4988 stepper motor driver with 28BYJ-48 Stepper motor @sritu_hobby 2024, November
Anonim
28BYJ-48 5V stappenmotor en A4988-stuurprogramma
28BYJ-48 5V stappenmotor en A4988-stuurprogramma

Heb je ooit een robot willen laten draaien in een precieze hoek, met slechts een paar uitgangen van je Arduino of micro:bit? Dit alles voor weinig? Dat is de instructable voor jou! In deze instructable zullen we zien hoe we een zeer goedkope stappenmotor kunnen besturen met slechts 2 uitgangen van onze controller en waarvoor slechts een 5V-voeding nodig is!

Ik maakte dit instructable na een beetje moeite om de informatie te verzamelen, soms struikelend over verkeerde informatie, en ik wilde anderen behoeden voor hetzelfde proces.

Maar voordat u begint, waarom zo'n beperking?

  • Waarom 5V: omdat ik dit wil integreren op een mobiele robot die alleen zal werken met een 3.7 lithiumbatterij die ik met een booster 5V kan krijgen.
  • Waarom de A4988 gebruiken en niet de ULN2003 die vaak met de 28BYJ-motor wordt geleverd? Omdat het eerst 4 ingangen vereist. Daarom bespaart het gebruik van de A4988 ons 2 van onze kostbare controller-uitgangen (en als je graag met de micro:bit werkt zoals ik, dan zijn die uitgangen kostbaar…)! Maar er is meer! Door de motor aan te kunnen drijven door alleen de treden als hoge impulsen te geven, hebben we de mogelijkheid om de motor aan te drijven met een simpele PWM. Door de duty cycle vast te stellen op 50%, zal het veranderen van de frequentie van de PWM de rotatiesnelheid van de motor veranderen. Waarom is dat geweldig? Want als je mijn motorsnelheid wilt instellen en vervolgens andere dingen wilt regelen met mijn Arduino of micro:bit, dan kun je gewoon mijn PWM instellen en het vergeten, waardoor je code zoveel leesbaarder wordt en je leven zoveel makkelijker (bijvoorbeeld als je zo'n robot wilt bouwen).

Dus laten we beginnen !

Benodigdheden

Dit is wat je nodig hebt voor deze instructable:

  • 1x 28BYJ stappenmotor
  • 1x A4988-stuurprogramma
  • 1x breadboard of prototyping board, een condensator en wat draden
  • Micro:bit en uitbreidingskaart of Arduino
  • 5V voeding (+3,3V als je Micro:bit gebruikt). Hiervoor gebruikte ik een 18650 lithiumbatterij en een batterijschild.
  • 1x multimeter

Stap 1: Ons systeem leren kennen

Het eerste dat ik zou aanraden om mee te beginnen, is om meer te weten te komen over stappenmotoren en de A4988-driver. Hé, maar waarom hebben we deze chauffeur nodig? Kunnen we een stappenmotor besturen zonder driver? Het antwoord is nee. Borden zoals Micro:bit en Arduino zijn goed in het verwerken van informatie, maar geven niet veel stroom af, en je hebt stroom nodig om een stappenmotor te laten bewegen. Om meer te weten te komen over hoe zowel de motor als de driver werken, is dit de referentie die ik zou aanraden. Het is synthetisch maar bevat ook de meeste informatie die je nodig hebt voor de bedrading.

Maar wacht voordat je iets probeert te bedraden! Is de 28BYJ aangepast aan de A4988? Als je even zoekt, zie je dat deze motor zelden met de A4988 als driver komt. Als je de vorige referentie goed leest, begrijp je misschien waarom: onze stappenmotor is een unipolaire motor terwijl de A4988 is ontworpen om bipolaire motoren aan te drijven, dus we zullen onze motor een beetje moeten hacken!

Stap 2: De motor hacken

De motor hacken
De motor hacken
De motor hacken
De motor hacken
De motor hacken
De motor hacken

Om uw motoren compatibel te maken met de motordriver, hoeft u alleen maar de rode draad uit de witte connector te halen. Knip hiervoor de connector door om de rode draad te verwijderen en knip de rode draad van de motor door. Verwissel vervolgens de gele en roze kabel op de connector. Bewaar de rode draad en connector voor de volgende stap!

Om een kabel uit de connector te krijgen, duwt u de draad die u wilt verwijderen in de connector en duwt u vervolgens het zichtbare metalen bit op de connector met een scherp stuk gereedschap naar binnen (hierboven is een foto waar ik dit doe met mijn favoriete mes, de opinel !), en tenslotte trek en uiteindelijk zou het hele ding eruit moeten komen zoals op de afbeelding hierboven. De laatste foto laat zien hoe de connector eruit moet zien aan het einde van die aanpassingen: de volgorde van de kabel op de connector moet oranje/roze/geel/blauw zijn.

(PS: online vind je enkele tutorials die aangeven dat je de rode draad van de motor moet losmaken en dan de print moet krassen, vergeet dat maar, dit is niet nodig. Nutteloos?)

Stap 3: Het stuurprogramma instellen

Het stuurprogramma instellen
Het stuurprogramma instellen

Nu … tijd om deze motor met de bestuurder te besturen? Nog niet Sorry ! Zie je de schroef op het A4988-bord? Nou, we zullen het ermee moeten doen. Met deze schroef kunt u in feite instellen hoeveel stroom er door de spoelen van uw motor gaat. In ons geval, terwijl onze voeding 5V geeft en onze spoelen in de motor een weerstand van 50 Ohm hebben, zal onze stroom niet meer dan 100mA zijn, wat door de motor zou moeten worden ondersteund, zodat je deze stap uiteindelijk zou kunnen overslaan. Maar als je net als ik bent en je wilt dat je motor alleen zoveel stroom neemt als nodig is, volg dan mee.

Dus om het stuurprogramma in te stellen, volgt u de methode 2 van dit artikel met die aanpassingen (zoals de afbeelding hierboven laat zien)

  1. Gebruik de 5V van het batterijscherm voor zowel de logische als de motorvermogensingang (VMOT zou meer dan 8V nodig hebben, maar 5V werkt!). De 2 GND-pinnen op het bord zijn verbonden, dus het is niet nodig om ze allebei op de batterijmassa aan te sluiten.
  2. Sluit STEP- en DIR-pinnen ook aan op de 5V (niet op Arduino zoals weergegeven in het artikel waarnaar wordt verwezen)
  3. Bij het instellen van de multimeter heb ik de stroom ingesteld op 50 mA, wat voldoende was om mijn motoren met halve stappen aan te drijven (daarover meer in de volgende stap). Om mijn multimeter aan te sluiten om de stroom in de spoel van de motor te meten, zoals je op de afbeelding hierboven kunt zien, heb ik de gele draad losgekoppeld van de connector en de rode draad erin gedaan, zodat ik mijn multimeter van de rode naar de de gele draad om de stroom te meten.

Stap 4: De motor besturen

De motor besturen
De motor besturen
De motor besturen
De motor besturen
De motor besturen
De motor besturen

Dat is het, we zijn bijna klaar om onze motor te laten draaien. Het enige wat u hoeft te doen is:

  1. om onze multimeter uit ons systeem te verwijderen als dat nog niet is gedaan,
  2. sluit MS1 aan op 5V, waardoor de bestuurder halve stappen moet gebruiken (ik had moeite om de robot te laten draaien met volledige stappen op 5V. Maar omdat een deel van mijn doel was om alles op 5V te laten werken, accepteerde ik om een beetje snelheid op te offeren en om wat precisie te krijgen),
  3. voorzie de STEP- en DIR-pinnen van wat we willen van onze controller.

Dan: als je de motor met Arduino wilt aansturen, volg dan gewoon het artikel hier waar je een voorbeeldcode vindt. Als je het wilt besturen met de micro:bit, blijf dan nog wat langer bij me.

Micro:bit, zoals Arduino, wordt geleverd met GPIO's. Daarom, als we het eenmaal van stroom voorzien (met 3,3 V!), Dan kunnen we het programmeren om STEP en DIR uit te voeren. Hoewel er veel in- en uitgangen lijken te zijn, wees gewaarschuwd dat veel van hen al zijn gereserveerd voor andere doeleinden. In dit artikel leest u daar meer over. Je zult in dit artikel zien dat veel van de in- en uitgangen worden gedeeld met het scherm, en daarom, als je die wilt gebruiken, moet je het scherm uitschakelen. Maar laten we het scherm niet uitzetten! Dus welke pinnen kunnen we gebruiken? Ik gebruik de pinnen 2 en 8 omdat ik de pads (pin 2) niet zal gebruiken.

Sluit pin 2 van de micro:bit aan op STEP, pin 8 op DIR, upload het bijgevoegde programma met je favoriete micro:python-editor (ik gebruikte mu-editor). Dit programma stelt in feite een PWM in op pin 2 met een periode van 1 milliseconde (en een inschakelduur van 50%), en uw motor zou moeten draaien. Stel pin 8 in op 0 of 1 om hem op de een of andere manier te laten draaien en verander de periode om hem de gewenste snelheid te laten draaien (zolang je niet wilt dat het te snel gaat … voor mij was een puls elke milliseconde dichtbij tot de maximale snelheid die ik kon bereiken).

Om de boel wat compacter te maken en hem makkelijk op een mobiele robot te laten stappen heb ik een bordje gemaakt. Het bord is te zien op de afbeelding hierboven. In de afbeelding loopt een paarse draad van VMOT naar VDD die zich in de schaduw verbergt. Ook is de gele draad die van SLP naar RST gaat eigenlijk niet gesoldeerd, ik heb hem daar gewoon geplaatst om het soldeer weer te geven dat ik op de achterkant van het bord heb geplaatst om die 2 pinnen te verbinden. Opmerking: het koellichaam is normaal gesproken niet nodig bij een dergelijk systeem, omdat we veel, veel minder dan 1A trekken.

Dat is het, ik hoop dat dit instructable velen van u zal helpen genieten van de kracht van de stappenmotor in uw projecten.

Aanbevolen: