Username:
Password:

    

     บทความในฉบับนี้ผมจะกล่าวถึงการประยุกต์ใช้งานการติดต่อสื่อสารที่เรียกว่า Modbus ซื่งจะใช้ในการติดต่อระหว่าง PLC และ อุปกรณ์ควบคุมพื้นฐาน เช่น Temperature controller ซื่งอาจจะต้องแบ่งเป็นตอน ๆ ก่อนอื่นเพื่อให้ทุกท่านมีความเข้าใจในระบบการติดต่อแบบ Modbus ผมจะขอกล่าวถึงหลักการพื้นฐานของ Mosbus ก่อนนะครับเริ่มกันเลยดีกว่า

     Modbus คือโปรโตคอลการสื่อสารที่พัฒนาขึ้นโดยบริษัท Modicon systems ด้วยรูปแบบง่าย ๆ เป็นรูปแบบการส่งข้อมูลระหว่างอุปกรณ์อิเล็กทรอนิกส์ อุปกรณ์ที่ต้องการข้อมูลเราเรียกว่า Modbus Master ส่วนอุปกรณ์ที่ให้ข้อมูลที่ต้องการเราเรียกว่า Modbus slave
     ใน Modbus Network ที่เป็นมาตรฐานนั้นจะมี Master ตัวเดียวแต่ Slave มีได้ถึง 247 ตัว โดยแต่ละตัวจะมี ID ระบุเหมือนเลขที่บ้านตั้งแต่ 1 ถึง 247 และ Master สามารถ Write ข้อมูลไปยัง Slave ได้
ข้อมูลของ Modbus อย่างเป็นทางการสามารถตรวจสอบได้ที่ www.modbus- ida.org .

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

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

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

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

 
 

และ แต่ละกลุ่มของ 8 Bit เราเรียกว่า Byte ซึ่งจะแสดงความหมายของ Character หนึ่งตัวที่แทนด้วยตัวเลขตั้งแต่ 00 ถึง FF

     ข้อมูลต่าง ๆ ของอุปกรณ์ที่เป็น 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 เช่นกัน

 
 

     Coil / Register Number จะเป็นเพียง Location name จะไม่ปรากฏอยู่ในข้อมูลที่ถูกรับส่ง แต่ Data Address จะถูกระบุอยู่ในข้อมูล เช่นเดียวกับบุรุษไปรษณีย์จะส่งจดหมายได้ต้องปรากฏบ้านเลขที่อยู่บนซองจดหมาย
ยกตัวอย่างเช่น Register ตัวแรกคือ 40001 จะมี Data Address คือ 0000 เมื่อนำตัวเลข 40001 ลบด้วย 0000 จะได้ค่าที่เรียกว่า Offset คือ 40001 โดยแต่ละตารางจะมีค่า Offset คือ 1, 10001, 30001 และ 40001 ตามลำดับ

     ในครั้งหน้าผมจะมากล่าวถึงรูปแบบในการติดต่อสื่อสารที่เรียกว่า Function Code ว่าเป็นอย่างไร ฉบับนี้หมดเนื้อที่แล้วคงต้องขอลาเท่านี้ครับพบกันใหม่ฉบับหน้าครับ
 
 

Copyright © OMRON Electronics Co., Ltd.