申宏偉,王建軍,張昊東,譚文華,萬(wàn)志華
(北京航天發(fā)射技術(shù)研究所,北京100076)
開關(guān)電源通過(guò)幾十年的發(fā)展,以其體積小、效率高等優(yōu)點(diǎn)在大部分場(chǎng)合已經(jīng)取代線性電源。早期的開關(guān)電源控制電路采用分立模擬器件,隨著半導(dǎo)體技術(shù)的發(fā)展出現(xiàn)了集成模擬控制芯片配合外圍電路的控制方式,后來(lái)又逐漸發(fā)展出模擬集成控制加數(shù)字監(jiān)控的半數(shù)字控制方式。而近年來(lái)以單片機(jī)、DSP等為控制核心的全數(shù)字控制方式已經(jīng)成為開關(guān)電源的一個(gè)重要發(fā)展方向。數(shù)字控制相對(duì)于模擬控制具有可靠性高,靈活性強(qiáng),環(huán)境敏感度低,受溫度、器件老化的影響小,可以通過(guò)編程實(shí)現(xiàn)模擬控制無(wú)法實(shí)現(xiàn)的復(fù)雜算法,可實(shí)現(xiàn)故障自診斷、通信、控制等功能,智能化程度高等優(yōu)點(diǎn)。此外,數(shù)字控制的電源在形成系列化時(shí)具有顯著優(yōu)勢(shì),其控制部分的電路可以保持不變實(shí)現(xiàn)通用,只需要修改單片機(jī)中的程序即可。而隨著單片機(jī)技術(shù)的發(fā)展,其運(yùn)算速度越來(lái)越快,外設(shè)功能越來(lái)越強(qiáng),各種通信接口也越來(lái)越豐富,以前限制數(shù)字電源產(chǎn)品化的問(wèn)題,如PWM信號(hào)頻率、分辨率,AD轉(zhuǎn)換速度、分辨率,運(yùn)算速度等都在不同程度上得到了解決。目前市面上已經(jīng)有大量的高性能單片機(jī)可以滿足數(shù)字電源的應(yīng)用需求[1,2]。
LLC諧振變換拓?fù)涫悄壳氨容^流行的一種電源主功率變換電路結(jié)構(gòu),該拓?fù)渫ㄟ^(guò)諧振腔元件的諧振作用,可以實(shí)現(xiàn)變壓器原邊側(cè)開關(guān)管的零電壓開通和副邊整流二極管的零電流關(guān)斷,從而顯著降低開關(guān)損耗,具有體積小、效率高的優(yōu)點(diǎn),廣泛應(yīng)用于新能源電能變換、電池充電機(jī)等領(lǐng)域[3]。相對(duì)于以移相全橋軟開關(guān)變換器為代表的傳統(tǒng)PWM型變換器,LLC變換器的控制方式有較大差異。LLC變換器采用PFM控制方式,即脈沖寬度保持不變,占空比恒定為0.5,通過(guò)控制開關(guān)頻率,改變諧振元件的阻抗,進(jìn)而調(diào)節(jié)輸出電壓。因此在設(shè)計(jì)LLC變換器的控制系統(tǒng)時(shí),傳統(tǒng)PWM變換器的許多設(shè)計(jì)方法和經(jīng)驗(yàn)將不再適用。LLC變換拓?fù)涞墓逃刑匦允沟闷鋵?duì)工作狀態(tài)和元件參數(shù)相對(duì)敏感,因此需要相對(duì)復(fù)雜的控制算法才能在保證不同工況和參數(shù)容差范圍內(nèi)穩(wěn)定工作的前提下,提高其動(dòng)態(tài)響應(yīng)性能。而數(shù)字控制方式的靈活性和可實(shí)現(xiàn)復(fù)雜算法的特性使其應(yīng)用在LLC變換器控制時(shí)相對(duì)模擬控制方式具有明顯優(yōu)勢(shì)[4,5]。
數(shù)字控制LLC變換器系統(tǒng)框圖如圖1所示,包括主電路和控制電路兩部分。主功率變換電路采用半橋LLC諧振變換拓?fù)?。Q1和Q2為半橋的兩個(gè)功率開關(guān)管,D1和D2為功率開關(guān)管的寄生二極管,Cds1和Cds2包含開關(guān)管的寄生結(jié)電容和外加吸收電容,通過(guò)Q1和Q2的開關(guān)動(dòng)作,將在半橋橋臂中點(diǎn)輸出占空比為0.5的方波電壓。Cr為諧振電容,Lr為串聯(lián)諧振電感,Lp為并聯(lián)諧振電感,Cr、Lr和Lp組成諧振腔。Dr1和Dr2為副邊整流二極管,C1為輸出濾波電容,Dr1、Dr2和C1組成整流濾波網(wǎng)絡(luò)將交流方波電壓整流濾波成為平穩(wěn)的直流輸出電壓。
圖1 數(shù)字控制LLC變換器系統(tǒng)框圖
控制電路中控制核心為STM32F105單片機(jī),通過(guò)其上運(yùn)行的控制程序?qū)崿F(xiàn)變換器系統(tǒng)的控制。電壓、電流、溫度傳感器分別將各自采集的模擬量轉(zhuǎn)換為0~3.3 V的電壓信號(hào)提供給單片機(jī)的AD口,驅(qū)動(dòng)電路將單片機(jī)輸出的脈沖控制信號(hào)經(jīng)隔離放大后產(chǎn)生兩路互補(bǔ)驅(qū)動(dòng)信號(hào)驅(qū)動(dòng)主電路開關(guān)管工作。鐵電存儲(chǔ)器作為單片機(jī)的外部擴(kuò)展存儲(chǔ)器,可以存儲(chǔ)電源運(yùn)行信息和參數(shù)配置信息。CAN收發(fā)器用于實(shí)現(xiàn)電源與外部進(jìn)行總線通信。輔助電源為控制電路中的各部件提供工作電源。
控制核心為意法半導(dǎo)體公司生產(chǎn)的Cortex-M3內(nèi)核的STM32F105單片機(jī)。該款單片機(jī)采用精簡(jiǎn)指令集,主頻最高可達(dá)72 MHz,具有豐富的外設(shè)資源,可以滿足數(shù)字電源應(yīng)用所需的高速計(jì)算、AD轉(zhuǎn)換、脈沖控制信號(hào)產(chǎn)生、總線通信等功能。
單片機(jī)的片上資源配置如圖2所示,外部8 M無(wú)源晶振通過(guò)鎖相環(huán)倍頻產(chǎn)生72 M系統(tǒng)時(shí)鐘再通過(guò)各級(jí)預(yù)分頻從而產(chǎn)生驅(qū)動(dòng)相應(yīng)外設(shè)的時(shí)鐘信號(hào)。內(nèi)部40 kHz低速時(shí)鐘驅(qū)動(dòng)獨(dú)立看門狗模塊IWDG,作為內(nèi)部安全機(jī)制,在軟件特定部位放置喂狗語(yǔ)句。當(dāng)程序執(zhí)行異常,不能及時(shí)執(zhí)行喂狗語(yǔ)句時(shí),獨(dú)立看門狗模塊可對(duì)系統(tǒng)進(jìn)行復(fù)位。SYSTICK時(shí)鐘用來(lái)實(shí)現(xiàn)主程序循環(huán)任務(wù)調(diào)度的計(jì)時(shí)和中斷程序的觸發(fā)。設(shè)置4個(gè)GPIO端口用來(lái)采集開關(guān)量實(shí)現(xiàn)地址識(shí)別功能。USART1提供串口燒寫功能,SPI接口用來(lái)擴(kuò)展外部存儲(chǔ)空間,bxCAN模塊提供兩路CAN通信接口。
高級(jí)定時(shí)器TIM1產(chǎn)生兩路互補(bǔ)導(dǎo)通帶死區(qū)時(shí)間并且頻率可調(diào)制的脈沖控制信號(hào)用來(lái)驅(qū)動(dòng)開關(guān)管通斷,控制信號(hào)產(chǎn)生原理如圖3所示。
圖2 單片機(jī)片上資源配置
圖3 帶死區(qū)的互補(bǔ)控制信號(hào)產(chǎn)生原理示意圖
TIM1工作于向上計(jì)數(shù)模式,每個(gè)計(jì)數(shù)周期里,TIM1_CNT從0開始遞增,增大到TIM1_ARR中的值為止,然后再?gòu)?開始進(jìn)入下一個(gè)周期。當(dāng)TIM1_CNT中的值小于TIM1_CRR中的值時(shí),OCR1REF輸出無(wú)效電平;反之,OCR1REF輸出有效電平。輸出信號(hào)OC1與OC1REF同相,OC1N與OC1REF反相,從而實(shí)現(xiàn)互補(bǔ)輸出。脈沖控制信號(hào)的頻率由TIM1_ARR中的值決定,占空比由TIM1_CCR中的值和TIM1_ARR中的值共同決定。令TIM1_CCR中的值始終為TIM1_ARR中值的一半,通過(guò)改變TIM1_ARR中的值即可產(chǎn)生頻率可調(diào)、占空比恒定為0.5的兩路互補(bǔ)脈沖控制信號(hào)。通過(guò)配置相關(guān)寄存器則可以在兩路互補(bǔ)信號(hào)中插入死區(qū)時(shí)間,即OC1的上升沿相對(duì)OC1REF的上升沿延遲一個(gè)死區(qū)時(shí)間,OC1N的上升沿相對(duì)于OC1N的下降沿延遲一個(gè)死區(qū)時(shí)間,死區(qū)時(shí)間大小可以配置。
通用定時(shí)器TIM2工作于從模式,由TIM1觸發(fā)開啟定時(shí),并用比較事件CC2啟動(dòng)ADC2規(guī)則組轉(zhuǎn)換,該組只包含輸出電壓一路模擬量,其啟動(dòng)觸發(fā)時(shí)序如圖4所示。t1時(shí)刻TIM1比較事件觸發(fā)TIM2開始計(jì)時(shí),t2時(shí)刻TIM2比較事件觸發(fā)ADC2規(guī)則組開始轉(zhuǎn)換,t4時(shí)刻轉(zhuǎn)換完成。ADC1規(guī)則組包含輔助源電壓、輸出電流1、輸出電流2三路模擬量,采用連續(xù)掃描模式,并使用DMA功能。ADC1注入組包含線纜壓降采樣、輸出過(guò)壓保護(hù)電壓采樣、溫度采樣2和溫度采樣3四路模擬量,采用連續(xù)掃描模式,通過(guò)在主循環(huán)中通過(guò)軟件循環(huán)啟動(dòng)轉(zhuǎn)換。
圖4 ADC2規(guī)則組啟動(dòng)觸發(fā)時(shí)序圖
電源系統(tǒng)控制程序包括一個(gè)主程序和一個(gè)中斷程序。程序流程如圖5所示。
圖5 程序流程圖
主程序中通過(guò)SYSTICK時(shí)鐘計(jì)時(shí)來(lái)進(jìn)行時(shí)間片的分配,分時(shí)執(zhí)行各個(gè)任務(wù),實(shí)現(xiàn)任務(wù)調(diào)度。主循環(huán)中共有4個(gè)常規(guī)任務(wù),分別為保護(hù)任務(wù)、軟啟動(dòng)任務(wù)、電壓設(shè)定任務(wù)和CAN通信任務(wù)。保護(hù)任務(wù)中實(shí)現(xiàn)輸入過(guò)壓保護(hù)、輸入欠壓保護(hù)、過(guò)溫保護(hù)、輔助源電壓異常保護(hù)、限流環(huán)給定值計(jì)算和啟動(dòng)ADC1注入組轉(zhuǎn)換等功能。軟啟動(dòng)功能實(shí)現(xiàn)電源開機(jī)或故障恢復(fù)重啟后,控制輸出緩啟,避免沖擊。電壓設(shè)定功能中根據(jù)實(shí)時(shí)運(yùn)行狀態(tài)計(jì)算出電壓環(huán)給定值,用以實(shí)現(xiàn)并聯(lián)均流和線纜壓降補(bǔ)償?shù)葦U(kuò)展功能。
中斷程序由TIM1觸發(fā)中斷,中斷中執(zhí)行電壓環(huán)和限流環(huán)計(jì)算。電源采用如圖6所示恒壓限流控制策略。電壓環(huán)和限流環(huán)為并聯(lián)關(guān)系,二者計(jì)算結(jié)果進(jìn)行比較,取二者中的較小值作為最終控制量。當(dāng)輸出電流小于限流值時(shí),限流環(huán)飽和,電壓環(huán)起到控制作用,電源工作在恒壓模式。當(dāng)輸出電流大于限流值時(shí),限流環(huán)退出飽和,頂替電壓環(huán)起到控制作用,電源工作在限流模式。根據(jù)電源實(shí)時(shí)運(yùn)行狀態(tài),對(duì)限流環(huán)給定值進(jìn)行調(diào)整,在不同工況下實(shí)現(xiàn)多模式限流控制。當(dāng)輸出電壓高于UREF時(shí)采用恒功率限流;輸出電壓在UREF和UMIN之間采用恒流限流;輸出電壓小于UMIN采用折返式限流控制。
圖6 恒壓限流控制策略示意圖
在一臺(tái)650 VDC輸入,160 VDC/20 A輸出的樣機(jī)上實(shí)驗(yàn)驗(yàn)證。圖7所示為STM32F105輸出的兩路互補(bǔ)帶死區(qū)的脈沖控制信號(hào)經(jīng)過(guò)驅(qū)動(dòng)電路處理后輸出的兩路開關(guān)管驅(qū)動(dòng)信號(hào)波形,信號(hào)頻率和死區(qū)時(shí)間均符合設(shè)計(jì)要求。圖8所示為額定工況下,變壓器原邊電壓波形,波形穩(wěn)定無(wú)異常震蕩,主電路工作正常。圖9所示為輸出電壓軟啟動(dòng)波形,輸出電壓從0開始經(jīng)2 s左右上升到160 V,上電過(guò)程平穩(wěn),無(wú)沖擊和超調(diào)。圖10所示為電源動(dòng)態(tài)性能測(cè)試波形,突加、突減80%負(fù)載,輸出電壓超調(diào)量為1.2 V,恢復(fù)時(shí)間小于10 ms。
圖7 驅(qū)動(dòng)信號(hào)波形
圖8 變壓器原邊電壓波形
圖9 輸出軟啟動(dòng)波形
圖10 動(dòng)態(tài)性能測(cè)試波形
本文提出一種基于STM32的數(shù)字控制LLC變換器,介紹了變換器系統(tǒng)的組成、單片機(jī)片上資源配置、控制程序流程和控制策略,詳細(xì)分析了驅(qū)動(dòng)信號(hào)發(fā)生機(jī)制、多路ADC配置方法和恒壓限流控制策略。最后,在一臺(tái)160 V/20 A的樣機(jī)上對(duì)各項(xiàng)功能進(jìn)行了驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,基于STM32的數(shù)字控制方式穩(wěn)定可靠,LLC電源能夠正常穩(wěn)定工作,各項(xiàng)性能指標(biāo)均符合預(yù)期。