李龍達(dá) 廈門ABB低壓電器設(shè)備有限公司
基于MODBUS現(xiàn)場(chǎng)總線技術(shù)的智能型電動(dòng)機(jī)自動(dòng)控制
李龍達(dá) 廈門ABB低壓電器設(shè)備有限公司
本文通過對(duì)MODBUS通信規(guī)約的解讀,介紹了ABB基于MODBUS總線技術(shù)的智能型電動(dòng)機(jī)自動(dòng)化控制的應(yīng)用,同時(shí)展望了該方案樂觀的應(yīng)用前景。
MODBUS RTU;現(xiàn)場(chǎng)總線;自動(dòng)化控制
目前,我國(guó)工業(yè)生產(chǎn)智能化正從起步階段邁向成熟階段,隨著生產(chǎn)規(guī)模的擴(kuò)大,操作人員需要綜合掌握更多設(shè)備的運(yùn)行參數(shù)和信息,需要同時(shí)按多點(diǎn)的信息實(shí)行操作控制。此時(shí),生產(chǎn)現(xiàn)場(chǎng)的參數(shù)需要通過統(tǒng)一的模擬信號(hào),如4~20mA的直流電流信號(hào)等,送往集中控制室。由于模擬信號(hào)的傳遞需要一對(duì)的物理連接,信號(hào)變化緩慢,提高計(jì)算速度與精度的開銷、難度都較大,而且信號(hào)傳輸?shù)目垢蓴_能力較差,所以,人們開始尋求用數(shù)字信號(hào)取代模擬信號(hào)。
基于MODBUS的現(xiàn)場(chǎng)總線控制系統(tǒng)是通過MODBUS網(wǎng)絡(luò)連接成系統(tǒng),實(shí)現(xiàn)綜合自動(dòng)化的各種功能;同時(shí)把控制功能徹底下放到現(xiàn)場(chǎng),依靠現(xiàn)場(chǎng)智能設(shè)備本身實(shí)現(xiàn)基本控制功能?,F(xiàn)場(chǎng)總線之所以具有較高的測(cè)控能力指數(shù),一是得益于儀表的微機(jī)化,二是得益于設(shè)備的通信功能。把微處理器置入現(xiàn)場(chǎng)自控設(shè)備,使設(shè)備具有數(shù)字計(jì)算和數(shù)字通信能力,一方面提高了信號(hào)的測(cè)量、控制和傳輸精度,同時(shí)為豐富控制信息的內(nèi)容,實(shí)現(xiàn)其遠(yuǎn)程傳送創(chuàng)造了條件。
基于MODBUS的現(xiàn)場(chǎng)總線作為一種先進(jìn)的工業(yè)控制網(wǎng)絡(luò),將當(dāng)今網(wǎng)絡(luò)通信與管理的觀念帶入工業(yè)控制領(lǐng)域,把單個(gè)分散的測(cè)量控制設(shè)備變成網(wǎng)絡(luò)節(jié)點(diǎn),以MODBUS為紐帶,把它們連接成可以相互溝通信息、共同完成自控任務(wù)的網(wǎng)絡(luò)控制系統(tǒng),它是工廠的底層控制網(wǎng)絡(luò)。從八十年代中期開始,經(jīng)歷了幾十年的時(shí)間,MODBUS現(xiàn)場(chǎng)總線控制技術(shù)已經(jīng)被廣泛應(yīng)用于汽車、造紙、紡織、煙草、機(jī)械、石油化工、電力、樓宇自控等各個(gè)控制領(lǐng)域。
MODBUS協(xié)議是應(yīng)用于電子控制器上的一種通用語(yǔ)言。通過此協(xié)議,控制器相互之間、控制器和其它設(shè)備之間可以通信。它已經(jīng)成為一個(gè)通用工業(yè)標(biāo)準(zhǔn)。有了它,不同廠商生產(chǎn)的控制設(shè)備可以連成工業(yè)網(wǎng)絡(luò),進(jìn)行集中監(jiān)控。
MODBUS協(xié)議將通信參與者規(guī)定為“主”和“從”。主設(shè)備可單獨(dú)和從設(shè)備通信,也能以廣播方式和所有從設(shè)備通信,而從設(shè)備之間不能通信。主從設(shè)備之間通信的報(bào)文形式為請(qǐng)求/響應(yīng)幀方式。MODBUS通信協(xié)議是單主站/多子站類型的通信協(xié)議,適用于需要通過RS485總線配置多子站的情況,即在同一MODBUS網(wǎng)絡(luò)僅1臺(tái)主設(shè)備能初始化傳輸(查詢),從設(shè)備根據(jù)主設(shè)備查詢提供的數(shù)據(jù)(功能碼)做出相應(yīng)反應(yīng),不需要握手。如果單獨(dú)通信,從設(shè)備返回一個(gè)消息作為回應(yīng),如果是以廣播方式查詢的,則不作任何回應(yīng)。
目前,MODBUS有下列三種通信方式:
(1)以太網(wǎng),對(duì)應(yīng)的通信模式是MODBUS TCP;
(2)異步串行傳輸(各種介質(zhì)如有線RS-232-/422/485/、光纖、無(wú)線等),對(duì)應(yīng)的通信模式是MODBUS RTU或MODBUS ASCII;
(3)高速令牌傳遞網(wǎng)絡(luò),對(duì)應(yīng)的通信模式是MODBUS PLUS。
ABB公司的智能型電動(dòng)機(jī)綜合管理裝置M10x-M就支持MODBUS RTU通信規(guī)約。
電動(dòng)機(jī)綜合管理裝置M10x是基于電流或電壓測(cè)量的智能型電機(jī)保護(hù)控制裝置。M10x-M是基于微處理器的產(chǎn)品,集豐富且標(biāo)準(zhǔn)的功能于一身。其標(biāo)準(zhǔn)功能方便維護(hù)和工廠后期擴(kuò)建。通過特定的參數(shù)設(shè)置,M10x為各種電機(jī)的應(yīng)用場(chǎng)合提供適當(dāng)?shù)目刂?、監(jiān)測(cè)和保護(hù)功能。
M10x-M只能作為MODBUS的子站設(shè)備,不能作為主站初始化傳輸數(shù)據(jù)即查詢數(shù)據(jù)。
2.1 網(wǎng)絡(luò)結(jié)構(gòu)
所有M10x-M裝置通過總線掛到網(wǎng)絡(luò)上,如圖1所示,一段總線上至多能掛32個(gè)節(jié)點(diǎn)。通訊線的傳輸距離取決于通訊線的類型以及通訊傳輸速率,在通訊線的始末端需要配置一定的終端電阻。
圖1 M10x-M網(wǎng)絡(luò)連接圖
2.2 數(shù)據(jù)傳輸格式,如表1所示
表1 數(shù)據(jù)傳輸格式
主站請(qǐng)求發(fā)送:
· 子站地址:1個(gè)字節(jié);
· 功能碼:1個(gè)字節(jié);
· 數(shù)據(jù)長(zhǎng)度:不同的功能碼數(shù)據(jù)長(zhǎng)度不同;
· CRC:2個(gè)字節(jié)。
子站響應(yīng)請(qǐng)求:
· 子站地址:1個(gè)字節(jié);
· 功能碼:1個(gè)字節(jié);
· 數(shù)據(jù)長(zhǎng)度:不同的功能碼數(shù)據(jù)長(zhǎng)度不同;
· CRC:2個(gè)字節(jié);
· 功能碼:1個(gè)字節(jié);
· 數(shù)據(jù)長(zhǎng)度:不同的功能碼數(shù)據(jù)長(zhǎng)度不同;
· CRC冗余校驗(yàn):2個(gè)字節(jié)。
子站地址:每幀數(shù)據(jù)的第一個(gè)字節(jié)代表子站地址。
主站通過將要通信的地址來(lái)選通子站設(shè)備。每個(gè)子站設(shè)備必須而且只有唯一的地址,當(dāng)子站響應(yīng)主站請(qǐng)求時(shí),它把自己的地址放入響應(yīng)的地址域中,以便主站知道是哪一個(gè)設(shè)備作出的響應(yīng)。
在主站請(qǐng)求發(fā)送中,子站地址表示主站需要響應(yīng)的子站設(shè)備的地址。在子站響應(yīng)請(qǐng)求中,子站地址表示哪一個(gè)子站設(shè)備作出響應(yīng)。
功能碼域:每幀數(shù)據(jù)的第二個(gè)字節(jié)代表功能碼。
M10x-M支持7種功能碼:02(讀參數(shù)和測(cè)量值),03(讀參數(shù)和測(cè)量值),04(讀參數(shù)和測(cè)量值),05(執(zhí)行操作),06(寫單個(gè)參數(shù)),08(回送返校)以及10(寫多個(gè)參數(shù))。當(dāng)消息幀從主站設(shè)備發(fā)往子站設(shè)備時(shí),功能碼將告之子站設(shè)備需要執(zhí)行哪些行為。當(dāng)從設(shè)備響應(yīng)時(shí),它使用功能代碼域來(lái)指示是正常響應(yīng)(無(wú)誤)還是有某種錯(cuò)誤發(fā)生(稱作異議響應(yīng))。對(duì)正常響應(yīng),從設(shè)備僅響應(yīng)相應(yīng)的功能代碼。對(duì)異議響應(yīng),從設(shè)備返回一等同于正常代碼的代碼,但功能碼域高比特位置為1。如果子站響應(yīng)的功能碼最高位為1(例如:主站請(qǐng)求的功能碼>127),M10x-M將不執(zhí)行主站請(qǐng)求同時(shí)響應(yīng)一個(gè)異常代碼。
數(shù)據(jù)域:不同的功能碼數(shù)據(jù)包含字節(jié)數(shù)不同。數(shù)據(jù)可能是測(cè)量值,設(shè)定值或地址,可能是主站發(fā)出請(qǐng)求或子站響應(yīng)請(qǐng)求。
CRC校驗(yàn):用2個(gè)字節(jié)表示CRC校驗(yàn)域。使用RTU模式時(shí),消息幀包含了2個(gè)字節(jié)的CRC-16(16位循環(huán)檢測(cè))錯(cuò)誤檢測(cè)域。
例1:主站請(qǐng)求子站地址1的寄存器0x1021的值。在這個(gè)例子中寄存器(0x1021)的值是0x0023。數(shù)據(jù)傳輸指令如表2所示。
表2 數(shù)據(jù)傳輸指令
2.3 傳輸速率
M10x-M支持1200bps、2400bps、4800bps、9600bps、19200 bps、38400bps和57600bps七種波特率。
很多用戶一直擔(dān)心MODBUS的傳輸速率太低,導(dǎo)致響應(yīng)時(shí)間太慢。實(shí)際上,以例1的數(shù)據(jù)傳輸指令為例,通信速率假設(shè)為19200bps,1個(gè)字節(jié)有11位,主站下發(fā)一個(gè)指令有8個(gè)字節(jié),需求時(shí)間為:
T1= 1/19200×8×11×1000=4.58ms
子站響應(yīng)7個(gè)字節(jié),需求時(shí)間:
T2= 1/19200×7×11×1000=4.01ms
如果速率為57600bps,則響應(yīng)時(shí)間T1、T2將分別減少為1.53ms和1.34ms。
M10x-M最多支持125個(gè)寄存器的同時(shí)讀取,那么在通信速率57600bps下,子站響應(yīng)時(shí)間僅僅為:
T2=1/57600×125×11×1000=24ms
此外,在RTU模式下面,因?yàn)镽TU模式?jīng)]有開始符和結(jié)束符,兩個(gè)數(shù)據(jù)包之間只能靠時(shí)間間隔來(lái)區(qū)分,MODBUS定義在不同的波特率下,間隔時(shí)間是不一樣的,波特率高,時(shí)間間隔就小,波特率低,時(shí)間間隔就大。一般來(lái)說(shuō),在使用RTU模式時(shí),需要有一個(gè)定時(shí)器來(lái)計(jì)時(shí),計(jì)時(shí)時(shí)間為3.5個(gè)字符的時(shí)間,如果正在接受的過程中,發(fā)現(xiàn)定時(shí)器超時(shí),子站則認(rèn)為數(shù)據(jù)傳送失敗并重新等待再一次發(fā)送,即所有子站將再一次等待主站的新一輪數(shù)據(jù)發(fā)送。例如:當(dāng)數(shù)據(jù)以57600波特率傳輸時(shí),網(wǎng)絡(luò)超時(shí)時(shí)間間隔為0.67毫秒(3.5×1/57600×11×1000),如果等待時(shí)間超過了這個(gè)時(shí)間間隔,數(shù)據(jù)包將重新發(fā)送。
可見,在實(shí)際項(xiàng)目中,每個(gè)設(shè)備需要的通信時(shí)間很短,反而因?yàn)橥ㄐ趴诘奈锢碓颍枰ㄙM(fèi)一定的時(shí)間處理數(shù)據(jù)。在實(shí)際項(xiàng)目中,由于客戶需要讀取一定的電參量,如三相電流、電壓、功率、電機(jī)狀態(tài)、故障信號(hào)和故障信息等,很多電動(dòng)機(jī)保護(hù)設(shè)備在這些數(shù)據(jù)存儲(chǔ)在不連續(xù)的寄存器地址,導(dǎo)致主站無(wú)法一次性全部讀取,需要花費(fèi)2次、3次,甚至更多次才能讀完所有的數(shù)據(jù)。而子站每次響應(yīng)都要花費(fèi)一定的處理時(shí)間,導(dǎo)致系統(tǒng)通信效率較低。
M10x-M提供80個(gè)寄存器的用戶自定義區(qū),用戶有權(quán)限完全根據(jù)自己的實(shí)際情況,將所需要的數(shù)據(jù)映射入用戶自定義存儲(chǔ)區(qū)。這樣,主站只需要每個(gè)設(shè)備讀取1次,就能獲得所需的數(shù)據(jù),大大減少了多次讀取浪費(fèi)的時(shí)間。
2.4 傳輸內(nèi)容
M10x-M能夠?qū)⒈O(jiān)控?cái)?shù)據(jù)和設(shè)置參數(shù)通過MODBUS RTU上傳至后臺(tái)系統(tǒng),也能夠通過總線接受后臺(tái)系統(tǒng)下發(fā)的控制指令和調(diào)整參數(shù):
(1)電氣信息:三相電流,三相百分比電流,電流不平衡度,熱容值,功率因素,三相線電壓,頻率,接地故障電流,有功功率,視在功率,電度,熱敏電阻阻值,脫扣/復(fù)位時(shí)間,實(shí)際起動(dòng)時(shí)間等;
(2)電機(jī)狀態(tài):電機(jī)狀態(tài),數(shù)字量輸入口狀態(tài)等;
(3)診斷信息:各功能的告警信息,脫扣信息等;
(4)維護(hù)信息:運(yùn)行時(shí)間,停止時(shí)間,起動(dòng)次數(shù),脫扣次數(shù),事件記錄等;
(5)控制參數(shù):起動(dòng)類型,起動(dòng)時(shí)間,起動(dòng)命令,停機(jī)命令,數(shù)字量輸入口功能,數(shù)字量輸出口功能等;
(6)保護(hù)參數(shù):熱過載保護(hù)參數(shù),堵轉(zhuǎn)保護(hù)參數(shù),斷相保護(hù)參數(shù)等。
3.1 電機(jī)控制
M10x-M可以接受后臺(tái)系統(tǒng)通過MODBUS RTU現(xiàn)場(chǎng)總線下發(fā)的起停指令對(duì)控制繼電器CCA、CCB、CCC的控制,可以支持多種起動(dòng)控制方式,并通過接觸器輔助觸點(diǎn)的狀態(tài)反饋,反饋設(shè)定超時(shí)和電流,實(shí)時(shí)監(jiān)測(cè)電動(dòng)機(jī)運(yùn)行狀態(tài)。
例如,星三角起動(dòng)電機(jī),電動(dòng)機(jī)以星型降壓起動(dòng),在切換時(shí)間到達(dá)后,進(jìn)行Y-Δ切換,電動(dòng)機(jī)以三角形方式運(yùn)行,以減少起動(dòng)電流。使用M10x-M控制電動(dòng)機(jī)進(jìn)行星三角起動(dòng)時(shí),不需要增加多余的中間繼電器和時(shí)間繼電器,所有的控制邏輯都由M10x-M內(nèi)部集成,詳細(xì)的接線圖,如圖2所示。當(dāng)接受到起動(dòng)命令時(shí),控制接觸器CCB和CCC閉合,電機(jī)星型運(yùn)行,但經(jīng)過設(shè)置的切換時(shí)間后,CCA和CCC閉合,CCB打開,電機(jī)三角運(yùn)行。
圖2 星三角起動(dòng)控制原理圖
除了星三角起動(dòng)外,M10x-M還支持以下起動(dòng)控制方式:直接起動(dòng)、直接起動(dòng)(帶控制按鈕盒)、正反轉(zhuǎn)-直接起動(dòng)、正反轉(zhuǎn)-直接起動(dòng)(帶控制按鈕盒)、正反轉(zhuǎn)-直接起動(dòng)(帶限位開關(guān))、雙速控制(單繞組)、雙速控制(雙繞組)、自耦變壓器降壓起動(dòng)、軟起動(dòng)器控制、正反轉(zhuǎn)-軟起動(dòng)器控制、帶接觸器的饋電回路、帶接觸器的饋電回路(帶控制按鈕盒)和饋電單元的控制。
3.2 電機(jī)保護(hù)
M10x-M對(duì)電動(dòng)機(jī)運(yùn)行過程中的各種運(yùn)行狀況的詳細(xì)信息進(jìn)行采集跟蹤,通過對(duì)故障報(bào)警、保護(hù)動(dòng)作(保護(hù)脫扣)以及動(dòng)作延時(shí)時(shí)間的設(shè)定來(lái)實(shí)現(xiàn)及時(shí)準(zhǔn)確的保護(hù),保證生產(chǎn)的安全。同時(shí)通過總線通信可以將電動(dòng)機(jī)運(yùn)行狀況在后臺(tái)系統(tǒng)進(jìn)行實(shí)時(shí)顯示,為過程分析和管理優(yōu)化提供基礎(chǔ)。在設(shè)備可能產(chǎn)生重大故障前,越限報(bào)警可及時(shí)提醒管理人員進(jìn)行處理,避免不必要的停機(jī)對(duì)正常生產(chǎn)造成影響,最大限度地保證設(shè)備運(yùn)行的有效性。
當(dāng)電動(dòng)機(jī)運(yùn)行參數(shù)達(dá)到預(yù)置的報(bào)警值時(shí),保護(hù)裝置會(huì)進(jìn)行報(bào)警。超過預(yù)置的脫扣值時(shí),定時(shí)器將被激活,電機(jī)將進(jìn)入脫扣倒計(jì)時(shí)狀態(tài)。倒計(jì)時(shí)的時(shí)間段是根據(jù)設(shè)置的脫扣延遲參數(shù),只要故障存在,M10x-M將一直倒計(jì)時(shí)。超過整定延時(shí)時(shí)間后,電機(jī)最終將脫扣。如果在倒計(jì)時(shí)結(jié)束前排除故障,定時(shí)器將復(fù)位并關(guān)閉,電機(jī)不會(huì)脫扣,仍然保持運(yùn)行狀態(tài),但M10x-M仍會(huì)產(chǎn)生告警事件記錄信息。此外,脫扣時(shí)間和復(fù)位時(shí)間等操作數(shù)據(jù)可通過現(xiàn)場(chǎng)總線或操作面板進(jìn)行修改。
M10x-M提供下列保護(hù):熱過載保護(hù)、堵轉(zhuǎn)保護(hù)、起動(dòng)時(shí)間過長(zhǎng)保護(hù)、斷相保護(hù)、三相不平衡保護(hù)、低載保護(hù)、空載保護(hù)、接地故障保護(hù)、電機(jī)熱保護(hù)、起動(dòng)限制保護(hù)、低電壓保護(hù)和自動(dòng)重起動(dòng)功能。
與傳統(tǒng)的控制系統(tǒng)相比,M10x-M基于MODBUS總線規(guī)約的控制系統(tǒng)從設(shè)計(jì)、安裝、投運(yùn)到正常生產(chǎn)運(yùn)行及檢修維護(hù),都體現(xiàn)出相當(dāng)?shù)膬?yōu)越性。
(1)減少硬件數(shù)量和投資:分散在現(xiàn)場(chǎng)的M10x-M能直接執(zhí)行多種測(cè)量、控制、報(bào)警和計(jì)算功能,因而可減少變送器的數(shù)量,不再需要單獨(dú)的調(diào)節(jié)器,計(jì)算單元等,也不再需要一些信號(hào)調(diào)節(jié)、轉(zhuǎn)換等功能單元。
(2)節(jié)省安裝費(fèi)用:一對(duì)雙絞線或一條電纜上通常可掛接多個(gè)設(shè)備,因而電纜、端子、槽盒、橋架的用量大大減少,連線設(shè)計(jì)與接頭校對(duì)的工作量也大大減少。
(3)節(jié)省維護(hù)開銷:M10x-M具有自診斷與簡(jiǎn)單故障處理的能力;通過MODBUS RTU通信將相關(guān)的診斷維護(hù)信息送往控制室,用戶可以查詢所有設(shè)備的運(yùn)行、診斷維護(hù)信息,以便早期分析故障原因并快速排除。
(4)提高了系統(tǒng)的準(zhǔn)確性與可靠性:與模擬信號(hào)相比,它從根本上提高了測(cè)量與控制的精確度,減少了傳送誤差,提高了系統(tǒng)的工作可靠性。
(5)M10x-M提供兩個(gè)冗余的通信口,兩個(gè)通信口是相對(duì)獨(dú)立,可以單獨(dú)工作。當(dāng)其中一個(gè)口的通信發(fā)生故障時(shí),控制系統(tǒng)仍然能夠通過預(yù)接的冗余的通信口進(jìn)行通信,從而保證通信系統(tǒng)的可靠性。
安裝調(diào)試M10x-M的電機(jī)控制系統(tǒng)時(shí)需注意以下幾點(diǎn):
(1)主從站在通信之前,要確認(rèn)MODBUS總線電纜連接可靠并正確相連,子站地址和通信參數(shù)設(shè)置正確。
(2)M10x-M控制面板上的“就緒”綠燈閃爍或不亮,說(shuō)明硬件存在故障。
(3)電機(jī)主回路接觸器的線圈建議并聯(lián)阻容吸收元件。
(4)在每個(gè)網(wǎng)段末端處最好選配120歐姆的終端電阻。
基于MODBUS總線的智能型電機(jī)控制系統(tǒng)取消了傳統(tǒng)方式中控制柜的保護(hù)、控制、測(cè)量、信號(hào)等電纜,不僅節(jié)省了投資而且大大提高了系統(tǒng)的可靠性。該系統(tǒng)能夠提供詳盡的保護(hù),支持多類的控制方式,并能夠通過總線讀取項(xiàng)目實(shí)際需求的所有電氣信息和維護(hù)信息,是企業(yè)生產(chǎn)自動(dòng)化的趨勢(shì),必將逐步替代傳統(tǒng)的控制系統(tǒng)。
[1] 任洪波, 周偉國(guó), 張琳. 現(xiàn)場(chǎng)總線技術(shù)在熱工控制系統(tǒng)中的應(yīng)用[J]. 儀表技術(shù), 2005, 2.
[2] 溫克強(qiáng). Modbus通訊協(xié)議在DCS與PLC通訊中的應(yīng)用[J]. 石油化工自動(dòng)化, 2005(6).
[3] 高峰. 基于Profibus-DP總線的智能型電機(jī)控制系統(tǒng)的應(yīng)用[J]. 電工技術(shù)2011(8).
Automation Control of Intelligent Motor based on MODBUS Fieldbus Technology
By introducing the MODBUS communication protocol this paper gives the ABB's solution of intelligent motor control which is based on MODBUS technology. The article also gives an optimistic prospect of automation control system.
MODBUS RTU; Fieldbus; Automation Control
李龍達(dá)(1982-),男,福建福州人,中級(jí)工程師,本科,現(xiàn)就職于廈門ABB低壓電器設(shè)備有限公司,主要研究方向?yàn)榈蛪洪_關(guān)柜智能化方案。