首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

《AUTOSAR谱系分解(ETAS工具链)》之诊断故障码(DTC)

  • 23-11-14 08:43
  • 3208
  • 8151
blog.csdn.net

《AUTOSAR谱系分解(ETAS工具链)》之诊断故障码(DTC)

文章目录

  • 《AUTOSAR谱系分解(ETAS工具链)》之诊断故障码(DTC)
    • 诊断故障码(DTC)的定义
    • DTC的意义
      • 产线下线检测:
      • 车辆维修:
    • DTC故障类型
      • 硬件故障:
      • 软件故障:
      • 外部环境故障:
      • 通讯相关故障:
    • 基本概念及术语
    • 诊断服务
    • 故障码(DTC)的组成
    • 故障码(DTC)解析(0x012700)
    • 故障状态
    • 诊断故障码(DTC)的掩码
    • 扩展数据及冻结帧

在这里插入图片描述

诊断故障码(DTC)的定义

DTC(Diagnostic Trouble Code)顾名思义诊断故障码,一种用来记录当ECU发生或者检测到某种故障时呈现给大家的标识码。

DTC的意义

故障码有以下两点意义:

产线下线检测:

一辆车的零部件的开发,系统集成,整车组装,其中涉及的流程之长,零部件数量之多,可以说是相当复杂。为了产线生产的车能正常下线,安全上路,就需要确保在车辆下线前,各零部件本身以及零部件相互配合是没有问题的。因此在产线电检流程中,会读取整车故障码,通过故障码说明车辆是否正常。

车辆维修:

当车辆出故障时,维修工程师是如何快速定位到故障零部件呢?车辆是由上万个零部件组成,如果依赖于维修工程根据经验慢慢排查,效率会极其低下。因此,维修工程师会使用诊断仪读取整车故障码,并将故障码与故障现象对照,快速得出维修策略。

DTC故障类型

以非排放相关的ECU为例,可以将DTC故障类型分为以下几个部分:

硬件故障:

如RAM、Flash、CPU时钟等硬件本身失效的问题

软件故障:

如配置字故障,标定故障或客户定义的软件功能性故障

外部环境故障:

电压过高或者欠压、环境温度过高或过低等

通讯相关故障:

如报文丢失、信号无效,Checksum/Rolling 障等

基本概念及术语

  • 操作周期(Operation Cyle)

    • EXP:定义要运行的检测的开始和结束条件,Operation Cycle开始时开始检测故障,结束时停止检测。车身与底盘域由OEM或者供应商自己确定(如上下电、休眠唤醒等),对于动力域会存在其它标准规定(没有深入研究)
  • 监控周期(Monitoring cycle)

    • EXP:逻辑1表示一个故障被监测到,逻辑0表示最近的故障测试通过或已存在的故障所有的故障条件已不满足,ClearDiagnosticInformation命令可清除此状态位。
  • 确认阈值(Confirmation Threshold)

    • EXP:确认此故障一直存在的Operation Clycle数,将其认定在历史DTC,在老化(aging)或手动清除前confirmed DTC状态位会一直存储在EEPOM
  • 老化计数(Aging Counter)

    • EXP:连续报告没有故障的Operation Cycle数
  • 老化阈值(Aging Threshold)

    • EXP:Aging Counter达到次数之后,DTC的Confirmed状态位将会被清除
  • 错误计数(FDC, Fault Detection Counter)

    • EXP:为错误计数,当然这个步长可以设定,向上(Step up)或者向下(Step down)均可以设置(计数值位-128-127,不同DTC需要的滤波次数不一致,通过设置此项值设置滤波次数)。同时还可以设置jump down(即在检测通过时是否跳转到0或者其它数,并从这个数开始向下减)

诊断服务

  • EXP:
    当DCM接收到14/19服务时,会获取/清空DEM模块相关信息(DTC、状态信息等)。其中14服务用于清空DTC信息,19服务用于获取DTC信息。

故障码(DTC)的组成

DTC故障码是一个4个字节的标识符,由以下两部分组成:DTC Catogory 与Failure Type,其中DTC Catogory 又可以根据Powertrain、Body、Chasis、N etwork四大子系统来进一步定义其范围,简称PBCU四大子系统,如下表所示:

SystemCode categoriesHex valueAppendix
BodyB0xxxxx - B3xxxxx8xxxxx - BxxxxxB
ChassisC0xxxxx - C3xxxxx4xxxxx -7xxxxxC
PowertrainP0xxxxx - P3xxxxx0xxxxx- 3xxxxxP
Generic/Network and Vehicle IntegrationU0xxxxx - U3xxxxxCxxxxx -FxxxxxU

在这里插入图片描述

故障码(DTC)解析(0x012700)

    1. 首先将0x01转换为二进制:0000 0001
    1. 取最前面两位,按这个规律(00=P, 01=C, 10=B, 11=U)可以转换为:P 00 0001
    1. 然后接着两位和最后4位分别转换为16进制数,00(二进制) -> 0x0,0001 -> 0x1,最终0x012700转换为:P012700

故障状态

  • pending

    • EXP:故障(testFailed)进入event memory之后便会在给event memory的状态或上PENDING的状态位。
      pending由1变为0的条件如下两图:

    在这里插入图片描述

    在这里插入图片描述

  • confirmed

    • 故障状态confirmed策略有两种情况:

    • ① 在non-emission related ECU中
      当故障状态故障testFailed之后,置PENDING位后confirmed位便会同时置位,如下图:
      在这里插入图片描述

    • ②emission-related ECU
      在故障状态PENDING置位后,此时的tested and failed cyclescounter加一,如果此时tested and failed cycles counter达到DemEventFailureCycleCounterThreshold,且此时的OBD driving cycle 处于开启状态,confirmedDTC位才会置位。
      在这里插入图片描述

诊断故障码(DTC)的掩码

  • TestFailed (bit0)

    • EXP:逻辑1表示一个故障被监测到,逻辑0表示最近的故障测试通过或已存在的故障所有的故障条件已不满足,ClearDiagnosticInformation命令可清除此状态位。
      在这里插入图片描述
  • TestFailedThisOperationCycle (bit1)

    • EXP:逻辑1表示当前操作周期或从上一次ClearDiagnosticlnformation命令清零后已经监测到一次故障,ClearDiagnosticInformation命令或新的操作周期都会清零此状态位。
      在这里插入图片描述
  • PendingDTC (bit2)

    • EXP:逻辑1成立条件与TestFailedThisOperationCycle相同,不同之处为清零条件,此位清零条件为一个完整的操作周期内未出现故障或ClearDiagnosticInformation命令。
      在这里插入图片描述
  • ConfirmedDTC (bit3)

    • EXP:逻辑1表示一个已经被确定的故障被监测到,被确定的条件有:在连续操作周期内都检测到故障(TestFailed),且检测到的计数(TripCounter)已经达到定义的次数值。可通过ClearDiagnosticInformation命令或当Aging Counter 达到Aging threshold满足时清零此位,此外,故障的记录信息被新故障记录覆盖时,也会清零此状态位。
      注:ISO14229-1建议,非排放相关的ECU服务器TripCounter=1
      Aging Counter:当一个操作周期完成且本周期内没有出现TestFailed,则Aging Counter加1.
      在这里插入图片描述
  • TestNotCompletedSinceLastClear (bit4)

    • EXP:逻辑1表示从上次ClearDiagnosticInformation命令复位(置1)后,新的故障测试还未完成,逻辑0表示从上次清零后,新的故障测试已经完成(Failed or Passed)
      在这里插入图片描述
  • TestFailedSinceLastClear (bit5)

    • EXP:逻辑1表示从上次ClearDiagnosticInformation或其他条件清零后,已经监测到被确定的故障,逻辑0表示从上次清零后,测试未完成或测试已经Passed(而不是Failed)。
      需要确认Aging Counter达到Aging threshold和内存记录被覆盖是否需要复位此状态位?
      在这里插入图片描述
  • TestNotCompletedThisOperationCycle (bit6)

    • EXP:逻辑1表示从上次ClearDiagnosticInformation命令复位(置1)后,本操作周期内当前测试未运行完成,逻辑0表示从上次清零后,本操作周期内已经出现TestFailed或者TestPassed,操作周期切换也会复位(置1)此状态位。
      在这里插入图片描述
  • WarningIndicatorRequested (bit7)

    • EXP:逻辑1表示需要故障报警标识的故障已经处于ConfirmedDTC状态(bit3)和TestFailed状态(bit0),逻辑0表示无故障需要报警标识提示。无需报警标识故障存在或ClearDiagnosticInformation都可以清零此状态位。
      注意,如果报警标识被一个锁定的故障打开,就算有ClearDiagnosticInformation清零命令,也不能清零此状态位,仍然要保持开启状态,直到被锁定的故障TestPassed。
      在这里插入图片描述

扩展数据及冻结帧

  • 扩展数据(Extended)

    • EXP:扩展数据(Extended Data Record)包括一些软件模块内部的信息,比如频率时钟。
    • EXP:该数据在DTC的状态Pending置上后便会一同保存在非易失性存储单元(EEPROM),对两个常用数据进行说明(其余可以看标准或者依据OEM要求)
      1)错误计数(Fault Detection Counter): 检测到错误的计数,具体可以查询上文定义
      2)老化计数(Aging Counter): 连续的Operation Cycle未检测到错误(DTC检测为passed,FDC为-128)的计数,当达到老化阈值时,会将DTC状态confirmed位置为0
    • EXP:Dem通过NvM模块进行存储。ECU下电过程中,比如在ECUM PREP SHUTODWN阶段,调用Dem_Shutdown()接口关闭Dem,接口中Dem将根据存储需要,设置Dem相关的NvM Block的RAM status为changed或者unchanged。之后的NvM_WriteAll()将对RAM status为changed的NvM block进行存储。
  • 冻结帧(Freeze Frame)
    【有时也被称为快照数据(SnapShot)】

    • EXP:冻结帧(Freeze Frames)是指故障发生时环境的信息和故障产生处的数据,如传感器读取的数据,。
    • EXP:记录发生故障时的工况(SnapShot:由一些列的DID组成),当DTC状态位Confirmed位由0置为1时将记录snapShot。
      例如,可以环境温度、ECU供电电压等可能与故障相关的一些数据,用于后续的车辆故障分析。
    • EXP:快照是存储在ECU内存中DTC相关的某些数据的记录,快照常用来在系统故障发生时存储数据值,这些存储的数据-参数旨在帮助技术人员检修时减少错误的故障隔离操作;

《AUTOSAR谱系分解(ETAS工具链)》之总目录

注:本文转载自blog.csdn.net的PlutoZuo的文章"https://blog.csdn.net/PlutoZuo/article/details/131081493"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top