Mundarija:

NodeMCU - MQTT Asosiy misol: 4 qadam
NodeMCU - MQTT Asosiy misol: 4 qadam

Video: NodeMCU - MQTT Asosiy misol: 4 qadam

Video: NodeMCU - MQTT Asosiy misol: 4 qadam
Video: Включите и выключите светодиод с помощью мобильного приложения с помощью Bluetooth на плате ESP32. 2024, Iyul
Anonim
Image
Image

Bu dars NodeMCU doskasida asosiy MQTT protokoli ishlatilishini ko'rsatadi. Biz bu erda MQTT mijozi sifatida MQTTBoxdan foydalanamiz va biz NodeMCU dan quyidagi amallarni bajarish uchun foydalanamiz:

"Salom dunyo" ni har ikki soniyada "outTopic" mavzusiga nashr eting. "InTopic" mavzusiga obuna bo'ling, qabul qilingan xabarlarni chop eting. Qabul qilingan yuklar ikkitomonlama emas, agar "1" bo'lsa, chiroqni yoqing. onboards LED. Obuna bo'lish xabari "0" bo'lsa, bortdagi LEDni o'chiring.

Tayyorlanishi: Osoyoo NodeMCU x1

USB kabeli x1

Kompyuter x1

Arduino IDE (versiya 1.6.4+)

NodeMCU -ni kompyuterga USB kabeli orqali ulang.

1 -qadam: Kutubxonani o'rnatish

Kutubxonani o'rnatish
Kutubxonani o'rnatish
Kutubxonani o'rnatish
Kutubxonani o'rnatish

PubSubClientlibrary -ni o'rnating

MQTT brokeri bilan bog'lanish uchun bizga MQTT so'nggi nuqta kutubxonasi (PubSubClient) o'rnatilishi kerak, kutubxonani quyidagi havoladan yuklab oling:

Yuqoridagi faylni oching, ochilmagan papkani Arduino IDE kutubxona papkasiga o'tkazing.

Arduino IED -ni oching, siz "misollar" ustunidan "pubsubclient" ni topishingiz mumkin.

MQTT mijozini o'rnating:

biz MQTTBox -ni MQTT mijozi sifatida ishlatamiz. Iltimos, yuklab oling:

2 -qadam: kod

Kod
Kod
Kod
Kod

Arduino IDE -> Fayl -> Misol -> pubsubclient–> mqtt esp8266 -ni oching, siz namuna kodini olasiz.

O'zingizning WiFi va MQTT sozlamalaringizga mos keladigan kodni quyidagi amallar bilan tahrirlang: 1) Hotspot konfiguratsiyasi: Quyida kod satrini toping, o'z ssid va parolingizni qo'ying.

const char* ssid = "your_hotspot_ssid"; const char* parol = "your_hotspot_password";

2) MQTT server manzillarini sozlash, bu erda biz "broker.mqtt-dashboard.com" bepul MQTT brokeridan foydalanamiz. Siz mqtt_server qiymatini o'rnatish uchun o'zingizning MQTT broker URL -manzilidan yoki IP -manzilidan foydalanishingiz mumkin. Loyihani sinab ko'rish uchun "broker.mqtt-dashboard.com", "iot.eclipse.org" va boshqalar kabi mashhur bepul MQTT serveridan foydalanishingiz mumkin.

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

3) MQTT mijoz sozlamalari Agar sizning MQTT brokeringiz mijoz identifikatori, foydalanuvchi nomi va parolni tasdiqlashni talab qilsa, sizga kerak

o'zgartirish

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

Kimga

if (client.connect (clientId, userName, passWord)) // // clientId/userName/passWord -ni bu erga qo'ying

Agar yo'q bo'lsa, ularni odatdagidek saqlang, shundan so'ng mos keladigan taxta turini va port turini quyida tanlang, so'ng eskizni NodeMCU -ga yuklang.

  • Kengash: "NodeMCU 0.9 (ESP-12 moduli)"
  • CPU chastotasi: "80 MGts" Fleshli o'lchami: "4M (3M SPIFFS)"
  • Yuklash tezligi: 115200 ″
  • Port: NodeMCU uchun o'zingizning ketma -ket portingizni tanlang

3 -qadam: MQTT mijozini sozlash (MQTTBOX)

MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)
MQTT mijozini sozlash (MQTTBOX)

Bu bosqichda biz MQTTBox -da MQTT mijozini qanday yaratishni ko'rsatamiz.

MQTTBox -ni oching va yangi MQTT mijozini qo'shish uchun ko'k tugmani bosing.

MQTT Mijozlar Sozlamalarini quyidagicha sozlang:

  • MQTT mijoz nomi - Sizga yoqqan ismni tanlang
  • Protokol - "mqtt/tcp" -ni tanlang
  • Xost - bu ustunga "mqtt_server" ni kiriting, eskizingiz bilan bir xil ekanligiga ishonch hosil qiling. (Biz bu erda "broker.mqtt-dashboard.com" dan foydalanamiz)
  • Boshqa sozlamalarni sukut bo'yicha saqlang
  • O'zgartirishlaringizni saqlash uchun bosing.

Keyin, siz avtomatik ravishda yangi sahifaga kirasiz, agar yuqoridagi konfiguratsiya to'g'ri bo'lsa, "Ulanmagan" "Ulangan" ga o'zgaradi, sizning sahifangizning yuqori qismida sizning MQTT mijozingiz nomi va Xost nomi ko'rsatiladi.

Mavzu sozlamalari: MQTT mijozining nashr qilish mavzusi Arduino eskiziga obuna bo'lish mavzusi bilan bir xil ekanligiga ishonch hosil qiling, bu erda InTopic. MQTT mijoziga obuna bo'lish mavzusi Arduino eskiz nashr mavzusi bilan bir xil ekanligiga ishonch hosil qiling.

4 -qadam: dasturni ishga tushirish natijasi

Dasturning ishlash natijasi
Dasturning ishlash natijasi
Dasturning ishlash natijasi
Dasturning ishlash natijasi
Dasturning ishlash natijasi
Dasturning ishlash natijasi
Dasturning ishlash natijasi
Dasturning ishlash natijasi

Yuklash tugagandan so'ng, agar Wi -Fi hotspot nomi va parol sozlamalari yaxshi bo'lsa va MQTT brokeri ulangan bo'lsa, Serial monitorni oching, siz ketma -ket monitorda "Salom dunyo" degan xabarni ko'rasiz.

Keyin MQTT mijozini oching va mavzu bo'yicha "1" yuk yuklang, bu NodeMCU "inTopic" ga obuna bo'lish orqali bu xabarlarni oladi va LED yonadi.

Ushbu mavzu bo'yicha "0" yuk yuklang, NodeMCU LED o'chiriladi.

Tavsiya: