ECU诊断软件设计(1)
诊断功能和应用
所有的电控单元都应具备诊断功能。诊断功能包含内部诊断功能和服务处理功能。
内部诊断功能即为电控单元初始化或关闭时的故障自检测和连续故障自检测;
服务处理功能则有诊断故障代码获取、输入/输出控制、安全访问、数据获取、程序控制、刷新等。
没有电控单元应用功能的支持,大部分诊断功能将无法起作用,即诊断服务需要电控单元内提供特定的功能。反之亦然,在某些情况下,诊断功能可能会被应用功能限制。例如,为确保安全和防止输入 /输出控制服务时的零件损坏,电控单元应执行必要的限制。
诊断应用是指支持诊断服务的抽象功能模块。当电控单元的诊断服务层从非车载测试工具接收到一个有效的诊断服务请求时,电控单元将激活处于服务层上层的诊断应用中的诊断功能,以处理该服务请求。
诊断ECU类型
依据对故障自检测结果不同的处理方式,电控单元可分为两类:
A 类电控单元:该类电控单元根据自检测结果判断是否产生故障,并存储相应的故障信息。
B 类电控单元:该类电控单元根据自检测结果判断是否产生故障,并将故障的状态信息发送给A 类电控单元。A类电控单元视为B类电控单元的主节点。故障信息的存储由主节点完成。 A类电控单元应支持可与测试工具交互的诊断通信协议。诊断通信协议推荐采用基于CAN总线的统一诊断服务。 故障信息存储于A类电控单元的B类电控单元,可以不支持诊断通信协议,但其输入/输出状态信息应支持由主节点进行读取和输入/输出控制,且其功能配置要求应通过对主节点进行配置来实现。如果B 类电控单元接入CAN总线,则必须支持“安静模式”功能(即必须支持功能寻址模式的诊断服务10(子功能:默认会话和刷新会话)、11(子功能:硬复位)和3E在线功能
诊断设计:
一般装有微处理器控制单元的汽车,都具有故障自诊断系统。可以用它来对汽车内传动系统、控制系统备各部分工作状态进行自动检查和监测。当汽车出现故障时,装在仪表板上的故障指示灯就会闪亮以警告车主汽车可能出问题了,按一下按钮,故障代码就在仪表板上显示出来。故障自检测是指电控单元在运行应用软件时所执行的全部检测。 所有电控单元都应持续地进行故障自检测,以监控功能运行状态下的异常事件(错误)。如果检测到的故障被视为潜在危险,为确保安全,必须采取必要的措施。
如果某故障是用户可感知的,对系统或整车性能是不利的,或是法规要求的,则电控单元应将检测到的故障设置为相应的诊断故障代码。 诊断故障代码的设置应基于失效模式影响分析来确定。电控单元内单一的故障,应设置为记录于该 电控单元内的单一的诊断故障代码。如果多个电控单元物理连接到同一个线路,则它们应设置相同的诊断故障代码。 电控单元的诊断故障代码应在其开发阶段早期定义,并且应确保不仅覆盖到电控单元本身,还覆盖到与电控单元相连的系统。每个诊断故障代码的根本原因都应在零件故障管理规范中详细说明。 所有与法规相关的诊断故障代码必须符合ISO 15031-6标准的规定。下面为诊断软件设计的具体要求:
运行条件
当电控单元的某功能处于运行状态时,则相关的故障自检测也应运行;当该功能处于待命状态时, 则故障自检测也应进入待命状态。 所有故障自检测的执行应无需任何激活操作(例如:操作按钮)。 执行任何诊断服务时,除非这些服务有意改变或停止正常的操作,则尽管诊断服务处于运行状态, 电控单元应继续执行正常的操作。全局信号要求
一些用于诊断功能的全局信号,应通过整车网络广播至所有的电控单元。信号应包含但不限于如下所列: a) 点火状态,包括KL.R, KL.15, KL.50; b) 发动机运行状态; c) 里程读数; d) 发动机冷却液温度(只应用于动力总成)。故障自检测的范围,应包含但不限于如下所列(由失效模式影响分析确定):
a) 法规确定的条件。
b) 电控单元内部错误。
c) 网络监控错误。
d) 输入/输出线路的开路或短路情况。
e) 超出线路正常运行范围的错误信号。
f) 影响或限制系统性能的情况。
g) 可引起用户对性能问题感知的异常情况。
h) 迫使系统以失效安全模式运行的情况。电控单元初始化或关闭时,应执行故障自检测,并且故障自检测应包含但不限于如下所列:
a) RAM 检查
b) ROM/EEPROM/Flash 检查
c) 输入/输出检查
电控单元初始化时检测到的任何故障,都应设置诊断故障代码。如果该故障被视为潜在危险,为确保安全,必须采取必要的措施。连续故障自检测
处于运行状态时,所有电控单元都应持续地执行故障自检测。总检测时间
初始化和一次所有故障自检测的完整运行的总检测时间,应不超过3s。如果需要更多的时间,或任何形式的激活,或其它不得不满足的条件,则应首先获得诊断工程师和电控单元设计发布工程师的认可。
ECU诊断软件设计(1)相关推荐
- 焊接过程中数据采集管理软件设计与应用综述
原创声明: 未经授权.禁止转载和复制 目 录 1. 焊接制造的发展 2. 焊接制造过程数据采集 2.1 焊接过程中电压和电流信号采集 2.2 焊接温度信息采集 2.3 焊接声音信号采集 ...
- 安全软件秘诀——根据ISO / DIS 26262开发ECU基础软件
原文链接:Recipe for Safe Software 安全软件秘诀 根据ISO / DIS 26262开发ECU基础软件 随着新的ISO 26262标准的引入,安全相关功能的要求变得比以前更加具 ...
- 汽车ECU诊断技术概念介绍
ECU(Electronic Control Unit)是电子控制单元的简称.从用途上来说就是汽车专用的微型计算机.现代汽车的功能越来越丰富,汽车上的各个子系统都需要功能强大的ECU来控制本系统的工作 ...
- 真题详解(DNS)-软件设计(六十三)
真题详解(有向图)-软件设计(六十二)https://blog.csdn.net/ke1ying/article/details/130443040 顺序存储:元素和存储空间相对位置来表示数据元素之间 ...
- 系统架构设计师-基于架构的软件设计
简介 基于架构的软件设计(Architecture-Based Software Design,ABSD)是一种架构驱动方法.这种方法有 3 个基础: (1)功能的分解.在功能分解中,ABSD 方法使 ...
- 多核片上系统(SoC)架构的嵌入式DSP软件设计
多核片上系统(SoC)架构的嵌入式DSP软件设计 Multicore a System-on-a-Chip (SoC) Architecture SoCs的软件开发涉及到基于最强大的计算模型在各种处理 ...
- 软件设计之 数据库设计
[按语:在软件设计或是动态网站开发中,数据库设计时很重要,我觉得可以说是开发工作的核心部分,所以学好数据库设计,是很重要的,也是大有前途的...] ◆.概念 首先要搞清楚容易混淆的两个概念:&quo ...
- 概要设计实例_多核片上系统(SoC)架构的嵌入式DSP软件设计
多核片上系统(SoC)架构的嵌入式DSP软件设计 Multicore a System-on-a-Chip (SoC) Architecture SoCs的软件开发涉及到基于最强大的计算模型在各种处理 ...
- 由学习《软件设计重构》所想到的代码review(二)
前言 对于一个程序员来讲如何来最直接的来衡量他的技术能力和产出呢?我想最直观的作法是看他的代码编写能力,就拿我经常接触的一些程序员来看,他们买了很多技术重构类书籍,但是看完后代码编写能力并没有显著提高 ...
最新文章
- R语言基于MASS包中的shuttle数据集以及neuralnet包构建神经网络模型
- php学习_第6章_PHP的语言结构
- EPSON机器人SPLE+语言_简单实例
- 手摸手,带你用 vue 动画实现原生 app 切换效果,丝滑般的体验
- 【搜索引擎Jediael开发笔记2】使用HttpClient下载网页至本地文件
- C# 特性(attribute)
- JavaScript发布订阅者模式
- jqGrid细节备注—jqGrid中自定义格式,URL格式
- webpack4 es6转换
- 可替换元素和非替换元素
- Corn Fields——POJ3254状态压缩Dp
- php顺序查找法,php二分查找、顺序查找算法
- linux的jar命令不能使用,经常使用的linux下jar包管理命令
- nginx部署vue前端,刷新出现404或者500错误的解决方案
- Ajax Sample
- Python Class System
- HTML网页设计:七、表格
- 计算机键盘快速指南,菜鸟必看 Windows键盘快捷键入门指南
- nvidia卸载程序无法继续运行_win10系统下nvidia安装程序无法继续不兼容的解决办法_nvidia显卡驱动与系统不兼容...
- 机器学习及深度学习技术在海洋科学方面的应用
热门文章
- Git 详细教程之一: Git 简介及其基本工作原理
- GB/T 25000.51-2016解读系列之产品说明要求
- WHUT(大学语文)1000分钟,脚本挂刷方法
- finecmsV5.0.8 \finecms\dayrui\controllers\Api.php getshell
- 调试工具(三):trace32
- matlab 不允许函数定义,求解决: 错误: 此上下文中不允许函数定义。
- 时代中的软件开发:基于BS架构的低代码
- MSN -- AIR客户端
- 浏览器内javascript 转换gbk文本到UTF8编码(chrome, firefox only)
- Kaiser窗口FIR滤波器设计估算参数