馮 浩,蔣 鵬,毛 毅
(杭州電子科技大學(xué),杭州 310018)
?
基于STM32的行波超聲波電動(dòng)機(jī)定位控制系統(tǒng)研究
馮 浩,蔣 鵬,毛 毅
(杭州電子科技大學(xué),杭州 310018)
針對超聲波電動(dòng)機(jī)自鎖能力強(qiáng)、響應(yīng)速度快的特點(diǎn),提出了一種基于STM32的超聲波電動(dòng)機(jī)直線定位方法。通過對光電編碼器產(chǎn)生的信號(hào)再次處理,精確控制超聲波電動(dòng)機(jī)的旋轉(zhuǎn)角度,進(jìn)而達(dá)到利用超聲波電動(dòng)機(jī)進(jìn)行高精度定位的目的,使直線定位系統(tǒng)的誤差進(jìn)一步減小。實(shí)驗(yàn)結(jié)果表明,該方法能較好地達(dá)到利用超聲波電動(dòng)機(jī)進(jìn)行高精度定位的目的。
超聲波電動(dòng)機(jī);STM32;高精度;定位控制
行波超聲波電動(dòng)機(jī)(以下簡稱USM)作為新興的運(yùn)動(dòng)控制部件,其結(jié)構(gòu)及運(yùn)行原理同以往的電磁電動(dòng)機(jī)有很大的區(qū)別。USM依靠壓電材料的逆壓電效應(yīng)實(shí)現(xiàn)能量轉(zhuǎn)換,通過定子和轉(zhuǎn)子之間的摩擦耦合來傳遞驅(qū)動(dòng)力的。它具有定位精度高、抗惡劣環(huán)境、轉(zhuǎn)矩大、自鎖能力強(qiáng)等優(yōu)勢[1],這些優(yōu)勢使得USM在工業(yè)控制領(lǐng)域、精密定位系統(tǒng)、相機(jī)調(diào)焦等方面得到了較為廣泛的使用[2]。
USM是一類非線性的控制對象,而且具有時(shí)變特,因此,在對USM的定位控制上具有較大的難度。在比較充分研究電機(jī)系統(tǒng)特征的基礎(chǔ)上,根據(jù)控制要求,有針對性的設(shè)計(jì)USM的控制方法[3]。USM在實(shí)際運(yùn)行中,隨著時(shí)間的累積,電機(jī)的溫度會(huì)上升,轉(zhuǎn)速下降,即產(chǎn)生了蠕動(dòng)。這對于需要穩(wěn)速應(yīng)用的控制系統(tǒng)帶來了比較大的困難。
為了解決這些問題,本文使用型號(hào)為USR60-E3的USM,在實(shí)驗(yàn)系統(tǒng)開發(fā)研究的基礎(chǔ)上,提出了基于STM32的直線定位方法。
1.1 行波USM的工作原理
行波USM作為新興的運(yùn)動(dòng)控制部件,它的結(jié)構(gòu)及運(yùn)行原理和以往的電磁電動(dòng)機(jī)不同,USM依靠壓電材料自身的逆壓電效應(yīng)實(shí)現(xiàn)機(jī)電能量轉(zhuǎn)換。圖1為壓電材料的逆壓電效應(yīng)。
圖1 逆壓電效應(yīng)
如圖1所示,當(dāng)對壓電材料的兩端分別施以不同方向的電壓時(shí),壓電材料就會(huì)被拉伸或者被壓縮,即為壓電材料的逆壓電效應(yīng)。USM就是利用壓電材料自身的逆壓電效應(yīng)來產(chǎn)生機(jī)械振動(dòng),再把該振動(dòng)轉(zhuǎn)換成旋轉(zhuǎn)或直線運(yùn)動(dòng)等多種形式。其能量轉(zhuǎn)換過程如圖2所示。
圖2 能量轉(zhuǎn)換過程
USM在實(shí)際轉(zhuǎn)動(dòng)的過程中,會(huì)涉及到兩個(gè)能量的變換過程。首先,由壓電材料自身的逆壓電效應(yīng)產(chǎn)生機(jī)械振動(dòng),把電能轉(zhuǎn)換為機(jī)械能。其次,彈性體的微觀振動(dòng)通過定子和轉(zhuǎn)子之間的摩擦耦合,使移動(dòng)體沿著某一方向進(jìn)行連續(xù)的宏觀運(yùn)動(dòng),從而把彈性體的超聲振動(dòng)的能量轉(zhuǎn)換成轉(zhuǎn)子的動(dòng)能[4]。
1.2 USM的運(yùn)行性能
本文的控制對象是型號(hào)為USR60-E3的USM,同時(shí)使用對應(yīng)的電機(jī)驅(qū)動(dòng)器。實(shí)驗(yàn)過程中,對該電機(jī)轉(zhuǎn)速特性進(jìn)行了實(shí)際測定,并繪制了外部輸入調(diào)速電壓與轉(zhuǎn)速的曲線圖,曲線圖如圖3所示。由圖3可知,電壓在0.5~2.2 V區(qū)間內(nèi),USM的外部輸入調(diào)速電壓與轉(zhuǎn)速的關(guān)系總體上呈線性變化。
圖3 外部輸入調(diào)速電壓與轉(zhuǎn)速的曲線圖
2.1 定位控制原理
本定位控制系統(tǒng)采用的光電編碼器的分辨率為1 000線/圈,為了使系統(tǒng)的定位精度進(jìn)一步提高,需要在信號(hào)檢測的精度方面進(jìn)一步提高。本定位控制系統(tǒng)采用對光電編碼器的信號(hào)進(jìn)行細(xì)分,在一個(gè)脈沖周期內(nèi)使用定時(shí)器來計(jì)數(shù),脈沖周期不同,定時(shí)器的計(jì)數(shù)值就不同,這樣就可以實(shí)現(xiàn)精度的提高[5]。
高頻插值的實(shí)現(xiàn)方法首先是用STM32的外部中斷將光電編碼器的脈沖信號(hào)的下降沿進(jìn)行捕獲。當(dāng)編碼器脈沖的下降沿第一次被檢測到時(shí),產(chǎn)生中斷,同時(shí)定時(shí)器開始啟動(dòng)。定時(shí)器在系統(tǒng)開始定位之前,就已經(jīng)配置好,只是未啟動(dòng)。啟動(dòng)定時(shí)器后,定時(shí)器的計(jì)數(shù)器就會(huì)開始計(jì)數(shù),在光電編碼器下一個(gè)脈沖下降沿到來之前,該計(jì)數(shù)器一直在進(jìn)行計(jì)數(shù)。如果計(jì)數(shù)器計(jì)到設(shè)定值,產(chǎn)生中斷,將該計(jì)數(shù)器復(fù)位,并記錄進(jìn)入中斷的次數(shù)。如果光電編碼器的輸出脈沖下降沿再次被檢測到時(shí),便停止計(jì)數(shù),將定時(shí)器的預(yù)設(shè)值乘以進(jìn)入中斷的次數(shù)加上計(jì)數(shù)器寄存器的當(dāng)前值,即為編碼器一個(gè)脈沖周期的高頻插值數(shù)目。部分程序如下:
void EXTI1_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line1) != RESET)
{
if(capture_number==0 ) //第一次捕獲
{
TIM_Cmd(TIM2, ENABLE); //開啟定時(shí)器
capture_number=1; //設(shè)置標(biāo)志
}
else if(bujincircle*4>=circlepulse&&capture_number==1)
//第二次捕獲
{
TIM_Cmd(TIM2, DISABLE); //關(guān)閉定時(shí)器
finish_flag = 1;
}
EXTI_ClearITPendingBit(EXTI_Line1);
//清除EXTI1線路掛起位
EXTI_ClearFlag(EXTI_Line1);
}
}
Number = 65535*Cnt+TIM2->CNT;
//計(jì)算高頻插值數(shù),TIM2->CNT是計(jì)數(shù)器寄存器內(nèi)部的值,
//CNT是進(jìn)入中斷的次數(shù),65535是定時(shí)器的預(yù)設(shè)值
高頻插值數(shù)目同轉(zhuǎn)速之間的關(guān)系式:
(1)
式中:f是STM32的定時(shí)器的計(jì)數(shù)頻率;S是編碼器分辨率;N是高頻插值數(shù)目。
高頻插值脈沖數(shù)和電機(jī)旋轉(zhuǎn)的角度存在相應(yīng)的關(guān)系。若光電編碼器分辨率為S,光電編碼器一個(gè)周期的高頻插值數(shù)為M, 則可計(jì)算出1個(gè)高頻脈沖對應(yīng)的電機(jī)旋轉(zhuǎn)角度θ:
(2)
電機(jī)需要旋轉(zhuǎn)的角度可以通過式(2)轉(zhuǎn)換為高頻脈沖數(shù)。定時(shí)器的計(jì)數(shù)頻率越高,光電編碼器的一個(gè)脈沖周期對應(yīng)的高頻插值數(shù)就越大,控制系統(tǒng)的定位精度就越高。因此,根據(jù)高頻插值數(shù)對電機(jī)進(jìn)行旋轉(zhuǎn)角度控制,進(jìn)而實(shí)現(xiàn)位置的控制,可以達(dá)到比較理想的效果。
2.2 定位控制實(shí)現(xiàn)方法
USM直線定位的實(shí)現(xiàn)過程如下:首先預(yù)設(shè)USM需要旋轉(zhuǎn)的角度和轉(zhuǎn)速,由式(2)計(jì)算出電機(jī)旋轉(zhuǎn)的角度對應(yīng)的光電編碼器輸出脈沖數(shù),一般情況下,計(jì)算得到的脈沖數(shù)都是小數(shù),將該脈沖數(shù)分為整數(shù)部分和小數(shù)部分;然后起動(dòng)USM,當(dāng)光電編碼器輸出的脈沖數(shù)到達(dá)計(jì)算出的整數(shù)脈沖后,開始利用高頻插值進(jìn)行定位。采用高頻插值是為了準(zhǔn)確地完成計(jì)算所得脈沖的小數(shù)部分對應(yīng)的距離。具體如下:由于使用了PID算法對USM進(jìn)行了控速,其一個(gè)脈沖周期的高頻插值數(shù)是恒定的。將該高頻插值數(shù)與計(jì)算所得的小數(shù)部分相乘。所得結(jié)果賦值給定時(shí)器作為預(yù)設(shè)值。啟動(dòng)該定時(shí)器,當(dāng)定時(shí)器產(chǎn)生中斷時(shí),使USM停止,如此小數(shù)部分的對應(yīng)的距離也能準(zhǔn)確走完。這樣便可以提高USM的定位精度。USM的定位流程框圖如圖4所示。
圖4 USM的定位流程框圖
為了檢驗(yàn)USM的控制精度,我們將精度為1μm的光柵尺與直線導(dǎo)軌固定,直線導(dǎo)軌的滑塊和光柵尺的光柵讀數(shù)頭同步移動(dòng),如此可將滑塊實(shí)際的距離變化測量出來。在定位高頻脈沖個(gè)數(shù)計(jì)數(shù)完成時(shí),USM停止,此時(shí)數(shù)顯表上顯示的數(shù)值即為滑塊實(shí)際移動(dòng)的距離。將實(shí)際移動(dòng)距離和理論距離進(jìn)行比較,算出誤差,即可知USM的定位精度,從而可達(dá)到USM定位控制精度上的提高。整個(gè)直線控制系統(tǒng)搭建好后,進(jìn)行實(shí)驗(yàn)測定,控制系統(tǒng)的實(shí)際數(shù)據(jù)如表1所示。
表1 直線控制系統(tǒng)實(shí)際運(yùn)行過程測量的數(shù)據(jù)
USM轉(zhuǎn)速穩(wěn)定是本直線定位控制系統(tǒng)研究方法的前提。只有當(dāng)轉(zhuǎn)速恒定時(shí),進(jìn)行高頻插值的數(shù)目才能保持不變,這樣就可以根據(jù)高頻插值數(shù)來判定USM的旋轉(zhuǎn)位置,實(shí)現(xiàn)USM的高精度定位。
將高頻插值r(k)與預(yù)設(shè)值y(k)進(jìn)行比較,即可以得到誤差e(k):
(3)
實(shí)驗(yàn)中應(yīng)用PID算法,它的計(jì)算公式:
(4)
式中:Kp是比例系數(shù);Ki是積分系數(shù);KD是微分系數(shù)。
通過運(yùn)算可以得到增量Δu(k),然后把Δu(k)加上初始值u(k-1),結(jié)果作為電壓值u(k)。
程序流程框圖如圖5所示。
圖5 數(shù)字PID程序流程框圖
在實(shí)際調(diào)試過程中,為了驗(yàn)證設(shè)計(jì)的PID算法的作用,不斷修改PID參數(shù)進(jìn)行調(diào)試,并通過實(shí)驗(yàn)記錄了幾組數(shù)據(jù)。USM在沒有負(fù)載的狀況下,轉(zhuǎn)速的初始值是28r/min。實(shí)驗(yàn)過程中不斷修改PID的參數(shù),最終可以達(dá)到轉(zhuǎn)速的相對穩(wěn)定,實(shí)驗(yàn)數(shù)據(jù)如表2所示。本系統(tǒng)實(shí)驗(yàn)整定的Kp=0.000 625,Ki=0.000 1,KD=0.000 5。
表2 PID控制系統(tǒng)轉(zhuǎn)速和高頻插值數(shù)測量表
由表2可知,USM的轉(zhuǎn)速蠕動(dòng)得到了較好的控制,轉(zhuǎn)速誤差較小,有助于提高USM的定位控制精度,實(shí)現(xiàn)高精度的定位控制。
本文針對USR60-E3型的行波USM,設(shè)計(jì)了基于STM32的USM直線定位系統(tǒng),并對USM轉(zhuǎn)速恒定進(jìn)行了重點(diǎn)研究,設(shè)計(jì)一種較為實(shí)用的定位控制系統(tǒng),較好地解決了USM隨溫度的上升導(dǎo)致的轉(zhuǎn)速降低問題,控制精度也得到了較好的提高,在低速的控制場合可以很好地滿足控制要求。
[1] 趙淳生,李朝東.日本超聲電機(jī)的產(chǎn)業(yè)化、應(yīng)用和發(fā)展[J].振動(dòng)、測試與診斷,1999,19(1):1-7.
[2] 趙淳生. 面向21世紀(jì)的超聲電機(jī)技術(shù)[J]. 中國工程科學(xué),2002,4(2):86-91.
[3] 李華峰,辜承林.使用PI控制的超聲波電動(dòng)機(jī)精密位置控制[J].微電機(jī),2002,35(2):23-26.
[4] 黃茹楠,陳在禮.超聲電機(jī)在國外的發(fā)展[J]. 振動(dòng)、測試與診斷,2002,22(4):270-276.
[5] 馮曉英,李憲章,馮浩.行波超聲波電動(dòng)機(jī)的微步精密定位控制研究[J].嘉興學(xué)院學(xué)報(bào),2008,20(3):21-25.
Research on Positioning Control System of Ultrasonic Motor Based on STM32
FENGHao,JIANGPeng,MAOYi
(Hangzhou Dianzi University,Hangzhou 310018,China)
According to the characteristics of ultrasonic motor which has the self-locking and the advantages of fast response, an ultrasonic motor positioning method based on STM32 was proposed. By processing the signal generated by the photoelectric encoder again, the rotating angle of ultrasonic motor was accurately control, and the purpose of high precision positioning of using the ultrasonic motor was achieved, further reducing the error of the linear positioning system. The experimental results show that this method can achieve the goal of using ultrasonic motor for high precision positioning.
ultrasonic motor; STM32; high precision; positioning control
2015-06-26
TM359.9
A
1004-7018(2016)04-0065-03
馮浩(1956-),男,博士,教授,研究方向?yàn)殡姍C(jī)與控制。