脈寬調制PWM是開關型穩壓電源中的術語。這是按穩壓的控制方式分類的,除了PWM型,還有PFM型和PWM、PFM混合型。脈寬寬度調制式(PWM)開關型穩壓電路是在控制電路輸出頻率不變的情況下,通過電壓反饋調整其占空比,從而達到穩定輸出電壓的目的。
随着電子技術的發展,出現了多種PWM技術,其中包括:相電壓控制PWM、脈寬PWM法、随機PWM、SPWM法、線電壓控制PWM等,而在鎳氫電池智能充電器中采用的脈寬PWM法,它是把每一脈沖寬度均相等的脈沖列作為PWM波形,通過改變脈沖列的周期可以調頻,改變脈沖的寬度或占空比可以調壓,采用适當控制方法即可使電壓與頻率協調變化。可以通過調整PWM的周期、PWM的占空比而達到控制充電電流的目的。
pwm的定義
脈寬調制(PWM)是利用微處理器的數字輸出來對模拟電路進行控制的一種非常有效的技術,廣泛應用在從測量、通信到功率控制與變換的許多領域中。
模拟信号的值可以連續變化,其時間和幅度的分辨率都沒有限制。9V電池就是一種模拟器件,因為它的輸出電壓并不精确地等于9V,而是随時間發生變化,并可取任何實數值。與此類似,從電池吸收的電流也不限定在一組可能的取值範圍之内。模拟信号與數字信号的區别在于後者的取值通常隻能屬于預先确定的可能取值集合之内,例如在{0V,5V}這一集合中取值。
模拟電壓和電流可直接用來進行控制,如對汽車收音機的音量進行控制。在簡單的模拟收音機中,音量旋鈕被連接到一個可變電阻。擰動旋鈕時,電阻值變大或變小;流經這個電阻的電流也随之增加或減少,從而改變了驅動揚聲器的電流值,使音量相應變大或變小。與收音機一樣,模拟電路的輸出與輸入成線性比例。
盡管模拟控制看起來可能直觀而簡單,但它并不總是非常經濟或可行的。其中一點就是,模拟電路容易随時間漂移,因而難以調節。能夠解決這個問題的精密模拟電路可能非常龐大、笨重(如老式的家庭立體聲設備)和昂貴。模拟電路還有可能嚴重發熱,其功耗相對于工作元件兩端電壓與電流的乘積成正比。模拟電路還可能對噪聲很敏感,任何擾動或噪聲都肯定會改變電流值的大小。
通過以數字方式控制模拟電路,可以大幅度降低系統的成本和功耗。此外,許多微控制器和DSP已經在芯片上包含了PWM控制器,這使數字控制的實現變得更加容易了。
pwm的工作原理
脈沖寬度調制波通常由一列占空比不同的矩形脈沖構成,其占空比與信号的瞬時采樣值成比例。圖1所示為脈沖寬度調制系統的原理框圖和波形圖。該系統有一個比較器和一個周期為Ts的鋸齒波發生器組成。語音信号如果大于鋸齒波信号,比較器輸出正常數A,否則輸出0。因此,從圖1中可以看出,比較器輸出一列下降沿調制的脈沖寬度調制波。
通過圖1b的分析可以看出,生成的矩形脈沖的寬度取決于脈沖下降沿時刻tk時的語音信号幅度值。因而,采樣值之間的時間間隔是非均勻的。在系統的輸入端插入一個采樣保持電路可以得到均勻的采樣信号,但是對于實際中tk-kTs<<Ts的情況,均勻采樣和非均勻采樣差異非常小。如果假定采樣為均勻采樣,第k個矩形脈沖可以表示為:
(1)
其中,x{t}是離散化的語音信号;Ts是采樣周期;是未調制寬度;m是調制指數。
然而,如果對矩形脈沖作如下近似:脈沖幅度為A,中心在t=kTs處,Tk在相鄰脈沖間變化緩慢,則脈沖寬度調制波Xp(t)可以表示為:
(2)
其中
。無需作頻譜分析,由式(2)可以看出脈沖寬度信号由語音信号x(t)加上一個直流成分以及相位調制波構成。當T0<<Ts時,相位調制部分引起的信号交疊可以忽略,因此,脈沖寬度調制波可以直接通過低通濾波器進行解調。
數字脈沖寬度調制器的實現:
實現數字脈沖寬度調制器的基本思想參看圖2。
圖中,在時鐘脈沖的作用下,循環計數器的5位輸出逐次增大。5位數字調制信号用一個寄存器來控制,不斷于循環計數器的輸出進行比較,當調制信号大于循環計數器的輸出時,比較器輸出高電平,否則輸出低電平。循環計數器循環一個周期後,向寄存器發出一個使能信号EN,寄存器送入下一組數據。在每一個計數器計數周期,由于輸入的調制信号的大小不同,比較器輸出端輸出的高電平個數不一樣,因而産生出占空比不同的脈沖寬度調制波。
圖3
為了使矩形脈沖的中心近似在t=kTs處,計數器所産生的數字碼不是由小到大或由大到小順序變化,而是将數據分成偶數序列和奇數序列,在一個計數周期,偶數序列由小變大,直到最大值,然後變為對奇數序列計數,變化為由大到小。如圖3例子。
奇偶序列的産生方法是将計數器的最後一位作為比較數據的最低位,在一個計數周期内,前半個周期計數器輸出最低位為0,其他高位逐次增大,則産生的數據即為偶數序列;後半個周期輸出最低位為1,其餘高位依次減小,産生的數據為依次減小的偶序列。具體電路可以由以下電路圖表示:
8051中的PWM模塊設計:
應該稱為一個适合語音處理的PWM模塊,輸出引腳應該外接一積分電路。輸出波形的方式适合作語音處理。設計精度為8位。
PWM模塊應包括:
1、比較部分(Comp):
2、計數部分(Counter):
3、狀态及控制信号寄存/控制器(PWM_Ctrl);
1)狀态積寄存器:(Flags),地址:E8H;
①EN:PWM模塊啟動位,置位為„1‟将使PWM模塊開始工作;
②(留空備用)
③④解調速率标志位:00–無分頻;01–2分頻;10–10分頻;11–16分頻。(RESET後為00)
⑤(留空備用)
⑥(留空備用)
⑦(留空備用)
⑧(留空備用)
注意:該寄存器可以位操作情況下可寫,不可讀;隻能在字節操作方式下讀取。
2)數據寄存器(DataStore),地址:F8H;注意:該寄存器值不可讀,隻可寫。
4、端口:
1)數據總線(DataBus);(雙向)
2)地址總線(AddrBus);(IN)
3)PWM波輸出端口(PWMOut);(OUT)
4)控制線:
① CLK:時鐘;(IN)
② Reset:異步複位信号;(IN低電平有效)
③ WR:寫PWMRAM信号;(IN低電平有效);
④ RD:讀PWMRAM信号;(IN低電平有效)
⑤ DONE:接受完畢反饋信号;(OUT高電平有效)
⑥ INT:中斷申請信号;(OUT低電平有效)
⑦ IntResp:中斷響應信号;(In低電平有效)
⑧ ByteBit:字節/位操作控制信号(IN1-BYTE0-BIT);
⑨⑩中斷占用相當于MCU8051的外部中斷2,則可保證在5個指令周期之内,“讀取數據”中斷必定得到響應。
PWM模塊使用方法:因為占用了8051外部中斷1,所以在不使用該模塊時,應該把外部中斷2屏蔽。而PWM模塊産生的中斷請求可以看作是“能接受數據”的信号。中斷方法如後“中斷讀取數據過程”。使用PWM模塊,應該先對内部地址8FH的數據寄存器寫入數據,然後設置地址8EH的狀态寄存器最低位(0)為"1",即PWM模塊開始工作并輸出PWM調制波(如TIMER模塊)。在輸出PWM調制波過程中,應及時對PWM寫入下一個調制數據,保證PWM連續工作,輸出波形連續。
中斷讀取數據過程:
1.PWM模塊可以讀取數據,申請中斷信号INT置位為„0‟,等待8051響應;
2.8051接受到中斷申請後,作出中斷響應,置位IntResp信号線為„0‟;
3.PWM模塊收到IntResp信号後,把中斷申請信号INT複位為„1‟,等待8051通知讀取數據WR信号;
4.8051取出要求數據放于數據總線(DataBus)上,并置WR信号為„0‟;
5.PWM模塊發現WR信号為„0‟,由數據總線(DataBus)上讀取數據到内部數據寄存器,将DONE位置位為„1‟;
6.8051發現DONE信号的上跳變為„1‟,釋放數據總線;
7.PWM模塊完成當前輸出周期,複位DONE為„0‟,從此當前數據寄存器可以再次接受數據輸入。
注意事項:
1)輸出的PWM信号中的高電平部分必須處于一個輸出周期的中間,不能偏離,否則輸出語音經過低通後必定是一失真嚴重的結果。
2)對于8位精度的PWM,每個輸出周期占用256(28)個機器周期,但是包含256個機器周期至少有22個指令周期,亦即264(22*12)個機器周期,由于語音信号的連續性,256與264之間相差的8個機器周期是不能由之丢空的,否則也會使輸出信号失真。如果将須輸出數字量按256/264的比例放大輸出,亦不可行,因為如此非整數比例放大,放大倍數很小,則經過再量化後小數部分亦會被忽略掉,産生失真。舉例:輸出數字量為16,按比例放大後為16.5,更會産生難以取舍的問題。
故采取以下辦法:該模塊以時鐘周期為标準,而與TMBus無關,即基本上與8051部分異步工作。讀取數據方式為每次讀取足夠數據段儲存于模塊内的RAM内(暫定每次讀取8字節),儲存字節數必須能保證PWM輸出該段數據過程中,有足夠時間從RAM處繼續讀取數據。由于占用了8051的外部中斷2,中斷申請在3個指令周期(36個時鐘周期)内必定能得到響應,而PWM模塊處理一個數據需要固定耗時256個時鐘周期,故能保證PWM模塊順序讀取數據中斷能及時得到響應,不會影響調制信号的連續性。
3)RDRAM過程是異步過程。
4)輸出後數據寄存器不自動清零。因為可以通過把Flags(0)寫„0‟而停止PWM模塊繼續工作。
PWM技術的具體應用
PWM軟件法控制充電電流
本方法的基本思想就是利用單片機具有的PWM端口,在不改變PWM方波周期的前提下,通過軟件的方法調整單片機的PWM控制寄存器來調整PWM的占空比,從而控制充電電流。本方法所要求的單片機必須具有ADC端口和PWM端口這兩個必須條件,另外ADC的位數盡量高,單片機的工作速度盡量快。在調整充電電流前,單片機先快速讀取充電電流的大小,然後把設定的充電電流與實際讀取到的充電電流進行比較,若實際電流偏小則向增加充電電流的方向調整PWM的占空比;若實際電流偏大則向減小充電電流的方向調整PWM的占空比。在軟件PWM的調整過程中要注意ADC的讀數偏差和電源工作電壓等引入的紋波幹擾,合理采用算術平均法等數字濾波技術。
來源:網絡整理,如涉及版權問題,請及時聯系删除
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!