導讀:ModBus網(wǎng)絡只有一個主機,所有通信都由他發(fā)出。網(wǎng)絡可支持247個之多的遠程從屬控制器,但實際所支持的從機數(shù)要由所用通信設備決定。采用這個系統(tǒng),各PC可以和中心主機交換信息而不影響各PC執(zhí)行本身的控制任務。
Modbus 協(xié)議是應用于電子控制器上的一種通用語言。通過此協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(例如以太網(wǎng))和其它設備之間可以通信。Modbus 協(xié)議定義了一個控制器能認識使用的消息結構,而不管它們是經(jīng)過何種網(wǎng)絡進行通信的。它描述了一控制器請求訪問其它設備的過程,如河回應來自其它設備的請求,以及怎樣偵測錯誤并記錄。它制定了消息域格局和內容的公共格式。Modbus 是一個請求/應答協(xié)議。
要分解的Modbus熱圖
ModBus網(wǎng)絡是一個工業(yè)通信系統(tǒng),由帶智能終端的可編程序控制器和計算機通過公用線路或局部專用線路連接而成。其系統(tǒng)結構既包括硬件、亦包括軟件。它可應用于各種數(shù)據(jù)采集和過程監(jiān)控。
ModBus網(wǎng)絡只有一個主機,所有通信都由他發(fā)出。網(wǎng)絡可支持247個之多的遠程從屬控制器,但實際所支持的從機數(shù)要由所用通信設備決定。采用這個系統(tǒng),各PC可以和中心主機交換信息而不影響各PC執(zhí)行本身的控制任務。
為更好地普及和推動Modbus在基于以太網(wǎng)上的分布式應用,目前施耐德公司已將Modbus協(xié)議的所有權移交給IDA(Interface for Distributed Automation,分布式自動化接口)組織,并成立了Modbus-IDA組織,為Modbus今后的發(fā)展奠定了基礎。在中國,Modbus已經(jīng)成為國家標準GB/T19582-2008。
Modbus消息幀
了解了它,會使你對串口通信有一個清晰的認識!
通用消息幀
ASCII消息幀 (在消息中的每個8Bit 字節(jié)都作為兩個ASCII字符發(fā)送)
十六進制,ASCII字符0...9,A...F
消息中的每個ASCII字符都是一個十六進制字符組成
每個字節(jié)的位
1個起始位
n個數(shù)據(jù)位,最小的有效位先發(fā)送
1個奇偶校驗位,無校驗則無
1個停止位(有校驗時),2個Bit(無校驗時)
錯誤檢測域
LRC(縱向冗長檢測)
RTU消息幀
8位二進制,十六進制數(shù)0...9,A...F
消息中的每個8位域都是一個兩個十六進制字符組成
每個字節(jié)的位
1個起始位
8個數(shù)據(jù)位,最小的有效位先發(fā)送
1個奇偶校驗位,無校驗則無
1個停止位(有校驗時),2個Bit(無校驗時)
錯誤檢測域
CRC(循環(huán)冗長檢測)
自定義Modbus數(shù)據(jù)表
命令報文信息解析: