Tabla de contenido:
- Paso 1: El diseño ESP8266-01
- Paso 2: la fuente de alimentación
- Paso 3: Montaje de la placa de circuito impreso
- Paso 4: Prueba de la placa de circuito impreso
- Paso 5: el recinto
- Paso 6: Programación del ESP8266-01 / NodeMCU
- Paso 7: Configuración inicial
- Paso 8: configuración del temporizador de IoT
Video: Temporizador inteligente ESP8266-01 IoT para automatización del hogar: 9 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
ACTUALIZACIONES
2018-09-30: Firmware actualizado a la versión 1.09. Ahora con el soporte básico de Sonoff
2018-01-10: Versión de prueba de firmware 1.10 disponible para probar en ESP8266-01 con problemas
Con las nuevas palabras de moda como Internet de las cosas (IoT) y Automatización del hogar, decidí mirar los elementos actuales dentro y alrededor de mi hogar que se controlan a través de algún tipo de dispositivo. Los ítems que se destacaron, son los siguientes:
- Bomba de piscina
- Llenadora de agua para piscina
- Piscina y luces circundantes
- Luces del gabinete del sistema de TV / entretenimiento
El elemento común que se utiliza para controlar estos dispositivos son los temporizadores de enchufe de pared estándar. Cada dispositivo está equipado con su propio temporizador y todos están ubicados en diferentes ubicaciones. Entonces, ¿por qué elegí estos elementos para comenzar con proyectos de Internet de las cosas o de automatización del hogar?
Bueno, vivir en Sudáfrica significa que los cortes de energía son algo habitual. Con las estadísticas de mi casa, tuve 35 cortes de energía en el último año, totalizando 40 horas. Normalmente, esto no es un problema, ya que todos los temporizadores instalados actualmente están equipados con una batería de respaldo para mantener el tiempo durante cortes de energía. Pero hay algunos problemas:
- Estas baterías de respaldo solo duran uno o dos años, luego el temporizador debe ser reemplazado. Los temporizadores están construidos de manera que es necesario destruir el temporizador para acceder a la batería interna de Ni-Cad.
- Cada vez que falla la energía, es necesario reprogramar los temporizadores con baterías defectuosas y establecer la hora.
- La ubicación física del temporizador, cuando se conecta a la toma de corriente, hace que sea casi imposible leer las pantallas LCD viendo el temporizador desde la parte superior. Esto significa que es necesario desenchufar el temporizador o que tengo que acostarme en el suelo para configurar o ajustar los temporizadores después de un corte de energía.
Debido a las razones anteriores, decidí probar la posibilidad de reemplazar los temporizadores con un temporizador inteligente de IoT, conectado a mi red doméstica local.
La idea era diseñar un temporizador independiente que pudiera:
- Ajustar automáticamente la hora actual usando Internet (IoT)
- Operado sin ninguna acción del usuario (inteligente)
- Activar / desactivar una salida según las horas establecidas (temporizador)
- Programable y controlable a través de la red (domótica)
Paso 1: El diseño ESP8266-01
El diseño se realizó usando un módulo WiFi ESP8266-01, ya que esto es lo que tenía disponible. En su forma más simple, el ESP8266-01 tiene cuatro pines de E / S:
- GPIO0
- GPIO2
- TX
- RX
Modos de encendido del ESP8266-01
El estado lógico de los pines de E / S se utiliza para determinar en qué modo arrancará el ESP8266-01. El primer paso fue determinar cuál de los pines de E / S se puede utilizar para impulsar un relé de salida.
- Para un encendido normal, GPIO0 y GPIO2 deben configurarse en lógica ALTA. Por lo tanto, está claro que estos dos pines no se pueden usar como salida digital.
- El pin Tx se establece como una salida al encender y la salida se establece en alto. Este pin Tx también transmite algunos datos en serie durante el encendido. Por lo tanto, este pin tampoco se puede utilizar como salida.
El único pin restante es el pin Rx. Este pin se establece como entrada en el encendido y no tiene que ser elevado durante el encendido. Este pin es, por tanto, el más adecuado para ser utilizado como pin de salida.
Arrancar
Para garantizar el modo de arranque correcto del ESP8266-01 durante el encendido, los siguientes pines se elevan con resistencias de 10K:
- GPIO0
- GPIO2
- RST
- CH_PD
Esto asegura que la unidad se inicie correctamente cada vez.
Relé de salida
El RX es el único pin adecuado para usarse como salida. Por lo tanto, este pin se utiliza para impulsar el relé de salida a través de un transistor NPN. Se agregaron las resistencias de base de transistor y diodo de volante estándar.
Botón MODE / SET
El botón está conectado a GPIO2, y con el botón suelto, una resistencia de 10K elevará GPIO2 hacia arriba. Con el botón presionado, GPIO2 se lleva a 0V.
Este botón se utiliza para dos funciones:
- Configuración inicial para conectar la unidad a una red WiFi local
- Para controlar manualmente la salida durante las operaciones normales
LED de indicación
El LED está conectado a GPIO0 e indica lo siguiente:
- En el encendido inicial, parpadea RÁPIDO para indicar el modo de configuración de WiFi
- Parpadea lentamente cuando la hora de la unidad no está configurada
- indica el estado de encendido / apagado del relé de salida
Paso 2: la fuente de alimentación
Usaré el temporizador inteligente de IoT en diferentes niveles de voltaje, por lo tanto, hay dos opciones de fuente de alimentación disponibles:
12 - 24 V CC
El convertidor CC-CC utilizado es adecuado para suministros de hasta 28 V CC. La salida del convertidor es ajustable y está configurada en 5V. Esto debe hacerse antes de conectar el módulo ESP8266.
Se agregó un diodo para proteger contra la polaridad inversa en la entrada de suministro.
220 V CA Para esta opción, pude obtener una pequeña fuente de alimentación conmutada de 220 V / 5 V en eBay.
Independientemente del voltaje de entrada, el temporizador inteligente de IoT necesita dos fuentes de alimentación:
Carril de 5V
Con ambas opciones, el 5V DC se obtiene de una fuente de alimentación de modo conmutado y no de un regulador lineal. Esto significa que la fuente de alimentación genera un calor mínimo. Los 5 V se utilizan para impulsar el relé de salida.
Carril de 3,3 V
El 3.3V para el ESP8266-01 se obtiene de un regulador ASM1117 3.3. El ASM1117 3.3 es un regulador lineal y puede manejar hasta 500 mA. Sin embargo, el calor generado estará determinado por el voltaje de entrada al ASM1117. Para reducir el calor, el ASM1117 se alimenta desde el riel de 5V.
Filtrado de ruido
Para reducir la fluctuación de voltaje en el ESP8266-01, el riel de 3.3V está equipado con un capacitor de 100 - 1000uf. Los rieles de 5 V y 3,3 V también están protegidos de interferencias de alta frecuencia mediante condensadores de 0,1 uf.
Paso 3: Montaje de la placa de circuito impreso
La placa de circuito impreso se diseñó utilizando la versión gratuita de Eagle. Es una placa de una sola cara, que se puede hacer fácilmente en casa utilizando el método de transferencia de tóner.
Una vez hecha la placa de circuito impreso, monte la placa de circuito impreso en el siguiente orden:
- Suelde el regulador ASM1117 y tres componentes SMD de 0,1 uf al lado de soldadura de la placa
- Agregue el puente único al lado del componente de la placa
- Suelde las resistencias y los diodos en su lugar
- Agregue los encabezados para el módulo ESP8266-01
- Agregue los pines de encabezado para el LED y el botón
- Agregue los terminales de tornillo
- Con los pines del cabezal, conecte el convertidor CC / CC a la placa.
- Suelde el relé en su lugar
- Complete la placa soldando el transistor y el condensador de 100 uf.
Una vez que todos los componentes estén soldados a la placa, verifique todos los puntos de soldadura y asegúrese de que no haya cortocircuitos entre las almohadillas.
! ! ! NOTA IMPORTANTE ! ! ! Para asegurarse de que la placa de circuito impreso pueda manejar grandes corrientes en los contactos de salida, aplique una cantidad decente de soldadura a las pistas entre los contactos del relé y los terminales de tornillo
Paso 4: Prueba de la placa de circuito impreso
! ! ! ¡Antes de aplicar energía! ! !
Retire el módulo ESP8266-01 de la unidad. Esto es para evitar el sobrecalentamiento del regulador ASM1117 antes de que se ajuste el suministro de 5V.
No hay muchas pruebas que se puedan realizar después del ensamblaje. El paso más importante es asegurar los niveles de voltaje correctos.
- Aplique 12 - 24 V CC a la unidad.
- Mida el voltaje de salida del convertidor DC / DC
- Ajuste la salida del convertidor entre 5,0 y 5,5 V.
- Luego, mida el suministro de 3.3V.
- Si los suministros están bien, desconecte la energía de la unidad
Ahora puede insertar el módulo ESP8266-01 en los encabezados proporcionados.
! ! ! Nota !
Una vez que haya probado el temporizador de IoT y esté funcionando, use laca transparente para cubrir el lado de soldadura de la placa de circuito impreso. Esto evitará la oxidación de las vías y proporcionará un aislamiento adicional entre los contactos del relé y el resto del circuito
Paso 5: el recinto
El gabinete no es tan importante, siempre que la placa de circuito impreso y todo el cableado encajen de manera ordenada y segura en él.
Para facilitar la construcción, he creado un cable con el LED y el botón MODE / SETUP conectados a él. Esto me dio más flexibilidad para montar el LED y el botón en el gabinete. Luego, este cable se conecta al encabezado de la placa de circuito impreso.
Las fotos muestran una de las unidades de 12V utilizadas para luces LED.
Paso 6: Programación del ESP8266-01 / NodeMCU
Para programar el ESP8266-01, primero debe configurar el IDE de Arduino. No voy a entrar en estos detalles, ya que hay muchos excelentes Instructables disponibles sobre este tema. He elegido los siguientes enlaces en Instructables como referencia, sin ningún orden específico para los autores. Gracias por sus Instructables individuales.
Siga este ESP8266 y Arduino IDE para configurar el Arduino IDE para el módulo ESP8266.
A continuación, necesitará un programador para programar el ESP8266. Aquí hay dos enlaces:
Usando Arduino Uno
Tablero de programación de bricolaje
Bibliotecas
Deberá instalar bibliotecas adicionales para poder compilar el código. Nuevamente, consulte este Instructable:
Instalar y usar bibliotecas Arduino
No recuerdo qué bibliotecas tuve que instalar, pero sé que WiFiManager debe descargarse por separado. Las he incluido en el archivo Libraries.zip.
Paso 7: Configuración inicial
Cuando se usa por primera vez, el temporizador inteligente de IoT debe estar conectado a una red WiFi. Esta tarea se realiza mediante la biblioteca WiFiManager, por lo que no es necesario escribir SSID o contraseñas en el código.
Siga estos pocos pasos:
- Enciende la unidad
- El LED comenzará a parpadear rápidamente
- Presione el botón MODE / SETUP
- Cuando el LED se apague, suelte el botón
- Espere unos segundos, luego abra las conexiones WiFi de su teléfono inteligente o dispositivo
- Una nueva red WiFi llamada IoT Timer será visible
- Seleccione este punto de acceso
- Inicie sesión en el temporizador de IoT (no se requiere contraseña)
- Espere hasta que su dispositivo esté conectado a la red IoT Timer
- Abra cualquier navegador de Internet
- En la barra de direcciones, escriba la siguiente dirección IP: 192.168.4.1
- Se abrirá la consola WiFiManager
- Seleccione Configurar WiFi
- Se mostrará una lista con los puntos de redes WiFi disponibles.
- Seleccione la red WiFi requerida y escriba la contraseña
- A continuación, ingrese la dirección IP que desea usar para conectarse al temporizador de IoT
- Ingrese la dirección IP de la puerta de enlace predeterminada, seguida de la máscara
- Una vez que todas las configuraciones estén hechas, haga clic en el botón Guardar
- Se abrirá una nueva ventana para confirmar que se guardaron las nuevas credenciales.
- Cierra tu navegador
Una vez guardado, la red del temporizador de IoT se apagará y la unidad intentará conectarse a su red WiFi.
- Conecte su teléfono inteligente o dispositivo a la misma red WiFi que se utilizó para el temporizador de IoT.
- Abre tu navegador
- En la barra de direcciones, escriba la dirección IP de su temporizador de IoT
- Se abrirá la página de configuración del temporizador de IoT
Su temporizador de IoT ahora está listo para usar
Paso 8: configuración del temporizador de IoT
La página web incorporada de IoT Timer consta de cinco secciones:
Estado
Esto muestra el nombre del dispositivo, así como la hora actual y el estado de salida del temporizador.
Además, el modo de funcionamiento del temporizador se configura en esta sección. Hay tres modos:
- Auto - La salida será controlada por los diferentes programas de temporizador.
- Encendido: la salida está encendida y permanecerá encendida hasta que se cambie el modo.
- Apagado: la salida se fuerza a APAGAR y permanecerá apagada hasta que se cambie el modo.
Programas
Esta sección contiene las horas de encendido y apagado del temporizador. Hay siete programas disponibles y cada programa se puede configurar individualmente.
Antes de cambiar el siguiente programa, presione el botón GUARDAR para guardar los cambios realizados en el programa actual.
Función de botón
El botón MODE / SETUP se puede utilizar para controlar el relé de salida durante el funcionamiento normal. Aquí, seleccione lo que debe hacer el botón cuando se presiona.
Marque la casilla "Actualizar función del botón" antes de presionar el botón Guardar para guardar la nueva configuración.
Configuración
Aquí puede cambiar el nombre del temporizador de IoT. Esto facilita la identificación entre varios temporizadores.
La hora en la unidad se obtiene de Internet a través de un servidor de hora NTP. Para mostrar la hora correcta, actualice la zona horaria de su región.
Si desea utilizar un servidor de hora NTP diferente, ingrese la nueva dirección IP en el espacio provisto.
Marque la casilla "Actualizar configuración" antes de presionar el botón Guardar para guardar la nueva configuración.
NOTA
Al cambiar la zona horaria, la nueva hora solo se configurará correctamente durante la próxima consulta de hora. La unidad está configurada para actualizar la hora cada 5 minutos.
Ajuste de tiempo
A veces, sucede que el servidor de tiempo NTP no responde en cada consulta de tiempo. En caso de que tarde demasiado en establecerse a través del servidor NTP, puede introducir la fecha y la hora manualmente.
Marque la casilla "Actualizar hora" antes de presionar el botón Guardar para guardar la nueva fecha y hora.
Sincronización de tiempo
La última parte de la página indica la hora y la fecha en que se sincronizó por última vez a través del servidor de hora NTP.
Recomendado:
Cómo hacer una casa inteligente usando el módulo de relé de control Arduino »Wiki Ùtil Ideas de automatización del hogar: 15 pasos (con imágenes)
Cómo hacer una casa inteligente con el módulo de relé de control Arduino »Wiki Ùtil Ideas de automatización del hogar: en este proyecto de automatización del hogar, diseñaremos un módulo de relé inteligente para el hogar que puede controlar 5 electrodomésticos. Este módulo de relé se puede controlar desde un teléfono móvil o teléfono inteligente, control remoto IR o control remoto de TV, interruptor manual. Este relé inteligente también puede detectar el r
Automatización del hogar controlada por Internet / nube con Esp8266 (aREST, MQTT, IoT): 7 pasos (con imágenes)
Automatización del hogar controlada por Internet / nube usando Esp8266 (aREST, MQTT, IoT): ¡TODOS los créditos a http://iest.io/ por el servicio en la nube! ¡IoT es el tema más discutido en el mundo ahora mismo! Los servidores y servicios en la nube que hacen esto posible es el punto de atracción del mundo de hoy … ELIMINAR LA BARRERA DE DISTANCIA fue y es el
Montaje en pared para iPad como panel de control de automatización del hogar, usando un imán controlado por servo para activar la pantalla: 4 pasos (con imágenes)
Soporte de pared para iPad como panel de control de automatización del hogar, usando un imán controlado por servo para activar la pantalla: Últimamente he pasado bastante tiempo automatizando cosas dentro y alrededor de mi casa. Estoy usando Domoticz como mi aplicación de automatización del hogar, consulte www.domoticz.com para obtener más detalles. En mi búsqueda de una aplicación de panel que muestre toda la información de Domoticz junta
Lámpara DIY IoT para automatización del hogar -- Tutorial ESP8266: 13 pasos (con imágenes)
Lámpara DIY IoT para automatización del hogar || Tutorial ESP8266: En este tutorial vamos a hacer una lámpara inteligente conectada a Internet. ¡Esto profundizará en Internet de las cosas y abrirá un mundo de domótica! La lámpara está conectada a WiFi y construida para tener un protocolo de mensaje abierto. Esto significa que puede seleccionar
Automatización del hogar más simple con Bluetooth, teléfono inteligente Android y Arduino: 8 pasos (con imágenes)
Automatización del hogar más simple con Bluetooth, teléfono inteligente Android y Arduino .: Hola a todos, Este proyecto se trata de construir el dispositivo de automatización del hogar más simplificado usando un arduino y un módulo bluetooth. Éste es muy fácil de construir y se puede construir en unas pocas horas. En mi versión que estoy explicando aquí mismo, puedo