PLC
ปานกลาง
14 นาที

สอน Modbus TCP-IP เชื่อมต่อ LAN

เรียนรู้การตั้งค่าและใช้งาน Modbus TCP-IP กับ Samkoon PLC รุ่น FAs-32MT-AC-E แบบ Client-Server ผ่านเครือข่าย LAN พร้อมขั้นตอนละเอียด

อัพเดทล่าสุด: 7/3/2569

ราคาชุดอุปกรณ์

฿15,870

การสื่อสาร 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. การต่อสายและเชื่อมต่ออุปกรณ์

  1. เชื่อมต่อ PLC แต่ละตัวเข้ากับ Network Switch ด้วยสาย Ethernet
  2. เชื่อมต่อ Switch เข้ากับคอมพิวเตอร์
  3. ตรวจสอบการเชื่อมต่อด้วยคำสั่ง ping ใน Command Prompt

2. การตั้งค่า Communication Parameters

เปิดโปรแกรม SamSoar2022 และทำการตั้งค่าดังนี้:

สำหรับ Client PLC:

  1. ไปที่ Project SettingsCommunicationNet
  2. เลือก Protocol เป็น Master (TCP IP Master)
  3. กำหนด Station Number = 0
  4. ตั้ง IP Address = 169.254.1.100
  5. กำหนด Port = 2000 (Default)

สำหรับ Server PLC:

  1. เลือก Protocol เป็น Slave (TCP IP Slave)
  2. กำหนด Station Number = 1 (สำหรับ Server ตัวที่ 1)
  3. ตั้ง IP Address = 169.254.1.101
  4. กำหนด Local Port = 2000

3. การสร้าง Modbus Table

ใน Client PLC ให้สร้าง Modbus Table โดย:

  1. คลิกขวาที่แท็บ Modbus TableAddAdd Modbus Table
  2. สร้างตารางสำหรับแต่ละ 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. การดาวน์โหลดโปรแกรม

การตั้งค่าการสื่อสาร:

  1. ไปที่ Communication Settings
  2. เปลี่ยนจาก USB เป็น Network
  3. คลิก Settings และใส่ IP Address ของ PLC
  4. ทดสอบการเชื่อมต่อด้วยปุ่ม Test

6. การทดสอบระบบ

  1. เปิด Monitor ใน Server PLC และตั้งค่าทดสอบ:
    • M0 = ON, Y0 = OFF, Y1 = ON
    • D0 = 111, D1 = 222
  2. เปิด Monitor ใน Client PLC และกระตุ้น M0, M10
  3. ตรวจสอบผลลัพธ์ใน 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 ทำให้เป็นตัวเลือกที่คุ้มค่าสำหรับระบบอัตโนมัติขนาดกลางถึงใหญ่