ROS 2(Robot Operating System 2)是为机器人系统设计的全新框架,其通信架构以 DDS(Data Distribution Service)标准为基础。与 ROS 1 不同,ROS 2 摒弃了集中式的 ROS Master,转而采用数据分发服务(DDS)提供的分布式发布-订阅模型,实现节点之间高效的去中心化通信。这一变革带来了更高的实时性、可靠性和可扩展性。简言之,ROS 2 可以总结为“以 DDS 为底座的机器人通信中间件”。DDS 内建的自动发现机制、省去了 ROS 1 中手工配置主节点的烦恼,使任意两个 ROS 2 程序节点能够在网络中自动发现彼此并交换数据。同时,DDS 丰富的 QoS(Quality of Service,服务质量)策略为 ROS 2 提供了对通信行为的精细控制,使其既能像 TCP 一样可靠传输,也能像 UDP 一样尽力而为,在无线网络等复杂环境中保持稳定。
引言与背景
随着汽车电子电气架构的演进,车辆内部和车际间的数据交换需求日益增长,传统的面向信号总线(如CAN/FlexRay)和面向服务通信(如SOME/IP)在大数据量、多发布/多订阅场景下开始遇到挑战。近年来,由OMG(对象管理组织)提出的DDS(Data Distribution Service,数据分发服务)成为嵌入式分布式系统中流行的高性能数据中心发布/订阅中间件标准。在汽车领域,DDS以其数据驱动、高吞吐量和灵活QoS等特性,逐渐受到关注。AUTOSAR组织自2018年在Adaptive Platform引入DDS以来(作为通信管理的一种网络绑定),近期也在Classic Platform中推出了DDS基础软件模块。AUTOSAR Classic DDS模块的规范在AUTOSAR R22-11中首次发布(由华为主导提案,RTI等公司支持),目标是为经典平台上的ECU提供DDS数据分发能力。
背景与意义
汽车软件的复杂性与标准化需求。 随着汽车电子技术的发展,车载软件的规模和复杂度日益增加,传统的开发方式难以支撑。在AUTOSAR出现之前,各大整车厂(OEM)通常各自开发专有的ECU软件平台,软硬件高度绑定,不同供应商的平台难以兼容。这导致开发成本高、重复工作多,软硬件升级和跨供应商协作困难。为解决这一瓶颈,业界需要一个统一的开放标准架构,使软件独立于硬件,实现组件的跨平台复用和快速集成。
AUTOSAR联盟的成立。 2003年,包括宝马、博世、大陆、戴姆勒(奔驰)、福特、通用、PSA标致雪铁龙、丰田、大众等在内的九大汽车企业联合发起成立AUTOSAR联盟。AUTOSAR的英文全称是 “Automotive Open System Architecture”(汽车开放系统架构),既指这个全球合作联盟本身,也指该联盟制定的软件架构标准。联盟的目标是在汽车电子/电气(E/E)架构领域制定开放的行业标准,推动模块化、解耦化、可复用的汽车软件架构。AUTOSAR联盟秉承的口号是:“在标准上合作,在实现上竞争”,即各厂商共同制定标准,但在具体产品实现上保持竞争,通过标准化接口提高整个行业的软件开发效率。
