Obsah:
- Krok 1: Instalace knihovny
- Krok 2: Kód
- Krok 3: Konfigurace klienta MQTT (MQTTBOX)
- Krok 4: Výsledek spuštění programu
Video: NodeMCU - MQTT Základní příklad: 4 kroky
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Tato lekce ukáže základní využití protokolu MQTT na desce NodeMCU. MQTTBox zde používáme jako klienta MQTT a NodeMCU použijeme k provedení následujících operací:
Každé dvě sekundy publikujte „ahoj svět“k tématu „outTopic“. Přihlaste se k odběru tématu „inTopic“, vytiskněte si všechny přijaté zprávy. Předpokládá, že přijatá užitečná zatížení jsou řetězce, nikoli binární soubory. Pokud je odebíraná zpráva „1“, rozsviťte integrovaná LED. Vypněte integrovanou LED, pokud je zpráva k odběru „0“.
Příprava: Osoyoo NodeMCU x1
USB kabel x1
PC x1
Arduino IDE (verze 1.6.4+)
Připojte NodeMCU k počítači pomocí kabelu USB.
Krok 1: Instalace knihovny
Nainstalujte PubSubClientlibrary
Ke komunikaci s brokerem MQTT potřebujeme nainstalovat knihovnu koncových bodů MQTT (PubSubClient), stáhněte si knihovnu z následujícího odkazu:
Rozbalte výše uvedený soubor, přesuňte rozbalenou složku do složky knihovny Arduino IDE.
Otevřete Arduino IED, ve sloupci „Příklady“najdete „pubsubclient“.
Nainstalujte klienta MQTT:
použijeme MQTTBox jako klienta MQTT. stáhněte si prosím z:
Krok 2: Kód
otevřete Arduino IDE–> Soubor–> Příklad–> pubsubclient–> mqtt esp8266, dostanete ukázkový kód.
Upravte kód tak, aby odpovídal vašemu vlastnímu nastavení WiFi a MQTT, následujícími operacemi: 1) Konfigurace hotspotu: Najděte níže řádek kódu, vložte tam svůj vlastní ssid a heslo.
const char* ssid = „your_hotspot_ssid“; const char* heslo = „your_hotspot_password“;
2) Nastavení adresy serveru MQTT, zde používáme bezplatného brokera MQTT „broker.mqtt-dashboard.com“. K nastavení výše hodnoty mqtt_server můžete použít svoji vlastní URL nebo IP adresu brokera MQTT. K testování projektu můžete také použít nějaký slavný bezplatný server MQTT, například „broker.mqtt-dashboard.com“, „iot.eclipse.org“atd.
const char* mqtt_server = „broker.mqtt-dashboard.com“;
3) Nastavení klienta MQTT Pokud váš broker MQTT vyžaduje ověření ID klienta, uživatelského jména a hesla, musíte
změna
if (client.connect (clientId.c_str ()))
Na
if (client.connect (clientId, userName, passWord)) // sem vložte clientId/userName/passWord
Pokud tomu tak není, ponechte je jako výchozí. Poté proveďte výběr odpovídajícího typu desky a typu portu, jak je uvedeno níže, a poté nahrajte skicu na NodeMCU.
- Deska: „NodeMCU 0.9 (modul ESP-12)“
- Frekvence CPU: „80MHz“Velikost blesku: „4M (3M SPIFFS)“
- Rychlost nahrávání: "115200"
- Port: Vyberte si vlastní sériový port pro váš NodeMCU
Krok 3: Konfigurace klienta MQTT (MQTTBOX)
V tomto kroku si ukážeme, jak vytvořit klienta MQTT na MQTTBox.
Otevřete svůj MQTTBox a kliknutím na modré tlačítko přidejte nového klienta MQTT.
NASTAVENÍ KLIENTA MQTT nakonfigurujte následujícím způsobem:
- Jméno klienta MQTT - vyberte libovolné jméno, které se vám líbí
- Protokol - vyberte „mqtt/tcp“
- Hostitel - Do tohoto sloupce zadejte svůj „mqtt_server“, ujistěte se, že je stejný jako váš náčrtek. (Zde používáme „broker.mqtt-dashboard.com“)
- Ponechat ostatní nastavení jako výchozí
- Kliknutím na uložíte změny.
Poté automaticky zadáte novou stránku. Pokud je výše uvedená konfigurace správná, „Nepřipojeno“se změní na „Připojeno“, v horní části této stránky se zobrazí vaše jméno klienta MQTT a název hostitele.
Nastavení tématu: Ujistěte se, že vaše téma publikování klienta MQTT je stejné jako vaše téma přihlášení k odběru skici Arduino (inTopic zde). Ujistěte se, že vaše téma přihlášení k odběru klienta MQTT je stejné jako téma publikování skici Arduino (outTopic zde).
Krok 4: Výsledek spuštění programu
Po dokončení nahrávání, pokud je název a heslo hotspotu wifi v pořádku a je připojen broker MQTT, otevřete Serial Monitor, na sériovém monitoru se zobrazí zpráva „Hello world“.
Poté otevřete klienta MQTT a publikujte užitečné zatížení „1“k tématu, tento NodeMCU bude přijímat tyto zprávy přihlášením k odběru „inTopic“a LED bude svítit.
Publikovat užitečné zatížení „0“k tomuto tématu, LED dioda NodeMCU zhasne.
Doporučuje:
Modul HC-05 (bluetooth) pro domácí automatizaci Základní: 3 kroky
Modul HC-05 (bluetooth) pro domácí automatizaci Základní: V mém posledním projektu jsem ovládal LED pomocí tlačítka, ale v tomto projektu jsem PUSH BUTTON nahradil modulem HC-05. Důrazně doporučuji projít tyto projekty dříve pokračování v tomto projektu. Všechny podrobnosti získáte v
Moderní a nový a snadnější příklad skříňky s maticovou klávesnicí Arduino 4x4: 3 kroky
Moderní a nový a snadnější příklad skříňky s maticovou klávesnicí Arduino 4x4: Další příklad použití matice LCD klávesnice 4x4 s obvodem I2C
IoT Guru Cloud - jednoduchý graf Příklad: 4 kroky
IoT Guru Cloud - jednoduchý graf Příklad: IoT Guru Cloud poskytuje spoustu backendových služeb prostřednictvím REST API a tato REST volání můžete snadno integrovat na svou webovou stránku. S Highcharts můžete zobrazit grafy svých měření jednoduše pomocí volání AJAX
CircuitPython a TinyLiDAR: Jednoduchý příklad: 3 kroky
CircuitPython a TinyLiDAR: Jednoduchý příklad: MicroElectronicDesign tinyLiDAR je modul pro měření času letu (ToF) na bázi ST VL53L0X s připojením sběrnice i2c. Desky mikrokontroléru Adafruit se k tomuto senzoru snadno připojují, protože mohou přes svůj datový pin mluvit protokolem i2c
Teplota HRV na OpenHAB přes ESP8266 (příklad sériového kódu!): 3 kroky
Teplota HRV na OpenHAB přes ESP8266 (příklad sériového kódu!): HRV - Bezdrátový na OpenHAB Tento návod je specifický pro ty, kteří mají systém HRV (recirkulační ventilace s ohřevem) - ačkoli části obvodové desky, konfigurace openhab nebo kód Arduino (například čtení Sériová data TTL) by mohla být h