基于CAN总线的电动汽车整车参数测试网络
扫描二维码
随时随地手机看文章
1、引言
现代交通的迅猛发展带来的能源与环境危机已经成为世界性的难题。发展电动汽车,采用清洁能源,被认为是最好的解决方案之一。为此,各国投入了大量的人力物力进行电动汽车的研究,并取得了可喜成果。
电动汽车不仅包括传统汽车的运行速度、行驶里程等参数,还包括电动汽车独有的能耗、电源电压、电流及电机转速等电气参数,参数多达100多项。掌握这些参数对于分析电动汽车整体运行性能有着重要意义。这些参数类型各异、位置分散,要想集中测量存在很大困难。因此,需要分散测量,再通过监控节点集中显示和记录的方式构造测试网络。控制器局域网CAN(controller area network)能有效支持分布式和实时控制的串行通讯,与其它现场总线相比,它具有简单可靠、速率高、无主从以及连接方便等诸多优点,是一种在汽车车载测控网络中成熟应用的总线形式。因此,我们选用CAN总线构造电动汽车整车参数测试网络。
2、 CAN总线网络总体结构
2.1 监测网络总体结构
图1 系统总体结构框图
电动汽车整车运行参数监测网络共由9个CAN节点构成,包括1个负责网络调度与数据处理的PC104监控节点和8个单片机数据采集节点。8个数据采集节点包括1个车辆参数采集节点、1个动力电池参数采集节点、1个辅助电池参数采集节点、1个电机参数采集节点和4个电池参数采集节点。由于动力电池节点、辅助电池节点和电机节点采集的参数都是电压、电流以及充放电的能量,因此可以将这三个节点作为一类节点设计,统称为电量参数采集节点。动力电池由40节12V铅酸蓄电池串联而成,串联电池组的性能取决于每节电池的性能,40组电池参数在4个电池节点中分别进行测量,每个节点负责测试10节电池的参数,因此4个电池参数采集节点是另一类数据采集节点。此外,还有1个车辆参数采集节点,主要采集车辆的各种状态,包括车辆启动、停止,空调的开关状态,发动机的转速(针对混合动力车),电机转速。因此这个系统包括了3类数据采集节点,即电量节点、电池节点和车辆节点。整个系统的结构如图1所示。
在整个的系统中,共有3类8个数据采集节点,完成146项参数的采集。采集的数据通过CAN总线将数据发送到监控节点,监控节点也通过微处理器完成总线上数据的接收。同时,该节点通过双口RAM和一台PC104计算机的ISA总线通讯,PC104通过双口RAM获取监控节点从总线上收到的数据,并将数据进行显示和记录。同时,PC104还通过一个串行口直接接收GPS数据接收板的车辆速度、经纬度和时钟信息,并作为同步信息进行记录和显示,以便将汽车的实时性能与速度和运行地况联系起来。信息每0.5秒记录一次,采用变化记录的数据压缩算法,并以*.dat文件格式进行存储。
2.2 网络中传输的信息
CAN总线是通过信息帧传输数据的,可分为数据帧、远程帧、错误帧和超载帧。信息以报文为单位传输,不同的报文以标识符(ID)进行区分,标识符越小,报文的优先级越高。
监控节点发送信息的报文标识符为00H,用于向数据采集节点发送查询信息,采集节点收到监控节点的查询信息后,向总线上发送自己的一包数据,监控节点收到以后确认此节点工作正常。通过这种方式,监控节点可以随时查询网络中连接了那些数据采集节点。由于报文所带数据长度最大为8字节,对于测量参数较多的电量节点和电池节点,需要分配较多的报文标识符。每个电量节点分配2个标识符,每节电池分配1个标识符。因为与参数相联系的报文标识符是固定的,根据收到的标识符就可判断收到的是哪个参数。电动汽车整车参数监测网络中传送的报文标识符(ID)与参数的对应关系见表1:
表1 报文标识符与参数对应表
3、数据采集节点的设计
作为一个运行参数监测网络,数据采集是系统工作的基础。本系统共有3类8个数据采集节点,即车辆参数采集节点,3个电量参数采集节点和4个电池参数采集节点。下面将分别就3类节点的设计进行介绍。
系统中所有的数据采集节点都采用如图2所示的结构,包括一个微处理器、一个CAN控制器和一个CAN收发器。微处理器采用INTEL公司的80C196KB,主要负责采集外界的各项参数,同时管理和调度节点的工作,当采集到一组合理的数据以后,通过操作CAN控制器向总线上发送数据。CAN控制器选用了SJA1000,它集成了CAN2.0A和CAN2.0B的总线协议,负责完成数据的发送和接收。CAN收发器82C250是CAN控制器和物理总线的接口,其内部驱动电路具有限流电路,提供对总线的差动发送和接收功能,同时采用了光电隔离同总线交换数据,有助于抑制汽车等恶劣电气环境下的瞬变干扰。
3.1 车辆参数采集节点的设计
车辆节点采集的参数包括车辆启动、停止的状态,空调的开关状态,电机与发动机的转速信息,从采集参数的特征来看,分为开关量和频率量。对于开关量的采集,无需额外的传感器,只需要将电压信号通过光电耦合直接输入微处理器的输入口即可检测;对于频率量的转速,我们选用了霍尔传感器进行测量。在输出轴上贴磁钢片,当磁钢片通过霍尔元件时,霍尔传感器输出脉冲,此脉冲通过光电隔离输入到80C196的高速输入口,由于高速输入口可以自动记录脉冲跳变的时刻,可以对脉冲进行精确测量,而且高低频率都适用。车辆采集节点的结构框图如图3所示。
3.2 电量节点的设计
对于电压电流等电参数来说,应用通常的A/D变换很容易测量;但是对于电能参数,由于是电压电流的时间积分值,应用普通方法测量起来难度很大。因此对于电量测量选用集成电量测量芯片CS5460A,该芯片可以同时测量电压、电流以及两者的功率和能量。CS5460A是带有串行SPI接口的单相双向功率/电能计量集成电路芯片,主要应用在单相电子式电能表和三相电子式电能表中。芯片完成一次校准后,将校准系数存到系统的EEPROM中,每次上电CPU从EEPROM中读出校准系数,并写入测量芯片中,然后通过SPI接口写入命令,即可进行相应电流电压和电能的测量。通过SPI接口,微处理器读出该芯片中的测量结果,更新EEPROM中的电能信息,并通过报文的方式发送到CAN总线上。
为了保证测量电路的工作可靠,测量电路在设计时通过光电隔离器件将CS5460A的SPI接口和微处理器的I/O口进行隔离,防止了相互的干扰。由于芯片SPI接口的数据线(SDI、SDO)和时钟线(SCLK)信号变化很快,选用高速光耦6N137隔离,其耦合速率可达10Mbps;而芯片的片选(CS)、复位(RESET)和中断(INT)输出信号属于电平信号,变换速率很低,用普通光耦TLP521-1即可实现。
3.3 电池参数采集节点设计
电动汽车动力电池是由40节12V铅酸蓄电池串联而成,每节电池的性能将影响整个电池组的性能。因此有必要对每一个电池的参数进行测量。包括每节电池的电压,电流以及测量传感器的状态。由于共有40节电池,用一个节点进行测量任务量太大,因此设计了4个节点对40节电池进行测量,每个节点负责10节电池参数的测量,电池参数只有电压和电流,可以通过简单的A/D变换得到,因此,电池节点的设计不再详细介绍。
4、基于PC104的监控节点的设计
由于整个网络测试的146项参数都要进行显示和记录,以微处理器为核心的单片机系统显然无法胜任如此繁重的任务需求。另外采用单片机开发必然会带来巨大的工作量。为了给用户提供友好的人机交互界面,减小开发工作量,监测节点选择了结构紧凑,软硬件功能和PC相近的嵌入式PC104模块进行开发。
PC104模块采用嵌入式CPU,选用256MB 袖珍Flash 盘作为系统硬盘,存储操作系统、应用程序和采集数据,选用夏普10.4英寸液晶显示屏作为人机交换的界面。
PC机与外设的接口方式灵活多样决定了CAN控制器和PC机的接口方式也是多种多样的,常用的方式有:RS-232串口、并行打印口、USB接口、ISA总线接口等。本系统中PC104通过双口RAM通讯获取智能接收节点的数据。所谓的智能接收节点,是指该节点配有微处理器,它通过双口RAM和PC104完成数据交换,将从总线上接收到的数据发送到PC104进行显示和记录,并将PC104要发送的数据发送到CAN总线上。由于加入了微处理器,极大地减轻了主机PC104的负担,提高了系统的实时性能。
图4 试验过程中电机电流变化图
4.1 基于信箱格式的双口RAM通讯
信箱结构是实现对于双口RAM内部存储区共享的一种逻辑结构。信箱式共享存储区具有两层含义:首先把各微处理器专用存储区与共享存储区划分开来,仅建立一块较小的共享区供通讯使用;其次对共享区作了细分,仿效邮政信箱格式建立了分格式逻辑结构。
智能节点的微处理器和PC104的ISA总线之间通过双口RAM IDT7132进行数据交换,在双口RAM中开辟了2块公共存储区作为通讯的2个公共信箱,一个用于微处理器向PC104传输数据,另一个用于PC104向微处理器传送数据。下面以微处理器向PC104通讯的公共信箱为例介绍基于信箱格式的通讯方式。
智能节点向PC104传送数据的公共信箱长度为16个字节,其中第一个字节为可读写标记,当任何一方需要操作读写数据时,先检查该字节,若为0AAH,则不能进行操作;若为55H,可以操作;第二个字节是读写次数,表示在PC104读出数据之前,智能节点写入新的数据的次数;第三个字节为该组数据的ID号,以区分不同的数据;第四个字节开始为真正的数据区,数据区的长度依据前面ID的不同会有差别;数据区之后是一个字节的垂直异或校验值(从读写次数开始的异或结果),可以据此对传输数据的正确性进行验证。
4.2 基于VC的显示记录软件设计
车载PC104节点基于Windows98操作系统完成了实时多任务的可视化程序设计,实现了对146项参数的数据接收、处理和显示。采用“非定长”数据压缩算法,对大量数据进行记录。由于采用高级语言Visual C6.0进行编程,给设计工作带来了很大方便,界面采用了传统仪表显示和动画显示的结合,搭建了友好的人机交换界面。
5、地面数据分析处理
地面数据分析处理软件采用VisualBasic6.0作为开发工具,界面图文并茂,操作简单直观。数据库采用SQL数据库对实验数据进行存储和操作。主要功能是将从PC104转储的实验数据解压后存储为数据库,同时描绘出各种参数随时间变化的曲线。图4为某次运行过程中记录的电机电流曲线图。
分析软件的功能主要包括:(1)转储实验数据,并对数据解压形成实验数据库;(2)对实验进行回放,再现实验过程中各参数的变化过程;(3)可任意进行局部缩放,能够仔细观察某时刻的参数值;(4)可对数据库进行查询和简单的统计,并可以打印查询和统计结果的报表;(5)通过分析处理软件,可以看出各个参数的变化趋势,为分析电动汽车的性能提供参考。
6、结语
电动汽车整车运行参数记录装置在完成研制后,在汕头国家电动汽车运行试验基地装车,经过多次软硬件调整后,系统运行稳定,各项参数测量准确,实时性好,记录无误,通讯工作正常,数据处理、分析正确,达到了预期效果,已经通过项目组的验收。