Aprende Robótica y Tecnología

● Nivel iniciación-medio

Sensor de aparcamiento con Arduino

¿Conoces el "pi... pi... piii" del sensor de aparcamiento de los coches? Vas a construir el tuyo. Un sensor de ultrasonidos mide la distancia a un obstáculo y un zumbador pita cada vez más rápido según te acercas, hasta sonar continuo cuando casi tocas. Es un proyecto que entra por los ojos (y por los oídos) y te enseña a usar sensores de verdad.

Sensor de ultrasonidos HC-SR04 conectado a Arduino para un sensor de aparcamiento
Nivel
Iniciación-medio
Placa base
Arduino UNO
Sensor
Ultrasonidos HC-SR04
Tiempo
Una tarde

Qué vas a aprender

Cómo funciona un sensor de ultrasonidos y cómo medir distancias con él (igual que el sónar de un murciélago), a hacer sonar un zumbador con distintos ritmos desde el código, y a tomar decisiones en tu programa con condicionales: "si está cerca, pita rápido; si está lejos, calla". Un salto natural desde encender LEDs a trabajar con sensores reales.

Qué necesitas

Placa Arduino UNO Comprar
Sensor de ultrasonidos HC-SR04 Comprar
Zumbador (buzzer) Comprar
Protoboard (placa de pruebas) Comprar
Cables de conexión Comprar

Como afiliado de Amazon, obtengo ingresos por las compras adscritas que cumplen los requisitos aplicables. A ti no te cuesta nada más.

Paso 1: Diseña el circuito en Tinkercad

Como siempre, antes de tocar cables vamos a montarlo en el ordenador. En Tinkercad puedes colocar el Arduino, el sensor de ultrasonidos y el zumbador, conectarlos y comprobar que todo encaja sin gastar ni romper nada. Monta este esquema y fíjate bien en qué pin va cada cosa: es justo lo que replicarás después en real.

Esquema del sensor de aparcamiento con Arduino, HC-SR04 y buzzer en Tinkercad

Paso 2: Entiende las conexiones

El sensor HC-SR04 tiene cuatro patas: dos para alimentarlo (VCC y GND) y dos para hablar con el Arduino (Trig, que envía el pulso, y Echo, que recibe el rebote). El zumbador solo necesita dos: positivo y negativo.

Sensor HC-SR04
• VCC → 5V del Arduino
• GND → GND del Arduino
• Trig → pin 9
• Echo → pin 10

Zumbador (buzzer)
• Pata + → pin 8
• Pata – → GND

Usamos la protoboard para repartir el GND y los 5V: así el sensor y el zumbador comparten la misma tierra y alimentación sin liarte con los cables.

Paso 3: Monta el circuito de verdad

Coloca el sensor y el zumbador en la protoboard y ve conectando los cables al Arduino según el esquema. Tómate tu tiempo y compara con las fotos: fíjate sobre todo en que Trig y Echo no se te crucen, que es el fallo más típico.

Montaje del sensor de aparcamiento con Arduino, HC-SR04 y zumbador en protoboard
Sensor de aparcamiento con Arduino montado en protoboard con HC-SR04 y buzzer

Paso 4: Programa el sensor

Abre el Arduino IDE, conecta la placa y sube este código. Está comentado paso a paso. Una vez cargado, abre el Monitor Serie (arriba a la derecha, a 9600 baudios) y verás la distancia en centímetros en tiempo real mientras acercas la mano.

// Sensor de aparcamiento con Arduino
// Pines del sensor de ultrasonidos y del zumbador
const int pinTrig = 9;
const int pinEcho = 10;
const int pinBuzzer = 8;

long duracion;
int distancia;

void setup() {
  pinMode(pinTrig, OUTPUT);
  pinMode(pinEcho, INPUT);
  pinMode(pinBuzzer, OUTPUT);
  Serial.begin(9600);   // para ver la distancia en el monitor serie
}

void loop() {
  // Enviar el pulso de ultrasonidos
  digitalWrite(pinTrig, LOW);
  delayMicroseconds(2);
  digitalWrite(pinTrig, HIGH);
  delayMicroseconds(10);
  digitalWrite(pinTrig, LOW);

  // Medir cuánto tarda el eco en volver
  duracion = pulseIn(pinEcho, HIGH);
  // Calcular la distancia en centímetros
  distancia = duracion * 0.034 / 2;

  Serial.print("Distancia: ");
  Serial.print(distancia);
  Serial.println(" cm");

  // Cuanto más cerca, más rápido pita
  if (distancia > 50) {
    noTone(pinBuzzer);              // lejos: silencio
  } else if (distancia > 20) {
    tone(pinBuzzer, 1000);          // distancia media: pitido lento
    delay(100);
    noTone(pinBuzzer);
    delay(400);
  } else if (distancia > 5) {
    tone(pinBuzzer, 1000);          // cerca: pitido rápido
    delay(100);
    noTone(pinBuzzer);
    delay(150);
  } else {
    tone(pinBuzzer, 1000);          // muy cerca: pitido continuo
  }
}

Acerca la mano al sensor: el zumbador empieza a pitar lento sobre los 50 cm, más rápido al acercarte y continuo por debajo de 5 cm. ¡Igual que aparcando! 🚗 Prueba a cambiar las distancias (50, 20, 5) para ajustar la sensibilidad a tu gusto.

¿Quieres seguir aprendiendo?

Si te ha gustado trabajar con sensores y quieres dar el salto a proyectos más grandes, en mis clases particulares lo vemos paso a paso.

Ver clases particulares