赞
踩
机器人学中我们是通过齐次矩阵来描述机器人的关节运动,接下来我们详细的证明下齐次矩阵的推导过程
其中前3x3表示旋转矩阵:
后4x1表示平移矩阵:
合在一起可以简写为:
齐次矩阵=旋转矩阵*平移矩阵
以上公式就可以完全描述出机器人单个关节在笛卡尔坐标系下的任意距离移动和角度旋转了,接下来我们就开始证明。
第一步:我们来证明单个机器人关节旋转矩阵的坐标映射,由于在平面上坐标的Z轴是垂直于纸面,所以不需要绘制,再接下来的证明,也就默认代表基于Z轴来旋转。
我们画了一个红色的坐标系 ,在这个坐标系上面有一个的矢量,坐标的位置对应和
我们用矩阵的描述方式来表达的位置:
之后我们在同圆心的位置画一个坐标系,用蓝色的笔来标注,同时旋转了角度
这个时候在坐标系上面的坐标描述就等于
那么问题就来了,当我们已知P1在坐标系上面的位置矢量和旋转角度的时候,怎么来求得他在坐标系上面的位置信息?
这个时候我们可以借助三角函数。
我们再把图片细化,我们要求得在中的位置,我们只需要去求和的长度即可。
画如下图片,我们吧做一个垂直线,垂点是:
如果求的长度,公式为:
其中:
(原因如下图,因为;原因是因为图纸标注的两个小三角形三边平行,根据平行线定理得知两个小三角形内角也相等,所以;由于是已知的,所以,设斜边=;那么得到结论)
带入公式得到:
根据下图同样的方式推导:
其中:
代入公式得最终结果:
整理如下公式:
(由于Z轴原点没有变化,那么他们始终相等)
以上我们就推导出了沿着Z轴旋转角度,在坐标系和坐标系之间的一个计算公式,我们再把以上方程组转化为一个3x3的矩阵,用来描述 位置在两个坐标系之间的关系:
其中R即可表示一个旋转矩阵,也可以称作是一个沿着z轴旋转的算子
通过以上同样的方式,我们可以推算出沿着y轴和x轴,过程类似,我就不推算了,可自行推导,直接写结果:
相对于平移矩阵,就比旋转矩阵简单多了,上面我们介绍的都是基于两个坐标系原点一样的情况下进行,我们就忽略了位置信息,接下来我们开始让坐标系的原点沿着坐标系原点移动和的距离。如下图:
那么我们只需要在以上推导出来的公式上加上和即可:
(Z轴距离始终相等)
那么上述公式,就升级4x4矩阵形式:
其中T就是齐次矩阵
得到如下:
最终简化:
于是【齐次变换矩与变换后的坐标矩阵相乘,可以得到变换前的坐标位姿信息,通过此方式就得到单个关节的运动信息,多关节运动以此类推,证毕!】
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。