Kleine und günstige Ultraschallsensoren Module wie z.B. der SR-04 oder SRF-06 sind eine sehr effiziente Art um mit Ultraschall die Präsens von Objekten in der Nähe zu erkennen und die Distanz in deinem Arduino Projekt. Oft werden diese Sensoren in Roboter Projekten eingesetzt um das Umfeld zu erkunden, Kollisionen zu vermeiden und auf Basis der gewonnen Daten eine Entscheidung über die zufahrende Richtung zu treffen. So kompliziert das jetzt vielleicht klingen mag, die Umsetzung ist kinderleicht und ich verspreche euch, dass Ihr innerhalb von fünf Minuten Entfernungen messen könnt.

HC-SR04
Ultraschallsensor – Größe: 2 x 4,5 cm

So funktioniert die Ultraschall-Messung

Zur Einleitung ein paar Grundlagen. Soviel Zeit haben wir. Ultraschall Sensoren besitzen einen Signalgeber  – Trigger – und Messgeber – Echo – und diese funktionieren praktisch wie bei einer Fledermaus Mund und Ohren.

Ultraschall ist ein hoch Frequenz Ton (meistens 40 KHz). Ein kurzer Stoß von Tonwellen wird durch den Signalgeber (siehe Bild oben Links) ausgegeben. Dann lauscht der Messgeber auf das Echo. Demnach ist das Prinzip der Ultraschall Entfernungsmessung das gleiche wie bei einem auf Radiowellen basierenden Radar.

Die Distanz wird wie folgt berechnet: L = C x T/2

L ist die Länge, C ist die Geschwindigkeit des Schalls in der Luft und T der Zeitunterschied zwischen Senden und Empfangen der Schallwellen durch Signalgeber und Messgeber. Da wir den Schall in eine Richtung senden und dieser von einem Gegenstand reflektiert den gleichen Weg zurück antritt, wird die Zeit durch zwei dividiert. Die Schall Geschwindigkeit beträgt in einem Raum um 20 Grad Celsius 344 Meter pro Sekunde.

Die Geschwindigkeit des Schalls wird durch die Luftdichte bestimmt, welche sich mit der Temperatur verändert. Für hoch akkurate Messwerte müsste diese in die Gleichung genommen werden. Entweder über ein entsprechendes Hardware Modul oder über den Arduino.

Aufbau für das Arduino Projekt mit SR-04 Sensor

Die Schaltung für diese Projekt ist leicht und schnell gemacht. Für die Umsetzung eignet sich ein Arduino Uno. Natürlich könnt Ihr auch andere Arduino kompatiblen Boards wie den Spark Core oder den Intel Galileo verwenden. In diesem Beispiel verwenden wir ein SR-04 Modul welches vier PIN zur Ansteuerung hat.

  1. VCC Spannung von 5 Volt
  2. Trigger für den Transmitter Pin
  3. Echo Pin für das Rückläufige Signal
  4. Erdung

Hinweis: Das US-100 Modul verwendet 5 Pin. Die Pin vier und fünf sind Ground. Die Belegung von eins bis vier ist die gleiche.

Um das Modul zu testen verbindet die Pin 1 mit der 5 Volt Stromversorgung und Pin 4 mit der Erdung (Ground). Den Trigger verbindet Ihr mit Pin 11 und den Echo Pin mit 10. Das Foto
zeigt euch wie es geht.

SC-04 Ultraschallsensor Arduino Projekt
Verbindung des SC 04 mit dem Arduino über das Breadboard

SR-04 über Arduino Sketch abfragen

Das Software Sketch tut folgendes:

  • Trigger ein- und ausschalten um eine Schallwelle zu erzeugen
  • Messen wie lange das Echo gemessen werden kann
  • Berechnen der Distanz

Um die zu zeigen wie es funktioniert habe ich ein Beispielskelch vorbereitet. Es verwendet eine Bibliothek mit dem Namen New Ping. Hier geht´s zur Dokumentation und zum Download der Library.

Die Bibliothek übernimmt für dich die Berechnung der Zeit und gibt die Entfernung in Zentimeter oder Inches zurück. Um die Bibliothek zu verwenden, kopierst du diese nach dem download in den Arduino Programmordner, welcher die Bibliothek beinhaltet. In der Regel ist dies C:\Users\(yourname)\Documents\Arduino\libraries auf einem Windows Rechner oder User/Dokumente/Arduino/libraries auf einem Mac. Wenn die Arduino IDE bereits gestartet war, müsstest du diese nachdem kopieren neu starten.

Detaillierte Informationen zur NewPing Bibliothek sowie zur Nutzung von Timern findest Du hier (klick).

Hier nun das Beispiel-Sketch (aktueller Version vom 13.05.2015). Du kannst es einfach in ein neues Sketch kopieren und auf deinem Arduino laden.

Nachdem Du das sketch auf den Arduino geladen hast, kannst du eine Serielleverbindung über den Serial Monitor (Lupe, oben, rechts in deinem Sketch) und die Entfernung ablesen.

Fazit Ultraschallmessung mit dem SR-04

Wenn du jetzt ein flaches Buch vor dem Sensor bewegst, erkennst du wie der Sensor die Entfernung misst und über die Schnittstelle ausgibt. Dabei reflektieren unterschiedlich dicke Gegenstände verschieden und liefern auch abweichende Werte. Probiert es aus. Wie ist die Abweichung bei einem Stift, eurer Kaffeetasse oder eurer Katze?

Ca. 2,30 € kostet ein kleiner Ultraschallsensor und die Einbindung in deine Arduino Projekte gelingt verblüffend leicht. In unserem smart car robot Projekt nutzen wir den Sensor kombiniert mit einem Servo um in verschiedenen Richtungen den Abstand zu messen und auf Basis der Distanz eine Entscheidung zutreffen, in welche Richtung der Roboter weiter fahren soll. Wenn du Fragen hast, kannst du diese gerne in unserem Forum stellen. Anregungen und weitere Arduino Beispiele findest du hier im Blog. Welche Arduino Projekt möchtest du gerne mit einem Ultraschallsensor zur Messung von Entfernungen umsetzen?

Wie du in 5 Minuten mit einem Ultraschallsensor + Arduino Entfernungen messen kannst. | Arduino Projekt
Markiert in:            

3 Gedanken zu „Wie du in 5 Minuten mit einem Ultraschallsensor + Arduino Entfernungen messen kannst. | Arduino Projekt

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.