王楠楠,劉春英
(河北工程大學 信息與電氣工程學院,邯鄲 056038)
“晃電”是指電網因雷擊、短路、發電廠故障及其他外部、內部原因造成電網短時間電壓大幅度波動、甚至短時斷電數秒的現象;“晃電”會使系統電壓瞬間降低,導致接觸器、變頻器及斷路器等控制設備脫扣,造成能源供應中止或生產線停產[1]。企業中,大量低壓電動機由接觸器來控制,供電系統短暫失壓將會使接觸器因失電脫扣,導致電機停機。晃電結束后,電網電壓恢復,電機需人工啟動,大量時間被延誤。給企業造成了相當大的直接、間接的經濟損失。
本文針對交流接觸器控制的電動機,設計了一種基于STM32微控制器和MODBUS協議的低壓電機再啟動控制器。根據用戶現場回路采用不同的接線方式,實現相應的再起動控制,有效避免了晃電對企業連續生產的影響。
控制器充分利用STM32微處理器豐富的片上資源和強大的處理功能,實現電機精確、安全再啟動,并實時顯示電機運行狀態以及當前電壓值;以RS485為物理層,通過MODBUS協議,實現上位機對現場設備的智能化控制以及網絡化管理。
低壓電機再啟動控制器供電電路引自交流接觸器控制電路L、N端,并通過控制器的輸出控制端檢測接觸器KM常開輔助觸點狀態,從而判斷晃電發生情況。
現場電路供電正常時,控制器電源電路中設計法拉電容作為儲能元件,發生晃電時,電容放電供控制器工作,可維持工作時間300 s。
當現場發生晃電時,交流接觸器KM的線圈失電,接觸器KM主觸點斷開,正在運行的電機停機。同時接觸器KM常開輔助觸點斷開,控制器啟動計時。控制器實時監測電網電壓,根據電壓恢復情況控制電機:如果電網電壓在設定時間內的某一時刻開始恢復正常,此時開始,根據工藝流程要求,控制器延時控制相應繼電器閉合,接觸器KM線圈得電,KM主觸頭閉合,因電網晃電造成停機的電機再啟動;如果在允許時間內電網電壓沒有恢復正常,則控制器相應繼電器不動作,線路保持斷開,電機由其它方式再啟動。
控制器設計了兩路繼電器控制,根據現場對電機再啟動方式要求,來控制繼電器J1和繼電器J2狀態,實現不同方式的電機再啟動,如星三角啟動回路或降壓啟動回路的電機再起動。
控制器通過RS485總線可以和上位機進行雙向通信。上位機可以對接觸器狀態及抗晃電時間等進行遙控和查詢;上位機有要求時,控制器可以將接觸器當前狀態、晃電時間、有無晃電現象等信息上傳至上位機。
控制器由電源電路、STM32微處理器、電壓監測、繼電器、按鍵輸入、顯示、485通信模塊組成。控制器硬件框圖如圖1所示。

圖1 硬件框圖Fig.1 Block diagram of hardware devices
控制器4個輸入按鍵包括復位鍵、功能選擇鍵、位選擇鍵、加1/確認功能鍵;數碼管顯示晃電時間、電網電壓等。通信模塊實現控制器與上位機通信。
STM32系列32位閃存微控制器使用來自ARM公司具有突破性的Cortex-M3內核,該內核是專門設計于滿足集高性能、低功耗、實時應用、具有競爭性價格于一體的嵌入式領域的要求[2]。
控制器以32位STM32F103RBT6為核心處理器,性能高、功耗低。片上集成128 K字節的Flash存儲器,2個12位μs級A/D轉換器,3個 USART接口。微處理器基于Cortex-M3 CPU,最高工作頻率可達72 MHz,單周期32位乘法和硬件除法器,大幅提高Cortex-M3運算能力。
編程時,應用STM32固件函數庫,可以大大降低編寫程序的時間,降低成本。
控制器由電網交流低壓經過開關電源變換輸出電壓供電。“晃電”再啟動控制器必須能夠在系統供電出現低電壓或者供電中斷時維持正常連續工作,才能夠在電壓恢復后按設定的參數精確再啟動[3]。電壓電路原理圖如圖2所示,圖中法拉電容C2、C4的作用為晃電時,作為維持控制器工作的電源;D2、D3、D4功能為防止法拉電容向開關電源供電,損壞開關電源;R1用來限制法拉電容的充電電流。

圖2 電源電路Fig.2 Power circuit
控制器通過監測接觸器常開輔助觸點判斷電機運行狀態,通過L、N兩端電壓監測電網電壓恢復情況,控制電機再啟動。電壓監測電路如圖3所示,電壓互感器T1輸出電流,經R2輸出電壓,D7、D8兩個保護二極管與1.5 V基準電壓,保證電壓互感器輸出電壓UA在0.8~2.2 V,在處理器A/D的線性工作范圍內;R10、C52低通濾波,R9吸收特高頻信號,便于諧波分析;D5、D6組成鉗位電路,防止A/D輸入信號過小或過大燒壞芯片。

圖3 電壓監測電路Fig.3 Voltage monitoring circuit
繼電器控制電路中采用光耦合器實現控制電路與現場電路電氣隔離,同時保持信號聯系。如果電網電壓在規定時間內恢復正常,STM32控制對應輸出端口,光耦合器3腳輸出高電平,R8防止光耦合器截止時,三極管基極下拉至地,保證三極管截止,通過限流電阻R6給三極管發射結提供靜態偏置,三極管處于飽和狀態,控制繼電器閉合,線路閉合,實現電機再啟動;如果電網電壓沒有恢復正常,則繼電器保持斷開,電機由其它方式再啟動。D10為續流二極管,C5為濾波電容。繼電器控制電路設計如圖4所示。

圖4 繼電器控制電路Fig.4 Relay controlling circuit
控制器軟件設計決定電機能否實現精確、安全的再啟動。通信協議選擇決定上位機對現場設備監控的準確性和實時性。控制器軟件設計包括MODBUS協議選擇、通信命令格式、電機再啟動控制程序。
MODBUS協議是應用在工業控制領域中的一種標準通信協議,通過該協議,不同廠商生產的設備可以連接成工業網絡,實現集散控制。RS485總線通信方式具有結構簡單、價格低廉、通信距離較遠和數據傳輸速率適當等優點[4]。
標準MODBUS協議有2種工作模式:ASCII模式和RTU模式。由于在同樣的波特率下,RTU模式比ASCII模式能夠傳送更多的數據[5],因此控制器采用RTU模式來實現MODBUS通信協議。
RTU消息幀典型格式如表1所示。采用RTU模式通信時,消息發送至少要以3.5個字符時間的停頓間隔開始。在最后一個傳輸字符之后,一個至少3.5個字符時間的停頓標定消息的結束。

表1 RTU消息幀Tab.1 RTU message frame
MODBUS通信采用主從方式,在同一網絡中,主機和從機必須都采用統一通信模式和同一傳輸速率。
控制器與上位機通信包括最近一次晃電開始時間、晃電結束時間,因晃電停機電機是否由控制器重啟,控制器參數設置,系統供電時重啟電機及對時等信息。
如1號控制器記錄最近一次晃電發生時間為2014年2月12日6時25分37.55秒,結束時間為2014年2月12日6時25分37.98秒。時間在4個寄存器中,用毫秒方式表示,轉換成16進制,則上述發生時間存儲為:07de 020c 0619 92ae。寄存器首地址為01H,上位機讀寄存器功能碼為03H,控制器1返回晃電發生和結束時間,則命令格式為
上位機發送: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
上位機對時命令,保證現場組網設備時鐘一致。對時命令以廣播方式發送,功能碼為10H,寄存器首地址為40H。如果統一對時時間為2014年2月13日8時10分20.20秒,則命令格式為
上位機發送:0x00 0x10 0x00 0x40 0x00 0x04 0x08 0x07 0xde 0x02 0x0d 0x08 0x0a 0x4e 0xe8 0x10 0x23
上位機發送對時命令后,現場組網中所有從機設備如控制器1按命令設置控制器時間。
1號控制器重啟晃電后停機的電機,則首地址00H寄存器值為01,否則為00,則當重啟后上位機查詢時,命令格式為
上位機發送:0x01 0x03 0x00 0x00 0x00 0x01 0x0a 0x84
控制器 1返回:0x01 0x03 0x02 0x00 0x01 0x84 0x79
再啟動控制包括3個模塊:電機掉電判斷及再啟動;實時監測電網電壓,微處理器采樣中斷功能可保證實時性;人機交互模塊。電機再啟動控制部分流程如圖5所示。控制器主要根據接觸器輔助觸點判斷電機運行狀態變化,根據掉電后電網電壓恢復情況和現場線路設計,控制繼電器動作。

圖5 再啟動控制流程圖Fig.5 Flow chart of restarting controlling
控制器可以實現不同接線方式電機再啟動,以星-三角接線再啟動為例,介紹控制器控制接線應用,接線圖如圖6所示。

圖6 再啟動控制接線圖Fig.6 Wiring chart of restarting controlling
控制器通過監測接觸器KM3輔助觸點狀態判斷是否有晃電現象發生。再啟動控制過程為:如果ZJ釋放,控制器輸出再啟動信號,繼電器J1線圈得電,KM3線圈得電主觸頭閉合,同時時間繼電器SJ得電延時,KM1線圈得電主觸頭閉合,電機以星形接線啟動;SJ延時到,SJ常開觸點閉合,繼電器ZJ線圈得電,KM3線圈失電,KM2線圈得電主觸頭閉合同時SJ線圈失電,KM1線圈不斷電,電機以三角形接線運行。
控制器采用STM32作為核心處理器,充分利用其豐富的片上資源和高速處理能力,準確測量電網電壓,精確定時再啟動因晃電停機的電機。通過RS485總線與上位機通信,采用標準的MODBUS協議,實現低壓電網的智能化控制。控制器完成后,已成功應用于某些連續生產的煤化工企業中,有效防止因電網晃電而造成的電機停機事故。
[1] 陳建厚.企業“晃電”治理的方法[J].電氣應用,2011,30(6):21-24.
[2] 季力.基于STM32芯片的電參數測量與數據傳輸[J].自動化與儀器儀表,2010(3):137-139.
[3] 高仁璟,崔建軍,郝剛.“晃電”檢測與再啟動控制器設計[J].儀器儀表學報,2008,29(4):822-824.
[4] 汪義旺,崔鳴,祁春清.RS-485/Modbus在FFU控制系統中的應用[J].自動化儀表,2010,31(6):39-44.
[5] 鄭鴻彥,苗世洪,張軍民.基于ARM9微處理器的MODBUS通信協議的實現[J].電氣應用,2007,26(5):45-79. ■