ESP32 Tutorial 32/55 - Rückwärtsreichweite-Warnung mit LCD und Summer | SunFounder's IoT-Lernkit
In diesem Tutorial werden wir ein Rückfahrhilfe-System mit dem ESP32-Mikrocontroller, einem Ultraschall-Abstandssensor, einem LCD-Display und einem Summer erstellen. Dieses Projekt wird Sie beim Rückwärtsfahren auf den Abstand zu Hindernissen aufmerksam machen, wobei die Frequenz des Summers je nach Nähe des Hindernisses variiert. Sie werden lernen, wie man die Komponenten verkabelt, den Code schreibt und erwarten kann, dass die Funktionalität des Systems effektiv für Ihr Fahrzeug funktioniert.
Während wir dieses Projekt umsetzen, wird der ESP32 die Sensormessungen durchführen und den Summer sowie das LCD-Display steuern. Der Ultraschallsensor wird den Abstand zu Hindernissen messen, während der Summer akustisches Feedback basierend auf diesem Abstand liefert. Das LCD wird den gemessenen Abstand anzeigen, sodass Sie die Messwerte in Echtzeit sehen können. Für ein klareres Verständnis des Setups sollten Sie sich das Video (im Video bei 00:00) ansehen.
Hardware erklärt
Die wichtigsten Komponenten dieses Projekts sind der ESP32-Mikrocontroller, ein ultraschallbasierter Abstandsensor, ein LCD-Display und ein Summer. Der ESP32 ist ein leistungsstarker Mikrocontroller mit integrierten Wi-Fi- und Bluetooth-Funktionen, was ihn ideal für IoT-Projekte macht. Der Ultraschallsensor misst Abstände, indem er Schallwellen aussendet und die Zeit berechnet, die für das Echo benötigt wird, um zurückzukehren. Das LCD zeigt den gemessenen Abstand an, während der Summer akustische Warnmeldungen basierend auf der Nähe bereitstellt.
Jede Komponente spielt eine entscheidende Rolle dabei, dass die Rückfahrhilfe korrekt funktioniert. Das Verständnis, wie diese Teile zusammenarbeiten, wird Ihnen helfen, eventuelle Probleme, die während des Bauprozesses auftreten können, zu beheben. Das Projekt nutzt die Verarbeitungsleistung des ESP32, um Sensordaten effektiv zu verwalten und Ausgaben zu steuern.
Datenblatt-Details
| Hersteller | Espressif Systems |
|---|---|
| Teilenummer | ESP32 |
| Logik/IO-Spannung | 3,3 V |
| Versorgungsspannung | 5 V (max) |
| Ausgangsstrom (pro Kanal) | 40 mA |
| Spitzenstrom (pro Kanal) | 160 mA |
| PWM-Frequenzrichtlinien | 1 kHz - 40 kHz |
| Eingangslogik-Schwellenwerte | 0,3 VCC (niedrig), 0,7 VCC (hoch) |
| Spannungsabfall / RDS(on)/ Sättigung | 0,2 V (typ.) |
| Thermische Grenzen | Betriebstemperatur: -40 °C bis 85 °C |
| Paket | QFN48 |
| Hinweise / Varianten | Verschiedene ESP32-Module verfügbar |
- Stellen Sie eine ordnungsgemäße Stromversorgung sicher, um Schäden zu vermeiden.
- Verwenden Sie einen Widerstand mit dem Summer, um den Strom zu begrenzen.
- Halten Sie die Signalkabel kurz, um Störungen zu reduzieren.
- Verwenden Sie bei Bedarf Pull-Up-Widerstände für digitale Eingänge.
- Sei vorsichtig mit dem maximalen Bereich des Ultraschallsensors.
Verdrahtungsanweisungen

Um die Komponenten für das Projekt zu verkabeln, beginnen Sie mit dem Anschluss des Ultraschallsensors. Schließen Sie den VCC-Pin des Sensors an die 5V-Stromversorgung und den GND-Pin an die Erde an. Der Trig-Pin sollte an den Pin angeschlossen werden.26auf dem ESP32, und der Echo-Pin sollte mit dem Pin verbunden sein25.
Verbinden Sie als Nächstes den Summer, indem Sie seinen positiven Anschluss mit dem Pin verbinden.14Am ESP32 und die negative Leitung an Masse. Für das LCD den VCC-Pin mit der 5V-Leitung und den GND-Pin mit Masse verbinden. Die SDA- und SCL-Pins des LCD sollten mit Pins verbunden werden.21und22, beziehungsweise. Stellen Sie sicher, dass alle Verbindungen sicher sind, um Unterbrechungen während des Betriebs zu vermeiden.
Code-Beispiele & Anleitung
Im Code finden Sie wichtige Bezeichner wiedistance, der die gemessene Entfernung vom Ultraschallsensor speichert. Diese Variable wird kontinuierlich in der Schleife aktualisiert, um die aktuelle Entfernung widerzuspiegeln. Der Pin des Buzzers ist definiert alsbuzzerPin, was eine einfache Steuerung seines Zustands ermöglicht.
const int triggerPin = 26; // Trigger pin for ultrasonic sensor
const int echoPin = 25; // Echo pin for ultrasonic sensor
const int buzzerPin = 14; // Buzzer pin
Diese Konstanten sind zu Beginn des Codes zur Klarheit und zur Erleichterung von Anpassungen definiert. Die Trigger- und Echo-Pins werden verwendet, um mit dem Ultraschallsensor zu kommunizieren, während der Buzzer-Pin die Tonausgabe steuert.
void setup() {
pinMode(triggerPin, OUTPUT); // Set trigger pin as output
pinMode(echoPin, INPUT); // Set echo pin as input
pinMode(buzzerPin, OUTPUT); // Set buzzer pin as output
}
In dersetup()Funktion, wir konfigurieren die Pinmodi für den Ultraschallsensor und den Summer. Dadurch wird sichergestellt, dass der ESP32 während des Betriebs korrekt mit den Hardwarekomponenten interagieren kann.
void loop() {
distance = readDistance(); // Call function to read distance
if (distance <= 10) {
beep(100); // Fast beep for close distance
} else if (distance <= 20) {
beep(500); // Medium beep for moderate distance
} else {
beep(2000); // Slow beep for safe distance
}
}
Dieloop()Die Funktion liest kontinuierlich die Entfernung und passt die Pieptonfrequenz des Summer an den Wert an. Dasbeep()Die Funktion wird mit verschiedenen Intervallen aufgerufen, abhängig davon, wie nahe das Hindernis ist.
Demonstration / Was zu erwarten ist
Sobald alles verbunden ist und der Code hochgeladen wurde, können Sie erwarten, dass das System in unterschiedlichen Abständen basierend auf der Entfernung zu einem Hindernis piept. Wenn die Entfernung weniger als 10 cm beträgt, piept der Summer schnell, während Entfernungen von mehr als 50 cm ein langsames Piepen zur Folge haben. Stellen Sie sicher, dass Sie das System testen, indem Sie Ihre Hand vor den Ultraschall-Sensor halten, um die Änderungen der Abstandsmessungen und der entsprechenden Piepraten zu sehen (im Video um 12:30).
Videostempel
- 00:00 Start
- 2:08 Einführung und Dokumente
- 4:12 Verdrahtung Erklärt
- 13:17 Arduino-Code
- 21:01 Auswahl des ESP32-Boards und des COM-Ports in der Arduino IDE
- 22:48 Demo im Labor
- 24:54 Demo im Auto
Common Course Links
Common Course Files
Dinge, die Sie vielleicht brauchen
-
Amazon
-
eBayKaufe LCD1602-I2C bei eBayebay.us
-
AliExpressKaufe 10 Stück LCD1602-I2C von AliExpresss.click.aliexpress.com
-
AliExpressKaufen Sie LCD1602-I2C von AliExpresss.click.aliexpress.com
Ressourcen & Referenzen
-
DokumentationESP32 Tutorial 32/55 - SunFounder-Dokumentationsseite für Umkehrhilfedocs.sunfounder.com
Dateien📁
Fritzing-Datei
-
LCD2004-I2C
LCD2004-I2C.fzpz0.02 MB