Tabla de contenido:
- Paso 1: instalación de la biblioteca
- Paso 2: Código
- Paso 3: Configurar el cliente MQTT (MQTTBOX)
- Paso 4: Resultado de ejecución del programa
Video: NodeMCU - Ejemplo básico de MQTT: 4 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
Esta lección mostrará el uso básico del protocolo MQTT en la placa NodeMCU. Usamos MQTTBox como el cliente MQTT aquí, y usaremos NodeMCU para completar las siguientes operaciones:
Publica "hola mundo" en el tema "outTopic" cada dos segundos. Suscríbete al tema "inTopic", imprime los mensajes recibidos. Se asume que las cargas útiles recibidas son cadenas, no binarios. Si el mensaje suscrito es "1", enciende el LED integrado. Apague el LED integrado si el mensaje para suscribirse es "0".
Preparación: Osoyoo NodeMCU x1
Cable USB x1
PC x1
IDE de Arduino (Versin 1.6.4+)
Conecte el NodeMCU a la PC mediante un cable USB.
Paso 1: instalación de la biblioteca
Instalar PubSubClientlibrary
Necesitamos instalar la biblioteca de puntos finales MQTT (PubSubClient) para comunicarnos con el agente MQTT, descargue la biblioteca desde el siguiente enlace:
Descomprima el archivo anterior, mueva la carpeta descomprimida a la carpeta de la biblioteca Arduino IDE.
Abra el IED de Arduino, puede encontrar el "pubsubclient" en la columna "Ejemplos".
Instale el cliente MQTT:
utilizaremos MQTTBox como cliente MQTT. descárguelo de:
Paso 2: Código
abra Arduino IDE–> Archivo–> Ejemplo–> pubsubclient–> mqtt esp8266, obtendrá un código de muestra.
Edite el código para que se ajuste a su propia configuración de WiFi y MQTT de la siguiente manera: 1) Configuración de punto de acceso: busque la línea de código debajo, ingrese su propio ssid y contraseña allí.
const char * ssid = “your_hotspot_ssid”; const char * contraseña = “your_hotspot_password”;
2) Configuración de la dirección del servidor MQTT, aquí utilizamos el broker MQTT gratuito "broker.mqtt-dashboard.com". Puede utilizar su propia URL o dirección IP de agente MQTT para establecer el valor mqtt_server anterior. También puede utilizar algún famoso servidor MQTT gratuito para probar el proyecto, como “broker.mqtt-dashboard.com”, “iot.eclipse.org”, etc.
const char * mqtt_server = “broker.mqtt-dashboard.com”;
3) Configuración del cliente MQTT Si su agente MQTT requiere autenticación de ID de cliente, nombre de usuario y contraseña, debe
cambio
si (client.connect (clientId.c_str ()))
Para
if (client.connect (clientId, userName, passWord)) // ponga su clientId / userName / passWord aquí
De lo contrario, manténgalos como predeterminados. Después de hacer eso, elija el tipo de placa correspondiente y el tipo de puerto como se muestra a continuación, luego cargue el boceto en NodeMCU.
- Placa: "NodeMCU 0.9 (módulo ESP-12)"
- Frecuencia de CPU: "80MHz" Tamaño de flash: "4M (3M SPIFFS)"
- Velocidad de subida:”115200 ″
- Puerto: elija su propio puerto serie para su NodeMCU
Paso 3: Configurar el cliente MQTT (MQTTBOX)
En este paso, mostraremos cómo crear un cliente MQTT en MQTTBox.
Abra su MQTTBox y haga clic en el botón azul para agregar un nuevo cliente MQTT.
Configure los AJUSTES DEL CLIENTE MQTT como se muestra a continuación:
- Nombre del cliente MQTT: elija el nombre que desee
- Protocolo: elija "mqtt / tcp"
- Host: escriba su "mqtt_server" en esta columna, asegúrese de que sea el mismo que su boceto. (Usamos "broker.mqtt-dashboard.com" aquí)
- Mantener otras configuraciones como predeterminadas
- Haga clic para guardar sus cambios.
A continuación, ingresará automáticamente a la nueva página. Si toda la configuración anterior es correcta, "No conectado" cambiará a "Conectado", su nombre de cliente MQTT y el nombre de host se mostrarán en la parte superior de esta página.
Configuración del tema: asegúrese de que el tema de publicación de su cliente MQTT sea el mismo que el tema de suscripción del boceto de Arduino (inTopic here). Asegúrese de que el tema de suscripción de su cliente MQTT sea el mismo que el tema de publicación de bocetos de Arduino (outTopic here).
Paso 4: Resultado de ejecución del programa
Una vez realizada la carga, si la configuración del nombre y la contraseña del punto de acceso wifi está bien y el broker MQTT está conectado, abra el Monitor en serie, verá el mensaje de publicación "hola mundo" en el monitor en serie.
Luego abra el cliente MQTT y publique la carga útil “1” al tema, este NodeMCU recibirá estos mensajes suscribiéndose al “inTopic”, y el LED se encenderá.
Publique la carga útil "0" en este tema, el LED de NodeMCU se apagará.
Recomendado:
LED Snapper: probablemente el equipo de prueba más básico que puede hacer: 3 pasos
LED Snapper: probablemente el equipo de prueba más básico que puede hacer: permítame presentarle el LED Snapper. Un equipo de prueba simple pero enormemente útil que puede construir para ayudarlo a depurar sus proyectos de electrónica. LED Snapper es una placa de circuito impreso de código abierto que le permite agregar fácilmente de
Diseño de circuitos de adquisición, amplificación y filtrado de un electrocardiograma básico: 6 pasos
Diseño de circuito de adquisición, amplificación y filtrado de un electrocardiograma básico: para completar este instructable, lo único que se necesita es una computadora, acceso a Internet y algún software de simulación. A los efectos de este diseño, todos los circuitos y simulaciones se ejecutarán en LTspice XVII. Este software de simulación contiene
Módulo HC-05 (bluetooth) para domótica básico: 3 pasos
Módulo HC-05 (bluetooth) para domótica básico: En mi último proyecto, estaba controlando el LED con un botón pulsador, pero en este proyecto he reemplazado PUSH BUTTON con el módulo HC-05. Recomiendo encarecidamente pasar por estos proyectos antes continuando con este proyecto. Obtendrá todos los detalles en el
Programa básico C ++: 11 pasos
Programa Básico C ++: en este programa aprenderás los conceptos básicos de c ++ codificando un programa simple en c ++ para hacer múltiples usuarios y mostrar estos usuarios, ¡¡¡¡¡espero que lo disfrutes
Cómo hacer un sitio web básico usando el Bloc de notas: 4 pasos
Cómo hacer un sitio web básico usando el Bloc de notas: ¿Alguien se ha preguntado " ¿cómo puedo hacer un sitio web con un programa de escritura básico? &Quot; Bueno, obviamente, no específicamente … De todos modos, aquí le mostraré cómo hacer un sitio web usando solo el bloc de notas