Ich habe verschiedene ferngesteuerte Autos und Roboter mit einem Raspberry Pi Computer gebaut und jetzt möchte ich diese nicht nur mit einer Kamera ausstatten sondern zusätzlich auch mit einen HC-SR04 Ultraschall Entfernungssensor. Hierfür eignet sich ideal ein Ultraschall Entfernungssensor da er billig und einfach zu installieren ist. Für mein Roboter Auto Projekt habe ich mich für den HC-SR04 Ultraschall Entfernungssensor entschieden. Er ist klein in der Abmessung und in vielen Roboter-Onlineshops für ein paar Euro erhältlich. Mit diesem Sensor ist es möglich Entfernung zwischen 2cm und 4m zu messen bei einer theoretischen Auflösung von 3mm. Abhängig von dem zurück geworfenen Echo kann die Auflösung unterschiedlich ausfallen. Weiche Hindernisse wie ein Vorhang sind nicht leicht zu erkennen, da sie das Ultraschall  Signal nicht gut reflektieren. Fährt man in einem flachen Winkel mit seinem Roboter auf eine Wand zu dann wird das Ultraschall Signal weg von dem Empfänger reflektiert und nicht mehr hin zu dem Sensor und so ist eine richtige Entfernungsmessung schwierig.

Der Sensor kann einfach an einen Arduino angeschlossen werden. Wenn ein SBC wie ein Raspberry Pi zum Einstaz kommt wird ein Level-Shifter benötigt abhängig von der Spannung der GPIO’s und dem Sensor. Der HC-SR04 Ultraschall Entfernungssensor benötigt 5V als Versorgungsspannung. Die Stromstärker die der Sensor benötigt liegt bei niedrigen 2mA. Das macht den Sensor ideal für kleine Roboter Projekte.

Das folgende Bild zeigt den HC-SR04 Ultraschall Entfernungssensor.

HC-SR04 Ultrasonic distance sensor

HC-SR04 Ultrasonic distance sensor

Das Bild zeigt den HC-SR04 Sensor und es sind die vier Kontakte gut zu erkennen. Der erste Pin ist der Vcc für die 5V Stromversorgung. Der zweite Pin mit der Bezeichnung Trig ist der Trigger Pin um den Sensor zu aktivieren. Mit diesem Pin wird dem Sensor gesagt das Ultraschallsignal zu senden für eine kurze Zeit. Der dritte Pin mit der Bezeichnung Echo sendet ein HIGH Signal zurück wenn er den Ultraschall Ton wieder empfangen hat. Der vierte Pin Gnd ist der Anschluss für die Erdung.

Raspberry Pi Roboter-Auto Komponentenliste

Wenn ich jetzt das Interesse wecken konnte am Bau eines Roboters zusammen mit einem Raspberry Pi der findet auf meinem Blog eine Komponentenliste. Diese Komponentenliste listet die elektronischen Komponenten oder fertigen Raspberry Pi Bausätze auf die ich selber mit gutem Gewissen weiterempfehlen kann. Die meisten aufgezählten Komponenten kommen in meinen Modellen zum Einsatz und wurden so durch mich auf Funktion und Kompatibilität mit dem Raspberry Pi hin geprüft.

Hier der Link auf die Komponentenliste: Komponentenliste

ZeroBorg motor controller - robot-car components

ZeroBorg motor controller - robot-car components

Funktion des HC-SR04 Ultraschall Sensors

Damit der Sensor aktiv sein Ultraschallsignal aussendet muss auf den Trig Pin ein HIGH Signal von 10us Sekunden angelegt werden. Anschließend sendet der Sensor automatisch ein 40khz Rechteck Signal aus und empfängt anschließend as zurück kommende Echo. Wenn ein Signal zurück kommt wird der Echo Pin auf HIGH gesetzt. Die Zeit die verstreicht zwischen Aussenden des Signals, Empfangen des Echos und sofortigen setzen des Echo Pins auf HIGH ist die Grundlage für die nachfolgende Berechnung der Entfernung.

((Start Zeit(s) – Empfangs Zeit (s)) * 340 m/s)/2

Mit dem HC-SR04 Sensor ist es möglich 50 Messungen in der Sekunde durchzuführen. Der Intervall für eine Messung beträgt 20us. Der Zeitintervall ist ausreichend für ein kleines Roboter Auto um dieses zu steuern und Hindernisse vor dem Roboter zu erkennen.

[DE_BOOK_DETAIL DE_BOOK_DETAIL=”DE_BOOK_DETAIL”]

Video des HC-SR04 Sensor in Aktion

Ich habe ein kleines Programm geschrieben zwei DC Motoren unabhängig voneinander über den HC-SR04 Ultraschall Entfernungssensor zu steuern. Die Elektromotoren drehen mit einer voreingestellten Grundgeschwindigkeit solange ein Hindernis 50cm entfernt ist. Wenn man wie im Video gezeigt z.B. mit der Hand vor den Sensor geht und sich diesem annähert verringert sich die Geschwindigkeit der Motoren bis es zu einem Stillstand kommt.

HC-SR04 Demo Programm

Das kleine Programm kann hier herunter geladen werden. Es besteht aus der Entfernungsmessung und dem Programm die Motoren zu steuern. Es wird kein Motor Treiber l298n und Motor benötigt um das Programm ausführen zu können. Das Programm zeigt die Entfernung auch ohne einem Motor im Terminal Fenster an. Zu beginn des Programmes ist es möglich die GPIO Pins zu setzen für den HC-SR04 Ultraschall Entfernungssensor und den Motor Treiber.

Download: Ultrasonic sensor program HC-SR04

Zusammenfassung

Mit der entsprechenden Technik und dem Verständnis um den Raspberry Pi ist es möglich mit einem Ultraschall-Sensor tolle Projekte umzusetzen. Wichtig ist aber auf die unterschiedlichen Spannungen zu machten. Der Raspberry Pi Computer arbeitet mit 3,3V und der HC-SR04 Sensor mit 5,0V. Daher muss ein Level-Shifter zwischen Raspberry Pi und Ultraschallsensor verbaut werden um den Raspberry Pi Computer nicht zu beschädigen.

(Visited 1.173 times, 1 visits today)