Een stappenmotor is een type gelijkstroommotor die in discrete stappen werkt en overal wordt gebruikt, van een bewakingscamera tot geavanceerde robots en machines. Stappenmotoren zorgen voor een nauwkeurige regeling en kunnen worden onderscheiden op basis van koppel, stappen per omwenteling en ingangsspanning. In ons vorige project hebben we de 28-BYJ48 stappenmotor aangestuurd met Arduino. 28-BYJ48 heeft een relatief lager koppel dan de andere stappenmotoren zoals NEMA 14, NEMA17.
In deze tutorial gaan we de NEMA17-stappenmotor besturen met behulp van Arduino Uno en A4988 stepper driver-module. Nema17 stappenmotor heeft een hoger koppel en hogere bedrijfsspanning dan 28-BYJ48. Hier wordt ook een potentiometer bevestigd om de richting van de stappenmotor te regelen.
Component vereist
- Arduino UNO
- NEMA17 stappenmotor
- A4988 Stepper-stuurprogrammamodule
- 47 µf Condensator
- Potentiometer
NEMA17 stappenmotor
De werking van Nema17 is vergelijkbaar met normale stappenmotoren. De NEMA 17-stappenmotor heeft een 1,7 x 1,7 inch frontplaat en heeft meestal meer koppel dan de kleinere varianten, zoals NEMA 14. Deze motor heeft zes aansluitdraden en de nominale spanning is 12 volt. Het kan op een lagere spanning worden gebruikt, maar het koppel zal afnemen. Stappenmotoren draaien niet, ze stappen, en de NEMA17-motor heeft een staphoek van 1,8 graden. betekent dat het bij elke stap 1,8 graden dekt. Het bedradingsschema voor NEMA17 wordt hieronder gegeven.
Zoals u kunt zien, heeft deze motor een unipolaire zesdraadsopstelling. Deze draad is verbonden in twee gedeelde wikkelingen. Zwarte, gele, groene draden maken deel uit van de eerste wikkeling, waarbij zwart middenaftakking is en geel en groen spoeluiteinde, terwijl rood, wit en blauw deel uitmaken van een tweede wikkeling, waarin wit middenaftakking is en rood en blauw spoel eind draden. Normaal gesproken zijn de draden van de middelste kraan niet aangesloten.
Stappen per revolutie voor NEMA17
Stappen per omwenteling voor een bepaalde stappenmotor wordt berekend met behulp van de staphoek van die stappenmotor. Dus in het geval is de NEMA 17-staphoek 1,8 graden.
Stappen per omwenteling = 360 / staphoek 360 / 1,8 = 200 stappen per omwenteling
Specificaties van NEMA17
- Nominale spanning: 12V DC
- Staphoek: 1,8 graden.
- Aantal fasen: 4
- Motorlengte: 1,54 inch
- 4-aderige kabel van 20 cm
- 200 stappen per omwenteling, 1,8 graden
- Bedrijfstemperatuur: -10 tot 40 ° C
- Unipolair vasthoudkoppel: 22,2 oz-in
Bekijk hier ook verschillende projecten met betrekking tot stappenmotoren, die niet alleen basisinterface met verschillende microcontrollers omvatten, maar ook robotica-projecten met een stappenmotor.
A4988 Stepper-stuurprogrammamodule
Een stepper driver module regelt de werking van een stappenmotor. Stepper-stuurprogramma's sturen de stroom naar de stappenmotor door verschillende fasen.
De A4988 Nema 17 stepper driver is een microstepping driver module die wordt gebruikt om bipolaire stappenmotoren aan te sturen. Deze driver-module heeft een ingebouwde vertaler, wat betekent dat we de stappenmotor kunnen besturen met zeer weinig pinnen van onze controller.
Met behulp van deze Nema 17-motordriver-module kunnen we de stappenmotor besturen door slechts twee pinnen te gebruiken, namelijk STAP en RICHTING. STEP-pin wordt gebruikt om de stappen te besturen, terwijl DIRECTION-pin wordt gebruikt om de richting van de motor te regelen. De A4988-stuurprogrammamodule biedt vijf verschillende stapresoluties: volledige stap, halve stap, kwart stap, acht stap en zestiende stap . U kunt de verschillende stapresoluties selecteren met behulp van de resolutiekiezerpennen ((MS1, MS2 en MS3). De waarheidstabel voor deze pennen wordt hieronder gegeven:
MS1 | MS2 | MS3 | Microstep-resolutie |
Laag | Laag | Laag | Volledige stap |
Hoog | Laag | Laag | ½ stap (halve stap) |
Laag | Hoog | Laag | ¼ stap (kwart stap) |
Hoog | Hoog | Laag | 1/8 stap (achtste stap) |
Hoog | Hoog | Hoog | 1/16 stap (zestiende stap) |
Specificaties van A4988
Max. Hoogte Bedrijfsspanning: 35V
Min. Bedrijfsspanning: 8V
Max. Hoogte Stroom per fase: 2A
Microstep-resolutie: volledige stap, ½ stap, ¼ stap, 1/8 en 1/16 stap
Bescherming tegen omgekeerde spanning: Nee
Afmetingen: 15,5 × 20,5 mm (0,6 ″ × 0,8 ″)
Schakelschema
Het schakelschema om de Nema 17-stappenmotor met Arduino te besturen, wordt weergegeven in de bovenstaande afbeelding. Omdat de A4988-module een ingebouwde vertaler heeft, hoeven we alleen de Step- en Direction-pinnen op Arduino aan te sluiten. Steppen wordt gebruikt voor het besturen van de treden, terwijl de richtingspen wordt gebruikt om de richting te regelen. De stappenmotor wordt gevoed met een 12V-voedingsbron en de A4988-module wordt gevoed via Arduino. Potentiometer wordt gebruikt om de richting van de motor te regelen.
Als u de potentiometer met de klok mee draait, draait de stepper met de klok mee, en als u de potentiometer tegen de klok in draait, draait deze tegen de klok in. Een 47 µf condensator wordt gebruikt om het bord te beschermen tegen spanningspieken. MS1-, MS2- en MS3-pinnen blijven losgekoppeld, wat betekent dat de driver in volledige stapmodus zal werken.
Volledige aansluitingen voor Arduino Nema 17 A4988 in onderstaande tabel.
S.NO. |
A4988-pen |
Verbinding |
1 |
VMOT |
+ ve van batterij |
2 |
GND |
-ve van de batterij |
3 |
VDD |
5V van Arduino |
4 |
GND |
GND van Arduino |
5 |
STP |
Pin 3 van Arduino |
6 |
DIR |
Pin 2 van Arduino |
7 |
1A, 1B, 2A, 2B |
Stappenmotor |
Code Uitleg
Volledige code met werkende videobesturing Nema 17 met Arduino wordt aan het einde van deze tutorial gegeven, hier leggen we het volledige programma uit om de werking van het project te begrijpen.
Voeg allereerst de stappenmotorbibliotheek toe aan uw Arduino IDE. U kunt de bibliotheek met stappenmotoren hier downloaden.
Definieer daarna het aantal stappen voor de NEMA 17. Zoals we hebben berekend, is het nee. aantal stappen per omwenteling voor NEMA 17 is 200.
# omvatten
Geef daarna de pinnen op waarop de stuurprogrammamodule is aangesloten en definieer het motorinterfacetype als Type1 omdat de motor is aangesloten via de drivermodule.
Stepper stepper (STEPS, 2, 3); #define motorInterfaceType 1
Stel vervolgens de snelheid voor de stappenmotor in met de functie stepper.setSpeed . Het maximale motortoerental voor NEMA 17 is 4688 RPM maar als we het sneller draaien dan 1000 RPM valt het koppel snel weg.
leegte setup () { stepper.setSpeed (1000);
Nu in de belangrijkste lus, zullen wij de potentiometer waarde van A0 pin te lezen. In deze lus zijn er twee functies: de ene is potVal en de andere is Pval . Als de huidige waarde, dwz potVal, hoger is dan de vorige waarde, dwz Pval, dan zal het tien stappen met de klok mee worden verplaatst en als de huidige waarde kleiner is dan de vorige waarde dan zal het tien stappen tegen de klok in worden verplaatst.
potVal = kaart (analogRead (A0), 0,1024,0,500); if (potVal> Pval) stepper.step (10); if (potVal
Verbind nu de Arduino met je laptop en upload de code met Arduino IDE naar je Arduino UNO-bord, selecteer het bord en poortnummer en klik vervolgens op de uploadknop.
Nu kunt u de richting van de Nema17-stappenmotor regelen met behulp van de potentiometer. De volledige werking van het project wordt getoond in de onderstaande video. Als je twijfels hebt over dit project, plaats ze dan in het commentaargedeelte hieronder.