Table des matières:

NodeMCU - Exemple de base MQTT : 4 étapes
NodeMCU - Exemple de base MQTT : 4 étapes

Vidéo: NodeMCU - Exemple de base MQTT : 4 étapes

Vidéo: NodeMCU - Exemple de base MQTT : 4 étapes
Vidéo: C-06 NODEMCU (ESP8266) en Français: Envoyer des données au serveur MQTT Adafruit.IO 2024, Novembre
Anonim
Image
Image

Cette leçon montrera l'utilisation de base du protocole MQTT sur la carte NodeMCU. Nous utilisons ici la MQTTBox comme client MQTT et nous utiliserons le NodeMCU pour effectuer les opérations suivantes:

Publiez « hello world » dans le sujet « outTopic » toutes les deux secondes. Abonnez-vous au sujet « inTopic », imprimez tous les messages reçus. Cela suppose que les charges utiles reçues sont des chaînes et non des binaires. Si le message souscrit est « 1 », allumez le LED embarquée. Éteignez la LED embarquée si le message pour vous abonner est « 0 ».

Préparation: Osoyoo NodeMCU x1

Câble USB x1

PC x1

IDE Arduino (Versine 1.6.4+)

Connectez le NodeMCU au PC via un câble USB.

Étape 1: Installation de la bibliothèque

Installation de la bibliothèque
Installation de la bibliothèque
Installation de la bibliothèque
Installation de la bibliothèque

Installer la bibliothèque PubSubClient

Nous devons installer la bibliothèque de point de terminaison MQTT (PubSubClient) pour communiquer avec le courtier MQTT, veuillez télécharger la bibliothèque à partir du lien suivant:

Décompressez le fichier ci-dessus, déplacez le dossier décompressé vers le dossier de la bibliothèque Arduino IDE.

Ouvrez l'IED Arduino, vous pouvez trouver le "pubsubclient" dans la colonne "Exemples".

Installez le client MQTT:

nous utiliserons la MQTTBox comme client MQTT. veuillez télécharger à partir de:

Étape 2: Coder

Code
Code
Code
Code

ouvrez Arduino IDE–>Fichier–>Exemple–>pubsubclient–>mqtt esp8266, vous obtiendrez un exemple de code.

Modifiez le code pour qu'il corresponde à vos propres paramètres WiFi et MQTT en procédant comme suit: 1) Configuration du point d'accès: trouvez la ligne de code ci-dessous, placez votre propre ssid et mot de passe dessus.

const char* ssid = « your_hotspot_ssid »;const char* password = « your_hotspot_password »;

2) Réglage de l'adresse du serveur MQTT, ici, nous utilisons le courtier MQTT gratuit "broker.mqtt-dashboard.com". Vous pouvez utiliser votre propre URL ou adresse IP de courtier MQTT pour définir la valeur mqtt_server ci-dessus. Vous pouvez également utiliser un célèbre serveur MQTT gratuit pour tester le projet tel que "broker.mqtt-dashboard.com", "iot.eclipse.org" etc.

const char* mqtt_server = « broker.mqtt-dashboard.com »;

3) Paramètres du client MQTT Si votre courtier MQTT nécessite une authentification par ID client, nom d'utilisateur et mot de passe, vous devez

monnaie

si (client.connect(clientId.c_str()))

À

if (client.connect(clientId, userName, passWord)) //mettre votre clientId/userName/passWord ici

Sinon, conservez-les par défaut. Après cela, choisissez le type de carte et le type de port correspondants comme ci-dessous, puis téléchargez le croquis sur le NodeMCU.

  • Carte: "NodeMCU 0.9 (module ESP-12)"
  • Fréquence du processeur: "80 MHz" Taille du flash: « 4 M (3 M SPIFFS) »
  • Vitesse de téléchargement: "115200"
  • Port: choisissez votre propre port série pour votre NodeMCU

Étape 3: Configurer le client MQTT (MQTTBOX)

Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)
Configurer le client MQTT (MQTTBOX)

Dans cette étape, nous montrerons comment créer un client MQTT sur la MQTTBox.

Ouvrez votre MQTTBox et cliquez sur le bouton bleu pour ajouter un nouveau client MQTT.

Configurez les PARAMÈTRES CLIENT MQTT comme ci-dessous:

  • Nom du client MQTT -- Choisissez le nom de votre choix
  • Protocole -- Choisissez "mqtt/tcp"
  • Hôte - Tapez votre "mqtt_server" dans cette colonne, assurez-vous qu'il est identique à votre croquis. (Nous utilisons "broker.mqtt-dashboard.com" ici)
  • Conserver les autres paramètres par défaut
  • Cliquez pour enregistrer vos modifications.

Ensuite, vous entrerez automatiquement dans la nouvelle page. Si toutes les configurations ci-dessus sont correctes, le "Non connecté" deviendra "Connecté", votre nom de client MQTT et votre nom d'hôte seront affichés en haut de cette page.

Paramètre de sujet: assurez-vous que le sujet de publication de votre client MQTT est le même que votre sujet d'abonnement à l'esquisse Arduino (dans le sujet ici). Assurez-vous que votre sujet d'abonnement client MQTT est le même que votre sujet de publication de croquis Arduino (outTopic here).

Étape 4: Résultat en cours d'exécution du programme

Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme
Résultat en cours d'exécution du programme

Une fois le téléchargement terminé, si le nom du point d'accès wifi et le mot de passe sont corrects et que le courtier MQTT est connecté, ouvrez le moniteur série, vous verrez le message de publication "hello world" sur le moniteur série.

Ouvrez ensuite le client MQTT et publiez la charge utile « 1 » dans le sujet, ce NodeMCU recevra ces messages en s'abonnant au « inTopic » et la LED sera allumée.

Publiez la charge utile « 0 » dans cette rubrique, le voyant NodeMCU sera éteint.

Conseillé: