路径: 主页 > GB/T > 第748页 > GB/T 47504-2026
| 标准编号 | GB/T 47504-2026 (GB/T47504-2026) | | 中文名称 | 商用车控制器局域网(CAN)通信协议 | | 英文名称 | Commercial vehicle controller area network (CAN) communication protocol | | 行业 | 国家标准 (推荐) | | 中标分类 | T35 | | 国际标准分类 | 43.040.15 | | 字数估计 | 78,738 | | 发布日期 | 2026-04-30 | | 实施日期 | 2026-11-01 | | 发布机构 | 国家市场监督管理总局、国家标准化管理委员会 |
GB/T 47504-2026: 商用车控制器局域网(CAN)通信协议
GB/T 47504-2026 英文版: Commercial vehicle controller area network(CAN) communication protocol
ICS 43.040.15
CCST35
中华人民共和国国家标准
商用车控制器局域网(CAN)通信协议
2026-04-30发布
2026-11-01实施
国 家 市 场 监 督 管 理 总 局
国 家 标 准 化 管 理 委 员 会 发 布
1 范围
本文件规定了商用车控制器局域网(CAN)通信协议物理层、数据链路层及应用层的技术要求,描
述了相应试验方法。
本文件适用于物理层采用屏蔽或者非屏蔽双绞线的CAN总线网络,且CAN总线通信速率为
250kbit/s或者500kbit/s的 M2类、M3类及N类车辆,其他类型车辆参考执行。
4 缩略语
下列缩略语适用于本文件。
ACK:应答(Acknowledgement)
ACKM:应答报文(AcknowledgementMessage)
BAM:广播公告报文(BroadcastAnnounceMessage)
CAN:控制器局域网(ControlerAreaNetwork)
CBFF:传统标准帧格式(ClassicalBaseFrameFormat)
CEFF:传统扩展帧格式(ClassicalExtendedFrameFormat)
CRC:循环冗余校验(CyclicRedundancyCheck)
CTS:允许发送(ClearToSend)
DA:目标地址(DestinationAddress)
DLC:数据长度编码(DataLengthCode)
DP:数据页(DataPage)
DUT:被测设备(DeviceUnderTest)
ECU:电子控制单元(ElectronicControlUnit)
EDP:扩展数据页(ExtendedDataPage)
EMC:电磁兼容(ElectromagneticCompatibility)
EOF:帧结束(EndofFrame)
ESD:静电放电(Electro-StaticDischarge)
GE:组扩展(GroupExtension)
ID:标识符(Identifier)
IDE:标识符扩展(IdentifierExtension)
LSB:最低有效字节(LeastSignificantByte)
LSb:最低有效位(LeastSignificantbit)
MSB:最高有效字节(MostSignificantByte)
MSb:最高有效位(MostSignificantbit)
NA:不允许或无法使用(NotAlowedorNotAvailable)
NACK:否定应答(NegativeAcknowledge)
OEM:车辆制造商(OriginalEquipmentManufacturer)
OSI:开放系统互连(OpenSystemInterconnect)
P:优先级(Priority)
PACK:肯定应答(PositiveAcknowledge)
PDU:协议数据单元(ProtocolDataUnit)
PF:PDU格式(PDUFormat)
PG:参数组(ParameterGroup)
PGN:参数组编号(ParameterGroupNumber)
PS:PDU细节(PDUSpecific)
REC:接收错误计数器(ReceiveErrorCount)
RTR:远程发送请求(RemoteTransmissionRequest)
RTS:请求发送(RequestToSend)
r0:保留位0(Reserved0)
r1:保留位1(Reserved1)
SA:源地址(SourceAddress)
SJW:同步跳转宽度(SynchronizationJumpWidth)
SOF:帧起始(StarofFrame)
SP:可疑参数(SuspectParameter)
SPN:可疑参数编号(SuspectParameterNumber)
SRR:替代远程请求(SubstituteRemoteRequest)
STP:屏蔽双绞线(ShieldedTwistedPair)
TEC:发送错误计数器(TransmitErrorCount)
Tq:时间份额(Timequantum)
UTP:非屏蔽双绞线(Un-ShieldedTwistedPair)
5 物理层技术要求
5.1 物理层一般要求
物理层应实现网络中各ECU之间的电气连接。通常一个CAN网络会由数个包括子网在内的网
段组成,每个网段由若干ECU组成,但每个网段接入的ECU数量受限于总线线路的负载承受能力。
根据CAN总线电气参数定义,同时参考信号传输的物理介质类型、总线电容、传播延时和CAN收发器
芯片的驱动能力等因素影响,每个网段上接入的ECU最大数量宜不大于30。
5.2 物理介质参数要求
5.2.1 物理介质
本文件中ECU之间用于信号传输的物理介质应为一对屏蔽双绞线(STP)或者非屏蔽双绞线
(UTP),其中电缆分别命名为CAN_H和CAN_L,通常使用黄色(CAN_H)和绿色(CAN_L)区分,对
于屏蔽双绞线中第三条连接屏蔽终端的线用CAN_SHLD表示。ECU的CAN收发器相应管脚应分别
用CAN_H和CAN_L表示。电缆线芯截面积宜采用0.5mm2或0.75mm2,电缆参数应满足表1的
要求。
5.2.2 网络布局
图1~图3分别展示了具有不同网络终端组合的各种网络布线拓扑。不包含内部终端电阻(RL)的
ECU定义为Ⅰ类ECU,包含内部终端电阻(RL)的ECU 定义为Ⅱ类ECU。图1~图3中ECU1、
ECU2、ECUn-1和ECUn为Ⅰ类ECU,而ECUA和ECUB为Ⅱ类ECU。
网段的布线拓扑结构应接近线性结构,以避免电缆信号的反射。在实际使用中,应使用短支线将
ECU连接到主干电缆。为减少驻波影响,各ECU支线长度S 不应相等,ECU在总线上不应等间距布
置。网络布局参数见表2和表3。
控制线路布局,以防止多余的信号通过互感和/或者电容耦合进入CAN_H和CAN_L电线上。耦
合信号会干扰通信,降低或破坏CAN传输线在扩展周期内的收发。通过调整本文件中电缆包括ECU
地和电源线布线远离高电流器件、高速开关负载以及连接到这些设备上的电线可以降低耦合的风险。
应避开的器件和相关电线有:起动机、雨刮继电器、开关信号继电器(闪光器)、高压设备及其电缆等。此
外,网络和支线的布线不应离敏感器件太近(例如,无线电、电路板或其他的电信设备),且不应将通信电
缆与高压电缆、大电流开关类低压信号线捆扎或接触,如无法避免,应保证安全间隙或交叉布置。
5.2.3 终端电阻
CAN总线主干网络两端应各连接一个匹配的终端电阻RL,终端电阻参数应满足表2和表3要求。
如使用Ⅰ类ECU,应将终端电阻连接在主干网络两端的CAN_H和CAN_L之间,见图4和图5。
Ⅱ类ECU应包含总线终端电阻或分离式终端电阻。如使用Ⅱ类ECU,应将Ⅱ类ECU连接在主干网络
的一端或两端,见图6~图9。除了作为总线终端的节点外,其他节点不应配置终端电阻。
分离式终端电阻RL被分成两个匹配良好的电阻,见图8和图9。为了获得良好的电磁兼容(EMC)
性能,两个电阻之间的公差不应大于±1%。两电阻之间的连接处应通过一个4.7nF电容(CL)接地。
5.3 电气参数要求
5.3.1 总线电压
总线总是处于显性或者隐性两种逻辑状态之一,其逻辑状态示意图见图10。在总线处于隐性状态
时,ECU的CAN_H相对于ECU地的电压VCAN_H和CAN_L相对于ECU地的电压VCAN_L固定在一个
中值电压,VCAN_H和VCAN_L两者之差为总线差分电压Vdiff。在带有匹配终端电阻的总线上,总线差分电
压接近于0V。差分电压大于显性状态最小门限值时,总线处于显性状态。在仲裁期间,显性状态覆盖
隐性状态并以显性位传输,显性状态差分电压值取决于同时处于显性状态的ECU数量。
5.4.3 CAN总线容错性能
所有的CAN节点连接到带有匹配终端电阻的CAN总线上时,要确保在发生故障的时候不会干扰
CAN总线网络上其他节点的正常通信。CAN总线容错性能要求应满足表13的要求。
5.4.4 CAN节点Bus-off故障处理
当CAN节点进入总线关闭状态后,为保证CAN节点能够自动恢复参与总线通信,但又不能因快
速恢复对总线上其他节点产生影响,应对CAN节点Bus-off故障的恢复过程进行编程处理,以控制节
点从总线关闭状态恢复到主动错误状态的等待时间。
CAN节点Bus-off故障的恢复行为和恢复时间应满足用户定义。
6 数据链路层技术要求
6.1 数据链路层一般要求
6.1.1 帧格式
本文件网络定义要求使用节点地址,防止多个节点使用相同的CANID域。
本文件仅支持CBFF和CEFF的CAN数据帧格式。本文件进一步定义了使用CEFF格式进行标
准化通信的完整策略,采用CBFF格式的通信策略由用户定义。
CAN数据帧被解析成不同的位域。在仲裁域和控制域中,位的数量和解析在CBFF和CEFF报文
之间有所不同。CBFF报文在仲裁域中包含11个标识符位,而CEFF报文在仲裁域中包含29个标识
符位。表14定义了CAN数据帧格式仲裁域和控制域中的标识符位。
6.1.2 CEFF报文格式
基于CEFF的报文包含单个PDU。PDU由7个预定义域组成。这些域由应用层提供的信息决
定。这些域包括:优先级(P)、扩展数据页(EDP)、数据页(DP)、PDU格式(PF)、PDU细节(PS,可以是
目标地址或组扩展)、源地址(SA)和数据域(Data)。
这些域将被打包到一个或多个CAN数据帧中,并通过物理介质发送到其他网络节点。某些参数
组编号定义需要多个CAN数据帧发送信息。
6.1.3 参数组编号(PGN)
参数组编号(PGN)是用于标识CAN数据帧的数据域属于哪个参数组,长度为3个字节(24个位)。
首先发送LSB,其次发送中间字节,最后发送 MSB。PGN包括以下部分:
---设置为0的位(6位);
---EDP(1位);
---DP(1位);
---PF(8位);
---PS(8位)。
将标识符域转换为PGN的过程如下:将PGN的6个最高有效位设置为0,将EDP、DP和PF复制
到下个10位。如果PF值小于240(F016),则将PGN的LSB设置为0;否则设置为PS域的值。
表15给出了PGN及其组成部分对应的示例。本文件中约定优先使用的8672个PGN计算公式
见公式(1)。
6.2 协议数据单元(PDU)
6.2.1 PDU格式要求
应用层和/或网络层提供一系列以PDU形式存在的报文。PDU提供了一个组织报文的框架,这些
报文对于每个要发送的CAN数据帧都至关重要。PDU由7个域组成,其格式见图15。PDU被封装在
一个或多个CAN数据帧中,通过物理介质传送到其他网络设备。每个CAN数据帧应有一个PDU。
某些参数组(PG)定义需要8个以上的数据字节,因此需要多个CAN数据帧发送相应的数据。传
输协议(TP)报文是用于传输8个以上数据字节的PG。
某些CAN 数据帧的域不在 PDU 中定义,包括 SOF、SRR、IDE、RTR、r1、r0、CRC、ACK 和
EOF域。
图15 协议数据单元
本文件定义了两种PDU格式:PDU1格式(PS=DA)和PDU2格式(PS=GE)。创建两种单独的
PDU格式是为了提供更多可能的PGN组合,同时仍提供特定目标的通信。
PDU1格式允许将CAN数据帧定向发送到特定或全局目标地址(DA),PS域包含了DA。PDU1
格式报文可被请求或作为非请求报文发送。PDU1格式报文由PF域决定,当PF域值为0~239时,该
报文为PDU1格式报文。PDU1格式应符合图16。PDU1格式报文的格式应符合图17。
6.2.2 优先级(P)
这三个位仅用于在总线传输中优化报文延迟。接收节点应将其全局屏蔽(忽略)。任何报文的优先
级均可从最高0(0002)设置到最低7(1112)。所有控制报文的默认优先级是3(0112),其他信息、专用、
请求和ACK报文的默认优先级是6(1102)。当分配新的PGN并且总线通信量变化时,优先级可升高
或降低。将每个PGN添加到应用层文件时,将为其分配一个推荐值。优先级域应可编程更改,以便在
需要时由OEM进行网络调整。
6.2.3 扩展数据页(EDP)
EDP与DP结合使用,以确定CAN数据帧的CANID结构。本文件中所有报文在传输时应将EDP
设置为0。表16规定了有关EDP和DP的定义用途。将EDP设置为1的定义可用于未来扩展PDU
格式域,定义新的PDU格式或增加地址空间。
6.2.4 数据页(DP)
DP与EDP结合使用,以确定CAN数据帧的CANID结构。按表16的规定,当EDP设置为0
时,DP在PGN描述的第0页和第1页之间进行选择。
6.2.5 PDU格式(PF)
PDU格式是一个定义PGN是PDU1格式还是PDU2格式的8位域,也是用于确定分配给数据域
的PGN的域之一。PGN除用于确定或标记命令、数据、某些请求、应答和否定应答外,也用于确定或标
记可能需要一个或多个CAN数据帧进行通信的报文。如报文数据长度大于8字节,则需发送多包报
文。如报文数据长度等于或小于8字节,则使用单个CAN数据帧。PGN可表示一个或多个参数,例
如,发动机转速等数据。虽然PGN可用于表示一个参数,但建议将多个参数分组,以便使用数据域的
所有8个字节。
6.2.6 PDU细节(PS)
6.2.6.1 PDU细节域的定义
PS域是一个8位域,其定义取决于PF域。表17给出了PDU细节域的定义。根据PF域定义的
值,PS域可以是目标地址(DA)或组扩展(GE)。如PF域的值低于240(F016),则PS域为DA。如PF
域的值为240(F016)~255(FF16),则PS域包含一个GE值。
表17 PDU细节域定义
PDU格式 PF域值 PS域
PDU1格式 0~239 目标地址(DA)
PDU2格式 240~255 组扩展(GE)
6.2.6.2 目标地址(DA)
DA域定义了报文被发送到的设备地址,任何其他设备均应忽略此报文。全局DA(255)要求所有
设备作为报文接收者应进行相应的监听和响应。
6.2.6.3 组扩展(GE)
GE域与PF域的4个最低有效位为每个数据页提供4096个PGN。这些4096个PGN仅在使用
PDU2格式时适用。此外,在每个数据页中提供240个PGN,仅用于PDU1格式。当前可用的两个数
据页总共有8672个PGN可被定义使用。
6.2.7 源地址(SA)
此域定义了报文发送节点的地址,源地址域长度为8位。网络上的设备具有特定SA。因此,SA
域可确保CANID满足CAN要求的唯一性。附录B给出了ECU推荐的地址管理和分配参考。
6.2.8 数据域
当表示特定PG需要8字节或更少字节的数据时,可使用CAN数据帧的所有8个数据字节。通常
建议为将来可能扩展的所有PGN分配或保留8个数据字节。当PG的数据长度值小于或等于8字节
时,则将CANDLC设置为该PG的数据长度值。当PG数据长度值大于或等于9字节时,则将每个
CAN数据帧中的CANDLC设置为8。
6.3 报文类型
6.3.1 报文分类
目前支持五种报文类型,分别为:
---命令;
---请求;
---广播/响应;
---应答;
---组功能。
特定报文类型由其分配的PGN识别。
6.3.2 命令
此类型报文是指从源地址向特定DA或全局DA传递命令的报文。然后,目标节点在接收到命令
类型的报文后应采取特定的操作。
PDU1格式(PS=DA)和PDU2格式(PS=GE)的报文都可用作命令。
示例:命令类型报文包括“传输控制”“扭矩/速度控制”等。
6.3.3 请求
此类型报文由PGN识别,提供了在全局范围内或从特定DA请求信息的功能。表18给出了“请求
PGN”的PG定义。
6.3.4 广播/响应
此类型报文可以是来自设备未经请求的广播信息,也可以是对命令或请求的响应。
6.3.5 应答
应答有两种形式。第一种形式的应答是CAN协议规定用来确认一个报文已被至少一个节点接收
到的一个“帧内”位域。此外,若未出现CAN错误帧,报文得到进一步应答。未出现CAN错误帧表明
所有其他通电并连接到了总线上的设备都正确接收到了报文。
第二种形式的应答是普通广播、PACK或NACK报文对应用层提供的特定命令或请求的响应。
6.3.6 组功能
此类型报文用于特殊功能组(例如,专用功能、网络管理功能、多包传输功能等)。每个组功能由其
PGN来识别。专用PG的定义应符合表20、表21和表22的规定。专用组功能提供了一种采用特定
PGN传输专用报文的方式,可以消除不同OEM之间的CANID使用冲突。
6.4 报文优先级
CANID字段中的值决定了报文优先级,低CANID值具有高优先级,而最大的CANID具有最低优
先级(29位ID全为1)。
6.5 总线访问
当总线空闲时,任何节点都可以开始传输帧。如果两个或多个节点同时开始传输帧时,将使用
CAN数据帧标识符的竞争仲裁来解决总线访问冲突。仲裁机制保证信息和时间都不会丢失,具有最高
优先级帧的发送节点获得总线访问权。
6.6 竞争仲裁
在仲裁期间,每个发送节点将发送的位电平与总线上监控的电平进行比较。如果这些电平相等,节
点可继续发送。当发送一个“隐性”电平并监测到一个“显性”电平时,该发送节点已丢失仲裁,应退出且
无需再发送。当发送一个“显性”电平并监测到一个“隐性”电平时,该发送节点检测到位错误。
6.7 错误检测
CAN总线中采取以下几种措施来检测错误:
a) 15位循环冗余校验(CRC);
b) 填充宽度为5的位填充;
c) 帧格式检查;
d) ACK应答检查;
e) 位检查。
6.8 源地址和参数组编号的分配
6.8.1 通用要求
可用PDU提供两种不同的格式,PDU1格式和PDU2格式。PGN被专门指定使用PDU1格式或
PDU2格式。一旦指定了一种格式,另一种格式就不适用于该PGN。如果有必要将一个PG指向特定
DA时,都应使用PDU1格式。
只有当报文是用于直接控制(命令)几个特定设备之一的参数时,才应使用要求DA的PDU1格式
为报文分配PGN。否则,应采用PDU2格式为报文分配PGN,以便任何设备均可访问报文中的参数。
SA应以线性方式分配,与报文优先级、更新速率或重要性无关。
当报文重复传输速率大于或等于10次/s时,不应使用多包报文。
6.8.2 SA分配原则
在本文件中,未被分配的地址数目是有限的,因此应有效地分配新的地址。在整个系统中,可分配
的地址数目最大不能大于256。因此,新的地址定义应限于车辆中的重要功能,例如,目前已定义地址
的发动机、制动系统等重要功能。其他需要在标准中获得地址分配的功能,都应与附录B已定义地址
的适用范围相似。
本文件不支持动态地址分配。
6.8.3 PGN分配原则
本文件中有三种主要的通信方法,适当运用各种类型的通信方法,......
|