Innholdsfortegnelse:

NodeMCU - MQTT Grunneksempel: 4 trinn
NodeMCU - MQTT Grunneksempel: 4 trinn

Video: NodeMCU - MQTT Grunneksempel: 4 trinn

Video: NodeMCU - MQTT Grunneksempel: 4 trinn
Video: How to Publish DHT11 Sensor Data from NodeMCU to Mosquitto MQTT Broker over LAN | NodeMCU | MQTT | 2024, Juli
Anonim
Image
Image

Denne leksjonen viser den grunnleggende bruken av MQTT -protokollen på NodeMCU -kortet. Vi bruker MQTTBox som MQTT -klienten her, og vi vil bruke NodeMCU for å fullføre følgende operasjoner:

Publiser "hei verden" til emnet "outTopic" annethvert sekund. Abonner på emnet "inTopic", skriv ut eventuelle mottatte meldinger. Det forutsetter at den mottatte nyttelasten er strenger, ikke binære. Hvis meldingen du abonnerer på er "1", tennes innebygd LED. Slå av den innebygde LED -en hvis meldingen for å abonnere er "0".

Forberedelse: Osoyoo NodeMCU x1

USB -kabel x1

PC x1

Arduino IDE (Versin 1.6.4+)

Koble NodeMCU til PC via USB -kabel.

Trinn 1: Bibliotekinstallasjon

Installasjon av bibliotek
Installasjon av bibliotek
Installasjon av bibliotek
Installasjon av bibliotek

Installer PubSubClientlibrary

Vi trenger installering av MQTT-endepunktsbibliotek (PubSubClient) for å kommunisere med MQTT-megler. Last ned biblioteket fra følgende lenke:

Pakk ut filen ovenfor, flytt den utpakkede mappen til Arduino IDE bibliotekmappe.

Åpne Arduino IED, du finner "pubsubclient" i kolonnen "Eksempler".

Installer MQTT Client:

vi vil bruke MQTTBox som MQTT -klienten. vennligst last ned fra:

Trinn 2: Kode

Kode
Kode
Kode
Kode

åpne Arduino IDE–> File–> Eksempel–> pubsubclient–> mqtt esp8266, får du prøvekode.

Rediger koden slik at den passer til dine egne WiFi- og MQTT -innstillinger som følgende operasjoner: 1) Hotspot Configration: Finn under kodelinjen, sett ditt eget ssid og passord der.

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

2) MQTT Server Address Setting, her bruker vi gratis MQTT-megler "broker.mqtt-dashboard.com". Du kan bruke din egen MQTT -megler -URL eller IP -adresse for å angi over mqtt_server -verdien. Du kan også bruke en berømt gratis MQTT-server til å teste prosjektet, for eksempel “broker.mqtt-dashboard.com”, “iot.eclipse.org” etc.

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

3) MQTT -klientinnstillinger Hvis din MQTT -megler krever klient -ID, brukernavn og passordautentisering, må du

endring

hvis (client.connect (clientId.c_str ()))

Til

if (client.connect (clientId, userName, passWord)) // legg ditt clientId/userName/passWord her

Hvis ikke, bare behold dem som standard. Etter at du har gjort det, velger du den tilsvarende brettypen og porttypen som nedenfor, og laster deretter opp skissen til NodeMCU.

  • Styret:”NodeMCU 0.9 (ESP-12 Module)”
  • CPU -frekvens: "80MHz" Flash -størrelse: "4M (3M SPIFFS)"
  • Last opp hastighet:”115200 ″
  • Port: Velg din egen serieport for NodeMCU

Trinn 3: Konfigurer 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 dette trinnet viser vi hvordan du oppretter en MQTT -klient på MQTTBox.

Åpne MQTTBox og klikk på den blå knappen for å legge til en ny MQTT -klient.

Konfigurer MQTT -KLIENTINNSTILLINGENE som nedenfor:

  • MQTT -klientnavn - Velg et navn du liker
  • Protokoll - Velg "mqtt/tcp"
  • Vert - Skriv inn "mqtt_server" i denne kolonnen, sørg for at den er den samme som skissen din. (Vi bruker "broker.mqtt-dashboard.com" her)
  • Behold andre innstillinger som standard
  • Klikk for å lagre endringene.

Deretter går du automatisk inn på den nye siden. Hvis all overbygning er korrekt, vil “Ikke tilkoblet” endres til “Tilkoblet”, MQTT -klientnavnet og vertsnavnet vises øverst på denne siden.

Emneinnstilling: Sørg for at MQTT -klientens publiseringsemne er det samme som ditt Arduino -skisseabonnementsemne (inTopic her). Sørg for at MQTT -klientens abonnementsemne er det samme som ditt Arduino -skissepubliseringsemne (outTopic here).

Trinn 4: Program kjøreresultat

Program kjøreresultat
Program kjøreresultat
Program kjøreresultat
Program kjøreresultat
Program kjøreresultat
Program kjøreresultat
Program kjøreresultat
Program kjøreresultat

Når opplastingen er fullført, hvis wifi hotspot -navnet og passordinnstillingen er ok, og MQTT -megleren er tilkoblet, åpner du Serial Monitor, du vil se publiseringsmeldingen "hei verden" på den serielle skjermen.

Åpne deretter MQTT -klienten og publiser nyttelast “1” til emnet, denne NodeMCU vil motta disse meldingene ved å abonnere på “inTopic”, og LED -lampen lyser.

Publiser nyttelast “0” til dette emnet, NodeMCU -lysdioden slås av.

Anbefalt: