Ultraschall

Projekt 1: Schallgeschwindigkeit

Mit dem bekannten Ultraschallmodul HC-SR04 kann man etwa die Distanz von Objekten bestimmen. Hierfür wandelt das Modul die gemessene Laufzeit t mittels “bekannter” Schallgeschwindigkeit c in Luft (rund 340 m/s) in eine Distanz d = c * t/2 um.

Man kann sich aber auch umgekehrt für einen bestimmten Abstand d nur die Laufzeit t anzeigen lassen und daraus mittels c = d / (t/2) die jeweilige Schallgeschwindigkeit berechnen.

Für dieses Projekt benötigt man wie so oft nur einen Arduino, ein 16×2 I2C display und eben den HC-SR04 Sensor. Dies kostet aus Fernost zusammen nur um die 10 Euro.


Arduino-Code:


Projekt 2: Ultraschallanemometer

Mit einem Anemometer bestimmt man die Windgeschwindigkeit. Üblicherweise kommt hier ein Schaufelrad zum Einsatz, welches sich bei einer bestimmten Windgeschwindigkeit mit einer bestimmten Winkelgeschwindigkeit dreht. Man kann ein Anemometer aber auch mit dem Ultraschallmodul HC-SR04 umsetzen. Konkret benötigt man 4 Stück davon. Man muss zuerst von allen Modulen z.B. den Empfänger ablöten. Danach bastelt man aus Holz ein Kreuz. An den 4 Enden des Kreuzes kommt nun je ein Sender. Den jeweiligen Empfänger postiert man genau gegenüber.

Wie kann man nun daraus die Windgeschwindigkeit v berechnen. Nun man bestimmt hintereinander die Laufzeit für alle 4 Strecken (je zwei davon unterscheiden sich nur bzgl. ihrer Richtung). Die Schallgeschwindigkeit c überlagert sich mit der Windgeschwindigkeit v. Es gilt dabei etwa für die x-Richtung:

Geschwindigkeit 1: v_x_ges_1 = v_x + c_x

Geschwindigkeit 2: v_x_ges_2 = -v_x + c_x

Ermittels werden jeweils die beiden Laufzeiten t_1 und t_2.

Diese hängen mit den Geschwindigkeiten v_x_ges wiefolgt zusammen:

v_x_ges_1 = d / t_1

v_x_ges_2 = d / t_2

Dies liefert ein Gleichungssystem (2 Glg. mit 2 Unbekannten). Eliminiert man daraus c_x, erhält man für die Windgeschwindigkeit v_x in x-Richtung:

v_x = (d/2) * [(1/t_1) – (1/t2)]

Analog dazu lässt sich die Windgeschwindigkeit in y-Richtung bestimmen. Mittels Pythagoras erhält man schlussendlich die Windgeschwindigkeit

v = SQRT(v_x^2 + v_y^2).

Zusätzlich kennt man durch die Einzelkomponenten v_x bzw. v_y die Richtung des Winds.


Arduino-Code:


Projekt 3: 3D-Ultraschallscanner

Postiert man das Ultraschallmodul HC-SR04 auf einer schwenkbaren Servo-Montierung, so kann man die Entfernung d in einer bestimmten Raumrichtung (Winkel phi und teta) bestimmen. Dies liefert für viele verschiedene Richtungen einen kompletten Raumscan, welcher sich dann 2-dimensional etwa mit der Software gnuplot darstellen lässt.


Arduino-Code: