本篇文章主要详细介绍车辆控制器基于CAN的UDS诊断服务功能分析及测试项目的题和一些汽车的诊断参数相关的题,希望对各位都有所帮助的!
1、UDS功能的作用
-gt;离线检测。它写入数据并读取整个车辆是否存在故障。通过读取ECU信息,然后与生产系统中需要安装在车辆上的ECU信息进行比较,我们很快发现组件安装不正确的题以及传感器自学习和校准题。车辆离线等
-gt;内存和存储错误。可以存储和记忆汽车故障,实时提供汽车的各种运行参数。
-gt;错误恢复。外部诊断设备通过特定的诊断通信规则与ECU建立诊断通信,读取这些故障和参数,然后进行分析,供外部测试仪分析。
-gt;程序更新。控制器软件升级流程根据ISO14229的UDS协议定义。
2.UDS功能概述
UDS本质上是一种定向通信和交互协议,采用客户端/服务器模型,基本上是客户端发送请求消息,服务器根据请求消息进行响应。客户端通常意味着测试。仪器、服务器通常是电子控制设备。在UDS协议栈中,协议分为七个传统层,其中第七个应用层是OEM最感兴趣的层。根据协议类型的不同,有与所使用的通信协议相对应的诊断服务类型,UDS协议可以是UDsonCAN、UDsonLIN、UDsonIP等。
3.UDS功能服务
ISO14229-1协议定义了6种功能和26种服务。UDS功能服务主要依赖UDS消息中的各种信息。UDS消息格式是SID+SF+DID、SID、SID+SF、SID+DID消息的常用格式格式。
服务内SID的定义规则和规范如下表所示。
肯定响应SID+40;
阴性反应7F+SID+NRC;
-gt;SID0x10、0x11、0x27、0x28、0x3E、0x83、0x84、0x85、0x86、
-gt;SF主要用于传输数据量较大的业务,如更新程序、数据下载等。
网络层分为单帧和多帧,单帧SF是指CAN报文8字节以内可以处理数据。多帧是指CAN报文的一帧不能在8个字节内传输,必须将其分为第一帧FF、流控帧FC和连续帧CF进行处理。多帧信息传输。SF_DL是单个帧中的字节数,FF_DL是多个帧中的字节数。SN表示连续帧的序号第一帧为1,第二帧为2,第三帧为3,以此类推。FS代表流控制状态参数。例如0表示继续发送,1表示等待,2表示溢出。BS表示块的大小,即发送方一次可以发送多少个连续帧,00表示继续发送直到完成。-Stmin是等待传输两个连续帧的最短时间。
应用示例
测试人员请求22F190
ECU响应62F1903130353030303031323334353637383939。多帧传输的具体过程如下。
ECU响应第一帧。FF:101462F190313035
测试仪收到第一帧,发送流控帧300064
ECU接收流量控制帧并发送第一个连续帧。2130303030313233
10ms间隔后,ECU发送第二个连续帧。2234353637383939
-gt;DIDISO通用标准定义的DID,如F185、F190和用户自定义的DID。
-gt;NRC在ISO14229中,否定响应代码范围可以分为三个范围。0x00正响应参数值;
0x01~-gt;0x7F与通信相关的否定响应代码,0x80~0xFF针对特定条件的否定响应代码。适用于每项服务的NRC根据其特定功能而有所不同。例如,22个服务支持的NRC包括0x13、0x14、0x22、0x31、0x33等。所有NRC均参考ISO14229-1第325页。
示例22F190
否定响应,2FF19013
诊断和通信管理功能单元
$10-诊断会话控制
该服务要求ECU跳转到各种会话模式。它包含三个子功能01-基本、02-编程和03-扩展。
$11-ECU重置
该服务要求ECU执行重置。ECUReset请求参数的示例包括HardReset、KeyOffOnReset和SoftReset。
27美元-安全访
该服务用于为一些特殊的数据读写功能增加一层保护。通过SecurityAccess请求解锁和访受保护的功能和数据。
$28-通讯控制
该服务要求ECU控制通信行为。CAN总线上的ECU关闭和打开通信以提高通信速度。
$3E-待机握手
测试仪存在请求定期发送消息帧,以反映测试仪始终处于连接状态。
$85-控制诊断故障代码设置
该服务要求ECU停止/恢复DTC设置。例如,在程序更新过程中关闭和打开诊断可以防止在程序更新过程中报告丢失通信错误。
数据传输功能单元
$22-通过ID读取数据
该服务请求读取由DID参数标识的数据记录的值。
$2E-按ID写入数据
该服务允许将标识符指定的数据记录写入ECU内存。
存储数据传输功能单元
$14-清晰的诊断信息
您可以通过清除DTC格式来更改DTC状态。
$19-阅读DTC信息
诊断故障代码用于编码和识别检测到的动力系统相关和非动力系统相关的故障。
输入/输出控制功能单元
$2F-通过标识符控制输入和输出
该服务主要用于模拟输入值并控制ECU的输出。通常,该服务绕过ECU的应用软件,直接读取传感器数据或直接输出信号来控制负载。
日常功能单位
$31-日常控制
该服务用于维护和停止ECU内部例程。可以读取常规结果进行分析。例程由两字节例程标识符来标识。
功能单元上传下载
34美元-下载请求
该服务启动从测试仪到ECU的数据传输。当ECU准备好接收来自测试仪的数据时,它会发送一个肯定响应,其中包含可用于后续数据传输的块大小。
$35-上传请求
该服务启动从ECU到测试仪的数据传输。当ECU准备好向测试仪发送数据时,它会发送一个肯定响应,其中包含后续数据传输的块大小。
$36-数据传输
该服务用于在测试仪和ECU之间或ECU和测试仪之间传输数据。
$37-请求拒绝转账
该服务用于终止数据传输服务。
4.故障码错误代码
诊断错误代码是对错误类型的具体描述,标准列出了该错误代码的所有含义,用于在汽车发生故障时排除错误的位置和原因。一般情况下,OEM修改含义或信息,DTC消息占用3-4个字节,其中前2-3个字节如下,最后一个字节是DTC的状态字节。
每个DTC由DTC内容和DTC状态显示。
故障码含量
描述错误的具体错误信息。DTCHighByte和DTCMiddleByte两个字节表示错误代码。DTCLowByte的内容描述了错误类型和子类型。这部分内容在ISO15031-6的第122页有具体解释。是否添加该字节信息取决于您的项目并且是必需的。
故障码的详细解释如下。
1.DTC高字节
2.DTC高字节
00代表ISO标准定义的错误代码,01代表制造商定义的错误代码。
3.DTCHighByte表示故障所属子系统、OEM或Tier1本身定义的内容。
4、DTCMiddleByte表示具体的错误对象和类型,内容由OEM或Tier1自己定义。
故障码状态
它指示当前的故障状态,由8位组成,每一位代表不同的DTC状态信息。
是的
Bit0测试失败;如果待决DTC或已确认DTC设置为1,则DTC会将testFailed位设置为1。
Bit3验证DTC;如果verifyDTC=1且testFailed=1,则表示该DTC所代表的错误已经被存储在过去并且不再存在。如果verifyDTC=1且testFailed=0,则表示当前正在发送该DTC指示的错误。
5.如何测试UDS功能
UDS协议栈测试包括诊断服务测试项和错误码测试项,通常联合测试时需要在台架上设置错误码以及相应的输入条件,诊断服务测试通过CANOE工具测试。
-gt;CDD诊断数据库文件可以通过系统诊断规范文件的输出在CANdelaStudio环境中进行编辑,并导入CANOE工具中进行手动测试。
-gt生成一个自动化测试项目,通过CANdiva工具进行测试。
-gt;通过CAPL语言编写测试程序,进行自动化测试。
6.UDS功能测试
诊断消息格式测试
诊断消息长度测试
测试诊断消息响应时间
诊断信息阴性反应测试
诊断消息阳性测试
会话模式测试
安全模式测试
多帧信息传输测试
ECU硬件复位
清除错误信息
读取故障信息
读取信息和数据
创建信息和数据
通讯控制
汽车发动机数据流的基本参数有哪些?汽车发动机数据流的基本参数包括以下几个方面
1速度指发动机每分钟转数(通常以rpm为单位)。
2气门开度表示气门开度的程度,用于控制发动机进气。
3进气温度表示发动机进气处的空气温度,影响空气的密度和燃烧效果。
4冷却液温度表示发动机冷却液的温度,用于监测发动机的冷却状态。
5空燃比指气体混合物中空气与燃料的比例,影响燃烧效率和废气排放。
6油压表示发动机油路中用于润滑发动机部件的压力。
7排气温度表示发动机排气系统排出气体的温度,用于评价燃烧效率和排气部件的工作状况。
8错误代码表示发动机中各系统的错误代码,用于检测和诊断题。
这些参数可以通过汽车的OBD系统读取,并用于评估发动机的运行状况、排放和故障诊断。具体数据流参数可能因车型和发动机类型而异,但以上参数为典型的默认数据流参数。
汽车维修中计算机诊断的原理是什么?汽车维修计算机诊断的原理是通过计算机检测汽车的各种信号和参数,以确定汽车的运行状态和故障状态。具体来说,计算机诊断技术可以通过以下方式进行诊断
1、读取故障码通过使用电脑读取故障码,可以判断汽车故障的部位和原因。
2、数据流分析可以通过计算机读取汽车的各种数据流,分析汽车的运行状态和性能。
3、波形分析用计算机读取汽车的波形信号,可以分析汽车故障的原因。
4、参数设置通过电脑设置小车的参数,可以调整小车的运行状态。
5.编程计算机编程允许您升级汽车的控制装置并提高汽车的性能。
总之,计算机诊断技术是汽车维修中非常重要的技术,它可以通过快速、准确地识别故障部位和原因来提高维修效率和准确性。
No Comment