Modbus通訊協議

2022-02-04 17:45:01 字數 2430 閱讀 8593

儲存到相簿

2019-6-19 11:24 上傳

modbus通訊協議

modbus概述

modbus是由modicon公司(現為施耐德電氣的乙個品牌)在2023年發明的,這是乙個跨時代、里程碑式的網路協議,因為工業網路從此拉開了序幕。

modbus是全球第乙個真正用於工業現場的匯流排協議,據不完全統計:截至到2004中,modbus的節點安裝數量已經超過了800萬個,而且75%的產品為非施耐德產品,安裝的地區遍及世界各地,可見其普及的程度,已經成為了事實上的協議標準。雖然已經走過了27個年頭,modbus今天仍然活躍在工業、建築、基礎設施等領域中。

modbus特點

1.標準、開放:使用者可以免費、放心地使用modbus協議,不用交納許可證費,也不會侵犯智財權。目前,支援modbus的廠家超過400家,支援modbus的產品超過600種,而且在國內也有很多的使用者支援和使用modbus的產品。

2.modbus是面向訊息的協議,可以支援多種電氣介面,如:rs232、rs422、rs485等,還可以在多種介質上傳送,如:雙絞線、光纜、無線射頻等。要說明的是:和很多的現場匯流排不同,它不用專用的晶元與硬體,完全採用市面上銷售的標準部件! 這就保證了採用modbus的產品造價最為低廉。

3.modbus協議的幀格式是最簡單、最緊湊的協議,可以說:簡單高效,通俗易懂。所以使用者使用容易,廠商開發簡單。

modbus應用協議

modbus是一種簡單的客戶機/伺服器應用協議,客戶機能夠向伺服器傳送請求。伺服器分析請求,處理請求,向客戶機傳送應答

modbus主站/從站協議原理

modbus 序列鏈路協議是乙個主-從協議。 

在同一時刻,只有乙個主節點連線於匯流排,乙個或多個子節點(最大編號為  247)連線於同乙個序列匯流排。modbus 通訊總是由主節點發起。子節點在沒有收到來自主節點的請求時,從不會傳送資料。

子節點之間從不會互相通訊。

主節點在同一時刻只會發起乙個 modbus 事務處理。

modbus通訊模式

在單播模式,主節點以特定位址訪問某個子節點,子節點接到並處理完請求後,子節點向主節點返回乙個報文(乙個'應答')。在這種模式,乙個modbus事務處理包含2個報文:乙個來自主節點的請求,乙個來自子節點的應答。每個子節點必須有唯一的位址(1到247),這樣才能區別於其它節點被獨立的定址。

在廣播模式,主節點向所有的子節點傳送請求。對於主節點廣播的請求子節點沒有應答返回。廣播請求一般用於寫命令。所有裝置必須接受廣播模式的寫功能。位址0是專門用於表示廣播資料的。

序列傳輸模式-rtu模式

在 rtu 模式,報文幀由時長至少為 3.5 個字元時間的空閒間隔區分

整個報文幀必須以連續的字元流傳送。如果兩個字元之間的空閒間隔大於1.5 個字元時間,則報文幀被認為不完整應該被接收節點丟棄

序列鏈路上的modbus幀結構

位址域只含有子節點位址,該位址必須在modbus序列匯流排上唯一,modbus主節點沒有位址。 

功能碼指明伺服器要執行的動作,遵從modbus協議規範。

錯誤檢驗域是對報文內容執行"冗餘校驗"的計算結果。

根據不同的傳輸模式(rtu or ascii)使用兩種不同的計算方法,crc或者lrc

modbus 常用功能碼

讀保持暫存器

傳送命令:

[裝置位址][命令號03][起始暫存器位址高8位][低8位][讀取的暫存器數高8位][低8位][crc校驗的低8位][crc校驗的高8位]

例:[11][03][00][6b][00][03][crc低][crc高]

裝置響應:

[裝置位址][命令號03][返回的位元組個數][資料1][資料2]...[資料n]

[crc校驗的低8位] [crc校驗的高8位]

例:[11][03][06][02][2b][00][00][00][64][crc低][crc高]

寫單個暫存器

傳送命令:

[裝置位址][命令號06][需下置的暫存器位址高8位][低8位][下置的資料高8位][低8位][crc校驗的低8位][crc校驗的高8位]

例:[11][06][00][01][00][03][crc低][crc高]

裝置響應:如果成功把計算機傳送的命令原樣返回,否則不響應。

modbus通訊協議

modbus是由modicon 現為施耐德電氣公司的乙個品牌 在1979年發明的,是全球第乙個真正用於工業現場的匯流排協議。modbus網路是乙個工業通訊系統,由帶智慧型終端的可程式設計序控制器和計算機通過公用線路或區域性專用線路連線而成。其系統結構既包括硬體 亦包括軟體。它可應用於各種資料採集和過...

modbus 通訊協議

modbus rtu模式的協議字段 modbus協議rtu模式要求每一幀的起始和結束都以至少3.5個字元為間隔。每個字元間隔是字元位數 波特率,以1位起始位,8位資料,1位停止位,無奇偶校驗位的10位資料。以波特率為9600b s為例,字元間隔為1.04ms,也就是每一幀的開始和結束都伴隨著至少3....

Modbus通訊協議 2

2 rtu幀 使用 rtu模式,訊息傳送至少要以3.5個字元時間的停頓間隔開始。在網路波特率下多樣的字元時間,這是最容易實現的 如下圖的t1 t2 t3 t4所示 傳輸的第乙個域是裝置位址。可以使用的傳輸字元是十六進製制的0.9,a.f。網路裝置不斷偵測網路匯流排,包括停頓間隔時間內。當第乙個域 位...