tl718,obd汽车通讯协议芯片资料
汽车诊断与车载诊断系统(OBD)简介
汽车诊断与车载诊断系统(OBD)简介1 概述汽车诊断(Vehicle Diagnosis)是指对汽车在不解体(或仅卸下个别零件)的条件下,确定汽车的技术状况,查明故障部位及原因的检查。
随着现代电子技术、计算机和通信技术的发展,汽车诊断技术已经由早期依赖于有经验的维修人员的“望闻问切”,发展成为依靠各种先进的仪器设备,对汽车进行快速、安全、准确的不解体检测。
为了满足美国环保局(EPA)的排放标准,20世纪70年代和80年代初,汽车制造商开始采用电子控制燃油输送和点火系统,并发现配备空燃比控制系统的车辆如果排放污染超过管制值时,其氧传感器通常也有异常,由此逐渐衍生出设计一套可监控各排放控制元件的系统,以在早期发现可能超出污染标准的问题车辆。
这就是车载诊断系统(On-Board Diagnostics,缩写为OBD)。
OBD系统随时监控发动机工况以及尾气排放情况,当尾气超标或发动机出现异常后,车内仪表盘上的故障灯(MIL)或检查发动机灯(Check Engine)亮,同时动力总成控制模块(PCM)将故障信息存入存储器,通过一定的程序可以将故障码从PCM中读出。
根据故障码,维修人员能迅速准确地确定故障的性质和部位。
OBD-II是20世纪90年代推出的新的ODB标准,几乎提供了完整的发动机控制,并监控底盘、车身和辅助设备,以及汽车的诊断控制网络。
2 汽车诊断接口OBD - II的规范规定了标准的硬件接口-- 16针(2x8)的J1962插座。
OBD - II接口必须在方向盘2英尺范围内,一般在方向盘下。
SAE的 J1962定义了OBD-II接口的引脚分配如下:<?xml:namespace prefix = v /??>图1 J1962标准插座表13 与汽车诊断有关的主要通信协议20世纪90年代中期,为了规范车载网络的研究设计与生产应用,美国汽车工程师协会(SAE)下属的汽车网络委员会按照数据传输速率划分把车载网络分为Class A、Class B、Class C表2 车载网络分类目前OBD使用的通信协议主要有5种:ISO9141、KWP2000、SAEJ1850(PWM)、SAEJ1850(VPW)、CAN。
obd原理
OBD原理简介OBD(On-Board Diagnostics)是指车辆上的诊断系统,通过连接到车辆上的OBD接口,可以获取到车辆的实时数据和故障码信息。
OBD系统提供了一个标准化的接口和协议,使得车辆维修和故障诊断变得更加简单和高效。
OBD接口与协议OBD接口通常连接在车辆底盘上的一个16引脚的接口中,被称为OBD-II接口。
通过该接口,可以使用标准的OBD协议来与车辆的电子控制单元(ECU)进行通信。
OBD协议OBD协议是一个基于串行通信的协议,使用标准的ASCII字符作为命令和数据的传输格式。
常用的OBD协议有以下几种:1.ISO 9141-2:适用于欧洲和亚洲车辆,数据传输速率为10.4 kbps。
2.J1850 PWM:适用于美国车辆,数据传输速率为41.6 kbps。
3.J1850 VPW:适用于美国车辆,数据传输速率为10.4 kbps。
4.ISO 15765-4 CAN:适用于大多数现代车辆,数据传输速率为500 kbps。
OBD数据OBD系统可以获取到车辆各个传感器和控制单元的数据,包括引擎转速、车速、油门开度、冷却液温度等等。
这些数据以特定的PID(Parameter Identification)进行标识,通过发送OBD命令可以获取到相应的数据。
OBD命令OBD命令是用于与车辆的ECU进行通信的指令,包括查询当前车辆状态的命令,读取特定传感器数据的命令,以及清除故障码的命令等。
常用的OBD命令有以下几种:1.查询发动机数据:用于查询引擎的实时数据,如引擎转速、冷却液温度等。
2.查询车速:用于查询当前车辆的速度。
3.查询故障码:用于查询车辆故障的存储和当前故障码。
OBD故障码OBD系统可以检测到车辆的故障,并将故障信息以故障码的形式存储在ECU中。
这些故障码可以通过OBD命令读取到,并根据故障码的不同进行相应的故障诊断。
常见的OBD故障码有以下几种:1.P系列故障码:用于表示发动机和动力总成相关的故障。
OBDII车载自动诊断系统简介
OBDII简介OBDII(the Second On—Board Diagnostics), ,美国汽车工程师协会(SAE,Society of Automotive Engineers)1988年制定了OBD-II标准。
OBDII实行标准的检测程序,并且具有严格的排放针对性,用于实时监测汽车尾气排放情况。
中文名 :汽车诊断第二代系统 .外文名 :OBDII目录:1:OBDII简介2:OBDII工作原理3:OBDII通讯协议▪ ISO9141-2▪ ISO14230▪ ISO157654:OBDII数据连接口5:OBDII终端产品功能6:应用领域7:故障码一、OBDII简介自从20世纪50年代汽车技术与电子技术开始相结合以来,电子技术在汽车上的应用范围越来越广泛。
ECU作为汽车发动机电控系统的核心具有速度快捷、功能强大、可靠性高、成本低廉的特点,故此ECU的引入极大地提高了汽车的动力性、舒适性、安全性和经济性。
然而,由于现代发动机电OBDII 模块控系统越来越复杂,将ECU引入发动机电控系统之后,在提高汽车性能的同时也引发了故障类型难以判定的问题。
针对该情况,从20世纪80年代起,美、同、欧等地的汽车制造企业开始在其生产的电喷汽车上配备车载自诊断模块(On—Board Diagnostics Module)。
自诊断模块能在汽车运行过程中实时监测电控系统及其电路元件的工作状况,如有异常,根据特定的算法判断出具体的故障,并以诊断故障代码(DTC,Diagnostic Trouble Codes)的形式存储在汽车电脑芯片内阳1。
系统自诊断后得到的有用信息可以为车辆的维修和保养提供帮助,维修人员可以利用汽车原厂专用仪器读取故障码,从而可以对故障进行快速定位,故障排除后,采用专用仪器清除故障码。
由于该时期不同厂商的OBD系统之问各行其是、互不兼容,所以被称为第一代车载自诊断系统(OBD—I,the First On—BoardDiagnostics)。
TL718器件引脚说明及原理图
TL718器件引脚说明及原理图引脚说明:/MCLR (PIN1) 输入复位信号脚,低电平有效复位,如果不使用,用10K电阻上拉到VDD。
●Vmeasure(PIN2) 输入0-5V的模拟信号输入,必须保证输入电压不能大于VDD,否则可能会造成芯片损坏。
如果不使用该引脚用10K电阻上拉到VDD或接VSS。
该引脚用于测量电并电压。
●J1850 Volts(PIN3) 输出该引脚控制J1850 数据总线BUS+脚的输出电压,当J1850VPW需要+8V总线电压时,该脚输出逻辑高电平。
如果不使用J1850 VPW协议,该引脚可开路。
注:J1850 PWM使用BUS+和BUS-双线,高电平为+5V,低电平为0V。
J1850VPW ,使用单总线,高电平为+8V,低电平为0V。
●J1850 BUS+(PIN4)输出高电平输出用于J1850 BUS+至显性状态。
●ISO In (PIN5)输入ISO14230 ISO9141 KWP1281 L(K2线)线信号输入引脚,当总线为隐性时,该引脚输入必须为逻辑高电平。
该引脚内部有斯密特整形触发器。
注:由于车载电脑太多,一条K线负载太重,影响总线的稳定性,所以有的厂家把没有用的L线,作为K线使用,有了第二条K线。
把有的电脑的通讯放在了K2线上,它也可双向通讯,功能和第一条一样。
该引脚功能上与ELM327有区别ELM327,该引脚为Memory选择是否保存最后一次使用时的通讯协议,以便在关闭电源或器件复位后,下次使用时首先试用该协议进行通讯。
如果接高电平,默认是选用该功能,如果接地默认为不选用改功能。
该记意功能也可用 AT M0、AT M1命令开启或关闭。
TL718自动保存功能,开始的连接协议为9号,可以用PP 0A 指令修改默认值。
●BaudRate(PIN6)输入该引脚控制,芯片串口的默认波特率,当为高电平时,波特率默认值为38400(PP 0C设置值,可以改变),当接地时,波特率默认值为固定的9600.连接后也可用AT BRD命令改变通讯波特率。
基于TL718的蓝牙迷你型OBDII汽车信息检测仪
接在 汽 车 OB D I I 诊 断 接 口,将汽 车 的各项参 数读 取 出来 , 再通 过 无线蓝 牙技 术发 射 出来 。同时利 用现在 被 广泛使 用 的智能 手机作 为人机 交互 装 置 , 智能 手机 自带 的蓝 牙接 口
0 引言 随着 汽 车科 技 的不 断发展 , 自动化 电控 技 术得 到 广泛 图形和 动 画的形 式来直观 形 象 的显示各 项参 数。 的应 用 ,汽 车 采 用 了 大 量 的 电子 控 制 单 元 ( E l e c t r o n i c OBD C o n t r o I U n i t , 简称 E C U) , 汽 车 的维修 和 保养 不 再是 简 单 接口 的机 械 操作 , 而 是越来 越 倚 重 电子 化 、 数 字化 、 移 动化 的专 业检 测工 具 。 现 阶段应 用最 为广泛 的专 业检 测工具 是 利用 汽 车 自身 电子 控制 单 元配合 第 二代在 线 故 障诊断 系统 ( On
B r o a d D i a g n o s t i c S y s t e m l l , OB D I 1 )实现 汽车 的 自动 化 诊断… 。 常 见 的汽 车专 用 的检测 工具 比较 昂贵 , 动辄几 千块 或
接受检测仪发送 出来 的数据 , 并通过智能手机的屏幕利用
【 "青海 . 电子商 务推荐 系统核 心技术研 究[ DI . 北京: 北京工 业大
学, 2 0 0 9 .
圉 蓝 接 电 牙 路 口
者 上万块 , 很难做 到每 个维修 工 位配 一 台检 测设备 。 而且 图 1 检 测 仪 组 成 图 它的 大多数 高 级 的功 能在解 决 常用 故 障时 , 基本 上用 不 到 1 . 1 OB DI I 介 绍 的。本 文介 绍 汽车信 息 检测 仪就 是 一种价 格 便宜 ( 五 十块 E C U 的引 入极 大地 提 高 了汽 车 的动 力 性 、 舒 适性 、 安 钱) , 能够 实现 故 障码读 取 , 数据 流 读取 等常 用功 能 的迷你 全性和 经 济性 。 然 而 , 将 E CU引入 发动机 电控 系统 之后 在 型 检测 仪。 同 时利 用 本 文介 绍 的检 测 仪 也 能 满 足 车主 希 望 随 时 提高 汽车 性 能的 同时也 引发 了故 障 类型难 以判定 的 问题 。 针 对该 情 况 , 从 2 0世 纪 8 O年 代 起 , 美 、 同 、 欧 等地 的 了解 自己爱 车各 项运 行参 数 的愿望 。 例如 : 瞬 时油耗 , 平 均 油 耗 等等 , 以及 是否 有故 障代码 , 具体 是 什么故 障代码 。这 汽 车制 造 企 业开 始在 其生 产 的 电喷汽 车 上 配备 车 载 自诊 这 就是第 一代 车载 自诊 断系统 ( OB D — I ) 。 为 了统一 样在维修时, 对 汽 车 的故 障 有个 大概 的 了解 , 不至 于 被 汽 断模 块。 并 且 更 为严格 的 对汽 车 的排 放 进行 监 控 , 美 国汽 车 车维 修 厂夸 大故 障 , 更 换 不 需要 更换 的器 件 , 花 费 不 必 要 标 准 , 工 程 师协 会 ( S AE, S o c i e t y o f A u t o mo t i v e E n g i n e e r s ) 的费 用。 1 9 8 8年制定 了 OB D —l I 标准 。OB D —l l 实行 标准 的检 测程 1 系统组成 并 且 具 有严 格 的排 放 针 对性 , 用于 实时 监 测 汽 车尾 气 图 1是 检 测 仪 的基 本组 成 图 ,基 于 T L 1 7 8的蓝 牙迷 序 , 你 型 OB Dl l 汽车 信息 检 测仪 以 T L 1 7 8芯 片 为核 心 ,该 芯 排 放情 况1 2 ] 。 目前 OB D— l I 系统 已经 被 全世 界范 围要 求强
obdii 的通讯协议
obdii 的通讯协议OBDII通讯协议模板1. 协议概述•OBDII(On-Board Diagnostics II)是一种用于车辆诊断的标准通讯协议。
•本协议旨在规范OBDII通讯协议的相关规则和约定。
2. 协议版本•协议版本:3. 协议内容通讯协议介绍•OBDII通讯协议用于车辆与诊断设备之间的数据通讯。
•通过该协议,诊断设备可以获取车辆的故障码、传感器数据等诊断信息。
•OBDII通讯协议使用标准的诊断指令和响应格式进行数据交换。
通讯协议规则•通讯协议使用基于串行通信的方式进行数据传输。
•协议采用ASCII码表示通讯数据。
•通讯数据包由起始字符、命令、参数和校验位等字段组成。
数据包格式•起始字符:协议起始标识字符,一般为大写字母‘O’。
•命令:表示具体的诊断指令,由字母和数字组成。
•参数:可选字段,表示命令的附加参数。
•校验位:用于校验数据包的完整性和正确性。
通讯流程•诊断设备发送诊断命令包给车辆的OBDII系统。
•车辆OBDII系统接收并处理诊断命令,返回相应的诊断数据包。
•诊断设备解析收到的数据包,并进行相应的处理。
4. 协议约定•通讯协议遵循国家相关标准和法律法规。
•通讯协议的具体实现细节应与OBDII相关标准相匹配。
•本模板提供了协议的基本结构和规范,并可根据实际需求进行修改。
5. 协议修订•修订记录:–版本(起草):2022年10月01日–版本(修订):待定本协议模板仅供参考,具体实现应根据实际需求进行具体规定和约定。
6. 诊断指令列表以下是常用的诊断指令及其功能:1.01 - 读取实时数据–读取车辆实时的传感器数据和状态信息。
–参数:传感器标识符。
–响应:当前传感器的实时数值。
2.02 - 读取故障码–读取车辆故障码和故障信息。
–参数:无。
–响应:当前存储的故障码及相关信息。
3.03 - 清除故障码–清除车辆中存储的故障码。
–参数:无。
–响应:清除故障码的结果。
4.04 - 读取VIN码–读取车辆的VIN码(车辆识别号码)。
标准的OBD2诊断程序+相关应用层协议
标准的汽车OBD2诊断程序以及相关应用层协议下载开发标准OBD2诊断程序要准备的资料及硬件1、因TL718已经为你建立了物理层、数据链层和部分应用层的协议,所以只要OBD2标准应用层协议文本,ISO15031-5 或SAE J1979(这两个协议是相同的内容)。
这里可下载:下载:SAEJ1979-2002670KBISO15031-5 3.46MB2、TL718诊断接口1 套或用TL718芯片自建电路。
3、家用PC机电脑一台。
4、安装软件:Accessport调试软件及VC++(或VB、BC++等)你喜欢的开发软件。
5、符号OBD2标准的汽车发动机电脑一块(或汽车一台)准备好以上这些,你就可以开始你的OBD2标准程序开发了!!!TL718基本信息TL718芯片的技术数据手册TL718通过一个UART串口与单片机、PDA或PC RS232通讯,在有的新的PC 机上已没有装备RS232串口,可以通过虚拟串口实现与TL718通讯,例USB TO RS232、以太网TO RS232、或蓝牙 TO RS232等等。
------- RS232 ------ OBD2电缆 ----------| PC |<----------->| TL718|<------------>|汽车诊断口|------- ------ ----------不管使用怎样的物理连接,你可以使用超级终端或串口调试工具,直接通过键盘发送和接收字符。
在使用串口调试软件前,首先必须设置正确的COM端口号和正确的波特率。
一般为9600波特率(PIN6=0V),或38400波特率(PIN6=VCC,PP OC设置默认值)。
串口设置为:8个数据位,校验位:0,停止位 1位。
如果设置错误,将不能和TL718正常通讯。
所有从TL718的响应以一个回车符(0X0D)及一个可选的换行符(0X0A)结束。
正确连接,打开电源后。
TL718将驱动测试LED灯,(闪亮3次)后,发送:TL718 starting〉如果正确收到以上信息代表串口及连接设置正确。
OBD2诊断程序开发
如何开发标准得汽车OBD2诊断程序及相关应用层协议下载开发标准OBD2诊断程序要准备得资料及硬件ﻫ1、因TL718已经为您建立了物理层、数据链层与部分应用层得协议,所以只要OBD2标准应用层协议文本,ISO15031-5 或SAE J1979(这两个协议就是相同得内容)。
2、TL718诊断接口1套或用TL718芯片自建电路、3、家用PC机电脑一台。
ﻫ4、安装软件:Accessport调试软件及VC++(或VB、BC++等)您喜欢得开发软件。
ﻫ5、符号OBD2标准得汽车发动机电脑一块(或汽车一台)ﻫﻫTL718基本信息ﻫTL718芯片得技术数据手册TL718通过一个UART串口与单片机、PDA或PC RS232通讯,在有得新得PC机上已没有装备RS232串口,可以通过虚拟串口实现与TL718通讯,例USBTO RS232、以太网TO RS232、或蓝牙TO RS232等等。
--—RS232—---OBD2电缆—----|PC|<—-—->|TL718|<---—〉|汽车诊断口|-—-—ﻫ不管使用怎样得物理连接,您可以使用超级终端或串口调试工具,直接通过键盘发送与接收字符。
在使用串口调试软件前,首先必须设置正确得端口号与正确得波特率、一般为9600波特率(PIN6=0V),或38400波特率(PIN6=VCC,PP OC设置默认值)。
串口设置为:8个数据位,校验位:0, 停止位 1位。
如果设置错误,将不能与TL718正常通讯、所有从TL718得响应以一个回车符(0X0D)及一个可选得换行符(0X0A)结束。
正确连接,打开电源后、TL718将驱动测试LED灯,(闪亮3次)后,发送:ﻫﻫTL718 startingﻫ〉如果正确收到以上信息代表串口及连接设置正确。
第二行“〉"符号代表TL718为空闲状态,可以立即从RS232接收数据。
如果没有收到“〉”符号就向TL718发送数据,可能引起数据丢失。
obd诊断程序开发
如何开发标准的汽车OBD2诊断程序及相关应用层协议下载开发标准OBD2诊断程序要准备的资料及硬件1、因TL718已经为你建立了物理层、数据链层和部分应用层的协议,所以只要OBD2标准应用层协议文本,ISO15031-5或SAEJ1979(这两个协议是相同的内容)。
2、3、家用45、符号TL718????TL718RS232等等。
??????-------????RS232????------??OBD2电缆??----------????|??PC??|<----------->|TL718|<------------>|汽车诊断口|??????-------??????????------??????????----------??不管使用怎样的物理连接,你可以使用超级终端或串口调试工具,直接通过键盘发送和接收字符。
在使用串口调试软件前,首先必须设置正确的COM端口号和正确的波特率。
一般为9600波特率(PIN6=0V),或38400波特率(PIN6=VCC,PPOC设置默认值)。
串口设置为:8个数据位,校验位:0,停止位1位。
如果设置错误,将不能和TL718正常通讯。
所有从TL718的响应以一个回车符(0X0D)及一个可选的换行符(0X0A)结束。
正确连接,打开电源后。
TL718将驱动测试LED灯,(闪亮3次)后,发送:●发送必须以0x0d(回车符)结束的ASCII码字符,回车符后面的字符被TL718丢弃。
●TL718内部命令以“AT”开头,后面跟可见字符。
不可见字附及空格被忽视。
●OBD命令只能包含16进制的ASCII码(0-9,a-f,A-F),空格被忽略。
●如果发送的指令,不能被TL718有效解释,TL718将返回一个“?”表明,发送指令无效。
●当TL718处理OBD命令时,TL718连续监视RTS引脚及RS232输入,其中任何一个情况发生,TL718将中断当前的OBD命令,使它快速返回提示符“〉”,等待接收新的命令。
汽车obd协议
汽车obd协议汽车OBD协议。
汽车OBD(On-Board Diagnostics)是汽车上的诊断系统,它可以监测和报告车辆的运行状态。
OBD协议是指汽车诊断系统与外部设备之间的通信协议,它规定了诊断设备与车辆电子控制单元(ECU)之间的通信方式和数据格式。
在汽车维修和诊断过程中,了解OBD协议是非常重要的。
OBD协议通常分为OBD-I和OBD-II两种类型。
OBD-I是指上个世纪80年代末到90年代初的汽车诊断系统,它使用特定的诊断接口和通信协议。
而OBD-II是指从1996年开始在美国市场上使用的汽车诊断系统,它使用统一的诊断接口和通信协议,为汽车维修和诊断带来了很大的便利。
OBD-II协议规定了诊断接口的引脚定义、通信波特率、诊断数据的格式等内容。
诊断接口通常是16针的接头,按照标准引脚定义,其中包括电源、地线、诊断数据线、诊断指令线等。
通信波特率通常是115200bps,这样可以保证高速的诊断数据传输。
诊断数据的格式通常采用标准的OBD协议格式,包括诊断请求帧、诊断响应帧等。
在实际的汽车维修和诊断过程中,诊断设备需要按照OBD协议的要求与车辆的ECU进行通信。
首先,诊断设备需要向ECU发送诊断请求帧,请求特定的诊断数据。
然后,ECU收到请求后会根据协议进行处理,并将诊断数据打包成诊断响应帧发送给诊断设备。
诊断设备再对响应帧进行解析,从中获取需要的诊断数据,进行故障诊断和维修操作。
除了诊断数据的获取,OBD协议还规定了诊断设备与ECU之间的诊断指令交互方式。
诊断设备可以向ECU发送诊断指令,比如清除故障码、读取冻结帧数据、执行特定的诊断功能等。
ECU收到指令后会进行相应的处理,并将执行结果返回给诊断设备。
这样,诊断设备可以通过OBD协议与车辆的ECU进行全面的诊断和维修操作。
总的来说,汽车OBD协议是汽车诊断系统中非常重要的一部分,它规定了诊断设备与车辆ECU之间的通信方式和数据格式。
了解OBD协议对于汽车维修人员和诊断工程师来说是非常重要的,它可以帮助他们更好地进行汽车故障诊断和维修操作。
OBDII协议深度解析汽车诊断通信的通信协议
OBDII协议深度解析汽车诊断通信的通信协议OBDII 协议深度解析:汽车诊断通信的通信协议随着现代汽车的发展和智能化程度的提高,汽车诊断系统在车辆维修和故障排查中发挥着重要作用。
而OBDII(On-Board Diagnostics II)协议作为汽车诊断通信的核心部分,扮演着连接车辆电子控制单元和诊断设备的重要桥梁。
本文将深度解析 OBDII 协议的通信原理和通信协议,以便更好地了解汽车诊断通信的工作原理和技术特点。
一、OBDII 协议概述OBDII 协议是汽车诊断通信的通信协议标准,旨在为故障诊断提供统一的接口和标准化的通信协议。
它规定了车辆电子控制单元与诊断设备之间的通信协议、数据格式和命令集等,以实现车辆参数获取、故障码读取和清除、状态监测等功能。
OBDII 协议通常使用标准的OBD 插头连接到车辆的OBD 接口上,通过诊断设备与车辆进行通信。
二、OBDII 协议的物理层OBDII 协议的物理层主要规定了通信所使用的物理介质和接口标准。
通常情况下,OBDII 协议采用了标准的 OBD 插头和汽车诊断接口进行连接。
OBD 插头通过标准化的16针接口连接到车辆的 OBD 接口上,其中引脚的分配和功能也都严格规定。
OBD 插头中的引脚主要用于传输数据和供电,确保诊断设备可以正常与车辆进行通信。
三、OBDII 协议的数据链路层OBDII 协议的数据链路层规定了数据的传输格式和通信速率等方面的内容。
在 OBDII 协议中,数据的传输采用了基于 CAN 总线的通信方式。
CAN 总线是现代汽车中常用的一种数据通信总线,具有高速、可靠和抗干扰能力强等特点,非常适合于车辆的诊断通信。
OBDII 协议中规定了数据的格式和编码方式,以及数据帧的组织和解析方法,保证诊断设备可以准确地获取和解析车辆参数和故障码等信息。
四、OBDII 协议的应用层OBDII 协议的应用层规定了诊断设备与车辆之间的通信协议和命令集。
大众CAN TP2.0协议
TL718使用大众CAN TP2.0协议说明对于大众CAN TP2.0协议,由于用CAN自定义参数据的方法与ECU通讯对编程有一定的难度,TL718 V1.7版本新增了G号协议,以使通过PC串口可方便从大众CAN诊断口通讯,并且由TL718自动建立及保持通讯链路。
大众很多CAN诊断的车可能通过ISO15765进入诊断,这个是OBD2(ISO15031-5)的诊断规范,不在这个讨论范围,可用标准的OBD2诊断程序诊断,可参考SCANTOOL源代码。
CAN TP2.0是使用11位ID 500KBPS波特率进行数据通讯的TP2.0的应用层的数据是根据大众KWP2000定义的,命令定义及数据流格式相同,编程时用统一的数据转换函数。
A.TP2.0的链路分析首先我们从一个仪表系统的CAN诊断过程来了解CAN链路。
这个过程是VAS5053在与AUDI A6L仪表通讯过程中用TL718 ATMA**的数据。
应答计数,是设备的请求值+1。
2、ECU发送数据的计数→设备接收完成后的应答计数是ECU 的发送最后一桢数据的记数值加一。
A.TL718如何工作与编程为了方便PC串编程,TL718已以为你建立了TP2.0数据链路部分数据的通讯,只要使用方便的OBD命令可直接读取,发送数据。
TL718的诊断过程如下:***************************************************************>atspg →选择协议GOK>atiia07→设定触发地址0x07为仪表OK>atsw19→设定链路保持时间1SOK***************************************************************>10 00 02 10 89→发送诊断开始命令(11位ID由TL718自动设置)300 B1→ECU应答300 10 00 02 50 89 →ECU返回的数据,代表进入诊断成功******* 在这过程中TL718做了什么?************1、TL718发送了触发命令2、接收后根据ECU的系统自动设置了发送的11位ID ,及接收ID3、接着发送了建立连接命令。
obdii 的通讯协议
OBD-II的通讯协议简介OBD-II(On-Board Diagnostics II)是指车辆上的自动诊断系统,它通过车辆上的标准接口与车辆的电子控制单元(ECU)进行通信。
OBD-II的通讯协议定义了数据的格式和传输方式,使得车辆的故障诊断和性能监测变得更加方便和标准化。
OBD-II的标准接口OBD-II的标准接口采用了16个针脚的连接器,通常位于驾驶室内的仪表盘下方。
接口包括了供电、地线、数据线等多个针脚,用于与OBD-II扫描工具或其他设备进行通信。
接口的形状和排列方式是标准化的,以确保兼容性和互操作性。
OBD-II的通讯协议OBD-II的通讯协议定义了数据的格式和传输方式,使得OBD-II设备可以与车辆的ECU进行通信并获取相关的诊断信息。
OBD-II的通讯协议主要基于以下两个标准:1. OBD-II的物理层协议OBD-II的物理层协议定义了数据的传输方式和电气特性。
通常采用的物理层协议有两种:ISO 9141-2和ISO 14230-4(也称为K线协议),以及ISO 15765-4(也称为CAN协议)。
ISO 9141-2和ISO 14230-4协议使用了K线作为数据线,通过电平的变化来传输数据。
ISO 15765-4协议则采用了CAN总线作为数据线,具有更高的传输速率和稳定性。
2. OBD-II的应用层协议OBD-II的应用层协议定义了数据的格式和命令的交互方式。
通常使用的应用层协议有以下几种:SAE J1850 PWM、SAE J1850 VPW、ISO 9141-2、ISO 14230-4和ISO 15765-4。
这些应用层协议定义了诊断请求和响应的格式、命令的编码方式以及错误码的定义。
通过这些协议,OBD-II设备可以向ECU发送特定的命令,并从ECU获取诊断信息和实时数据。
OBD-II的诊断信息OBD-II的通讯协议定义了许多诊断信息的标准参数,可以用于监测车辆的性能和故障。
OBD2诊断程序开发
如何开发标准的汽车OBD2诊断程序及相关应用层协议下载开发标准OBD2诊断程序要准备的资料及硬件1、因TL718已经为你建立了物理层、数据链层和部分应用层的协议,所以只要OBD2标准应用层协议文本,ISO15031-5 或SAE J1979(这两个协议是相同的内容)。
2、TL718诊断接口1 套或用TL718芯片自建电路。
3、家用PC机电脑一台。
4、安装软件:Accessport调试软件及VC++(或VB、BC++等)你喜欢的开发软件。
5、符号OBD2标准的汽车发动机电脑一块(或汽车一台)TL718基本信息TL718芯片的技术数据手册TL718通过一个UART串口与单片机、PDA或PC RS232通讯,在有的新的PC机上已没有装备RS232串口,可以通过虚拟串口实现与TL718通讯,例USB TO RS232、以太网TO RS232、或蓝牙 TO RS232等等。
------- RS232 ------ OBD2电缆 ----------| PC |<----------->| TL718|<------------>|汽车诊断口|------- ----------------不管使用怎样的物理连接,你可以使用超级终端或串口调试工具,直接通过键盘发送和接收字符。
在使用串口调试软件前,首先必须设置正确的COM端口号和正确的波特率。
一般为9600波特率(PIN6=0V),或38400波特率(PIN6=VCC,PP OC设置默认值)。
串口设置为:8个数据位,校验位:0,停止位 1位。
如果设置错误,将不能和TL718正常通讯。
所有从TL718的响应以一个回车符(0X0D)及一个可选的换行符(0X0A)结束。
正确连接,打开电源后。
TL718将驱动测试LED灯,(闪亮3次)后,发送:TL718 starting〉如果正确收到以上信息代表串口及连接设置正确。
第二行“〉”符号代表TL718为空闲状态,可以立即从RS232接收数据。
OBD-II通讯协议
OBD-II通讯协议OBD-II Network Standards» J1850 PW–Adopted by GM; also known as Class 2.–Adopted by Chrysler (known as J1850).–Some references to PW mode heard about in regards to Toyota (and Honda ?). –10.4 kbps, single wire.» J1850 PWM–Adopted by Ford; also known as Standard Corporate Protocol (SCP).–Also seen in some Mazda products.–Some references to PWM mode heard about in regards to Mitsubishi.–41.6 kbps, two wire balanced signal.» ISO 9141 and ISO 9141-2 (also known as ISO 9141 CARB)–Seen in some Chrysler and Mazda products.–Seems to be more common in Europe.–10.4 kbps, single wire.OBDII 通讯协议obdii generic communication protocols by manufacturerRecently I tried to install my product on Peuzeot(406 or somethingsimilar). There wasKWP 2000 bus. I tried to get the speed alue from the bus by sendingthe following string0xc2 0x33 0xf1 0x01 0x0d 0xf4.On responce I receied two answers from 2 different ECUs:1) 0x83 0xf1 0x10 0x7f 0x01 0x12 0x161) 0x83 0xf1 0xa4 0x41 0x0d 0x00 0x66The first ECU sent me NACK(This response code indicates that the requested action will not betaken because the serer (ECU) does not support the arguments of therequest message or the format of the argument bytes do not match the prescribed format for the specified serice.)My question is: if there was something wrong with the arguments of the request message, the second ECU also should not understand therequest, bit it did !And the second question is: why the first ECU did send the negatieanswer. If you look at the j1979 PDF you will find there that "If anECU does not support any of the PIDs requested it is not allowed tosend a negatie response message".OBD 信息:我理解的OBD-II标准诊断插座列表我理解的obd-ii标准诊断插座列表端子号称端子接线---------------------------------------------------------------------4 搭铁16 蓄电池正极,9-127,15 资料数据传输线(iso 9141-2)5 信号反馈线搭铁2 sae j1850数据输送线10 sae制造厂数据输送线举一实例;捷达前卫诊断座t16中;就有16 4 7三个端子按以上要求接线。
obd的接口协议
竭诚为您提供优质文档/双击可除obd的接口协议篇一:obd_的基本常识介绍obd的基本常识更新时间:20xx-5-2214:07:11obd是英文on-boarddiagnostics的缩写,中文翻译为“车载自动诊断系统”。
这个系统将从发动机的运行状况随时监控汽车是否尾气超标,一旦超标,会马上发出警示。
当系统出现故障时,故障(mil)灯或检查发动机(checkengine)警告灯亮,同时动力总成控制模块(pcm)将故障信息存入存储器,通过一定的程序可以将故障码从pcm中读出。
根据故障码的提示,维修人员能迅速准确地确定故障的性质和部位。
obd是英文on-boarddiagnostic的缩写,中文翻译为“车载诊断系统”。
这个系统随时监控发动机的运行状obd云鼠(ugV04)图片况和尾气后处理系统的工作状态,一旦发现有可能引起排放超标的情况,会马上发出警示。
当系统出现故障时,故障(mil)灯或检查发动机(checkengine)警告灯亮,同时obd系统会将故障信息存入存储器,通过标准的诊断仪器和诊断接口可以以故障码的形式读取相关信息。
根据故障码的提示,维修人员能迅速准确地确定故障的性质和部位。
从20世纪80年代起,美、日、欧等各大汽车制造企业开始在其生产的电喷汽车上配备obd,初期的obd没有自检功能。
比obd更先进的obd-Ⅱ在20世纪90年代中期产生,美国汽车工程师协会(sae)制定了一套标准规范,要求各汽车制造企业按照obd-Ⅱ的标准提供统一的诊断模式,在20世纪90年末期,进入北美市场的汽车都按照新标准设置obd。
obd-Ⅱ与以前的所有车载诊断系统不同之处在于有严格的排放针对性,其实质性能就是通过监测汽车的动力和排放控制系统来监控汽车的排放。
当汽车的动力或排放控制系统出现故障,有可能导致一氧化碳(co)、碳氢化合物(hc)、氮氧化合物(nox)或燃油蒸发污染量超过设定的标准,故障灯就会点亮报警。
汽车发动机ecu诊断检测系统设计
was connected to the diagnostic test device through the CAN busꎬ and the diagnostic test device was connected to the host computer through the
Keywords: Automotive ECUꎻ Diagnostic detection systemꎻ Hardware designꎻ Software design
0 引言
随着时代的进步ꎬ 在发动机控制工作方面ꎬ ECU 愈加凸显
出它的核心作用ꎮ 同 时ꎬ ECU 的 价格 昂贵 且技 术要求 越来 越
C
M
Y
K
DOI: 10 19466 / j cnki 1674-1986 2020 03 001
汽车发动机 ECU 诊断检测系统设计
吕霞付ꎬ 张爽ꎬ 王乾永ꎬ 沈斌斌
( 重庆邮电大学自动化学院ꎬ 重庆 400065)
摘要: 针对人工检测汽车发动机 ECU 存在精准度差、 效率低等问题ꎬ 提出一种基于 CAN 总线和 Kline 线的汽车发动机 ECU 诊
断检测系统ꎮ 该系统包括三个部分ꎬ 分别为待测 ECU、 汽车发动机 ECU 诊断检测设备和上位机软件ꎮ 其中ꎬ 诊断检测设备以
STM32F405VGT6 为主控芯片ꎬ 功能模块包括数字量测试模块、 模拟量测试模块、 CAN 通信模块、 RS232 模块、 电源模块等ꎮ 待测
obdii 的通讯协议
obdii 的通讯协议
OBD II(On-Board Diagnostics II)是车辆诊断的标准,它定义了车辆上的诊断接口和通信协议。
OBD II协议主要分为以下
几种通信协议:
1. ISO 9141-2协议:这是一种使用单线进行半双工通信的协议,通信速率为10.4 kbps或41.6 kbps。
2. ISO 14230-4协议(也称为KWP2000协议):这是一种基
于ISO 9141-2协议的协议,通信速率为10.4 kbps,常用于欧
洲车辆。
3. SAE J1850 PWM协议:这是一种使用脉冲宽度调制(Pulse Width Modulation)进行通信的协议,通信速率为41.6 kbps,
常用于美国和部分亚洲车辆。
4. SAE J1850 VPW协议:这是一种使用变频宽度调制(Variable Pulse Width Modulation)进行通信的协议,通信速
率为10.4 kbps,常用于美国车辆。
5. CAN(Controller Area Network)协议:这是一种基于串行
通信的协议,通信速率可以达到500 kbps或1 Mbps。
CAN协
议主要分为两种类型:CAN 2.0A(11-bit标识符)和CAN
2.0B(29-bit标识符)。
CAN协议是现代车辆中最广泛使用的OBD II通信协议。
在实际应用中,大多数现代车辆都支持CAN协议,而较旧的
车辆可能会使用ISO 9141-2、ISO 14230-4或SAE J1850协议中的一种。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
竭诚为您提供优质文档/双击可除tl718,obd汽车通讯协议芯片资料篇一:标准的obd2诊断程序+相关应用层协议标准的汽车obd2诊断程序以及相关应用层协议下载开发标准obd2诊断程序要准备的资料及硬件1、因tl718已经为你建立了物理层、数据链层和部分应用层的协议,所以只要obd2标准应用层协议文本,iso15031-5或saej1979(这两个协议是相同的内容)。
这里可下载:下载:saej1979-20xx670kbiso15031-53.46mb2、tl718诊断接口1套或用tl718芯片自建电路。
3、家用pc机电脑一台。
4、安装软件:accessport调试软件及Vc++(或Vb、bc++等)你喜欢的开发软件。
5、符号obd2标准的汽车发动机电脑一块(或汽车一台)准备好以上这些,你就可以开始你的obd2标准程序开发了!!!tl718基本信息tl718芯片的技术数据手册tl718通过一个uaRt串口与单片机、pda或pcRs232通讯,在有的新的pc机上已没有装备Rs232串口,可以通过虚拟串口实现与tl718通讯,例usbtoRs232、以太网toRs232、或蓝牙toRs232等等。
-------Rs232------obd2电缆----------|pc||tl718||汽车诊断口|-----------------------不管使用怎样的物理连接,你可以使用超级终端或串口调试工具,直接通过键盘发送和接收字符。
在使用串口调试软件前,首先必须设置正确的com端口号和正确的波特率。
一般为9600波特率(pin6=0V),或38400波特率(pin6=Vcc,ppoc设置默认值)。
串口设置为:8个数据位,校验位:0,停止位1位。
如果设置错误,将不能和tl718正常通讯。
所有从tl718的响应以一个回车符(0x0d)及一个可选的换行符(0x0a)结束。
正确连接,打开电源后。
tl718将驱动测试led灯,(闪亮3次)后,发送:tl718starting〉如果正确收到以上信息代表串口及连接设置正确。
第二行“〉”符号代表tl718为空闲状态,可以立即从Rs232接收数据。
如果没有收到“〉”符号就向tl718发送数据,可能引起数据丢失。
而发生不正确的响应。
pc从串口向tl718发送的指令格式:tl718有2种格式的命令1、obd连接命令,与车辆发生通讯。
2、内部命令,全部以at开头,不与辆发生通讯。
发送必须以0x0d(回车符)结束的ascii码字符,回车符后面的字符被tl718丢弃。
tl718内部命令以“at”开头,后面跟可见字符。
不可见字附及空格被忽视。
obd命令只能包含16进制的ascii码(0-9,a-f,a-F),空格被忽略。
如果发送的指令,不能被tl718有效解释,tl718将返回一个“”表明,发送指令无效。
当tl718处理obd命令时,tl718连续监视Rts引脚及Rs232输入,其中任何一个情况发生,tl718将中断当前的obd命令,使它快速返回提示符“〉”,等待接收新的命令。
大小写字符都能被tl718接收,空格被忽略。
比喻命令“atz”、“atz”、“atz”都是一样的。
比喻我们向tl718发送一个复位指令只要向Rs232串口发送ascii字符“atz”+0x0d(回车符);tl718starting>atzelm327v1.2>注:atz指令返回elm327V1.2是为了使用现成的国外obd观软件,所以用了这个返回信息。
返回本芯片信息用“ati”指令。
>atitl718v1.0>返回芯片编号用"at@s"指令(这个编号升级硬件和提供保修服务时需要)>at@scodenumb:98764323>tl718的obd命令如果你向tl718发送的指令以16进制数的ascii开头,则tl718认为是obd命令,tl718接收后,把成对的ascii码16进制数转换成单个字节的16进制数据发送到车辆电脑数据总线。
obd命令实际是被嵌入到数据消息包内后发送到数据总线上的,大多数标准要求:在每个数据消息包内包含三字节的头及最后一个数据校验字节。
tl718自动添加了这些附加的字节,这些默认的值对obd2诊断模式请求指令都不需要更改,但如果你想要更改这些头字节值,可以用内部命令“atshxxxxxx”更改。
大部分obd指令长度只有一个字节或2个字节,tl718充许发送的最长度是对应标准规定的字节,超出部分将被丢弃。
发出的obd指令,不能出现单个的数字,16进制数必须成对发送,比喻0不可能发送单个的“0”,必须发送“00”,如果出现单个数字,tl718认为指令格式错误,将返回一个“?”。
由于obd(汽车诊断标准)都使用16进制,所以tl718接收发送的数据也是16进制的。
例15的代表的十进制值是21;当发送完obd2命令后,tl718等待从总线接收obd消息,如果接收到地址的消息并且地址匹配,则tl718就把数据从Rs232发送给pc,如果tl718接收到的消息和发送的地址不匹配,则忽略该消息。
但也可以通过atbd内部命令查看该接收到的消息包。
如果直到等待时间(p2maxatst命令的设置值,默认值100ms)结束,没有接收到匹配地址的数据,则tl718返回“nodata”,如果接收到数据并且地址匹配则复位计时间,继续等待,直到等待时间溢出。
obd2标准诊断模式开发obd2诊断程序,必须掌握iso15031-5(saej1979)定义的九种诊断模式,对于英文不是很好的朋友,本站有个中文的说明:可以参考:更详细的内容,还是要看iso15031-5标准文本,15031–5给出了可供选择的所有参数的标准定义,包括存储格式、单位和文字描述等信息。
每个参数都有一个参数标识(pid)与之相对应。
obd系统输出信息的模式/服务obd2的九种诊断模式mode1:请求动力系当前数据mode2:请求冻结祯数据mode3:请求排放相关的动力系诊断故障码mode4:清除/复位排放相关的诊断信息mode5:请求氧传感器监测测试结果mode6:请求非连续监测系统obd测试结果mode7:请求连续监测系统obd测试结果mode8:请求控制车载系统,测试或者部件mode9:读车辆和标定识别号每个模式后面紧跟一个参数标识(pid)表示后面是什么参数,每个模式的pid00是iso15031定义专用的参数,每个符合标准的电脑必须支持这个参数标识。
代表该模式对其他pid是否支持。
用accessport进行obd2诊断与车辆数据通讯obd2命令的格式1、上图是obd2的诊断指令的消息包的完整格式(极大部分厂商专用的功能也是这种格式),tl718能自动设定了header/id/pci/checksum这部分数据,对于标准的obd2诊断程序你都几乎不用关心修改它。
想了解有关内容,它们分别定义在iso14230-2、j1850、is9141-2和iso15765-2数据链层定义的文本内。
tl718自动检测数据总线的物理连接,能在协议1-9间自动搜寻当前车辆的协议,搜寻到后自动返回数据。
当然也可手工设定到某个特定的协议。
tl718不搜寻a-F协议,因为a-F协议它们没有象obd2一样有一个统一的iso15031应用层协议,那样的话自动搜索变得毫无意义。
2、iso15031(saej1979)是应用层的协议,同样它也不用关心使用什么样的物理层协议(tl718自动连接),你编程时只要发送数据,和接收及处理接收回来的数据(计算或显示)。
所以这么多种物理连接,以统一标准规定的数据包来发送接收,我們编程处理变得相对简单。
下面我们来讨论obd2指令。
3、这里我们只要关心数据消息包的7字节数据(databyte)部分就可以了iso15031-5定义:字节意义1mode代表请求数据的类型2pid参数标识3-7根据不同的mode及pidiso15031-5有详细的定义篇二:tl718器件引脚说明及原理图tl718器件引脚说明及原理图引脚说明:/mclR(pin1)输入复位信号脚,低电平有效复位,如果不使用,用10k电阻上拉到Vdd。
Vmeasure(pin2)输入0-5V的模拟信号输入,必须保证输入电压不能大于Vdd,否则可能会造成芯片损坏。
如果不使用该引脚用10k电阻上拉到Vdd或接Vss。
该引脚用于测量电并电压。
j1850Volts(pin3)输出该引脚控制j1850数据总线bus+脚的输出电压,当j1850Vpw需要+8V总线电压时,该脚输出逻辑高电平。
如果不使用j1850Vpw协议,该引脚可开路。
注:j1850pwm使用bus+和bus-双线,高电平为+5V,低电平为0V。
j1850Vpw,使用单总线,高电平为+8V,低电平为0V。
j1850bus+(pin4)输出高电平输出用于j1850bus+至显性状态。
isoin(pin5)输入iso14230iso9141kwp1281l(k2线)线信号输入引脚,当总线为隐性时,该引脚输入必须为逻辑高电平。
该引脚内部有斯密特整形触发器。
注:由于车载电脑太多,一条k线负载太重,影响总线的稳定性,所以有的厂家把没有用的l线,作为k线使用,有了第二条k线。
把有的电脑的通讯放在了k2线上,它也可双向通讯,功能和第一条一样。
该引脚功能上与elm327有区别elm327,该引脚为memory选择是否保存最后一次使用时的通讯协议,以便在关闭电源或器件复位后,下次使用时首先试用该协议进行通讯。
如果接高电平,默认是选用该功能,如果接地默认为不选用改功能。
该记意功能也可用atm0、atm1命令开启或关闭。
tl718自动保存功能,开始的连接协议为9号,可以用pp0a指令修改默认值。
baudRate(pin6)输入该引脚控制,芯片串口的默认波特率,当为高电平时,波特率默认值为38400(pp0c设置值,可以改变),当接地时,波特率默认值为固定的9600.连接后也可用atbRd命令改变通讯波特率。
详见后节详细说明。
lFmode(pin7)输入该引脚选择开机或复位后tl718向串口输出信息的结束格式,当接高电平时,默认值信息是以一个回车(0x0d)和一个换行(0x0a)结束,当接底电平时是以一个回车(0x0d)接束。
该功能还可通过atl0或atl1命令改变设置。
Vss(pin8andpin19)电源地。
(xt1pin9andxt2pin10)在两个引脚间接20mhz晶振,并接两个电容到Vss,(典型电容值为15pF)Vpwin(pin11)输入j1850Vpw信号输入引脚,当总线为隐性时,该引脚输入必须为底电平。
该引脚内部有斯密特整形触发器。