“ 经常有朋友问如何学习仿真测试,于是想着把自己的一些经验和理解分享出来,希望能有所帮助。不过视野和技术有限,所说不一定对,供大家批评和参考。这是第5篇,自动驾驶的硬件-控制器”
控制器是自动驾驶算法的运行平台。算法开发的早期可以选择工控机(IPC,Industrial Personal Computer)作为控制器,快速对算法进行实现和测试。但是由于工控机体积大、功耗高、稳定性差等缺点,并不能用于量产。量产时一般采用嵌入式域控制器,或者称为计算平台。两种控制器的外观如下图所示:
计算平台主要包含计算处理单元、接口通信单元和存储管理单元等部分,其通过各种通信接口从传感器接收数据,运行包含感知、识别、规划和控制等功能的自动驾驶算法,输出控制指令给执行器,并对相关数据和程序进行存储。
计算处理单元是计算平台的核心单元,一般采用集成多种架构芯片的异构方案,以满足不同的计算需求,主要由计算单元、控制单元和AI单元三部分组成。
计算单元主要由多核CPU构成,具有主频高、计算能力强等特点,安装系统软件,实现对软硬件资源的管理和任务调度,可用于运行包括行为决策、路径规划等模块在内的大部分算法。
控制单元主要为传统车辆微控制器(MCU,Micro Control Unit),具有功耗低、稳定可靠等特点,可用于运行车辆控制相关功能。
AI单元用于运行传感器数据处理、目标识别融合等人工智能相关算法,其可选架构有GPU、FPGA、ASIC和DSP等多种类型,特点如下表所示: