La fórmula general para la conversión de distancia a tiempo o viceversa es,
Velocity = Distance / Time
He implementado el sensor de distancia HCSR04,
Ficha técnica: https://docs.google.com/document/d/1Y-yZnNhMYy7rwhAgyL_pfa39RsB-x2qR4vP8saG73rE/edit
y según Datashheet,
Para iniciar la medición, el Trig del SR04 debe recibir un pulso de alto (5V) durante al menos 10us, esto iniciará que el sensor transmita 8 ciclo de ráfaga ultrasónica a 40kHz y esperará la ráfaga ultrasónica reflejada. reflejada. Cuando el sensor detecta los ultrasonidos del receptor, pondrá el pin Echo en alto (5V) y retrasará un periodo (ancho) que es proporcional a la distancia. Para obtener la distancia, mida la ancho (Ton) del pin Eco.
Así es como estoy calculando la distancia en este momento,
Distance = Velocity of Sound * Time
Pero según la hoja de datos,
Time = Width of Echo pulse, in uS (micro second),
Distance in centimeters = Time / 58
Distance in inches = Time / 148
Or you can utilize the speed of sound, which is 340m/s
¿Cómo es que el Tiempo dividido por 58
o 148
da Distancia ?
También,
Algunos códigos en Internet ( http://www.bytecreation.com/blog/2013/10/13/raspberry-pi-ultrasonic-sensor-hc-sr04 ) sugiere que,
Distance = time * 17000 (in cm),
Esto es lo que dice esta página.
# calcular la diferencia de los dos tiempos registrados arriba para # calcular la distancia de un objeto frente al sensor tiempo transcurrido = señalon - señaloff
# we now have our distance but it's not in a useful unit of # measurement. So now we convert this distance into centimetres distance = timepassed * 17000
Cómo es que multiplicando el tiempo por 17000 se obtiene la distancia.