J1939协议简介
- 格式:docx
- 大小:151.84 KB
- 文档页数:7
J1939应用层协议详细描述了用于J1939网络的每个参数,包括其数据长度、数据类型、分辨率、范围及参考标签,并为每个参数分配了一个编号(SPN)。
由于J1939协议是以协议数据单元(PDU)的形式进行传输,而一个PDU包含8个字节数据,因此,需要对这些参数进行组合。
在J1939应用层协议中还详细定义了参数组,包括每组参数的更新率、有效数据长度、数据页、PDU格式、PDU细节、默认优先权及参数组的内容,并为每个参数组分配一个参数组编号(PGN)。
PGN(parameter group number)是一个24位的值,包括保留位、数据页位、PF(PDU格式场)和PS(群扩展场)等要素。
SPN(SPN: Suspect Parameter Number)是PG(参数组)下面的具体参数的一个编号,而PGN是参数组编号,可以理解为一个PGN包含了按一定方法分类的一组参数,而每个具体参数又有它自己的编号(就是SPN)。
SAE J1939的应用层以PGN和SPN的方式具体规定了车辆使用的每个参数的数据长度,数据类型,分辨率和数据范围等。
18 EB 00 F9 是一个报文的29位标示符,70 E3 FF FF FF FF FF FF是后面的数据域。
18EB00F9化成2进制就是 110 00 1110 1011 0000 0000 1111 1001把这个按照PDU的格式代进去就知道这条报文的意思了。
后面的数据域含义可以通过前面得到的PFPS知道PGN,然后查看J1939应用层关于该PGN的数据位就能知道这个数据的含义。
在各个位转化到PGN的过程中,如果PF的值小于240(十进制)时,PGN的低字节置零(个人理解当PF的值小于240时,PS的置0)。
举一个例子:请求PGN的数据页位(DP)=0;PF=234(#EA)那么她的参数群编号PGN=#00EA00。
因为PF=234<240,所以PS=#00注:PF(PDU格式场)和PS(群扩展场)都是八位CAN通讯协议中PGN的计算数据链路层通过协议数据单元(PDU)组织数据帧中的协议相关信息。
J1939故障诊断协议本协议旨在明确在J1939通讯协议下,故障诊断过程中各方的责任、权利和义务,以确保故障诊断的准确性和高效性。
本协议适用于采用J1939通讯协议进行故障诊断的所有相关方。
一、协议范围本协议适用于使用J1939通讯协议进行故障诊断的车辆、设备和系统,包括但不限于商用车、工业设备和农业机械等。
二、术语定义1.J1939通讯协议:一种用于车辆通信的网络协议,广泛应用于商用车、工业设备和农业机械等领域。
2.故障诊断:通过对车辆、设备和系统的运行状态进行监测和分析,识别并定位故障的过程。
3.故障码:用于标识特定故障的一组代码,便于故障诊断和维修。
三、协议内容1.故障诊断流程(1)相关方应遵循J1939通讯协议的标准和规范进行故障诊断。
(2)在故障诊断过程中,相关方应确保数据的准确性和完整性,并及时共享必要的信息。
(3)故障诊断完成后,相关方应提供详细的故障报告和维修建议。
— 1 —2.故障码管理(1)相关方应建立统一的故障码管理体系,确保故障码的准确性和一致性。
(2)相关方应及时更新和维护故障码数据库,以便在故障诊断过程中快速准确地识别故障。
3.技术支持和培训(1)相关方应提供必要的技术支持和培训,确保故障诊断人员具备相应的技能和能力。
(2)相关方应定期评估故障诊断人员的技能水平,并提供必要的培训和提高计划。
四、协议执行和监督1.本协议的执行和监督由相关方共同负责。
2.相关方应定期评估协议的执行情况,并对存在的问题进行及时改进和优化。
3.对于违反本协议规定的行为,相关方有权采取相应的措施予以纠正和处理。
五、附则1.本协议未尽事宜可由相关方另行协商补充。
2.本协议的修改和终止应由相关方共同协商决定。
3.本协议自签署之日起生效,有效期为______年。
到期后可根据实际情况进行续签或修改。
— 2 —。
j1939协议
J1939协议是一种面向车辆电子控制系统的通信协议。
它是由美国卡车制造商和发动机制造商联合制定,主要用于汽车、卡车和工程机械等领域中各种电子设备之间的通讯。
J1939协议采用了CAN总线通讯方式,并且在CAN 数据
帧中设置有特定的标识符和数据格式,以保证各个设备之间的通讯与协同。
J1939协议可应用于各种车辆控制系统中的所有
功能,例如:发动机控制、变速器控制、制动系统、显示器、灯光控制等。
通过J1939协议,一个设备可以与其他设备进行双向通信。
J1939协议定义了许多参数集(PGN)和服务集(SPN)。
PGN包含协议中的所有信息,是通信的最小单位,用于定义消
息的内容和分区。
例如,PGN65265(0x00FEE1)是汽车接近传感器信息的标准信息,包含了车辆的距离、速度和车道信息。
而SPN则是一个16位的数字,用于表示参数的识别号。
它指
定了每个参数的编码方式、数据格式和范围等信息。
例如,SPN100(0x0064)表示刹车踏板信号的实际值。
J1939协议在实际应用中具有广泛的应用,例如车辆故障诊断、车辆远程监控、车辆自动驾驶等。
通过使用J1939协议,车辆控制系统中的各个设备可以高效地协同工作,有效地提高了汽车的安全性和可靠性。
同时,也为汽车制造商提供了更多的数据和故障诊断信息,促进了汽车制造和维修的进一步发展。
j1939协议J1939协议是一种用于重型商用车辆之间通信的协议。
该协议基于CAN总线,旨在提供一种标准化的数据通信方式,以便不同设备之间可以相互交换信息。
J1939协议定义了一套规范,包括消息格式、数据结构和网络管理等方面的内容。
它为商用车辆提供了一种灵活的通信方式,使不同的设备可以通过CAN总线发送和接收信息。
J1939协议的消息格式是基于CAN数据帧的,由一个11位的标识符和一个8字节的数据字段组成。
标识符用于标识不同类型的消息,而数据字段则用于传输实际的数据。
在J1939协议中,有一些预定义的消息格式,如DM1、DM2和TPDT等。
这些消息格式包含了与车辆故障诊断和数据传输相关的信息。
通过这些消息格式,设备可以向车辆发送警告信息,并接收来自车辆的故障诊断数据。
除了消息格式外,J1939协议还定义了一套数据结构和网络管理规则。
数据结构用于描述不同类型的数据,在传输过程中保持一致性和可靠性。
而网络管理规则用于管理CAN总线的通信,包括网络初始化、错误处理和带宽分配等。
J1939协议在重型商用车辆中有广泛的应用。
例如,它可以用于车辆的故障诊断系统,通过发送故障码来检测和诊断车辆的故障。
它还可以用于车辆的监控系统,通过传输车辆状态数据来实时监测车辆的性能。
此外,J1939协议还支持数据传输和实时控制。
通过发送和接收数据报文,设备可以实现实时的数据传输和控制功能。
例如,它可以用于车辆的制动系统,通过发送制动指令来控制车辆的制动力。
总体而言,J1939协议为重型商用车辆提供了一种标准化的数据通信方式。
它通过定义消息格式、数据结构和网络管理规则,使不同设备之间可以方便地进行信息交换。
这种通信方式不仅提高了车辆的性能和可靠性,还为车辆的故障诊断和数据传输提供了便利。
J1939协议一、协议目的本协议旨在规范和定义J1939协议的通信规则和数据格式,以便确保各种车辆和设备之间的互操作性和数据交换的一致性。
二、协议范围本协议适用于使用J1939协议进行通信的各种车辆和设备,包括但不限于商用车辆、农业机械、建筑设备、发电机组、船舶和工业自动化设备等。
三、术语和定义1. J1939协议:一种用于车辆和设备之间的通信的协议,基于CAN总线技术。
2. 数据帧:J1939协议中的数据传输单元,包含源地址、目标地址、数据内容等信息。
3. 参数组:J1939协议中的一种数据结构,用于封装和传输特定的数据项。
4. PGN:参数组号码(Parameter Group Number),用于唯一标识一个参数组。
5. SPN:信号参数号码(Suspect Parameter Number),用于唯一标识一个参数组中的一个信号。
四、协议规则1. 数据帧格式1.1 数据帧由CAN总线上的标准帧组成,帧格式为11位标识符。
1.2 数据帧包含11位标识符、数据长度代码(DLC)、数据字节和CRC校验码。
1.3 数据帧的标识符中包含源地址、优先级、数据页、PGN等信息。
1.4 数据帧的DLC定义了数据帧中数据字节的数量。
1.5 数据帧的CRC校验码用于验证数据的完整性。
2. 参数组格式2.1 参数组由一个PGN和一个或多个SPN组成。
2.2 PGN由18位标识符的前3个字节组成。
2.3 SPN由16位标识符的后两个字节组成。
2.4 参数组中的数据按照大端字节序排列。
3. 数据传输3.1 数据传输通过CAN总线进行。
3.2 数据帧的发送和接收由源地址和目标地址进行控制。
3.3 数据传输的优先级由数据帧的标识符中的优先级字段确定。
3.4 数据传输的频率和时序由应用层协议定义。
4. 错误处理4.1 错误帧:当接收到错误的数据帧时,应立即发送错误帧作为响应。
4.2 错误处理机制:错误处理机制应能够检测和处理数据传输过程中的错误,包括但不限于传输错误、接收错误和校验错误等。
saej1939标准介绍
SAE J1939标准是一种用于商用车辆和重型设备之间进行通信的控制器局域网络(CAN)协议。
这个标准由SAE国际制定,旨在提供一种统一的通信协议,以便不同制造商的电子控制单元(ECU)能够相互通信,实现数据交换和系统集成。
SAE J1939标准涵盖了许多方面,包括物理层、数据链路层、网络层和应用层。
物理层定义了电气特性和连接器规范,以确保不同设备之间的互操作性。
数据链路层负责错误检测和纠正,网络层管理数据包的路由和优先级,而应用层定义了通信的参数和消息格式。
这个标准广泛应用于卡车、拖车、农业和建筑设备等商用车辆领域,用于实现发动机控制、传感器监测、车辆诊断、车载通信和其他功能。
通过采用SAE J1939标准,不同制造商的设备可以更容易地集成到统一的车辆系统中,提高了设备的互操作性和可靠性。
总的来说,SAE J1939标准是一种重要的通信协议,它促进了商用车辆和重型设备之间的数据交换和系统集成,为整个行业带来了许多便利和效益。
J1939协议理解今天读了只939协议的介绍文档,下面主要说说我的理解:1、网络应用分为几个层物理层 SAE J1939-11数据链路层SAE J1939-21网络层 SAE J1939-31应用层 SAE J1939-71故障诊断SAE J1939-73网络管理层SAE J1939-812、下面主要说说数据链路层和应用层数据链路层:为物理连接之间提供可靠的数据传输。
包括发送CAN数据帧所必需的同步、顺序控制、出错控制和流控制。
首先要明白几个概念PGN:参数组编号帧(Frame):组成一个完整信息的一系列有序的数据位。
帧又被划分成几个域,每个域包括了预定义类型的数据。
CAN数据帧(CAN Data Frame):组成CAN协议帧所必需的有序位域,以帧起始(SOF) 开始以帧结束(EOF)结尾。
标准帧(Standard Frame):CAN2.0A规范中定义的使用11位标识符的CAN数据帧。
扩展帧(Extended Frame):CAN2.0 B规范中定义的使用29位标志符的CAN数据帧。
包(Packet):一个单一的CAN数据帧就是一个包。
当一条报文包含参数组的数据长度小于等于8个字节时,这样的报文也称为包。
报文(Message):指一个或多个具有相同参数组编号的(PGN)数据帧。
也就是说只要一个或多个CAN数据帧具有相同的PGN号,那他们就是属于一个报文。
多包报文(Multipacket Messages):当具有相同参数组编号的所有数据需要使用多个CAN 数据帧来传输时使用的一种J1939报文。
每个CAN数据帧拥有相同的标识符,但在每个包中数据不同。
协议数据单元PDU的格式PDUH.------------------------------------------29精品文档PDU是J1939传输数据的格式,它基于CAN协议的扩展帧传输方式。
即它的标识符是29位的。
优先级:最高0 (000)设置到最低7(111)。
SAE J1939 协议简介(大结局)由于应用层会根据不同的行业和需求有所不同,所以应用层的开发可以参考标准自行研究,关于这个系列,今天是最后一集,我们来讲讲J1939的网络管理层(J1939/81)。
其实任何一种协议单看协议文件都是很枯燥的,但是其实协议软件的开发流程图就隐含在这协议描述中,多看几遍,多读几遍,多琢磨琢磨,在找些参考资料,相信你一定会理解协议中的需求,为你的后续开发扫平障碍。
肯定有人会问,总线上有那么多节点,总线上的那么多节点是如何管理和通信的呢?网络管理层就是解决这些问题的。
先来讲讲什么叫控制器应用程序。
控制器应用程序(CA)Controller Application(CA)控制器为电控单元(ECU) 内执行一种特殊控制功能的软件和硬件。
控制器里的软件称为“控制器应用程序”(CA)。
一个ECU 可以执行一个或多个控制功能,因此可以包括一个或多个CA。
为了能够在本标准网络上进行通信,每个CA都必须有一个地址以及一个和它联系在一起的名字。
网络管理层为唯一识别网络上的CA、管理地址分配和网络错误提供必要的定义和程序。
每个CA应能提供唯一的64位名字(8个字节).CA必须首先声明地址成功,然后才能向网络发送,如果CA按地址声明过程声明地址失败,必须按标准方式进行处理并向网络报告。
在采用J1939标准的网络中,地址用于保证消息标识符的唯一性以及表明消息的源地址。
地址声明消息包括地址和名字,用于把名字和网络中的某个地址关联在一起。
每个CA在开始正常的网络通信之前,必须有一个名字并且成功声明了一个地址。
名字有两个用途:其一用于表示CA的功能描述(如发动机1,发动机2)其二,作为一个数值,用于地址仲裁。
把一个地址与唯一的名字相关联,也就把一个地址和一个CA关联起来。
ECU的制造商和网络集成商必须保证所有在一个网络上传输消息CA的名字是唯一的。
网络上的每个CA都应有一个名字,这样CA可以根据它的主要功能被唯一标识。
J1939协议简介缩ACK Acknowledgment :应答BAM CAN Broadcast Announce Message :广播通知消息 ontroller Area Network :控制器局域网CRC CTS DA DLC DP Cyclic Redundancy Check :循环冗余校验Clear-To-Send :清除发送Destination Address :目标地址Data Length Code :数据长度代码Data Page :数据页EOF ID End of Frame :框架结束或帧结束Identifier :标志符IDE Identifier Extension Bit :标志符扩展位LLC LSB Logical Link Control :逻辑连接控制Least Significant Byte or Least Significant Bit :最小有意义位或字节MAC Medium Access Control :媒体通道控制MF MSB NA NACK Manufacturer :制造商Most Significant Byte or Most Significant Bit :最大有意义位或字节not Allowed :不应答Negative-Acknowledgment :错误应答P PDU Priority :优先级Protocol Data Unit :协议数据单元PF PDU Format :协议数据单元格式PGN PS Parameter Group Number :参数组代码PDU Specific :协议数据单元细节GE DA Group Extension :组扩展Destination Address :目标单元地址R Reserved :保留RTR RTS Remote Transmission Request :远程传输请求Request-To-Send :发送请求SA SOF SRR Source Address :原地址Start of Frame :帧开始Substitute Remote Request :替代远程请求TP Transport Protocol :传送协议T h Hold Time :保持时间T r Response Time :响应时间un Undefined :没有定义CAN2.0B 包含两种格式的说明:标准格式和扩展格式。
SAE J1939 必须使用扩展格式。
在C A N网络上也可以有标准格式1:标准格式CAN Extended Data FrameMAxin)ufn trams tenyth with irf stuffing - 15Q bK$SAE J1939信息框架格式一一CAN 扩展格式信息,如图 2所示,包含了一个协议数据单元 (PDU)。
PDU 包含7个预先定义的部分:优先级、保留位、数据页、 PDU 格式、PDU 细 节、原地址和数据部分。
表1:29位标志符CAN 29位标志符 J1939 位的位置11位标志符CAN 11位标志符 J1939(1) SOF SOF(2) 1 SOF SOF(2) ID28 P3 2 ID11 P3 DI27 P2 3 ID10 P2 ID26 P1 4 ID9 P1 ID25 R1 5 ID8 SA8 ID24 DP 6 ID7 SA7 ID23 PF8 7 ID6 SA6 ID22 PF7 8 ID5 SA5 ID21 PF6 9 ID4 SA4 ID20 PF5 10 ID3 SA3 ID19 PF4 11 ID2 SA2 ID18 PF3 12 ID1 SA1 SRR(r) SRR(r) (2) 13 RTR(x) RTR(2)(d) IDE(r)IDE(r) (2)14 IDE(d) IDE(2) ID17 PF215r 0r 0(2)CAN Data FrameMsximufn frams with W stuffing = 127 U"5<-Ddta FieklIdentifDataEOF11UilSlDfiinft》—NOBH Si 浦鹏R T RACK FielCRC DeH miterAlt 由丽M FieJdfaeits_ Control Fjakt -6 0dlEDEi图2:扩展格式identif Identif 1110BitSo FS R RAftitratitm Field32 BteDLC Data0-64E O FR T RCRC DelimiteACK Field No B ,t Stuff kigControl4— FieldB BUSfl1.11位标志位要求的格式2.CAN定义位,在 SAE J1939里面没有改变3.注释:SOF - Start of Frame Bit :框架开始位ID## - Identifier Bit #n :标志符位SRR - Substitute Remote Request :替代远程请求RTR - Remote Transmission Request Bit :远程传送请求IDE - Identifier Extension Bit :标志符扩展位r# - CAN Reserved Bit #n : CAN 保留位DLC# - Data Length Code Bit #n :数据长度代码位(d) - dominant bit :显性位(r) - recessive bit : 影性位(x) - bit state dependent on message : 位状态,有信息决定P# - SAE J1939 Priority Bit #n : SAE J1939 优先级位R# - SAE J1939 Reserved Bit #n : SAE J1939 保留位SA# - SAE J1939 Source Address Bit#n : SAE J1939 原地址位DP - SAE J1939 Data Page : SAE J1939 数据页PF# - SAE J1939 PDU Format Bit #n : SAE J1939 PDU 格式位PS# - SAE J1939 PDU Specific Bit #n: SAE J1939 PDU 详名田位表1显示了 29位标志符CAN 、J1939,11位标志符的CAN 、J1939仲裁和控制字段。
在 5。
2章节里面定义了每一个 SAE J1939的完整定义。
参数组代码:PGN 。
在CAN 数据框架内有必要标志一个参数组,参数组代码用 24位表示。
PGN 参数组代码是 一个24位的值,由如下要素组成:保留位、数据页位、 PDU 格式域和组扩展域。
将域位转换成PGN 参数组代码有如下规格。
如果PF 的值小于240 (F0), PGN 的低字节设置为 0。
注意并不是所有的131071个组合都是可用的。
表2: PGN 参数组代码应用层或网络层会对 PDU进行处理。
SAE J1939协议数据单元由7部分组成,他们分别是优先级、PDU 格式、PDU 细节(可以是目标单元地址、组扩展或所有权)、原地址和 备。
每一个CAN 数据框架只有一个 PDU 发送相应的数据。
PDU 里面,因为他们是由 CAN 规格定义的,对于 这些字段是由CAN 协议定义的在 SAE J1939里面没有改变。
这些字段包括: SOF 、SRR 、IDE 、RTR 、CRC 、ACK 、EOF 。
在图3中显示了这7个字段。
在PDU 中的每一个字段在后来的应用中都有定义。
保留位、数据页、 数据段。
这7个部分会被封装成一个或多个 CAN 数据框架并且通过物理层发送给其他的网络设 需要注意的是一些 PGN 定义需要多个CAN 数据框架去 CAN 数据框架中的一些段并没有定义在 数据链接层之上的 OSI 层是不可见的。
P:优先级 R:保留位 DP:数据页 PF: PDU 格式 PS: PDU 细节 SA:原地址Date Field :数据字段P 优先级:有三个位用来表示信息发送到总线的优先级。
对于接收者来说这三个位应该都认为0,被忽略掉。
信息的优先级可以设置为 0,最高,或者7,最低。
所有控制信息默认的 优先级是3,所有的其他的优先级默认为 6。
R 保留位:SAE 为了以后应用保留下来的,暂时无意义。
DP 数据页:对于参数组描述选色一个辅助的页。
请参考图 4。
PDU Format(PF):协议数据单元格式。
PF 是一个8位的字段,由这8个位决定了 PDU 的格 式。
这8个位是决定PGN 参数组代码字段的一部分。
PGN 参数组代码是用来确定或者标志命令、数据、一些请求、应答或不应答。
PGN 参数组代码确定或标志的信息要求一个或多 个CAN 数据框架发送这些信息。
如果多于8个字节的需要描述的话就需要发送多个CAN数据。
如果是8个或者少于8个字节可以描述的信息,则只需要一个 CAN 数据即可。
一个 PGN 参数组代码可以描述一个或多个参数信息。
当然一个PGN 参数组信息可以只描述一个参数,但是推荐尽可能将一个CAN 数据的8个字节全都用上。
PDU Specific(PS)协议数据单元细节: PS 是一个8个位字段描述,它由 PDU FORMA T 格式 决定。
由PF 决定PS 是目的单元地址还是组扩展。
如果PF 字段的值小于240, PS 字段表示 的是目的单元地址。
如果 PF 字段的值是240〜255, PS 字段表示组扩展值。
见表 3,参考图 4 PGN 参数组代码范围。
表 3: PDU SPECIFICDestination Address(DA)目的单元地址:这个字段定义了信息发送的特殊地址。
注意所有其 他的设备应该忽略这个字段。
全局目的单元地址( 255)要求所有接收到这个信息的设备都必须相应这个信息。
DP = Date Page(1 bit) GE=GroupExtension(8bits)PF = PDU Format (8bits) P=Priority PS= PDU Specific(8bits)NA=Not Allowed DA = Destination Address(8bits) un=UndefinedPGN =Parameter Group Number(3bytes)图4: SAE J1939 PARAMETER GROUP NUMBER TEMPLATEGroup Extension(GE)参数组扩展:参数组扩展字段,由 PF 字段的高四位决定(当PF 高四位都为1后,PS 字段就为GE)。