Tabla de contenido:
- Paso 1: ¿Qué es MQTT?
- Paso 2: Instalar MQTT Broker en Raspberry Pi
- Paso 3: Conecte IOT Cricket a RaspberryPi a través de MQTT
- Paso 4: inspeccionar los mensajes MQTT
- Paso 5: resumen
- Paso 6: Acerca de nosotros
Video: Sistema de automatización del hogar WiFi de potencia ultrabaja: 6 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:39
En este proyecto mostramos cómo se puede construir un sistema domótico local básico en unos pocos pasos. Vamos a utilizar una Raspberry Pi que actuará como dispositivo WiFi central. Mientras que para los nodos finales vamos a usar IOT Cricket para hacer dispositivos WiFi alimentados por batería, p. Ej. sensor de temperatura y conéctelo al RPi sin escribir una sola línea de código.
Nuestro sistema se basará en el protocolo de comunicación MQTT, que se ha adoptado enormemente en la mayoría de los sistemas de domótica. Para configurarlo elegimos Mosquitto MQTT broker (servidor) y lo instalamos en Raspberry Pi (nuestro hub central).
IOT Cricket también viene con soporte de protocolos HTTP (S) y MQTT. Lo configuramos para usar MQTT para comunicarse directamente con nuestro broker RPi MQTT.
Este proyecto puede ser realizado por creadores de todos los niveles. Puede requerir un poco de soldadura básica, sin embargo, no requiere codificación ni programación. Al final de este proyecto, obtendrá una idea sólida de cómo puede construir fácilmente su propio sistema y extenderlo rápidamente agregando sus propios nodos finales de IOT al sistema.
Suministros:
- Raspberry Pi (usamos la versión 3 para este proyecto)
- Módulo WiFi IOT Cricket
- Soporte de batería 2xAAA
- Baterías 2xAAA
Paso 1: ¿Qué es MQTT?
El protocolo MQTT proporciona un método ligero para realizar mensajes mediante un modelo de publicación / suscripción. Esto lo hace adecuado para la mensajería de Internet de las cosas, como sensores de baja potencia o dispositivos móviles como teléfonos, computadoras integradas o microcontroladores. (fuente: mosquitto.org)
Podemos utilizar tantos dispositivos como queramos para suscribirnos a temas y escuchar los mensajes que llegan. Si algunos dispositivos publican un mensaje sobre ese tema, todos los dispositivos, que están suscritos al tema, reciben ese mensaje instantáneamente. El tema puede ser cualquier cadena arbitraria usualmente concatenada con / caracteres para permitir construir temas jerárquicos. El uso más típico de MQTT es tener un servidor central al que los dispositivos pueden suscribirse y publicar mensajes. Facilita toda la comunicación entre los dispositivos conectados a ese servidor. En este proyecto usaremos RPi para actuar como nuestro intermediario MQTT central y todos los demás dispositivos enviarán mensajes a través de este intermediario. La mejor forma de aprenderlo es obviamente haciéndolo nosotros mismos. Hay muchos recursos disponibles en Internet sobre MQTT. Sin embargo, para este proyecto, debería estar de acuerdo con una introducción básica, que proporcionamos anteriormente.
Paso 2: Instalar MQTT Broker en Raspberry Pi
Para este proyecto utilizamos un broker Mosquitto MQTT de código abierto. Es liviano y adecuado para su uso en todos los dispositivos, desde computadoras de placa única de baja potencia hasta servidores completos.
Antes de comenzar con la instalación, es una buena práctica actualizar primero los componentes del sistema:
$ sudo apt-get update $ sudo apt-get upgrade
Instale el broker Mosquitto. Abra una terminal y escriba el siguiente comando:
$ sudo apt-get install mosquitto -y
Configure el broker Mosquitto. Editar archivo de configuración:
$ sudo vi /etc/mosquitto/mosquitto.conf
y agregue las siguientes líneas en la parte superior:
puerto 1883allow_anonymous true
Reinicie RPi para aplicar cambios:
$ sudo reiniciar
¡Eso es todo! ¡Nuestro bróker MQTT ya está en funcionamiento!
NOTA: en aras de la simplicidad de este proyecto, no estamos creando cuentas. Entonces, cualquier persona dentro de nuestra red local puede conectarse a este corredor de MQTT sin credenciales. Si desea agregar autenticación de usuario y hacerlo más seguro, hay muchos tutoriales en Internet sobre cómo hacerlo.
Ahora, solo necesitamos obtener la dirección IP para poder enviar mensajes a nuestro broker Mosquitto desde otros dispositivos en la red:
Obtener la dirección IP:
$ nombre de host -I
your_RPi_IP_address (por ejemplo, 192.168.1.10)
Paso 3: Conecte IOT Cricket a RaspberryPi a través de MQTT
En este proyecto usamos el módulo IOT Cricket WiFi para que un sensor simple informe una temperatura cada 30 segundos a nuestro sistema. Funcionará con batería, por lo que podremos pegarlo en cualquier lugar de la casa o el jardín. Más tarde, puede usar IOT Cricket para construir varios sensores, alarmas, botones, interruptores que funcionan con baterías y conectarlos también a nuestro agente RPi MQTT listo para usar.
En el primer paso, conecte las baterías a Cricket.
Cricket viene con un sensor de temperatura incorporado. Solo necesitamos configurarlo para enviar el valor de temperatura a nuestro agente MQTT configurando la dirección IP de RPi. Para hacerlo, abra el panel de configuración de Cricket (vea los pasos aquí) y aplique las siguientes configuraciones (como se muestra en la imagen a continuación, por favor ajuste la dirección IP en el cuadro "url" a su RPi)
Ahora podemos salir del modo de configuración ¡El dispositivo está listo! Cricket ya está enviando datos a nuestro corredor de MQTT cada 30 segundos.
Paso 4: inspeccionar los mensajes MQTT
Para ver / recibir mensajes enviados a nuestro bróker MQTT podemos utilizar varias herramientas.
La más sencilla podría ser una herramienta de línea de comandos mosquitto_sub. Podemos instalarlo en cualquier ordenador de nuestra red o en nuestro RPi con este comando:
$ sudo apt-get install mosquitto-clients -y
Ahora podemos ejecutar el siguiente comando para escuchar TODOS los temas y mensajes enviados a través de nuestro broker MQTT:
$ mosquitto_sub -v -h su_dirección_IP_RPi -p 1883 -t '#'
… / 59A98F494C / nombre_de_dispositivo MyTemperatureDev / 59A98F494C / device_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enabled 3763 / 59A98F494C / hwc_364 / A98F494C / 59A98F494C / 59A98F494C / 59A98F494C_wake1
Lo anterior es un ejemplo de salida de lo que IOT Cricket envía a nuestro corredor. Entre los otros datos que podemos ver hay una temperatura:
/ 59A98F494C / temp 26.0
La belleza de MQTT es que nos permite suscribirnos solo a los temas que nos interesan. Si queremos recibir solo una temperatura, podemos suscribirnos al tema / 59A98F494C / temp usando el siguiente comando:
$ mosquitto_sub -h su_dirección_IP_RPi -t '/ 59A98F494C / temp'
…26.126.527.227.6…
Paso 5: resumen
Hemos mostrado en este proyecto un hardware y software imprescindible para empezar a construir sistemas domóticos de bajo consumo energético basados en WiFi. MQTT es la esencia sobre la que construir para sistemas más sofisticados.
¡El ecosistema de software y servicios que se puede integrar con MQTT es ENORME! Hay muchos sistemas excelentes, como Home Assistant, Node RED, Grafana, etc., que le permiten crear una excelente experiencia de usuario con su propio sistema. No solo podemos hacer una impresión simple de la temperatura, sino que también podemos tener excelentes paneles de control que visualizan los datos y administran sus dispositivos.
Ahora que tenemos esta infraestructura de sistema básica en su lugar, el cielo es nuestro límite de qué otros dispositivos WiFi podemos construir usando módulos IOT Cricket y agregar a nuestro sistema de automatización del hogar.
Gracias por subir hasta aquí. ¡Esperamos que hayas disfrutado de este tutorial!
Equipo de Things On Edge
Paso 6: Acerca de nosotros
Things On Edge es una empresa con sede en Cambridge, Reino Unido. Diseñamos un módulo Wi-Fi de Cricket con batería ultrabaja para permitirle conectar varios dispositivos electrónicos a teléfonos inteligentes u otros servicios de Internet literalmente en minutos. No requiere programación ni codificación. Le permite integrar sus dispositivos a un enorme ecosistema de servicios de IOT a través de apis MQTT y
Recomendado:
Sistema de alarma de intrusión de automatización del hogar de bricolaje: 5 pasos (con imágenes)
DIY Home Automation Intruder Alarm System !: En este proyecto, le mostraré cómo usar el software Home Assistant para crear un sistema de alarma contra intrusos para su hogar. Básicamente, el sistema detectará si la puerta se abre sin permiso y luego enviará una notificación
Sensor de puerta a batería con integración de automatización del hogar, WiFi y ESP-NOW: 5 pasos (con imágenes)
Sensor de puerta a batería con integración de automatización del hogar, WiFi y ESP-NOW: En este instructivo, le muestro cómo hice un sensor de puerta a batería con integración de automatización del hogar. He visto otros buenos sensores y sistemas de alarma, pero quería hacer uno yo mismo. Mis objetivos: un sensor que detecta e informa un doo
Hazlo tú mismo con tu propio sistema de automatización del hogar: 7 pasos (con imágenes)
DIY Hacking Your Own Home Automation System: Un sistema de automatización del hogar debe poder encender / apagar electrodomésticos como luces, ventiladores, sistemas de entretenimiento, etc. Un sistema que sea inalámbrico pero independiente de Internet, pero lo más importante, bricolaje y abierto -fuente porque quiero entender
Potente sistema de automatización del hogar independiente: Pi, Sonoff, ESP8266 y Node-Red: 9 pasos (con imágenes)
Potente sistema autónomo de automatización del hogar: Pi, Sonoff, ESP8266 y Node-Red: esta guía debería llevarlo a la primera base donde puede encender / apagar una luz o un electrodoméstico a través de cualquier dispositivo que pueda conectarse a su red local, y con un gran interfaz web personalizable. El alcance para ampliar / agregar funciones es amplio, incluido
Sistema de automatización del hogar con Arduino y el módulo Bluetooth HC-05: 5 pasos (con imágenes)
Sistema de automatización del hogar con módulo Bluetooth Arduino y HC-05: Hola chicos, ¡cómo están todos! Hoy estoy aquí con mi segundo Arduino Instructable. Es un sistema de automatización del hogar controlado por Bluetooth. Puede controlar sus electrodomésticos desde su teléfono inteligente. las cosas funcionan perfectamente! También diseñé la aplicación