一种基于TTCAN总线的电动汽车管理系统
2012-06-17张明江韩元凯张宗慧
张明江,袁 弘,韩元凯,张宗慧
(山东电力集团公司电力科学研究,山东 济南 250002)
0 引言
电动汽车因采用电力作为动力,能够有效降低二氧化碳的排放量,具有清洁、环保的优点,日渐受到人们的认可。同时,随着石油价格的不断上涨,电动汽车的成本优势也日渐明显,在人们的日常生活中的应用也越来越广泛[1]。目前,国内的电动汽车正处于示范运行和考核阶段,在该阶段需要完整的采集和存储电动汽车的运行参数,尤其是动力蓄电池的运行参数,对电动汽车的运行进行有效的监控,为全面考核和分析现有电动汽车的技术经济性和整车可靠性,进一步完善电动汽车的设计和运营管理提供支持[2]。电动汽车相比于传统的燃油车辆,其控制系统对实时性的要求更高,以实现对车辆驱动电机的实时控制,获取良好的可靠性和稳定性。汽车驾驶员也需要更多、更迅速的对电动汽车车辆运行中的各种信息进行实时监控,以满足电动汽车对安全性、环保、智能化要求。
在微处理器技术高速发展的今天,微处理器的性能越来越高,对实时性能的约束越来越小,而网络的实时性则成为进一步提高电动汽车中实时控制系统性能的障碍。目前CAN总线是车辆小型分布式网络互联的首选解决方案,CAN总线的突出优点是相对高的可靠性和低成本。但是,基于事件触发的CAN总线在事件触发报文发送时,采用固定优先级仲裁机制,导致报文发送时间不确定,不能够保证报文传输延时的时间确定性,难以满足电动汽车的实时性要求。基于时间触发的TTCAN(时间触发CAN)总线协议应运而生。它是在传统CAN总线协议的基础上的高层协议,专为汽车电机控制等高可靠性应用开发的[1-6]。
本文介绍了一种基于TTCAN总线的电动汽车监控系统实例。 该系统以车载终端和监控中心为核心,采用基于时间触发的TTCAN总线技术,集数据的采集、处理、通信、存储、控制于一体,具有良好的实时性和可靠性,实现了对电动汽车状态的实时监控,尤其是电动汽车的动力蓄电池的监控,提高车辆的可靠性和安全性,通过本地和远程两种方式对电动车辆进行交互监控,提供故障告警功能,记录监控人员的操作历史,方便维护人员定位车辆故障。
1 TTCAN总线
TTCAN协议在CAN协议基础之上,将事件触发机制与实时性更高的时间触发机制相结合,提高通信的实时性,满足对安全性要求苛刻的实时系统以及总线日益增长的信息负载的需求[3-5];同时,在CAN总线技术的基础上,为TTCAN总线技术研究奠定了很好的软硬件支持条件,降低了由CAN升级到TTCAN所需的成本[6]。TTCAN总线系统采用时间触发机制,根据时间主机确定的时间调度策略,确定TTCAN总线节点上的数据收发时间窗口,减少了总线上消息间的冲突,提高了总线带宽利用率,改善了总线数据传输的实时性和可靠性[3-4]。
同时,TTCAN采用类似于CAN总线中的短数据帧结构,每帧数据都采用循环冗余检验机制,受干扰的概率低。TTCAN总线符合ISO-11898-4标准,采用双绞线,具有结构简单、应用方便、价格低廉等特点,在现场总线中具有一定优势[3,5,6]。 应用TTCAN总线后的系统如图1所示。系统采用车载监控终端与监控中心的两种方式,对电动汽车进行监控,把实时性要求较高的信息处理和控制逻辑放在车载监控终端侧进行处理,监控中心主要用于电动汽车的集中管理和运营调度。
图1 基于TTCAN总线的监控系统架构
2 系统功能模块设计与实现
2.1 系统概述
如图1所示,系统由车载监控终端模块、数据采集控制模块和监控中心组成。车载监控终端与数据采集控制模块通过TTCAN总线连接,其网络拓扑结构为主从总线型。车载监控终端通过TTCAN总线与TTCAN总线上的节点进行通信,获取节点信息或者发送控制指令[7]。TTCAN总线上的节点即数据采集控制模块,各个数据采集模块之间通过TTCAN总线进行通信。
TTCAN总线的节点包括里程计、步进电机、仪表盘、动力蓄电池、计量电表或者传感器中的一种或多种。 各个节点负责电动汽车内多种传感器数据的采集,并对数据进行预处理,然后通过TTCAN总线上传到车载监控终端;或者接收并执行由车载监控终端发送来的控制指令,对车内的各个控制执行单元进行控制[8]。
车载监控终端与监控中心通过GPRS(General Packet Radio Service,即通用分组无线业务)网络进行通信,将电动汽车车辆的动态运行参数实时上传给监控中心。监控中心根据获取的电动汽车实时运行参数,对电动汽车的运行状态进行分析和评估后,下发相应的控制指令,对电动汽车进行控制。车载监控终端模块则根据获取的节点信息和监控指令,进行逻辑分析后作出控制决策,向TTCAN总线中的节点发送控制指令。这就构成如图1所示的电动汽车监控系统。
2.2 监控中心设计
监控中心采用B/S(Browser/Server)即浏览器/服务器架构。采用B/S架构主要考虑到本架构有成熟的开发模式和体系,开发较为简单。B/S架构相较于C/S(客户端/服务器)架构,在维护方面也更为简单,界面友好、统一,方便用户使用。该监控中心(图2)包含Web应用模块、逻辑处理模块、数据库访问控制模块和远程数据访问控制模块四个部分。其中Web应用模块是用户看到并进行人机交互的界面,逻辑处理模块处理业务逻辑和业务规则,数据访问控制模块用于数据库数据的访问控制[9]。远程数据访问控制模块,则通过GPRS网络与车载监控终端进行通信获取车载监控终端数据或者下发控制命令[10]。 远程数据访问控制模块通过数据库访问控制模块将获取的数据写入数据库中。
GPRS网络数据通信采用GPRS和SMS(Short Messaging Service,即短消息服务)两种方式来保证数据传输的稳定性和可靠性。在GPRS网络状态良好的情况下,优先通过GPRS通信方式将电动汽车所在位置、速度、车号、电池荷电状态(SOC)等信息传输到控制中心并接收来自控制中心的指令。当GPRS网络出现网络拥塞,GPRS未覆盖或者中心工作人员误操作导致与GPRS网络连接断开时,会立刻切换到SMS方式,直至GPRS网络可以重新连接上。
图2 监控中心Web系统架构
2.3 数据采集控制模块设计
图3 数据采集模块结构
数据采集控制模块的结构如图3所示,包括微处理器、TTCAN总线控制器和TTCAN总线接口三部分,其中TTCAN总线接口外接到TTCAN总线上,TTCAN总线控制器对总线数据的收发进行控制。其中微处理器至少应包括ROM存储器、RAM存储器、DA转换器、AD转换器以及一定数量的I/O接口。其中DA转换器和AD转换器相结合完成模拟量的输入输出功能,I/O接口用于外接传感器和控制电路。传感器包括温度传感器、电压传感器、电流传感器、车速传感器等其他用于电动汽车状态信息采集的传感器[11]。
2.4 车载监控终端设计
2.4.1 硬件设计
车载监控终端是电动汽车监控系统的关键模块,如图4所示,包括主控板、供电模块、TTCAN总线控制器、GPRS模块、音频/视频设备、GPS定位接收器、显示器、键盘、指示灯等。主控板是整个设备的核心部分,采用支持ARMV5TE体系结构的ARM946E-S作为嵌入式处理器,具有极高的处理速度,可以扩展为4核,支持多种主流嵌入式操作系统,具有很好的兼容性。此外,ARM946E-S支持与串行外设通信,兼容多媒体处理模块,对音频和视频数据的具有较好的支持,具有异步接收/发送器(USART),方便GPS接收器的数据读取和与GPRS模块的数据通信,具有JTAG接口和以太网接口,便于系统调试和内核升级。最为重要的是ARM946E-S对实时操作系统具有良好的支持,可以满足车载监控终端的实时性要求。
为满足车载终端控制的实时性要求,车载监控终端采用开源的RT-Linux操作系统作为车载监控终端的系统平台,对系统资源进行管理和调度。供电模块使用车载电源(12 V或者24 V蓄电池)作为输入电源,为车载监控终端中的各个电压等级的芯片提供电源。TTCAN总线控制器通过SPI(串行设备外围接口)与主控板相连,外接到TTCAN总线上,与TTCAN总线上的节点进行数据的交互。GPS选用的型号是GPS3110,该模块价格低廉,模块功率较小,通过RS232串口与主控板相连,进行数据通信。车载监控终端中的GPRS模块选用的型号是ZSD3100,该型无线通信模块支持GPRS和CDMA两种移动通信方式,具有较好的灵活性,并且价格不高。GPRS模块通过RS232串口与主控板相连,进行通信。数据存储模块选用Mini-SD卡作为存储介质,通过SDIO(安全数字输入输出接口)或者USB(通用串行总线)接口与主控板相连,用于数据的存储。
图4 车载监控终端系统结构图
2.4.2 软件设计
根据车载监控终端(图5)的特点,该车载监控终端包括人机交互模块、无线通信模块、数据存储模块、TTCAN通信模块、BMS(电池管理系统)模块、车载导航模块、历史记录模块、账户管理模块、故障告警模块等功能模块。
人机交互模块用于展示各功能模块的输出信息,并提供对电动汽车的控制功能。无线通信模块用于通过GPRS网络与监控中心的数据通信。TTCAN通信模块是通过TTCAN总线控制器采集TTCAN总线上的节点信息或者下发控制命令。BMS模块则通过TTCAN通信模块与动力蓄电池的监控装置进行交互,对动力蓄电池的运行进行监控,使得各个电池发挥出最优性能,使电机能够输出目标功率。车载导航模块从GPS设备接受GPS卫星定位信息,解析定位信息,并更新电子地图上的车辆位置。电动汽车所在位置、速度、电池运行状态等信息通过GPRS网络上送给监控中心,以便监控中心能够监控车辆的运行状态。
历史记录模块记录车载终端用户的操作记录,包括系统配置操作和控制操作等。 账户管理模块则对车载监控终端的用户的角色进行管理,分为两类:一类是管理员,一类是普通用户。 故障告警模块监测电动汽车的状态,当电动汽车出现故障时,发出故障报警提示。故障报警信息通过无线通信模块上传到作为远程服务端的监控中心。 使得司机和监控人员可以同步获取故障报警信息,以便及时排除故障,也便于监控人员及时对车辆进行调度。
数据存储模块采用了SQLite数据库,该数据库是一款轻型的数据库,占用资源非常低,能够支持Linux/Unix操作系统,并且是一款开源数据库,对嵌入式设备有良好的支持。 在车载监控终端中包含地理信息数据库、电动汽车状态数据库、系统数据库,日志数据库。 其中,地理信息数据库存储了地图数据和地理信息数据,用于车载导航功能;电动汽车状态数据库用于存储电动汽车的运行状态参数;系统数据库保存用户账户等一些系统信息,日志数据库则记录了车载监控终端的日志、操作历史记录和故障告警记录等。
图5 车载监控终端功能框图
3 结语
基于TTCAN总线的分布式数据采集与控制系统采用数据采集—车载监控终端—监控中心的三级模式,对电动汽车的运营进行监控。信息处理在现场进行,监控中心集中管理电动汽车运营的模式,使得技术人员可以全面考核和分析现有电动汽车的技术经济性和整车可靠性,进一步完善电动汽车的设计和运营组织。 采用TTCAN总线技术,提高了系统的可靠性和实时性,降低了车载监控终端控制系统因实时性不足而出现的安全隐患。车载监控终端采用开源的SQLite数据库,使得系统的设计更为简洁,降低了系统开发成本。从该设计方案在现场恶劣环境下的运行情况来看,它能够经受住现场的考验,出错率低,系统稳定可靠,较好的实现了对电动汽车运营的监控。