PWM和SPWM的区别
最近工作中上接觸到PWM和SPWM,雖然這兩個名字差不多,但是不管是在功能上還是生成的原理上都是有不同的,包括我們不是很常見的SVPWM波,你們是否也有疑惑這三個之間都有啥關(guān)系,今天我們好好分析下它們。
-
PWM
???PWM(Pulse Width Modulation) 簡稱脈沖寬度調(diào)制,是利用微處理器的數(shù)字信號輸出來對模擬電路進行控制的一種技術(shù)。而且PWM的應用可以說是非常的廣泛,我們可以用來控制電機的速度,產(chǎn)品上常用的呼吸燈的效果以及在通信的調(diào)制等領(lǐng)域都可以看到PWM的應用。
PWM頻率
? ? 指1秒鐘內(nèi)信號從高電平到低電平再回到高電平的次數(shù)(一個周期),即1秒鐘內(nèi)有多少個PWM周期,單位HZ。
PWM周期
? ? T=1/f PWM的周期等于頻率的倒數(shù)
PWM占空比
? ?是指在一個脈沖周期內(nèi),高電平的時間與整個周期時間的比例,常以百分數(shù)來表示,比如20%。
脈寬時間
? ?脈寬時間即為上圖中高電平的時間,在上圖中脈寬時間占總周期的比例就是我們常說的占空比。
PWM產(chǎn)生原理
? ? 以我們目前常用的MCU中STM32為例,STM32的普通IO口輸出的是數(shù)字信號,即只能輸出高電平或者低電平,同時我們也了解電壓是以一種連接1或斷開0的重復脈沖序列被夾到模擬負載上去,連接即使直流供電輸出,斷開即是直流供電斷。理論上來講我們可以通過控制PWM波的占空比輸出任意不大于最大電壓值(比如0-3.3V之間任意大小)的模擬電壓。
? ? 我們一般在實際應用的時候可以有多重方式產(chǎn)生我們想要的PWM波:
通過延時控制IO口高低電平獲得PWM波形:
while(1) { IO口高電平; IO口延時; IO口低電平; IO口延時;}?定時器中斷控制IO口高低電平輸出:
配置定時器中斷并初始化定時器 TIM_IRQHandle() { 執(zhí)行拉高電平; 再次中斷執(zhí)行拉低電平; 對應引腳輸出PWM波;}定時器PWM硬件控制輸出:
1.初始化定時器為輸出比較的PWM模式,并配置輸出頻率; 2.使能定時器的輸出; 3.通過修改定時器中CCR寄存器中的比較值輸出不同的占空比以上三種方式是比較常見的輸出PWM的三種方式,這三種都會占用CPU的資源,特別是前兩種方式,誤差還比較大,當然前兩種方式可以用于沒有硬件PWM輸出的MCU,第三種方式是我們比較常見的PWM輸出方式,相比于前兩種配置簡單,輸出精度比較高。
-
SPWM
? ? ? ?SPWM(Sinusoidal PWM)全稱是正弦脈沖寬度調(diào)制,是一種 廣泛應用于電機驅(qū)動,逆變電源等領(lǐng)域的調(diào)制技術(shù)。SPWM波是一種按正弦規(guī)律變化的一種PWM波形,是PWM的一種延伸,是一種可以等效成正弦波效果的PWM技術(shù)。
? ? ? SPWM的基本原理就是面積等效原理,即沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時,其效果基本相同。?我們在生成SPWM的過程中通常使用的采樣方式有:自然采樣法和規(guī)則采樣法。
自然采樣法:
? ? ? 自然采樣法是用需要調(diào)制的正弦波與載波鋸齒波的交點來確定最終PWM脈沖所需要輸出的時間寬度,最終由此生成SPWM波。
? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? SPWM波形
規(guī)則采樣法:
? ? ??根據(jù)PWM的電壓極性,可以將SPWM波分為單極性和雙極性。單極性的SPWM在正弦波的正半周期,PWM只有一種極性;在正弦波的負半周期,PWM同樣只有一種極性,但是與正半周期恰恰相反,如下圖所示。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 單極性的SPWM
? ? 由圖可以看出,SPWM波是信號等幅,等周期單不等寬的脈沖序列。我們改變調(diào)制波(即正弦波)的幅值時,SPWM脈沖信號的脈寬將隨之改變,從而改變輸出電壓的大小;當我們改變調(diào)制波的頻率時,輸出信號的基波頻率也隨之改變,因此我們可以實現(xiàn)即調(diào)壓有調(diào)頻的目的。
?? ?與單極性SPWM模式相比,雙極性SPWM控制電路比較簡單,單極性SPWM模式要比雙極性SPWM模式輸出電壓中高次諧波分量小得多,這是單極性模式的一個優(yōu)點,雙極性SPWM波形如下。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?雙極性SPWM
SPWM生成原理:
? ? ?根據(jù)要輸出的SPWM頻率可以通過計算設(shè)置TIM定時器ARR寄存器的值,以此控制TIM定時器輸出波形頻率;
? ? 設(shè)置調(diào)制比,即正弦波的幅值比上載波(鋸齒波)的幅值;
? ? 利用SPWM波表格生成軟件生成正弦數(shù)據(jù)表,然后在實際的程序中通過查表去獲得CCR的值,進而生成不同占空比的波形。
-
總結(jié):
本文主要介紹了PWM波和SPWM波的區(qū)別,包括軟件生成的原理,由于篇幅有限下一次我們繼續(xù)介紹SVPWM。
原創(chuàng)不易,如果本文幫助到了你,請轉(zhuǎn)發(fā),點贊,分享給你的朋友。由于作者能力和水平有限,文中難免存在錯誤和紕漏,請不吝賜教。微信點擊關(guān)注菜鳥充電寶,學習更多知識。
總結(jié)
以上是生活随笔為你收集整理的PWM和SPWM的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win10家庭版如何使用远程桌面功能
- 下一篇: 一文搞懂什么是PWM!