ESP32 C3 Super Mini - Endschalter

Ein Endschalter teilt Ihrem ESP32 C3 Super Mini mit, wann ein bewegliches Teil das Ende seines Weges erreicht hat. Er ist eine günstige und sehr zuverlässige Möglichkeit, Motoren, Türen, Schlitten und 3D-Drucker-Achsen zu schützen. Dieses ESP32 C3 Super Mini Endschalter-Tutorial zeigt Ihnen die Verdrahtung und den Code in einfachen Schritten.

In diesem Tutorial lernen Sie:

ESP32 C3 Super Mini - Endschalter

Dieses Tutorial behandelt nur den Endschalter. Bitte verwechseln Sie ihn nicht mit:

Erforderliche Hardware

1×ESP32 C3 Super Mini
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×Endschalter (KW12-3)
1×Endschalter Module
1×Endschalter (V-153-1C25)
1×Endschalter (V-155-1C25)
1×Endschalter (V-156-1C25)
1×Wires
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Überblick über Limit Switch

Ein Endschalter ist ein mechanischer Schalter, der von einem beweglichen Objekt betätigt wird, wenn dieses eine Grenze erreicht.

Wichtige Merkmale:

  • Mechanisch: Ein Metallhebel oder eine Rolle drückt auf den Kontakt.
  • Keine Stromversorgung nötig: Der Schalter selbst benötigt keine Versorgungsspannung.
  • Zwei Modi: Funktioniert als Schließer (NO) oder als Öffner (NC).
  • Langer Hebel: Leicht zu treffen, selbst von einem langsam bewegten Teil.
  • Sehr zuverlässig: Gemacht für Maschinen, Türen und bewegliche Schienen.

Technische Daten:

  • Gängige Modelle: KW12-3 und V-156-1C25.
  • Pins: 3 Pins (C, NO, NC).
  • Kontaktart: SPDT (ein gemeinsamer Pin, zwei Ausgänge).
  • Signal für den ESP32 C3 Super Mini: Nur 3,3-V-Logik. Verbinden Sie den Schalter mit GND oder 3.3V, niemals mit 5V.
  • Ausgang: Ein einfacher offener oder geschlossener Kontakt, der von jedem digitalen Pin gelesen werden kann.

Pinbelegung

Es gibt viele Arten von Endschaltern. Der KW12-3 und der V-156-1C25 sind die beliebtesten. Beide haben drei Pins.

  • C-Pin: Der gemeinsame Pin. Er wird sowohl im Schließer- als auch im Öffner-Modus verwendet.
  • NO-Pin: Der Schließer-Pin (normalerweise offen). Er wird im Schließer-Modus verwendet.
  • NC-Pin: Der Öffner-Pin (normalerweise geschlossen). Er wird im Öffner-Modus verwendet.
Endschalter-Pinbelegung
image source: diyables.io

Funktionsweise

Ein Endschalter verwendet normalerweise nur zwei Pins: den C-Pin und einen der beiden anderen Pins.

  • Nicht betätigt: C ist mit NC verbunden. C ist NICHT mit NO verbunden.
  • Betätigt: C ist mit NO verbunden. C ist NICHT mit NC verbunden.

Daraus ergeben sich vier Möglichkeiten, einen Endschalter zu verwenden. Die folgende Tabelle zeigt für jede Möglichkeit die Verdrahtung und den Zustand, den der ESP32 C3 Super Mini liest.

C-Pin NO-Pin NC-Pin Zustand des Eingangspins am ESP32 C3 Super Mini
1 GND Eingangspin des ESP32 C3 Super Mini (mit Pull-up) nicht verbunden HIGH wenn nicht betätigt, LOW wenn betätigt
2 GND nicht verbunden Eingangspin des ESP32 C3 Super Mini (mit Pull-up) LOW wenn nicht betätigt, HIGH wenn betätigt
3 3.3V Eingangspin des ESP32 C3 Super Mini (mit Pull-down) nicht verbunden LOW wenn nicht betätigt, HIGH wenn betätigt
4 3.3V nicht verbunden Eingangspin des ESP32 C3 Super Mini (mit Pull-down) HIGH wenn nicht betätigt, LOW wenn betätigt

Wenn Sie bei jeder der vier Möglichkeiten den GND-Pin und den Eingangspin des ESP32 C3 Super Mini vertauschen, gibt es insgesamt acht Möglichkeiten, einen ESP32 C3 Super Mini mit einem Endschalter zu verbinden.

Dieses Tutorial verwendet nur die erste Möglichkeit, da sie keinen zusätzlichen Widerstand benötigt. Der ESP32 C3 Super Mini hat einen internen Pull-up-Widerstand im Chip.

WARNING

Der ESP32 C3 Super Mini arbeitet nur mit 3,3-V-Logik. Verbinden Sie den C-Pin niemals mit einer 5V-Versorgung. 5V an einem GPIO-Pin kann die Platine beschädigen. Verwenden Sie nur GND oder den 3.3V-Pin.

Verdrahtungsdiagramm

Verbinden Sie den C-Pin mit GND und den NO-Pin mit einem freien GPIO-Pin am ESP32 C3 Super Mini.

ESP32 C3 Super Mini Endschalter Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Endschalter-Pin ESP32 C3 Super Mini Pin
C GND
NO GPIO7
NC nicht verbunden
  • Hinweis: GPIO7 ist ein freier Pin. Verwenden Sie nicht GPIO8 (eingebaute LED), GPIO9 (Boot-Pin), GPIO20 oder GPIO21 (UART des seriellen Monitors).
  • Hinweis: Es ist kein externer Widerstand nötig. Der Code aktiviert den internen Pull-up-Widerstand.
  • Hinweis: Für eine stabile und sichere Verbindung verwenden Sie einen Lötkolben, um die Drähte und die Pins des Endschalters zusammenzulöten, und decken Sie die Lötstelle anschließend mit Schrumpfschläuchen ab.
  • Hinweis: Halten Sie die Schalterleitungen kurz. Lange Leitungen fangen Störungen ein und verursachen Fehlmessungen.

ESP32 C3 Super Mini Code - Endschalter

Wie ein Taster muss auch ein Endschalter entprellt werden, und die ezButton-Bibliothek erledigt diese Arbeit für Sie.

Was dieser Code macht:

  • Legt GPIO7 als Eingang mit internem Pull-up-Widerstand fest.
  • Entprellt den Endschalter mit einem 50-ms-Filter.
  • Gibt in jedem Schleifendurchlauf TOUCHED oder UNTOUCHED aus.
  • Gibt eine Meldung aus, wenn der Zustand von UNTOUCHED zu TOUCHED wechselt.
  • Gibt eine Meldung aus, wenn der Zustand von TOUCHED zu UNTOUCHED wechselt.

※ Notiz:

Zwei häufige Anwendungsfälle für einen Endschalter sind:

  • Der erste Anwendungsfall: Wenn der Schalter TOUCHED ist, wird eine bestimmte Aktion ausgeführt. Wenn der Eingangszustand UNTOUCHED ist, wird die entgegengesetzte Aktion ausgeführt.
  • Der zweite Anwendungsfall: Wenn der Zustand des Schalters von UNTOUCHED zu TOUCHED (oder von TOUCHED zu UNTOUCHED) wechselt, wird eine bestimmte Aktion ausgeführt.
/* * Dieser ESP32 C3 Super Mini Code wurde von newbiely.de entwickelt * Dieser ESP32 C3 Super Mini Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp32-c3/esp32-c3-super-mini-limit-switch */ #include <ezButton.h> ezButton limitSwitch(7); // create ezButton object that attach to the ESP32 C3 SuperMini pin GPIO7 void setup() { Serial.begin(115200); limitSwitch.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { limitSwitch.loop(); // MUST call the loop() function first if (limitSwitch.isPressed()) Serial.println("The limit switch: UNTOUCHED -> TOUCHED"); if (limitSwitch.isReleased()) Serial.println("The limit switch: TOUCHED -> UNTOUCHED"); int state = limitSwitch.getState(); if (state == HIGH) Serial.println("The limit switch: UNTOUCHED"); else Serial.println("The limit switch: TOUCHED"); }

Schnelle Schritte

  • Neu beim ESP32 C3 Super Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Super Mini, um Ihre Entwicklungsumgebung einzurichten.
  • Teile verdrahten: Folgen Sie dem obigen Schaltplan, um den Endschalter mit dem ESP32 C3 Super Mini zu verbinden.
  • Platine anschließen: Verbinden Sie den ESP32 C3 Super Mini über ein USB-Typ-C-Kabel mit Ihrem PC.
  • IDE öffnen: Starten Sie die Arduino IDE.
  • Bibliothek installieren: Installieren Sie die ezButton-Bibliothek. Siehe die Anleitung.
  • Board auswählen: Stellen Sie sicher, dass ESP32 C3 Super Mini unter Tools > Board ausgewählt ist.
  • Port auswählen: Wählen Sie den COM-Port Ihrer Platine unter Tools > Port.
  • Code hochladen: Klicken Sie in der Arduino IDE auf die Schaltfläche Upload.
  • Seriellen Monitor öffnen: Stellen Sie die Baudrate auf 115200 ein.
  • Testen: Drücken Sie den Hebel des Endschalters einige Male und lassen Sie ihn wieder los.
  • Ausgabe prüfen: Beobachten Sie die Meldungen im seriellen Monitor.
  • Profi-Tipp: Wenn sich der Zustand nie ändert, tauschen Sie den NO-Pin und den NC-Pin. Bei vielen günstigen Schaltern sind die Beschriftungen vertauscht aufgedruckt.
∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32C3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32C3 Dev Module' on 'COM15')
New Line
9600 baud
The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED -> TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED The limit switch: TOUCHED -> UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED The limit switch: UNTOUCHED
Ln 11, Col 1
ESP32C3 Dev Module on COM15
2

Zeilenweise Code-Erklärung

Der obige ESP32 C3 Super Mini Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!

Anwendungs-/Projektideen

Ein Endschalter wird immer dann eingesetzt, wenn ein bewegliches Teil an einem sicheren Punkt anhalten muss.

  • 3D-Drucker-Endstopp: Stoppen Sie eine Achse, bevor sie gegen den Rahmen fährt.
  • Automatische Tür: Erkennen Sie, wann eine Schiebetür vollständig geöffnet oder geschlossen ist.
  • Schubladenalarm: Senden Sie eine Warnung, wenn eine Schublade oder ein Schrank geöffnet wird.
  • Motorschutz: Unterbrechen Sie die Stromversorgung eines Linearantriebs am Ende seines Weges.
  • Objektzähler: Zählen Sie Kartons, die auf einem kleinen Förderband vorbeilaufen.
  • Sicherheitsabdeckung: Stoppen Sie eine Maschine, wenn ihr Deckel angehoben wird.

Fordern Sie sich selbst heraus

Probieren Sie diese kleinen Projekte aus, um mit dem Endschalter und dem ESP32 C3 Super Mini zu üben.

  • Einfach: Schalten Sie die eingebaute LED an GPIO8 EIN, solange der Endschalter betätigt ist.
  • Einfach: Zählen Sie, wie oft der Schalter betätigt wird, und geben Sie die Gesamtzahl aus.
  • Mittel: Verwenden Sie zwei Endschalter an GPIO6 und GPIO7, um beide Enden einer Schiene zu erkennen.
  • Mittel: Stoppen Sie einen Servomotor, sobald der Endschalter betätigt wird.
  • Fortgeschritten: Verwenden Sie den NC-Modus statt des NO-Modus, sodass auch ein gebrochenes Kabel als Alarm gemeldet wird.

Sprachreferenzen

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!