趙丕洋 洪榮晶,2 方成剛,2
1(南京工業(yè)大學(xué)機(jī)械與動(dòng)力工程學(xué)院 江蘇 南京 210009) 2(南京工大數(shù)控科技有限公司 江蘇 南京 210009)
機(jī)器人在打磨、噴涂和裝配上具有很大優(yōu)勢,已成為制造業(yè)的發(fā)展趨勢。在六自由度機(jī)器人末端安裝六維力傳感器,可與外界的接觸力進(jìn)行交互,以適應(yīng)在飛機(jī)發(fā)動(dòng)機(jī)、汽輪機(jī)葉片和模具等外形輪廓復(fù)雜零部件的高精度要求[1]。
Hogan提出的阻抗控制需要很少離線任務(wù)規(guī)劃,對擾動(dòng)和不確定性有很好的魯棒性[2],但其采用基于理想化的物理系統(tǒng)模型方法,無法準(zhǔn)確實(shí)現(xiàn)機(jī)械臂的位置控制和力控制。Seul在Hogan的阻抗控制算法的基礎(chǔ)上提出了一種自適應(yīng)阻抗控制算法,不需要確定的機(jī)器人模型就能實(shí)現(xiàn)力反饋信息的處理,因此在環(huán)境剛度多變的情況下,也能夠把機(jī)器人與環(huán)境之間的接觸力穩(wěn)定在給定的期望值[3]。粒子群算法(Particle swarm optimization,PSO)是最早由Kennedy和Eberhart在1995年提出的一種群體智能的優(yōu)化算法,該算法來源于對鳥群捕食行為的研究,模擬鳥集群飛行覓食的行為。PSO是從這種生物種群行為特征中得到啟發(fā)并用于求解優(yōu)化問題,具有簡單易行、收斂速度快、設(shè)置參數(shù)少等優(yōu)點(diǎn)[4]。在分析力控基本原理后,本文提出一種采用PSO對機(jī)器人力控過程中接觸空間的自適應(yīng)阻抗控制算法的慣性、阻尼和剛度矩陣參數(shù)進(jìn)行尋優(yōu)的方法,以提高系統(tǒng)的控制性能。
Hogan提出了機(jī)器人同時(shí)具有阻抗和導(dǎo)納的性質(zhì),因此能實(shí)現(xiàn)基于傳感器力反饋的機(jī)器人末端位置控制。外界的環(huán)境接觸力看作一種“干擾”信號(hào),同時(shí)在受外界力的作用而偏離原定軌跡時(shí)向機(jī)器人傳遞具有阻抗形式的擾動(dòng)信號(hào)。通過調(diào)整相應(yīng)的阻抗參數(shù),從而調(diào)節(jié)機(jī)器人與外界環(huán)境之間的動(dòng)態(tài)響應(yīng)。阻抗控制原理如圖1所示。
圖1 阻抗系統(tǒng)原理
機(jī)器人模型可以看作一個(gè)二階的阻尼-彈簧-質(zhì)量阻抗系統(tǒng),當(dāng)機(jī)器人末端實(shí)際位置X和期望位置Xd有偏差E時(shí),此時(shí)會(huì)使得機(jī)器人末端產(chǎn)生阻抗力F,即:
(1)
式中:M、B、K分別對應(yīng)慣性系數(shù)、阻尼系數(shù)和剛度系數(shù),統(tǒng)稱為阻抗參數(shù)。
在研磨復(fù)雜面時(shí),機(jī)械臂與環(huán)境的接觸力一直變化,自適應(yīng)阻抗控制算法可以適應(yīng)力變化。在很短的時(shí)間內(nèi)快速準(zhǔn)確地跟蹤位置信號(hào)并將力穩(wěn)定在輸入的期望值附近,且具有很好的魯棒性[5]。N自由度機(jī)械臂在關(guān)節(jié)空間的動(dòng)力學(xué)仿真如下:
(2)
(3)
閉環(huán)機(jī)器人系統(tǒng)滿足目標(biāo)阻抗關(guān)系式:
(4)
式中:Fe表示機(jī)械臂與外部環(huán)境的接觸力;Fd是期望力;E=Xe-X,Xe是環(huán)境位置。為簡化討論,只考慮一個(gè)方向上受力情況。令fd、fe、m、b、k分別為向量Fd、Fe、M、B、K的x方向上的對應(yīng)元素。
則式(4)改寫為:
(5)
控制過程分為自由空間和接觸空間兩個(gè)階段。自由空間狀態(tài)下,是機(jī)械臂與外界環(huán)境之間不存在作用力,接觸空間狀態(tài)下,是機(jī)械臂與外界環(huán)境之間存在作用力。在自由空間,機(jī)器人與外界環(huán)境之間的作用力fe=0,式(5)則改寫為:
(6)
在接觸空間內(nèi),求解式(5)的微分方程,要求對任意的ke,在fe=fd點(diǎn)都滿足理想的穩(wěn)定條件。解得在受力狀態(tài)下的剛度系數(shù)k=0,故式(5)可改寫為:
(7)
在力控方向上的剛度增益k保持不變??梢杂脧椈傻氖芰η闆r表示機(jī)器人與環(huán)境之間的作用力,設(shè)fe=ke(x-xe)=-kee,式(7)可以改寫為:
(8)
(9)
(10)
(11)
式中:η為更新率;λ是采樣周期。將式(11)代入式(10),求Laplace變換,建立位置誤差和接觸力誤差的傳遞函數(shù)。根據(jù)二階時(shí)滯系統(tǒng)穩(wěn)定條件Taylor級數(shù)展開可得:
設(shè)計(jì)基于位置的自適應(yīng)阻抗器,為保證系統(tǒng)的魯棒性,需要利用已知的信息來消除高度復(fù)雜的不確定性[6]。將式(2)的機(jī)器人的動(dòng)力學(xué)方程改寫為:
(12)
選擇控制律為:
(13)
整理可得:
(14)
(15)
此時(shí)控制律變換為:
(16)
(17)
自適應(yīng)阻抗控制律可寫作:
(18)
通過控制規(guī)律式(18)可得到該算法的原理如圖2所示[7-9]。
圖2 自適應(yīng)阻抗控制算法原理
打磨機(jī)器人為六自由度,為便于仿真得到結(jié)果,以平面二自由度連桿(如圖3所示)為例進(jìn)行分析計(jì)算[10-11]。
圖3 打磨機(jī)器人模型及簡化連桿
連桿2末端位置坐標(biāo)為:
(19)
雅可比矩陣為:
(20)
由式(2)可得此機(jī)械手的慣性矩陣為:
D(q)=
(21)
根據(jù)自適應(yīng)阻抗控制律在Simulink中搭建實(shí)驗(yàn)平臺(tái),如圖4所示。
圖4的自適應(yīng)阻抗控制器模型中f(x)是適應(yīng)度函數(shù),給定期望位置為0.876,環(huán)境位置為0.866,期望力為10 N,system函數(shù)模塊均用S-Function進(jìn)行編寫。
自適應(yīng)阻抗控制器的優(yōu)化問題就是確定一組合適的參數(shù)M、B和K,使得系統(tǒng)的性能指標(biāo)達(dá)到最優(yōu)。在尋優(yōu)過程中,將粒子群優(yōu)化算法的目標(biāo)函數(shù)(即適應(yīng)度函數(shù))作為評價(jià)控制系統(tǒng)性能的指標(biāo),并根據(jù)適應(yīng)度函數(shù)計(jì)算出每個(gè)粒子對應(yīng)的適應(yīng)值,通過適應(yīng)度值來判斷粒子優(yōu)劣,得出自適應(yīng)阻抗參數(shù)M、B和K對應(yīng)的最優(yōu)粒子。
圖5所示為PSO尋優(yōu)流程,PSO與Smulink的自適應(yīng)阻抗控制算法之間連接的橋梁是粒子(即自適應(yīng)控制器參數(shù))和該粒子對應(yīng)的適應(yīng)值(即控制系統(tǒng)的性能指標(biāo))。
圖5 PSO優(yōu)化阻抗參數(shù)的過程示意圖
具體的算法運(yùn)行過程如下[12]:
(1) 初始化粒子群。在設(shè)定的參數(shù)范圍內(nèi),隨機(jī)生成一群初試粒子。設(shè)置好粒子群規(guī)模和最大迭代次數(shù)等參數(shù),并確定粒子迄今為止搜索到的最優(yōu)位置Pt和整個(gè)粒子群迄今為止搜索到的最優(yōu)位置Gt。
(2) 尋找個(gè)體極值和群體極值。對每個(gè)粒子,將其適應(yīng)度值與該粒子所經(jīng)過的最優(yōu)位置Pt適應(yīng)度值進(jìn)行比較,若較好,則將其作為當(dāng)前的Pt。然后將其適應(yīng)度值與整個(gè)粒子群所經(jīng)歷的最優(yōu)位置Gt的適應(yīng)度值進(jìn)行比較,若較好,則將其作為當(dāng)前的Gt。
(3) 粒子適應(yīng)度值計(jì)算。將當(dāng)前最優(yōu)的粒子依次賦值給自適應(yīng)阻抗控制器的參數(shù)M、B、K,然后通過sim函數(shù)運(yùn)行控制系統(tǒng)的Simulink模型,由適應(yīng)度函數(shù)計(jì)算出適應(yīng)度值,以作為判斷是否更新粒子的速度和位置的條件,讓粒子向全局最優(yōu)點(diǎn)進(jìn)行尋優(yōu)。在本文系統(tǒng)中,適應(yīng)度函數(shù)采用二次型,選取線性二次型最優(yōu)控制性能指標(biāo)函數(shù)作為適應(yīng)度函數(shù),使粒子向誤差和輸出能量綜合起來最小的方向進(jìn)行尋優(yōu)[13],即:
(22)
式中:e為控制誤差;u表示控制器輸出;分別對應(yīng)控制器中的ΔF和ΔX,ΔX是x方向上的位置跟蹤誤差,ΔF為期望力和實(shí)際接觸力的誤差;ρ為常數(shù)[14]。
(4) 更新粒子的速度和位置。粒子在搜索空間中的速度和位置根據(jù)式(23)-式(24)確定。
vt+1=wvt+c1r1(Pt-xt)+c2r2(Gt-xt)
(23)
xt+1=xt+vt+1
(24)
式中:x表示粒子的位置;v表示粒子的速度,為防止粒子的盲目搜索,將位置和速度限制在區(qū)間[Lb,Ub]和[Vmin,Vmax]內(nèi);w表示慣性因子;c1、c2為加速常數(shù);r1、r2為[0,1]區(qū)間的隨機(jī)數(shù)。本文中取w=6、c1=c2=2、Vmin=-1、Vmax=1,且確定阻抗參數(shù)M、B、K的搜索范圍。
(5) 迭代尋優(yōu)并進(jìn)行個(gè)體極值和群體極值更新。每次迭代后判斷是否達(dá)到最大迭代次數(shù)或小于最小適應(yīng)值的條件。若符合條件則終止算法,得到最優(yōu)解;若不符合條件,則返回步驟(2)。
在simulink中,設(shè)置機(jī)械臂關(guān)節(jié)質(zhì)量m1=m2=1 kg;長度l1=l2=1 m。代入式(21)可得:
(25)
在粒子群算法中,設(shè)置迭代次數(shù)為30,粒子個(gè)數(shù)為30,為了使結(jié)果盡可能精確,最小適應(yīng)度值設(shè)置為0,適應(yīng)度函數(shù)參數(shù)ρ=0.5。M、B、K三個(gè)參數(shù)尋優(yōu)范圍的上限為Ub=[10,200,800],下限為Lb=[1,50,300]。為了便于分析,只對x方向上的受力空間進(jìn)行尋優(yōu),因此設(shè)置x方向環(huán)境剛度Ke=4 000。仿真采用固定步長、ode4算法,起始時(shí)間為0 s,仿真步長為0.01 s,仿真時(shí)間為3 s。運(yùn)行結(jié)果如圖6和圖7所示。
圖7 適應(yīng)度值迭代曲線
由于適應(yīng)度值變化幅度較小,令fit=1 000×(適應(yīng)度值-0.007 499 999),作fit隨迭代次數(shù)變化圖如圖8所示。
分別得到尋優(yōu)參數(shù)M、B、K隨迭代次數(shù)的變化曲線如圖9-圖11所示。
圖9 剛度參數(shù)K優(yōu)化曲線
圖11 慣性參數(shù)M優(yōu)化曲線
可以看出,當(dāng)?shù)螖?shù)在22次時(shí),三個(gè)參數(shù)尋優(yōu)趨于穩(wěn)定,達(dá)到最優(yōu)值。由MATLAB計(jì)算結(jié)果可得,PSO尋得的最優(yōu)參數(shù)為M=6.513 9、B=191.755 9、K=496.728 5(結(jié)果保留四位小數(shù)),將尋得的最優(yōu)值代入自適應(yīng)阻抗控制的Simulink模型中并運(yùn)行,得到x方向上的位置跟蹤和力跟蹤圖如圖12和圖13所示。
可以看出,控制器在0.7 s后穩(wěn)定在0.868 5的位置上,控制力在0.7 s后達(dá)到穩(wěn)定,并且穩(wěn)定在10 N的期望力。在力跟隨過程中的最大力約為17.5 N,最小力約為9 N。
為更加明顯地看出優(yōu)化后的控制器性能,根據(jù)文獻(xiàn)中搭建遺傳算法平臺(tái)尋優(yōu)得到參數(shù)[15]為M=3.562 6、B=105.590 2、K=377.523 9,再根據(jù)比較整定法[16]得出系統(tǒng)參數(shù)為M=1、B=50、K=625。
將三種優(yōu)化算法尋優(yōu)結(jié)果代入自適應(yīng)阻抗控制器中,得到x方向上位置跟蹤和力跟蹤曲線如圖14和圖15所示。
圖14 位置跟蹤仿真結(jié)果比較
由圖14和圖15可得,遺傳算法在0.85 s后達(dá)到穩(wěn)定狀態(tài),比較整定法在2.2 s后達(dá)到穩(wěn)定,且兩種方法的振蕩次數(shù)均較多。
本文對阻抗控制原理進(jìn)行了基本介紹,并將其與自適應(yīng)控制算法相結(jié)合,推導(dǎo)出自適應(yīng)阻抗控制律。為便于研究,以二自由度連桿為例在MATLAB/Simulink軟件中搭建自適應(yīng)阻抗控制器。為得到較好的系統(tǒng)控制性能,編寫基于M文件的粒子群尋優(yōu)算法對阻抗參數(shù)進(jìn)行優(yōu)化。根據(jù)優(yōu)化結(jié)果得到的跟蹤曲線,與遺傳算法和整定比較法相比,粒子群尋優(yōu)結(jié)果在x方向上的位置和力跟蹤曲線具有更短的上升時(shí)間、下降時(shí)間,更少的振蕩次數(shù)和有更小的最大超調(diào)量。實(shí)驗(yàn)結(jié)果驗(yàn)證了粒子群優(yōu)化算法對阻抗參數(shù)尋優(yōu)的有效性和優(yōu)越性,對目前打磨、裝配等機(jī)器人的過程力控制的研究具有重要意義。
本文的不足之處在于需要多次離線的仿真計(jì)算確定,耗時(shí)較長且不能實(shí)現(xiàn)參數(shù)的在線整定,在應(yīng)用中有所不便。且只對x方向阻抗參數(shù)做了整定和優(yōu)化,后續(xù)將考慮實(shí)際加工中的六維力情況并開展相關(guān)實(shí)驗(yàn)研究。