& Software Engineer Co., Ltd. ผู้นำด้านการจัดจำหน่ายอะไหล่เครื่องจักร CNC (New Parts) พร้อมศูนย์บริการซ่อมบำรุง (Repair), อัปเกรดระบบ (Retrofit), และดัดแปลงเครื่องจักรครบวงจรด้วยทีมวิศวกรผู้เชี่ยวชาญ
© 2026 SP AUTOMATION & SOFTWARE ENGINEER CO., LTD. All rights reserved.
ตั้งค่า Modbus TCP/IP PLC Mitsubishi กับอุปกรณ์ภายนอก | SP Automation
Back to Knowledge Base
เรียนรู้หลักการและวิธีจัดการปัญหาโดยวิศวกรผู้เชี่ยวชาญ เพื่อความสำเร็จในการเชื่อมต่อระบบอัตโนมัติของคุณ
ปรึกษาปัญหาเทคนิค บทนำ: ทำไม Modbus TCP/IP จึงสำคัญกับการเชื่อมต่อ PLC Mitsubishi? ในโลกของระบบอัตโนมัติอุตสาหกรรม การสื่อสารระหว่างอุปกรณ์ต่างชนิดกันเป็นหัวใจสำคัญที่ขับเคลื่อนประสิทธิภาพและความยืดหยุ่นของระบบ Modbus TCP/IP ได้กลายเป็นมาตรฐานยอดนิยมที่ช่วยให้ PLC สามารถเชื่อมต่อและแลกเปลี่ยนข้อมูลกับอุปกรณ์ภายนอกได้อย่างกว้างขวาง ไม่ว่าจะเป็น HMI, SCADA, Inverter, เซ็นเซอร์อัจฉริยะ หรือแม้แต่ระบบฐานข้อมูล การทำความเข้าใจและสามารถตั้งค่าการสื่อสารนี้ได้อย่างถูกต้องจึงเป็นทักษะที่จำเป็นสำหรับวิศวกรและช่างเทคนิคทุกคน บทความนี้จะนำท่านเจาะลึกถึงหลักการ ตั้งแต่พื้นฐานไปจนถึงขั้นตอนการตั้งค่าจริงบน PLC Mitsubishi และแนวทางการแก้ไขปัญหาที่พบบ่อย
หลักการทำงานพื้นฐานของ Modbus TCP/IP Modbus TCP/IP เป็นโปรโตคอลการสื่อสารแบบ Client-Server (หรือ Master-Slave ใน Modbus RTU) ที่ทำงานบนเครือข่าย Ethernet โดยใช้พอร์ต TCP/IP มาตรฐาน (โดยทั่วไปคือพอร์ต 502) PLC Mitsubishi มักจะทำหน้าที่เป็น Modbus TCP/IP Server (Slave) เพื่อรอรับคำสั่งจากอุปกรณ์ภายนอกที่เป็น Client (Master) ในการอ่านหรือเขียนข้อมูล
Was this guide helpful? Share Article
ประเมินอาการเสียและปรึกษาช่างผู้เชี่ยวชาญฟรี! บริการซ่อมบอร์ด, เปลี่ยนอะไหล่ (New Part) และดัดแปลงเครื่องจักร ซ่อมจบใน 3 วัน พร้อมรับประกัน 3 เดือน
Test kit after repair No fix, no feeClient (Master): อุปกรณ์ที่เริ่มต้นการสื่อสาร ส่งคำขอ (request) เพื่ออ่านหรือเขียนข้อมูลไปยัง ServerServer (Slave): อุปกรณ์ที่รอรับคำขอจาก Client และตอบสนองด้วยการส่งข้อมูลกลับ หรือดำเนินการตามคำสั่งTCP/IP: เป็นชุดโปรโตคอลที่รับประกันการส่งข้อมูลที่น่าเชื่อถือและมีการตรวจสอบข้อผิดพลาดบนเครือข่าย EthernetModbus ADU (Application Data Unit): คือส่วนของข้อมูล Modbus ที่ถูกห่อหุ้มด้วย Header ของ TCP/IP โดยประกอบด้วย Transaction ID, Protocol ID, Length และ PDU (Protocol Data Unit) ซึ่งมี Function Code และ Dataข้อควรรู้: Modbus Function Codes ที่พบบ่อย Function Code เป็นตัวระบุชนิดของการดำเนินการที่ Client ต้องการให้ Server ทำ เช่น:
- FC01 (Read Coils): อ่านสถานะของ Output (ON/OFF)
- FC02 (Read Discrete Inputs): อ่านสถานะของ Input (ON/OFF)
- FC03 (Read Holding Registers): อ่านค่า Word/Register ที่สามารถเขียนได้
- FC04 (Read Input Registers): อ่านค่า Word/Register ที่เป็น Input เท่านั้น
- FC05 (Write Single Coil): เขียนสถานะ Output เดียว
- FC06 (Write Single Register): เขียนค่า Word/Register เดียว
- FC15 (Write Multiple Coils): เขียนสถานะ Output หลายตัว
- FC16 (Write Multiple Registers): เขียนค่า Word/Register หลายตัว
ส่วนประกอบที่จำเป็นสำหรับการสื่อสาร Modbus TCP/IP PLC Mitsubishi: รุ่นที่รองรับ Ethernet Port เช่น FX5U (มี Built-in), Q series (ต้องมี Ethernet Module เช่น QJ71E71), iQ-R series (มี Built-in หรือใช้ Module)โมดูล Ethernet: สำหรับ PLC บางรุ่นที่ไม่มีพอร์ต Ethernet ในตัว (เช่น Q series)อุปกรณ์ภายนอก (Client): เช่น HMI, SCADA Software, Inverter, Controller, หรือ PC ที่มี Modbus Client Softwareสาย LAN (Ethernet Cable): ชนิด Straight-through หรือ Cross-over (ปัจจุบันอุปกรณ์ส่วนใหญ่รองรับ Auto MDI/MDIX จึงใช้แบบใดก็ได้)โปรแกรม GX Works3: สำหรับ PLC ตระกูล FX5U, iQ-R หรือ GX Works2: สำหรับ PLC ตระกูล Q series
ขั้นตอนการตั้งค่า PLC Mitsubishi ให้เป็น Modbus TCP/IP Server
1. การตั้งค่า IP Address ใน PLC IP Address เป็นสิ่งสำคัญที่สุดในการระบุตัวตนของ PLC บนเครือข่าย แต่ละอุปกรณ์บนเครือข่ายต้องมี IP Address ที่ไม่ซ้ำกันและอยู่ใน Subnet เดียวกัน
เปิดโปรแกรม GX Works3 (หรือ GX Works2) และเปิดโปรเจกต์ PLC ของคุณ ไปที่ `Navigation Window` -> `Parameter` -> `Module Parameter` -> `Built-in Ethernet Port` (สำหรับ FX5U/iQ-R) หรือ `QJ71E71` (สำหรับ Q series) ในแท็บ `Basic Settings` ให้กำหนดค่า IP Address และ Subnet Mask text
IP Address: 192.168.1.100
Subnet Mask: 255.255.255.0
Default Gateway: 192.168.1.1 (ถ้ามี Router)เคล็ดลับเครือข่าย ตรวจสอบให้แน่ใจว่า IP Address ของ PLC ไม่ซ้ำกับอุปกรณ์อื่นในเครือข่ายเดียวกัน และ Subnet Mask ตรงกัน เพื่อให้การสื่อสารเป็นไปอย่างถูกต้อง หากไม่แน่ใจ ควรปรึกษาผู้ดูแลระบบเครือข่ายของคุณ
2. การตั้งค่า Modbus TCP/IP Server Function ใน PLC หลังจากตั้งค่า IP Address แล้ว ขั้นตอนต่อไปคือการเปิดใช้งานและกำหนดค่า Modbus TCP/IP Server Function ใน PLC
ในหน้าต่าง `Module Parameter` ของ Ethernet Port เดิม ให้ไปที่แท็บ `Modbus/TCP` เลือก `Enable Modbus/TCP Server Function` กำหนด `Port Number`: โดยทั่วไปคือ 502 (เป็นพอร์ตมาตรฐานของ Modbus TCP/IP) กำหนด `Number of Connections`: จำนวน Client ที่สามารถเชื่อมต่อพร้อมกันได้ (PLC FX5U รองรับสูงสุด 8 การเชื่อมต่อ) กำหนด `Data Type`: เลือกประเภทข้อมูลที่ Modbus Server จะให้บริการ เช่น Bit, Word การ Mapping Modbus Address กับ PLC Device: นี่คือส่วนสำคัญที่สุดในการกำหนดว่า Modbus Address ต่างๆ จะอ้างอิงถึง Device ใดใน PLC (เช่น D, M, R, WX, WY)text
Modbus Address (Dec) | Modbus Address (Hex) | Function Code | PLC Device Type | PLC Device Number
--------------------|--------------------|---------------|-----------------|------------------
1-9999 | 0000-270E | FC01, FC05, FC15 | M, X, Y | M0, X0, Y0
10001-19999 | 2710-4E1F | FC02 | X, Y | X0, Y0
30001-39999 | 7530-9C3F | FC04 | D, W | D0, W0
40001-49999 | 9C40-C34F | FC03, FC06, FC16 | D, R, W | D0, R0, W0เคล็ดลับการ Mapping Modbus Address Modbus Address ที่ Client เห็นมักจะเป็นแบบ 1-based (เช่น 40001) แต่ใน PLC หรือ Modbus Tester บางตัวอาจใช้ 0-based (เช่น 40000) หรือ Hexadecimal โปรดตรวจสอบเอกสารคู่มือของอุปกรณ์ Client และ PLC อย่างละเอียดเพื่อความเข้าใจที่ตรงกันเสมอ และควรทำตาราง Mapping ที่ชัดเจน
การตั้งค่าอุปกรณ์ภายนอก (Client) เพื่อเชื่อมต่อกับ PLC Mitsubishi เมื่อ PLC ถูกตั้งค่าเป็น Server เรียบร้อยแล้ว ขั้นตอนต่อไปคือการตั้งค่าอุปกรณ์ภายนอก (เช่น HMI, SCADA) ให้ทำหน้าที่เป็น Client เพื่อส่งคำขอข้อมูลไปยัง PLC
เลือก Driver/Protocol: ในซอฟต์แวร์ของอุปกรณ์ Client ให้เลือก Modbus TCP/IP Driverกำหนด IP Address ของ Server: ใส่ IP Address ของ PLC Mitsubishi ที่ตั้งค่าไว้ (เช่น 192.168.1.100)กำหนด Port Number: ใส่ Port Number ของ Modbus TCP/IP Server ใน PLC (โดยทั่วไปคือ 502)กำหนด Modbus Address: ใส่ Modbus Address ที่ต้องการอ่านหรือเขียนข้อมูล โดยอ้างอิงจากตาราง Mapping ที่ทำไว้ใน PLC (เช่น 40001 สำหรับ D0)กำหนด Function Code: เลือก Function Code ที่เหมาะสมกับการดำเนินการ (เช่น FC03 สำหรับอ่าน Holding Registers)กำหนด Data Type: ระบุประเภทข้อมูลที่ตรงกับใน PLC (เช่น Word, Bit, Float)
การทดสอบและแก้ปัญหาเบื้องต้น (Troubleshooting) การทดสอบอย่างเป็นระบบเป็นกุญแจสำคัญในการแก้ปัญหาการสื่อสาร Modbus TCP/IP
ตรวจสอบการเชื่อมต่อทางกายภาพ: ตรวจสอบสาย LAN ว่าเสียบแน่นหนาดีหรือไม่ ไฟสถานะ Link/Act บน PLC และ Switch/Hub ติดหรือไม่ตรวจสอบ IP Address และ Subnet Mask: ใช้คำสั่ง Ping จากคอมพิวเตอร์ไปยัง IP Address ของ PLC เพื่อยืนยันว่า PLC สามารถเข้าถึงได้บนเครือข่ายตรวจสอบ Port Number: ตรวจสอบว่า Port Number ที่ตั้งค่าใน PLC Server และ Client ตรงกัน (โดยทั่วไปคือ 502)ตรวจสอบ Modbus Address Mapping: นี่คือจุดที่เกิดข้อผิดพลาดบ่อยที่สุด ตรวจสอบว่า Modbus Address ที่ Client พยายามอ่าน/เขียน ตรงกับการ Mapping Device ใน PLC และ Function Code ถูกต้องตามประเภทของ Device (เช่น D Register ใช้ FC03/FC16)ใช้ Modbus TCP/IP Client Tester Software: โปรแกรมเช่น Modscan, Simply Modbus หรือ Modbus Poll สามารถช่วยทดสอบการเชื่อมต่อและอ่าน/เขียนข้อมูลจาก PLC ได้อย่างอิสระ ทำให้สามารถแยกแยะปัญหาได้ง่ายขึ้นตรวจสอบ Firewall: หากมีการใช้งาน Firewall บนคอมพิวเตอร์หรือเครือข่าย ตรวจสอบให้แน่ใจว่าพอร์ต 502 ไม่ถูกบล็อก
ข้อผิดพลาดที่พบบ่อยและวิธีแก้ไข 1. IP Conflict: มีอุปกรณ์อื่นใช้ IP Address เดียวกับ PLC แก้ไขโดยเปลี่ยน IP Address ให้ไม่ซ้ำกัน
2. Incorrect Port Number: Port Number ไม่ตรงกันระหว่าง Client และ Server ตรวจสอบและแก้ไขให้ตรงกัน (มักเป็น 502)
3. Wrong Modbus Address/Function Code: Client พยายามอ่าน/เขียน Modbus Address ที่ไม่ถูกต้อง หรือใช้ Function Code ผิดประเภท (เช่น พยายามใช้ FC03 กับ Coil) ตรวจสอบตาราง Mapping และ Function Code ให้ถูกต้อง
4. Data Type Mismatch: Client อ่านข้อมูลเป็น Word แต่ PLC ส่งเป็น Bit หรือกลับกัน ตรวจสอบ Data Type ให้ตรงกัน
5. Network Issues: สาย LAN เสีย, Switch/Hub ทำงานผิดปกติ, หรือปัญหาเครือข่ายอื่นๆ ตรวจสอบการเชื่อมต่อและอุปกรณ์เครือข่าย
ตัวอย่างการเขียนโปรแกรมใน GX Works3 (PLC Server Side) แม้ว่าการตั้งค่า Modbus TCP/IP Server ส่วนใหญ่จะทำใน Parameter แต่ในบางกรณีเราอาจต้องการควบคุมการเข้าถึงข้อมูล หรือประมวลผลข้อมูลที่ได้รับมา การเขียนโปรแกรม Ladder Logic สามารถช่วยจัดการเรื่องนี้ได้ ตัวอย่างเช่น การย้ายข้อมูลจาก Internal Device ที่ Client อ่านได้ ไปยัง Internal Device อื่นๆ เพื่อใช้งานในโปรแกรม
ladder
[---M8000---]--[MOV K100 D0]--
[---M8000---]--[MOV D10 K200]--จากตัวอย่างข้างต้น:
- เมื่อ PLC ทำงาน (M8000 ON) ค่า K100 จะถูกย้ายไปที่ D0
- หาก Modbus Client อ่าน Holding Register ที่ Map ไว้กับ D0 (เช่น 40001) ก็จะได้ค่า 100
- หาก Modbus Client เขียนค่า 200 ไปยัง Holding Register ที่ Map ไว้กับ D10 (เช่น 40011) ค่า 200 ก็จะถูกเขียนลง D10 และสามารถนำไปใช้งานในโปรแกรม PLC ได้
สรุปและข้อคิดเห็นจากวิศวกร การตั้งค่าการสื่อสาร Modbus TCP/IP ระหว่าง PLC Mitsubishi กับอุปกรณ์ภายนอกนั้น แม้จะดูซับซ้อนในตอนแรก แต่เมื่อเข้าใจหลักการและทำตามขั้นตอนอย่างเป็นระบบ ก็จะสามารถทำได้อย่างมีประสิทธิภาพ สิ่งสำคัญคือการตรวจสอบ IP Address, Port Number, และการ Mapping Modbus Address ให้ถูกต้องตรงกันทั้งฝั่ง PLC (Server) และอุปกรณ์ภายนอก (Client) รวมถึงการทดสอบอย่างละเอียดเพื่อค้นหาและแก้ไขปัญหาที่อาจเกิดขึ้น
ในฐานะวิศวกรระบบอัตโนมัติ ผมขอเน้นย้ำว่าการทำความเข้าใจพื้นฐานของโปรโตคอลการสื่อสารเป็นสิ่งสำคัญอย่างยิ่ง เพราะจะช่วยให้คุณสามารถประยุกต์ใช้และแก้ไขปัญหาได้อย่างรวดเร็วและแม่นยำ หากมีข้อสงสัยหรือต้องการคำปรึกษาเชิงลึกเกี่ยวกับการตั้งค่าระบบอัตโนมัติที่ซับซ้อน หรือต้องการทีมงานผู้เชี่ยวชาญเข้าช่วยเหลือในโปรเจกต์ของคุณ ทีมวิศวกรของ SP Automation ยินดีให้คำปรึกษาและสนับสนุนทางเทคนิคเพื่อความสำเร็จของระบบคุณ