Echozeit in Zentimeter umrechnen
Teil des Abschnitts Displays und Sensoren der Arduino-Journey von Coddy. Lektion 19 von 24.
Schall legt pro Mikrosekunde etwa 0,034 Zentimeter zurück. Multipliziere die Echozeit damit, und du erhältst die Strecke, die der Schall zurückgelegt hat.
Der Schall ist jedoch zum Objekt und zurück gelaufen, also ist das Objekt halb so weit entfernt:
float cm = duration * 0.034 / 2;In 1 Meter Entfernung dauert das Echo etwa 5800 Mikrosekunden: 5800 mal 0,034 sind 197 cm hin und zurück, also ist das Objekt 98,6 cm entfernt. Schreibe die 0.034 mit ihrem Dezimalpunkt: Dann behält die Summe ihre Dezimalstellen.
Rechne mit ein oder zwei Zentimetern Abweichung: Die Lufttemperatur verändert die Schallgeschwindigkeit, und dieser Sensor misst etwas zu kurz.
Aufgabe
EinfachDas Sketch gibt die Echozeit aus. Gib stattdessen die Entfernung aus:
- Wandle die Zeit in Zentimeter um: mal 0.034, geteilt durch 2
- Gib statt der Zeit die Zentimeter aus
Klicke auf Run, bewege das Objekt und klicke dann auf Check.
Probier es selbst
const int trigPin = 9;
const int echoPin = 10;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
// die Echozeit in Zentimeter umrechnen und das Ergebnis ausgeben
Serial.println(duration);
delay(200);
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Displays und Sensoren
1Sieben-Segment-Anzeigen
Sieben-Segment-AnzeigeZiffernmuster in BytesZählen auf der AnzeigeCountdown bis nullWürfel-Simulator4Sensoren
Ultraschall-EchozeitEchozeit in Zentimeter umrechnenThermistor-TemperaturCelsius in Fahrenheit umrechnenLichtstärke-BalkenEntfernung auf dem LCDLCD-ThermometerÜbe selbstständig: Arduino-Playground