目前,Modbus協(xié)議已成為工業(yè)控制行業(yè)的接口協(xié)議。莫迪康公司(Modicon)開發(fā)的,后來被施耐德回收成為子品牌,現(xiàn)在已經(jīng)成為施耐德的接口協(xié)議。如今,Modbus已經(jīng)成為世界上最受歡迎的工業(yè)應用協(xié)議。該協(xié)議支持傳統(tǒng)RS-232、RS-422、RS-以太網(wǎng)接口485和TCP機械設備。許多機械設備,包括plc,dcs,Modbus協(xié)議被用作兩個人之間的通信規(guī)范。有了這個,不同廠家制造的控制系統(tǒng)可以連接到工業(yè)網(wǎng)絡,進行智能運維。
ASCII包含Modbus協(xié)議。、RTU、TCP等。選擇Maser(主)/Slave(從)方法,數(shù)據(jù)請求信息從Master端傳輸,在Slave端接收到合適的信息后,可以將數(shù)據(jù)傳輸?shù)組aster端以響應要求;Master端可以直接發(fā)送信息,改變Slave端的數(shù)據(jù)信息,完成雙讀寫能力。
Modbus協(xié)議必須對數(shù)據(jù)進行檢查。在串行通信協(xié)議中,ASCII方式選擇LRC檢查,RTU方式選擇16位crc檢查,但TCP方式不需要額外的檢查,因為TCP協(xié)議是一個面向連接的可靠協(xié)議。
特殊工具/原材料
RS232轉向RS485通信轉換器
或者USB轉換RS485通信轉換器
一臺RS485機械設備(儀表盤,PLC,任何機器設備,如觸摸屏、變頻調速器等)
或通過虛擬串口軟件組裝兩個虛擬串口軟件
手機軟件串口調試助手或commix1.3
方式/流程
MODBUS串口通信協(xié)議基本標準:每個MODBUS數(shù)據(jù)文件由以下五個組成:(1)站點詳細地址;(2)要實施的功能碼;(3)存儲器地址(變量地址);(4)數(shù)據(jù)信息;(5)CRC驗證;

(1)從站詳細地址:詳細地址長度為1個字符,高效的從站地址范圍為1-247,從站假如接受到一幀地址信息和自身詳細地址相一致的數(shù)據(jù)時,就實行數(shù)據(jù)文件其中包含的命令。
(2)功能碼:MODBUS數(shù)據(jù)信息包中功能碼長度為一個字節(jié),用于通告從站理應實行哪種實際操作,從站回應數(shù)據(jù)文件中理應包括域名所要求操控的同樣功能碼字節(jié)數(shù)。相關功能碼參考下列:

(3)寄存器地址:從機實行合理指令時數(shù)據(jù)信息地區(qū)存放位置。不一樣自變量占有不一樣存儲器數(shù)量,有一些詳細地址自變量占有2個存儲器,4字節(jié)數(shù)據(jù),有一些自變量占有一個存儲器,2字節(jié)數(shù)據(jù),請結合實際情況應用。有一些占有大量存儲器,按照實際數(shù)據(jù)信息而定。
(4)數(shù)據(jù)區(qū):數(shù)據(jù)區(qū)包括了終端設備實行特殊作用所需的數(shù)據(jù)信息或是終端設備回應查看時采集到的數(shù)據(jù)信息。這些信息內容有可能是標值、參照詳細地址或是設定值;比如:功能碼告知終端設備載入一個存儲器,數(shù)據(jù)區(qū)就需要指出從哪存儲器逐漸及載入幾個數(shù)據(jù)信息,嵌入地址和信息按照種類和在機間的不一樣具體內容而各有不同;存儲器標值推送次序為:上位字節(jié)數(shù)在前面,底位字節(jié)數(shù)后面。
(5)CRC校驗:MODBUS-RTU方式選用16位CRC校驗。推送機器設備需對包囊中的每一個數(shù)據(jù)開展CRC16測算,最終結果儲放入檢測域中。接收設備也需對包囊中的每一個數(shù)據(jù)信息(除校檢域之外)開展CRC16測算,將結論域校檢域進行對比;僅有同樣的包囊才能夠被接納。
通信異常解決假如域名發(fā)送了一個不合法的數(shù)據(jù)文件或者域名要求一個毫無意義的數(shù)據(jù)存儲器時,異常數(shù)據(jù)信息回應會產生。這一異常數(shù)據(jù)回應由從站詳細地址、功能碼、發(fā)動機故障碼crc8域構成.依據(jù)MODBUS通信規(guī)定,出現(xiàn)異?;貞δ艽a=要求功能碼+0x80;出現(xiàn)異?;貜蜁r,將作用號最高位置1。比如:服務器要求作用號是0x04則從機返回作用號相匹配為0x84。

舉例子:1、讀多存儲器例:服務器載入儀表盤測量結果UA(A直流電壓),假定現(xiàn)精確測量到A直流電壓為220.0V。UA的地址編碼是0x4000(十六進制),由于UA是長整型數(shù)據(jù)(4字節(jié)數(shù)),占有2個數(shù)據(jù)存儲器,220.0V電壓轉換相對應的十六進制信息是:0x00000898(2200)。服務器推送指令文件格式為:010340000002D1CB從機回到指令文件格式為:01030400000898FC59

舉例子:例2:寫單存儲器假定將溫控儀表溫度值SV調整為150(載入預設值SV),SV的地址編碼是0x2000(十六進制),由于SV是整數(shù)金額(2字節(jié)數(shù)),占有1個數(shù)據(jù)存儲器。將十進制整數(shù)150轉換成十六進制數(shù)為0x0096。服務器推送指令文件格式為:0106200000960264從機回到指令文件格式為:0106200000960264

常見問題
一般PLC用十進制數(shù)表明,因此一定要開展數(shù)據(jù)交換。
留意查詢不一樣生產廠家對modbus設備上合同的表明,需注意有一些數(shù)據(jù)類型難題。
-
接口協(xié)議
+關注
關注
5文章
43瀏覽量
19017 -
MODBUS
+關注
關注
28文章
2392瀏覽量
82366 -
TCP
+關注
關注
8文章
1418瀏覽量
83089 -
RS-232
+關注
關注
0文章
420瀏覽量
51615
發(fā)布評論請先 登錄
Modbus?串行通信協(xié)議概述
淺談Modbus通信協(xié)議

簡要說明modbus通信協(xié)議
評論