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 >>

Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

En Programador Novato vivimos de los anuncios, hemos detectado que está utilizando extensiones para bloquear anuncios. Ayudanos deshabilitando tu bloqueador de anuncios. :)