เริ่มต้นเนื้อหา
Naebs แน๊บส์ | Modbus-RTU Relay โปรเจคที่เราเริ่มต้นพร้อมกับ X-Bar ที่ไม่ได้เป็นเพียงบอร์ดรีเลย์ธรรมดา แต่มาพร้อมเฟิร์มแวร์สำเร็จรูปที่ติดตั้งมาให้พร้อมใช้งานในโหมด Modbus-RTU Relay ทันทีที่แกะกล่อง คุณสามารถตั้งค่าต่างๆ ได้ง่ายผ่านเว็บแอป Naebs แน๊บส์ | Modbus-RTU Relay Control ซึ่งจะช่วยให้คุณ เชื่อมต่อและขยายการใช้งานได้หลายตัวในระบบเดียว หรือจะต่อยอดพัฒนาแอปพลิเคชันของคุณเองผ่าน โปรโตคอล Modbus ก็ทำได้อย่างอิสระ
นอกเหนือจากความง่ายและความสะดวกแล้ว ยังสามารถใช้งานพัฒนาโปรแกรมทั่วไปด้วยตนเองอย่างอิสระ สิ่งที่ต้องคำนึงคือหากเขียนทับเฟิร์มแวร์ที่ติดตั้งไว้ จะไม่สามารถกลับมาใช้งานเดิมได้อีก ทางเลือกที่เราแนะนำคือถอด ESP32-C3 ที่มีเฟริมแวร์นี้เก็บไว้ก่อน แล้วใช้ตัวใหม่เพื่อการเขียนโปรแกรมอย่างอิสระ หรืออีกทางเลือกคือ สั่งซื้อ ESP32-C3 ในราคาปกติจากลิ้งค์นี้ได้เลย ทางร้านติดตั้งให้ฟรี
ขั้นตอนการปฏิบัติ
ฟังก์ชั่นการใช้งานแอป Modbus-RTU Relay Control
1.คอนโทรลรีเลย์
2.ตั้งค่าโหมดการเริ่มต้น ล้างสถานะหรือจดจำสถานะเดิม
3.อ่านค่าสถานะของรีเลย์
4.อ่านค่าดิจิตอลอินพุทได้ทั้งแบบ Active High และ Low
5.รองรับการตรวจจับและสั่งงานแบบทันทีในตัว
คุณสมบัติที่น่าสนใจ
- ใช้ได้ทันที ไม่ต้องเขียนโค้ดเริ่มต้น
- ใช้งานคอนโทรลพื้นฐานได้เหมือน Modbus Relay ทั่วไป
- ตั้งค่าบอร์ด, มอนิเตอร์สถานะ, ควบคุมผ่านแอปฟรี พร้อมรองรับการต่อขยายหลายตัว
- จดจำและคืนค่าการทำงานของรีเลย์ให้เหมือนเดิม หลังจากไฟดับหรือระบบแฮงค์
- รองรับการใช้งานตรวจจับและสั่งงานแบบทันทีในตัว Even-Base Automation
- พร้อมต่อยอดการควบคุมด้วย Modbus Protocol
- ตัวอย่างการนำไปใช้ร่วมแพลตฟอร์ม Arduino IDE และ Node-RED
Naebs แน๊บส์ | เว็บแอพพลิเคชั่นสำหรับมอนิเตอร์สถานะ, คอนโทรลรีเลย์ และตั้งค่าบอร์ด
ออกแบบมาเพื่อความเรียบง่ายในการเชื่อมต่อ มอนิเตอร์สถานะ, ควบคุมรีเลย์ และตั้งค่าบอร์ด หรือใช้เป็นเครื่องมือทดสอบเพื่อพัฒนาแอพพลิเคชั่นบนแพลตฟอร์มอื่นๆด้วยตนเอง
วิธีการใช้งาน Modbus-RTU Relay Control
- เชื่อมต่ออุปกรณ์
- เสียบอุปกรณ์ Modbus-RTU เข้ากับคอมพิวเตอร์ผ่านพอร์ต USB หรือ Serial
- คลิกปุ่ม CONNECT เพื่อเชื่อมต่อ (รองรับเฉพาะ Baud Rate 9600 เพื่อการสลับไอดีอย่างง่ายดาย)
- หากต้องการยกเลิกการเชื่อมต่อ คลิก DISCONNECT
- เลือก Slave ID
- คลิกปุ่ม ID 1 ถึง ID 12 เพื่อเลือกอุปกรณ์ที่ต้องการควบคุม (หรือใช้ปุ่ม << และ >> เพื่อเลื่อน ID)
- รอสักครู่เพื่อให้ระบบตรวจสอบสถานะของอุปกรณ์
- ควบคุมรีเลย์
- เมื่อเลือก ID แล้ว การ์ดรีเลย์จะแสดงขึ้น (สูงสุด 9 ช่อง ขึ้นอยู่กับบอร์ด)
- คลิกปุ่ม เปิด หรือ ปิด บนการ์ดรีเลย์เพื่อควบคุมสถานะแต่ละช่อง
- ตั้งค่า Reactive (เฉพาะ X-Bar Smart Relay)
- สำหรับบอร์ด X-Bar Smart Relay จะมีปุ่ม x(ปิดการใช้งาน), DI1(GPIO5), DI2(GPIO7), DI3(GPIO8) ในแต่ละช่องรีเลย์
- คลิกเพื่อตั้งค่าให้รีเลย์ตอบสนองต่อ Digital Input (DI) หรือปิดการตอบสนอง (x)
- สลับอินพุต Pull-Up และ Pull-Down
- คลิกปุ่ม Toggle เพื่อสลับบิตการทำงานได้ตามความต้องการ
- สลับโหมดเริ่มต้น
- ดูโหมดเริ่มต้นที่แสดงในช่อง โหมดเริ่มต้น (ล้างสถานะ หรือ จดจำสถานะ)
- คลิกปุ่ม สลับ ข้างโหมดเริ่มต้นเพื่อเปลี่ยนระหว่าง ล้างสถานะ (1) และ จดจำสถานะ (0)
- อัปเดตสถานะ
- คลิก UPDATE STATUS เพื่อ Poll ตรวจสอบสถานะรีเลย์และข้อมูลบอร์ด
- คลิก AUTO เพื่อ Polling interval 1sec อัปเดตสถานะอัตโนมัติทุก 1 วินาที (คลิกซ้ำเพื่อปิด)
- รันลำดับรีเลย์
- คลิก RUN เพื่อเปิดและปิดรีเลย์ทั้งหมดของ ID ปัจจุบันตามลำดับ
- ดูบันทึกการทำงาน
- บันทึกการทำงานจะแสดงในช่องด้านล่าง (เช่น การเชื่อมต่อ, การส่งคำสั่ง, ข้อผิดพลาด)
- คลิก CLEAR LOG เพื่อล้างบันทึก
- ข้อควรระวัง
- ตรวจสอบว่าเชื่อมต่ออุปกรณ์ถูกต้องก่อนใช้งาน
- หากไม่มีการตอบกลับจาก Slave ID ระบบจะแสดงข้อความ “No slave device at this ID”
- ใช้เบราว์เซอร์ที่รองรับ Web Serial API (เช่น Chrome, Edge)
หมายเหตุ: ดูตารางคำสั่งเพิ่มเติมได้ที่ลิงก์ Command Table ในส่วนท้ายหน้าเว็บ
รูปแบบการต่อขยายด้วย Noebs น๊อบส์ | RS485 Daisy Chain Connecter
ต่อน๊อบส์ต่อแน๊บส์ สร้างการเชื่อมต่อมัลติดรอปได้ง่ายๆ
ตัวอย่างการต่อ Digital input
ต่อ Digital input ด้วย Digital Sensor แบบ ON/OFF (Binary Output)
การต่อ Digital input ที่ทำงาน Active Low
DI1(GPIO5), DI2(GPIO7) และ DI3(GPIO8) ถูก Pull-Up เป็นค่าเริ่มต้น สามารถเปลี่ยนสถานะด้วยการ ดึงลง GND
ตัวอย่างการต่อ Digital input ด้วย สวิตซ์ switch
ตัวอย่างการต่อ Digital input ด้วย Active IR
วิธีปรับระยะตรวจจับ (ในกรณีที่ HW-201 มี Potentiometer)
– ลองหมุนทวนเข็มนาฬิกา → ลดระยะตรวจจับ
– ลองหมุนตามเข็มนาฬิกา → เพิ่มระยะตรวจจับ
ตัวอย่างการต่อ Digital input ด้วย Magnetic Switch
การต่อ Digital input ที่ทำงาน Active HIGH
DI1(GPIO5), DI2(GPIO7) และ DI3(GPIO8) ถูก Pull-Up จะต้องคลิก Toggle เป็น ↓ เพื่อ Pull-Down ดึงสถานะเป็น LOW สามารถเปลี่ยนสถานะด้วยการ ดึงขึ้น 3.3V
ตัวอย่างการต่อ Digital input ด้วย Passive IR
วิธีการปรับระยะตรวจจับบนโมดูล PIR
สังเกต Potentiometer บนบอร์ดโดยทั่วไปโมดูล PIR จะมี 2 ตัวปรับ (Potentiometer)
– ตัวหนึ่งใช้ปรับ Sensitivity (ระยะตรวจจับ)
– อีกตัวใช้ปรับ Time Delay (เวลาหน่วงการปิดสัญญาณ)
การปรับระยะตรวจจับ (Sensitivity)
– หมุนทวนเข็มนาฬิกา (Counter-Clockwise) → ลดระยะตรวจจับ → ตรวจจับได้ใกล้ลง
– หมุนตามเข็มนาฬิกา (Clockwise) → เพิ่มระยะตรวจจับ → ตรวจจับได้ไกลขึ้น
Communication Protocol
พารามิเตอร์ | รายละเอียด |
---|---|
Code | 8-bit binary |
Data bit | 8 bit |
Parity bit | None |
Stop bit | 1 bit |
Error check | CRC |
Baud rate | 9600 bit/s |
Function Quick Reference
X-Bar Modbus Register
รีจิสเตอร์ | คำอธิบาย | ฟังก์ชันโค้ด | Operator | ชนิดข้อมูล |
---|---|---|---|---|
0–3 | สถานะรีเลย์ (CH1–CH4) | FC03, FC05 | Read, Write (0xFF00/0x0000) | Boolean (16-bit) |
9 | ประเภทบอร์ด (Read-only) | FC03 | Read (ค่า 4) | 16-bit Integer |
10 | พฤติกรรมเริ่มต้น (Reset Mode) 0 = จดจำสถานะรีเลย์ (Default) 1 = ล้างสถานะทุกครั้ง |
FC03, FC06 | Read, Write (0x0000/0x0001) | 16-bit Integer |
11–13 | อินพุตดิจิทัล (DI1–DI3) | FC03 | Read (0/1) | Boolean (16-bit) |
14–17 | การตั้งค่าการตอบสนอง (Relay Conditions) | FC03, FC06 | Read, Write (0–3) | 16-bit Integer |
256 | Slave ID (Default: 1) | FC03, FC06 | Write (1–255) | 16-bit Integer |
257 | Baud Rate Multiplier (Default: 9600) | FC03, FC06 | Write (0x01–0x18) | 16-bit Integer |
-
Baud Rate Default: 9600
Supported: 4800 (0x01), 9600 (0x02), 19200 (0x04), 38400 (0x08), 57600 (0x0C), 115200 (0x18) - ปุ่มบนบอร์ด ( BTN / GPIO6 )
ใช้รีเซ็ตสถานะรีเลย์ทั้งหมดโดยทันที (ล้างค่าสถานะรีเลย์ และล้างการกำหนดค่าต่างๆของอินพุต)
ใช้งานกับ X-Bar กับ Node-RED
ตัวอย่างการใช้ X-Bar ต่อกับ Node-RED | เชื่อมต่ออย่างง่ายและพัฒนาอย่างรวดเร็วด้วย X-Bar!