关键词:iCAN现场总线;超级电容监测
超级电容监测系统是电容电车的一项关键技术。超级电容监测系统可实时监测超级电容状态,如电压、充放电电流、使用温度等;预测超级电容内阻、容量,防止过充过放,从而达到提升超级电容使用性能和寿命,提高超级电容电车的可靠性和安全性的目的。
本设计以NXPARM为主体,构建超级电容监测系统的硬件平台,并在ARM内部嵌入式C/OS—lI实时操作系统,构成基于iCAN分布式超级电容监测系统,提高了系统的稳定性和实时响应能力,增强了系统的可扩展性和可移植性。
1 iCAN协议介绍
iCAN协议是广州致远电子有限公司自主研发的基于CAN—bus的应用层协议。它为工业控制领域提供了一种易于构建的CAN—bus网络,为工业现场设备(传感器、仪表等)与管理设备(工控机、PLC等)之间的连接提供了一种低成本的解决方案。iCAN协议详细的定义了CAN报文中ID以及数据的分配和应用,并定义了设备的l/O资源和访问规则。iCAN协议通讯层结构如图1所示。iCAN协议规范主要描述了以下的内容:
iCAN报文格式定义:规定了ICAN协议中使用的CAN帧类型、以及帧ID、报文数据的使用等;报文传输协议:规定了基于iCAN协议的设备之间的通讯方式;
设备的定义:设备标识、设备应用单元、设备通讯以及应用参数以及定义标准设备类型,区分网络上设备具有的不同功能或者产品类型;
网络管理:规定了设备通讯监控以及错误管理。
1.1iCAN协议网络拓扑结构
iCAN网络的拓扑结构符合CAN的高速标准[ISO99—2]规定,iCAN网络最多支持64个节点,节点与网络线缆之间用分支线连接。在实际应用时要求网络中的分支线尽可能短,在1Mbps速率下,分支线最长为0.3m,在速率较低的情况下,分
支线可以延长。iCAN网络最大的通讯距离与网络中的通讯速率相关,下面表格1为iCAN网络中位速率和最大总线长度之间的关系。
1-2iCAN网络设备的编址
在iCAN协议规范中,对于网络中的任何一个节点均有一个唯一的标识值MACID,用于区分网络中不同的设备。MACID的数值范围定义见下表2。
在iCAN网络中每一个节点均有特定的MACID,因此在ICAN网络中不同节点之间的数据交换是基于对节点的寻址实现的。在CAN网络中,通过报文的标识符进行信息的区分,因此可以通过报文的各种标示符分配来达到建立信息的连接目的。在网络中传输的CAN数据帧包含了目的地以及节点的源地址。因此,每个帧都是发往一个指定的节点或一组节点,网络中节点通过判断网络报文中的节点地址,决定是否对报文进行处理。此外iCAN协议还保留了特定的地址对一组节点或所有节点(广播)进行寻址并进行帧传输。而iCAN协议基于节点寻址的通讯方式是通过连接和确认的数据通讯的基础。
1.3iCAN是基于连接的通讯协议
基于iCAN协议的网络为主从式的网络。在iCAN网络中通常有一个主控设备,具有管理网络上其他的设备,并监控整个网络的功能。各从设备之间并不能够进行通讯。iCAN网络中设备之间的通讯是基于连接的,沟通主站设备和从站设备。在iCAN网络中,主控设备和从设备之间的通讯并不能够随机进行。主控设备和从设备之间必须首先建立一个通讯连接。建立连接后,主控设备才能够与从设备进行通讯。
2 硬件结构
2.1系统总结构
该系统(图2)用于检测超级电容器组内每个电容的工作电压,以及电容组的总电压、总电流,并通过符合SAEJ1939协议的CAN总线与整车仪表系统连接。系统由监控系统主节点(以下简称主节点)、电容检测子节点(以下简称子节点)、LCD诊断仪和CAN总线网络组成。系统由1个主节点和27个子节点组成。
每个子节点与主节点iCAN网络通讯,可检测18个电容的电压,检测电压范围0N5V,误差<10mY;每个子节点均有1路温度输入用于检测电池表面温度,范围0—100~C,误差<1~C;主节点具有SAEJ1939协议CAN总线接口;支持320x240单色液晶屏诊断仪,用于显示系统工作状态、输入报警门限参数;2路继电器于接点输出,可驱动2个风机;总电压测量接口,可外接NCV1—1O00V电压传感器测量(0-650V,+5V)直流电压;总电流测量接口,输入电流0~120mA,可外接NT300-S电流传感器测量(额定电流300~3A,最大测量范围±3O0A)直流电流;系统供电:DC24V/2A。
智能监控子节点以LPC2119为控制器,外围模块包括:温度测量模块、电压测量模块、节点地址选择,LPC2119内置CAN接口模块。电压测量模块将串连电容的各节电池端电压经模拟开关分别引入分压电路进行处理,再经电压跟随器进行阻抗变换后送入ADC的差分输入端,转换后的电压数字量输出经隔离后到单片机的Pl口。温度测量模块温度测量模块采用美国DALLAS公司推出的DS18S20系列单线数字温度计,只需要一根导线就可将单片机和DS18S20连接起来。为充分利用LPC2119的接口资源,均采用串行接口器件,这样就减小了电路体积,降低了电路的硬件成本。
主节点以LPC2368为控制器,LPC2368使用了一个高性能的32位ARM7内核,可以在高达72MHz的频率下操作。每个器件都含有高达512KB的片内Flash和58KB的片内SRAM存储器。包含1个10/100EthernetMAC接口、1个USB2.0全速(12Mbps)设备、2路CAN2.0B通道、1个通用DMA控制器、1个10位的A/D转换器和1个10位的D/A转换器。外围模块包括:总电压检测模块、总电流检测模块、输出继电器模块、电源隔离模块等。二路CAN接口模块LPC2368内置,实现iCAN、J1939通讯。本设计利用LPC2368的lAP功能,将配置参数保存在片内Flash中。
3软件设计
3.1开发软件
致远电子为用户提供专用的开发工程模板,简化了软件开发过程。工控模块中固化了文件系统、TCP/IP协议栈、USB协议栈、iCAN库、基础驱动库以及iC/OS—Il操作系统等,用户不需对IC/OS—ll内核进行配置,只能使用已设置好的配置信息。主要的软件开发工具为ADSv1.2,ARMADS全称为ARMDeveloperSuite。是ARM公司推出的新一代ARM集成开发工具。ADS由命令行开发工具,ARM时实库,GUI开发环境(CodeWarrior和AXD),实用程序和支持软件组成。有了这些部件,用户就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。该ADS软件自身带有AXD调试器软件,支持查看正在运行的可执行代码的变量和断点的控制等调试操作,方便的调试目标程序,提高程序开发效率。
3-2软件流程图
主节点:软件设计采用模块化编程,系统软件主要分为主程序、数据采集(电压、电流)处理程序、报警处理、J1939报文通讯、iCAN扫描通讯程序。主程序为系统控制程序,实现对系统进处理数据
行初始化(包括系统自检、读取本节点地址、电容电压种类)和各模块软件的总体调度。子节点:数据采集处理程序包括电压采集和温度采集。由于DS18S20的温度转换时间较长(750ms),所以每次采集先进行温度转换、电压采集,再进行温度的采集。温度转换和电压采集同步进行。每一轮采集后要将数据进行处理,判断是否超过限定值。iCAN通信程序负责将采集到的数据发图4子节点软件流程圈送到CAN控制器,再由CAN控制器负责将数据发送到CAN总线。主要的子程序有:CAN初始化、CAN发送、CAN接收、ADC子程序,DS18S20的复位、启动等。
4 硬件抗干扰措施
电容监测系统作为整车的一部分,经常受到各种电磁干扰。其实际的工作环境是比较恶劣的,有必要在硬件设计上采取一定的抗干扰措施。
1)抑制干扰源。电动汽车上电机设备中的IGBT和功率二极管工作时,会产生很强的电磁干扰,应加强屏蔽。
2)隔离供电。电容监测系统的设计中采用若干DC/DC变换模块,提供稳定的隔离电源,对不同子系统分别供电,可以有效地消除电源干扰和共地产生的干扰。
3)光电隔离。在电容监测系统的设计中,采用光电耦合器将外部通信接13(CAN通信、RS232通信)与内部CPU电路隔离开来,阻止电路性耦合产生的电磁干扰。
5 结束语
基于iCAN分布式电容监测系统智能化程度高、测量准确、能及时发现超级电容组存在的早期故障,已成功应于我公司超级电容公交车上。
参考文献:
[1]周立功.iCAN现场总线原理与应用[M].北京:北京航空航天大学出版社.2007
点击下载:基于iCAN协议分布式超级电容监测系统
编辑:陈东