Léptető motor vezérlése ULN2003 vezérlővel

 

 14.Projekt -- Léptető motor vezérlése ULN2003 vezérlővel --V1.0

 by Roboworld Hobbielektronika


Rövid leírás:
Ebben a rövid projektben bemutatjuk neked hogyan tudsz egy léptető motort vezérelni ULN2003 típusú motorvezérlővel. Továbbá szót ejtünk arról is, hogy egy léptető motort milyen elvek/lépésmódok alapján lehet irányítani.

Hardware:
1db Arduino Uno
1db Léptető motor +ULN2003 motorvezérlő
Jumper kábel

Kapcsolási rajz:


28BYJ-48 típusú léptetőmotor
5 vezetékes unipoláris léptető(stepper) motor. 5-12V DC tápfeszültséggel működtethető. Az áttétele 64:1, amely körülbelül 15 RPM-es sebességet eredményez. (15 RPM annyit jelent, hogy 1 perc alatt 15x képes körbefordulni).

A hozzá tartozó ULN2003 motorvezérlő segítségével tudjuk a stepper motort könnyedén vezérelni Arduinoval. Ha megnézzük a motorvezérlőt akkor látható a fehér 5 vezetékes csatlakozó, amelyhez a motorunk vezetékeit kell csatlakoztatni. Nem kell félni, hisz csak egy féle képpen lehetséges behelyezni. Található még rajta 4 db LED és 4 db input pin is (IN1-IN4). A LED-ek arra szolgálnak, hogy visszajelezzen számunkra, hogy melyik tekercs is van bekapcsolt állapotban. Az IN1-IN4 bemeneti pinekkel pedig ezeket a tekercseket tudjuk bekapcsolni.

Lépésmódok
A programozás elkezdése előtt szót kell ejteni, hogy milyen módok/metódusok alapján lehet a léptetőmotorunkat irányítani. 3 féle módot fogunk bemutatni:
                                                        1. Hullám vezérlés (Wave driving)
                                                        2. Teljes lépéses vezérlés
                                                        3. Fél lépéses vezérlés

Hullám vezérlés (Wave drive)
Ebben az esetben egy időben egy fázist használunk. Az egy lépésre jutó lépési szögünk 11,25° - amely annyit jelent, hogy összesen 32 lépés kell a tengely 1 teljes körbefordulásához. Tehát először kapcsoljuk a kék szálon lévő tekercset, majd a rózsaszínt, majd a sárgát és végül a narancsot és kezdődik az egész elölről. Abban az esetben, ha másik irányba szeretnénk, hogy a motor tengelye forduljon akkor nem kell más tennünk, mint fordított irányba vezérelni. Tehát narancs lesz az első és kék az utolsó. Egyszerű, azonban ez a mód eredményezi a legnagyobb lépésenkénti szöget a legkisebb nyomaték mellett.



Teljes lépéses vezérlés (Full step drive)
Ebben az esetben már 2 fázist használunk egy időben. Az egy lépésre jutó szög itt is 11,25° akárcsak a hullám vezérlésnél, azonban a legjobb nyomaték mellett. Ez a leggazdaságosabb üzem.


Fél lépéses vezérlés (Half step drive)
Ebben az esetben is 2 fázist használunk mindegyiket hosszabb ideig. Ez azt eredményezi, hogy megfeleződik a lépési szög. 11,25°/2 = 5,625°. Most már 64 lépés kell ahhoz, hogy a tengely 1x körbeforduljon. Tehát kisebb lépési szög azonban a forgatónyomaték koránt sem akkora, mint teljes lépéses üzem esetén.

Áttételekről (Gear ratio)

A következőkben szó esik az motor áttételeiről is. Az alábbi képen ez látható.


Teljes lépéses üzem esetén 32 lépés kell a rotor tengelyének, hogy egy teljes 360° -os kört megtudjon tenni a motor tengely. Minden egyes lépés 11,25 °. Fél lépéses üzem esetén ez 5,625°vagyis 64 lépés kell egy körbeforduláshoz.

Mivel a stepper motor 64:1-es áttétellel rendelkezik, így a motor:
Teljes lépés esetén: 32*64 = 2048 lépés / motortengely fordulás. 11.25° / 64 =0.18° lépésszög
Fél lépés esetén:64*64 = 4096 lépés / motortengely fordulás. 5.625° / 64 = 0.09° lépésszög

Most, hogy már ismerjük az eszközünket jöjjön a programozás.

Programozás, mintakód




Összesen 8 db mintakódot fogsz találni, amelyek lépésről lépésre bemutatják azt, hogy milyen az, amikor hullám, teljes lépéses üzemben vagy fél lépéses üzemben használod a léptető motorodat. Az S01-S04-ig a hullám vezérlést mutatják be. Az S05 a teljes lépéses üzemet az S06 pedig a fél lépéses üzemet mutatja be. Továbbá megtalálható még két extra mintakód is amely az Accelstepper library-t használja a steppermotor vezérléséhez. Ez egy univerzális library, amellyel a legtöbb léptető motort tudjuk vezérelni. További információt az alábbi itt találsz.


Forrás

https://www.youtube.com/watch?v=B86nqDRskVU
https://channel9.msdn.com/Shows/themakershow/8
http://42bots.com/tutorials/28byj-48-stepper-motor-with-uln2003-driver-and-arduino-uno/

Letöltés
A leírás PDF-ben: Itt található
Letölthető tartalom a léptetőmotorról


Megjegyzések