




已阅读5页,还剩79页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ICS中华人民共和国国家标准GB/T xxxxx200x商用车发动机 CAN 通讯规范200x-xx-xx 发布 200x-xx-xx 实施中 国 国 家 标 准 化 管 理 委 员 会 发 布GB/T xxxxx200xI目 次前言1 参考文献12 术语表与缩写13 概述24 对物理层的定义2I. 网络拓扑结构(参照参考文献5) .2II. 终端电阻(参照参考文献5) .3III. CAN 总线网络拓扑参数 35 功能表36 对数据链路层的定义4消息/帧格式 .46.1.1. SAE J1939 消息帧格式(“CAN 2.0B”扩展帧格式) .56.1.2. 参数组编号(PGN) 86.1.3. “CAN 2.0B”标准帧格式消息的 SAE J1939 支持 .8协议数据单元(PDU) .96.2.1 优先级(P) .96.2.2 保留位(R) .96.2.3 数据页(DP) 96.2.4 PDU 格式(PF) .106.2.5 特定 PDU(PS) .106.2.6 目标地址(DA) .106.2.7 群扩展(GE) .116.2.8 源地址(SA) .126.2.9 数据域 .12协议数据单元(PDU)格式 126.3.1 PDU1 格式 136.3.2 PDU2 格式 13消息类型 .136.4.1 命令 .146.4.2 请求 .146.4.3 广播/响应 156.4.4 确认 .166.4.5 群功能 .17消息优先级 .18总线访问 .18争夺仲裁 .18错误检测 .18源地址和参数组编号的分配过程 .18传输协议功能 .207 对应用层协议的定义.207.1 车辆应用层 .207.1.1 信号特征描述 207.1.2 消息格式 207.1.3 参数数值范围 207.1.4 新参数的数值范围分配 21GB/T xxxxx200xII7.1.5 在参数群中添加参数 237.1.6 传输重复速度(更新速度) 237.1.7 发动机参数的命名惯例 247.2 诊断应用层 .247.2.1. 预想的诊断性能 247.2.2. 建议的诊断支持 247.2.3. 安全性 257.2.4. 诊断连接器 257.2.5. 参数监视要求 257.2.6. 诊断故障代码定义 257.2.7. 诊断参数组(PG)定义 267.2.8. 当前诊断故障代码(DM1)发送方式的说明 .288 车用电控柴油机常用 CAN 报文的定义.288.1 概述 28发送报文汇总列表 .28接收报文汇总列表 .308.2 CAN 发送报文 (TX 车辆应用层) .31CAN 发送报文 (续表 1) 32CAN 发送报文 (续表 2) 33CAN 发送报文 (续表 3) 34CAN 发送报文 (续表 4) 35CAN 发送报文 (续表 5) 36CAN 发送报文 (续表 6) 37CAN 发送报文 (续表 7) 38CAN 发送报文 (续表 8) 39CAN 发送报文 (续表 9) 40CAN 发送报文 续表 10) .418.3 CAN 接收报文 (RX 车辆应用层) .42CAN 接收报文(续表 1) .43CAN 接收报文(续表 2) .44CAN 接收报文(续表 3) .45CAN 接收报文(续表 4) .46CAN 接收报文(续表 5) .47CAN 接收报文(续表 6) .48CAN 接收报文(续表 7) .49CAN 接收报文(续表 8) .509 柴油机 SCR 后处理控制器常用 CAN 报文的定义.50SCR 后处理控制器发送报文列表 .50SCR 后处理控制器接收报文列表 .50SCR 系统发送报文及参数 .51SCR 系统 CAN 接收报文及参数(只列出柴油机常用 CAN 报文中没有的) .56SCR 系统 CAN 接收报文及参数(只列出柴油机常用 CAN 报文中没有的) .5610 柴油机电控系统诊断应用常用 SPN,FMI 5811 SCR 后处理系统故障列表(参考) .71GB/T xxxxx200xIII前 言CAN 通讯协议和报文标准参考参考文献1,2,3 和4,本文介绍的协议和特征符合 OSI 标准。本标准的附录 A、附录 B 都是规范性附录。本标准由广西玉柴机器股份有限公司工程研究院提出。本标准主要起草单位: 广西玉柴机器股份有限公司工程研究院。本标准主要起草人: 。本标准于200x年xx月xx日首次发布。GB/T xxxxx200x11 范围本规范规定了 CAN 通讯规范。本规范适用于 CAN 通讯在基于发动机/车辆中的不同电控单元之间传递、交换消息/指令的应用。2 规范性引用文件下列文件中的条款通过本标准的引用而成为本标准的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本标准,然而,鼓励根据本标准达成协议的各方研究是否可使用这些文件的最新版本。凡是不注日期的引用文件,其最新版本适用于本标准。SAE J1939 3 术语和层的分类3.1 术语的英文和缩写符合表 1 的规定。表 1术语 缩写 英文自动变速箱 AT Automatic Transmission巡航控制 CRS Cruise control驱动系缓速器 DR Driveline Retarder电控刹车系统 EBS Electronic Braking System电控发动机控制器 EEC Electronic Engine Controller转速表 TCO Tachograph车辆智能中心 VIC Vehicle Intelligence Centre排气缓速器 XR Exhaust Retarder高字节 MSB Most Significant Byte低字节 LSB Least Significant Byte应答 ACK广播公告消息 BAM控制器局域网 CAN循环冗余码校验 CRC清除发送 CTS目标地址 DA数据长度码 DLC数据页 DP帧结束 EOF标识符 ID标识符扩展位 IDE逻辑链路控制 LLC最低有效字节或位 LSB介质访问控制 MAC制造商 MF最高有效字节或位 MSB禁用 NA否定 NACK优先级 P协议数据单元 PDUGB/T xxxxx200x2表 1(续)术语 缩写 英文PDU 格式 PF参数组编号 PGN特定 PDU PS群扩展 GE目标地址 DA保留 R远程传输请求 RTR源地址 SA帧起始 SOF代用远程请求 SRR传输协议 TP持续时间 Th响应时间 Tr未定义 un注:本规范中未提及的术语或定义按 SAE J1939 标准。3.2 层的分类a) 物理层b) 数据链路层c) 应用层应用层分为两个子集:1)车辆应用层2)诊断应用层其中一些应用层报文(特殊的和全局的请求)使用数据传输协议。4 对物理层的定义CAN 物理层的定义参照参考文献5和6I. 网络拓扑结构(参照参考文献5)根据参考文献6,CAN 总线的拓扑结构如图 1:C A N 节点 1终端电阻终端电阻C A N 节点 2 C A N 节点 3 C A N 节点 n C A N _ HC A N _ LC A N 网络拓扑n 3 0图 1GB/T xxxxx200x3II. 终端电阻参数按表 2(参照参考文献5)表 2参数 符号 最小值 额定值 最大值 单位 条 件电阻 RL 110 120 130 欧 最小功耗 400 毫瓦 1自感系数 1 微亨III. CAN 总线网络拓扑参数按图 2 和表 3。图 2表 3参数 符号 最小值 最大值 单位总线长 L 0 40 m节点分支长 S 0 1 m节点分支点距离 d 0.1 40 m终端电阻到第一节点距离 d0 0 m5 功能表下图为不同控制器或功能模块集成于同一 CAN 总线通讯网络的示例。以下表 4 目标地址均按照 SAE 标准定义:表 4标识符Hex Dec装置0x 00 0 发动机控制单元0x 03 3 传动系统控制单元(变速箱)0x 0B 11 电控刹车系统 (EBS)0x 0F 15 发动机缓速器0x 10 16 驱动系统缓速器0x 17 23 仪表0x 21 33 车身0x 24 36 PTO0x 27 39 车辆智能中心0x 29 41 排气缓速器0x 2B 43 车载诊断系统0x EE 238 转速表0x F9 249 故障诊断售后服务工具GB/T xxxxx200x46 对数据链路层的定义数据链路层的定义,遵循 CAN2.0B (参见文献 1) 和 SAE J1939/21 (参见文献 2) 要求: 29-标识符 扩展数据帧 250 k 比特/秒数据链路层跨越物理层连接,提供稳定的数据传输。其中包括在发送 CAN 数据帧中的必要同步,顺序控制,纠错控制和流控制。流控制是以统一的消息帧格式实现的。6.1 消息/帧格式消息格式需适应 CAN 网络的要求变化。CAN 规范参见 1991 年 9 月的“CAN 规范 2.0 版 B 部分” 。需要指出的是,当 CAN 规范和 SAE J1939 有差异之处时,参照 SAE J1939。CAN 文档规定,在消息路由选择中不使用节点地址。某些 CAN 网络中正确的应用并不一定适用于SAE J1939。SAE J1939 网络定义中规定,节点寻址是用来防止多节点使用同样的 CAN 网络标识符字段(见 SAE J1939) 。许多 SAE J1939 中的附加要求在 CAN 网络中并没有规定。“CAN 2.0B”包括两种消息格式的规范,标准帧和扩展帧。 “CAN 2.0B”的兼容性意味着通过使用不同的帧格式位码,保证二者能同时在同一网络中使用。就此而言,SAE J1939 也能够自适应这两种CAN 数据帧格式。但是,SAE J1939 只使用扩展帧格式全面定义了标准化的通信。所有标准帧格式消息都按照本文档中定义的规则作为专用消息使用。因此,SAE J1939 设备必须使用扩展帧格式。标准帧格式消息可以在网络中存在,但只能以本文档所描述的方式。注:标准帧设备不响应网络管理消息,不支持标准化通信。如图 3 所示,CAN 数据帧被分成不同的域。但 CAN 标准帧和扩展帧格式消息对于仲裁域和控制域中位的编号和功能定义有所不同。CAN 标准帧消息如 A 所示,其在仲裁域含有 11 位标识符。CAN 扩展帧消息如 B 所示,其在仲裁域含有 29 位标识符。SAE J1939 已更进一步的定义了 CAN 数据帧格式中仲裁域的标识符位。该定义见表 5。SAE J1939 消息帧格式(“CAN 2.0B”扩展帧格式)CAN 扩展帧的格式如图 3 所示,包含一个单一的协议数据单元(PDU) 。PDU 包含 7 个预定义的域。这些域由应用层提供的信息决定,包括优先级、保留位、数据页、PDU 格式、特定 PDU(目标地址、群扩展或专用)、源地址和数据域。PDU 将被分组封装在一个或多个 CAN 数据帧中,通过物理介质传输到其他网络设备。SAE J1939 支持的开放系统互连(OSI)模型如图 4 所示。需要注意的是,某些参数组定义要求使用一个以上的 CAN 数据帧来发送消息。A. CAN 标准帧格式位 填 充 EOF7ACK段 2CR151位 数 据 段控 制 段 6位仲 裁 段 12位11 1 4 0-64SOF标 识 符 RTRIDEr0DLC 数 据 段CAN数 据 帧位 填 充 为 127位 的 最 大 帧 长 度 CR分 隔 符无 位填 充GB/T xxxxx200x5B. CAN 扩展帧格式位 填 充 EOF7位 11 1SOF标 识 符 SRIDECAN扩 展 数 据 帧位 填 充 为 150位 的 最 大 帧 长 度 CR分 隔 符ACK段CR15120-64数 据 段数 据 段控 制段6位 DLC41RTR18标 识 符扩 展 r0 无 位填 充仲 裁 段 32位图 3CAN 数据帧节点 1 节点 5定义:R 是保留位,DP 是数据页,PF 是 PDU 格式,PS 是特定 PDU,SA 是源地址图 4OSI 在 SAE J1939 中的应用应用层网络层数据链路逻辑链接控制介质访问控制物理层优先级,R,DP,PF,SA, 数据一个或多个 PDU一个或多个 CAN 数据帧优先级,R,DP,PF,SA, 数据 应用层一个或多个 PDU网络层数据链路逻辑链接控制介质访问控制物理层一个或多个 CAN 数据帧GB/T xxxxx200x6表 5SAE J1939 和 CAN 的仲裁域与控制域的对照表29 位标识符CAN29 位标识符SAE J1939 帧位位置11 位标识符CAN11 位标识符SAE J19391)SOF SOF2) 1 SOF SOF2)ID28 P3 2 ID11 P3ID27 P2 3 ID10 P2ID26 P1 4 ID9 P1ID25 R1 5 ID8 SA8ID24 DP 6 ID7 SA7ID23 PF8 7 ID6 SA6ID22 PF7 8 ID5 SA5ID21 PF6 9 ID4 SA4ID20 PF5 10 ID3 SA3ID19 PF4 11 ID2 SA2ID18 PF3 12 ID1 SA1SRR(r) SRR2) 13 RTR(x)IDE(r) IDE2) 14 IDE(x) RTR2) (d)ID17 PF2 15 r 0 IDE2)ID16 PF1 16 DLC4 DLC4ID15 PS8 17 DLC3 DLC3ID14 PS7 18 DLC2 DLC2ID13 PS6 19 DLC1 DLC1ID12 PS5 20ID11 PS4 21ID10 PS3 22ID9 PS2 23ID8 PS1 24ID7 SA8 25ID6 SA7 26ID5 SA6 27ID4 SA5 28ID3 SA4 29ID2 SA3 30ID1 SA2 31ID0 SA1 32RTR(x) RTR 2)(d) 33r 1 r 12) 34r 0 r 02) 35DLC4 DLC4 36DLC3 DLC3 37DLC2 DLC2 38DLC1 DLC1 391)专用 11 位标识符的要求格式。2)在 CAN 中定义的位,在 SAE J1939 中定义不变。注: SOF - 帧起始位 P# - SAE J1939 优先级位#nID# - 标识位#n R# - SAE J1939 保留位#nSRR - 代用远程请求 SA# - SAE J1939 目标地址#nRTR - 远程传输请求位 DP - SAE J1939 数据页IDE - 标识符扩展位 PF# - SAE J1939 PDU 格式位#nr # - CAN 保留位 PS# - SAE J1939 特定 PDU 位#nDLC# - 数据长度码位#n(d)- 显性位(r)- 隐性位(x)- 消息状态位GB/T xxxxx200x7表 5 分别描述了 CAN 网络的 29 位标识符、SAE J1939 的 29 位标识符、CAN 网络的 11 位标识符和SAE J1939 的 11 位标识符中的仲裁域和控制域。每个 SAE J1939 位分配的详细定义见定义 SAE J1939协议数据单元的部分(见 5.2) 。本文档对 CAN 数据帧从位 1 到位 8 逐一定义。字节 1 的最高位(位8)是紧接着 DLC 域发送的第一位,字节 8 的最低位(位 1)是最后发送的数据位,紧接着的是 CRC 域。参数组编号(PGN)在 CAN 数据帧的数据域中需要指明参数组时,PGN 是表示成 24 位。PGN 是一个 24 位的值,包括以下要素:保留位、数据页位、PDU 格式域(8 位)和群扩展域(8 位) 。各个位转化到 PGN 的过程如下。若 PF 值小于 240(F016),PGN 的低字节置 0。注意:用本文档规定的范例,并非全部 131,071 种组合都可用于分配(计算如下:2 页*240+(16*256)=8,670)。见 SAE J1939 附录 A,可查现行的最新分配。参见 PGN 表,表 6,位和其相应的十进制转化。“CAN 2.0B”标准帧格式消息的 SAE J1939 支持SAE J1939 网络中的控制器支持 CAN 标准帧(11 位标识符)消息格式。虽然与 SAE J1939 消息结构不兼容,但为了协调这两种格式的共存,在最低层次做了定义。此最低层次定义允许使用此格式的设备与其他设备不发生干扰。CAN 标准帧格式消息是用来专用的。参见表 5,11 位标识符功能分析如下:最高三位用作优先级位,最低八位定义 PDU 的源地址。优先级位的定义见 5.2.1。源地址在源地址表中定义(见 SAE J1939)注:标准帧和扩展帧试图同时访问总线时可能产生错误的总线仲裁。源地址(SA)在标准帧消息中较扩展帧消息中有相对较高的优先级。含有 11 位标识符的消息(标准帧)含有源地址,其优先级比含有保留位、数据页位和PF 的 29 位标识符消息(扩展帧)高。三位优先级位是用来实现正确的总线仲裁的。SAE J1939 只用扩展帧格式全面定义了标准化通信。遵循“CAN 2.0A”规范的硬件不能用扩展帧通信,因此不能适用于此网络。表 6 参数组编号(PGN)范例PGN组成部分PGN组成部分PGN组成部分PGN组成部分PGN组成部分PGN (MSB) PGN (MSB)PGN (MSB)PGN PGN (LSB)Byte 1 Byte 1 Byte 1 Byte 2 Byte 3在CAN数据帧中第三发送在CAN数据帧中第二发送在CAN数据帧中首先发送EDP DP PF PS PGN PGN 可分配PG的数目累加的PG数目SAE或制造商分配s 8-3 2 1 s 8-1 s 8-1 Dec10 Hex16 0 0 0 0 0 0 00000016 SAE 239 239 0 0 0 238 0 60928 00EE0016 0 0 0 239 0 61184 00EF0016 1 240 制造商 0 0 0 240 0 61440 00F00016 SAE 3840 0 0 0 254 255 65279 00FEFF16 4080 0 0 0 255 0 65280 00FF0016 256 制造商0 0 0 255 255 65535 00FFFF16 4336 0 0 1 0 0 65536 01000016 239 4575 SAE 0 0 1 238 0 126464 01EE0016 0 0 1 239 0 126720 01EF0016 1 4576 制造商 0 0 1 240 0 126976 01F00016 GB/T xxxxx200x84096 SAE 0 0 1 255 255 131071 01FFFF16 8672 TOTALS 8672 8672 6.2 协议数据单元(PDU)应用层和(或)网络层规定了一系列以协议数据单元形式存在的消息。协议数据单元定义了一个框架,用来组织那些对于每个要发送的 CAN 数据帧都具有重要意义的消息。SAE J1939 协议数据单元由七部分组成,分别是优先级,保留位,数据页,PDU 格式,特殊 PDU(可作为目标地址、组扩展或专用) ,源地址和数据域。PDU 将被分组封装在一个或多个 CAN 数据帧中,通过物理介质传送到其他网络设备。每个 CAN 数据帧只可能有一种 PDU。需要指出的是,某些参数组编号定义需要多个 CAN 数据帧才能发送相应的数据。某些 CAN 数据帧的域不是在 PDU 中定义,因为它们完全由 CAN 规范决定,对 OSI 数据链路层以上的层是不可见的。它包括 SOF,SRR,IDE,RTR,控制域部分,CRC 域,ACK 域和 EOF 域。这些域由 CAN协议定义的,SAE J1939 不能修改。这七个 PDU 域如图 5 所示。PDU 中的每一段在后继的章节中定义。J193 PDUPSPFPRDP SA 数 据 段.31 8 8 8 0-64位定义:P 是优先级,R 是保留位,DP 是数据页,PF 是 PDU 格式,PS 是特定 PDU,SA 是源地址图 5协议数据单元(PDU)6.2.1 优先级(P)这三位仅在总线传输中用来优化消息延迟,接收机必须对其做全局屏蔽(即忽略) 。消息优先级可从最高 0(000 2)设置到最低 7(111 2) 。所有控制消息的缺省优先级是 3(110 2) 。其他所有信息、专用、请求和 ACK 消息的缺省优先级是 6(110 2) 。当定义新的参数组编号,或总线上通信量变化时,优先级可以升高或降低。当消息被添加到应用层,将给出一个推荐的优先级。虑及 OEM 应能对网络做相应调整,优先级域应当是可重编程的。 6.2.2 保留位(R)SAE 保留此位以备今后开发使用。不能将此位与 CAN 保留位混淆。所有消息应在传输中将 SAE 保留位置 0。今后新的定义可能扩展 PDU 格式域,定义新的 PDU 格式,扩展优先级段或增长地址空间。6.2.3 数据页(DP)数据页位选择参数组描述的辅助页。在分配页一的 PGN 之前,先分配完页零的可用 PGN。6.2.4 PDU 格式(PF)PDU 格式是一个确定 PDU 格式的 8 位构成的域,也是一个确定数据域对应参数组编号的域。参数组编号除用来确定或标识命令、数据、某些请求、确认和否定之外,还可确定或标识那些要求一个或多个 CAN 数据帧通信的信息。若消息长于 8 字节,必须将消息分组封装发送(见 5.10) 。如消息长小等于 8 字节,则使用单个 CAN 数据帧。参数组编号可以对应是一个或多个参数,这里参数是指如发动机转速之类的数据。尽管参数组编号标识也能被用来作为一个参数,我们推荐对多参数进行组合以利用数据域的全部 8 字节。两种专有参数组编号的定义已经建立起来,来确保 PDU1 和 PDU2 两种格式的使用。专有信息的意义因制造商而异。例如,即使两个不同的发动机使用同一个源地址,制造商 A 的专用通信极可能与制造商 B 不同。6.2.5 特定 PDU(PS)特定 PDU 是一个 8 位域,它的定义取决于 PDU 格式,根据 PDU 格式它可能是目标地址或者群扩展。若 PDU 格式(PF)段的值小于 240,特定 PDU 段是目标地址。若 PF 段的值在 240 和 255 之间,特定GB/T xxxxx200x9PDU 包含群扩展(GE)值。见表 7。参数组编号的范围参见图 6。表 7 特定 PDU6.2.6 目标地址(DA)这个域中定义了消息发送的特定目标地址。需要指出的是,任何其他设备应忽略此消息。全局目标地址(255)要求所有设备作为消息响应者作出监听和响应。图例:图 6SAE J1939 参数组编号模板P DP PF PS 参数组定义 多组 PGN0 0 DA PDU1 格式- 100ms 或更短时间 禁止 0000 1 DA 256界限 x0 238 DA PDU1 格式- 100ms 或更长时间 允许 609280 239 DA 专用 允许 611840 240 0 PDU2 格式- 100ms 或更短时间 禁用 614400 240 1 61441界限 y0 254 254 652780 254 255 PDU2 格式- 100ms 或更长时间 允许 652790 255 un PDU2 格式- 专用 允许 65280-655351 0 DA PDU1 格式- 100ms 或更短时间 禁止 655361 1 DA 65792界限 x11 238 DA PDU1 格式- 100ms 或更长时间 1264641 239 DA PDU1 格式- 100ms 或更长时间 允许 1267201 240 0 PDU2 格式- 100ms 或更短时间 禁止 1269761 240 1 126977界限 y1PDU 格式(PF)段 特定 PDU(PS)段PDU1 格式PDU2 格式0-239240-255目标地址群扩展DP = 数据页 (1 位) GE = 群扩展 (8 位)PF = PDU 格式 (1 位) P = 优先级PS = 特定 PDU 段 (1 位) NA = 禁用DA = 目标地址 (1 位) Un = 未定义PGN = 参数组编号 (3 字节)GB/T xxxxx200x101 255 2531 255 254 PDU2 格式- 100ms 或更长时间 允许 1310701 255 255 PDU2 格式- 100ms 或更长时间 允许 1310716.2.7 群扩展(GE)群扩展字段与 PDU 格式域的低四位(注意:当 PDU 格式域最高四位被置 1,说明 PS 域是群扩展)规定了每个数据页 4096 个参数组。这 4096 个参数组仅在使用 PDU2 格式时才适用。另外,对于仅使用PDU1 格式,每个数据页中有 240 个参数组。综上,对于目前使用两种数据页来说有 8672 种参数组可以定义。可用参数组的总数目如式 1 所示:(240 +(16*256) )*2 = 8672 (式 1)注:240 = 每个数据页中 PDU 格式域可用值的数目(即 PDU1 格式,PS 域是目标地址)16 = 每个群扩展 PDU 格式值(即 PDU2 格式)256 = 群扩展可能值的数目(即 PDU2 格式)2 = 数据页状态数(两种 PDU 格式)6.2.8 源地址(SA)源地址域长 8 位。网络中一个特定源地址只能匹配一个设备。因此,源地址域确保 CAN 标识符符合 CAN 协议中的唯一性要求。地址管理和分配详见 SAE J1939-81。处理过程在 SAE J1939-81 中定义,以防止源地址重复。源地址分配参见 SAE J1939 附录 B,表 B2。6.2.9 数据域长度从 0 字节到 8 字节的数据当用不多于 8 字节的数据即表示一个给定参数组时,可使用 CAN 数据帧全部的 8 个字节。通常,建议将 8 个字节分配或保留给今后可能扩展的参数组编号分配。这中方法使得可以容易地添加新参数,并保证了和只定义了部分数据域的旧版本的兼容。一旦与参数组编号相关的字节数目确定,字节数目将不可更改(也不能变成多组,除非原先定义为多组) 。需要着重指出的是,每个群功能(见 5.4.5)的参数组必须使用长度一样的数据域,因为 CAN 数据域传输特定的群子功能时,CAN 标识符是完全相同的,只能通过 CAN 数据域来对其作出不同的解释。长度从 9 字节到 1785 字节的数据当一个特定参数组以长度从 9 至 1785 字节的数据来表示时,数据通信是通过多个 CAN 数据帧实现的。因此,术语多组是用来描述参数组编号的类型的。若把参数组定义为多组而在特定场合只传输少于 9 字节的数据时,参数组以单一的 CAN 数据帧发送,其中 DLC 置 8。若某特定参数组传输 9 字节或者更多字节,将使用“传输协议功能” 。通过传输协议功能的连接管理能力来建立和停止多组参数组的通信。此功能通过传送一系列包含分组数据的 CAN 数据帧(分组)进行数据通信。另外,传输协议功能还提供了对于目的地特定的传输的流控制和握手功能。见 5.10。所有与特定多组响应相关的所有 CAN 数据帧必须置 DLC 为 8。所有没用的字节应置为“不可用”(见 SAE J1939-71) 。每组中的字节数目是固定的,但是,SAE J1939 将会规定组数目是可变的和(或)固定的多组消息。动态诊断码的参数组编号即是多组消息中组数目可变的一个例子。只有当发送的字节数超过 8 时,那些被定义为多组的参数组才使用传输协议进行传输。6.3 协议数据单元(PDU)格式 PDU 格式如图 7 所示。两种 PDU 格式定义为:PDU1 格式(PS 为目标地址)和 PDU2 格式(PS 为群扩展) 。PDU1 格式允许 CAN 数据定向到特定目标地址(设备) 。PDU2 格式只用于无特定目标地址(设备)的 CAN 数据帧的传输。使用两种不同 PDU 格式是为了在通信中提供更多参数组编号的组合。对专用参数组定义已给出,以使两种 PDU 格式在都可以专用通信中适用。为了防止使用标识符时发生冲突,在GB/T xxxxx200x11专用通信中建立了一个标准化方法。两种参数组的定义已经给出,以使 PDU1 和 PDU2 格式能够使用。专有信息的解释因制造商而异。例如,即使发动机制造商 A 和 B 都使用同一个源地址,二者的专有信息也极可能不同。 PDU1PFPRDP SA 数 据 段.31 8 8 8 0-64位 PS(DA)PDU2PFPRDP SA 数 据 段.31 8 8 8 0-64位 PS(DA)定义:P 是优先级,R 是保留位,DP 是数据页,PF 是 PDU 格式,PS 是特定 PDU,SA 是源地址图 7可用的 PDU 格式6.3.1 PDU1 格式此格式允许适用的参数组被发送到特定目的地或全局目的地。特定 PDU(PS)域包含目标地址(DA) 。PDU1 格式消息能被请求,或以主动提供的方式发送。PDU1 格式的消息由 PDU 格式(PF)段决定。当 PDU 格式域的值在 0 至 239 之间,消息是 PDU1 格式。PDU1 消息的格式如图 7 所示。需要指定目的地和最小延迟的参数组(PDU1)PF 为 0 开始向 x(或 x1)递增,参见图 6。需要指定目的地但不强调延迟参数组从 PF 为 238 开始向 x(或 x1)递减,参见图 6。值为 239 的 PF(保留位为 0,数据页为 0)留作专用。在此情形下,特定 PDU(PS)是目标地址(见 5.4.5) 。专用 A 的 PGN 值为 61184。 6.3.2 PDU2 格式此格式只能用在作为全局消息的参数组通信中。PDU2 格式消息能被请求或以主动提供的形式发送。选择 PDU2 格式(同时分配 PGN)可以避免 PGN 被定向到特定目的地。特定 PDU 包含了群扩展(GE) 。PDU2 格式的消息是指 PDU 格式(PF)值在 240 和 255 之间的消息(见图 6) 。PDU2 格式的消息的格式如图 7 所示。以高速(通常小于 100ms)传输的消息的参数组编号是从 PF 为 240 开始向 y(或 y1)递增。参见图 6。只是在请求时、有变化时,或以低更新频率(通常间隔大于 100ms)传输的消息的参数组编号从PF 值为 254 开始向 y(或 y1)递减。参见图 6。值为 255 的 PF(保留位为 0,数据页为 0)留作专用。在此情形下,特定 PDU 段留给制造商定义使用。专用 B 的 PGN 值在 65280 至 65535 范围之内。6.4 消息类型目前支持五种类型消息,分别为:命令、请求、广播/响应、确认和群扩展。特定消息类型由其分配的参数组编号识别。参见 SAE J1939 附录 A 种 PGN 分配的例子。RTR 位(在 CAN 协议远程帧中定义)不可用于隐性状态(逻辑 1) 。因此,远程传输请求(RTR=1)在 SAE J1939 中不适用。对于出现在 CAN 数据帧中数据域的多字节参数,它们要首先存放在最低字节。针对特例在会作出特别的说明(如,ASCII 数据) 。因此,如果要将一个 2 字节的参数存放在 CAN 数据帧中的字节 7 和字GB/T xxxxx200x12节 8,LSB 要被放在指字节 7,MSB 放在字节 8。6.4.1 命令此消息类型包括那些从某个源地址命令特定目的地或全局目的地的参数组,目的地接收到命令类型的消息后应该采取特定的动作。PDU1 格式(PS 为目标地址)和 PDU2 格式(PS 为群扩展)都能用作命令。命令类型的消息可能包括传动控制、地址请求、扭矩/速度控制等等。6.4.2 请求此消息类型规定了从全局范围或从特定目的地请求信息的功能。对于某目的地址的请求称为目的地指定请求。图 8 中的信息分配了一个参数组编号给“请求 PGN”参数组。此信息与在 SAE J1939/71中规定的参数组格式相同。参数组名称: 请求 PGN定义: 从网络设备请求参数组重复传输速率: 用户自定义,推荐每秒请求不多于 2 或 3 次数据长度: 3 字节数据页: 0PDU 格式: 234特定 PDU 段: 目标地址缺省优先级: 6参数组编号: 59904(00EA00 16)字节:1,2,3 被请求的参数组编号(见 5.1.2)图 8请求 PGN 的定义表 8 重申了对于 PDU1 和 PDU2 格式 PGN 的请求/响应能力。它阐明了消息传送者决定目的地是特定的还是全局的,这取决于请求是指向特定目的地还是全局目标地址的。表 8 同时指出,对于主动提供的消息,传送者能通过使用长于 8 字节的 PDU1 PGN 和 PDU2 PGN 消息选择将其发送至特定目标地址还是全局目标地址。对于 PDU2 PGN 小等于 8 字节,传送者只能在全局范围内发送数据。见表 8。表 8 PDU1 和 PDU2 传输,请求和响应要求PDU长度数据长度请求PGN 59904 响应 使用传输协议11111122228 字节8 字节8 字节 8 字节 8 字节 8 字节8 字节8 字节8 字节 8 字节特定 DA全局 DA无特定 DA全局 DA无特定 DA全局 DA无特定 DA特定 DA全局 DA全局 DA特定 DA特定 DA全局 DA全局 DA特定 DA全局 DA全局 DA全局 DA特定 DANANANANARTS/CTSBAMBAMRTS/CTSNANANARTS/CTSGB/T xxxxx200x1322 8 字节 8 字节全局 DA无全局 DA全局 DA特定 DABAMBAMRTS/CTS决定发送 PGN 到全局或特定地址的一般规则:a) 若发送请求到全局地址,则响应也到全局地址注意NACK 禁止作为全局请求的响应b) 若发送请求到特定地址,则发送响应到特定地址1) 注意 若不支持请求的 PGN,需要作出 NACK 响应。2) 若数据长度大等于 8 字节,必须用传输协议 RTS/CTS 作对特定地址的响应。3) 例外: 8 字节或短于 8 字节的 PDU2 格式 PGN 只能发送到全局目的地,因为在 PDU2 格式中没有目标地址段。 即使对目标地址的请求可能被发到特定地址,地址请求 PGN 还是被发送到全局目标地址。 确认 PGN 响应将使用全局目标地址,虽然使该响应产生的 PGN 是指向特定地址的c) 对于周期性广播或主动提供的消息1) PDU1 格式 PGN 或 PDU2 格式 PGN 能被发送到全局或特定目标地址例外:不长于 8 字节的 PDU2 格式 PGN 只能发送到全局目的地,因为在 PDU2 格式中没有目标地址段。d) 以上规则的特例确实存在,并都作出了说明。这些异常在定义 PGN 的应用文档中有提及。有以下两种类型的异常:1)当作出响应的目标地址不指明对应请求的源地址时,一些例子已经在前面说明(如,地址请求 PGN 和确认 PGN) 。2)当 PGN 不支持所有可用地址的格式时,也就是,某些 PGN 可能不能设计为支持对于PDU1 和 PDU2 格式的消息适用的地址。表 9 举了两个怎样使用请求 PGN 的例子。表 9 SAE J1939 的 PDU1 格式特定段的应用消息类型 PF PS(DA) SA 数据 1 数据 2 数据 3全局请求特定请求234234255 多响应SA2 响应者SA1 请求者SA1 请求者PGN lsb1)PGN lsb1)PGNPGNPGN msb1)PGN msb1)1) 数据域中参数组编号用于标明被请求消息。响应总是从特定目的地(非求全局的)得到的,哪怕该响应是一个指出某 PGN 不被支持的 NACK。注意:某些 PGN 是多组的,因此多帧 CAN 数据帧可以作为一个单帧请求的响应。当某特定 PGN 值不被节点支持时,全局请求不能以 NACK 响应。请求 PGN 能定向到特定目标地址来检查是否支持特定参数组(即被请求的目标地址能否传送特定PG) 。对请求的响应取决于该 PGN 是否被支持。若是被支持,响应设备会发送被请求的信息。若确认PGN 是正确的,则控制字节置 0 或 2;若该 PGN 不被支持,响应的设备会发送控制字节置 1 的确认 PGN来作为否定消息。SAE J1939 的 PDU 格式的其他部分参数组要正确地填入(参见 5.4.4) 。注意,在本节每个定义中,术语“不支持”意味着该参数组不会被发送。靠此办法不可能决定设备接收到 PG 时是否遵照此 PG 行事。6.4.3 广播/响应此消息类型可能是某设备主动提供的消息广播,也可能是命令或请求的响应。6.4.4 确认只有两种可能的确认形式。第一种是 CAN 协议规定的,它由确认消息已被至少一个节点接收的“帧内”确认组成。另外,如果没有出现 CAN 出错帧,消息将被进一步确认,不出现出错帧意味着所有其他的开启并连接在总线上的设备都正确地收到了此消息。GB/T xxxxx200x14第二种形式的确认由应用层规定,是对于特定命令、请求的“普通广播”或“ACK”或“NACK”响应。确认参数组的定义见图 9。某些参数组所需的响应的类型将在应用层中定义。对于群功能参数组(见 5.4.5) ,群功能值参数允许某设备指明一个确认了的特定群功能。每个群功能参数组对应一个唯一的群功能值。群功能值只在 0 到 250 之间。参数组编号: 确认定义: 用来提供发送方和接收方之间的握手机制重复传输速率: 收到需要此类型的确认的 PGN 时数据长度: 8 字节数据页: 0PDU 格式: 232特定 PDU: 目标地址 (1) =全局(255)缺省优先级: 6参数组编号: 59392(00E800 16)此消息类型使用的参数的数据范围:控制字节: 0 至 2 见以下定义3 至 255 保留给 SAE 分配群功能值 0-250 可用时对每个 PGN 作特定的定义大多数情况下位于适用群功能参数组数据域的第一个字节。251-255 遵循 SAE J1939-71 的约定肯定确认: 控制字节 = 0字节: 1 控制字节 = 0,肯定确认(ACK)2 群功能值(若适用)3-5 保留给 SAE 分配,置各字节为“FF 16”6-8 被请求消息的参数组编号否定确认: 控制字节 = 1字节: 1 控制字节 = 1,否定确认(NACK)2 群功能值(若适用)3-5 保留给 SAE 分配,置各字节为“FF 16”6-8 被请求消息的参数组编号拒绝访问: 控制字节 = 2字节: 1 控制字节 = 2,拒绝访问(PGN 支持但被拒绝)2 群功能值(若适用)3-5 保留给 SAE 分配,置各字节为“FF 16”6-8 被请求消息的参数组编号(1) 全局目标地址使对所有确认消息可以过滤同一个 CAN 标识符图 9 确认 PGN 的定义6.4.5 群功能此消息类型用于一组特殊功能(如专用功能、网络管理功能、多组传输功能等) 。每个群功能由其PGN 识别,见图 10 和图 11。功能本身是在数据结构中(一般是在数据域的第一个字节)定义的。专用群功能和传输协议在后续章节中详细解释。专用群功能规定了一个在传输专用消息过程中消除不同制造商之间 CAN 标识符冲突的方法,同时也规定了当需要时接收和识别专用消息的方法。如在 J1939-21中定义的消息不够用,群功能可能要自行规定请求,ACK 和(或)NACK 的组成机制。使用 PGN 59904 请求(参见 5.4.2)能够检查目的地址是否支持某特定参数组的消息类型或群功能。若支持,则响应设备发送确认 PGN,其中控制字节值为 0(肯定确认)或 2(拒绝访问) 。若不支GB/T xxxxx200x15持,则响应设备发送确认 PGN,其中控制字节值为 1(否定确认) 。SAE J1939 的 PDU 格式的其他部分参数组要正确地填入(参见 5.4.4)注:在本节每个定义中,术语“不支持”意味着该 PGN 不会被发送。靠此办法不可能决定设备接收到 PG 时是否遵照此 PG 行事。参数组名称: 专用 A定义: 专用 PG 使用目的地的特定 PDU 格式以允许制造商将他们的专用信息定向到特定目的节点。如何使用消息的数据域由各制造商决定。此专用信息由制造商决定使用,但应该遵循避免使专用信息超过整个网络信息的 2%的约束。重复传输速率: 用户自定义数据长度: 0 至 1785 字节(支持多组)数据页: 0PDU 格式: 239特定 PDU: 目标地址缺省优先级: 6参数组编号: 61184(00EF00 16)字节: 1-8 制造商专用(见 5.1.2)群功能的参数数据范围:SAE 未定义图 10专用 A 的 PGN 定义参数组名称: 专用 B定义: 专用 PG 使用 PDU2 格式消息以允许制造商按需定义 PS(GE)段内容。但使用时应该遵循避免使专用信息超过整个网络信息的 2%的约束。消息数据域和 PS(GE)的使用由制造商决定。消息数据长度由制造商定义。因此,就传输而言,两制造商可能使用相同的GE 值而数据长度码不同。信息响应者要区别此二者的不同。重复传输速率: 用户自定义数据长度: 0 至 1785 字节(支持多组)数据页: 0PDU 格式: 255特定 PDU: 群扩展(制造商分配)缺省优先级: 6参数组编号: 65280 至 65535(00FF00 16至 00FFFF16)字节: 1-8 制造商专用(见 5.1.2)群功能的参数数据范围:制造商对该参数组使用的定义可能导致每个元件供应商和源地址数据长度码是唯一的。因为多源地址能使用同一个专用参数组编号值(PGN=65280)但用于不同目的,所以使用该参数组时要小心。图 11专用 B 的 PGN 定义 消息优先级CAN 数据帧的优先级按照 CAN 规范 2.0 版 B 部分定义。CAN 标识符的值决定了消息优先级。较小值(0)具有较高优先级,值最大的 CAN 标识符的优先级却是最低的。遵循本文档 5.9 节中阐明的方针和 SAE J1939 母文档(SAE J1939)中的定义,消息优先级在应用层中定义。总线访问当总线空闲时,任何节点都可以传送数据帧。若两个或两个以上节点要同时传
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论