Encender un LED o Bombilla con Arduino y Ultrasónico – Cano electrónica

Encender un LED o Bombilla con Arduino y Ultrasónico

En este artículo aprenderá a encender un LED cuando el sensor ultrasónico detecte determinada distancia.

NOTA: Este artículo fue a petición de un usuario de Facebook, no nos especificaron el uso de este programa, pero intuimos que puede servir como alarma, cuando un objeto esté cerca de nuestra área de control encienda una alerta visual o sonora (se utilizaría un zumbador o buzzer).

En un artículo pasado, publicamos como encender una bombilla o LED aplaudiendo tres veces seguidas y si lo queríamos apagar debíamos aplaudir nuevamente 3 veces seguidas. Te dejamos aquí el artículo.

Para poder realizar este programa podemos consultar el artículo llamado ¿Qué es el módulo sensor ultrasónico? y uso en TinkerCAD.

Materiales:

1 x Arduino UNO
1 xMódulo Ultrasónico HC-SR04
1 xProtoboard 170 puntos
1 xLED 5mm
1 xResistencia 220 Ohm
1 xCables varios
Cuenta en TinkerCad

Circuito y conexión

Trigger -> PIN10
Echo -> PIN9
LED -> PIN2 (en lugar del LED podemos conectar un módulo de un relevador o un zumbador).

Si quieres simular este proyecto con TinkerCAD recuerda que el módulo ultasónico debe ser el de 4 pines. Tenemos que ir al menú que está en la parte derecha que dice “componentes”, seleccionamos todos.

Programa en Arduino.

/*
 * www.ProveedoraCano.com
 * Tutorial para medir una distancia con 
 * el módulo ultrasónico HC-SR04
 * al medir una distancia menor a 13cm enciende el LED
 * y se espera 3segundos para apagrse si la distancia medida
 *es mayor a 12cm
 */
const int Trigger = 10;   //Pin digital para el Trigger del sensor
const int Echo = 9;   //Pin digital para el Echo del sensor
const int ledPIN = 2;

void setup() {
  Serial.begin(9600);//inicializamos la comunicación
  pinMode(Trigger, OUTPUT); //se define pin como salida
  pinMode(ledPIN, OUTPUT); //se define pin como salida
  pinMode(Echo, INPUT);  //se define pin como entrada
  digitalWrite(Trigger, LOW);//Inicializamos el pin con 0
  digitalWrite(ledPIN , LOW);    // poner el Pin en LOW
}

void loop()
{

  long t; //timepo que demora en llegar el eco
  long d; //distancia en centimetros

  digitalWrite(Trigger, HIGH);
  delayMicroseconds(10);          //Enviamos un pulso de 10us
  digitalWrite(Trigger, LOW);     // se completa el pulso del ultrasonido
  
  t = pulseIn(Echo, HIGH); //obtenemos el ancho del pulso
  d = t/59;             //escalamos el tiempo a una distancia en cm
  
  Serial.print("Distancia: ");
  Serial.print(d);      //Imprimimos la distancia obtenida
  Serial.print("cm");
  Serial.println();
  if (d < 130 ) //si la distancia es menor a 130 enciende el LED
  {
  digitalWrite(ledPIN , HIGH);   // poner el Pin en HIGH
    delay (3000); // Se espera 3 segundos para apagarse si se supera la distancia de 130
  }
  else {
  digitalWrite(ledPIN , LOW);
  }
  delay(100);          //Hacemos una pausa de 100ms
}

Simulación con TinkerCAD

Te dejamos el proyecto en Tinkercad para que lo puedas examinar, si quieres ejecutarlo, da click en “Iniciar simulación”, para ver el código da click en “Código”.

Una vez que ejecutes la simulación, da un un click con el botón izquierdo del ratón sobre el módulo HC-SR04, en seguida se iluminará en verde claro el rango de medición y visualizaremos una bola de un tono verde mas fuerte. Dando click izquierdo sostenido sobre esta pelotita podemos moverla, si la acercamos lo suficiente al módulo se encenderá el LED.

Recuerda que para encender una bombilla que funcione a 120v o 220v, se conecta un módulo de relevador en lugar del led, quedando el circuito de la siguiente manera.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *