Przeliczanie czasu echa na centymetry
Część sekcji Wyświetlacze i czujniki ścieżki Arduino w Coddy. Lekcja 19 z 24.
Dźwięk przebywa około 0,034 centymetra w każdej mikrosekundzie. Pomnóż czas echa przez tę wartość, a otrzymasz odległość, jaką przebył dźwięk.
Ale dźwięk dotarł do obiektu i wrócił, więc obiekt znajduje się w połowie tej odległości:
float cm = duration * 0.034 / 2;Na 1 metr echo potrzebuje około 5800 mikrosekund: 5800 razy 0.034 to 197 cm w obie strony, czyli odległość 98.6 cm. Zapisz 0.034 z kropką dziesiętną: wtedy suma zachowa miejsca po przecinku.
Spodziewaj się błędu rzędu jednego lub dwóch centymetrów: temperatura powietrza zmienia prędkość dźwięku, a ten czujnik pokazuje nieco mniejszą odległość.
Wyzwanie
ŁatwySzkic wyświetla czas powrotu echa. Zamiast tego wyświetl odległość:
- przelicz czas na centymetry: pomnóż przez 0.034, podziel przez 2
- wyświetl centymetry zamiast czasu
Naciśnij Uruchom, przesuń obiekt, a następnie Sprawdź.
Spróbuj swoich sił
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);
// przelicz czas echa na centymetry i wyświetl wynik
Serial.println(duration);
delay(200);
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Wyświetlacze i czujniki
1Wyświetlacze siedmiosegmentowe
Wyświetlacz siedmiosegmentowyWzory cyfr w bajtachLiczenie na wyświetlaczuOdliczanie do zeraSymulator rzutu kostką4Czujniki
Czas echa ultradźwiękowegoPrzeliczanie czasu echa na centymetryTemperatura z termistoraCelsjusze na stopnie FahrenheitaWskaźnik poziomu światłaOdległość na LCDTermometr LCDPoćwicz samodzielnie: Edytor online Arduino