Encender led con un sensor ultrasónico en ESP32

Encender led con un sensor ultrasónico en ESP32

En este tutorial vamos a encender led con un sensor ultrasónico en ESP32 detectando la proximidad con un sensor de distancia HC-SR04 que al detectar cualquier objeto a menos de 20 cm de distancia encenderá un led.

¿Qué es un sensor ultrasónico?

Como su nombre lo indica, es un sensor que detecta la distancia entre algún objeto y el mismo sensor. Su funcionamiento es muy sencillo. El sensor ultrasónico emite un sonido ultrasónico y recibe el sonido restando el tiempo que tardo entre emitirse y recibirse calculando la distancia.

Requerimientos:

  • Sensor HC-SR04.
  • Un led.
  • Una resistencia de 330 Ω.

Pasos:

  • Conectamos el led a la tierra a través de una resistencia de 330 Ohms.
  • Conectamos el pin D2 del ESP32 al ánodo del led.
  • Conectamos la corriente VIN del sensor de distancia a la corriente VCC del ESP32.
  • Conectamos la tierra GND del sensor de distancia a la tierra GND del ESP32.
  • Conectamos el pin D12 al eco (Generador de ruido) del sensor de distancia.
  • Conectamos el pin D13 al trig (Receptor de ruido) del sensor de distancia.

Código y diagrama: https://wokwi.com/projects/343118872517280339

Encender led con un sensor ultrasónico en ESP32
Encender led con un sensor ultrasónico en ESP32

Código:

int DISTANCIA = 0;
int pinLed=2;
int pinEco=12;
int pinGatillo=13;
long readUltrasonicDistance(int triggerPin, int echoPin)
{
  //Iniciamos el pin del emisor de reuido en salida
  pinMode(triggerPin, OUTPUT);
  //Apagamos el emisor de sonido
  digitalWrite(triggerPin, LOW);
  //Retrasamos la emision de sonido por 2 milesismas de segundo
  delayMicroseconds(2);
  // Comenzamos a emitir sonido
  digitalWrite(triggerPin, HIGH);
  //Retrasamos la emision de sonido por 2 milesismas de segundo
  delayMicroseconds(10);
  //Apagamos el emisor de sonido
  digitalWrite(triggerPin, LOW);
  //Comenzamos a escuchar el sonido
  pinMode(echoPin, INPUT);
  // Calculamos el tiempo que tardo en regresar el sonido
  return pulseIn(echoPin, HIGH);
}

void setup() {
  Serial.begin(115200);
  //Configuramos el pin del led como salida
  pinMode(pinLed, OUTPUT);
}

void loop() {
  //Calculamos la distancia en cm
  DISTANCIA = 0.01723 * readUltrasonicDistance(pinGatillo, pinEco);
  //Mostramos la disstancia
  Serial.println(DISTANCIA);
  //Si la distancia es menor a 20 encendemos el led
  if (DISTANCIA < 20) {
    digitalWrite(pinLed, HIGH);
  } 
  //Si la distancia es mayor a 20 apagamos el led
  else {
    digitalWrite(pinLed, LOW);
  }
  delay(10);
}

sensor distancia
Encender led con un sensor ultrasónico en ESP32
Encender led con un sensor ultrasónico en ESP32

🎦 Este curso: https://www.youtube.com/watch?v=VuJkqL2Ys3Y&list=PLCTD_CpMeEKTvjzabAvLGHakg-ql6t0q6&ab_channel=ProgramadorNovato

🎦 Curso de Arduino: https://www.youtube.com/watch?v=oGinJt9aALc&list=PLCTD_CpMeEKSqw3Nh7rA9aXUAzbPIPkdv&ab_channel=ProgramadorNovato

🎦 [CURSO] C++ DE 0 A HEROE: https://www.youtube.com/watch?v=APN8aCyPvww&list=PLCTD_CpMeEKTofxs7iottRxJ5YPM7BOcc

<<Anterior tutorial Siguiente tutorial >>

Los comentarios están cerrados.