目录
往期推荐
- ETAS工具链自动化实战指南<一>
- ETAS工具链自动化实战指南<二>
- ETAS工具链自动化实战指南<三>
- AUTOSAR工程师必读:Artop的核心功能
- Vector工具链自动化实战指南<一>
- isolar高手秘籍| ECU Configuration三分钟速成!
- 掌握核心步骤:RTA-BSW以太网配置全解析
- 一文详解TC399 CAN MCAL 配置
- LSL常见应用场景及示例<一>
- LSL常见应用场景及示例<二>
- LSL常见应用场景及示例<三>
- 为什么Autosar钟情arxml而非json?大揭秘!
- 深入浅出:SOME/IP-SD的工作原理与应用
- 【技术进阶】|一文掌握Autosar ComStack的精髓!
- Autosar培训笔记整理<一>
- 【AutoSAR进阶】|实战详解ETAS工具链UDS 0x2f服务核心配置!
- 实战详解ETAS工具链CanTp模块自动化配置
- 一文掌握5种常见的AUTOSAR 错误类型
- 【AUTOSAR工程师必备知识】一文搞懂AUTOSAR架构9种通信方式
- 实战干货|详解ETAS工具链之 intra-ECU通信的数据转换
在AUTOSAR架构中,网关功能(Gateway Functionality)主要负责在不同总线或网络之间转发或路由信号、信号组或PDU(Protocol Data Unit)。网关的核心目标是确保在不同通信协议或物理网络之间的无缝通信。
Autosar 中网关功能的关键要点
-
信号、信号组或PDU的转发
网关的主要任务是将从一个源总线接收到的数据(信号、信号组或PDU)转发到另一个目标总线。这两个总线可以使用相同或不同的通信协议。常见的情况是CAN总线与以太网总线之间的通信。
-
协
议的转换
在AUTOSAR中,网关功能可以支持不同协议之间的数据传输。例如,CAN和FlexRay之间的信号传递,或者CAN和LIN之间的通信。这需要特定的路由机制来确保数据格式和内容的正确传输。
-
AUTO
SAR网关功能模块
AUTOSAR的网关功能划分为两部分,分别位于不同的AUTOSAR模块中:
a. PDU层的网关功能(基于PDU的网关)
这个功能由PduR模块(PDU路由器)提供。它负责基于PDU层进行路由,即数据包作为整体在源和目标网络之间进行转发,而不关心其中的信号内容。
PduR模块可以跨越多个通信总线,并且通过配置可以灵活处理不同PDU的路由需求。
b. 信号层的网关功能(基于信号的网关)
信号层的网关功能由Com模块中的Signal Gateway提供,它允许对具体的信号进行路由,而不是对整个PDU。信号级别的路由可以更加精细化,可以处理单个信号的转发、信号分解、信号聚合等复杂操作。
这种网关方式特别适用于需要对特定信号进行处理的情况,例如信号过滤、信号转换(如单位或格式转换)等。
Signal 网关
-
在AUTOSAR中,信号级别的网关通过COM模块进行处理。
COM 模块可以网关信号或信号组。接收到的信号或信号组可以映射到一个或多个传输信号或信号组。
2. 一旦网关接收到需要进行网关处理的信号或信号组,它会立即作为该信号的发送者。
COM 网关是静态配置的,网关独立于信号或信号组的内容。
3.网关的配置作为ComGwMapping容器的一部分完成。网关信号或信号组的处理发生在Com_MainFunctionRouteSignals函数中。
Signal 网关的特点:
- 精细控制:Signal 网关能够对 PDU 内的具体信号进行精细的控制、转换或过滤。例如,可以对某一特定信号进行单位转换或格式转换,然后传输到目标网络。
- 跨协议适配:Signal 网关允许不同协议之间的互操作。例如,将 CAN 总线中的信号提取出来,转换后通过 FlexRay 或以太网传输。
- 信号级别的过滤:Signal 网关能够只传递部分感兴趣的信号,而忽略其他不需要的信号,从而减少不必要的数据流量。
应用
场景:- 车辆中的不同网络可能会使用不同的通信协议或数据格式。Signal 网关适用于需要对信号进行解析、转换和适配的场景,例如在不同的车身电子控制单元(ECU)之间传递数据时。
- 当同一信号在不同网络中使用不同的表示方法(如单位、范围)时,Signal 网关可以进行格式转换。
应用案例
-
CAN 到 FlexRay 的信号转换:在一些高级驾驶辅助系统(ADAS)中,可能需要将 CAN 总线中的控制信号转换为 FlexRay 网络中的信号。由于 CAN 和 FlexRay 的协议不同,需要使用 Signal 网关对每个信号进行解析、转换并重新封装后进行传输。
Signal 网关的配置与操作:
-
-
在 Signal 网关中,需要配置每个 PDU 内部信号的具体信息,确保从源网络中提取信号,并在目标网络中正确封装信号。
-
需要定义信号的映射关系、信号类型、数据转换等配置。
-
对于不同协议的网络,Signal 网关需要处理协议的差异,确保不同格式的信号可以正确传输。
-
Signal 网关的优势:
-
-
灵活性高:由于可以对每个信号进行单独处理,Signal 网关在处理不同网络和协议之间的通信时具有更大的灵活性。
-
跨协议转换:Signal 网关支持在不同通信协议之间的信号转换,如 CAN 到 FlexRay、CAN 到以太网等。
-
自定义处理:可以根据具体需求,对特定信号进行转换、滤波或其他处理。
-
PDU 网关
- 在AUTOSAR中,PDU级别的网关通过PDUR模块进行处理 在网关期间,PDUR 模块既充当 PDU 的接收器,又充当 PDU 的发送器。PDUR 从一个下层模块接收 PDU,并将 PDU 传输到相同或另一个下层模块。可以将 PDU 配置为在一个接口模块上接收并网关到多个接口模块。接收到的 PDU 只能网关到接口模块或 TP 模块,而不能同时网关到两者。
- 完整接收PDU后进行网关处理称为直接网关。
从源传输协议到一个或多个目标传输协议模块的网关 PDU 既可以直接作为完整的 PDU 进行网关,也可以作为分段的 PDU 进行网关,在传输之前会收到配置的字节数。在收到完整的 PDU 后对 PDU 进行网关称为直接网关。

-
在没有接收完整PDU的情况下,接收到配置的字节数(阈值)时立即传输PDU,称为“实时网关处理”(gatewaying-on-the-fly)。
在未收到完整 PDU 的情况下,在收到配置的字节数(阈值)时传输 PDU 称为动态网关。在动态网关的情况下,只能配置一个目标模块。PDUR 中提供缓冲区,用于基于直接网关或动态网关的 TP 网关
PDU 网关的特点:
- 高效传输:由于整个 PDU 是作为一个单元传递的,PDU 网关具有较高的传输效率,特别适合于带宽较高、实时性要求严格的通信场景。
- 协议透明:PDU 网关在数据的传输过程中不需要理解 PDU 内部信号的具体含义,它只需要将完整的 PDU 从一个网络转发到另一个网络。因此,PDU 网关不涉及信号的解码和重新编码。
应用场景
- 当网络之间的数据格式和协议基本一致时,PDU 网关可以用来高效地传输数据。例如,CAN 总线和 CAN-FD 网络之间的消息转发。
- 在一些实时要求较高的应用中,例如动力总成、传感器数据传输中,PDU 网关有助于减少延迟。
应用案例
CAN 到 CAN-FD 网关:CAN-FD 是 CAN 总线的增强版本,支持更高的带宽和数据长度。PDU 网关可以在 CAN 和 CAN-FD 之间转发整个 PDU,而不需要对其内部的信号进行处理。这种方式在高实时性场景下非常高效。
PDU 网关的配置与操作:
-
在 PDU 网关中,消息的传递不涉及对信号层面的解释或拆分。
-
需要在配置阶段定义不同网络之间的 PDU 映射关系。
-
可以基于 PDU 的 ID 进行消息的过滤和路由。
PDU 网关的优势:
-
-
高性能:由于不需要解析 PDU 中的具体信号内容,PDU 网关的性能通常较高。
-
简单实现:在硬件层面,只需要处理协议数据单元,无需考虑具体的信号映射,开发和维护相对简单。
-
PDU 网关与 Signal 网关的对比

在 AUTOSAR 中,PDU 网关和 Signal 网关分别针对不同的需求提供了数据传输的解决方案。PDU 网关适用于高效、快速的跨网络消息传递,而 Signal 网关则提供了灵活、可定制的信号级别数据处理。两者各有优劣,大家可以根据具体应用场景选择适合的网关类型,以满足车辆系统的不同通信需求。