KY-050 Ultraschall-Abstandssensor
Dieser Sensor wird zur Distanzmessung via Ultraschall benutzt.
- Arduino
- Raspberry Pi
- Raspberry Pi Pico
- Micro:Bit
Dieses Modul eignet sich hervorragend zur Entfernungsmessung in einem Bereich zwischen 2 cm und 3 m. Mit einer Auflösung von etwa 3 mm können Distanzen präzise per Ultraschallsignal gemessen werden. Wenn am Trigger-Eingang ein Signal (fallende Flanke) angelegt wird, startet der Sensor eine Abstandsmessung. Das Ergebnis wird am Echo-Ausgang als PWM-TTL-Signal ausgegeben.
Der Ultraschall-Abstandssensor ist besonders nützlich für die Hinderniserkennung, Entfernungsmessung, Füllstandsanzeigen und verschiedene Industrieanwendungen. Dank seiner hohen Präzision und schnellen Reaktionszeit (minimale Zeit zwischen den Messungen beträgt 50 µs) kann der Sensor zuverlässig in Echtzeit arbeiten.
Dieses Modul ist vielseitig einsetzbar und bietet eine einfache und effektive Lösung für Projekte, bei denen genaue Entfernungsmessungen erforderlich sind.
Technische Daten | |
---|---|
Messbare Distanz | 2 cm — 300 cm |
Messauflösung | 3 mm |
min. Zeit zwischen den Messungen | 50 µs |
Funktionsprinzip
Dieses Modul zeigt, wie mit einem Ultraschalllautsprecher und einem Mikrofon die Entfernung zu einem Objekt berührungslos gemessen werden kann. Das Prinzip beruht auf der Tatsache, dass die Schallgeschwindigkeit in der Luft bei konstanter Temperatur nahezu konstant bleibt - bei 20 °C beträgt sie 343,2 m / s.
Daraus lässt sich die Entfernungsmessung in eine Zeitmessung umwandeln, die dann leicht von Mikrocontrollern übernommen werden kann.
Der Ultraschalllautsprecher (Transducer) sendet, wenn dieser ausgelöst wird, ein maximal 200µs langes Ultraschallgeräusch aus. Dabei sendet der Ultraschalllautsprecher ein 40 kHz Signal aus. Das bedeutet, dass innerhalb der 200µs in denen der Sensor sein Ultraschallgeräusch ausgibt, 8 Perioden (Flankenwechsel) ausgegeben werden. Um auf diese 8 Perioden des 40 kHz Signales rechnerisch zu kommen, berechnet man das ganze, wie im Folgenden dargestellt ist.
Anzahl der Perioden in einer Sekunde = 40000
Zeit = 1s
Dauer einer einzelnen Periode:
1s / 40000 = 25µs
Maximale Länge des Ultraschallgeräusches = 200us
Dauer einer einzelnen Periode = 25us
Anzahl an Perioden im Ultraschallgeräusch:
200µs / 25µs = 8
Das Prinzip ist einfach gehalten, es wird ein Ultraschallgeräusch vom Lautsprecher auf dem PCB ausgegeben, welches dann von einem Objekt reflektiert und vom Mikrofon auf dem PCB aufgenommen wird. Ultraschall wird verwendet, weil dieser außerhalb des Hörbereichs des menschlichen Ohrs liegt (etwa 20Hz-22kHz).
Die Übertragung des Ultraschallsignals wird gestartet, wenn ein 10µs langes Startsignal (ActiveHigh) am "Trigger Input Pin" empfangen wird. Nach der Übertragung wird das Signal am "Echo Output Signal Pin" (ActiveHigh) aktiviert. Wird das reflektierte Signal nun wieder am Mikrofon aufgenommen, wird das Echosignal nach der Detektion wieder deaktiviert. Die Zeit zwischen Aktivierung und Deaktivierung des Echosignals kann gemessen und in die Entfernung umgerechnet werden, da dies auch der Zeit entspricht, wie lange das Ultraschallsignal benötigt, um die Strecke zwischen Lautsprecher-> reflektierende Wand -> Mikrofon in der Luft zu überwinden. Die Umrechnung erfolgt dann durch Annäherung an eine konstante Luftgeschwindigkeit - die Entfernung ist dann die Hälfte der zurückgelegten Strecke.
Anschlussbelegung
Arduino | Sensor |
---|---|
Pin 7 | Echo |
5 V | +V |
GND | GND |
Pin 8 | Trigger |
Code-Beispiel
Das Beispielprogramm aktiviert nach o.g. Prinzip die Abstandsmessung und misst mit Hilfe der Arduino Funktion pulseIn die Zeit, bis das Ultraschallsignal vom Mikrofon aufgenommen wird. Diese Zeit wird dann für die Umrechnung des Abstands als Basis genommen - das Ergebnis wird danach in der seriellen Ausgabe ausgegeben. Sollte das Signal außerhalb des Messbereichs sein, wird eine entsprechende Fehlermeldung ausgegeben.
Um das folgende Codebeispiel auf Ihren Arduino zu laden, empfehlen wir die Verwendung der Arduino IDE. In der IDE können Sie den passenden Port und das richtige Board für Ihr Gerät auswählen.
Kopieren Sie den unten stehenden Code in Ihre IDE. Um den Code auf Ihren Arduino hochzuladen, klicken Sie einfach auf den Upload-Button.
#define echoPin 7 // Echo Eingangs-Pin
#define triggerPin 8 // Trigger Ausgangs-Pin
// Benoetigte Variablen werden definiert
int maximumRange = 300;
int minimumRange = 2;
long distance;
long duration;
void setup() {
pinMode(triggerPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
Serial.println("KY-050 Distanzmessung");
}
void loop() {
// Abstandsmessung wird mittels des 10us langen Triggersignals gestartet
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
// Nun wird am Echo-Eingang gewartet, bis das Signal aktiviert wurde
// und danach die Zeit gemessen, wie lang es aktiviert bleibt
duration = pulseIn(echoPin, HIGH);
// Nun wird der Abstand mittels der aufgenommenen Zeit berechnet
distance = duration/58.2;
// Überprüfung ob gemessener Wert innerhalb der zulässingen Entfernung liegt
if (distance >= maximumRange || distance <= minimumRange) {
// Falls nicht wird eine Fehlermeldung ausgegeben.
Serial.println("Abstand außerhalb des Messbereichs");
Serial.println("-----------------------------------");
}
else {
// Der berechnete Abstand wird in der seriellen Ausgabe ausgegeben
Serial.print("Der Abstand betraegt: ");
Serial.print(distance);
Serial.println(" cm");
Serial.println("-----------------------------------");
}
// Pause zwischen den einzelnen Messungen
delay(500);
}
Dieses Modul eignet sich hervorragend zur Entfernungsmessung in einem Bereich zwischen 2 cm und 3 m. Mit einer Auflösung von etwa 3 mm können Distanzen präzise per Ultraschallsignal gemessen werden. Wenn am Trigger-Eingang ein Signal (fallende Flanke) angelegt wird, startet der Sensor eine Abstandsmessung. Das Ergebnis wird am Echo-Ausgang als PWM-TTL-Signal ausgegeben.
Der Ultraschall-Abstandssensor ist besonders nützlich für die Hinderniserkennung, Entfernungsmessung, Füllstandsanzeigen und verschiedene Industrieanwendungen. Dank seiner hohen Präzision und schnellen Reaktionszeit (minimale Zeit zwischen den Messungen beträgt 50 µs) kann der Sensor zuverlässig in Echtzeit arbeiten.
Dieses Modul ist vielseitig einsetzbar und bietet eine einfache und effektive Lösung für Projekte, bei denen genaue Entfernungsmessungen erforderlich sind.
Technische Daten | |
---|---|
Messbare Distanz | 2 cm — 300 cm |
Messauflösung | 3 mm |
min. Zeit zwischen den Messungen | 50 µs |
Funktionsprinzip
Dieses Modul zeigt, wie mit einem Ultraschalllautsprecher und einem Mikrofon die Entfernung zu einem Objekt berührungslos gemessen werden kann. Das Prinzip beruht auf der Tatsache, dass die Schallgeschwindigkeit in der Luft bei konstanter Temperatur nahezu konstant bleibt - bei 20 °C beträgt sie 343,2 m / s.
Daraus lässt sich die Entfernungsmessung in eine Zeitmessung umwandeln, die dann leicht von Mikrocontrollern übernommen werden kann.
Der Ultraschalllautsprecher (Transducer) sendet, wenn dieser ausgelöst wird, ein maximal 200µs langes Ultraschallgeräusch aus. Dabei sendet der Ultraschalllautsprecher ein 40 kHz Signal aus. Das bedeutet, dass innerhalb der 200µs in denen der Sensor sein Ultraschallgeräusch ausgibt, 8 Perioden (Flankenwechsel) ausgegeben werden. Um auf diese 8 Perioden des 40 kHz Signales rechnerisch zu kommen, berechnet man das ganze, wie im Folgenden dargestellt ist.
Anzahl der Perioden in einer Sekunde = 40000
Zeit = 1s
Dauer einer einzelnen Periode:
1s / 40000 = 25µs
Maximale Länge des Ultraschallgeräusches = 200us
Dauer einer einzelnen Periode = 25us
Anzahl an Perioden im Ultraschallgeräusch:
200µs / 25µs = 8
Das Prinzip ist einfach gehalten, es wird ein Ultraschallgeräusch vom Lautsprecher auf dem PCB ausgegeben, welches dann von einem Objekt reflektiert und vom Mikrofon auf dem PCB aufgenommen wird. Ultraschall wird verwendet, weil dieser außerhalb des Hörbereichs des menschlichen Ohrs liegt (etwa 20Hz-22kHz).
Die Übertragung des Ultraschallsignals wird gestartet, wenn ein 10µs langes Startsignal (ActiveHigh) am "Trigger Input Pin" empfangen wird. Nach der Übertragung wird das Signal am "Echo Output Signal Pin" (ActiveHigh) aktiviert. Wird das reflektierte Signal nun wieder am Mikrofon aufgenommen, wird das Echosignal nach der Detektion wieder deaktiviert. Die Zeit zwischen Aktivierung und Deaktivierung des Echosignals kann gemessen und in die Entfernung umgerechnet werden, da dies auch der Zeit entspricht, wie lange das Ultraschallsignal benötigt, um die Strecke zwischen Lautsprecher-> reflektierende Wand -> Mikrofon in der Luft zu überwinden. Die Umrechnung erfolgt dann durch Annäherung an eine konstante Luftgeschwindigkeit - die Entfernung ist dann die Hälfte der zurückgelegten Strecke.
Anschlussbelegung
Raspberry Pi | Sensor |
---|---|
5 V [Pin 2] | +V |
Masse [Pin 6] | GND |
- | Trigger |
- | Echo |
Sensor | KY-051 |
---|---|
Trigger | B1 |
Echo | B2 |
+V | - |
GND | - |
Raspberry Pi | KY-051 |
---|---|
3,3 V [Pin 1] | Vcca |
5 V [Pin 4] | Vccb |
GND [Pin 14] | GND |
GPIO 17 [Pin 11] | A1 |
GPIO 27 [Pin 13] | A2 |
Programmierbeispiel in der Programmiersprache Python
5V Spannungslevel, daher muss folgendes beachtet werden
Der Raspberry Pi arbeitet mit seinem ARM-Prozessorkern, anders als der auf Atmel Atmega basierende Arduino, mit 3,3 V Spannungslevel, anstatt mit 5 V. Dieser Sensor funktioniert jedoch nur mit dem höheren Spannungsleveln. Würde drn Sensor uneingeschränkt am Raspberry Pi, ohne Vorsichtsmaßnahmen, betrieben werden, so könnte dies permantente Schäden am Raspberry Pi verursachen.
Um dies zu verhindern, ist es Empfehlenswert einen sogenannten Voltage Translator dazwischenzuschalten, der die Spannungslevel entsprechend anpasst und einen sicheren Betrieb gewährleistet. Hierfür eignet sich hervorragend unser KY-051 Voltage Translator.
Code-Beispiel
Das Beispielprogramm aktiviert nach o.g. Prinzip die Abstandsmessung und misst die Zeit, wie lang das Ultraschallsignal in der Luft ist. Diese Zeit wird dann für die Umrechnung des Abstands als Basis genommen - das Ergebnis wird danach in der Kosnole ausgegeben. Sollte das Signal außerhalb des Messbereichs sein, wird eine entsprechende Fehlermeldung ausgegeben.
# -*- coding: iso-8859-1 -*-
from gpiozero import DistanceSensor
import time
# Definiere die Pins fuer den Sensor
trigger_pin = 17
echo_pin = 27
# Die Pause zwischen den einzelnen Messungen kann hier in Sekunden eingestellt werden
sleeptime = 0.8
# Initialisiere den Ultraschallsensor
sensor = DistanceSensor(echo=echo_pin, trigger=trigger_pin)
# Hauptprogrammschleife
try:
while True:
# Misst die Distanz und gibt sie aus
distance = sensor.distance * 100 # Umrechnung von Meter in Zentimeter
if distance < 2 or distance > 300:
print("Abstand ausserhalb des Messbereich")
print("------------------------------")
else:
# Der Abstand wird auf zwei Stellen hinter dem Komma formatiert
print(f"Der Abstand betraegt: {distance:.2f} cm")
print("------------------------------")
# Pause zwischen den einzelnen Messungen
time.sleep(sleeptime)
# Aufraeumarbeiten nachdem das Programm beendet wurde
except KeyboardInterrupt:
print("Programm wurde durch Benutzer unterbrochen")
Dieses Modul eignet sich hervorragend zur Entfernungsmessung in einem Bereich zwischen 2 cm und 3 m. Mit einer Auflösung von etwa 3 mm können Distanzen präzise per Ultraschallsignal gemessen werden. Wenn am Trigger-Eingang ein Signal (fallende Flanke) angelegt wird, startet der Sensor eine Abstandsmessung. Das Ergebnis wird am Echo-Ausgang als PWM-TTL-Signal ausgegeben.
Der Ultraschall-Abstandssensor ist besonders nützlich für die Hinderniserkennung, Entfernungsmessung, Füllstandsanzeigen und verschiedene Industrieanwendungen. Dank seiner hohen Präzision und schnellen Reaktionszeit (minimale Zeit zwischen den Messungen beträgt 50 µs) kann der Sensor zuverlässig in Echtzeit arbeiten.
Dieses Modul ist vielseitig einsetzbar und bietet eine einfache und effektive Lösung für Projekte, bei denen genaue Entfernungsmessungen erforderlich sind.
Technische Daten | |
---|---|
Messbare Distanz | 2 cm — 300 cm |
Messauflösung | 3 mm |
min. Zeit zwischen den Messungen | 50 µs |
Funktionsprinzip
Dieses Modul zeigt, wie mit einem Ultraschalllautsprecher und einem Mikrofon die Entfernung zu einem Objekt berührungslos gemessen werden kann. Das Prinzip beruht auf der Tatsache, dass die Schallgeschwindigkeit in der Luft bei konstanter Temperatur nahezu konstant bleibt - bei 20 °C beträgt sie 343,2 m / s.
Daraus lässt sich die Entfernungsmessung in eine Zeitmessung umwandeln, die dann leicht von Mikrocontrollern übernommen werden kann.
Der Ultraschalllautsprecher (Transducer) sendet, wenn dieser ausgelöst wird, ein maximal 200µs langes Ultraschallgeräusch aus. Dabei sendet der Ultraschalllautsprecher ein 40 kHz Signal aus. Das bedeutet, dass innerhalb der 200µs in denen der Sensor sein Ultraschallgeräusch ausgibt, 8 Perioden (Flankenwechsel) ausgegeben werden. Um auf diese 8 Perioden des 40 kHz Signales rechnerisch zu kommen, berechnet man das ganze, wie im Folgenden dargestellt ist.
Anzahl der Perioden in einer Sekunde = 40000
Zeit = 1s
Dauer einer einzelnen Periode:
1s / 40000 = 25µs
Maximale Länge des Ultraschallgeräusches = 200us
Dauer einer einzelnen Periode = 25us
Anzahl an Perioden im Ultraschallgeräusch:
200µs / 25µs = 8
Das Prinzip ist einfach gehalten, es wird ein Ultraschallgeräusch vom Lautsprecher auf dem PCB ausgegeben, welches dann von einem Objekt reflektiert und vom Mikrofon auf dem PCB aufgenommen wird. Ultraschall wird verwendet, weil dieser außerhalb des Hörbereichs des menschlichen Ohrs liegt (etwa 20Hz-22kHz).
Die Übertragung des Ultraschallsignals wird gestartet, wenn ein 10µs langes Startsignal (ActiveHigh) am "Trigger Input Pin" empfangen wird. Nach der Übertragung wird das Signal am "Echo Output Signal Pin" (ActiveHigh) aktiviert. Wird das reflektierte Signal nun wieder am Mikrofon aufgenommen, wird das Echosignal nach der Detektion wieder deaktiviert. Die Zeit zwischen Aktivierung und Deaktivierung des Echosignals kann gemessen und in die Entfernung umgerechnet werden, da dies auch der Zeit entspricht, wie lange das Ultraschallsignal benötigt, um die Strecke zwischen Lautsprecher-> reflektierende Wand -> Mikrofon in der Luft zu überwinden. Die Umrechnung erfolgt dann durch Annäherung an eine konstante Luftgeschwindigkeit - die Entfernung ist dann die Hälfte der zurückgelegten Strecke.
Anschlussbelegung
Extern | Sensor |
---|---|
Extern 5V | +V |
Micro:Bit GND + Extern GND | GND |
- | Trigger |
- | Echo |
Sensor | KY-051 |
---|---|
Trigger | B1 |
Echo | B2 |
+V | - |
GND | - |
Micro:Bit | KY-051 |
---|---|
3,3 V | Vcca |
Extern 5V | Vccb |
GND + Extern GND | GND |
Pin 2 | A1 |
Pin 1 | A2 |
Extern | KY-051 |
---|---|
Extern 5V | Vccb |
Code-Beispiel
Für das folgende Codebeispiel wird eine zusätzliche Library benötigt:
pxt-sonar von Microsoft | veröffentlicht unter der MIT License
Fügen Sie die Library zu Ihrer IDE hinzu, indem Sie auf "Erweiterungen" klicken und die folgende URL in das Suchfeld eingeben: https://github.com/microsoft/pxt-sonar.git Bestätigen Sie die Suche mit [Enter].
let p = 0
basic.forever(function () {
p = sonar.ping(
DigitalPin.P1,
DigitalPin.P2,
PingUnit.Centimeters
)
led.plotBarGraph(
p,
0
)
})
Beispielprogramm Download
Dieses Modul eignet sich hervorragend zur Entfernungsmessung in einem Bereich zwischen 2 cm und 3 m. Mit einer Auflösung von etwa 3 mm können Distanzen präzise per Ultraschallsignal gemessen werden. Wenn am Trigger-Eingang ein Signal (fallende Flanke) angelegt wird, startet der Sensor eine Abstandsmessung. Das Ergebnis wird am Echo-Ausgang als PWM-TTL-Signal ausgegeben.
Der Ultraschall-Abstandssensor ist besonders nützlich für die Hinderniserkennung, Entfernungsmessung, Füllstandsanzeigen und verschiedene Industrieanwendungen. Dank seiner hohen Präzision und schnellen Reaktionszeit (minimale Zeit zwischen den Messungen beträgt 50 µs) kann der Sensor zuverlässig in Echtzeit arbeiten.
Dieses Modul ist vielseitig einsetzbar und bietet eine einfache und effektive Lösung für Projekte, bei denen genaue Entfernungsmessungen erforderlich sind.
Technische Daten | |
---|---|
Messbare Distanz | 2 cm — 300 cm |
Messauflösung | 3 mm |
min. Zeit zwischen den Messungen | 50 µs |
Funktionsprinzip
Dieses Modul zeigt, wie mit einem Ultraschalllautsprecher und einem Mikrofon die Entfernung zu einem Objekt berührungslos gemessen werden kann. Das Prinzip beruht auf der Tatsache, dass die Schallgeschwindigkeit in der Luft bei konstanter Temperatur nahezu konstant bleibt - bei 20 °C beträgt sie 343,2 m / s.
Daraus lässt sich die Entfernungsmessung in eine Zeitmessung umwandeln, die dann leicht von Mikrocontrollern übernommen werden kann.
Der Ultraschalllautsprecher (Transducer) sendet, wenn dieser ausgelöst wird, ein maximal 200µs langes Ultraschallgeräusch aus. Dabei sendet der Ultraschalllautsprecher ein 40 kHz Signal aus. Das bedeutet, dass innerhalb der 200µs in denen der Sensor sein Ultraschallgeräusch ausgibt, 8 Perioden (Flankenwechsel) ausgegeben werden. Um auf diese 8 Perioden des 40 kHz Signales rechnerisch zu kommen, berechnet man das ganze, wie im Folgenden dargestellt ist.
Anzahl der Perioden in einer Sekunde = 40000
Zeit = 1s
Dauer einer einzelnen Periode:
1s / 40000 = 25µs
Maximale Länge des Ultraschallgeräusches = 200us
Dauer einer einzelnen Periode = 25us
Anzahl an Perioden im Ultraschallgeräusch:
200µs / 25µs = 8
Das Prinzip ist einfach gehalten, es wird ein Ultraschallgeräusch vom Lautsprecher auf dem PCB ausgegeben, welches dann von einem Objekt reflektiert und vom Mikrofon auf dem PCB aufgenommen wird. Ultraschall wird verwendet, weil dieser außerhalb des Hörbereichs des menschlichen Ohrs liegt (etwa 20Hz-22kHz).
Die Übertragung des Ultraschallsignals wird gestartet, wenn ein 10µs langes Startsignal (ActiveHigh) am "Trigger Input Pin" empfangen wird. Nach der Übertragung wird das Signal am "Echo Output Signal Pin" (ActiveHigh) aktiviert. Wird das reflektierte Signal nun wieder am Mikrofon aufgenommen, wird das Echosignal nach der Detektion wieder deaktiviert. Die Zeit zwischen Aktivierung und Deaktivierung des Echosignals kann gemessen und in die Entfernung umgerechnet werden, da dies auch der Zeit entspricht, wie lange das Ultraschallsignal benötigt, um die Strecke zwischen Lautsprecher-> reflektierende Wand -> Mikrofon in der Luft zu überwinden. Die Umrechnung erfolgt dann durch Annäherung an eine konstante Luftgeschwindigkeit - die Entfernung ist dann die Hälfte der zurückgelegten Strecke.
Anschlussbelegung
Da der KY-050 mit 5V betrieben wird, wird ein Voltage Translator und eine externe Spannungsversorgung benötigt, um ihn mit dem Raspberry Pi Pico zu betreiben. Als Voltage Translator können Sie KY-051 verwenden und als externe Spannungsversorgung z.B. ein Arduino oder Raspberry Pi.
Voltage Translator | KY-050 |
---|---|
Vccb | +V |
GND | GND |
B1 | Echo |
B2 | Trig |
Raspberry Pi Pico | Extern |
---|---|
GND | Extern GND |
Voltage Translator | Extern |
---|---|
Vccb | Extern 5V |
GND | Extern GND |
Voltage Translator | Raspberry Pi Pico |
---|---|
Vcca | 3,3V |
GND | GND |
A1 | GPIO16 |
A2 | GPIO17 |
Code-Beispiel
Das Beispielprogramm aktiviert nach o.g. Prinzip die Abstandsmessung und berechnet die Zeit, bis das Ultraschallsignal vom Mikrofon aufgenommen wird. Diese Zeit wird dann für die Umrechnung des Abstands als Basis genommen - das Ergebnis wird danach in der seriellen Ausgabe ausgegeben. Sollte das Signal außerhalb des Messbereichs sein, wird eine entsprechende Fehlermeldung ausgegeben.
Um das folgende Codebeispiel auf Ihren Pico zu laden, empfehlen wir die Verwendung von der Thonny IDE. Sie müssen nur zunächst unter Run > Configure interpreter … > Interpreter > Which kind of interpreter should Thonny use for running your code? > MicroPython (Raspberry Pi Pico) auswählen.
Kopieren Sie den untenstehenden Code nun in Ihre IDE und klicken Sie auf Run.
# Bibliotheken laden
from machine import Pin
import time
# Initialisierung von GPIO16 als Input und GPIO17 als Ausgang
trigger_pin = Pin(17, Pin.OUT)
echo_pin = Pin(16, Pin.IN, Pin.PULL_DOWN)
print("KY-050 Distanzmessung")
# Endlosschleife zur Messung der Distanz
while True:
# Abstandsmessung wird mittels des 10us langen Triggersignals gestartet
trigger_pin.value(0)
time.sleep(0.1)
trigger_pin.value(1)
# Nun wird am Echo-Eingang gewartet, bis das Signal aktiviert wurde
# Danach wird die Zeit gemessen, wie lang es aktiviert bleibt
time.sleep_us(2)
trigger_pin.value(0)
while echo_pin.value()==0:
pulse_start = time.ticks_us()
while echo_pin.value()==1:
pulse_end = time.ticks_us()
pulse_duration = pulse_end - pulse_start
# Nun wird der Abstand mittels der aufgenommenen Zeit berechnet
distance = pulse_duration * 17165 / 1000000
distance = round(distance, 0)
# Serielle Ausgabe
print ('Distanz:',"{:.0f}".format(distance),'cm')
time.sleep(1)