安全專業(yè)的MODBUS網(wǎng)關(guān),保障設(shè)備數(shù)據(jù)通暢無阻
一、介紹
Modbus由MODICON公司于1979年開發(fā),是一種工業(yè)現(xiàn)場總線協(xié)議標準。后被施耐德收購,1996年施耐德公司推出基于以太網(wǎng)TCP/IP的Modbus協(xié)議:ModbusTCP。一經(jīng)面世因其簡單開放的通信方式逐漸成為工業(yè)系統(tǒng)中流行的標準,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議,廣泛應(yīng)用于工業(yè)控制和自動化領(lǐng)域。

?
二、特點
①協(xié)議標準開放、公開發(fā)布且無版稅要求,可以免費使用,不需要繳納許可證費;
②Modbus使用RS232,RS485,網(wǎng)口等接口,采用主從站(master/slave)方式通信。也就是請求/應(yīng)答的意思,主站發(fā)出請求,從站響應(yīng)回答,并且從站不會主動發(fā)送通信主站,從站之間也不會有通訊,從站的地址范圍為 0 - 247,其中0為廣播地址,從站的實際地址范圍為1 - 247。這樣成本低,而且布線也簡單方便,易于部署和維護,滿足基本工業(yè)設(shè)備需求。
③Modbus是應(yīng)用層協(xié)議,位于OSI模型第七層。其協(xié)議格式簡單、通俗易懂,便于開發(fā)和集成,方便形成工業(yè)控制網(wǎng)絡(luò)。
?
三、種類
Modbus協(xié)議包括ASCII、RTU、TCP三種報文類型。有何區(qū)別呢?
簡單來說,Modbus協(xié)議使用串口傳輸時可以選擇RTU或ASCII模式,ASCII 模式采用LRC校驗,RTU模式采用16 位CRC校驗。通過以太網(wǎng)傳輸時使用TCP,這種模式不使用校驗,因為TCP協(xié)議是一個面向連接的可靠協(xié)議。對于所有的這三種通信協(xié)議在數(shù)據(jù)模型和功能調(diào)用上都是相同的,只有封裝方式是不同的。
?

?
另外,在實際的應(yīng)用過程中,為了解決某一個特殊問題,工業(yè)廠商喜歡修改MODBUS規(guī)約來滿足實際需求。但這并不影響網(wǎng)關(guān)使用,鋇錸技術(shù)網(wǎng)關(guān)可以根據(jù)廠商自己的modbus協(xié)議來定制產(chǎn)品,在相關(guān)網(wǎng)關(guān)產(chǎn)品說明書內(nèi)都有注明協(xié)議使用方法。
?
四、MODBUS協(xié)議格式
??數(shù)據(jù)包主要是由四個模塊組成,從機地址,功能碼,數(shù)據(jù),校驗。
?

從機地址:(占用1字節(jié))Modbus總線上有很多的從機,用不同地址來標識,如若是主機發(fā)出,則可以發(fā)送到相應(yīng)的采集,如果是從機應(yīng)答,主機也可以清楚識別判斷信息來自哪個從機。
?功能碼:(占用1字節(jié))功能碼類型大致就是讀和寫功能,根據(jù)需要,填寫不同功能碼即可。常見的八種功能碼:
?

數(shù)據(jù):(根據(jù)功能碼占用多個字節(jié))功能碼不同,數(shù)據(jù)便不同。
校驗:(占用2個字節(jié))為了保持數(shù)據(jù)的穩(wěn)定性,Modbus協(xié)議使用可靠的CRC校驗。
在這需要注意,數(shù)據(jù)包正確無誤地發(fā)送到相應(yīng)的從機時,從機執(zhí)行相應(yīng)操作,并發(fā)送反饋數(shù)據(jù)給主機,如果發(fā)送從機地址或功能碼是錯誤的,從機不會有任何響應(yīng),其他錯誤即會發(fā)送相應(yīng)錯誤碼。
弄清楚了MODBUS協(xié)議規(guī)范,數(shù)據(jù)上傳也就簡單多了,并且鋇錸技術(shù)的Modbus采集網(wǎng)關(guān)都有寄存器地址數(shù)據(jù)處理功能,從modbus寄存器中提取所需數(shù)據(jù),轉(zhuǎn)換成MQTT數(shù)據(jù)上云。 ???
?

至此,要使用 Modbus 實現(xiàn)遠程數(shù)據(jù)采集和控制,可以按照以下步驟進行:
A.確定通信協(xié)議:感知設(shè)備使用的是Modbus RTU還是TCP協(xié)議,也就是使用串口還是網(wǎng)口。
B.確定數(shù)據(jù)采集和控制類型:一般的采集類型有工廠信息管理數(shù)據(jù)、生產(chǎn)設(shè)備數(shù)據(jù)等等,以及是該類型是16bit、32bit還是按位讀寫方式,然后選用相應(yīng)的寄存器地址。
C.配置 Modbus 主站:將采集網(wǎng)關(guān)(?Modbus 主站)連接到感知設(shè)備,配置網(wǎng)關(guān)的通信協(xié)議和參數(shù)。
D.配置感知設(shè)備:配置感知設(shè)備的 Modbus 通信協(xié)議和通信參數(shù)
E.讀取和寫入數(shù)據(jù):通過網(wǎng)關(guān)(主站)向感知設(shè)備發(fā)送讀取和寫入數(shù)據(jù)的命令,根據(jù)需要進行數(shù)據(jù)查看狀態(tài)或控制操作。
這里補充幾點,首先采集數(shù)據(jù)上云,則是網(wǎng)關(guān)作為Modbus主站,將Modbus從站數(shù)據(jù)采集上來之后轉(zhuǎn)換成MQTT協(xié)議對接華為云、亞馬遜云、阿里云、ThingsBoard、Sparkplug B、鋇錸云平臺。其次,網(wǎng)關(guān)絕大多數(shù)支持數(shù)據(jù)TSL/SSL、X .509證書、密鑰加密、OpenVPN、APN專用網(wǎng)絡(luò)、離線緩存等安全功能,大大提高Modbus設(shè)備到云端通信的安全性,防止數(shù)據(jù)泄露或通信故障等問題。
最后,網(wǎng)關(guān)多種多樣,在實際應(yīng)用中,要根據(jù)具體的數(shù)據(jù)采集和控制需求,選擇合適的 Modbus 網(wǎng)關(guān)設(shè)備,以實現(xiàn)遠程數(shù)據(jù)采集和控制。
