路径跟踪之Stanley控制算法

Stanley控制算法是一种基于横向误差(cross-track error)的跟踪算法,对该算法的相关解释可以参考下图。

上图中相关变量的含义如下:

1)为横向误差,是车辆前轮到给定轨迹最近点的距离;

2)为给定轨迹上点的切线方向与车身航向之间的夹角;

3)为前轮线速度方向与车身航向之间的夹角。

如果不考虑横向误差,要保持车辆沿给定轨迹运动,则前轮转角需要时刻保持与给定轨迹上点的切线方向一致,即前轮转角应为

如果不考虑航向误差,要保持车辆沿给定轨迹运动,则前轮转角需要消除横向误差,前轮转角应为

因而,如果同时考虑横向误差和航向误差,前轮转角应为:

由上图不难得出:

时,可以保证横向误差收敛,此时有:

很小时,上式近似为:

所以,前轮转角为:

如上图所示,在计算前轮转角的时候,可以先计算BC'的方向角,然后直接减去车身航向的方向角即可。在计算BC'方向角的时候,需要知道,根据上图,有:

所以,

也就是说,前视距离和前轮线速度成正比

利用Matlab可以得到该算法跟踪一个圆形轨迹的仿真效果如下图所示。

上述仿真时,没有对前轮转角作限制,此时该算法可以较好地跟踪给定轨迹。但是实际车辆的前轮转角有一定的范围限制,代码中增加对前轮转角的限制后,车辆出现了“掉头”的情况。仿真结果如下图所示。

  • 1
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
纯追踪算法和Stanley算法是两种常用的路径跟踪算法。 纯追踪算法是一种基本的路径跟踪算法,它通过计算车辆与路径之间的横向误差和航向误差来控制车辆的转向。横向误差是车辆当前位置与路径的横向距离,航向误差是车辆当前航向角与路径的期望航向角之间的差异。根据这些误差,纯追踪算法可以计算出车辆的转向控制量,从而使车辆沿着路径行驶。 Stanley算法是一种改进的路径跟踪算法,它在纯追踪算法的基础上引入了前轮反馈控制。Stanley算法通过计算车辆与路径之间的横向误差和航向误差来控制车辆的转向,但与纯追踪算法不同的是,Stanley算法还考虑了车辆前轮中心到最近路径点的距离。根据这些误差和距离,Stanley算法可以计算出车辆的转向控制量,从而更精确地控制车辆沿着路径行驶。 总结起来,纯追踪算法和Stanley算法都是用于路径跟踪的算法,它们通过计算车辆与路径之间的横向误差和航向误差来控制车辆的转向。而Stanley算法在纯追踪算法的基础上引入了前轮反馈控制,考虑了车辆前轮中心到最近路径点的距离,从而更精确地控制车辆行驶。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *3* [stanley 轨迹跟踪算法](https://blog.csdn.net/m0_48707860/article/details/128484886)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [轨迹跟踪算法——Stanley法](https://blog.csdn.net/m0_50888394/article/details/115654808)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值