Configuración del entorno IoT final a extremo en Raspberry Pi
por Ponlakshmi
En los últimos años,MQTTtiene
comenzó a establecerse como el más común
protocolo de mensajería usado para proyectos de IoT. Este documento proporciona a los desarrolladores un completo
guía sobre cómo configurar y ejecutar unMQTT Brokeren Raspberry
Pi en unos minutos. También verá lo fácil que puede agregar inteligencia a su Edge
dispositivo con ESP8266. Una vez que usted ha ganado el conocimiento deMQTT Brokery cómo utilizar
serás capaz de hacer
sus propios proyectos de IoT.
Sinopsis:
Los pasos involucrados en la creación de un MQTT Broker en Raspberry Pi son
Instalación de MQTT Broker en Raspberry Pi
Configuración de MQTTBroker
Configuración del ESP8266
Flashing ESP8266
Conexión ESP8266 con MQTT Server
Interfaz de usuario de MQTT
MQTT
MQTTes un mensaje ligero
protocolo que le permite enviar mensajes arbitrarios a través de un
red a cualquier dispositivo interesado. Utiliza el método publicado/subscribe para intercambiar datos
entre clientes y el servidor.
Instalación de MQTT Broker en Raspberry Pi
Vamos a usarBevywise MQTT
Brokery el Raspberry Pi 3 ejecuta la última versión de Raspbian Jessie
en este tutorial.
Para instalar el Bevywise MQTT Broker y sus paquetes cliente siguen los siguientes pasos
Puede descargar el broker desde
En el formulario de descarga, proporcionar todos los detalles requeridos, elegir el sistema operativo Raspberry, y
descargar el MQTT Broker.
El archivo descargado estará en un formato zip.
Desactiva la carpeta zip descargada usando el comando
unzip Bevywise_MQTT_Route_Raspbian.zip
Una vez que descifra el archivo, se creará la carpeta Bevywise.
Configuración de MQTTBroker en Raspberry Pi
Para configurar el broker ir las Descargas - confiar Bevywise - confiar MQTTRoute - título Carpeta Conf.
En la carpeta conf, habrá dos archivos conf.
broker.conf
data_store.conf
broker.conf
Para configurar el broker MQTT, utilice elbroker.confarchivo dentro de la carpeta conf del paquete Bevywise.
Por defecto, el corredor se ejecutaránon-TLSmodo con el
puerto1883,
y elautenticaciónestá desactivado.
MQTT broker ofrece una opción para permitir la transferencia de datos cifrados y la autenticación.
Para ejecutar su producto con soporte SSL/TLS, cambieTLS_ENABLED =
TRUEy
cambiar el número de puerto a8883.
También puede conectar sus dispositivos de borde con mayor seguridadMQTT
autenticación.
Para permitir el cambio de autenticaciónAUTHENTICATION_ENABLED =
Sí.
Al habilitar esto, usted necesita proporcionar un MQTTnombre de usuarioycontraseñacuando el dispositivo del borde está conectado.
El nombre de usuario y la contraseña están disponibles en la interfaz de usuario de Broker.
Una vez que ejecute el broker, aparecerá la interfaz de usuario.
En la interfaz de usuario debajo de la“Authentication”tab, ahí
será un nombre de usuario y contraseña.
Puede utilizar ese nombre de usuario y contraseña para una conexión segura del dispositivo.
data_store.conf
SQLitees el almacenamiento de datos predeterminado en MQTT broker.
Para almacenar una gran cantidad de datos, puede cambiar la configuración de almacenamiento aMySQL o MSSQL.
Para la visualización y análisis de datos de gran alcance, puede almacenar los datos enBúsqueda elásticao cualquier otroGran motor de datosusando una implementación personalizada.
Estas opciones configuradas utilizandodata_store.confarchivo dentro de la carpeta conf.
Para utilizar MySQL como cambio de almacenamiento de datos,DB_SERVER= MySQL.
Y proporcionar el nombre de usuario y contraseña requeridos para MySQL.
Ahora los datos se almacenarán dentro de la carpeta de datos en el nombre del archivo especificado paraMYSQL_DB.
Después de la configuración del corredor, ahora puede comenzar el MQTT Broker.
Para ejecutar el MQTTBroker como servicio, utilice la versión 5,25 Monit.
El procedimiento para establecer el dinero:
Descargue el Monit para Raspberry Pi 3, basado en sus servidores.
Extraer el archivo usandotar -xzf = archivo descargado.
Ve a monit-5.25.2/bin.
Copiar monit a /usr/bin carpeta utilizando el comando
sudo cp monit /usr/bin
Ve al monit-5.25.2/conf.
Utilizando el siguiente comando copiar el archivo monitrc a “/etc/”
sudo cp monitrc /etc/.
Configuración del mono:
Modificar el archivo monit conf.
Monit viene con su servidor web funcionando en el puerto 2812.
Para configurar la interfaz web, une la sección que comienza con el puerto httpd
2812
dentro/etc/monitrcarchivo.
Entonces usa
sudo vi /etc/monitrc.
Y, cambiar elnombre de usuario y contraseñasegún su necesidad.
Agregar servicios de vigilancia:
Al final del/etc/monitrcarchivo , añadir el siguiente.
Comprobar proceso MQTT broker, con pidfile Bevywise/MQTTRoute/Broker.pid.
programa de inicio = “Bevywise/MQTTRoute/bin/runbroker.sh” con tiempo de salida 2 segundos.
stop program = “Bevywise/MQTTRoute/bin/stopbroker.sh” con tiempo de salida 2 segundos.
Para recargar los cambios de configuración, ejecutar
sudo monit reload
Para añadir el proceso de corretaje MQTT a monitorizar, utilizar
sudo monit start MQTTRoute
Reinicie el Raspberry Pi.
Ahora, el corredor empezará a correr en el fondo.
Configuración del ESP8266
Los siguientes pasos explican cómo destellar una biblioteca de clientes en ESP8266 utilizando el Arduino IDE.
Paso 1: Conecta tu PC con internet
Conecta tu PC a Internet en el que vas a flashear el ESP8266.
Puede conectarlo usando un cable Ethernet o WiFi.
Paso 2: Instalar el último Arduino IDE
Para instalar el último Arduino IDE, vaya a Arduino la página utilizando lo siguiente
link https://www.arduino.cc
Seleccione su sistema operativo y descargue el último software.
Paso 3: Instalar el ESP8266 Junta
Una vez que instale el software Arduino, ábrelo.
Navegue a Archivo - confiar Preferencias - URLs Administrador de Juntas adicionales.
En este cuadro de texto, copiar y pegar el siguiente enlacehttp://arduino.esp8266.com/stable/package_esp8266com_index.json
Haga clic en "ok" para guardar sus cambios.
Ahora abre el administrador de la Junta.
Ir a Herramientas - titulado Board - título Director de la Junta.
Seleccioneesp8266 por ESP8266 Comunidadpaquete e instalar
Es.
Luego elija su tabla ESP8266 de Herramientas - título Board - confiar Genérico ESP8266 Módulo
(ESP8266-01).
Herramientas - título Board - título NodeMCU 1.0 ESP-12 E Module (ESP8266-12 E & Development Board)
Finalmente, vuelva a abrir su IDE Arduino.
Paso 4: Instalar el software controlador de dispositivos – CDM21226
Descargar software de controlador para FTDI USB
a TTL Adaptador serie Módulo desde el archivo zip.
Ahora descifra la carpeta descargada.
Ejecutar el archivo CDM21226_setup.exe e instalarlo.
Ahora, Conecta el ESP8266 al USB de tu PC.
Paso 5: Descargar e instalar las bibliotecas necesarias
Antes de programar el ESP8266, necesita instalar las bibliotecas en la biblioteca Arduino
gerente.
Actualmente hay varios clientes compatibles con Arduino.
Uno de los clientes más conocidos es PubSubClient.
Para instalar la Biblioteca PubSubClient, copiar y pegarlo en Documentos - título Arduino - título
Biblioteca.
Y reiniciar Arduino IDE.
Paso 6: Compilar el programa principal
Una vez que haya instalado esas bibliotecas, podrá ejecutar el código.
Actualmente, antes de comenzar la programación, tenemos que elegir un par de varios
alternativas.
En la opción de menú Herramientas, seleccione ESP8266 para Tablero, 80 MHz para la frecuencia CPU, 4M para
el tamaño de Flash, y 115200 para el
Sube la velocidad.
Además, trate de elegir el puerto COM que está utilizando (esto dependerá de su
configuración).
En primer lugar, el LED configurado, luego el puerto serie se establece, y el WiFi configurado.
Finalmente, el cliente establece elMQTT serverdirección como 1883, y la función callback.
Configuración de un MQTT Publish/Subscribe:
vaciado () {} (!client.connected()))) {} Serial.print(“Intento de conexión MQTT...”); si(client.connect(“ESP8266Client”)) {} Serial.println(“conectado”); cliente.subscribe(“ESP8266/LED”); cliente.publish (“ESP8266/LED”,”on”); } más {} Serial.print(“failed, rc=”); Serial.print(client.state()); Serial.println(” intentar de nuevo en 5 segundos”); (5000) } } }
En esta fase se realizará el proceso de publicación y suscripción.
Elcliente.connectintentará establecer el
Conexión.
Elcliente.publishpublicará el tema “ESP8266/LED”
con el valor “on”.
Si tiene éxito, el cliente publica el mensaje “on”.
Incliente., el cliente se suscribirá al tema
“ESP8266/LED”.
Si ocurre un fracaso, intentará reconectarse.
Flashing ESP8266
Para flashear el ESP8266, vaya a ArduinoIDE - título Sketch - confianza subir.
Diagrama de circuito para Flashing el programa en ESP-12E
Conexión ESP8266 con MQTT broker en Raspberry Pi
Una vez subido el programa, el ESP8266 se iniciará y conectará al servidor MQTT.
Para asegurarse de que esté conectado, vaya a la interfaz de usuario MQTT.
Compruebe si el cliente está conectado o no.
Interfaz de usuario de MQTT
Una vez que se conecta al broker MQTT, puede verlo a través de la interfaz de usuario.
Utilice su navegador y abra la interfaz de usuario con la URL“http://localhost:8080”.
En la página de inicio de sesión, verá el predeterminado “Username” y “Password” como “admin”, utilizarlo
para iniciar sesión en el usuario de MQTT
Interfaz.
Los usuarios también pueden cambiar el nombre de usuario y la contraseña a través de la interfaz de usuario.
El corredor Dashboard de MQTT dará una vista rápida del dispositivo conectado.
Los detalles del dispositivo individual se pueden ver visitando la pestaña Dispositivos.
El estado de conexión y los mensajes publicados serán actualizados dinámicamente.
RefiriéndonosAyuda a un corredor
documentaciónpara más
información sobre nuestra interfaz de usuario MQTT Broker.
Para saber más sobre las características, visiteMQTT Brokerpágina.
Nota : ¿Es usted la persona tecnológica que busca automatizar su casa en una caja de pi Raspbery?
Aquí está tuFOREVER
GRUTIS MQTT Brokercon todos los widgets y dashboard
necesario para monitorear y controlar sus dispositivos MQTT.