阅读 130

Adaptive AUTOSAR 学习笔记 14 - 车辆诊断

Adaptive AUTOSAR 学习笔记 14 - 车辆诊断

本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf。作者:Zijian/TENG
原文地址(获取最新更新):https://www.cnblogs.com/tengzijian/p/15135074.html

缩写

  • DM:Diagnostics Management

  • UDS:Unified Diagnostic Services

  • DoIP:Diagnostic communication over Internet Protocol

  • ISO:International Organization for Standardization

  • AP:AUTOSAR Adaptive Platform

  • CP:AUTOSAR Classic Platform

  • FC:Functional Cluster

  • DEXT:Diagnostic Extract Template

  • SWCL:Software Clusters

  • AA:Adaptive Application

  • UCM:Update and Configuration Management

  • DCM:Diagnostic Communication Mannger

  • DEM:Diagnostic Event Mannger

  • DTC:Diagnostics Trouble Code

9 诊断

9.1 概览

诊断管理 DM 实现了 ISO 14229-5(UDSonIP)。ISO 14229-5 基于 14229-1(UDS)和 ISO 13400-2(DoIP)。DM 是 AP Foundation 层上的 Functional Cluster(FC)。DM 的配置基于传统 CP 的 AUTOSAR Diagnostic Extract Template(DEXT)。DM 支持 DoIP 作为传输层协议。DoIP 是一个车辆发现协议,用于和诊断基础设施(诊断仪、工厂/售后测试仪)的 off-board 通信。车载或远程诊断一般会使用其他传输层协议,为此 AP 提供了扩展自定义传输层的 API。UDS 广泛用于车辆的生产和售后维修。

9.2 软件簇

The atomic updateable/extendable parts are managed by SoftwareClusters(SWCL)

SoftwareClusters(SWCL)管理原子可升级/可扩展部分。SWCL 包含与部署/更新功能/应用相关的所有部分。DM 支持为每个安装的 SWCL 分配独立的诊断地址。SWCL 也和 UCM 的软件包耦合,所以 SWCL 可以被更新或者新安装的一台机器上。

9.3 诊断通信子簇(DCM)

诊断通信子簇实现了诊断服务(好比 CP 中的 DCM)。目前只支持有限的诊断服务,后续的 Release 将扩展支持更多的 UDS 服务。除了 ISO 14229-1 中的伪并行客户端支持,DM 还进行了扩展,可以在默认会话下支持客户端的全并行处理。满足了现代汽车架构的需求:

  • 多诊断客户端/测试仪的数据采集

  • 后台访问

  • 传统维修车间和产线使用场景

9.4 自适应应用诊断

DM 作为诊断服务端,分发诊断请求(比如 Routine Control 和 DID 服务)到 AA 所映射的 Providing Port。AA 需要提供专门的 DiagnosticPortInterface

9.5 专用/通用接口

DiagnosticPortInterface 有不同的抽象层级:

  • RoutineControl 消息

    • 专用接口:API 声明包含所有请求和响应消息参数和原始数据类型。DM 负责序列化。每个 RoutineControl 消息有自己的 API。

    • 通用接口:请求/响应消息的 API 声明只包含一个字节数组(Byte-Vector)参数,应用负责序列化。多个 RoutineControl 消息共用同一个 API。

  • DataIdentifier 消息

    • 专用接口:API 声明包含所有请求(用于写)和响应(用于读)的消息参数和原始数据类型。DM 负责序列化。

    • 通用接口:请求/响应消息的 API 声明只包含一个字节数组(Byte-Vector)参数,应用负责序列化。

    • 独立 DataElement:每个请求/响应消息参数有自己的接口。这是最高级别的抽象,任何请求/响应消息格式的改变都不会影响 API。不仅如此,一个诊断消息的参数可能来自/分发到不同的进程。

9.6 诊断会话

DM 要求支持伪并行,诊断会话要能反应不同的诊断客户端和服务端的会话。诊断服务端是通过 UDS 请求中的 Target Address 来确定,且在 AP 中运行时动态分配。

9.7 事件存储子簇(DEM)

事件存储子簇负责 DTC(Diagnostics Trouble Code)的管理(好比 CP 中的 DEM)。Active DTC 表示一个检测到的问题(对产线和维修站很重要)。DM 管理 DTC 的存储、配置的 SnapshotRecords(当发生 DTC 时的一组环境数据)和/或 ExtendedDataRecords(属于 DTC 的统计数据,如重复发生次数)。

检测逻辑叫做 Diagnostic Monitor。Monitor 向 DM 的 DiagnosticEvent 报告最近的测试结果。UDS DTC 状态源自一个或多个 DiagnosticEvent。DTC 可以存储在主存储(通过 $19 02/04/06 访问)或可配置的用户存储(通过 $19 17/18/19 访问)。

DM 支持基于计数器或者基于时间的消抖。此外,DM 提供有关内部转换的通知:

  • DTC 状态更改

  • 监视 DiagnosticEvent 重新初始化的需要

  • Snapshot 或 ExtendedDataRecord 是否更改

如果 DTC 在配置的操作循环数内都处于非 Active 状态,则 DTC 将从 DTC 存储中擦除。DM 支持对启用和存储条件的全局处理。启用条件可用于在特殊条件下控制 DTC 的更新,例如在欠压条件下禁用所有与网络相关的 DTC。

更多关于 Adaptive AUTOSAR 文章

来源https://www.cnblogs.com/tengzijian/p/15135074.html

文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐