ตั้งค่า Modbus RTU บน RS485 ของ PLC LINGKONG LK3U/ZK3U: บิต D8400, คำสั่ง ADPRW และตารางที่อยู่สเลฟ | VR Automation

วันที่ 18 สิงหาคม 2569 | คู่มือเทคนิค | VR Automation

PLC LINGKONG LK3U/ZK3U มีพอร์ต RS485 มาให้ 2 พอร์ต และ RS232 อีก 1 พอร์ต ใช้งานพร้อมกันได้ทั้งหมด ทั้งสามพอร์ตเป็นพอร์ตโปรแกรมมิงเมื่อยังไม่ตั้งค่า แต่เปลี่ยนเป็น Modbus RTU หรือโปรโตคอลอิสระได้ผ่านรีจิสเตอร์ D8400 และ D8420 บทความนี้อธิบายการตั้งบิตทีละตำแหน่ง คำสั่ง ADPRW และตารางแปลงที่อยู่ที่จำเป็นเมื่อทำหน้าที่สเลฟ

ค่าเริ่มต้นและสิ่งที่เปลี่ยนได้

คู่มือระบุว่าพอร์ต RS485-1 และ RS485-2 มีค่าเริ่มต้นเป็นโปรโตคอลพอร์ตโปรแกรมมิงที่ 19200, 7 บิตข้อมูล, พาริตี้คู่ (Even), สต็อป 1 บิต เมื่ออยู่ในโหมดนี้จะเปลี่ยนได้เฉพาะบอดเรต ส่วนพารามิเตอร์อื่นเป็นค่าตายตัว หากต้องการใช้ Modbus RTU หรือโปรโตคอลอิสระ ต้องเขียนค่าลง D8400 (สำหรับพอร์ต 1) หรือ D8420 (สำหรับพอร์ต 2) และเมื่อ PLC หยุดรัน พอร์ตจะกลับเป็นโหมดโปรแกรมมิงอัตโนมัติ

ถอดรหัสบิตของ D8400 / D8420

บิต หน้าที่ ค่า 0 ค่า 1
bit0 ความยาวข้อมูล 7 บิต 8 บิต
bit1–bit2 พาริตี้ (0 0) ไม่มี · (0 1) คี่ (1 1) คู่
bit3 สต็อปบิต 1 บิต 2 บิต
bit4–bit7 บอดเรต 0011=300 · 0100=600 · 0101=1200 · 0110=2400 · 0111=4800 1000=9600 · 1001=19200 · 1010=38400 · 1011=57600 · 1101=115200
bit8–bit11 ไม่ใช้ ตั้งเป็น 0
bit12–bit14 เลือกโปรโตคอล (000) พอร์ตโปรแกรมมิง FX · (001) RS แบบไม่มีโปรโตคอล · (010) RS2 แบบไม่มีโปรโตคอล (011) MODBUS-RTU
bit15 ไม่ใช้ ตั้งเป็น 0
⚠️ ข้อควรระวัง: ข้อผิดที่เจอบ่อยที่สุดคือเลือกข้อมูล 7 บิตแล้วไม่ตั้งพาริตี้ ซึ่งคู่มือระบุว่าจะได้รหัสข้อผิดพลาด 6309 (พอร์ต 1) หรือ 6315 (พอร์ต 2) ทันที ถ้าไม่แน่ใจให้ใช้ 8 บิต พาริตี้ none หรือ even ตามที่อุปกรณ์ปลายทางกำหนด ซึ่งเป็นค่ามาตรฐานของ Modbus RTU (8N1 หรือ 8E1)

เมื่อเลือก MODBUS-RTU แล้ว ต้องระบุบทบาทของพอร์ตผ่าน D8401 (พอร์ต 1) หรือ D8421 (พอร์ต 2) — ค่า H0 คือทำหน้าที่มาสเตอร์ และค่า H10 (เท่ากับ K16) คือทำหน้าที่สเลฟ

คำสั่ง ADPRW และฟังก์ชันโค้ดที่รองรับ

ประเภทคำสั่ง ฟังก์ชันโค้ด อุปกรณ์บิตที่ใช้ได้ อุปกรณ์เวิร์ดที่ใช้ได้
อ่านบิต 1 (H1), 2 (H2) X, Y, M, S, T, C, M พิเศษ
เขียนบิต 5 (H5) Y, M, S, T, C, M พิเศษ
อ่านรีจิสเตอร์ 3 (H3), 4 (H4) X, Y, M, S, T, C, M พิเศษ D, T, C, D พิเศษ
เขียนรีจิสเตอร์ 6 (H6) Y, M, S, T, C, M พิเศษ D, T, C, D พิเศษ
เขียนรีจิสเตอร์เป็นชุด 16 (H10) Y, M, S, T, C, M พิเศษ D, T, C, D พิเศษ

ข้อจำกัดที่ต้องจำ: ความยาวข้อมูลสูงสุดของ ADPRW คือ 520 คำ เกินกว่านั้นจะได้รหัส 6343 (พอร์ต 1) หรือ 6363 (พอร์ต 2) · การใช้รีจิสเตอร์อ่านบิต หนึ่งรีจิสเตอร์จะอ่านสถานะได้ 16 บิต และการใช้รีจิสเตอร์เขียนบิต หนึ่งรีจิสเตอร์จะกระทบสถานะ 16 บิตพร้อมกัน ต้องระวังไม่ให้เขียนทับบิตที่ไม่ตั้งใจ

เนื่องจากคำสั่ง ADPRW ใช้ร่วมกันทั้งสองพอร์ต จึงต้องสลับปลายทางด้วยรีเลย์ M8410 — เมื่อ OFF คำสั่งจะทำงานกับ RS485-1 และเมื่อ ON จะทำงานกับ RS485-2

รีจิสเตอร์ควบคุมและตรวจสอบฝั่งมาสเตอร์

พอร์ต 1 พอร์ต 2 หน้าที่ ช่วงค่า
D8409 D8429 เวลารอสเลฟตอบกลับ 0–32767 (1 = 10 ms) · 0 = 3 วินาที
D8410 D8431 หน่วงเวลาก่อนตอบกลับ 0–16382 (1 = 1 ms) ค่าเริ่มต้น 10 ms
D8412 D8432 จำนวนครั้งที่ลองใหม่ 0–20 ครั้ง (เกิน 20 ถูกตัดเป็น 20)
D8414 D8434 หมายเลขสเตชันเมื่อเป็นสเลฟ 1–247
D8402 D8422 รหัสข้อผิดพลาดล่าสุด อ่านอย่างเดียว
D8403 D8423 รายละเอียดข้อผิดพลาดล่าสุด อ่านอย่างเดียว
D8404 D8424 สเต็ปโปรแกรมที่เกิดข้อผิดพลาด อ่านอย่างเดียว
D8408 D8428 จำนวนครั้งที่ลองใหม่ในปัจจุบัน อ่านอย่างเดียว
D8419 D8439 โหมดที่พอร์ตทำงานอยู่ 0=พอร์ตโปรแกรม · 4=RS · 5=RS2 · 19=มาสเตอร์ · 29=สเลฟ

รีเลย์ที่ควรมอนิเตอร์: M8401/M8421 คือกำลังสื่อสาร, M8402/M8422 คือเกิดข้อผิดพลาด, M8408/M8428 คือกำลังลองใหม่, M8409/M8429 คือหมดเวลารอ และ M8029 คือคำสั่ง ADPRW ทำงานเสร็จแล้ว

ตารางแปลงที่อยู่เมื่อ PLC ทำหน้าที่สเลฟ

เมื่อให้ SCADA หรือ HMI มาอ่านข้อมูล ต้องแปลงที่อยู่อุปกรณ์ของ PLC เป็นที่อยู่ Modbus ตามตารางนี้

ที่อยู่ Modbus (บิต) อุปกรณ์ PLC อ่าน/เขียน
0x0000–0x1DFF M0–M7679 อ่าน/เขียน
0x1E00–0x1FFF M8000–M8511 อ่าน/เขียน
0x2000–0x2FFF S0–S4095 อ่าน/เขียน
0x3000–0x31FF TS0–TS511 (หน้าสัมผัสตัวตั้งเวลา) อ่าน/เขียน
0x3200–0x32FF CS0–CS255 (หน้าสัมผัสตัวนับ) อ่าน/เขียน
0x3300–0x33FF Y0–Y377 อ่าน/เขียน
0x3400–0x34FF X0–X377 อ่านอย่างเดียว
ที่อยู่ Modbus (เวิร์ด) อุปกรณ์ PLC อ่าน/เขียน
0x0000–0x1F3F D0–D7999 อ่าน/เขียน
0x1F40–0x213F D8000–D8511 อ่าน/เขียน
0xA140–0xA33F TN0–TN511 (ค่าตัวตั้งเวลา) อ่าน/เขียน
0xA340–0xA407 CN0–CN199 (ค่าตัวนับ 16 บิต) อ่าน/เขียน
0xA408–0xA477 CN200–CN255 (ค่าตัวนับ 32 บิต) อ่าน/เขียน
0xA478–0xA657 M0–M7679 (อ่านเป็นเวิร์ด) อ่าน/เขียน
0xA7A8–0xA7B7 Y0–Y377 (อ่านเป็นเวิร์ด) อ่าน/เขียน
0xA7B8–0xA7C7 X0–X377 (อ่านเป็นเวิร์ด) อ่านอย่างเดียว

เช็กลิสต์ก่อนเชื่อมต่อจริง

  1. ตั้งพารามิเตอร์อนุกรมให้ตรงกันทุกสถานี — บอดเรต ความยาวข้อมูล พาริตี้ และสต็อปบิต
  2. ตั้งหมายเลขสเตชันไม่ให้ซ้ำ ในช่วง 1–247
  3. ปิดปลายสาย RS485 ด้วยตัวต้านทาน 120 Ω ทั้งสองปลายของบัส
  4. ถ้าสายยาวเกิน 500 เมตร ให้ลดบอดเรตลงมาที่ 9600–19200
  5. ตั้ง D8409 ให้เผื่อเวลาตอบกลับที่ช้าที่สุดของอุปกรณ์ในบัส แล้วตั้ง D8412 เป็น 2–3 ครั้ง
  6. อ่าน D8419 เพื่อยืนยันว่าพอร์ตอยู่ในโหมดที่ต้องการจริง (19 = มาสเตอร์, 29 = สเลฟ)

ต้องการตัวแปลงสัญญาณหรือเกตเวย์เพื่อเชื่อม RS485 เข้าเครือข่ายอีเทอร์เน็ต ดูอุปกรณ์ที่มีในสต๊อกได้ที่หมวด อุปกรณ์เครือข่าย

สรุป

การตั้ง Modbus RTU บน LK3U/ZK3U ไม่ได้ใช้หน้าจอตั้งค่า แต่ใช้การเขียนบิตลงรีจิสเตอร์ ซึ่งกลับดีตรงที่เปลี่ยนพารามิเตอร์จากโปรแกรมได้แบบไดนามิก จำหลักสามข้อคือ ตั้งโปรโตคอลที่บิต 12–14 ของ D8400, กำหนดบทบาทมาสเตอร์หรือสเลฟที่ D8401 และสลับพอร์ตของ ADPRW ด้วย M8410 เท่านี้ก็เชื่อมต่อกับอินเวอร์เตอร์ มิเตอร์ หรือ HMI ในระบบได้ครบ

ตารางสรุป การตั้งค่าโปรโตคอลผ่าน D8400 / D8420
การตั้งค่าโปรโตคอลผ่าน D8400 / D8420 — VR Automation

แหล่งข้อมูลและมาตรฐานอ้างอิง

  1. Catalog: LK3UZK3U-en.pdf — Lingkong LK3U/ZK3U Series PLC User Manual (หน้า RS485 Communication Port Description, ADPRW Special M/D Register, MODBUS-RTU Slave Element Address)
  2. SCADA Protocols — How to Configure Modbus RTU Over RS-485: Step-by-Step — ขั้นตอนตั้งค่าพารามิเตอร์อนุกรมและหมายเลขสเตชัน
  3. PLC Programming — Modbus RTU Tutorial: RS-485 Wiring, Frames & CRC — โครงสร้างเฟรม RTU และการปิดปลายสาย
  4. Industrial Monitor Direct — Modbus RTU Parity Settings: Even vs No Parity Configuration Guide — เหตุผลที่พาริตี้ไม่ตรงทำให้สื่อสารล้มเหลวแบบเงียบ ๆ
ติดต่อ VR Automation PLC LINGKONG พร้อม RS485 2 พอร์ต

สนใจสั่งซื้อ PLC LINGKONG LK3U / ZK3U?

VR Automation จำหน่ายและให้บริการติดตั้ง พร้อมทีมช่างผู้เชี่ยวชาญ

โทรสอบถามราคา: 083-848-8314

อีเมล: [email protected]

Line: @vrautomation

vrautomation.co.th

สต๊อกกรุณาสอบถาม | รับประกันสินค้า | บริการหลังการขาย | ออกใบกำกับภาษีได้

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *