J1939协议应用设计编程说明.docVIP

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

-------------各类专业好文档,值得你下载,教育,管理,论文,制度,方案手册,应有尽有--------------

J1939协议应用设计编程说明

一、J1939协议简介

J1939协议是目前在大型汽车中应用最广泛的应用层协议,可达到250Kbit/s的通讯速率。J1939协议由美国SAE(SocietyofAutomotiveEngineer)组织维护和推广。

J1939协议具有如下特点:

(1)以CAN2.0B协议为基础,物理层标准与ISO11898规范兼容并采用符合该规范的CAN控制器及收发器。通讯速率最高可达到250Kbit/s。

(2)采用PDU(ProtocolDataUnit协议数据单元)传送信息,每个PDU相当于CAN协议中的一帧。由于每个CAN帧最多可传输8个字节数据,因此PDU的传输具有很高的实时性。

(3)利用CAN2.0B扩展帧格式的29位标志符定义每一个PDU的含义及该PDU的优先级。

(4)J1939协议主要作为汽车中应用的通讯协议,对汽车中应用到的各类参数都进行了规定。参数的规定符合ISO11992标准。

二、J1939协议通讯报文内容解析

J1939协议实质是将CAN扩展帧格式中未明确定义的11位ID,18位扩展ID进行了明确定义,紧随ID的是8个字节的数据。

为了实现J1939协议报文的正确接收,必须首先明确其仲裁场(如上所示)是如何确定的。下面将逐一介绍:

优先级:29位标志符的前3位用于在仲裁过程中决定报文的优先级P。值000是最高的优先级。高的优先级用于高速要求的报文。低的优先级用于时间要求不紧迫的数据。

标志符位(R):保留位。在传输报文时此位置为0。此位留作将来SAF委员会定义其它目的使用。

数据页(DP)位:DP位用于选择两页参数组中的其中一页。0页包含现在被定义的所有报文。1页预备将来额外的扩展能力。在0页用完后才被分配。

PDU格式(PF):PDU代表协议数据单元。PF场识别能被传送的两个PDU格式。

SRR和IDE位:在CAN2.0B己被详细定义。它们被置为隐性位。这使扩展帧的优先级低于标准格式数据帧的优先级。

PDU专用(PS):它们由PF的值决定。如果PF的值在0与239之间(PDU1),PS场包含一个目的地址;如果PF的值在240与255之间(PDU2),PS场包含一个对PF的组扩展。组扩展提供更大的一组值以标识网络中能被广播的所有ECU的报文。在J1939标准下,要被广播的大多数报文用PDU2格式。用PDU2格式在网络中传输的数据不能被直接到达一个明确目的地。当报文必须要直接传送到一个专用ECU,必须在PDU1格式数的范围分配一个PGN(参数组数),以至少在报文标志符内能包括一个专用的目的地址。

源地址(SA):标志符的最后8位包含ECU传送报文的地址。对于一个给定的网络,每一个地址必须是唯一的,两个不同的ECU不能同时用同一个地址。

三、29位ID生成说明

基于以上分析,只要将相关参数填入如下的表中,即可得到相应的29位ID。此类参数可以从SAEJ1939-71文档中得到,该文档介绍了J1939应用层上,路面车辆的推荐操作规程。

下面以获取发动机为例说明。从SAEJ1939-71(Jun2006)496页中,可以得到发动机转速的相关J1939协议参数,如下所示:

优先级(P):3

数据页面(DP):0

PDU格式(PF):240

PDU专用(PS):4

另外,以康明斯发动机为例,发动机源地址(SA)被定义为0值。

因此,可以得到PGN为61444的扩展ID信息为:

所以,其ID为0CF00400。识别出该ID的报文后,可以在随后跟随的8个字节的数据域中的第4,5字节,得到发动机转速值。

文档评论(0)

185****3876 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档