Modbus協議常被稱為工業網絡的祖父。Modbus協議可根據工業和商業要求輕松配置。由于Modbus通信在許多領域的普及和廣泛應用,本文對Modbus通信及其功能代碼、實現和應用進行了詳細的綜述。
什么是Modbus通信協議?
Modbus是一種開放式標準RTU。許多組織和工程師免費將其應用到設備中。該協議被認為是最常見的通信協議,通常可以作為連接工程電子設備的手段進行訪問。
具體而言,這是一種通過串行線路或以太網連接在電子設備之間進行信息傳輸的通信協議。在開放標準的條件下,任何人都可以實現它。這可用于使用SCADA中的RTU連接由電力域控制的系統。
Modbus協議被明確定義為主從協議,這意味著作為主設備的工具將使一個或多個工具成為從設備。這清楚地表明從機不會接收數據,它需要等待,直到要求它提供信息。主設備將信息寫入從設備,然后將信息從寄存器讀取到主設備。從寄存器的角度來看,注冊地址總是存在的。
Modbus通信協議是如何工作的?
由于該開放式標準遠程終端裝置(RTU)使用主從式方法創建各種設備之間的通信,因此使用RTU方案的任何類型的應用程序都將有一個MODBUS主設備和至少一個從設備。這清楚地表明從機不會接收數據,它需要等待,直到要求它提供信息。
設備之間的主從通信是通過串行總線或網絡實現的。在OSI方法中,MODBUS位于第七層。其目的是請求協議,然后交付功能代碼中提到的相應服務。這些ModbusRTU協議的功能代碼是Modbus請求組件。
為了開發MODBUS應用數據單元,交付單元應啟動設備事務。這是通知服務器處理指定類型操作的操作。由主設備發起的請求的設計由應用協議確定。然后將功能代碼編碼為8位,即1字節。只有1-25范圍內的功能代碼才視為有效,此128-255保留用于異常響應。
當主機向從機發出請求/消息時,這意味著功能代碼字段通知服務器執行請求的操作。對于某些操作,還將有一些子功能代碼。例如,主設備可以讀取各種輸入/輸出集群的on和off轉換。
它還可以從一組Modbus寄存器讀取或寫入信息。當主設備接收到來自從設備的響應時,從設備使用功能代碼字段來指示是正常響應還是異常響應。當有正常響應時,從設備將與第一個功能代碼的請求共振。
這就是Modbus通信協議的工作原理。
Modbus通信協議功能代碼
Modbus協議識別多個功能代碼以獲得寄存器可訪問性。Modbus主要有四個不同的數據塊,其中寄存器編號或地址可能重疊。因此,在需要地址和功能代碼的地方,必須定義準確的定義。
下表明確總結了Modbus功能代碼。這些代碼只有一個子類別。然而,對于一些相應的應用,這些可能不適用。
PROFIBUS和/sModbus通信協議
將Profibus和MODBUS作為單獨的應用程序進行比較,兩者都有多種優勢和應用。
Modbus具有結構簡單、操作簡單、協議易用等特點。雖然協議本身的定義與物理層之間存在一些差異,但這將導致多供應商操作中出現問題。PROFIBUS是最復雜的協議,其目的是實現整個行業的自動化。它在使用調制解調器的多供應商功能中表現良好,并具有全面的診斷功能。
當智能設備以點對點方式連接到控制器時,或者當存在遠程位置時,Modbus最適合。當存在多個點,即多個供應商時,PROFIBUS是最好的。
協議版本
Modbus協議的變體包括:
1.ModbusRTU
為了建立協議通信,它以二進制格式表示數據,主要用于串行通信。此版本中的消息按空閑時間段劃分。RTU版本遵循的格式為循環冗余校驗校驗機制,保證了數據的可靠性。
2.ModbusASCII
為了建立協議通信,使用ASCII字符,主要在串行通信中實現。此版本中的消息由冒號(“)和尾隨的換行符(/)分隔。ASCII版本遵循垂直冗余檢查的格式來驗證機制。
3.ModbusTCP
此版本的Modbus用于通過端口502鏈路通過TCP/IP網絡進行通信。此變體不需要任何類型的校驗和計算,因為較低級別本身提供了這一功能。
ModbusPlus
Modbus協議應用主要用途包括:
它用于醫療保健領域分析自動溫度水平
交通行為分析
在家庭自動化中實施,以簡化數據傳輸
天然氣、石油、地熱、海德爾、風能和太陽能產業
Modbus協議轉TCP介紹
在Modbus RTU轉TCP功能下,用戶的串口設備可以通過蜂窩調制解調器 USR-G781向網絡上指定的服務器發送數據 。G781 也可以接受來自服務器的數據并將信息轉發到 串口設備。 用戶無需關注串口數據與網絡數據包之間的數據轉換過程, 通過簡單的參數設置即可實現串口設備與網絡服務器之間的Modbus RTU<=>Modbus TCP通訊 。