PWM如何控製直流電機
智能車基礎可是控製電機呀!如何設置頻率,如何控製車的加速,減速,正反轉狀態~。是這篇文章要弄明白的
直流電機
對於(yu) 普通的直流(有刷)電機,在其兩(liang) 個(ge) 電極上接上合適的直流電源後,電機就可以滿速轉動,電源反接後,電機就反向轉動。實際情況是我們(men) 要能控製電機的正反轉,停止等狀態以及電機的轉速。
直流電機正反轉及停止狀態直流有刷電機是內(nei) 含電刷裝置的將直流電能轉換成機械能(直流電動機)或將機械能轉換成直流電能(直流發電機)的旋轉電機。區別於(yu) 直流無刷電機,電刷裝置是用來引入或引出直流電壓和直流電流的。
當單片機輸出高電平時,電機得電,從(cong) 而滿速運行;當單片機輸出低電平時,電機兩(liang) 端沒有電壓,電機停止轉動。
那如何使電機兩(liang) 端的電壓發生變化,進而控製電機的轉速呢?隻要單片機輸出占空比可調的方波,即PWM信號即可控製電機兩(liang) 端的電壓發生變化,從(cong) 而實現電機轉速的控製。
直流電機調速原理VCC(1)→信號1→電機→信號2→GND(0),實現了電機的正轉。
GND(0)→信號1→電機→信號2→VCC(1),實現了電機的反轉。
GND(0)→電機→ GND(0),停轉
VCC(1)→電機→ VCC(1),停轉
阻值小(PWM占空比大,平均電壓大),轉的快
阻值大(PWM占空比小,平均電壓小),轉的慢
PS:0和1代表低電平和高電平,PWM後麵詳細說明。
可以通過改變電壓來控製電機速度。
例如使用12V直流電機時候,給12V的電就滿速轉,給5V的電就是5/12的速度轉
隻要單片機輸出占空比可調的方波,即PWM信號即可控製電機兩(liang) 端的電壓發生變化,從(cong) 而實現電機轉速的控製。
PWMPWM輸出的信號可以看成電壓,而不是實際的電壓,要注意!!
上麵說了,我們(men) 會(hui) 用PWM調速,那麽(me) PWM是啥。
PWM(Pulse Width Modulation)控製——脈衝(chong) 寬度調製技術,通過對一係列脈衝(chong) 的寬度進行調製,來等效地獲得所需要波形(含形狀和幅值)。其具有兩(liang) 個(ge) 很重要的參數:頻率和占空比。
頻率就是周期的倒數,單位Hz(赫茲(zi) )
周期=1/頻率 100HZ就是10ms一個(ge) 周期
如果設置的頻率為(wei) 100Hz,就是說也就是說一個(ge) 周期是10ms 那麽(me) 一秒鍾就有 100次PWM周期
占空比就是高電平在一個(ge) 周期內(nei) 所占的比例,單位 %(百分之)
直接看PWM方波的示意圖,會(hui) 比較容易理解。
首先看周期和脈寬表示:
脈寬(時間):高電平時間
周期:一個(ge) 脈衝(chong) 信號的時間
(從(cong) 幅度開始到下一個(ge) 幅度前結束,高電平(脈寬)時間+低電平時間)
占空比和電壓的關(guan) 係
在上圖中,頻率F的值為(wei) 1/(T1 T2),占空比D的值為(wei) T1/(T1 T2)。通過改變單位時間內(nei) 脈衝(chong) 的個(ge) 數可以實現調頻;通過改變占空比可以實現調壓。
占空比越大,所得到的平均電壓也就越大,幅值也就越大;占空比越小,所得到的平均電壓也就越小,幅值也就越小。
上圖平均電壓我們(men) 可以轉化一下。即5V*20%+0V*80%=1V
如果是12V電機,占空比為(wei) 30%,可以自行算平均電壓了哦12V*30%+0V*70%=3.6V
注意:是相當於(yu) 電壓,實際還是信號
PWM對電機轉速的控製通過以上原理就可以知道,隻要改變PWM信號的占空比,就可以改變直流電機兩(liang) 端的平均電壓,從(cong) 而實現直流電機的調速。
對於(yu) 直流電機來講,電機輸出端引腳是高電平電機就可以轉動,當輸出端高電平時,電機會(hui) 轉動,但速度是一點一點提升的,在高電平突然轉向低電平時,電機由於(yu) 電感有防止電流突變的作用是不會(hui) 停止的,會(hui) 保持這原有的轉速,以此往複,電機的轉速就是周期內(nei) 輸出的平均電壓值,所以實質上我們(men) 調速是將電機處於(yu) 一種,似停非停,似全速轉動又非全速轉動的狀態,那麽(me) 在一個(ge) 周期的平均速度就是我們(men) 占空比調出來的速度了。
在電機控製中,電壓越大,電機轉速越快,而通過PWM輸出不同的模擬電壓,便可以使電機達到不同的輸出轉速當然,在電機控製中,不同的電機都有其適應的頻率 頻率太低會(hui) 導致運動不穩定,如果頻率剛好在人耳聽覺範圍,有時還會(hui) 聽到呼嘯聲。
電機頻率在 6-16kHZ之間為(wei) 好
電機轉數與頻率的關係那我們(men) 在網上買(mai) 的這種小型直流電機都給了轉速,可是我們(men) 和開發板聯合使用前要先設置頻率,這個(ge) 頻率根據什麽(me) 來設置呢?
我現在選擇12V 300轉的電機,我頻率要怎麽(me) 設置。(這裏為(wei) 理論,後續要自己做調整。)
有公式哦-
電機轉速與(yu) 頻率公式:n=60f/p
n——電機轉速
60——每分鍾(秒)
f——電源頻率
p——極對數(我們(men) 用在創客中的這種小馬達默認為(wei) 1也就是3000)
轉換一下就可以通過轉速求我們(men) 應設置的頻率了
f=np/60
我們(men) 之前選的300轉,可以求我們(men) 應設置的頻率了
f=300*3000/60
f=900000/60
f=15000Hz
注意:以上都為(wei) 理論值,實際情況可能會(hui) 很複雜,比如電壓(這裏是按照給的電壓來算的,實際可能提供不了這麽(me) 高的電壓。),使用的驅動芯片之類的。這裏隻是做一個(ge) 參考,因為(wei) 實戰發現,按需調整頻率是個(ge) 細活!——頻率太高電機可能反應不過來,低了又驅動不起來。謹以此參考,後續需要朋友們(men) 慢慢去調試。!