ESP32 - Grenzschalter
Dieses Tutorial zeigt Ihnen, wie Sie den Grenzschalter mit dem ESP32 verwenden.

Es ist wichtig zu beachten, dass dieses Tutorial sich speziell mit der Verwendung eines Grenzschalters befasst; bitte verwechseln Sie dies nicht mit dem Folgenden:
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 Endschalter
Es wird als Endlagenschalter bezeichnet, da seine Hauptfunktion darin besteht, zu erkennen, wenn ein sich bewegendes Objekt einen Grenzwert erreicht.
Ein Endschalter wird so benannt, weil sein Hauptzweck darin besteht zu erkennen, wann ein sich bewegendes Objekt eine Grenze erreicht hat.
Pinbelegung
Es gibt verschiedene Arten von Grenzschaltern, aber zu den am häufigsten verwendeten gehören die KW12-3 und V-156-1C25. Jeder dieser Typen verfügt über drei Pins:
- C-Pin: Dies ist der gemeinsame Pin; er wird in beiden Modi verwendet – sowohl im normalerweise offenen als auch im normalerweise geschlossenen Modus.
- NO-Pin: Dies ist der normalerweise offene Pin; er wird im normalerweise offenen Modus verwendet.
- NC-Pin: Dies ist der normalerweise geschlossene Pin; er wird im normalerweise geschlossenen Modus verwendet.

Wie es funktioniert
Eine typische Anwendung eines Limitschalters verwendet in der Regel nur zwei Pins, den C-Pin und einen der verbleibenden zwei Pins. Dies ergibt vier verschiedene Arten, einen Limitschalter zu verwenden. Die untenstehende Tabelle veranschaulicht die Verdrahtung und den Auslesestatus an einem ESP32 für jede dieser vier Methoden.
| C pin | NO pin | NC pin | ESP32 Input Pin's State | |
|---|---|---|---|---|
| 1 | GND | ESP32 Input Pin (with pull-up) | not connected | HIGH when untouched, LOW when touched |
| 2 | GND | not connected | ESP32 Input Pin (with pull-up) | LOW when untouched, HIGH when touched |
| 3 | VCC | ESP32 Input Pin (with pull-down) | not connected | LOW when untouched, HIGH when touched |
| 4 | VCC | not connected | ESP32 Input Pin (with pull-down) | HIGH when untouched, LOW when touched |
Indem man den GND-Pin und den ESP32-Eingangspin für jede der vier Möglichkeiten austauscht, ergeben sich insgesamt acht verschiedene Möglichkeiten, einen ESP32 mit einem Endschalter zu verbinden.
Unter den acht Wegen wird sich das Tutorial auf eine Methode konzentrieren, genauer gesagt auf die erste Methode, die als Beispiel dient.
Verdrahtungsdiagramm
- So verbindet man ESP32 und Endschalter mit Breadboard

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.
- Wie man ESP32 und Endschalter mit Schraubklemmen-Breakout-Board verbindet

Um die Verdrahtungsverbindung stabil und fest zu machen, empfehlen wir die Verwendung von , um Drähte und den Pin des Grenzschalters miteinander zu verlöten, und danach verwenden wir , um es sicher zu machen.
Für eine stabile und sichere Verbindung wird empfohlen, einen Lötkolben zu verwenden, um die Drähte und die Pins des Grenzschalters miteinander zu löten, und anschließend Schrumpfschläuche zur zusätzlichen Sicherheit zu verwenden.
ESP32-Code - Endschalter
Genau wie ein Knopf muss auch ein Grenzschalter entprellt werden (Weitere Informationen unter ). Das Entprellen macht den Code kompliziert. Zum Glück unterstützt die ezButton-Bibliothek die Entprell-Funktion. Die Bibliothek verwendet außerdem einen internen Pull-up-Widerstand. Dies erleichtert uns das Programmieren.
Ähnlich wie ein Taster benötigt auch ein Endschalter eine Entprellung (weitere Informationen finden Sie unter Warum benötigt man eine Entprellung für den Taster/Endschalter?). Die Entprellung kann den Code komplexer machen. Allerdings bietet die ezButton-Bibliothek Entprellungsfunktionen und verwendet interne Pull-up-Widerstände, was das Programmieren erleichtert.
※ Notiz:
Zwei gängige Anwendungsfälle für einen Endschalter sind:
- Der erste Anwendungsfall: Wenn der Schalter BERÜHRT ist, wird eine bestimmte Aktion ausgeführt. Wenn der Eingangsstatus NICHT BERÜHRT ist, wird die gegenteilige Aktion ausgeführt.
- Der zweite Anwendungsfall: Wenn sich der Zustand des Schalters von NICHT BERÜHRT zu BERÜHRT (oder BERÜHRT zu NICHT BERÜHRT) ändert, wird eine bestimmte Aktion ausgeführt.
Schnelle Schritte
- Folgen Sie dem oben bereitgestellten Verdrahtungsdiagramm, um Ihren Grenzschalter mit dem ESP32 zu verbinden.
- Verbinden Sie Ihren ESP32 über ein USB-Kabel mit Ihrem PC.
- Öffnen Sie die Arduino-IDE-Software.
- Installieren Sie die ezButton-Bibliothek. Siehe die Anweisungen
- Wählen Sie das passende Board und den Port in der Arduino-IDE aus.
- Kompilieren und laden Sie den Code auf das ESP32-Board hoch, indem Sie auf die Schaltfläche Hochladen in der Arduino IDE klicken.
- Testen Sie den Grenzschalter, indem Sie ihn berühren und loslassen.
- Beobachten Sie die Ausgabe im Serial Monitor der Arduino-IDE.
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.