第2章機(jī)器人位置運(yùn)動學(xué)_第1頁
已閱讀1頁,還剩49頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  第2章 機(jī)器人位置運(yùn)動學(xué)</p><p><b>  2.1 引言</b></p><p>  本章將研究機(jī)器人正逆運(yùn)動學(xué)。當(dāng)已知所有的關(guān)節(jié)變量時,可用正運(yùn)動學(xué)來確定機(jī)器人末端手的位姿。如果要使機(jī)器人末端手放在特定的點(diǎn)上并且具有特定的姿態(tài),可用逆運(yùn)動學(xué)來計(jì)算出每一關(guān)節(jié)變量的值。首先利用矩陣建立物體、位置、姿態(tài)以及運(yùn)動的表示方法,然后研究直角坐標(biāo)型

2、、圓柱坐標(biāo)型以及球坐標(biāo)型等不同構(gòu)型機(jī)器人的正逆運(yùn)動學(xué),最后利用Denavit-Hartenberg(D-H)表示法來推導(dǎo)機(jī)器人所有可能構(gòu)型的正逆運(yùn)動學(xué)方程。</p><p>  實(shí)際上,機(jī)器手型的機(jī)器人沒有末端執(zhí)行器,多數(shù)情況下,機(jī)器人上附有一個抓持器。根據(jù)實(shí)際應(yīng)用,用戶可為機(jī)器人附加不同的末端執(zhí)行器。顯然,末端執(zhí)行器的大小和長度決定了機(jī)器人的末端位置,即如果末端執(zhí)行器的長短不同,那么機(jī)器人的末端位置也不同。在這

3、一章中,假設(shè)機(jī)器人的末端是一個平板面,如有必要可在其上附加末端執(zhí)行器,以后便稱該平板面為機(jī)器人的“手”或“端面”。如有必要,還可以將末端執(zhí)行器的長度加到機(jī)器人的末端來確定末端執(zhí)行器的位姿。</p><p><b>  2.2 機(jī)器人機(jī)構(gòu)</b></p><p>  機(jī)器手型的機(jī)器人具有多個自由度(DOF),并有三維開環(huán)鏈?zhǔn)綑C(jī)構(gòu)。</p><p>

4、;  在具有單自由度的系統(tǒng)中,當(dāng)變量設(shè)定為特定值時,機(jī)器人機(jī)構(gòu)就完全確定了,所有其他變量也就隨之而定。如圖2.1所示的四桿機(jī)構(gòu),當(dāng)曲柄轉(zhuǎn)角設(shè)定為120°時,則連桿與搖桿的角度也就確定了。然而在一個多自由度機(jī)構(gòu)中,必須獨(dú)立設(shè)定所有的輸入變量才能知道其余的參數(shù)。機(jī)器人就是這樣的多自由度機(jī)構(gòu),必須知道每一關(guān)節(jié)變量才能知道機(jī)器人的手處在什么位置。</p><p>  圖2.1 具有單自由度閉環(huán)的四桿機(jī)構(gòu)<

5、/p><p>  如果機(jī)器人要在空間運(yùn)動,那么機(jī)器人就需要具有三維的結(jié)構(gòu)。雖然也可能有二維多自由度的機(jī)器人,但它們并不常見。</p><p>  機(jī)器人是開環(huán)機(jī)構(gòu),它與閉環(huán)機(jī)構(gòu)不同(例如四桿機(jī)構(gòu)),即使設(shè)定所有的關(guān)節(jié)變量,也不能確保機(jī)器人的手準(zhǔn)確地處于給定的位置。這是因?yàn)槿绻P(guān)節(jié)或連桿有絲毫的偏差,該關(guān)節(jié)之后的所有關(guān)節(jié)的位置都會改變且沒有反饋。例如,在圖2.2所示的四桿機(jī)構(gòu)中,如果連桿AB偏移

6、,它將影響桿。而在開環(huán)系統(tǒng)中(例如機(jī)器人),由于沒有反饋,之后的所有構(gòu)件都會發(fā)生偏移。于是,在開環(huán)系統(tǒng)中,必須不斷測量所有關(guān)節(jié)和連桿的參數(shù),或者監(jiān)控系統(tǒng)的末端,以便知道機(jī)器的運(yùn)動位置。通過比較如下的兩個連桿機(jī)構(gòu)的向量方程,可以表示出這種差別,該向量方程表示了不同連桿之間的關(guān)系。</p><p><b>  (2.1)</b></p><p><b> ?。?

7、.2)</b></p><p>  可見,如果連桿AB偏移,連桿也會相應(yīng)地移動,式(2.1)的兩邊隨連桿的變化而改變。而另一方面,如果機(jī)器人的連桿AB偏移,所有的后續(xù)連桿也會移動,除非有其他方法測量,否則這種變化是未知的。</p><p>  為了彌補(bǔ)開環(huán)機(jī)器人的這一缺陷,機(jī)器人手的位置可由類似攝像機(jī)的裝置來進(jìn)行不斷測量,于是機(jī)器人需借助外部手段(比如輔助手臂或激光束)來構(gòu)成閉

8、環(huán)系統(tǒng)?;蛘甙凑粘R?guī)做法,也可通過增加機(jī)器人連桿和關(guān)節(jié)強(qiáng)度來減少偏移,采用這種方法將導(dǎo)致機(jī)器人重量重、體積大、動作慢,而且它的額定負(fù)載與實(shí)際負(fù)載相比非常小。</p><p>  圖2.2 (a)閉環(huán)機(jī)構(gòu);(b)開環(huán)機(jī)構(gòu)</p><p>  2.3 機(jī)器人運(yùn)動學(xué)的矩陣表示</p><p>  矩陣可用來表示點(diǎn)、向量、坐標(biāo)系、平移、旋轉(zhuǎn)以及變換,還可以表示坐標(biāo)系中的物體

9、和其他運(yùn)動元件。</p><p>  2.3.1 空間點(diǎn)的表示</p><p>  空間點(diǎn)P(如圖2.3所示)可以用它的相對于參考坐標(biāo)系的三個坐標(biāo)來表示:</p><p><b>  (2.3)</b></p><p>  其中, 是參考坐標(biāo)系中表示該點(diǎn)的坐標(biāo)。顯然,也可以用其他坐標(biāo)來表示空間點(diǎn)的</p>

10、<p><b>  位置。</b></p><p>  圖2.3 空間點(diǎn)的表示</p><p>  2.3.2 空間向量的表示</p><p>  向量可以由三個起始和終止的坐標(biāo)來表示。如果一個向量起始于點(diǎn)A,終止于點(diǎn)B,那么它可以表示為。特殊情況下,如果一個向量起始于原點(diǎn)(如圖2.4所示),則有:</p><p&

11、gt;<b> ?。?.4)</b></p><p>  其中是該向量在參考坐標(biāo)系中的三個分量。實(shí)際上,前一節(jié)的點(diǎn)P就是用連接到該點(diǎn)的向量來表示的,具體地說,也就是用該向量的三個坐標(biāo)來表示。</p><p>  圖2.4 空間向量的表示</p><p>  向量的三個分量也可以寫成矩陣的形式,如式(2.5)所示。在本書中將用這種形式來表示運(yùn)動分

12、量:</p><p><b> ?。?.5)</b></p><p>  這種表示法也可以稍做變化:加入一個比例因子w,如果x, y, z各除以w,則得到。于是,這時向量可以寫為:</p><p>  ,其中等等 (2.6)</p><p>  變量w可以為任意數(shù),而且隨著它的變化,向

13、量的大小也會發(fā)生變化,這與在計(jì)算機(jī)圖形學(xué)中縮放一張圖片十分類似。隨著w值的改變,向量的大小也相應(yīng)地變化。如果w大于1,向量的所有分量都變大;如果w小于1,向量的所有分量都變小。這種方法也用于計(jì)算機(jī)圖形學(xué)中改變圖形與畫片的大小。</p><p>  如果w是1,各分量的大小保持不變。但是,如果w=0,則為無窮大。在這種情況下,x,y和z(以及)表示一個長度為無窮大的向量,它的方向即為該向量所表示的方向。這就意味著方

14、向向量可以由比例因子w=0的向量來表示,這里向量的長度并不重要,而其方向由該向量的三個分量來表示。</p><p>  例2.1 有一個向量P=3i+5j+2k,按如下要求將其表示成矩陣形式:</p><p><b> ?。?)比例因子為2</b></p><p>  (2)將它表示為方向的單位向量</p><p>&l

15、t;b>  解:</b></p><p>  該向量可以表示為比例因子為2的矩陣形式,當(dāng)比例因子為0時,則可以表示為方向向量,結(jié)果如下:</p><p><b>  和 </b></p><p>  然而,為了將方向向量變?yōu)閱挝幌蛄浚殞⒃撓蛄繗w一化使之長度等于1。這樣,向量的每一個分量都要除以三個分量平方和的開

16、方:</p><p><b>  ,等等和</b></p><p>  2.3.3 坐標(biāo)系在固定參考坐標(biāo)系原點(diǎn)的表示</p><p>  一個中心位于參考坐標(biāo)系原點(diǎn)的坐標(biāo)系由三個向量表示,通常著三個向量相互垂直,稱為單位向量,分別表示法線(normal)、指向(orientation)和接近(approach)向量(如圖2.5所示)。正如2.3

17、.3節(jié)所述,每一個單位向量都由它們所在參考坐標(biāo)系著的三個分量表示。這樣,坐標(biāo)系F可以由三個向量以矩陣的形式表示為:</p><p><b> ?。?.7)</b></p><p>  圖2.5 坐標(biāo)系在參考坐標(biāo)系原點(diǎn)的表示</p><p>  2.3.4 坐標(biāo)系在固定參考坐標(biāo)系中的表示</p><p>  如果一個坐標(biāo)系

18、不再固定參考坐標(biāo)系的原點(diǎn)(實(shí)際上也可包括在原點(diǎn)的情況),那么該坐標(biāo)系的原點(diǎn)相對于參考坐標(biāo)系的位置也必須表示出來。為此,在該坐標(biāo)系原點(diǎn)與參考坐標(biāo)系原點(diǎn)之間做一個向量來表示該坐標(biāo)系的位置(如圖2.6所示)。這個向量由相對于參考坐標(biāo)系的三個向量來表示。這樣,這個坐標(biāo)系就可以由三個表示方向的單位向量以及第四個位置向量來表示。</p><p><b> ?。?.8)</b></p>&l

19、t;p>  圖2.6 一個坐標(biāo)系在另一個坐標(biāo)系中的表示</p><p>  如式(2.8)所示,前三個向量是w=0的方向向量,表示該坐標(biāo)系的三個單位向量的方向,而第四個w=1的向量表示該坐標(biāo)系原點(diǎn)相對于參考坐標(biāo)系的位置。與單位向量不同,向量P的長度十分重要,因而使用比例因子為1。坐標(biāo)系也可以由一個沒有比例因子的34矩陣表示,但不常用。</p><p>  例2.2 如圖2.7所示的F

20、坐標(biāo)系位于參考坐標(biāo)系中3,5,7的位置,它的n軸與x軸平行,o軸相對于y軸的角度為45°,a軸相對于z軸的角度為45°。該坐標(biāo)系可以表示為:</p><p>  圖2.7 坐標(biāo)系在空間的表示舉例</p><p>  2.3.5 剛體的表示</p><p>  一個物體在空間的表示可以這樣實(shí)現(xiàn):通過在它上面固連一個坐標(biāo)系,再將該固連的坐標(biāo)系在空間表

21、示出來。由于這個坐標(biāo)系一直固連在該物體上,所以該物體相對于坐標(biāo)系的位姿是已知的。因此,只要這個坐標(biāo)系可以在空間表示出來,那么這個物體相對于固定坐標(biāo)系的位姿也就已知了(如圖2.8所示)。如前所述,空間坐標(biāo)系可以用矩陣表示,其中坐標(biāo)原點(diǎn)以及相對于參考坐標(biāo)系的表示該坐標(biāo)系姿態(tài)的三個向量也可以由該矩陣表示出來。于是有:</p><p><b>  (2.9)</b></p><p

22、>  如第1章所述,空間中的一個點(diǎn)只有三個自由度,它只能沿三條參考坐標(biāo)軸移動。但在空間的一個鋼體有六個自由度,也就是說,它不僅可以沿著X,Y,Z三軸移動,而且還可繞這三個軸轉(zhuǎn)動。因此,要全面地定義空間以物體,需要用6條獨(dú)立的信息來描述物體原點(diǎn)在參考坐標(biāo)系中相對于三個參考坐標(biāo)軸的位置,以及物體關(guān)于這三個坐標(biāo)軸的姿態(tài)。而式(2.9)給出了12條信息,其中9條為姿態(tài)信息,三條為位置信息(排除矩陣中最后一行的比例因子,因?yàn)樗鼈儧]有附加信息

23、)。顯然,在該表達(dá)式中必定存在一定的約束條件將上述信息數(shù)限制為6。因此,需要用6個約束方程將12條信息減少到6條信息。這些約束條件來自于目前尚未利用的已知的坐標(biāo)系特性,即:</p><p><b>  三個向量相互垂直</b></p><p>  每個單位向量的長度必須為1</p><p>  圖2.8 空間物體的表示</p>&

24、lt;p>  我們可以將其轉(zhuǎn)換為以下六個約束方程:</p><p> ?。?) </p><p> ?。?) </p><p> ?。?)

25、 </p><p> ?。?)(向量的長度必須為1) (2.10)</p><p><b> ?。?)</b></p><p>  (6) </p>&l

26、t;p>  因此,只有前述方程成立時,坐標(biāo)系的值才能用矩陣表示。否則,坐標(biāo)系將不正確。式(2.10)中前三個方程可以換用如下的三個向量的叉積來代替:</p><p><b> ?。?.11)</b></p><p>  例2.3 對于下列坐標(biāo)系,求解所缺元素的值,并用矩陣來表示這個坐標(biāo)系。</p><p><b>  解:<

27、;/b></p><p>  顯然,表示坐標(biāo)系原點(diǎn)位置的值5,3,2對約束方程無影響。注意在三個方向向量中只有三個值是給定的,但這也已足夠了。根據(jù)式(2.10),得:</p><p><b>  或 </b></p><p><b>  或 </b></p><p>&

28、lt;b>  或 </b></p><p><b>  或 </b></p><p><b>  或 </b></p><p><b>  或 </b></p><p><b>  將這些方程化簡得:&

29、lt;/b></p><p>  解這六個方程得:。應(yīng)注意,必須同號。非唯一解的原因是由于給出的參數(shù)可能得到兩組在相反方向上相互垂直的向量。最終得到的矩陣如下:</p><p><b>  或 </b></p><p>  由此可見,兩個矩陣都滿足約束方程的要求。但應(yīng)注意三個方向向量所表述的值不是任意的,而是受這些約束方程的約束,因此

30、不可任意給矩陣賦值。</p><p>  同樣,可通過叉乘并令其等于,即來求解,表示如下:</p><p><b>  或表示為:</b></p><p><b>  將值代入方程得:</b></p><p>  同時解下面這三個方程:</p><p>  以此來代替三個點(diǎn)乘

31、方程。聯(lián)立三個單位向量長度的約束方程,便得到六個方程,求解這六個方程,可得到相同的未知參數(shù)的解。</p><p>  2.4 齊次變換矩陣</p><p>  由于各種原因,變換矩陣應(yīng)寫成方型形式,33或44均可。首先,如后面看到的,計(jì)算方形矩陣的逆要比計(jì)算長方形矩陣的逆容易得多。其次,為使兩矩陣相乘,它們的維數(shù)必須匹配,即第一矩陣的列數(shù)必須與第二矩陣的行數(shù)相同。如果兩矩陣是方陣則無上述要

32、求。由于要以不同順序?qū)⒃S多矩陣乘在一起得到機(jī)器人運(yùn)動方程,因此,應(yīng)采用方陣進(jìn)行計(jì)算。</p><p>  為保證所表示的矩陣為方陣,如果在同一矩陣中既表示姿態(tài)又表示位置,那么可在矩陣中加入比例因子使之成為44矩陣。如果只表示姿態(tài),則可去掉比例因子得到33矩陣,或加入第四列全為0的位置數(shù)據(jù)以保持矩陣為方陣。這種形式的矩陣稱為齊次矩陣,它們寫為:</p><p> ?。?.12)

33、 </p><p><b>  2.5 變換的表示</b></p><p>  變換定義為空間的一個運(yùn)動。當(dāng)空間的一個坐標(biāo)系(一個向量、一個物體或一個運(yùn)動坐標(biāo)系)相對于固定參考坐標(biāo)系運(yùn)動時,這一運(yùn)動可以用類似于表示坐標(biāo)系的方式來表示。這是因?yàn)樽儞Q本身就是坐標(biāo)系狀態(tài)的變化(表示坐標(biāo)系位姿的變化),因此變換可以

34、用坐標(biāo)系來表示。變換可為如下幾種形式中的一種:</p><p><b>  純平移</b></p><p><b>  繞一個軸的純旋轉(zhuǎn)</b></p><p><b>  平移與旋轉(zhuǎn)的結(jié)合</b></p><p>  為了解它們的表示方法,我們將逐一進(jìn)行探討。</p&g

35、t;<p>  2.5.1 純平移變換的表示</p><p>  如果一坐標(biāo)系(它也可能表示一個物體)在空間以不變的姿態(tài)運(yùn)動,那么該坐標(biāo)就是純平移。在這種情況下,它的方向單位向量保持同一方向不變。所有的改變只是坐標(biāo)系原點(diǎn)相對于參考坐標(biāo)系的變化,如圖2.9所示。相對于固定參考坐標(biāo)系的新的坐標(biāo)系的位置可以用原來坐標(biāo)系的原點(diǎn)位置向量加上表示位移的向量求得。若用矩陣形式,新坐標(biāo)系的表示可以通過坐標(biāo)系左乘變換

36、矩陣得到。由于在純平移中方向向量不改變,變換矩陣T可以簡單地表示為:</p><p>  (2.13) </p><p>  圖2.9 空間純平移變換的表示</p><p>  其中是純平移向量相對于參考坐標(biāo)系軸的三個分量。可以看到,矩陣的前三列表示沒有旋轉(zhuǎn)運(yùn)動(等同

37、于單位陣),而最后一列表示平移運(yùn)動。新的坐標(biāo)系位置為:</p><p> ?。?.14) </p><p>  這個方程也可用符號寫為:</p><p>  (2.15) 首先,如前面所看到的,新坐標(biāo)系的

38、位置可通過在坐標(biāo)系矩陣前面左乘變換矩陣得到,后面將看到,無論以何種形式,這種方法對于所有的變換都成立。其次可以注意到,方向向量經(jīng)過純平移后保持不變。但是,新的坐標(biāo)系的位置是和向量相加的結(jié)果。最后應(yīng)該注意到,齊次變換矩陣與矩陣乘法的關(guān)系使得到的新矩陣的維數(shù)和變換前相同。</p><p>  例2.4 坐標(biāo)系F沿參考坐標(biāo)系的x軸移動9個單位,沿z軸移動5個單位。求新的坐標(biāo)系位置。</p><p&g

39、t;  解:由式(2.14)或式(2.15)得:</p><p>  = 和</p><p>  2.5.2 繞軸純旋轉(zhuǎn)變換的表示</p><p>  為簡化繞軸旋轉(zhuǎn)的推導(dǎo),首先假設(shè)該坐標(biāo)系位于參考坐標(biāo)系的原點(diǎn)并且與之平行,之后將結(jié)果推廣到其他的旋轉(zhuǎn)以及旋轉(zhuǎn)的組合。</p><p>  假設(shè)坐標(biāo)系()位于參考坐標(biāo)系()的原點(diǎn)

40、,坐標(biāo)系()繞參考坐標(biāo)系的x軸旋轉(zhuǎn)一個角度,再假設(shè)旋轉(zhuǎn)坐標(biāo)系()上有一點(diǎn)P相對于參考坐標(biāo)系的坐標(biāo)為,相對于運(yùn)動坐標(biāo)系的坐標(biāo)為。當(dāng)坐標(biāo)系繞x軸旋轉(zhuǎn)時,坐標(biāo)系上的點(diǎn)P也隨坐標(biāo)系一起旋轉(zhuǎn)。在旋轉(zhuǎn)之前,P點(diǎn)在兩個坐標(biāo)系中的坐標(biāo)是相同的(這時兩個坐標(biāo)系位置相同,并且相互平行)。旋轉(zhuǎn)后,該點(diǎn)坐標(biāo)在旋轉(zhuǎn)坐標(biāo)系(x ,y ,z)中保持不變,但在參考坐標(biāo)系中卻改變了(如圖2.10所示)?,F(xiàn)在要求找到運(yùn)動坐標(biāo)系旋轉(zhuǎn)后P相對于固定參考坐標(biāo)系的新坐標(biāo)。

41、 </p><p>  讓我們從x軸來觀察在二維平面上的同一點(diǎn)的坐標(biāo),圖2.10顯示了點(diǎn)P在坐標(biāo)系旋轉(zhuǎn)前后的坐標(biāo)。點(diǎn)P相對于參考坐標(biāo)系的坐標(biāo)是,而相對于旋轉(zhuǎn)坐標(biāo)系(點(diǎn)P所固連的坐標(biāo)系)的坐標(biāo)仍為。</p><p>  由圖2.11可以看出,不隨坐標(biāo)系統(tǒng)x軸的轉(zhuǎn)動而改變,而和卻改變了,可以證明:

42、 (2.16)</p><p><b>  寫成矩陣形式為:</b></p><p> ?。?.17) </p>

43、<p>  圖2.10 在坐標(biāo)系旋轉(zhuǎn)前后的點(diǎn)的坐標(biāo)</p><p>  圖2.11 相對于參考坐標(biāo)系的點(diǎn)的坐標(biāo)和從x軸上觀察旋轉(zhuǎn)坐標(biāo)系</p><p>  可見,為了得到在參考坐標(biāo)系中的坐標(biāo),旋轉(zhuǎn)坐標(biāo)系中的點(diǎn)P(或向量P)的坐標(biāo)必須左乘旋轉(zhuǎn)矩陣。這個旋轉(zhuǎn)矩陣只適用于繞參考坐標(biāo)系的x軸做純旋轉(zhuǎn)變換的情況,它可表示為:</p><p>  (2.18)

44、 </p><p>  注意在式(2.17)中,旋轉(zhuǎn)矩陣的第一列表示相對于x軸的位置,其值為1,0,0,它表示沿x軸的坐標(biāo)沒有改變。</p><p>  為簡化書寫,習(xí)慣用符號表示以及用表示。因此,旋轉(zhuǎn)矩陣也可寫為:</p><p> ?。?.19)

45、 </p><p>  可用同樣的方法來分析坐標(biāo)系繞參考坐標(biāo)系y軸和z軸旋轉(zhuǎn)的情況,可以證明其結(jié)果為:</p><p>  和 (2.20)</p><p>  式(2.18)也可寫為習(xí)慣的形式,以便于理解不同坐標(biāo)系間的關(guān)系,為此,可將該變換表示為 (讀作坐標(biāo)系R相對于坐標(biāo)系U(Universe)的變換),將表示為(P相對于坐標(biāo)系R)

46、,將表示為(P相對于坐標(biāo)系U),式(2.18)可簡化為:</p><p> ?。?.21) </p><p>  由上式可見,去掉R便得到了P相對于坐標(biāo)系U的坐標(biāo)。</p><p>  例2.5 旋轉(zhuǎn)坐標(biāo)系中有一點(diǎn)P,此坐標(biāo)系繞參考坐標(biāo)系x軸旋轉(zhuǎn)90度。求旋轉(zhuǎn)后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo),并且用圖解法檢驗(yàn)結(jié)果。</p><p>&

47、lt;b>  解:</b></p><p>  由于點(diǎn)P固連在旋轉(zhuǎn)坐標(biāo)系中,因此點(diǎn)P相對于旋轉(zhuǎn)坐標(biāo)系的坐標(biāo)在旋轉(zhuǎn)前后保持不變。該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為:</p><p>  如圖2.12所示,根據(jù)前面的變換,得到旋轉(zhuǎn)后P點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為2,-4,3.</p><p>  圖2.12 相對于參考坐標(biāo)系的坐標(biāo)系旋轉(zhuǎn)</p>

48、<p>  2.5.3 復(fù)合變換的表示</p><p>  復(fù)合變換是由固定參考坐標(biāo)系或當(dāng)前運(yùn)動坐標(biāo)系的一系列沿軸平移和繞軸旋轉(zhuǎn)變換所組成的。任何變換都可以分解為按一定順序的一組平移和旋轉(zhuǎn)變換。例如,為了完成所要求的變換,可以先繞x軸旋轉(zhuǎn),再沿軸平移,最后繞y軸旋轉(zhuǎn)。在后面將會看到,這個變換順序很重要,如果顛倒兩個依次變換的順序,結(jié)果將會完全不同。</p><p>  為了探討如

49、何處理復(fù)合變換,假定坐標(biāo)系()相對于參考坐標(biāo)系()依次進(jìn)行了下面三個變換:</p><p>  (1)繞x軸旋轉(zhuǎn)度;</p><p> ?。?)接著平移(分別相對于軸);</p><p> ?。?)最后繞y軸旋轉(zhuǎn)度。</p><p>  比如點(diǎn)固定在旋轉(zhuǎn)坐標(biāo)系,開始時旋轉(zhuǎn)坐標(biāo)系的原點(diǎn)與參考坐標(biāo)系的原點(diǎn)重合。隨著坐標(biāo)系()相對于參考坐標(biāo)系旋轉(zhuǎn)或

50、者平移時,坐標(biāo)系中的P點(diǎn)相對于參考坐標(biāo)系也跟著改變。如前面所看到的,第一次變換后,P點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)可用下列方程進(jìn)行計(jì)算。</p><p>  (2.22) </p><p>  其中,是第一次變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。第二次變換后,該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)是

51、: </p><p>  同樣,第三次變換后,該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為:</p><p>  可見,每次變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)都是通過用每個變換矩陣左乘該點(diǎn)的坐標(biāo)得到的。當(dāng)然,矩陣的順序不能改變。同時還應(yīng)注意,對于相對于參考坐標(biāo)系的每次變換,矩陣都是左乘的。因此,矩陣書寫的順序和進(jìn)行變換的順序正好相反。</p><p>  例2.6 固連在坐標(biāo)系()上

52、的點(diǎn)P經(jīng)歷如下變換,求出變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。</p><p>  (1)繞z軸旋轉(zhuǎn)90度;</p><p>  (2)接著繞y軸旋轉(zhuǎn)90度;</p><p>  (3)接著再平移[4,-3,7]。</p><p><b>  解:</b></p><p>  表示該變換的矩陣方程為:

53、</p><p>  從圖2.13可以看到,()坐標(biāo)系首先繞z軸旋轉(zhuǎn)90度,接著繞y軸旋轉(zhuǎn),最后相對于參考坐標(biāo)系的軸平移。坐標(biāo)系中的P點(diǎn)相對于軸的位置如圖所示,最后該點(diǎn)在軸上的坐標(biāo)分別為4+2=6,-3+7=4,7+3=10。請確認(rèn)也能從圖中理解上述結(jié)果。</p><p>  圖2.13 三次順序變換的結(jié)果</p><p>  例2.7 根據(jù)上例,假定()坐標(biāo)系上的

54、點(diǎn)經(jīng)歷相同變換,但變換按如下不同順序進(jìn)行,求出變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。</p><p> ?。?)繞z軸旋轉(zhuǎn)90度;</p><p> ?。?)接著平移[4,-3,7];</p><p> ?。?)接著再繞y軸旋轉(zhuǎn)90度。</p><p><b>  解:</b></p><p>  表

55、示該變換的矩陣方程為:</p><p>  不難發(fā)現(xiàn),盡管所有的變換與例2.6完全相同,但由于變換的順序變了,該點(diǎn)最終坐標(biāo)與前例完全不同。用圖2.14可以清楚地說明這點(diǎn),這時可以看出,盡管第一次變換后坐標(biāo)系的變化與前例完全相同,但第二次變換后結(jié)果就完全不同,這是由于相對于參考坐標(biāo)系軸的平移使得旋轉(zhuǎn)坐標(biāo)系向外移動了。經(jīng)第三次變換,該坐標(biāo)系將繞參考坐標(biāo)系y軸旋轉(zhuǎn),因此向下旋轉(zhuǎn)了,坐標(biāo)系上點(diǎn)P的位置也顯示在圖中。<

56、;/p><p>  請證明該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為7+2=9,-3+7=4和-4+3=-1,它與解析的結(jié)果相同。</p><p>  圖2.14 變換的順序改變將改變最終結(jié)果</p><p>  2.5.4 相對于旋轉(zhuǎn)坐標(biāo)系的變換</p><p>  到目前為止,本書所討論的所有變換都是相對于固定參考坐標(biāo)系。也就是說,所有平移、旋轉(zhuǎn)和距離(除

57、了相對于運(yùn)動坐標(biāo)系的點(diǎn)的位置)都是相對參考坐標(biāo)系軸來測量的。然而事實(shí)上,也有可能做相對于運(yùn)動坐標(biāo)系或當(dāng)前坐標(biāo)系的軸的變換。例如,可以相對于運(yùn)動坐標(biāo)系(也就是當(dāng)前坐標(biāo)系)的n軸而不是參考坐標(biāo)系的x軸旋轉(zhuǎn)90度。為計(jì)算當(dāng)前坐標(biāo)系中的點(diǎn)的坐標(biāo)相對于參考坐標(biāo)系的變化,這時需要右乘變換矩陣而不是左乘。由于運(yùn)動坐標(biāo)系中的點(diǎn)或物體的位置總是相對于運(yùn)動坐標(biāo)系測量的,所以總是右乘描述該點(diǎn)或物體的位置矩陣。</p><p>  例2

58、.8 假設(shè)與例2.7中相同的點(diǎn)現(xiàn)在進(jìn)行相同的變換,但所有變換都是相對于當(dāng)前的運(yùn)動坐標(biāo)系,具體變換出如下。求出變換完成后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。</p><p> ?。?)繞軸旋轉(zhuǎn)90度;</p><p>  (2)然后沿軸平移[4,-3,7];</p><p> ?。?)接著繞軸旋轉(zhuǎn)90度。</p><p><b>  解:&l

59、t;/b></p><p>  在本例中,因?yàn)樗髯儞Q是相對于當(dāng)前坐標(biāo)系的,因此右乘每個變換矩陣,可得表示該坐標(biāo)的方程為:</p><p>  如所期望的,結(jié)果與其他各例完全不同,不僅因?yàn)樗髯儞Q是相對于當(dāng)前坐標(biāo)系的,而且也因?yàn)榫仃図樞虻母淖?。下面的圖展示了這一結(jié)果,應(yīng)注意它是怎樣相對于當(dāng)前坐標(biāo)來完成這個變換的。</p><p>  同時應(yīng)注意,在當(dāng)前坐標(biāo)系中

60、p點(diǎn)的坐標(biāo)7,3,2是變換后得到相對于參考坐標(biāo)系的坐標(biāo)0,6,0的。</p><p>  圖2.15 相對于當(dāng)前坐標(biāo)系的變換</p><p>  例2.9 坐標(biāo)系B繞x軸旋轉(zhuǎn)90°,然后沿當(dāng)前坐標(biāo)系a軸做了3英寸的平移,然后在繞z軸旋轉(zhuǎn)90,最后沿當(dāng)前坐標(biāo)系o軸做5英寸的平移。</p><p>  (a)寫出描述該運(yùn)動的方程。</p>&l

61、t;p>  (b)求坐標(biāo)系中的點(diǎn)p(1,5,4)相對于參考坐標(biāo)系的最終位置。</p><p><b>  解:</b></p><p>  在本例中,相對于參考坐標(biāo)系以及當(dāng)前坐標(biāo)系的運(yùn)動是交替進(jìn)行的。</p><p>  (a)相應(yīng)地左乘或右乘每個運(yùn)動矩陣,得到:</p><p>  =Rot(z,90)Rot(x

62、,90)Trans(0,0,3)Trans(0,5,0)</p><p>  (b)帶入具體的矩陣并將它們相乘,得到:</p><p>  2.6 變換矩陣的逆</p><p>  正如前面所提到的,在機(jī)器人分通過析中有很多地方要用到矩陣的逆,在下面的例子中可以看到一種涉及變換矩陣的情況。在圖2.16中,假設(shè)機(jī)器人要在零件p上鉆孔而須向零件p處移動。機(jī)器人基座相對于

63、參考坐標(biāo)系u的位置用坐標(biāo)系R來描述,機(jī)器人手用坐標(biāo)系H來描述,末端執(zhí)行器(即用來鉆孔的鉆頭的末端)用坐標(biāo)系E來描述,零件的位置用坐標(biāo)系P來描述。鉆孔的點(diǎn)的位置于參考坐標(biāo)系U可以通過兩個獨(dú)立的路徑發(fā)生聯(lián)系:一個是通過該零件的路徑,另一個是通過機(jī)器人的路徑。因此,可以寫出下面的方程:</p><p> ?。?.24)

64、 </p><p>  這就是說,該零件中點(diǎn)E的位置可以通過從U變換到P,并從P變換到E來完成,或者從U變換到R,從R變換到H,再從H變換到E。</p><p>  圖2.16 全局坐標(biāo)系、機(jī)器人坐標(biāo)系、手坐標(biāo)系、零件坐標(biāo)系及末端執(zhí)行器坐標(biāo)系</p><p>  事實(shí)上,由于在任何情況下機(jī)器人的基座位置在安裝時就是已知的,因此變換(坐標(biāo)系R相對于坐標(biāo)系U的變換)

65、時已知的。比如,一個機(jī)器人安裝在一個工作臺上,由于它被緊固在工作臺上,所以它的基座的位置時已知的。即使機(jī)器人時可移的或放在傳送帶上,因?yàn)榭刂破魇冀K掌控著機(jī)器人基座的運(yùn)動,因此它在任意時刻的位置也是已知的。由于用于末端執(zhí)行器的任何器械都是已知的,而且其尺寸和結(jié)構(gòu)也是已知的,所以(機(jī)器人末端執(zhí)行器相對于機(jī)器人手的變換)也是已知的。此外,(零件相對于全局坐標(biāo)系的變換)也是已知的,還必須要知道將在其上面鉆孔的零件的位置,該位置可以通過將該零件放

66、在鉆模上,讓后用照相機(jī),視覺系統(tǒng),傳送帶,傳感器或其他類似儀器來確定。最后需要知道零件上鉆孔的位置,所以也是已知的。此時,唯一未知的變換就是(機(jī)器人手相對于機(jī)器人基座的變換)。因此,必須找出機(jī)器人的關(guān)節(jié)變量(機(jī)器人旋轉(zhuǎn)關(guān)節(jié)的角度以及滑動關(guān)節(jié)的連桿長度),以便將末端執(zhí)行器定位在要鉆孔的位置上??梢?,必須要計(jì)算出這個變換,它指出機(jī)器人需要完成的工作。后面將用所求出的變換來求解機(jī)器人關(guān)節(jié)的角度和連桿的長度。</p><p&

67、gt;  不能像在代數(shù)方程中那樣來計(jì)算這個矩陣,即不能簡單的用方程的右邊除以方程的左邊,而應(yīng)該用合適的矩陣的逆并通過左乘或右乘來將它們從左邊去調(diào)。因此有:</p><p><b>  (2.25)</b></p><p>  由于和,式(2.25)的左邊可簡化為,于是得:</p><p><b>  (2.26)</b>&

68、lt;/p><p>  該方程的正確性可以通過認(rèn)為與相同來加以檢驗(yàn)。因此,該方程可重寫為:</p><p><b> ?。?.27)</b></p><p>  顯然為了對機(jī)器人運(yùn)動學(xué)進(jìn)行分析,需要能夠計(jì)算變換矩陣的逆。</p><p>  我們來看看關(guān)于x軸的簡單旋轉(zhuǎn)矩陣的求逆計(jì)算情況。關(guān)于x軸的旋轉(zhuǎn)矩陣是:</p&

69、gt;<p><b> ?。?.28)</b></p><p>  必須采用一下的步驟來計(jì)算矩陣的逆:</p><p><b>  計(jì)算矩陣的行列式;</b></p><p><b>  將矩陣轉(zhuǎn)置;</b></p><p>  將轉(zhuǎn)置矩陣的每個元素用它的子行列式

70、(伴隨矩陣)代替;</p><p>  用轉(zhuǎn)換后的矩陣除以行列式。</p><p>  將上面的步驟用到該旋轉(zhuǎn),得到:</p><p>  現(xiàn)在計(jì)算每一個子行列式(伴隨矩陣)。例如,元素2,2的子行列式是,元素1,1的子行列式??梢宰⒁獾?,這里的每一個元素的子行列式與其本身相同,因此有:</p><p>  由于原旋轉(zhuǎn)矩陣的行列式為1,因此用

71、矩陣除以行列式仍得出相同的結(jié)果。因此,關(guān)于x軸的旋轉(zhuǎn)矩陣的逆的行列式與它的轉(zhuǎn)置矩陣相同,即:</p><p><b> ?。?.29)</b></p><p>  當(dāng)然,如果采用附錄A中提到的第二種方法也能得到同樣的結(jié)果。具有這種特征的矩陣稱為酉矩陣,也就是說所有的旋轉(zhuǎn)矩陣都是酉矩陣。因此,計(jì)算旋轉(zhuǎn)矩陣的逆就是將該矩陣轉(zhuǎn)置??梢宰C明,關(guān)于y軸和z軸的旋轉(zhuǎn)矩陣同樣也是酉

72、矩陣。</p><p>  應(yīng)注意,只有旋轉(zhuǎn)矩陣才是酉矩陣。如果一個矩陣不是一個簡單的旋轉(zhuǎn)矩陣,那么它也許就不是酉矩陣。 </p><p>  以上結(jié)論只對簡單的不表示位置的3×3旋轉(zhuǎn)矩陣成立。對一個齊次的4×4變換矩陣而言,它的求逆可以將矩陣分為兩部分。矩陣的旋轉(zhuǎn)部分仍是酉矩陣,只需簡單的轉(zhuǎn)置;矩陣的位置部分是向量分別與向量點(diǎn)積的負(fù)值,其結(jié)果為:</p>

73、<p><b> ?。?.30)</b></p><p>  如上所示,矩陣的旋轉(zhuǎn)部分是簡單的轉(zhuǎn)置,位置的部分由點(diǎn)乘的負(fù)值代替,而最后一行(比例因子)則不受影響。這樣做對于計(jì)算變換矩陣的逆是很有幫助的,而直接計(jì)算4×4矩陣的逆是一個很冗長的過程。</p><p>  例2.10 計(jì)算表示的矩陣</p><p>  解:繞x

74、軸旋轉(zhuǎn)40°的矩陣為:</p><p><b>  其矩陣的逆是:</b></p><p>  需注意的是,由于矩陣的位置向量為0,它與向量的點(diǎn)積也為零。</p><p>  例2.11 計(jì)算如下變換矩陣的逆。</p><p><b>  解:</b></p><p&g

75、t;  根據(jù)先前的計(jì)算,變換矩陣的逆是:</p><p><b>  可以證明是單位陣。</b></p><p>  例2.12 一個具有六個自由度的機(jī)器人的第五個連桿上裝有照相機(jī),照相機(jī)觀察物體并測定它相對于照相機(jī)坐標(biāo)系的位置,然后根據(jù)以下數(shù)據(jù)來確定末端執(zhí)行器要到達(dá)物體所必須完成的運(yùn)動。</p><p><b>  解:</b

76、></p><p>  參照式(2.24),可以寫出一個與它類似的方程,它將不同的變換和坐標(biāo)系聯(lián)系在一起。</p><p>  由于方程兩邊都有,所以可以將它消去。除了之外所有其他矩陣都是已知的,所以:</p><p>  將矩陣及矩陣的逆代入前面的方程,得:</p><p>  2.7 機(jī)器人的正逆運(yùn)動學(xué)</p><

77、;p>  假設(shè)有一個構(gòu)型已知的機(jī)器人,即它的所有連桿長度和關(guān)節(jié)角度都是已知的,那么計(jì)算機(jī)器人手的位姿就稱為正運(yùn)動學(xué)分析。換言之,如果已知所有機(jī)器人關(guān)節(jié)變量,用正運(yùn)動學(xué)方程就能計(jì)算任一瞬間機(jī)器人的位姿。然而,如果想要將機(jī)器人的手放在一個期望的位姿,就必須知道機(jī)器人的每一個連桿的長度和關(guān)節(jié)的角度,才能將手定位在所期望的位姿,這就叫做逆運(yùn)動學(xué)分析,也就是說,這里不是把已知的機(jī)器人變量代入正向運(yùn)動學(xué)方程中,而是要設(shè)法找到這些方程的逆,從而

78、求得所需的關(guān)節(jié)變量,使機(jī)器人放置在期望的位姿。事實(shí)上,逆運(yùn)動學(xué)方程更為重要,機(jī)器人的控制器將用這些方程來計(jì)算關(guān)節(jié)值,并以此來運(yùn)行機(jī)器人到達(dá)期望的位姿。下面首先推導(dǎo)機(jī)器人的正運(yùn)動學(xué)方程,然后利用這些方程來計(jì)算逆運(yùn)動學(xué)方程。</p><p>  對正運(yùn)動學(xué),必須推導(dǎo)出一組與機(jī)器人特定構(gòu)型(將構(gòu)件組合在一起構(gòu)成機(jī)器人的方法)有關(guān)的方程,以使得將有關(guān)的關(guān)節(jié)和連桿變量代入這些方程就能計(jì)算出機(jī)器人的位姿,然后可用這些方程推出

79、逆運(yùn)動學(xué)方程。</p><p>  根據(jù)第一章中的相關(guān)內(nèi)容,要確定一個剛體在空間的位姿,須在物體上固連一個坐標(biāo)系,然后描述該坐標(biāo)系的原點(diǎn)位置和它三個軸的姿態(tài),總共需要六個自由度或六條信息來完整地定義該物體的位姿。同理,如果要確定或找到機(jī)器人手在空間的位姿,也必須在機(jī)器人手上固連一個坐標(biāo)系并確定機(jī)器人手坐標(biāo)系的位姿,這正是機(jī)器人正運(yùn)動學(xué)方程所要完成的任務(wù)。換言之,根據(jù)機(jī)器人連桿和關(guān)節(jié)的構(gòu)型配置,可用一組特定的方程來

80、建立機(jī)器人手的坐標(biāo)系和參考坐標(biāo)系之間的聯(lián)系。圖2.17所示為機(jī)器人手的坐標(biāo)系、參考坐標(biāo)系以及它們的相對位姿,兩個坐標(biāo)系之間的關(guān)系與機(jī)器人的構(gòu)型有關(guān)。當(dāng)然,機(jī)器人可能有許多不同的構(gòu)型,后面將會看到將如何根據(jù)機(jī)器人的構(gòu)型來推導(dǎo)出與這兩個坐標(biāo)系相關(guān)的方程。</p><p>  為使過程簡化,可分別分析位置和姿態(tài)問題,首先推導(dǎo)出位置方程,然后再推導(dǎo)出姿態(tài)方程,再將兩者結(jié)合在一起而形成一組完整的方程。最后,將看到關(guān)于Den

81、avit-Hartenberg表示法的應(yīng)用,該方法可用于對任何機(jī)器人構(gòu)型建模。</p><p>  圖2.17 機(jī)器人的手坐標(biāo)系相對于參考坐標(biāo)系</p><p>  2.7.1 位置的正逆運(yùn)動學(xué)方程</p><p>  對于機(jī)器人的定位,可以通過相對于任何慣用坐標(biāo)系的運(yùn)動來實(shí)現(xiàn)。比如,基于直角坐標(biāo)系對空間的一個點(diǎn)定位,這意味著有三個關(guān)于軸的線性運(yùn)動,此外,如果用球坐

82、標(biāo)來實(shí)現(xiàn),就意味著需要有一個線性運(yùn)動和兩個旋轉(zhuǎn)運(yùn)動。常見的情況有:</p><p>  (a)笛卡爾(臺架,直角)坐標(biāo)</p><p><b>  (b)圓柱坐標(biāo)</b></p><p><b>  (c)球坐標(biāo)</b></p><p>  (d)鏈?zhǔn)?擬人或全旋轉(zhuǎn))坐標(biāo)</p>&l

83、t;p>  2.7.1.1 笛卡爾(臺架,直角)坐標(biāo)</p><p>  這種情況下有三個沿軸的線性運(yùn)動,這一類型的機(jī)器人所有的驅(qū)動機(jī)構(gòu)都是線性的(比如液壓活塞或線性動力絲杠),這時機(jī)器人手的定位是通過三個線性關(guān)節(jié)分別沿三個軸的運(yùn)動來完成的(如圖2.18所示)。臺架式機(jī)器人基本上就是一個直角坐標(biāo)機(jī)器人,只不過是將機(jī)器人固連在一個朝下的直角架上。IBM7565機(jī)器人就是一個臺架式直角坐標(biāo)機(jī)器人。</p&

84、gt;<p>  圖2.18 直角坐標(biāo)</p><p>  當(dāng)然,如果沒有旋轉(zhuǎn)運(yùn)動,表示向P點(diǎn)運(yùn)動的變換矩陣是一種簡單的平移變換矩陣,下面將可以看到這一點(diǎn)。注意這里只涉及坐標(biāo)系原點(diǎn)的定位,而不涉及姿態(tài)。在直角坐標(biāo)系中,表示機(jī)器人手位置的正運(yùn)動學(xué)變換矩陣為:</p><p><b>  (2.31)</b></p><p>  其中

85、是參考坐標(biāo)系與手坐標(biāo)系原點(diǎn)P的變換矩陣,而表示直角坐標(biāo)變換矩陣。對于逆運(yùn)動學(xué)的求解,只需簡單地設(shè)定期望的位置等于P.</p><p>  例2.13 要求笛卡爾坐標(biāo)機(jī)器人手坐標(biāo)系原點(diǎn)定位在點(diǎn)P=,計(jì)算所需要的笛卡兒坐標(biāo)運(yùn)動。</p><p><b>  解:</b></p><p>  設(shè)定正運(yùn)動學(xué)方程用式(2.31)中的矩陣表示,根據(jù)期望的位

86、置可得知如下結(jié)果:</p><p>  2.7.1.2 圓柱坐標(biāo)</p><p>  圓柱型坐標(biāo)系統(tǒng)包括兩個線性平移運(yùn)動和一個旋轉(zhuǎn)運(yùn)動。其順序?yàn)椋合妊剌S移動,再繞軸旋轉(zhuǎn)角,最后沿軸移動,如圖2.19所示。這三個變換建立了手坐標(biāo)系與參考坐標(biāo)系之間的聯(lián)系。由于這些變換都是相對于全局參考坐標(biāo)系的坐標(biāo)軸的,因此由這三個變換所產(chǎn)生的總變換可以通過依次左乘每一個矩陣而求得:</p>&l

87、t;p><b> ?。?.32)</b></p><p><b> ?。?.33)</b></p><p>  經(jīng)過一系列變換后,前三列表示了坐標(biāo)系的姿態(tài),然而我們只對坐標(biāo)系的原點(diǎn)位置即最后一列感興趣。顯然,在圓柱型坐標(biāo)運(yùn)動中,由于繞z軸旋轉(zhuǎn)了角,運(yùn)動坐標(biāo)系的姿態(tài)也將改變,這一改變將在后面討論。</p><p>  

88、實(shí)際上,可以通過繞坐標(biāo)系中的軸旋轉(zhuǎn)角度使坐標(biāo)系回轉(zhuǎn)到和初始參考坐標(biāo)系平行的狀態(tài),它等效于圓柱坐標(biāo)矩陣右乘旋轉(zhuǎn)矩陣,其結(jié)果是,該坐標(biāo)系的位置仍在同一地方,但其姿態(tài)再次平行于參考坐標(biāo)系,如下所示:</p><p>  圖2.19 圓柱坐標(biāo)</p><p>  由此可見,運(yùn)動坐標(biāo)系的原點(diǎn)位置沒有改變,但它轉(zhuǎn)回到了與參考坐標(biāo)系平行的狀態(tài)。需注意的是,最后的旋轉(zhuǎn)是繞本地坐標(biāo)系的軸的,其目的是為了不引

89、起坐標(biāo)系位置的任何改變,而只改變姿態(tài)。</p><p>  例2.14 假設(shè)要將圓柱坐標(biāo)機(jī)器人手坐標(biāo)系的原點(diǎn)放在,計(jì)算該機(jī)器人的關(guān)節(jié)變量。</p><p><b>  解:</b></p><p>  根據(jù)式(2.33)的矩陣,將手坐標(biāo)系原點(diǎn)的位置分量設(shè)置為期望值,可以得到:</p><p>  于是有:

90、 </p><p>  將代入其中任何一個方程,可得,最終結(jié)果是:</p><p>  應(yīng)注意:必須確保在機(jī)器人運(yùn)動學(xué)中計(jì)算的角度位于正確的象限。在這個例子中,請注意和都是正的,并且也是正的,這樣角度便在第一象限,且為53.1°。</p><p>  2.7.1.3 球坐標(biāo)</p><p>  如圖2.20所示,球坐標(biāo)系統(tǒng)由一

91、個線性運(yùn)動和兩個旋轉(zhuǎn)運(yùn)動組成,運(yùn)動順序?yàn)椋合妊貁軸平移r,再繞y軸旋轉(zhuǎn)并繞z軸旋轉(zhuǎn)。這三個變換建立了手坐標(biāo)系與參考坐標(biāo)系之間的聯(lián)系。由于這些變換都是相對于全局參考坐標(biāo)系的坐標(biāo)軸的,因此有這三個變換所產(chǎn)生的總變換可以通過一次左乘每一個矩陣而求得:</p><p><b>  (2.34)</b></p><p><b>  (2.35)</b>&l

92、t;/p><p><b>  圖2.20 球坐標(biāo)</b></p><p>  前三列表是了經(jīng)過一系列變換后的坐標(biāo)系的姿態(tài),而最后一列則表示了坐標(biāo)系原點(diǎn)的位置。以后還要進(jìn)一步討論該矩陣的姿態(tài)部分。</p><p>  這里也可回轉(zhuǎn)最后一個坐標(biāo)系,使它與參考坐標(biāo)系平行。這一問題將作為練習(xí)留給讀者,要求找出正確的運(yùn)動順序來獲得正確的答案。</p&g

93、t;<p>  球坐標(biāo)的逆運(yùn)動學(xué)方程比簡單的直角坐標(biāo)和圓柱坐標(biāo)更復(fù)雜,因?yàn)閮蓚€角度和是耦合的。讓我們通過下例來說明如何求解球坐標(biāo)的逆運(yùn)動學(xué)方程。</p><p>  假設(shè)要將球坐標(biāo)機(jī)器人手坐標(biāo)系原點(diǎn)放在,計(jì)算機(jī)器人的關(guān)節(jié)變量。</p><p><b>  解:</b></p><p>  根據(jù)式(2.35)的矩陣,將手坐標(biāo)系原點(diǎn)的

94、位置分量設(shè)置為期望值,可以得到:</p><p><b>  =3</b></p><p><b>  =4</b></p><p><b>  =7</b></p><p>  由第三個方程,我們得出是正數(shù),但沒有關(guān)于是正或負(fù)的信息。將前兩個方程彼此相除,因?yàn)椴恢赖膶?shí)際符號

95、是什么,因此可能會有兩個解。下面的方法給出了兩個可能的解,后面還必須對這最后的結(jié)果進(jìn)行檢驗(yàn)以確保它們是正確的。</p><p>  tan== 或 233.1</p><p>  S=0.8 或 -0.8</p><p>  C=0.6 或 -0.6</p><p>  S==5 或 -

96、5</p><p>  C=7 =35.5 或 -35.5</p><p><b>  =8.6</b></p><p>  可以對這兩組解進(jìn)行檢驗(yàn)并正是這兩組解都能滿足所有的位置方程。如果沿給定的三維坐標(biāo)軸旋轉(zhuǎn)這些角度,物理上的確能到達(dá)同一點(diǎn)。然而必須注意,其中只有一組解能滿足姿態(tài)方程。換句話說,前兩種解將產(chǎn)生同樣的位置,但處于不同

97、的姿態(tài)。由于目前并不關(guān)心手坐標(biāo)系在這點(diǎn)的姿態(tài),因此兩個位置解都是正確的。實(shí)際上,由于不能對三自由度的機(jī)器人指定姿態(tài),所以無法確定兩個解中哪一個和特定的姿態(tài)有關(guān)。</p><p>  2.7.1.4 鏈?zhǔn)阶鴺?biāo)</p><p>  如圖2.21所示,鏈?zhǔn)阶鴺?biāo)由三個旋轉(zhuǎn)組成。后面在討論Denavit-Hartenberg表示法時,將推導(dǎo)鏈?zhǔn)阶鴺?biāo)的矩陣表示法。</p><p&g

98、t;  圖2.21鏈?zhǔn)阶鴺?biāo)</p><p>  姿態(tài)的正逆運(yùn)動學(xué)方程</p><p>  假設(shè)固連在機(jī)器人手上的運(yùn)動坐標(biāo)系已經(jīng)運(yùn)動到期望的位置上,但它仍然平行于參考坐標(biāo)系,或者假設(shè)其姿態(tài)并不是所期望的,下一步是要在不改變位置的情況下,適當(dāng)?shù)匦D(zhuǎn)坐標(biāo)系而使其達(dá)到所期望的姿態(tài)。合適的旋轉(zhuǎn)順序取決于機(jī)器人手腕的設(shè)計(jì)以及關(guān)節(jié)裝配在一起的方式??紤]以下三中常見的構(gòu)型配置:</p>&

99、lt;p>  滾動角、俯仰角、偏航(RPY)角</p><p><b>  歐拉角</b></p><p><b>  鏈?zhǔn)疥P(guān)節(jié)</b></p><p>  滾動角、俯仰角和偏航角</p><p>  這是分別繞當(dāng)前軸的三個旋轉(zhuǎn)順序,能夠把機(jī)器人的手調(diào)整到所期望的姿態(tài)。此時,假定當(dāng)前的坐標(biāo)系平

100、行于參考坐標(biāo)系,于是機(jī)器人手的姿態(tài)在RPY(滾動角、俯仰角、偏航角)運(yùn)動前與參考坐標(biāo)系相同。如果當(dāng)前坐標(biāo)系不平行于參考坐標(biāo)系,那么機(jī)器人手最終的姿態(tài)將會是先前的姿態(tài)與RPY右乘的結(jié)果。</p><p>  因?yàn)椴幌M\(yùn)動坐標(biāo)系原點(diǎn)的位置有任何改變(它已被放在一個期望的位置上,所以只需要旋轉(zhuǎn)她到所期望的姿態(tài)),所以RPY的旋轉(zhuǎn)運(yùn)動都是相對于當(dāng)前的運(yùn)動軸的。否則。如前面所看到的,運(yùn)動坐標(biāo)系的位置將會改變。于是,右乘所

101、有由RPY和其他旋轉(zhuǎn)所產(chǎn)生的與姿態(tài)改變有關(guān)的矩陣。</p><p>  圖2.22繞當(dāng)前坐標(biāo)軸的RPY旋轉(zhuǎn)</p><p>  參考圖2.22,可看到RPY旋轉(zhuǎn)包括以下幾種:</p><p>  繞軸(運(yùn)動坐標(biāo)系的z軸)旋轉(zhuǎn)叫滾動;</p><p>  繞軸(運(yùn)動坐標(biāo)系的y軸)旋轉(zhuǎn)叫俯仰;</p><p>  繞軸(

102、運(yùn)動坐標(biāo)系的x軸)旋轉(zhuǎn)叫偏航。</p><p>  表示RPY姿態(tài)變化的矩陣為:</p><p><b>  (2.36)</b></p><p>  這個矩陣表示了僅由RPY引起的姿態(tài)變化。該坐標(biāo)系相對于參考坐標(biāo)系的位置和最終姿態(tài)是表示位置變化和RPY的兩個矩陣的乘積。例如,假設(shè)一個機(jī)器人是根據(jù)球坐標(biāo)和RPY來設(shè)計(jì)的,那么這個機(jī)器人就可以表示

103、為:</p><p>  關(guān)于RPY的你運(yùn)動學(xué)方程的解比球坐標(biāo)更復(fù)雜,因?yàn)檫@里有三個耦合角,所以需要所有三個角各自的正弦和余弦值的信息才能解出這個角。為解出這三個角的正弦值和余弦值,必須將這些角解耦。因此,用的逆左乘方程兩邊,得:</p><p><b> ?。?.37)</b></p><p>  假設(shè)用RPY得到的最后所期望的姿態(tài)是用矩陣來

104、表示的,則有:</p><p><b> ?。?.38)</b></p><p><b>  進(jìn)行矩陣相乘后得:</b></p><p><b> ?。?.39)</b></p><p>  在式(2.38)中的分量表示了最終的期望值,它們通常是給定或已知的,而RPY角的值是未

105、知的變量。</p><p>  讓式(2.39)左右兩邊對應(yīng)的元素相等,將產(chǎn)生如下結(jié)果(關(guān)于ATAN2函數(shù)的解釋請參考附錄A):</p><p><b>  根據(jù)2,1元素得:</b></p><p><b> ?。?.40)</b></p><p>  根據(jù)3,1元素和1,1元素得:</p&

106、gt;<p><b> ?。?.41)</b></p><p>  根據(jù)2,2元素和2,3元素得:</p><p><b> ?。?.42)</b></p><p>  例2.16下面給出了一個笛卡爾坐標(biāo)-RPY型機(jī)器人手所期望的最終位姿,求滾動角,俯仰角,偏航角和位移。</p><p&

107、gt;<b>  解:</b></p><p>  根據(jù)上述方程,得到兩組解:</p><p><b>  或235</b></p><p><b>  或128</b></p><p><b>  或195</b></p><p>

108、;  例2.17與例2.16中的位姿一樣,如果機(jī)器人是圓柱坐標(biāo)-RPY型,求所有關(guān)節(jié)變量。</p><p><b>  解:</b></p><p>  在這種情況下,可用:</p><p>  這個方程右邊有4個角,它們是耦合的,因此必須像前面那樣將它們解耦。但是,因?yàn)閷τ趫A柱坐標(biāo)系z軸旋轉(zhuǎn)角并不影響a軸,所以它仍平行于z軸。其結(jié)果是,對于

109、RPY繞a軸旋轉(zhuǎn)的角可簡單地加到上。這意味著,求出的實(shí)際上是(參見圖2.23)。根據(jù)給定的位置數(shù)據(jù),可求得例2.16的解。參考式(2.33),得到:</p><p>  同例2.16一樣 </p><p>  當(dāng)然,可以用類似的解法求出第二組解。</p><p>  圖2.23例2.17的圓柱和RPY坐標(biāo)</p>&l

110、t;p><b>  歐拉角</b></p><p>  除了最后的旋轉(zhuǎn)使然當(dāng)前的a軸外,歐拉角的其他方面均與RPY相似(參見圖2.24)。我們?nèi)孕枰顾行D(zhuǎn)都是繞當(dāng)前的軸轉(zhuǎn)動以防止機(jī)器人的位置有任何改變。表示歐拉角的轉(zhuǎn)動如下:</p><p>  繞軸(運(yùn)動坐標(biāo)系的z軸)旋轉(zhuǎn)度;</p><p>  接著繞軸(運(yùn)動坐標(biāo)系的y軸)旋轉(zhuǎn)度;

111、</p><p>  最后再繞軸(運(yùn)動坐標(biāo)系的x軸)旋轉(zhuǎn)度。</p><p>  表示歐拉角姿態(tài)變化的矩陣是:</p><p><b> ?。?.43)</b></p><p>  圖2.24繞當(dāng)前坐標(biāo)軸的歐拉旋轉(zhuǎn)</p><p>  再次強(qiáng)調(diào),該矩陣只是表示了由歐拉角所引起的姿態(tài)變化。相對于參

112、考坐標(biāo)系,這個坐標(biāo)系的最終位姿是表示位置變化的矩陣和表示歐拉角的矩陣的乘積。</p><p>  歐拉角的逆運(yùn)動學(xué)求解與RPY非常相似??梢允箽W拉方程的兩邊左乘來消去其中一邊的。讓兩邊的對應(yīng)元素相等,就可得到以下方程(假設(shè)由歐拉角得到的最終所期望的姿態(tài)是由矩陣表示):</p><p><b>  (2.44)</b></p><p><b

113、>  或</b></p><p><b>  (2.45)</b></p><p>  記住,式(2.44)中的表示了最終的期望值,它們通常是給定或已知的。歐拉角的值是未知變量。</p><p>  讓式(2.45)左右兩邊對應(yīng)的元素相等,可得到如下結(jié)果:</p><p>  根據(jù)2,3元素,可得:&l

114、t;/p><p>  或 (2.46)</p><p>  由于求得了值,因此式(2.45)左邊所有的元素都是已知的。根據(jù)2,1元素和2,2元素得:</p><p><b> ?。?.47)</b></p><p>  最后根據(jù)1,3元素和3,3元素,得:</p><p><b> ?。?/p>

115、2.48)</b></p><p>  給定一個直角坐標(biāo)系—?dú)W拉角型機(jī)器人手的最終期望狀態(tài),求相應(yīng)的歐拉角。</p><p>  解:根據(jù)前面的方程,得到:</p><p><b>  或</b></p><p>  將和的正弦值和余弦值應(yīng)用于其他部分,可得:</p><p><

116、b>  或</b></p><p><b>  或</b></p><p>  2.7.2.3鏈?zhǔn)疥P(guān)節(jié)</p><p>  鏈?zhǔn)疥P(guān)節(jié)由3個旋轉(zhuǎn)組成,而不是上面剛提出來的旋轉(zhuǎn)模型,這些旋轉(zhuǎn)取決于關(guān)節(jié)的設(shè)計(jì)。就像在2.7.1(d)中所做的那樣,我們將在討論D-H表示法時來推導(dǎo)表示鏈?zhǔn)疥P(guān)節(jié)的矩陣。</p><p

117、>  位姿的正逆運(yùn)動學(xué)方程</p><p>  表示機(jī)器人最終位姿的矩陣是前面方程的組合,該矩陣取決于所用的坐標(biāo)。假設(shè)機(jī)器人的運(yùn)動是由直角坐標(biāo)和RPY的組合關(guān)節(jié)組成,那么該坐標(biāo)系相對于參考坐標(biāo)系的最終位姿是表示直角坐標(biāo)位置變化的矩陣和RPY矩陣的乘積。它可表示為:</p><p><b> ?。?.49)</b></p><p>  如果

118、機(jī)器人是采用球坐標(biāo)定位、歐拉角定姿的方式所設(shè)計(jì)的,那么將得到下列方程。其中位置由球坐標(biāo)決定,而最終姿態(tài)既受球坐標(biāo)角度的影響也受歐拉角的影響。</p><p><b> ?。?.50)</b></p><p>  由于有多種不同的組合,所以這種情況下的正逆運(yùn)動學(xué)解不在這里討論。對于復(fù)雜的設(shè)計(jì),推薦用D_H表示法來求解,并將在下面對此進(jìn)行討論。</p>&l

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論