文/祝 冉 李著信 蘇 毅
隨著我國(guó)國(guó)民經(jīng)濟(jì)的飛速發(fā)展,機(jī)動(dòng)車輛的數(shù)量不斷增多,許多加油站正變得不堪重負(fù),為提高加油站的工作效率,減少污染,節(jié)省人才成本,未來將更多地使用加油機(jī)器人來完成加油工作。加油機(jī)器人由一個(gè)可移動(dòng)平臺(tái)和一個(gè)操作臂組成。可移動(dòng)平臺(tái)負(fù)責(zé)將整個(gè)機(jī)器人運(yùn)送到需要加油的機(jī)動(dòng)車位置,而操作臂則將加油槍準(zhǔn)確地插入機(jī)動(dòng)車油箱口,完成加油工作。可見,操作臂在整個(gè)系統(tǒng)中起著核心決定性作用。因此,本文主要針對(duì)操作臂進(jìn)行研究。
操作臂是加油機(jī)器人的執(zhí)行機(jī)構(gòu),要求能夠在工作空間內(nèi)靈活地到達(dá)任意位置。根據(jù)實(shí)際情況,設(shè)計(jì)四自由度的操作臂如圖1所示。
該操作臂由基座1、大臂2、小臂3、手部4共四個(gè)部分以及基座關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)、腕關(guān)節(jié)共四個(gè)關(guān)節(jié)組成。整個(gè)結(jié)構(gòu)為空間關(guān)節(jié)型,四個(gè)關(guān)節(jié)均是轉(zhuǎn)動(dòng)關(guān)節(jié)。其中,基座關(guān)節(jié)實(shí)現(xiàn)整個(gè)操作臂繞基座軸線的轉(zhuǎn)動(dòng);肩關(guān)節(jié)和肘關(guān)節(jié)帶動(dòng)大臂、小臂一起作俯仰運(yùn)動(dòng);作為末端執(zhí)行器的加油槍固結(jié)在手部上,且加油槍的軸線與手部軸線重合,腕關(guān)節(jié)不需作搖擺運(yùn)動(dòng)和繞自軸的旋轉(zhuǎn)運(yùn)動(dòng),只作俯仰運(yùn)動(dòng)。由以上四個(gè)關(guān)節(jié)即可確定加油槍相對(duì)于基座的位置與姿態(tài)。

圖1 加油機(jī)器人操作臂結(jié)構(gòu)簡(jiǎn)圖及D-H坐標(biāo)系
Denavit和Hartenberg在1995年提出了一種對(duì)機(jī)器人進(jìn)行建模的通用方法,即D-H表示法。它的核心思想是:在機(jī)器人的每個(gè)桿件上都固定一個(gè)坐標(biāo)系,然后用4*4的齊次變換矩陣來表示機(jī)器人相鄰兩桿件之間的位姿關(guān)系,再通過依次變換,最終推導(dǎo)出機(jī)器人手部相對(duì)基座坐標(biāo)系的位姿矩陣。
若用齊次坐標(biāo)變換矩陣(位姿矩陣)M表示機(jī)器人手部在空間相對(duì)基座坐標(biāo)系的位置和姿態(tài),并將機(jī)器人中n個(gè)活動(dòng)關(guān)節(jié)抽象為關(guān)節(jié)變量 (i=1,2,…,n),則機(jī)器人手部的位姿矩陣與關(guān)節(jié)變量之間有一定的函數(shù),即

在式(1)中,若已知機(jī)器人各個(gè)關(guān)節(jié)變量qi,求機(jī)器人手部相對(duì)于基座坐標(biāo)系的位姿M,則稱為機(jī)器人運(yùn)動(dòng)學(xué)正問題。
在圖1中建立桿件標(biāo)準(zhǔn)D-H坐標(biāo)系,其D-H參數(shù)如表1所示。

表1 加油機(jī)器人操作臂D-H參數(shù)
在每個(gè)桿件上都固定一個(gè)直角坐標(biāo)系,且固定于每個(gè)桿件的上端(編號(hào)大的)關(guān)節(jié)處,桿件的編號(hào)從基座開始,基座為0號(hào)桿件,與其相連接的桿件為1號(hào),其余依次為2,3,…,n號(hào)桿件,桿件上固結(jié)的坐標(biāo)系與該桿件同號(hào)。機(jī)器人的關(guān)節(jié)編號(hào)從第一個(gè)關(guān)節(jié)開始,依次計(jì)為1,2,3,…,n。用齊次變換矩陣01M表示第1桿系相對(duì)于基座坐標(biāo)系的位姿,12M表示第2桿系相對(duì)于第1桿系的位姿,表示第i桿系相對(duì)第i-1桿系的位姿,其余依次類推。

則機(jī)器人手部相對(duì)于基座坐標(biāo)系的變換矩陣為:

將表1中給出的D-H參數(shù)代入式(2)、式(3)中,可得加油機(jī)器人操作臂的正運(yùn)動(dòng)學(xué)方程

給定一組關(guān)節(jié)變量和參數(shù)的值,我們就可以利用式(4)計(jì)算出位姿矩陣中每個(gè)元素的值,得到一個(gè)唯一的位姿矩陣M。
在式(1)中,若已知機(jī)器人手部相對(duì)于基座坐標(biāo)系的位姿M,求機(jī)器人各個(gè)關(guān)節(jié)變量qi的值,則稱為機(jī)器人運(yùn)動(dòng)學(xué)逆問題。
其求解方法是利用機(jī)器人運(yùn)動(dòng)學(xué)方程兩端矩陣元素應(yīng)相等的原理得到一組多變量的三角函數(shù)方程,通過求解這組方程來確定機(jī)器人各個(gè)關(guān)節(jié)變量的值。逆問題的解不是唯一的,當(dāng)存在多個(gè)解時(shí),應(yīng)根據(jù)實(shí)際關(guān)節(jié)運(yùn)動(dòng)范圍的限制舍去一些解,在余下的有效解中,根據(jù)最接近原則,選取出一個(gè)最接近于當(dāng)前機(jī)器人操作臂的逆解。
根據(jù)式(2)中矩陣兩邊元素相等,可建立帶有關(guān)節(jié)變量的6個(gè)函數(shù)方程(5—10):

由(5)(6)兩式可得

又由(7)(8)兩式可得

聯(lián)立(9)(10)兩式,先移項(xiàng),再將其兩邊平方相加,即可解出

將(9)(10)兩式中的23cθ ,23sθ 展開,可得方程組

由于已知 c θ23,因此也可求得,即可將
cθ23,sθ23視為已知數(shù)代入方程組(14)中,可得

根據(jù)式(12),可得

綜上可知,式(11) 、(13)、(15)、(16)即為逆運(yùn)動(dòng)學(xué)方程。
通過利用MATLAB軟件中的機(jī)器人工具箱Robotics Toolbox來作計(jì)算,以此來驗(yàn)證我們所建立的加油機(jī)器人操作臂正、逆運(yùn)動(dòng)學(xué)方程的正確性。
根據(jù)實(shí)際工作情況和操作臂的工作空間限制,對(duì)各關(guān)節(jié)參數(shù)與變量賦予初值:

代入(4)中,得出位姿矩陣中各元素的值。


圖2 三維建模圖

圖3 滑動(dòng)控制框


可知,矩陣F中各元素的值與式(17)中各元素的值是相等的,所以加油機(jī)器人操作臂的正運(yùn)動(dòng)學(xué)方程是正確的。
現(xiàn)假設(shè)已知位姿矩陣F,我們將F中各元素的值代入式(11)、(13)、(15)、(16)中,可得兩個(gè)解

或

然后,我們利用函數(shù)ikine來求解關(guān)節(jié)變量
>> qr=ikine(r,F)
qr=-0.0000 0.5236 0.2618 0.2618
即qr = 0 pi/6 pi/12 pi/12
可知,我們利用MATLAB求出的解是逆方程式求出的兩個(gè)解(式18)的其中之一,所以加油機(jī)器人操作臂的逆運(yùn)動(dòng)學(xué)方程是正確的。
本文針對(duì)加油機(jī)器人操作臂進(jìn)行了結(jié)構(gòu)與參數(shù)設(shè)計(jì),采用標(biāo)準(zhǔn)D-H坐標(biāo)系建立了運(yùn)動(dòng)學(xué)方程,利用兩端矩陣元素應(yīng)相等的原理求出逆解,然后以MATLAB中的Robotics Toolbox為工具,并編寫建模與計(jì)算程序,驗(yàn)證了正、逆運(yùn)動(dòng)學(xué)方程,證明了所建立的加油機(jī)器人操作臂模型是正確的,為下一步動(dòng)力學(xué)分析與軌跡規(guī)劃奠定了基礎(chǔ)。
[1] 朱世強(qiáng),王宣銀. 機(jī)器人技術(shù)及其應(yīng)用[M]. 杭州:浙江大學(xué)出版社,2001.
[2] 蔡自興. 機(jī)器人學(xué)[M]. 北京:清華大學(xué)出版社,2000.
[3] 馬香海. 機(jī)器人機(jī)構(gòu)學(xué)[M].北京:機(jī)械工業(yè)出版社,1991.
[4] 景振毅,張澤兵,董霖.MATLAB 7.0實(shí)用寶典[M].北京:中國(guó)鐵道出版社,2009.
[5] 羅家佳,胡國(guó)清.基于Matlab的機(jī)器人運(yùn)動(dòng)仿真研究[J].廈門大學(xué)學(xué)報(bào),自然科技版,2005,44(5):640~644.
[6] J.J.Craig.Introduction to Robotics:Mechanics and Control[M].3rd ed.New York:Prentice Hal1,2005.
[7] P. Corke.A Robotics Toolbox for MATLAB[J].IEEE Robotics and automation Magazine,1996,3(1):24~32.8.
[8] Tan J D,xiN Hybird force/position Control of mobile mampulators.IFAC,2002.