首页 > 汽车技术 > 正文

汽车基础软件及国产现状

2022-09-25 22:57:43·  来源:汽车ECU开发  
 

02.中间件

中间件的任务就是负责各类应用软件模块之间的通信以及对系统资源的调度。其中中间件绝大部分的功能是通信,因此通常我们说的中间件也就是通信中间件。

随着传感器的数量增加,数据来源增多,多元异构数据在芯片之间、各任务进程之间的高效、稳定传递需要引入通信中间件。通信中间件包括点到点、消息队列和发布/订阅三种工作模式。

点到点模式具有很强的时间和空间耦合性,使得通信灵活性受到很大限制;消息队列模式通过一个消息队列来传递消息,解决了通信双方时间和空间松耦合的问题,但不能实现消息消费者通信的异步,并且还存在服务器瓶颈和单点失效的问题,可靠性得不到保障;发布/订阅模型中,发布者和订阅者通过主题相关联,双方不必知道对方在何处,也不必同时在线,实现了通信双方在时间、空间和数据通信上的多维松耦合,并且能够减少网络负载,提高通信效率,也提高开发人员的工作效率。

现在常用的通信中间件SOME/IP与DDS都采用了发布/订阅模式,实现通信双方在时间、空间和数据通信上的多维松耦合。

SOME/IP

SOME/IP的全称为:Scalable service-Oriented MiddlewarE over IP,是一种面向服务的传输协议。严格地说,SOME/IP不是一款特定的产品,而是一种技术标准。其最早由宝马在2011年开发,并在2013年集成进AUTOSAR 4.1中。其对内存需求较小,但仅提供一种用于选择UDP与TCP的“可靠性”QoS设置,其同时支持Adaptive AUTOSAR与Classic AUTOSAR。

开源版的SOME/IP则是由Genivi协会来维护的,由 C++ 编写,目前主要实现了 SOME/IP 的通信和服务发现功能,并在此基础上增加了少许的安全机制。

目前SOME/IP中间件提供商有AUTOSAR工具链厂商,包括Vector、ETAS、EB等国外公司,国内的也有包括普华基础软件,经纬恒润、东软等。

DDS

DDS全称为Data Distribution Service (数据分发服务),由对象管理组(OMG)发布和维护,是一个中间件协议和API标准,采用发布/订阅体系架构,强调以数据为中心,提供丰富的QoS服务质量策略,以保障数据进行实时、高效、灵活地分发,可满足各种分布式实时通信应用需求。

其广泛应用于工业物联网领域,DDS对内存需求大,体量较大,需要人为地进行项目级的裁剪,在服务策略方面,DDS支持22种QoS策略,每种策略都可以应用在不同的角色上,而针对同一角色,可单独使用一种QoS,也可以组合使用多种QoS策略。

在2018年,DDS被首次引入Adaptive AUTOSAR,作为可选的通信中间件之一。018年3月,DDS的主要提供者RTI公司宣布,AUTOSAR AP的最新版本(版本18-03)已经具有DDS标准的完整网络绑定,但是目前还不支持Classical AUTOSAR。

此外ROS 2和Cyber RT的底层都使用了开源的DDS,将DDS作为最重要的通信机制。

全球范围内,DDS的最大供应商是RTI(Real-Time Innovations),它同时也是OMG组织董事会的成员,从2004年开始负责主持DDS工作组的工作,包括DDS标准的制定,目前已经成为这个行业的领导者,对DDS标准有足够的权威。其DDS产品为为RTI Connext DDS,占据绝大部分市场。

除此之外,还有一些开源的DDS,其也是根据OMG官方的DDS标准开发的,但源代码开放。

在自动驾驶领域比较有影响力的开源DDS是由RTI原核心团队成员在欧洲创办的eProsima公司推出的FastDDS。在eProsima将FastDDS的源代码开放出来后,用户可以直接在github上免费下载。但FastDDS使用起来比较麻烦,这个时候,用户就需要通过向eProsima支付费用来取得支持。

OpenDDS 由位于圣路易斯和凤凰城的的Object Computing的 ACE/TAO 团队开发,它和FastDDS具有一定的相似性——两者都是基于RTPS实现的,面向数据的通信框架,遵循的是同一标准。这类框架的典型特征是去中心化,支持QoS机制,支持实时通信。通常会绑定如protobuf等序列化工具。

在许多情况下,FastDDS 、OpenDDS可以跟RTI的Connnext DDS互操作/通信。当然,具体还得看场景。比如开源DDS支持的的QoS有 23个,大家都用这23个QOS交互,那就能互操作;如果Connext用的是超出这23个自定义范围的QoS,那么开源DDS就解析不了。此外,如果用的是OMG没开源的DDS工具,那也没法互操作。

目前来看SOME/IP相较于DDS在汽车领域,有先发优势。DDS虽然功能完善,而且在其他领域具有广泛的应用,但是在汽车行业,车规是最重要的。另外SOME/IP是直接针对汽车场景设计的,而DDS应用在汽车场景需要进行剪裁和适配,这里相较于SOME/IP,工作量又多了很多。最重要的一点是,由于现在大部分车载控制器的开发都是基于AUTOSAR来做的,目前SOME/IP同时支持AP和CP,而DDS目前还只能在AP上运行。

SOME/IP和DDS中间件除了上述提到的AUTOSAR工具厂商和RTI及开源可以提供外,国内还有一些企业也提供相关的产品,比如百度Apollo提供的Cyber RT,它在Apollo 3.5中正式加入。Cyber RT和ROS2很像, 其底层也是使用了一个开源版本的DDS。

另外华玉通软(Greenstone)成立于2020年,专注于基础软件的研发和创新,为智能汽车和智能驾驶提供完全自主可控的操作系统、高度可扩展的基础软件平台和定制化解决方案。去年发布了国内首个基于DDS标准完全自主研发的通信中间件—— “雨燕”通信中间件,“雨燕”通信中间件提供20多种QoS机制,为不同场景需求提供灵活的服务质量管理。在通信安全上,“雨燕”通信中间件提供身份认证、数据信息加密、敏感信息保护等多种安全保障,确保数据不会丢失、延滞,也不会被篡改或是窃取。

当前其可适配LiNUX、VxWorks、QNX、AUTOSAR CP、FreeRTOS等多种车载操作系统,并已成功部署在地平线‘征程’系列、赛灵思ZU5、英伟达Xavier、芯驰G9X以及英飞凌TC397等多个平台上,

图片


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