如果沒看過手撕boost的,我建議可以先看看,《手撕Boost!Boost公式推導及實驗驗證》
因為有很多的前提條件在那里面有詳盡的解釋。這些前提條件在buck里面也是適用的,這篇文章就不會再贅述了。
先簡要說明一下文章會說哪些內容。
1、buck的拓撲結構,工作原理
2、輸入輸出電容取值的推導過程,電感感量的計算過程
3、boost各處電壓,電流波形
4、buck,boost公式匯總
5、實際電路應用情況
Buck的拓撲結構
Buck是直流轉直流的降壓電路,下面是拓撲結構,作為硬件工程師,這個最好是能夠記下來,了然于胸。
為啥要記下來,自然是因為這個電路太基礎了,并且誰都會用到,更重要的一點,面試可能會考。。。
上圖是個異步buck,同步buck就是將里面的二極管換成MOS管。
我用異步buck來分析的原因,就是覺得它要復雜一點,多了一個二極管導通壓降,如果異步的明白了,那么同步的自然也明白了。
并且,根據這個拓撲推導的公式也是適用同步Buck的,只需要讓公式里面的二極管壓降為0即可。
首先,還是來看下工作原理。
工作原理其實非常簡單,上圖中MOS管就是一個開關,只要這個速度夠快(開關頻率夠高),控制好導通與關斷時間(電感充放電時間),配合輸出濾波電容,就可以得到基本穩定的Vo了,也就是輸出電壓。
下面來看下兩個過程,開關導通和開關斷開。
先看開關導通
開關導通時,二極管不導通,我們看電感,電感左邊是Vi,右邊是Vo,因為是降壓,所以左邊大于右邊,那么電感兩端電壓是Vi-Vo,為恒定值。如果把電感電流向右定義為正,那么電感電流是線性增大的,因為L*di/dt=Vi-Vo,那么di/dt=(Vi-Vo)/L=常數。
開關斷開時,電感要續流,會產生反向電動勢,讓二極管導通,二極管導通電壓是Vd。因為二極管陽極接地,所以陰極電壓是-Vd,也就是電感左邊的電壓就是-Vd,右邊的電壓是Vo不變,因此電感兩端電壓是-Vd-Vo。此時電感電流是線性減小的,因為L*di/dt=-Vd-Vo,di/dt=-(Vo+Vd)/L=常數,并且是負值,所以是線性減小的。
推導公式
我們推導公式,是為了選型,選擇輸入濾波電容,輸出濾波電容,電感。
那么先把已知條件列出來
首先是輸入電壓Vi,輸出電壓Vo,輸出電流Vo/R,咱總得知道自己想要什么吧,所以這些在設計之初都是已知的。
其次是開關頻率f,這個在芯片選型之后就是確定的了。
再然后就是設計的目標,輸入紋波大小△Vi,輸出紋波大小△Vo。
我們根據這些已知的量,就可以求得電感感量,輸入濾波電容大小,輸出濾波電容大小。
因為計算的基本原理其實就是電容和電感的充放電。所以,我們首先要求的就是開關導通的時間和斷開的時間,或者說是占空比。
這個也非常簡單,我們可以這么想。
在開關導通的時候,電感兩端電壓是Vi-Vo。
在開關斷開的時候,輸出端電壓為Vo,二極管導通,那么電感右側就是Vo,電感左側接的是-Vd,所以此時電感兩端電壓是Vo+Vd。
整個電路穩定之后,因為負載電流恒定,那么一個周期時間之內,在開關導通時電感電流增加的量,要等于開關截止時,電感電流減小的量,即電感充了多少電就要放多少電,不然負載的電流或者電壓就要發生變化。
即一個周期內,電感電流增大量等于減小量。
然后又因為U=Ldi/dt,di/dt=U/L,L不變,所以電感電流變化速度與電壓成正比。
簡單說就是,電感電流上升或下降的斜率與電壓成正比。
斜率與電壓成正比,電感電流上升的高度與下降高度又相同,那上升時間不就和電壓成反比了嗎?
所以,自然就有了:
Ton/Toff=(Vo+Vd)/(Vi-Vo)
我們變換一下,就得到了江湖所傳的“伏秒法則”
再根據T=Ton+Toff=1/f
我們可以分別求得導通時間,關斷時間,占空比。
如果是同步buck,那么Vd=0,則會見到我們經常看見的公式:
功率電感選擇
我們電感選型首先需要考慮兩個參數,電感感量和電感電流。
電感電流分為2個,平均電流IL和紋波電流△IL。
先看平均電流
顯然,輸出電壓Vo基本不變,也就是說輸出濾波電容兩端電壓沒有變化,那么電容的平均電流為0,根據輸出節點的基爾霍夫電流定律,節點電流和為0,那么電感的平均電流就等于負載的平均電流Io。
即IL=Io=Vo/R。
然后我們再來求電感的紋波電流△IL
從前面知道,電感電流就是個三角波,在開關導通時電感電流增大,在關斷時,電感電流減小。
那紋波電流的大小求起來就簡單了,就等于在開關導通時電感電流增大的值,也等于關斷時電感電流減小的值。
我們就計算其中一個,計算開關導通時電感電流增大了多少吧。
這個也非常easy,開關導通,電感兩端電壓是Vi-Vo,導通時間Ton前面已經求出來了。
根據U=Ldi/dt就可以求出電感電流紋波△IL=di=U/L*Ton
可以看到,電感電流的紋波跟負載電流的大小沒有關系。
同時呢,我們也很容易得到電感的峰值電流,就是電感的平均電流加上紋波電流的一半嘛,即ILp=IL+△IL/2=Io+△IL/2。
也就是:
計算這個峰值電流有什么用呢?
電感選型時,電感的飽和電流必須大于這個ILp,并且要留一定的裕量。
現在我們已經寫出來了電感的平均電流IL,電感的紋波電流△IL,△IL應該是IL的20%-40%為宜。
即:△IL=(0.2~0.4)*IL
根據這個范圍,就能求得我們的電感值范圍了。
輸入濾波電容計算
我們在確定輸入濾波電容的時候,是有一個假設的,這個假設是什么呢?
輸入電源默認來自遠方,是沒法提供快速變化的電流的。
實際應用中,輸入電源可能距離很遠,有了很長的走線,走線越長,寄生電感就越大,也就是說輸入電源不能快速響應這個Buck輸入電流的需求。
因此,我們在一個周期時間內,可以將輸入電源的電流看作是恒定的,穩定狀態下,這個電流也等于電源輸入的平均電流Ii,我們先求一下電源輸入的平均電流Ii。
怎么求電源的輸入電流呢?
很簡單,使用能量守恒定律就可以了。
不考慮MOS管的損耗的話,那么用耗電的器件有2個,一個是二極管,一個是負載R。
由工作原理可知,二極管只在MOS開關斷開時有電流流過,其電流等于電感電流,并且一個周期內有電流流過的時間為Toff,所以二極管的平均電流也等于電感的平均電流,為IL=Io。
一個周期內二極管流過電流的時間為Toff,電流為IL,導通壓降為Vd。
所以二極管的功率為:
Pd=Vd*Io*Toff*f =Vd*Io *(Vi-Vo)/(Vi+Vd)
負載的功率是Pr=Io*Vo
電源輸入功率Pi=Vi*Ii
根據能量守恒,Pi=Pr+Pd,可以得到輸入電源的平均電流Ii為:
現在已經求出Ii,在一個周期內,電源的輸入電流可以看成恒定值,為Ii。
了解了這個前提條件,我們回到目標:計算輸入濾波電容的容量
我們先理清下思路,輸入電壓紋波就是輸入電容上面的電壓變化。電容上面的紋波變化可以分成兩個部分。
一個是電容放電或者是充電,存儲了電荷量發生了變化,這個變化會導致電壓變化,可以用公式Q=CUq來表示,Uq即是電壓的變化。
另一個是電容有等效串聯電阻ESR,電容充放電時有電流流過,電流流過ESR會產生壓降,這個壓降用Uesr表示吧。
所以,電壓紋波應該是:
△Vi=Uq+Uesr
1、電容電荷量變化引起的壓降Uq
我們看輸入節點,這個節點的電流有3個,一個是來自電源Vi輸入的,前面說了,在一個周期內,它可以看作是恒定的,一個節點是電容,另外一個節點是開關。
根據基爾霍夫電流定律,節點電流和為0,并且電源輸入的電流恒定為Ii,那么輸入電容電流的變化量必然等于開關電流的變化量,因為最終3者的和為0。
也就是說,開關斷開時,開關電流為0,那么電源輸入的電流全都流進輸入電容,電容被充電,此時電容的充電電流為Ii。而開關導通時,電感需要續流,這個電流由電源輸入和輸入濾波電容二者共同提供,電容此時放電。
并且,開關切換的時候,開關電流是突變的。而三者電流和為0,那么電容的電流必然也是突變的。
我們畫出三者的電流波形如下:
一個周期內,電容的充電電荷量和放電電荷量必然一樣,我們計算出其中一個就行了。
顯然,充電的時候更好計算,因為充電時開關斷開,電容的電流就是電源的輸入電流,是恒定的,為Ii。
根據Q=I*t,那么充入的電荷量為Q=Ii*Toff,電容充入電荷,會導致電壓變大,這個電壓的增量這里取個名字叫Uq,那么Q=Uq*C,也就是Uq=Q/C=Ii*Toff/C
最終可以求得Uq
2、電流流過電容的ESR造成的壓降Uesr
想要知道ESR造成的紋波大小,我們只需要知道流過電容的電流就知道了,因為電壓等于電流乘以ESR。
我們把電容的電流波形單獨畫一下。
這個波形下面解釋下:
在開關斷開的時候,電源輸入電流Ii全部進入輸入濾波電容,因為li恒定,因此輸入濾波電容的電流就是恒定為li,此時電容充電,如果我們把充電電流定義為正,那么電流就是+li。
在開關導通之后,電感原本從二極管續流,變成了從MOS管續流,因為之前電感一直在放電,所以切換時電感電流最小,等于IL-△IL/2,在整個Ton時間段內,電感是被充電的,所以電感電流一直在增大,直到達到峰值電流IL+△IL/2。 并且在Ton時間內,電感電流走的是MOS管通路,因此,Mos管電流最大也是IL+△IL/2。根據輸入節點電流和為0,這個電流等于輸入電源電流Ii和濾波電容的放電電流,所以濾波電容的最大放電電流為IL+△IL/2-Ii。因為前面定義了充電電流為正,那么放電電流就為負,即濾波電容電流是:-(IL+△IL/2-Ii)。
知道了電流,ESR,那么我們就知道了紋波大小。
在開關斷開時,ESR上面產生的壓降是恒定的,為:Ii*ESR
在開關導通后,ESR上面產生的最大壓降是:-(IL+△IL/2-Ii)*ESR
兩者相減,得到的就是一個周期內ESR引起的紋波大小,也就是:
Uesr=(IL+△IL/2)*ESR
計算過程如下:
好,我們已經算出Uesr和Uq。
那么根據△Vi=Uesr+Uq,我們就可以△Vo的表達式了,如果知道△Vo,我們也能得到輸入濾波電容Ci的大小或者是ESR了。
輸入總的紋波公式:
這個公式看著有點復雜,有兩個參數都跟電容本身有關系,ESR和容量Ci。
考慮到我們的電容實際使用情況
陶瓷電容ESR小,容量小,Uq對紋波起決定作用,所以輸入紋波電壓可以近似為Uq,如果我們要限定紋波不能大于△Vi,那么Uq≤△Vi。
鋁電解電容容量大,ESR大,Uesr對紋波起決定作用,所以輸入紋波電壓可以近似Uesr,如果我們要限定紋波不能大于△Vi,那么Uesr≤△Vi
根據上面兩點,我們就可以去選擇合適的電容了。
陶瓷電容根據容量值去選
鋁電解電容根據ESR去選
好,現在輸入電容的理論計算已經搞定了,我們接著看輸出濾波電容。
輸出濾波電容
相比輸入紋波△Vi大小,我們可能更關心輸出紋波△Vo的大小,畢竟是要帶負載的。同樣,紋波由電容容量和ESR決定。
1、電容電荷量變化引起的Uq
我們看輸出節點,這個節點的電流有3個,一個是來自負載的,它可以看作是恒定的,為Io=Vo/RL,一個節點是輸出濾波電容,另外一個節點是電感。
根據基爾霍夫電流定律,節點電流和為0,并且負載的電流恒定,那么電感電流的變化量必然等于電容電流的變化量,因為最終3者的和為0。
我們畫出三者的電流波形如下:
根據節點電流和為0,那么輸出電容的電流變化就是功率電感的電流變化(你增大時我減小,你減小時我增大)。我們從上圖也可以很直觀的看出來。
顯然,電容電流大于0時,電容在充電,電容電流小于0時,電容在放電。并且圖中也可以看到,電容充電和放電時間長度是一樣的,都是周期的一半,T/2。
那充放電的電荷量是多少呢?
從前面知道,輸出電容的電流變化就是功率電感的電流變化,因為電感的紋波電流是△IL,那么電容的紋波電流也是 △IL。又因為電容的平均電流是0,所以電容的充電電流和放電電流都是△IL/2。
需要注意,電容電流是在大于0時充電,電流小于0時放電,也就是圖中陰影部分,充電與放電的切換的時刻并不是開關導通與斷開的時候,而是在中間時刻。
然后電容放電/充電的總電荷量Q等于電流乘以時間,這不就是圖中陰影三角形的面積嗎?
三角形底部是時間,充電/放電時間等于T/2
三角形的高為電感紋波電流的一半,△IL/2。
所以總放電量為Q=1/2*底*高
再結合Q=CUq,即可求得Uq了。
具體計算如下圖所示:
2、電流流過電容的ESR造成的壓降Uesr
前面波形圖知道,電容的充電電流最大是△IL/2,放電電流最大就是-△IL/2,負號表示電流方向,方向的不同,引起的壓降的電壓也是相反的。
那么ESR引起的總的壓降是:
Uesr=△IL/2*ESR-(-△IL/2*ESR)=△IL*ESR
最終,我們求得Uesr的公式如下:
好,我們已經算出Uesr和Uq,那么根據△Vo=Uesr+Uq,就可以求出總的輸出紋波大小△Vo。
根據上面兩點,我們就可以去選擇合適的電容了。
陶瓷電容根據容量值去選
陶瓷電容ESR小,容量小,Uq對紋波起決定作用,所以可以近似為Uq,如果我們要限定紋波不能大于△Vo,那么Uq≤△Vo
鋁電解電容根據ESR去選
公式到這里就基本推完了。
公式匯總
下面把Buck所有的公式匯總下,如下圖:
之前寫過boost的公式推導,不過沒匯總公式,現在也匯總如下:
實際電路應用
公式現在都已經推出來了,這些公式都是從拓撲結構里面推出來的,我們也會在很多芯片手冊中看到這些公式,那么我們設計時,按照這些公式選擇電容可以嗎?
答案是:no,no,no! 原因在于,實際我們使用的器件都不會是理想的。
就陶瓷電容來說,一個直流偏壓特性,可能就使得電容實際容量只有標稱值的30%甚至更低。
還有電容會有ESL等參數,電路本身還有會其它的損耗等等,這些都會使得buck/boost實際輸出與理論推導有較大的出入。
雖然這些公式不能直接套用,但是我們根據它們也能大致知道是個什么情況,所以其作用還是有的,我們設計時也需要去算一算的。
審核編輯 :李倩
-
電路
+關注
關注
172文章
5926瀏覽量
172348 -
BUCK
+關注
關注
32文章
482瀏覽量
64187 -
拓撲結構
+關注
關注
6文章
324瀏覽量
39216
原文標題:硬帖!手撕Buck!
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論