【机器人工具箱Robotics Toolbox开发笔记(十二)】 机器人运动轨迹规划
在机器人学中,机器人的运动轨迹是其各关节在三维空间中随时间变化的位置、速度和加速度的综合表现。针对这些运动轨迹,主要关注三个方面:
-
轨迹规划:根据具体的操作任务,为机器人设计并指定一条在空间中合理且高效的移动路径。这要求考虑到机器人的物理限制(如关节角度范围)、动力学特性以及环境约束等。
-
轨迹描述:对已规划好的轨迹进行精确的数学描述,包括其形状、长度、速度变化等特征。这有助于机器人控制系统理解和执行该轨迹,确保运动的准确性和稳定性。
-
轨迹生成相关问题:涉及轨迹的平滑性、连续性、实时性等方面的挑战。如何生成既满足任务要求又符合机器人动力学特性的轨迹,是机器人运动规划中的关键问题。
关于机器人的位姿(位置和姿态)描述,主要有三种方法:
-
关节空间描述:通过一组关节变量(即关节角度或位置)来定义机器人的位姿。这种方法直接关联到机器人的机械结构,便于理解和控制各关节的运动。
-
驱动器空间描述:将关节变量进一步映射到驱动器的控制输入上,形成驱动器矢量。这种方法更多地关注于如何通过控制驱动器来实现关节的运动,适用于需要精确控制驱动器输出的场景。
-
笛卡尔空间描述:在三维空间中,直接以直角坐标系(X, Y, Z)描述机器人的位置,同时以欧拉角、四元数等方式描述其姿态。这种方法直观易懂,便于进行空间几何运算和路径规划,特别是在需要机器人末端执行器在特定位置和方向上执行任务的场景中。
一. 实例:五次多项式轨迹
机器人工具箱中提供的函数tpoly()可以生成五次多项式轨迹。例如,生成一个初始位置为0,最终位姿为4,初速度为2,最终速度为0,最初加速度和最终加速度都为0,时间长度为20的轨迹;
输入matlab命令:
[x v a]=tpoly (0, 4,20,2,0)
plot (x)
生成的五次多项式轨迹如图1所示。
图1 tpoly()生成的五次多项式轨迹
二. 实例:笛卡尔空间的轨迹
绘制末端执行器在平面上的运动轨迹。
输入matlab命令:
Ts=ctraj(T1,T2, length(t))
plot(t,transl(Ts))
运行结果如图2所示。
图2 末端执行器在平面的轨迹
绘制末端执行器在xy平面的指向轨迹;
输入matlab命令:
plot (t, tr2rpy(Ts))
运行结果如图3所示。
图3 末端执行器在平面的指向轨迹