ADAS/AD控制器模块开发06 - 高精地图与自动驾驶

本文介绍下AD自动驾驶技术的“神器”- 高精地图,也称开了挂的“地图传感器”。

 

一、有HD-Map之前的ADAS是如何实现车辆控制的?

在高精地图加持之前的ADAS系统,功能一般是由感知+数据处理+系统状态机+PID控制器(或LQR控制器)组成的。拿智能前视摄像头模块实现LKA功能为例,按照dataflow来梳理:

  1. 通过镜头和COMS图像传感器来获取单帧图片;
  2. 按照感兴趣区域(ROI,region-of-interest)裁剪图片;
  3. 图片经过灰度化、二值化,获得车道线的Lane_marklet(车道线标记小段,如图1);
  4. 通过霍夫变换,将marklet拟合成Lane_segments(车道线段,如图2);
  5. 将Lane_segments的位置从图片坐标系转换为世界坐标系;
  6. 对Lane_segments进行合并,合并不了的删除掉;
  7. 从整车CAN上抓取vehicle speed、yawrate等信号,用于计算三阶车道线模型,获得车道线的Lane_geometry。所谓的三阶车道线模型,即Lateral Offset = a0 + a1*x + a2*x2+ a3*x3 ; 其中,x - longitudinal range x X向参考距离;该距离x=V(车速) * Tpreview(sec) , T 代表0.5-1秒之间的一个标定值。a0 - 当前Y向位置; a1 - Y向速度; a2 - 曲率;a3 - 曲率变化率。
  8. 通过卡尔曼滤波器,跟踪并更新车道线的Lane_geometry(车道几何线,用于抽象车道线,如图3)的几何形状;
  9. 通过霍夫变换的信心值和车道线跟踪器的信心值,获得车道线的信心值;
  10. 将车道线信息和来自车辆CAN上的其他信息(车速、YawRate、steer angle等)传给LKA功能;
  11. LKA对各种输入信号进行数据处理,例如滤波、判断等;
  12. 计算可以直接被LKA状态机使用的判断信号,如TTLC(time to lane crossing)、Lane position、车轮外缘到车道线的距离、Lane change、Road status(路面曲率等)、方向盘转角的inhibit信号、油门踏板的inhibit信号、刹车踏板的inhibit信号等等;
  13. LKA主状态机进行LKA状态控制,状态包括:fault、off、standby、enabled、intervention left、intervention right、warning left、warning right等状态,如图6;
  14. 利用前馈PID控制器,通过引入主状态机的状态信号,以及横向速度、距离车道线横向距离、heading angle、横向加速度、路面曲率等参数,建立基于车辆运动状态和路面状态的前馈PID控制模型,计算转向扭矩。

图1 Lane Marklet 车道线标记小段,黄色

 

图2 Lane Segments 车道线段,红色

 

图3 Lane Geometry 车道几何线,绿色

 

图4 车道线检测算法框图

 

图5 LKA功能架构

 

图6 LKA主状态机

 

通过上述描述,可以悉知,在ADAS功能中,根本没有planning模块,车辆控制完全没先验轨迹(如图7的绿色轨迹段)的存在,控制全靠计算车辆与两个车道线之间的动态关系,利用PID控制器直接生成控制扭矩,来控制车辆的状态。而AD领域的车辆控制,是有先验轨迹的存在的,所有的精华都在先验轨迹的生成,只要计算出先验轨迹,车辆的真正控制非常简单,例如按照先验轨迹分解出车辆的速度-转角控制量,然后速度再分解成加速度、减速度。加速度对应油门,减速度对应刹车,转角对应方向盘转角,车辆就可以按照先验轨迹作为pilot,最大程度的拟合先验轨迹行驶。这也就是所谓的ROS机器人技术路线(ROS,Robot Operating System 机器人操作系统)。这条“先验轨迹”,其实就是像工厂里的物料小车一样,只不过工厂的物料小车是按照路面上事先贴好的磁性轨迹行驶的(如图7),而智能驾驶车的先验轨迹是存在于planing算法模块中的。

  • 7
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值