$19服务:DTCStatusMask和statusofDTC bit 定义

news2025/7/9 0:40:04

诊断协议那些事儿

诊断协议那些事儿专栏系列文章,当ECU产生DTC时,我们只知道有故障发生了,并不清楚该故障什么时候发生,现在是否已经恢复、发生过几次,恢复过几次等信息,基于此ISO发布的14229-1使用DTC状态位这一概念来得描述上述信息,使我们对该故障的产生以及恢复有个清晰的认识,便于我们快速定位问题所在。本文将介绍UDS中DTC信息的最后一个byte解析:StatusofDTC位的定义,供19服务ReadDTCInformation使用。每个服务器都应遵守本文中定义的DTC状态信息的约定。
DTC
关联文章:19服务List


文章目录

  • 诊断协议那些事儿
  • 术语解释
  • DTCofStatus bit
    • DTC Status bit0定义
    • DTC Status bit1定义
    • DTC Status bit2定义
    • DTC Status bit3定义
    • DTC Status bit4定义
    • DTC Status bit5定义
    • DTC Status bit6定义
    • DTC Status bit7定义
  • DTC状态位操作示例


术语解释

Test-测试:测试是确定部件或系统(通常为单个操作周期内)故障状态的车载软件算法。它通常在单个运行周期内确定组件或系统的故障状态。有些测试在一个运行周期内只运行一次。其他测试可以运行每个程序循环,每几毫秒采样一次。测试的最终结果代表完全matured/qualified 成熟/合格的条件(即,通过或故障)。这意味着,需要在特定时间内进行故障条件或在考虑组件之前评估额外的合理性检查的测试,只有在所有 maturation criteria 成熟标准都得到满足后,才会返回“Failed”条件。每个DTC都与代表可检测故障症状的测试相关联。

Test results∶当测试运行或完成后,它可能会向内部故障处理程序指示以下结果之一∶
PreFailed∶ECU中的测试可以使用此状态来指示测试当前正在成熟的故障条件。此信息的一个用例是在制造中加速故障检测以优化工作流程,同时保持现场容错。
Failed∶此状态在测试运行完成后可用,并指示一个完全成熟的故障条件。
Passed∶ 此状态在测试运行完成后可用,并指示系统或组件未出现故障。

操作周期:操作循环规定了监测程序运行的起止状态。一个操作循环内可能包含多个监测周期(不论其测试结果)。ECU支持的操作循环由多种形式体现,由制造商规定(如,ECU上电至断电,电火至熄火)。根据发动机运行或停机间隔时间确定排放相关动力系统ECU操作循环,又称行驶循环。
Driving cycle驾驶循环/周期∶用于排放相关ECU的特定类型的运行周期。

DTCofStatus bit

每一个DTC均有对应的DTC状态位,该DTC状态位由一个字节表示,每个bit都有其重要含义,具体解释如下图所示:
DTCofStatus
Bit0: 请求时刻测试结果为失败;
Bit1: 在当前点火循环至少失败过1次;
Bit2: 在当前或者上一个点火循环测试结果不为失败;
Bit3: 请求时刻DTC被确认,一般确认是在一个点火周期内发生错误1次;
Bit4: 自上次清除DTC之后测试结果已完成,即测试结果为PASS或者FAIL结果;
Bit5: 自上次清除DTC后测试结果都不是FAIL;
Bit6: 在当前点火周期内测试结果已完成,即为PASS或FAIL状态;
Bit7: ECU没有得到点亮警示灯请求;

DTC Status bit0定义

规定了DTC状态第0位:testFailed(测试不合格)
bit0
bit_0

DTC Status bit1定义

规定了DTC状态第1位testFailedThisOperationCycle(本操作循环中测试不合格)
bit1
bit_1

DTC Status bit2定义

规定了DTC状态第2位pendingDTC(待定DTC)
bit2
pendingDTC

DTC Status bit3定义

规定了DTC状态第3位confirmedDTC(已确认DTC)
bit3
bit_3

DTC Status bit4定义

规定了DTC状态第4位testNotCompletedSinceLastClear(自上次清除后测试未完成)
bit4
bit_4

DTC Status bit5定义

规定了DTC状态第5位testFailedSinceLastClear(自上次清除后测试不合格)
bit5
bit_5

DTC Status bit6定义

规定了DTC状态第6位testNoCompletedThisOperationCycle(本操作循环中测试未完成)
bit6
bit_6

DTC Status bit7定义

规定了DTC状态第7位WarningIndicatorRequested(请求警告指示灯)
bit7
bit_7
1.WarningIndicatorOnCriteriaFullfilled(报警指示灯亮且达到标准要求)=特定DTC有报警指示灯,且(confirmedDTC(已确认DTC)=1或达到车辆制造商或实施程序规定的报警指示灯启用标准)

DTC状态位操作示例

下图为两个操作循环中,排放相关OBD DTC状态位的操作处理。
dtc
0:收到清除诊断信息请求——DTC状态字节初始化
1-2:相关诊断监测程序报告合格样本数量满足DTC合格要求——testNotCompleted(未完成测试)位(bit4和bit6)从1转换为0,表明已完成监测程序且操作循环1中自上次清除后,DTC已准备就绪。
3-6:相关诊断监测程序报告不合格样本数量满足DTC不合格要求——testFailed(测试不合格)(bit0从1转换为0)、testFailedThisMonitoringCycle(本监测周期内测试结果为不合格)、pendingDTC(待定DTC)和testFailedSinceLastClear(自上一次清除后测试结果为不合格)位均从0转换为1,表明已检到出故障但在两个操作循环期间未得到确认。
7:相关诊断检测程序报告合格样本数量满足DTC合格要求——testFailed(测试不合格)位从1转换为0,表明当前不存在有效故障。
8:相关诊断检测程序报告不合格样本数量满足DTC不合格要求——testFailed(测试不合格)位从0转换为1,表明操作循环1内已重复检测到故障。
9-10:操作循环1结束,操作循环2开始,testFailedthisOperationCycle(本操作循环中测试结果不合格)从1转换为0,且testNotCompleteThisOperationCycle(本操作循环未完成测试)从0转换为1.由制造商决定是否在操作循环即将结束时或新循环即将开始时进行重置。
11:新操作循环开始后(由制造商规定从操作循环1过渡至操作循环2的过程中是否保持testFailed(测试不合格)状态),相关诊断监测程序报告合格测试数量已达到DTC合格要求——testFailed(测试不合格)位转换为0.
12:新操作循环开始后,相关诊断监测程序报告合格样本数量满足DTC合格要求——testNotCompleteThisOperationCycle(本操作循环未完成测试)位从1转换为0,表明在新操作循环内至少已完成了一次监测。
13-14:相关诊断监测程序报告不合格样本数量满足DTC不合格要求——testFailed(测试不合格)和testFailedThisMonitoringCycle(本监测周期内测试结果为不合格)位从0转换为1,表明在新操作循环内已检测到故障。
15:confirmedDTC(已确认DTC)位从0转换为1,表明上一操作循环内检测的相关故障仍然存在。
16:DTC状态切换至confirmedDTC(已确认DTC)时tripCounter(故障监测诊断器)调至2,并立即重置为0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/18316.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]SSM计算机毕业设计志愿者管理系统论文2022JAVA

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【VTK+有限元后处理】可视化结果云图

构建vtkUnstructuredGrid对象 为了读取不同格式的有限元计算结果文件,我们先写一个FEDataModel类来管理有限元的几何拓扑和属性信息。 class FEDataModel:"""有限元数据模型类"""def __init__(self):self.nodes [] # 节点几何坐标…

斐波那契数列和斐波那契数

一、什么是斐波那契数列 斐波那契数列(Fibonacci sequence),又称黄金分割数列,因数学家莱昂纳多斐波那契(Leonardo Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这…

【考研复试】计算机专业考研复试英语常见问题三(个人选择/学业规划篇)

相关链接: 【考研复试】计算机专业考研复试英语常见问题一(家庭/家乡/学校篇)【考研复试】计算机专业考研复试英语常见问题二(研究方向/前沿技术/本科毕设篇)【考研复试】计算机专业考研复试英语常见问题三&#xff0…

C++---哈希

目录 1. unordered系列关联式容器 1.1 unordered_map 1.1.1 unordered_map的介绍 1.1.2 unordered_map的接口说明 1.2 unordered_set 2. 底层结构 2.1 哈希概念 2.2 哈希冲突 2.3 哈希函数 2.4 哈希冲突解决 2.4.1 闭散列 2.4.2 开散列 3. 封装unorder_map和unord…

MySQL增删改查进阶 — 表的设计

文章目录表的设计1.设计思路2.实体固定关系的套路2.1 一对一关系2.2 一对多关系2.3 多对多关系3.总结表的设计 表的设计实际上要做的工作就是明确一个程序里,需要使用几个数据库,几个表,表里都有哪些列。 1.设计思路 先明确实体再明确实体…

6. Design A Web Crawler

title: Notes of System Design No.10 — Design a Web Crawler description: ‘Design a Web Crawler’ date: 2022-05-13 18:01:58 tags: 系统设计 categories: 系统设计 00. What is Web Crawler? Q :uh just for now lets just do html pagesbut your web cr…

Explaining Deepfake Detection by Analysing Image Matching 翻译

点击查看对应的代码 摘要 本文旨在解释深度伪造检测模型在仅由二进制标签做有监督时如何学习图像的伪迹特征。为此,从图像匹配的角度提出如下三个假设。1、深度伪造检测模型表明基于视觉概念的真/假图片既不与源图片相关也不与目标图片相关而是与伪迹图片相关。2、…

全链路压测效能10倍提升的压测工具实践笔记

背景 创业型公司或创新型项目往往团队资源有限,人员能力水平有限,难以投入专业自动化压测人员; 同时部分业务(tob/toc场景)长期有中小型活动场景带来小规模流量并发,需要产研能长期保障并及时感知和解决网…

GitHub Star70K登顶,字节内部数据结构与算法笔记,限时上线

为什么学算法 不得不说,现在几乎所有的大厂,比如Google、字节、BAT,面试的时候都喜欢考算法、让人现场写代码,那你有没有真正地想过,为什么这些大公司都喜欢考算法呢? 经常有人说,程序员35岁之…

Java毕业设计MVC:基于SSM实现计算机硬件评测交流平台

作者主页:编程千纸鹤 作者简介:Java、前端、Pythone开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发、毕业设计开发、面试技术整理、最新技术分享 收藏点赞不迷路 关注作者有好处 项目编号&…

(杂)网易云歌单导入到apple music

喜欢apple music的简洁,就想着把网易云的歌单捣鼓进去。 获取歌单歌曲列表:https://yyrcd.com/n2s/ 转移歌单:https://soundiiz.com/zh/,首次使用需要注册,免费版只能一次导入200首。 平台选择apple music 登录授权即可…

Linux下 man命令的使用 及 中文man手册的安装

文章目录1. man命令使用2. 安装中文man手册1. man命令使用 man命令是Linux下最核心的命令之一。而man命令也并不是英文单词“man”的意思,它是单词manual的缩写,即使用手册的意思。man命令会列出一份完整的说明。其内容包括命令语法、各选项的意义及相关…

第三章 线性模型

3.1 基本形式 给定由d个属性描述的示例x(x1; x2; x3; … ; xd)。线性模型试图学得一个通过属性的线性组合来进行预测的函数,即 3.2 线性回归 线性回归试图学得一个线性模型尽可能准确地预测实值输出标记。 对于如何确定w和b,均方误差是回归任务中最常…

这样做时间轴,让你的PPT更出彩!

文章目录**▌方法一:美化时间节点****▌方法二:利用图片中的“轴”****▌方法三:时间轴不一定需要“轴”****▌方法四:把时间轴拆成数页****▌总结**已剪辑自: https://zhuanlan.zhihu.com/p/56672211 嗨,大家好&#…

【Linux】一万七千字详解 —— 基本指令(二)

文章目录前言man 指令cp 指令mv 指令echo 指令(含输出重定向)cat 指令(含输入重定向)wc 指令more 指令less 指令head 和 tail 指令(含管道用法)date 指令cal 指令sort 指令find 和 which 和 whereis 指令alias 指令grep 指令top 指令zip 和 unzip 指令结语前言 今天的主要内容…

C语言源代码系列-管理系统之学生选修课程系统

往期文章分享点击跳转>《导航贴》- Unity手册,系统实战学习点击跳转>《导航贴》- Android手册,重温移动开发 👉关于作者 众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过…

想归隐啦——与自然生活为伴

目录 一、陶渊明-桃花源记 二、梭罗-瓦尔登湖 结庐在人境,而无车马喧。问君何能尔?心远地自偏。采菊东篱下,悠然见南山 一、陶渊明-桃花源记 晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹…

第五届“传智杯”全国大学生计算机大赛(练习赛)传智杯 #5 练习赛] 平等的交易

[传智杯 #5 练习赛] 平等的交易 题目描述 你有 nnn 件道具可以买,其中第 iii 件的价格为 aia_iai​。 你有 www 元钱。你仅能用钱购买其中的一件商道具。当然,你可以拿你手中的道具换取其他的道具,只是这些商道具的价值之和,不…

Vuecli项目结构,及组件的使用

根目录文件介绍 node_modules :管理项目中使用的依赖 public:存放一些静态资源,webpack打包时会放入dist文件夹内。 src:书写vue源代码【重点】 .gitignore :存放需要被git忽略文件(不需要保存)…