1 引言
目前,在控制领域,虚拟仪器系统的应用多局限于采集-反馈-控制的点对点方式。而对于多电机的系统,特别是多电机驱动的蓄电池车辆系统,则需要实现大量的信息采集、分布式的协调控制、实时的反应速度等功能。传统方式硬件组成复杂、走线繁琐、调试安装不便、不易扩展,且没有发挥虚拟仪器的优势,因此本文提出了一种基于CAN(Controller Area Network)总线的虚拟仪器系统的设计方案,将计算机通讯、现场总线技术和虚拟仪器的概念很好的结合起来,设计出了一套结构简单、实时性高、扩展性强的分布式监控系统,在复杂控制系统中实现了多电机控制与监测的实时调节、控制效果的数字化和图形化。
2 总体方案的提出
图1 系统的总框图
设计系统原则是在实用、可靠、经济的原则基础上,保证系统不仅能满足应用需要,而且要有灵活性、可扩展性和通用性。该系统是由虚拟仪器技术、Modbus总线协议、CAN总线优化组合成而成,系统的构成原理图如图1所示。系统是利用PC机实现对多台电机、多组电池及其它辅助设备进行监控。主要由上位机、电池管理系统、电机控制系统、其它辅助控制系统组成。各个控制器之间通过CAN总线进行通信,以实现控制指令的发送和接收、传感器测量数据的共享等,从而提高系统的控制性能。
电机控制器实现采集电机的电枢电流、电机转速,判断工况,接收设定转速等功能;电池管理控制器实现采集电池温度、电压、电流、接收控制指令等功能。上位机用图形化编程语言LabVIEW编写,程序以虚拟仪表的形式实时显示电机转速、车速、电池的荷电状态等值,并通过操作上位机发控制指令,控制电机电池的状态。CAN节点是本系统的核心部分,通过它把各个分散的部分连接成统一的系统。每个CAN节点使用统一的硬件平台,实现不同的工作方式,每个节点都可以独立的选择所连接设备及工作方式。
3 CAN节点硬件设计
对于车用电控单元来说,为了简化设计,提高可靠性,采用集成的自带CAN总线控制器的微处理器。自带CAN总线控制器的微处理器,不占用处理器的端口资源,可以大大简化接口电路的设计,减少程序的复杂程度,提高系统的稳定性,本系统选用Philips的高性能微控制器P87C591。图2为节点硬件设计的功能框图,针对节点功能要求与所选择微处理器资源,叙述如下:
(1) 全双工增强型UART,带有可编程波特率发生器,按规定的Modbus协议来完成RS232/RS485通讯;在硬件实现上,RS485总线端使用的是收发器MAX481;RS232总线端使用的是收发器MAX232。为了实现串口通道的切换,在该系统中专门设置了跳线槽,用于手动选择,通过设定不同的输入信号值,选择相应的数据通道。
图2节点硬件功能框图
(2) 微处理器P87C591片内集成并增强了SJA1000(独立的CAN控制器)的功能,完全兼容CAN2.0协议,可完成CAN总线数据的收发等通信任务;CAN接口电路使用CAN总线收发器PCA82C250,为了增加系统的可靠性和抗干扰能力,在P87C591和PCA82C250之间增加相应的光电隔离电路。