HC sr04:Wie funktioniert der Ultraschall-Entfernungssensor und wie funktioniert er mit Arduino?
Ultraschall sind hohe Schallwellen mit Frequenzen, die den hörbaren Bereich des normalen menschlichen Gehörs überschreiten (größer als 20 kHz). Eine Art von Ultraschallsensor ist der HC-SR04, der Objekte in einer Entfernung von 13 Fuß erkennt. In diesem Artikel zeigen wir Ihnen, wie der Sensor funktioniert, und führen ein Schnittstellenprojekt mit Arduino durch.
Frequenzbereiche im Vergleich zu Ultraschall
Übersicht über den Ultraschall-Abstandssensor HC SR04
- Eine Übersicht der Hardware
Ein hc-sr04 Ultraschallsensor (US) besteht aus zwei Ultraschallwandlern; Sender und Empfänger.
Sender (T) und Empfänger (R)
Der Empfänger wartet auf gesendete Impulse und empfängt diese, während der Sender elektrische Signale in Ultraschallimpulse von 40 KHz umwandelt.
- Spezifikationen
Die Spezifikationen bestehen aus:
Abmessungen – 45 x 20 x 15 mm
Trigger-Eingangssignal – 10-Mikrosekunden-TTL-Impuls
Messwinkel – 15°
Entfernungsgenauigkeit – 3 mm
Mindestreichweite – 2 cm
Maximale Reichweite – 4 cm
Betriebsfrequenz – 40 KHz
Betriebsspannung – DC 5 V Leistung
Hc-sr04 Ultraschall-Abstandssensorstift
Pinbelegung des Ultraschallsensors HC-SR04
Die Pinbelegung des Ultraschallsensors hc-sr04 haben wir in der folgenden Tabelle zusammengefasst.
Pin-Nr. | Name des Pins | Pin-Beschreibung |
1 | Vcc | Das ist der Stromversorgungspin des Sensors (5 V Versorgungsspannung). |
2 | Auslöser/Auslöser | Er fungiert als Eingangsstift. Halten Sie ihn immer 10 µs lang hoch, um mit der Messung durch Senden von Ultraschallwellen zu beginnen. |
3 | Echo | Er fungiert als Ausgangspin. Der Echo-Pin bleibt für einen gewissen Zeitraum hoch, was der Zeit entspricht, die der Ultraschallimpuls benötigt, um zu hc-sr04 zurückzukehren. |
4 | GND | Er wird mit der Systemmasse verbunden. |
Was ist das Funktionsprinzip eines HC-SR04 Ultraschall-Entfernungssensors?
Hc-sr04 funktioniert, indem es einen Ultraschall von ungefähr 40 kHz erzeugt, der sich über die Luft ausbreitet. Treffen die Ultraschallimpulse auf ihrem Weg auf ein Hindernis oder einen Gegenstand, werden sie zu den Sensoren zurückgeworfen.
Funktionsweise eines Ultraschallsensors
Ultraschall erzeugen
Stellen Sie zunächst sicher, dass sich der trigPin für zehn Mikrosekunden in einem High-Zustand befindet und einen 8-Zyklus-Ultraschallstoß sendet, der sich mit Schallgeschwindigkeit ausbreitet. Anschließend geht der echoPin nach dem gesendeten Burst hoch. Danach wartet oder hört der echoPin auf eine Ultraschallwelle, die Sie von einem Objekt reflektieren sollen.
Der echoPin geht nach 38 ms in einen Low-Zustand, wenn kein Objekt vorhanden ist.
Wenn jedoch ein Objekt einen Ultraschallimpuls reflektiert, geht der echoPin früher als 38 ms in den Low-Zustand.
Mit der Information über die Zeitdauer während des High-Zustands des Echo-Stifts können wir die Entfernung der Schallwellen ermitteln. Wir bestimmen auch die Entfernung von hc-sr04 zum Objekt.
Distanz =(Geschwindigkeit x Zeit)/2
Wobei;
Zeit =Zeitraum, in dem echoPin hoch war (angenommen, es sind 2 ms)
Geschwindigkeit =Schallgeschwindigkeit (340 m/s oder 340 cm/s)
Das Teilen der Ergebnisse durch zwei hilft dabei, die Dauer der Schallwelle zu messen, die benötigt wird, um das Objekt zu erreichen, bevor sie zurückprallt.
So;
Entfernung =(Geschwindigkeit × Zeit)/2 =(34 cm/ms × 1,5 ms) / 2 =25,5 cm
Jetzt beträgt der Abstand vom Sensor zum Objekt 25,5 cm.
Hc sr04 Abmessungen
Die Abmessungen des HC-SR04-Sensors sind unten dargestellt:
HC-SR04-Abmessungen
Beachten Sie jedoch, dass sich die Abmessungen aufgrund unterschiedlicher Hersteller immer etwas unterscheiden werden.
Hc-sr04 mit Arduino verbunden
Es gibt mehrere Möglichkeiten, Ihren Sensor anzuschließen, einschließlich der Verwendung von I2C, Raspberry Pi und Arduino. Für die heutigen Projekte werden wir uns auf einem Arduino-Board aufhalten.
Benötigte Materialien
- Ultraschall-Abstandssensor von Grove
- Hain-Basisschild
- Breadboard und Jumper-Drähte
- Arduino-UNO-Board
Richtlinien
Anschließen der Hardware
- Verbinden Sie zunächst den Sensor mit dem Grove-basierten Schild an Port D7.
- Stecken Sie zweitens Ihr Grove-Base-Schild in das Arduino-Board.
- Verwenden Sie dann ein USB-Kabel, um das Arduino mit einem Computer zu verbinden.
Die Stiftbelegung finden Sie in der folgenden Tabelle.
Arduino UNO | HC-SR04 Ultraschallsensor |
GND | Masse |
-3 (oder irgendein anderer digitaler I/O) Pin) | Echo |
2 (oder irgendein anderer digitaler I/O) Pin) | Triggerstift |
5V | Vcc |
HC-SR04 Ultraschallsensor und Arduino-Schaltplan
Konfigurieren der Software
- Durchsuchen Sie die GitHub-Website und laden Sie die Ultraschallsensor-Bibliothek herunter daraus.
- Kopieren Sie als Nächstes den Code und fügen Sie ihn in die Arduino IDE ein, wo Sie ihn anschließend hochladen.
Der Code sieht wie folgt aus.
Ausarbeitung des Kodex
Beginnen Sie mit der Definition von Echo- und Trig-Pins, dh Pin3 (EchoPin) und Pin2 (TrigPin). Weiterhin benötigen wir eine Integer-Variable zur Darstellung der Entfernung und eine Long-Variable („Dauer“), um die Fahrzeit vom Sensor zu kennen.
Definieren Sie außerdem den EchoPin als Eingang, während der Trip-In der Ausgang ist. Beginnen Sie dann mit der seriellen Kommunikation, die die Ergebnisse auf einem seriellen Monitorbildschirm anzeigt.
Stellen Sie sicher, dass Sie einen klaren trigPin haben, sodass Sie ihn während der Schleife für etwa zwei Mikrosekunden auf einen LOW-Zustand setzen können. Erhöhen Sie später die Einstellung des Stifts auf einen hohen Zustand von zehn Mikrosekunden, um eine Ultraschallwelle zu erzeugen.
Als nächstes gibt es ein pulseIn() Funktionstaste mit zwei Parametern, also
- Zu lesender Pulszustand (niedrig oder hoch) oder
- Name des Echo-Pins.
Verwenden Sie die Funktion, um die Reisezeit abzulesen, und geben Sie den Wert dann in die Variable „Dauer“ ein.
Wir stellen den echoPin auf High, da der HC-SR04-Sensor ihn automatisch auf High setzt, nachdem er den 8-Zyklen-Ultraschall-Burst vom Sender übertragen hat. Folglich beginnt die Zeitmessung, aber nach dem Empfang der reflektierten Schallwelle stoppt die Zeitmessung, weil der Echo-Pin auf Low geht.
Schließlich der pulseIn() Funktion gibt die Impulslänge in Mikrosekunden zurück.
Wir verwenden die zuvor besprochene Formel, um die Entfernung von hier aus zu ermitteln. Multiplizieren Sie daher die Dauer mit 0,034 und teilen Sie den Wert dann durch zwei.
Drucken Sie schließlich den endgültigen Entfernungswert aus, der auf dem seriellen Monitor angezeigt wird.
Einschränkungen der Anwendung von HC-SR04
Im Vergleich zu anderen kostengünstigen Ultraschallsensoren bestätigen wir, dass der HC-SR04-Sensor ideal für Benutzerfreundlichkeit und hohe Genauigkeit ist. Der Sensor kann jedoch einige Herausforderungen mit sich bringen, wie in den folgenden Beispielen.
- Erstens kann es für den Sensor schwierig sein, weiche, unregelmäßige Oberflächenobjekte wie ausgestopfte Tiere zu erkennen, da die Objekte Geräusche absorbieren, aber nicht reflektieren.
- Zweitens führt die Montage des HC-SR04-Sensors tief an einem Gerät oft zu einem reflektierten Bodenschall, der nicht vom Gerät stammt. Außerdem kann ein Objekt zu klein sein und somit nicht genug Schall zum HC-SR04 reflektieren.
- Wenn sich die reflektierende Oberfläche des festen Objekts in einem flachen Winkel befindet, reflektiert der Ton HC-SR04 nicht.
- Und schließlich, wenn der Abstand zwischen Hindernis/Objekt und Sensor mehr als 4 m beträgt, gibt es keine Schallreflexion.
Schlussfolgerung
Der HC-SR04 ist ein beliebter Sensor, der einfach anzuschließen, erschwinglich und stromsparend ist und sich daher ideal für batteriebetriebene Geräte eignet. Es hat ein breites Anwendungsspektrum, bestehend aus der Messung von Entfernungen in einem Abstand von 2 cm bis 400 cm, der Kartierung von Objekten in der Umgebung usw.
Wenn Sie mehr über den Ultraschallsensor wissen möchten, können Sie uns kontaktieren. Wir freuen uns, von Ihnen zu hören.
Industrietechnik
- Wie funktioniert die Ultraschall-Reinigungsmaschine in allen Lebensbereichen?
- Was ist Cloud Computing und wie funktioniert die Cloud?
- Mini-Radar mit Arduino
- Ultraschallbereichsdetektor mit Arduino
- Ultraschallsensor HC-SR04 und Arduino – Vollständige Anleitung
- Funktionsweise des PIR-Sensors und Verwendung mit Arduino
- Was ist 3D-Druck? – Typen und wie funktioniert er?
- Was ist Lichtbogenschweißen? - Typen und wie funktioniert es
- Was ist ein Winkelmesser und wie funktioniert er?
- Was ist ein CNC-Bohrwerk und wie funktioniert es?