สารบัญ:
- ขั้นตอนที่ 1: ติดตั้ง Node-RED
- ขั้นตอนที่ 2: ส่วนประกอบบางอย่างที่จำเป็นสำหรับการสร้างและการทดสอบ
- ขั้นตอนที่ 3: การทดสอบ 1: นายหน้าเชื่อมต่อ MQTT HIVEMQ ด้วย Node-RED
- ขั้นตอนที่ 4: สถาปัตยกรรม
- ขั้นตอนที่ 5: การทดสอบ 2: นายหน้าเชื่อมต่อ MQTT HIVEMQ ด้วย ESP8266 & Node-RED
- ขั้นตอนที่ 6: บทสรุปและข้อมูลเพิ่มเติม
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
โปรโตคอล MQTT มีความแข็งแกร่งอย่างมากในช่วงไม่กี่ปีที่ผ่านมา เนื่องจากโปรโตคอลนี้เรียบง่าย ปลอดภัย ใช้งานได้จริง และมีน้ำหนักเบา เหมาะสำหรับแอปพลิเคชัน IoT และ M2M
ด้วยการสนับสนุนของนักพัฒนาและนักพัฒนาแอปพลิเคชัน MQTT ทำให้มี MQTT Broker สาธารณะสำหรับการตรวจสอบและทดสอบการควบคุมทางอินเทอร์เน็ต พร้อมให้เชื่อมต่อจากไคลเอนต์ MQTT ใด ๆ ในกรณีนี้ เราจะใช้ HIVEMQ ซึ่งมีแดชบอร์ดเพื่อดูการเชื่อมต่อ MQTT และซ็อกเก็ตเว็บ เนื่องจากเป็นสาธารณะควรมีข้อควรพิจารณาที่เราจะเห็นด้านล่าง
เว็บไซต์อย่างเป็นทางการ:HiveMQDashboard MQTT: HiveMQ
โบรกเกอร์การเชื่อมต่อ MQTT
- โบรกเกอร์: Broker.hivemq.com
- พอร์ต TCP: 1883
- เว็บซ็อกเก็ตพอร์ต: 8000
ทดสอบ
จากนั้นเราจะทำการทดสอบ 2 แบบ:
- นายหน้าเชื่อมต่อ MQTT HIVEMQ กับ Node-RED
- นายหน้าเชื่อมต่อ MQTT HIVEMQ พร้อม ESP8266 & Node-RED
กวดวิชาและดาวน์โหลดที่สมบูรณ์
สำหรับข้อมูลเพิ่มเติม กรุณาเยี่ยมชม:
ข้อมูลสำหรับการเยี่ยมชม:
ขั้นตอนที่ 1: ติดตั้ง Node-RED
ขั้นตอนที่ 2: ส่วนประกอบบางอย่างที่จำเป็นสำหรับการสร้างและการทดสอบ
ส่วนประกอบบางอย่างที่จำเป็นสำหรับการสร้างและการทดสอบ:
ESP8266 12E -
เซนเซอร์ DS18B20 Onewire -
3 ตัวต้านทาน 10k
ขั้นตอนที่ 3: การทดสอบ 1: นายหน้าเชื่อมต่อ MQTT HIVEMQ ด้วย Node-RED
การใช้ Node-RED ที่ติดตั้งไว้ก่อนหน้านี้บนเซิร์ฟเวอร์ภายในเครือข่ายของฉัน เราจะทำการเชื่อมต่อ MQTT กับ HIVEMQ เพื่อตรวจสอบการเชื่อมต่อจากไคลเอนต์ MQTT ใดๆ
ขั้นตอนที่ 4: สถาปัตยกรรม
การเชื่อมต่อเซ็นเซอร์
โมดูล ESP8266 ได้รับการกำหนดค่าเป็นไคลเอนต์ MQTT และทำการอ่านอุณหภูมิเป็นระยะของเซ็นเซอร์ DS18B20 ที่เชื่อมต่อกับพิน D4 (Gpio 02) จ่ายไฟ 5v โดยมีความต้านทานที่แนะนำตามลำดับในแผ่นข้อมูล maxim
ต้องใช้ห้องสมุด:
- PubSubClient.h
- OneWire.h
- DallasTemperature.h
ขั้นตอนที่ 5: การทดสอบ 2: นายหน้าเชื่อมต่อ MQTT HIVEMQ ด้วย ESP8266 & Node-RED
ในกรณีนี้โมดูล ESP8266 12E NodeMCU ที่กำหนดค่าเป็นไคลเอนต์ MQTT อ่านเซ็นเซอร์อุณหภูมิ DS18B20 Protocol (Onewire) ส่งอุณหภูมิผ่าน MQTT ไปยังนายหน้า HIVEMQ และ Node-RED ที่ติดตั้งในเครือข่ายท้องถิ่นร้องขอค่าอุณหภูมิและกราฟบนโหนด-RED แผงควบคุม.
หัวข้อ MQTT"อุณหภูมิ/PDAControl/เซนเซอร์"
ข้อความ
ตัวอย่างค่าอุณหภูมิ "28.9"
ขั้นตอนที่ 6: บทสรุปและข้อมูลเพิ่มเติม
เราพิจารณาว่าแม้ว่าในทางเทคนิคแล้วโบรกเกอร์จะเป็นแบบสาธารณะ แต่เราไม่ตระหนักถึงแอปพลิเคชันที่เชื่อมต่อกับโบรกเกอร์นี้อย่างต่อเนื่อง และเนื่องจากเป็น HIVE สาธารณะที่ไม่เสียค่าใช้จ่ายจึงมีแง่มุมทางกฎหมายหลายประการที่ต้องนำมาพิจารณา
เราทำการทดสอบอย่างรวดเร็วเท่านั้น แม้ว่าควรสังเกตว่าพวกเขาได้ติดตั้งแอปพลิเคชัน IoT ของตนกับโบรกเกอร์นี้โดยปราศจากความไม่สะดวกใด ๆ ที่เห็นได้ชัดว่าบริการนี้เปิดใช้งานและเป็นสาธารณะ
ด้วยนายหน้าในคลาวด์ (อินเทเน็ต) จากทุกที่ เราสามารถเชื่อมต่ออุปกรณ์และแอปพลิเคชันของเราได้โดยไม่มีข้อจำกัดของที่อยู่ IP และข้อจำกัดอื่นๆ ซึ่งขณะนี้กำลังศึกษาแผนและบริการของเซิร์ฟเวอร์ MQTT
ในบทช่วยสอนถัดไป เราจะลองใช้เซิร์ฟเวอร์ MQTT สาธารณะอื่นๆ และการโต้ตอบกับ FRED (Node-RED)