Micropython wird häufig bei Mikrocontrollern und eingebetteten Systemen verwendet. Wir können Code und Bibliotheken in Micropython -IDE schreiben und mehrere Sensoren interfasieren. In dieser Beschreibung wird Sie mit dem ESP32 mit dem HC-SR04-Sensor über den Messabstand angeleitet.
ESP32 mit HC-SR04-Ultraschallsensor unter Verwendung von Micropython
Die Schnittstelle ESP32 mit Ultraschall erfordert nur, dass zwei Drähte angeschlossen werden müssen. Mit Ultraschallsensoren können wir den Objektabstand messen und Antworten auf der Grundlage dieses Systems lösen, z.
Mit Micropython, einer entworfenen Sprache für ESP32 und andere Mikrocontroller HC-SR04. Der Micropython -Code wird geschrieben, der die Zeit der Sonarwelle berechnet, um vom Sensor zum Objekt und zurück zum Objekt zu gelangen. Später mit der Entfernungsformel können wir den Objektabstand berechnen.
Hier sind einige wichtigste Highlights des HC-SR04-Sensors:
Eigenschaften | Wert |
Betriebsspannung | 5 V DC |
Betriebsstrom | 15 mA |
Arbeitsfrequenz | 40 kHz |
Min | 2 cm/ 1 Zoll |
Maximale Reichweite | 400 cm/ 13 Fuß |
Genauigkeit | 3 mm |
Messwinkel | <15 degree |
HC-SR04 PinoutHC-SR04 enthält folgende vier Stifte:
Wie Ultraschall funktioniert
Nachdem der HC-SR04-Sensor mit ESP32 A Signal am Anhang angeschlossen ist Trig Pin wird von Board erzeugt. Sobald das Signal am Trigchenstift des HC-SR04-Sensors empfangen wird, wird eine Ultraschallwelle erzeugt, die den Sensor verlässt und den Objekt oder den Hinderniskörper trifft. Nach dem Schlagen wird es wieder zur Objektoberfläche abprallen.
Sobald die reflektierte Welle zum Sensor zurückreicht, wird ein Signalimpuls am Echo -Stift erzeugt. ESP32 empfängt das Echo -Pin -Signal und berechnet den Abstand zwischen Objekt und Sensor mithilfe Entfernungsformel.
Der berechnete Gesamtabstand sollte durch zwei im ESP32 -Code geteilt werden, da der Abstand, den wir ursprünglich erhalten. So ist der reale Abstand das Signal, das die Hälfte dieser Entfernung entspricht.
Schematisch
Im Folgenden finden Sie das Schema für die Schnittstelle von ESP32 mit Ultraschallsensor:
Verbinden Sie den Trigger- und Echo -Stift des Sensors mit GPIO 5 bzw. GPIO 18 von ESP32. Schließen Sie auch ESP32 GND und Vin Pin mit Sensorstiften an.
HC-SR04 Ultraschallsensor | ESP32 PIN |
Trig | GPIO 5 |
Echo | GPIO 18 |
GND | GND |
VCC | Vin |
Hardware
Die folgenden Komponenten sind erforderlich, um Ultraschallsensor zu programmieren:
So richten Sie Ultraschall HC-SR04 mit ESP32 unter Verwendung von Micropython ein
Bevor wir ESP32 mit einem Ultraschallsensor programmieren können, müssen wir darin eine Bibliothek installieren. Verbinden Sie die ESP32 -Platine mit dem PC. Befolgen Sie die Schritte, um die ESP32 -Konfiguration mit Ultraschallsensor in Thonny IDE mit Micropython zu vervollständigen.
Schritt 1: Jetzt öffne Thonny IDE. Erstellen Sie eine neue Datei im Editor -Fenster gehen: Datei> neu oder drücken Sie Strg + n.
Sobald die neue Datei geöffnet ist, fügen Sie den folgenden Code in das Thonny IDE -Editorfenster ein.
Importmaschine, ZeitSchritt 2: Nach dem Schreiben der Bibliothek Code im Editor -Fenster jetzt müssen wir es im Micropython -Gerät speichern.
Schritt 3: Gehe zu: Datei> Speichern oder drücken Sie Strg + s.
Schritt 4: Ein neues Fenster wird angezeigt. Stellen Sie sicher, dass ESP32 mit dem PC verbunden ist. Wählen Sie Micropython -Gerät, um die Bibliotheksdatei zu speichern.
Schritt 5: Speichern Sie die Ultraschallbibliotheksdatei mit Namen HCSR04.py und klicken Sie OK.
Jetzt wird die Ultrasonic HCSR04 -Sensorbibliothek erfolgreich in das ESP32 -Board hinzugefügt. Jetzt können wir Bibliotheksfunktionen im Code aufrufen, um die Entfernung verschiedener Objekte zu messen.
Code für Ultraschallsensor unter Verwendung von Micropython
Für Ultraschallsensorcode erstellen Sie eine neue Datei (erstellen Sie eine neue Datei (Strg + n). Geben Sie im Editor -Fenster den unten angegebenen Code ein und speichern Sie ihn in der hauptsächlich.py oder Stiefel.py Datei. Dieser Code druckt die Entfernung jedes Objekts, das vor HC-SR04 steht.
Code begann mit dem Aufrufen wichtiger Bibliotheken wie wie HCSR04 Und Zeit Bibliothek zusammen mit schlafen Verzögerungen geben.
Als nächstes haben wir ein neues Objekt mit einem Namen erstellt Sensor. Dieses Objekt nimmt drei verschiedene Argumente an: Trigger, Echo und Zeitüberschreitungen. Hier ist Timeout als maximal die maximale Zeit, nachdem der Sensor außerhalb der Reichweite geht.
Sensor = hcsr04 (Trigger_pin = 5, echo_pin = 18, echo_timeout_us = 10000)Um die Entfernung zu messen und zu speichern, ein neues Objekt benannt Distanz geschaffen. Dieses Objekt speichert die Entfernung in CM.
Entfernung = Sensor.Distanz_cm ()Schreiben Sie den folgenden Code, um Daten in MM zu erhalten.
Entfernung = Sensor.Distanz_mm ()Als nächstes druckten wir das Ergebnis auf der Micropython -IDE -Shell.
print ('distanz:', distanz, 'cm')Am Ende wird eine Verzögerung von 1 Sek. Gegeben.
Schlaf (1)Der vollständige Code ist unten angegeben:
Aus HCSR04 importieren Sie HCSR04Nachdem ich Code im Micropython -Gerät geschrieben und gespeichert hatte, führe ich jetzt den Ultraschallsensor aus hauptsächlich.py Dateicode. Klicken Sie auf die Wiedergabetaste oder drücken Sie F5.
Ausgabe von Ultraschallsensor, wenn das Objekt in der Nähe ist
Platzieren Sie nun ein Objekt in der Nähe des Ultraschallsensors und überprüfen Sie den gemessenen Abstand im seriellen Monitorfenster der Arduino -IDE.
Die Objektabstand ist in der Schalenklemme gezeigt. Jetzt wird das Objekt 5 cm vom Ultraschallsensor entfernt platziert.
Ausgabe von Ultraschallsensor, wenn das Objekt weit ist
Um unser Ergebnis nun zu überprüfen. Platzieren Sie Objekte wie in Bild unten gezeigt:
Das Ausgabefenster gibt uns eine neue Entfernung und wie wir sehen können, dass das Objekt weit vom Sensor entfernt ist, ist der gemessene Abstand ca. 15 cm vom Ultraschallsensor entfernt.
Abschluss
Die Messung der Distanz hat eine großartige Anwendung, wenn es um Robotik und andere Projekte geht. Es gibt verschiedene Möglichkeiten, die Entfernung zu messen. HC-SR04 mit ESP32 kann den Abstand verschiedener Objekte messen. Hier wird in dieser Beschreibung alle Schritte behandelt, die man braucht, um die Entfernung mit ESP32 zu integrieren und zu messen.