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

Modbus Protocol คืออะไร



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



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


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



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

                   

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

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

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 จะเก็บอยู่ในตาราง 4 ตารางที่มีคุณลักษณะต่างกัน โดยสองตางรางแรกจะเก็บข้อมูลของแบบ Discrete ที่เป็นค่า On/Off (Coil) ส่วนอีกสองตารางที่เหลือจะเก็บค่าตัวเลข(Register)
Coil และ Register ต่างก็มีตารางแบบ Read-only คืออ่านได้อย่างเดียว และ Read-write คืออ่านได้และเขียนข้อมูลลงไปได้
แต่ละตารางจะมีข้อมูล 9999 (เก้าพันเก้าร้อยเก้าสิบเก้า) ค่า
Coil หรือ Contact ซึ่งเป็น Discrete แต่ละตัวจะถูกระบุตำแหน่งด้วย Address ตั้งแต่ 0000 ถึง 270E ซึ่งเป็นเลขฐานสิบหก (แปลงเป็นฐานสิบคือ 0 ถึง 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!