【车载开发系列】UDS诊断时间参数说明

2024-04-29 05:20

本文主要是介绍【车载开发系列】UDS诊断时间参数说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【车载开发系列】UDS诊断时间参数说明

一. 应用层诊断时间参数

1)P2 CAN_Client

诊断仪成功发送诊断报文请求之后到收到 ECU回复诊断响应的超时时间间隔

2)P2 CAN_Server

ECU 接收到诊断请求之后到开始发送诊断报文的时间间隔,一般默认最大值设定为50ms。

3)P2* CAN_Client

诊断工具接收到NRC0x78之后继续等待 ECU 响应的时间间隔

4)P2* CAN_Server

ECU 发送 NRC 0x78之后继续发送下帧诊断响应报文的时间间隔,一般最大值设定在5000ms。

5)P3 CAN Client Phys

诊断工具成功发送物理寻址诊断请求之后,且无需ECU回复继续发送下次物理寻址诊断请求的最小时间间隔

6)P3 CAN Client Func

诊断工具成功发送功能寻址之后再次发送功能寻址的最小时间间隔
在这里插入图片描述

二. 会话层诊断时间参数

1)S3 Client

诊断工具为了保持非默认会话模式而发送 $3E服务请求报文的时间间隔
Tester的定时参数,客户端为将ECU保持在非默认会话状态,两个连续的0x3E TesterPresent请求报文的间隔时间。通常取4000ms。

2)S3 Server

没有接到任何诊断报文(不一定是 $3E 报文,可以是其他服务请求报文) 时ECU保持在非默认会话模式的时间,一般设定值是5000ms。
在S3Server 时间内,如果ECU没有接收到任何诊断请求报文,则退出非默认会话模式,返回默认会话模式。

3)P4Server

P4Server这个时间参数其实不只是UDSonIP用到,UDSonCAN也可能用到,但用的比较少。它的含义是ECU接收到诊断请求后到最终的诊断肯定响应或否定响应(不包含NRC 0x78)的时间间隔,它是对ECU性能的要求,目的是防止ECU长时间返回NRC0x78的否定响应。
当P4Server_max=P2Server_max时,就意味着不允许ECU返回NRC0x78的否定响应。
ISO 14229-2 标准中还规定,连续返回NRC 0x78时,时间间隔不能小于0.3 * P2*Server_max,以避免网络中存在过多不必要的否定响应。
在这里插入图片描述

三. UDS传输层流控制时间参数

Block Size 简称“BS”,该参数与STmin一般同时出现。此两参数主要用于诊断报文传输多帧时会使用到。

1)STmin

接收方发送流控帧之后,发送方发送的连续帧之间的时间最小间隔。如果值为0,表示对于发送方发送CF的最小时间没有要求。

2)Block Size

接收方表示发送流控帧之后,发送方被允许连续发送的最大帧数目。特殊情况下,如果该值为0,则表示发送连续帧没有限制,如果值为8,表示发送方最多能连续发送8帧CF就会继续收到接收方的流控帧;
在这里插入图片描述

四. 网络层时间参数

1)N_As

发送方任意帧类型从请求发送到发送完成 (接收到对应的ACK) 的时间间隔。一般Timeout时间设定在25ms。

2)N_Ar

接收方任意帧类型从请求发送到发送完成的时间间隔。一般Timeout时间设定在25ms。

3)N_Bs

N_Bs可理解为Sender从XXX到收到流控帧 的时间,XXX分为三种情况:
1、Sender从发送完首帧(FF)到收到流控帧的时间;
2、Sender从发送完连续帧(CF)到收到流控帧 的时间;
3、Sender从收到流控帧(FC)(状态为Wait)到收到下一个流控帧的时间;

4)N_Br

N_Br可理解为Receiver从XXX到请求发送流控帧的时间,XXX分为三种情况:
1、Receiver从收到首帧(FF)到请求发送流控帧FC的时间
2、Receiver从收到连续帧(CF)到请求发送流控帧FC的时间
3、Receiver从发送完流控帧(FC)(状态为Wait) 到请求发送下一个流控帧的时间

5)N_Cs

发送方从XXX到请求发送连续帧(CF) 的时间,XXX分为两种情况
1、Sender 从 收到流控帧(FC)到 请求发送连续帧(CF) 的时间
2、Sender从 发送完连续帧(CF)到 请求发送下一包连续帧(CF) 的时间

6)N_Cr

接收方从XXX到收到下一个连续帧(CF) 的时间,XXX分为两种情况
1、Receiver 从发送完流控帧(FC)到收到连续帧(CF)的时间
2、Receiver 从 收到连续帧(CF)到 收到下一包连续帧(CF) 的时间
在这里插入图片描述

这篇关于【车载开发系列】UDS诊断时间参数说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/945204

相关文章

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

PyQt5 GUI 开发的基础知识

《PyQt5GUI开发的基础知识》Qt是一个跨平台的C++图形用户界面开发框架,支持GUI和非GUI程序开发,本文介绍了使用PyQt5进行界面开发的基础知识,包括创建简单窗口、常用控件、窗口属性设... 目录简介第一个PyQt程序最常用的三个功能模块控件QPushButton(按钮)控件QLable(纯文本

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

Python实现批量提取BLF文件时间戳

《Python实现批量提取BLF文件时间戳》BLF(BinaryLoggingFormat)作为Vector公司推出的CAN总线数据记录格式,被广泛用于存储车辆通信数据,本文将使用Python轻松提取... 目录一、为什么需要批量处理 BLF 文件二、核心代码解析:从文件遍历到数据导出1. 环境准备与依赖库

mybatis-plus QueryWrapper中or,and的使用及说明

《mybatis-plusQueryWrapper中or,and的使用及说明》使用MyBatisPlusQueryWrapper时,因同时添加角色权限固定条件和多字段模糊查询导致数据异常展示,排查发... 目录QueryWrapper中or,and使用列表中还要同时模糊查询多个字段经过排查这就导致只要whe

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1

基于Python开发一个图像水印批量添加工具

《基于Python开发一个图像水印批量添加工具》在当今数字化内容爆炸式增长的时代,图像版权保护已成为创作者和企业的核心需求,本方案将详细介绍一个基于PythonPIL库的工业级图像水印解决方案,有需要... 目录一、系统架构设计1.1 整体处理流程1.2 类结构设计(扩展版本)二、核心算法深入解析2.1 自

JAVA覆盖和重写的区别及说明

《JAVA覆盖和重写的区别及说明》非静态方法的覆盖即重写,具有多态性;静态方法无法被覆盖,但可被重写(仅通过类名调用),二者区别在于绑定时机与引用类型关联性... 目录Java覆盖和重写的区别经常听到两种话认真读完上面两份代码JAVA覆盖和重写的区别经常听到两种话1.覆盖=重写。2.静态方法可andro

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

zookeeper端口说明及介绍

《zookeeper端口说明及介绍》:本文主要介绍zookeeper端口说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、zookeeper有三个端口(可以修改)aVNMqvZ二、3个端口的作用三、部署时注意总China编程结一、zookeeper有三个端口(可以