zoukankan      html  css  js  c++  java
  • 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/category/1995263.html

    其他诊断相关参考文档

    • AP:AUTOSAR_TPS_ManifestSpecification.pdf 第四章 Diagnostic Design
    • FO:AUTOSAR_RS_Diagnostics.pdf
  • 相关阅读:
    twisted与websocket
    【算法竞赛 数学】拉格朗日插值法
    Event and Delegate
    Lambda 表达式 问题
    Singleton 模式
    COM Interop 简介
    outlook2007阻止附件的问题 http://hi.baidu.com/simplejoy/blog/item/53693897bd16046554fb9631.html
    Lnk1202 http://www.codeguru.com/forum/archive/index.php/t386908.html
    error LNK2001: unresolved external symbol
    Delegate 示例
  • 原文地址:https://www.cnblogs.com/tengzijian/p/15135074.html
Copyright © 2011-2022 走看看