Einkaufswagen 0

Arduino Projekte: Ultraschall Entfernungsmesser am Arduino / Merkurboard mit GROVE Sensor

Der Grove - Ultrasonic Ranger ist ein berührungsloses Ultraschall Distanzmessmodul, das bei 40 kHz arbeitet. Der Ultrasonic Ranger ist ein sehr beliebter Low-Cost Entfernungsmesser, der sich einfach mit dem Arduino abfragen lässt.

 

Der Ultrasonic Ranger arbeitet mit Ultraschall, sendet also hochfrequente Schallwellen aus und setzt einen Pin auf HIGH, sobald das zurückgeworfene Echo vom Sensor registriert wird. Der Sensor sendet 8 Pulse mit einem 40-kHz-Zyklus aus und erkennt das Echo. Die Impulsbreite des Echosignals ist proportional zur gemessenen Entfernung. Hier ist die Formel: Entfernung = Echosignal hohe Zeit * Schallgeschwindigkeit (340M / S) / 2. Der Trig Pin und das Echo-Singal Pin sind auf 1 SIG-Pin zusammengeführt. 

Funktionsprinzip

Anwendungsbeispiele

Zisternenüberwachung, Wasserstandsüberwachung im Pumpenschacht, Brunnen Wasserstand ...  

Anbindung

Der Distanzsensor wird über die 3.3V oder 5V vom Arduino mit Strom versorgt und benötigt einen weitere I/O-Pins zur Messung. Über den Trigger-Pin wird die Messung gestartet, d.h. eine Schallwelle ausgesendet. Das Echo-Pin des Sensor ändert seinen Zustand, sobald der vom Hindernis reflektierte Schall den Sensor erreicht.

Kaufen:

Play With Arduino / Merkurboard

Hardware

Schritt 1. Bereite die folgenden Dinge vor: Arduino/Merkurboard, Grove-Ultrasonic-Ranger
Schritt 2. Schließe den Ultrasonic Ranger an Port D3 des Arduino Grove-Steckers an.
Schritt 3. Verbinde den Arduino /Merkurboard über ein Kabel mit dem PC.

Software

Der Ultrasonic Ranger Sketch verwendet die "UltrasonicRanger Library" zu finden auf Github. In unserem Beispiel verwenden wir den Digitalpin 3.

include "Ultrasonic.h"

Ultrasonic ultrasonic(3);
void setup()
{
    Serial.begin(9600);
}
void loop()
{
    long RangeInInches;
    long RangeInCentimeters;

    Serial.println("The distance to obstacles in front is: ");
    RangeInInches = ultrasonic.MeasureInInches();
    Serial.print(RangeInInches);//0~157 inches
    Serial.println(" inch");
    delay(250);

    RangeInCentimeters = ultrasonic.MeasureInCentimeters(); // two measurements should keep an interval
    Serial.print(RangeInCentimeters);//0~400cm
    Serial.println(" cm");
    delay(250);
}

Nach dem Download des Sketches sehen wir die Gemessen Distanz im Terminal:

 

The distance to obstacles in front is:
2 inches
6 cm
The distance to obstacles in front is:
2 inches
6 cm
The distance to obstacles in front is:
2 inches
6 cm

Eine Detaillierte Anleitung im Community Wiki findet ihr hier.



Älterer Post Neuerer Post