4、路径规划与轨迹规划概念:路径定义、轨迹定义、路径点与插值、轨迹生成的基本流程

在机械臂运动控制的研究与工程实践中,“路径规划”与“轨迹规划”是两个经常被混用、但内涵截然不同的概念。许多初入行的工程师在调试机器人时,往往因为混淆了“路径”与“轨迹”的边界,导致在后续的动力学控制、振动抑制或时间最优规划中遇到难以定位的瓶颈。本章将从定义出发,厘清路径与轨迹的本质区别,深入讲解路径点与插值的数学含义,并梳理出一条从任务描述到关节空间指令的完整轨迹生成流程。理解这一章的内容,是后续学习时间最优轨迹规划(Time-Optimal Trajectory Planning)与路径规划算法(如RRT、A*、PRM)的基石。

路径规划 vs 轨迹规划 —— 概念关系与生成流程 路径 (Path) • 几何描述:空间中的点集 • 无时间属性,无速度/加速度 • 数学表达:P(u) = [x(u), y(u), z(u)] • 关节空间:q = [q1, q2, ..., qn] • 只回答“走什么路线” 路径点与插值 • 路径点:离散的关键位姿 • 插值:在点之间构造连续函数 • 线性插值 / 三次样条 / B样条 • 保证位置连续、速度连续 • 关节空间插值 vs 笛卡尔空间插值 轨迹 (Trajectory) • 路径 + 时间律 • 每个点都有明确的时间戳 • 包含速度、加速度、加加速度 • 数学表达:q(t), t ∈ [t0, tf] • 回答“何时以何速度到达” 轨迹生成基本流程 1. 任务描述 目标位姿/约束 2. 路径规划 避障/几何路径 3. 路径点生成 离散关键点 4. 插值/拟合 连续路径函数 5. 时间律分配 速度/加速度规划 6. 轨迹输出 q(t), q̇(t), q̈(t) 发送至伺服控制器 迭代优化:时间最优 / 能量最优 / 平滑性

4.1 核心原理:路径与轨迹的本质区别

路径(Path)是机械臂末端或关节在空间中运动的几何描述,它只关心“从A点到B点经过哪些空间位置”,不包含任何时间信息。在数学上,路径可以表示为以弧长参数 s 或归一化参数 u ∈ [0,1] 为自变量的连续映射:P(u) = [x(u), y(u), z(u), α(u), β(u), γ(u)],其中前三项为位置,后三项为姿态(如欧拉角或四元数)。在关节空间中,路径则表示为 q(u) = [q₁(u), q₂(u), ..., qₙ(u)],n为关节数。路径本身没有速度、加速度的概念,它只是一条“几何线”。

轨迹(Trajectory)则是路径与时间律(Time Law)的结合。轨迹不仅描述了机械臂经过的空间位置,还规定了每个时刻的位置、速度、加速度甚至加加速度(Jerk)。数学上,轨迹是时间 t 的函数:q(t), t ∈ [t₀, t_f],且要求 q(t) 至少二阶可导(即速度和加速度存在且连续)。轨迹规划的核心任务,就是在给定路径的基础上,设计一个合适的时间标定函数 s(t),使得 q(t) = q(s(t)) 满足运动学与动力学约束。

对比维度 路径(Path) 轨迹(Trajectory)
核心变量 空间位置(几何) 位置 + 时间 + 导数
数学表达 P(u), u∈[0,1] q(t), t∈[t₀,t_f]
是否包含速度/加速度 否 是(一阶/二阶/三阶导数)
是否包含时间信息 否 是
典型应用场景 避障路径搜索、几何可达性分析 伺服跟踪、动力学控制、振动抑制
规划目标 无碰撞、最短几何距离 时间最优、平滑、能量最优
关键理解:路径规划解决的是“空间可行性”问题,轨迹规划解决的是“时间可行性”问题。时间最优轨迹规划的本质,是在给定路径(几何约束)和机器人动力学(力矩/速度约束)的双重限制下,寻找最短的执行时间 t_f。

4.2 路径点与插值:从离散到连续的桥梁

在实际工程中,路径规划算法(如RRT、PRM)输出的往往是一系列离散的路径点(Waypoints),而不是一条连续曲线。这些路径点可能是笛卡尔空间中的末端位姿,也可能是关节空间中的关节角度。要让机械臂真正平滑地运动,必须通过插值(Interpolation)或拟合(Fitting)方法,在这些离散点之间构造一条连续且满足约束的曲线。

插值方法的选择直接影响轨迹的平滑性和动力学性能。常用的插值方法包括:

  • 线性插值(Linear Interpolation):最简单,但连接点处速度不连续(存在突变),会产生无限大的加速度,实际中很少直接用于轨迹生成,仅用于粗略预览。
  • 三次多项式插值(Cubic Polynomial):每个区间用三次多项式连接,可保证位置和速度连续,但加速度可能不连续。适用于对加速度要求不高的场景。
  • 五次多项式插值(Quintic Polynomial):可同时保证位置、速度、加速度连续,是工业机器人中最常用的插值方式之一,能有效减少机械振动。
  • 三次样条(Cubic Spline):全局二阶连续,具有良好的平滑性,适合多路径点场景,但计算量稍大。
  • B样条(B-Spline):具有局部支撑性,修改一个路径点只影响附近区域,且可方便地控制曲线阶数,适合在线轨迹调整。

插值可以在关节空间或笛卡尔空间进行。关节空间插值计算简单、无奇异点问题,但末端轨迹在笛卡尔空间中可能不是直线;笛卡尔空间插值能保证末端走直线或圆弧,但可能遇到奇异位形(Jacobian矩阵奇异)或关节超限问题。工程中通常采用“笛卡尔空间规划路径点,关节空间插值生成轨迹”的混合策略。

4.3 轨迹生成的基本流程:从任务到伺服指令

一个完整的轨迹生成流程,是将任务描述逐步转化为伺服驱动器可执行的指令序列。该流程通常包含以下五个核心步骤:

  1. 任务描述与约束定义:明确目标位姿、避障要求、速度/加速度上限、末端负载等。例如,焊接任务要求末端保持特定姿态沿直线运动,而码垛任务则允许关节空间自由规划。
  2. 路径规划(几何层):在配置空间(C-Space)或笛卡尔空间中搜索无碰撞路径。此阶段输出的是离散的路径点序列,不包含时间信息。
  3. 路径点后处理:对路径点进行简化、均匀化或增加过渡点,消除冗余点,确保路径点密度适合后续插值。
  4. 插值与拟合(连续化):选择合适的插值方法(如五次多项式或样条),生成连续路径函数 P(s)。
  5. 时间律分配(轨迹生成):设计 s(t) 函数,将路径参数 s 映射到时间 t。这一步是时间最优规划的核心,需要满足关节速度、加速度、力矩等约束。

最终输出的轨迹 q(t), q̇(t), q̈(t) 以固定周期(如1ms或4ms)发送给伺服控制器,构成前馈控制信号。

4.4 案例拆解:SCARA机器人“门字形”搬运轨迹

以一台四轴SCARA机器人为例,执行“从A点抓取,抬高到安全高度,平移至B点上方,下降放置”的搬运任务。该任务要求末端在笛卡尔空间中走一个“门字形”路径,以避免与工件或夹具碰撞。

初始条件与约束:

  • A点:(x=300mm, y=0mm, z=50mm),B点:(x=300mm, y=400mm, z=50mm)
  • 安全高度:z=150mm
  • 关节1最大速度:180°/s,关节2最大速度:240°/s
  • 末端最大加速度:2 m/s²

分析判断过程:

首先,在笛卡尔空间定义路径点:P₁=(300,0,50) → P₂=(300,0,150) → P₃=(300,400,150) → P₄=(300,400,50)。这四个点构成门字形。然后,通过逆运动学将每个路径点转换为关节角度 q = [q₁, q₂, q₃, q₄]。接着,在关节空间中对 q₁→q₂→q₃→q₄ 进行五次多项式插值,保证每个路径点处速度为零(因为需要停顿抓取/放置)。最后,根据关节速度限制,计算每段的最小时间。

实际操作与结果:

采用五次多项式插值,每段轨迹的边界条件为:位置已知、速度为零、加速度为零。计算得到第一段(垂直抬升)耗时约0.8s,第二段(水平平移)耗时约1.2s,第三段(垂直下降)耗时约0.8s,总时间约2.8s。若采用时间最优算法(如梯形速度规划),在满足加速度约束的前提下,可将总时间压缩至2.1s,但加速度曲线会出现突变,可能引起末端振动。

工程经验:在搬运任务中,如果对节拍时间要求极高,可以采用“拐角过渡”策略——在路径点附近不完全停顿,而是用圆弧过渡,牺牲少量路径精度换取时间的大幅缩短。这属于路径与轨迹联合优化的范畴。

4.5 常见误区与总结复盘

误区一:将路径规划等同于轨迹规划。很多初学者在ROS中调用move_group的plan()接口时,以为返回的就是轨迹。实际上,该接口返回的RobotTrajectory对象中,路径点之间的时间间隔是默认的,并未经过动力学优化。真正的时间最优轨迹需要额外使用TOPP-RA或trac-ik等工具进行时间参数化。

误区二:忽视插值阶数与振动的关系。线性插值或梯形速度规划虽然计算简单,但加速度不连续,会激发机械臂的结构共振模态。对于高速高精度应用(如芯片贴装),必须使用五次及以上多项式或S型速度规划,确保加加速度(Jerk)有界。

误区三:在笛卡尔空间盲目插值。笛卡尔空间的直线插值在靠近奇异位形时,会导致关节速度急剧增大,甚至超出电机最大转速。因此,在规划前应检查路径是否经过奇异区域,必要时在奇异点附近切换为关节空间插值。

误区四:忽略路径点密度对插值的影响。如果路径点过密,插值曲线可能出现不必要的波动(过拟合);如果过疏,则无法精确描述复杂几何形状。一般建议根据路径曲率自适应调整路径点密度,曲率大的区域增加采样点。

风险提示:在时间最优轨迹规划中,单纯追求最短时间可能导致轨迹在动力学约束边界上“贴边”运行,一旦负载变化或摩擦系数波动,极易触发伺服报警。工程上通常保留5%-10%的力矩裕量,避免轨迹过于“极限”。