什么是PWM
脈沖寬度調制是利用微處理器的數字輸出來對模擬電路進行控制的一種非常有效的技術,廣泛應用在從測量、通信到功率控制與變換的許多領域中。
脈沖寬度調制是一種模擬控制方式,其根據相應載荷的變化來調制晶體管基極或MOS管柵極的偏置,來實現晶體管或MOS管導通時間的改變,從而實現開關穩壓電源輸出的改變。這種方式能使電源的輸出電壓在工作條件變化時保持恒定,是利用微處理器的數字信號對模擬電路進行控制的一種非常有效的技術。
PWM控制技術以其控制簡單,靈活和動態響應好的優點而成為電力電子技術最廣泛應用的控制方式,也是人們研究的熱點。由于當今科學技術的發展已經沒有了學科之間的界限,結合現代控制理論思想或實現無諧振波開關技術將會成為PWM控制技術發展的主要方向之一。其根據相應載荷的變化來調制晶體管基極或MOS管柵極的偏置,來實現晶體管或MOS管導通時間的改變,從而實現開關穩壓電源輸出的改變。這種方式能使電源的輸出電壓在工作條件變化時保持恒定,是利用微處理器的數字信號對模擬電路進行控制的一種非常有效的技術。
PWM詳細過程
脈沖寬度調制(PWM)是一種對模擬信號電平進行數字編碼的方法。通過高分辨率計數器的使用,方波的占空比被調制用來對一個具體模擬信號的電平進行編碼。PWM信號仍然是數字的,因為在給定的任何時刻,滿幅值的直流供電要么完全有(ON),要么完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復脈沖序列被加到模擬負載上去的。通的時候即是直流供電被加到負載上的時候,斷的時候即是供電被斷開的時候。只要帶寬足夠,任何模擬值都可以使用PWM進行編碼。
多數負載(無論是電感性負載還是電容性負載)需要的調制頻率高于10Hz,通常調制頻率為1kHz到200kHz之間。
許多微控制器內部都包含有PWM控制器。例如,Microchip公司的PIC16C67內含兩個PWM控制器,每一個都可以選擇接通時間和周期。占空比是接通時間與周期之比;調制頻率為周期的倒數。執行PWM操作之前,這種微處理器要求在軟件中完成以下工作:
1、設置提供調制方波的片上定時器/計數器的周期
2、在PWM控制寄存器中設置接通時間
3、設置PWM輸出的方向,這個輸出是一個通用I/O管腳
4、啟動定時器
5、使能PWM控制器
如今幾乎所有市售的單片機都有PWM模塊功能,若沒有(如早期的8051),也可以利用定時器及GPIO口來實現。更為一般的PWM模塊控制流程為(筆者使用過TI的2000系列,AVR的Mega系列,TI的LM系列):
1、使能相關的模塊(PWM模塊以及對應管腳的GPIO模塊)。
2、配置PWM模塊的功能,具體有:
①:設置PWM定時器周期,該參數決定PWM波形的頻率。
②:設置PWM定時器比較值,該參數決定PWM波形的占空比。
③:設置死區(deadband),為避免橋臂的直通需要設置死區,一般較高檔的單片機都有該功能。
④:設置故障處理情況,一般為故障是封鎖輸出,防止過流損壞功率管,故障一般有比較器或ADC或GPIO檢測。
⑤:設定同步功能,該功能在多橋臂,即多PWM模塊協調工作時尤為重要。
3、設置相應的中斷,編寫ISR,一般用于電壓電流采樣,計算下一個周期的占空比,更改占空比,這部分也會有PI控制的功能。
4、使能PWM波形發生。
PWM信號產生電路
開關電源他激控制方式有脈寬調制(PWM)和脈頻調制(PFM),其中,大部分都采用PWM方式,因此,現簡介PWM控制原理。圖所示為PWM信號產生電路框圖及工作波形,其工作過程如下:對被控制電壓Uo。進行檢測所得的反饋電壓Ur加至放大器Al的同相輸入端,固定的參考電壓Uo加至A1的反相輸入端。經A1放大后的直流誤差電壓Ue加至比較器A2的反相輸入端,由固定頻率振蕩器產生的鋸齒波信號Usa加至A2的同相輸入端。A2輸出方波信號,其占空比隨誤差電壓而變化,即實現了脈寬調制。對于單管變換器,A2輸出的PWM信號即可作為控制功率晶體管的開關信號,對于推挽或橋式等功率變換電路,則應將PWM信號分為兩組信號,即分相。分相電路由觸發器及兩個“與”門組成,觸發器的時鐘信號對應于鋸齒波的下降沿。A端和B端輸出兩組相差180°的PWM信號。
(a)PWM信號產生電路框圖;(b)工作波形
基于PWM快速產生模擬電壓的方法
1、概述
在電子和自動化技術的應用中,數字信號轉換模擬控制信號輸出是電子設計中常見的問題,然而許多單片機內部并沒有集成數摸轉換器(DAC)。當然市場上也有一些專用的D/A轉換芯片,但這類芯片價格昂貴,并且需要多個處理器功能管腳來控制,這對一般的簡單應用是不適合的。
所以在有些應用中,由單片機的PWM輸出(或者通過定時器和軟件一起來實現PWM輸出),經過簡單RC濾波電路實現DAC來得到模擬電壓是一種比較好的選擇。然后,這種方法的一個缺點就是電平轉換時間過長,本文提出了一種新的方法來克服該問題。
2、RC濾波電路
圖1是傳統的RC濾波電路,PSoC通過GPIO口和RC濾波產生模擬電壓
圖1,RC濾波電路產生模擬電壓
在這種方法中,PWM通過Px[y]輸出,Vout即是需要的模擬電壓。PWM的輸出在電壓VDD和0之間變換,PWM的占空比(DC)決定Vout的輸出值。增加DC輸出電壓也會跟著增加(當DC=0%時,Vout=GND;當DC=100%時,Vout=VDD)。
這種方法比較簡單,但缺點是電平轉換時間長。例如,當DC從一個值變到另一個值時,可能要幾個ms才能使Vout從一個電壓變換到最終的穩定電壓,如圖2所示。
圖2,RC濾波電路的電平轉換時間
較長的電平轉換時間在有些應用中是不適用的,下面我將提供一個新的方法來減小該時間。當然,也可通過減小電容電阻(RC)值并提高PWM頻率來縮短電平轉換時間,但有些單片機的固有缺陷而沒辦法提高PWM頻率時就沒辦法了。
3、電壓跟隨器電路
本文介紹一種新的方法能把轉換時間減小到幾十us,該方法除了RC濾波外,還使用了電阻、三極管以及另外一個GPIO口,三極管設計為電壓跟隨器模式,如下圖3所示:
圖3,電壓跟隨器電路產生模擬電壓
三極管T是模擬電壓Vc到Vout的開關。在空閑狀態下設置Pa[b]為“strongdrive”模式,并置為高電平(邏輯1),這樣,Vout=VDD,下列步驟將使Vout從空閑狀態變換到指定的電壓狀態。
1)使能PWM并設定為指定的占空比DC。在計算PWN占空比時要考慮到三極管be間的壓降(Vbe)。Vc=Vout+Vbe,得出DC=(Vout+Vbe)/VDD.
2)做足夠長時間的延遲以使Vc穩定在指定的電壓,注意在這延遲的時間內Vout保持高電平VDD。
3)設置GPIO口Pa[b]的驅動模式為“High-Zanalog”,這將導致三極管T工作狀態并且Vout將立即變為指定的最終電壓(只需要幾十個微秒)。
下列步驟將使Vout從指定的電壓變換到空閑狀態(Vout=VDD)
1)設置Pa[b]的驅動模式為“strongdrive”并置該PIN為高電平,Vout將立即變為VDD.
2)如果需要,此時可停止Px[y]口的PWM以減小功耗。
電平轉換如圖4所示,當Vc在電壓下降的非穩態過程中,Vout還保持高電平。
圖4,電壓跟隨器電路的電平轉換時間
4、實驗和測試結果
在Cypress的CY8C20x24系列芯片中,無PWM模塊,所以若需要輸出模擬電壓就只能使用內部的TImer13模塊產生PWM,然后使用外圍電路產生模擬電壓。下面以CY8C20224芯片為例來說明兩種模擬電壓產生方法的測試情況。
1)使用RC電路做測試
由于CY8C20224提供的Timer13其輸入時鐘為32KHz,所以由此產生的PWM頻率比較低。為了減小模擬電壓值的紋波,必須提高RC電路的電阻電容值。在實驗電路中R=47K,C=0.1uF。下圖5是用示波器抓到的波形。
圖5,RC濾波電路的電平轉換波形
從上圖可以看出,當電壓從空閑狀態(VDD=3.3V)變換到穩定電壓1.0V時,大約需要13~15ms.
這在有些應用中是不夠的。
2)采用電壓跟隨器電路測試
若采用電壓跟隨器電路,電壓從空閑狀態(VDD=3.3V)變換到穩定電壓1.0V時,需要的時間不超過50us,如下圖6所示:
圖6,電壓跟隨器電路的電平轉換波形
-
PWM
+關注
關注
115文章
5277瀏覽量
216885 -
模擬電壓
+關注
關注
6文章
64瀏覽量
18511
發布評論請先 登錄
相關推薦
一種簡易PWM溫控風扇電路設計

基于RC濾波電路的PWM快速產生模擬電壓的方法介紹
一種簡單的三相電壓型PWM 整流器控制方法
一文解析從數字PWM信號獲得準確、快速穩定的模擬電壓

來自數字PWM信號的準確、快速建立模擬電壓

評論