UCD3138 是德州儀器(Texas Instruments)公司推出的最新一代數(shù)字電源控制器,于2012 年第一季度正式發(fā)布。相比于上一代數(shù)字電源控制器UCD30xx,其在諸多方面有著重要改進,功能更加豐富,性能更加強大。本文基于一款采用硬開關(guān)全橋(副邊采用全波同步整流)拓撲的開關(guān)電源,詳細介紹了UCD3138 的Single Frame 功能和輸入電壓前饋功能。在完成對上述功能理解地同時也可以清楚的了解到UCD3138 的優(yōu)勢所在。本文的最后部分給出了參考文獻。
1、Single Frame 功能設(shè)計與實現(xiàn)
Single Frame 是一種全新的在副邊完成對原邊輸入電壓檢測的方法。通過該方法可以在副邊直接快速地檢測當前輸入電壓,實現(xiàn)欠壓保護功能,因此無需額外的輸入欠壓保護電路及光耦或數(shù)字隔離器。
1.1 Single Frame 功能介紹
在電源系統(tǒng)未正式運行前,UCD3138 芯片會周期性的發(fā)出單個或幾個驅(qū)動脈沖,使硬開關(guān)全橋工作單個或者多個周期。此時,在變壓器副邊中心抽頭處可以產(chǎn)生出電壓,該電壓與輸入電壓成線性關(guān)系,因此通過UCD3138 檢測該點電壓并通過軟件計算后可以得到輸入電壓?;谠撚嬎憬Y(jié)果,系統(tǒng)可以判斷輸入電壓是否達到開啟點,以決定是否退出欠壓保護并開始正常運行。
實際應用中,為保證全橋原邊側(cè)上管(驅(qū)動地為浮地)可以順利導通,通常需要連續(xù)發(fā)送幾個周期的驅(qū)動脈沖。在本文涉及的硬開關(guān)全橋中,實際發(fā)送了2 個驅(qū)動脈沖以保證UCD3138 順利檢測到正確的輸入電壓。
1.2 硬件電路設(shè)計
實現(xiàn)Single Frame 功能的硬件電路比較簡單,如下圖1。VIN_CT 網(wǎng)絡連接到變壓器副邊中心抽頭處,然后通過RC 濾波后連接到UCD3138 的EAP2 引腳。該電路的主要功能是實現(xiàn)變壓器中心抽頭處電壓的濾波及縮放。
圖 1:Single Frame 硬件電路
變壓器的匝比為5:2:2 。EAP2 處電壓與輸入電壓的關(guān)系為:
1.3 軟件設(shè)計
實現(xiàn)Single Frame 功能的軟件設(shè)計包括了驅(qū)動信號的配置和電壓采集及轉(zhuǎn)換等兩個部分,其中第一個部分是核心配置。下面著重討論第一部分。
1. 開關(guān)周期的設(shè)定
下面代碼設(shè)定了開關(guān)周期為5us,即200KHz。計算公式為:
#define PERIOD (20000)
Dpwm0Regs.DPWMPRD.all = PERIOD;
2. 單脈沖長度的設(shè)定
下面代碼完成了單脈沖脈寬長度的設(shè)定,包含了死區(qū)的設(shè)置。該代碼設(shè)置的時間寬度為。即一個周期內(nèi)輸出兩個脈寬長度皆為651ns 的脈沖。
Dpwm0Regs.DPWMEV1.all = 20;
Dpwm0Regs.DPWMEV2.all = 2625;
Dpwm0Regs.DPWMEV3.all = 20 + 10000;
Dpwm0Regs.DPWMEV4.all = 2625 + 10000;
3. 采樣時刻的設(shè)置
考慮到在變壓器副邊中心抽頭處電壓變?yōu)楦唠妷簳r會伴隨有尖峰和震蕩,為防止采樣錯誤,采樣點設(shè)置需要避開開始時刻。下面代碼設(shè)置了采樣點的位置:接近脈沖的結(jié)束時刻,為600ns 處。
Dpwm0Regs.DPWMSAMPTRIG1.all = 2400;
1.4 實測波形
如下圖2 所示,綠色線為全橋原邊驅(qū)動(即單脈沖)波形,其時間長度約為650ns,與軟件設(shè)計一致。黃色線為變壓器副邊中心抽頭處的電壓波形,第一個波頭是因為全橋原邊沒有完全導通造成輸入電壓沒能夠完全地傳輸?shù)礁边?,而第二個脈沖則準確地反應了輸入電壓的信息。此時,輸入電壓為50V,黃色線的平臺為20V,與理論計算一致。
圖 2:Single Frame 實測波形
2、前饋功能的設(shè)計與實現(xiàn)
前饋(feed forward)功能是UCD3138 的一個重要特性。借助于實現(xiàn)Single Frame 功能的硬件電路,UCD3138可以獲知當前輸入電壓;當輸入電壓有劇烈變化時,前饋功能可以快速響應并調(diào)整占空比,以盡快穩(wěn)定輸出電壓。
2.1 前饋功能實現(xiàn)原理描述
UCD3138 芯片內(nèi)部的前饋模塊的輸出為一個增益值,將與環(huán)路的輸出結(jié)果相乘,以共同決定占空比。前饋模塊輸出的增益由該式?jīng)Q定:Gain = Kc + Kp×ΔV 。其中:
◎ Kc 為常數(shù),通常設(shè)置在0.5~0.7 之間,以方便對占空比進行大小兩個方向的調(diào)節(jié);
◎ Kp 為輸入電壓差值的放大倍數(shù)。該值為非線性值,即誤差越大則增益越大。誤差較小時,該值為0;
◎ ΔV 為跳變之后的輸入電壓與跳變前輸入電壓的差值,即Vref(DAC)-Vin_sense。在輸入電壓跳變之后,Vref(DAC)的值會逐漸逼近新的輸入電壓,以保證該值等于最新的當前輸入電壓。
UCD3138 芯片內(nèi)部前饋處理模塊的的示意圖見圖3。
圖 3: 前饋內(nèi)部處理模塊
如下圖4 所示,前饋模塊的輸出結(jié)果直接與環(huán)路最終的輸出相乘,然后由相乘的結(jié)果再去調(diào)整占空比大小。這就保證了前饋的結(jié)果可以快速調(diào)整當前的占空比。
圖 4:前饋輸出最終與環(huán)路輸出相乘
2.2 前饋功能的實現(xiàn)
前饋功能的硬件設(shè)計主要包含了輸入電壓的檢測電路,在第一章曾有描述,在此不再贅述。軟件設(shè)計主要包含了Vref(DAC)值的配置、Kc 的配置和前饋功能的啟用設(shè)置。
1)Vref(DAC)值的配置
如下函數(shù)實現(xiàn)了根據(jù)v_input_error 的大小對Vref(DAC)值的更新。v_input_error 為當前采集的輸入電壓與前一次采集到的輸入電壓的差值。該函數(shù)包含在一個狀態(tài)機中,100us 執(zhí)行一次,將連續(xù)執(zhí)行300 次,以保證在使能前饋功能之前Vref(DAC)近似等于當前輸入電壓。
if(v_input_error > 10)
{
if(FeCtrl2Regs.EADCDAC.bit.DAC_VALUE > 3000) //can not lower than 35V;
{FeCtrl2Regs.EADCDAC.bit.DAC_VALUE = FeCtrl2Regs.EADCDAC.bit.DAC_VALUE - 1;}
}
else if(v_input_error < -10)
{
if(FeCtrl2Regs.EADCDAC.bit.DAC_VALUE < 14000) //can not higher than 80V;
{FeCtrl2Regs.EADCDAC.bit.DAC_VALUE = FeCtrl2Regs.EADCDAC.bit.DAC_VALUE + 1; }
}
如果誤差很小,即輸入電壓已經(jīng)穩(wěn)定,則系統(tǒng)軟件準備開啟前饋功能并隨后進入正常運行的狀態(tài)機。
if ( abs(v_input_error) < 10) //Vin error is small
{
supply_state = STATE_REGULATED;
Filter0Regs.FILTERCTRL.bit.OUTPUT_MULT_SEL =2;//Enable Feed Forward
}
2)Kc 值的配置
在輸入電壓穩(wěn)定的情況下,如果Kc 直接配置到0.5 到0.7 的某個值,則此時啟用前饋功能會影響正常環(huán)路的輸出,造成輸出電壓出現(xiàn)跌落。如下圖5 所示。
圖 5:Kc 啟用不當造成輸出有跌落
跌落的原因是因為此時環(huán)路的正常輸出被突然乘以Gain=Kc=0.5~0.7,所以占空比會立即被限制,輸出電壓出現(xiàn)跌落。直到環(huán)路經(jīng)過多個周期后再將占空比展開到正常大小,輸出電壓才恢復到正常值。
因此,在實際應用中需要將Kc 由1 慢慢減小到需求的值(在本文涉及的硬全橋軟件中選擇Kc 為0.7)。另,在實際設(shè)計中使用Filter2 實現(xiàn)非線性增益和Kc 的設(shè)置,因此軟件配置如下。
Uint32 filter2_kc;
int filter2_kc_step = 0x200;
inline void handle_regulated_state(void)
{
filter2_kc = Filter2Regs.FILTERPRESET.bit.PRESET_VALUE;// It is Kc
if(Filter2Regs.FILTERPRESET.bit.PRESET_VALUE > 0x5A0000)
{
Filter2Regs.FILTERPRESET.bit.PRESET_VALUE = filter2_kc - filter2_kc_step;
Filter2Regs.FILTERPRESET.bit.PRESET_EN = 1;
}
}
其中,handle_regulated_state 為軟件狀態(tài)機中的一個狀態(tài),每100us 執(zhí)行一次。通過這樣一個循環(huán)函數(shù)就可以保證Kc 是以步進的形式由1 配置到0.7(0x5A0000/0x7FFFFF=0.7),防止了輸出電壓出現(xiàn)跌落。
3)前饋功能的啟用
經(jīng)過上述完善的預先配置后,可以啟用前饋功能,啟用后KC 從1 慢慢開始減小。啟動的設(shè)置是通過下面代碼實現(xiàn)的。“OUTPUT_MULT_SEL”位用來選擇與環(huán)路輸出相乘的值,以決定最后的占空比。當設(shè)置為2時,將選擇前饋的輸出與環(huán)路輸出相乘,即啟動了前饋。
Filter0Regs.FILTERCTRL.bit.OUTPUT_MULT_SEL =2;
3、參考文獻
1. UCD3138 datasheet, Texas Instruments Inc., 2011
2. UCD31xx Central Interrupt Module (CIM) Programmer’s Manual, Texas Instruments Inc., 2011
3. UCD31xx Fusion Digital Power Peripherals Programmer’s Manual, Texas Instruments Inc., 2011
4. UCD31xx Miscellaneous Analog Control _MAC_, Texas Instruments Inc., 2011