现在说到无人驾驶,被提及最多的关键词有两个:硬件和算法。所以我们可以看到遍地开花的摄像头、雷达乃至激光雷达的创业公司出现,深度学习则成为另外一个大热门。
如果将无人驾驶汽车视为一个电子终端产品,那么除了组成的硬件、用来执行命令的算法(程序)之外,底层操作系统也必不可少。和硬件、算法不同,底层操作系统,无论是在PC、手机还是车载系统上,入局的玩家数来数去始终也只有那么几家。
今年7月,宝马、英特尔、Mobileye三方宣布将共同开发无人驾驶,除了希望在2021年交上一份关于无人驾驶的商业化答卷之外,三方的目的还在于「联手建立无人驾驶技术的行业标准,开发无人驾驶的开放平台」。无论是行业标准,还是开放平台,底层操作系统都在隐晦地刷存在感。在上个月风河于北京举办的2016开发者大会上,车云菌也了解到,在这个开放平台中,底层操作系统和中间件的开发工作就是被交给了英特尔的子公司,长于嵌入式系统的风河。
这个结果也并不意外,对于期望在汽车市场展开「第二春」的英特尔来看,风河在嵌入式操作系统和软件上的功力一直是其王牌之一,此前英特尔与三星共同推进的TIzen操作系统项目风河就一直在参与其中。
不过此前,风河在汽车的业务主要是围绕在车载娱乐系统,汽车相关的五大业务板块里,车联网、车载娱乐与集成显示屏占去其三。在2009年被英特尔收购之后,风河即加入GENIVI,并开始为车企开发车载系统;2014年成为谷歌开放汽车联盟的一员,与谷歌共同开发Android For AutomoTIve。
另外两块业务,则是与驾驶辅助相关,一是提供驾驶辅助技术相关的ECU管理和相关软件解决方案,二是辅助OEM进行诸如ISO 26262的标准认证。
这个情况,现在发生了变化。在风河的开发者大会上,风河网联汽车业务部全球交付主管TY Kim向车云菌介绍到,现在风河的汽车板块分为三块:
Helix Cockpit,整合了此前车联网、娱乐信息系统以及显示屏三块业务;
Helix Cockpit系统架构
Helix Drive,对应高级驾驶辅助与无人驾驶的软件解决方案,其前身为风河在2015年5月发布的AutomoTIve Profile for Vxworks,可以理解为Vxworks操作系统的汽车版本,提供给车企用来开发针对ADAS与无人驾驶的各项应用;
Helix Drive系统架构,正在开发中
Helix Carsync,提供在线软件更新和云服务,包括远程设备管理等,是整合了今年英特尔为风河收购的Arynga的Carsync产品与风河此前的云服务(Helix Cloud)内容。
Helix Carsync系统架构
这三块产品,组合到一起,就是风河在今年1月份推出的Helix Chassis产品。Helix Chassis是风河面向汽车的软件解决方案。
风河Helix Chassis系统架构
据TY Kim介绍,作为物联网中最现实的应用——汽车,将成为风河下一步战略中至关重要的一步。而英特尔、宝马和Mobileye的联盟,可以说给风河带来了一阵好风:“我们现在还没有通用标准化的软件平台,因而我们希望通过这样的协作,能够建立起来某种程度上通用的做法。”
而风河要开发这样一个平台,所倚仗的,就是其1987年即开发出来的实时操作系统(Real-TIme operating system,简称RTOS)——Vxworks。上面也提到,Helix Drive其实就是Automotive Profile for Vxworks。Vxworks在航天与国防上战功显赫、美国NASA的火星探测器、海军无人飞机的基础平台,都是Vxworks。风河此前与TTTech合作,以Vxworks为基础,为奥迪开发自动泊车技术。
使用Vxworks的好奇号火星探测器
Vxworks的最大特点在于实时操作系统。所谓实时操作系统,与我们现在PC端与移动端的操作系统的不同之处就在于「实时性」。
以电脑为例,在打开多个应用程序的时候,为了保证用户体验,必须都能够进行响应,那么系统需要将计算资源根据需求平分到各个应用程序上,带来的结果就是,可能每个应用程序运行得都不是那么流畅。
而对于实时操作系统来说,其特点在于如果一个任务需要执行,会在较短延迟时间内立即执行,而不是追求同时执行多个任务。这样的特性,在无人驾驶中,有自己的优势:可以设定不同命令的优先级,高优先级的任务能够立即得到执行。TY Kim提到,Vxworks应用在飞机上时,就有一项技术,即对于关键应用,不论其他应用处于什么状态,都要保证足够的存储与CPU资源,使关键应用在任何情况下都能够运行良好。
不过,TY Kim也表示,尽管在航空航天领域,Vxworks已经应用很长时间,但是移植到汽车上,依然需要几年的部署时间。其中一方面,是因为应用环境的不同,带来了不同的要求,Vxworks需要针对汽车行业做一些开发工作;另一方面,还是因为现在没有完善的法律法规,因为无人驾驶对于安全的高要求,而目前没有一个软件能够做到100%不存在BUG,只能说是「从商业可接受、可实践的范围内来保证其可靠性与安全性」。所以在法律法规出台之前,对于软件部署,他们同样很谨慎。
现在很多家车企都在开发无人驾驶技术,以谷歌为例,是在Linux的基础上进行开发。Linxu虽然本身是通用操作系统,但是也可以经过改造而成为实时操作系统。另外,同样是非开源的QNX系统、用于车载娱乐系统的WinCE都属于实时操作系统。因而,虽然风河借着英特尔、宝马和Mobileye联盟的东风,但并不代表其就不会有竞争对手了。QNX和一直在布局深度学习的微软,很有可能也会来分一杯羹。
尽管不如传感器和算法竞争那么激烈,但是无人驾驶底层操作系统之争,或许已经悄然地拉开了帷幕。