OBD诊断(ISO15031) 09服务
文章目录
- 功能简介
- ISO 9141-2、ISO 14230-4和SAE J1850的诊断服务定义
- 1、请求车辆信息请求消息(读取支持的INFOTYPE)
- 2、请求车辆信息响应消息(报告支持INFOTYPE)
- 3、请求车辆信息请求消息(读取INFOTYPE值)
- 4、请求车辆信息响应消息(报告INFOTYPE值)
- 3、报文示例
- ISO 15765-4的诊断服务定义
- 1、请求车辆信息请求消息(请求支持INFOTYPE)
- 2、请求车辆信息响应消息定义(报告支持INFOTYPE)
- 3、请求车辆信息请求消息定义(读取INFOTYPE值)
- 4、请求车辆信息响应消息定义(报告INFOTYPE值)
- 5、示例报文
功能简介
09服务,即 Request vehicle information(请求整车信息)服务,此服务用于请求整车信息,如VIN码,ECU名称等
ISO 9141-2、ISO 14230-4和SAE J1850的诊断服务定义
此服务的目的是使外部测试设备能够请求车辆特定的车辆信息,如车辆识别码(VIN)和校准ID。其中一些信息可能是法规要求的,如果车辆制造商支持,则应以标准格式报告。SAE J1979-DA中定义了信息类型。
此服务的一个功能是让ECU指示支持哪些信息类型(ISO 9141-2要求支持INFOTYPE 00 )。INFOTYPE 00 是一个位编码值,表示支持01 到20 的INFOTYPEs。INFOTYPE 20 表示支持INFOTYPE21 -40 等。这与SAE J1979-DA中规定的服务01 和02 中用于PID支持的概念相同。
外部测试设备应维护一份支持不等于00 的信息类型的ECU列表,以证明其是否期望来自该ECU的响应消息。对于信息类型不等于00 的请求消息,ECU可能不会在 规定的P2 max正时窗口内发送肯定响应消息。
如果INFOTYPE 02 (VIN)显示为支持,即使VIN缺失或不完整,ECU也应在P2max正时内做出响应。例如,开发ECU可能会用VIN的FF 字符进行响应,因为VIN尚未编程。
1、请求车辆信息请求消息(读取支持的INFOTYPE)

2、请求车辆信息响应消息(报告支持INFOTYPE)

3、请求车辆信息请求消息(读取INFOTYPE值)

4、请求车辆信息响应消息(报告INFOTYPE值)

3、报文示例
下表显示了如何实施“请求车辆信息”服务
步骤#1:从车辆请求车辆信息(请求支持的INFOTYPE)
外部测试设备向车辆请求所有支持的信息类型。有关请求支持的PID的指导,请参阅服务01的示例(支持的信息类型也使用相同的概念)。根据支持的INFOTYPE请求,外部测试设备为每个ECU创建了一个支持的内部信息类型列表:ECU#1(ECM)支持以下信息类型:01、02 、03 、04 、05 、06 、07 和08 。由于只有一个ECU符合与任务相关的立法要求,因此不会出现来自另一个ECU的响应消息。
步骤#2:向车辆请求信息类型
现在,外部测试设备请求以下INFOTYPE:
- INFOTYPE 01:MC_VIN=5条响应消息;由ECU#1支持。


现在,外部测试设备请求以下INFOTYPE:
- 信息类型02 :VIN=[1G1JC5444R7252367],由ECU#1支持。




现在,外部测试设备请求以下INFOTYPE:
- INFOTYPE 03:消息计数校准ID=08;由ECU#1支持。

ISO 15765-4的诊断服务定义
此服务的目的是是使外部测试设备能够请求特定于车辆的车辆信息,例如车辆识别码(VIN:VehicleIdentificationNumber)和CalibrationID。其中一些信息可能是法规要求的,如果车辆制造商支持,一些信息应以标准格式报告。INFOTYPE在SAEJ1979-DA中定义。
并非所有INFOTYPE都适用或受所有系统支持。INFOTYPE 00是位编码值,指示每个ECU支持哪些INFOTYPE。INFOTYPE 00 表示支持从01 到20 的INFOTYPE。INFOTYPE 20 表示支持INFOTYPE 21 到40 等。这与服务01 02 、06 、08 、09 中的PID/TID/INFOTYPE支持的概念相同。那些响应SAEJ1979-DA中规定的相应服务09 请求消息的ECU需要INFOTYPE 00
包含支持的INFOTYPE的请求消息最多可包含六个INFOTYPE。包含INFOTYPE的请求消息,用于报告车辆信息,只能包含一个INFOTYPE。外部测试设备不应请求支持的INFOTYPE和报告车辆信息的单个INFOTYPE的组合。ECU应支持最多6个受支持的INFOTYPE和仅一个INFOTYPE的请求,该INFOTYPE报告车辆信息。
如果INFOTYPE 02 (VTN指示为支持,即使VIN丢失或不完整,ECU也应在P2max时问内响应。例如,开发ECU可能会响应VIN的FFG字符,因为VIN尚未编程。
1、请求车辆信息请求消息(请求支持INFOTYPE)

要请求支持范围从C1 到FF 的INFOTYPE,应向车辆发送另一个具有INFOTYPE#1=CO 和INFOTYPE#2=E0 的请求消息。
2、请求车辆信息响应消息定义(报告支持INFOTYPE)
如果需要,ECU应响应所有支持的范围。一个范围被定义为一个包含32个INFOTYPE的块(例如范围#1:INFOTYPE 01到20 )。除非后续范围具有受支持的INFOTYPE,否则ECU不应响应不受支持的INFOTYPE范围。

响应消息应仅包括ECU支持的INFOTYPE和数据A到D。如果请求消息包含ECU不支持的INFOTYPE值,则这些值不应包含在响应消息中。
3、请求车辆信息请求消息定义(读取INFOTYPE值)

4、请求车辆信息响应消息定义(报告INFOTYPE值)

5、示例报文

注意:压燃式发动机将支持INFOTYPEOBis而不是08is用于在用性能跟踪(IPT)数据。


现在外部测试设备请求以下INFOTYPE:
- INFOTYPE 0416: CALID#1 = [JMB36761500] and CALID#2 = [JMB4787261111]; supported by
- INFOTYPE 0416: CALID#1 = [JMA*431299110000]; supported by ECU#2.



- 返回 OBD诊断 专栏目录
相关文章:
OBD诊断(ISO15031) 09服务
文章目录 功能简介ISO 9141-2、ISO 14230-4和SAE J1850的诊断服务定义1、请求车辆信息请求消息(读取支持的INFOTYPE)2、请求车辆信息响应消息(报告支持INFOTYPE)3、请求车辆信息请求消息(读取INFOTYPE值)4、请求车辆信息响应消息&…...
客户端与服务端之间的通信连接
目录 那什么是Socket? 什么是ServerSocket? 代码展示: 代码解析: 补充: 输入流(InputStream): 输出流(OutputStream): BufferedReader 是如何提高读取效率的&a…...
Font Awesome 图表图标
Font Awesome 图表图标 Font Awesome 是一个广泛使用的图标库,它提供了大量的图标,可以轻松地用于网页设计和开发中。在本文中,我们将重点介绍 Font Awesome 中的图表图标,探讨它们的特点、使用方法,并展示一些实际的…...
React Native 自定义 Hook 获取组件位置和大小
在 React Native 中自定义 Hook useLayout 获取 View、Pressable 等组件的位置和大小的信息 import {useState, useCallback} from react import {LayoutChangeEvent, LayoutRectangle} from react-nativeexport function useLayout() {const [layout, setLayout] useState&l…...
如何在SpringCloud中使用Kafka Streams实现实时数据处理
使用Kafka Streams在Spring Cloud中实现实时数据处理可以帮助我们构建可扩展、高性能的实时数据处理应用。Kafka Streams是一个基于Kafka的流处理库,它可以用来处理流式数据,进行流式计算和转换操作。 下面将介绍如何在Spring Cloud中使用Kafka Streams实…...
InterSystems IRIS使用python pyodbc连接 windows环境,odbc驱动安装,DSN配置,数据源配置
一、创建的数据库和数据 SELECT 1SELECT $ZVERSIONCREATE TABLE MyApp.Person ( ID INT PRIMARY KEY, Name VARCHAR(100) NOT NULL, Age INT, Gender CHAR(1) );CREATE TABLE MyApp.Person2 ( ID INT PRIMARY KEY, Name VARCHAR(100) NOT NULL, Age INT, Gender CHA…...
JVM:运行时数据区
文章目录 一、总览二、程序计数器1、介绍2、程序计数器在运行中会出现内存溢出吗? 三、栈1、介绍2、栈帧的组成部分(1)局部变量表(2)操作数栈(3)帧数据(3)栈内存溢出&…...
spring-boot2.x整合Kafka步骤
1.pom依赖添加 <properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</ma…...
信创学习笔记(四),信创之数据库DB思维导图
创作不易 只因热爱!! 热衷分享,一起成长! “你的鼓励就是我努力付出的动力” 一. 信创学习回顾 1.信创内容 信创内容思维导图 2.信创之CPU芯片架构 信创之CPU芯片架构思维导图 3.信创之操作系统OS 信创之操作系统OS思维导图 二. 信创之国产数据库DB思维导图 …...
SCP 使用教程
SCP(Secure Copy Protocol)是一种通过加密的方式在本地主机和远程主机之间安全地传输文件的协议。它是基于SSH协议的扩展,允许用户在不同主机之间进行文件复制和传输,是Linux和Unix系统中常用的工具之一。本教程将详细介绍SCP的基…...
python自动化之用flask校验接口token(把token作为参数)
用到的库:flask 实现效果: 写一个接口,需要token正确才能登录 代码: # 导包 from flask import Flask,request,jsonify,json # 创建一个服务 appFlask(__name__) # post请求,路径:/query app.route(/query, met…...
旗晟巡检机器人的应用场景有哪些?
巡检机器人作为现代科技的杰出成果,已广泛应用于各个关键场景。从危险的工业现场到至关重要的基础设施,它们的身影无处不在。它们以精准、高效、不知疲倦的特性,担当起保障生产、守护安全的重任,为行业发展注入新的活力。那么&…...
vue2迁移到vue3注意点
vue2迁移到vue3注意点 1、插槽的修改 使用 #default , 以及加上template 模板 2、 类型的定义,以及路由,vue相关资源(ref, reactive,watch)的引入等 3、类装饰器 1)vue-class-component是vue官方库,作…...
使用windows批量解压和布局ImageNet ISLVRC2012数据集
使用的系统是windows,找到的解压命令很多都linux系统中的,为了能在windows系统下使用,因此下载Git这个软件,在其中的Git Bash中使用以下命令,因为Git Bash集成了很多linux的命令,方便我们的使用。 ImageNe…...
css实现每个小盒子占32%,超出就换行
代码 <div class"visitors"><visitor class"item" v-for"(user,index) in userArr" :key"user.id" :user"user" :index"index"></visitor></div><style lang"scss" scoped&…...
C++的链接指示extern “C“
目录 链接指示extern "C"A.What(概念)B.Why(extern "C"的作用)C.How (如何使用链接指示extern "C") 链接指示extern “C” A.What(概念) extern&quo…...
私域运营 组织架构
**揭秘私域社群运营的神秘面纱:角色与职能一网打尽!** 在私域社群运营的大舞台上,每个角色都扮演着不可或缺的重要角色。今天,就让我们一起揭开这个神秘世界的面纱,看看这些角色们是如何协同作战,共同创造…...
Netty HTTP
Netty 是一个高性能的异步事件驱动的网络应用程序框架,支持快速开发可维护的高性能协议服务器和客户端。它广泛应用于开发网络应用程序,如服务器和客户端协议的实现。Netty 提供了对多种传输类型的抽象,如 TCP/IP 和 UDP/IP 等,使…...
什么是边缘计算技术和边缘计算平台?
随着物联网、5G技术和人工智能的不断发展,数据的规模和种类也在快速增加。在这种背景下,传统的云计算模式面临着一些问题,例如延迟高、网络拥塞等,这些问题限制了数据的处理速度和效率,降低了用户的使用体验。为了解决…...
自然语言处理(NLP)——法国工程师IMT联盟 期末考试题
1. 问题1 (法语)En langue arabe lcrasante majorit des mots sont forms par des combinaisons de racines et de schmes. Dans ce mcanisme... (英语)In Arabic language the vast majority(十之八九) of…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...
10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...
初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用
文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么?1.1.2 感知机的工作原理 1.2 感知机的简单应用:基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...
使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
