Tabla de contenido:

Controlador de red IoT. Parte 9: IoT, automatización del hogar: 10 pasos (con imágenes)
Controlador de red IoT. Parte 9: IoT, automatización del hogar: 10 pasos (con imágenes)

Video: Controlador de red IoT. Parte 9: IoT, automatización del hogar: 10 pasos (con imágenes)

Video: Controlador de red IoT. Parte 9: IoT, automatización del hogar: 10 pasos (con imágenes)
Video: Automatizacion del Hogar con Raspberry Pi y NodeMCU 2024, Mes de julio
Anonim
Controlador de red IoT. Parte 9: IoT, automatización del hogar
Controlador de red IoT. Parte 9: IoT, automatización del hogar

Descargo de responsabilidad

LEÉ ESTO PRIMERO

Este Instructable detalla un proyecto que usa energía de la red (en este caso, Reino Unido 240VAC RMS), mientras que se ha tomado todo el cuidado para usar prácticas seguras y buenos principios de diseño, siempre existe el riesgo de descarga eléctrica potencialmente letal cuando se trabaja con estos voltajes de suministro y para que el autor no puede aceptar ninguna responsabilidad si se producen lesiones personales o daños a la propiedad al seguir su contenido. En consecuencia, usted hace este proyecto bajo su propio riesgo.

Preámbulo

Este artículo, el noveno de una serie sobre automatización del hogar, documenta cómo crear e integrar un controlador de red Sonoff 10A IoT en un sistema de automatización del hogar existente, incluida toda la funcionalidad de software necesaria para permitir la implementación exitosa en un entorno doméstico.

Introducción

Como se mencionó anteriormente, este Instructable detalla cómo hacer e integrar un controlador de red IoT usando el Sonoff 10A de iTead. El dispositivo en sí se cotiza como clasificado para 10 amperios a 90 ~ 250 VCA, sin embargo, esta implementación lo reduce a 5 amperios a través del enchufe con fusible que proporciona un suministro principal doméstico del Reino Unido de 240 VCA RMS.

La metodología de diseño se integra a la perfección en la red de IoT basada en MQTT / OpenHAB que se detalla en esta serie sobre la construcción de automatización del hogar a partir de código reutilizado tomado de aquí. También puede manejar la pérdida de cualquier elemento de la red de IoT y es totalmente capaz de funcionar de forma independiente. Mientras está en modo autónomo, el control del dispositivo se logra simplemente presionando el botón de control en la parte superior del gabinete, que alterna la salida de suministro hacia adelante.

Para habilitar este control local del dispositivo Sonoff, GPIO14 se saca de la caja y se usa como entrada de activación. Para garantizar la seguridad, esta entrada se alimenta a través de un circuito optoacoplador y se aloja en una carcasa de plástico de modo que en ningún momento el operador esté expuesto a las tensiones de la red.

Finalmente, la prosa también describe cómo reprogramar el dispositivo ESP8266 en el Sonoff 10A usando el IDE de Arduino y brinda detalles completos del circuito de un dispositivo que se puede usar para programar de manera confiable el código de destino.

¿Qué partes necesito?

Controlador de red Sonoff

  1. 1 de Sonoff 10A aquí
  2. 1 regulador de voltaje 7805L 5v aquí
  3. 1 transformador 240 / 6VAC 1.5VA aquí
  4. 2 de 0,1 condensadores cerámicos aquí
  5. 1 condensador electrolítico 1000uF @ 25v aquí
  6. 1 rectificador de puente 2W01 aquí
  7. 2 resistencias 4K7 aquí
  8. 1 resistencia 330R aquí
  9. 1 botón SPST aquí
  10. 1 caja de ABS Mulitcomp BM12W aquí
  11. 1 optoacoplador TIL111 aquí
  12. 1 bloque de terminales de 3 vías aquí
  13. 1 conector Molex codificado de 2 vías aquí / aquí
  14. 1 conector Molex codificado de 3 vías aquí / aquí
  15. 1 conector Molex codificado de 5 vías aquí / aquí
  16. 1 pines molex de 5 vías aquí
  17. 1 de descuento en Winbond SPI Flash (W25Q32FVSIG) aquí
  18. 1 portafusibles de 20 mm + tapa aquí
  19. 1 fusible de 500 mA de acción rápida de 20 mm aquí
  20. 2 prensaestopas de poliamida aquí
  21. 1 enchufe de red del Reino Unido (BS1363 / A) aquí
  22. 1 enchufe principal del Reino Unido (BS1363 / A) aquí
  23. 7 tornillos de nailon M3 de 16 mm CS, (incluidas 10 tuercas) aquí / aquí
  24. 2 lazos de cremallera aquí
  25. 1 de veroboard (paso de 0,1 ") aquí
  26. 1 de Varias longitudes 22swg alambre de cobre estañado aquí
  27. 1 cable de alimentación de Reino Unido blanco de 3M aquí
  28. 10 de engarces de enchufe Molex aquí

Programador Sonoff

  1. 1 regulador de voltaje LD33CV 3v3 aquí
  2. 1 disipador de calor TO-220 aquí
  3. 1 pasta de disipador de calor aquí
  4. 1 condensador electrolítico 10uF @ 16v aquí
  5. 1 condensador cerámico de 0,1 aquí
  6. 1 botón SPDT apagado aquí
  7. 1 de resistencia 4K7 aquí
  8. 1 conector Molex codificado de 2 vías aquí / aquí
  9. 1 conector Molex codificado de 3 vías aquí / aquí
  10. 5 enchufes de enchufe Molex aquí
  11. 1 enchufe molex de 6 vías aquí
  12. 1 botón SPST aquí
  13. 1 toma de fuente de alimentación de 2,1 mm aquí
  14. 1 de veroboard (paso de 0,1 ") aquí
  15. 1 adaptador USB a serie (FTDI) aquí

¿Qué software necesito?

  1. Arduino IDE 1.6.9 aquí
  2. Arduino IDE configurado para programar el ESP8266. Mira aquí; Configuración del IDE de Arduino para programar el ESP8266-01

¿Qué herramientas necesito?

  1. Soldador,
  2. Taladro y varias brocas (incluido un cortador de agujeros escalonado para prensaestopas y botón de control),
  3. Destornilladores (varios),
  4. Llaves ajustables (dos, ancho de mordaza> 25 mm, para prensaestopas),
  5. Archivos (varios),
  6. Vicio robusto,
  7. Pistola de calor,
  8. DMM (preferiblemente CAT IV).

¿Qué habilidades necesito?

  1. Un buen conocimiento de la electrónica y la seguridad eléctrica del hogar / diseño / cableado, etc.
  2. Conocimiento de Arduino y su IDE,
  3. Buenas habilidades de fabricación (soldadura, limado, taladrado, etc.),
  4. Algo de paciencia
  5. Algún conocimiento de su red doméstica.

Tópicos cubiertos

  • Introducción
  • Resumen del circuito
  • Sonoff RetroMods
  • Detalles de construcción y montaje
  • Adaptador de programación Sonoff
  • Descripción general del sistema de software
  • Descripción general del software
  • Configuración de OpenHAB
  • Prueba de su dispositivo de IoT
  • Conclusión
  • Referencias utilizadas

Enlaces de la serie

A la parte 8: Sensor de temperatura y humedad WiFi IoT. Parte: 8 IoT, automatización del hogar

A la parte 10: Control remoto por infrarrojos a través de IoT. Parte 10 IoT, automatización del hogar

Paso 1: descripción general del circuito

Resumen del circuito
Resumen del circuito
Resumen del circuito
Resumen del circuito
Resumen del circuito
Resumen del circuito
Resumen del circuito
Resumen del circuito

Visión general

Como se mencionó en la introducción anterior, para poder encender y apagar el controlador de red localmente, se requirió una entrada al ESP8266 integrado de Sonoff. La introducción de una entrada externa de este tipo requiere que se rompa la carcasa ABS de Sonoff y, por lo tanto, crea un posible peligro de descarga eléctrica. Para superar esto, utilicé un aislamiento óptico de modo que no haya posibilidad de exposición a la red eléctrica fuera de la carcasa del sistema del controlador de red.

Lo que sigue es una descripción del circuito de optoaislamiento (en la imagen 1 arriba).

Detalles del circuito

El circuito de optoaislamiento recibe su alimentación directamente de la red eléctrica aplicada a la unidad. El RMS de 240 VCA se aplica al transformador reductor / de aislamiento TR1 a través de J1, un terminal de 3 vías de poliamida MKDSN2 de contacto pheonix 5 / 3-5.08 nominal de 16 A a 400 V capaz de transportar un cable de 2,5 mm (sq) CSA y F1 a 500 mA de 20 mm fusible de acción rápida. Los 6 VCA disponibles en los devanados secundarios de TR1 son de onda completa rectificada por el puente de diodos B1.

Esta salida rectificada de onda completa luego se estabiliza y regula mediante C1, C2 C3, R3 e IC1, un regulador de derivación de la serie 7805L, lo que proporciona un riel de suministro de 5v bueno y limpio.

El riel de 5v se usa luego para controlar la entrada a OK1, un optoaislador TIL111 a través de un botón SPST blanco montado externamente conectado a través de J3. La salida del TIL111 está acoplada a la entrada Sonoff GPIO14 a través de R2, una resistencia pull up 4K7. Por lo tanto, se logra un aislamiento mejor que 340 V (es decir, voltaje máximo = (240 V CA * raíz cuadrada (2))).

Paso 2: Sonoff RetroMods

Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods
Sonoff RetroMods

Para integrar el dispositivo Sonoff 10A es necesario realizar algunas modificaciones retrospectivas.

La primera es agregar un conector molex de paso de 0.1 de 5 vías como se muestra en la imagen 1 anterior. Esto permite el acceso a GPIO14 en el Sonoff una vez que se ha reemplazado la cubierta protectora como en las imágenes 2 y 3 anteriores.

Aunque no se muestra arriba, también saqué las líneas serie TX / RX para permitir la programación in situ (consulte el arnés de cables SK1..3 en el Paso 1 anterior).

La segunda modificación es aumentar el tamaño del dispositivo SPI Flash de 1 MByte predeterminado a 4 MBytes, esto es para permitir suficiente espacio para que los archivos del servidor web de IoT se mantengan en SPIFFS.

Compré el dispositivo flash SMD SPI (W25Q32FVSIG) de Ebay aquí

Para reemplazar el flash, quité temporalmente el LED Sonoff como en la imagen 4 para brindar un mejor acceso al dispositivo SMD. Para desoldar el flash utilicé una pistola de calor como se muestra en la imagen 5 de arriba. Luego, vuelva a soldar tanto el flash de 4 MByte como el LED, respectivamente (imagen 6).

Paso 3: Detalles de construcción y ensamblaje

Detalles de construcción y montaje
Detalles de construcción y montaje
Detalles de construcción y montaje
Detalles de construcción y montaje
Detalles de construcción y montaje
Detalles de construcción y montaje
Detalles de construcción y montaje
Detalles de construcción y montaje

Incluí el controlador de red en una caja ABS Mulitcomp BM12W (Imagen 1 arriba). Este gabinete tiene inserciones M3 de latón aisladas que permiten el acceso múltiple a la unidad sin comprometer las roscas de sujeción, de modo que el fusible interno se puede reemplazar si es necesario o se puede realizar una inspección interna con el tiempo (no se puede decir lo mismo del dispositivo Sonoff, que es efectivamente un cierre de una sola vez utilizando autoaprovechadores).

El alivio de tensión primario para el cable de alimentación principal se logró mediante un prensaestopas blanco de nailon / poliamida 6/6 M16 que soporta un diámetro exterior mínimo / máximo de cable de 5 mm / 10 mm.

El alivio de tensión secundario se realizó a través de una sola brida colocada en el cable en caso de que se aplicara una tensión excesiva y el prensaestopas fallara, la brida mantendrá el cable en su lugar.

Para colocar los prensaestopas y proporcionar suficiente espacio para montar el Sonoff y la electrónica de optoaislamiento, quité las nervaduras de montaje internas de la PCB como se muestra arriba (Imagen 2).

Todos los componentes electrónicos se montaron de forma segura mediante tornillos CS de nailon M3 para garantizar que se mantuviera el aislamiento con el exterior del gabinete. La electrónica de optoaislamiento está montada con 5 puntos de fijación para garantizar una sólida resistencia mecánica en caso de caída de la unidad, evitando así que la masa del transformador de aislamiento rompa el circuito del veroboard.

El suministro a la unidad se realizó a través de un cable de red de múltiples hilos (32 / 0,2 mm cuadrados) de 1 mm (cuadrado) blanco con código de color blanco de 3 núcleos aislado con PVC de la norma del Reino Unido. con un diámetro exterior de 7,2 mm capaz de transportar 10A.

La unidad se conectó a la red eléctrica del Reino Unido (240 VCA RMS) a través de un enchufe de seguridad estándar de 3 clavijas (BS 1363 / A) aprobado. El enchufe se fundió a 5A.

Todos los cables de suministro de red al circuito de optoaislamiento se conectaron a través de terminales de poliamida 5 / 3-5.08 de contacto de pheonix MKDSN2 con clasificación de 16 A a 400 V capaces de transportar un cable de 2,5 mm (sq) CSA, lo que proporciona una amplia capacidad para dos cables en cada puesto.

No se estañaron los cables de red, solo se retorcieron para evitar que los núcleos se esparcieran antes de insertarlos en el bloque de conectores. Estañar los cables de red es una práctica peligrosa ya que la soldadura se 'relaja' con el tiempo y eventualmente hace que el cable se pierda en el bloque de conectores.

Nota:

  • OD = diámetro exterior.
  • VAC = Voltios de corriente alterna
  • RMS = Raíz cuadrada media
  • CSA = Área de sección transversal
  • CS = Counter Hundido

Paso 4: Adaptador de programación Sonoff

Adaptador de programación Sonoff
Adaptador de programación Sonoff
Adaptador de programación Sonoff
Adaptador de programación Sonoff
Adaptador de programación Sonoff
Adaptador de programación Sonoff
Adaptador de programación Sonoff
Adaptador de programación Sonoff

Hay dos aspectos a considerar al reprogramar el Sonoff 10A a través del IDE de Arduino;

  1. Configurando su Arduino IDE para programar el ESP8266,
  2. El acto de programar el hardware en sí.

Configurando su Arduino IDE para programar el ESP8266

Para configurar su Ardino IDE siga las instrucciones aquí Configuración del Arduino IDE para programar el ESP8266-01

Programando el hardware

Este es un proceso de varios pasos como en todos los casos con el ESP8266. Aquí, la energía de Sonoff se aplica a la placa a través de una fuente de CC 3v3 estabilizada externa y NO de la fuente de alimentación. Se requerirá un dispositivo USB a serie para enviar y recibir datos desde y hacia Sonoff. Conecte TX y RX como se muestra en las imágenes 2 y 4.

Pasos de programación (general)

  1. Primero asegúrese de que no haya alimentación de red externa aplicada al Sonoff,
  2. Mantenga presionado el botón en el dispositivo Sonoff. (imagen 1 arriba, botón de re-flash marcado),
  3. Aplique un suministro externo de CC 3v3 al pin 1. (imagen 2 arriba),
  4. Suelta el botón Sonoff,
  5. El dispositivo ahora se puede reprogramar de la forma habitual a través del IDE de Arduino.

Para facilitar un poco las cosas, creé el dispositivo de programación de arriba (fotos 3 y 4) que se interconectaba con el Sonoff a través del arnés de cables SK1… 3 (como se describe en este Paso Instructable 1). Esto permitió una programación más sencilla del ESP8266. También proporcionó un medio para probar GPIO14 como entrada mediante el uso de R1, una resistencia de extracción de 4K7 y el botón S1.

Usando el dispositivo de programación anterior (Fotos 3 y 4) Los pasos de programación son,

  1. Mantenga presionado el botón de re-flash en el Sonoff,
  2. Pulse el suministro 3v3 presionando momentáneamente S2,
  3. Suelte el botón de re-flash,
  4. Ahora se puede programar el dispositivo.

NOTA - ADVERTENCIA

Bajo NINGUNA circunstancia se debe suministrar energía a través de la red eléctrica durante la actividad de reprogramación de Sonoff

Paso 5: Descripción general del sistema de software

Descripción general del sistema de software
Descripción general del sistema de software
Descripción general del sistema de software
Descripción general del sistema de software

Este dispositivo controlador de red de IoT en su mayor parte contiene los mismos seis componentes de software clave que en el sensor de temperatura y humedad de IoT WiFi instructable. Parte: 8 IoT, domótica y se muestra en la imagen 1 anterior, con algo de personalización.

SPIFFS

Este es el (actualizado a 4 MBytes) a bordo SPI Flash Filing System y se utiliza para contener la siguiente información (ver imagen 2 arriba);

  • Iconos y 'Página de inicio de configuración del controlador de red' html: El dispositivo IoT lo atiende cuando no puede conectarse a su red WiFi de IoT (normalmente debido a información de seguridad incorrecta) y proporciona al usuario un medio para configurar de forma remota el controlador de red sin la necesidad de reprogramar o cargar nuevo contenido SPIFFS.
  • Información de seguridad: contiene la información utilizada en el encendido por el dispositivo IoT para conectarse a su red WiFi IoT y MQTT Broker. La información enviada a través de la 'Página de inicio de configuración del controlador de red' se escribe en este archivo ('secvals.txt').

Nota: Para configurar inicialmente el dispositivo, consulte aquí para obtener detalles completos sobre cómo usar SPIFFS con el IDE de Arduino.

Servidor mDNS

Esta funcionalidad se invoca cuando el dispositivo IoT no ha podido conectarse a su red WiFi como una estación WiFi y, en cambio, se ha convertido en un punto de acceso WiFi similar a un enrutador WiFi doméstico. En el caso de un enrutador de este tipo, normalmente se conectaría ingresando la dirección IP de algo como 192.168.1.1 (generalmente impresa en una etiqueta adherida a la caja) directamente en la barra de URL de su navegador, después de lo cual recibirá una página de inicio de sesión para ingresar. el nombre de usuario y la contraseña para permitirle configurar el dispositivo. Para el ESP8266 en modo AP (modo de punto de acceso), el dispositivo tiene por defecto la dirección IP 192.168.4.1, sin embargo, con el servidor mDNS en ejecución, solo tiene que ingresar el nombre amigable para humanos 'MAINSCON.local' en la barra de URL del navegador para ver la 'Página de inicio de configuración del controlador de red'.

Cliente MQTT

El cliente MQTT proporciona toda la funcionalidad necesaria para; conéctese a su broker MQTT de la red de IoT, suscríbase a los temas que elija y publique cargas útiles para un tema determinado. En resumen, proporciona la funcionalidad principal de IoT.

Servidor web

Como se mencionó anteriormente, si el dispositivo IoT no puede conectarse a la red WiFi cuyo SSID, P / W, etc.están definidos en el archivo de información de seguridad que se encuentra en SPIFFS, el dispositivo se convertirá en un punto de acceso. Una vez conectado a la red WiFi proporcionada por el punto de acceso, la presencia de un servidor web HTTP le permite conectarse directamente al dispositivo y cambiar su configuración mediante el uso de un navegador web HTTP, cuyo propósito es proporcionar la configuración del controlador de red. Página de inicio 'página web que también se encuentra en SPIFFS.

Estación WiFi

Esta funcionalidad le da al dispositivo IoT la capacidad de conectarse a una red WiFi doméstica usando los parámetros en el archivo de información de seguridad, sin esto, su dispositivo IoT no podrá suscribirse / publicar en el Broker MQTT.

Punto de acceso WiFi

La capacidad de convertirse en un punto de acceso WiFi es un medio por el cual el dispositivo IoT le permite conectarse a él y realizar cambios de configuración a través de una estación WiFi y un navegador (como Safari en el iPad de Apple). Este punto de acceso transmite un SSID = "MAINSCON" + los últimos 6 dígitos de la dirección MAC del dispositivo IoT. La contraseña para esta red cerrada se llama imaginativamente 'PASSWORD'.

Paso 6: descripción general del software

Descripción general del software
Descripción general del software
Descripción general del software
Descripción general del software
Descripción general del software
Descripción general del software
Descripción general del software
Descripción general del software

Preámbulo Para compilar correctamente este código fuente, necesitará las siguientes bibliotecas adicionales;

PubSubClient.h

  • Por: Nick O'Leary
  • Propósito: permite que el dispositivo publique o se suscriba a temas de MQTT con un Broker determinado.
  • De:

Rebote2.h

  • Por: Thomas O Fredericks
  • Propósito: eliminación de rebote del interruptor de entrada en el software
  • De:

Descripción general del código

El software hace uso de la máquina de estado como se muestra en la imagen 1 arriba (copia completa de la fuente a continuación). Hay 5 estados principales como sigue;

  • EN ESO

    Este estado de inicialización es el primer estado que se ingresa después del encendido

  • NOCONFIG

    Este estado se ingresa si después del encendido se detecta un archivo secvals.txt no válido o faltante

  • PENDIENTE NO

    Este estado es transitorio, se ingresa mientras no existe conexión de red WiFi

  • PENDIENTE MQTT

    Este estado es transitorio, se ingresa después de que se ha establecido una conexión de red WiFi y mientras no existe conexión con un corredor MQTT en esa red

  • ACTIVO

    Este es el estado operativo normal al que se ingresa una vez que se ha establecido una conexión de red WiFi y una conexión de MQTT Broker. Es durante este estado que el controlador de red publicará en MQTT Broker y recibirá comandos a través de temas suscritos

Los eventos que controlan las transiciones entre estados se describen en la imagen 1 anterior. Las transiciones entre estados también se rigen por los siguientes parámetros de SecVals;

  • Primera dirección IP del corredor de MQTT. En forma decimal con puntos AAA. BBB. CCC. DDD
  • Segundo puerto de intermediario MQTT. En forma de número entero.
  • La tercera conexión de MQTT Broker intenta realizar antes de cambiar del modo STA al modo AP. En forma de número entero.
  • 4to SSID de red WiFi. En texto de forma libre.
  • Quinta contraseña de red WiFi. En texto de forma libre.

Como se mencionó anteriormente, si el dispositivo IoT no puede conectarse como una estación WiFi a la red WiFi cuyo SSID y P / W se definen en secvals.txt en SPIFFS, el dispositivo se convertirá en un punto de acceso. Una vez conectado a este punto de acceso, aparecerá la 'Página de inicio de configuración del controlador de red' como se muestra arriba en la Imagen 2 (ingresando 'MAINSCON.local' o 192.168.4.1 en la barra de direcciones URL de su navegador). Esta página de inicio permite la reconfiguración del controlador de red a través de un navegador

Convención de nomenclatura de temas de MQTT

En la imagen 3 anterior se describe la convención de nomenclatura utilizada para los temas de MQTT y es consistente con el patrón utilizado en mi Instructable anterior (aquí Paso 5).

Temas de MQTT utilizados por este dispositivo de IoT

Para mayor claridad, he documentado (imagen 4) los temas y las secuencias de mensajes asociados a los que este dispositivo publica / se suscribe. La imagen también muestra la interacción con el botón de control blanco en el exterior del gabinete (aunque, irónicamente, el botón se muestra en rojo).

Acceso a la configuración remota mientras está en estado ACTIVO

Una vez conectado al MQTT Broker, es posible reconfigurar de forma remota los parámetros de seguridad para el dispositivo a través de publicaciones temáticas MQTT. El archivo asociado secvals.txt tiene acceso de solo escritura expuesto.

Depuración del usuario

Durante la secuencia de arranque, el LED del dispositivo Sonoff proporciona la siguiente información de depuración, aunque debe tenerse en cuenta, para ver esto, deberá quitar la cubierta y exponer los circuitos, por lo que solo es aconsejable hacerlo mientras desarrolla su código y enciende el dispositivo. con un suministro 3v3;

  • 1 Flash corto: no hay archivo de configuración ubicado en SPIFFS (secvals.txt),
  • 2 destellos cortos: el dispositivo IoT está intentando conectarse a la red WiFi,
  • Iluminación continua: el dispositivo Sonoff IoT está intentando conectarse a MQTT Broker,
  • Apagado: el dispositivo está activo y conectado a MQTT Broker.

Nota 1: La 'Página de inicio de configuración del controlador de red' no utiliza enchufes seguros y, por lo tanto, confía en que su red sea segura.

Nota 2: Para programar varios dispositivos IoT, la cadena MQTT deberá editarse antes de descargarla en cada dispositivo. Esto se debe a que el número de identificación del controlador de red se ha incrustado en la cadena de temas MQTT. es decir. en el software publicado elegí el valor de 100: 'WFD / MainsCont / 100 / Relay / Command / 1' y para mis 2 dispositivos están numerados 1 y 2 respectivamente.

  • 'WFD / MainsCont / 1 / Relay / Command / 1'
  • 'WFD / MainsCont / 2 / Relay / Command / 1'

Nota 3: Para completar cuando está en el estado ACTIVO, el software de IoT permite el control del LED Sonoff y la publicación del estado del botón de re-flash. Aunque estos solo tienen valor durante el proceso de depuración, ya que ninguno está expuesto al usuario durante el funcionamiento normal.

Paso 7: Configuración de OpenHAB

Configuración de OpenHAB
Configuración de OpenHAB
Configuración de OpenHAB
Configuración de OpenHAB
Configuración de OpenHAB
Configuración de OpenHAB

Con fines de prueba, decidí implementar teóricamente los dos controladores de red en la 'Sala de estar' de mi casa. Se puede acceder a esta página de OpenHAB a través de la página principal del sitio como en la imagen 1.

Modifiqué la configuración.sitemap de OpenHAB dada en mi Instructable anterior (aquí) y agregué entradas individuales para 'Mains Controller 1' y 'Mains Controller 2' (imagen 2 arriba). También agregué entradas (Living Room Mains Cont. 1 y 2) para mostrar las tendencias RSSI medidas en el receptor de los dos nuevos dispositivos IoT (imagen 3).

Finalmente, agregué entradas a los archivos.rules y.items para permitir la sincronización dinámica del estado de Sonoff y la actualización / animación de mi pobre intento en un gráfico de interruptor (el interruptor se cierra cuando está activo y se abre cuando está inactivo). La imagen 2 muestra un ejemplo de MC1 activo y MC2 inactivo.

Nota 1: Si no está seguro de cómo usar OpenHAB, consulte aquí 'Instalación y configuración de OpenHAB. Parte 6: IoT, automatización del hogar '

Nota 2: En el archivo zip a continuación se proporciona una copia del mapa del sitio modificado, los archivos de reglas y elementos, los iconos, etc.

Nota 3: RSSI = Indicación de intensidad de señal recibida. Esta es una medida de qué tan bien el dispositivo IoT puede ver su red WiFi.

Paso 8: Probar su dispositivo de IoT

Image
Image
Prueba de su dispositivo de IoT
Prueba de su dispositivo de IoT

Como se describe en Instructable WiFi IoT Temperature and Humidity Sensor. Parte: 8 IoT, Automatización del hogar Paso 7, la prueba inicial del dispositivo IoT se ejecutó a través de una conexión MQTT a través de MQTT Spy (como en el diagrama de bloques del sistema en la imagen 1 anterior), monitoreo de salida de LED, entradas de botón (tanto el botón de re-flash Sonoff como el botón externo blanco) y depurar el tráfico en la interfaz serial. Esto me permitió ejercitar todos los temas suscritos disponibles y verificar las respuestas publicadas. Aunque nuevamente, esto se llevó a cabo manualmente y consumió mucho tiempo, aunque permitió una cobertura del 100% de los mensajes / publicaciones de temas.

Como la máquina de estado del software principal (Paso 6 anterior) se heredó del Instructable anterior (Parte: 8), además de la verificación de cordura, el software podría conectarse a WiFi N / W y MQTT Broker, se asumió que esto funcionaba correctamente.

Luego, se completaron las pruebas a nivel de sistema completo utilizando el controlador de red y la infraestructura de IoT (nuevamente imagen 1), esta vez usando OpenHAB para controlar la interacción con el dispositivo de IoT. El hardware de IoT y la configuración de la carga ficticia se pueden ver en la imagen 2 anterior.

El video brinda detalles completos de las pruebas del sistema y muestra claramente la sincronización que se mantiene entre los dispositivos OpenHAB (PC / Chrome y iPad / APLICACIÓN OpenHAB) en tiempo real. También muestra mensajes en vivo a los controladores de red a través de MQTTSpy (consulte aquí para obtener más detalles Configuración de un agente MQTT. Parte 2: IoT, automatización del hogar) y el registro del sistema de cola OpenHAB desde el servidor raspberry pi a través de una conexión PuTTY SSH (consulte aquí para obtener más información). detalles Instalación y configuración de OpenHAB. Parte 6: IoT, automatización del hogar).

Nota: El tráfico de depuración se compiló para la versión final del software.

Paso 9: Conclusión

General

El proyecto fue relativamente fácil de completar y funcionó bien. El software integrado fue fácil de producir, siendo una versión reducida del código utilizado para los sensores de temperatura y humedad de la Parte 8 de esta serie.

Inicialmente tenía la intención de adquirir solo componentes blancos simplemente por su calidad estética. Logré esto en todos menos en el botón de control, lo intenté como pude, no pude obtener un botón completamente blanco bueno / barato.

Dispositivo Sonoff 10A

He enumerado a continuación lo que sentí que eran los pros y los contras razonables del dispositivo Sonoff

Pros

  • Barato.
  • Buen apoyo comunitario.
  • Puede reprogramar a través del IDE de Arduino.

Contras

  • Recinto endeble.
  • E / S mínima (llevada a conectores utilizables).
  • Funciona caliente en su estado de reposo.
  • Solo tiene 1 MByte de flash SPI integrado.
  • Es un PITA para reprogramar una vez conectado en su lugar.
  • Al integrar un nuevo código en la prueba de Sonoff, el cierre del relé fue problemático dado que el relé es de 5v y el suministro aplicado al Sonoff para la programación es de 3v3. La activación del relé solo es perceptible para el oído.

Preocupaciones

  • No cambia la línea neutra. Utiliza un relé SPST.
  • No está fusionado.
  • Alivio de tensión del cable deficiente.
  • La PCB no está asegurada dentro del gabinete Sonoff.

Comentar sobre el diseño de ingeniería

Dado que este dispositivo de IoT se iba a utilizar para cambiar la red eléctrica viva del Reino Unido (240 VCA RMS), seguí las buenas prácticas de diseño mecánico y eléctrico y me aseguré de que el riesgo de descarga se minimizara al no exponer ningún material conductor de electricidad, sobreespecificar todos los componentes, reducir la calificación carga de salida, aplicando protección con fusibles tanto al controlador de red como al subsistema optoacoplado, la inclusión de una buena conexión a tierra ininterrumpida y el uso de aislamiento óptico / galvánico.

Posible mejora

En retrospectiva, habría sido útil incluir una indicación visual de que la salida del controlador de red estaba activa (LED o neón). Aunque no es un problema en el uso diario, dado que es una práctica estándar aislar la carga del suministro antes de realizar cualquier mantenimiento, o una simple presión del botón de control local alternará la salida en el caso de que una lámpara se encienda cuando se enchufa.

Nota final

Si desea ver dos ejemplos muy pobres de cómo lidiar con la red eléctrica, consulte los enlaces a continuación. Sus premios Darwin estarán en la publicación muy pronto, estoy bastante seguro;

  • Cable de extensión de científico loco
  • Comentarios de la comunidad 03 - ¡Preocupaciones por la seguridad de la energía!

Paso 10: Referencias utilizadas

Usé las siguientes fuentes para armar este Instructable;

PubSubClient.h

  • Por: Nick O'Leary
  • Propósito: permite que el dispositivo publique o se suscriba a temas de MQTT con un Broker determinado.
  • De:

Rebote2.h

  • Por: Thomas O Fredericks
  • Propósito: eliminación de rebote del interruptor de entrada en el software
  • De:

SPIFFS

https://esp8266.github.io/Arduino/versions/2.0.0/do…

Actualización de flash de Sonoff

  • https://www.andremiller.net/content/upgrading-sonof…
  • https://tech.scargill.net/32mb-esp01/
  • https://www.andremiller.net/content/upgrading-sonof…

Diagrama de circuito de Sonoff

https://www.itead.cc/wiki/images/6/6b/Sonoff_schmatic.pdf

Módulo USB UART (también conocido como FTDI)

https://www.ebay.co.uk/itm/6Pin-USB-2-0-to-TTL-UART-Module-Converter-CP2102-STC-Replace-FT232-CF-/272249732398?epid=503069058&hash=item3f63593d2e: g: QVUAAOSw71BXP92B

Premios Darwin (relieve ligero)

https://www.darwinawards.com/

Ficha técnica del optoaislador TIL111

Recomendado: