สอน Modbus TCP-IP เชื่อมต่อ LAN
เรียนรู้การตั้งค่าและใช้งาน Modbus TCP-IP กับ Samkoon PLC รุ่น FAs-32MT-AC-E แบบ Client-Server ผ่านเครือข่าย LAN พร้อมขั้นตอนละเอียด
อัพเดทล่าสุด: 7/3/2569
ราคาชุดอุปกรณ์
การสื่อสาร Modbus TCP-IP ด้วย Samkoon PLC
ในบทความนี้เราจะมาเรียนรู้วิธีการตั้งค่าและใช้งาน Modbus TCP-IP เพื่อสื่อสารระหว่าง PLC หลายตัวผ่านเครือข่าย LAN โดยใช้ Samkoon PLC รุ่น FAs-32MT-AC-E
ความแตกต่างระหว่าง Modbus RS-485 และ TCP-IP
การสื่อสาร Modbus TCP-IP มีข้อแตกต่างหลักจาก Modbus RS-485 ดังนี้:
- สื่อกลาง: ใช้สาย Ethernet แทนสาย RS-485 2 เส้น
- โครงสร้าง: เปลี่ยนจาก Master-Slave เป็น Client-Server
- การเชื่อมต่อ: ผ่าน Network Switch แทนการต่อแบบ Daisy Chain
- การกำหนดที่อยู่: ต้องตั้ง IP Address แทน Station ID เพียงอย่างเดียว
การเตรียมอุปกรณ์และการเชื่อมต่อ
อุปกรณ์ที่ต้องการ
- Samkoon PLC รุ่น FAs-32MT-AC-E จำนวน 3 ตัว
- Network Switch 1 ตัว
- สาย Ethernet
- คอมพิวเตอร์สำหรับเขียนโปรแกรม
การกำหนด IP Address
กำหนด IP Address ให้กับแต่ละ PLC ดังนี้:Client PLC: 169.254.1.100
Server PLC 1: 169.254.1.101
Server PLC 2: 169.254.1.102
ขั้นตอนการตั้งค่า
1. การต่อสายและเชื่อมต่ออุปกรณ์
- เชื่อมต่อ PLC แต่ละตัวเข้ากับ Network Switch ด้วยสาย Ethernet
- เชื่อมต่อ Switch เข้ากับคอมพิวเตอร์
- ตรวจสอบการเชื่อมต่อด้วยคำสั่ง
pingใน Command Prompt
2. การตั้งค่า Communication Parameters
เปิดโปรแกรม SamSoar2022 และทำการตั้งค่าดังนี้:
สำหรับ Client PLC:
- ไปที่ Project Settings → Communication → Net
- เลือก Protocol เป็น Master (TCP IP Master)
- กำหนด Station Number = 0
- ตั้ง IP Address = 169.254.1.100
- กำหนด Port = 2000 (Default)
สำหรับ Server PLC:
- เลือก Protocol เป็น Slave (TCP IP Slave)
- กำหนด Station Number = 1 (สำหรับ Server ตัวที่ 1)
- ตั้ง IP Address = 169.254.1.101
- กำหนด Local Port = 2000
3. การสร้าง Modbus Table
ใน Client PLC ให้สร้าง Modbus Table โดย:
- คลิกขวาที่แท็บ Modbus Table → Add → Add Modbus Table
- สร้างตารางสำหรับแต่ละ Server
ตัวอย่างการตั้งค่า Modbus Table:
Function Code: 0x01 (Read Coils)
Slave Register: 10000 (Y0 เป็นต้นไป)
Slave Count: 10
Master Register: M6000
Function Code: 0x01 (Read Coils)
Slave Register: 0 (M0 เป็นต้นไป)
Slave Count: 10
Master Register: M1100
Function Code: 0x03 (Read Holding Registers)
Slave Register: 40001 (D0 เป็นต้นไป)
Slave Count: 10
Master Register: D1000
4. การเขียนโปรแกรมควบคุม
การตั้งค่า IP Address ใน PLC:
M0 เป็น ON:
MOVE K169, D100 ; IP Octet 1
MOVE K254, D101 ; IP Octet 2
MOVE K1, D102 ; IP Octet 3
MOVE K101, D103 ; IP Octet 4 (Server 1)
MOVE K2000, D104 ; Port Number
M1 เป็น ON:
MOVE K169, D200 ; IP Octet 1
MOVE K254, D201 ; IP Octet 2
MOVE K1, D202 ; IP Octet 3
MOVE K102, D203 ; IP Octet 4 (Server 2)
MOVE K2000, D204 ; Port Number
การส่งคำสั่ง Modbus:
M10 เป็น ON:
DESTIP D100, K0, K3, D300 ; กำหนด Destination IP
MBUSTCP K0, "Slave1", D301, D302 ; ส่งคำสั่ง Modbus
M11 เป็น ON:
DESTIP D200, K1, K3, D400 ; กำหนด Destination IP
MBUSTCP K1, "Slave2", D401, D402 ; ส่งคำสั่ง Modbus
5. การดาวน์โหลดโปรแกรม
การตั้งค่าการสื่อสาร:
- ไปที่ Communication Settings
- เปลี่ยนจาก USB เป็น Network
- คลิก Settings และใส่ IP Address ของ PLC
- ทดสอบการเชื่อมต่อด้วยปุ่ม Test
6. การทดสอบระบบ
- เปิด Monitor ใน Server PLC และตั้งค่าทดสอบ:
- M0 = ON, Y0 = OFF, Y1 = ON
- D0 = 111, D1 = 222
- เปิด Monitor ใน Client PLC และกระตุ้น M0, M10
- ตรวจสอบผลลัพธ์ใน Client:
- M1001 ควรแสดงสถานะ Y1 = ON
- D1000, D1001 ควรแสดงค่า 111, 222
การแก้ปัญหาที่พบบ่อย
ไม่สามารถเชื่อมต่อได้
- ตรวจสอบว่า IP Address อยู่ใน Subnet เดียวกัน
- ใช้คำสั่ง
pingทดสอบการเชื่อมต่อ - ตรวจสอบการตั้งค่า Port (ต้องเป็น 2000)
ข้อมูลไม่อัพเดต
- ตรวจสอบ Function Code ให้ถูกต้อง
- ตรวจสอบ Slave Register Address
- ตรวจสอบการทำงานของ DST.IP และ MBUS.TCP
Error Code ใน Communication
- ดูค่า Return Code ใน D301, D302 เพื่อวิเคราะห์ปัญหา
- ตรวจสอบ Client ID ว่าตรงกับ Modbus Table
เคล็ดลับการใช้งาน
- Port Management: ใช้ Port เดียวกัน (2000) สำหรับทุก PLC เพื่อความสะดวก
- IP Planning: วางแผน IP Address ให้เป็นระเบียบ เช่น .100 สำหรับ Client, .101-.110 สำหรับ Server
- Error Handling: เก็บ Error Code ไว้ใน Register เพื่อช่วยในการ Debug
- Testing: ใช้ Monitor Mode ทดสอบทีละขั้นตอนก่อนรันระบบจริง
สรุป
การใช้งาน Modbus TCP-IP กับ Samkoon PLC ช่วยให้เราสามารถสร้างเครือข่ายการสื่อสารที่มีความยืดหยุ่นสูง โดยการเปลี่ยนจากระบบ Master-Slave แบบเดิมเป็น Client-Server ผ่าน Ethernet
ข้อดีหลักคือสามารถเชื่อมต่ออุปกรณ์ได้มากกว่า รวมทั้งการจัดการและบำรุงรักษาที่ง่ายกว่า PLC รุ่น FAs-32MT-AC-E สามารถทำงานได้ทั้งในโหมด Master/Slave และ Client/Server ทำให้เป็นตัวเลือกที่คุ้มค่าสำหรับระบบอัตโนมัติขนาดกลางถึงใหญ่
มีคำถาม? ติดต่อทีมงาน


