Innehållsförteckning:

NodeMCU - MQTT Grundläggande exempel: 4 steg
NodeMCU - MQTT Grundläggande exempel: 4 steg

Video: NodeMCU - MQTT Grundläggande exempel: 4 steg

Video: NodeMCU - MQTT Grundläggande exempel: 4 steg
Video: How to control Servo Motor using ESP32 with Arduino ESP32 Servo library 2024, Juli
Anonim
Image
Image

Den här lektionen visar den grundläggande användningen av MQTT -protokollet på NodeMCU -kortet. Vi använder MQTTBox som MQTT -klienten här, och vi kommer att använda NodeMCU för att slutföra följande operationer:

Publicera "hej världen" till ämnet "outTopic" varannan sekund. Prenumerera på ämnet "inTopic", skriv ut alla mottagna meddelanden. Det förutsätter att de mottagna nyttolasterna är strängar inte binära. Om det prenumererade meddelandet är "1", tänd inbyggd LED. Stäng av den inbyggda lysdioden om meddelandet att prenumerera är "0".

Förberedelse: Osoyoo NodeMCU x1

USB -kabel x1

PC x1

Arduino IDE (version 1.6.4+)

Anslut NodeMCU till PC via USB -kabel.

Steg 1: Biblioteksinstallation

Installation av bibliotek
Installation av bibliotek
Installation av bibliotek
Installation av bibliotek

Installera PubSubClientlibrary

Vi behöver installera MQTT-slutpunktsbibliotek (PubSubClient) för att kommunicera med MQTT-mäklare, ladda ner biblioteket från följande länk:

Packa upp filen ovan, flytta den uppackade mappen till Arduino IDE biblioteksmapp.

Öppna Arduino IED, du hittar "pubsubclient" i kolumnen "Exempel".

Installera MQTT Client:

vi kommer att använda MQTTBox som MQTT -klient. ladda ner från:

Steg 2: Kod

Koda
Koda
Koda
Koda

öppna Arduino IDE–> File–> Exempel–> pubsubclient–> mqtt esp8266, du får provkod.

Redigera koden så att den passar dina egna WiFi- och MQTT -inställningar enligt följande åtgärder: 1) Hotspot Configration: Hitta nedanför kodlinjen, lägg in din egen ssid och lösenord där.

const char* ssid = “your_hotspot_ssid”; const char* password = “your_hotspot_password”;

2) MQTT-serveradressinställning, här använder vi gratis MQTT-mäklare "broker.mqtt-dashboard.com". Du kan använda din egen MQTT -mäklares URL eller IP -adress för att ange över mqtt_server -värdet. Du kan också använda någon berömd gratis MQTT-server för att testa projektet som "broker.mqtt-dashboard.com", "iot.eclipse.org" etc.

const char* mqtt_server = “mäklare.mqtt-dashboard.com”;

3) MQTT -klientinställningar Om din MQTT -mäklare kräver klient -ID, användarnamn och lösenordsautentisering måste du

förändra

if (client.connect (clientId.c_str ()))

Till

if (client.connect (clientId, userName, passWord)) // lägg ditt clientId/userName/passWord här

Om inte, behåll bara dem som standard. Efter det, välj motsvarande korttyp och porttyp enligt nedan och ladda upp skissen till NodeMCU.

  • Kort:”NodeMCU 0.9 (ESP-12-modul)”
  • CPU -frekvens:”80MHz” Flashstorlek:”4M (3M SPIFFS)”
  • Uppladdningshastighet:”115200 ″
  • Port: Välj din egen serieport för din NodeMCU

Steg 3: Konfigurera MQTT -klient (MQTTBOX)

Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)
Config MQTT Client (MQTTBOX)

I det här steget kommer vi att visa hur du skapar en MQTT -klient på MQTTBoxen.

Öppna din MQTTBox och klicka på den blå knappen för att lägga till en ny MQTT -klient.

Konfigurera MQTT -KLIENTINSTÄLLNINGAR enligt nedan:

  • MQTT -klientnamn - Välj vilket namn du vill
  • Protokoll - Välj "mqtt/tcp"
  • Värd - Skriv din "mqtt_server" i den här kolumnen, se till att den är densamma som din skiss. (Vi använder "broker.mqtt-dashboard.com" här)
  • Behåll andra inställningar som standard
  • Klicka för att spara dina ändringar.

Därefter kommer du automatiskt in på den nya sidan. Om all ovanstående konfigration är korrekt ändras "Inte ansluten" till "Ansluten", ditt MQTT -klientnamn och värdnamn visas högst upp på denna sida.

Ämnesinställning: Se till att ditt MQTT -klientpubliceringsämne är samma som ditt Arduino -skissabonnemangsämne (inTopic här). Se till att din MQTT -klient prenumerera ämne är samma som din Arduino skiss publicera ämne (outTopic här).

Steg 4: Programkörningsresultat

Programkörningsresultat
Programkörningsresultat
Programkörningsresultat
Programkörningsresultat
Program kör resultat
Program kör resultat
Programkörningsresultat
Programkörningsresultat

När överföringen är klar, om wifi -hotspots namn och lösenordsinställning är ok, och MQTT -mäklaren är ansluten, öppnar du Serial Monitor, du kommer att se publiceringsmeddelandet "hej världen" på seriemonitorn.

Öppna sedan MQTT -klienten och publicera nyttolast “1” till ämnet, denna NodeMCU tar emot dessa meddelanden genom att prenumerera på”inTopic” och lysdioden tänds.

Publicera nyttolast “0” till detta ämne, NodeMCU -LED kommer att släckas.

Rekommenderad: