智能车辆操作系统
智能车辆操作系统是智能车辆系统的重要组成部分。现代汽车软件组件通常首
先由不同的供应商开发,然后在有限的资源下由制造商进行集成
[42]
。智能车辆操作
系统需要采用模块化和分层化设计思想来兼容传感器、分布式通信和自动驾驶通用
框架等模块,实现环境感知、运动规划、任务决策、车辆控制等自动驾驶功能。
智能车辆操作系统主要包含异构分布系统的多内核设计及优化、
Hypervisor
虚
拟化技术、
POSIX API
、分布式通信机制、管理平面和数据平面等,如图
2.2
所示。
智能车辆域控制器是基于异构芯片架构的硬件方案。智能车辆操作系统需要采
用安全性高、实时性强的多内核设计思想。智能车辆操作系统需要根据异构芯片架
构的具体功能单元加载不同安全等级的内核系统,同时满足差异化安全要求和性能
要求。目前应用在汽车或嵌入式系统中的
RTOS
内核类型如表
2.3
所示。
Hypervisor
虚拟化技术有效的实现资源整合和隔离,基于异构分布硬件平台上,
应用程序分别依赖不同的内核环境和驱动,但在物理层面共享
CPU
等
[43,44]
。
Hypervisor
是实现跨平台应用、提高硬件利用率的重要途径,通过加强时间隔离,
使具有不同临界级别的实时系统能够在单一硬件平台上得到整合
[45]
。
智能车辆操作系统是基于实时嵌入式软件单元架构,在不同内核系统采用
POSIX API
与应用软件、功能软件交互,以适应自动驾驶所需要的高性能计算和高
带宽通信等需求。
实时系统数据分发服务
(DDS)
为开发人员提供了高度可配置的中间件,通过广
泛的属性来控制应用程序的端到端服务质量
(QoS)
[46]
。基于异构分布硬件平台的智能
车辆操作系统需要建立实时、高效、通用性强的分布式实时通信机制。
ROS
是基于
Linux
内核的中间件,用于分布式系统数据分发服务,通过“节点”间数据传递服
务,如图
2.3
所示。“节点”间数据的实时性、持续性和可靠性都能满足现阶段的
技术研究需求,但是,
ROS
依托于
Linux
系统,其效率、安全等方面都存在着缺陷,
无法满足车规级和嵌入式系统要求。
管理平面和数据平面是智能车辆操作系统中重要的功能模块。管理平面主要实
现日志管理、系统配置、状态监控等功能。数据平面主要实现数据收集和处理处理
功能。
综上所述,
Linux
系统具有源代码公开,资源占用率较低、性能稳定等特点,
可长时间连续运行。
ROS
中间件提供了操作系统应有的服务,包括硬件抽象,底层
设备控制,常用函数的实现,进程间消息传递,以及包管理,提供用于获取、编译、
编写、和跨计算机运行代码所需的工具和库函数。本文设计的智能车辆域控制器将
以
Linux
系统和
ROS
系统为基础,构建分层化、模块化的智能车辆域控制器软件架
构。
2.1.3
智能车辆系统架构
智能车辆系统需要感知行驶的周边环境和车辆状态,通过决策和规划实现对车
辆的横纵向控制,因此,智能车辆系统架构设计是至关重要的部分。经过长期的研
究和发展,智能车辆架构的设计基本采用多传感器融合的方案,其中
Lidar
、
Camera
和
Radar
是较为常见的融合架构。接下来将对典型的架构进行分析。
百度的智能车
Apollo
的系统架构主要由移动端和云端两个部分组成。通过通信
模块实现数据交互,如图
2.4
所示。移动端采用了分层化和模块化设计思想,包括
车辆平台、硬件平台和软件平台三个部分组成。
硬件平台主要由激光雷达、
GPS + IMU
、摄像头、毫米波雷达、超声波雷达、
人机交互硬件和黑匣子等硬件组件组成,构成了感知子系统、控制子系统、定位子
系统、人机交互子系统和底盘控制接口等。软件平台由实时操作系统、运行环境和
自动驾驶应用软件构成,分别实现感知模块识别、高精度定位、地图搜索引擎、规
划控制和人机交互等功能。云端服务平台通过车联网技术为智能车辆提供高精度地
图、数据平台、安全、
OTA
、
DuerOS
等服务。系统中的各个模块基于
CarOS
的
ROS
节点单独运行,模块节点间通过发布和订阅特定
topic
实现分布式通信,模块间的交
互如图
2.5
所示。
基于
Autoware
系统架构的智能车辆系统主要包括定位模块,检测模块,预测和
规划模块和控制模块组成,如图
2.6
所示。定位模块使用高精度地图和
SLAM
算法
来实现,辅助以
GPS + IMU
传感器。检测模块使用摄像头和激光雷达,结合传感器
融合算法和深度学习网络进行目标检测。预测模块使用定位和检测的结果来预测跟
踪目标。规划模块主要是基于感知的输出结果,进行全局路径规划和局部路径规划。
控制模块向车辆输出的是速度和角速度的扭曲量作用于智能车辆线控平台。系统通
过以上四个模块实现感知层、预测及规划层、控制层的功能。
综合上述的智能车辆系统架构的分析结果,智能车辆系统架构主要由多传感器
数据融合的环境感知、高精度地图、高精度定位、规划与决策和车辆控制等部分构
成。环境感知用于检测识别障碍物和行驶道路环境;高精度定位用于获取车辆的实
时姿态;根据由障碍物信息以及道路信息构建出的局部地图和车辆实时姿态,规划
与决策子系统进行路径规划和决策,最终由控制系统执行控制行为,从而完成自动
驾驶任务。
信迈提供自动驾驶控制器软硬一体方案。