ESP32 - Ultraschallsensor

Dieses Tutorial erklärt, wie man den ESP32 mit dem Ultraschallsensor HC-SR04 verwendet, um die Entfernung zu einem Objekt zu messen.

Erforderliche Hardware

1×ESP32 ESP-WROOM-32 Entwicklungsmodul
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×Ultraschallsensor
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für ESP32
1×(Empfohlen) Breakout Expansion Board for ESP32
1×(Empfohlen) Stromverteiler für ESP32

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)
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.

Über Ultraschallsensor

Der Ultraschallsensor HC-SR04 wird verwendet, um die Entfernung vom Sensor zu einem Objekt mittels Ultraschallwellen zu messen.

Ultraschallsensor-Pinbelegung

Der Ultraschallsensor HC-SR04 verfügt über vier Pins:

  • VCC-Pin: Verbinde diesen Pin mit VCC (5 V)
  • GND-Pin: Verbinde diesen Pin mit GND (0 V)
  • TRIG-Pin: Dieser Pin empfängt einen Steuerimpuls vom ESP32.
  • ECHO-Pin: Dieser Pin erzeugt einen Impuls, der der gemessenen Distanz zum ESP32 entspricht.
Pinbelegung des Ultraschallsensors
image source: diyables.io

Wie Ultraschallsensoren funktionieren

Siehe Wie der Ultraschallsensor funktioniert

Verdrahtungsdiagramm zwischen Ultraschallsensor und ESP32

  • So verbinden Sie ESP32 und Ultraschallsensor mit Breadboard (mit USB-Kabel betrieben)
ESP32 Ultraschallsensor-Verdrahtungsdiagramm

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 verbindet man ESP32 und Ultraschallsensor mit einem Steckbrett (über den Vin-Pin mit Strom versorgt)
ESP32 Ultraschallsensor Schaltplan
  • Wie man ESP32 und Ultraschallsensor mit einem Schraubklemmen-Breakout-Board verbindet (betrieben über ein USB-Kabel)
So verbinden Sie ESP32 und Ultraschallsensor.
Wie man ESP32 und Ultraschallsensor anschließt

Wie man einen Ultraschallsensor programmiert

digitalWrite(23, HIGH); delayMicroseconds(10); digitalWrite(23, LOW);
  • Misst die Pulsdauer (μs) am ESP32-Pin mithilfe der pulseIn() Funktion. Zum Beispiel Pin GPIO22:
duration_us = pulseIn(22, HIGH);
  • Berechne Entfernung (cm):
distance_cm = 0.017 * duration_us;

ESP32-Code

/* * Dieser ESP32 Code wurde von newbiely.de entwickelt * Dieser ESP32 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/esp32-ultrasonic-sensor */ #define TRIG_PIN 23 // ESP32 pin GPIO23 connected to Ultrasonic Sensor's TRIG pin #define ECHO_PIN 22 // ESP32 pin GPIO22 connected to Ultrasonic Sensor's ECHO pin float duration_us, distance_cm; void setup() { // begin serial port Serial.begin (9600); // configure the trigger pin to output mode pinMode(TRIG_PIN, OUTPUT); // configure the echo pin to input mode pinMode(ECHO_PIN, INPUT); } void loop() { // generate 10-microsecond pulse to TRIG pin digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // measure duration of pulse from ECHO pin duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance distance_cm = 0.017 * duration_us; // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); delay(500); }

Schnelle Schritte

  • Wenn dies das erste Mal ist, dass Sie ESP32 verwenden, sehen Sie sich wie man die Umgebung für ESP32 in der Arduino-IDE einrichtet an.
  • Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
  • Kompilieren und den Code auf das ESP32-Board hochladen, indem Sie in der Arduino IDE auf die Schaltfläche Hochladen klicken.
Wie man ESP32-Code mit der Arduino-IDE hochlädt
  • Öffne den seriellen Monitor in der Arduino-IDE
Wie öffnet man den seriellen Monitor in der Arduino-IDE?
  • Bewege deine Hand vor dem Ultraschallsensor
  • Sieh den Abstand vom Sensor zu deiner Hand im Seriemonitor
COM6
Send
distance: 19.4 cm distance: 17.6 cm distance: 16.9 cm distance: 27.4 cm distance: 26.9 cm distance: 24.3 cm distance: 25.6 cm distance: 23.1 cm
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Zeile für Zeile Code-Erklärung

Der obige ESP32-Code enthält eine Zeilen-für-Zeile-Erklärung. Bitte lesen Sie die Kommentare im Code!

Wie man Rauschen aus Entfernungsmessungen eines Ultraschallsensors filtert

Siehe Wie man Rauschen aus Abstandsmessungen eines Ultraschallsensors herausfiltern

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.

※ 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!