第十四篇,Apollo学习之LQR曲率前馈

目录

一、

二、曲率前馈一个问题


一、

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

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

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

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

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

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

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

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

二、曲率前馈一个问题

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

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

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

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

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

https://www.youkuaiyun.com/tags/Ntzacg3sMTY2ODEtYmxvZwO0O0OO0O0O.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值