ESP32 Tutorial 18/55 - Neigungserkennung mit ESP32 | SunFounder's ESP32 IoT-Lernkit
In diesem Tutorial verwenden wir den SunFounder ESP32-Mikrocontroller, um ein einfaches Projekt zu erstellen, das die Neigung mit einem Neigungsschalter erkennt. Wenn der Neigungsschalter aktiviert wird, schaltet sich eine LED aus, und wenn sie sich in aufrechter Position befindet, schaltet sich die LED ein. Dieses Projekt ist nicht nur eine großartige Einführung in die Arbeit mit Neigungssensoren, sondern dient auch als Grundlage für verschiedene Robotikanwendungen. Für eine detaillierte visuelle Anleitung schauen Sie sich unbedingt das oben verlinkte Video an (im Video bei 00:00).

Hardware erklärt
Die primären Komponenten, die in diesem Projekt verwendet werden, umfassen den ESP32-Mikrocontroller, einen Neigungsschalter und eine LED. Der ESP32 ist ein leistungsstarker Mikrocontroller mit integriertem Wi-Fi und Bluetooth, der ihn ideal für IoT-Anwendungen macht. Der Neigungsschalter ist ein einfaches Gerät, das eine Metallkugel innerhalb einer Dose enthält. Bei Neigung bewegt sich die Kugel und unterbricht den Stromkreis, was es uns ermöglicht, den Neigungszustand zu erkennen. Die LED zeigt den Neigungsstatus visuell an, basierend auf dem Zustand des Schalters. Zusätzlich zu diesen Komponenten werden wir auch Widerstände zur Strombegrenzung und für Pull-Down-Zwecke verwenden. Der 220-Ohm-Widerstand, der mit der LED verbunden ist, sorgt dafür, dass die LED sicher betrieben wird, ohne zu viel Strom zu ziehen. Der 10k-Ohm-Widerstand fungiert als Pull-Down für den Neigungsschalter und stellt sicher, dass der Eingangs-Pin einen bekannten Zustand liest, wenn der Schalter nicht aktiviert ist.
Datenblattdetails
| Hersteller | SunFounder |
|---|---|
| Teilenummer | ESP32 |
| Logik/IO-Spannung | 3,3 V |
| Versorgungsspannung | 5 V |
| Ausgangsstrom (pro Kanal) | 12 mA |
| Spitzenstrom (pro Kanal) | 40 mA |
| PWM-Frequenzrichtlinie | 1 kHz |
| Eingangslogikschwellen | 0,8 V (niedrig), 2,0 V (hoch) |
| Spannungsabfall / RDS(on)/ Sättigung | 0,2 V |
| Thermische Grenzen | 85 °C |
| Paket | ESP32 Modul |
| Hinweise / Varianten | Enthält Wi-Fi- und Bluetooth-Funktionen |
- Sorgen Sie für geeignete Widerstandswerte, um Schäden an der LED zu vermeiden.
- Halte die Verkabelung ordentlich, um Kurzschlüsse zu vermeiden.
- Verwenden Sie Pull-Down-Widerstände, um stabile Werte vom Neigungsschalter zu gewährleisten.
- Testen Sie die Verbindungen, bevor Sie die Schaltung mit Strom versorgen, um einen Ausfall von Komponenten zu vermeiden.
- Überprüfen Sie die Ausrichtung des Neigungsschalters für eine genaue Funktionalität.
Verdrahtungsanweisungen

Um die Komponenten zu verdrahten, beginnen Sie mit dem Neigungsschalter, der keine Polarität hat und daher in beide Richtungen angeschlossen werden kann. Verbinden Sie einen Pin des Neigungsschalters mit der 3,3V-Versorgung und den anderen Pin mit Pin 14 auf dem ESP32. Um sicherzustellen, dass Pin 14 einen bekannten Zustand liest, wenn der Schalter nicht aktiviert ist, verbinden Sie einen 10k-Ohm-Widerstand von demselben Pin mit Masse. Nehmen Sie als Nächstes die LED und setzen Sie sie in das Steckbrett ein, wobei der längere Anschluss (Anode) mit einem 220-Ohm-Widerstand verbunden ist. Verbinden Sie das andere Ende des Widerstands mit Pin 26 auf dem ESP32. Der kürzere Anschluss (Kathode) der LED sollte mit Masse verbunden werden. Schließlich verbinden Sie den Masse-Pin des ESP32 mit der Masse-Schiene Ihres Steckbretts und den 3,3V-Pin mit der Versorgungs-Schiene. Stellen Sie sicher, dass Sie alle Verbindungen doppelt überprüfen, um Kurzschlüsse oder falsche Messwerte zu vermeiden. Wenn Sie diese Schritte befolgen, sollten Sie ein funktionsfähiges Neigungssensor-Setup haben, das bereit zur Programmierung ist.
Codebeispiele & Anleitung
Der Code beginnt mit der Definition der PIN-Nummern für den Neigungsschalter und die LED. Der Neigungsschalter ist mit PIN 14 verbunden, und die LED ist mit PIN 26 verbunden. Der Zustand des Neigungsschalters wird in der Variable gespeichert.tiltState.
// Set pin numbers
const int tiltPin = 14; // Tilt Switch
const int ledPin = 26; // LED
// Variable for storing the tilt status
int tiltState = 0;
Dieser Auszug zeigt die Pin-Zuweisungen und die Deklaration der Variablen, die den Neigungszustand verfolgen wird. DertiltPinwird als Eingabe festgelegt, um den Schalterstatus zu lesen. In dersetup()Die serielle Kommunikation wird initialisiert, und die Pin-Modi werden für den Neigungsschalter und die LED festgelegt. Dies stellt sicher, dass der ESP32 Eingaben vom Neigungsschalter lesen und die LED entsprechend steuern kann.
void setup() {
Serial.begin(115200);
// Initialize the tilt pin as an input
pinMode(tiltPin, INPUT);
// Initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
Dieser Abschnitt ist entscheidend, da er die Umgebung einrichtet und es dem ESP32 ermöglicht, effektiv zu kommunizieren und die Ausgabe basierend auf dem Status des Neigungsschalters zu steuern.loop()Die Funktion überprüft kontinuierlich den Zustand des Kippenschalters. Wenn der Schalter aufrecht ist, leuchtet die LED; wenn sie geneigt ist, erlischt die LED. Der aktuelle Zustand wird zur Fehlersuche im seriellen Monitor angezeigt.
void loop() {
// Read the state of the tilt switch
tiltState = digitalRead(tiltPin);
Serial.println(tiltState);
// If the switch is upright
if (tiltState == HIGH) {
// Turn LED on
digitalWrite(ledPin, HIGH);
} else {
// Turn LED off
digitalWrite(ledPin, LOW);
}
}
Diese Schleife läuft kontinuierlich und ermöglicht die Echtzeitüberwachung des Zustands des Neigungsschalters sowie die entsprechende Steuerung der LED. Die Ausgabe kann im seriellen Monitor beobachtet werden, was die Überprüfung der Funktionalität erleichtert.
Demonstration / Was zu erwarten ist
Sobald alles korrekt verkabelt ist und der Code hochgeladen wurde, sollten Sie sehen, dass die LED leuchtet, wenn der Neigungsschalter aufrecht steht, und sie wird ausgehen, wenn sie geneigt ist. Diese direkte Korrelation zwischen dem Neigungszustand und der LED-Reaktion zeigt die Funktionalität des Neigungsschalters effektiv. Häufige Fallstricke sind die Sicherstellung, dass die Verkabelung korrekt ist, und die Überprüfung, dass die Widerstände angemessen platziert sind, um Kurzschlüsse zu vermeiden (im Video um 12:00).
Video-Zeiten
- 00:00 Start
- 1:44 Einführung Projekt
- 2:49 Dokumentation
- 6:43 Arduino Verdrahtung erklärt
- 10:39 Arduino-Code erklärt
- 13:40 Auswahl des ESP32-Boards und des COM-Ports in der Arduino IDE
- 15:22 Projekt Tilt Demonstration
Common Course Links
Common Course Files
Ressourcen & Referenzen
-
DokumentationESP32 Tutorial 18/55 - SunFounder Tile-Sensor-Dokumentationdocs.sunfounder.com
Dateien📁
Keine Dateien verfügbar.