机器人工程 空间描述和变换(二)
- 格式:pdf
- 大小:95.59 KB
- 文档页数:28
2) 旋转算子
v • 一个矢量 p1 经过一定的旋转变换为一个新 Av 矢量 p2 ,若用R表示这一旋转算子,则:
A
A
v Av p2 = R⋅ p1
cos θ 0 0 1
R = Rot ( z, θ ) = sin θ 0
• 例如,绕z轴转角 θ 的算子可写成: Av y p 2 cos θ − sin θ 0
θ
A
v p1
x
• 或写成齐次表达形式
cθ sθ Rot ( z, θ ) = 0 0
− sθ cθ 0 0
0 0 0 0 1 0 0 1
旋转算子举例
• 已知点U=(7,3,2)T,将此点绕z轴旋转90度, 再绕y轴旋转90度,求最后得到的点W • 解:
W = Rot ( y ,90o ) Rot ( z,90o )U
A U B C
U −1 U B
{U }
TA
C
TC = T TD
TA TD T
A
C
−1 D
U
TB
B
{B}
TC = ?
{C}
3 变换的左乘和右乘
由矩阵运算规律知,两矩阵相乘,次序是不能 交换的。
0
T1 T2 ≠ T2 T1
1 1 0
从变换几何来看,左乘与右乘代表不同的变换顺 序和规则。
举例说明
z0
1 0 0 T1 = 0 0
A
B
• 按上述求逆公式容易求得:
0.866 0.5 − 0.5 0.866 B TA = 0 0 0 0
0 − 4.964 0 − 0.598 1 0 0 1
2 变换关系图和变换方程式
• 1)变换关系图
{A}
U
A
TD
{D}
• 2)变换方程式
U
B
TA TD = TB TC TD
反映同一点在不同坐标系中的描述的相互 关系
A
v A Bv p = TB p
B
•
或 TB 将
A
v p
v 映射为 p
A
• 解释三:变换算子
表示在同一坐标系中,对一个点的进行移动 或(和)转动运算
A
v Av p2 =T p1
cos 90o = 0 − sin 90o 0 sin 90o cos 90o 1 0 sin 90o 0 cos 90o 0 − sin 90o cos 90o 0 0 7 2 0 3 = 7 2 3 1
B
B
v pCORG 1
代入,得到:
A
RB RC TC = 0 0 0
A
A
RB
B
v Av pCORG + pBORG 1
变换算术
RB TB = 0 0 0
A A
已知:A
v pBORG 1
A T A
求逆公式为:
没有一般矩阵求逆那样复杂
A T
[ ]
1)复合变换
C v 已知: p v 欲求:A p
A
v p
{A}
{B}
{C}
B
p = TC p
B C
A
v A Bv A B Cv p = TB p = TB TC p
A
令: 用:A
TC = TB TC
A B
A A
复合变换
B
RB TB = 0 0 0
v pBORG 1
B
RC TC = 0 矢量 p1 ,得到新
A
矢量
A
v p2
A
v Av p 2 = T p1
v Rot ( K , θ ) Q T = 0 0 0 1
• T表示一矢量沿K轴转过 θ 角,再沿Q平移 |Q|的距离
qx v Q = q y q z
归纳:“左基右一”
• 变换矩阵的左乘表示沿“基”础坐标系的变换 • 变换矩阵的右乘表示沿当前(“{1}”)坐标系的 变换 • 思考一题以下变换,分别从右乘和左乘解释:
Trans( y , b) Rot ( z, θ )
4 变换的算子含义
• 上述坐标变换还可以理解为算子(operator) • 算子指在同一坐标系中来移动一个点,或者 旋转一个矢量,或者复合变换一个矢量 • 算子包括平移算子、旋转算子和一般算子
1) 平移算子
• 被矢量 平移的 Av 结果得到一个新的矢量(点) p2
v p 矢量(点) 1
A
A
A
v Q
v p1
A
A
v p2
v Q
v v v A A A p2 = p1 + Q
A
v Q = ( q x , q y , q z )T
• 把上述平移运算写成矩阵形式:
1 Av Av p2 p1 0 = Trans ( qx , q y , qz ) = 1 1 0 0 称为 平移算子 0 0 qx Av 1 0 q y p1 0 1 qz 1 0 0 1
20 0 −1 0 1 0 0 z 1 0 0 1
x1
0
0
y1
x0
y0
表示坐标系{0}绕x0轴转900 ,再沿x0轴平移20, 得到坐标系{1}
y1
0 − 1 1 0 1 T2 = 0 0 0 0
0 10 0 0 1 0 0 1
z1
x2 y 2 z2 x1
5.
•
A
A
TB 的三种解释
A
解释一:坐标系的描述
RB TB = 0 0 0
A
A
v pBORG 表示坐标系{B} 在坐标系{A}中 1
的描述。
• •
RB 式中的各列为{B}的单位轴在{A}上的 投影,或{B}的方向余弦。
A
v pBORG 表示{B}的原点位置
• 解释二:坐标变换
机器人工程 Robot Engineering
空间描述和变换(二)
By QIAN Jinwu
复习和回顾
• 上次的最后一题:请同学思考?
提纲
• • • • • 变换算术(复合变换、变换求逆) 变换方程式和变换关系图 变换的左乘和右乘 变换的算子含义 A T 的三种解释
B
1 变换算术
• 包括变换的乘法(复合变换)和变换的求逆(逆 C v 变换 ) p
表示坐标系{1}绕z1轴转900 ,再沿x1轴平 移10,得到坐标系{2}
• 看右乘的结果
0 − 1 0 30 0 0 − 1 0 0 0 1 T2 = T1 T2 = 0 0 1 0 0 1 0 0
z1
z0
y1 y2
x0
y0
• 可见矩阵右乘表示沿 当前坐标系(新坐标 系)的轴进行变换
• 前已知道:
A
v A Bv A p = RB p + pBORG
• 同样有:
• •
v B Av B p = RA p + p AORG v v 当p点取在{B}的原点时: B p = 0 v B Av B 代入上式有: 0= RA pBORG + p AORG
B
• 于是:
A
v T Av B Av A pBORG =− RA pBORG =− RB pBORG
变换求逆应用举例
• 坐标系{B}相对于坐标系{A}绕轴zA转30度, 并沿xA轴平移4个单位,沿yA轴平移3个单 B 位,求 TA • 解:先求 TB ,再求逆得到 TA
cos 30o o sin 30 A TB = 0 0 − sin 30o cos 30o 0 0 0 4 0.866 − 0.5 0 3 0.5 0.866 = 0 1 0 0 0 0 1 0 0 4 0 3 1 0 0 1
n x o −1 A TB = x a x 0
ny oy ay 0
nz oy az 0
− ( n x p x + n y p y + nz pz ) − (o x p x + o y p y + o z p z ) − ( a x p x + a y p y + a z p z ) 1
v RB −1 − RB pBORG A TB = 1 0 0 0
求逆公式的证明
• 由于旋转变换的正交性质:
B
RA = R = R
A A
B B
−1 B
T B
• 按照齐次变换的定义:
B
RA TA = 0 0 0
B
v p AORG 1
• 其中
p AORG 待求
• 代入BTA 式 :
v RB −1 − RB pBORG B A TA = TB = 1 0 0 0
[ ]
A
T
A
T A
• 证明完毕。
齐次变换求逆公式的其他表达
• 设:
nx n y A TB = nz 0
ox oy oz 0
ax ay az 0
px py pz 1
x2
z2
x1
• 再来看左乘
0 1 1 0 T 2 T1 = 0 0
0 0 1 0
1 0 0 0
y1
10 20 0 1
x0
z0
• 左乘的作用:相 当于将坐标系{1} z1 整体沿z0轴转 900 ,再沿x0轴 平移10。
y2
y0 z2 x2