什么是數字電源?TI從功能上對數字電源進行了定義:數字電源就是數字化控制的電源產品,它能提供管理和監控功能,并延伸到對整個回路的控制。針對不同領域的應用,TI推出了多款可以實現數字電源產品的DSP處理器,如TMS320F280x系列、TMS320F2801x系列,還有可輸出16通道高精度PWM的DSP處理器TMS320F28044。在要求DC通道較多的系統,用28044設計數字電源就顯得非常的容易,一顆DSP最多可控制16通道的DC,輸出電壓任意可編程,極大地增強了電源系的靈活性,同時電源系統將變得非常智能和可控。本文主要探討如何基于TMS320F28044設計多通道的DC/DC電源。 系統框架 圖1展示了基于C2000DSP設計的多通道DC/DC數字電源系統框架,DC/DC的拓撲結構一般為典型的BUCK電路或者同步BUCK電路,輸出電壓經電阻網絡采樣后直接送到DSP的ADC端口,DSP內部對該值采樣,然后和系統的給定值做比較,比較后的誤差值經過PID調解器得到每個通道的占空比,這樣每路BUCK電路都形成一個閉環系統。同時一些外設接口如RS232、I2C,DSP通過這些接口可以與上位機實現數據交換,或者通過I2C接口來遵循PMBUS協議,組成智能數字電源系統。 高精度PWM 圖1 基于C2000數字DC/DC系統框架 TMS320F28044提供高達16路的高精度PWM波。理論上,PWM波在系統主頻100MHz下最高可以得到10ns的分辨率,但是作為DC/DC變換器,如果要得到精度高、紋波小的直流輸出電壓,那么就需要更高的開關頻率和更高的PWM分辨率。TMS320F28044內部提供一個微邊沿控制器,可以輸出最小150ps的PWM。設系統的主頻為100MHz,PWM波的頻率為200kHz,占空比需要輸出50.1%,如果僅僅使用普通的PWM波輸出,那么周期值設為5000,COMPA的值設為250,最高為2500個ns ,占空比就為50%,設為251,占空比就為50.2%。那么如何才能最大限度的得到接近于50.1%的占空比呢,這就需要用到高精度PWM波,COMPA的值設為250,接下來需要再產生5ns的高電平,CMPAHR設為32,32×150=4.8ns,占空比為50.096%,CMPAHR設為33,33×150=4.95ns,占空比就為50.099%,CMPAHR設為34,34×150=5.1ns,占空比為 50.102%,由此可見當CMPAHR設為33時,占空比的誤差僅為0.001%,如果不使用高精度的PWM波,誤差就為0.1%。可見通過使用高精度的PWM波,可以把誤差縮小兩個數量級。如果使用它來控制數字電源的話,可以大大提高數字電源的控制精度。 BUCK環路拓撲 圖2 基于BUCK的數字控制拓撲 圖2展示了基于BUCK電路的DC/DC數字控制拓撲,Q1、二極管、L、C、R組成了BUCK降壓型變換器,輸出電壓經過調理電路轉換成0~3V的電壓信號送到DSP的內部ADC,ADC的輸出與參考電壓比較之后得到誤差信號E,E再經過電壓環的控制器GC得到調整后的BUCK調解器占空比U,U作為片內PWM模塊輸出的計算因子,生成相應占空比的PWM信號,PWM信號再經過驅動電路驅動功率開關管的導通,得到期望的輸出電壓。整個過程全部通過DSP內部的數字控制,通過設置合適的PID參數,可以得到很好的動態特性。 數字采樣 圖3 DC/DC變換器數字采樣原理 數字控制中采樣時刻的選取對控制策略有著很重要的意義。圖3展示了在DC/DC變換器中如何合理的設置ADC的轉換時刻,以期得到準確的采樣值。上圖中T1生成對稱模式的PWM波,T1的比較寄存器可以用來存放需要生成的PWM波的占空比,通過改變比較寄存器的值,就可以得到期望占空比的PWM波。在本例中ADC的控制寄存器設置的轉換觸發發生在ADC上升沿的中間處,也就是開關管導通的中間時刻,ADC轉換完成之后,將會觸發一個中斷,在中斷服務子程序中,用戶程序從ADC的結果寄存器中讀取AD的轉換結果,執行數字控制器,更新PWM波的輸出占空比,新的PWM波有效發生在下一個周期。在圖3可以看出,從控制器執行完PWM波更新到下個ADC中斷觸發來臨,這中間有很多空閑時間,這就意味著如果系統得帶寬足夠的話,在這中間可以加入更多的控制器來控制多路的DC/DC變換器。在Background Loop中可以執行其他的用戶程序如通信等。 PID控制 TI提供的數字電源開發包中有控制器的算法宏,該宏在ControlLawMacro.h頭文件中,是基于一個2P/2Z傳遞函數: PID離散化的表達式如下所示: 2P/2Z傳遞函數: 可見,PID只是2P/2Z的一個特例,A1=-1和A2=0 那么PID的系數就如下所示: Coef2P2Z_1[0] = Dgain * 67108 // B2 Coef2P2Z_1 = (Igain - Pgain - Dgain - Dgain)*67108 // B1 Coef2P2Z_1 = (Pgain + Igain + Dgain)*67108 // B0 Coef2P2Z_1 = 0;// A2 Coef2P2Z_1 = 67108864; // A1 Coef2P2Z_1 = Dmax * 67108;// Clamp Hi limit (Q26) Coef2P2Z_1 = 0x00000000;// Clamp Lo 用戶可以通過定義或者改變Pgain、Igain、Dgain、來實現控制算法的調節。為方便調試,在CCS中可以將上述的參數做成進度條,通過滑動進度條的方式來實現系統的實時調試。 軟件框架 軟件框架如圖4所示。 圖4 軟件框架 設計實例 設計實例如圖5所示,本設計有以下特點: 圖5 設計實例 ● 采用子板加母板的連接方式 ● 子板基于TMS320F28044控制器 ● 母板載有10路典型BUCK電路,每路最大負載電流1A ● 任意一路電壓軟件可編程,編程范圍最大不超過5V ● 可動態改變參考電壓 ● 可動態改變系統的PID參數,調試系統動態性能 ● 可配置成高精度PWM和普通PWM輸出兩種方式 |