การใช้งาน Node-RED เบื้องต้น
ในยุคของ Internet of Things (IoT) และระบบอัตโนมัติ การพัฒนาแอปพลิเคชันที่สามารถควบคุมอุปกรณ์และเชื่อมโยงข้อมูลจากหลายแหล่งกลายเป็นสิ่งสำคัญอย่างยิ่ง Node-RED จึงเป็นหนึ่งในเครื่องมือที่ได้รับความนิยม ด้วยความสามารถในการเขียนโปรแกรมแบบ Flow-based Programming ที่เข้าใจง่ายผ่านการลากและเชื่อม “โหนด” (Node) โดยไม่ต้องเขียนโค้ดมากมาย Node-RED ถูกพัฒนาโดย IBM และเป็นโอเพนซอร์ส เหมาะสำหรับผู้เริ่มต้นและนักพัฒนา IoT ที่ต้องการระบบควบคุมและส่งข้อมูลผ่าน MQTT, HTTP, API หรือแม้แต่ฐานข้อมูลต่าง ๆ
สามารถอ่านวิธีการติดตั้ง Node-RED ได้ ที่นี่
การใช้งานเบื้องต้น
เมื่อเปิด Node-RED แล้ว จะพบหน้าจอที่มี 3 ส่วนหลัก
-
Sidebar (ด้านซ้าย): แสดงกลุ่มโหนดที่ใช้งานได้ เช่น input, output, function
-
Workspace (ตรงกลาง): พื้นที่ลากและเชื่อมโหนดเพื่อสร้าง flow
-
Info & Debug (ด้านขวา): แสดงข้อมูลและผลลัพธ์จากโหนด
ตัวอย่างการสร้าง Flow เบื้องต้น
-
ลาก
inject
node (ใช้สำหรับส่งข้อมูล) -
ลาก
debug
node (ใช้แสดงผลใน debug tab) -
เชื่อม inject → debug
-
กด Deploy
-
กดปุ่ม inject เพื่อส่งข้อมูล และดูผลลัพธ์ทางขวา
โหนดยอดนิยม
ประเภท | ชื่อโหนด | คำอธิบาย |
---|---|---|
Input | Inject | ส่งค่าตามเวลาหรือกดเอง |
Output | Debug | แสดงผลลัพธ์ในหน้าจอ |
Function | Function | เขียน JavaScript เพื่อประมวลผลข้อมูล |
Network | MQTT | รับ/ส่งข้อมูลผ่านโปรโตคอล MQTT |
Storage | File | อ่าน/เขียนไฟล์ในระบบ |
UI | Dashboard | สร้างหน้าจอควบคุมสำหรับผู้ใช้ |
การติดตั้งโหนดเสริม
1.. สามารถติดตั้งโหนดเพิ่มเติมได้ผ่านเมนู “Manage Palette” ทางด้านขวา
2. คลิกที่แท็บ Install
3. พิมพ์ node-red-dashboard
เพื่อสร้างหน้าเว็บควบคุม
4. คลิก install เพื่อติดตั้ง
5. แสดงโหนดที่ติดตั้งในระบบ
node-red : flow พื้นฐาน
node-red-dashboard : โหนดที่ติดตั้งใหม่
หมายเหตุ สามารถติดตั้ง node-red-dashboard ผ่านทางบรรทัดคำสั่งทาง Command prompt ได้เช่นกัน npm install node-red-dashboard |
การสร้าง Dashboard ด้วย Node-RED
หนึ่งในความสามารถที่โดดเด่นของ Node-RED คือ การสร้างหน้าจอ Dashboard แบบ Web-based เพื่อใช้ควบคุมหรือแสดงผลข้อมูล เช่น เซนเซอร์, ปุ่มสั่งงาน, กราฟ
โหนดสำคัญใน Dashboard
-
ui_button
– ปุ่มกด -
ui_switch
– สวิตช์เปิด-ปิด -
ui_chart
– กราฟแสดงข้อมูล -
ui_text
– แสดงข้อความ -
ui_gauge
– มาตรวัด
ตัวอย่าง Flow การสร้างหน้าปุ่มควบคุม
-
ลาก
ui_button
มาวาง และกำหนดข้อความ เช่น “เปิดปั๊มน้ำ” -
เชื่อมต่อกับ
debug
หรือfunction
เพื่อสั่งอุปกรณ์จริง -
กด Deploy แล้วเข้าที่:
http://localhost:1880/ui
ระบบจะแสเงหน้า Web Dashboard พร้อมหน้า GUI ที่สร้างไว้
สรุป
Node-RED เป็นเครื่องมือที่ใช้งานง่าย เหมาะสำหรับผู้ที่เริ่มต้นพัฒนา IoT, ระบบอัตโนมัติ หรือ Workflow แบบ Flow-based โดยไม่ต้องเขียนโค้ดมากมาย สามารถใช้ได้ทั้งในระดับเรียนรู้และระดับพัฒนาใช้งานจริง ด้วยระบบโหนดที่ยืดหยุ่นและรองรับการขยายด้วย Node เสริม ทำให้สามารถสร้างแอปพลิเคชันที่เชื่อมต่อกับโลกภายนอกได้อย่างหลากหลาย