3.2 CAN 通信协议设计
CAN 通信协议包括物理层、数据链路层和应用层。物理层和数据链路层是通过硬件实现的, 在使用CAN 通信时, 需要开发者自行定义应用层协议。构造应用层协议的主要任务是ID 分配、定义消息周期、确定信号与消息的映射关系。设计要考虑的主要因素有数据传输的实时性要求、数据的相对重要程度、与数据相关的应用控制算法对数据的时间要求等。国际上存在一些现有的标准, 如CANopen 、SAE J1939 等。
在一些利用简单的通信协议就可以满足要求的情况下, 采用复杂的协议会造成资源浪费, 用户在应用时也会觉得诸多不便, 反而限制了灵活性。本文设计的CAN 总线网络中仅有离合器控制器和发动机控制器两个节点。针对仅有两个节点的实验平台, 本文从协议实现的代码量、目标系统的信息量、软件的开发成本等角度出发, 定义一种简单可靠的CAN 协议。具体的通信协议定义如表2 所示, 标识符用来表示信息的优先级, 标识符越小优先级越高。
表2 CAN 总线通信协议
4 CAN 通信测试实验
本文实验是在自行搭建的离合器模拟实验平台上进行的。本实验平台是由离合器控制板、加速踏板、刹车踏板、相关传感器、离合器执行机构及发动机模拟控制板组成。离合器控制板与发动机模拟控制板之间通过CAN 总线通信。图5 为实验过程中通过CAN 总线传送的档位变化信息, 图6 为通过CAN 总线传递的加速踏板开度信号。
图5 档位信息
图6 加速踏板开度信号
本文提出了一套电控自动离合器的控制器方案, 并进行了系统的软硬件开发, 初步实现了自动离合器的基本功能, 设计了CAN 总线接口。在实验平台上验证了控制器方案及CAN 通信模块的可行性和可靠性, 为实车试验打下基础。