Professional Documents
Culture Documents
Otra opción es recurrir al sonido, de la misma forma que se usa en barcos (Sonar) y en algunos
animales (Ecolocación).
El Sensor
HC-SR04
El HC-SR04 es un sensor ultrasónico, que opera básicamente como lo detallado
anteriormente, para tal fin tiene un transmisor y un receptor. Con el mismo, se pueden obtener
medidas desde 2cm hasta los 400cm, con una resolución de 0.3cm.
El sensor tiene 4 pines, dos los necesarios para la alimentación (trabaja con 5V) y dos más
que son necesarios para iniciar el proceso de medición y obtener los datos para el cálculo de
la distancia.
Para comenzar con la medición el sensor debe recibir un pulso en alto en el pin de disparo
(trigger), con una duración de al menos 10us, esto inicia una transmisión de 8 ciclos de una
ráfaga de ultrasonido a 40khz. Cuando el receptor detecta el eco, pone el pin Echo en alto
(5V) por un tiempo igual al que tardo el sonido en salir y volver (se encuentra en el orden de
los us). En el diagrama temporal se observa el modo de operación.
Diagrama temporal
void setup() {
// Configuracion del LCD 16x2
lcd.begin(16, 2);
pinMode(9, OUTPUT); //Pin D9 como salida
pinMode(8, INPUT); //Pind D8 como entrada
void loop() {
lcd.clear(); //Limpio el LCD
lcd.setCursor(0, 0); //Ubico el cursor
digitalWrite(9,LOW);
delayMicroseconds(5);
digitalWrite(9, HIGH); //Inicio el proceso de medicion
delayMicroseconds(10); //El pulso de disparo debe estar en alto por
10us
tiempo=pulseIn(8, HIGH); //Funcion para medir el tiempo en alto del pin
echo
distancia= int(0.01653*tiempo); //Convierto los us en cm, el tiempo es
proporcional a la distancia
lcd.print("Distancia: ");
lcd.print(distancia);
lcd.print("cm");
delay(500);
}