1、文件编号 : TKC/JS ( S) -EV17文件版本号 : 0/A 版安徽天康特种车辆装备有限公司整车 CAN 通信设计规范编 制: n审 核: n批 准: n发布日期:2014 年 12 月 22 日 实施日期:2014 年 12 月 22 日安徽天康特种车辆装备有限公司 目 录一、说明 - 1 -二、物理层 - 2 -三、数据链路层 - 8 -四、传输协议 .- 11 -五、交互层 .- 11 -前 言为使本公司整车 CAN 总线通信设计规范化,参考国际标准化组织协议 以及国内外汽车总线总体设计的技术要求,结合本公司物流车开发车型的实际应用环境,编制本整车 CAN 总线通讯设计规范。本
2、规范满足公司快速发展的需要,并将在实践中进一步提高完善。本规范由安徽天康特种车辆装备有限公司技术部提出。本规范由安徽天康特种车辆装备有限公司技术部批准。本规范主要起草人:李劲松、查德国、和进军本规范于 2015 年 01 月首次发布。- 1 -整车 CAN 通信设计规范一、说明1.1 范围本规范规定了安徽天康特种车辆装备有限公司(以下简称“天康” )生产的纯电动汽车 CAN 通信设计规范。本规范适用于安徽天康特种车辆装备有限公司设计开发的纯电动汽车的 CAN 总线通信设计。如果本标准与其它标准或规范不一致,则按照如下方式处理:与 SAE J1939 不一致,遵照本标准执行;与 ECU 技术规范
3、不一致,遵照 ECU 技术规范执行1.2 规范性引用文件下列文件中的条款通过本规范的引用成为本规范的条款。凡是注日期的引用文件,其随后的修改单(不包括勘误的内容)或修订版均不适用于本规范。凡是不注日期的引用文件,其最新版本适用于本规范。表 1 参考文档标号 标题 版本/修改日期Ref.1 ISO-11898-1: Road vehicles Controller area network(CAN) - Part 1: Data link layer and physical signaling 2003Ref.2 ISO-11898-2: Road vehicles Controller ar
4、ea network(CAN) - Part 2: High-speed medium access unit 2003Ref.3 ISO-11898-5:Road VehiclesController area network(CAN) - Part 5: High-speed medium access unit with low-power modeRef.4 SAE-J1939-11: Surface Vehicle Recommended Practice Physical Layer, 250K bits/s, Twisted Shielded Pair 2006Ref.5 SAE
5、-J1939-21: Surface Vehicle Recommended Practice Data Link Layer 20061.3 术语和缩写表 2 缩写缩写 含义ACK Acknowledgment(应答)CAN Controller Area Network(控制器局域网)- 2 -DLC Data Length Code(数据长度码)ECU Electronic Control Unit(电控单元 )EMC Electro Magnetic Compatibility(电磁兼容)ESD Electro-Static Discharge(静电阻抗器)IGN Ignition(点
6、火开关)ISO International Organization for Standardization(国际标准化组织)LSB Least Significant Byte(最低有效字节 )Lsb least significant bit(最低有效位)MSB Most Significant Byte(最高有效字节)Msb most significant bit(最高有效位)PCB Printed Circuit Board(印刷电路板 )SAE The Society of Automotive Engineers(美国汽车工程师学会)SJW Synchronization Jum
7、p Width(同步跳转宽度)TBD To be defined(待定)二、物理层本节详细规定了物理层的需求2.1 相关标准所有 ECU 应遵从标准 Ref.1、Ref.2 或者 Ref.4 中的相关规定.2.2 物理介质CAN 传输线束应该满足表 3 描述的参数和如下的条件:CAN 线束采用非屏蔽双绞线;CAN_H 和 CAN_L 应该被保护屏蔽包裹,如果天康允许,可以使用不带保护层的 CAN线束;绞线率:1358twist/m。表 3 物理介质参数参数 符号 最小值 标称值 最大值 单位特征阻抗 Z 108 120 132 单位电阻(1) rb 0 25 50 m单位电容(2) cb 0
8、40 75 pF/m信号传播延迟时间 tp - 5 - ns/m注(1):在 20测量注(2):CAN_H 和 CAN_L 之间- 3 -2.3 网络拓扑CAN 网络拓扑结构可以采用单网段的拓扑结构,也可以采用多个网段的拓扑结构。具体的拓扑结构由普天制定。此外,网络拓扑应该满足如下的条件以及表 4 规定的参数: 为了避免终端反射,网络拓扑应该尽量使用线性结构; 根据经验,尽量使用短支线连接 ECU; 为了减少干扰,CAN 线束应该远离大电流和快速开关负载、连接 ECU 电源或地,以及连接起动机、雨刮继电器、转向灯继电器和控制灯的继电器; 此外,为了减少驻波,各 ECU 距离干线的长度,即支线长
9、度 L1 不能相等;同时应避免 ECU 在总线上等间距布置,即任何两个 ECU 之间 d 值不能相等,L1 和 d 的定义见图 1 所示。表 4 网络拓扑参数参数 符号 最小值 标称值 最大值 单位总线长度 L 0.1 - 40 m支线长度 L1 0.1 - 1 m节点间距 d 0.1 - 40 m节点数量 - - - 15 -图 1 网络拓扑参数2.4 连接器网络连接器有足够的机械强度以保证即使在车上受到最大的振动也不会断开连接。2.5 位定时总线传输速率为 250kbit/s,位时间为 4000ns2ns。供应商应该正确设置 ECU 位定时参数,采样点应该尽量靠近但不超过位时间的7/8,S
10、AE 推荐的位定时参数如表 5 所示。- 4 -表 5 位定时参数时钟频率 时间段 1 时间段 2 同步跳转宽度(1) 采样点位置 采样次数16MHz 13 2 1 87.5% 120MHz 16 3 1 85% 1注(1):由于同步,使相位缓冲段 1 增长,或使相位缓冲段 2 缩短。相位缓冲段加长或缩短的数量有一个上限,此上限由 SJW(同步跳转宽度)给定。位时间包括四个部分,如图 2 所示。图 1 位时间分段2.6 推荐外围电路本节给出建议的 ECU 内部 CAN 接口电路图。所有节点供应商都应该向天康提供 CAN接口电路图及相关电气部件的信息。下图为 CAN 接口外围电路的示意,由于收发
11、器的不同,部分因有些收发器提供了用于连接分裂式终端的 SPLIT 引脚(如:NXPTJA1040、NXPTJA1041) ,而有些收发器无此引脚(如 TJA1050) 。故根据收发器的不同,CAN 接口外围电路也略有不同,如下图:如果收发器有 SPLIT 引脚,应该连接该引脚(如图中虚线所示) ;如无此引脚,可以不进行连接。收发器的 SPLIT 管脚连接到分裂终端上有助于稳定总线隐性电平。SPLIT 管脚可以有效降低电磁辐射。正常模式下,SPLIT 管脚电压值为 2.5V。C A NT r a n s c e i v e rC A N _ HC A N _ LS P L I TT X DR X
12、 DC A N C o n t r o l l e rC o m m o n c h o c kT e r m i n a lE M CC a p a c i t o rE S Dp r o t e c t i o nLR 1R 2C 1C 2 C 3 D 1 D 2- 5 -图 2 外围接口电路示意图2.6.1 CAN 控制器CAN 控制器应该遵循 Ref.1 标准。供应商对控制器的选择,需要得到天康的认可。2.6.2 CAN 收发器供应商选择的 CAN 收发器需符合 Ref.2 或者 Ref.3 的要求。表 6 列出了推荐的 CAN收发器,推荐使用 TJA1040 或者 TJA1041 作
13、为 CAN 总线收发器。表 6 推荐 CAN 收发器类型编号 供应商 收发器类型 SPLIT 功能 睡眠/唤醒1 NXP TJA 1050 不支持 不支持2 NXP TJA 1040 支持 支持3 NXP TJA 1041A 支持 支持4 NXP TJA 1042T 支持 支持5 Infineon TLE6251-DS 支持 支持2.6.3 共模电感为了抑制共模干扰、提高电磁兼容性,ECU 中必须使用共模电感。如果控制器满足EMC 特性要求,可以不安装共模电感,但必须预留共模电感的安装位置,可通过“零欧电阻”来实现旁路。2.6.4 总线终端每个 CAN 网段都需安装俩个终端电阻。终端电阻需采用
14、图 3 所示的分裂式终端,R1 必须和 R2 相等。因某一控制器是否安装终端电阻(R1, R2 和 C1)由天康的网络拓扑决定,故终端电阻应尽可能放在容易替换的位置。另,分裂式终端的中心与地之间必须接一个陶瓷电容(C1) 。陶瓷电容用于稳定分裂终端电压,提高系统的电磁兼容性。下表给出了电容和电阻的相关参数。表 7 R1, R2 和 C1参数 标称值R1= R2 601% / 250 mWC1 4.7nf 10%2.6.5 EMC 电容为了改善 EMC 特性(增强抗电磁干扰性) ,可以安装 EMC 电容。- 6 -EMC 电容为选装器件,供应商在设计 PCB 需要预留该器件的安装位置,通常他们放
15、置在 EMC 和 ESD 二极管之间。要求 C2 和 C3 的数值相同,并且容差不超过 10%;表 8 C2 和 C3 数值参数 最小值 标称值 最大值 单位C2/C3 0 47 100 pF2.6.6 静电释放和过压保护静电释放保护和过压保护器件有助于保护控制器不受静电放电(ESD)事件的破坏。静电释放保护和过压保护器件应满足下表要求。若控制器能满足下表中静电保护要求,可以不安装 ESD 保护器件,但应预留 D1 和 D2(如图 3 所示)的安装位置。表 9 静电释放保护推荐值释放介质 最大测试电压空气式(Air) 15kV接触式(Contact) 8kV2.7 晶振晶振为 CAN 控制器的
16、定时提供了参考。为了保证正确的 CAN 通信,晶振频率必须是 CAN 网络通信波特率的整倍数。晶振频率越高,定时稳定性也即越高。时钟发生器只允许使用石英晶振,不允许使用其他时钟发生器,如陶瓷晶振。晶振在各种条件下的误差必须少于0.4%,包括受到温度、老化的影响。2.7.1 系统供电电压下表给出 CAN 通信工作电压范围:表 10 CAN 通信正常电压范围供电电压电压范围名称 最小值(V)最大值(V) 备注vLow - 8不需要 CAN 通信;如果 ECU 能正常通信,允许CAN 通信。vActive 8 18 所有 ECU 能正确的通信。vHigh 18 -不需要 CAN 通信;如果 ECU
17、能正常通信,允许CAN 通信。- 7 -在规定的过电压和欠电压条件下,为确保汽车关键部件的正常通信,要求不能有ECU 干扰或中断总线通信,即使电源电压超出了正常工作电压范围。这可能要求在一定电压条件下,收发器及其他电子器件暂时、完全停用。如果本地 ECU 供电电压降低到特定数值以下或供电电压增加到特定数值以上的时间少于 100ms,ECU 应忽视电压变化。例如: ECU 供电电压降到 vActive 最小值时,应在持续低于 vActive 最小值的时间超过 100ms 之后才允许停止 CAN 通信,当 ECU 从低电压恢复到 vActive 最小值时,应在持续高于 vActive 最小值的时间
18、超过 100ms 之后才恢复 CAN 通信。其他类似。2.8 总线电压CAN 总线电压值如表 11 和表 12 所示。在隐性状态或总线空闲期间,电压值由终端电阻及节点输入电路的高阻抗共同决定。仲裁期间显性状态时,隐性状态将被覆盖,显性状态差分电压值取决于多少个单元同时处于显性状态。表 11 总线输出显性电压电压 最小值(V) 标称值( V) 最大值( V)VCAN_H 3.0 3.5 5.0VCAN_L 0 1.5 2.0VDiff 1.5 2.0 3.0表 12 总线输出隐性电压电压 最小值(V) 标称值( V) 最大值( V)VCAN_H 2.0 2.5 3.0VCAN_L 2.0 2.5
19、 3.0VDiff -1.20 0 0.052.9 上升沿与下降沿时间根据 Ref.1 标准,不同 CAN 信号的跳变应在规定时间内完成。图 4 所示为计算上升沿和下降沿时间的方法,差分电压的上升沿时间和下降沿时间见表 13。1 0 9 0 %1 0 9 0 %rdift fditCAN_LH_difV图 2 信号的上升沿与下降沿- 8 -表 13 信号上升沿与下降沿时间的范围参数 符号 最小值 标称值 最大值 单位上升沿时间 trdiff 20 200 ns下降沿时间 tfdiff 20 500 ns当信号值跳变并且跳变后的 1s 内,CAN_H 和 CAN_L 输出电压应该在稳态电压的81
20、%到 150%范围之内(图 5 中的 V1) 。当信号值跳变并且经过 1s 后,CAN_H 和 CAN_L 输出电压应该在稳态电压的 95%到 105%范围之内(图 5 中的 V2)。T i m eS i g n a l v a l u e c h a n g e d w i t h i n 1 sS i g n a l v a l u e c h a n g e d a f t e r 1 sV 1V 2图 3 信号值跳变后总线输出电压2.10 地偏移节点地偏移:在正常的操作电压范围内,如果节点地偏移未超过2V,ECU 应该可以正常通信,没有错误帧。三、数据链路层数据链路层用于在发送方将报文
21、封装成数据帧;在接收方从数据帧中提取报文。数据链路层的任务是由 CAN 控制器硬件完成的,它在硬件上实现了 CAN 协议并且以 CAN 驱动的方式提供了与其他通信层 CAN 协议的接口。就总线接口而言,CAN 协议标准化和一致性测试确保不同半导体供应商之间的兼容性。CAN 控制器和 MCU 之间的内部接口是由 CAN 驱动程序来处理。- 9 -3.1 数据帧数据帧的帧格式遵循 CAN 29 位标识符的扩展帧格式,扩展帧格式如图 6 所示。图 4 CAN 扩展帧结构3.2 协议数据单元(PDU)数据帧是通过 PDU 进行组织的。PDU 由数据帧中的 29 位标识符和数据场组成,ID又可划分为 6
22、 个部分:优先级 P(3 位),扩展数据页 EDP 位,数据页 DP 位,PDU 格式PF,PDU 细节 PS(8 位),源地址 SA(8 位)。扩展帧协议数据单元及场分布如图 7 所示。图 5 协议数据单元3.2.1 优先级(P)优先级包含 3 位,位于 ID 的最前面,用来优化报文传输到总线的传输延迟。一条报文的优先级可以从最高 0(0002)设置到最低 7(1112)。3.2.2 扩展数据页(EDP)位当前所有报文的 EDP 位均设置为 0。3.2.3 数据页(DP)位应用层在分配参数组编号 PGN 时,只有 DP0(DP=0)中的报文分配完以后,才允许分配 DP1(DP=1)中的报文。
23、当前所有报文的 PGN 都设置为 0,即所有报文的 PGN 都分配在DP0 中。3.2.4PDU 格式(PF)PF 域是一个 8 位域,它的取值确定了一条报文的 PDU 格式。PDU 格式定义了两种,分别为:格式 PDU1 和格式 PDU2。详细描述如表 14 所示。表 14 PDU 类型- 10 -PF 取值范围 PDU 格式 PS 含义 PDU 功能PF239 PDU1PF=239 私有 PDU1 DA 特定目标地址发送240PF255 PDU2PF=255 私有 PDU2 GE 全局目标地址发送天康 CAN 网络全局通信应使用 PDU2 中 PF=255(0xFF),组扩展(GE)应统一
24、分配以避免冲突。3.2.5PDU 细节(PS)PS 场是一个 8 位场。PS 场的内容取决于 PF 场的取值。具体描述如上表 14 所示。3.2.5.1 目标地址(DA) DA 场定义的特定目标地址要求任何源地址与该目标地址不同的节点忽略此报文。DA 场定义的全局目标地址(DA255),则要求所有节点对该报文都要做出监听和响应。3.2.5.2 组扩展(GE)GE 场与 PF 场的低 4 位(当 PF 场高 4 位全部置 1 时表示 PS 场是组扩展)提供每个数据页 4096 种参数组。对于每个数据页有 4096 个参数组只在 PDU2 格式下可用;此外,还有 240 个参数组只在 PDU1 的
25、格式下可用。当前,两个数据页共有 8672 个参数组可用。3.2.6 源地址(SA)SA 场是一个 8 位场。给定的一个源地址在网络中应当只有一个设备与其相对应。因此,源地址与 CAN 标识一样,应保证其唯一性。3.2.7 数据场数据场中包含了一条 CAN 数据帧要发送的数据内容。3.2.8 参数组编号(PGN)PGN 是一个 24 位的数值,用于定义 CAN 数据帧中数据场的一个参数组。这 24 位数值包含如下组成部分:第一个字节最高 6 位全置 0,其后依次是 EDP 位,DP 位;第二个字节为 PF 场;最后一个字节,如果为 PDU1 格式则设置为 0x00,如果为 PDU2 格式,这字
26、节的值为组扩展场 GE 的值,如图 8 所示。- 11 -0 E D P D P P FP D U 1 : 0 x 0 0位 8 - 3 位 2 位 1字 节 2 字 节 3P G N字 节 1P D U 2 : P S ( G E )图 6 PGN 的组成四、传输协议当被传输的数据大于 8 字节时,需要使用多包传输功能进行数据传输。一个多包传输报文最多可传送 255 包数据(每包 7 个数据字节),一个多包报文最多传输 1785 个字节的数据。多包传输功能主要分为如下两个功能: 打包和重组; 连接管理。具体传输协议应遵从标准 Ref.5 中的相关规定。五、交互层CAN 通信是基于报文的交换,
27、报文与 CAN 标识符、DLC 一起打包,以数据帧的形式发送至 CAN 总线。信号有自己的属性,其属性影响包含该信号的报文的传输。5.1 位格式和字节格式为保证 CAN 报文的正确传输,图 9 定义了位和字节格式。b i t 3 b i t 2 b i t 1 b i t 0b i t 7 b i t 6 b i t 5 b i t 4B y t e1 766 4 3 2 1 02 1 5 1 4 1 3 1 23456 4 17 5 58 6 3 6 2 6 1 6 051 1 1 0 9 82 3 2 2 1 9 1 9 1 8 1 7 1 62 4 2 5 2 62 72 7 2 6 2
28、 5 2 43 9 3 8 3 7 3 6 3 5 3 4 3 3 3 24 7 4 6 4 5 4 4 4 3 4 2 4 05 4 5 3 5 2 5 1 5 0 4 9 4 85 65 75 85 92 82 93 03 12 02 1图 7 位和字节格式- 12 -每个数据场包括 1 到 8 个字节,每字节中位索引为位“07” 。位“7”是最高有效位(msb) ,位“0”是最低有效位(lsb) 。字节的发送顺序为:首先发送 byte0(LSB) ,然后 byte1,byte2(MSB)发送。信号应按 Motorola 格式(大端格式)进行编码。信号的起始位从最低有效字节(LSB)的最低
29、有效位(lsb)开始。如图 10 所示,为一个数据场中包含 10 比特信号的 Motorola 格式的报文,其起始位为 28 位。b i t 3 b i t 2 b i t 1 b i t 0b i t 7 b i t 6 b i t 5 b i t 4B y t e1 766 4 3 2 1 02 1 5 1 4 1 3 1 23456 4 17 5 58 6 3 6 2 6 1 6 051 1 1 0 9 82 3 2 2 1 8 1 9 2 0 2 1 2 2 2 32 4 2 5 2 62 72 7 2 6 2 5 2 43 9 3 8 3 7 3 6 3 5 3 4 3 3 3 24
30、 7 4 6 4 5 4 4 4 3 4 2 4 05 4 5 3 5 2 5 1 5 0 4 9 4 85 65 75 85 9( L S B )( M S B )S i g n a l _ A l e r t起始位图 8 10 位信号的报文排布(Motorola format)报文中未使用的位须设为 0,未使用的字节须设为 0x00。5.2 报文发送方式报文的四种发送方式:1) 周期周期报文按周期时间 T 循环发送,如下图所示。- 13 -E v e n tM e s s a g eo p e n d o o rTc l o s e d o o rT i m e图 9 周期型发送周期报文的
31、发送周期偏差不可大于10%。当周期时间小于 20ms 时,周期偏差不可大于20%。2) 事件事件报文的发送取决于事件是否触发,如下图所示。. . . . . .1 n 1 n. . .1 nE v e n tM e s s a g eT i m eo p e n d o o rc l o s e d o o ro p e n d o o r图 10 事件型报文为了避免报文丢失,报文应该在事件发生后重复发送 Nrepet次。重复发送的时间间隔为 Trepet,如表 15 所示。表 15 事件发送类型的参数推荐参数 符号 标称值 单位 备注报文重复发送次数 Nrepet - 在 CAN 通信矩阵中
32、定义,必须得到普天确认报文间隔时间 Trepet - ms 在 CAN 通信矩阵中定义,必须得到普天确认3) 周期和事件当事件未发生时,报文以周期时间 T 循环发送,事件发生时,报文以 Trepet周期发送 Nrepet次,见上表 15。事件报文与周期报文发送的时间间隔不应小于 20ms。如果事件发生在周期报文发送之后 20ms 内,则事件报文延迟到周期报文发送 20ms后再发送。- 14 -如果事件发生在周期报文发送之前 20ms 内,则周期报文延迟到事件报文发送 20ms后再发送。T1 nTE v e n tM e s s a g eo p e n d o o r c l o s e d
33、o o rT i m e 2 0 m s 2 0 m s图 11 周期事件型报文4) 使能和事件型发送类型一样,使能发送类型由报文中的一个或多个信号触发,引起报文传输。当触发信号的“当前信号值非使能值时” ,约束条件满足,触发条件发生。非使能值应该在通信矩阵中定义。当信号值等于使能值时,使能报文立刻以周期时间 T 循环发送。当信号值由使能值变为非使能值时并且此时再无其它使能信号,相应报文发送 NArepet 次,见下图。T. . .1 nT. . .E v e n tM e s s a g eo p e n d o o r c l o s e d o o rT i m e图 12 使能型报文使能报文重复发送的时间间隔为 tRepetitionA,参数定义如表 16 所示。表 16 使能型发送类型的参数推荐参数 符号 标称值 单位 备注报文发送次数 NArepet - 在 CAN 通信矩阵中定义,必须得到天康确认报文间隔时间 TArepet T ms 在 CAN 通信矩阵中定义,必须得到天康确认