ESP32 - Gleichstrommotor - Endschalter
In diesem ESP32-Tutorial lernen wir, wie man den ESP32 verwendet, um einen Gleichstrommotor über Grenzschalter und den L298N-Treiber zu steuern. Im Detail werden wir lernen:
- Wie man einen Gleichstrommotor stoppt, wenn ein Grenzschalter betätigt wird
- Wie man die Drehrichtung eines Gleichstrommotors ändert, wenn ein Grenzschalter betätigt wird
- Wie man die Drehrichtung eines Gleichstrommotors ändert, wenn zwei Grenzschalter betätigt werden
In diesem Tutorial zum ESP32 werden wir den Prozess untersuchen, wie der ESP32 verwendet wird, um einen Gleichstrommotor mithilfe eines Endschalters und eines L298N-Treibers zu steuern. Genauer gesagt behandeln wir die folgenden Aspekte:
- Den DC-Motor stoppen, wenn ein Endschalter betätigt wird.
- Die Drehrichtung des DC-Motors ändern, wenn ein Endschalter betätigt wird.
- Die Drehrichtung des DC-Motors ändern, wenn zwei Endschalter betätigt werden.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
| 1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über Gleichstrommotor und Endschalter
Wenn Sie nichts über DC-Motoren und Grenzschalter wissen (Pinbelegung, Funktionsweise, wie man sie programmiert ...), erfahren Sie in den folgenden Tutorials mehr darüber:
- ESP32 - Limit Switch tutorial
- ESP32 - Controls DC Motor tutorial
Verdrahtungsdiagramm
Dieses Tutorial enthält die ESP32-Codes für zwei Fälle: Einen Gleichstrommotor + einen Endschalter, einen Gleichstrommotor + zwei Endschalter.
- Verdrahtungsdiagramm zwischen dem DC-Motor und einem Endschalter

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wenn Sie nicht wissen, wie Sie ESP32 und andere Komponenten mit Strom versorgen, finden Sie Anleitungen im folgenden Tutorial: Wie man ESP32 mit Strom versorgt.
- Schaltplan zwischen dem Gleichstrommotor und zwei Endschaltern

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
ESP32-Code - DC-Motor durch einen Endschalter stoppen
Der untenstehende Code lässt einen Gleichstrommotor endlos drehen und stoppt ihn sofort, wenn ein Grenzschalter berührt wird.
Schnelle Schritte
- Wenn Sie ESP32 zum ersten Mal verwenden, lesen Sie wie man die ESP32-Umgebung in der Arduino IDE einrichtet.
- Verdrahten Sie es gemäß dem obigen Bild.
- Verbinden Sie das ESP32-Board über ein Micro-USB-Kabel mit Ihrem PC.
- Öffnen Sie die Arduino IDE auf Ihrem PC.
- Wählen Sie das richtige ESP32-Board (z. B. ESP32 Dev Module) und den COM-Port aus.
- Verbinden Sie den ESP32 über ein USB-Kabel mit dem PC.
- Öffnen Sie die Arduino IDE, wählen Sie das richtige Board und den Port aus.
- Klicken Sie auf das Bibliotheken-Symbol in der linken Leiste der Arduino IDE.
- Suchen Sie „ezButton“, und finden Sie dann die Button-Bibliothek von ArduinoGetStarted.com.
- Klicken Sie auf den Installieren-Button, um die ezButton-Bibliothek zu installieren.

- 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 ESP32 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 Serial Monitor sieht wie folgt aus.
Code-Erklärung
Die Erklärung finden Sie in den Kommentaren des obigen Arduino-Codes.
ESP32-Code - Richtungswechsel des Gleichstrommotors durch einen Endschalter
Der folgende Code lässt einen Gleichstrommotor endlos drehen und seine Richtung ändern, wenn ein Endschalter berührt wird.
Schnelle Schritte
- Wenn dies das erste Mal ist, dass Sie ESP32 verwenden, sehen Sie wie man die Umgebung für ESP32 in der Arduino IDE einrichtet.
- Schließen Sie die Verkabelung wie im obigen Bild an.
- Schließen Sie das ESP32-Board über ein Micro-USB-Kabel an Ihren PC an.
- Öffnen Sie die Arduino IDE auf Ihrem PC.
- Wählen Sie das richtige ESP32-Board aus (z. B. ESP32 Dev Module) und den COM-Port.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino IDE.
- Klicken Sie auf die Schaltfläche Upload in der Arduino IDE, um den Code auf den ESP32 hochzuladen.
- Wenn die Verkabelung korrekt ist, sehen Sie, dass sich der Motor im Uhrzeigersinn dreht.
- Berühren Sie den Grenzschalter.
- Sie werden sehen, dass sich die Richtung des Gleichstrommotors gegen den Uhrzeigersinn ändert.
- Berühren Sie den Grenzschalter erneut.
- Sie werden sehen, dass sich die Richtung des Gleichstrommotors wieder zum Uhrzeigersinn ändert.
- Das Ergebnis im Serial Monitor sieht wie unten dargestellt aus.
ESP32-Code - Richtungswechsel eines Gleichstrommotors durch zwei Endschalter
Der unten stehende Code lässt einen Gleichstrommotor endlos drehen und die Richtung ändern, wenn einer von zwei Endschaltern berührt wird.
Schnelle Schritte
- Wenn Sie ESP32 zum ersten Mal verwenden, sehen Sie sich wie man die ESP32-Umgebung in der Arduino-IDE einrichtet an.
- Verbinden Sie die Verkabelung gemäß dem obigen Bild.
- Schließen Sie das ESP32-Board über ein Micro-USB-Kabel an Ihren PC an.
- Öffnen Sie die Arduino-IDE auf Ihrem PC.
- Wählen Sie das richtige ESP32-Board (z. B. ESP32 Dev Module) und den COM-Port aus.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino-IDE.
- Klicken Sie in der Arduino-IDE auf die Schaltfläche Hochladen, um den Code auf den ESP32 hochzuladen.
- Wenn die Verkabelung korrekt ist, sehen Sie, dass sich der Motor im Uhrzeigersinn dreht.
- Berühren Sie den Endschalter 1.
- Sie sehen, dass sich die Drehrichtung des Gleichstrommotors gegen den Uhrzeigersinn ändert.
- Berühren Sie den Endschalter 2.
- Sie sehen, dass sich die Drehrichtung des Gleichstrommotors wieder auf den Uhrzeigersinn ändert.
- Das Ergebnis im Serial 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.