李琳 戶永杰
摘 要: 針對高校電子類專業實驗室對電能質量日益增高的要求,提出了基于以ARM Cortex2 M3為內核的STM32F103RBT6控制的數字化、智能化在線式UPS電源,給出了各模塊的硬件設計方案和軟件處理流程。相比較于其他控制方式的UPS,其具備穩定性較高,結構簡單,效率高,保護功能齊全,智能化程度較高等系列優勢。
關鍵字: STM32; UPS; 智能; PWM
中圖分類號: TN710?34 文獻標識碼: A 文章編號: 1004?373X(2014)09?0097?03
0 引 言
目前,國內高等院校電子信息類專業實驗室配備了各種精密的電子設備,這類型的電子設備采用了大量的集成電路,像A/D、CMOS、TTL等。在有諸多優勢的同時也存在耐低壓能力低、抗干擾能力差等弱點。電壓電流的不穩定,或者強電磁場的干擾往往容導致各種故障,給科研和教學造成巨大的損失[1]。采用UPS供電是避免這類損失行之有效的方法。本文提出一種基于STM32F103RBT6在線式UPS系統設計。除能夠正常供電外還實現了監測控制、故障告警、參數自動測試分析等功能,使維護人員更為輕松、安全、高效地通過互聯網進行數據查詢、控制等維護工作。
1 系統的整體設計
本系統設計是以STM32微控制器為主控制器,由電池模塊、整流模塊、變壓器、逆變模塊、電壓檢測模塊、電流檢測模塊、語音報警模塊、SD數據存儲模塊、人機界面模塊等組成。其工作原理如圖1所示,將市電經過系統中整流模塊轉化成直流電源,然后再進過逆變模塊將直流電源轉變成供電質量較高的交流電源。當市電斷電時,快速切換至由蓄電電池向逆變模塊提供直流電源,完后由逆變模塊將直流電源轉變成直流電源使系統能夠正常正常工作[2]。
圖1 結構原理圖
2 硬件設計
2.1 微控制器STM32簡介
控制系統主控芯片采用基于ARM Cortex2 M3內核的STM32[2]系列的32位閃存微控制器,具有內置資源豐富,超低功耗的特點,可以選擇睡眠模式、待機模式,相對于ARM 系列其他芯片,STM32運行速度更快,7個時鐘周期最多可以產生28個精準的信號。同時,其自帶12位A/D和12位D/A,在一定程度上提高設計精度并使外圍電路更為簡潔[3]。
2.2 交流電壓的檢
交流電壓檢測如圖2所示,交流信號經離降壓、整流變成直流信號。將直流信號進行分壓、濾波后,送至由 LM358構成的射級跟隨器,使輸出的電壓電壓值最大不超過3.3 V,至此將采樣得到的值送至STM32內置的AD進行采樣[2]。同時引出一路降壓過后的交流信號經LM193A構成的頻率采樣電路,將輸出信號經光電耦合器PC817b送至STM32捕獲交流信號頻率[4]。
圖2 交流檢測
2.3 直流電壓檢測電路設計
直流電經過限流電阻接到霍爾電壓傳感器輸入端, 經過霍爾傳感器的處理,將輸出結果輸入到STM32[4]。
2.4 PWM驅動電路[5]
STM32F103RBT6輸出的PWM波形幅值只有3.3 V,所以要對單片機輸出的PWM信號進行隔離放大。PWM驅動電路如圖3所示。其中,PWM信號由STM32F103RBT6定時器TIM1輸出的四路PWM波疊加,從PB0輸出PWM信號經過隔離后進入基于集成芯片HCPL3120 的MOSFET 驅動電路。
圖3 PWM驅動原理圖
2.5 人機界面模塊
人機界面部分主要包括LCD顯示、鍵盤、報警和通信接口。本設計中人機界面LCD主要顯示交流電壓、直流電壓和溫度。通過按鍵部分能夠調整溫度和交流電壓的最大值。報警系統指示異常和超限,由一個蜂鳴器和三個紅綠顏色不同的發光二極管實現。通信接口采用RS 232標準接口用于和電腦連接。
2.6 SD存儲模塊[5]
為了能夠將時間信息及溫度、電壓數據進行長時間存儲,系統加入SD卡存儲模塊。可以用于對UPS性能和故障的分析。STM32 芯片自帶有SD卡接口,因此只需將SD 卡座與STM32的SD卡接口直接相連即可實現數據讀寫[5]。
3 軟件設計
3.1 SPWM計算程序[6]
本文是利用STM32內部產生的四路PWM輸出來產生SPWM信號。這種方法可以直接利用軟件編程產生SPWM 。算法可采用較為簡單的規則采樣法。規則采樣法的出發點是設法在三角載波的特定時刻處確定正弦調制波的采樣電壓值,使脈沖的起始和終止時刻對稱,這樣就容易計算出對應于每一個SPWM波的采樣時刻,并且只要載波比足夠大,不同的階梯波都很逼近正弦波,所造成的誤差較小,可以忽略不計[7]。根據上述規則采樣法,本設計采用查表法,利用STM32的高級定時器TIM1產生四通道輸出SPWM信號。計算程序如圖4所示。
圖4 SPWM計算程序
3.2 整體軟件設計思想[7]
系統軟件流程如圖5所示:系統上電后,首先進行初始化,然后把各個標志位和數據清零。清零后檢測故障標志位:過壓標志位(NBOUT_HI);過流標志(OVERLOAD);過溫標志位(OVERTEMP)。如檢測到這些標志位則停止PWM波的輸出,并跳轉到WAIT狀態,等待檢測到故障信號消除,系統重新進行軟啟動。如果沒有檢測到故障標志位,則檢查市電是否掉電,如市電壓正常,則開始進行市電正常逆變工作,并開始進行故障檢測,如果輸出電壓、溫度過高則報警并停止逆變器工作切換至由市電直接供電。如果檢測市電異常,則報警并由蓄電池提供直流電源使系統正常工作。
圖5 整體軟件設計原理
經測試,智能化數字UPS電壓波形如圖6所示。
4 結 論
基于STM32的智能化數字化在線式UPS實現了輸入市電,輸出電壓范圍為200~240 V的50 Hz的正弦波,而且切換時間在5 s以內。基本滿足了實驗室精密儀器用電的要求。文中完整地討論了以STM32單片機為主控芯片的在線式UPS電源的設計,對軟件和硬件設計進行了詳細的介紹。本設計簡化了硬件設計、提高了輸出電壓的穩定性。從而可以向精密儀器供更加穩定、精確、高質量的電壓波形。
圖6 電壓的輸出波形
參考文獻
[1] 劉鳳君.現代逆變技術及應用[M].北京:電子工業出版社,2006.
[2] 童詩白,成華英.模擬電子技術基礎[M].北京:高等教育出版社,2001.
[3] STMicroelectronics. STM32F103x8/B增強型系列中容量產品數據手冊[EB/OL]. [2012?09?01]. http://www. stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.htm.
[4] 王兆安,黃俊.電力電子技術[M].4版.北京:機械工業出版社, 1980.
[5] STMicroelectronics. STM32F10xxx硬件開發使用入門[EB/OL]. [2012?09?01]. http://www. stmicroelectronics.com.cn/stonline/mcu/STM32_AN.
[6] K.N.King. C語言程序設計:現代方法[M].2版.北京:人民郵電出版社,2010.
[7] STMicroelectronics. STM32F10xxx參考手冊[EB/OL]. [2012?09?01].http://www.stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.
圖5 整體軟件設計原理
經測試,智能化數字UPS電壓波形如圖6所示。
4 結 論
基于STM32的智能化數字化在線式UPS實現了輸入市電,輸出電壓范圍為200~240 V的50 Hz的正弦波,而且切換時間在5 s以內。基本滿足了實驗室精密儀器用電的要求。文中完整地討論了以STM32單片機為主控芯片的在線式UPS電源的設計,對軟件和硬件設計進行了詳細的介紹。本設計簡化了硬件設計、提高了輸出電壓的穩定性。從而可以向精密儀器供更加穩定、精確、高質量的電壓波形。
圖6 電壓的輸出波形
參考文獻
[1] 劉鳳君.現代逆變技術及應用[M].北京:電子工業出版社,2006.
[2] 童詩白,成華英.模擬電子技術基礎[M].北京:高等教育出版社,2001.
[3] STMicroelectronics. STM32F103x8/B增強型系列中容量產品數據手冊[EB/OL]. [2012?09?01]. http://www. stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.htm.
[4] 王兆安,黃俊.電力電子技術[M].4版.北京:機械工業出版社, 1980.
[5] STMicroelectronics. STM32F10xxx硬件開發使用入門[EB/OL]. [2012?09?01]. http://www. stmicroelectronics.com.cn/stonline/mcu/STM32_AN.
[6] K.N.King. C語言程序設計:現代方法[M].2版.北京:人民郵電出版社,2010.
[7] STMicroelectronics. STM32F10xxx參考手冊[EB/OL]. [2012?09?01].http://www.stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.
圖5 整體軟件設計原理
經測試,智能化數字UPS電壓波形如圖6所示。
4 結 論
基于STM32的智能化數字化在線式UPS實現了輸入市電,輸出電壓范圍為200~240 V的50 Hz的正弦波,而且切換時間在5 s以內。基本滿足了實驗室精密儀器用電的要求。文中完整地討論了以STM32單片機為主控芯片的在線式UPS電源的設計,對軟件和硬件設計進行了詳細的介紹。本設計簡化了硬件設計、提高了輸出電壓的穩定性。從而可以向精密儀器供更加穩定、精確、高質量的電壓波形。
圖6 電壓的輸出波形
參考文獻
[1] 劉鳳君.現代逆變技術及應用[M].北京:電子工業出版社,2006.
[2] 童詩白,成華英.模擬電子技術基礎[M].北京:高等教育出版社,2001.
[3] STMicroelectronics. STM32F103x8/B增強型系列中容量產品數據手冊[EB/OL]. [2012?09?01]. http://www. stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.htm.
[4] 王兆安,黃俊.電力電子技術[M].4版.北京:機械工業出版社, 1980.
[5] STMicroelectronics. STM32F10xxx硬件開發使用入門[EB/OL]. [2012?09?01]. http://www. stmicroelectronics.com.cn/stonline/mcu/STM32_AN.
[6] K.N.King. C語言程序設計:現代方法[M].2版.北京:人民郵電出版社,2010.
[7] STMicroelectronics. STM32F10xxx參考手冊[EB/OL]. [2012?09?01].http://www.stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.