Raspberry Pi - Schrittmotor Endschalter
Diese Anleitung zeigt Ihnen, wie Sie mit dem Raspberry Pi einen Schrittmotor über einen Endschalter und einen L298N-Treiber steuern. Konkret behandeln wir:
- Wie Sie den Raspberry Pi programmieren, um den Schrittmotor zu stoppen, wenn ein Endschalter berührt wird.
- Wie Sie den Raspberry Pi programmieren, um die Richtung des Schrittmotors zu ändern, wenn ein Endschalter berührt wird.
- Wie Sie den Raspberry Pi programmieren, um die Richtung des Schrittmotors durch zwei Endschalter zu ändern, die in entgegengesetzter Position installiert sind.
Benötigte Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über Schrittmotor und Endschalter
Falls Sie mit Schrittmotor und Endschalter nicht vertraut sind (einschließlich Pinbelegung, Funktionalität, Programmierung usw.), können Ihnen die folgenden Tutorials helfen:
- Raspberry Pi - Endschalter Tutorial
- Raspberry Pi - Schrittmotor Tutorial
Schaltplan
Diese Anleitung stellt den Schaltplan für zwei Fälle bereit: Ein Schrittmotor + ein Endschalter, Ein Schrittmotor + zwei Endschalter.
- Schaltplan zwischen Raspberry Pi, Schrittmotor und einem Endschalter

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

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Um Ihren Verdrahtungsaufbau zu vereinfachen und zu organisieren, empfehlen wir die Verwendung eines Schraubklemmenblock-Shields für Raspberry Pi. Dieses Shield gewährleistet sicherere und besser verwaltbare Verbindungen, wie unten gezeigt:

※ Notiz:
Die Verkabelung zwischen dem Schrittmotor und L298N kann je nach Art des Schrittmotors variieren. Lesen Sie sorgfältig das Raspberry Pi - Schrittmotor Tutorial, um zu lernen, wie Sie den Schrittmotor ordnungsgemäß mit dem L298N-Motortreiber verbinden.
Raspberry Pi Code - Schrittmotor durch Endschalter stoppen
Ein Schrittmotor wird mit dem folgenden Code programmiert, um sich kontinuierlich zu drehen, und stoppt sofort, wenn ein Endschalter berührt wird, und setzt die Bewegung fort, wenn der Endschalter losgelassen wird.
Schnelle Schritte
- Stellen Sie sicher, dass Sie Raspbian oder ein anderes Raspberry Pi-kompatibles Betriebssystem auf Ihrem Pi installiert haben.
- Stellen Sie sicher, dass Ihr Raspberry Pi mit demselben lokalen Netzwerk wie Ihr PC verbunden ist.
- Stellen Sie sicher, dass Ihr Raspberry Pi mit dem Internet verbunden ist, wenn Sie Bibliotheken installieren müssen.
- Falls Sie den Raspberry Pi zum ersten Mal verwenden, lesen Sie wie Sie den Raspberry Pi einrichten
- Verbinden Sie Ihren PC über SSH mit dem Raspberry Pi unter Verwendung des integrierten SSH-Clients auf Linux und macOS oder PuTTY auf Windows. Siehe wie Sie Ihren PC über SSH mit dem Raspberry Pi verbinden.
- Stellen Sie sicher, dass Sie die RPi.GPIO-Bibliothek installiert haben. Falls nicht, installieren Sie sie mit dem folgenden Befehl:
- Erstellen Sie eine Python-Script-Datei stepper_limit_switch.py und fügen Sie den folgenden Code hinzu:
- Speichern Sie die Datei und führen Sie das Python-Script aus, indem Sie den folgenden Befehl im Terminal eingeben:
- Wenn die Verkabelung korrekt ist, sollte sich der Motor im Uhrzeigersinn drehen.
- Wenn der Endschalter berührt wird, sollte der Motor sofort stoppen.
- Wenn der Endschalter dann losgelassen wird, dreht sich der Motor wieder.
Das Script läuft in einer Endlosschleife kontinuierlich, bis Sie Ctrl + C im Terminal drücken.
Durch Ändern des Wertes der delay-Variable im Code können Sie die Geschwindigkeit des Schrittmotors ändern.
Code-Erklärung
Schauen Sie sich die zeilenweise Erklärung in den Kommentaren des Quellcodes an!
Raspberry Pi Code - Richtung des Schrittmotors durch Endschalter ändern
Ein Schrittmotor wird kontinuierlich in Bewegung gesetzt und seine Richtung wird geändert, wenn ein Endschalter berührt wird.
Schnelle Schritte
- Erstellen Sie eine Python-Script-Datei stepper_direction.py und fügen Sie den folgenden Code hinzu:
- Speichern Sie die Datei und führen Sie das Python-Script aus, indem Sie den folgenden Befehl im Terminal eingeben:
- Wenn die Verkabelung korrekt ist, sollte sich der Motor im Uhrzeigersinn drehen.
- Wenn Sie den Endschalter berühren, ändert sich die Richtung des Schrittmotors zu gegen den Uhrzeigersinn.
- Berühren Sie den Endschalter erneut und die Richtung des Schrittmotors kehrt zum Uhrzeigersinn zurück.
Raspberry Pi Code - Richtung des Schrittmotors durch zwei Endschalter ändern
Schauen wir uns den Code an, der einen Schrittmotor kontinuierlich drehen lässt und die Motorrichtung ändert, wenn einer der beiden Endschalter berührt wird.
Schnelle Schritte
- Erstellen Sie eine Python-Script-Datei stepper_two_limit_switches.py und fügen Sie den folgenden Code hinzu:
- Speichern Sie die Datei und führen Sie das Python-Script aus, indem Sie den folgenden Befehl im Terminal eingeben:
Das Script läuft in einer Endlosschleife kontinuierlich, bis Sie Ctrl + C im Terminal drücken.
- Wenn die Verkabelung korrekt ist, sollte sich der Motor im Uhrzeigersinn drehen.
- Wenn Sie Endschalter 1 berühren, wird die Richtung des Schrittmotors auf gegen den Uhrzeigersinn umgekehrt.
- Das Berühren von Endschalter 2 führt dazu, dass sich der Schrittmotor wieder im Uhrzeigersinn dreht.