趙海濱,顏世玉,陸志國(guó),劉 沖,于清文
(東北大學(xué) 機(jī)械工程與自動(dòng)化學(xué)院,沈陽(yáng) 110819)
具有旋轉(zhuǎn)激勵(lì)的平移振蕩器(Translation Oscillators with Rotating Actuator,TORA)由一個(gè)未驅(qū)動(dòng)的小車和驅(qū)動(dòng)的小球組成[1],來(lái)源于雙自旋航天器的簡(jiǎn)化模型。TORA系統(tǒng)是一種典型的欠驅(qū)動(dòng)機(jī)械系統(tǒng),在控制理論的研究中可以作為一個(gè)基準(zhǔn)系統(tǒng),用于對(duì)不同算法進(jìn)行驗(yàn)證[2]。最初的TORA系統(tǒng)中,小球是在水平面內(nèi)轉(zhuǎn)動(dòng)[3-4],目前很多學(xué)者研究了小球在垂直平面內(nèi)的轉(zhuǎn)動(dòng)問(wèn)題[5-7]。TORA系統(tǒng)的控制方法主要有PD控制方法[8]、反饋控制方法、反步控制方法、基于能量的控制方法[8]和滑模控制方法[9]等。
本文首先對(duì)垂直欠驅(qū)動(dòng)TORA系統(tǒng)的動(dòng)力學(xué)方程進(jìn)行分析,然后建立仿真模型,并采用PD控制器進(jìn)行控制。在PD控制器中,需要檢測(cè)小球的角度和角速度。由于獲取小球的角速度一般比較困難或者非常昂貴,因此設(shè)計(jì)了高通濾波器,通過(guò)對(duì)小球的角度進(jìn)行高通濾波獲取偽角速度。在PD控制器中采用偽角速度代替角速度。最后,通過(guò)Matlab/Simulink軟件對(duì)欠驅(qū)動(dòng)TORA系統(tǒng)建立了仿真實(shí)驗(yàn)系統(tǒng),并進(jìn)行了數(shù)值仿真驗(yàn)證。學(xué)生可以修改參數(shù),然后進(jìn)行動(dòng)態(tài)仿真。通過(guò)仿真實(shí)驗(yàn),向?qū)W生完整的展示了欠驅(qū)動(dòng)系統(tǒng)的控制過(guò)程,能夠加深學(xué)生對(duì)欠驅(qū)動(dòng)系統(tǒng)的理論、仿真和控制等的理解,增強(qiáng)學(xué)生的編程能力和學(xué)習(xí)興趣,有助于理論和實(shí)驗(yàn)教學(xué)的結(jié)合。
垂直欠驅(qū)動(dòng)TORA系統(tǒng)由驅(qū)動(dòng)的小球和未驅(qū)動(dòng)的移動(dòng)小車組成,如圖1所示。小車通過(guò)彈簧和固定的墻面連接,小車和彈簧在水平面內(nèi)做一維運(yùn)動(dòng)。小球在電機(jī)的驅(qū)動(dòng)下在垂直平面內(nèi)做旋轉(zhuǎn)運(yùn)動(dòng)。通過(guò)小球的轉(zhuǎn)動(dòng)和小車位移之間的耦合作用,實(shí)現(xiàn)旋轉(zhuǎn)小球?qū)π≤嚨目刂啤P≤嚨馁|(zhì)量為M,位移為x,受到水平面上的摩擦力為f。小球的質(zhì)量為m,轉(zhuǎn)動(dòng)半徑為r,輸入轉(zhuǎn)矩為τ,關(guān)于其質(zhì)心的轉(zhuǎn)動(dòng)慣量為J,逆時(shí)針轉(zhuǎn)離豎直向下方向的角度為θ。彈簧的彈性系數(shù)為k,重力加速度為g。
圖1 垂直欠驅(qū)動(dòng)TORA系統(tǒng)
TORA系統(tǒng)的總動(dòng)能包括小車的動(dòng)能和小球的動(dòng)能,總動(dòng)能為
(1)
TORA系統(tǒng)的總勢(shì)能包括小球的重力勢(shì)能和彈簧的彈性勢(shì)能,總勢(shì)能為
P=-mgrcosθ+kx2/2
(2)
TORA系統(tǒng)的拉格朗日算子函數(shù)為
L=K-P
(3)
根據(jù)拉格朗日方程[10],系統(tǒng)的動(dòng)力學(xué)方程為
(4)
最后得到的TORA系統(tǒng)動(dòng)力學(xué)模型為
(5)
TORA系統(tǒng)中有兩個(gè)狀態(tài)變量,分別是小車的位移x和小球的角度θ,但只有一個(gè)控制輸入τ,因此TORA系統(tǒng)是欠驅(qū)動(dòng)機(jī)械系統(tǒng)。
對(duì)于欠驅(qū)動(dòng)TORA系統(tǒng),最常用的控制器為PD控制器。PD控制器和基于能量的控制方法是一致的。采用小球的角度和角速度的PD控制器為
(6)
式中:參數(shù)kp>0;kd>0。
在式(6)中,需要檢測(cè)小球的角度和角速度,對(duì)于小球角度的檢測(cè)比較容易,但是檢測(cè)角速度一般比較困難或比較昂貴。下面通過(guò)設(shè)計(jì)動(dòng)態(tài)高通濾波器,通過(guò)對(duì)小球的角度進(jìn)行高通濾波獲取偽角速度。動(dòng)態(tài)濾波器設(shè)計(jì)為
(7)
(8)
τ=-(kpθ+kdη)
(9)
Matlab/Simulink軟件在系統(tǒng)仿真和自動(dòng)控制等領(lǐng)域的研究與教學(xué)中應(yīng)用非常的廣泛[11-14]。為了對(duì)算法進(jìn)行驗(yàn)證,本文采用Matlab/Simulink軟件建立了仿真實(shí)驗(yàn)系統(tǒng),如圖2所示。在圖2中,主要采用了Simulink軟件中用戶自定義函數(shù)庫(kù)中的Matlab Function模塊和積分模塊[15]等。Matlab Function模塊可以采用Matlab語(yǔ)言非常方便靈活的建立復(fù)雜系統(tǒng),非常適合進(jìn)行動(dòng)態(tài)系統(tǒng)的建模[16]。
TORA系統(tǒng)的參數(shù)[5-6]為:小車的質(zhì)量M=1.260 8 kg,小球的質(zhì)量m=96 g,半徑r=0.592 m,轉(zhuǎn)動(dòng)慣量J=0.217 5 g·m2,彈簧的彈性系數(shù)k=186.3 N/m,重力加速度為g=9.81 m/s2。本文不考慮小車受到水平面的摩擦力,因此f=0。
圖2 TORA系統(tǒng)的PD控制實(shí)驗(yàn)
在圖2中,仿真系統(tǒng)采用變步長(zhǎng)的ode45算法,最大步長(zhǎng)為1 ms,仿真時(shí)間為20 s。通過(guò)Constant模塊設(shè)置初始值。通過(guò)Manual Switch模塊進(jìn)行小球角速度的選擇。通過(guò)To Workspace模塊將運(yùn)行結(jié)果保存在工作空間中。
根據(jù)TORA系統(tǒng)的動(dòng)力學(xué)方程建立仿真模型。在圖2中,TORA模塊內(nèi)的代碼為
function dd = fcn(xdthd,xth,tau)
M=1.3608;m=0.096;k=186.3;r=0.0592;
J=0.0002175;g=9.81;
x=xth(1);th=xth(2);thd=xdthd(2);
d11=M+m;d12=m*r*cos(th);
d21=d12;d22=m*r^2+J;
D=[d11,d12;d21,d22];
C=[0,-m*r*thd*sin(th);0,0];
g1=k*x;g2=m*g*r*sin(th);
G=[g1;g2];
dd=D([0;tau] - C*xdthd - G);
在圖2中,PD模塊內(nèi)的代碼為
function tau = fcn(xth,thd)
th=xth(2);
kp=0.012;kd=0.002;
tau=-(kp*th + kd*thd);
根據(jù)式(8),建立子系統(tǒng)模塊High-pass filter,如圖3所示。圖中,高通濾波器的參數(shù)設(shè)置為a=65。
圖3 高通濾波子系統(tǒng)
圖4 小球的角速度
圖5 角速度之間的差值
小車的初始位置為x=25 mm,在PD控制器下,小車的位移如圖6所示。小車的位移逐漸減小,最終趨近于0。
圖6 小車的位移
在動(dòng)力學(xué)方程和PD控制器中,小球的角度采用弧度制。將小球的角度轉(zhuǎn)換為(°)后,如圖7所示。小球的角度初始值為0。小球角度的最大值為30.30°,最小值為-31.47°,最終逐漸趨近于0。
圖7 小球的角度
小球的驅(qū)動(dòng)力矩如圖8所示。在圖8中,驅(qū)動(dòng)力矩的初始值為0,最大值為14.9 mN·m,最小值為-14.4 mN·m。驅(qū)動(dòng)力矩逐漸減小,并趨近于0。
圖8 驅(qū)動(dòng)力矩
根據(jù)垂直欠驅(qū)動(dòng)TORA系統(tǒng)的動(dòng)力學(xué)方程,建立仿真模型,并采用PD控制器進(jìn)行控制。通過(guò)Matlab/Simulink軟件建立了仿真和控制實(shí)驗(yàn)系統(tǒng)。設(shè)計(jì)了高通濾波器,對(duì)小球的角度進(jìn)行高通濾波后得到偽角速度。在PD控制器中,采用偽角速度代替實(shí)際的角速度。實(shí)驗(yàn)結(jié)果表明,能夠進(jìn)行TORA系統(tǒng)的平衡控制。通過(guò)仿真實(shí)驗(yàn),學(xué)生可以對(duì)TORA系統(tǒng)的仿真和控制系統(tǒng)有一個(gè)完整的了解,還可以自己修改系統(tǒng)的參數(shù)或編寫控制算法。該仿真實(shí)驗(yàn)?zāi)軌蚣由顚W(xué)生對(duì)欠驅(qū)動(dòng)系統(tǒng)的理論、仿真和控制等的理解,增強(qiáng)學(xué)生的實(shí)際編程能力和學(xué)習(xí)興趣,培養(yǎng)學(xué)生的創(chuàng)新意識(shí)和能力。