【车载开发系列】UDS诊断---读取周期标识符($0x2A)

news2024/11/16 11:26:12

【车载开发系列】UDS诊断—读取周期标识符($0x2A)

UDS诊断---读取周期标识符($0x2A)

  • 【车载开发系列】UDS诊断---读取周期标识符($0x2A)
    • 一.概念定义
    • 二.报文格式
      • 1)请求报文
      • 2)初始响应
      • 3)后续肯定响应
      • 4)否定响应

一.概念定义

  1. 此服务允许诊断工具请求ECU中由一个或多个周期数据标识符(periodicDataIdentifier)标识的周期发送的数据记录值。该服务并非高频使用服务。
  2. 在初始响应报文之后,有两种方式来发送周期数据响应报文给诊断工具。
  3. 该服务没有 sub-function 参数,周期读取数据服务可以命令ECU周期性返回某个数据。
  4. 该服务的DID都位于0xF200-0xF2FF范围内,所以该服务的请求报文中不包含DID完整的两字节,而是只包含低字节,省略了高字节0xF2.
  5. 随着时间流逝,指定的DID的值也会随之改变的场合,可以使用2A来周期性读取,以观察在一段时间和周期内DID的变化情况。

二.报文格式

1)请求报文

在这里插入图片描述

  1. PeriodicDataIdentifier第一个周期数据标识符在请求报文中强制使用。如果传输模式为 stopSending,可以为了终止所有调度中的周期数据标识符,不使用周期数据标识符,诊断工具也可以明确的定义一个或多个要终止的周期数据标识符。
  2. 传输模式的参数(transmissionMode)定义见下表
  3. 由周期数据标识符组成的数据标识符需被
    “通过数据标识符读数据服务(22h 服务)”支持。
  4. 为了避免多帧传输,每个周期数据标识符代表参数的最大数据长度为5字节,即保证整个肯定响应报文长度不会超过一个 CAN 帧所能容纳的长度。
Hex(bit6~0)描述Description说明
01低速率发送sendAtSlowRate在低速下发送要求的数据记录信息来响应请求报文
02中速率发送sendAtMediumRate在中速下发送要求的数据记录信息来响应请求报文
03高速率发送sendAtFastRate在高速下发送要求的数据记录信息来响应请求报文
04终止发送stopSendingECU终止发送周期性/重复性的肯定响应报文

2)初始响应

  1. 在收到除stopSending以外的 ReadDataByPeriodicIdentifier 请求时,服务器应检查条件是否正确以执行服务。
  2. 如果条件正确,则服务器应发送肯定的响应消息,仅包括服务标识符。一旦服务器通过肯定的响应接受了初始请求消息,服务器将永远不会发送否定的响应消息。
    在这里插入图片描述

3)后续肯定响应

  1. 对于请求报文中每个支持的周期数据标识符,ECU需单独发送响应报文。
  2. 周期数据标识符为1字节数据, 其是F200h~F2FFh 数据标识的低字节,此范围是特地预留给该服务的。例如:如果周期数据标识符为E3h,则实际的数据标识符为F2E3h。
  3. 不允许出现重复相同的周期标识符,如果诊断工具违背了这一规则,ECU应该只接收其中的一个。
  4. dataRecord的格式和定义应特定于车辆制造商,并且如果服务器支持,则可以包括模拟输入和输出信号,数字输入和输出信号,内部数据和系统状态信息。
  5. 在获取到肯定响应消息(initial positive response)之后,对于包含相关dataRecord参数的每个periodicDataIdentifier,服务器应访问其指定的记录数据元素,并在单独的服务肯定响应消息中传输其值。

在这里插入图片描述
6. ISO14229中定义了两种类型的周期性数据响应消息,方便在初始肯定响应消息之后将 periodicDataIdentifier 数据传输到客户端。
7. 类型1:包括服务标识,periodicDataIdentifier的回显和periodicDataIdentifier的数据;
8. 类型2:包括 periodicDataIdentifier 和 periodicDataIdentifier的数据。

4)否定响应

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/70975.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]计算机毕业设计课程在线测评系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

打破信息壁垒,提升业务水平,纷享销客CRM带给木链科技不一样的体验

步入数字化时代,企业业务模式和员工工作方式日新月异,传统协作方式很显然已经难以适应当前的需求,企业亟需一种新的面向信息化的协作方式,以提高工作效率,提升业务水平。 这样的挑战也发生在工业互联网安全企业&#…

Oracle一次获取多个序列值

Oracle一次获取多个序列值SQL 语句一次获取多个序列值获取序列中的多个值connect by level 生成多行数据JDBC 一次获取多个序列值MyBatis 一次获取多个序列值SQL 语句一次获取多个序列值 获取序列中的多个值 创建序列 CREATE SEQUENCE test_user_seq;获取一个序列值 SELECT…

Linux系统(Centos 7)配置DNS客户端

配置DNS客户端 DNS 客户端的配置非常简单,假设本地首选DNS服务器的IP地址为192.168.10.1,备用DNS 服务器的IP地址为192.168.10.2,则 DNS客户端的设置如下。 配置Windows 客户端 打开“Intermet 协议(TCP/IP)”属性对话框&a…

8_3、Java基本语法之线程的生命周期与同步

一、线程的生命周期 JDK中用Thread.State类定义了线程的几种状态 要想实现多线程,必须在主线程中创建新的线程对象。Java语言使用Thread类 及其子类的对象来表示线程,在它的一个完整的生命周期中通常要经历如下的五种状态: 新建: …

基于ARIMA、SVM、随机森林销售的时间序列预测

如今DT(数据技术)时代,数据变得越来越重要,其核心应用“预测”也成为互联网行业以及产业变革的重要力量。最近我们被客户要求撰写关于销售时间序列预测的研究报告,包括一些图形和统计输出。对于零售行业来说&#xff0…

Elsevier(爱思唯尔)LaTex 模板详细说明

Elsevier 模板的使用 官方网站提供的 Latex Instructions,Elsevier 模板下载地址:elsarticle-template.zip [ 如果不了解文档类的作用,可以参考:documentclass ] Elsevier 提供了 3 种自定义的文档类: elsarticle…

大厂软件测试流程完整版

目 1.概述 1.1目的 有效的保证软件质量; 有效的制定不同测试类型(软件系统测试、音频主观性测试、Field Trial、专项测试、自动化测试、性能测试、用户体验测试)的软件测试计划; 按照计划进行测试,发现软件中存在…

Session | web应用的session机制、session的实现原理

目录 一:web应用的session机制 二:session的实现原理 一:web应用的session机制 (1)什么是会话? ①会话对应的英语单词:session ②用户打开浏览器,进行一系列操作,然后…

[附源码]计算机毕业设计楼盘销售管理系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

session,cookie,token详解

session,cookie,token详解 1.session 1.1 session的作用是什么 session的作用是用于保存每个用户的专用信息;当用户访问时,服务器都会为每个用户分配唯一的Session ID,而且当访问其他程序时可以从用户的session中取出该用户的数据为用户服务。…

将 Cpar 文件导入 2019 版的 Carsim 后,无法打开 video+plot 是什么问题?

大家在进行联合仿真的过程中,首先要将你的 Carsim 右上角的锁打开! 解锁之后要明确仿真动画(video)和图像(plot)只有在联合仿真运行完了之后才会有,这个时候需要点击 Simulink 模型界面那个绿色…

Elasticsearch 基本操作

👉 Elasticsearch 基本操作 💎 1  RESTful REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器…

基于改进量子粒子群算法的电力系统经济调度(Matlab代码实现)

💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥 🎉作者研究:🏅🏅🏅本科计算机专业,研究生电气学硕…

【CUDA学习笔记】OneFlow公众号CUDA算子优化文章学习笔记

1 CUDA学习资料合集 【OneFlow】岁末年初,为你打包了一份技术合订本 2 GPU概念介绍 《GPU的硬件结构与执行原理 —— 开源100天,OneFlow送上“百天大礼包”:深度学习框架如何进行性能优化 》 2.1 内存模型 2.1.1 Bank介绍 《GPU硬件结构…

微信小程序开发笔记 进阶篇④——getPhoneNumber 获取用户手机号码(小程序云)

文章目录一、前言二、前端代码wxml三、前端代码js四、云函数五、程序流程一、前言 大部分微信小程序开发者都会有这样的需求:获取小程序用户的手机号码。但是,因为小程序用户的手机号码属于重要信息,为了安全,所以需要如下一系列较…

transforms的二十二个方法(transforms用法非常详细)

变换是常见的图像变换,其可以适应连接在一起的ComposeComposeCompose, 此外,还有torchvision.transforms.functionaltorchvision.transforms.functionaltorchvision.transforms.functional模块,功能转换可以对转换进行细粒度控制,…

Redis - 数据概念与操作

1.Redis数据类型 Redis存储的是key-value结构的数据,其中key是字符串类型,value有5种数据类型: (1)字符串 string 如:“hello,world” (2)列表 list 如:a b c d a &…

【Jmeter】接口测试工具常用配置

目录 一、简介 二、安装和配置 三、Jmeter常用组件 四、编写一个HTTP接口脚本 五、断言 一、简介 JMeter,一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是接口功能、自动化、性 能测试的工具。具有高可扩展性、…

用于NLP的Python:使用Keras的多标签文本LSTM神经网络分类

介绍 在本文中,我们将看到如何开发具有多个输出的文本分类模型。我们开发一个文本分类模型,该模型可分析文本注释并预测与该注释关联的多个标签。 最近我们被客户要求撰写关于NLP的研究报告,包括一些图形和统计输出。多标签分类问题实际上是…