概述
目录
一、
二、曲率前馈一个问题
一、
在参考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曲率前馈一、二、曲率前馈一个问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复