999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

四元數在工業機器人編程操作中的應用

2023-12-26 04:46:50程福
智能制造 2023年6期

程福

(北京城市學院信息學部,北京 101300)

1 引言

相對于旋轉矩陣、歐拉角、旋轉向量等機器人姿態描述方法,四元數因其具有能夠實現平滑插值、避免萬向節死鎖等優點,被廣泛應用于機器人末端操作器(工具)的姿態規劃中[1-2]。目前廣泛應用的基于四元數的姿態插補算法主要有球面線性插值 (Spherical Linear Interpolation,SLERP) 和球面立體插值 (Spherical and Quadrangle,SQUAD)[3]。SLERP 算法計算簡單,可以高效地實現兩姿態間的平滑插值。

由于應用四元數能夠確保工具在三維空間中姿態變換的平滑性,其在工業機器人研發中得到了深入的研究和廣泛的應用,但介紹四元數應用于機器人編程操作的公開文獻并不多見[4-5]。在機器人的編程操作時,可以應用四元數實現工具角位移的精確度和重復精度的準確檢測,也可以進行直線運動軌跡的姿態規劃。

2 四元數用作姿態描述和旋轉變換

2.1 四元數與歐拉旋轉定理

四元數是對復數的擴展。四元數實質上是實數、復數及三維空間向量的擴充,包含一個實部和三個虛部。一個復數表達式為a+bi。其中,a和b都是實數,i是單位虛數,i2=-1。一個四元數表達式:q=q1+q2i+q3j+q4k,其中i2=j2=k2=-1,ij=k=-ji,jk=i=-kj,ki=j=-ki,{q1,q2,q3,q4}都是實數,表示四元數的四個組成元素。

四元數的加法運算:如果p={p1,p2,p3,p4} 表示另一個四元數,則兩個四元數加法運算:q+p=p+q=(q1+p1)+(q2+p2)i+(q3+p3)j+(q4+p4)k;四元數的乘法運算:qp=(q1p1–q2p2–q3p3–q4p4)+(q1p2+q2p1+q3p4–q4p3)i+(q1p3+q3p1–q2p4+q4p2)j+(q1p4+q4p1+q2p3–q3p2)k。

四元數的加法滿足結合律和交換律。但是,四元數的乘法和矩陣的乘法相類似,只滿足結合律,不滿足交換律,即qp≠pq。

歐拉旋轉定理指出,對于空間中任意姿態的坐標系,總可以在空間里找到某個軸,使其中一個坐標系繞軸旋轉一個角度就能與另一個坐標系姿態重合。所以,坐標系在三維空間中的姿態可以用一個代表旋轉軸的向量u和繞向量u旋轉的角度θ來描述,向量u的方向遵循右手螺旋法則。如果用u與θ描述一個坐標系的姿態,那么-u與-θ,以及-u與 360°-θ分別描述的坐標系的姿態與該坐標系的姿態相同。

工具坐標系實現姿態變換的旋轉軸如圖1 所示,用向量及繞其旋轉角度描述坐標系在三維空間的姿態如圖2 所示。如果在關節空間圍繞工具中心點(Tool Center Point,TCP)改變工具坐標系的姿態,即使繞世界坐標系的X,Y,Z軸進行多次旋轉,仍然等效于工具坐標系繞經過工具中心點TCP 的一個向量u旋轉角度θ實現姿態變換。如果工具中心點TCP 的位置不變,編程人員使用直線移動指令改變工具的姿態,大多數機器人的控制器會采用繞經過工具中心點TCP 的一個向量u旋轉角度θ實現姿態變換,所應用的是基于四元數的SLERP 軌跡插值法[3]。

圖1 工具坐標系實現姿態變換的旋轉軸

圖2 用向量及繞其旋轉角度描述坐標系在三維空間的姿態

2.2 應用四元數描述三維空間的姿態

對于單位四元數q,|q|=q12+q22+q32+q42=1,q可以描述為q={cos(θ/2),uxsin(θ/2),uysin(θ/2),uzsin(θ/2)},其中,ux,uy,uz是向量u三個互相垂直的主軸的分量,θ是繞向量u旋轉的角度。q所描述的姿態是由于世界坐標系姿態相同的四元數描述的坐標系繞以向量u為軸旋轉角度θ變換而來。所以,僅用u和θ就可以描述坐標系在三維空間的姿態。

使向量u分別代表世界坐標系的z、y、x軸,則四元數描述的坐標系繞向量u旋轉角度θ變換而來的姿態分別如圖3a、3b 和3c 所示。

圖3 四元數描述的坐標系繞世界坐標系z、y、x 軸旋轉一定角度的姿態

由于同一個四元數描述的姿態與用繞向量-u旋轉360°-θ角度的姿態相同,即q={cos(180°-θ/2),-uxsin(180 °-θ/2),-uysin(180 °-θ/2),-uzsin(180 °-θ/2)}={-cos(θ/2),-uxsin(θ/2),-uysin(θ/2),-uzsin(θ/2))=-q。所以,一個四元數與其四個組成元素取負值后的四元數,它們描述的是同一個姿態。

2.3 單位四元數用作旋轉變換

如果Rq是3×3 旋轉矩陣,其對應的姿態用四元數q來描述,Rp為另一個四元數p對應的3×3 旋轉矩陣,那么旋轉矩陣RqRp與四元數qp描述的姿態相同。由于兩個3×3 旋轉矩陣需要經過27 次乘法和10 次加/減法運算,而兩個四元數相乘只需要經過16 次乘法和12 次加/減法運算,所以應用四元數描述姿態的優點是計算效率較高。

一個3×3 旋轉矩陣的逆矩陣等于其轉置矩陣,即Rq-1=RqT。四元數的求逆運算描述的姿態變換更為直觀,它是由同一個坐標系繞向量u以-θ角度旋轉而 來,即q-1={cos(-θ/2),uxsin(-θ/2),uysin(-θ/2),uzsin(-θ/2)}={cos(θ/2),-uxsin(θ/2),-uysin(θ/2),-uzsin(θ/2)}。因此,可以得到q-1q=qq-1={1,0,0,0}。這說明,四元數與其求逆后的四元數相乘得到的四元數描述的姿態與3×3 單位矩陣姿態相同。

如圖4 所示,如果純四元數v={0,vx,vy,vz}描述一個坐標系的姿態,單位四元數q作為坐標系姿態變換的算子,那么,四元數qvq-1描述的姿態與四元數v描述的姿態相同。

圖4 四元數qvq-1 描述的姿態v1 與純四元數v 描述的姿態v0 相同

應用四元數,可以實現與應用歐拉角法相同的工具坐標系的姿態變換;首先把應用歐拉角法實現姿態變換的三個分量角度分別轉化為四元數,然后將這三個四元數相乘,依據四元數乘法的幾何意義則得到表示旋轉的四元數。

設歐拉角的三個旋轉角度分量分別為,繞z軸旋轉α角,繞y軸旋轉β角,繞x軸旋轉γ角。這三個旋轉角度分量對應的四元數為qz,qy,qx,則Q表示最終得到的旋轉四元數:

2.4 單位四元數與姿態變換矩陣的轉換

對于單位四元數,其對應的姿態變換矩陣為。

3 應用四元數檢測工具的角位移

等量的歐拉角變化并不一定對應等量的姿態旋轉,對應同一個姿態,歐拉角的角度變化量可以有多組,而且姿態輕微的改變,歐拉角變換很大。所以,應用歐拉角很難準確評價實現姿態變換的角位移的精確度和重復精度;應用單位四元數能夠很容易根據實現初始姿態變換到結束姿態的角位移,準確檢測出角位移的精確度和重復精度。

如果q是描述工具坐標系在姿態1 時的四元數,p是描述工具坐標系在姿態2 時的四元數,則工具在姿態2相對于姿態1 時的姿態用四元數描述為

式中,wx,wy,wz是單位向量w的分量。公式(1)表明,工具從姿態q變換到姿態p,需要繞向量w旋轉角度φ,如圖5 所示。為了實現以最小角度的旋轉,限定旋轉角度范圍為0<φ≤180,因此,如果d的第一個單元為負數,則計算角度φ時需要將d=—d,即cos(φ/2),以確??偸侨的第一個單元數的正值來計算角度φ。由公式cos(φ/2)=可以求出旋轉角度φ。

圖5 四元數q 和p 描述的姿態在世界坐標系中的旋轉變換

4 應用單位四元數實現機器人工具直線運動軌跡的姿態規劃

盡管以逆時針和順時針兩個方向可以實現等效的姿態變換,但以小于180°的角度實現姿態變換是最快捷的角度變化路徑,也是驅動轉矩最小的角度變化路徑。

為了實現四元數q描述的姿態以等角速度平滑變換到四元數p描述的姿態,需要應用公式(5)描述的球面線性插值SLERP 法得到相等的角度變化量的序列值。

式中,t∈[0,1],t=0 對應四元數q描述的姿態,t=1 對應四元數p描述的姿態。

根據前述分析,d=q-1p={cos(φ/2),wxsin(φ/2),wysin(-φ/2),wzsin(-φ/2)},球面線性插值法的公式可以視為實現四元數q描述的姿態以等角速度平滑變換到四元數p 描述的姿態,需要以角度φ旋轉次。所以,dt={cos(tφ/2),wzsin(tφ/2),wysin(-tφ/2),wzsin(-tφ/2)}。

如果令t=0,1/n,2/n,…,1,那么,球面線性插值法實質上是通過每次以相等的旋轉角度φ/n,實現旋轉角度為φ的姿態變換。應該注意,要確保φ小于180°。式(6)與式(5)等效,但更便于計算。式(5)中的每一個t值,對應一個四元數。

如果機器人的工具中心點TCP 位置不變,只是姿態發生變化,可以應用球面線性插值法以等角速度實現初始姿態平滑變換到結束姿態,如圖6 所示。

圖6 機器人的工具中心點位置不變時姿態變換過程

根據程序6 的計算出來的序列姿態,應用工業機器人編程軟件RoboDK 編程控制ABB 機器人實現工具的姿態變換過程如圖7 所示[6]。

圖7 機器人在工具中心點位置不變時姿態變換過程

如果機器人的工具中心點TCP 沿直線運動過程中不僅姿態發生變化,位置也發生變化。編程人員為了控制工具沿直線運動過程中的姿態和位置變換,可以應用球面線性插值(SLERP)法以等角速度實現工具從初始姿態平滑變換到結束姿態,應用式(7)描述的線性插值(LERP)法實現工具從初始位置經過若干序列點沿直線運動到結束位置,如圖8 所示。

圖8 應用SLERP 和LERP 在工具沿直線運動位姿平滑變換

根據程序7 的計算出來的序列位姿,應用工業機器人編程軟件RoboDK 編程控制ABB 機器人實現沿直線運動時工具的姿態和位置變換過程如圖9 所示。

圖9 機器人在工具沿直線運動位姿平滑變換

5 結束語

盡管絕大多數工業機器人軟件采用歐拉角法描述機器人工具的姿態,但在機器人編程操作中應用歐拉角法能夠準確地檢測工具角位移的精確度和重復精度。編程操作人員應用四元數法不僅能夠準確地檢測工具角位移的精確度和重復精度,也可以根據操作任務要求(例如,要求以驅動轉矩最小的角度變化路徑進行姿態變換)重新進行機械臂工具的姿態規劃。

主站蜘蛛池模板: 免费播放毛片| 91外围女在线观看| 3344在线观看无码| 暴力调教一区二区三区| 国产极品美女在线播放| 免费看av在线网站网址| 精品久久久久久成人AV| 婷婷色在线视频| 国产拍揄自揄精品视频网站| 国产玖玖视频| 91在线播放国产| 精品欧美视频| 亚洲国产精品人久久电影| 午夜少妇精品视频小电影| 日韩欧美色综合| 青青草国产免费国产| 在线播放91| 尤物精品国产福利网站| 欧美成人午夜影院| 国产人人射| 无码中文字幕乱码免费2| 韩国v欧美v亚洲v日本v| 免费高清a毛片| 91免费观看视频| 日本午夜三级| 国产精品无码AⅤ在线观看播放| 亚洲一区二区视频在线观看| 在线观看无码a∨| 久热中文字幕在线观看| 亚洲精品欧美重口| 日韩精品一区二区三区中文无码| 黄色网站在线观看无码| 一级看片免费视频| 国产乱人伦AV在线A| 日本久久网站| 综合色天天| 国产日本欧美亚洲精品视| 天天综合天天综合| 亚洲高清在线天堂精品| 无码aⅴ精品一区二区三区| 成人在线综合| 99久久精品免费看国产电影| 亚洲天堂久久| av大片在线无码免费| 国内精品免费| 亚洲人成日本在线观看| 亚洲国产精品久久久久秋霞影院 | 国产一区成人| 伊人91在线| 成人福利在线免费观看| 亚洲第七页| 人人艹人人爽| 亚洲午夜天堂| www.国产福利| 国产福利免费观看| 国产日韩AV高潮在线| 中文字幕 日韩 欧美| 中文字幕亚洲另类天堂| 亚洲国产精品不卡在线| 国产精品久久久久婷婷五月| 制服丝袜亚洲| 成人伊人色一区二区三区| 99re免费视频| 三上悠亚精品二区在线观看| 久热中文字幕在线观看| 欧美亚洲国产一区| 亚洲综合色婷婷| 一本色道久久88| 久久鸭综合久久国产| 啪啪免费视频一区二区| 97国产精品视频自在拍| 久久99热这里只有精品免费看| 久久久久久午夜精品| 色欲色欲久久综合网| 999精品在线视频| 欧美国产成人在线| 98精品全国免费观看视频| 国模私拍一区二区| 国产原创演绎剧情有字幕的| 91精品伊人久久大香线蕉| 久久中文无码精品| 欧美精品另类|