DISEÑO Y CONSTRUCCIÓN DE UN
CONTROLADOR DE FOCOS RESIDENCIAL
VIA WiFi CON EL ESP-01 (ESP8266).
Ing. Alfredo Segura,
marzo de 2022.
Luego de leer y estudiar con interés el proyecto de seta43 en su
página: http://seta43.blogspot.com/search?q=esp8266
“ESP8266 WebServer. Encender LED desde navegador” que resultó
buenísimo, me di a la tarea de modificar un poco la programación en
Arduino para, dejar solamente un pin de control, el cual activa un
transistor BC548, y éste a su vez, un relé de 5VCD, cuyas terminales
de contacto controlan un foco o lámpara de que tengo en mi casa.
Por supuesto hice una tarjeta electrónica por cada uno de los focos
a controlar desde WiFi, aprovechando mi modem de banda ancha:
En cada tarjeta se ha insertado una fuente de poder de 5.1VCD,
extraída de un cargador chino muy económico y bastante confiable:
Lleva un ESP-01, el cual aún es de costo bajo (unos 2 euros), el
cual es programado con el IDE de Arduino, eligiendo la tarjeta Generic
ESP8266 Module:
Nota: He leído que es mejor elegir la “Upload Speed: a 57600”, para
este módulo en particular, sin embargo podrán hacerse pruebas con
velocidades más altas.
Además se ha colocado un Regulador de 3.3V a 800 mA, como el AMS1117
de montaje superficial, que considero ideal para esta aplicación.
La salida GPIO0 del ESP-01 se lleva mediante una resistencia de 10K
a la base de un transistor NPN, BC548, cuyo colector excita a un
relé de 5VCD. El transistor se protege con un diodo 1N4148 conectado
en su colector y tierra (masa), polarizado inversamente, el cual
absorberá los picos transitorios negativos, que la bobina del
Relevador produce, tanto al energizarse como al desconectarse.
Los contactos del relevador, COM y NO (Común y Normal Open), se
alambran para encender el Foco o Lámpara a controlar.
El diagrama de las tarjetas es el siguiente:
Cada ESP-01, se programa con el archivo ESP-01_FocoOnOffWiFi.ino al
cual se le pone una IP diferente. Por ejemplo, si el modem de
Internet de nuestra casa tiene la IP 192.168.0.1, se eligen las IP
como:
192.168.0.195, para controlar un foco en el
patio trasero
192.168.0.196, para controlar un foco en el patio delantero
192.168.0.197, para controlar un foco en el comedor
192.168.0.198, para controlar un foco en la sala
Finalmente, debe armarse una tarjeta similar a las demás, a la cual
no se le colocarán las resistencias de 10K, 38K, el transistor
BC548, el Diodo 1N4148, y el relé. Ésta tarjeta funcionará como
LandWeb, desde la cual se podrán acceder todas las direcciones de
los focos a controla.
Elegí la IP de esta LandWeb como 192.168.0.201, cuyo ESP-01 se
programa con el archivo de Arduino ESP-01_FocoWeb.ino, el cual
contiene una simple página html, en donde están los links de cada
uno de los ESP-01’s que controlan focos. Esta página html contiene
lo siguiente:
En mi caso, que tengo un hogar bastante modesto, tengo los focos de
cada zona en zócalos como el siguiente:
Éste zócalo tiene la ventaja de que cuenta con un gran espacio en su
interior, en donde cabe perfectamente la tablilla electrónica, y al
ser de plástico, la señal WiFi del ESP-01 no se bloquea.
Finalmente el modo de conectar la tablilla electrónica y los cables
del foco, dentro de éste zócalo, se muestra a continuación. Hay que
aclarar que el programa de Arduino está pensado, para que en el
momento en que se accione el interruptor propio del foco ( el cual
ha de estar seguramente en la pared de cada habitación o zona), éste
se encienda, tal como lo haría el propio interruptor sin nuestro
dispositivo. Así que luego desde un smartPhone, se accede a la IP
192.168.0.201 que es la LandWeb, que hemos de tener encendida (y en
su respectiva caja, en algún lugar de la casa), desde donde podremos
controlar el resto de los focos de la casa, que tengamos preparados
con este dispositivo.
Este proyecto se pone a disposición de los entusiastas electrónicos,
para que lo utilicen tal cual, lo modifiquen para mejorarlo, o les
de ideas para nuevos proyectos.
PROGRAMAS
Ing. Alfredo Segura
Marzo de 2022.