การเชื่อมต่อระหว่าง Home Assistant, EMQX (MQTT broker), และ Node-RED สามารถทำได้โดยใช้โปรโตคอล MQTT เป็นตัวกลางในการสื่อสารระหว่างแต่ละระบบ ซึ่ง MQTT เป็นโปรโตคอลที่มีประสิทธิภาพและเหมาะสมสำหรับการสื่อสารในระบบอินเทอร์เน็ตของสิ่งของ (IoT) และระบบการควบคุมอื่น ๆ
นี่คือขั้นตอนที่คุณสามารถทำเพื่อเชื่อมต่อระหว่างระบบทั้งสาม:
1. ติดตั้งและกำหนดค่า MQTT Broker (EMQX):
- คุณจะต้องติดตั้ง MQTT Broker เช่น EMQX บนเซิร์ฟเวอร์หรืออุปกรณ์อื่น ๆ ในเครือข่าย
- กำหนดค่า MQTT Broker เพื่อให้มีผู้ใช้งานและสร้าง Topic สำหรับการสื่อสารระหว่างแต่ละอุปกรณ์อื่นๆหรือ PI

– ติดตั้งและใช้ MQTTX:
- ติดตั้ง MQTTX บนเครื่อง (เครื่องเดียวกับ Home Assistant, EMQX, หรือเครื่องอื่น ๆ) โดยดาว์นโหลดได้จาก https://www.emqx.io/downloads?os
- เปิด MQTTX และกำหนดค่าการเชื่อมต่อไปยัง MQTT Broker (EMQX) โดยใช้ที่อยู่ IP และพอร์ตของ Broker

- เมื่อเชื่อมต่อสำเร็จ, คุณจะสามารถรับข้อมูลจาก Topic ต่าง ๆ และส่งข้อมูลไปยัง Topic ใน MQTT Broker ได้ผ่าน MQTTX

2. กำหนดค่า Home Assistant เพื่อเชื่อมต่อกับ MQTT Broker:
- โดยเราจะเข้าไปที่ Setting ⇒ Automation

- เข้าไปที่ส่วนการกำหนดค่า MQTT ใน Home Assistant

- ทำการ setting ตามภาพ โดยภายในภาพเป็นการตั้ง When Topic และ payload ให้ จากนั้น And if ทำการ setup อุปกรณ์ที่เราต้องการเชื่อมต่อ

- จากนั้น Then do ใช้ในการกระทำว่าเมื่อมีการปิดอยู่ให้ทำการเปิดไฟหรืออุปกรณ์ต่างๆ

- สุดท้าย จากการที่กำหนด MQTT_light_on ก็ต้องมี MQTT_light_off


- จากนั้นทดสอบโดยใช้ MQTTX ด้วยการกรอก Topic และ payload ที่เป็น plantext


3. เชื่อมต่อ Node-RED กับ Home Assistant
- อย่างแรกทำการเข้าไปที่ Add-ons

- กดที่

- จากนั้นทำการเข้าที่ Node-RED แล้วทำการติดตั้งโดยติดตั้งอย่างระเอียดได้จาก https://mikehillyer.com/home-automation/getting-started-with-home-assistant-and-node-red/

- ใน Node-RED ใช้การเชื่อมต้องได้อย่างระเอียดได้ดังนี้

- mqtt in กำหนด

- จากนั้นกดที่ดินสอแล้วทำการ setting connection และ security

- mqtt out กำหนด
- ใน inject node ทำการ setup Topic และ Payload ให้กับ on และ off ในการสั่ง sensor


- สุดท้ายคือ mqtt out set เป็นค่าว่าง เนื่องจากต้องทำการรับส่งให้ broker

4. การสื่อสารระหว่างระบบ
- ใน Home Assistant, คุณสามารถส่งข้อมูลไปยัง MQTT Broker ผ่านการเปลี่ยนแปลงของสถานะของอุปกรณ์หรือแสดงผลต่าง ๆ
- ใน Node-RED, คุณสามารถใช้ข้อมูลที่ได้รับจาก MQTT Broker เพื่อดำเนินการต่อในกระบวนการที่คุณต้องการ เช่น การประมวลผลข้อมูล, การควบคุมอุปกรณ์อื่น ๆ
ด้วยการใช้ MQTT เป็นตัวกลางในการสื่อสารระหว่าง Home Assistant, EMQX, และ Node-RED, คุณสามารถสร้างระบบอินเทอร์เน็ตของสิ่งของที่มีประสิทธิภาพและยืดหยุ่นได้ตามความต้องการของคุณ
สรุป
การเชื่อมต่อระบบ Home Assistant, EMQX, และ Node-RED ด้วย MQTT เป็นขั้นตอนสำคัญในการสร้างระบบ IoT ที่มีประสิทธิภาพ โดยใช้ MQTT เป็นตัวกลางในการสื่อสารระหว่างระบบทั้งสาม ซึ่งช่วยให้สามารถควบคุมและติดตามอุปกรณ์ได้อย่างมีประสิทธิภาพและยืดหยุ่น ติดตั้ง MQTT Broker เช่น EMQX และกำหนดค่าการสื่อสารใน Home Assistant ต่อไปคือการเชื่อมต่อ Node-RED กับ Home Assistant โดยใช้ MQTT In/Out nodes เพื่อรับและส่งข้อมูลระหว่างระบบ การใช้ MQTT เป็นช่องทางสื่อสารที่เหมาะสมสำหรับการสร้างระบบ IoT ที่มีประสิทธิภาพและยืดหยุ่น