Arduino Entfernungsmessung mit Ultraschallsensor (HC-SR04): So geht’s

In diesem Tutorial lernst du, einfach mit dem Arduino Entfernungsmessung zu betreiben. Hierfür verwenden wir den Ultraschallsensor HC-SR04.

Ultraschallsensoren eignen sich bestens dafür, Abstände zu messen und Objekte berührungslos zu erkennen. Das Prinzip ist denkbar einfach: Zunächst einmal wird ein kurzer, hochfrequenter Schallimpuls abgesendet. Sobald der Impuls auf ein Objekt stößt, kommt es zu einer Reflexion. Dies wiederum ruft ein Echo hervor, das schließlich wieder beim Sensor ankommt. Anhand der Zeitspanne, die zwischen der Abgabe und dem Empfangen des Impulses liegt, errechnet der Sensor zuverlässig den Abstand zum jeweiligen Objekt.

Quelle: Wikipedia

Wichtig ist, dass der Gegenstand aus einem Material besteht, das den Schall reflektieren kann. Objekte aus Metall, Holz oder Kunststoff eignen sich für die Messung folglich sehr gut. Transparente Flüssigkeiten oder Gegenstände sind kein Hindernis für den Sensor, dasselbe gilt für Schmutz, Staubwolken oder Nebel.

Aufgrund der nützlichen Features stellen Ultraschallsensoren auch eine bedeutsame Komponente in der Automatisierungstechnik dar. In Selbstpark- und Antikollisionssystemen kommt das Werkzeug ebenso zum Einsatz wie bei der Messung von Flüssigkeitsständen, bei der Erkennung von Etiketten und bei der Positionierung von Robotern.

Im folgenden Tutorial zeigen wir dir, wie du diese Messmethode mithilfe deines Arduino Uno und eines Ultraschallsensors ganz einfach selbst anwenden kannst.

Das brauchst du für das Projekt

WARENKORB

Alle für dieses Projekt notwendigen Artikel landen mit einem Klick auf den Button direkt in deinem Warenkorb, sofern sie in unserem Shop verfügbar sind. Kontrolliere daher deinen Warenkorb genau!

Arduino Entfernungsmessung mit dem Ultraschallsensor HC-SR04: Schritt für Schritt erklärt

    I2C LCD Arduino

    GND GND

    VCC 5 V

    SDA A4

    SCL A5

    HC-SR04 Arduino

    VCC 5 V

    Trig Pin 2

    Echo Pin 3

    GND GND

    //https://www.blog.berrybase.de/
    
    #include <Wire.h> 
    #include <LiquidCrystal_I2C.h>
    
    LiquidCrystal_I2C lcd(0x27,16,2);  // Set the LCD address to 0x27 for a 16 chars and 2 line display
    
    int trigPin =2 ; // TRIG 
    int echoPin =3 ;  // ECHO 
    
    
    float duration_us, distance_cm;
    
    void setup() {
      lcd.init();               // Initialize the lcd
      lcd.backlight();          // Open the backlight 
      pinMode(trigPin, OUTPUT); // Config trigger pin to output mode
      pinMode(echoPin, INPUT);  // Config echo pin to input mode
    }
    
    void loop() {
      // Generate 10-microsecond pulse to TRIG pin
      digitalWrite(trigPin, HIGH);
      delayMicroseconds(10);
      digitalWrite(trigPin, LOW);
    
      // Measure duration of pulse from ECHO pin
      duration_us = pulseIn(echoPin, HIGH);
    
      // Calculate the distance
      distance_cm = 0.017 * duration_us;
    
      lcd.clear();
      lcd.setCursor(0, 0); // Start to print at the first row & first line
      lcd.print("Abstand: ");
      lcd.setCursor(0, 1); // Print at the first row & second line
      lcd.print(distance_cm);
      lcd.print(" cm");
    
      delay(500);
    }

    Viel Spaß beim Nachbauen!

    Falls du deine Arduino Experimentierlust noch nicht gestillt ist, kannst du dir hier noch weitere Tutorials anschauen.

    Die mobile Version verlassen