随着汽车电子技术的发展,汽车上越来越多地采用了各种复杂的电子设备。为了提高信号的利用率,要求大量的数据信息能在不同的ECU中共享,大量的控制信号能够实时交换, 而传统线束已远远不能满足这种需求。CAN总线和基于它的车辆网络通信标准提供了解决上述问题的途径。[1] SAE J1939协议是美国汽车工程师协会发布的以CAN总线为核心的车辆网络串行通讯和控制协议,供卡车及其拖车、大客车、建筑设备以及农业设备使用,是用来支持分布在车辆各个不同位置的电控单元之间实现实时闭环控制功能的高速通信标准,数据传输速率为250Kb/s,通信物理层和数据链路层以CAN2.0为基础,并定义了网络层和应用层的协议。[2-3]
针对J1939协议教学和培训要求,构建了一个基于J1939协议的汽车教学实验系统。系统实时监控汽车CAN总线的数据并能完整记录、显示波形和打印。
1 系统原理及硬件结构
1.1系统原理
系统中,CAN总线模块系统通过CAN总线分析仪与计算机通讯,实行数据采集和传输,用于教学和培训。学生进行实验操作,直观了解数据收发,掌握CAN总线和J1939协议的特点,理解物理层、数据链路层和应用层的含义和作用,最后进行系统开发。
CAN总线模块系统能采集卡车道路行驶状态数据,同时能控制车灯、门窗电机、电磁阀等功率设备。其中,仪表板模块通过与车身通用控制模块、车窗控制模块进行CAN通讯,采集车辆开关状态,通过LED灯、液晶屏、转盘指针显示整车状态、故障信息、报警信息等各种信息,实现人机交互,对卡车进行实时控制。
1.2 系统硬件组成
系统包括3个部分:基于J1939的汽车CAN总线模块系统,包括仪表板模块、车身通用模块、车身专用模块(车窗控制模块);CAN总线分析仪,包括由基于USB的Kvaser USB CANⅡ总线适配器和软件Warwick X-Analyser组成;笔记本电脑(计算机)。
系统硬件结构示意图,如图1所示:
图1 系统硬件结构图
2 系统硬件
基于J1939的汽车CAN总线模块系统中,仪表板具有整车参数的显示、存储,与发动机ECU通信的功能,同时实现对负载的过程控制,根据仪表板上的开关状态及连接在车身通用控制模块的开关和传感器状态,产生功率输出,并与车身通用控制模块通讯;车身通用控制模块负责将所属区域的开关和传感器状态通过CAN总线反馈给仪表板模块,并接收控制指令,驱动功率输出接口实现通断控制。
实车上的仪表板控制器位于驾驶室司机座位正前方;前部控制模块位于驾驶室司机座位与副驾驶座位之间的操作台下;车身通用模块位于车架上;车窗控制模块位于驾驶室司机座位与副驾驶座位之间的操作台下。