
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12


บทเรียนนี้จะแสดงการใช้โปรโตคอล MQTT พื้นฐานบนบอร์ด NodeMCU เราใช้ MQTTBox เป็นไคลเอ็นต์ MQTT ที่นี่ และเราจะใช้ NodeMCU เพื่อดำเนินการต่อไปนี้ให้เสร็จสิ้น:
เผยแพร่ "hello world" ในหัวข้อ "outTopic" ทุก ๆ สองวินาที สมัครรับข้อมูลในหัวข้อ "inTopic" พิมพ์ข้อความที่ได้รับ โดยถือว่า payloads ที่ได้รับเป็นสตริงไม่ใช่ไบนารี หากข้อความที่สมัครเป็น "1" ให้จุดไฟ LED onboards ปิด LED onboard หากข้อความให้สมัครเป็น "0"
การจัดเตรียม:Osoyoo NodeMCU x1
สาย USB x1
พีซี x1
Arduino IDE (เวอร์ชั่น 1.6.4+)
เชื่อมต่อ NodeMCU กับพีซีผ่านสาย USB
ขั้นตอนที่ 1: การติดตั้งไลบรารี


ติดตั้ง PubSubClientlibrary
เราจำเป็นต้องติดตั้งไลบรารีปลายทาง MQTT (PubSubClient) เพื่อสื่อสารกับโบรกเกอร์ MQTT โปรดดาวน์โหลดไลบรารีจากลิงก์ต่อไปนี้:
แตกไฟล์ด้านบน ย้ายโฟลเดอร์ที่คลายซิปไปยังโฟลเดอร์ไลบรารี Arduino IDE
เปิด Arduino IED คุณจะพบ "pubsubclient" ในคอลัมน์ "ตัวอย่าง"
ติดตั้งไคลเอนต์ MQTT:
เราจะใช้ MQTTBox เป็นไคลเอนต์ MQTT โปรดดาวน์โหลดจาก:
ขั้นตอนที่ 2: รหัส


เปิด Arduino IDE–>File–>Example–>pubsubclient–>mqtt esp8266 คุณจะได้รับโค้ดตัวอย่าง
แก้ไขรหัสให้พอดีกับการตั้งค่า WiFi และ MQTT ของคุณเองตามการดำเนินการต่อไปนี้:1)การกำหนดค่าฮอตสปอต: ค้นหาบรรทัดโค้ดด้านล่าง ใส่ ssid และรหัสผ่านของคุณเองที่นั่น
const char* ssid = “your_hotspot_ssid”;const char* รหัสผ่าน = “your_hotspot_password”;
2) การตั้งค่าที่อยู่เซิร์ฟเวอร์ MQTT ที่นี่เราใช้นายหน้า MQTT ฟรี "broker.mqtt-dashboard.com" คุณสามารถใช้ URL นายหน้า MQTT หรือที่อยู่ IP ของคุณเพื่อตั้งค่าให้สูงกว่าค่า mqtt_server คุณยังสามารถใช้เซิร์ฟเวอร์ MQTT ฟรีที่มีชื่อเสียงเพื่อทดสอบโครงการ เช่น “broker.mqtt-dashboard.com”, “iot.eclipse.org” เป็นต้น
const char* mqtt_server = “นายหน้า.mqtt-dashboard.com”;
3)การตั้งค่าไคลเอนต์ MQTTหากโบรกเกอร์ MQTT ของคุณต้องการการตรวจสอบรหัสลูกค้า ชื่อผู้ใช้และรหัสผ่าน คุณต้อง
เปลี่ยน
ถ้า (client.connect(clientId.c_str()))
ถึง
if (client.connect(clientId, userName, passWord)) //ใส่ clientId/userName/passWord ของคุณที่นี่
หากไม่เป็นเช่นนั้น ให้เก็บไว้เป็นค่าเริ่มต้น หลังจากนั้น เลือกประเภทบอร์ดและประเภทพอร์ตที่เกี่ยวข้องตามด้านล่าง จากนั้นอัปโหลดภาพร่างไปยัง NodeMCU
- บอร์ด:”NodeMCU 0.9 (โมดูล ESP-12)”
- ความถี่ของ CPU:”80MHz”ขนาดแฟลช:”4M (3M SPIFFS)”
- ความเร็วในการอัพโหลด:”115200″
- พอร์ต: เลือกพอร์ตอนุกรมของคุณเองสำหรับ NodeMCU. ของคุณ
ขั้นตอนที่ 3: กำหนดค่าไคลเอนต์ MQTT (MQTTBOX)




ในขั้นตอนนี้ เราจะแสดงวิธีสร้างไคลเอ็นต์ MQTT บน MQTTBox
เปิด MQTTBox ของคุณแล้วคลิกปุ่มสีน้ำเงินเพื่อเพิ่มไคลเอ็นต์ MQTT ใหม่
กำหนดค่า MQTT CLIENT SETTINGS ดังต่อไปนี้:
- MQTT Client Name -- เลือกชื่อที่ต้องการ
- โปรโตคอล -- เลือก "mqtt/tcp"
- โฮสต์ - พิมพ์ “mqtt_server” ของคุณในคอลัมน์นี้ ตรวจสอบให้แน่ใจว่าเหมือนกับแบบร่างของคุณ (เราใช้ “broker.mqtt-dashboard.com” ที่นี่)
- ให้การตั้งค่าอื่นๆ เป็นค่าเริ่มต้น
- คลิกเพื่อบันทึกการเปลี่ยนแปลงของคุณ
ถัดไป คุณจะเข้าสู่หน้าใหม่โดยอัตโนมัติ หากการกำหนดค่าทั้งหมดข้างต้นถูกต้อง "ไม่ได้เชื่อมต่อ" จะเปลี่ยนเป็น "เชื่อมต่อแล้ว" ชื่อไคลเอ็นต์ MQTT และชื่อโฮสต์จะแสดงที่ด้านบนของหน้านี้
การตั้งค่าหัวข้อ: ตรวจสอบให้แน่ใจว่าหัวข้อการเผยแพร่ไคลเอ็นต์ MQTT ของคุณเหมือนกับหัวข้อการสมัครรับข้อมูล Arduino Sketch (ในหัวข้อที่นี่) ตรวจสอบให้แน่ใจว่าหัวข้อการสมัครไคลเอนต์ MQTT ของคุณเหมือนกับหัวข้อการเผยแพร่ร่าง Arduino ของคุณ (ออกจากหัวข้อที่นี่)
ขั้นตอนที่ 4: ผลการรันโปรแกรม




เมื่ออัปโหลดเสร็จแล้ว หากชื่อฮอตสปอต wifi และการตั้งค่ารหัสผ่านใช้ได้ และโบรกเกอร์ MQTT เชื่อมต่อแล้ว ให้เปิด Serial Monitor คุณจะเห็นข้อความเผยแพร่ "hello world" บนจอภาพแบบอนุกรม
จากนั้นเปิดไคลเอ็นต์ MQTT และเผยแพร่เพย์โหลด "1" ไปยังหัวข้อ NodeMCU นี้จะได้รับข้อความเหล่านี้โดยสมัครรับ "inTopic" และไฟ LED จะติดสว่าง
เผยแพร่เพย์โหลด “0” ไปยังหัวข้อนี้ LED ของ NodeMCU จะถูกปิด
แนะนำ:
NodeMCU ESP8266 - MQTT - Ubidots: 5 ขั้นตอน

NodeMCU ESP8266 - MQTT - Ubidots: MQTT เป็นโปรโตคอลการส่งข้อความมาตรฐาน OASIS สำหรับ Internet of Things (IoT) ได้รับการออกแบบมาเพื่อเผยแพร่/สมัครรับส่งข้อความที่มีน้ำหนักเบามาก ซึ่งเหมาะอย่างยิ่งสำหรับการเชื่อมต่ออุปกรณ์ระยะไกลด้วยรหัสขนาดเล็กและเครือข่ายขั้นต่ำ
IoT ด้วย NodeMCU และ MQTT: 4 ขั้นตอน

IoT ด้วย NodeMCU และ MQTT: [En] ครั้งหนึ่งสำหรับการใช้งานในอุตสาหกรรม ฉันจำเป็นต้องสร้าง PCB ที่มีหน้าสัมผัสแห้ง 8 ตัว เล่นกับ MQTT เล็กน้อย และตัดสินใจปรับให้เข้ากับการทำงานโดยใช้ NodeMCU esp-f v4 เพื่อให้เป็นวิธีง่ายๆ ในการสร้างระบบอัตโนมัติภายในบ้านราคาประหยัด[Pt-Br] Cert
ระบบอัตโนมัติภายในบ้านด้วย NodeMCU, HomeAssistant & MQTT: 6 ขั้นตอน

ระบบอัตโนมัติภายในบ้านด้วย NodeMCU, HomeAssistant & MQTT: คุณต้องการเริ่มเปลี่ยนบ้านของคุณในบ้านอัจฉริยะหรือไม่และต้องทำในราคาถูกด้วยหรือไม่ NodeMCU และ HomeAssistant พร้อมให้ความช่วยเหลือในเรื่องนั้น ฉันแนะนำให้คุณดูวิดีโอนี้ บางทีมันอาจจะง่ายกว่าสำหรับคุณที่จะติดตาม มิฉะนั้น ให้ทำตามขั้นตอนด้านล่าง
โฮมออโตเมชั่นบนเซิร์ฟเวอร์ MQTT ในพื้นที่โดยใช้ RASPBERRY PI และ NODEMCU BOARD: 6 ขั้นตอน

โฮมออโตเมชั่นบนเซิร์ฟเวอร์ MQTT ในพื้นที่โดยใช้ RASPBERRY PI และ NODEMCU BOARD: จนถึงตอนนี้ ฉันได้จัดทำวิดีโอแนะนำเกี่ยวกับการควบคุมอุปกรณ์ผ่านทางอินเทอร์เน็ต และด้วยเหตุนี้ ฉันจึงชอบเซิร์ฟเวอร์ Adafruit MQTT มากกว่า เนื่องจากใช้งานง่ายและเป็นมิตรกับผู้ใช้ด้วย แต่ทั้งหมดนั้นมาจากอินเทอร์เน็ต นั่นหมายถึงเรา
โครงการ NodeMCU MQTT Iot - ปุ่มสวิตช์: 4 ขั้นตอน

โครงการ NodeMCU MQTT Iot - ปุ่มสวิตช์: OSOYOO NodeMCU IOT Starter kit โปรดติดตามเราบน facebook ค้นหารายการที่ออกใหม่ของเรา และแบ่งปันความคิดและวิดีโอของคุณเกี่ยวกับวิธีการใช้ผลิตภัณฑ์ของเราอย่างสร้างสรรค์ คุณสามารถรับเงินคืนหรือของรางวัลจากเราได้!Facebook: https://www.facebook.com/pg/OsoyooProdu