空间描述,广义坐标
视频地址:
https://www.bilibili.com/video/av55957630/?p=2
机械臂自由度
用哪些参数可以来描述机械臂呢?答案是位置&姿态,包括XYZ轴坐标以及三个旋转角度共6个参数。
对于一个拥有N关节的机械臂(当前不考虑连杆),那么需要6N个参数。如果考虑连杆,那么自由度必然受约束,(旋转关节只能绕某个轴旋转,直线关节只能沿着一个方向移动)。这些约束包含了5N个参数。
6N-5N=N
至此得到一个重要信息,N个关节的机械臂拥有N个自由度。
对于人型机器人,因为是可以活动的,而不像机械臂拥有一个固定的基座,那么N个关节机器人的自由度是N+6。这也是为什么人型机器人控制难度远远大于工业机器人的原因之一。
末端执行器
老师花了很多时间让大家思考有哪些方法可以描述末端执行器的坐标。
最简单也是最容易想到的就是用一个矢量(XYZ)描述位置,外加三个角度描述姿态,这是最少参数的情况。
也可以用三个矢量描述,想像用三组XYZ移动坐标轴,每次对齐一个坐标轴,一共需要9个参数。
然后提到了欧拉参数,由一个旋转矩阵(3x3)来描述姿态,以及包括XYZ的矢量组成。这是为了后面解释坐标系变化做铺垫。
末端执行器是系统最后的刚体,所以在末端执行器的位置和姿态前,它拥有所有的自由度,但是最多不会超过6个。如果末端执行器被限制在一个二维平面上工作,比如刷墙壁这个任务,那么末端执行器就只有3个自由度了(XY及一个旋转)。
冗余自由度
关节个数大于末端执行器自由度的情况下就会有冗余自由度,在路径规划躲避障碍问题上会有帮助。
旋转变换
这个部分主要是在解释一个矢量在两个不同坐标系中存在的不同表达。
根据坐标系A确定坐标系B的转动,通过旋转矩阵来表示。又可以具体到三个坐标轴的旋转表达。,各列代表B坐标系中XYZ轴在A坐标系中的表达。
。
把和
也按
这样展开,如果R是正交矩阵,那么有:
坐标系描述
旋转变换再加上位置变换,可以得到总的转换关系
为了更加方便地处理链式变换,写成齐次形式:
映射与操作(Mapping & Operators)
老师说这可能会让你们困惑,的确有一点模棱两可,我觉得大概的意思是映射的核心是改变描述,而操作是如何实现移动。是坐标系变换的两种解释方法。