我是靠谱客的博主 壮观日记本,最近开发中收集的这篇文章主要介绍第十四篇,Apollo学习之LQR曲率前馈一、二、曲率前馈一个问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

一、

二、曲率前馈一个问题


一、

在参考Apollo的LQR做横向控制,前段时间实现了LQR主体并编写了学习报告,详见前链接。

最近补全了针对弯道的曲率前馈,Apollo代码路径在apollo-mastermodulescontrolcontrollerlat_controller.cc,ComputeFeedForward()方法,输入为曲率输出为曲率前馈方法计算得到的补偿角度。

一般来说这里会用到预瞄,Apollo用的什么预瞄方法我还没深入研究,看其它文章有说用车速+曲率的,预瞄距离正比于车速反比于曲率,再乘上个ratio,这个方法极其合理,但可惜作者没说怎么设计ratio,因此没参考着做,感兴趣的朋友可以看看,就是下面这个链接:

pure pursuit预瞄距离的改进思路方法介绍_四海五湖百夜月的博客-CSDN博客_预瞄距离

另外一种预瞄方法,也是上边文章借鉴了做别的用的,是有关车速的一元二次函数,如下北理工硕士论文:

无人驾驶车辆体系结构与定位导航技术研究 - 道客巴巴

目前我是参考这篇论文做的,后续考虑怎么把曲率用上,因为前一篇博客分析的确实对。

关于预瞄不多说了,不是今天的主题,以后如果研究多了或许可以单独写一篇。

二、曲率前馈一个问题

Apollo代码学习(五)—横纵向控制_follow轻尘的博客-CSDN博客_纵向控制算法

这位博主提出了侧偏刚度2倍的疑问,还说要去找Apollo的开发者求证,也不知道结果如何了,不过我认为Apollo的代码写的没有问题。

  • 首先一点,在Apollo设计LQR/MPC车辆动力学模型的时候,就已然应该关注到2倍侧偏刚度的问题,单车模型合并了左右前后轮,所以相比书本上的公式,侧偏刚度×了2,这是没有问题的;
  • 那么,有了第一点的铺垫,这个2倍的疑问就迎刃而解了。因为Apollo的前馈补偿不是独立理论甚至凭空捏造的,而是根据上游的状态方程、ABK矩阵等推导过来的,本属同源,前后是有依赖关系的,不能脱开Apollo架构去单独对比书本。

下面两个链接有曲率前馈的完整推导,希望能解了这个疑惑,谢谢各位博主!向大神致敬。

百度Apollo 2.0 车辆控制算法之LQR控制算法解读_jm-csu的博客-CSDN博客_lqr控制算法

https://www.csdn.net/tags/Ntzacg3sMTY2ODEtYmxvZwO0O0OO0O0O.html

最后

以上就是壮观日记本为你收集整理的第十四篇,Apollo学习之LQR曲率前馈一、二、曲率前馈一个问题的全部内容,希望文章能够帮你解决第十四篇,Apollo学习之LQR曲率前馈一、二、曲率前馈一个问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部