
Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11


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


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


ö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)




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




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:
Hur man gör ditt eget operativsystem! (sats och Exempel inuti): 5 steg

Hur man gör ditt eget operativsystem! (sats och exempel inuti): Gör det nu
Modernt och nytt och enklare exempel på skåp med Arduino Matrix -knappsats 4x4: 3 steg

Modernt och nytt och enklare exempel på skåp med Arduino Matrix -knappsats 4x4: Ett annat exempel på att använda en LCD -knappsatsmatris 4x4 med en I2C -krets
APP INVENTOR 2 - Clean Front Tips (+4 Exempel): 6 steg

APP INVENTOR 2 - Clean Front Tips (+4 Exempel): Vi ska se hur vi kan få din App på AI2 att se estetisk ut :) Ingen kod den här gången, bara tips för en smidig app som de fyra exemplen ovan
IoT Guru Cloud - Enkelt diagram Exempel: 4 steg

IoT Guru Cloud - Enkelt diagram Exempel: IoT Guru Cloud erbjuder ett gäng backend -tjänster via REST API och du kan enkelt integrera dessa REST -samtal till din webbsida. Med Highcharts kan du visa diagram över din mätning helt enkelt med ett AJAX -samtal
Eagle Hacks/tricks: Exempel TB6600 CNC Mill Stepper Motor Driver: 7 Steg

Eagle Hacks/tricks: Exempel TB6600 CNC Mill Stepper Motor Driver: Detta gör det till ett bra projekt att visa de få knep som kommer att göra ditt liv enklare när du skapar PCB. För att lära dig några hack så att du får ut mer av Eagle, jag väljer ett enkelt projekt som jag gjorde för min Kickstarter. Jag behövde en extern