软件架构:分层解耦、服务化、API 接口标准化

2022-11-12 10:20:59·  来源:汽车测试网  
 
随着企业向软件定义汽车开发方法的转变,软件架构也需要同步进行升级,引入面向服务的架构(Service-Oriented Architecture,简称 SOA)方法论。汽车 SOA 是对整车智能化的底层能力进行组织。将车端的硬件能力和各种功能服务化,这些服务根据 SOA 标准进行接

随着企业向软件定义汽车开发方法的转变,软件架构也需要同步进行升级,引入面向服务的架构(Service-Oriented Architecture,简称 SOA)方法论。汽车 SOA 是对整车智能化的底层能力进行组织。将车端的硬件能力和各种功能服务化,这些服务根据 SOA 标准进行接口设计,基于 SOA 标准协议进行通信。这样,各服务组件之间就可以相互访问,从而扩展了服务的组合形式。

图片

图 4-1 SOA 服务化架构示意图

SOA 的引入使汽车传统封闭、固化的软件系统逐渐成为具备开放性、重用性的软件生态。在新一轮的软件架构升级中,基于分层解耦的SOA 服务化架构,利用设备抽象和原子服务实现硬件能力的充分服务化,具体对象包括控制器周边的传感器、执行器、传统总线通信,以及控制器自身的诊断、存储设备。同时,基于“逻辑语义转换”的设计思想,完成接口标准化,实现不同平台、不同车型的接口重用性目标。

图片

图 4-2 SOA 架构下的基础服务举例

随着基础架构及开发方式的变化,“软件定义汽车”会颠覆整个汽车开发流程,基于 SOA 的软件架构方案为智能汽车系统提供了重要的服务抽象。严谨的封装和分层结构支持使用敏捷开发方法和针对接口进行测试,并降低了系统的复杂性,将大大简化软件组件在车辆更新换代时的重用。

图片

架构标准化:

图 4-3 软件分层架构示意图

分层架构,在原有的整车架构中,引入原子服务层和设备抽象层。

  • 设备抽象层负责封装底层的硬件差异,并把硬件层的特性以服务的方式提供接口, 供原子服务层进行调用,硬件的调整不应导致系统软件对外提供的接口发生变化, 使得应用逻辑摆脱底层硬件平台的束缚;

  • 原子服务层作为中间层,与平台解耦,对上承接应用服务的调用,对下进行设备抽象的访问,体现车型差异,并配置化适配,使能上层应用跨车型复用;

  • 应用/组合层服务主要负责用户需求逻辑的实现,通过调用原子服务层提供的接口, 组合出千变万化的场景化应用。

接口标准化:

跨车型、跨零部件供应商,最大化复用,降低软件定义汽车软硬件开发复杂度。

在架构标准化的基础上,如何能实现软件的跨车企使用?就需要对层与层之间的接口进行标准化,不同整车厂、Tier1、平台供应商定义同一套服务接口,使得不同整车厂之间,不同 Tier1 之间的软件可以相互调用,大大增加软件的复用性,缩短车辆开发周期。

在接口标准化推动方面,中国汽车工业协会已经发布了第三版《软件定义汽车原子服务 API 接口与设备抽象 API 接口参考规范》,包含 700 多个 API,涵盖车身控制、热管理、能量管理、运动控制、智驾域、动力域、底盘域等多个功能域,参与接口标准化定义的成员包含整车厂、零部件、基础平台供应商、软件供应商等 100 多家公司。

分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026917号-25