方文華
(陜西省煙草公司 西安市公司,陜西 寶雞 710048)
移動(dòng)機(jī)器人是衡量一個(gè)國(guó)家自動(dòng)化發(fā)展水平的重要標(biāo)志,對(duì)社會(huì)經(jīng)濟(jì)的快速發(fā)展起到了促進(jìn)作用,廣泛應(yīng)用于農(nóng)業(yè)、醫(yī)療、航天及海洋等領(lǐng)域[1].然而,控制技術(shù)的研究是移動(dòng)機(jī)器人發(fā)展的核心,對(duì)機(jī)器人的運(yùn)動(dòng)起到重要作用.移動(dòng)機(jī)器人在執(zhí)行任務(wù)過(guò)程中,往往要面對(duì)復(fù)雜多變的環(huán)境,在當(dāng)今技術(shù)水平和條件下,移動(dòng)機(jī)器人還不能達(dá)到完全自主地完成復(fù)雜任務(wù),通常還需要人員控制才能完成.由于傳統(tǒng)移動(dòng)機(jī)器人執(zhí)行簡(jiǎn)單重復(fù)勞動(dòng),對(duì)控制精度要求不高,致使運(yùn)動(dòng)軌跡的穩(wěn)定性下降.當(dāng)移動(dòng)機(jī)器人遇到突變環(huán)境時(shí),運(yùn)動(dòng)軌跡產(chǎn)生的誤差就會(huì)變大,特別在受到干擾環(huán)境時(shí),移動(dòng)機(jī)器人就會(huì)出現(xiàn)嚴(yán)重的抖動(dòng)現(xiàn)象.因此,研究移動(dòng)機(jī)器人高精度、高穩(wěn)定性控制方法,對(duì)于促進(jìn)高精度自動(dòng)化技術(shù)的發(fā)展具有重要意義.
隨著移動(dòng)機(jī)器人技術(shù)的改進(jìn),其控制精度要求也越來(lái)越高.因此,許多學(xué)者對(duì)移動(dòng)機(jī)器人控制方法展開(kāi)了研究.例如:文獻(xiàn)[2-3]研究了移動(dòng)機(jī)器人模糊PID-P型迭代學(xué)習(xí)控制方法,給出PID-P型迭代學(xué)習(xí)的收斂條件及推導(dǎo)過(guò)程,采用模糊控制原理調(diào)節(jié)PID控制參數(shù),通過(guò)仿真驗(yàn)證移動(dòng)機(jī)器人軌跡跟蹤能力,提高了移動(dòng)機(jī)器人軌跡跟蹤精度;文獻(xiàn)[4-5]研究了移動(dòng)機(jī)器人滑??刂品椒?建立了移動(dòng)機(jī)器人模型示意圖,推導(dǎo)出動(dòng)力學(xué)微分方程式,設(shè)計(jì)了滑??刂破鞑?duì)控制器的穩(wěn)定性進(jìn)行證明,通過(guò)仿真驗(yàn)證移動(dòng)機(jī)器人滑??刂破鬏敵鼍?提高移動(dòng)機(jī)器人運(yùn)動(dòng)的穩(wěn)定性;文獻(xiàn)[6-7]研究了移動(dòng)機(jī)器人神經(jīng)網(wǎng)絡(luò)控制方法,采用徑向甚函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò)對(duì)控制精度進(jìn)行在線辨識(shí),將辨識(shí)結(jié)果反饋到路徑跟蹤控制方案中,采用李雅普諾夫函數(shù)對(duì)控制的穩(wěn)定性進(jìn)行證明,通過(guò)仿真驗(yàn)證該控制方法的有效性,提高了軌跡跟蹤精度.但是,移動(dòng)機(jī)器人在受到突變干擾時(shí),其關(guān)節(jié)軌跡跟蹤誤差增大.對(duì)此,本文創(chuàng)建了移動(dòng)機(jī)器人兩關(guān)節(jié)運(yùn)動(dòng)簡(jiǎn)圖模型,設(shè)計(jì)了移動(dòng)機(jī)器人手臂關(guān)節(jié)滑??刂破?引用支持向量機(jī)和改進(jìn)粒子群算法對(duì)其進(jìn)行優(yōu)化,將改進(jìn)滑??刂破饔糜谝苿?dòng)機(jī)器人關(guān)節(jié)運(yùn)動(dòng)軌跡跟蹤控制;采用數(shù)學(xué)軟件Matlab對(duì)關(guān)節(jié)運(yùn)動(dòng)角位移誤差進(jìn)行仿真實(shí)驗(yàn),并與傳統(tǒng)滑模控制器控制誤差進(jìn)行比較,為提高移動(dòng)機(jī)器人關(guān)節(jié)角位移運(yùn)動(dòng)精度奠定了理論基礎(chǔ).
本文研究的移動(dòng)機(jī)器人手臂由兩關(guān)節(jié)連桿串聯(lián)組成,其簡(jiǎn)圖模型如圖1所示.圖1中:q1,q2分別為移動(dòng)機(jī)器人手臂關(guān)節(jié)1、關(guān)節(jié)2的角位移;m1,m2分別為移動(dòng)機(jī)器人手臂關(guān)節(jié)1、關(guān)節(jié)2的質(zhì)量;l1,l2分別為移動(dòng)機(jī)器人手臂關(guān)節(jié)1、關(guān)節(jié)2的長(zhǎng)度.
圖1 移動(dòng)機(jī)器人平面簡(jiǎn)圖Fig.1 Plane sketch of mobile robot
根據(jù)拉格朗日定律,可以推導(dǎo)出移動(dòng)機(jī)器人手臂動(dòng)力學(xué)模型[8]為
(1)
式中:q為關(guān)節(jié)角位移矩陣;q′為關(guān)節(jié)角速度矩陣;H(q)為機(jī)器人關(guān)節(jié)慣性矩陣;C(q,q′)為機(jī)器人關(guān)節(jié)的離心力和哥氏力矩陣;F(q′)為摩擦力矩陣;G(q)為重力矩陣;τd為干擾波形矩陣;τ為控制力矩矩陣.
移動(dòng)機(jī)器人手臂運(yùn)動(dòng)的目標(biāo)是使實(shí)際輸出角位移與期望運(yùn)動(dòng)角位移之差最小,其誤差方程式為
(2)
滑模控制函數(shù)為
(3)
式中:λ為正的對(duì)角矩陣.
滑??刂坡蒣9]設(shè)計(jì)為
(4)
式中:C,μ,ε為滑??刂破鲄?shù);T為時(shí)間;A和B為未知參數(shù)調(diào)節(jié)系數(shù).
支持向量機(jī)能進(jìn)行全局優(yōu)化,具有超強(qiáng)的非線性擬合能力.采用支持向量機(jī)結(jié)合滑模控制理論,可以對(duì)滑??刂茀?shù)進(jìn)行估計(jì),從而提高控制系統(tǒng)輸出的穩(wěn)定性.采用線性函數(shù)y=ωx+b在高維空間內(nèi)對(duì)滑??刂破鲄?shù)C,μ,ε擬合,能夠得到支持向量機(jī)模型.在高維空間構(gòu)造結(jié)構(gòu)風(fēng)險(xiǎn)函數(shù),其方程式[10]為
式中:c為懲罰因子;ξj為容許誤差;ω為未知參數(shù)系數(shù);φ(x)為高維空間函數(shù).
根據(jù)拉格朗日定律[11],將風(fēng)險(xiǎn)函數(shù)定義為
(7)
式中:αi為拉格朗日乘子.
最優(yōu)值求解需要滿足以下條件:
(8)
求解可得
(9)
由高斯徑向基函數(shù)[12]可以得到
(10)
式中:σ為徑向基寬度.
粒子群算法也稱之為粒子群優(yōu)化算法(Particle Swarm Optimization,PSO),通過(guò)模擬動(dòng)物群體覓食和人類決策行為而提出的全局搜索優(yōu)化算法.在PSO中,粒子通過(guò)對(duì)比個(gè)體極值和群體極值,更新粒子的速度和位置,其更新方程式[13]為
式中:ω為慣性權(quán)重;c1,c2為[0,2]速度更新因子;r1,r2為[0,1]區(qū)間隨機(jī)數(shù);vt為粒子迭代t次的速度;xt+1為粒子迭代t+1次的位置;pt為個(gè)體極值;pg為群體極值.
慣性權(quán)重采用線性遞減方式,雖然提高了算法搜索的能力,但是只有在算法初期才能發(fā)揮較好的作用.如果在搜索初期沒(méi)有到達(dá)全局最優(yōu)解附近,局部搜索能力就會(huì)加強(qiáng),導(dǎo)致整個(gè)搜索過(guò)程陷入局部最優(yōu)解而無(wú)法跳出.因此,采用非線性遞減方式設(shè)置權(quán)重系數(shù),即
(13)
式中:t為當(dāng)前迭代次數(shù);tmax為最大迭代次數(shù);ωmax,ωmin分別為最大和最小慣性權(quán)重值.
采用PSO和支持向量機(jī)對(duì)滑??刂破鬟M(jìn)行改進(jìn),具體步驟如下:
步驟1在支持向量機(jī)識(shí)別基礎(chǔ)上,對(duì)粒子群進(jìn)行初始化,Pbest為粒子初始位置,gbest為Pbest中的最優(yōu)位置;
步驟2評(píng)價(jià)群體中粒子的適應(yīng)度值,計(jì)算其對(duì)應(yīng)的目標(biāo)函數(shù),其方程式為
(14)
步驟3對(duì)比適應(yīng)度值和Pbest,若適應(yīng)度值優(yōu)于Pbest,則將其作為當(dāng)前最優(yōu)位置,逐一進(jìn)行比較,直到搜索到群體最優(yōu)位置gbest;
步驟4根據(jù)支持向量機(jī)辨識(shí)的滑模控制器參數(shù)C,μ,ε,以及更新方程式(11)和式(12),調(diào)整粒子的位置和速度;
步驟5判斷是否滿足終止條件,若滿足條件,則終止迭代次數(shù),否則返回步驟2.
為了驗(yàn)證移動(dòng)機(jī)器人關(guān)節(jié)角位移采用改進(jìn)滑??刂频男Ч?采用Matlab軟件對(duì)關(guān)節(jié)角位移誤差進(jìn)行仿真.仿真參數(shù)設(shè)置如下:速度更新因子c1=c2=1,慣性權(quán)重ωmax=0.6,ωmin=0.4,種群為50,最大迭代次數(shù)為200,關(guān)節(jié)長(zhǎng)度為l1=l2=1.0 m,初始角位移為q(0)=[0 0]T,期望運(yùn)動(dòng)角位移為q1=q2=sin(2πt) rad,關(guān)節(jié)質(zhì)量為m1=m2=1.0 kg,重力加速度為g=10 m/s2,仿真時(shí)間為t=4 s.
假設(shè)沒(méi)有外界干擾,分別采用改進(jìn)滑??刂破髋c滑??刂破?關(guān)節(jié)1、關(guān)節(jié)2跟蹤誤差分別如圖2和圖3所示.
圖2 關(guān)節(jié)1角位移(無(wú)干擾)Fig.2 Angular displacement of the first joint (no interference)
圖3 關(guān)節(jié)2角位移(無(wú)干擾)Fig.3 Angular displacement of the second joint (no interference)
假設(shè)在第2 s突然增加余弦波形干擾τd=cos(2πt),分別采用改進(jìn)滑??刂破髋c滑模控制器,關(guān)節(jié)1、關(guān)節(jié)2跟蹤誤差分別如圖4和圖5所示.
圖4 關(guān)節(jié)1角位移(有干擾)Fig.4 Angular displacement of the first joint (with interference)
圖5 關(guān)節(jié)2角位移(有干擾)Fig.5 Angular displacement of the second joint (with interference)
在無(wú)干擾環(huán)境中,由圖2可知,關(guān)節(jié)1采用滑模控制器跟蹤最大誤差為0.28×10-3rad,采用改進(jìn)滑??刂破鞲欁畲笳`差為0.27×10-3rad;由圖3可知,關(guān)節(jié)2采用滑模控制器跟蹤最大誤差為0.39×10-3rad,采用改進(jìn)滑??刂破鞲欁畲笳`差為0.37×10-3rad.在有波形干擾環(huán)境中,由圖4可知,關(guān)節(jié)1采用滑模控制器跟蹤最大誤差為0.78×10-3rad,采用改進(jìn)滑??刂破鞲欁畲笳`差為0.27×10-3rad;由圖5可知,關(guān)節(jié)2采用滑模控制器跟蹤最大誤差為0.88×10-3rad,采用改進(jìn)滑??刂破鞲欁畲笳`差為0.37×10-3rad.因此,采用改進(jìn)滑模控制器抗干擾能力強(qiáng),能夠提高移動(dòng)機(jī)器人運(yùn)動(dòng)軌跡跟蹤精度.
針對(duì)移動(dòng)機(jī)器人關(guān)節(jié)運(yùn)動(dòng)精度低問(wèn)題,采用改進(jìn)PSO和支持向量機(jī)優(yōu)化滑??刂破?主要結(jié)論如下:
(1) 移動(dòng)機(jī)器人采用傳統(tǒng)滑模控制器,關(guān)節(jié)容易受到外界環(huán)境因素的干擾,系統(tǒng)抖動(dòng)較大,控制精度較低.
(2) 改進(jìn)滑??刂破鹘Y(jié)合支持向量機(jī)和改進(jìn)粒子群算法的優(yōu)點(diǎn),能夠快速地削弱外界波形的干擾,提高控制系統(tǒng)的穩(wěn)定性.