1、第 25 卷 第 9 期 电子测量与仪器学报 Vol. 25 No. 9 2011 年 9 月 JOURNAL OF ELECTRONIC MEASUREMENT AND INSTRUMENT 799 本文于 2011 年 3 月收到。 *基金项目 : 国家自然科学基金 (编号 : 60873003)资助项目 ; 国家电子信息产业发展基金 (编号 : 2010301)资助项目 ; 合肥工业大学博士专项科研资助基金 (编号 : GDBJ2010-008)资助项目 ; 安徽省科技攻关项目 (编号 : 1101c060305900000)资助项目。 DOI: 10.3724/SP.J.1187.20
2、11.00799 电动汽车 CAN 网络应用层协议研究*卫 星1,2张建军1,4张 利3,4王跃飞3,4 张本宏1,4(1. 合肥工业大学计算机与信息学院 , 合肥 230009; 2. 合肥工业大学计算机科学与技术博士后科研流动站 , 合肥 230009; 3. 合肥工业大学机械与汽车工程学院 , 合肥 230009; 4.教育部安全关键工业测控技术工程研究中心 , 合肥 230009) 摘 要 : 结合电动汽车控制策略和结构特点 , 以国际成熟协议 SAE J1939 等为参考 , 研究电动汽车各 ECU 间进行信息共享的应用层协议编制问题。提出了典型电动汽车的 CAN 网络拓扑结构 ,
3、详细分析了 29 位 ID 的分配原则和方法 ; 充分利用 CAN通信的优势 , 对节点源地址分配、单帧与多帧标识、多帧编号等关键问题进行明确的规定。在总线波特率为 250 Kbps 时 , 分别通过 CANoe 仿真软件和 RMA 方法验证了协议的有效性和实时性。 关键词 : 电动汽车;应用层协议;多帧编号;实时性 中图分类号 : U469.72 文献标识码 : A 国家标准学科分类代码 : 520.1040 Research of application layer protocol for electric vehicle based on the CAN bus Wei Xing1,2
4、Zhang Jianjun1,4Zhang Li3, 4Wang Yuefei3, 4Zhang Benhong1,4(1. School of Computer and Information, Hefei University of Technology, Hefei, 230009, China; 2. Post-doctoral Research Institute of Computer Science and Technology, Hefei University of Technology, Hefei, 230009, China; 3. School of Machiner
5、y and Automobile Engineering, Hefei University of Technology, Hefei 230009, China; 4. Engineering Research Center of Safety Critical Industrial Measurement and Control Technology, Ministry of Education, Hefei 230009, China) Abstract: Considering the control strategy and structure characters of elect
6、ric vehicle, the paper tackles the prob-lem of how to compile the application layer protocols for information share between ECUs according to exiting SAE J1939 protocols. The network topology of CAN bus in electric vehicle was brought out, the distribution principle and characters of 29 ID were disc
7、ussed. In order to adequately take the advantage of CAN communication, the defining and analyzing of the nodes source distribution, the identification of single frame and multi-frame, the numbering of multi-frame were also well done. Under the bus rate of 250 Kbps, the paper validates the validity a
8、nd real-time of the protocol through the simulation tool of CANoe and the method of RMA. Keywords: Electric vehicle; Application layer protocol; Numbering of multi-frame; Real-time 1 引 言 随着功能的不断增加、可靠性要求的不断提升以及价格的不断下降 , 越来越多的电子控制单元 (ECU, electronic control unit)被应用于汽车控制环境1。总线技术将众多的 ECU 组建为车内网络而进行数据通信
9、和数据共享 , 能够减少车载线束的布局 , 实现整车的智能状态控制和智能故障监测2-3。 CAN 2.0 协议只定义了 OSI 七层模型中的最底两层 物理层与数据链路层规范 , 目前的 CANopen、DeviceNet、 ISO14229、 SAE J1939 等开放式高层协议在通信方式、传输模式、功能划分以及应用领域方面进行了详细规划。 其中 J1939 协议适用于中重型道路车辆 , 涉及物理层、数据链路层 (协议数据单元、多帧报文传输 )、网络层 (网段互连设备 )、应用层 (参数组和参数规范 )、网络管理和诊断服务4。国内对于应用层协议的研究还主要集中于理论方面。对于电动汽车来说 ,
10、由于控制系统和传动系统的差异 , 800 电子测量与仪器学报 第 25 卷 尚无既定协议可以借鉴 , 但不能照搬 J1939 协议5。 本文在详细研究和分析 J1939 等协议的基础上 , 展开对电动汽车应用层协议的相关研究。 2 电动汽车 CAN 网络 电动汽车结构复杂 , 比传统内燃机汽车增加了电力驱动模块、电池模块等辅助设备6。涉及的电动汽车 CAN 网络主要包括车辆能源总成控制单元VCU、电机控制单元 MCU、电池控制单元 BCU、发动机电子油门控制单元 TCU、辅助电器控制单元ACU、显示控制单元 DCU、变速器控制单元 CCU、制动控制单元 BECU; 其中 VCU 是整个控制网络
11、的核心7-9如图 1 所示 , 负责全局传感器参数的收集、执行器工况的获取以及控制策略的广播等任务。 图 1 典型电动汽车网络拓扑结构 Fig. 1 Typical network topology of electric vehicle 3 应用层协议的研究与分析 CAN 总线应用层协议的设计总体目标是使网络中各节点之间通信更加顺畅、可靠 , 且能降低总线负载率 , 最大限度地发挥 CAN 总 线的优异性能10-11。CAN 总 线应用层并不定 义和描述应 用程序参数 , 其提供通讯功 能与应用程 序的通讯接 口 , 包括: 定义通讯服务、 传 送过程数 据 、诊断信 息 、标定信 息 和
12、网络管理等 。 其中的基 础 和关键内 容 包括标识 符 定 义与数据域分 配。 定义电动汽 车正常运行 过程的 5 种消息类型:控制消息 、 状态消息 、 测量消息 、 报警消息 、 广 播消 息。对于重要 信息 (如报 警信 息 ), 需采 用应答机制在传输层 通 过时序控 制 来实现。 针 对系统在 诊 断 和测试 过程中产生 的多字节与 多帧数据 (大于 8 字节 ), 需进行报 文 拆分与重 组 。基于以 上 分析及详 细 研 究SAE J1939 等协议的基 础 , 采用 29 位扩展帧格 式进行电动汽车 应用层标识 符与数据域 分配。 3.1 应用层协议标识符 分配 CAN 协
13、议规定标识符 ID 越小 , 报文优先级越高 , 优先获得总 线使用权 , 故 ID 决 定 了 报文的优先 级和总线 等待 时 间 ; 同 时 其分配 方案 影响了 通信 结构的合理性、 ID 使用的效率 、报文滤波 的适用性等12。 确定 ID 时 需考虑以下情 况: 1) 报警消息优先级应最 高 ; 2) 高 频 率 报文优 先级 低于频 率报 文优先 级 ; 3) 重 要性报文优先级较高 ; 4) 多 帧优先级高于单帧 ; 5) 高 实时性报文优先级 较高。 29 位 ID 分 配方案见表 1, 其主要分为 7 个部分 , 其中 ID4 到 ID7 设为 000以便于系统 进一步扩展
14、。 3.1.1 报文优先级确定 ID1-ID3 被 用于确定报文 优先级 , 是根据报文数据长度、 重 要性、传 输 频率等综 合 确定的。 通 过 上述分析 , 报警信息需拥有 最高的优先 级以保证其 信息得到及时 处理 , 满足实时性要求 , 控 制命令也 需要较高的优 先级以确保 系统正常运 行 , 其次分别 是广播信息、 测量信息和 状态信息13。基于上段 分析分配详见表 2。 表 1 29 位标识符分配 Table 1 Distribution of 29 identifier ID 序列 ID24-ID29 ID23 ID20-ID22 ID14-ID19 ID8-ID13 ID4
15、-ID7 ID1-ID3 ID 功能 多帧编号 应答位 单 /多帧标识 目的地址 源地址 保留位 优先级 表 2 优先级确定 Table 2 Confirmation of propriety ID1-ID3 001 010 100 101 110 信息类型 报警信息 命令信息 广播信息 测量信息 状态信息 3.1.2 源地址与目的地址确定 协议进一步将 ID8-ID13 用于确定报文源地址 SA, ID14-ID19 确定报文目的地址 DA, 进而来标识报文的各发送节点和接收节点 , 与 ID1-ID3 结合起来进一步确定报文的优先级 , 以保证在前三位优先级相同的情况下根据报文发送的源节点
16、的不同重新进行总线仲第 9 期 电动汽车 CAN 网络应用层协议研究 801 裁 , 故重要节点需分配较小的源地址与目的地址。总线各电控节点的源地址与目的地址的确定是同步的 , ID8-ID13 共 6 位可以标识 64 个电控节点 , 可满足电动汽车控制系统的需求 , 具体分配方式如表 3 所示。 对于广播消息 , 协议规定其目的地址为 1111, 确保所有总线 ECU 节点都能接收其报文消息。 3.1.3 单帧与多帧标识 为了规范管理系统运行过程中的多字节数据 , 将多字节数据进行拆分 , 使之成为各个单帧 , 目的节点接收后按照多帧编号进行重组。本协议将ID20-ID22 用于单帧和多帧
17、标识如表 4 所示。 3.1.4 应答模式区分与多帧编号 协议将 ID23 用于确定应答或非应答 , 对于报警信息等重要性报文 , 需确保目的节点在规定时间内接收到相关信息 , 否则需进行重发 , 规定 ID23 为 0时需要目的地址接收到报文后发送应答信息 , 为 1时不需要发送应答信息。 对于传输过程中的多帧 , 为了便于接收节点完全接收后进行重组 , 将 ID24-ID29 用于对多帧数据从小到大进行编号 , ID24-ID29 共 6 位可标识 64 个单帧 , 故每多帧可发送 512 个字节的数据 , 能够满足各种情况下电动汽车的通信需求。 表 3 源地址分配 Table 3 Dis
18、tribution of source address ID8-ID13 000000 000001 000010 000011 000100 000101 000110 000111 源地址 VCU MCU TCU CCU BCU ACU DCU BECU 表 4 单帧与多帧区分 Table 4 Distinction of single and multi frame ID20-ID22 111 011 010 001 帧类型 单帧 多帧首帧 中间帧 结束帧 3.2 应用层协议数据域分配 29 位 ID 标识符将通信系统的各种功能需求和通信策略详细标识 , 数据域 8 字节空间可完全用于装
19、载报文发送数据 , 若出现长度小于 8 字节的报文 , 将剩余字节用 0xFF 填充。在对电动汽车通信过程的详细研究的基础上 , 本文对 CAN 总线各电控节点间的报文类型和字节数目进行了研究和定义如表 5 所示 , 表中 W 代表故障信息。 其中车辆能源总成控制单元 VCU 对电机控制器MCU 的控制命令主要有电机期望转速、电机期望转矩、电机状态指令、电机期望速比或档位。 VCU 发给 TCU 的控制命令主要有期望油门开度、最速指令(以最快速度打到最大开度或最小开度位置 , 用于紧急制动工况 )。 VCU 发给 BECU 的控制命令包括电机转速、制动器动作信号等。 MCU 发给 VCU 的状
20、态信息主要包含电机实际转速、电机实际转矩、电机当前速比或档位、电机状态、电机电压以及电机故障信息等 ; TCU 发给 VCU 的状态信息包括发动机实际油门开度、电子油门极限位置信息、电子油门故障信息 ; BECU 发给 VCU 的状态信息包括车轮速度、ABS/ASR 状态信息、 制动踏板位置等。 其它各 ECU间的报文传输详如表 5 所示。 4 负载率仿真与实时性分析 前述的总线协议能否满足系统通信需求、是否具有可靠性与实时性 , 需要对其进行仿真测试与网络分析。考察 CANoe 中仿真电动汽车控制系统在 3种情况下的总线负载率 ; 并采用 RMA 方法对总线报文实时性进行分析。 4.1 总线
21、负载率仿真 总线负载率是指总线上单位时间内实际传输的数据量与标准位速率的比值 (常小于 30%), 仿真过程中的总线通信速率为 250 kbps。 1) 周期性消息 周期性消息是最简单、 最理想的通信情况 , 仿真将报文发送周期设为 50 ms, 总线上共有 14 条报文 , 可得其理论平均负载率为 14.52%, 图 2 为在 CANoe中得到的仿真值 , 两值比较接近 , 验证了仿真的有效性。 2) 周期性消息 +事件性消息 总线系统在实际运行过程中 , 可能会产生事件性消息 (如报警信息 ), 这会加大系统的总线负载率如图 3 所示 , 图中最大总线平均负载率为 14.75%。 3) 周
22、期性消息 +事件性消息 +错误性消息 总线系统在工作过程中 , 由于总线扰动、 振荡器误差等导致其产生错误性报文信息 , 本文在分析过程中产生 5%的错误性报文以更真实的仿真实际系统 , 由图4 可得在 3 种消息下总线最大平均负载率为 15.50%。 802 电子测量与仪器学报 第 25 卷 表 5 电动汽车 ECU 间数据传输定义 Table 5 Data transmission defining of ECUs for electric vehicle SA DA Byte1 Byte2 Byte3 Byte4 Byte5 Byte6 Byte7 Byte8 VCU MCU 期望转速
23、期望转矩 状态指令 期望速比 VCU TCU 期望开度 最速指令 VCU CCU 期望传动比 最速指令VCU BCU 最大放电限制 最大充电限制 SOC 上限 SOC 下限 状态指令 VCU ACU 状态指令 VCU DCU 当前车速 SOC 当前工作模式 当前状态 VCU BECU 电机转速 制动器动作信号 MCU VCU 实际转速 实际转矩 当前速比 状态 电压 W TCU VCU 开度 极限信息 W CCU VCU 速比 位置信息 状态BCU VCU 当前状态 当前电流 当前电压 放电 最高温度 最低温度 W ACU VCU 当前状态 W DCU VCU 当前状态 BECU VCU AB
24、S/ASR 状态信息 车轮速度 制动踏板位置 W 图 2 周期性消息下的负载率 Fig. 2 Load ratio of periodic information 图 3 周期性与事件性消息下的负载率 Fig. 3 Load ratio of periodic and event information 4.2 报文实时性分析 总线负载率低只能保证系统的可靠性 , 并不能说明总线的实时性 , 即所有总线报文都能否及时传送并被接收。本文进一步采用单调速率分析RMA(rate monotonic analysis)方法得到各报文的最大延迟时间和总线再加载能力14-15。总线再加载能力是总线增加报文
25、信息并保证其实时性的能力 , 该值越大实时性越好 ; 发送时间等于总线占用时间 , 最长等待时间是低于该优先级报文占用时间与所有高优先级报文占用时间之和。其中最大延迟时间应小于最大延迟期限与软件抖动时间的差值 , 同时还是总线占用时间与最坏排队时间的和。 图 4 周期性、事件性与错误性消息下负载率 Fig. 4 Load ratio of periodic, event and wrong informa-tion 用 RMA 方 法 对 各报文信息 实时性进行 分析得到表 6。由 表 可 知 , 该协议下总线各报 文的最大延 迟时间均远小 于最大延迟 期限 , 报文具有较强的实 时性 ; 另
26、外可算 出再加载能 力 a=2.03, 总线具有一 定第 9 期 电动汽车 CAN 网络应用层协议研究 803 的灵活性和扩充性。 综合上述对控制系统的总线负载率的仿真和报文实时性的分析 , 发现负载率其均远小于 30%的界 限 , 且报文具有较强的实时性和扩充性 , 能够满足电动汽车实际的控制需求和控制策略 , 即使总线上扩充其它节点 , 其负载率也不会超过 30%。 表 6 报文实时性分析表 (优先级自上到下 ) Table 6 Analysis of message real-time (priority of the up to down)时间 /ms 信息帧名 发送方式 (事件或周期
27、 ) 周期 低优先级帧占用时间 发送时间 总线占用时间 最长等待时间 最长延迟时间 最长延迟期限 VCU -MCU event 0.628 0.548 0.548 0.628 1.176 30 VCU- TCU event 0.628 0.388 0.388 1.804 2.192 30 VCU- CCU event 0.628 0.388 0.388 2.820 3.208 30 VCU -BCU event 0.628 0.508 0.508 3.836 4.344 50 VCU- ACU event 0.628 0.388 0.388 4.972 5.360 50 VCU -DCU ev
28、ent 0.628 0.588 0.588 5.988 6.576 50 VCU-BECU event 0.628 0.592 0.592 6.723 7.483 50 MCU -VCU cyclic 20 0.588 0.628 0.628 7.164 7.792 20 TCU- VCU cyclic 20 0.588 0.428 0.428 8.380 8.808 20 CCU- VCU cyclic 20 0.588 0.468 0.468 9.396 9.864 20 BCU- VCU cyclic 40 0.468 0.588 0.588 10.132 10.720 50 ACU-
29、VCU cyclic 40 0.468 0.468 0.468 11.188 11.656 50 DCU -VCU cyclic 50 0 0.468 0.468 11.656 12.124 50 BECU -VCU cyclic 50 0 0.468 0.468 12.345 13.029 50 5 结 论 鉴于电动汽车的通信需求和控制策略 , 本研究详细分析了其控制系统拓扑结构 , 进而以 CAN 自身底层协议为参考 , 结合 SAE J1939 及其它应用层协议 , 设计使用于电动汽车控制系统的应用层协议。 该协议具有灵活性、可靠性、易扩展性及易维修性 ; CANoe 仿真与 RMA 测
30、试验证了协议的可行性与有效性 , 能较好地满足电动汽车控制系统的工作需求。对于报文传输过程中的稳定性、实时性问题尚未涉及 , 将作为接下来研究重点。 参考文献: 1 LEEN G, HEFFERNAN D. Expanding automotive elec-tronic systems J. IEEE Computer and Control Engi-neering, 2002, 35(1): 88-93. 2 张利 , 李县军 , 王跃飞 . 汽车 CAN 网络时钟同步方法研究 J. 电子测量与仪器学报 , 2011, 25(2): 147-152. ZHANG L, LI X J, W
31、ANG Y F. Research of clock syn-chronization based on CAN network J. Journal of Electronic Measurement and Instrument, 2011, 25(2): 147-152. 3 刘常杰 , 曲兴华 , 叶声华 . CAN 总线在分布测试与控制系统中的应用 J. 电子测量与仪器学报 , 2001, 15(3): 1-4. LIU C J, QU X H, YE S H. A distributed control and communication network based on CAN
32、J. Journal of Electronic Measurement and Instrument, 2001, 15(3): 1-4. 4 Society of Automotive Engineers. SAE J1939 recom-mended practice for a serial control and communications vehicle networks S. 2005. 5 EMADI A, RAJASHEKARA K, WILLAMSON S. Topological overview of hybrid electric and fuel cell ve-
33、hicular power system architectures and configurations J. IEEE Transactions on Vehicular Technology, 2005, 54(3): 763-770. 6 李芳 , 张俊智 , 王丽芳 , 等 . 电动汽车动力控制系统控制器局域网 (CAN)总线应用层协议 J. 机械工程学报 , 2008, 44(5): 102-107. LI F, ZHANG J ZH, WANG L F, et al. Controller area network protocol for powertrain system o
34、f electric vehi-clesJ. Chinese Journal of Mechanical Engineerging, 2008, 44(5): 102-107. 7 张利 , 王跃飞 , 严刚 , 等 . 混合动力汽车 CAN 网络优先级的动态分配方法 J. 农业机械学报 , 2011, 42(5): 22-26. ZHANG L, WANG Y F, YAN G, et al. Method of priority 804 电子测量与仪器学报 第 25 卷 dynamic distribution of CAN network in HEVJ. Jour-nal of Agr
35、icultural Machinery, 2011, 42(5): 22-26. 8 韩江洪 , 魏振春 , 张本宏 , 等 . 总线式车身控制系统的规则化建模方法 J. 汽车工程 , 2006, 28(12): 1121- 1124. HAN J, WEI ZH CH, ZHANG H, et al. Modeling of CAN bus-based auto-body control system with rule de-scription method J. Aut omotive Engineering, 2006, 28 (12): 1121-1124. 9 徐超 , 李正平 ,
36、 汪长勤 . 基于 CSMA/CD 的 CAN 总线访问的建模与仿真的研究 J. 仪器仪表学报 , 2008, 29(4): 866-869. XU CH, LI ZH P, WANG CH Q. Research on model-ing and simulation of CAN bus access based on CSMA/CD J. Chinese Journal of Scientific Instrument, 2008, 29(4): 866-869. 10 谢辉 , 周能辉 , 肖斌 , 等 . XL 纯电动轿车 CAN 总线系统及应用层协议的开发 J. 汽车工程 , 20
37、05, 27(6): 660-664. XIE H, ZHOU N H, XIAO B, et al. Development of the CAN bus system for XL pure electric cars J. Automo-tive Engineering, 2005, 27(6): 660-664. 11 潘全文 , 房振旭 , 姜守达 . 基于 CAN 总线的分布式线束网络测试系统设计 J. 仪器仪表报 , 2007, 28(4): 300-303. PAN Q W, FANG ZH X, JIANG SH D. Design of dis-tributed wirin
38、g harness net work test system based on the CAN busJ. Chinese Journal of Scientific Instrument, 2007, 28(4): 300-303. 12 张炳力 , 朱可 , 赵韩 , 等 . 基于 CAN 总线的燃料电池客车通信网络设计 J. 仪器仪表学报 , 2006, 27(6): 657- 658. ZHANG B L, ZHU K, ZHAO H, et al. Design of com-munication network for fuel cell electric bus based on
39、 CAN bus J. Chinese Journal of Scientific Instrument, 2006, 27(6): 657-658. 13 刘勇 , 佟为明 , 毕胜 , 等 . 基于 CAN 总线的企业能源监测系统研究 J. 仪器仪表学报 , 2006, 27(6): 2437-2438. LIU Y, TONG W M, BI S, et al. Research on the plant energy monitoring system based on CAN bus J. Chi-nese Journal of Scientific Instrument, 2006
40、, 27(6): 2437-2438. 14 曹万科 , 张天侠 , 刘应吉 , 等 . 基于 RMA 的汽车车身CAN 总线优化方法 J. 汽车工程 , 2007, 29(12): 1098-1101. CAO W K, ZHANG T X, LIU Y J. Optimization design of CAN bus in vehicle body based on RMA algorithm J. Automotive Engineering, 2007, 29(12): 1098-1101. 15 李雅博 , 张俊智 , 卢青春 . 混合动力电动汽车车上CAN 网络设计实时性分析 J
41、. 汽车工程 , 2005, 27(1): 16-19. 16 LI Y B, ZHANG J Z, LU Q C. An analysis on real2time capability of CAN networks for hybrid electric vehicle J. Automotive Engineering, 2005, 27(1): 16-19. 作者简介 : 卫 星 :男 , 1980 年出生 , 2009 年于中国科学技术大学获得博士学位 , 合肥工业大学讲师。研究方向:汽车电子 , 嵌入式系统和物联网。 Wei Xing: male, born in 1980, a
42、cheive PhD of University of Science and Technology of China in 2009. He is a lecturer in Heifei University of Technology. His research interests include automotive, embedded system and internet of things. 张建军 :男 , 1963 年出生 , 博士、教授、硕士研究生导师 , 教育部安全关键工业测控技术工程研究中心常务副主任 , 研究方向:计算机控制、汽车电子 , 嵌入式系统。 Zhang J
43、ianjun: male, born in 1963. He is a PhD & profes-sor in Hefei University of Technology. His research interests include computer control, embedded system and vehicle elec-tronic control system. 张 利 :女 , 1955 年出生 , 教授、硕士研究生导师。主要研究方向为机电一体化、 汽车电子、 车载信息与网络传输技术。 Zhang Li: female, born in 1955. She is a professor in Hefei University of Technology. Her research interests include auto-motive electronic and embedded software, vehicle information and network transmission technology and so on.