

摘 要:利用主控制器STM32所具有的優勢,設計無位置傳感器無刷直流電機為控制對象的驅動器,包括功率驅動電路、三相逆變電路、反電動勢檢測電路和電流與電壓監測電路。該驅動器設計成本較低,具有一定的應用價值。
關鍵詞:STM32;無位置傳感器;無刷直流電機
1 概述
與8位單片機有限指令和性能相比,32位STM32處理器的工作頻率達到72MHZ,處理能力達到1.25DMIPS,能實現高端運算能力;與32位DSP高成本和高功效相比,32位STM32處理器具有出眾的功耗控制和明顯價格優勢,同時其內部高度集成,具有創新而豐富的外設,更加利于控制系統的開發。同時STM32中的STM32F103增強型系列具有專門為實現電機控制的高級定時器,以及轉換速度為1MHZ、精度為12位的ADC[1]。
無刷直流電機既具有直流電機調速性能良好、運行效率較高等的特征,又具有交流電機構造簡單、故障率低等的特點,具備兩者優勢,具有廣闊應用前景。無刷直流電機分為有位置傳感器和無位置傳感器兩種,兩者相比,后者具有許多優勢:縮小了無刷電機的體積和成本;增強了抗干擾能力,擴大在高溫、高腐蝕性等特殊場合的使用范圍;提高了系統可靠性,降低電機的維護工作量[2]。本設計以無位置傳感器無刷直流電機為控制對象。
2 硬件設計
2.1 硬件總體結構
利用STM32較強控制性能及豐富外設,使硬件設計較為簡單,所占空間較小,進一步降低成本,圖1所示為驅動器硬件框圖,以STM32為控制核心,包括電源電路、功率驅動電路、三相逆變電路、反電動勢檢測電路、電流監測電路、電壓監測電路和串口通信電路。
在設計中選用STM32F103型號,其I/O口分配為:PA8端口 (TIM1_CH1)、PA9(TIM1_CH2)端口和PA10(TIM1_CH3)端口分別與功率驅動電路的高邊控制端HIN相連,PD9、PD10和PD11端口分別與低邊控制端LIN相連;PA1(ADC1_IN1)、PA2(ADC1_IN2)和PA3(ADC1_IN3)端口與反電動勢檢測電路相連;PC0(ADC1_IN10)端口與電流監測電路相連;PC1(ADC1_IN11)端口與電壓監測電路相連;PD5、PD6端口與通信電路相連;PC6、PC7端口分別與兩個LED燈相連,作為警報信息;預留的IO管腳可用于后期的擴展開發。
2.2 電源電路設計
在設計實驗中以12V的無刷直流電機為實驗對象,功率驅動芯片使用的電壓也為12V,12V直接由外部電源供給;而STM32和通信電路使用的電壓為3.3V,所以需要把12V電壓轉換成3.3V電壓,使用集成穩壓器AMS1117實現該電壓轉換。
2.3 三相逆變電路及功率驅動電路設計
圖2為三相逆變電路及功率驅動電路圖,此處只列舉其中一相,其余兩相設計相同,三相逆變電路是由6個MOSFET管IRF3205組成的橋式電路,每一相由上下橋臂控制。當無刷直流電機運轉時,相應的MOSFET管需要導通,IRF3205的導通電阻RDS為毫歐級值,可近似忽略壓降VDS,所以源極S電位就近似等于12V的電源正電位,要使IRF3205管保持正常工作,其柵極G的電位必須大于12伏,即柵極G電位VG=VGS+12(VGS為門極電壓,最大值為20V),而STM32的IO口最大輸出電壓值為3.3V,故無法直接驅動IRF3205,因此采用三個IR2101S集成芯片構成功率驅動電路,每個芯片分別驅動每相上下橋臂IRF3205管的通斷,使用IR2101S設計功率驅動電路時,主要是在芯片的外圍添加自舉電容和快速恢復二極管,電阻起限流的作用。
2.4 反電動勢檢測電路設計
圖3所示為反電動勢檢測電路,是由六個精密電阻組成的分壓電路,把三相端電壓進行降壓以符合STM32的AD轉換電壓范圍,電機驅動電壓為12V,STM32的AD采樣最大值為3.3V,設計采取的分壓比為1/6,其中電阻R10=R11=R12=5K,R13=R14=R15=1K。
2.5 電流與電壓監測電路設計
無刷直流電機在起動或發生堵轉時容易產生較大電流,故要對電流實時監測,圖4所示為電流監測電路,圖中的COM端連接到三相逆變電路中的三個低邊MOSFET管公共端,當較大電流經過電阻R35時就會在其兩端產生電壓,通過監測電壓從而達到監測電流的目的,電阻R36和電容C26起濾波作用;電壓監測電路也是由電阻和電容構成的分壓電路,用于實時監測供電電壓。
3 軟件設計
軟件設計主控制程序流程圖如圖5所示,先進行初始化程序,STM32控制器接收到來自串口發送的啟動指令后進入啟動程序,采用“三段式”啟動法[3],完成之后電機進入正常的閉環運轉狀態:將端電壓輸入STM32的AD轉換器,采用反電動勢過零點的檢測方法,經軟件程序運算得到換相點,按照預定的換相方向使電機有序運轉。改變PWM占空比實現電機的調速,使用STM32的AD規則通道組形式對電壓、電流和溫度進行連續循環采樣,執行實時監控,如發生異常時相應的LED燈發出指示信號并將電機停止運轉,保證系統的安全性。
4 結束語
文章利用STM32的控制性能和豐富外設,采用模塊化方法,設計了無刷直流電機驅動器,實現了無位置傳感器的無刷直流電機控制。該驅動器具有較高的性價比,有一定的使用價值。
參考文獻
[1]STMicroelectronics Inc.STM32F10XXX參考手冊[EB/OL].2010.
[2]夏長亮.無刷直流電機控制系統[M].北京:科學出版社,2009.
[3]曾光華,等.基于STM32的無位置傳感器無刷直流電機控制系統[J].湖南工業大學學報,2012,1.
[4]吳大勇,賈敏智.STM32在三相無刷直流電機控制系統中的應用[J].微電機,2014,3.