【车载开发系列】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

相关文章

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

Redis中Hash从使用过程到原理说明

《Redis中Hash从使用过程到原理说明》RedisHash结构用于存储字段-值对,适合对象数据,支持HSET、HGET等命令,采用ziplist或hashtable编码,通过渐进式rehash优化... 目录一、开篇:Hash就像超市的货架二、Hash的基本使用1. 常用命令示例2. Java操作示例三

Redis中Set结构使用过程与原理说明

《Redis中Set结构使用过程与原理说明》本文解析了RedisSet数据结构,涵盖其基本操作(如添加、查找)、集合运算(交并差)、底层实现(intset与hashtable自动切换机制)、典型应用场... 目录开篇:从购物车到Redis Set一、Redis Set的基本操作1.1 编程常用命令1.2 集

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

Python sys模块的使用及说明

《Pythonsys模块的使用及说明》Pythonsys模块是核心工具,用于解释器交互与运行时控制,涵盖命令行参数处理、路径修改、强制退出、I/O重定向、系统信息获取等功能,适用于脚本开发与调试,需... 目录python sys 模块详解常用功能与代码示例获取命令行参数修改模块搜索路径强制退出程序标准输入

C#中通过Response.Headers设置自定义参数的代码示例

《C#中通过Response.Headers设置自定义参数的代码示例》:本文主要介绍C#中通过Response.Headers设置自定义响应头的方法,涵盖基础添加、安全校验、生产实践及调试技巧,强... 目录一、基础设置方法1. 直接添加自定义头2. 批量设置模式二、高级配置技巧1. 安全校验机制2. 类型

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

java时区时间转为UTC的代码示例和详细解释

《java时区时间转为UTC的代码示例和详细解释》作为一名经验丰富的开发者,我经常被问到如何将Java中的时间转换为UTC时间,:本文主要介绍java时区时间转为UTC的代码示例和详细解释,文中通... 目录前言步骤一:导入必要的Java包步骤二:获取指定时区的时间步骤三:将指定时区的时间转换为UTC时间步

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求: