無位置傳感器的電機(jī)控制你知道嗎?看完這篇就懂了
電機(jī)控制一般使用閉環(huán)控制,這就必須使用傳感器,如:霍爾傳感器、編碼盤等。
本文引用地址:http://butianyuan.cn/article/201909/404725.htm但是有的應(yīng)用場合下,難以安裝霍爾傳感器、編碼盤,或者就算是安裝好,也很容易損壞。
霍爾傳感器、編碼盤都屬于位置傳感器。那么,無位置傳感器,是否也能控制電機(jī)?
答案是可以的。
方案
VBUS測量電機(jī)的母線電壓,假設(shè)電機(jī)由直流50V供電,則測量直流50V;由交220V供電,則測量直流310V。
IBUS測量電機(jī)總電流,可用于防過流、電流環(huán)控制。
Demand是給定的轉(zhuǎn)速,用滑動電位器模擬轉(zhuǎn)速的輸入。
AN3、AN4、AN5引腳,用于測量電機(jī)的三相電壓。
這樣一來,沒有了位置傳感器,大大簡化了設(shè)備的安裝步驟。但是,會產(chǎn)生另外的一些問題。
電機(jī)如何啟動?如何換相?如何調(diào)速?
硬件
MOS管驅(qū)動使用L6388ED,其內(nèi)部邏輯可以防止高邊和低邊MOS管同時導(dǎo)通。有自舉電容讓高邊MOS導(dǎo)通。
在單片機(jī)初始化時,要給L6388ED的自舉電容充電一段時間,否則高邊MOS管可能不導(dǎo)通,或者不完全導(dǎo)通。
L6388ED內(nèi)部框圖如圖所示。LIN=1,HIN=0,則LVG導(dǎo)通,HVG不導(dǎo)通,Cboot充電。
L6388ED自舉電容的容值可以由手冊上的公式計算得出,我這里控制低速電機(jī),用的是10uF。
一旦自舉電容充完電手,MOS管可以在一段時間內(nèi)不需要充電,一般是電機(jī)每次啟動時充電。
建議使用15V給L6388ED供電,使用12V的話,可能讓MOS不導(dǎo)通或不完全導(dǎo)通,如下圖所示。
測量三相電壓,如下圖所示,NET_W是W相的電壓,而W可以直接接單片機(jī)的ADC,C11為100nF電容,該電容可以平滑相電壓,不能去掉,否則無法檢測反電動勢。U相和V相與此類似,這里不再贅述。
平滑之后的波形,呈馬鞍型,如下圖所示。
單片機(jī)算法
該算法分三個部分,對齊轉(zhuǎn)子、開環(huán)強(qiáng)制換相、利用反電動勢閉環(huán)換相。
1.對齊轉(zhuǎn)子
先給自舉電容充電,然后強(qiáng)制給某一相PWM,讓轉(zhuǎn)子對齊在一個固定的扇區(qū)。
這種方法在絕大多數(shù)的情況下都能對齊,若不能對齊,會啟動失敗,此時,重新啟動即可。
對齊轉(zhuǎn)子的時間不宜過長,針對本文的低速電機(jī),對齊時間約200ms。
2.開環(huán)強(qiáng)制換相
這里的開環(huán)是指未檢測到反電動勢,強(qiáng)制輸出PWM,并且在預(yù)算好的時間換相,從而讓電機(jī)轉(zhuǎn)起來。
換相的方法,不同的電機(jī)可能不一樣(如:極數(shù)不同),這里使用六步換相,如下圖所示。
其中,+VBUS表示上橋臂給PWM,-VBUS表示下橋臂給高電平導(dǎo)通,斜線表示上、下橋臂均不導(dǎo)通。
上、下橋臂均不導(dǎo)通時,電機(jī)會產(chǎn)生反電動勢。
3.利用反電動勢閉環(huán)換相
理想情況下,上、下橋臂均不導(dǎo)通時,在電機(jī)某一相電壓檢測到反電動勢過零,但是過零時刻和實際要換相的時刻,相差30度角。所以,在檢測到反電動勢過零之后,要延時30度,再換相。
實際情況下,延時的30度還要根據(jù)單片機(jī)內(nèi)部的ADC采樣,濾波算法進(jìn)行補(bǔ)償,這里的補(bǔ)償?shù)慕嵌纫话闶浅暗摹?/p>
假設(shè)超前x度,那么實際換相時刻為(30-x)度。
BEMF就是反電動勢,紅色箭頭指向的是換相時刻,如下圖所示。
但是,ADC采樣的電壓都是正電壓,沒有負(fù),那就需要構(gòu)造一個虛擬中性點。
把三相電壓加起來取平均值,就是虛擬中性點。如下圖所示。
把虛擬中性點當(dāng)作是零點,這樣就能做到過零檢測。
虛擬中性點并不是一個恒定值,它的波形如下圖所示,類似正弦波。
檢測反電動勢過零,有兩種方法,一種是比較器,另一種是ADC采樣后濾波。
用比較器的方法,優(yōu)點是減少單片機(jī)的運(yùn)算量,缺點是增加硬件成本。
用ADC采樣的方法,優(yōu)點是減少硬件成本,缺點是增加單片機(jī)的運(yùn)算量。
由于這里需要用到的ADC采樣率要求不高(20KHz SPS),所以用單片機(jī)內(nèi)部集成的ADC即可。
這里采用ADC采樣的方法。其濾波算法稱為擇多算法,在另一篇博文再詳細(xì)介紹。
注意事項
1.ADC要在PWM高電平的中部采樣,可以避免毛刺的干擾。
2.六步換相的步調(diào)必須正確,否則無法檢測反電動勢。
六步換相有問題,可能不出現(xiàn)紅圈中的豎線,也可能不出現(xiàn)藍(lán)圈中的反電動勢。反電動勢有問題,電機(jī)無法加速。
3.可以使用互補(bǔ)的PWM,也可以使用上橋臂為PWM,下橋臂為高低電平。
4.黃色為經(jīng)過比較器后的波形(非本文使用的方法),藍(lán)色為經(jīng)過電阻分壓和電容濾波后的波形。如下圖所示。
經(jīng)過比較器后的波形會產(chǎn)生三條豎線,這三條豎線是由于換相引起的,所以在換相時,不判斷過零。在不換相時,去抖,判斷邊沿翻轉(zhuǎn)即是過零點,此方法比ADC濾波要簡單一些。
5.換相時刻不正確的波形,如下圖所示。
評論