機(jī)器人運(yùn)動學(xué)(培訓(xùn)教材)_第1頁
機(jī)器人運(yùn)動學(xué)(培訓(xùn)教材)_第2頁
機(jī)器人運(yùn)動學(xué)(培訓(xùn)教材)_第3頁
機(jī)器人運(yùn)動學(xué)(培訓(xùn)教材)_第4頁
機(jī)器人運(yùn)動學(xué)(培訓(xùn)教材)_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第2章 機(jī)器人位置運(yùn)動學(xué)2.1 引言本章將研究機(jī)器人正逆運(yùn)動學(xué)。當(dāng)已知所有的關(guān)節(jié)變量時(shí),可用正運(yùn)動學(xué)來確定機(jī)器人末端手的位姿。如果要使機(jī)器人末端手放在特定的點(diǎn)上并且具有特定的姿態(tài),可用逆運(yùn)動學(xué)來計(jì)算出每一關(guān)節(jié)變量的值。首先利用矩陣建立物體、位置、姿態(tài)以及運(yùn)動的表示方法,然后研究直角坐標(biāo)型、圓柱坐標(biāo)型以及球坐標(biāo)型等不同構(gòu)型機(jī)器人的正逆運(yùn)動學(xué),最后利用Denavit-Hartenberg(D-H)表示法來推導(dǎo)機(jī)器人所有可能構(gòu)型的正逆運(yùn)動學(xué)方程。實(shí)際上,機(jī)器手型的機(jī)器人沒有末端執(zhí)行器,多數(shù)情況下,機(jī)器人上附有一個(gè)抓持器。根據(jù)實(shí)際應(yīng)用,用戶可為機(jī)器人附加不同的末端執(zhí)行器。顯然,末端執(zhí)行器的大小和長度決

2、定了機(jī)器人的末端位置,即如果末端執(zhí)行器的長短不同,那么機(jī)器人的末端位置也不同。在這一章中,假設(shè)機(jī)器人的末端是一個(gè)平板面,如有必要可在其上附加末端執(zhí)行器,以后便稱該平板面為機(jī)器人的“手”或“端面”。如有必要,還可以將末端執(zhí)行器的長度加到機(jī)器人的末端來確定末端執(zhí)行器的位姿。2.2 機(jī)器人機(jī)構(gòu)機(jī)器手型的機(jī)器人具有多個(gè)自由度(DOF),并有三維開環(huán)鏈?zhǔn)綑C(jī)構(gòu)。在具有單自由度的系統(tǒng)中,當(dāng)變量設(shè)定為特定值時(shí),機(jī)器人機(jī)構(gòu)就完全確定了,所有其他變量也就隨之而定。如圖2.1所示的四桿機(jī)構(gòu),當(dāng)曲柄轉(zhuǎn)角設(shè)定為120時(shí),則連桿與搖桿的角度也就確定了。然而在一個(gè)多自由度機(jī)構(gòu)中,必須獨(dú)立設(shè)定所有的輸入變量才能知道其余的參數(shù)

3、。機(jī)器人就是這樣的多自由度機(jī)構(gòu),必須知道每一關(guān)節(jié)變量才能知道機(jī)器人的手處在什么位置。圖2.1 具有單自由度閉環(huán)的四桿機(jī)構(gòu) 如果機(jī)器人要在空間運(yùn)動,那么機(jī)器人就需要具有三維的結(jié)構(gòu)。雖然也可能有二維多自由度的機(jī)器人,但它們并不常見。 機(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偏移,它將影響桿。而在開環(huán)系統(tǒng)中(例如機(jī)器人),由于沒有反饋,之后的所有構(gòu)件都會發(fā)生偏移。于是,在開環(huán)系統(tǒng)中,必須不斷測量所

4、有關(guān)節(jié)和連桿的參數(shù),或者監(jiān)控系統(tǒng)的末端,以便知道機(jī)器的運(yùn)動位置。通過比較如下的兩個(gè)連桿機(jī)構(gòu)的向量方程,可以表示出這種差別,該向量方程表示了不同連桿之間的關(guān)系。 (2.1) (2.2)可見,如果連桿AB偏移,連桿也會相應(yīng)地移動,式(2.1)的兩邊隨連桿的變化而改變。而另一方面,如果機(jī)器人的連桿AB偏移,所有的后續(xù)連桿也會移動,除非有其他方法測量,否則這種變化是未知的。為了彌補(bǔ)開環(huán)機(jī)器人的這一缺陷,機(jī)器人手的位置可由類似攝像機(jī)的裝置來進(jìn)行不斷測量,于是機(jī)器人需借助外部手段(比如輔助手臂或激光束)來構(gòu)成閉環(huán)系統(tǒng)?;蛘甙凑粘R?guī)做法,也可通過增加機(jī)器人連桿和關(guān)節(jié)強(qiáng)度來減少偏移,采用這種方法將導(dǎo)致機(jī)器人重

5、量重、體積大、動作慢,而且它的額定負(fù)載與實(shí)際負(fù)載相比非常小。圖2.2 (a)閉環(huán)機(jī)構(gòu);(b)開環(huán)機(jī)構(gòu)2.3 機(jī)器人運(yùn)動學(xué)的矩陣表示 矩陣可用來表示點(diǎn)、向量、坐標(biāo)系、平移、旋轉(zhuǎn)以及變換,還可以表示坐標(biāo)系中的物體和其他運(yùn)動元件。2.3.1 空間點(diǎn)的表示空間點(diǎn)P(如圖2.3所示)可以用它的相對于參考坐標(biāo)系的三個(gè)坐標(biāo)來表示: (2.3)其中, 是參考坐標(biāo)系中表示該點(diǎn)的坐標(biāo)。顯然,也可以用其他坐標(biāo)來表示空間點(diǎn)的位置。圖2.3 空間點(diǎn)的表示2.3.2 空間向量的表示 向量可以由三個(gè)起始和終止的坐標(biāo)來表示。如果一個(gè)向量起始于點(diǎn)A,終止于點(diǎn)B,那么它可以表示為。特殊情況下,如果一個(gè)向量起始于原點(diǎn)(如圖2.4所

6、示),則有: (2.4)其中是該向量在參考坐標(biāo)系中的三個(gè)分量。實(shí)際上,前一節(jié)的點(diǎn)P就是用連接到該點(diǎn)的向量來表示的,具體地說,也就是用該向量的三個(gè)坐標(biāo)來表示。圖2.4 空間向量的表示 向量的三個(gè)分量也可以寫成矩陣的形式,如式(2.5)所示。在本書中將用這種形式來表示運(yùn)動分量: (2.5) 這種表示法也可以稍做變化:加入一個(gè)比例因子w,如果x, y, z各除以w,則得到。于是,這時(shí)向量可以寫為: ,其中等等 (2.6) 變量w可以為任意數(shù),而且隨著它的變化,向量的大小也會發(fā)生變化,這與在計(jì)算機(jī)圖形學(xué)中縮放一張圖片十分類似。隨著w值的改變,向量的大小也相應(yīng)地變化。如果w大于1,向量的所有分量都變大;

7、如果w小于1,向量的所有分量都變小。這種方法也用于計(jì)算機(jī)圖形學(xué)中改變圖形與畫片的大小。 如果w是1,各分量的大小保持不變。但是,如果w=0,則為無窮大。在這種情況下,x,y和z(以及)表示一個(gè)長度為無窮大的向量,它的方向即為該向量所表示的方向。這就意味著方向向量可以由比例因子w=0的向量來表示,這里向量的長度并不重要,而其方向由該向量的三個(gè)分量來表示。例2.1 有一個(gè)向量P=3i+5j+2k,按如下要求將其表示成矩陣形式:(1)比例因子為2(2)將它表示為方向的單位向量解:該向量可以表示為比例因子為2的矩陣形式,當(dāng)比例因子為0時(shí),則可以表示為方向向量,結(jié)果如下: 和 然而,為了將方向向量變?yōu)閱?/p>

8、位向量,須將該向量歸一化使之長度等于1。這樣,向量的每一個(gè)分量都要除以三個(gè)分量平方和的開方:,等等和 2.3.3 坐標(biāo)系在固定參考坐標(biāo)系原點(diǎn)的表示 一個(gè)中心位于參考坐標(biāo)系原點(diǎn)的坐標(biāo)系由三個(gè)向量表示,通常著三個(gè)向量相互垂直,稱為單位向量,分別表示法線(normal)、指向(orientation)和接近(approach)向量(如圖2.5所示)。正如2.3.3節(jié)所述,每一個(gè)單位向量都由它們所在參考坐標(biāo)系著的三個(gè)分量表示。這樣,坐標(biāo)系F可以由三個(gè)向量以矩陣的形式表示為: (2.7)圖2.5 坐標(biāo)系在參考坐標(biāo)系原點(diǎn)的表示2.3.4 坐標(biāo)系在固定參考坐標(biāo)系中的表示如果一個(gè)坐標(biāo)系不再固定參考坐標(biāo)系的原點(diǎn)

9、(實(shí)際上也可包括在原點(diǎn)的情況),那么該坐標(biāo)系的原點(diǎn)相對于參考坐標(biāo)系的位置也必須表示出來。為此,在該坐標(biāo)系原點(diǎn)與參考坐標(biāo)系原點(diǎn)之間做一個(gè)向量來表示該坐標(biāo)系的位置(如圖2.6所示)。這個(gè)向量由相對于參考坐標(biāo)系的三個(gè)向量來表示。這樣,這個(gè)坐標(biāo)系就可以由三個(gè)表示方向的單位向量以及第四個(gè)位置向量來表示。 (2.8)圖2.6 一個(gè)坐標(biāo)系在另一個(gè)坐標(biāo)系中的表示如式(2.8)所示,前三個(gè)向量是w=0的方向向量,表示該坐標(biāo)系的三個(gè)單位向量的方向,而第四個(gè)w=1的向量表示該坐標(biāo)系原點(diǎn)相對于參考坐標(biāo)系的位置。與單位向量不同,向量P的長度十分重要,因而使用比例因子為1。坐標(biāo)系也可以由一個(gè)沒有比例因子的34矩陣表示,但

10、不常用。例2.2 如圖2.7所示的F坐標(biāo)系位于參考坐標(biāo)系中3,5,7的位置,它的n軸與x軸平行,o軸相對于y軸的角度為45,a軸相對于z軸的角度為45。該坐標(biāo)系可以表示為: 圖2.7 坐標(biāo)系在空間的表示舉例2.3.5 剛體的表示 一個(gè)物體在空間的表示可以這樣實(shí)現(xiàn):通過在它上面固連一個(gè)坐標(biāo)系,再將該固連的坐標(biāo)系在空間表示出來。由于這個(gè)坐標(biāo)系一直固連在該物體上,所以該物體相對于坐標(biāo)系的位姿是已知的。因此,只要這個(gè)坐標(biāo)系可以在空間表示出來,那么這個(gè)物體相對于固定坐標(biāo)系的位姿也就已知了(如圖2.8所示)。如前所述,空間坐標(biāo)系可以用矩陣表示,其中坐標(biāo)原點(diǎn)以及相對于參考坐標(biāo)系的表示該坐標(biāo)系姿態(tài)的三個(gè)向量也

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

12、來自于目前尚未利用的已知的坐標(biāo)系特性,即:三個(gè)向量相互垂直每個(gè)單位向量的長度必須為1圖2.8 空間物體的表示我們可以將其轉(zhuǎn)換為以下六個(gè)約束方程:(1) (2) (3) (4)(向量的長度必須為1) (2.10)(5)(6) 因此,只有前述方程成立時(shí),坐標(biāo)系的值才能用矩陣表示。否則,坐標(biāo)系將不正確。式(2.10)中前三個(gè)方程可以換用如下的三個(gè)向量的叉積來代替: (2.11)例2.3 對于下列坐標(biāo)系,求解所缺元素的值,并用矩陣來表示這個(gè)坐標(biāo)系。 解:顯然,表示坐標(biāo)系原點(diǎn)位置的值5,3,2對約束方程無影響。注意在三個(gè)方向向量中只有三個(gè)值是給定的,但這也已足夠了。根據(jù)式(2.10),得: 或 或 或

13、或 或 或 將這些方程化簡得:解這六個(gè)方程得:。應(yīng)注意,必須同號。非唯一解的原因是由于給出的參數(shù)可能得到兩組在相反方向上相互垂直的向量。最終得到的矩陣如下: 或 由此可見,兩個(gè)矩陣都滿足約束方程的要求。但應(yīng)注意三個(gè)方向向量所表述的值不是任意的,而是受這些約束方程的約束,因此不可任意給矩陣賦值。同樣,可通過叉乘并令其等于,即來求解,表示如下: 或表示為: 將值代入方程得: 同時(shí)解下面這三個(gè)方程: 以此來代替三個(gè)點(diǎn)乘方程。聯(lián)立三個(gè)單位向量長度的約束方程,便得到六個(gè)方程,求解這六個(gè)方程,可得到相同的未知參數(shù)的解。2.4 齊次變換矩陣 由于各種原因,變換矩陣應(yīng)寫成方型形式,33或44均可。首先,如后面

14、看到的,計(jì)算方形矩陣的逆要比計(jì)算長方形矩陣的逆容易得多。其次,為使兩矩陣相乘,它們的維數(shù)必須匹配,即第一矩陣的列數(shù)必須與第二矩陣的行數(shù)相同。如果兩矩陣是方陣則無上述要求。由于要以不同順序?qū)⒃S多矩陣乘在一起得到機(jī)器人運(yùn)動方程,因此,應(yīng)采用方陣進(jìn)行計(jì)算。 為保證所表示的矩陣為方陣,如果在同一矩陣中既表示姿態(tài)又表示位置,那么可在矩陣中加入比例因子使之成為44矩陣。如果只表示姿態(tài),則可去掉比例因子得到33矩陣,或加入第四列全為0的位置數(shù)據(jù)以保持矩陣為方陣。這種形式的矩陣稱為齊次矩陣,它們寫為: (2.12) 2.5 變換的表示 變換定義為空間的一個(gè)運(yùn)動。當(dāng)空間的一個(gè)坐標(biāo)系(一個(gè)向量、一個(gè)物體或一個(gè)運(yùn)動

15、坐標(biāo)系)相對于固定參考坐標(biāo)系運(yùn)動時(shí),這一運(yùn)動可以用類似于表示坐標(biāo)系的方式來表示。這是因?yàn)樽儞Q本身就是坐標(biāo)系狀態(tài)的變化(表示坐標(biāo)系位姿的變化),因此變換可以用坐標(biāo)系來表示。變換可為如下幾種形式中的一種: 純平移 繞一個(gè)軸的純旋轉(zhuǎn) 平移與旋轉(zhuǎn)的結(jié)合 為了解它們的表示方法,我們將逐一進(jìn)行探討。2.5.1 純平移變換的表示 如果一坐標(biāo)系(它也可能表示一個(gè)物體)在空間以不變的姿態(tài)運(yùn)動,那么該坐標(biāo)就是純平移。在這種情況下,它的方向單位向量保持同一方向不變。所有的改變只是坐標(biāo)系原點(diǎn)相對于參考坐標(biāo)系的變化,如圖2.9所示。相對于固定參考坐標(biāo)系的新的坐標(biāo)系的位置可以用原來坐標(biāo)系的原點(diǎn)位置向量加上表示位移的向量求

16、得。若用矩陣形式,新坐標(biāo)系的表示可以通過坐標(biāo)系左乘變換矩陣得到。由于在純平移中方向向量不改變,變換矩陣T可以簡單地表示為: (2.13) 圖2.9 空間純平移變換的表示其中是純平移向量相對于參考坐標(biāo)系軸的三個(gè)分量??梢钥吹剑仃嚨那叭斜硎緵]有旋轉(zhuǎn)運(yùn)動(等同于單位陣),而最后一列表示平移運(yùn)動。新的坐標(biāo)系位置為: (2.14) 這個(gè)方程也可用符號寫為: (2.15) 首先,如前面所看到的,新坐標(biāo)系的位置可通過在坐標(biāo)系矩陣前面左乘變換矩陣得到,后面將看到,無論以何種形式,這種方法對于所有的變換都成立。其次可以注意到,方向向量經(jīng)過純平移后保持不變。但是,新的坐標(biāo)系的位置是和向量相加的結(jié)果。最后應(yīng)該注

17、意到,齊次變換矩陣與矩陣乘法的關(guān)系使得到的新矩陣的維數(shù)和變換前相同。例2.4 坐標(biāo)系F沿參考坐標(biāo)系的x軸移動9個(gè)單位,沿z軸移動5個(gè)單位。求新的坐標(biāo)系位置。解:由式(2.14)或式(2.15)得:= 和2.5.2 繞軸純旋轉(zhuǎn)變換的表示為簡化繞軸旋轉(zhuǎn)的推導(dǎo),首先假設(shè)該坐標(biāo)系位于參考坐標(biāo)系的原點(diǎn)并且與之平行,之后將結(jié)果推廣到其他的旋轉(zhuǎn)以及旋轉(zhuǎn)的組合。假設(shè)坐標(biāo)系()位于參考坐標(biāo)系()的原點(diǎn),坐標(biāo)系()繞參考坐標(biāo)系的x軸旋轉(zhuǎn)一個(gè)角度,再假設(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)時(shí),坐標(biāo)系上的點(diǎn)P也隨坐標(biāo)系一起旋轉(zhuǎn)。在旋轉(zhuǎn)之前,P點(diǎn)在兩個(gè)坐標(biāo)系中的

18、坐標(biāo)是相同的(這時(shí)兩個(gè)坐標(biāo)系位置相同,并且相互平行)。旋轉(zhuǎn)后,該點(diǎn)坐標(biāo)在旋轉(zhuǎn)坐標(biāo)系(x ,y ,z)中保持不變,但在參考坐標(biāo)系中卻改變了(如圖2.10所示)。現(xiàn)在要求找到運(yùn)動坐標(biāo)系旋轉(zhuǎn)后P相對于固定參考坐標(biāo)系的新坐標(biāo)。 讓我們從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)仍為。由圖2.11可以看出,不隨坐標(biāo)系統(tǒng)x軸的轉(zhuǎn)動而改變,而和卻改變了,可以證明: (2.16)寫成矩陣形式為: (2.17) 圖2.10 在坐標(biāo)系旋轉(zhuǎn)前后的點(diǎn)的坐標(biāo)圖2.11 相對于參考坐標(biāo)系的點(diǎn)的坐標(biāo)和從x軸上

19、觀察旋轉(zhuǎn)坐標(biāo)系可見,為了得到在參考坐標(biāo)系中的坐標(biāo),旋轉(zhuǎn)坐標(biāo)系中的點(diǎn)P(或向量P)的坐標(biāo)必須左乘旋轉(zhuǎn)矩陣。這個(gè)旋轉(zhuǎn)矩陣只適用于繞參考坐標(biāo)系的x軸做純旋轉(zhuǎn)變換的情況,它可表示為: (2.18) 注意在式(2.17)中,旋轉(zhuǎn)矩陣的第一列表示相對于x軸的位置,其值為1,0,0,它表示沿x軸的坐標(biāo)沒有改變。為簡化書寫,習(xí)慣用符號表示以及用表示。因此,旋轉(zhuǎn)矩陣也可寫為: (2.19) 可用同樣的方法來分析坐標(biāo)系繞參考坐標(biāo)系y軸和z軸旋轉(zhuǎn)的情況,可以證明其結(jié)果為: 和 (2.20)式(2.18)也可寫為習(xí)慣的形式,以便于理解不同坐標(biāo)系間的關(guān)系,為此,可將該變換表示為 (讀作坐標(biāo)系R相對于坐標(biāo)系U(Unive

20、rse)的變換),將表示為(P相對于坐標(biāo)系R),將表示為(P相對于坐標(biāo)系U),式(2.18)可簡化為: (2.21) 由上式可見,去掉R便得到了P相對于坐標(biāo)系U的坐標(biāo)。例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é)果。解:由于點(diǎn)P固連在旋轉(zhuǎn)坐標(biāo)系中,因此點(diǎn)P相對于旋轉(zhuǎn)坐標(biāo)系的坐標(biāo)在旋轉(zhuǎn)前后保持不變。該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為:如圖2.12所示,根據(jù)前面的變換,得到旋轉(zhuǎn)后P點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為2,-4,3.圖2.12 相對于參考坐標(biāo)系的坐標(biāo)系旋轉(zhuǎn)2.5.3 復(fù)合變換的表示 復(fù)合變換是由固定參考坐標(biāo)系或當(dāng)前運(yùn)動坐標(biāo)

21、系的一系列沿軸平移和繞軸旋轉(zhuǎn)變換所組成的。任何變換都可以分解為按一定順序的一組平移和旋轉(zhuǎn)變換。例如,為了完成所要求的變換,可以先繞x軸旋轉(zhuǎn),再沿軸平移,最后繞y軸旋轉(zhuǎn)。在后面將會看到,這個(gè)變換順序很重要,如果顛倒兩個(gè)依次變換的順序,結(jié)果將會完全不同。 為了探討如何處理復(fù)合變換,假定坐標(biāo)系()相對于參考坐標(biāo)系()依次進(jìn)行了下面三個(gè)變換: (1)繞x軸旋轉(zhuǎn)度;(2)接著平移(分別相對于軸);(3)最后繞y軸旋轉(zhuǎn)度。比如點(diǎn)固定在旋轉(zhuǎn)坐標(biāo)系,開始時(shí)旋轉(zhuǎn)坐標(biāo)系的原點(diǎn)與參考坐標(biāo)系的原點(diǎn)重合。隨著坐標(biāo)系()相對于參考坐標(biāo)系旋轉(zhuǎn)或者平移時(shí),坐標(biāo)系中的P點(diǎn)相對于參考坐標(biāo)系也跟著改變。如前面所看到的,第一次變換后

22、,P點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)可用下列方程進(jìn)行計(jì)算。 (2.22) 其中,是第一次變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。第二次變換后,該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)是: 同樣,第三次變換后,該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為: 可見,每次變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)都是通過用每個(gè)變換矩陣左乘該點(diǎn)的坐標(biāo)得到的。當(dāng)然,矩陣的順序不能改變。同時(shí)還應(yīng)注意,對于相對于參考坐標(biāo)系的每次變換,矩陣都是左乘的。因此,矩陣書寫的順序和進(jìn)行變換的順序正好相反。例2.6 固連在坐標(biāo)系()上的點(diǎn)P經(jīng)歷如下變換,求出變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。(1)繞z軸旋轉(zhuǎn)90度;(2)接著繞y軸旋轉(zhuǎn)90度;(3)接著再平移4,-3,7。

23、解:表示該變換的矩陣方程為: 從圖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é)果。圖2.13 三次順序變換的結(jié)果例2.7 根據(jù)上例,假定()坐標(biāo)系上的點(diǎn)經(jīng)歷相同變換,但變換按如下不同順序進(jìn)行,求出變換后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。(1)繞z軸旋轉(zhuǎn)90度;(2)接著平移4,-3,7;(3)接著再繞y軸旋轉(zhuǎn)90度。解:表示該變換的矩陣方程為:不難發(fā)現(xiàn),盡管所有的變換與例2.6完全相同,但由于變換的順序變了,該點(diǎn)最終坐標(biāo)

24、與前例完全不同。用圖2.14可以清楚地說明這點(diǎn),這時(shí)可以看出,盡管第一次變換后坐標(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的位置也顯示在圖中。請證明該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)為7+2=9,-3+7=4和-4+3=-1,它與解析的結(jié)果相同。圖2.14 變換的順序改變將改變最終結(jié)果2.5.4 相對于旋轉(zhuǎn)坐標(biāo)系的變換到目前為止,本書所討論的所有變換都是相對于固定參考坐標(biāo)系。也就是說,所有平移、旋轉(zhuǎn)和距離(除了相對于運(yùn)動坐標(biāo)系的點(diǎn)的位置)都是相對參考坐標(biāo)系軸

25、來測量的。然而事實(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)系的變化,這時(shí)需要右乘變換矩陣而不是左乘。由于運(yùn)動坐標(biāo)系中的點(diǎn)或物體的位置總是相對于運(yùn)動坐標(biāo)系測量的,所以總是右乘描述該點(diǎn)或物體的位置矩陣。例2.8 假設(shè)與例2.7中相同的點(diǎn)現(xiàn)在進(jìn)行相同的變換,但所有變換都是相對于當(dāng)前的運(yùn)動坐標(biāo)系,具體變換出如下。求出變換完成后該點(diǎn)相對于參考坐標(biāo)系的坐標(biāo)。(1)繞軸旋轉(zhuǎn)90度;(2)然后沿軸平移4,-3,7;(3)接著繞軸旋轉(zhuǎn)90度。解:在本例中,因?yàn)樗髯儞Q是相

26、對于當(dāng)前坐標(biāo)系的,因此右乘每個(gè)變換矩陣,可得表示該坐標(biāo)的方程為: 如所期望的,結(jié)果與其他各例完全不同,不僅因?yàn)樗髯儞Q是相對于當(dāng)前坐標(biāo)系的,而且也因?yàn)榫仃図樞虻母淖?。下面的圖展示了這一結(jié)果,應(yīng)注意它是怎樣相對于當(dāng)前坐標(biāo)來完成這個(gè)變換的。同時(shí)應(yīng)注意,在當(dāng)前坐標(biāo)系中p點(diǎn)的坐標(biāo)7,3,2是變換后得到相對于參考坐標(biāo)系的坐標(biāo)0,6,0的。圖2.15 相對于當(dāng)前坐標(biāo)系的變換例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英寸的平移。(a)寫出描述該運(yùn)動的方程。(b)求坐標(biāo)系中的點(diǎn)p(1,5,4)相對于參考坐標(biāo)系的最終位置。解:在本例中,

27、相對于參考坐標(biāo)系以及當(dāng)前坐標(biāo)系的運(yùn)動是交替進(jìn)行的。(a)相應(yīng)地左乘或右乘每個(gè)運(yùn)動矩陣,得到:=Rot(z,90)Rot(x,90)Trans(0,0,3)Trans(0,5,0)(b)帶入具體的矩陣并將它們相乘,得到: 2.6 變換矩陣的逆 正如前面所提到的,在機(jī)器人分通過析中有很多地方要用到矩陣的逆,在下面的例子中可以看到一種涉及變換矩陣的情況。在圖2.16中,假設(shè)機(jī)器人要在零件p上鉆孔而須向零件p處移動。機(jī)器人基座相對于參考坐標(biāo)系u的位置用坐標(biāo)系R來描述,機(jī)器人手用坐標(biāo)系H來描述,末端執(zhí)行器(即用來鉆孔的鉆頭的末端)用坐標(biāo)系E來描述,零件的位置用坐標(biāo)系P來描述。鉆孔的點(diǎn)的位置于參考坐標(biāo)系U

28、可以通過兩個(gè)獨(dú)立的路徑發(fā)生聯(lián)系:一個(gè)是通過該零件的路徑,另一個(gè)是通過機(jī)器人的路徑。因此,可以寫出下面的方程: (2.24) 這就是說,該零件中點(diǎn)E的位置可以通過從U變換到P,并從P變換到E來完成,或者從U變換到R,從R變換到H,再從H變換到E。圖2.16 全局坐標(biāo)系、機(jī)器人坐標(biāo)系、手坐標(biāo)系、零件坐標(biāo)系及末端執(zhí)行器坐標(biāo)系事實(shí)上,由于在任何情況下機(jī)器人的基座位置在安裝時(shí)就是已知的,因此變換(坐標(biāo)系R相對于坐標(biāo)系U的變換)時(shí)已知的。比如,一個(gè)機(jī)器人安裝在一個(gè)工作臺上,由于它被緊固在工作臺上,所以它的基座的位置時(shí)已知的。即使機(jī)器人時(shí)可移的或放在傳送帶上,因?yàn)榭刂破魇冀K掌控著機(jī)器人基座的運(yùn)動,因此它在任

29、意時(shí)刻的位置也是已知的。由于用于末端執(zhí)行器的任何器械都是已知的,而且其尺寸和結(jié)構(gòu)也是已知的,所以(機(jī)器人末端執(zhí)行器相對于機(jī)器人手的變換)也是已知的。此外,(零件相對于全局坐標(biāo)系的變換)也是已知的,還必須要知道將在其上面鉆孔的零件的位置,該位置可以通過將該零件放在鉆模上,讓后用照相機(jī),視覺系統(tǒng),傳送帶,傳感器或其他類似儀器來確定。最后需要知道零件上鉆孔的位置,所以也是已知的。此時(shí),唯一未知的變換就是(機(jī)器人手相對于機(jī)器人基座的變換)。因此,必須找出機(jī)器人的關(guān)節(jié)變量(機(jī)器人旋轉(zhuǎn)關(guān)節(jié)的角度以及滑動關(guān)節(jié)的連桿長度),以便將末端執(zhí)行器定位在要鉆孔的位置上??梢姡仨氁?jì)算出這個(gè)變換,它指出機(jī)器人需要完成

30、的工作。后面將用所求出的變換來求解機(jī)器人關(guān)節(jié)的角度和連桿的長度。不能像在代數(shù)方程中那樣來計(jì)算這個(gè)矩陣,即不能簡單的用方程的右邊除以方程的左邊,而應(yīng)該用合適的矩陣的逆并通過左乘或右乘來將它們從左邊去調(diào)。因此有: (2.25)由于和,式(2.25)的左邊可簡化為,于是得: (2.26)該方程的正確性可以通過認(rèn)為與相同來加以檢驗(yàn)。因此,該方程可重寫為: (2.27)顯然為了對機(jī)器人運(yùn)動學(xué)進(jìn)行分析,需要能夠計(jì)算變換矩陣的逆。我們來看看關(guān)于x軸的簡單旋轉(zhuǎn)矩陣的求逆計(jì)算情況。關(guān)于x軸的旋轉(zhuǎn)矩陣是: (2.28)必須采用一下的步驟來計(jì)算矩陣的逆:計(jì)算矩陣的行列式;將矩陣轉(zhuǎn)置;將轉(zhuǎn)置矩陣的每個(gè)元素用它的子行列

31、式(伴隨矩陣)代替;用轉(zhuǎn)換后的矩陣除以行列式。將上面的步驟用到該旋轉(zhuǎn),得到: 現(xiàn)在計(jì)算每一個(gè)子行列式(伴隨矩陣)。例如,元素2,2的子行列式是,元素1,1的子行列式??梢宰⒁獾?,這里的每一個(gè)元素的子行列式與其本身相同,因此有: 由于原旋轉(zhuǎn)矩陣的行列式為1,因此用矩陣除以行列式仍得出相同的結(jié)果。因此,關(guān)于x軸的旋轉(zhuǎn)矩陣的逆的行列式與它的轉(zhuǎn)置矩陣相同,即: (2.29)當(dāng)然,如果采用附錄A中提到的第二種方法也能得到同樣的結(jié)果。具有這種特征的矩陣稱為酉矩陣,也就是說所有的旋轉(zhuǎn)矩陣都是酉矩陣。因此,計(jì)算旋轉(zhuǎn)矩陣的逆就是將該矩陣轉(zhuǎn)置??梢宰C明,關(guān)于y軸和z軸的旋轉(zhuǎn)矩陣同樣也是酉矩陣。應(yīng)注意,只有旋轉(zhuǎn)矩陣

32、才是酉矩陣。如果一個(gè)矩陣不是一個(gè)簡單的旋轉(zhuǎn)矩陣,那么它也許就不是酉矩陣。 以上結(jié)論只對簡單的不表示位置的33旋轉(zhuǎn)矩陣成立。對一個(gè)齊次的44變換矩陣而言,它的求逆可以將矩陣分為兩部分。矩陣的旋轉(zhuǎn)部分仍是酉矩陣,只需簡單的轉(zhuǎn)置;矩陣的位置部分是向量分別與向量點(diǎn)積的負(fù)值,其結(jié)果為: (2.30) 如上所示,矩陣的旋轉(zhuǎn)部分是簡單的轉(zhuǎn)置,位置的部分由點(diǎn)乘的負(fù)值代替,而最后一行(比例因子)則不受影響。這樣做對于計(jì)算變換矩陣的逆是很有幫助的,而直接計(jì)算44矩陣的逆是一個(gè)很冗長的過程。例2.10 計(jì)算表示的矩陣解:繞x軸旋轉(zhuǎn)40的矩陣為:其矩陣的逆是: 需注意的是,由于矩陣的位置向量為0,它與向量的點(diǎn)積也為零

33、。例2.11 計(jì)算如下變換矩陣的逆。解:根據(jù)先前的計(jì)算,變換矩陣的逆是: 可以證明是單位陣。例2.12 一個(gè)具有六個(gè)自由度的機(jī)器人的第五個(gè)連桿上裝有照相機(jī),照相機(jī)觀察物體并測定它相對于照相機(jī)坐標(biāo)系的位置,然后根據(jù)以下數(shù)據(jù)來確定末端執(zhí)行器要到達(dá)物體所必須完成的運(yùn)動。 解:參照式(2.24),可以寫出一個(gè)與它類似的方程,它將不同的變換和坐標(biāo)系聯(lián)系在一起。由于方程兩邊都有,所以可以將它消去。除了之外所有其他矩陣都是已知的,所以: 將矩陣及矩陣的逆代入前面的方程,得:2.7 機(jī)器人的正逆運(yùn)動學(xué)假設(shè)有一個(gè)構(gòu)型已知的機(jī)器人,即它的所有連桿長度和關(guān)節(jié)角度都是已知的,那么計(jì)算機(jī)器人手的位姿就稱為正運(yùn)動學(xué)分析。

34、換言之,如果已知所有機(jī)器人關(guān)節(jié)變量,用正運(yùn)動學(xué)方程就能計(jì)算任一瞬間機(jī)器人的位姿。然而,如果想要將機(jī)器人的手放在一個(gè)期望的位姿,就必須知道機(jī)器人的每一個(gè)連桿的長度和關(guān)節(jié)的角度,才能將手定位在所期望的位姿,這就叫做逆運(yùn)動學(xué)分析,也就是說,這里不是把已知的機(jī)器人變量代入正向運(yùn)動學(xué)方程中,而是要設(shè)法找到這些方程的逆,從而求得所需的關(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é)方程。對正運(yùn)動學(xué),必須推導(dǎo)出一組與機(jī)器人特定構(gòu)型(將構(gòu)件組合在一起構(gòu)成機(jī)

35、器人的方法)有關(guān)的方程,以使得將有關(guān)的關(guān)節(jié)和連桿變量代入這些方程就能計(jì)算出機(jī)器人的位姿,然后可用這些方程推出逆運(yùn)動學(xué)方程。根據(jù)第一章中的相關(guān)內(nèi)容,要確定一個(gè)剛體在空間的位姿,須在物體上固連一個(gè)坐標(biāo)系,然后描述該坐標(biāo)系的原點(diǎn)位置和它三個(gè)軸的姿態(tài),總共需要六個(gè)自由度或六條信息來完整地定義該物體的位姿。同理,如果要確定或找到機(jī)器人手在空間的位姿,也必須在機(jī)器人手上固連一個(gè)坐標(biāo)系并確定機(jī)器人手坐標(biāo)系的位姿,這正是機(jī)器人正運(yùn)動學(xué)方程所要完成的任務(wù)。換言之,根據(jù)機(jī)器人連桿和關(guān)節(jié)的構(gòu)型配置,可用一組特定的方程來建立機(jī)器人手的坐標(biāo)系和參考坐標(biāo)系之間的聯(lián)系。圖2.17所示為機(jī)器人手的坐標(biāo)系、參考坐標(biāo)系以及它們的

36、相對位姿,兩個(gè)坐標(biāo)系之間的關(guān)系與機(jī)器人的構(gòu)型有關(guān)。當(dāng)然,機(jī)器人可能有許多不同的構(gòu)型,后面將會看到將如何根據(jù)機(jī)器人的構(gòu)型來推導(dǎo)出與這兩個(gè)坐標(biāo)系相關(guān)的方程。為使過程簡化,可分別分析位置和姿態(tài)問題,首先推導(dǎo)出位置方程,然后再推導(dǎo)出姿態(tài)方程,再將兩者結(jié)合在一起而形成一組完整的方程。最后,將看到關(guān)于Denavit-Hartenberg表示法的應(yīng)用,該方法可用于對任何機(jī)器人構(gòu)型建模。圖2.17 機(jī)器人的手坐標(biāo)系相對于參考坐標(biāo)系2.7.1 位置的正逆運(yùn)動學(xué)方程對于機(jī)器人的定位,可以通過相對于任何慣用坐標(biāo)系的運(yùn)動來實(shí)現(xiàn)。比如,基于直角坐標(biāo)系對空間的一個(gè)點(diǎn)定位,這意味著有三個(gè)關(guān)于軸的線性運(yùn)動,此外,如果用球坐標(biāo)

37、來實(shí)現(xiàn),就意味著需要有一個(gè)線性運(yùn)動和兩個(gè)旋轉(zhuǎn)運(yùn)動。常見的情況有:(a)笛卡爾(臺架,直角)坐標(biāo)(b)圓柱坐標(biāo)(c)球坐標(biāo)(d)鏈?zhǔn)?擬人或全旋轉(zhuǎn))坐標(biāo)2.7.1.1 笛卡爾(臺架,直角)坐標(biāo)這種情況下有三個(gè)沿軸的線性運(yùn)動,這一類型的機(jī)器人所有的驅(qū)動機(jī)構(gòu)都是線性的(比如液壓活塞或線性動力絲杠),這時(shí)機(jī)器人手的定位是通過三個(gè)線性關(guān)節(jié)分別沿三個(gè)軸的運(yùn)動來完成的(如圖2.18所示)。臺架式機(jī)器人基本上就是一個(gè)直角坐標(biāo)機(jī)器人,只不過是將機(jī)器人固連在一個(gè)朝下的直角架上。IBM7565機(jī)器人就是一個(gè)臺架式直角坐標(biāo)機(jī)器人。圖2.18 直角坐標(biāo)當(dāng)然,如果沒有旋轉(zhuǎn)運(yùn)動,表示向P點(diǎn)運(yùn)動的變換矩陣是一種簡單的平移變換

38、矩陣,下面將可以看到這一點(diǎn)。注意這里只涉及坐標(biāo)系原點(diǎn)的定位,而不涉及姿態(tài)。在直角坐標(biāo)系中,表示機(jī)器人手位置的正運(yùn)動學(xué)變換矩陣為: (2.31)其中是參考坐標(biāo)系與手坐標(biāo)系原點(diǎn)P的變換矩陣,而表示直角坐標(biāo)變換矩陣。對于逆運(yùn)動學(xué)的求解,只需簡單地設(shè)定期望的位置等于P.例2.13 要求笛卡爾坐標(biāo)機(jī)器人手坐標(biāo)系原點(diǎn)定位在點(diǎn)P=,計(jì)算所需要的笛卡兒坐標(biāo)運(yùn)動。解:設(shè)定正運(yùn)動學(xué)方程用式(2.31)中的矩陣表示,根據(jù)期望的位置可得知如下結(jié)果:2.7.1.2 圓柱坐標(biāo)圓柱型坐標(biāo)系統(tǒng)包括兩個(gè)線性平移運(yùn)動和一個(gè)旋轉(zhuǎn)運(yùn)動。其順序?yàn)椋合妊剌S移動,再繞軸旋轉(zhuǎn)角,最后沿軸移動,如圖2.19所示。這三個(gè)變換建立了手坐標(biāo)系與參考

39、坐標(biāo)系之間的聯(lián)系。由于這些變換都是相對于全局參考坐標(biāo)系的坐標(biāo)軸的,因此由這三個(gè)變換所產(chǎn)生的總變換可以通過依次左乘每一個(gè)矩陣而求得: (2.32) (2.33)經(jīng)過一系列變換后,前三列表示了坐標(biāo)系的姿態(tài),然而我們只對坐標(biāo)系的原點(diǎn)位置即最后一列感興趣。顯然,在圓柱型坐標(biāo)運(yùn)動中,由于繞z軸旋轉(zhuǎn)了角,運(yùn)動坐標(biāo)系的姿態(tài)也將改變,這一改變將在后面討論。實(shí)際上,可以通過繞坐標(biāo)系中的軸旋轉(zhuǎn)角度使坐標(biāo)系回轉(zhuǎn)到和初始參考坐標(biāo)系平行的狀態(tài),它等效于圓柱坐標(biāo)矩陣右乘旋轉(zhuǎn)矩陣,其結(jié)果是,該坐標(biāo)系的位置仍在同一地方,但其姿態(tài)再次平行于參考坐標(biāo)系,如下所示:圖2.19 圓柱坐標(biāo)由此可見,運(yùn)動坐標(biāo)系的原點(diǎn)位置沒有改變,但它轉(zhuǎn)

40、回到了與參考坐標(biāo)系平行的狀態(tài)。需注意的是,最后的旋轉(zhuǎn)是繞本地坐標(biāo)系的軸的,其目的是為了不引起坐標(biāo)系位置的任何改變,而只改變姿態(tài)。例2.14 假設(shè)要將圓柱坐標(biāo)機(jī)器人手坐標(biāo)系的原點(diǎn)放在,計(jì)算該機(jī)器人的關(guān)節(jié)變量。解:根據(jù)式(2.33)的矩陣,將手坐標(biāo)系原點(diǎn)的位置分量設(shè)置為期望值,可以得到: 于是有: 將代入其中任何一個(gè)方程,可得,最終結(jié)果是: 應(yīng)注意:必須確保在機(jī)器人運(yùn)動學(xué)中計(jì)算的角度位于正確的象限。在這個(gè)例子中,請注意和都是正的,并且也是正的,這樣角度便在第一象限,且為53.1。2.7.1.3 球坐標(biāo)如圖2.20所示,球坐標(biāo)系統(tǒng)由一個(gè)線性運(yùn)動和兩個(gè)旋轉(zhuǎn)運(yùn)動組成,運(yùn)動順序?yàn)椋合妊貁軸平移r,再繞y軸

41、旋轉(zhuǎn)并繞z軸旋轉(zhuǎn)。這三個(gè)變換建立了手坐標(biāo)系與參考坐標(biāo)系之間的聯(lián)系。由于這些變換都是相對于全局參考坐標(biāo)系的坐標(biāo)軸的,因此有這三個(gè)變換所產(chǎn)生的總變換可以通過一次左乘每一個(gè)矩陣而求得: (2.34) (2.35)圖2.20 球坐標(biāo)前三列表是了經(jīng)過一系列變換后的坐標(biāo)系的姿態(tài),而最后一列則表示了坐標(biāo)系原點(diǎn)的位置。以后還要進(jìn)一步討論該矩陣的姿態(tài)部分。這里也可回轉(zhuǎn)最后一個(gè)坐標(biāo)系,使它與參考坐標(biāo)系平行。這一問題將作為練習(xí)留給讀者,要求找出正確的運(yùn)動順序來獲得正確的答案。球坐標(biāo)的逆運(yùn)動學(xué)方程比簡單的直角坐標(biāo)和圓柱坐標(biāo)更復(fù)雜,因?yàn)閮蓚€(gè)角度和是耦合的。讓我們通過下例來說明如何求解球坐標(biāo)的逆運(yùn)動學(xué)方程。例2.15 假

42、設(shè)要將球坐標(biāo)機(jī)器人手坐標(biāo)系原點(diǎn)放在,計(jì)算機(jī)器人的關(guān)節(jié)變量。解:根據(jù)式(2.35)的矩陣,將手坐標(biāo)系原點(diǎn)的位置分量設(shè)置為期望值,可以得到:=3=4=7由第三個(gè)方程,我們得出是正數(shù),但沒有關(guān)于是正或負(fù)的信息。將前兩個(gè)方程彼此相除,因?yàn)椴恢赖膶?shí)際符號是什么,因此可能會有兩個(gè)解。下面的方法給出了兩個(gè)可能的解,后面還必須對這最后的結(jié)果進(jìn)行檢驗(yàn)以確保它們是正確的。tan= 或 233.1S=0.8 或 -0.8C=0.6 或 -0.6 S=5 或 -5C=7 =35.5 或 -35.5 =8.6可以對這兩組解進(jìn)行檢驗(yàn)并正是這兩組解都能滿足所有的位置方程。如果沿給定的三維坐標(biāo)軸旋轉(zhuǎn)這些角度,物理上的確能到

43、達(dá)同一點(diǎn)。然而必須注意,其中只有一組解能滿足姿態(tài)方程。換句話說,前兩種解將產(chǎn)生同樣的位置,但處于不同的姿態(tài)。由于目前并不關(guān)心手坐標(biāo)系在這點(diǎn)的姿態(tài),因此兩個(gè)位置解都是正確的。實(shí)際上,由于不能對三自由度的機(jī)器人指定姿態(tài),所以無法確定兩個(gè)解中哪一個(gè)和特定的姿態(tài)有關(guān)。2.7.1.4 鏈?zhǔn)阶鴺?biāo)如圖2.21所示,鏈?zhǔn)阶鴺?biāo)由三個(gè)旋轉(zhuǎn)組成。后面在討論Denavit-Hartenberg表示法時(shí),將推導(dǎo)鏈?zhǔn)阶鴺?biāo)的矩陣表示法。圖2.21鏈?zhǔn)阶鴺?biāo)2.7.2 姿態(tài)的正逆運(yùn)動學(xué)方程假設(shè)固連在機(jī)器人手上的運(yùn)動坐標(biāo)系已經(jīng)運(yùn)動到期望的位置上,但它仍然平行于參考坐標(biāo)系,或者假設(shè)其姿態(tài)并不是所期望的,下一步是要在不改變位置的情況

44、下,適當(dāng)?shù)匦D(zhuǎn)坐標(biāo)系而使其達(dá)到所期望的姿態(tài)。合適的旋轉(zhuǎn)順序取決于機(jī)器人手腕的設(shè)計(jì)以及關(guān)節(jié)裝配在一起的方式??紤]以下三中常見的構(gòu)型配置:(a) 滾動角、俯仰角、偏航(RPY)角(b) 歐拉角(c) 鏈?zhǔn)疥P(guān)節(jié)2.7.2.1 滾動角、俯仰角和偏航角這是分別繞當(dāng)前軸的三個(gè)旋轉(zhuǎn)順序,能夠把機(jī)器人的手調(diào)整到所期望的姿態(tài)。此時(shí),假定當(dāng)前的坐標(biāo)系平行于參考坐標(biāo)系,于是機(jī)器人手的姿態(tài)在RPY(滾動角、俯仰角、偏航角)運(yùn)動前與參考坐標(biāo)系相同。如果當(dāng)前坐標(biāo)系不平行于參考坐標(biāo)系,那么機(jī)器人手最終的姿態(tài)將會是先前的姿態(tài)與RPY右乘的結(jié)果。因?yàn)椴幌M\(yùn)動坐標(biāo)系原點(diǎn)的位置有任何改變(它已被放在一個(gè)期望的位置上,所以只需要旋

45、轉(zhuǎn)她到所期望的姿態(tài)),所以RPY的旋轉(zhuǎn)運(yùn)動都是相對于當(dāng)前的運(yùn)動軸的。否則。如前面所看到的,運(yùn)動坐標(biāo)系的位置將會改變。于是,右乘所有由RPY和其他旋轉(zhuǎn)所產(chǎn)生的與姿態(tài)改變有關(guān)的矩陣。圖2.22繞當(dāng)前坐標(biāo)軸的RPY旋轉(zhuǎn)參考圖2.22,可看到RPY旋轉(zhuǎn)包括以下幾種:l 繞軸(運(yùn)動坐標(biāo)系的z軸)旋轉(zhuǎn)叫滾動;l 繞軸(運(yùn)動坐標(biāo)系的y軸)旋轉(zhuǎn)叫俯仰;l 繞軸(運(yùn)動坐標(biāo)系的x軸)旋轉(zhuǎn)叫偏航。表示RPY姿態(tài)變化的矩陣為: (2.36)這個(gè)矩陣表示了僅由RPY引起的姿態(tài)變化。該坐標(biāo)系相對于參考坐標(biāo)系的位置和最終姿態(tài)是表示位置變化和RPY的兩個(gè)矩陣的乘積。例如,假設(shè)一個(gè)機(jī)器人是根據(jù)球坐標(biāo)和RPY來設(shè)計(jì)的,那么這個(gè)機(jī)

46、器人就可以表示為:關(guān)于RPY的你運(yùn)動學(xué)方程的解比球坐標(biāo)更復(fù)雜,因?yàn)檫@里有三個(gè)耦合角,所以需要所有三個(gè)角各自的正弦和余弦值的信息才能解出這個(gè)角。為解出這三個(gè)角的正弦值和余弦值,必須將這些角解耦。因此,用的逆左乘方程兩邊,得: (2.37)假設(shè)用RPY得到的最后所期望的姿態(tài)是用矩陣來表示的,則有: (2.38)進(jìn)行矩陣相乘后得: (2.39)在式(2.38)中的分量表示了最終的期望值,它們通常是給定或已知的,而RPY角的值是未知的變量。讓式(2.39)左右兩邊對應(yīng)的元素相等,將產(chǎn)生如下結(jié)果(關(guān)于ATAN2函數(shù)的解釋請參考附錄A):根據(jù)2,1元素得: (2.40)根據(jù)3,1元素和1,1元素得: (2

47、.41)根據(jù)2,2元素和2,3元素得: (2.42)例2.16下面給出了一個(gè)笛卡爾坐標(biāo)-RPY型機(jī)器人手所期望的最終位姿,求滾動角,俯仰角,偏航角和位移。解:根據(jù)上述方程,得到兩組解:或235 或128或195 例2.17與例2.16中的位姿一樣,如果機(jī)器人是圓柱坐標(biāo)-RPY型,求所有關(guān)節(jié)變量。解:在這種情況下,可用:這個(gè)方程右邊有4個(gè)角,它們是耦合的,因此必須像前面那樣將它們解耦。但是,因?yàn)閷τ趫A柱坐標(biāo)系z軸旋轉(zhuǎn)角并不影響a軸,所以它仍平行于z軸。其結(jié)果是,對于RPY繞a軸旋轉(zhuǎn)的角可簡單地加到上。這意味著,求出的實(shí)際上是(參見圖2.23)。根據(jù)給定的位置數(shù)據(jù),可求得例2.16的解。參考式(2.33),得到: 同例2.16一樣 當(dāng)然,可以用類似的解法求出第二組解。圖2.23例2.17的圓柱和RPY坐標(biāo)2.7.2.2 歐拉角除了最后的旋轉(zhuǎn)使然當(dāng)前的a軸外,歐拉角的其他方面均與RPY相似(參見圖2.24)。我們?nèi)孕枰顾行D(zhuǎn)都是繞當(dāng)前的軸轉(zhuǎn)動以防止機(jī)器人的位置有任何改變。表示歐拉角的轉(zhuǎn)動如下:l 繞軸(運(yùn)動坐標(biāo)系的z軸)旋轉(zhuǎn)度;l 接著繞軸(運(yùn)動坐標(biāo)系的y軸)旋轉(zhuǎn)度;l 最后再繞軸(運(yùn)動坐標(biāo)系的x軸)旋轉(zhuǎn)度。表示歐拉角姿態(tài)變化的矩陣是: (2.43)圖2.24繞當(dāng)前坐標(biāo)軸的歐拉旋

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論