Innholdsfortegnelse:

28BYJ-48 5V trinnmotor og A4988 driver: 4 trinn
28BYJ-48 5V trinnmotor og A4988 driver: 4 trinn

Video: 28BYJ-48 5V trinnmotor og A4988 driver: 4 trinn

Video: 28BYJ-48 5V trinnmotor og A4988 driver: 4 trinn
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Juli
Anonim
28BYJ-48 5V trinnmotor og A4988 driver
28BYJ-48 5V trinnmotor og A4988 driver

Har du noen gang ønsket å få en robot til å snu i en presis vinkel, bare ved å bruke noen få utganger fra din Arduino eller mikro: bit? Alt dette for billig? Det er instruerbart for deg! I denne instruksen vil vi se hvordan du kjører en veldig billig trinnmotor som bare bruker 2 utganger fra kontrolleren vår og som bare krever en 5V strømforsyning!

Jeg gjorde dette instruerbart etter å ha slitt litt med å samle informasjonen, noen ganger snublet jeg over feilinformasjon, og jeg ønsket å redde andre fra å gå gjennom den samme prosessen.

Men før du starter, hvorfor så begrensning?

  • Hvorfor 5V: fordi jeg vil integrere dette på en mobil robot som bare vil kjøre med et 3,7 litiumbatteri som jeg kan få 5V ut med en booster.
  • Hvorfor bruke A4988 og ikke ULN2003 som ofte følger med 28BYJ -motoren? Fordi det først krever 4 innganger. Derfor gjør bruk av A4988 oss til å spare 2 av våre dyrebare kontrollerutganger (og hvis du liker å jobbe med micro: bit som jeg gjør, er disse utgangene dyrebare …)! Men det er mer! Å kunne kjøre motoren ved å bare gi trinnene som høye impulser, gir oss muligheten til å kjøre motoren med en enkel PWM. Ved å fastsette driftssyklusen til 50%vil endring av frekvensen til PWM endre motorens rotasjonshastighet. Hvorfor er det flott? For hvis du vil stille inn motorhastigheten min og deretter fortsette å kontrollere andre ting med min Arduino eller micro: bit, så kan du ganske enkelt stille inn min PWM og glemme det, noe som vil gjøre koden din så mye mer lesbar og livet ditt så mye enklere (for eksempel hvis du vil bygge en robot som denne).

Så la oss komme i gang!

Rekvisita

Her er hva du trenger for denne instruerbare:

  • 1x 28BYJ trinnmotor
  • 1x A4988 driver
  • 1x brødbrett eller prototypebrett, en kondensator og noen ledninger
  • Micro: bit og forlengelseskort eller Arduino
  • 5V strømforsyning (+3,3V hvis du bruker Micro: bit). Til dette brukte jeg et 18650 litiumbatteri og et batteriskjold.
  • 1 x multimeter

Trinn 1: Bli kjent med systemet vårt

Det første jeg vil anbefale å starte med, ville være å lære mer om steppermotorer og A4988 -driveren. Hei, men hvorfor trenger vi denne driveren? Kan vi kontrollere en trinnmotor uten driver? Svaret er nei. Tavler som Micro: bit og Arduino er flinke til å behandle informasjon, men ikke til å gi ut mye strøm, og du trenger strøm for å få en trinnmotor til å bevege seg. For å lære mer om hvordan både motor og sjåfør fungerer, er dette referansen jeg vil anbefale. Den er syntetisk, men inneholder også mesteparten av informasjonen du trenger for ledningene.

Men vent før du prøver å koble til noe! Er 28BYJ tilpasset A4988? Hvis du gjør et raskt søk, vil du se at denne motoren sjelden kommer med A4988 som driver. Hvis du leser den forrige referansen grundig, kan du se hvorfor: Stepper vår er en unipolar motor mens A4988 er designet for å drive bipolare motorer, så vi må hacke litt på motoren vår!

Trinn 2: Hacking av motoren

Hacking av motoren
Hacking av motoren
Hacking av motoren
Hacking av motoren
Hacking av motoren
Hacking av motoren

For å gjøre motorene kompatible med motorføreren, ta bare den røde ledningen ut av den hvite kontakten. For å gjøre kutte kontakten for å fjerne den røde ledningen og kutte den røde ledningen til motoren. Bytt deretter den gule og rosa kabelen på kontakten. Behold den røde ledningen og kontakten for neste trinn!

For å få en kabel ut av kontakten, skyv ledningen du vil fjerne i kontakten og skyv den synlige metallbiten på kontakten inn med et skarpt verktøy (over er et bilde hvor jeg gjør dette med min favorittkniv, opinelen!), og til slutt trekker og til slutt skal det hele komme ut som på bildet ovenfor. Det siste bildet viser hvordan kontakten skal se ut på slutten av disse endringene: rekkefølgen på kabelen på kontakten skal være oransje/rosa/gul/blå.

(PS: på nettet finner du noen opplæringsprogrammer som indikerer at du må desolde den røde ledningen fra motoren og deretter klø på kretskortet, glem det, dette er ikke nødvendig. Ubrukelig?)

Trinn 3: Stille inn driveren

Innstilling av driveren
Innstilling av driveren

Nå … på tide å kjøre denne motoren med sjåføren? Ikke beklager ennå! Ser du skruen på A4988 -kortet? Vel, vi må fikle med det. Denne skruen lar deg i utgangspunktet angi hvor mye strøm som skal gå gjennom spolene på motoren din. I vårt tilfelle, mens strømforsyningen vår gir 5V og spolene i motoren har en motstand på 50 ohm, vil strømmen vår ikke være mer enn 100mA, som bør støttes av motoren, slik at du til slutt kan hoppe over dette trinnet. Men hvis du er som meg og at du vil at motoren din bare skal ta så mye strøm som den trenger, så følg med.

Så for å stille inn driveren, følg metode 2 i denne artikkelen med disse tilpasningene (som bildet ovenfor viser)

  1. Bruk 5V fra batteriskjoldet for både logikk og motoreffekt (VMOT sies å trenge mer enn 8V, men 5V fungerer!). De 2 GND -pinnene på brettet er koblet til, så du trenger ikke koble dem begge til batteriets jord.
  2. Koble STEP- og DIR -pinnene til 5V også (ikke til Arduino som vist i artikkelen det refereres til)
  3. Når jeg satte multimeteret, satte jeg strømmen til 50mA, som var nok til å drive motorene mine ved hjelp av halve trinn (mer om det i neste trinn). For å koble multimeteret mitt for å måle strømmen i motorens spole, som du kan se på bildet ovenfor, koblet jeg fra den gule ledningen fra kontakten og satte den røde ledningen inn, slik at jeg kunne sette multimeteret mitt fra det røde til det den gule ledningen for å måle strømmen.

Trinn 4: Kontroll av motoren

Kontroll av motoren
Kontroll av motoren
Kontroll av motoren
Kontroll av motoren
Kontroll av motoren
Kontroll av motoren

Det er det, vi er nesten klare til å ta motoren vår. Det eneste du må gjøre er:

  1. å fjerne multimeteret fra systemet vårt hvis det ikke allerede er gjort,
  2. koble MS1 til 5V som vil få sjåføren til å bruke halvtrinn (jeg hadde problemer med å få roboten til å snu med fulle trinn på 5V. Men som en del av målet mitt var å få alt til å kjøre på 5V godtok jeg å ofre litt fart og for å få litt presisjon),
  3. gi STEP- og DIR -pinnene det vi ønsker fra kontrolleren vår.

Deretter: Hvis du vil kontrollere motoren ved hjelp av Arduino, følger du bare artikkelen her hvor du finner en prøvekode. Hvis du vil kontrollere det med micro: bit, så bli hos meg litt lenger.

Micro: bit, som Arduino, kommer med GPIO -er. Derfor, når vi får strøm (med 3,3V!), Kan vi programmere den til å sende ut STEP og DIR. Selv om det ser ut til å være mange innganger og utganger, må du advare om at mange av dem allerede er reservert for andre formål. Du kan lære mer om det i denne artikkelen. Du vil se i denne artikkelen at faktisk mange av innganger/utganger deles med skjermen, og derfor må du slå av skjermen hvis du vil bruke dem. Men la oss ikke slå av skjermen! Så hvilke pins kan vi bruke? Jeg bruker pinnene 2 og 8 da jeg ikke vil bruke putene (pinne 2).

Plugg pin 2 av micro: bit til STEP, pin 8 til DIR, last opp programmet som er vedlagt med din favoritt micro: python editor (jeg brukte mu-editor). Dette programmet setter i utgangspunktet en PWM på pin 2 med en periode på 1 millisekund (og en 50% driftssyklus), og motoren din skal rotere. Sett pinne 8 til 0 eller 1 for å få den til å snu på en eller annen måte, og endre perioden for å få den til å snu hastigheten du ønsker (så lenge du ikke vil at den skal gå for fort … for meg var en puls hvert millisekund nær til maksimal hastighet jeg kunne nå).

For å gjøre ting litt mer kompakt og ta det lett på en mobil robot, laget jeg et lite brett. Brettet er vist på bildet ovenfor. På bildet er det en lilla ledning som går fra VMOT til VDD som gjemmer seg i skyggen. Den gule ledningen som går fra SLP til RST er faktisk ikke loddet, jeg la den bare der for å representere loddetinnet jeg satte på baksiden av brettet for å koble de 2 pinnene. Bemerkning: kjøleribben er normalt ikke nødvendig med et slikt system, da vi tegner mye, mye mindre enn 1A.

Det er det, jeg håper denne instruksjonsfulle vil hjelpe mange av dere til å glede deg over trinnmotorens kraft i prosjektene dine.

Anbefalt: