Música que me gusta.

jueves, 19 de enero de 2023

Proyecto domótico con Arduino controlado por ondas electromagnéticas infrarrojas

Hola a todos.

Hoy os voy a enseñar el desarrollo desde los componentes básicos de un proyecto domótico incluyendo su programación. Mediante un control remoto infrarrojo vamos a encender 4 bombillas, mover un motor servo y encender una alarma.

El montaje que he considerado es el siguiente:


Funcionamiento:

  • Botón 1: Enciende/apaga bombilla 1.
  • Botón 2: Enciende/apaga bombilla 2.
  • Botón 3: Enciende/apaga bombilla 3.
  • Botón 4: Enciende/apaga bombilla 4.
  • Botón 5: Apaga todas las bombillas.
  • Botón 6: Enciende todas las bombillas.
  • Botón 7: Mueve el motor a la izquierda.
  • Botón 8: Mueve el motor a la derecha.


La programación en C++ es algo complicada, el código es muy largo, os resumiré puntos importantes a continuación:

Tenemos que incluir las librerías del servo y el control infrarrojo al principio del programa:

#include <Servo.h>
#include <IRremote.h>


Para iniciar el loop de programación del control remoto construimos el siguiente bloque:
void loop() //algoritmo de la programación que se repitará siempre
{
if (sensor.decode(&lectura)) //Si hay una lectura del sensor IR (Se ha pulsado el control remoto)
{
switch (lectura.value) //cuando cambia alguna tecla
{

Para cada lámpara y la alarma programamos lo siguiente:

case 0xFD08F7: //código de frecuencia botón 1
      if (led1 == 1)
        {
        digitalWrite(13,LOW); //si estaba encendido, lo apaga
        led1 = 0;
        }
      else  
        {
        digitalWrite(13,HIGH); //si estaba apagado, lo enciende
        led1 = 1;
        }
      break;

Importante, los códigos de frecuencia de cada botón (Ejemplo, botón 1: 0xFD08F7), los obtenemos de la siguiente tabla:






No hay comentarios:

Publicar un comentario

Funcionamiento de la TV

Hola a todos. Hoy os voy a presentar y comentar unos vídeos que explican primero el funcionamiento de la TDT y luego de la reproducción en u...