朱雪梅,姚有峰,汪明珠
(皖西學(xué)院基礎(chǔ)實(shí)驗(yàn)中心傳感網(wǎng)與信息處理綜合應(yīng)用創(chuàng)新平臺(tái),安徽 六安237012)
隨著我國(guó)經(jīng)濟(jì)的發(fā)展,社會(huì)保障制度在逐漸得到完善,針對(duì)殘疾人士的基本型輔助器具的研發(fā)也受到了重視,可替代人手的機(jī)器人假肢研究變得更加重要[1]。機(jī)器人學(xué)的研究一般在機(jī)械結(jié)構(gòu)設(shè)計(jì)之初要進(jìn)行機(jī)器人運(yùn)動(dòng)學(xué)分析,機(jī)器人運(yùn)動(dòng)學(xué)方程的建立是為了對(duì)所設(shè)計(jì)的結(jié)構(gòu)進(jìn)行數(shù)學(xué)分析,方便對(duì)機(jī)器人運(yùn)動(dòng)軌跡進(jìn)行計(jì)算機(jī)仿真、機(jī)器人控制方程的設(shè)計(jì)以及機(jī)器人結(jié)構(gòu)和運(yùn)動(dòng)設(shè)計(jì)的計(jì)算[2](P3-4),從而實(shí)現(xiàn)對(duì)機(jī)器人假肢的控制,增強(qiáng)控制系統(tǒng)穩(wěn)定性,調(diào)高抗干擾能力[3]。解決機(jī)器人假肢運(yùn)動(dòng)學(xué)方程的主要方法有數(shù)值法和解析法,其中數(shù)值法計(jì)算方法簡(jiǎn)單,但計(jì)算速度慢,不能獲得全部的解。解析法能得到所有可能的解,但是計(jì)算過(guò)程復(fù)雜。將數(shù)值法的蒙特卡洛法和計(jì)算機(jī)仿真軟件MATLAB相結(jié)合,可以很好地解決機(jī)器人運(yùn)動(dòng)學(xué)方程解的問(wèn)題。
機(jī)器人假肢主要是需要通過(guò)對(duì)機(jī)械結(jié)構(gòu)的控制實(shí)現(xiàn)人體上下肢的基本功能,在對(duì)機(jī)器人假肢進(jìn)行設(shè)計(jì)之初,要充分考慮設(shè)計(jì)所需實(shí)現(xiàn)的功能,根據(jù)各個(gè)桿件的結(jié)構(gòu)以及自由度的數(shù)量設(shè)計(jì)出合理的假肢結(jié)構(gòu)圖。在機(jī)器人假肢結(jié)構(gòu)圖的基礎(chǔ)上,根據(jù)各個(gè)關(guān)節(jié)參數(shù)建立其D-H坐標(biāo)系,從而得到假肢運(yùn)動(dòng)學(xué)方程[4-6],建立機(jī)器人假肢的數(shù)學(xué)模型。對(duì)于機(jī)器人假肢控制系統(tǒng)的設(shè)計(jì),則主要是在結(jié)構(gòu)圖及運(yùn)動(dòng)學(xué)方程的基礎(chǔ)上對(duì)各個(gè)自由度及關(guān)節(jié)實(shí)現(xiàn)控制。
根據(jù)仿人形上肢的機(jī)器人上假肢的功能需求,充分考慮各個(gè)關(guān)節(jié)桿件的結(jié)構(gòu)參數(shù)設(shè)計(jì)了6自由度上假肢圖件,如圖1所示,基礎(chǔ)底部即肩部,又稱作0桿,通過(guò)0桿將假肢與人體固定;肩部旋轉(zhuǎn)構(gòu)件稱作1桿,通過(guò)該桿件實(shí)現(xiàn)人大臂的旋轉(zhuǎn)功能;大臂構(gòu)件稱作2桿,即實(shí)現(xiàn)人的大臂支撐功能;小臂轉(zhuǎn)動(dòng)支撐稱作3桿,即實(shí)現(xiàn)人的小臂支撐功能;小臂轉(zhuǎn)動(dòng)構(gòu)件稱作4桿,即實(shí)現(xiàn)人的小臂轉(zhuǎn)動(dòng)功能;假手構(gòu)件稱作5桿,即實(shí)現(xiàn)人的手部功能。該機(jī)器人上假肢包括6個(gè)自由度,其中5個(gè)是運(yùn)動(dòng)自由度,1個(gè)是手部局部自由度。根據(jù)其結(jié)構(gòu)與動(dòng)作特性,其各種參考如圖1所列,其中a圖是正視圖,b圖是側(cè)視圖。
6自由度機(jī)器人假肢運(yùn)動(dòng)學(xué)主要研究機(jī)器人假肢的運(yùn)動(dòng),包括上假肢的各個(gè)手部桿件機(jī)構(gòu)姿態(tài)以及各個(gè)關(guān)節(jié)運(yùn)動(dòng)角度等運(yùn)動(dòng)的學(xué)科[7](P98-100),在已知機(jī)器人假肢的所有連桿長(zhǎng)度和關(guān)節(jié)角度等的基礎(chǔ)上,計(jì)算出機(jī)械結(jié)構(gòu)末端手部的位姿[8](P49-50)。如果想要實(shí)現(xiàn)假肢手部末端抓取物體的功能,即控制手部末端到期望的位置,并且實(shí)現(xiàn)抓取及其他相關(guān)動(dòng)作,則必須知道假肢的連桿長(zhǎng)度和各個(gè)關(guān)節(jié)所需轉(zhuǎn)動(dòng)的角度,這就叫做逆運(yùn)動(dòng)學(xué)分析[9]。由此可見(jiàn),正運(yùn)動(dòng)學(xué)方程解的結(jié)果是唯一的,而逆運(yùn)動(dòng)學(xué)方程具有多解性,這就給假肢姿態(tài)問(wèn)題的求解帶來(lái)很大的困難[10]。首先要根據(jù)機(jī)器人假肢結(jié)構(gòu)圖建立D-H坐標(biāo)系(圖2)。
圖1 機(jī)器人假肢結(jié)構(gòu)圖
機(jī)器人假肢的運(yùn)動(dòng)學(xué)坐標(biāo)系如圖2所示,以大地坐標(biāo)系為基礎(chǔ)坐標(biāo)系,則機(jī)器人假肢的固定基坐標(biāo)x、y、z構(gòu)成的絕對(duì)坐標(biāo)系,原點(diǎn)位置設(shè)在基座與桿件的交點(diǎn)上,即大臂與手臂的支撐桿件的交點(diǎn)處。而坐標(biāo)x0、y0、z0構(gòu)成的坐標(biāo)系o0以及坐標(biāo)x1、y1、z1構(gòu)成的坐標(biāo)系o1的原點(diǎn)也是在此交點(diǎn)處,這樣建立固定基的便利之處是可以減少支撐處到大臂長(zhǎng)度d0的影響;由坐標(biāo)x2、y2、z2構(gòu)成的坐標(biāo)系o2與小臂連桿相連,坐標(biāo)z1和坐標(biāo)z2的距離是a2;由坐標(biāo)x3、y3、z3構(gòu)成的坐標(biāo)系o3與坐標(biāo)x2、y2、z2構(gòu)成的坐標(biāo)系o2在一個(gè)原點(diǎn),可以減少小臂抬起的過(guò)程中位移的影響;由坐標(biāo)x4、y4、z4構(gòu)成的坐標(biāo)系o4與手部相連,小臂長(zhǎng)為d4;由坐標(biāo)x5、y5、z5構(gòu)成的坐標(biāo)系o5的位置與手部工作中心點(diǎn)重合,其坐標(biāo)系是由手部的運(yùn)動(dòng)方式來(lái)確定的,坐標(biāo)系o4與坐標(biāo)系o5之間的距離為a5。在建立坐標(biāo)系時(shí),一定要注意第一個(gè)和最后一個(gè)坐標(biāo)系的原點(diǎn)的位置,它們將決定機(jī)器人的總變換方程。
圖2 機(jī)器人假肢的D-H坐標(biāo)圖
結(jié)合圖2“D-H法”建立的坐標(biāo)系圖,可以推導(dǎo)出機(jī)器人假肢的運(yùn)動(dòng)學(xué)方程,具體方法如下:首先根據(jù)坐標(biāo)圖確定各個(gè)關(guān)節(jié)的參考坐標(biāo)系,然后確定各個(gè)關(guān)節(jié)連接桿件相對(duì)于所選擇的基礎(chǔ)坐標(biāo)系的空間幾何關(guān)系,即關(guān)節(jié)坐標(biāo)系之間的變換,最后計(jì)算出機(jī)器人上假肢手部末端坐標(biāo)系和基礎(chǔ)坐標(biāo)系之間的變換矩陣,得到整個(gè)機(jī)器人上假肢的運(yùn)動(dòng)學(xué)方程。其中,根據(jù)變換矩陣的需要,表明坐標(biāo)間關(guān)系的四個(gè)參數(shù)為[8](P11):
ai:是從zi-1軸和zi軸間的最小距離;
αi:是由zi-1軸轉(zhuǎn)向zi軸繞xi軸的偏轉(zhuǎn)的關(guān)節(jié)角度(按右手規(guī)則);
θi:是由xi-1軸轉(zhuǎn)向xi軸繞zi-1軸的偏轉(zhuǎn)的關(guān)節(jié)角度(按右手規(guī)則);
di:是從第i-1坐標(biāo)系的原點(diǎn)到zi-1軸和xi軸的交點(diǎn)沿zi-1軸的距離。
由前面的原則可得,通過(guò)D-H法建立6自由度機(jī)械手臂運(yùn)動(dòng)學(xué)坐標(biāo)系參數(shù),如表1所示。
表1 機(jī)器人假肢連桿與關(guān)節(jié)參數(shù)
根據(jù)表1所示的參數(shù)得到A矩陣,并用A矩陣來(lái)表示T矩陣。機(jī)器人假肢的手部末端裝置即為連桿6的坐標(biāo)系,它與連桿i-1坐標(biāo)系的關(guān)系可由i-1T6表示為[4](P53):
其中:
根據(jù)式(1)可以列出其各桿件的A矩陣并將表(1)數(shù)據(jù)代入該矩陣可得:
用公式iT6=AiAi+1…A5類推:
于是,可求得機(jī)器人假肢的T變換矩陣
機(jī)器人假肢的工作空間就是機(jī)器人假肢正常受控制執(zhí)行動(dòng)作時(shí),手部末端構(gòu)件坐標(biāo)系的原點(diǎn)所能達(dá)到位置點(diǎn)的集合,是由整個(gè)上假肢自身的關(guān)節(jié)桿件長(zhǎng)度和旋轉(zhuǎn)角度等特性指標(biāo)決定的。對(duì)于機(jī)器人假肢,其機(jī)械結(jié)構(gòu)、連桿長(zhǎng)度、各個(gè)關(guān)節(jié)的坐標(biāo)系以及運(yùn)動(dòng)學(xué)方程都是已知的,則機(jī)器人假肢末端的手部能到達(dá)的點(diǎn)的集合就稱為機(jī)器人假肢的工作空間,可以通過(guò)數(shù)學(xué)方程結(jié)合機(jī)器人的連桿和關(guān)節(jié)的約束條件,求出每個(gè)關(guān)節(jié)的運(yùn)動(dòng)范圍。
機(jī)器人假肢有6個(gè)自由度,其工作空間的形成可以看做是各個(gè)自由度相對(duì)上個(gè)自由度旋轉(zhuǎn)運(yùn)動(dòng)所形成的空間,具體過(guò)程:手部末端執(zhí)行器的坐標(biāo)系o5繞桿件4坐標(biāo)系o4的z4軸旋轉(zhuǎn)到的坐標(biāo)位置,這些坐標(biāo)點(diǎn)在坐標(biāo)系o4中形成的空間W4(p);然后W4(p)隨桿件4的坐標(biāo)系o4一起繞桿件3坐標(biāo)系o3的z3軸旋轉(zhuǎn),則在坐標(biāo)系o3中形成了工作空間W3(p)。同樣的,在坐標(biāo)系o2、o1、o0分別旋轉(zhuǎn)后可以形成假肢各個(gè)關(guān)節(jié)桿件對(duì)應(yīng)的工作空間。由于各個(gè)關(guān)節(jié)的旋轉(zhuǎn)角度和桿件參數(shù)的限制,在機(jī)器人假肢各個(gè)關(guān)節(jié)自由度運(yùn)動(dòng)時(shí)可能會(huì)出現(xiàn)手部末端桿件不能達(dá)到的坐標(biāo)點(diǎn),這些坐標(biāo)位置點(diǎn)在工作空間之內(nèi)形成的空間稱為空腔,而穿透工作空間的坐標(biāo)點(diǎn)形成的空間則稱為空洞。
將機(jī)器人假肢運(yùn)動(dòng)學(xué)方程結(jié)合表1的桿件參數(shù)和關(guān)節(jié)可變化的范圍,解出手部末端機(jī)構(gòu)坐標(biāo)系原點(diǎn)的全部解,表1中連接桿件的長(zhǎng)度參數(shù)是確定的,則手部末端機(jī)構(gòu)的工作空間則主要是由各個(gè)關(guān)節(jié)角度變化量θi(i=1,2,3,4)決定的,用齊次坐標(biāo)表示為:
圖3 機(jī)器人假肢工作空間的蒙特卡洛分布圖
將隨機(jī)選取的關(guān)節(jié)變量值θi代入步驟(1)建立的機(jī)器人假肢運(yùn)動(dòng)學(xué)方程數(shù)學(xué)模型,即可得到假肢手部末端機(jī)構(gòu)在工作空間的任意可到達(dá)的點(diǎn)。(4)利用MATLAB仿真軟件的繪圖工具將這些點(diǎn)繪制成圖形顯示出來(lái),即機(jī)器人假肢手部末端機(jī)構(gòu)工作空間的蒙特卡洛分布圖。
可任意設(shè)置計(jì)算的循環(huán)次數(shù)并繪圖,選取的計(jì)算次數(shù)越多,則計(jì)算所得到的末端隨機(jī)點(diǎn)越多,但也增加了計(jì)算的數(shù)據(jù)量和仿真的時(shí)間,因此選擇合適的計(jì)算次數(shù)即可。綜合考慮選擇把計(jì)算循環(huán)次數(shù)設(shè)為5 000,對(duì)應(yīng)地可以得到假肢末端手部對(duì)應(yīng)的5 000個(gè)隨機(jī)點(diǎn),分析結(jié)果如圖3所示。
從程序仿真運(yùn)行結(jié)果可以看到,機(jī)器人假肢末端手部機(jī)構(gòu)的工作空間為一近似缺橢球的形狀,基本實(shí)現(xiàn)人類手臂在大臂固定時(shí)手部能到達(dá)的空間范圍點(diǎn)。且該空間范圍內(nèi)部空間緊湊,無(wú)空穴和空洞,蒙特卡洛法可以把機(jī)器人假肢的工作空間用圖形直觀顯示出來(lái),不僅可以直觀地看到所設(shè)計(jì)的假肢的理想效果,精確了軌跡規(guī)劃,而且有利于后續(xù)的控制系統(tǒng)的設(shè)計(jì)等工作。
針對(duì)仿人形上肢機(jī)器人假肢的基本功能需求,提出了一種基于6自由度機(jī)器人上假肢運(yùn)動(dòng)學(xué)和工作空間分析方法。根據(jù)所設(shè)計(jì)的假肢結(jié)構(gòu)圖數(shù)學(xué)模型,建立D-H坐標(biāo)系,并結(jié)合各個(gè)關(guān)節(jié)參數(shù)和角度變化進(jìn)行運(yùn)動(dòng)學(xué)方程的建立和工作空間的求解。借助蒙特卡洛方法,通過(guò)MATLAB進(jìn)行機(jī)器人假肢的工作空間的仿真分析。此方法不僅精確了機(jī)器人假肢軌跡規(guī)劃,而且對(duì)機(jī)器人假肢的設(shè)計(jì)具有實(shí)用價(jià)值。
[1]肖源.我國(guó)殘疾人輔助器具技術(shù)發(fā)展現(xiàn)狀及其原因的剖析[J].科技創(chuàng)新導(dǎo)報(bào),2011,3(28):246-246.
[2]黃真,孔令富,方躍法.并聯(lián)機(jī)器人機(jī)構(gòu)學(xué)理論及控制[M].北京:機(jī)械工業(yè)出版社,1997.
[3]田西勇.機(jī)器人軌跡規(guī)劃方法研究[D].北京:北京郵電大學(xué)(碩士學(xué)位論文),2008.
[4]蔡自興.機(jī)器人學(xué)[M].北京:清華大學(xué)出版社,2000.
[5]A.Green,J.Z.Sasiadek.Adaptive Control of a Flexible Robot Using Fuzzy Logic[J].Journal of Guidance and Dynamics,2005,28(1):36-42.
[6]孟慶鑫,王曉東.機(jī)器人技術(shù)基礎(chǔ)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2010.
[7](美)克來(lái)格(Craig,J.J.).機(jī)器人學(xué)導(dǎo)論[M].贠超,譯.北京:機(jī)械工業(yè)出版社,2006.
[8](美)尼庫(kù)(Niku,S.B.).機(jī)器人學(xué)導(dǎo)論——分析、系統(tǒng)及應(yīng)用[M].孫富春,譯.北京:電子工業(yè)出版社,2004.
[9]王海,蔡英鳳,張為公.一種7DOF機(jī)械臂逆運(yùn)動(dòng)學(xué)解析算法及應(yīng)用[J].江蘇大學(xué)學(xué)報(bào),2011(5):254-259.
[10]熊大柱.一種7自由度生機(jī)電假肢手臂的結(jié)構(gòu)設(shè)計(jì)及運(yùn)動(dòng)學(xué)分析[D].武漢:華中科技大學(xué)(碩士學(xué)位論文),2013.