AUTOSAR DEM (二):DTC

AUTOSAR DEM (二):DTC

  • DTC与故障事件
  • DTC基本组成
  • DTC状态掩码

在章节一中提到了事件对应的DTC的状态变化。DTC是一种用来记录当某ECU发生或检测到某种故障时所呈现在大家目前的标识码,通过DTC便可以查表的方式获得该故障信息,如故障触发条件、故障解除条件、系统功能表现等。
在ISO-15031-6这个标准中规定了dtc的基本组成,DTC如何命名等信息。

DTC与故障事件

DTC(Diagnostic Trouble Code)

  • 定义:DTC是一种标准化的诊断故障码,用于识别和报告车辆或系统中的故障。每个DTC都有一个唯一的标识符,表示特定的故障类型。
  • 功能:DTC用于诊断系统中的故障,并提供关于故障的信息,如故障类型、严重程度、发生条件等。DTC可以通过诊断工具或故障指示灯等方式进行读取和显示。

故障事件(Fault Event)

  • 定义:故障事件是指系统中发生的故障或错误事件。它可以是由硬件故障、软件错误、传感器故障等引起的异常情况。
  • 功能:故障事件用于通知系统中的其他模块或外部设备发生了故障或错误。它可以触发相关的故障处理流程,如生成DTC、记录故障信息、通知用户等。

两者区别和联系

  • DTC是一种标准化的故障码,用于诊断和报告故障。它提供了关于故障类型和属性的信息。
  • 故障事件是指系统中发生的故障或错误事件,它可以触发相关的故障处理流程。
  • DTC通常与故障事件相关联。当发生故障事件时,DEM模块可以生成相应的DTC,并将其报告给其他模块或外部设备。
  • DTC可以用于故障诊断和故障排查,而故障事件可以用于故障处理和故障通知。
  • DTC是某类故障的统称,能够大体定位到某个模块的故障,而event则是故障监控的基本单元,能够定位某个模块中的某个具体故障;
  • 多个event可以mapping 同一个DTC;而同一个event不能mapping 多个DTC;
  • DTC可以直接可见,但Event需通过进一步手段才能看到,有时仅对ECU供应商可见;
  • DTC代表某类event集中表现,而event则是某个DTC的具体实例;
  • event的优先级决定了DTC的优先级;
  • event之间的依赖关系决定了DTC的依赖关系;
  • DTC的状态位是其map的所有event的状态位的或集;

以下是一个示意图,展示了DTC和故障事件之间的关系:

+------------------+               +-----------------+
|    DTC           |               |  故障事件        |
|                  |               |                 |
| - 唯一标识符       |               | - 发生条件       |
| - 故障类型        |               | - 故障处理流程    |
| - 严重程度        |               | - 通知其他模块    |
| - 发生条件        |               | - 生成DTC        |
|                  |               |                 |
+------------------+               +-----------------+

需要注意的是,具体的DTC和故障事件的定义和属性可以根据系统设计和应用需求进行配置和扩展。在实际应用中,需要根据具体情况进行选择和配置,以满足系统的故障诊断和处理要求。

DTC基本组成

ISO 14229-1的故障诊断码格式规定,故障码信息由四字节组成
在这里插入图片描述
DTCHighByte,DTCMiddleByte,DTCLowByte表示服务中的故障诊断码,是高16位、中8位,和DTC code & 0xFF生成的;
StatusOfDTC表示故障码状态。
DTCHighByte,DTCMiddleByte两字节表示故障内码,对应5位标准故障码
在这里插入图片描述
第1位是字母,后面4位是数字,如P0120
第一位字母表示故障所属系统,我们把汽车系统分为四大类。分别是动力,底盘,车身,网络通信,分别用PCBU表示。
在这里插入图片描述
第二位数字是0、1、2或3表示故障类型,意义如下:“0”代表SAE(美国汽车工程师协会)定义的通用故障码;“1”代表汽车厂家定义的扩展故障码;“2”或“3”表示预留故障码 。
在这里插入图片描述
第三位字符表示故障所属的子系统。
最后两位数字表示具体故障对象和类型。
DTCLowByte描述故障种类和子类型,该部分内容描述需遵循ISO 15031-6。对于不需要该字节信息的DTC,该字节填充为0x00。

DTC状态掩码

基础概念

  1. Test:在线诊断算法,该算法决定系统的故障状态。一个算法对应于一个唯一DTC,非连续性测试在一个监控周期内仅运行一次,连续测试在每次循环中进行调用,可以是毫秒级的;
  2. Failure:系统不能满足功能,则为一个故障。
  3. Monitor:可以是一个test也可由多个test组成,用于决定系统故障状态;
  4. Monitoring cycle:由设备制造商定义,在这个周期下Test可以运行。当然制造商也可定义其它的周期,只要这个定义满足法规要求;
  5. Complete:在当前监控周期内,test决定是否有故障存在的一种指示。(不仅指failed);
  6. Operation Cycle:操作循环定义了从监控运行的开始和结束条件。一个操作循环内,监控循环可能运行多次;一个ECU可能支持多个操作循环;对于车身、底盘相关ECU,由制造商定义一个操作循环(如power up到power down或ignition on到ignition off);排放相关的ECU使用engine-running or engine-off时间周期来定义一个操作循环(也称作driving cycle),其由法规来定义
  7. Pending:Failure的pending状态定义为:在当前操作循环或上一个完成的操作循环内,测试结果为"Failed"; 一旦该故障在一个完整操作循环内测试结果为"Passed", 则复位;
  8. Aging Threshold:老化阈值,测试未报Failed的操作循环次数;满足某个标准,如warm-up cycles, 老化计数器开始计数,达到阈值后将DTC从non-volatile内存中清除,confirmed位从1变为0;
    DTC状态位定义
bitDTC状态描述
0TestFailed最近执行测试的结果,Failed则置"1";最近测试通过(pass)或发送清故障码(14)服务则置"0"。
1TestFailedThisOperationCycle在当前操作循环内的测试结果,该操作循环内只要发生过Failed,则置"1"; 开始新的操作循环或发送清故障码服务后,置"0";
2PendingDTC在当前操作循环或上一个完成的操作循环内,测试是否报告过"Failed"; 该状态位只在测试运行和操作循环完成且在该操作循环内从未"Failed"过或发送清故障码(14)服务后才置0;如果在当前操作循环内未完成测试,则状态不变。例如,若设定确认DTC后监测程序停止运行,则pendingDTC(待定DTC)须保持为’1’。对于OBDDTC,在第一个行驶循环检测到故障后,需将其保存为待定DTC。
3ConfirmedDTC表示故障是否检测到了足够的故障次数让DTC存储到long-term memory,若足够,则置"1"; 其为1的时候并不意味着此刻故障存在;发送清除故障码或达到老化阈值则置"0";
4TestNotCompletedSinceLastClear表示一个DTC测试从上次清故障码开始,是否运行过或完成过测试;若没有,则置"1";否则置"0";清故障码置"1";
5TestFailedSinceLastClear表示一个DTC测试从上次清故障码开始,是否测试失败过;若没有,则置"0";否则置"1";清故障码置"0";
6TestNotCompletedThisOperationCycle表示一个DTC测试在当前操作循环内是否运行完成;若没完成,置"1";否则,置"0"; 开始新的操作循环或清故障码后则置"1";
7WarningIndicatorRequested报告与特定DTC相关的任何警告指示器的状态;没有警告,则置"0",有警告,则置"1";如果有警告,则confirmedDTC也应设置为1;清故障码或满足制造商定义的要求,则置"0";

在这里插入图片描述
上图解释:

  • 0 发送清故障码服务后,各状态位进行初始化;
  • 1, 2 在完成测试时,bit6,4状态均由1变为0;
  • 3, 4, 5, 6 测试结果Failed时,bit0,1,2,5状态均从0变为1;
  • 7, 8 测试结果Failed时,bit0为1,测试结果Passed时,bit0为1;
  • 9, 10, 12 开始一个新的操作循环,bit1变为0;bit5先变成1,待测试完成再变成0;
  • 11 开始下一个操作循环时,该位是否保持上一个操作循环的结果由制造商定义;
  • 13, 14, 15 在第二个循环中再次测试Failed,bit0,1,3变为1

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Rabbitmq的Federation Exchange

(broker 北京 ) , (broker 深圳 ) 彼此之间相距甚远,网络延迟是一个不得不面对的问题。有一个在北京的业务(Client 北京 ) 需要连接 (broker 北京 ) ,向其中的交换器 exchangeA 发送消息,此时的网络延迟很小,(C…

服务器安全-修改默认ssh端口

防火墙先打开指定端口,要不修改后连不上(端口需要在65535之内) firewall-cmd --list-ports firewall-cmd --add-port54111/tcp --permanent firewall-cmd --reload-------------------- 先让两个端口同时存在,等配置成功后关闭22端口 vim /etc/ssh/sshd_config重启sshd service…

【C语言】16-函数-2

1. 函数的嵌套调用 C 语言的函数定义是互相平行、独立的,也就是说,在定义函数时,一个函数内不能再定义另一个函数,即不能嵌套定义,但可以嵌套调用函数,即在调用一个函数的过程中又调用另一个函数,如下图所示: 其执行的流程为: 执行 main 函数的开头部分遇函数调用语句…

格子游戏——并查集

Alice和Bob玩了一个古老的游戏:首先画一个 nn 的点阵(下图 n3 )。 接着,他们两个轮流在相邻的点之间画上红边和蓝边: 直到围成一个封闭的圈(面积不必为 1)为止,“封圈”的那个人就是…

leetcode739. 每日温度 单调栈

自己思路: 想到用两个栈,一个维护元素、另一个维护下标。但是还是无法处理有重复元素的问题(用哈希表来存储的时候)。所以就看了答案的思路。 答案思路: 从前往后遍历,维护一个单调栈。栈存放数组的下标。…

css background实现四角边框

2023.8.27今天我学习了如何使用css制作一个四角边框,效果如下: .style{background: linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) right top,linear-gradient(#33cdfa, #…

【Debug】解决RecursionError: maximum recursion depth exceeded in comparison报错

🚀Debug专栏 目录 🚀Debug专栏 ❓❓问题: 🔧🔧分析: 🎯🎯解决方案: ❓❓问题: 循环中报错RecursionError: maximum recursion depth exceeded in compari…

electron globalShortcut 快捷键,在焦点移到其他软件上时,调用快捷键报错

用 electron 开发软件,在设置了 globalShortcut 快捷键后,在当前开发的软件上调用快捷键正常,但是当焦点不在当前软件时,在使用快捷键,好些时候会报错。大概率与系统快捷键产生冲突或者快键键控制的回调里获取的内容&a…

云计算 - 百度AIStudio使用小结

云计算 - 百度AIStudio使用小结 前言 本文以ffmpeg处理视频为例,小结一下AI Studio的使用体验及一些避坑技巧。 算力获得 免费的算力获得方式为:每日登录后运行一个项目(只需要点击运行,不需要真正运行)即可获得8小…

Python爬虫异常处理实践:处理被封禁和网站升级问题

在这篇文章中,我们将一起探讨Python爬虫异常处理实践,特别关注处理被封禁和网站升级问题。让我们一起来看看如何解决这些问题,提高我们爬虫程序的稳定性和可靠性。   首先,我们要了解为什么会遇到这些问题。网站封禁爬虫的原因主…

广州华锐互动:VR垃圾分类虚拟科普系统让学习过程更加丰富有趣

在我们的日常生活中,垃圾分类已成为一项重要的公民责任。然而,由于缺乏对垃圾分类的深入理解和相关知识,许多人在实践中往往感到困惑和挫败。为了解决这个问题,一种创新的解决方案应运而生:垃圾分类VR虚拟仿真教学系统…

【校招VIP】前端算法考察之排序

考点介绍: 不同的场景中,不同的排序算法执行效率不同。 稳定:冒泡、插入、归并 不稳定:选择、快速、堆排序、希尔排序 『前端算法考察之排序』相关题目及解析内容可点击文章末尾链接查看! 一、考点题目 1、使用js实…

科大讯飞永久免费GPT入口来了!!!

讯飞GPT永久免费使用入口注册链接:讯飞星火认知大模型-AI大语言模型-星火大模型-科大讯飞。 登录讯飞账号后,点击进入体验。 进入体验页面后,选择景点推荐。 笔者让其写一篇关于讯飞GPT介绍的文案。 讯飞GPT是一款由讯飞公司推出的人工智能语…

【算法专题突破】双指针 - 盛最多水的容器(4)

目录 1. 题目解析 2. 算法原理 3. 代码编写 写在最后: 1. 题目解析 题目链接:11. 盛最多水的容器 - 力扣(Leetcode) 这道题目也不难理解, 两边的柱子的盛水量是根据短的那边的柱子决定的, 而盛水量…

MySQL项目迁移华为GaussDB PG模式指南

文章目录 0. 前言1. 数据库模式选择(B/PG)2.驱动选择2.1. 使用postgresql驱动2.1. 使用opengaussjdbc驱动 3. 其他考虑因素4. PG模式4.1 MySQL和OpenGauss不兼容的语法处理建议4.2 语法差异 6. 高斯数据库 PG模式JDBC 使用示例验证6. 参考资料 本章节主要…

配置uniapp调试环境

目录 uni-app介绍 uni-app开发工具HBuilderX 创建项目前提条件 uni-app项目结构 配置mumu模拟器 uni-app生命周期 1.应用生命周期 小程序规范 2.页面生命周期-小程序规范 3.组件生命周期 vue规范 uni-app登录按钮方法 uni-app发布安卓app uni-app介绍 uni-app 是一个…

JavaScript设计模式(二)——简单工厂模式、抽象工厂模式

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,正逐渐往全干发展 📃个人状态: 研发工程师,现效力于中国工业软件事业 🚀人生格言: 积跬步…

ASUS华硕天选4笔记本电脑FA507XV原厂Windows11系统22H2

天选四FA507X原装系统自带所有驱动、出厂主题壁纸LOGO、Office办公软件 华硕电脑管家、奥创控制中心等预装程序,恢复出厂状态W11 链接:https://pan.baidu.com/s/1SPoFW7wR5KawGu-yMckNzg?pwdayxd 提取码:ayxd

开源与可持续发展:环境友好的技术选择

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

【数据结构大全】你想要的都有,数组、链表、堆栈、二叉树、红黑树、B树、图......

目录 1.概述 2.线性结构 3.时间复杂度 4.查找算法 5.树 6.图 1.概述 博主之前写过一个完整的关于数据结构的系列文章,一共十三篇,内容包含,数组、链表、堆栈、队列、时间复杂度、顺序查找、二分查找、二叉树、二叉搜索树、平衡二叉树、…