Dal tempo dell'eco ai centimetri
Fa parte della sezione Display e sensori del percorso Arduino di Coddy. Lezione 19 di 24.
Il suono percorre circa 0.034 centimetri ogni microsecondo. Moltiplica il tempo dell’eco per quel valore e ottieni la distanza percorsa dal suono.
Ma il suono è arrivato all’oggetto e ritorno, quindi l’oggetto si trova alla metà di quella distanza:
float cm = duration * 0.034 / 2;A 1 metro, l’eco impiega circa 5800 microsecondi: 5800 moltiplicato per 0.034 fa 197 cm tra andata e ritorno, quindi l’oggetto si trova a 98.6 cm. Scrivi 0.034 con il punto decimale: così la somma mantiene i decimali.
Considera un errore di uno o due centimetri: la temperatura dell’aria cambia la velocità del suono e questo sensore misura una distanza leggermente inferiore.
Sfida
FacileLo sketch stampa il tempo dell’eco. Stampa invece la distanza:
- converti il tempo in centimetri: moltiplica per 0.034, dividi per 2
- stampa i centimetri invece del tempo
Premi Run, sposta l’oggetto, poi Check.
Provalo tu
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);
// converti il tempo dell'eco in centimetri e stampa il risultato
Serial.println(duration);
delay(200);
}
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Display e sensori
1Display a sette segmenti
Display a sette segmentiSchemi delle cifre nei byteConta sul displayConto alla rovescia fino a zeroLancio dei dadi4Sensori
Tempo dell'eco ultrasonicoDal tempo dell'eco ai centimetriTemperatura del termistoreDa Celsius a FahrenheitBarra del livello di luceDistanza sull'LCDTermometro LCDEsercitati da solo: Playground Arduino