魏厚忠, 薛 丹, 焦立奇, 白文峰
(長春工業(yè)大學電氣與電子工程學院,吉林長春 130012)
解決機器人問題首先必須建立相應的動力學和運動學模型,在此前提下分析和建立誤差模型。誤差修正的好與壞將直接影響到控制精度,產(chǎn)生誤差的原因有很多,如機器人各機械組件以及載荷的質(zhì)量、重心和慣性,電機的轉(zhuǎn)矩、傳動力矩、摩擦轉(zhuǎn)矩、重力矩、科里奧利力矩、慣性矩和支承力矩,還有軸位、軸速度、軸加速度等。以前很多研究減少誤差的算法大多以直接誤差補償為主,這種方法需要大量的數(shù)據(jù)做統(tǒng)計學的支撐,文中通過在KUKA機器人系統(tǒng)里嵌入專家PID算法以及加上特定補償?shù)乃惴?,成功將誤差控制在0.01mm以內(nèi)。
圖1 6自由度KUKA機器人
相對機器人運動學而言,機器人動力學問題顯得異常復雜。但同時機器人的動力學研究變得越來越重要,尤其在以高速重載自動設備需求日益強烈的今天,動力學問題越發(fā)突出。動力學分析是機器人控制、結(jié)構(gòu)設計與驅(qū)動器選型的基礎。目前,分析機器人動力學的常用方法主要有拉格朗日法、牛頓-歐拉法、虛功原理法及凱恩方程等,文中將以最為經(jīng)典的前兩種方法為基礎建立動力學模型。
這樣計算出每一個構(gòu)件質(zhì)心的線加速度和角加速度,再代入牛頓-歐拉方程式,由此可求出作用在每一個構(gòu)件(第i構(gòu)件)質(zhì)心的慣性力和力矩。
分析動力學的基礎是達郎伯原理和虛位移原理。達郎伯原理引入慣性力的概念,使我們能夠用解決靜力學平衡問題的方法來處理動力學問題。虛位移原理引入虛位移和虛功的概念,給出了處理非自由質(zhì)點系平衡問題的方法來處理動力學問題。將兩個原理結(jié)合起來,可推出質(zhì)點系動力學普遍方程和拉格朗日方程[1]。
對具有N個自由度的機器人操作機構(gòu),拉格朗日方程式由N個二階非線性微分方程構(gòu)成的方程組為:
式中:T——系統(tǒng)動能;
Qi——包括重力在內(nèi)的外力對應于第i個廣義坐標的廣義力,i=1,2,…,n。
引入廣義力的量Q:
由數(shù)量對向量微分的法則,得
將式(5)寫成向量方程形式為:
系統(tǒng)總動能T等于各構(gòu)件動能之和:
式中:M——n*n矩陣。
設向量Y表示廣義力中的除驅(qū)動力以外的廣義力,則有
則機器人操作器動力學方程的一般形式可寫為:
令
再將上面相應的式子進行微分處理,最終可以得到如下結(jié)果:
1)如果是求解直接動力學問題,可用下式求得:
2)如果是求解間接動力學問題,可用下式求得:
建立6自由度機器人模型,一個6軸串聯(lián)機械臂,得到機器人連桿坐標系,根據(jù)D-H法得到機械臂位姿的變換矩陣如下:
式中:An——根據(jù)D-H法建立的機械臂各個關節(jié)的變換矩陣。
其中
設在連續(xù)軌跡的起始點和終點機器人的姿態(tài)為(Ψ0,θ0,φ0)和(Ψ1,θ1,φ1),機器人運動連續(xù)平滑,姿態(tài)角度隨時間做線性變化。在時刻ti(t0<ti<t)手部姿態(tài)角為:
把姿態(tài)角和相應的位置值代入文中求出的機械臂逆運動學方程,就可以得出關節(jié)空間下的θ1,θ2,…,θ6值。同時,注意這些θ1,θ2,…,θ6值可能會有多解,由機構(gòu)的奇異問題產(chǎn)生的無窮解,或無解(不可達)。對于多解程序會自動選擇離上一個路徑最近的解,保證機械臂各個旋轉(zhuǎn)軸運動連續(xù)[2]。
6軸機械臂的控制算法使機器人對輸入空間曲線計算出各關節(jié)的電機控制命令,使機器人沿曲線運動。同時,計算公式中各參數(shù)用符號表示,能夠運用到各種類似結(jié)構(gòu)的機器人控制??刂扑惴ㄖ卸囗検讲逯捣ㄊ箼C械臂各關節(jié)運動的速度和加速度連續(xù),避免運行生成的機器指令違背物理規(guī)律,不能正確執(zhí)行任務。文中方法計算效率很高,100個點能在2s內(nèi)計算完成。計算公式是單變量參數(shù)方程的形式,在運動的同時計算后面幾點,能適應實時控制的要求。
通過對機器人動力學模型的建立可以發(fā)現(xiàn),在廣義力里面包含太多復雜力,這些力也會給機器人的精確控制帶來更多的難題。為了簡化和系統(tǒng)分析這些力帶來的誤差,特將廣義力Y=自身慣性力+負載慣性力+其它綜合慣性力集合。如果用單一控制算法來控制這個廣義力,控制效果肯定不好,如果在控制軸上形成軸放大,控制精度肯定達不到要求。為了消除這些誤差,文中在KUKA機器人控制系統(tǒng)中采用專家PID和固定誤差補償?shù)姆椒ㄟM行修正誤差,專家控制PID的控制系統(tǒng)框圖如圖2所示。
圖2 專家控制PID的控制系統(tǒng)框圖
知識庫包括事實集、經(jīng)驗數(shù)據(jù)、經(jīng)驗公式和規(guī)則集;信息獲取與處理是通過底層閉環(huán)控制系統(tǒng)的反饋信息和輸入信息獲取控制系統(tǒng)的誤差、誤差變化量,以及系統(tǒng)動態(tài)特征信息(超調(diào)量上升時間等)。信息處理包括必要的特征識別和濾波等;控制算法集合中存放有控制策略和控制方法,如PID,PI,fuzzy和神經(jīng)控制等;實時推理機是根據(jù)一定的推理策略從知識庫中選擇有關的知識,對所提供的控制算法、事實,以及實時采集的系統(tǒng)特征數(shù)據(jù)進行推理,直到得出相應的最佳控制決策,用決策結(jié)果指導控制作用;動態(tài)數(shù)據(jù)庫是用來存放推理過程中用到的數(shù)據(jù)、中間結(jié)果、實時采集與處理的數(shù)據(jù)[3]。
根據(jù)廣義力等式可以建立KUKA機器人被控對象的控制系統(tǒng)示意圖,如圖3所示。
根據(jù)6自由度KUKA機器人可以建立一個6階傳遞函數(shù),對相應的采樣時間定為1ms,采用專家PID設計控制器[4],在仿真過程中,ε取 0.001,可以得到誤差響應曲線,如圖4所示。
圖3 控制系統(tǒng)示意圖
圖4 理想誤差響應曲線
以上仿真圖形主要針對負載慣性力對機器人控制精度的誤差仿真[5],由誤差響應圖可以知道,專家PID算法可以很好地解決負載慣性力對機器人帶來的誤差,對其它綜合慣性力誤差通過特定誤差補償?shù)姆绞竭M行。根據(jù)KUKA機器人特定誤差補償標定前后的實驗數(shù)據(jù)見表1。
表1 實驗數(shù)據(jù)
通過對幾個點的誤差補償來看,補償值都是由相應的理論值減去實際值而得到,相應值的取得都是借用一定的標定工具和傳感器[6-8],使機器人工作精度從最大誤差0.04mm降到0.003mm。補償示意圖如圖5所示。
圖5 補償示意圖
建立了機器人動力學和運動學模型,對模型的分析可以得出很多誤差因素,通過專家PID對負載慣性力的研究和借助外部工具進行特定誤差補償研究,兩種方法都可以使誤差修正在一定的范圍內(nèi)。通過仿真結(jié)果可知,誤差修正精度會越來越好,綜合起來將會使整個機器人的控制精度更高。
[1] 馬履中,周建忠.機器人與柔性制造系統(tǒng)[M].北京:化學工業(yè)出版社,2007.
[2] 于靖軍,劉幸軍,丁希侖,等.機器人機構(gòu)學的數(shù)學基礎[M].北京:機械工業(yè)出版社,2008.
[3] 張永貴.噴漆機器人若干關鍵技術研究[D]:[碩士學位論文].西安:西安理工大學,2008.
[4] 許玉昆,陳彬,尤傳富.基于神經(jīng)網(wǎng)絡PID在直流伺服電機中的應用[J].長春工業(yè)大學學報:自然科學版,2010,31(6):679-682.
[5] 張靜.MATLAB在控制系統(tǒng)中的應用[M].北京:電子工業(yè)出版社,2007.
[6] 陳明濂.速度和負荷對機器人位置精度的影響[J].機器人,1988(1):19-21.
[7] 盧燕會.工業(yè)機器人工作空間和誤差補償?shù)姆治雠c仿真[D]:[碩士學位論文].焦作:河南理工大學,2010.
[8] Saha S K.Introduction to robotics[M].北京:機械工業(yè)出版社,2009.