1. 课程导入
在机器人、自动驾驶与数控机床等运动系统中,我们常常先解决“能不能动”的问题,再解决“动得好不好”的问题。轨迹规划(Trajectory Planning)正是连接这两者的桥梁:它把任务层给出的目标(去某个位置、走某条路径、加工某个轮廓)翻译成控制器可以逐周期执行的、随时间变化的位姿、速度、加速度乃至加加速度序列。换句话说,路径回答“走哪条线”,轨迹回答“以什么时间律走完这条线”。
一、核心原理:路径、时间律与约束的三层结构
理解轨迹规划,可以抓住三个层次。第一层是几何路径,例如直线、圆弧、样条或避障后的折线,它只描述空间形状,不含时间信息。第二层是时间参数化,即给路径上的每个点分配时刻,决定速度曲线是梯形、S 形还是多项式。第三层是约束校验,检查速度、加速度、力矩是否越界,必要时重新规划。三者关系可用下面的信号链表示。
二、发展历程:从示教到优化
轨迹规划并非一开始就如此“数学化”。早期工业机器人依赖示教再现,操作者手动牵引机械臂记录关键点,控制器在点间做简单插补。这一阶段解决了重复作业问题,但难以适应新任务。随后,多项式与样条插值被引入,使轨迹在关节空间连续可导,减少了冲击。20 世纪 90 年代后,随着计算能力提升,时间最优规划与动态规划开始实用化,典型代表是考虑速度、加速度约束的梯形与 S 形速度曲线。
进入 21 世纪,自动驾驶与协作机器人推动了采样规划(RRT、PRM)与优化规划(CHOMP、TrajOpt、MPC)的发展。前者擅长高维避障,后者把平滑性、动力学可行性写成代价函数与约束,用数值优化求解。近年来,学习类方法(模仿学习、强化学习)开始与传统规划融合,但工程上仍以“优化为主、学习为辅”的混合架构最为常见。
三、应用场景:同一套思想,不同的约束
| 领域 | 典型对象 | 关键约束 | 规划重点 |
|---|---|---|---|
| 工业机器人 | 六轴机械臂 | 关节速度、力矩、奇异点 | 节拍最短、轨迹平滑 |
| 自动驾驶 | 车辆横纵向运动 | 曲率、附着、舒适度 | 安全避障、乘坐舒适 |
| 数控加工 | 刀具中心点 | 进给率、加速度、轮廓误差 | 加工精度、表面质量 |
| 移动机器人 | 差速/全向底盘 | 非完整约束、动态障碍 | 实时重规划、平滑转向 |
四、案例与误区:一条 S 形速度曲线的启示
假设某关节需要在 0.5 秒内从 0° 运动到 90°,最大速度 200°/s,最大加速度 800°/s²。若直接使用梯形速度曲线,加速度在起止时刻发生阶跃,容易激发机械谐振。改用 S 形曲线后,加加速度受限,冲击明显减小。下面是一段简化的参数配置示例:
# 关节轨迹规划参数示例
q_start = 0.0 # 起始角度 (rad)
q_end = 1.5708 # 终止角度 (rad)
v_max = 3.49 # 最大速度 (rad/s)
a_max = 13.96 # 最大加速度 (rad/s^2)
j_max = 100.0 # 最大加加速度 (rad/s^3)
T = 0.5 # 期望运动时间 (s)
# 校验:若梯形曲线所需加速度超过 a_max,则自动延长 T
# 若 S 形曲线加加速度超过 j_max,则降低 v_max 或放宽 T
五、本课程学习目标与知识框架
本课程围绕“速度与动力学约束”这一主线展开,目标是让你能够独立完成从任务描述到可执行轨迹的完整设计。具体包括:理解路径与轨迹的区别;掌握梯形、S 形与多项式时间参数化方法;学会在关节空间与笛卡尔空间之间选择规划策略;能够处理速度、加速度、加加速度与力矩约束;并具备用 MPC、优化方法进行在线重规划的能力。