- Szükséges alkatrészek
- Taposó motor leírása
- Áramkör a léptetőmotor vezérléséhez az ULN2003 modullal
- Áramkör a léptetőmotor vezérléséhez az L293D modul segítségével:
- A léptetőmotor vezérlése AVR ATmega16-tal
A léptetőmotorok egyenáramú kefe nélküli motorok, amelyek 0 0 és 360 0 között mozoghatnak lépésenként. A léptetőmotor elektronikus jelekkel forgatja a motort lépésenként, és mindegyik jel rögzített lépésenként (egy lépésben) forgatja a tengelyt. A forgóangyalt bizonyos jelek sorozatának alkalmazásával lehet vezérelni. A szervomotorral ellentétben a léptetőmotorok a mikrovezérlő GPIO csapjaival, nem pedig a PWM csapjaival működtethetők, és foroghatnak (+360 0) és (-360 0)). A jelek sorrendje határozza meg a léptető motor óramutató járásával megegyező és az óramutató járásával ellentétes irányát. A motor fordulatszámának szabályozásához csak meg kell változtatnunk az alkalmazott vezérlőjelek sebességét. A léptető motorok lépésenként forognak. A léptetőmotor működésének többféle módja van, például teljes lépés, fél lépés és mikrolépés. Ha többet szeretne megtudni a léptető motor alapjairól, elméletéről és működési elvéről, kövesse a linket.
Korábban számos mikrovezérlővel csatlakoztattuk a léptetőmotort:
- Összekötő léptetőmotor és ARM7-LPC2148
- A léptető motor összekapcsolása az Arduino Uno-val
- A léptető motor összekapcsolása az MSP430G2-vel
- Összekötő léptetőmotor és STM32F103C8
- Összekötő léptetőmotor PIC mikrovezérlővel
- Összekötő léptetőmotor és 8051 mikrovezérlő
- Összekötő léptetőmotor és Raspberry Pi
Ebben az oktatóanyagban összekapcsoljuk a 28BYJ-48 léptetőmotort az Atmega16 AVR mikrovezérlővel az Atmel Studio 7.0 használatával. A léptetőmotor 5 V-ban működik. Összekapcsoljuk a léptetőmotort mindkét motor meghajtóval, pl. ULN2003 és L293. Mindkettőt 5V-os tápfeszültség táplálja. Az interfész egyszerűsítése érdekében mindkét motor meghajtójának előépítő modulját használjuk. Használhatja az ULN2003 és L293D önálló IC-ket is. A vezetékek és az áthidalók száma több lehet, ezért csak az összes csatlakozás csatlakoztatása közben legyen óvatos.
Szükséges alkatrészek
- Léptetőmotor (28BYJ-48)
- ULN2003 modul / L293D motorvezérlő
- Atmega16 mikrokontroller IC
- 16Mhz kristályoszcillátor
- Két 100nF kondenzátor
- Két 22pF kondenzátor
- Nyomógomb
- Jumper huzalok
- Kenyérlemez
- USBASP v2.0
- Led (bármilyen színű)
Taposó motor leírása
Áramkör a léptetőmotor vezérléséhez az ULN2003 modullal
Az ULN2003 használatakor csatlakoztassa az összes alkatrészt az alábbi ábra szerint. Hasonlóképpen a következő lépésben összekapcsoljuk az L293D használatával. Az Atmega16 PORTA-ját használjuk a léptetőmotor összekapcsolására mindkét motorvezérlő számára. Nincs szükség az 5 V-os léptetőmotor csatlakoztatására. A léptetőmotor mozgatásához csak a tekercscsapokra van szükség. A csapos sorrend nagyon fontos a léptetőmotor meghajtásához, mivel a tekercsek feszültségének meg kell felelnie a lépések eléréséhez. Az ULN2003 négy bemenetét és az ULN2003 négy kimenetét használják ebben a projektben. A bemenetek a PORTA érintkezőkhöz, a kimenetek pedig a léptetőmotor jel csatlakozóihoz lesznek kötve. Csatlakoztasson egy nyomógombot a Reset pin-be az Atmega16 alaphelyzetbe állításához, amikor szükséges. Csatlakoztassa az Atmega16-ot megfelelő kristályoszcillátor áramkörrel. Az egész rendszert 5 V-os tápfeszültség táplálja.
Az alábbiakban látható az ULN2003 motorvezérlő modul tényleges képe:
Az alábbiakban az Atmega16 tűs csatlakozásokat adtuk meg az ULN2003 és L293D készülékekkel a léptető motor forgatásához. A léptetőmotor és az L293D modul összekapcsolását a későbbi szakasz ismerteti, ne feledje, hogy csak egy ULN2003 vagy L293D modulra van szükség a léptetőmotor vezérléséhez.
Az INPUT csatlakozói a következők:
Atmega16 |
ULN2003 |
L293D |
A0 |
IN1 (PIN1) |
IN1 (PIN2) |
A1 |
IN2 (PIN2) |
IN2 (PIN7) |
A2 |
IN3 (PIN3) |
IN3 (PIN10) |
A3 |
IN4 (PIN4) |
IN4 (PIN15) |
Az OUTPUT csatlakozói a következők:
Léptető motor |
ULN2003 |
L293D |
narancssárga |
OUT1 (PIN16) |
OUT1 (PIN3) |
Sárga |
OUT2 (PIN15) |
OUT2 (PIN6) |
Rózsaszín |
OUT3 (PIN14) |
OUT3 (PIN11) |
Kék |
OUT4 (PIN13) |
OUT4 (PIN14) |
Áramkör a léptetőmotor vezérléséhez az L293D modul segítségével:
A léptetőmotor vezérlése AVR ATmega16-tal
Amint azt már a Servo Motorral ellentétben elmondtuk, a Stepper motorokhoz külső meghajtókra van szükség, pl. ULN2003 vagy L293D motor meghajtóra. Tehát egyszerűen csatlakoztassa az áramkört a fentiek szerint, és töltse fel a végén megadott main.c programot.
A vázlat bemutatja a léptetőmotor mindkét oldalán forgását, azaz az óramutató járásával megegyező és az óramutató járásával ellentétes irányban. Ha a léptetőt egy irányba akarja forgatni, egyszerűen írja le a vázlat másik irányának kódsorait.
A léptető motor vezérlésének teljes AVR-kódja az alábbiakban található. A kód egyszerű és könnyen érthető. Két kódot adunk meg az alábbiakban, az egyiket az ULN2003-as forgó léptetőmotorhoz, a másodikat az L293D modulhoz.
Csatlakoztassa az USBASP v2.0-t, és kövesse az ezen a linken található utasításokat az Atmega16 AVR mikrovezérlő programozásához az USBASP és az Atmel Studio 7.0 használatával. Csak készítse el a vázlatot és töltse fel a külső eszköztár segítségével.
Az alábbiakban bemutatjuk a teljes kódot a demonstrációs videóval.