控制算法: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何必是一个固定的值?

相关推荐
智者知已应修善业8 小时前
【编写函数求表达式的值】2024-4-3
c语言·c++·经验分享·笔记·算法
沫儿笙8 小时前
ABB焊接机器人混合气体节气方案
人工智能·机器人
余俊晖8 小时前
多页文档理解强化学习设计思路:DocR1奖励函数设计与数据构建思路
人工智能·语言模型·自然语言处理
Yeats_Liao8 小时前
MindSpore开发之路(二十六):系列总结与学习路径展望
人工智能·深度学习·学习·机器学习
sinat_286945198 小时前
opencode
人工智能·算法·chatgpt
gorgeous(๑>؂<๑)8 小时前
【中科院-张启超组-AAAI26】WorldRFT: 用于自动驾驶的带强化微调的潜在世界模型规划
人工智能·机器学习·自动驾驶
HABuo8 小时前
【Linux进程(四)】进程切换&环境变量深入剖析
linux·运维·服务器·c语言·c++·ubuntu·centos
min1811234568 小时前
PC端零基础跨职能流程图制作教程
大数据·人工智能·信息可视化·架构·流程图
工口发动机8 小时前
ABC440DEF简要题解
c++·算法