李 鋒 周秉直 馬 軍
(1.陜西省計(jì)量科學(xué)研究院,西安 710065;2.楊凌質(zhì)量技術(shù)檢驗(yàn)檢測(cè)所, 楊凌 712100)
?
基于Modbus的通信控制在熱量表檢定裝置中的實(shí)現(xiàn)*
李 鋒1周秉直1馬 軍2
(1.陜西省計(jì)量科學(xué)研究院,西安 710065;2.楊凌質(zhì)量技術(shù)檢驗(yàn)檢測(cè)所, 楊凌 712100)
介紹一種基于Modbus總線,實(shí)現(xiàn)工控機(jī)對(duì)多臺(tái)艾默生EV 1000變頻器(由接收器輸入阻抗決定,最高可接256臺(tái)設(shè)備)進(jìn)行通信控制的方法;它充分發(fā)揮了智能設(shè)備的優(yōu)越性,減少了控制導(dǎo)線,提高了控制的可靠性;該裝置運(yùn)行的結(jié)果表明該方法設(shè)計(jì)實(shí)用、簡(jiǎn)單、可靠、穩(wěn)定。
Modbus;RS-232;RS-485;通信控制
傳統(tǒng)上,我們通常采用在變頻器上的操作面板對(duì)參數(shù)進(jìn)行本地設(shè)置,尤其在變頻器數(shù)量較多的情況下,需要對(duì)每一臺(tái)變頻器進(jìn)行操作,工作量較大,同時(shí)可能會(huì)出現(xiàn)參數(shù)設(shè)置的遺漏和誤操作等現(xiàn)象,造成變頻器工作不正常;此外由于變頻器的配置參數(shù)僅存儲(chǔ)于變頻器的內(nèi)存中,尤其在修改變頻器參數(shù)和需要更換變頻器的場(chǎng)合,以及需要曲線控制的情況下,無(wú)法實(shí)現(xiàn)對(duì)變頻器參數(shù)的統(tǒng)一管理。
采用通信控制方式時(shí),可以利用總線的集中管理功能,通過(guò)上位機(jī)編程,自動(dòng)將單臺(tái)或多臺(tái)變頻器需要調(diào)整的參數(shù)進(jìn)行統(tǒng)一設(shè)置和修改,避免了參數(shù)設(shè)置的遺漏和誤操作現(xiàn)象。同時(shí),由于這些參數(shù)存儲(chǔ)于上位機(jī)中,我們可以實(shí)現(xiàn)變頻器參數(shù)的統(tǒng)一管理,為文件的歸檔和類(lèi)似系統(tǒng)的后續(xù)開(kāi)發(fā)提供了便利;實(shí)現(xiàn)了變頻器參數(shù)的無(wú)差錯(cuò)復(fù)制設(shè)置,提高了系統(tǒng)的可維護(hù)性。
在熱量表檢定裝置中,通過(guò)工控機(jī)與變頻器的通信,結(jié)合EV1000變頻器的特點(diǎn),在Modbus協(xié)議的基礎(chǔ)上, 利用總線方式實(shí)現(xiàn)工控機(jī)對(duì)單臺(tái)或多臺(tái)變頻器進(jìn)行通信控制的方法。總體原理結(jié)構(gòu)如圖1所示。
圖1 總體原理結(jié)構(gòu)
1.1 協(xié)議
Modbus是一個(gè)應(yīng)用層通信協(xié)議,目前基于Modbus協(xié)議的網(wǎng)絡(luò)主要有三種:
1)異步串行傳輸(RS-232、RS-422/485);
2)Modbus Plus高速令牌網(wǎng);
3)TCP/IP以太網(wǎng)。
本文采用Modbus異步串行傳輸網(wǎng)絡(luò)。Modbus協(xié)議定義了一個(gè)獨(dú)立于基本通信層的簡(jiǎn)單的協(xié)議數(shù)據(jù)單元(PDU,Protocol Data Unit),由功能代碼區(qū)和數(shù)據(jù)區(qū)組成;在特定總線或網(wǎng)絡(luò)上,可以通過(guò)引入一些輔助區(qū)形成應(yīng)用數(shù)據(jù)單元(ADU,Application Data Unit),如圖2所示。
圖2 Modbus結(jié)構(gòu)圖
對(duì)異步串行傳輸,Modbus協(xié)議定義的應(yīng)用數(shù)據(jù)單元(ADU)的長(zhǎng)度最大為256個(gè)字節(jié),包括服務(wù)器地址的1個(gè)字節(jié)和錯(cuò)誤校驗(yàn)(CRC)的2個(gè)字節(jié),則協(xié)議數(shù)據(jù)單元()PDU的最大長(zhǎng)度為253字節(jié)。同時(shí),對(duì)于數(shù)據(jù)區(qū)內(nèi)的地址和數(shù)據(jù),當(dāng)數(shù)值大于1個(gè)字節(jié)時(shí),數(shù)據(jù)的傳輸是高位字節(jié)先發(fā)送,如數(shù)值“1234H”,先發(fā)送“12H”,再發(fā)送“34H”。
協(xié)議有 ASCII 和 RTU (遠(yuǎn)程終端單元)兩種傳輸方式(如圖3),在ASCII 方式中,消息中的每個(gè)8Bit字節(jié)需2個(gè)ASCII字符;在RTU方式,每個(gè)8Bit字節(jié)包含兩個(gè)4Bit的十六進(jìn)制字符,每個(gè)消息必須以連續(xù)的流傳輸。
圖3 傳輸方式
消息在標(biāo)準(zhǔn)的Modbus系列網(wǎng)絡(luò)傳輸時(shí),每個(gè)字符或字節(jié)以如下方式發(fā)送(從左到右):最低有效位...最高有效位。主站與從站之間通信的內(nèi)容包括主站對(duì)從站的讀取和寫(xiě)入,Modbus規(guī)定,只有主站具有主動(dòng)權(quán),從站只能被動(dòng)的響應(yīng),包括回答出錯(cuò)信息。數(shù)據(jù)通信的方式一般如圖4所示。
圖4 數(shù)據(jù)通信方式
1.2 RS-232和RS-485接口
標(biāo)準(zhǔn)的 Modbus物理層采用了RS-232串行通信標(biāo)準(zhǔn),遠(yuǎn)距離或多點(diǎn)通信時(shí)可以考慮用RS-422或者RS-485來(lái)代替。Modbus通信的網(wǎng)絡(luò)結(jié)構(gòu)為主從模式,因此在工業(yè)領(lǐng)域采用半雙工的RS-485較多。
RS-232是美國(guó)電子業(yè)協(xié)會(huì)EIA制定的一種串行物理接口標(biāo)準(zhǔn)。一般常用的工控機(jī)都有RS-232串行通信接口,很少有RS-485串口。為了與EV1000通信,可以添加RS-485串口模塊,但成本相對(duì)較高。為此,我們采用RS-232/ RS-485接口轉(zhuǎn)換器。
本設(shè)計(jì)中采用的是RS-232/RS-485轉(zhuǎn)換器。一端可以直接插在工控機(jī)COM口上,另一端提供一個(gè)半雙工的RS-485接口,直接連接EV1000的接線端子。EV1000與上位機(jī)的接線如圖5所示。
圖5 EV1000與上位機(jī)的接線
2.1 變頻器通信控制的操作步驟
在EV1000初次運(yùn)行和機(jī)械系統(tǒng)調(diào)試階段,為了防止可能由于某些其它因素,尤其是來(lái)自機(jī)械系統(tǒng)方面的因素,導(dǎo)致系統(tǒng)工作不正常,而誤認(rèn)為通信控制方式失敗或可靠性不高現(xiàn)象的發(fā)生,正確的操作步驟應(yīng)該分下列三步進(jìn)行:
1)采用面板操作模式或本地模式實(shí)現(xiàn)對(duì)每個(gè)EV1000的單機(jī)控制,同時(shí)對(duì)EV1000的相應(yīng)參數(shù)進(jìn)行修改和調(diào)整。這樣做的好處有三點(diǎn),一是可以以傳統(tǒng)的方式成功實(shí)現(xiàn)EV1000和機(jī)械系統(tǒng)的聯(lián)調(diào),二是可以暫時(shí)先不考慮通信控制所帶來(lái)的相關(guān)問(wèn)題,三是在主控制器上無(wú)須編寫(xiě)EV1000參數(shù)設(shè)置部分的程序。
2)按相關(guān)要求建立好總線連接,同時(shí)在主控制器上編寫(xiě)簡(jiǎn)單的調(diào)試程序,也可以應(yīng)用相應(yīng)總線的計(jì)算機(jī)調(diào)試軟件,對(duì)總線上的每一臺(tái)設(shè)備進(jìn)行逐個(gè)通信測(cè)試。這樣做的目的是以簡(jiǎn)單的方式確認(rèn)系統(tǒng)硬件連接無(wú)誤和通信正常,預(yù)先排除復(fù)雜的系統(tǒng)應(yīng)用過(guò)程中因通信控制而可能產(chǎn)生的問(wèn)題。
3)在上述兩步驟正確無(wú)誤的基礎(chǔ)上,根據(jù)系統(tǒng)的實(shí)際要求和相關(guān)通信控制原則編寫(xiě)適當(dāng)?shù)膽?yīng)用程序,實(shí)現(xiàn)變頻器通信控制的目的。
2.2 變頻器參數(shù)的設(shè)置和調(diào)整
EV1000變頻器為用戶(hù)提供了幾乎全部的內(nèi)部通信變量,但并不意味著在通信控制方式下需要對(duì)所有的變頻器參數(shù)進(jìn)行重新設(shè)置或調(diào)整。事實(shí)上,僅需在變頻器出廠缺省的設(shè)置基礎(chǔ)上對(duì)少數(shù)參數(shù)(如電機(jī)參數(shù)、加/減時(shí)間等)進(jìn)行修改,就可以通過(guò)監(jiān)視參數(shù)和控制參數(shù)的讀寫(xiě)操作,實(shí)現(xiàn)基本的變頻器通信控制。
當(dāng)然,在系統(tǒng)實(shí)際要求和條件許可的情況下,我們可以靈活地應(yīng)用變頻器通信控制方式所帶來(lái)的優(yōu)勢(shì),如以通信方式讀取某一臺(tái)變頻器中已調(diào)整好的相關(guān)參數(shù),根據(jù)預(yù)定的方式對(duì)這些參數(shù)進(jìn)行修正后,再寫(xiě)入其它運(yùn)行模式相似的變頻器中。
如前文所述,變頻器參數(shù)設(shè)置和調(diào)整的一個(gè)重要的原則在變頻器正常運(yùn)行控制之外實(shí)現(xiàn),而且能夠簡(jiǎn)化則盡量地簡(jiǎn)化,以保證變頻器通信控制的實(shí)時(shí)響應(yīng)最快。
EV1000變頻器(不僅限于EV1000變頻器)在總線模式下工作,并可在上位機(jī)界面進(jìn)行參數(shù)修改,人機(jī)交互界面友好,操作人員無(wú)須對(duì)EV1000深入了解,即可熟練地操控設(shè)備的正常運(yùn)行; 該系統(tǒng)簡(jiǎn)單、實(shí)用,對(duì)類(lèi)似變頻器與上位機(jī)組成的控制系統(tǒng)的通信實(shí)現(xiàn)有一定的參考價(jià)值,并在實(shí)際的標(biāo)準(zhǔn)表法熱能表檢定裝置上得到了成功的應(yīng)用,取得了滿(mǎn)意的效果。同時(shí)也由于對(duì)變頻器的控制從手動(dòng)變成了上位機(jī)智能控制,提高了熱能表檢定工作的效率。熱量表檢定裝置投入使用后,有效地提高了智能化控制水平,對(duì)其他類(lèi)似應(yīng)用具有一定參考價(jià)值。
[1] EV1000 系列通用變頻器用戶(hù)手冊(cè)
[2] 周志敏.變頻器工程應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2013
[3] 閆索杰.Modbus通訊協(xié)議與儀表的數(shù)據(jù)采集[J].信息技術(shù)與信息化,2014(2)
[4] 蘇彬.西門(mén)子PLC如何通過(guò)MODBUS協(xié)議與變頻器通訊[J].電子制作,2014(12)
[5] 劉希民.控制儀表及系統(tǒng)[M].北京:國(guó)防工業(yè)出版社,2009
* 陜西省質(zhì)量技術(shù)監(jiān)督局科技計(jì)劃項(xiàng)目(2014KY01)
10.3969/j.issn.1000-0771.2015.05.09