3. 路径与轨迹的区别:路径定义(几何描述)、轨迹定义(时间参数化)、为什么速度约束是关键

好,咱们直接切入正题。

做路径跟踪这么多年,我见过太多新手把「路径」和「轨迹」混为一谈。说实话,我刚入行那会儿也犯过这个错。记得有一次在调试AGV时,明明路径规划得好好的,车子一跑起来就各种抖,最后发现——我把路径当轨迹用了。

这两个概念,看似差不多,实则天差地别。

3.1 路径:纯粹的几何描述

路径是什么?说白了,就是一条线。

它只关心「从A点到B点怎么走」,不关心「什么时候到」、「走多快」。你可以把它想象成地图上画的一条路线——它告诉你转弯、直行,但不会告诉你时速多少。

路径的数学定义:

路径是一个几何曲线,通常用参数方程表示:

P(s) = [x(s), y(s), θ(s)]ᵀ,  s ∈ [0, L]

其中 s 是弧长参数,L 是路径总长。

这里有个关键点:路径只包含空间信息。它描述的是机器人在每个位置应该处于什么姿态,但完全不涉及时间。

我在项目中遇到过一种典型情况:用纯路径做控制,结果机器人过弯时速度太快,直接冲出赛道。为什么?因为路径本身没有速度信息,控制器只能按固定速度跑,遇到急弯就抓瞎。

3.2 轨迹:给路径加上时间轴

轨迹就不一样了。它是在路径的基础上,加上了「时间」这个维度。

你想想看,光知道怎么走还不够,你还得知道「什么时候走到哪里」、「每个时刻该多快」。这就是轨迹干的事。

轨迹的数学定义:

轨迹是时间参数化的路径:

T(t) = [x(t), y(t), θ(t), v(t), ω(t)]ᵀ,  t ∈ [0, T]

其中 t 是时间,v(t) 是线速度,ω(t) 是角速度。

嗯,这里要注意:轨迹不仅告诉你位置,还告诉你每个时刻的速度和加速度。这才是真正能用来控制的东西。

维度 路径 轨迹
参数 弧长 s 时间 t
包含信息 位置、姿态 位置、姿态、速度、加速度
是否可执行 否(缺少速度信息) 是(可直接下发到控制器)
典型应用 路径规划、几何分析 运动控制、实时跟踪

3.3 为什么速度约束是关键?

好,问题来了:既然轨迹比路径更「高级」,那直接都用轨迹不就行了?

事情没那么简单。

实际系统中,速度不是你想设多少就设多少的。每个机器人都有它的物理极限:

  • 电机最大转速:决定了最高线速度
  • 转向机构限制:决定了最大角速度
  • 加速度限制:急加速会打滑,急减速会过冲
  • 曲率约束:弯道太急,速度必须降下来

我曾经调试过一个差速驱动机器人,路径规划出来一条漂亮的S弯,结果一跑就翻车。查了半天,发现是速度约束没处理好——弯道曲率最大处,速度还是按直道跑的,离心力直接把轮子抬起来了。

避坑指南:

我曾经在项目里吃过一次大亏:只做了路径规划,没做速度约束,结果机器人在急弯处直接侧滑撞墙。从那以后,我养成了一个习惯——路径规划完,第一件事就是做速度约束分析。

速度约束的核心思想其实很简单:在路径的每个点,根据曲率、机器人动力学限制,计算出允许的最大速度。然后把这个速度曲线「贴」到路径上,就得到了可执行的轨迹。

我的个人习惯:

做速度约束时,我喜欢先画一个「曲率-弧长」图。曲率大的地方,速度必须降;曲率小的地方,可以提速。这个图一看就知道哪里是瓶颈。

3.4 从路径到轨迹:速度约束的数学表达

咱们来点干货。速度约束可以写成这样:

v_max(s) = min( v_motor_max, sqrt(a_max / κ(s)) )

其中:

  • v_motor_max:电机能提供的最大速度
  • a_max:允许的最大向心加速度(防止侧滑)
  • κ(s):路径在弧长 s 处的曲率

你看,曲率 κ(s) 越大,允许的速度就越低。这就是为什么急弯要减速——不是经验,是数学。

实际工程中,我们还会考虑更多约束:

  1. 加速度约束:v(t) 的变化率不能超过电机响应能力
  2. 加加速度约束:加速度的变化率也要平滑,否则会抖
  3. 地形约束:上坡要加速?下坡要减速?
  4. 安全距离约束:前方有障碍物,必须提前减速

我建议你在做速度约束时,先列一个约束清单,然后按优先级排序。比如:安全约束 > 物理约束 > 舒适性约束。这样出了问题,排查起来也快。

3.5 本章知识体系

下面这张图,是我自己总结的路径与轨迹的核心逻辑。你看一遍,应该就能理清思路了。

路径与轨迹:核心知识体系 路径(Path) 几何描述 • 参数:弧长 s • 信息:位置 (x,y) + 姿态 θ • 特点:无时间信息 • 用途:规划、几何分析 + 速度约束 轨迹(Trajectory) 时间参数化 • 参数:时间 t • 信息:位置 + 速度 v + 角速度 ω • 特点:包含时间信息 • 用途:运动控制、实时跟踪 速度约束:连接路径与轨迹的桥梁 1. 曲率约束:v_max ∝ 1/√κ(s) 2. 电机约束:v_max ≤ v_motor_max 3. 加速度约束:|a| ≤ a_max 4. 安全约束:避障、限速区域 输入 输出

这张图你看懂了吗?路径是「骨架」,速度约束是「血肉」,两者结合才是一个完整的轨迹。没有速度约束的路径,就像没有交通规则的高速公路——理论上能跑,实际上会出大事。

好了,这一章就到这里。记住一句话:路径告诉你往哪走,轨迹告诉你什么时候走到、走多快。速度约束,就是连接这两者的关键纽带。