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