Innehållsförteckning:

28BYJ-48 5V stegmotor och A4988-drivrutin: 4 steg
28BYJ-48 5V stegmotor och A4988-drivrutin: 4 steg

Video: 28BYJ-48 5V stegmotor och A4988-drivrutin: 4 steg

Video: 28BYJ-48 5V stegmotor och A4988-drivrutin: 4 steg
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Juli
Anonim
28BYJ-48 5V stegmotor och A4988-drivrutin
28BYJ-48 5V stegmotor och A4988-drivrutin

Har du någonsin velat få en robot att vrida i en exakt vinkel, med bara några få utgångar från din Arduino eller mikro: bit? Allt detta för billigt? Det är det instruerbara för dig! I denna instruerbara kommer vi att se hur man driver en mycket billig stegmotor med endast 2 utgångar från vår styrenhet och som bara kräver en 5V strömförsörjning!

Jag gjorde detta instruerbart efter att ha kämpat lite med att samla in informationen, ibland snubblat på felaktig information, och jag ville rädda andra från att gå igenom samma process.

Men innan du börjar, varför en sådan begränsning?

  • Varför 5V: för att jag vill integrera detta på en mobil robot som bara körs med ett 3,7 litiumbatteri som jag kan få ut 5V med en booster.
  • Varför använda A4988 och inte ULN2003 som ofta följer med 28BYJ -motorn? Eftersom det först kräver 4 ingångar. Därför gör att vi använder A4988 för att spara två av våra värdefulla controllerutgångar (och om du gillar att arbeta med micro: bit som jag gör är dessa utgångar värdefulla …)! Men det finns mer! Att kunna driva motorn genom att bara ge stegen som höga impulser ger oss möjlighet att köra motorn med en enkel PWM. Genom att fastställa driftscykeln till 50%, ändrar PWM -frekvensen förändringen av motorns rotationshastighet. Varför är det bra? För om du vill ställa in mitt motorvarvtal och sedan fortsätta styra andra saker med min Arduino eller micro: bit, så kan du helt enkelt ställa in min PWM och glömma bort det, vilket gör din kod så mycket mer läsbar och ditt liv så mycket enklare (till exempel om du vill bygga en robot som denna).

Så låt oss komma igång!

Tillbehör

Här är vad du behöver för denna instruerbara:

  • 1x 28BYJ stegmotor
  • 1x A4988 drivrutin
  • 1x brödbräda eller prototypbräda, en kondensator och några ledningar
  • Micro: bit och förlängningskort eller Arduino
  • 5V strömförsörjning (+3,3V om du använder Micro: bit). Till detta använde jag ett 18650 litiumbatteri och en batterisköld.
  • 1x multimeter

Steg 1: Lär känna vårt system

Det första jag skulle rekommendera att börja med, skulle vara att lära sig mer om stegmotorer och A4988 -drivrutinen. Hej, men varför behöver vi den här drivrutinen? Kan vi styra en stegmotor utan förare? Svaret är nej. Kort som Micro: bit och Arduino är bra på att bearbeta information men inte på att ge ut mycket ström, och du behöver ström för att få en stegmotor att röra sig. För att lära dig mer om hur både motorn och föraren fungerar är detta referensen jag skulle rekommendera. Den är syntetisk men innehåller också det mesta av informationen du behöver för ledningarna.

Men vänta innan du försöker köra något! Är 28BYJ anpassad till A4988? Om du gör en snabb sökning ser du att denna motor sällan kommer med A4988 som förare. Om du läser den tidigare referensen noga kan du se varför: vår stegmaskin är en unipolär motor medan A4988 är utformad för att driva bipolära motorer, så vi måste hacka lite på vår motor!

Steg 2: Hacka motorn

Hackar motorn
Hackar motorn
Hackar motorn
Hackar motorn
Hackar motorn
Hackar motorn

För att göra dina motorer kompatibla med motorföraren tar du bara bort den röda ledningen från den vita kontakten. Skär kontakten för att ta bort den röda tråden och klipp den röda tråden på motorn. Byt sedan den gula och rosa kabeln på kontakten. Behåll den röda tråden och kontakten för nästa steg!

För att få ut en kabel från kontakten, tryck in tråden du vill ta bort i kontakten och tryck sedan in den synliga metallbiten på kontakten med ett skarpt verktyg (ovan är en bild där jag gör detta med min favoritkniv, opinelen!), och slutligen dra och så småningom ska det hela komma ut som på bilden ovan. Den sista bilden visar hur kontakten ska se ut i slutet av dessa ändringar: ordningen på kabeln på kontakten ska vara orange/rosa/gul/blå.

(PS: online hittar du några självstudier som indikerar att du måste avlöda den röda tråden från motorn och sedan repa kretskortet, glöm det, det är inte nödvändigt. Värdelöst?)

Steg 3: Ställa in drivrutinen

Inställning av drivrutinen
Inställning av drivrutinen

Nu … dags att köra denna motor med föraren? Inte ledsen än! Ser du skruven på A4988 -kortet? Tja, vi får krångla till det. Denna skruv låter dig i princip ställa in hur mycket ström som ska gå genom spolarna på din motor. I vårt fall, medan vår strömförsörjning ger 5V och våra spolar i motorn har ett motstånd på 50 Ohm, kommer vår ström inte att vara mer än 100mA, som bör stödjas av motorn så att du så småningom kan hoppa över detta steg. Men om du är som jag och att du vill att din motor bara ska ta så mycket ström som den behöver, följ sedan med.

Så för att ställa in drivrutinen, följ metod 2 i denna artikel med dessa anpassningar (som bilden ovan visar)

  1. Använd 5V från batteriskyddet för både logik och motoreffekt (VMOT sägs behöva mer än 8V men 5V fungerar!). De två GND -stiften på kortet är anslutna, så du behöver inte ansluta dem båda till batteriets jord.
  2. Anslut STEP- och DIR -stiften till 5V också (inte till Arduino som visas i den refererade artikeln)
  3. När jag ställde in multimetern ställde jag in strömmen till 50mA som var tillräckligt för att driva mina motorer med halvsteg (mer om det i nästa steg). För att ansluta min multimeter för att mäta strömmen i motorns spole, som du kan se på bilden ovan, kopplade jag bort den gula tråden från kontakten och satte in den röda tråden så att jag kunde sätta min multimeter från den röda till den gula tråden för att mäta strömmen.

Steg 4: Kontroll av motorn

Styrning av motorn
Styrning av motorn
Styrning av motorn
Styrning av motorn
Styrning av motorn
Styrning av motorn

Det är det, vi är nästan redo att göra vår motor. Det enda du ska göra är:

  1. att ta bort vår multimeter från vårt system om det inte redan är gjort,
  2. anslut MS1 till 5V vilket gör att föraren använder halvsteg (jag hade problem med att få roboten att svänga med fulla steg på 5V. Men som en del av mitt mål var att få allt att köra på 5V accepterade jag att offra lite hastighet och för att få lite precision),
  3. ge STEP- och DIR -stiften vad vi vill ha från vår handkontroll.

Sedan: om du vill styra motorn med Arduino följer du bara artikeln här där du hittar en provkod. Om du vill styra den med micro: bit så stanna kvar hos mig lite längre.

Micro: bit, som Arduino, levereras med GPIO: er. Därför kan vi, när vi drar den (med 3,3V!), Programmera den för att mata ut STEP och DIR. Även om det verkar finnas gott om in- och utdata, varnas det dock att många av dem redan är reserverade för andra ändamål. Du kan lära dig mer om det i den här artikeln. Du kommer att se i den här artikeln att faktiskt många av ingångar/utgångar delas med displayen, och därför måste du stänga av skärmen om du vill använda dem. Men låt oss inte stänga av skärmen! Så vilka stift kan vi använda? Jag använder stiften 2 och 8 eftersom jag inte kommer att använda kuddarna (stift 2).

Anslut stift 2 på micro: bit till STEP, stift 8 till DIR, ladda upp det bifogade programmet med din favorit micro: python-editor (jag använde mu-editor). Detta program ställer i princip in en PWM på stift 2 med en period på 1 millisekund (och en 50% driftcykel), och din motor ska rotera. Ställ stift 8 på 0 eller 1 för att få det att vända på ett eller annat sätt och ändra perioden för att få den att vrida den hastighet du vill (så länge du inte vill att den ska gå för fort … för mig en puls var varje millisekund nära till den maximala hastighet jag kunde nå).

För att göra saker lite mer kompakta och enkelt ta ombord på en mobil robot gjorde jag en liten bräda. Tavlan visas på bilden ovan. På bilden finns en lila tråd som går från VMOT till VDD som gömmer sig i skuggan. Dessutom är den gula tråden som går från SLP till RST faktiskt inte lödd, jag lägger den bara där för att representera lödet jag satte på baksidan av brädet för att ansluta de 2 stiften. Anmärkning: kylflänsen krävs normalt inte med ett sådant system, eftersom vi drar mycket, mycket mindre än 1A.

Det är det, jag hoppas att det här instruerbara kommer att hjälpa många av er att njuta av stegmotorns kraft i era projekt.

Rekommenderad: