王楠楠,劉春英
(河北工程大學(xué) 信息與電氣工程學(xué)院,邯鄲 056038)
“晃電”是指電網(wǎng)因雷擊、短路、發(fā)電廠故障及其他外部、內(nèi)部原因造成電網(wǎng)短時間電壓大幅度波動、甚至短時斷電數(shù)秒的現(xiàn)象;“晃電”會使系統(tǒng)電壓瞬間降低,導(dǎo)致接觸器、變頻器及斷路器等控制設(shè)備脫扣,造成能源供應(yīng)中止或生產(chǎn)線停產(chǎn)[1]。企業(yè)中,大量低壓電動機由接觸器來控制,供電系統(tǒng)短暫失壓將會使接觸器因失電脫扣,導(dǎo)致電機停機?;坞娊Y(jié)束后,電網(wǎng)電壓恢復(fù),電機需人工啟動,大量時間被延誤。給企業(yè)造成了相當(dāng)大的直接、間接的經(jīng)濟損失。
本文針對交流接觸器控制的電動機,設(shè)計了一種基于STM32微控制器和MODBUS協(xié)議的低壓電機再啟動控制器。根據(jù)用戶現(xiàn)場回路采用不同的接線方式,實現(xiàn)相應(yīng)的再起動控制,有效避免了晃電對企業(yè)連續(xù)生產(chǎn)的影響。
控制器充分利用STM32微處理器豐富的片上資源和強大的處理功能,實現(xiàn)電機精確、安全再啟動,并實時顯示電機運行狀態(tài)以及當(dāng)前電壓值;以RS485為物理層,通過MODBUS協(xié)議,實現(xiàn)上位機對現(xiàn)場設(shè)備的智能化控制以及網(wǎng)絡(luò)化管理。
低壓電機再啟動控制器供電電路引自交流接觸器控制電路L、N端,并通過控制器的輸出控制端檢測接觸器KM常開輔助觸點狀態(tài),從而判斷晃電發(fā)生情況。
現(xiàn)場電路供電正常時,控制器電源電路中設(shè)計法拉電容作為儲能元件,發(fā)生晃電時,電容放電供控制器工作,可維持工作時間300 s。
當(dāng)現(xiàn)場發(fā)生晃電時,交流接觸器KM的線圈失電,接觸器KM主觸點斷開,正在運行的電機停機。同時接觸器KM常開輔助觸點斷開,控制器啟動計時。控制器實時監(jiān)測電網(wǎng)電壓,根據(jù)電壓恢復(fù)情況控制電機:如果電網(wǎng)電壓在設(shè)定時間內(nèi)的某一時刻開始恢復(fù)正常,此時開始,根據(jù)工藝流程要求,控制器延時控制相應(yīng)繼電器閉合,接觸器KM線圈得電,KM主觸頭閉合,因電網(wǎng)晃電造成停機的電機再啟動;如果在允許時間內(nèi)電網(wǎng)電壓沒有恢復(fù)正常,則控制器相應(yīng)繼電器不動作,線路保持?jǐn)嚅_,電機由其它方式再啟動。
控制器設(shè)計了兩路繼電器控制,根據(jù)現(xiàn)場對電機再啟動方式要求,來控制繼電器J1和繼電器J2狀態(tài),實現(xiàn)不同方式的電機再啟動,如星三角啟動回路或降壓啟動回路的電機再起動。
控制器通過RS485總線可以和上位機進行雙向通信。上位機可以對接觸器狀態(tài)及抗晃電時間等進行遙控和查詢;上位機有要求時,控制器可以將接觸器當(dāng)前狀態(tài)、晃電時間、有無晃電現(xiàn)象等信息上傳至上位機。
控制器由電源電路、STM32微處理器、電壓監(jiān)測、繼電器、按鍵輸入、顯示、485通信模塊組成??刂破饔布驁D如圖1所示。
圖1 硬件框圖Fig.1 Block diagram of hardware devices
控制器4個輸入按鍵包括復(fù)位鍵、功能選擇鍵、位選擇鍵、加1/確認(rèn)功能鍵;數(shù)碼管顯示晃電時間、電網(wǎng)電壓等。通信模塊實現(xiàn)控制器與上位機通信。
STM32系列32位閃存微控制器使用來自ARM公司具有突破性的Cortex-M3內(nèi)核,該內(nèi)核是專門設(shè)計于滿足集高性能、低功耗、實時應(yīng)用、具有競爭性價格于一體的嵌入式領(lǐng)域的要求[2]。
控制器以32位STM32F103RBT6為核心處理器,性能高、功耗低。片上集成128 K字節(jié)的Flash存儲器,2個12位μs級A/D轉(zhuǎn)換器,3個 USART接口。微處理器基于Cortex-M3 CPU,最高工作頻率可達72 MHz,單周期32位乘法和硬件除法器,大幅提高Cortex-M3運算能力。
編程時,應(yīng)用STM32固件函數(shù)庫,可以大大降低編寫程序的時間,降低成本。
控制器由電網(wǎng)交流低壓經(jīng)過開關(guān)電源變換輸出電壓供電。“晃電”再啟動控制器必須能夠在系統(tǒng)供電出現(xiàn)低電壓或者供電中斷時維持正常連續(xù)工作,才能夠在電壓恢復(fù)后按設(shè)定的參數(shù)精確再啟動[3]。電壓電路原理圖如圖2所示,圖中法拉電容C2、C4的作用為晃電時,作為維持控制器工作的電源;D2、D3、D4功能為防止法拉電容向開關(guān)電源供電,損壞開關(guān)電源;R1用來限制法拉電容的充電電流。
圖2 電源電路Fig.2 Power circuit
控制器通過監(jiān)測接觸器常開輔助觸點判斷電機運行狀態(tài),通過L、N兩端電壓監(jiān)測電網(wǎng)電壓恢復(fù)情況,控制電機再啟動。電壓監(jiān)測電路如圖3所示,電壓互感器T1輸出電流,經(jīng)R2輸出電壓,D7、D8兩個保護二極管與1.5 V基準(zhǔn)電壓,保證電壓互感器輸出電壓UA在0.8~2.2 V,在處理器A/D的線性工作范圍內(nèi);R10、C52低通濾波,R9吸收特高頻信號,便于諧波分析;D5、D6組成鉗位電路,防止A/D輸入信號過小或過大燒壞芯片。
圖3 電壓監(jiān)測電路Fig.3 Voltage monitoring circuit
繼電器控制電路中采用光耦合器實現(xiàn)控制電路與現(xiàn)場電路電氣隔離,同時保持信號聯(lián)系。如果電網(wǎng)電壓在規(guī)定時間內(nèi)恢復(fù)正常,STM32控制對應(yīng)輸出端口,光耦合器3腳輸出高電平,R8防止光耦合器截止時,三極管基極下拉至地,保證三極管截止,通過限流電阻R6給三極管發(fā)射結(jié)提供靜態(tài)偏置,三極管處于飽和狀態(tài),控制繼電器閉合,線路閉合,實現(xiàn)電機再啟動;如果電網(wǎng)電壓沒有恢復(fù)正常,則繼電器保持?jǐn)嚅_,電機由其它方式再啟動。D10為續(xù)流二極管,C5為濾波電容。繼電器控制電路設(shè)計如圖4所示。
圖4 繼電器控制電路Fig.4 Relay controlling circuit
控制器軟件設(shè)計決定電機能否實現(xiàn)精確、安全的再啟動。通信協(xié)議選擇決定上位機對現(xiàn)場設(shè)備監(jiān)控的準(zhǔn)確性和實時性。控制器軟件設(shè)計包括MODBUS協(xié)議選擇、通信命令格式、電機再啟動控制程序。
MODBUS協(xié)議是應(yīng)用在工業(yè)控制領(lǐng)域中的一種標(biāo)準(zhǔn)通信協(xié)議,通過該協(xié)議,不同廠商生產(chǎn)的設(shè)備可以連接成工業(yè)網(wǎng)絡(luò),實現(xiàn)集散控制。RS485總線通信方式具有結(jié)構(gòu)簡單、價格低廉、通信距離較遠(yuǎn)和數(shù)據(jù)傳輸速率適當(dāng)?shù)葍?yōu)點[4]。
標(biāo)準(zhǔn)MODBUS協(xié)議有2種工作模式:ASCII模式和RTU模式。由于在同樣的波特率下,RTU模式比ASCII模式能夠傳送更多的數(shù)據(jù)[5],因此控制器采用RTU模式來實現(xiàn)MODBUS通信協(xié)議。
RTU消息幀典型格式如表1所示。采用RTU模式通信時,消息發(fā)送至少要以3.5個字符時間的停頓間隔開始。在最后一個傳輸字符之后,一個至少3.5個字符時間的停頓標(biāo)定消息的結(jié)束。
表1 RTU消息幀Tab.1 RTU message frame
MODBUS通信采用主從方式,在同一網(wǎng)絡(luò)中,主機和從機必須都采用統(tǒng)一通信模式和同一傳輸速率。
控制器與上位機通信包括最近一次晃電開始時間、晃電結(jié)束時間,因晃電停機電機是否由控制器重啟,控制器參數(shù)設(shè)置,系統(tǒng)供電時重啟電機及對時等信息。
如1號控制器記錄最近一次晃電發(fā)生時間為2014年2月12日6時25分37.55秒,結(jié)束時間為2014年2月12日6時25分37.98秒。時間在4個寄存器中,用毫秒方式表示,轉(zhuǎn)換成16進制,則上述發(fā)生時間存儲為:07de 020c 0619 92ae。寄存器首地址為01H,上位機讀寄存器功能碼為03H,控制器1返回晃電發(fā)生和結(jié)束時間,則命令格式為
上位機發(fā)送:0x01 0x03 0x00 0x01 0x00 0x08 0x1d 0x14
控制器 1返回:0x01 0x03 0x10 0x07 0xde 0x02 0x0c 0x06 0x19 0x92 0xae 0x07 0xde 0x02 0x0c 0x06 0x19 0x94 0x5c 0x07 0x5a
上位機對時命令,保證現(xiàn)場組網(wǎng)設(shè)備時鐘一致。對時命令以廣播方式發(fā)送,功能碼為10H,寄存器首地址為40H。如果統(tǒng)一對時時間為2014年2月13日8時10分20.20秒,則命令格式為
上位機發(fā)送:0x00 0x10 0x00 0x40 0x00 0x04 0x08 0x07 0xde 0x02 0x0d 0x08 0x0a 0x4e 0xe8 0x10 0x23
上位機發(fā)送對時命令后,現(xiàn)場組網(wǎng)中所有從機設(shè)備如控制器1按命令設(shè)置控制器時間。
1號控制器重啟晃電后停機的電機,則首地址00H寄存器值為01,否則為00,則當(dāng)重啟后上位機查詢時,命令格式為
上位機發(fā)送:0x01 0x03 0x00 0x00 0x00 0x01 0x0a 0x84
控制器 1返回:0x01 0x03 0x02 0x00 0x01 0x84 0x79
再啟動控制包括3個模塊:電機掉電判斷及再啟動;實時監(jiān)測電網(wǎng)電壓,微處理器采樣中斷功能可保證實時性;人機交互模塊。電機再啟動控制部分流程如圖5所示。控制器主要根據(jù)接觸器輔助觸點判斷電機運行狀態(tài)變化,根據(jù)掉電后電網(wǎng)電壓恢復(fù)情況和現(xiàn)場線路設(shè)計,控制繼電器動作。
圖5 再啟動控制流程圖Fig.5 Flow chart of restarting controlling
控制器可以實現(xiàn)不同接線方式電機再啟動,以星-三角接線再啟動為例,介紹控制器控制接線應(yīng)用,接線圖如圖6所示。
圖6 再啟動控制接線圖Fig.6 Wiring chart of restarting controlling
控制器通過監(jiān)測接觸器KM3輔助觸點狀態(tài)判斷是否有晃電現(xiàn)象發(fā)生。再啟動控制過程為:如果ZJ釋放,控制器輸出再啟動信號,繼電器J1線圈得電,KM3線圈得電主觸頭閉合,同時時間繼電器SJ得電延時,KM1線圈得電主觸頭閉合,電機以星形接線啟動;SJ延時到,SJ常開觸點閉合,繼電器ZJ線圈得電,KM3線圈失電,KM2線圈得電主觸頭閉合同時SJ線圈失電,KM1線圈不斷電,電機以三角形接線運行。
控制器采用STM32作為核心處理器,充分利用其豐富的片上資源和高速處理能力,準(zhǔn)確測量電網(wǎng)電壓,精確定時再啟動因晃電停機的電機。通過RS485總線與上位機通信,采用標(biāo)準(zhǔn)的MODBUS協(xié)議,實現(xiàn)低壓電網(wǎng)的智能化控制??刂破魍瓿珊?,已成功應(yīng)用于某些連續(xù)生產(chǎn)的煤化工企業(yè)中,有效防止因電網(wǎng)晃電而造成的電機停機事故。
[1] 陳建厚.企業(yè)“晃電”治理的方法[J].電氣應(yīng)用,2011,30(6):21-24.
[2] 季力.基于STM32芯片的電參數(shù)測量與數(shù)據(jù)傳輸[J].自動化與儀器儀表,2010(3):137-139.
[3] 高仁璟,崔建軍,郝剛.“晃電”檢測與再啟動控制器設(shè)計[J].儀器儀表學(xué)報,2008,29(4):822-824.
[4] 汪義旺,崔鳴,祁春清.RS-485/Modbus在FFU控制系統(tǒng)中的應(yīng)用[J].自動化儀表,2010,31(6):39-44.
[5] 鄭鴻彥,苗世洪,張軍民.基于ARM9微處理器的MODBUS通信協(xié)議的實現(xiàn)[J].電氣應(yīng)用,2007,26(5):45-79. ■