湯受鵬
(山東商務職業(yè)學院機電工程系,山東煙臺264670)
機器人的種類繁多,應用非常廣泛,比如軍用、民用和工業(yè)用機器人等[1-2],其中工業(yè)用機器人機械手的研究是人們比較關(guān)注的領(lǐng)域。機器人機械手有空間結(jié)構(gòu)和平面結(jié)構(gòu)兩種形式,其運動分析和動力學分析基本上是類似的,都是要通過建立基本坐標系和局部隨動坐標系及其坐標變換(雅可比矩陣)取得控制空間參量和操作空間參量之間的函數(shù)關(guān)系方程(組),但這些方程大多為非線性的代數(shù)方程或微分方程,其對應的正反演解析求解非常困難。徐建強[3]對并聯(lián)機構(gòu)運動分析和動力分析常用的雅可比矩陣求解、直接求導法、牛頓迭代法、影響系數(shù)法、虛設(shè)機構(gòu)法和數(shù)值搜索法等數(shù)學方法做了介紹,這些方法在末端執(zhí)行器的速度分析和加速度分析及執(zhí)行力的正反演求解中都有應用;夾具設(shè)計及其誤差分析理論在機器人的分析中也是可以借鑒的,吳玉光等[4]將工件和夾具系統(tǒng)進行了機構(gòu)模型化,對夾具定位誤差提出了機構(gòu)學建模方法。由于機器人的控制空間參數(shù)和操作空間參數(shù)之間的關(guān)系大多為強非線性的,一般解析求解很困難,近些年來人們提出的差分進化算法[5]、混沌相乘法[6]、多種群遺傳算法[7]、復合形差分進化算法[8]、追隨軌跡算法[9]等理論[10-12]都在一定程度上了給出了具體問題的(數(shù)值)解。龔星如[13]針對TX90XL工業(yè)機器人的運動學建模、標定方法及標定的可行性做了研究;王雪巍[14]對埃夫特工業(yè)機器人ER7L的幾何誤差問題采用預給運動學參數(shù)誤差方法探討了長度誤差、角度誤差及其他一些微小誤差對末端定位精度的敏感性問題;廖偉強等[15]對游藝人形機器人的關(guān)節(jié)結(jié)構(gòu)及運動采用人體工學原理和有限元方法進行了研究,給出了關(guān)節(jié)位置和速度的求解方法,分析了機器人運動的平穩(wěn)性等問題;胡俊峰等[16]針對一種新的兩自由度柔性并聯(lián)機械手采用假設(shè)模態(tài)法和拉格朗日乘子法給出了系統(tǒng)的動力學模型和運動控制模型,并利用坐標分塊法對該模型進行了分析求解。理論上機器人在工作過程中按照預先設(shè)定的程序是可以準確到達目標工作點的,但實際上是不可能做到的,原因是各種形式的誤差總是存在的,這就需要機器人能進行位置傳感反饋調(diào)整,進行二次補償定位,這種反饋補償定位的數(shù)學模型原則上一般都是非線性的,但因為目前的設(shè)計水平和加工技術(shù)等先進設(shè)計理念,總是能夠做到定位誤差是比較小的程度,這個事實使得問題變得簡單了,那就是原本非線性反演問題將可以轉(zhuǎn)化為一個比較簡單的線性分析模型,這種線性模型一般來說隨著機械手的自由度的增加而成為欠定的,即通過該模型的求解將得到無數(shù)組反饋調(diào)整參數(shù)方案,這為下一步的優(yōu)化尋優(yōu)帶來了方便,本文基于這樣的考慮,針對一個平面n自由度機械手執(zhí)行端的定位誤差反演關(guān)節(jié)參數(shù)問題提出了一種線性分析模型,通過建立適當?shù)膬?yōu)化目標函數(shù)找到最佳反演關(guān)節(jié)參數(shù)調(diào)整解,其中采用了共軛梯度法對目標函數(shù)進行了優(yōu)化尋優(yōu),從參考文獻看,目前未見有類似文獻發(fā)表,本文的分析方法和結(jié)論對于平面機械手和空間機械手的微調(diào)反演問題研究都具有一定的參考價值。
圖1所示是一根平面多自由度機械手,它由n根連桿通過n-2個活動平面鉸鏈連接而成,并通過A1處的一個平面固定鉸鏈與基座相連,這是一個開環(huán)連接的平面結(jié)構(gòu),是機器人操作機構(gòu)上經(jīng)常采用的結(jié)構(gòu)形式之一。建立圖示平面直角坐標系xA1y(固定坐標系,也稱基本坐標系)
上述結(jié)構(gòu)中,關(guān)節(jié)點Aj(j=1,2,...,n)處一般安裝有驅(qū)動動力 源,An+1處 安裝操作手(機器人執(zhí)行端),為了下文討論方便起見,不再考慮此處的運動自由度(比如說腕部旋轉(zhuǎn)自由度)。假設(shè)點An+1的坐標為(xn+1,yn+1),連桿A1A2與基本坐標系的水平軸(x軸)之間的夾角為θ1,連桿A2A3與連桿A1A2之間的夾角為θ2,依此類推,連桿AnAn+1與連桿An-1An之間的夾角為θn,并規(guī)定凡逆時針轉(zhuǎn)向為正,反之為負。連桿長度分別為Lj(j=1,2,...,n)。
根據(jù)圖1的幾何關(guān)系,在某一工序中,機械手位于圖示工作位置,即其對應的定位關(guān)節(jié)參數(shù)分別為θj(j=1,2,...,n),容易列出(xn+1,yn+1)與θj(j=1,2,...,n)之間滿足的方程組:
假設(shè)由于各種原因(比如連桿變形和/或尺寸誤差、關(guān)節(jié)連接處的配合間隙等),該機械手的操作端An+1離真正的目標點存在水平方向的誤差ε,豎直方向上的誤差η。為此,對式(1)兩邊同時微分得:
若令dxn+1=ε,dyn+1=η,dθj=δj,則上式可改寫為:
式中,δk(k=1,...,n)分別是角度(關(guān)節(jié)參數(shù))θk(k=1,...,n)的微調(diào)量。
式(2)就是在知道ε,η的前提下確定δk(k=1,...,n)的問題,這是一個欠定反演問題,一般來說理論上它具有無窮多組解。此外,根據(jù)實際問題的具體情況,比如能量消耗最小或調(diào)整效率最高或調(diào)整用時最短等要求,總是可以給出一個選定解的評判準則,在優(yōu)化問題上就是目標函數(shù)的構(gòu)造問題,在這里不失一般性,我們假定該目標函數(shù)是解的2-范數(shù),即有如下優(yōu)化模型:
式中:δ=[δ1,...,δn]T,T為轉(zhuǎn)置。
通過求解式(3),就可以找到取得最小2-范數(shù)的反饋誤差校正量δ=[δ1,...,δn]T。
對于式(2),選定[δ3,...,δn]T作為自由變量,確定變量δ1、δ2。
以變量(δ3,...,δn)為自由變量,通過式(2)確定變量(δ1,δ2)的方程組為:
式中:
問題的目標函數(shù)可進一步寫為
顯然該目標函數(shù)是關(guān)于變量δj(j=3,...,n)的二次函數(shù),具有唯一極小點,該極小點滿足如下條件:
即
簡寫之為
式中:x=[δ3,δ4,...,δn]T;
求解線性方程組的方法有很多,考慮到機器人運動定位參數(shù)誤差反演計算的病態(tài)性現(xiàn)象的廣泛性,本文采用具有一定抗病態(tài)性的共軛梯度法求解上述方程組。
為此,為保證方程組系數(shù)矩陣的正定性,將式(9)做如下處理:
容易驗證,矩陣B=ATA是對稱正定的,且方程組ATAx=ATb與Ax=b有共同解。
具體共軛梯度法求解的迭代過程設(shè)計如下
1)給定計算精度γ和初始迭代點x0,計算其負梯度g0=-▽f(x0),并令第一個共軛向量S0=g0。
驗證本文算例的已知參數(shù)給出為L1=0.2 m,L2=0.3 m,L3=0.4 m,L4=0.5 m,L5=0.5 m,L6=0.8 m;θ1=π/12,θ2=π/10,θ3=π/8,θ4=π/10,θ5=π/9,θ6=π/6;ε=0.006 m,η=0.005 m,計算結(jié)果為δ1=-0.0015 m,δ2=-0.0018 m,δ3=-0.0024 m,δ4=-0.0014 m,δ5=-0.0001 m,δ6=-0.0014 m。當ε=-0.004 m,η=0.008 m時,計算結(jié)果為δ1=-7.1615×10-4m,δ2=-6.7885×10-4m,δ3=0.001 1 m,δ4=-0.0 008 m,δ5=0.000 m,δ6=-0.0002 m,這些解就是反饋給機械手進行關(guān)節(jié)微調(diào)的量。上述兩種情況的尋優(yōu)都用了四次迭代,迭代速度是非??斓?。
從上述計算結(jié)果看,在機械手離真實位置存在(位置)誤差時,利用本文方法可以快速計算出機械手各個關(guān)節(jié)處需要微調(diào)的參數(shù)值,可為反饋控制關(guān)節(jié)驅(qū)動器的驅(qū)動方向和調(diào)節(jié)量提供參考。當然,當選擇解的評判標準發(fā)生變化時,僅僅需要改變優(yōu)化目標函數(shù)的形式,然后采用合適的線性近似分析即可。
本文對平面n自由度機械手的操作位置誤差反饋控制參數(shù)反演提出了一種線性分析方法,該法可給出問題的解析解,并能夠推廣用于機械手的三維真實空間內(nèi)的誤差反演調(diào)整量的計算。