
Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-23 15:14


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


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


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)




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




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:
O'zingizning OS -ni qanday yaratishingiz mumkin! (partiya va ichidagi misol): 5 qadam

O'zingizning OS -ni qanday yaratishingiz mumkin! (partiya va ichidagi misol): Hoziroq tayyorlang
APP INVENTOR 2 - Old Maslahatlarni tozalash (+4 misol): 6 qadam

APP INVENTOR 2 - Old Maslahatlar (+4 misol): Biz sizning AI2 -dagi ilovangizni qanday estetik ko'rinishga keltirishini ko'rib chiqamiz :) Bu safar kod yo'q, faqat yuqoridagi 4 -misol kabi silliq dastur uchun maslahatlar
IoT Guru Cloud - oddiy grafik misol: 4 qadam

IoT Guru Cloud - oddiy jadval misoli: IoT Guru Cloud REST API orqali bir qator backend xizmatlarini taqdim etadi va siz ushbu REST qo'ng'iroqlarini veb -sahifangizga osongina qo'shishingiz mumkin. Highcharts yordamida siz o'lchov jadvallarini AJAX qo'ng'irog'i orqali ko'rsatishingiz mumkin
Eagle Hacks/fokuslari: Misol TB6600 CNC tegirmonli step motorli haydovchi: 7 qadam

Eagle Hacks/fokuslari: Misol TB6600 CNC frezelemeli dvigatel drayveri: Bu sizga PCB yaratishda sizning hayotingizni osonlashtiradigan bir nechta fokuslarni ko'rsatish uchun yaxshi loyihadir. Eagle, men Kickstarter uchun qilgan oddiy loyihani tanlayman. Menga tashqi muxlis kerak edi
Robotika: Rover 5 -ning asosiy versiyasi, robotning asosiy bosqichi: 18 qadam (rasmlar bilan)

Robotika: Rover 5 -ning eng yaxshi robotlari: