Del tiempo del eco a centímetros
Parte de la sección Pantallas y sensores del Journey de Arduino de Coddy. Lección 19 de 24.
El sonido recorre unos 0.034 centímetros cada microsegundo. Multiplica el tiempo del eco por esa cantidad y obtendrás la distancia que recorrió el sonido.
Pero el sonido llegó hasta el objeto y volvió, así que el objeto está a la mitad de esa distancia:
float cm = duration * 0.034 / 2;A 1 metro, el eco tarda unos 5800 microsegundos: 5800 por 0.034 son 197 cm de ida y vuelta, así que está a 98.6 cm de distancia. Escribe 0.034 con su punto decimal: así, la suma conserva sus decimales.
Espera un error de uno o dos centímetros: la temperatura del aire cambia la velocidad del sonido y este sensor mide un poco menos.
Desafío
FácilEl sketch imprime el tiempo del eco. Imprime la distancia en su lugar:
- convierte el tiempo a centímetros: multiplícalo por 0.034 y divídelo entre 2
- imprime los centímetros en lugar del tiempo
Pulsa Run, mueve el objeto y después pulsa Check.
Pruébalo tú mismo
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);
// convierte el tiempo del eco a centímetros e imprímelo
Serial.println(duration);
delay(200);
}
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Pantallas y sensores
1Displays de siete segmentos
Display de siete segmentosPatrones de dígitos en bytesCuenta en el displayCuenta regresiva hasta ceroLanzador de dados4Sensores
Tiempo del eco ultrasónicoDel tiempo del eco a centímetrosTemperatura con termistorDe Celsius a FahrenheitBarra de nivel de luzDistancia en la pantalla LCDTermómetro LCDPractica por tu cuenta: Playground de Arduino