自动驾驶之百度Apollo在线车辆纵向标定算法

自动驾驶之百度Apollo在线车辆纵向标定算法

文章来源:

Baidu Apollo Auto-Calibration System - An Industry-Level Data-Driven and Learning based Vehicle Longitude Dynamic Calibrating Algorithm

image

附赠自动驾驶学习资料和量产经验:链接

车辆的纵向控制,在很多自动驾驶公司都被当做一个比较简单的事情来对待。纵向控制嘛,双闭环PID,再加上油门刹车查表就OK啦,控制框架稳定的情况下,一个成熟的控制工程师大概半天就可以把参数调好。然而,这些都是在不考虑批量化的前提下,现在你有一台车,这种方法没有问题,但是如果做Robotaxi的公司呢?上百辆车,而且是不同种类的车,总不能一台一台地去采集数据标定吧。这就对控制算法的实用性提出了比较高的要求。那再聊聊自动驾驶车辆的控制系统,一般的控制算法,纵向输出的控制量可以认为是加速度,或者力,这个控制量是虚拟的,需要转化成真实的油门,刹车!问题就出在这里,如果所有的车,可以用加速度作为接口,也就是车辆底层接收上层控制器输出的加速度指令,然后直接让车按照这个加速度去跑,那该多好,车辆控制就会变得无比简单,都不用考虑不同的车型了!但是,这是不可能滴,我们目前大部分改装车,只能接受油门刹车值,这个值和加速度的关系是不明确的,不但随着车型变而且会随着环境变化来变化的。你想想,你在开五菱宏光的时候,一脚油门踩下去的感觉,和雷克萨斯ES的感觉,那能一样吗?肯定是五菱宏光的推背感更强烈啊。所以这篇文章的主要目的就是解决这个问题,如何快速地拿到一个油门刹车和加速度之间的关系表,甚至当环境变化时候或者车辆自己有变化的时候这个表会自适应调整。

下面这幅图就是百度阿波罗的控制方案。纵向控制里面的Calibration Table就是这篇文章的核心。

image

这篇文章主要介绍了Offline model 的生成以及Online model生成的策略,算是介绍的比较细节的。offline 模型是采集司机开的数据,然后数据处理加手工筛选,最后用机器学习来学出来最终的模型。在线的模型就是以离线模型作为基础,实时收集在线的传感器数据来更新这个表。

首先介绍了几种数据处理的手段,这几种方法比较实用。

1,离线数据筛选。

  • 均值滤波

  • 剔除方向盘角度太大的数据

  • 剔除方差太大的数据。

2, 在线数据筛选

  • 剔除不满足物理规律的,比如下面的公式,如果更新后的表,在同一速度下,cmd值更大了但是查表出来的加速度也应该更大,否则这样的是不合理的。

image

  • 保证cmd没有大的跳变。因为车里纵向是一定的延时的,所有需要保证在采集的cmd不能有大的跳变。

image

离线模型生成算法:

如下,线剔除角度太大的数据,然后把对应的加速度放到[v][cmd]对应的格子里。然后再对里面不合适的加速度剔除。最终就生成了整个表格。

image

下面是在线更新的算法,也很好理解。就是在自动驾驶的时候,如果我们发现ConvergeCheck不是true的时候,就开启自动更新模式,最主要是要计算一个值: Δ� .

image

这个 Δ� 的计算公式虽然看起来非常不reasonable,但是它works 啊,那就行。但是我们得看看它的公式,看看这个东西和什么量有关系。其实他主要考虑的gain_k 这一项,也就是加速度变化,然后还有,你的指令和速度和查表点的距离,距离越远代表这个越不可信,所以对 Δ� 的影响就要人为调小,但是如果在查表点上的话,就这一项影响为0。

下面的 �������������� 项呢,它表征的是我们现在这个表和最原始表之间的变化,变化越大,就人为越不可信, Δ� 的更新就要打折扣。这样 最后 Δ� 的公式就很好理解了。

image

image

image

image

image

到这里,算法部分的介绍就结束了。实验结果,分别用来林肯mkz和一款物流小车进行测试AX1。 这里说一下,这篇论文很大的问题在于没有交代清楚实验条件,比如,你的路线,控制器参数配置,误差评估的合理性等。只有实验结果,说服力不是很强。比如对比Neural Network和其他几种方法的时候,并没有交代各种对比算法的参数,可能你的参数不合理也会导致结果差呢? 还有,你的这个加速度误差是怎么测出来的呢,这些都没交代。

不过我都比较喜欢的是对于物流小车的实验,测试了不同载荷下的offline table 和online calibration的结果的对比,这个很不错,物流小车最大的问题就在于载荷不稳定,实验结果能够表面,这套方法能够在一定程度上实现载荷的自适应。

哦还要说一句,这个物流小车的表太奇怪了,速度超过4.3m/s之后,立刻就没有扭矩了。这个感觉很不科学。但是谁知道呢,我还没有测过电机的曲线,玩过物流小车的同学可以评论一下哈哈。

image

  • 20
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值