Ein Schrittmotor ist eine Art Gleichstrommotor, der in diskreten Schritten arbeitet und von einer Überwachungskamera bis hin zu hoch entwickelten Robotern und Maschinen überall eingesetzt wird. Schrittmotoren bieten eine genaue Steuerung und können anhand des Drehmoments, der Schritte pro Umdrehung und der Eingangsspannung unterschieden werden. In unserem vorherigen Projekt haben wir den 28-BYJ48-Schrittmotor mit Arduino gesteuert. 28-BYJ48 hat ein relativ geringeres Drehmoment als die anderen Schrittmotoren wie NEMA 14, NEMA17.
In diesem Tutorial steuern wir den Schrittmotor NEMA17 mit dem Schritttreibermodul Arduino Uno und A4988. Der Schrittmotor Nema17 hat ein höheres Drehmoment und eine höhere Betriebsspannung als der 28-BYJ48. Hier wird auch ein Potentiometer angebracht, um die Richtung des Schrittmotors zu steuern.
Komponente erforderlich
- Arduino UNO
- NEMA17 Schrittmotor
- A4988 Schritttreibermodul
- 47 µf Kondensator
- Potentiometer
NEMA17 Schrittmotor
Der Betrieb von Nema17 ähnelt dem von normalen Schrittmotoren. Der Schrittmotor NEMA 17 hat eine Frontplatte von 1,7 x 1,7 Zoll und normalerweise mehr Drehmoment als die kleineren Varianten wie NEMA 14. Dieser Motor hat sechs Zuleitungen und die Nennspannung beträgt 12 Volt. Es kann mit einer niedrigeren Spannung betrieben werden, aber das Drehmoment fällt ab. Schrittmotoren drehen sich nicht, sie treten schrittweise auf, und der NEMA17-Motor hat einen Schrittwinkel von 1,8 Grad. bedeutet, dass es in jedem Schritt 1,8 Grad abdeckt. Der Schaltplan für NEMA17 ist unten angegeben.
Wie Sie sehen können, hat dieser Motor eine unipolare Sechsleiteranordnung. Diese Drähte sind in zwei geteilten Wicklungen verbunden. Schwarze, gelbe, grüne Drähte sind Teil der ersten Wicklung, wobei Schwarz der Mittelabgriff ist, und Gelb und Grün sind das Spulenende, während Rot, Weiß und Blau Teil einer zweiten Wicklung sind, bei der Weiß der Mittelabgriff und Rot und Blau die Spule sind Enddrähte. Normalerweise bleiben die mittleren Abzweigdrähte getrennt.
Schritte pro Revolution für NEMA17
Schritte pro Umdrehung für einen bestimmten Schrittmotor werden unter Verwendung des Schrittwinkels dieses Schrittmotors berechnet. In diesem Fall beträgt der NEMA 17-Schrittwinkel 1,8 Grad.
Schritte pro Umdrehung = 360 / Schrittwinkel 360 / 1,8 = 200 Schritte pro Umdrehung
Spezifikationen von NEMA17
- Nennspannung: 12V DC
- Schrittwinkel: 1,8 Grad
- Anzahl der Phasen: 4
- Motorlänge: 1,54 Zoll
- 4-Draht, 8-Zoll-Kabel
- 200 Schritte pro Umdrehung, 1,8 Grad
- Betriebstemperatur: -10 bis 40 ° C.
- Unipolares Haltemoment: 22,2 oz-in
Überprüfen Sie hier auch verschiedene Projekte im Zusammenhang mit Schrittmotoren, die nicht nur eine grundlegende Schnittstelle zu verschiedenen Mikrocontrollern beinhalten, sondern auch Robotikprojekte mit Schrittmotoren beinhalten.
A4988 Schritttreibermodul
Ein Schritttreibermodul steuert die Arbeitsweise eines Schrittmotors. Schritttreiber senden den Strom über verschiedene Phasen an den Schrittmotor.
Der Schritttreiber A4988 Nema 17 ist ein Mikroschritt-Treibermodul zur Steuerung von bipolaren Schrittmotoren. Dieses Treibermodul verfügt über einen eingebauten Übersetzer, mit dem wir den Schrittmotor mit sehr wenigen Stiften unserer Steuerung steuern können.
Mit diesem Nema 17-Motortreibermodul können wir den Schrittmotor mit nur zwei Stiften steuern, dh STEP und DIRECTION. Der STEP-Pin dient zur Steuerung der Schritte, während der DIRECTION-Pin zur Steuerung der Motorrichtung verwendet wird. Das A4988-Treibermodul bietet fünf verschiedene Schrittauflösungen: Vollschritt, Haftschritt, Viertelschritt, Achtschritt und Sechzehntelschritt . Sie können die verschiedenen Schrittauflösungen mithilfe der Auflösungsauswahlstifte ((MS1, MS2 und MS3)) auswählen. Die Wahrheitstabelle für diese Stifte ist unten angegeben:
MS1 | MS2 | MS3 | Mikroschrittauflösung |
Niedrig | Niedrig | Niedrig | Voller Schritt |
Hoch | Niedrig | Niedrig | ½ Schritt (halber Schritt) |
Niedrig | Hoch | Niedrig | ¼ Schritt (Viertelschritt) |
Hoch | Hoch | Niedrig | 1/8 Schritt (achter Schritt) |
Hoch | Hoch | Hoch | 1/16 Schritt (sechzehnter Schritt) |
Technische Daten von A4988
Max. Betriebsspannung: 35V
Mindest. Betriebsspannung: 8V
Max. Strom pro Phase: 2A
Mikroschrittauflösung: Vollschritt, ½ Schritt, ¼ Schritt, 1/8 und 1/16 Schritt
Sperrspannungsschutz: Nein
Abmessungen: 15,5 × 20,5 mm (0,6 "× 0,8")
Schaltplan
Das obige Bild zeigt einen Schaltplan zur Steuerung des Schrittmotors Nema 17 mit Arduino. Da das A4988-Modul über einen eingebauten Übersetzer verfügt, müssen nur die Step- und Direction-Pins mit Arduino verbunden werden. Der Stufenstift wird zum Steuern der Schritte verwendet, während der Richtungsstift zum Steuern der Richtung verwendet wird. Der Schrittmotor wird über eine 12-V-Stromquelle und das A4988-Modul über Arduino mit Strom versorgt. Das Potentiometer dient zur Steuerung der Motorrichtung.
Wenn Sie das Potentiometer im Uhrzeigersinn drehen, dreht sich der Stepper im Uhrzeigersinn, und wenn Sie das Potentiometer gegen den Uhrzeigersinn drehen, dreht es sich gegen den Uhrzeigersinn. Ein 47 µf Kondensator schützt die Platine vor Spannungsspitzen. Die MS1-, MS2- und MS3-Pins bleiben getrennt, dh der Treiber arbeitet im Vollschrittmodus.
Vollständige Verbindungen für Arduino Nema 17 A4988 in der folgenden Tabelle angegeben.
S.NO. |
A4988 Pin |
Verbindung |
1 |
VMOT |
+ ve Batterie |
2 |
GND |
-ve der Batterie |
3 |
VDD |
5 V von Arduino |
4 |
GND |
GND von Arduino |
5 |
STP |
Pin 3 von Arduino |
6 |
DIR |
Pin 2 von Arduino |
7 |
1A, 1B, 2A, 2B |
Schrittmotor |
Code Erklärung
Der vollständige Code mit funktionierender Videosteuerung Nema 17 mit Arduino finden Sie am Ende dieses Tutorials. Hier erklären wir das vollständige Programm, um die Funktionsweise des Projekts zu verstehen.
Fügen Sie zunächst die Schrittmotorbibliothek zu Ihrer Arduino IDE hinzu. Sie können die Schrittmotorbibliothek hier herunterladen.
Danach definieren Sie die Anzahl der Schritte für die NEMA 17. Wie wir berechnet haben, wird die Anzahl der Schritte. Die Anzahl der Schritte pro Umdrehung für NEMA 17 beträgt 200.
#einschließen
Geben Sie anschließend die Pins an, an die das Treibermodul angeschlossen ist, und definieren Sie den Motorschnittstellentyp als Typ1, da der Motor über das Treibermodul verbunden ist.
Schritt Stepper (SCHRITTE, 2, 3); #define motorInterfaceType 1
Stellen Sie als nächstes die Drehzahl für den Schrittmotor mit der Funktion stepper.setSpeed ein . Die maximale Motordrehzahl für NEMA 17 beträgt 4688 U / min. Wenn wir jedoch schneller als 1000 U / min laufen, sinkt das Drehmoment schnell ab.
void setup () { stepper.setSpeed (1000);
Jetzt in der Hauptschleife , werden wir den Potiwert von A0 Stift lesen. In dieser Schleife gibt es zwei Funktionen, eine ist potVal und die andere ist Pval . Wenn der aktuelle Wert, dh potVal, höher als der vorherige Wert ist, dh Pval , bewegt er sich zehn Schritte im Uhrzeigersinn, und wenn der aktuelle Wert kleiner als der vorherige Wert ist, bewegt er sich zehn Schritte gegen den Uhrzeigersinn.
potVal = map (analogRead (A0), 0,1024,0,500); if (potVal> Pval) stepper.step (10); if (potVal
Verbinden Sie nun das Arduino mit Ihrem Laptop und laden Sie den Code mithilfe der Arduino IDE auf Ihr Arduino UNO-Board hoch. Wählen Sie das Board und die Port-Nr. Aus und klicken Sie dann auf die Schaltfläche zum Hochladen.
Jetzt können Sie die Richtung des Nema17-Schrittmotors mit dem Potentiometer steuern. Die vollständige Arbeitsweise des Projekts ist im folgenden Video dargestellt. Wenn Sie Zweifel an diesem Projekt haben, posten Sie diese im Kommentarbereich unten.