UDS诊断服务
- 格式:ppt
- 大小:625.50 KB
- 文档页数:46


汽车UDS诊断协议 0x38服务概述
汽车UDS(Unified Diagnostic Services)是一种用于诊断汽车电子控制单元(ECU)的通信协议。UDS协议定义了一套通用的诊断通信机制,使得诊断工具可以与车辆的控制单元进行通信,并提供诊断、编程和配置等功能。
0x38服务是UDS协议中的一个标准服务,它用于读取和清除故障码。
0x38服务的功能
0x38服务定义了功能:
1.读取故障码:诊断工具可以通过0x38服务读取控制单元中的故障码。故障码是控制单元中存储的诊断信息,用于指示车辆系统中出现的故障。读取故障码可以帮助技师快速定位和修复故障。
2.清除故障码:诊断工具可以通过0x38服务清除控制单元中的故障码。在修复故障后,清除故障码可以将控制单元中的故障信息进行清零,以便验证修复效果。0x38服务的数据格式
0x38服务的数据格式如下:
•Request:0x38
–数据长度:1字节(表示读取或清除故障码)
–读取故障码数据格式:无
–清除故障码数据格式:无
•Response:0x78
–数据长度:可变(取决于读取到的故障码数量)
–故障码列表:每个故障码的格式如下:
•故障码ID:2字节
•故障码状态:1字节
0x38服务的操作流程
0x38服务的操作流程如下:
1.诊断工具发送0x38请求。
2.控制单元收到请求后,根据请求的功能进行相应操作。–如果是读取故障码请求,控制单元将读取故障码列表,并返回给诊断工具。
–如果是清除故障码请求,控制单元将清除故障码,并返回确认响应。
3.诊断工具接收到控制单元的响应后,进行相应处理。
0x38服务的应用场景
0x38服务通常应用于场景:
1.故障诊断:诊断工具可以通过0x38服务读取控制单元中的故障码,以便定位和解决车辆故障。
2.故障修复确认:在修复故障后,诊断工具可以通过0x38服务清除控制单元中的故障码,并验证修复效果。
3.日常维护:在日常维护过程中,可以使用0x38服务进行故障码读取和清除,以确保车辆的正常运行。
Volcano U DS诊断解决方案
在BCM控箭嚣上的应用
王晓杰
(联合汽车电子有限公司)
摘要:本文简单介绍了Volcano UDS诊断服务模块结构和功能,并且结合实际项目开发,介绍了如何运用 Volcano UDS来快速开发维护BCM的诊断功能。 关键字:诊断;DSLM(诊断服务层模块);UDS;快速开发
1 前言
随着CAN网络在整车应用的逐渐普及以及车 身电子功能的日趋复杂,越来越多的车身电子控制
模块都开始放弃传统的K线下的诊断方式,转而应 用基于更高速可靠的CAN的诊断方式。BCM作为 车身电子的重要模块,采用基于CAN的诊断方式也 显得非常必要。但一般网络诊断软件相对比较复杂, 测试项目繁多,开发周期较长。所以我们在AP11
BCM的开发中选择了Volcano的产品。
2 VoIcano诊断解决方案
Volcano提供一整套的ISO诊断相关的嵌入式 软件协议栈,以方便ECU与外部诊断工具进行信息
交互。它由传输层模块TLM及诊断服务模块DSLM 组成。TLM及DSLM的功能均通过DCT(Diagnostic
Configuration T0o1)工具生成的配置文件进行控制, 方便软件集成开发,以及后续的维护工作。 图1
2.1传输层模块
Volcano Transport Layer(TLM)是Volcano提供
的基于VTP的附加模块。它提供超过8字节的数据 传输支持,主要用于诊断通信中。TLM具有如下特 点: ●支持多通道配置
http:Ilwww.cicmag.
com /*Read v b00l { data by identif ier*/ v_dslco_rdbi read(v_uint16 identif ier,v uint16 position v_uint16 size volatile v_dsl block handle data) if(identif ier==OxD101) { data->address;NVM F1t Info.Dig D10I data->size=sizeof(NVM_F1t_Inf0.Dig_Dl01) F王aqTesterReadPIN=TRUE return 0: 】_ if(identifier==0xD102) { data->addres ̄=NVM F1t Inf0.Dig D102: data一>size=sizeof(NVM_F1 t_Inf0 Dig_Dl02): F王aqTesterReadSK=TRUE return 0: )
基于CAN总线UDS服务BootLoader应用开发
汪春华 白稳峰 刘胤博 张玉稳
(中国汽车技术研究中心汽车工程研究院天津300162)
摘要:在车身控制器的开发及生产过程中,针对已安装控制器更新程序困难的问题,设计提出基于UDS协议并应 用于英飞凌16位单片机平台的在线升级方案。该方案采用CAN总线完成上下位机的通讯及数据交互,结合UDS中
的诊断服务和下载流程,实现基于UDS协议BootLoader开发。该功能为汽车电子产品开发提供更好的可扩展性,节 约开发周期,为整车厂软件管理和升级提供更快捷、可靠手段。实验结果表明,系统能够很好的完成软件在线升级,并 在刷写效率、成功率、稳定性上都很好的满足了设计需要。
关键词:CAN;UDS协议;BootLoader流程 中图分类号:TP23;TN409 文献标识码:A 国家标准学科分类代码:
Boot loader application and development based CAN bus UDS service
Wang Chunhua Bai Wenfeng Liu Yinbo Zhang Yuwen
(China Automotive Technology and Research Center,Automotive Engineering Research Institute,Tianjin 300162,China)
Abstract:In the process of body control module development and design,according to the difficult problem to update the program for installed controller,the design based on UDS protocol put forward the online upgrade scheme which
uds诊断协议
UDS(Unified Diagnostic Service)是一种用于诊断车辆电子系统的协议。它是基于CAN(Controller Area Network)总线通讯协议的一种扩展,提供了丰富的功能和灵活的配置选项。UDS协议通过发送和接收诊断控制信息,实现了对车辆所有电子控制单元(ECU)的诊断、编程和配置等功能。以下是对UDS诊断协议的介绍。
UDS协议主要包括两个部分:诊断服务和诊断会话。诊断服务是指通过UDS协议对车辆的ECU进行诊断、测试和配置等操作。诊断服务包括故障代码读取、清除故障码、读取数据流、编程等功能。诊断服务通过发送和接收各种不同的请求和响应消息来实现。
UDS还定义了不同的诊断会话。诊断会话是指诊断过程中所需的通信协议和参数设置。诊断会话包括默认会话、编程会话、扩展会话等。默认会话是引擎启动后默认的诊断会话,用于执行基本的诊断服务。编程会话是用于对ECU进行编程和配置的会话。扩展会话是用于实现特定功能的会话,如安全访问许可等。
UDS协议中还定义了许多诊断服务和诊断服务的子函数。其中包括读取故障码、清除故障码、读取数据流、编程等功能。读取故障码是通过发送请求消息给ECU,然后接收ECU返回的故障码信息。清除故障码是通过发送请求消息给ECU,然后ECU清除当前存在的故障码。读取数据流是通过发送请求消息给ECU,然后接收ECU返回的实时数据流信息。编程是通过发送请求消息给ECU,然后ECU按照请求进行编程和配置。
UDS协议的应用范围很广泛。它可以应用于车辆的生产、售后维修、环境监测等各个环节。在生产过程中,UDS协议可以用于车辆ECU的测试和编程。在售后维修中,UDS协议可以用于故障诊断和维修。在环境监测中,UDS协议可以用于监测车辆排放、能源消耗等数据。通过使用UDS协议,车辆制造商和维修商可以更方便、更快捷地对车辆进行诊断和维修。
总之,UDS是一种强大的诊断协议,提供了丰富的功能和灵活的配置选项。它通过发送和接收诊断控制信息,实现了对车辆所有电子控制单元的诊断、编程和配置等功能。UDS协议的应用范围广泛,可以应用于车辆的生产、售后维修、环境监测等各个环节。通过使用UDS协议,车辆制造商和维修商可以更方便、更快捷地对车辆进行诊断和维修。