INHOUDSOPGAWE:
- Stap 1: Biblioteekinstallasie
- Stap 2: Kode
- Stap 3: Config MQTT Client (MQTTBOX)
- Stap 4: Programuitvoerresultaat
Video: NodeMCU - MQTT Basiese voorbeeld: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Hierdie les wys die basiese gebruik van MQTT -protokol op die NodeMCU -bord. Ons gebruik die MQTTBox as die MQTT -kliënt hier, en ons sal die NodeMCU gebruik om die volgende bewerkings te voltooi:
Publiseer elke twee sekondes 'hallo wêreld' onder die onderwerp 'outTopic'. Teken in op die onderwerp 'inTopic', druk alle ontvangde boodskappe uit. Dit veronderstel dat die ontvangde vragte stringe is, nie binaries nie. As die ingeskrewe boodskap '1' is, lig die onboard LED. Skakel die LED aan boord af as die boodskap om in te teken '0' is.
Voorbereiding: Osoyoo NodeMCU x1
USB -kabel x1
Rekenaar x1
Arduino IDE (weergawe 1.6.4+)
Koppel die NodeMCU aan 'n rekenaar via 'n USB -kabel.
Stap 1: Biblioteekinstallasie
Installeer PubSubClientlibrary
Ons benodig die MQTT-eindpuntbiblioteek (PubSubClient) om met die MQTT-makelaar te kommunikeer; laai die biblioteek af vanaf die volgende skakel:
Pak die bogenoemde lêer uit, skuif die uitgepakte vouer na die Arduino IDE -biblioteekmap.
Maak die Arduino IED oop, u kan die 'pubsubclient' vind in die kolom 'Voorbeelde'.
Installeer MQTT -kliënt:
ons sal die MQTTBox as die MQTT -kliënt gebruik. Laai dit af van:
Stap 2: Kode
maak Arduino IDE–> File–> Voorbeeld–> pubsubclient–> mqtt esp8266 oop, u kry voorbeeldkode.
Wysig die kode om by u eie WiFi- en MQTT -instellings te pas soos volg: 1) Hotspot -konfigrasie: vind onder die kodelyn, sit u eie ssid en wagwoord daar.
const char* ssid = "your_hotspot_ssid"; const char* password = "your_hotspot_password";
2) MQTT Server Address Setting, hier gebruik ons gratis MQTT makelaar "broker.mqtt-dashboard.com". U kan u eie MQTT -makelaar -URL of IP -adres gebruik om bo mqtt_server -waarde in te stel. U kan ook 'n bekende MQTT-bediener gebruik om die projek te toets, soos 'broker.mqtt-dashboard.com', 'iot.eclipse.org', ens.
const char* mqtt_server = “makelaar.mqtt-dashboard.com”;
3) MQTT -kliëntinstellings As u MQTT -makelaar clientID, verifikasie van gebruikersnaam en wagwoord benodig, moet u
verander
as (client.connect (clientId.c_str ()))
Aan
as (client.connect (clientId, userName, passWord)) // plaas u clientId/userName/passWord hier
As dit nie die geval is nie, hou dit dan as standaard; kies dan die ooreenstemmende bordtipe en poorttipe soos hieronder, en laai dan die skets op na die NodeMCU.
- Raad: "NodeMCU 0.9 (ESP-12-module)"
- CPU -frekwensie: "80MHz" flitsgrootte: "4M (3M SPIFFS)"
- Oplaaisnelheid:”115200 ″
- Poort: kies u eie seriële poort vir u NodeMCU
Stap 3: Config MQTT Client (MQTTBOX)
In hierdie stap sal ons wys hoe u 'n MQTT -kliënt op die MQTTBox kan skep.
Maak u MQTTBox oop en klik op die blou knoppie om 'n nuwe MQTT -kliënt by te voeg.
Stel die MQTT -KLIËNTINSTELLINGS soos volg op:
- MQTT -kliëntnaam - kies enige naam wat u wil
- Protokol - Kies “mqtt/tcp”
- Gasheer - Tik u 'mqtt_server' in hierdie kolom, maak seker dat dit dieselfde is as u skets. (Ons gebruik 'broker.mqtt-dashboard.com' hier)
- Hou ander instellings as standaard
- Klik om u veranderinge te stoor.
Vervolgens gaan u outomaties die nuwe bladsy in. As al die bogenoemde konfigrasie korrek is, verander die 'Nie gekoppel' na 'Gekoppel', u MQTT -kliëntnaam en gasheernaam sal bo -aan hierdie bladsy verskyn.
Onderwerpopstelling: Maak seker dat u onderwerp vir publisering van MQTT -klante dieselfde is as u Arduino -skets -intekeningonderwerp (inTopic hier). Maak seker dat u intekeningonderwerp vir die MQTT -kliënt dieselfde is as die onderwerp van u Arduino -skets, outTopic hier).
Stap 4: Programuitvoerresultaat
Sodra die oplaai voltooi is, as die naam van die wifi -hotspot en die wagwoord goed is en die MQTT -makelaar gekoppel is, maak die Serial Monitor oop, sien u die boodskap "Hallo wêreld" op die seriële monitor.
Maak dan die MQTT -kliënt oop en publiseer die lading "1" vir die onderwerp, hierdie NodeMCU sal hierdie boodskappe ontvang deur in te teken op die "inTopic", en die LED sal brand.
Publiseer die vragvrag “0” vir hierdie onderwerp, die NodeMCU LED sal afgeskakel word.
Aanbeveel:
Hoe om u eie bedryfstelsel te maak! (bondel en voorbeeld binne): 5 stappe
Hoe om u eie bedryfstelsel te maak! (bondel en voorbeeld binne): maak dit nou
Voorbeeld van MTP Arduino -programmering: 5 stappe
MTP Arduino-programmeervoorbeeld: In hierdie instruksies wys ons hoe u die SLG46824/6 Arduino-programmeerskets kan gebruik om 'n Dialog SLG46824/6 GreenPAK ™ meervoudige programmeerbare (MTP) -apparaat te programmeer. Die meeste GreenPAK-toestelle is eenmalige programmeerbare (OTP), wat beteken dat sodra hul nie-V
Moderne en nuwe en makliker voorbeeld van kluis met Arduino Matrix -toetsbord 4x4: 3 stappe
Modern en nuut en makliker voorbeeld van kluis met Arduino Matrix -toetsbord 4x4: 'n Ander voorbeeld van die gebruik van 'n LCD -matriks met 'n LCD -toetsbord met 'n I2C -kring
APP INVENTOR 2 - Maak voorste wenke skoon (+4 voorbeeld): 6 stappe
APP INVENTOR 2 - Wenke vir voorkant skoon (+4 voorbeeld): ons gaan kyk hoe ons u app op AI2 esteties kan laat lyk :) Geen kode hierdie keer nie, slegs wenke vir 'n gladde app, soos die vier voorbeelde hierbo
Eagle Hacks/truuks: Voorbeeld TB6600 CNC Mill Stepper Motor Driver: 7 stappe
Eagle Hacks/truuks: Voorbeeld TB6600 CNC Mill Stepper Motor Driver: Dit maak dit 'n goeie projek om die paar truuks te wys wat u lewe makliker sal maak by die skep van PCB's. Eagle, ek kies 'n eenvoudige projek wat ek vir my Kickstarter gedoen het. Ek het 'n ekstern nodig gehad