Kazalo:

NodeMCU - MQTT Osnovni primer: 4 koraki
NodeMCU - MQTT Osnovni primer: 4 koraki

Video: NodeMCU - MQTT Osnovni primer: 4 koraki

Video: NodeMCU - MQTT Osnovni primer: 4 koraki
Video: Как использовать ESP32 WiFi и Bluetooth с Arduino IDE, полная информация с примерами и кодом. 2024, Julij
Anonim
Image
Image

Ta lekcija bo prikazala osnovno uporabo protokola MQTT na plošči NodeMCU. Tukaj uporabljamo MQTTBox kot odjemalca MQTT, NodeMCU pa bomo uporabili za dokončanje naslednjih operacij:

Vsake dve sekundi objavite "hello world" na temo "outTopic". Naročite se na temo "inTopic", natisnite vsa prejeta sporočila. Predvideva se, da so prejeti tovori nizi in ne binarni. Če je naročeno sporočilo "1", prižgite vgrajena LED. Izklopite vgrajeno LED, če je sporočilo za naročanje “0”.

Priprava: Osoyoo NodeMCU x1

USB kabel x1

PC x1

Arduino IDE (Versin 1.6.4+)

NodeMCU povežite z računalnikom prek kabla USB.

1. korak: Namestitev knjižnice

Namestitev knjižnice
Namestitev knjižnice
Namestitev knjižnice
Namestitev knjižnice

Namestite PubSubClientlibrary

Za komunikacijo s posrednikom MQTT potrebujemo namestitev knjižnice končnih točk MQTT (PubSubClient). Knjižnico prenesite s te povezave:

Razpakirajte zgornjo datoteko, premaknite nezapakirano mapo v mapo knjižnice Arduino IDE.

Odprite Arduino IED, v stolpcu »Primeri« najdete »pubsubclient«.

Namestite odjemalca MQTT:

kot odjemalca MQTT bomo uporabili MQTTBox. prosim prenesite s spletnega mesta:

2. korak: Koda

Koda
Koda
Koda
Koda

odprite Arduino IDE–> Datoteka–> Primer–> pubsubclient–> mqtt esp8266, dobili boste vzorčno kodo.

Kodo uredite tako, da ustreza vašim lastnim nastavitvam WiFi in MQTT, na naslednji način: 1) Konfiguracija vroče točke: Poiščite spodnjo vrstico kode, vnesite svoj ssid in geslo.

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

2) Nastavitev naslova strežnika MQTT, tukaj uporabljamo brezplačnega posrednika MQTT "broker.mqtt-dashboard.com". Za nastavitev vrednosti mqtt_server lahko uporabite svoj URL posrednika ali naslov IP posrednika MQTT. Za preizkus projekta lahko uporabite tudi kakšen znani brezplačni strežnik MQTT, na primer “broker.mqtt-dashboard.com”, “iot.eclipse.org” itd.

const char* mqtt_server = “broker.mqtt-dashboard.com”;

3) Nastavitve odjemalca MQTT Če vaš posrednik MQTT zahteva identifikacijo odjemalca, uporabniško ime in geslo, morate

spremeniti

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

Za

if (client.connect (clientId, userName, passWord)) // tukaj vnesite vaš clientId/userName/passWord

Če ne, jih obdržite kot privzete. Po tem izberite ustrezno vrsto plošče in vrsto vrat, kot je prikazano spodaj, nato naložite skico v NodeMCU.

  • Plošča: "NodeMCU 0,9 (modul ESP-12)"
  • Frekvenca procesorja:”80MHz” Velikost bliskavice:”4M (3M SPIFFS)”
  • Hitrost nalaganja:”115200 ″
  • Vrata: Izberite svoja serijska vrata za svoj NodeMCU

3. korak: Konfigurirajte odjemalca MQTT (MQTTBOX)

Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)
Konfiguriraj odjemalca MQTT (MQTTBOX)

V tem koraku bomo pokazali, kako ustvariti odjemalca MQTT na polju MQTTBox.

Odprite svoj MQTTBox in kliknite modri gumb, da dodate novega odjemalca MQTT.

Konfigurirajte nastavitve stranke MQTT, kot je opisano spodaj:

  • Ime odjemalca MQTT - izberite poljubno ime
  • Protokol - izberite »mqtt/tcp«
  • Gostitelj - vnesite stolpec »mqtt_server« v ta stolpec in se prepričajte, da je enak vaši skici. (Tukaj uporabljamo »broker.mqtt-dashboard.com«)
  • Druge nastavitve naj bodo privzete
  • Kliknite, da shranite spremembe.

Nato boste samodejno vstopili na novo stran. Če je vsa zgoraj navedena konfiguracija pravilna, se »Not Connected« spremeni v »Connected«, ime odjemalca MQTT in ime gostitelja bosta prikazana na vrhu te strani.

Nastavitev teme: Poskrbite, da bo vaša tema za objavo odjemalca MQTT enaka vaši temi za naročanje na skico Arduino (inTopic tukaj). Prepričajte se, da je vaša naročniška tema odjemalca MQTT enaka temi objave skice Arduino (OutTopic tukaj).

4. korak: Rezultat izvajanja programa

Rezultat programa
Rezultat programa
Rezultat programa
Rezultat programa
Rezultat programa
Rezultat programa
Rezultat programa
Rezultat programa

Ko je nalaganje končano, če sta ime in geslo dostopne točke Wi -Fi v redu in je posrednik MQTT povezan, odprite Serijski monitor, na serijskem monitorju boste videli sporočilo o objavi »hello world«.

Nato odprite odjemalca MQTT in objavite koristno obremenitev »1« za temo, ta NodeMCU bo prejela ta sporočila, če se naročite na »inTopic«, in LED bo zasvetila.

Ob objavi koristne obremenitve »0« na to temo, LED NodeMCU se izklopi.

Priporočena: