1 前言
电动汽车中的电控单元多、内部空间小、环境干扰大,对控制系统、通信系统提出了更高的要求。CAN 以其良好的运行特性,极高的可靠性和独特的设计,特别适合电动汽车各电子控制单元之间的通信。为了更好地在实验室进行研究,建立了一个功能比较完善的试验测试平台,能够对CAN 总线系统及其网络协议进行研究。首先,基于DSP 的开发设计了电机控制器节点的通信程序。其次,深入了解CAN 总线在电动汽车中的应用需求,设计了CAN总线的应用层协议。最后,为检验设计协议的可行性,利用VB6.0 开发了电动汽车的监控系统,并为监控数据建立了数据库,方便管理数据。
2 电机控制器节点的设计
针对电动汽车电机控制器的特点,选用TI 公司的TMS320LF2407 芯片作为电机控制器的处理器。采用模块化的设计思想,编写了电机控制器节点的通信程序,可方便移植到基于DSP 的电机控制器或其他控制单元中。在电动汽车的CAN 总线系统中,电机控制器的实时性要求高,属于高速节点,波特率设为1 兆波特。电机控制器节点主要是接收总线上传来的电机工作模式、SOC、车速、加速踏板位置和制动踏板位置等控制信息,同时发送电机的工作温度、电机故障、工作状态等实时信息。本文中利用DSP2407的邮箱2 作为接收邮箱,邮箱5 作为发送邮箱,20 毫秒定时发送一次。
3 电动汽车监控系统设计
在实验室模拟电动汽车CAN 总线系统,以PC 机(带USB-CAN 模块)作为电动汽车的总控制器。利用CAN-bus 通用测试软件的运行机制和工作原理,设计了基于PC 机的电动汽车CAN 总线技术的监控系统。
3.1 监控系统概述
监控系统通过控制台(带USB-CAN 模块的PC 机)对电机控制器、电池控制器以及离合控制器进行监控。运行主界面如图1 所示。能根据需要在CAN 总线中收发参数,实现对总线各节点的监视和控制。例如,电机参数,包括SOC、车速、故障等级、工作模式、故障代码、工作温度等。监控系统还可根据系统扩展需要,提供创建节点的功能。另外,还提供数据管理功能。在监控系统执行过程中,采集到的数据会被记录到Microsoft Access 数据库中,可以用表格形式实时显视,还可以通过输出按钮由软件Excel 打开。
3.2 监控系统通信协议
在CAN 协议中只定义了数据链路层和物理层两层协议,缺乏对信息处理的规范,而一个完整的网络系统中离不开人机交互的应用进程,所以必须由用户定义应用层协议。根据电动汽车运行的特点,设计了监控系统的通信协议。大体上将电动汽车上各电子控制单元(ECU)分为高速和低速节点两大类。其中高速节点包括电机控制器、发动机控制器、电池控制器、ABS/ASR控制单元和能量管理单元等,在它们的ID 码设置较高的优先级。低速节点包括空调系统、仪表显示系统、车灯系统等。表1 给出了电动汽车各节点之间接收及发送的信号类型。根据电动汽车各节点之间接收及发送的数据,对各节点之间需要交换的信息的类型,所包含的参数以及表示方法有具体的说明。例如在电机控制器节点发送的8 个字节分别定义为:电机转速(双字节)、电机转矩(双字节)、工作温度(单字节)、错误等级及代码(单字节)、工作模式(单字节)还有一个字节作为备用。表1 电动汽车各节点之间接收及发送的数据明。例如在电机控制器节点发送的8 个字节分别定义为:电机转速(双字节)、电机转矩(双字节)、工作温度(单字节)、错误等级及代码(单字节)、工作模式(单字节)还有一个字节作为备用。
3.3 监控系统程序设计
监控系统是要完成对各节点的监控,按照设计需求,可将整个设计分为五个设计窗体,包括主窗体、电机控制器监控窗体、电池控制器监控窗体、离合控制器监控窗体和创建节点窗体,并进行模块化设计。其中创建节点窗体可根据需要方便创建监控窗口,设置节点ID 号和监控变量。监控系统程序设计流程图如图2 所示。
4 监控系统的测试
完成了PC 机的监控系统程序设计后,为了验证程序是否正常工作,同时为了验证设计的下位机DSP 数据采集与通信程序的正确性。在这里将DSP数据采集与通信程序和PC 机程序联合起来进行调试。将双方的波特率设为1M 波特。DSP 节点的测试程序包含A/D 采样(模拟加速踏板位置)和通信程序,DSP 运行后由定时中断(20ms)进行数据采集及处理,将信号通过CAN总线上传到上位机(PC 机)。另一方面,DSP 自动判断是否有PC 机发送来的指令,如电池电压、电池电流、加速踏板位置和工作模式等。上位机接收到数据后,进行处理并交给监控系统进行显示。电机控制器节点的测试界面如图 3 所示。
5 结论
为适合电动汽车监控的需求,组建了基于CAN总线的电动汽车仿真测试平台,配备专业测试仪器后可组建CAN-BUS 实验室。该系统具有良好的扩展性,可方便增加需要监控的汽车电子控制单元(ECU)。此外,通过VB 与ACCESS 技术的良好衔接,具有数据实时保存,为后期的数据处理提供条件。为了保证各个消息能及时被相关节点采集并处理,需要对消息的调度策略进行深入研究,进一步优化网络管理,特别是网络故障诊断以及处理机制。