基于UDS的车载ECU诊断设计与测试方法研究
2020-09-10代士青江芹
代士青 江芹
摘要:诊断功能是指在车辆运行过程中,电控单元不断监控系统的工作情况,当发生故障时判断出具体的故障,以代码形式(DTC)存储下来,还可以记录故障时的车辆关键信息以便高效解決故障。文章将基于 UDS 诊断服务对车载ECU进行诊断设计与测试方法的应用研究。
关键词:诊断功能;ECU;UDS
中图分类号:U463.6 文献标识码:A 文章编号:1674-957X(2020)24-0168-02
1 UDS诊断服务介绍
在ISO 14229-1指定的25种统一诊断服务选取,可以分为六个功能单元,分别为:诊断和通信管理、数据传输、存储数据传输、输入输出控制、例程控制、上传/下载。
2 UDS的诊断系统设计
ECU在进行诊断系统设计时,并不要求ECU要开发所有的在文中提到的功能服务,而是需要根据各公司ECU的系统功能需求选择性的开发;UDS诊断服务是根据特有的诊断CAN报文来实现的。以下根据实际项目经验详细描述ECU常用的UDS服务和诊断CAN报文参数。
2.1 故障读取与清除服务
车辆故障时,通过自诊断功能检测到系统部件故障,然后将故障的信息以代码的形式存储在ECU中,外部设备(诊断仪等)可以根据0x19服务读取该故障信息,方便维修员分析故障原因,排除故障;同时故障排除后可以通过0x14服务清除历史故障。
2.2 读取写与入参数服务
ECU中存在大量车辆、ECU本身信息,在诊断过程中可能会调取对照进行故障锁定,此时需要 0x22 服务,读取 ECU 中特定的变量值。例如ECU 软硬件版本、控制器零件号、电源电压、 油水温、车速、发动机转速、开关状态、等数据,提供实时的车辆状态供维修员分析。读取特定数值时需要按照ECU提供存储信息位置进行读取。对于需要更新的参数以及变量、复位已学习数值等,也可以通过 0x2E服务来写入到ECU中, 从而实现针对不同车辆的参数数据更新。
2.3 输入与输出控制服务
0x2F服务在车辆诊断时也应用广泛,该服务可更改ECU输入信号的值、内部功能或者控制ECU的某个输出(执行器),例如柴油DPF再生功能,为测试部分电子器件远转,但是只有在特定的车辆运行条件下该功能才能被激活,当条件不满足时,ECU会拒绝输入输出控制请求报文并发送否定响应码。
2.4 程序下载服务
对ECU有部分操作是需要解锁,例如写入服务、输入输出控制服务等,需要先对ECU进行解锁,通过0x27服务发送相应的诊断请求,请求种子以及发送秘钥,只有当外在诊断设备发送的秘钥与ECU中计算的秘钥相同时,ECU才会解锁,才可以进行下一步操作。以此机制防止ECU内部数据被他人解锁篡改。
2.5 诊断CAN报文参数
诊断CAN报文一般采用CAN形式(标准帧与扩展帧)发送,有功能和物理寻址两种方式,详细CAN标识符含义见表1。
3 车载ECU的诊断测试
诊断系统根据需求设计好后,可以根据ECU的诊断协议,使用CANdelaStudio软件编制CDD诊断数据库;CDD文件编制好后,使用CANoe软件加载CDD文件,可以对ECU进行诊断服务的访问,实现类似简要诊断仪的功能,如图1和2所示。
也可使用CANdiva软件加载CDD文件生成工程文件,然后CANoe加载diva工程文件就可以对ECU进行正向、反向诊断测试,以验证ECU各诊断服务能否根据请求报文内容进行正确响应,如图3所示,测试完成后会自动生成测试报告,可以根据测试报告分析控制器具体哪一项内容不满足要求进行改正更新,重复测试。如图4所示。
4 结论
文章浅析统一诊断服务在车载ECU应用。随着汽车技术日新月异尤其电气化和智能化在车辆上的发展应用,在产品研发、工程设计、测试验证、生产制造到售后服务的整个生命周期中诊断技术越来越受重视。因此对于统一诊断服务在汽车领域的应用研究也将越来越重要!
参考文献:
[1]ISO 14229-1_2013_Road vehicles-Unified diagnostic services (UDS)-Part 1_Specification and requirements.
[2]ISO 15765-2_2016_Road vehicles-Diagnostic communication over Controller Area Network - Part 2_ Network layer services.
[3]沈凯.基于UDS协议的纯电动汽车整车控制器故障诊断研究[D].湖北汽车工业学院,2017.