← Todos los proyectos
Proyecto práctico · Nivel Intermedio

Barrera automática con sensor ultrasónico

Aprenderás a medir distancia y mover un servomotor según una condición. En esta guía encontrarás un montaje concreto, criterios de conexión y un programa funcional de referencia para este circuito.

Montaje ilustrado de Barrera automática con sensor ultrasónico

¿Qué vas a construir?

Un prototipo funcional pensado para practicar electrónica y programación con Arduino. La ilustración muestra la disposición conceptual de los componentes y sirve como referencia visual del montaje.

Materiales

  • Arduino Uno
  • HC-SR04
  • servomotor SG90
  • protoboard y jumpers

Cómo funciona

El Arduino recibe las señales de entrada, ejecuta la lógica del programa y controla las salidas. Antes de energizar, verifica polaridad, GND común y el valor de las resistencias. Los pines indicados son una propuesta de montaje y pueden adaptarse si modificas el código.

Cómo van las conexiones

Usa esta tabla junto con el diagrama para montar el circuito. Los pines corresponden al programa incluido en este proyecto.

Componente / terminalConectar a Arduino
HC-SR04 VCC5V
HC-SR04 TRIGD7
HC-SR04 ECHOD6
HC-SR04 GNDGND
SG90 señalD9
SG90 rojo5V
SG90 marrón/negroGND

El servo usa D9 para la señal. Si el servo consume demasiado, aliméntalo con una fuente externa de 5 V y une su GND con el GND del Arduino.

Diagrama detallado de conexiones de Barrera automática

Programación

Este es un ejemplo funcional para el montaje descrito:

#include <Servo.h>

Servo barrera;
const int TRIG = 7;
const int ECHO = 6;

void setup() {
  barrera.attach(9);
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
  barrera.write(0);
}

float distanciaCM() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);
  long tiempo = pulseIn(ECHO, HIGH, 30000);
  if (tiempo == 0) return 999;
  return tiempo * 0.0343 / 2.0;
}

void loop() {
  float d = distanciaCM();
  if (d <= 15) {
    barrera.write(90);
    delay(2500);
  } else {
    barrera.write(0);
  }
  delay(100);
}

Prueba y ajustes

Componentes que necesitas

Consulta directamente los componentes disponibles en Fasantronic para replicar este proyecto.

Ver todos los componentes →