modbus通訊協議詳解

Modbus協議目前成為工控行業的標準協議。為莫迪康公司(Modicon)開發的,後來被施耐德收購成為旗下品牌,現在已作為施耐德的標準協議。現在 Modbus 已經是工業領域全球最流行的協議。此協議支持傳統的 RS-232、 RS-422、RS-485 和TCP以太網設備。許多工業設備,包括 PLC,DCS,智能儀表等都在使用 Modbus 協議作為他們之間的通訊標準。有了它,不同廠商生產的控制 設備可以連成工業網絡,進行集中監控。

Modbus協議包括ASCII、RTU、TCP等。數據通訊採用Maser(主)/Slave(從)方式,Master端發出數據請求消息,Slave端接收到正確消息後就可以發送數據到Master端以響應請求;Master端也可以直接發消息修改Slave端的數據,實現雙向讀寫。

Modbus協議需要對數據進行校驗,串行協議中除有奇偶校驗外,ASCII模式採用LRC校驗,RTU模式採用16位CRC校驗,但TCP模式沒有額外規定校驗,因為TCP協議是一個面向連接的可靠協議。

工具/原料

  • 帶有RS232串口、USB接口的計算機電腦
  • RS232轉RS485通信轉換器
  • 或USB轉RS485通信轉換器
  • RS485設備一臺(儀表,PLC,觸摸屏,變頻器等任意設備)
  • 或通過虛擬串口軟件安裝兩個虛擬串口
  • 串口調試助手或commix1.3軟件

方法/步驟

  1. MODBUS串行通信協議基本規則:每個MODBUS數據包都由以下5個部分組成:(1)從站地址;(2) 要執行的功能碼;(3)寄存器地址(變量地址);(4)數據 ;(5)CRC校驗;
modbus通訊協議詳解


  1. (1)從站地址:地址長度為1個字節,有效的從站地址範圍為1-247,從站如果接收到一幀地址信息與自身地址相符合的數據包時,就執行數據包中包含的命令。
  2. (2)功能碼: MODBUS數據包中功能碼長度為一個字節,用以通知從站應當執行何種操作,從站響應數據包中應當包含主站所請求操作的相同功能碼字節。有關功能碼參照下表:
modbus通訊協議詳解


  1. (3)寄存器地址:從機執行有效命令時數據區域存儲的位置。不同變量佔用不同寄存器個數,有些地址變量佔用兩個寄存器,4字節數據,有些變量佔用一個寄存器,2字節數據,請根據實際情況使用。有些佔用更多寄存器,根據實際數據來定。
  2. (4)數據區:數據區包含了終端執行特定功能所需要的數據或者終端響應查詢時採集到的數據。這些數據的內容可能是數值、參考地址或者設置值;例如:功能碼告訴終端讀取一個寄存器,數據區則需要指明從哪個寄存器開始及讀取多少個數據,內嵌的地址和數據依照類型和從機之間的不同內容而有所不同;寄存器數值發送順序為:高位字節在前,低位字節在後。
  3. (5)CRC校驗: MODBUS-RTU模式採用16位CRC校驗。發送設備應當對包裹中的每一個數據都進行CRC16計算,最後結果存放入檢驗域中。接收設備也應當對包裹中的每一個數據(除校驗域以外)進行CRC16計算,將結果域校驗域進行比較;只有相同的包裹才可以被接受。
  4. 通信異常處理 如果主站發送了一個非法的數據包或者是主站請求一個無效的數據寄存器時,異常的數據響應就會產生。這個異常數據響應由從站地址、功能碼、故障碼和校驗域組成. 根據MODBUS通訊要求,異常響應功能碼=請求功能碼+0x80;異常應答時,將功能號的最高位置1。例如:主機請求功能號為0x04則從機返回的功能號對應為0x84。
modbus通訊協議詳解


  1. 舉例說明:1、讀多寄存器例:主機讀取儀表測量值UA(A相電壓),假設現測量到A相電壓為220.0V。UA的地址編碼是0x4000(十六進制),因為UA是長整型數據(4字節),佔用2個數據寄存器,220.0V電壓轉換對應的十六進制數據是:0x00000898(2200)。主機發送命令格式為:01 03 40 00 00 02 D1 CB從機返回命令格式為:01 03 04 00 00 08 98 FC 59
modbus通訊協議詳解

modbus通訊協議詳解

  1. 舉例說明:例2:寫單寄存器假設將溫控表溫度值SV修改為150(寫入設定值SV),SV的地址編碼是0x2000(十六進制),因為SV是整數(2字節),佔用1個數據寄存器。將十進制整數150轉換為十六進制數為0x0096。主機發送命令格式為:01 06 20 00 00 96 02 64從機返回命令格式為:01 06 20 00 00 96 02 64
modbus通訊協議詳解

注意事項

  • 一般PLC用十進制數表示,所以必須要進行數據轉換。
  • 注意查看不同廠家對modbus設備中協議的說明,特別注意有些數據格式問題。


分享到:


相關文章: