一個周期的長度,如下圖所示。
其中,周期是一個脈沖信號的時間,1s內的周期T次數(shù)等于頻率f,脈寬時間是指高電平時間。
上圖中,脈寬時間占總周期時間的比例,就是占空比。比方說,周期的時間是10ms,脈寬時間是8ms,那么占空比是8/10= 80%,這就是占空比為80%的脈沖信號。
PWM就是脈沖寬度調制,通過調節(jié)占空比就可以調節(jié)脈沖寬度。
PWM原理
以STM32單片機為例,其IO口只能輸出高電平和低電平。
假設高電平為5V、低電平則為0V,那么要輸出不同的模擬電壓就要用到PWM。通過改變IO口輸出的方波的占空比,從而獲得使用數(shù)字信號模擬成的模擬電壓信號。
電壓是以一種脈沖序列被加到模擬負載上去的,接通時是高電平1,斷開時是低電平0。接通時直流供電輸出,斷開時直流供電斷開。通過對接通和斷開時間的控制,理論上來講,可以輸出任意不大于最大電壓值5V的模擬電壓。
比方說,占空比為50%那就是高電平時間一半,低電平時間一半。在一定的頻率下,就可以得到模擬的2.5V輸出電壓。那么75%的占空比,得到的電壓就是3.75V,如下圖所示。
也就是說,在一定的頻率下,通過不同的占空比即可得到不同大小的輸出模擬電壓,PWM就是通過這種原理實現(xiàn)數(shù)字模擬信號轉換的。
PWM應用
LED呼吸燈
以經常使用的呼吸燈舉例。
一般人眼睛對于80Hz以上刷新頻率則完全沒有閃爍感,那么我們平時見到的LED燈,當它的頻率大于50Hz的時候,人眼就會產生視覺暫留效果,基本就看不到閃爍了,而是誤以為是一個常亮的LED燈。
由于頻率很高時看不到閃爍,占空比越大LED越亮,占空比越小LED越暗,相關實例:詳解STM32呼吸燈的PWM實現(xiàn)。在頻率一定時,可以用不同占空比改變LED燈的亮度,使其達到一個呼吸燈的效果。
PWM對電機轉速的控制
調節(jié)占空比可以實現(xiàn)不同電壓的輸出,實現(xiàn)對電機轉速的調節(jié)。
對于直流電機來講,電機輸出端引腳是高電平電機就可以轉動,當輸出端高電平時,電機會轉動,但是是一點一點的提速,在高電平突然轉向低電平時,電機由于電感有防止電流突變的作用是不會停止的,會保持這原有的轉速,以此往復,電機的轉速就是周期內輸出的平均電壓值,所以實質上我們調速是將電機處于一種,似停非停,似全速轉動又非全速轉動的狀態(tài),那么在一個周期的平均速度就是我們占空比調出來的速度了。
在電機控制中,電壓越大,電機轉速越快,而通過PWM輸出不同的模擬電壓,便可以使電機達到不同的輸出轉速,相關文章:介紹常見電機的控制算法。當然,在電機控制中,不同的電機都有其適應的頻率。
頻率太低會導致運動不穩(wěn)定,如果頻率剛好在人耳聽覺范圍,有時還會聽到呼嘯聲。頻率太高時,電機可能反應不過來,正常的電機頻率在 6-16kHZ之間為好。
PWM對舵機的控制
舵機的控制就是通過一個固定的頻率,給其不同的占空比來控制舵機不同的轉角。
舵機的頻率一般為頻率為50HZ,也就是一個20ms左右的時基脈沖,而脈沖的高電平部分一般為0.5ms-2.5ms范圍,來控制舵機不同的轉角。
500-2500us的PWM高電平部分對應控制180度舵機的0-180度。
以180度角度伺服為例,那么對應的控制關系是這樣的:
1 0.5ms--------0度;
2 1.0ms--------45度;
3 1.5ms--------90度;
4 2.0ms--------135度;
5 2.5ms--------180度;
經常使用的直流電機原理就是電生磁:通電導線會產生磁場,也就是電磁感應旋轉磁場帶動轉子轉動。電動機是由定子和轉子組成,一個產生旋轉磁場,一個為磁極,電機的轉子(軸承)就轉起來了。
這便實現(xiàn)了電能->磁能->機械能的轉換。下面這個圖可以更直觀的理解:
免責聲明: 本文章轉自其它平臺,并不代表本站觀點及立場。若有侵權或異議,請聯(lián)系我們刪除。謝謝! |