自动驾驶学习笔记(二十四)——车辆控制开发

#Apollo开发者#

学习课程的传送门如下,当您也准备学习自动驾驶时,可以和我一同前往:

自动驾驶新人之旅》免费课程---> 传送门

Apollo开放平台9.0专项技术公开课》免费报名--->传送门

文章目录

前言

控制算法

控制标定

控制协议

控制代码

控制调试

控制评价

总结


前言

见《自动驾驶学习笔记(十九)------Planning模块

见《自动驾驶学习笔记(二十)------Planning算法

见《自动驾驶学习笔记(二十一)------自动泊车系统

见《自动驾驶学习笔记(二十二)------自动泊车算法

见《自动驾驶学习笔记(二十三)------车辆控制模型

自动驾驶中的控制模块,通过操作车上的油门、刹车和方向盘,让车辆达到目标的速度、航向和位置。主要包括横纵向控制、动力学标定表和CAN总线协议等若干部分,示例如下:

控制算法

横纵向控制的总体流程,示例如下:

横纵向控制常用的算法有如下三种,示例如下:

上述算法的具体介绍参见见《自动驾驶学习笔记(九)------车辆控制

控制标定

如果被控车辆的底盘含有ADAS控制器(统管油门和刹车踏板),它只要获得一个加速度指令即可。如果车上没有ADAS控制器,就要把加速度进一步换算成油门和制动踏板的行程,该计算过程需要用到一个动力学标定表。

动力学标定表一般通过车辆云标定来获取,是通过采集车辆底盘油门踏板量刹车踏板量、车辆速度、加速度作为车辆纵向动力模型的输入,通过机器学习的方式,生成相应车辆的踏板标定表生成的标定表数据量大,精度高,能提高车辆的控制精度。开发好的油门标定表和制定标定表,示例如下:
油门标定表
制动标定表

上述动力学标定表通过一个查表函数的调用:

Throttle_cmd or Brake_cmd = f(v x ,ax );

控制协议

CANBus是车辆底盘和自动驾驶软件之间的桥梁,主要作用是反馈车当前的状态(航向,角度,速度等信息)至Apollo的上层软件模块,并且发送控制命令到车线控底盘。Apollo中集成了多款车的CAN总线协议,示例如下:

控制代码

Apollo中控制模块代码的执行流程,示例如下:

控制调试

控制模块的开发高度依赖于车辆底盘的具体参数,DreamView的SimContrl功能中暂时还没有集成,所以只能基于实车进行调试验证。但是Apollo提供了远程实时访问的功能,同时也提供了播包的功能,都可以通过DreamView的PnC Monitor功能进行信号分析,示例如下:

控制评价

控制模块的开发的好与不好,可以通过这些指标进行评价:精确性(Steady State Error)、稳定性(Stability, Overshoot)、快速性(Rise time, Peak time)、鲁棒性(Robust)、成本,能耗,时延等等。

总结

以上就是本人在学习自动驾驶时,对所学课程的一些梳理和总结。后续还会分享另更多自动驾驶相关知识,欢迎评论区留言、点赞、收藏和关注,这些鼓励和支持都将成文本人持续分享的动力。

另外,如果有同在小伙伴,也正在学习或打算学习自动驾驶时,可以和我一同抱团学习,交流技术。


版权声明,原创文章,转载和引用请注明出处和链接,侵权必究!

文中部分图片来源自网络,若有侵权,联系立删。

相关推荐
JoannaJuanCV1 天前
自动驾驶—CARLA 仿真(1)安装与demo测试
人工智能·机器学习·自动驾驶·carla
audyxiao0011 天前
智能交通顶刊TITS论文分享|如何让自动驾驶模型感知驾驶风格和自动理解周围车辆意图?请看此文
人工智能·机器学习·自动驾驶·tits·styleformer
Luminbox紫创测控3 天前
汽车自动驾驶的太阳光模拟应用研究
人工智能·自动驾驶·汽车
ARM+FPGA+AI工业主板定制专家4 天前
基于JETSON ORIN+FPGA+GMSL+AI的高带宽低延迟机器视觉方案
网络·人工智能·目标检测·计算机视觉·fpga开发·自动驾驶
m0_650108244 天前
CenterPoint:基于中心点的 3D 目标检测与跟踪框架
论文阅读·自动驾驶·centerpoint·3d目标检测与跟踪·激光雷达点云·中心点3d目标表示
m0_650108244 天前
PointPillars:激光雷达点云 3D 目标检测的高效编码器方案
论文阅读·自动驾驶·机器人导航·激光雷达点云检测·激光雷达单模态bev·bev目标检测
不断学习加努力4 天前
几种自动驾驶框架简要梳理
人工智能·机器学习·自动驾驶
康谋自动驾驶5 天前
赋能智慧隧道施工:工程车辆多模态数据采集系统
自动驾驶·汽车·数据采集·隧道施工
像风没有归宿a5 天前
自动驾驶汽车黑客攻击:如何保障车联网安全?
安全·自动驾驶·汽车
小猫挖掘机(绝版)5 天前
在Ubuntu 20.04 部署DiffPhysDrone并在Airsim仿真完整流程
linux·ubuntu·自动驾驶·无人机·端到端