魏厚忠, 薛 丹, 焦立奇, 白文峰
(長春工業大學電氣與電子工程學院,吉林長春 130012)
解決機器人問題首先必須建立相應的動力學和運動學模型,在此前提下分析和建立誤差模型。誤差修正的好與壞將直接影響到控制精度,產生誤差的原因有很多,如機器人各機械組件以及載荷的質量、重心和慣性,電機的轉矩、傳動力矩、摩擦轉矩、重力矩、科里奧利力矩、慣性矩和支承力矩,還有軸位、軸速度、軸加速度等。以前很多研究減少誤差的算法大多以直接誤差補償為主,這種方法需要大量的數據做統計學的支撐,文中通過在KUKA機器人系統里嵌入專家PID算法以及加上特定補償的算法,成功將誤差控制在0.01mm以內。

圖1 6自由度KUKA機器人
相對機器人運動學而言,機器人動力學問題顯得異常復雜。但同時機器人的動力學研究變得越來越重要,尤其在以高速重載自動設備需求日益強烈的今天,動力學問題越發突出。動力學分析是機器人控制、結構設計與驅動器選型的基礎。目前,分析機器人動力學的常用方法主要有拉格朗日法、牛頓-歐拉法、虛功原理法及凱恩方程等,文中將以最為經典的前兩種方法為基礎建立動力學模型。



這樣計算出每一個構件質心的線加速度和角加速度,再代入牛頓-歐拉方程式,由此可求出作用在每一個構件(第i構件)質心的慣性力和力矩。

分析動力學的基礎是達郎伯原理和虛位移原理。達郎伯原理引入慣性力的概念,使我們能夠用解決靜力學平衡問題的方法來處理動力學問題。虛位移原理引入虛位移和虛功的概念,給出了處理非自由質點系平衡問題的方法來處理動力學問題。將兩個原理結合起來,可推出質點系動力學普遍方程和拉格朗日方程[1]。
對具有N個自由度的機器人操作機構,拉格朗日方程式由N個二階非線性微分方程構成的方程組為:

式中:T——系統動能;
Qi——包括重力在內的外力對應于第i個廣義坐標的廣義力,i=1,2,…,n。
引入廣義力的量Q:

由數量對向量微分的法則,得

將式(5)寫成向量方程形式為:

系統總動能T等于各構件動能之和:

式中:M——n*n矩陣。

設向量Y表示廣義力中的除驅動力以外的廣義力,則有

則機器人操作器動力學方程的一般形式可寫為:

令

再將上面相應的式子進行微分處理,最終可以得到如下結果:
1)如果是求解直接動力學問題,可用下式求得:

2)如果是求解間接動力學問題,可用下式求得:

建立6自由度機器人模型,一個6軸串聯機械臂,得到機器人連桿坐標系,根據D-H法得到機械臂位姿的變換矩陣如下:


式中:An——根據D-H法建立的機械臂各個關節的變換矩陣。
其中


設在連續軌跡的起始點和終點機器人的姿態為(Ψ0,θ0,φ0)和(Ψ1,θ1,φ1),機器人運動連續平滑,姿態角度隨時間做線性變化。在時刻ti(t0<ti<t)手部姿態角為:

把姿態角和相應的位置值代入文中求出的機械臂逆運動學方程,就可以得出關節空間下的θ1,θ2,…,θ6值。同時,注意這些θ1,θ2,…,θ6值可能會有多解,由機構的奇異問題產生的無窮解,或無解(不可達)。對于多解程序會自動選擇離上一個路徑最近的解,保證機械臂各個旋轉軸運動連續[2]。
6軸機械臂的控制算法使機器人對輸入空間曲線計算出各關節的電機控制命令,使機器人沿曲線運動。同時,計算公式中各參數用符號表示,能夠運用到各種類似結構的機器人控制??刂扑惴ㄖ卸囗検讲逯捣ㄊ箼C械臂各關節運動的速度和加速度連續,避免運行生成的機器指令違背物理規律,不能正確執行任務。文中方法計算效率很高,100個點能在2s內計算完成。計算公式是單變量參數方程的形式,在運動的同時計算后面幾點,能適應實時控制的要求。
通過對機器人動力學模型的建立可以發現,在廣義力里面包含太多復雜力,這些力也會給機器人的精確控制帶來更多的難題。為了簡化和系統分析這些力帶來的誤差,特將廣義力Y=自身慣性力+負載慣性力+其它綜合慣性力集合。如果用單一控制算法來控制這個廣義力,控制效果肯定不好,如果在控制軸上形成軸放大,控制精度肯定達不到要求。為了消除這些誤差,文中在KUKA機器人控制系統中采用專家PID和固定誤差補償的方法進行修正誤差,專家控制PID的控制系統框圖如圖2所示。

圖2 專家控制PID的控制系統框圖
知識庫包括事實集、經驗數據、經驗公式和規則集;信息獲取與處理是通過底層閉環控制系統的反饋信息和輸入信息獲取控制系統的誤差、誤差變化量,以及系統動態特征信息(超調量上升時間等)。信息處理包括必要的特征識別和濾波等;控制算法集合中存放有控制策略和控制方法,如PID,PI,fuzzy和神經控制等;實時推理機是根據一定的推理策略從知識庫中選擇有關的知識,對所提供的控制算法、事實,以及實時采集的系統特征數據進行推理,直到得出相應的最佳控制決策,用決策結果指導控制作用;動態數據庫是用來存放推理過程中用到的數據、中間結果、實時采集與處理的數據[3]。
根據廣義力等式可以建立KUKA機器人被控對象的控制系統示意圖,如圖3所示。
根據6自由度KUKA機器人可以建立一個6階傳遞函數,對相應的采樣時間定為1ms,采用專家PID設計控制器[4],在仿真過程中,ε取 0.001,可以得到誤差響應曲線,如圖4所示。

圖3 控制系統示意圖

圖4 理想誤差響應曲線
以上仿真圖形主要針對負載慣性力對機器人控制精度的誤差仿真[5],由誤差響應圖可以知道,專家PID算法可以很好地解決負載慣性力對機器人帶來的誤差,對其它綜合慣性力誤差通過特定誤差補償的方式進行。根據KUKA機器人特定誤差補償標定前后的實驗數據見表1。

表1 實驗數據
通過對幾個點的誤差補償來看,補償值都是由相應的理論值減去實際值而得到,相應值的取得都是借用一定的標定工具和傳感器[6-8],使機器人工作精度從最大誤差0.04mm降到0.003mm。補償示意圖如圖5所示。

圖5 補償示意圖
建立了機器人動力學和運動學模型,對模型的分析可以得出很多誤差因素,通過專家PID對負載慣性力的研究和借助外部工具進行特定誤差補償研究,兩種方法都可以使誤差修正在一定的范圍內。通過仿真結果可知,誤差修正精度會越來越好,綜合起來將會使整個機器人的控制精度更高。
[1] 馬履中,周建忠.機器人與柔性制造系統[M].北京:化學工業出版社,2007.
[2] 于靖軍,劉幸軍,丁希侖,等.機器人機構學的數學基礎[M].北京:機械工業出版社,2008.
[3] 張永貴.噴漆機器人若干關鍵技術研究[D]:[碩士學位論文].西安:西安理工大學,2008.
[4] 許玉昆,陳彬,尤傳富.基于神經網絡PID在直流伺服電機中的應用[J].長春工業大學學報:自然科學版,2010,31(6):679-682.
[5] 張靜.MATLAB在控制系統中的應用[M].北京:電子工業出版社,2007.
[6] 陳明濂.速度和負荷對機器人位置精度的影響[J].機器人,1988(1):19-21.
[7] 盧燕會.工業機器人工作空間和誤差補償的分析與仿真[D]:[碩士學位論文].焦作:河南理工大學,2010.
[8] Saha S K.Introduction to robotics[M].北京:機械工業出版社,2009.