Arduino - Schrittmotor und Endschalter
In diesem Arduino-Tutorial lernen wir, wie man Arduino, Endschalter, den L298N-Treiber und einen Schrittmotor verwendet. Genauer gesagt werden wir Folgendes lernen:
- Wie man den Schrittmotor stoppt, wenn ein Grenzschalter betätigt wird
- Wie man die Richtung des Schrittmotors ändert, wenn ein Grenzschalter betätigt wird
- Wie man die Richtung des Schrittmotors ändert, wenn zwei Grenzschalter betätigt werden
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables STEM V3 Starter-Kit (Arduino enthalten) | |
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über Schrittmotor und Endschalter
Wenn du nichts über den Schrittmotor und den Endschalter weißt (Pinbelegung, Funktionsweise, Programmierung ...), lerne in den folgenden Tutorials:
- Arduino - Limit Switch tutorial
- Arduino - Controls Stepper Motor tutorial
Verdrahtungsdiagramm
Dieses Tutorial liefert Arduino-Codes für zwei Fälle: einen Schrittmotor mit einem Endschalter und einen Schrittmotor mit zwei Endschaltern.
- Verdrahtungsdiagramm zwischen dem Schrittmotor und einem Endschalter

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
- Verdrahtungsdiagramm zwischen dem Schrittmotor und zwei Endschaltern

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
※ Notiz:
Je nach Schrittmotor kann die Verdrahtungsverbindung zwischen dem Schrittmotor und dem L298N unterschiedlich sein. Bitte werfen Sie einen genauen Blick auf dieses Arduino - Schrittmotor Tutorial, um zu sehen, wie man den Schrittmotor an den L298N-Motortreiber anschließt.
Arduino-Code - Schrittmotor durch einen Endschalter stoppen
Es gibt mehrere Möglichkeiten, einen Schrittmotor zum Stillstand zu bringen:
- Rufen Sie die Funktion stepper.stop() auf: Auf diese Weise stoppt der Schrittmotor nicht sofort, sondern allmählich
- Rufen Sie NICHT die Funktion stepper.run() auf: Auf diese Weise wird der Schrittmotor sofort gestoppt
Der unten stehende Code lässt einen Schrittmotor endlos drehen und stoppt ihn sofort, wenn ein Grenzschalter berührt wird.
Schnelle Schritte
- Schließe Arduino über ein USB-Kabel an den PC an
- Öffne die Arduino IDE, wähle das richtige Board und den richtigen Port
- Gehe zum Bibliotheken-Symbol in der linken Leiste der Arduino IDE.
- Suche „ezButton“, und finde dann die Button-Bibliothek von ArduinoGetStarted.com
- Klicke auf die Installieren-Schaltfläche, um die ezButton-Bibliothek zu installieren.

- Suchen Sie “AccelStepper”, dann finden Sie die AccelStepper-Bibliothek von Mike McCauley
- Klicken Sie auf die Schaltfläche Installieren, um die AccelStepper-Bibliothek zu installieren.

- Kopieren Sie den obigen Code und öffnen Sie ihn mit der Arduino IDE
- Klicken Sie auf die Hochladen-Schaltfläche in der Arduino IDE, um den Code auf Arduino hochzuladen
- Wenn die Verkabelung korrekt ist, sehen Sie, dass sich der Motor im Uhrzeigersinn dreht
- Berühren Sie den Endschalter
- Sie sehen, dass der Motor sofort stoppt
- Das Ergebnis im Seriemonitor sieht wie folgt aus
Code-Erklärung
Sie finden die Erklärung in der Kommentarzeile des obigen Arduino-Codes.
Arduino-Code - Richtungswechsel des Schrittmotors durch einen Grenzschalter
Der unten stehende Code lässt einen Schrittmotor endlos drehen und die Richtung ändern, wenn ein Endschalter betätigt wird.
Schnelle Schritte
- Kopieren Sie den obigen Code und öffnen Sie ihn mit der Arduino IDE.
- Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino hochzuladen.
- Wenn die Verdrahtung korrekt ist, sehen Sie, dass sich der Motor im Uhrzeigersinn dreht.
- Berühren Sie den Endschalter.
- Sie werden sehen, dass sich die Richtung des Schrittmotors gegen den Uhrzeigersinn ändert.
- Berühren Sie erneut den Endschalter.
- Sie werden sehen, dass sich die Richtung des Schrittmotors wieder zum Uhrzeigersinn ändert.
- Das Ergebnis im seriellen Monitor sieht unten so aus.
Arduino-Code - Richtungswechsel des Schrittmotors durch zwei Endschalter
Der untenstehende Code lässt einen Schrittmotor unendlich drehen und die Richtung ändern, wenn einer der beiden Endschalter berührt wird.
Schnelle Schritte
- Kopieren Sie den obigen Code und öffnen Sie ihn mit der Arduino-IDE
- Klicken Sie in der Arduino-IDE auf die Schaltfläche Hochladen, um den Code auf den Arduino hochzuladen
- Wenn die Verkabelung korrekt ist, sehen Sie, dass der Motor sich im Uhrzeigersinn dreht
- Berühren Sie den Endschalter 1
- Sie sehen, dass sich die Richtung des Schrittmotors gegen den Uhrzeigersinn ändert
- Berühren Sie den Endschalter 2
- Sie sehen, dass sich die Richtung des Schrittmotors im Uhrzeigersinn ändert
- Das Ergebnis im Seriellen Monitor sieht wie folgt aus
Video Tutorial
Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.