วันอาทิตย์ที่ 20 ตุลาคม พ.ศ. 2556

Modbus Protocol คืออะไร



            Modbus คือโปรโตคอลการสื่อสารที่พัฒนาขึ้นโดยบริษัท Modicon systems ด้วยรูปแบบง่าย ๆ เป็นรูปแบบการส่งข้อมูลระหว่างอุปกรณ์อิเล็กทรอนิกส์ อุปกรณ์ที่ต้องการข้อมูลเราเรียกว่า ModbusMaster ส่วนอุปกรณ์ที่ให้ข้อมูลที่ต้องการเราเรียกว่า Modbus slave



            ใน Modbus Network ที่เป็นมาตรฐานนั้นจะมี Master ตัวเดียวแต่ Slave มีได้ถึง 247 ตัว โดยแต่ละตัวจะมี ID ระบุเหมือนเลขที่บ้านตั้งแต่ ถึง 247 และ Master สามารถ Write ข้อมูลไปยัง Slave ได้


ใช้เพื่อวัตถุประสงค์อะไร
Modbus เป็น Open Protocol หมายความว่าบุคคลทั่วไปสามารถพัฒนาอุปกรณ์ที่ใช้การสื่อสารแบบ Modbus โดยไม่ต้องเสียค่าใช้จ่ายใด ๆ Modbus จึงเป็น Protocol พื้นฐานและนิยมใช้อย่างแพร่หลายในทุกอุตสาหกรรม โดยใช้รับส่งข้อมูลจากอุปกรณ์ควบคุมกับ Controller หรือระบบประมวลผลข้อมูลต่าง ๆ



ทำงานอย่างไร
Modbus เป็นการสื่อสารโดยการส่งข้อมูลไปตามสายสัญญาณ Serial ระหว่างอุปกรณ์ โดยวิธีการสื่อสารที่ง่ายที่สุดคือการต่อสายสัญญาณ Serial ระหว่าง Master หนึ่งตัวกับ Slave หนึ่งตัว

                   

ข้อมูลจะถูกส่งต่อเนื่องกันไปด้วยสัญญาณ หรือ ซึ่งเราเรียกว่า Bit โดยแต่ละบิตจะอยู่ในรูปแบบแรงดัน (Voltage) โดย จะแทนด้วยแรงดันด้านบวกและ แทนด้วยแรงดันด้านลบ ทำให้สัญญาณ Bit ถูกส่งไปด้วยความรวดเร็ว ความเร็วที่ใช้งานโดยทั่วไปคือ 9600 bps (bits per second)

เลขฐานสิบหก (hexadecimalคืออะไร
ตัวเลข และ ที่ส่งมาจะแปลความหมายเป็นค่าตัวเลขได้ก็ด้วยการใช้รูปแบบของเลขฐานสิบหก โดย 4 Bit ที่ต่อกันจะเป็นกลุ่มของเลขฐานสิบหกหนึ่งค่าตั้งแต่ ถึง ดังตาราง

0000 = 0
0100 = 4
1000 = 8
1100 = C
0001 = 1
0101 = 5
1001 = 9
1101 = D
0010 = 2
0110 = 6
1010 = A
1110 = E
0011 = 3
0111 = 7
1011 = B
1111 = F
และแต่ละกลุ่มของ 8 Bit เราเรียกว่า Byte ซึ่งจะแสดงความหมายของ Character หนึ่งตัวที่แทนด้วยตัวเลขตั้งแต่ 00 ถึง FF
จะเก็บข้อมูลในรูปแบบ Modbus อย่างไร

ข้อมูลต่าง ๆ ของอุปกรณ์ที่เป็น Slave จะเก็บอยู่ในตาราง ตารางที่มีคุณลักษณะต่างกัน โดยสองตางรางแรกจะเก็บข้อมูลของแบบ Discrete ที่เป็นค่า On/Off (Coil) ส่วนอีกสองตารางที่เหลือจะเก็บค่าตัวเลข(Register)
Coil และ Register ต่างก็มีตารางแบบ Read-only คืออ่านได้อย่างเดียว และ Read-write คืออ่านได้และเขียนข้อมูลลงไปได้
แต่ละตารางจะมีข้อมูล 9999 (เก้าพันเก้าร้อยเก้าสิบเก้า) ค่า
Coil หรือ Contact ซึ่งเป็น Discrete แต่ละตัวจะถูกระบุตำแหน่งด้วย Address ตั้งแต่ 0000 ถึง 270E ซึ่งเป็นเลขฐานสิบหก (แปลงเป็นฐานสิบคือ ถึง 9998)
Register แต่ละตัวใช้พื้นที่ 16 bits = 2 bytes = 1 word และมี address ตั้งแต่ 
0000 ถึง 270E เช่นกัน
Data Addresses
Coil/Register Numbers
Type
Table Name
0000 to 270E
1-9999
Read-Write
Discrete Output Coils
0000 to 270E
10001-19999
Read-Only
Discrete Input Contacts
0000 to 270E
30001-39999
Read-Only
Analog Input Registers
0000 to 270E
40001-49999
Read-Write
Analog Output Holding Registers

Coil Register Number จะเป็นเพียง Location name จะไม่ปรากฏอยู่ในข้อมูลที่ถูกรับส่ง แต่Data Addressจะถูกระบุอยู่ในข้อมูล เช่นเดียวกับบุรุษไปรษณีย์จะส่งจดหมายได้ต้องปรากฏบ้านเลขที่อยู่บนซองจดหมาย

ยกตัวอย่างเช่น Register ตัวแรกคือ 40001 จะมี Data Address คือ 0000 เมื่อนำตัวเลข 40001 ลบด้วย 0000 จะได้ค่าที่เรียกว่า Offset คือ 40001 โดยแต่ละตารางจะมีค่า Offset คือ 1, 10001, 30001และ 40001 ตามลำดับ

ข้อมูลอ้างอิง : EDA Instruments & Systems

2 ความคิดเห็น:

  1. ขอ แบบ ที่ เข้าใจ กว่า นี้ ได้ไหมคับ แบบ ยกตัว อย่าง การ ป้อน และการ อ่านค่า จาก คู่มือ

    ตอบลบ
  2. ไม่ระบุชื่อ30 มีนาคม 2565 เวลา 04:27

    Modbus Protocol คืออะไร ~ Automation Review >>>>> Download Now

    >>>>> Download Full

    Modbus Protocol คืออะไร ~ Automation Review >>>>> Download LINK

    >>>>> Download Now

    Modbus Protocol คืออะไร ~ Automation Review >>>>> Download Full

    >>>>> Download LINK

    ตอบลบ

Subscribe to RSS Feed Follow me on Twitter!