控制算法:PP(纯跟踪)算法

Pure Pursuit 是一种基于几何模型解耦式横向路径跟踪算法,只能使用于路径跟踪任务。

轨迹跟踪场景对比引入:

  • PID的做法: 盯着前轮和白线的距离(横向误差)。偏左了?向右扭车把。

    • Pure Pursuit的做法: 不看前轮和白线的距离(横向误差)! pp的解决办法是:盯住白线上的N厘米(前瞻距离)处的一个点。现在的任务只有一个:把车把打到一个固定的角度,画出一道圆弧,让车正好能压到那个点。N设置的越大,那车轮就越无法拟合轨迹, 遇到急弯时,因为你看得太远,车会直接切过弯道内侧,导致较大的跟踪误差。。但是你转动车把的频率低,很安全,不会强烈抖动。N设置的越小,那车轮就越拟合轨迹。但是你转动车把的频率高,很不安全,会强烈抖动。

这就是"纯追踪"------像猎狗追兔子一样,总是盯着目标轨迹上前方的一点追。如果用一句话概括:Pure Pursuit 是几何学的胜利。


算法原理:

输入(以骑单车为例):

  1. 车辆当前位置 (x, y) 和 与转角α,车子的轴距L

  2. 目标路径(一串路点)。

  3. 前瞻距离Ld

输出: 前轮转角。注意:Pure Pursuit 通常只负责横向控制(方向盘)。它不直接输出油门/速度(纵向控制),速度通常由另外的 PID 或逻辑控制。

从输入到输出之间的函数:

从输入到输出之间的函数推导:(感兴趣可以看,也可以直接跳过记住结论):


pp调参经验:

Ld​ 设置 较小 (Small) 较大 (Large)
直觉 盯着前轮看(看脚下) 盯着远方地平线看
优点 咬合力强:紧贴路径,跟踪误差极小。 稳定性好:行驶顺滑,方向盘不会乱抖。
缺点 震荡 (Oscillation):稍微偏一点就猛打方向,容易"画龙"(S形走位)。 切弯 (Cut Corner):遇弯道时不减速直接抄近道,导致稳态误差大。
适用场景 低速精细操作(如倒车入库)。 高速巡航(如高速公路)。

动态预瞄(Dynamic Look-ahead)

Ld何必是一个固定的值?

相关推荐
皆圥忈15 小时前
Linux 进程管理从入门到实战(一)
linux
雪度娃娃15 小时前
Asio——socket的创建和连接
linux·运维·服务器·c++·网络协议
阿聪谈架构15 小时前
第11章:结构化输出与数据提取 —— 让 AI 直接返回你想要的数据格式
人工智能·后端
OpenBayes贝式计算15 小时前
外语、方言、少数民族语言全覆盖:Hy-MT1.5 支持 1056 个翻译方向;MIT 联合发布 MathNet:涵盖 2.7 万道奥数真题的多模态数学推理基准
人工智能
故事和你9115 小时前
洛谷-【图论2-2】最短路3
开发语言·数据结构·c++·算法·动态规划·图论
sponge'15 小时前
sam3的代码、问题备注
机器学习
yong999015 小时前
基于VC++的图像匹配金字塔算法
c++·算法·计算机视觉
OpenCSG15 小时前
CSGHub v2.1.0开源版本更新
人工智能
沪漂阿龙15 小时前
Dify 面试题详解:开源 LLM 应用开发平台、RAG 知识库、Workflow 工作流、Agent 智能体一文讲透
人工智能·架构
移动云开发者联盟15 小时前
存智赋能 共筑AI存储新生态,移动云聚力技术创新夯实AI数据基石
大数据·人工智能