ในด้านระบบอัตโนมัติทางอุตสาหกรรม เรามักพบโปรโตคอลการสื่อสารต่างๆ บ่อยครั้ง เช่น Profibus, ControlNet, Ethernet, CANopen, Modbus และอื่นๆ ในบรรดาโปรโตคอลเหล่านี้ โปรโตคอล-แบบโอเพ่นซอร์สและฟรีที่ใช้กันอย่างแพร่หลายที่สุดคือ Modbus ซึ่งได้รับการสนับสนุนโดยอุปกรณ์อุตสาหกรรมจากผู้ผลิตแทบทุกราย
เมื่อดำเนินโครงการวิศวกรรมจริง เรามักจะต้องทำการทดสอบการสื่อสารแต่ขาดอุปกรณ์สื่อสารที่เกี่ยวข้องสำหรับการทดสอบ ดังนั้นจึงจำเป็นต้องมีซอฟต์แวร์ทดสอบการจำลอง ซอฟต์แวร์ที่ใช้กันมากที่สุดคือ ModScan ซึ่งสามารถใช้สำหรับการสื่อสาร Modbus TCP, การสื่อสาร Modbus RTU และการสื่อสาร Modbus ASCII ทำหน้าที่เป็นสถานีหลัก โดยจะรวบรวมข้อมูลจากสถานีสเลฟ มันสามารถส่งคำสั่งไปยังอุปกรณ์ทาส (ซึ่งจะต้องเปิดใช้งาน Modbus{4}} อุปกรณ์อัจฉริยะ) เมื่อได้รับการตอบกลับจากสถานีทาส ข้อมูลการลงทะเบียนที่เกี่ยวข้องจะแสดงบนอินเทอร์เฟซการตรวจสอบ
แล้วเราจะทำการทดสอบอย่างไร?
ขั้นแรก สร้างการเชื่อมต่อฮาร์ดแวร์สำหรับอุปกรณ์ ติดตั้งซอฟต์แวร์ ModScan บนพีซีเพื่อทำหน้าที่เป็นสถานีหลักสำหรับการเก็บข้อมูล คุณจะต้องมีอุปกรณ์อัจฉริยะที่เข้ากันได้กับ Modbus{2}}โปรโตคอล- เป็นสถานีทาส เนื่องจากโดยทั่วไปแล้วพีซีจะมีพอร์ต USB เท่านั้น จึงจำเป็นต้องมีตัวแปลง USB-เป็น-อนุกรม-เป็น-RS485 เพื่อเชื่อมต่อกับสถานีทาสอัจฉริยะ การตั้งค่านี้ใช้กับอุปกรณ์ที่รองรับโปรโตคอล Modbus-RTU ที่มีอินเทอร์เฟซ RS485 หากอุปกรณ์สลาฟอัจฉริยะรองรับโปรโตคอล Modbus TCP/IP เพียงเชื่อมต่อพีซีและอุปกรณ์สลาฟโดยใช้สายอีเธอร์เน็ต

การเชื่อมต่อ RS485
สำหรับการเชื่อมต่อ TCP ต้องมีอุปกรณ์เพียงเครื่องเดียวเท่านั้นที่เชื่อมต่อโดยตรงผ่านสายอีเธอร์เน็ต หากมีอุปกรณ์หลายชิ้นเกี่ยวข้อง จำเป็นต้องใช้สวิตช์อีเธอร์เน็ตอุตสาหกรรมเพื่อเชื่อมต่ออุปกรณ์ทั้งหมดเข้ากับสวิตช์ อุปกรณ์ต่างๆ สามารถเข้าถึงได้ผ่านที่อยู่ IP ที่เกี่ยวข้อง
ประการที่สอง เปิดซอฟต์แวร์ ModScan เพื่อกำหนดค่าพารามิเตอร์การสื่อสาร สำหรับการสื่อสาร RS485 ให้เลือกพอร์ตอนุกรมและตั้งค่าอัตรารับส่งข้อมูล (โดยทั่วไปจะมีค่าเริ่มต้นอยู่ที่ 9600) ความยาวข้อมูล (8 บิต) บิตพาริตี (ไม่มี) และบิตหยุด (1 บิต) ตามพารามิเตอร์การสื่อสารทาส ดังแสดงในรูป:

สำหรับการสื่อสาร Modbus TCP ให้กำหนดค่าการเชื่อมต่อการสื่อสารตามที่แสดงด้านล่าง เลือกประเภทการเชื่อมต่อการสื่อสาร TCP/IP จากนั้นป้อนที่อยู่ IP และหมายเลขพอร์ตของอุปกรณ์ทาส (ค่าเริ่มต้น 502)

ประการที่สาม กำหนดค่าการลงทะเบียนการสื่อสาร: ป้อนที่อยู่เริ่มต้นในช่องที่อยู่ ความยาว ระบุความยาว 03:HOLDING REGISTER หมายถึงประเภทการลงทะเบียน (การลงทะเบียนการถือครอง) ID อุปกรณ์ แสดงถึงหมายเลขสถานีทาส สำหรับ Modbus RTU ให้ป้อนที่อยู่ทาสที่นี่ สำหรับการสื่อสาร Modbus TCP ไม่จำเป็นต้องป้อนข้อมูล หากใช้เซิร์ฟเวอร์แบบอนุกรม ต้องป้อนที่อยู่ทาส จำนวนโพล / การตอบกลับทาสที่ถูกต้อง ระบุจำนวนการส่ง/การรับข้อมูล ทำให้สามารถตรวจจับการสูญหายของแพ็กเก็ตได้ ส่วนตรงกลางแสดงผลการทดสอบที่ระบุข้อมูลทาสที่ตรวจพบ สถานะการเตือนปัจจุบันบ่งชี้ถึงข้อผิดพลาดในการสื่อสาร

การเลือกประเภทข้อมูลจะแสดงในรูปด้านล่าง ปัจจุบัน เราใช้ประเภทจุดลอยตัวแบบ 32-บิต- พร้อมด้วยประเภทบิต ประเภทจำนวนเต็ม ประเภทจุดลอยตัว-ความแม่นยำแบบลอยตัว-สองเท่า และอื่นๆ สำหรับประเภทจุดลอยตัว คุณยังสามารถกำหนดค่าการสลับบิตได้

ประการที่สี่ เราทำการทดสอบการสื่อสารผ่าน Modbus TCP ที่อยู่การสื่อสาร IP ถูกตั้งค่าเป็น 192.168.1.10 ด้วยหมายเลขพอร์ต 502 ที่อยู่ IP ของพีซีได้รับการกำหนดค่าภายในซับเน็ตเดียวกันกับที่อยู่ IP ของสถานีทาส (192.168.1.10) เช่น 192.168.1.20
หากต้องการอ่านรีจิสเตอร์ทาส (Holding Register) ให้เลือก Function Code: 03, Register Start Address: 1, Data Type: 32-bit Floating Point และตั้งค่าจำนวน Registers ที่จะอ่าน: 10 จากนั้นคลิก Connect ดังที่แสดงด้านล่าง:

ดังที่แสดงในแผนภาพ อินเทอร์เฟซหลักไม่แสดงข้อความแจ้งเตือน และจำนวนแพ็กเก็ตข้อมูลที่ส่งและรับตรงกัน ซึ่งบ่งชี้ว่าไม่มีแพ็กเก็ตสูญหาย ข้อมูลมีอยู่ในรีจิสเตอร์ที่เกี่ยวข้อง ซึ่งเป็นการยืนยันการสื่อสารที่ประสบความสำเร็จ ภารกิจสำเร็จแล้ว




