El sensor HC-SR04 es un sensor de distancia de bajo costo, su uso es muy frecuente en la robótica, utiliza transductores de ultrasonido para detectar objetos.
Su funcionamiento consiste en emitir un sonido ultrasónico por uno de sus transductores, y esperar que el sonido rebote de algún objeto presente, el eco es captador por el segundo transductor. La distancia es proporcional al tiempo que demora en llegar el eco.

Pasos a Seguir
- Realiza la siguiente conexión electrónica en tu arduino.

- Carga el siguiente código a arduino.
//Primero configuramos los pines y la comunicación serial a 9600 baudios const int Trigger = 2; //Pin digital 2 para el Trigger del sensor const int Echo = 3; //Pin digital 3 para el Echo del sensor void setup() { Serial.begin(9600);//iniciailzamos la comunicación pinMode(Trigger, OUTPUT); //pin como salida pinMode(Echo, INPUT); //pin como entrada digitalWrite(Trigger, LOW);//Inicializamos el pin con 0 } void loop() { long t; //timepo que demora en llegar el eco long d; //distancia en centimetros //Ahora en el bucle void loop() empezamos enviando un pulso de 10us al Trigger del sensor digitalWrite(Trigger, HIGH); delayMicroseconds(10); //Enviamos un pulso de 10us digitalWrite(Trigger, LOW); // Seguidamente recibimos el pulso de respuesta del sensor por el pin Echo, para medir el pulso usamos la función pulseIn(pin, value) t = pulseIn(Echo, HIGH); //obtenemos el ancho del pulso d = t/59; //escalamos el tiempo a una distancia en cm // por ultimo procedemos a imprimir la distancia en nuestro puerto serial Serial.print("Distancia: "); Serial.print(d); //Enviamos serialmente el valor de la distancia Serial.print("cm"); Serial.println(); delay(100); //Hacemos una pausa de 100ms }
¿Cómo Calculamos la Distancia?
La variable t, tiene el tiempo que dura en llegar el eco del ultrasonido, el siguiente paso es calcular la distancia entre el sensor ultrasónico y el objeto
Partimos de la siguiente formula:

Donde Velocidad es la velocidad del sonido 340m/s, pero usaremos las unidades en cm/us pues trabajaremos en centímetros y microsegundos, tiempo es el tiempo que demora en llegar el ultrasonido al objeto y regresar al sensor, y la distancia recorrida es dos veces la distancia hacia el objeto, reemplazando en la formula tenemos:

Dando como resultado el la variable d que podemos observar en la línea 28 de nuestro código.
Para finalizar procedemos a abrir nuestro monitor serial y obtendremos la distancia medida por nuestro sensor.
Prueba
Procede a encender o apagar el motor DC cada vez que la distancia del sensor HC SR04 llegue a una distancia de 5cm, si la distancia es mayor a 5 cm el motor estará apagado, si la distancia es menor a 5cm el motor se encenderá.