Amiya · 2021年03月24日

车载操作系统(一):软件定义汽车

NVIDIA创始人兼CEO黄仁勋

过去买车,提车那天就是这辆车的“巅峰”。而软件定义的汽车恰恰相反,提车那天将会是这辆汽车的“低谷”,但这之后将会妙不可言。

为什么是软件定义汽车?

从商业的角度,一个产品归根结底是一系列功能的集合,来满足用户的各种需求,而用户最终也是为产品功能买单。当产品功能不能满足用户需求,企业就要被迫转型。这是基本的逻辑。

现在整车厂迈开步子做转型,主要是因为车辆目前的功能以及未来的产品差异化已经需要由车载软件实现。如果在这个历史的岔路口整车厂还不努力补足自己的软件能力,一旦放任竞争对手做出差异化,自己的产品就会毫无还手之力;如果真的在产品技术上被甩开代际差异,那就真只能卖卖品牌历史吃老本了。

因此,车载软件现在就承担了汽车产品差异化的重任**,尤其是未来的车载操作系统**。参照手机、电脑的发展,操作系统可能会极大地提升汽车行业的产业集中度。众所周知,作为实体经济,汽车行业的品牌集中度相比于互联网实际上并不高,因此,“提高市场集中度”就意味着必然有玩家会被淘汰出局。由于这是一个新的领域,一切还未成定数,根据操作系统在手机和电脑领域展现出的指数分布法则,要么是一统江湖,要么是被一统江湖,任何有雄心的一线品牌必然要争夺领导地位;对于二线品牌,这时更是生死存亡之际,必须争着让别人垫底。这种行业大势造成了品牌们必须打出“软件定义汽车”的口号。

车载OS:承上启下,引领智能汽车发展

操作系统(Operating System,OS)是指控制和管理整个计算系统的硬件和软件资源,并合理地组织调度计算机的工作和资源,以提供给用户和其他软件方便的接口和环境的程序集合。智能设备发展到一定程度后一般都需要配备专门的OS,而每一款成功的OS产品,都能让人联想到一家伟大的公司。比如Windows,成就了微软在PC时代的霸主地位,Android和iOS,则分别使Google和苹果在智能手机时代大放异彩。在软件定义汽车的大趋势下,车载OS是实现传统汽车向智能汽车升级的关键。

车载OS是由传统汽车电子基础软件不断演变而来,传统汽车电子产品可分为两类:

  1. 汽车电子控制装置:通过直接向执行机构(如电子阀门、继电器开关、执行马达等)发送指令,以控制车辆关键部件(如发动机、变速箱、动力电池等)的协同工作,一般统称为ECU(Electronic Control Unit,电子控制单元)。常见的ECU包括发动机电控系统EMS(Engine Management System)、自动变速箱控制单元TCU(Telematics Control Unit)、车身电子稳定系统ESP(Electronic Stability Program)、电池管理系统BMS(Battery Management System)等。该类系统涉及安全、行驶性能
  2. 车载电子设备:在汽车环境下能够独立使用的电子装置,和汽车本身的性能并无直接关系,常见的包括行车电脑、导航系统、汽车音响、电视娱乐系统、车载通信系统、上网设备等。这类系统常与用户体验相关,不直接参与汽车行驶的控制决策,对车辆行驶性能和安全影响较小。

基于此,车载操作系统一般分为车控操作系统和智能座舱操作系统两类:

  1. 车控操作系统主要实现车辆底盘控制、动力系统和自动驾驶;
  2. 智能座舱操作系统主要为车载信息娱乐服务以及车内人机交互提供控制平台,是汽车实现座舱智能化与多源信息融合的运行环境。

车载OS在车载智能计算平台中的位置

车载智能计算平台自下而上可大致划分为硬件平台、系统软件(硬件抽象层+OS内核+中间件)、功能软件(库组件+中间件)和应用算法软件等四个部分。

WeChat Image_20210324144411.jpg

  • 硬件平台:基于异构分布式硬件架构,包括AI单元、计算控制单元,应支持芯片选型灵活、可配置扩展,算力可叠加等优点。
  • 系统软件:针对汽车场景定制的复杂大规模嵌入式系统运行环境,主要包含三层:
  • 硬件抽象层:包括BSP(Board Support Package,板卡支持包)、Hypervisor(硬件虚拟化技术,提供虚拟平台支持多操作系统)等。BSP包括了Bootloader(以基础支持代码来加载操作系统的引导程序)、HAL(Hardware Abstract Layer,硬件抽象层)代码、驱动程序、配置文档等,是内核与硬件之间的接口层,目的是为操作系统提供虚拟硬件平台,使其具有硬件无关性,可以在多平台上移植。
  • 操作系统内核(Kernel):即狭义操作系统,如OSEKOS、VxWorks、RT-Linux等。内核提供操作系统最基本的功能,负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的稳定性和性能。
  • 中间件:处于应用和操作系统之间的软件,实现异构网络环境下软件互联和互操作等共性问题,提供标准接口、协议,具有较高的移植性,如POSIX/ARA(自适应AUTOSAR运行时环境,即中间件API接口)和DDS(Data Distribution Service,分布式实时数据分发服务)等。
  • 功能软件:包含自动驾驶的核心共性功能模块,如相关算法的编程框架(如TensorFlow、Caffe、PaddlePaddle等)。核心共性功能模块包括自动驾驶通用框架、网联、云控等,结合系统软件,共同构成完整的自动驾驶操作系统,支撑自动驾驶技术实现。
  • 应用算法软件:实现具体的自动驾驶功能、HMI(Human Machine Interface,人机交互界面)交互等算法软件。

狭义的操作系统仅包含系统内核Kernel部分,是系统软件其中的一部分,而广义的操作系统则包含系统软件和功能软件。



典型的车载OS类型

根据对底层操作系统改造程度的不同,主要分为:

  1. 基础型操作系统:打造全新底层操作系统和所有系统组件,如系统内核、底层驱动等,有的还包括虚拟机,如QNX、Linux(含Android)、WinCE等。因打造全新操作系统需要花费太大的人力、物力,目前基本没有企业会全新开发底层操作系统。
  2. 定制型操作系统:在基础型操作系统之上进行深度定制化开发,如修改内核、硬件驱动、运行时环境、应用程序框架等。典型代表如大众vw.OS、特斯拉Version、Google车载Android、华为鸿蒙OS、AliOS等,它们属于自主研发的独立操作系统。
  3. ROM型汽车操作系统:基于Linux或Android等基础型操作系统进行有限的定制化开发,不涉及系统内核更改,一般只修改更新操作系统自带的应用程序等。大部分的主机厂一般都选择开发ROM型操作系统,国外主机厂多选用Linux作为底层操作系统,由于国内Android应用生态更好,国内自主品牌和造车新势力大多基于Android定制汽车操作系统,典型代表如比亚迪DiLink、奇瑞GKUI、蔚来NIOOS、小鹏XmartOS等。

需要注意的是,超级汽车APP(又称车机互联或手机映射系统),不是完整意义的汽车OS,只是简单地把手机屏幕内容映射到车载中控,通过整合地图、音乐、社交等功能来满足车主需求的APP,如苹果CarPlay、谷歌AndroidAuto、百度CarLife、华为HiCar等。由于汽车座舱为保证系统的稳定性、高安全性,不得不放弃性能,导致手机不论是芯片还是操作系统处理能力都优于汽车座舱,因此,借助手机的丰富功能映射到汽车中控,以满足车主对娱乐的需求。由于容易实现+成本较低,现阶段仍是车主的主流选择。

车载OS市场空间

2019年7月,麦肯锡发布《2030年汽车软件和电子市场报告(Automotive software and electronics 2030)》,报告显示,2020年,全球汽车广义操作系统(功能软件、狭义操作系统、中间件)市场规模达238亿美元,到2025年接近370亿美元CAGR+13.1%;到2030年达469亿美元,10年CAGR+9%。

WeChat Image_20210324144413.jpg

作者:欧珊瑚
来源:https://mp.weixin.qq.com/s/eBemIIpyGgBN-Ins7-78nw
作者微信公众号
qrcode_vTechnologies_1.jpg

相关文章推荐

更多汽车电子干货请关注汽车电子设计专栏。
推荐阅读
关注数
11949
内容数
697
专注于汽车电子工程领域,紧跟技术创新,助力行业发展
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息