商用车控制系统局域网络(CAN )通信协议--网络管理
ICS
GBT XXXX7 ,XXXX
商用车控制系统局域网络CAN 通信协议
第 7 部分网络管理
英文名称
SAE1939-812003 NEQ
征求意见稿
20xx-xx-xx 发布 20xx-xx-xx 实施
国家标准化管理委员会
GBT XXXX7 ,XXXX
前 言
GBT ××××《商用车控制系统局域网络CAN 总线通信协议》包括 10
个部分
第 1 部分物理层屏蔽双绞线 250K 比特秒
第 2 部分物理层非车载诊断连接器
第 3 部分物理层非屏蔽双绞线 250K 比特秒
第 4 部分数据链路层
第 5 部分应用层车辆
第 6 部分应用层诊断
第 7 部分网络管理
第 8 部分参数组分配
第 9 部分地址和标识分配
第 10 部分可疑参数编号SPN
第 11 部分网络层
本标准为 GBT ××××的第7 部分对应于 SAE1939-812003
《网络管
理》本标准与 SAE1939-81 的一致性程度为非等效采用主要差异如下
按 11 规定增加了前言范围
将原文引用的 SAE 有关标准改为引用我国的相关国标
进行了编辑性修改
删除了涉及农业机械等非汽车的有关内容
本标准的附录 A B CD 均为资料性附录
本标准由全国汽车标准化技术委员会提出
本标准由全国汽车标准化技术委员会归口
本标准由 负责起草
本标准主要起草人
GBT ××××7
商用车控制系统局域网络CAN 总线通信协议
第 7 部分网络管理
1 范围
本部分规定了 CAN 总线网络的管理要求
本部分适用于 M M 及 N 类车辆
2 3
2
性引用文件
下列文件中的条款通过本标准的引用而成为本标准的条款凡是注日期的引用文件
其随后所有的修改单不包括勘误的内容或修订版均不适用于本标准然而鼓励根据
本标准达成协议的各方研究是否可使用这些文件的最新版本凡是不注日期的引用文
件其最新版本适用于本标准
GBT ××××9 《商用车控制系统局域网络CAN 总线通信协议》第 9 部分地
址和标识分配
GBT ××××4 《商用车控制系统局域网络CAN 总线通信协议》第 4 部分数
据链路层
3 术语及定义
本标准采用下列术语和定义
3 (1
控制器应用程序CA Controller Application CA
控制器为电控单元 ECU 内执行一种特殊控制功能的软件和硬件控制器里的软件称为
控制器应用程序CA 一个ECU可以执行一个或多个控制功能因此可以包括一个或
多个CA 为了能够在本标准网络上进行通信每个CA都必须有一个地址以及一个和它联系
在一起的名字
3 (2
地址配置功能 Address Configuration and Capability
地址配置是一种CA确定在地址声明中使用的源地址的方法出于地址声明过程的
需要地址配置定义两种功能单地址功能和仲裁地址功能由名字的地址仲裁能力域决定
相关属语和定义如下
3 (2 (1
单地址CA Single Address Capable CA
对于单地址 CA有几种改变 CA 地址的方法其中只有一种不用借助外部设备如果
没有外部的干预这些 CA 无法改变它们已声明并正在使用的地址它们包括不可配置地址
CA服务可配置地址 CA命令可配置地址 CA自配置地址 CA 这些 CA 名字的地址仲
裁能力域的值为 0 下面共定义了 4 类这种 CA可以使用不同的方法改变其源地址这种
分类方法并不相互排斥例如一个自配置地址 CA 的ECU 同时也可以是服务可配置地址CA
或是命令可配置地址的 CA 只有CA 在其设限的范围内声明不到地址时设计者才能采用
上述方法改变其地址
3 (2 (1(1
不可配置地址CA Non-Configurable Address CA
不可配置地址 CA 的源地址由制造商提供包括服务工具在内的任何手段都不能改变其
源地址注如果服务程序改写了 ECU 的软件代码仍然可以改变该CA 的地址
3 (2 (1(2
服务可配置地址CA Service Configurable Address CA
服务可配置地址 CA 是指源地址可以通过服务技术改变的 CA 运行在服务模式下
可以通过专用技术或者命令地址消息改变其地址一般需要一个服务工具完成该操作
3 (2 (1(3
命令可配置地址CA Command Configurable Address CA
命令可配置地址CA源地址可以通过命令地址消息改变的,,该类CA可以在,,,上
电时改变地址不需要服务工具或者运行于特殊模式要求车辆网络上有一个,,能够发送
命令地址消息来改变其地址并且命令可配置地址CA的程序能够识别出该命令
3 (2 (1(4
自配置地址CA Self-Configurable Address CA
这是一种特殊情况,,根据车辆的配置信息从一个有限的源地址集中选择一个可供
它使用的源地址挂车的网桥Bridge 是一个最好的例子在一个车辆中编号为,o2
的挂车它改变它的源地址是基于内部判断它位于车辆中的位置决定了它使用的地址如
果它被移到编号为,o1 的位置就必须使用指定给,o1 位置的地址注意每个位置只有
一个正确的地址CA 首先确定自己的位置然后使用这个位置的信息产生一个新的名字
再选择一个正确的地址使用插接头信息来确定自己处于左边右边的设备也属于这一类
注意能够自配置地址的 CA 通过改变名字来改变地址
3 (2 (2
可仲裁地址CA Arbitrary Address Capable CA
可仲裁地址的 CA根据内部算法可以从任何合适的源地址包括范围在 128-247 的
仲裁地址区中选择它的源地址然后声明该地址如果发生地址冲突的情况这类 CA 能
够重新计算一个CA 并重新声明地址直到所有从128-247 范围内的 120个地址全部被声明
名字的地址仲裁能力域的值表明了一个 CA 是否具有这个功能这种类型的 CA 特别适合于
在一个车辆上需要有多个相同设备实例的 CA 出现这种情况时由于可仲裁地址CA 用于
地址声明名字的地址仲裁能力域被设为 1降低了它的优先级因此在竞争同一个首选地址
时会失去仲裁这个结果是正确的因为该 CA 并不因其失去地址仲裁而影响其正常运行
注意如果 CA 的功能在正常情况下需要使用一个小于 128 的地址CA 必须首先声明那个
地址只有在地址声明过程中失去仲裁的情况下该 CA 才能声明范围在 128 以上的未用的
地址
3 (3
CA类型 Types of CAs
针对网络管理的需要CA 分为三类标准型诊断开发工具网络互连 CA
3 (3 (1
标准型CA Standard CAs
标准型CA是指主要不是用于网络连接编程诊断或者其它功能的工具的CA
标准型CA包括用于发动机变速箱制动虚拟终端仪表板和车辆导航等数据记
录仪也属于标准型CA但是如果它具有诊断的功能它必须满足诊断工具CA的要求标准
型CA除地址声明过程外不具有改变其他CA的源地址的能力
标准型CA可以有没有33节所列的地址选择功能本标准对标准型CA的地址配置功能
不作特别要求
3 (3 (2
诊断开发工具CA DiagnosticDevelopment Tool CAs
诊断开发工具 CA 是连接在一个子网上用于
调试开发监视该网上所有 CA
或者监视该子网的运行尽管这种 CA 可能不总连接在网络上但是对于一些特殊的车辆有
可能一直连接着这种工具不管怎样这类 CA 比标准型CA 拥有更多的功能它们主要被
设计成用于同网络上其它的 CA 进行交互并不具有其它的外部功能例如诊断工具并不希
望它提供扭矩或者刹车等
它们可能主要作为专用工具在指定制造商的 ECU 上进行操作也可能作为一个通用
的工具可以在多个制造商生产的 ECU 上操作或者只是连接在网络上独自工作为系统
集成或者 OEM 制造商提供网络集成服务
3 (3 (3
网络互连CA Network Interconnection CAs
网络互连CA 是指那些主要用于连接网络子网的 CA 主要由转发器桥接器路由
器和网关不管那种类型网络互连 CA 都实现从一个子网向另一个子网传递消息的功能
通过网络互连 CA 连接在一起的子网可以使用相同的协议比如在同一个车辆中有两
个符合本标准的子网也可以使用不同的协议比如从其它协议到本标准也可以连接到非
车载子网比如卫星令牌环或蜂窝网等
网络互连CA 如果作为网关把本标准子网连接到其它网络上这里只处理 CA 与本标准
相关的部分
4 要求
网络管理层为唯一识别网络上的CA管理地址分配和网络错误提供必要的定义和程序
每个 CA 应能提供唯一的 64 位名字CA 必须首先声明地址成功然后才能向网络发送如
果 CA 按地址声明过程声明地址失败必须按 43 给出的标准方式进行处理并向网络
41 名字和地址规定
在采用本标准的网络中地址用于保证消息标识符的唯一性以及表明消息的源地址有
时地址被称为源地址就是后一种用法地址声明消息包括地址和名字用于把名字和网络
中的某个地址关联在一起
每个CA在开始正常的网络通信之前必须有一个名字并且成功声明了一个地址名字
有两个用途其一用于表示CA的功能描述如发动机1发动机2 变速箱1ABS1 其二
作为一个数值用于地址仲裁把一个地址与唯一的名字com 相关联也就把一个地址
和一个CA关联起来ECU 的制造商和网络集成商必须保证所有在一个网络上传输消息CA的
名字是唯一的
com 名字
CA 的名字是一个64位的标识符由10个域组成其中有6个域的值由标委会分配给出
其余4个域的值或者根据网络特性以及汽车架构给出或者由生产厂商直接给出
源地址用于标识在指定网络中进行通信的 CA 而与CA 相关联的名字则主要用于识别
网络上的CA 及其功能利用网络管理协议中的地址管理程序在单个源地址与 CA 的名字
之间建立联系并在网络上进行声明附录 C 中给出了符合本标准ECU 命名的例子
网络上的每个CA 都应有一个名字这样 CA 可以根据它的主要功能被唯一标识当多
个 CA 试图声明同一个地址时CA 的名字也用于仲裁这样进一步增强了标识符的唯一性
网络上的每个CA 依次得到一个唯一的地址能够正确地和其它 ECU 仲裁 CAN 数据帧
尽管名字全部的域不要求是可编程的但实例域应可改变例如车辆中有备用或多
个实例存在这样可以通过改变实例域对其进行正确配置推荐采用首选地址和全部名字域
可编程的方法可以使用直接寻址的内部存储器存取协议对名字进行编程根据本标准故障
诊断部分的描述指针扩展部分是目标对象的索引这里设置为 000000002 以表明 SPN
地址空间的 SPN SPN2848 表示的是CA 名字
组成名字的各个域如表 1 所示并在下面的章节中分别对其进行定义
本标准的附录 B 部分列出了工业组汽车系统功能和制造商代码具体值
表 2 是名字的各个域在 CAN 消息中的字节顺序名字可以作为一个数值进行处理也
就与本标准的应用层部分的定义保持了一致当多个 CA 试着声明同一个地址时名字的所
有 8 个字节作为一个数值用于仲裁过程 见 com3
表 2
字节 1
位 8-1 ID 编号的最低有效字节第 8 位是最高有效位
第8 位紧接在消息的 DLC 位后发送
字节 2
位 8-1 ID 编号的第二字节第 8 位是最高有效位
字节 3
位 8-6 制造商代码的最低有效 3 位第 8 位是最高有效位
位 5-1 ID 编号的最高有效 5 位第 5 位是最高有效位
字节 4
位 8-1 制造商代码的最高有效 8 位第 8 位是最高有效位
字节 5
位 8-4 功能实例第 8 位是最高有效位
位 3-1 ECU 实例第 3 位是最高有效位
字节 6
位 8-1 功能第 8 位是最高有效位
字节 7
位 8-2 汽车系统第 8 位是最高有效位
位 1 保留
字节 8
位 8 地址仲裁能力
位 7-5 工业组第 7 位是最高有效位
位 4-1 汽车系统实例第 4 位是最高有效位
第1 位是最后发送的数据位在消息中离 CRC 最近
com1 名字域
名字域如表 1 所示按从左到右的优先次序排列汽车系统域的含义依赖于工业组域
的内容当功能域的值大于 127 且小于 254 时功能域的内容依赖于汽车系统域的内容图
1 所示为域定义之间的关系如果车辆系统或功能域的值不知道或本标准中没有定义可以
将其设为不可用 二进制的1名字域的所有值都应正确设置
表 1 名字域
地址仲 工业 汽车系 汽车 保留 功能 功能 ECU 制造商 ID
裁能力 组 统实例 系统 实例 实例 代码 编号
1 位 3 位 4 位 7 位 1 位 8 位 5 位 3 位 11 位 21 位
com2 com3 com4 41 15 com6 com7 com8 com9 com10 com11
字节 8 字节 8 字节 8 字节 7 字节 7 字节 6 字节 5 字节 5 字节 4 字节 3
字节 3 字节 2
字节 1
图 1 名字域中的从属关系
com2 地址仲裁能力域
地址仲裁能力域为 1 位该域表示 CA 是否可以使用可仲裁的源地址来解决地址声明冲
突如果该域被设为1当一个 CA 声明地址时与较高优先级数值较小名字的 CA
发生了冲突它就在可仲裁的源地址128 – 247范围中选择一个地址并将其声明为其源地
址对于自配置的 CA不具有地址仲裁能力它可以计算它的地址但不是从可仲裁的源
地址中选择新地址在选择源地址时要遵循更多的限制例如高速公路的挂车地址声
明过程见42
com3 工业组域
工业组域为 3 位由 CATARC 定义并分配工业组域确定与具体工业组相关联的名字
com4 汽车系统实例域
车辆系统实例域为 4 位用于识别在一个已连接的网络中存在的一个特定汽车系统的某
个具体系统
注如果网络中只有一个车辆系统或者是一个特定类型的车辆系统的第一个车辆系统
则要把车辆系统实例域设置为零以表示这是第一个实例
com5 汽车系统域
汽车系统域为 7 位由 CATARC 定义并分配该域与工业组域一起和一个公用名字相
关联汽车系统域为网络中一组功能提供一个公用名例如目前已定义的工业组中车辆
系统牵引车属于公共工业组挂车属于高速公路工业组
com6 保留域
该域预留以备以后使用其值应设为零
com7 功能域
功能域为 8 位由 CATARC 定义并分配取值范围在 0 到 127其定义与其它域无关
取值大于 127 时其定义依赖车辆系统域功能域与工业组域和汽车系统域结合为特定的
控制器确定一个公用名字这种组合的公用名不包括任何具体的功能
com8 功能实例域
功能实例域为 5 位在某个网络的同一个汽车系统中确定一个功能实例如果只有
一个或是第一个特定的功能要把功能实例域置为零表示这是第一个功能实例
对于单个制造商和系统集成商建议在解释和使用功能实例域时必须达成一致例如
一个由两部发动机和两部变速器组成系统在实际的物理连接中必须将发动机实例 0 物理
连接到变速器实例 0将发动机实例 1 连接到变速器实例 1
com9 ECU 实例域
ECU 实例域为 3 位它表明是给定功能相关的一组电控单元中的哪一个例如一台发
动机有两个独立的控制单元都连接在同一个网络中第一个 ECU 的实例域设为 0第二个 ECU
实例域设为 1如果某个 CA 只有一个 ECU 或是 CA 的第一个ECU 要把ECU 实例域置
为零表示这是第一个 ECU 实例
com10 制造商代码域
制造商代码域为 11 位它表明哪一家公司对使用这个名字的 ECU 产品负责制造商代
码是由 CATARC 分配制造商代码域与名字中的其它域无关
com11ID 编号域
ID 编号域为 21 位其值由 ECU 制造商设置当名字不唯一时必须使用 ID 编号这
个域必须是唯一的并且在断电的情况下保持不变该域必须能够解决任何地址竞争问题
制造商必须保证产品中的 ID 编号是唯一的制造商可以把任何信息如制造时间 日期模
块序列号模块在车辆中的安装位置等编码成 ID 编号
com12 名字域中的从属关系
图 1 是汽车系统和工业组的高 128 128 – 255项功能的从属关系示意图另外也表明
了ID 编码与制造商代码之间的从属关系保留域与其它域无关功能 0 到 127 与工业组和
汽车系统无关功能 128 到 254 依赖于汽车系统和工业组
com 地址
地址是个一字节值用于识别网络上的 CACA发送的每个消息的 ID 中都包括 CA 的地
址这样就保证了 CA 发送消息的唯一性
在网络上工作的 CA 大部分都有一个设置好的首选地址见 GBT ××××9CA 必
须尝试首先使用该地址如果 CA 的首选地址已被网络上另外一个 CA 成功声明根据 CA 的
地址仲裁能力及未使用地址的有效性CA 可以选择尝试申请另外一个源地址或者发送一个
不能申请地址的消息
在一个特定的车辆网络或者车辆子网中源地址必须是唯一的车辆每次上电后源
地址可以被关联到不同的 CA对于不同的车辆源地址也可以不同
其它的 CA 可以假定声明 0 到127 和248到 253 范围内首选地址的 CA应执行该地址定
义的功能并在名字域中指明其功能通常和 CA 相关联的名字在车辆初始化时配置或在
在整车装配时配置或者在车辆上增加,,,时配置和源地址联系在一起的名字不管它
使用哪个地址都包括有,,功能的标识
本标准共提供五种地址配置功能详见,3这五种地址配置功能并不表明一个给定的
,,必须支持这些功能对于采用本标准的 CA 不要求有特定的地址配置功能但是所有
的 CA 必须具有本标准 45 中规定的最小网络管理功能如果整车制造厂针对特殊应用有特
殊要求CA要具备地址配置功能
对于某些 CA有些地址配置功能比其它的选址功能更合适例如数据记录仪标定
ECU网桥部分工具它们可能要连接到一个正在运行的网络上地址仲裁功能就更适合
于这一类的 CA因可能会遇到多个相同类型的 CA同时申请相同首选地址
CA 的初始地址 首次上电时 CA 尝试申请的那个地址 应由制造商设置并和
GBT ××××9 相匹配为使整车制造厂能够正确的配置车辆CA 的初始地址应可重新编
程对于常规汽车没有必要但它为一个给定的 CA 拥有多个实例比如有两个发动
机等的应用场合提供了灵活性CA 初始地址的可重新编程特点对于临时联网或者售后的
ECU 特别重要
地址 254 也称为空地址只能在消息标识符中的源地址域使用主要用于网络管理的通
信见 42
com2 地址 255
地址 255 也称为全局地址只能在消息标识符中的目标地址域中使用不能用于源地址
域见 com 和 com
42 网络管理程序
网络管理程序用于共同管理网络的单个CA 所传递的消息及其采取的
网络管理协
议的主要功能是地址管理和网络出错管理
除了使用空地址外网络管理消息和其它的消息具有相同的特征和要求本标准的数据
链路层中定义的地址声明请求消息是一种常规的请求消息对于网络管理消息只有地址声
明请求消息和不能声明地址消息才能使用空的源地址254 指向空地址254 的请求不
会获得响应
网络管理消息用于请求被网络上其它CA 正在使用的地址和名字为一个 CA 声明一个
地址公告不能声明地址或者命令其它的 CA 使用新地址表 2 描述了这些消息
com 地址声明请求消息
任何一个CA都可以使用地址声明请求消息来请求名字以及连接在网络上ECU的CA的地
址每个 CA 一收到地址声明请求消息可以发送一个包含其地址和名字的地址声明消息
如果 CA 不能声明地址就发送一条不能声明地址的消息作为响应除非这个 CA 还没有
声明地址没有声明地址的 CA此时应声明一个地址CA 在尝试声明地址之前不能发送不
能声明地址消息或者其它任何消息
表 2 地址管理消息
消息名称 PGN 参数组 PF 协议 PS 特定 SA 源地 数据 数据
编号 数据单元 协议数据 址 长度
格式 单元 字
节
请求参组地址声 59904 234 DA 目标 SA 1 3 PGN60928
明请求 GBT ××××4 地址
声明地址
声明地址 60928 238 255 SA 8 名字
不能声明源地 60928 238 255 254 8
名字
址
命令地址 65240 254 216 SA 9 2 名字新 SA
1如果没有声明地址源地址可以设置为 254
2命令地址消息是通过传输协议 BAM 发送的参见 GBT ××××4
地址声明请求消息可以发送到一个特定的地址或者一个全局目标地址 255 如果 CA
要使用一个特定地址它可以向这个地址发送一条地址声明请求进行查询以确定这个地址
是否已经被别的 CA 所声明CA 还可以通过向全局目标地址255发送地址声明请求并检
验响应从而确定在网络上是否存在正在工作的具有特定名字的 CA
如果一个 CA还没有声明地址地址声明请求消息请求的源地址域必须是空地址 254
如果 CA 发送的地址声明请求到全局地址CA 自身必须能够作出响应
com 地址声明不能声明
地址声明PGN参数组编号60928 有两种用法声明一个地址和公告不能声明地址前
com1的地址声明消息后com2的不能声明地址消息任何CA都可以使用
地址声明消息或者用于响应接收到的地址声明请求消息或者只是简单的在网络上声明一
个地址在网络初始化期间或者当CA连接到正在运行的网络时CA必须发送地址声明消息
如果CA接收到一个声明它自己源地址的地址声明消息就把在地址声明消息中收到的名字同
自己的名字进行比较从而确定哪一个CA名字的优先权更高com3较小的数值具有
较高的优先权如果接收到地址声明的CA确定其名字的优先权高可以发送一条包含其名
字和地址的地址声明消息如果CA名字的优先权低CA就要尝试声明另一个地址或者发送一
条不能声明地址消息以这种方式失去地址仲裁的CA如果它正处于发送传输协议消息的过
程它必须立即停止发送传输协议消息并且不能发送传输协议放弃消息接收传输协议消
息的CA必须能够通过正常的传输协议消息超时数据链路层协议中规定为125秒处理过程
到这种情况对于没有传输完毕的传输协议数据帧根据数据链路层中定义的规则和超
时时间50毫秒范围内终止传输
CA 可以通过发送不能声明地址消息或者发送源地址为空地址的地址声明消息表明 CA
已经进行了地址声明但是没能成功声明到地址网络内的 CA 在它成功声明其地址之前不能
在网络通信中使用它的地址对于网络内部互连设备处理其它 CA 的消息是一种特殊情况
网络内部互连设备在声明地址之前可以象转发器一样转发消息而不用考虑发送消息的源地
址对于网络内部互连设备的更进一步的要求参见网络层
如果网络配置中存在多个网桥由于地址声明消息的发送和接收要跨越多个网桥就
会产生明显的延时这些地址声明是通过网桥的在这些系统中250ms 的延时可能不足以
防止 CA 在成功声明地址后产生进一步的仲裁
CA 一旦声明地址成功就可以开始在网络上传输其它的消息并对后继的地址声明作出
响应
地址 254 是空地址对这个地址的声明都是无效声明如果源地址是 254 的地址声明
消息是不能声明地址消息
地址声明消息总是发送到全局地址255 以便于网络上所有的ECU 都能接收该消息
并确保当前地址与名字的一致对于数据链路层协议中规定的请求消息的要求地址声明消
息是个特例数据链路层协议中规定如果请求消息指定特定目标地址作出响应目标地址
应设为被请求的地址
com1 地址声明消息
发送接收速率 依照要求
数据长度 8 字节
数据页 0
协议数据单元格式 238
特定协议数据单元 255全局地址
默认优先权 6
参数组编号 6092800EE0016
源地址 0到 253控制器应用程序声明的地址
控制器应用程序的名字
字节1 位8 – 1 ID编号的最低字节 com11
字节2 位8 – 1 ID编号的第二字节 com11
字节3 位8 – 6 制造商代码的低3位 com10
位5 – 1 ID编号的最高5位 com11
字节4 位8 – 1 制造商代码的高8位 com10
字节5 位8 – 4 功能实例 com8
位3 – 1 ECU实例 com9
字节6 位8 – 1 功能 com7
字节7 位8 – 2 车辆系统 com5
位1 保留 com6
字节8 位8 地址仲裁能力 com2
位7 – 5 工业组 com3
位4 – 1 车辆系统实例 com4
com2 控制器应用程序的名字
控制器应用程序的名字是一个 8 字节的值唯一标识正在声明地址的 CA
数据长度 8 字节
分辨率 见到 com1
数据范围 0 到 1XXXXXXXXXX709551616
类型 标准的
可疑参数编号 2848
叁考 com1 和 com3
com3 不能声明地址
不能声明地址消息和地址声明消息使用同一个参数组编号它的源地址为 254 空地
址 任何 CA 在以下情况时发送不能声明地址消息CA 没有地址仲裁能力又没能声明到其
首选地址CA 有地址仲裁能力但是由于没有有效的源地址可用没能声明到源地址
不能声明地址消息可以用作对地址声明请求消息的响应应在接收到的地址声明请求
消息和不能声明地址响应之间插入 0 到 153ms 的伪随机延时用于把由不能声明地址消息导
致总线出错的潜在可能性减到最小当总线上同时发送两个或两个以上具有相同的 PGN 和源
地址的不能声明地址消息时就会产生总线出错因为这样的消息其仲裁帧相同但是其
数据帧不同数据帧包括 CA 的名字在数据帧进行位检测时就会产生一个出错帧进而
放弃该消息因此在消息的校验部分之后才会插入出错帧也就浪费了大量的总线时间
产生伪随机延时的方法见 com3
没有声明到地址的 CA 不能发送除不能声明地址消息和地址声明请求之外的任何消
息
com 命令地址
连接在网络上的 CA如网桥诊断工具或扫描工具可以使用命令地址消息命令其它
的 CA被命令的 CA使用给定的源地址命令地址消息可用于命令特定名字的 CA使用一个
特定源地址 见附录 A 图 A9 和 A10 CA 接收到包含有自己名字的命令地址消息后有两种响
应方式使用命令地址消息给出的新地址启动地址声明程序表明接收该命令不发送应答表
明忽略该命令如果 CA 成功声明了命令地址后继消息传输都使用这个命令地址直到接
收到另一个命令地址消息或通过上电地址仲裁完成另外一个地址声明过程为止如果
接受命令 CA 选择接收命令地址消息但不能把地址转换到命令地址就应忽略命令地址附
录 D 图D3 描述了处理命令地址的过程如果接受命令的 CA 不接收命令地址为了使网络能
正常运转操作员或技术员要用其他的方法修改 CA 的源地址或名字如果修改了源地址或
名字CA 在网络上进行数据传输之前必须重新发送地址声明消息ECU的制造商可以选择只
接收来自服务工具或网桥的命令地址消息ECU制造商还可以要求在接受命令地址消息之前
进行安全认证
命令地址消息包括 9 个字节的数据使用传输协议的 BAM 广
播公告模式消息发送
到全局地址255 设计为支持命令地址消息的CA 必须支持传输协议的 BAM 消息
com1 命令地址消息
传送接收速率 依照要求
应答 参见附录A 图A9和 A10
数据长度 9 字节
数据页 0
协议数据单元格式 254
特定协议数据单元 216
默认优先权 6
参数群编号 6542000FED816
命令地址对象的名字
字节1 位8 – 1 ID编号的最低字节 com11
字节2 位8 – 1 ID编号的第二字节 com11
字节3 位8 – 6 制造商代码的低3位 com10
位5 – 1 ID编号的最高5位 com11
字节4 位8 – 1 制造商代码的高8位 com10
字节5 位8 – 4 功能实例 com8
位3 – 1 ECU实例 com9
字节6 位8 – 1 功能 com7
字节7 位8 – 2 车辆系统 com5
位1 保留 com6
字节8 位8 地址仲裁能力 com2
位7 – 5 工业组 com3
位4 – 1 车辆系统实例 com4
地址分配
字节9 位8 – 1 新源地址 com2
com2 命令地址对象的名字
用于标识命令地址指向的特殊 CA
数据长度 8 字节
分辨率 见到 com1
数据范围 0 到 1XXXXXXXXXX709551616
类型 标准的
可疑参数编号 2849
叁考 com1
com3 地址分配新源地址
命令地址消息数据域的第九个字节8 位它包含了分配给 CA 的源地址接受该地址
的 CA 的名字和命令地址消息的前八个字节表示的名字相同CA 在接收了命令地址消息并
成功声明地址后发送的所有消息都应使用这个源地址
数据长度 1 字节
分辨率 见 com
数据范围 0 到 253
类型 标准的
可疑参数编号 2847
叁考 com1
com 工作组
工作组用于简化网络设备之间的通信在网络上有多个应用程序每个应用程序都有自
己的名字可能分布在不同的网络节点ECU 中就通信而言它们作为一个分布式进程完
成一个单一的功能工作组允许使用单个地址作为全局目标的一个子集用于一对多的通信
且允许多对一的接收方把多方互相联系起来组成一个特殊的集合在每一种情况下通信的格
式变为一对一使用的设备将所有工作组数据发送给工作组主 CA 的地址
尽管消息是单独地发送给每个成员所有工作组成员都要侦听主 CA 发送的消息工作
组成员发送的关于工作组的消息只使用其数据入口部分一个工作组成员对请求的响应通常
发送给工作组主 CA而所有的成员都能侦听到工作组主 CA 和成员都需要附加程序决
定什么时间才能把消息发送给主 CA以便于编程操作或擦除故障表命令不被应用到整个工
作组
最初工作组只是用在建筑和农业领域这些领域里有几个 CA 分布在不同 ECU 内都
实现一个虚拟终端的功能另外在一个实际系统里几个 CA 不一定分布在不同的 ECU
内它们同虚拟终端通信时虚拟终端能理解所有这些名字并把它们提供的数据当作一个
虚拟终端实体的数据同样一个任务控制器可能需要命令多个 CA 来执行一个动作如它
们都是一个工作组的成员发送给工作组主 CA 的命令与发送给工作组里每个成员的一系列
命令的作用相同对于分布式的功能可以减轻数据链路层消息的负荷也会减少控制器的
工作量否则控制器需要发送命令或者其它特定目标的消息给工作组的所有成员
需要用到工作组的例子牵引车挂车系统一个单独的命令要应用到给定挂车上的
所有 CA 不管这些CA 在几个 ECU 内
需要两种类型的消息定义工作组第一种用于定义工作组集合的大小第二种用于识
别工作组的成员工作组的主 CA 负责传输所有这些消息
com1 应用注释
com11 消息顺序
一个工作组主 CA 消息之后应是一系列工作组成员消息消息的数目等于工作组集
合大小减 1如果一个工作组的使用者收到的消息数目不对它应向主 CA 请求工作组
主 CA PGN 主 CA 在收到请求之后应完成工作组的定义
com12 工作组成员消息间隔
工作组是根据其成员的名字定义的工作组成员消息应以 100ms 的时间间隔发送如果
上一个工作组成员消息之后超过 350ms 没有后续消息接收者就可以认定工作组主 CA 已
发送完所有的成员消息
com13 常规网络程序的兼容性
工作组成员是网络上独立的功能作为个体进行通信故障消息从 CA 源地址发出在
多数情况下仍使用 CA 的源地址作为所有清除故障表编程参数等命令的目标地址工作组
成员的程序必须实现工作组成员与主 CA 之间的独立通信不要求所有的工作组成员必须实
现它们不需要的程序也可以通过编程有意地把共用数据写入所有工作组的所有成员这样
并不最合理并且要求拥有成员名字的应用软件支持这种做法
不与工作组一起工作的应用软件可以忽略工作组消息并直接与其它网络设备通信
com14 工作组成员关系的限制
网络上的每个CA 最多只能是属于一个工作组如果一个现有的工作组主 CA 发出一个
新的工作组主 CA 消息那么网络上工作组的用户必须用新的工作组定义来取代旧的工作
组主 CA 如果知道有哪些改变它必须负责重新定义工作组并且在完成工作组定义之后发
送一条数据为 0 的工作组主CA 消息工作组用户接收到该消息不应对其进行计数
com15 配置改变
如果工作组主 CA 的名字发生变化要求它创建一个新的工作组原来的工作组将不复
存在它的定义仍然保留在用户设备的存储器中直至通过一些清除方法把它清除掉尽管
所有的工作组主 CA 在改名之前都可以很方便的清除工作组但并不总是这样检测和纠正
错误如成员重复定义的工作由工作组的用户完成工作组用户必须定期检查是否存在工
作组成员重复定义和未使用的工作组恢复被那些工作组占用的内存注意工作组主 CA
的源地址发生改变并不改变该组的定义用户在接收到新的地址声明后应更新与名字相关
联的 SA工作组成员也必须改变它们期望接收的工作组通信的地址
com16 源地址改变
工作组成员的源地址发生改变就要求工作组用户把新的 SA 关联到适当的工作组因
工作组成员是根据名字定义的所以 SA 的改变可以在工作组成员收到新的地址声明消息时
进行处理
com17 缺少工作组成员
一个工作组建立时可以包括当前网络上没有的成员用户应当按指定的成员总数来创建
工作组并且在声明地址时添加成员的 SA这个过程与上述改变一个已激活成员的 SA 的
过程有点不一样它是根据另一个设备后来的地址声明来改变 SA对于这种情况工作组
主 CA 要负责知道该工作组所有潜在的工作组成员的名字当然主 CA 可以在新成员加入
网络的时候修正工作组的定义
注用户是指一个理解工作组并且知道怎样作为一个独立实体与工作组通信的控制器应用软件 CA
它不是所描述的工作组成员但可以成为另一个工作组的成员或主 CA
com2 工作组主CA消息,WSMSTR PGN 65037
由工作组主CA 发送用于确定该组中成员的个数主 CA 也作为其中一个成员计算在总
数之内消息的源地址应作为主CA 的名字也有特殊的工作组可根据主CA 的名字进行识别
传输率 根据需要
数据长度 8个字节
数据标明的页数 0
PDU 格式 254 全局 PDU2
PDU 特性 13
默认优先权 7
参数群号码 65037 FE0D16
成员的数目
字节 1 位8-1 工作组的成员数目 com3
字节 2-8 保留
com3 成员数
表示一个特殊工作组中成员的个数工作组根据工作组主 CA 的名字进行识别其名字
与包含成员数参数的消息源地址关联在一起没有成员可以同时属于多个工作组
数据长度 1 字节
分辨率 1个成员
数据范围 2 到 250 在一个工作组中最少有2个成员最大值由网络中节点的
最大值决定
类型 标准的
可疑参数编号 2409
叁考 com2
com4 工作组成员消息,WSMEM PGN 65036
由工作组主CA 发送用于指定某个具体工作组的一个独立成员工作组主 CA 的源地址
用于识别工作组有多个这种消息可由任何一个工作组主 CA 发出消息数比工作组的成
员数少 1不需要消息来确认主 CA 的名字因主 CA 的名字可以从其地址声明中得到消
息的结构要求与工作组通信的单元必须核实它们已经收到了工作组成员消息的正确数目这
样可以识别工作组中的所有成员
传输重复率 根据需要
数据长度 8个字节
数据标明的页数 0
PDU 格式 254 全局 PDU2
PDU 特性 12
默认优先权 7
参数组号码 65036 FE0C16
工作组成员名字 这个工作组成员的确切的名字通过这个消息的源地址识别
字节1 位8 – 1 ID编号的最低字节 com11
字节2 位8 – 1 ID编号的第二字节 com11
字节3 位8 – 6 制造商代码的低3位 com10
位5 – 1 ID编号的最高5位 com11
字节4 位8 – 1 制造商代码的高8位 com10
字节5 位8 – 4 功能实例 com8
位3 – 1 ECU实例 com9
字节6 位8 – 1 功能 com7
字节7 位8 – 2 车辆系统 com5
位1 保留 com6
字节8 位8 地址仲裁能力 com2
位7 – 5 工业组 com3
位4 – 1 车辆系统实例 com4
com5 工作组成员名字
作为工作组成员特殊 CA的名字由消息的源地址确认参数为名字格式见 com
数据长度 8 字节
分辨率 见到 com1
数据范围 0 到 1XXXXXXXXXX709551616
类型 标准的
可疑参数编号 2845
叁考 com1
43 网络出错管理
网络出错管理为检测与地址配置相关的错误提供了一种手段方法如 CA 不能成功声
明地址其它与选址相关的错误如重复地址声明或者名字重复可以通过诊断工具的地
址声明请求功能检测出来
com 不能声明地址
如 CA 尝试声明源地址由于该地址已经被网络上另一个拥有更高优先权名字的 CA 声
明声明地址没能成功这时就会产生不能声明地址的错误服务工具在有些系统中是网
桥可用于检测并解决声明地址失败故障服务工具可以检测不能声明地址消息并把该故
障报告给操作人员
44 地址声明 CA 初始化程序
每个 CA 在完成上电自检POST 后发送其它通信消息之前要通过地址声明消息
获得一个整车网络中唯一的源地址成功声明源地址的过程首先发送一个地址声明消息声
明地址其后没有收到竞争该地址的地址声明消息地址在0-127 和 248-253 范围内具有
单一地址的 CA可以在发送地址声明信息后立即开始正常的网络通信对于其它的 CA 在
使用地址之前要允许仲裁地址因此要等到发送地址声明消息 250ms 后才可以开始或恢复
正常的网络通信
以下程序保证任何重复的地址在初始化过程期间能被检测到并得到解决
com 地址声明优先次序
当两个 CA 竞争一个地址时优先权应分配给名字的数值最小的 CA 名字应看作一个单
一的 8 字节数值对于该值地址仲裁能力位是最高位例如发动机实例 0 和发动机实例
1 都希望得到同一个地址但发动机实例 0 有一个数值相对较小的名字所以它便赢得了地
址仲裁这个过程见附录 A 的图A2 和 A3
要求对地址声明消息数据域中的 8 字节名字进行比较以消除地址声明过程的不确定性
com 地址声明要求
每个 CA 在初始化名字或源地址改变时必须声明它的源地址一个 CA 可以支持并
根据命令地址消息进行工作对后者要提供信息确认已收到了命令地址消息保证每个 CA
能够得到有效的地址并担负该地址的责任如声明地址的 CA 没有接收到其它 CA 对该地址
的声明确保了其它CA 已经正确的竞争了该地址
地址声明消息的目标地址为全局地址255 时表明是向网络中所有CA 进行公告
对于一个能接收自己发出消息的 CA应能区分它接收到的地址声明消息是自己发出的
还是来自其它 CA 的必须实现这种功能才能保证检测出重复地址
com1 地址声明请求的要求
如地址声明消息请求来自尚未成功声明地址的 CA请求的源地址必须是空地址 254
com 地址声明初始化规则
下列规则适用于所有的 CA 最低要求
com1 对于发向全局地址的地址声明请求的响应
对指向全局地址的地址声明请求CA 必须进行响应响应可以是地址声明消息或是
不能声明地址消息如果该 CA 没能成功声明一个地址
com2 对于发向特定地址的地址声明请求的响应
对指向 CA 地址的地址声明请求CA 必须进行响应响应的地址声明消息应发送至全
局地址255
com3 对自身地址的地址声明请求的响应
当 CA 接收到的地址声明消息中声明的源地址与自己的地址相同时如果自己的名字值
小于接收到的地址声明消息中的名字值应发送一条地址声明消息如果自己的名字值大于
接收到的地址声明消息中的名字值CA 不能再使用该地址该 CA 可以发送一个不能声明
地址消息或尝试声明一个不同的地址
com4 地址的竞争
CA 因发现有更高优先级的竞争声明而不能使用其地址时应发送一个不可声明地址消
息CA 为不可配置服务可配置或命令配置类型或选择另一地址并尝试声明该地址CA
为自配置并具有地址仲裁能力类型正在与该 CA 通信的 CA 通过监视上述的地址仲裁过
程应能判断出该 CA 已经不可用或改变了地址
com 初始化的消息时序
对于各类 CA 在各种可能情况下的初始化时序图表见附录 A 中图 A1 ,7 针对每个时
序图的适用条件如下进行说明各图中用到的地址和名字的优先级见 com 描述地址声明
过程的状态图见附录 D 图D1 D2 和 D3
com1 网络中的CA 初始化消息时序
网络上所有CA 的初始化消息时序见附录A 图A1 A2 A3 和 A4 这些时序图的应
用条件见表 3
表 3 时序图应用条件
图序号 时序图应用条件
A1 CA 在没有地址竞争时的地址声明
A2 两个单地址的 CA 不同时声明相同地址
A3 CA A 的名字小于CA B 的名字B 而且 CA B 可自配置或具
有地址仲裁能力
A4 两个 CA 同时声明相同的地址
com2 网络管理消息中潜在的相同标志符
对不同 CA 发送的网络管理消息可能存在相同的消息 ID 这些网络管理消息共有3 条
地址声明请求消息地址声明消息和不能声明地址消息
a ( 两个不同的 CA 同时从两个空地址254 发送地址声明请求消息是没问题的
因两条消息的数据部分相同
b ( 两个不同的 CA 同时发送地址声明消息竞争同一个地址因两条消息的数据部
分两个 CA 的名字不同造成总线冲突解决com3
c ( 两个不同的 CA 同时从空地址254 发送不可声明地址消息因两条消息的数
据部分两个 CA 的名字不同造成总线冲突解决com3
com3 地址声明总线冲突管理
如有多个 CA 具有相同的地址但名字不同同时发送地址声明消息就会导致总线出错
在发送地址声明消息时采用下面的特殊过程以减小产生总线冲突的可能性直至关闭整个总
线
CA 发送地址声明消息后必须监视总线出错信息如出错信息表明了总线出错如果可
能应终止 CAN 硬件的自动重发功能
应在帧结束后等待一个传输的延时时间重新调度地址声明消息的重新发送传输延时
时间需要经过计算得到一个0 – 255的伪随机值制造商可以选择名字串行号或者其它的
具有唯一性的信息用于产生伪随机值的种子在发送下一个地址声明消息之前应把传输延
时时间加入正常的空闲周期CA必须能在计算到的传输延时时间误差范围为? 06 ms的时
间内调度下一个地址声明消息
由伪随机数发生器产生的 0,255 数乘以 06ms 得到 0,153ms 的延时总线上一条消
息需要的最大时间如果第二次发送的地址声明消息又导致了总线错误应使用一个新的
伪随机数重复上述过程
附录A 的图A4 阐明了两个 CA 同时声明相同地址的过程
com4 不能获得地址的 CA
对于不能获得地址的 CA它对地址声明请求消息的响应消息时序图如图A8 CA 在等
待一个传送延时后发送一个不能声明地址的消息来响应地址声明请求如果产生不能声明
地址消息的冲突就采用 com3 中的冲突处理过程解决冲突问题除以下两条消息
外不
能声明地址的 CA 不应发送任何消息
1 作为地址声明请求消息或命令地址消息的响应发送不能声明地址消息
2 发送地址声明请求消息
com 自配置地址CA 的地址声明请求
对于能够自配置地址的 CA 或者具有地址仲裁能力的 CA在声明一个未使用的地址之
前可以选择获得已经在网络上声明的地址列表CA 如发现自己的首选地址已被声明就
可以使用空地址向网络上的所有 CA 发送地址声明请求消息来请求它们的地址然后选择一
个未被声明的地址进行声明对于能够自配置地址的 CA 或者具有地址仲裁能力的 CA最
好先发送一个地址声明请求把消息的目标地址设为首选地址应谨慎使用发向全局地址的
地址请求因网络上的每个 CA 都会发送一个响应见附录 A 图 A6 发送到特定目标地
址的地址请求可能指向未被使用的地址这样可以把总线负荷降到最小附录 A 图A5
com1 关于多个自配置地址能力 CA 的技术说明
如果一个系统中有同一个制造商生产的多个 ECU 在设计具有地址仲裁能力的 CA 时
要特别注意因这些 CA 在初始化时可能具有相同的算法并同时发送地址声明消息如这些
CA 都声明同一个地址就可能产生一个总线关闭BUS-OFF 错误制造商在设计这种类
型的 CA 时应把它们在初始化时同时发送地址声明消息的可能性降到最小另外制造商在
设计这种类型的 CA 时应把它们在初始化时声明相同地址的可能性降到最小同时采用上述
两种技术可以显著的改善缩短初始化时间
com2 没有一直连接在网络上的 CA
利用地址声明请求消息可以在声明一个地址前确定该地址是否已被使用该过程使具
有自配置地址能力的设备在网络上初始化时产生较少的地址仲裁特别适合于没有一直连接
在总线上的 CA 如工具这种 CA 的初始化消息时序见附录 A 图 A5 A6 A7 具有地
址仲裁能力的 CA 可利用地址声明之前的地址声明请求消息识别出一个未用的地址
com 构建地址与名字的关联表
发向特定地址或全局地址的地址声明请求都可以用于构建一个地址与名字的关联表有
些 CA 可能要用到这个表确定关键功能之间的联系例如确定动力系的发动机位于地址 0
这样变速箱发出的转矩速度控制消息才能被传送到正确的目的地址对于只需要少量地址
与名字相关联的 CA应发送地址声明消息到指定的目标地址要求较小的地址与名字关联
时地址声明请求发向特殊的地址对于诊断工具需要记录网络上所有的 CA地址声明
请求消息最好发向全局地址
45 最小网络管理的功能
网络管理协议的内容不作为ECU 在本标准网络上通讯的最低要求保证在本标准的网
络上工作的程序就是最小网络管理程序
com 电源供应和其他相关ECU 干扰的反馈
由于被牵引车ECU 的集中供电和重新进行地址仲裁时间的要求下述要求适用于所有
通过牵引车的连接器接口供电的挂车子网对于任何干扰例如瞬间掉电时间不超过规定
时间最小 2ms 推荐 10ms不应导致网络的重新初始化新一轮的地址声明包括在
CA 内部执行任何的深度复位和重初始化在干扰存在其间CA 必须保持它的名字地址
和名字地址表对于持续时间更长或发生频率更高的干扰可以执行网络重新初始化如
果干扰超过 1s 时必须执行网络重新初始化这时挂车系统在重新连接到牵引车后应执行重
新初始化对牵引车不作要求
com 最小网络管理功能
以下部分是CA在本标准网络上运行的最小网络管理功能com 的补充本标准
网络上的CA的要求和功能汇总见附录B
com1 地址声明消息的请求
接收到地址声明消息请求后CA 必须发送地址声明消息消息包括CA 已经声明到并
正在使用的地址CA 还没有声明过但它想声明的地址及空地址CA 已经声明过但没有成功
没有尝试地址声明的 CA不能参与网络通信直至它尝试声明了一个源地址CA 在没有尝试地
址声明之前不能发送不能声明地址消息或其它任何消息
注CA 应响应它自己的地址声明请求消息
com2 使用源地址前的地址声明消息
所有的 CA 在成功声明到一个源地址之前不能发送消息以下情况除外
a CA 可以用一个空地址作为源地址发送地址声明请求消息
b CA 必须对发送到全局地址的地址声明请求消息发送自己的地址声明消息
c 只作为转发器的网络互联设备可以在声明自己的地址前传送消息
如 CA 成功的声明到地址就可以响应地址声明请求且立即重新开始传送网络上其他
信息
如 CA 的源地址或名字被修改例如通过命令地址消息或专用技术CA 必须在网络中
发送消息之前重新进行地址声明
com3 ECU 连接和断开时的网络中断
ECU 在连接断开或上电时不应中断网络的通讯ECU 上电期间由于不受控传输的位
流可能中断网络
com4 掉电上电过程地址的连续性
CA 应能保存自己的源地址及任何与它通信的 CA 的地址以保证ECU 在下一次上电时
能尝试使用相同的地址除非有一些特殊要求超出了这个规定否则都必须这样做例如
对于高速公路的挂车子网挂车的实例及其相关联地址可以在每次上电时改变
附录A
资料性附录
初始化时序图
注对于地址在 0-127 或 248-253 范围内的单地址的 CA可以忽略250ms 的延时
图A1 CA 初始化在无竞争情况下的地址声明
图A2 CA 初始化两个单地址 CA 尝试不同时声明同一地址
图A3 ECU 初始化名字 A 小于名字 B 且 CA B 可仲裁地址
图A4 ECU 初始化两个 CA 同时尝试声明同一地址
注对于地址在 0-127 或 248-253 范围内的单地址的 CA可以忽略250ms 的延时
图A5 可仲裁地址的 CA 在无竞争情况下的初始化
注对于地址在 0-127 或 248-253 范围内的单地址的 CA可以忽略250ms 的延时
图A6 可仲裁地址 CA 的初始化发送地址声明请求到全局地址
图A7 单地址 CA 初始化发送了地址声明请求但该地址已被使用
图A8 对较早声明地址失败的 CA 所发出的地址声明请求所进行的回应
图A9 命令配置地址给没有地址的 CA 支持命令地址消息
图A10 命令配置地址给没有地址的 CA 不支持命令地址消息
注如被命令地址的 CA 选择了不支持命令地址消息命令地址消息将被忽略
附录 B
资料性附录
CA 的需求和功能汇总
能力 标准型 诊断发展型工具
网络互联型
维 维 维
关键字
护 命 护 命 护 命
不 不 不
R ,必须具备
人 令 自 人 令 自 人 令 自
可 可 可
员 可 配 员 可 配 员 可 配
P ,允许具备
配 配 配
可 配 置 可 配 置 可 配 置
置 置 置
D ,理想的
配 置 配 置 配 置
置 置 置
N ,不推荐或要求的
NA ,不可用的
使用一个源地址前发 R R R R R R R R R
R R R
送有效的地址声明消
息com2
在接收到地址声明请 R R R R R R R R R R R R
求后CA 应发送地址
声明或不可声明源地
址消息com1
上电期间保持名字 R R R D R R R D R R R D
41
上电期间保持地址 R R R D R R R D R R R D
com4
名字域可编程com NA D D D NA D D D NA D D D
上电期间保持地址表 P P P D P P P D P P P D
com4
支持包括自己名字的 NA P R P NA D R D NA D R D
命令地址消息com
支持发送命令地址消 P P P P D D D D P P P P
息com
在试图声明地址前发 P P P P D D D D P P P P
送 地 址 声 明 请 求
com
地址配置功能32 P P P P N P D D P P
P P
监测并校正 CA 不可 N N N N D D D D P
P P P
声 明 地 址 的 情 况
com
注除了必须的要求R 其它各类仅供参考
图B1 CA 的需求和功能
24
附录 C
资料性附录
名字示例
C1 名字示例
以下列举了二个从简单到复杂的名字例子根据命名习惯的特点在这些例子中名字
都用二进制表示在构造名字时应使用本标准附录 B 作为构造依据对名字某个单独的
域有疑问的可以参考 com 和表 1
C 11 示例 1在高速公路重型卡车中用于发动机的单独 ECU
从 GBT ××××9 中查得工业组属于高速公路工业组其值为 1 如果不能识别特定
的应用就应校正过来把发动机控制器放在全局工业组里工业组 1 中牵引车的汽车系
统域值为 1因只有一个车辆系统它必定是第一个汽车系统实例所以汽车系统实例域的
值也是 0 对于发动机功能域的值为 0这是一个单发动机的车辆功能实例域设为 0
因只有一个 ECU 其实例域为 0 制造商代码和 ID 编号见分类表这样就得到如图 C1 所
示的 ECU 的名字
地址仲 汽车系 功能实 ECU 制造商 ID 编
工业组 汽车系统 保留 功能
裁能力 统实例 例 实例 代码 号
1 位 3 位 4 位 7 位 1 位 8 位 5 位 3 位 11 位 21 位
0 000 0000 0000001 0 00000000 00000 000 mmm iii
图 C1 在高速公路重型卡车中用于发动机的单独 ECU
C 12 重型卡车上第二个挂车的 ABS 系统
这是对一个单独 ECU 该ECU 只有一个 CA 和一个地址命名的例子该 ECU 用作
重型卡车的第二个挂车的制动控制器从 GBT ××××9中查得工业组属于高速公路工
业组其值为 1对于挂车其车辆系统值为 2 对于第二个挂车其车辆系统实例值为 1
挂车的制动控制器 CA 属于制动控制器其功能值为 9 假如该挂车上只有一个制动控
制器则其功能实例值为 0 因ABS CA 只有一个 ECU 所以其ECU 实例值为 0 制造商
代码和身份编号见分类表名字见图 C2
自配置 产业类 汽车系 功能实 ECU 制造商 身分编
汽车系统 保留 功能
地址 群 统实例 例 实例 代码 号
1 位 3 位 4 位 7 位 1 位 8 位 5 位 3 位 11 位
21 位
0 000 0000 0000010 0 10000001 00000 000 mmm iii
图C2 重型卡车的第一个拖车上的 ABS 系统
25
附录D
资料性附录
地址声明过程的状态转换
地址声明过程的状态转换如图 D1 D2 D3 所示适用于单一地址功能和具有地址仲
裁功能的 CA 图表是用来阐明本标准中所列出来各种地址声明过程如这些图表和本规范
中的文字描述有差异以本规范中的文字描述为准
图表中的状态以圆圈来表示圆圈中的内容是状态名称从状态指出箭头有相关的文字
说明了引起这个状态改变的事件触发事件文字之后跟着一个斜线 有时在触发事件
之后过渡到下一个状态需要执行一个动作描述该动作的文字之后不带斜线
上电
再次声明地址
前的延时
启动上电
自检
完成上电自检 延时结束
地址有效
发送地址声明
发送地址声明
出现总线关闭错误或
发送地址声明 地址声明过程中监测到消息冲突
选择与竞争的地
址不同新地址 声明地址竞争
等250ms
竞争地址CA的名字
250ms内没有竞争地址声明
没有有效地址 小于自己的名字
接收竞争地址声明
发送不能声明地址 重新声明当前地址
声明地址成功
不能声 初始化时地址竞 开始收发消息
明地址 争优先级比较 竞争地址CA的名字 重新声明当前地址
大于自己的名字
发送不能 接收竞争
声明地址 竞争地址CA的名字 地址声明
大于自己的名字
接收地址 竞争地址CA的名字
重新声明当前地址
声明请求 小于自己的名字 接收地址
声明请求
延时结束
地址声明成功后
的地址竞争
优先级比较
发送不能声明地
址前的延时
状态切 完成状态切换
状态1 状态2
换条件 执行的动作
注并不是所有的状态切换都需要庄停切换动作
注对于地址在 0-127 或 248-253 范围内的单地址的 CA可以忽略250ms 的延时
图D1 可仲裁地址 CA ,初始化的状态转变
26
上电
再次声明地址
前的延时
启动上电
自检
完成上电自检 延时结束
接收竞争地址声明 发送地址声明
发送地址声明
出现总线关闭错误或
地址声明过程中监测到消息冲突
初始化时地址竞
争优先级比较 声明地址竞争
等250ms
竞争地址CA的名字 250ms内没有竞争地址声明
小于自己的名字
竞争地址CA的名字
大于自己的名字
重新声明当前地址
发送不能声明地址
声明地址成功
不能声 开始收发消息
明地址 发送不能声明地址 重新声明当前地址
发送不能 接收竞争
声明地址 竞争地址CA的名字 地址声明
大于自己的名字
接收地址 重新声明当前地址
竞争地址CA的名字
声明请求 小于自己的名字 接收地址
声明请求
延时结束
地址声明成功后
的地址竞争
优先级比较
发送不能声明地
址前的延时
状态切 完成状态切换
状态1 状态2
换条件 执行的动作
注并不是所有的状态切换都需要庄停切换动作
注对于地址在 0-127 或 248-253 范围内的单地址的 CA可以忽略250ms 的延时
图D2 单一地址 CA ,初始化的状态转变
27
接收到的命令地址消息
的名字与自己的名字相同
初始状态
地址声明成功或 决定是否接受命令
不能声明地址或 地址消息
还没声明地址
命令地址消息没被接受
命令地址消息被接受