博客專欄

        EEPW首頁 > 博客 > 開關電源環路學習筆記(一)-為啥要知道傳遞函數?

        開關電源環路學習筆記(一)-為啥要知道傳遞函數?

        發布人:yingjian 時間:2022-06-22 來源:工程師 發布文章

        做硬件都會接觸到開關電源,或多或少會接觸到環路補償。很多兄弟們也提出來讓我說說這個,說明大家也都很關心,也說明這個好像有點難。

         

        就我個人而言,我也想搞明白環路這一塊,也查了一些資料,視頻,不過說實話,一直都還是懵的,感覺很困難。

        具體感覺就是,看資料或視頻的時候,感覺好像是那么回事。但是撇開之后,就又云里霧里的感覺,總有一些想法沒有找到答案。

         

        問題

        比如下面我想過的問題:

        1、開關電源有開關,根本就不是一個線性系統,傳遞函數是咋弄出來的?2、系統環路框圖的輸入量為什么不是Vin,而是參考電壓Vref?參考電壓不是固定的嗎?

        圖片

        3、穿越頻率為什么要低于開關頻率?并且是它的幾分之一?

        當然,問題有很多,以上只是隨便列幾個。

         

        我看的很多資料,大都是這樣的:上來就列出傳遞函數,包括功率級和補償級,然后一型,二型補償,畫出對應的波特圖,相位等,然后給出一些結論,再舉一些實際計算的例子。

        總之,看完總不覺得不那么清晰,你要說不會吧,我照著套公式自然好像還行。但是你要說會吧,我覺得我是不會的。

         

        為什么看不懂

        那為什么有這種感覺呢?

        我想了一下,我覺得是講課的人和聽課的人沒有先達成一個共識。

        就是當我們說明某一件事情時,大家先有一個共識,有一個共同的基礎,然后在這個基礎共識上面進一步擴展,得到一個新的結論。但是如果沒有共同的基礎,那很容易就成了雞同鴨講了。

        舉個簡單的例子,比如一個直角三角形,如果說兩直角邊分別長3和4,那么斜邊長度就是5,大家對這個應該都沒有什么疑問。沒有疑問的原因就是因為我們有一個基本的共識,那就是勾股定理。如果一個不知道勾股定理的人,可能就會問,你憑啥說斜邊是5,他就是不懂的。

         

        環路之所以難懂,我覺得應該是基礎共識太高了,一般人都不知道,而講的人又不管你知不知道這個基礎共識,所以就出現了似懂非懂,看不明白的情況。

         

        我的目標

        我目前的想法是,盡量從一個比較低的起點,大家都知道的共識,一步一步搞明白環路,這樣大多數人就都能明白了,我自己也能理解得更加透徹。

        不過這也就會造成要寫很多內容,因為要構建基本的共識,所以我可能要寫很多內容。

         

        傳遞函數

        我們分析開關電源環路,自然就需要知道整個電路的傳遞函數。

        為啥說要自然要知道傳遞函數呢?為了照顧下沒啥基礎的兄弟,我還是先來說一說傳遞函數是什么,有什么用(建立比較低的共識基礎)。

         

        首先,傳遞函數是怎么定義的呢?

        百科是這么定義的:

        圖片

        通俗理解就是,在電路應用中,如果我們把一個電路看作黑匣子,它有輸入端,有輸出端,傳遞函數就是輸出與輸入的比值。需要注意,這個電路得是一個線性電路。

        圖片

        這個比值通常是頻率的函數,同時還包含相位信息。s=jw,w就是頻率,j包含了相位信息。

         

        定義我們已經知道了,那它有什么用呢?

        用處可大了。

        如果我們知道了一個系統的傳遞函數為H(s),那么,根據H(s)=Vout(s)/Vin(s),就可以得到輸出表達式:

        Vout(s)=H(s)*Vin(s)

         

        這個式子的意義在哪里呢?

         

        可以看到,這個式子的自變量是頻率,也就是說任意一個頻率的正弦信號輸入到這個系統,我們都可以通過這個式子計算出輸出信號。

        另外一方面,無論我們的電信號有多復雜,多不規律,都可以通過傅里葉變換來分解成為各種正弦波信號的疊加。

        從前面傳遞函數的定義知道,這個傳遞函數只適用于線性系統,而線性系統滿足疊加原理。也就說我們可以把輸入信號通過傅里葉變換分解為各種正弦波,分別通過這個系統,然后把各個輸出信號加起來(疊加),就是輸出信號了。

        所以,這個式子的意義就是:任何一個信號通過這個系統,都可以通過這個公式算出來輸出長什么樣子。計算過程有點復雜,不過對于計算機來說,那都不是事兒。

         

        需要說明一點的是,我們并不經常分析一個具體的信號通過系統,而是直接分析傳遞函數,畫出對應的波特圖,還有相位曲線。通過看圖我們就能很直觀的明白這個系統的特性了。

         

        舉例

        下面舉一個例子吧。

        圖片

        這是一個簡單的電路,它的傳遞函數是怎么樣的呢?

        很簡單,運用歐姆定律。如果電路中只有電阻,我們應該都會使用歐姆定律求得輸出的電壓值。

         

        但是這個電路中還有電感和電容,怎么辦呢?

        其實我們用復阻抗的歐姆定律就可以了。電感的阻抗是sL,電容的阻抗是1/sC,電阻的阻抗是R。輸出為電容C上面獲得的分壓,所以輸出與輸入的比值(即傳遞函數)為:

        圖片

        我們知道,s=jw,所以這個函數是個復數,有實部和虛部。我們求這個

        我們通過這個傳遞函數,可以借助一些仿真軟件,很容易就能畫出幅頻和相頻曲線。

         

        下圖是R=1K,L=1uH,C=1uF時的曲線

        圖片

        上圖是直接代入的公式畫出的圖,并不是畫了一個電路圖。當然,畫一個電路圖去仿真,結果也是一樣的。

        實線是幅頻曲線,虛線是相頻曲線。

         

        很容易看出這是一個低通濾波器了,不過這個例子太簡單,不畫曲線也知道。下面再舉一個稍微復雜一點的例子。

         

        再舉一個例子

        比如下面這個有放大器的電路,你能一眼看出干什么用的嗎?

        圖片

        如果沒用過,很難看出來,不過這沒關系,只要我們了解放大器的“虛短”和“虛斷“,求出傳遞函數并不復雜。

        過程如下,過程并不是重點,可以跳過。

        圖片

         

        當Z1為R1=15.8K電阻,Z2為R2=806Ω電阻,Z3為C3=10nF電容,Z4也為C4=10nF電容,Z5為R5=316K電阻(這么取值是因為這個電路其實是我抄別處的,原來就是這些值)。

        電阻的阻抗是電阻的阻值,電容的容抗是1/sC,分別代入上面的式子,就可以得到具體傳遞函數了,也就能畫出曲線了,曲線如下圖:

        圖片

        可以看出來,這是個帶通濾波器。

         

        可能有人說這樣求解函數畫圖太麻煩了,直接構建一個仿真電路圖不就行了,還不用計算。

        對于我舉的例子來說確實如此,下面就是我用放大器構建的電路圖,也能畫出來,如下圖。可以看到,幅頻曲線與上面的基本一樣。

        圖片

         

        既然電路仿真就可以畫出曲線,那我們為什么還要求傳遞函數呢?

        其實我覺得這是因為我上面舉的例子都是經典電路,濾波器嘛,截止頻率啥的都是有現成的公式。而這些公式,其實都是前人分析傳遞函數總結出來的,所以我覺得掌握了傳遞函數,才是掌握了根本。

        另外,遇到一個陌生的電路,我們如果有傳遞函數,也就可以用數學的方法進行分析,求出零極點,也能分析下它的特性,進而知道改變某個參數會帶來什么影響。而如果直接上電路仿真,當結果不是你想要的的時候,如何知道改哪個參數呢?很容易瞎改一通。

         

        小結

        本節的內容就到這里了,其實主要說明一個問題,就是我們需要知道傳遞函數是什么,有什么用。而且也舉例如何求解一般電路的傳遞函數。

        不過,從前面的定義我們知道,傳遞函數的前提是線性系統。開關電源有開關,是線性系統嗎?

        開關電源還真不是線性系統,所以我們求傳遞函數的時候,需要將其線性化,當然,肯定是指有條件的線性化,需要有一些假設,構建模型,這個過程也是相當的復雜。

        至于具體如何求解傳遞函數,敬請期待下回分解。至于開篇的幾個問題,也留待后面,咱慢慢來。



        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: 開關電源

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 梧州市| 乌鲁木齐县| 合江县| 滕州市| 广宗县| 霸州市| 北宁市| 蓝山县| 论坛| 宜阳县| 阿巴嘎旗| 汶上县| 玉屏| 河曲县| 邻水| 南丹县| 海晏县| 高邑县| 昆山市| 富锦市| 永康市| 五大连池市| 苍溪县| 大邑县| 英山县| 万安县| 武城县| 文化| 民勤县| 贵南县| 江陵县| 景德镇市| 永康市| 鹿泉市| 古丈县| 博湖县| 泰兴市| 龙门县| 长白| 丹东市| 兰溪市|