ถ้าอุปกรณ์ส่งข้อมูลเข้า MQTT broker ของคุณอยู่แล้ว ไม่ต้องแก้ firmware ใช้ Node-RED รับข้อมูลจาก broker เดิม แปลงชื่อ topic และค่า แล้วส่งต่อเข้า TRIX
broker ของคุณ --> Node-RED --> mqtt.trix.technology --> TRIX Monitor --> dashboard
(subscribe) (แปลง topic/ค่า) (publish trix/<site>/<device>/...)
ขอไฟล์ flow ตัวอย่าง trix-ingest-flow.json จากทีม TRIX แล้ว import (Menu > Import > วาง > Deploy)
1. node ใน flow
| node | หน้าที่ |
|---|---|
from YOUR broker (mqtt in) |
subscribe ข้อมูลจาก broker ของคุณ ตัวอย่างตั้งไว้ที่ inverter/data/+/status |
map to trix (function) |
แตก JSON ของอินเวอร์เตอร์เป็นค่าแยกตามชื่อ แล้วตั้ง topic ตามกติกาของ TRIX |
to TRIX broker (mqtt out) |
publish เข้า mqtt.trix.technology ผ่าน WSS |
published (debug) |
แสดงสิ่งที่ส่งออก ไว้ตรวจความถูกต้อง |
2. ตั้งค่าหลัง import
- broker ต้นทาง เปิด node from YOUR broker ตั้ง host, port, username/password และแคบ topic ให้เหลือเท่าที่ใช้
- broker ของ TRIX เปิด node to TRIX broker
- Server
wss://mqtt.trix.technology/mqttพอร์ต443 - แท็บ Security ใส่ username และ password ของ site (จากทีม TRIX หรือแท็บ Integrations ของลิงก์ portal)
- ไฟล์ flow ไม่มีรหัสผ่านติดมา ต้องกรอกเองทุกครั้ง
- Server
- ตัวแปลง เปิด node map to trix ตั้ง
SITEเป็นชื่อย่อ site ของคุณ- ตัวแปลงแตกทุกค่าที่เป็นตัวเลขใน JSON เป็นค่าแยก ข้อความหนึ่งจากอินเวอร์เตอร์จึงได้ราว 50 ค่า เช่น
pv_today_kwh,battery_soc,grid_freq,load_p_total - ชื่ออุปกรณ์มาจาก
payload.deviceค่าที่เป็นข้อความหรือว่างถูกทิ้ง - ต้องการส่งบางค่า ให้ลบหรือกรองชื่อก่อนเรียก
emit()
- ตัวแปลงแตกทุกค่าที่เป็นตัวเลขใน JSON เป็นค่าแยก ข้อความหนึ่งจากอินเวอร์เตอร์จึงได้ราว 50 ค่า เช่น
- กด Deploy แล้วดู node published ภายในราว 1 วินาทีค่าจะขึ้นบน dashboard ที่ผูกกับอุปกรณ์นั้น
3. กติกาที่ TRIX ต้องการ
trix/<site>/<device-id>/<metric-key> payload: "<ตัวเลข>"
<site>ถูกล็อกด้วย login ของคุณ ส่งได้เฉพาะtrix/<site>/#<device-id>และ<metric-key>ตั้งอิสระ ชื่อใหม่ถูกสร้างให้อัตโนมัติ ทีม TRIX ตั้งชื่อแสดงผลและหน่วยให้ภายหลัง- payload ต้องเป็นตัวเลขล้วน ตัวแปลงในตัวอย่างทำ
String(Number(value))และทิ้งค่าที่ไม่ใช่ตัวเลขให้แล้ว - ถ้าเขียน flow เอง จะส่งแบบ JSON ที่ channel
telemetryตาม trix-node/1 ก็ได้ ข้อความน้อยกว่า
ติดปัญหาหรือต้องการข้อมูลเพิ่ม ติดต่อทีม TRIX
