机器人研究方向的自我学习[2] Matlab机器人工具箱 欧拉角 参考书:《机器人学导论》第四版
空間描述和變換
- 空間描述和變換
- 1、位姿描述:即操作臂的位置和狀態(tài)。
- 2、坐標(biāo)系一般變換:
- 3、復(fù)合變換和逆變換
- 4、其他姿態(tài)描述
- P43頁(yè)MATLAB練習(xí)
- 1.a
- 1.b
- 1.d
空間描述和變換
1、位姿描述:即操作臂的位置和狀態(tài)。
2、坐標(biāo)系一般變換:
表示B相對(duì)于A的坐標(biāo)
表示B坐標(biāo)系的原點(diǎn)偏距
3、復(fù)合變換和逆變換
4、其他姿態(tài)描述
X-Y-Z固定角
Z-Y-X(z-y-z)歐拉角
首先將坐標(biāo)系{B}和另一個(gè)已知參考坐標(biāo)系{A}重合。先將{B}繞Zb轉(zhuǎn)α角,再繞Yb轉(zhuǎn)β角,最后繞Xb轉(zhuǎn)γ角。
等效角度-軸線表示法
符號(hào)Rx(30.0)表示繞一個(gè)給定軸X旋轉(zhuǎn)30度的姿態(tài)描述。
P43頁(yè)MATLAB練習(xí)
這里寫(xiě)目錄標(biāo)題
- 空間描述和變換
- 1、位姿描述:即操作臂的位置和狀態(tài)。
- 2、坐標(biāo)系一般變換:
- 3、復(fù)合變換和逆變換
- 4、其他姿態(tài)描述
- P43頁(yè)MATLAB練習(xí)
- 1.a
- 1.b
- 1.d
1.a
注意
用 a,b,c分別代表角α,β,γ 。
我用的是角度,sind(角度)
運(yùn)行程序,例如輸入角度45,45,45,得到旋轉(zhuǎn)矩陣R
1.b
clc clear alla=input("輸入歐拉角a:");%a-alpha,b-beta,c-gramma b=input("輸入歐拉角b:"); c=input("輸入歐拉角c:"); Rz=[cosd(a), -sind(a), 0; sind(a), cosd(a), 0; 0, 0, 1]; %afa是繞z軸旋轉(zhuǎn)a,偏航角——yaw Ry=[cosd(b),0, sind(b);0, 1, 0; -sind(b), 0, cosd(b)];%beta是繞y軸旋轉(zhuǎn)b,俯仰角——pitch Rx=[1, 0, 0; 0, cosd(c), -sind(c); 0, sind(c), cosd(c)];%gama是繞x軸旋轉(zhuǎn)c,翻滾角——rollR=Rz*Ry*Rx; b=(atan(-R(3,1)/sqrt(R(1,1)^2+R(2,1)^2)))*180/pi; a=(atan((R(2,1)/cosd(b))/(R(1,1)/cosd(b))))*180/pi; c=(atan((R(3,2)/cosd(b))/(R(3,3)/cosd(b))))*180/pi;if b==90a=0;b=90;c=(atan(R(1,2)/R(2,2)))*180/pi;elseif b==-90a=0;b=-90;c=(-atan(R(1,2)/R(2,2)))*180/pi;end enda b c運(yùn)行程序:發(fā)現(xiàn)成功反解旋轉(zhuǎn)矩陣
1.d
clc; clear all;R=rotx(pi/4)*roty(pi/4)*rotz(pi/4);t=rpy2tr(pi/4,pi/4,pi/4);%求旋轉(zhuǎn)矩陣 w=(tr2rpy(t))*180/pi;%旋轉(zhuǎn)矩陣反解R t wt的第四行和第四列表示原點(diǎn)偏移為0.
注意:使用函數(shù)rpy2tr()反解旋轉(zhuǎn)函數(shù)時(shí)可能會(huì)有不同結(jié)果,因?yàn)橛行蛐D(zhuǎn)順序的存在,故旋轉(zhuǎn)矩陣的反解會(huì)有多種。詳情請(qǐng)看:https://www.cnblogs.com/dadidelearning/p/9571101.html
總結(jié)
以上是生活随笔為你收集整理的机器人研究方向的自我学习[2] Matlab机器人工具箱 欧拉角 参考书:《机器人学导论》第四版的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Linux中关于API函数与系统调用
- 下一篇: 算法--机器人学导论