作者 | 万博
根据车型量产节奏,SOA架构大规模落地预计在2023-2025年,今年是一个分水岭。
SOA架构软件平台,仿佛一夜之间在汽车行业生根发芽,成为各大车企和供应商的香饽饽。
不久前,上汽零束,就在SOA开发者大会上,发布了银河智能汽车全栈解决方案3.0,其中SOA开发者平台就是一个重要的组成部分。
而岚图也在刚刚结束的科技日上,发布了ESSA+SOA智能电动仿生体,SOA电子电气架构成为重点。
在此之前,蔚来、埃安、威马等车企也早早在相关的技术上有过声音,各种案例不胜枚举。
虽然车企在不停地鼓吹这一概念,但是SOA架构到底是什么东西,仿佛一直是云里雾里。
本篇文章,我们就来掰开揉碎地讲讲,SOA架构是什么,为啥让整个行业趋之若鹜。
01、SOA架构软件平台,到底是咋回事?
要理解什么是SOA架构软件平台,首先要搞清楚,这里的SOA架构是什么?
其实SOA架构,英文全称为Service Oriented Architecture,用中分翻译过来就是“面向服务的架构”。这个概念早在本世纪初就已经出现,之前主要是在IT行业的软件开发中有所应用。
虽然发展了这么多年,但SOA的概念其实并没有一个权威而统一的定义,这里可以用知名IT公司IBM给出的定义进行参考理解:
“SOA是一种可通过服务接口复用软件组件的方法”。
具体来说,就是将应用程序的不同功能单元就行拆分,之后通过标准的接口和通信协议,将这些功能单元连接起来随时调用。
这里的接口采用标准化方式进行定义,因此,不管实现这种功能单元的硬件平台、操作系统和编程语言是什么,都不影响不同功能单元的调用和组合。而这里所说的功能单元,也被抽象化为一种服务,“面向服务的架构”也由此而来。
说到这儿,是不是感觉还是云里雾里?
为了便于理解,这里用一个具象的例子来解释一下:
比如,我们把一个应用程序比喻为餐厅的菜品服务,餐厅为客人提供菜品就是这个应用程序的功能。而在这个功能之下,还有一些若干的功能单元(服务),比如点菜、做菜、传菜等等。
这些功能单元的内部如何运作并不重要,就像服务员不关心厨师怎么炒菜一样。各功能单元之间,只需要接收和反馈信号,就可以完成为客人提供菜品(应用程序)的任务。比如厨师接到前台点菜的信号后,做好菜品向服务员反馈信号,让服务员进行传菜。
如此,软件的开发,就可以用一种搭积木的思路,通过标准的接口和通信,调用不同的服务进行整合即可。
所以,基于上文的一些陈述,我们发现SOA架构的一些特征:
首先,一个服务创建后,能够用于多个应用和业务流程。还是以上面餐厅的应用为例,如果说有一天餐厅要变一种经营模式,白天经营餐厅晚上经营酒吧,那餐厅只需要在原来的基础上调用一个酒品制作的服务,传菜、点菜、前台收银这些服务都可以用到酒吧经营中。
其次是松耦合,即不同的服务,以及服务请求者和提供者之间彼此松耦合,服务的请求者不需要知道服务提供者实现服务的技术细节,比如底层硬件平台,或者是程序语言等等。就像服务员服务好客人就行,厨师炒菜怎么炒,调酒师的鸡尾酒用了哪些基酒,都跟服务员没关系。
最后,需要一个提供标准接口和通讯协议的中间件来进行服务的请求和反馈,实现不同服务的调用。比如餐厅出菜口的铃铛就可以简单理解为中间件。
所以本质上来说,SOA架构并不是一个具象的技术,而是一种软件设计的架构思想。
讲到这里,问题又来了,一个原本是IT行业的概念,为啥突然被汽车行业接纳,并迅速成为行业热词?
关于这个问题,目前业内有一个普遍的共识是:车变了,软件开发的思路也跟着变了。
这里的车变了,具体来讲,主要有两点:
其一,是汽车电子电气架构(EE架构)的变化。传统的分布式EE架构,汽车功能实现主要依赖于车内数以百计的ECU(电子控制单元)进行。而这些ECU,往往来自不同的厂家,接口设计等等也都不一样。也因此,原来汽车软件的开发方式,有赖于车企和上游供应商进行来回反复的协作进行,工作量大,时间周期长。
而现在,这些ECU的逻辑运算、控制命令等任务开始被几个集中的域控制器(DCU)取代,大量的功能经由DCU的运算控制,直接命令执行机构实现功能。
当不同ECU的运算、控制等功能被集中到几个DCU上,那基于DCU进行SOA架构软件开发,就有了硬件基础。
其次,是汽车通讯方式的改变。传统的车载通讯主要依靠低宽带的CAN总线进行,每个ECU的通信渠道互不相同。而现在更高宽带、基于IP协议的车载以太网取代CAN总线,成为新的车载网络架构,打通了各大模块的通信。同时,高宽带,也意味着更快的传输速度和更低的延时,实现功能模块的快速调用。这是SOA架构在应用上车的通信基础。
归结一下就是,随着EE架构和通信网络架构的改变,软件定义汽车的时代来临,SOA作为一种更为便捷的软件开发思路,在硬件和通信基础具备的前提下,可以做到快速、低成本的迭代。
也因此,SOA架构应用上车已经成为业内的一个普遍共识,各大车企和软件供应商,都纷纷开始布局自己的SOA软件平台。
这里我们以上汽零束的银河开发者平台为例,说说汽车SOA软件平台的大体构成。
上汽零束的银河开发者平台
由图来看,汽车SOA软件平台,可以简单拆分为3大部分,包括系统软件、功能软件和应用程序。
其中系统软件主要由虚拟机、系统内核以及中间件构成。
从虚拟机到系统内核,大家可以简单理解为基于硬件层应用的各类操作系统,比如基于QNX系统内核的车载OS和Linux系统内核的车载OS。
而中间件,则是目前各大玩家研发的关键。中间件简单理解一下就是,提供系统软件和应用软件之间的连接、便于软件各部分之间沟通的软件。通过中间件,应用程序就可以在不同的服务之间调用和共享资源。
就目前来说,汽车行业的中间件,普遍采用的是AUTOSAR中间件方案。这个中间件方案,就是将SOA架构思路进行应用,对汽车各功能模块封装为功能软件(服务),比如数据服务、计算服务等等。
而这些服务,则通过ESB服务总线与上层的应用软件层进行连接,这些连接的节点,就是标准化的应用程序接口(API)。
至此,软件开发者就可以通过接口,实现服务请求和调用,进行应用程序的快速低成本开发。
在SOA开发平台的类型上,目前大多数SOA软件平台主要面向的是汽车生态圈玩家的开发者,比如车企内部的软件开发人员,或者是智能座舱生态的应用提供者。
当然,也有可以面向用户(C端消费者)的SOA服务,比如威马在W6上应用的软件开发平台,就提供面向车主的开发服务。
02、汽车软件开发,SOA架构平台能带来什么?
SOA架构的优势体现在软件开发、用户服务、商业价值等多个环节。
在软件开发层面,想要开发一个新的汽车功能,基于SOA架构开发,无论是时间成本还是实现难度,都会比传统开发方式更有优势。
前文也提过,传统开发方式,是基于分布式的ECU进行面向信号的开发,整个开发模式就像平地起高楼,从硬件基础到上层的软件,都要重新进行构建。而且不同的ECU可能来自不同的供应商,车企和供应商紧紧绑定,一个功能的改写无异于牵一发而动全身。
但基于SOA架构之后,软硬件解耦,基础服务已经打包好了放在那里,软件开发的方式变成了低代码的搭积木式开发。
用一个简单的例子来说,以前汽车功能的开发人员想要对汽车雨刷的档位进行改写,可能需要几百行代码,但是采用SOA之后,同样的需求可能写一个脚本就解决了。
除了便于开发外,SOA架构给车企带来的商业价值更大。
首先,SOA架构的软硬件解耦特性,使得汽车的软件开发与硬件平台解绑,一次开发即可在不同平台的车型上进行搭载。比如让智能驾驶方案,快速在不同的车型上落地。
其次是软件的快速开发和迭代,使得软件OTA速度大大提升。同时,当软硬件解耦之后,车企对软件迭代的自主性也有了更大的把握。在此之下,快速迭代的软件能力,可以让主机厂紧跟市场潮流,为用户提供更多更丰富的服务,这市场竞争力是不是也跟着上来了?
最后,对于车企来讲,卖车从此就不是一锤子买卖了。SOA架构带给主机厂的,是让其有提供软件服务的能力。所以车企的利润焦点,从原来卖车时的一手交钱一手交货,变成交货之后,车企可以通过持续提供软件服务来获取后续的收入。也就是车企价值的链条,向后延伸。
以上,就是SOA架构为汽车行业带来的一些价值增量,至于这种价值增量能否被释放,则取决于SOA架构的具体落地情况。
03、SOA架构,落地现状如何?
就目前来说,国内主流车企,在下一代EE架构的设计中,普遍将“面向SOA”的服务通信网络和标准API接口作为EE架构的主要能力。
比如长城汽车的GEEP架构、蔚来的下一代的区域架构,以及长安的SDA架构皆是如此。小鹏在G9上搭载的EE3.0架构,则主要将SOA架构的概念应用于智能座舱域。
岚图也曾在去年4月份的上海车展上,公开展示自家的SOA智能座舱,并将在最近发布基于SOA的电子电气架构。
除了以上的主机厂之外,威马和上汽零束,则是将SOA架构单独拿出来推进和宣传的玩家。
威马汽车在去年4月份威马W6上市时,就宣布自己成为首家实现SOA技术量产应用的造车新势力,并表示W6是“国内首台SOA技术应用量产汽车”。
上汽零束这边,则是在去年4月的SOA开发者大会上,推出了自己的车云一体化SOA软件平台,首款搭载的量产车就是智己L7。
就应用层面看,因为SOA架构的实现主要源于电子电气架构的集中化。所以目前的落地方式,主要是基于不同的DCU来进行开发,比如智能驾驶域SOA或者座舱的SOA。
从落地的节奏上和技术实现两个角度来讲,目前基于SOA软件架构开发的车型还是少数,大规模落地还需时日,但SOA架构的开发模式已经毋庸置疑是技术发展的主要方向。
SOA架构的成熟应用对于车企来讲,难度并不小。业内专家认为,车企遇到的难点可能有两个方面:
一方面,SOA概念在汽车行业应用还属于早期阶段,各个企业都在摸索中前行,SOA的设计方法、设计流程、规范体系,以及工具链建设,都还没有形成体系化、标准化,这对车企来讲是一个普遍的难题。
另一方面,就是开发模式的变化,必然要求组织架构与之相匹配。面向SOA的开发模式会将各个部门的能力以新的软件形态进行重构,意味着车企要将现有的组织架构进行调整,这对于车企,尤其是传统来说,也是一个非常大的痛点。
而基于这些难点,目前国内的主机厂如何去解决呢?
目前来看,造车新势力普遍是以全栈自建软件能力进行推动,而多数的传统车企,则通过不同的手段,比如孵化软件子公司,或者通过资本手段与Tier1合资合作,来构建自己的软件能力。
比如大众集团,在国内与地平线进行合作;上汽和长安则是自我孵化,零束和诸葛智能就是这种模式的产物。
最后,剩下一个实际的问题,基于SOA架构的量产车,啥时候才能大规模落地?
目前,各大车企都已开始准备或者发布了下一代电子电气架构,更加集中的域控和SOA服务能力正是下一代电子电气架构的重点。
车型量产节奏来看,车企普遍都将今年当作一个分水岭。业内专家认为,SOA架构大规模落地预计在2023-2025年。
特别致谢:
感谢东软睿驰Connectivity业务线咨询总监,AUTOSEMO车云一体工作组技术专家王秋雨对本文的贡献。