何莫
【摘要】ModBus通信技術(shù)在智能化儀器儀表中的應(yīng)用具有非常重要的意義,因此需要重點(diǎn)加強(qiáng)研究。基于此,本文分析了ModBus通信技術(shù)在智能化儀器儀表中的應(yīng)用。
【關(guān)鍵詞】ModBus通信技術(shù);智能化儀器儀表;應(yīng)用
一、Modbus簡介
Modbus協(xié)議是應(yīng)用在電子控制器上的一種通用語言,已經(jīng)成為一通用工業(yè)標(biāo)準(zhǔn)。Modbus采用主從應(yīng)答方式,即只有一個(gè)設(shè)備作為主機(jī)能主動(dòng)發(fā)送詢問信息,其它設(shè)備都是作為從機(jī)響應(yīng)主機(jī)的命令或?qū)⑺璧男畔⒎祷刂林鳈C(jī)。Modbus協(xié)議有兩種傳輸模式:ASCII模式和RTU模式。同波特率下,RTU模式較ASCII模式能傳輸更多的數(shù)據(jù),所以工業(yè)網(wǎng)絡(luò)大都采用RTU模式。此協(xié)議支持傳統(tǒng)的RS-232、RS-422、RS-485和以太網(wǎng)設(shè)備。許多工業(yè)設(shè)備,包括PLC,DCS,智能儀表等都在使用Mod-bus協(xié)議作為他們之間的通訊標(biāo)準(zhǔn)。
二、硬件配置
(一)PLC
CP341模塊式S7-300/400PLC中支持Modbus串行通信,CP341有一個(gè)通信口,接口類型可以選擇,可以插在分布式從站ET200M上使用,支持主站或者從站。CP341加載Modbus(RTU)格式通信協(xié)議,必須配置相應(yīng)軟件,在軟件中含有協(xié)議轉(zhuǎn)換器Dongle,使用時(shí)將Dongle插入CP341后面的插槽中。軟件的組態(tài)步驟如下:(1)新建項(xiàng)目,打開STEP7,選擇菜單“File”→“New”新建一個(gè)項(xiàng)目,在“Name”中輸入項(xiàng)目名稱。(2)插入一個(gè)“SIMATIC300Station”,然后對硬件進(jìn)行組態(tài),按安裝順序依次插入機(jī)架、電源、CPU、CP341。(3)雙擊“CP341”欄,在彈出界面中點(diǎn)擊“參數(shù)”(parame-ters)按鈕,進(jìn)入?yún)f(xié)議選擇界面,選擇“Modbusslave”驅(qū)動(dòng),連接PLCMPI接口使之成為聯(lián)機(jī)狀態(tài),雙擊“l(fā)oaddrives”欄,加載ModbusRTU協(xié)議到通信處理器(Dongle)中。CPU必須處于“stop”模式,點(diǎn)擊“l(fā)oaddrives”欄,加載過程啟動(dòng),完成后離線與在線的版本將匹配。(4)在線將組態(tài)數(shù)據(jù)和參數(shù)分配數(shù)據(jù)從編程設(shè)備下載到CPU,菜單命令PLC→下載(download)。下載CPU立即接受參數(shù)。
(二)DCS
DCS硬件包括SM3310和SM020。(1)SM020模塊和利時(shí)SM系列Modbus通訊模塊,同時(shí)支持Profibus-DP總線協(xié)議與Modbus協(xié)議,通過Profibus-DP總線與控制器進(jìn)行參數(shù)與數(shù)據(jù)交換實(shí)現(xiàn)DP從站功能,并通過Modbus協(xié)議接收或者發(fā)送Modbus數(shù)據(jù)包,支持功能碼01、02、03、04、05、06、0F、10。SM020模塊在Modbus一側(cè)既可以做Modbus主站,也可以做Modbus從站。支持的最大從站數(shù)必須同時(shí)滿足輸入/輸出數(shù)據(jù)長度最多各1000byte,輸入/輸出數(shù)據(jù)之和最大1200byte,以及從站數(shù)目小于等于22的約束條件。SM020采用模塊化設(shè)計(jì),整體為歐式插件結(jié)構(gòu),機(jī)籠安裝卡銷固定,支持熱插拔。模塊與機(jī)籠槽位依據(jù)配套防混銷識別定位,有效防止錯(cuò)位對硬件造成的損傷。(2)SM3310是SM系列硬件產(chǎn)品的通用端子模塊。用過25芯傳輸電纜與對應(yīng)基隆地板連接,實(shí)現(xiàn)現(xiàn)場信號到功能模塊的相互轉(zhuǎn)接和傳遞。
三、ModBus通信技術(shù)在智能化儀器儀表中的應(yīng)用
ModBus以報(bào)文的形式傳輸信息。報(bào)文是網(wǎng)絡(luò)中交換與傳輸?shù)臄?shù)據(jù)單元,報(bào)文包含了將要發(fā)送的完整的數(shù)據(jù)信息,也是網(wǎng)絡(luò)傳輸?shù)膯挝?,傳輸過程中會(huì)不斷的封裝成分組、包、幀來傳輸,封裝的方式就是添加一些信息段,這些字段就是報(bào)文頭。
RTU(RemoteTerminalUnit)即遠(yuǎn)程終端模式,這種模式的典型報(bào)文格式如下。
RTU模式中,每個(gè)字節(jié)由11位組成,包括1個(gè)起始位、8個(gè)數(shù)據(jù)位、1個(gè)奇偶校驗(yàn)位和1個(gè)停止位,格式如下。
如果采用無校驗(yàn)格式,則校驗(yàn)位位置用停止位填充。最大的ModBusRTU報(bào)文長度為256字節(jié)。在RTU模式中,每條報(bào)文前至少需要3.5個(gè)字符時(shí)間的空閑間隔將各報(bào)文區(qū)分開來,添加了這3.5個(gè)字符間隔的報(bào)文序列,構(gòu)成ModBusRTU的報(bào)文幀,如圖1所示。在每個(gè)報(bào)文的傳輸過程中,必須以連續(xù)的字符流發(fā)送報(bào)文內(nèi)容,如果兩個(gè)字符之間的空閑間隔大于1.5個(gè)字符時(shí)間,那么認(rèn)為此報(bào)文不完整,接收方接收到不完整的報(bào)文,將做被丟棄處理,不完整的報(bào)文如圖2所示。在進(jìn)行ModBusRTU模式程序設(shè)計(jì)時(shí)必須嚴(yán)格遵守這些時(shí)間要求和規(guī)定,否則將造成發(fā)送和接受的失敗。
總之,Modbus是應(yīng)用于工業(yè)控制器上的標(biāo)準(zhǔn)通信協(xié)議,數(shù)據(jù)的傳輸采用串行通訊,進(jìn)一步加強(qiáng)對其的研究非常有必要,需要引起我們的重視。
參考文獻(xiàn)
[1]陳卓.Modbus通信協(xié)議在地鐵屏蔽門系統(tǒng)與綜合監(jiān)控系統(tǒng)間的應(yīng)用[J].科技展望,2016,26(13):8.
[2]顏外平.基于FPGA的ModbusRTU現(xiàn)場總線從站模塊開發(fā)[D].武漢:華中科技大學(xué),2016.