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