一、背景
1979年Modbus的發明,主要用于解決PLC之間通信的問題。這些年,它憑借了免費開放、簡單易懂等特點,廣泛應用在工業自動化領域的各種產品中。初期主要針對的是串口設備,即ModbusRTU和ModbusASCII協議,后來施耐德在其基礎上發明了針對以太網設備的ModbusTCP。
Modbus協議的誕生與發展,是工業自動化領域技術進步的必然結果,各種工業設備之間的數據交互,必然需要一個高效可靠的協議來支持。
二、Modbus地址
Modbus的存儲區也是有范圍的,不可能無限大,每個存儲區最多可能存放65536個線圈或寄存器,這個范圍已經很大了。存儲區地址是從0開始的,那么對于每個存儲區來說,地址范圍則從0到65535。Modbus遵守這個公式:絕對地址=存儲區代號+相對地址
長地址表(6位)請參考下表:
在實際使用中,我們可能根本用不到這么多地址。于是為了使用方便,還有一種短地址模型,即5位地址模型。
短地址表(6位)請參考下表:
我們已經有了4個不同的存儲區,那么我們對這些存儲區的讀寫,必然會產生很多不同的行為,比如讀取輸出線圈和寫入輸出線圈,即為2種不同的行為。我們給這些行為取個代號,即為功能碼。
功能碼 | 功能說明 |
---|---|
0x01 | 讀取輸出線圈 |
0x02 | 讀取輸入線圈 |
0x03 | 讀取保持寄存器 |
0x04 | 讀取輸入寄存器 |
0x05 | 寫入單個線圈 |
0x06 | 寫入單個寄存器 |
0x0F | 寫入多個線圈 |
0x10 | 寫入多個寄存器 |
三、協議分類
ModbusRTU和ModbusASCII用于串行通信,ModbusTCP用于以太網通信,但是這并不是絕對的,因為Modbus協議只是一種應用層的協議,并沒有指定物理層,比如,ModbusRTU協議也可以使用在以太網中進行數據傳輸。
四、報文格式
ModbusRTU的通用報文格式如下:
第一部分:從站地址,占1個字節
第二部分:功能碼,占1個字節
第三部分:數據部分,占N個字節
第四部分:校驗部分,CRC校驗,占2個字節
ModbusASCII的通用報文格式如下:
第一部分:開始字符(:)
第二部分:從站地址,占2個字節
第三部分:功能碼,占2個字節
第四部分:數據部分,占N個字節
第五部分:校驗部分,LRC校驗,占2個字節
第六部分:結束字符(CR LF)
ModbusTCP的通用報文格式如下:
第一部分:事務處理標識符,占2個字節
第二部分:協議標識符,占2個字節
第三部分:長度,占2個字節
第四部分:單元標識符,占1個字節
第五部分:功能碼,占1個字節
第六部分:數據部分,占N個字節
五、結論
帝晶串口屏支持使用最廣泛的ModbusRTU報文格式。已經在充電樁、儲能行業廣泛使用。
審核編輯 黃宇
-
ModBus協議
+關注
關注
3文章
179瀏覽量
33877 -
串口屏
+關注
關注
8文章
571瀏覽量
37895
發布評論請先 登錄
相關推薦
如何實現EtherNet/IP與Modbus協議之間轉換?
一文淺談Modbus協議
Modbus協議網關簡介

Modbus、樓宇自控、電力協議轉Modbus協議網關BL120ML支持一鍵對接LabVIEW

使用MODBUS協議、樓宇自控系統、電力協議轉Modbus協議網關來集成樓宇內的溫濕度傳感器設備

使用Modbus、樓宇自控、電力協議轉Modbus協議網關實現生產設備的遠程監控和管理

空調協議網關快速操作空調協議轉換為Modbus協議

巴圖自動化Profinet協議轉Modbus協議網關模塊連接智能儀表與PLC通訊

巴圖制自動化Profinet協議轉Modbus協議模塊連接PLC和電表通信

巴圖自動化Profinet協議轉Modbus協議模塊接稱重模塊與PLC通訊

Profibus協議轉Modbus協議網關模塊在船舶中的應用

Modbus協議轉Profibus協議網關接溫控表與PLC通訊

Modbus協議轉Profinet協議網關與氣體監測系統配置案例

Modbus協議的工作原理、優缺點及應用

評論