Contents — find the section you need
Change parameters and verify
Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.
Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.
The experiment controls are in English.
在浏览器中跟踪一条路径
点击上方浏览器面板中的“运行”。灰色为参考路径;蓝色为后轴轨迹。圆圈表示前视距离,点表示目标点,线段表示轴距。播放、暂停、单步或拖动运行过程,以检查转向从何处开始。数值表格和可下载的 JSON 包含计算结果。
PP:保持距离固定
PP 即使在速度变化时也保持所选前视距离 Ld 不变。运行标称曲线,将其保存为 A,然后尝试“短前视距离”和“长前视距离”。比较转向、完成情况以及跟踪误差。
控制器选择器可在 PP 和 APP 之间切换。固定前视距离仅影响 PP;时间和边界仅影响 APP。将一次运行保存为 A,仅更改控制器,以保留路径、初始状态、速度指令和车辆参数不变。预设也会重置其他条件,因此请查看显示出的参数差异。
目标点几何
从最近的路径投影点出发,选择路径与以后轴为圆心、半径为 Ld 的圆的第一个前向弧长交点。对于车辆坐标系中的目标点 (xb, yb),曲率 κ = 2 yb / (xb² + yb²),转向角 δ = atan(L κ)。左转为正。
当不存在交点时,沿路径弧长从投影点向前推进 Ld,并钳制到终点。显示会区分圆交点、恢复目标和终点目标;曲率始终使用目标点距离的实际平方值。位于车辆后方的目标点,或在完成前与车辆重合的目标点,会以给定原因终止本次运行。这些恢复和终点规则是教学性的选择,并非对 Nav2 的复现。
共用模型与公平比较
状态为后轴 (x, y) [m]、逆时针偏航角 [rad] 和前向速度 v [m/s]。方程为 dx/dt=v cos(yaw),dy/dt=v sin(yaw),dyaw/dt=v tan(δ)/L。初始横向偏移在第一段路径左侧为正;航向偏移相对于该路段。路径为开放折线:直线、半径 20 m 和半径 5 m 的四分之一圆弧,或一条 S 形曲线。默认间距为 0.1 m(对 S 形曲线而言为 x 方向间距)。
时间步长为 0.05 s,最长 30 s。限制为速度 8 m/s、加速度 ±2 m/s²、转向角 ±0.6 rad、转向变化率 0.8 rad/s。初始转向角为零。每个时间间隔先施加离散的转向变化率限制,然后保持转向角不变。恒曲率运动被精确积分,包括加速到零/最大速度之前的阶段以及之后的恒速阶段。两种控制器都使用 a=2(vtarget−v)。未建模摩擦力、惯性、轮胎打滑、障碍物或测量延迟。
横向跟踪误差是相对于最近路段的带符号左法向位移。航向误差为车辆偏航角减去投影切线方向,并环绕到 [-π,π) 范围内。均方根 (RMS) 使用对平方样本的梯形时间积分除以经过时间。纵向终点超调不计入横向跟踪误差 (CTE),但计入欧几里得路径距离。转向速率的均方根包括从零开始的初始过渡阶段,描述的是离散指令。
完成的定义是:剩余投影弧长和终点距离均 ≤0.25 m,且航向与最后一段路径的偏差在 0.15 rad 以内。这是基于采样的终点经过判定,而非停车或泊车;采样点之间可能漏检经过时刻。超过 10 m 的偏移距离会以“偏离路径”终止运行;30 s 为时间上限。未完成的经过时间显示为“—”。不应仅凭误差对未完成运行和不同耗时的运行进行排名。相同的速度策略仍可能产生不同的完成时间。该合成模型并不能确立硬件安全性或高速性能。
可复现的合成示例
以下数值由相同代码的原生 Python 版本生成。缓和曲线使用初始与目标速度 2 m/s、初始横向偏移 1 m、航向偏移为零、轴距 2.5 m。
| 设置 | 状态 | 耗时 [s] | CTE RMS [m] |
|---|---|---|---|
| short | controller_failed | 1.80 | 0.72123 |
| nominal | completed | 15.70 | 0.25996 |
| long | completed | 15.50 | 0.37896 |
参考文献与相关实验室
- Coulter, Implementation of the Pure Pursuit Path Tracking Algorithm (1992):几何追踪参考文献。
- Nav2 Iron RPP 文档:速度缩放 APP 约定的参考;本实验室并非完整的 Nav2 实现。
- APP 实验室
- MPC
源代码下载为可选项。浏览器端执行无需在本地安装 Python。源代码与模型说明。
评论
请先登录。
暂无数据。