一种分布式电池管理系统的设计和实现
扫描二维码
随时随地手机看文章
蓄电池技术是下一代汽车--电动汽车的核心技术之一。蓄电池是复杂的电化学系统,国内外对电池管理技术都进行了大量的研究,取得了许多成果。一般认为电池管理系统主要有如下功能:电池状态参数采集(包括温度、电压、电流等);电池荷电状态(State of charge,SOC)的准确估计;不健康电池的早期诊断;对电池组安全运行全面监控,如防止电池的过充电和过放电等等。由于电动汽车蓄电池组通常是由几十个(上百个)单体电池组成,所以,每一个单体电池的工作状态正常与否不仅反映电池组性能的好坏,而且影响电池组的容量及剩余能量。实践表明,在电动汽车运行过程中,如不及时检测,找出老化电池给予调整,电池组的容量将变小,寿命将缩短,影响整个电池组的高效安全运行。电池工作状态的检测由电池管理系统(Battery Management System,BMS)完成,而电池管理系统的其他功能(包括剩余能量的计算)都是建立在电池工作状态检测的基础之上的。
分布式结构的管理系统
1系统结构
系统要实现不同类型的多种功能,集中的或中央处理方式无法满足安全性要求,自然要采用分布式结构;系统的工作环境恶劣,常处于强电磁干扰及脉冲电流的干扰下,为了确保可靠性,考虑采用和发展了高性能CAN现场总线作为通讯系统;而且CAN总线在汽车上已使用很久,具有很强的抗干扰性,同时该技术比较成熟,已成为汽车使用通讯的标准。因此,在系统的内部通讯以及跟外部通讯都采用CAN总线来实现。
本分布系统是以CPU80C552为公用模块平台来设计的,由于CPU存储空间及运算的有限性,必须采用多CPU来分别实现管理系统所需的各种功能。完成的基本系统由四个模块并行组成:数据采集、均衡充电、电量估计及通讯显示;各个模块分别实现其功能,通过CAN总线进行数据通讯,能够实现单电池电压、总电压、充放电电流、温度的采集和测量,电量估算。同时,系统还具有很强的扩展性,可以进行具体的电池诊断和电池安全性能保护等功能的研究和开发。在锂电池的管理系统中,108只电池采用9块测量主板,再加上4块基本板,共计13块板。
图1电池管理系总体结构图
2管理系统主模块的设计
系统的主要功能包括数据采集、电量估计及显示诊断等。由于80C552具有8路10位A/D转换的功能,因此,采集模块先采用线性光耦法测量单电池的电压,通过其4个A/D口将模拟量转换为数字量存入存储器,温度测量采用单总线技术,使用Dallas数字芯片来测量温度,该芯片具有12位的精度等级,能非常准确地测量到系统的温度。总电压、电流信号通过特殊的传感器将其信号转换为0~10V的信号,通过14位的A/D转换器件转换为数字量存入系统。
通讯及显示模块提供了双CAN通讯接口,能够与系统内各个模块及外部整车系统通过CAN进行数据传输;同时系统提供RS232接口,能够实现与PC机通讯;模块还提供5口寸半液晶显示驱动功能,和按键进行人机友好操作;模块还设有电压、电量、电流及温度的上下限报警及自检功能,保证系统的安全性。
各个系统模块的基本结构框图如图2所示。
图2模块结构框图
3电量估算
电量估算采用实时电流积分的安时法进行基本估算,然后通过对影响电池电量的温度、自放电及老化等各种参数进行修正,并考虑单块电池间的不一致性,从而得到精确的电池组电量。
图3电池电量估算框图
CAN总线系统
1CAN简介
CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由研发和生产汽车电子产品着称的德国BOSCH公司开发了的,并最终成为国际标准(ISO118?8)。是国际上应用最广泛的现场总线之一。 在北美和西欧,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,并且拥有以CAN为底层协议专为大型货车和重工机械车辆设计的J1939协议。近年来,其所具有的高可靠性和良好的错误检测能力受到重视,被广泛应用于汽车计算机控制系统和环境温度恶劣、电磁辐射强和振动大的工业环境。
CAN总线特点
CAN总线是德国BOSCH公司从80年代初为解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,它是一种多主总线,通信介质可以是双绞线、同轴电缆或光导纤维。通信速率可达1MBPS.
完成对通信数据的成帧处理
CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。
使网络内的节点个数在理论上不受限制
CAN协议的一个最大特点是废除了传统的站地址编码,而代之以对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制,数据块的标识码可由11位或29位二进制数组成,因此可以定义2或2个不同的数据块,这种按数据块编码的方式,还可使不同的节点同时接收到相同的数据,这一点在分布式控制系统中非常有用。数据段长度最多为8个字节,可满足通常工业领域中控制命令、工作状态及测试数据的一般要求。同时,8个字节不会占用总线时间过长,从而保证了通信的实时性。CAN协议采用CRC检验并可提供相应的错误处理功能,保证了数据通信的可靠性。CAN卓越的特性、极高的可靠性和独特的设计,特别适合工业过程监控设备的互连,因此,越来越受到工业界的重视,并已公认为最有前途的现场总线之一。
可在各节点之间实现自由通信
CAN总线采用了多主竞争式总线结构,具有多主站运行和分散仲裁的串行总线以及广播通信的特点。CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因此可在各节点之间实现自由通信。CAN总线协议已被国际标准化组织认证,技术比较成熟,控制的芯片已经商品化,性价比高,特别适用于分布式测控系统之间的数通讯。CAN总线插卡可以任意插在PC AT XT兼容机上,方便地构成分布式监控系统。
结构简单
只有2根线与外部相连,并且内部集成了错误探测和管理模块。
2CAN总线设计
CAN总线总体结构如图4所示,在总线的两端配置了两个120Ω的电阻,其作用是总线匹配阻抗,可以增加总线传输的稳定性和抗干扰能力,减少数据传输中的出错率。CAN总线节点结构一般分为两类:一类采用CAN适配卡与PC机相连,实现上位机与CAN总线的通讯;另一类则是由单片机、CAN控制器及CAN驱动器构成,作为一类节点与CAN总线进行数据传输。在本系统中,CAN控制器采用Philips公司生产的SJA1000和82C200,它作为一个发送、接受缓冲器,实现主控制器和总线之间的数据传输;CAN收发器采用PCA82C250芯片,它是CAN控制器和物理总线的接口,主要可以提供对总线的差动发送能力和对CAN控制器的差动接受能力。[!--empirenews.page--]
图4CAN总线系统结构图
CAN总线的软件设计
CAN总线的三层结构模型为:物理层、数据链路层和应用层。其中物理层和数据链路层的功能由SJA1000完成,系统的开发主要在应用层软件的设计上,它主要由三个子程序:初始化子程序、发送数据和接收数据程序。同时,还包括一些数据溢出中断以及帧出错的处理。
SJA1000在上电硬件复位之后,必须对其进行软件初始化之后才可以进行数据通讯,初始化过程主要包括对其复位模式下配置时钟分频寄存器CDR、总线定时寄存器BTR0和BTR1、验收代码寄存器ACR、验收屏蔽寄存器AMR及输出控制寄存器OCR等,实现对总线的速率、验收屏蔽码、输出引脚驱动方式、总线模式及时钟分频进行定义。具体的流程如图5所示。下面为SJA1000发送和接收数据的流程,基本过程为主控制器将数据保存到SJA1000发送缓冲器,然后对命令寄存器的发送请求TR标志位进行置位开始发送;接收过程为SJA1000将从总线上接收到的数据存入接收缓冲器,通过其中断标志位通知主控制器来处理接收到的信息,接收完毕之后清空缓冲器,等待下次接收,具体的流程如图6和图7所示。
图5CAN总线初始化
图6CAN的发送数据流程
图7CAN接收数据的流程
例如:电池管理系统向整车系统发送总电压的格式,见表1所列。
表1BCU_VCU_VOLTAGE(0x08)向VCU送回电池组当前的电压
其中,ID为接收节点总线的地址,电压值先乘10取整再发送,0x08表示发送帧的内容为电池组的电压。
CAN总线应用问题
在硬件方面必须考虑合理的供电,注意对各个CAN器件的电源、地之间的滤波,以及复位电路的设计;同时在实际进行印刷电路板的设计时,合理布线,要加强地线,增强系统的抗干扰性。
在软件设计时,CAN总线定时器的设置非常关键,BTR0决定传播时间段、相位缓冲段1和相位缓冲段2;BTR1决定同步跳转宽度和分频值。在位定时寄存器中,TSEG1,TSEG2,SJW和BRP设定的值要比其功能值小1,因此设定范围是[0……N-1]而不是[1……N].所以位时间可以由[TSEG1+TSEG2+3]tq或者[同步段+传播段+相位缓冲段1+相位缓冲段2]tq得到,其中,tq由系统时钟tSCL和波特率预分频值BRP决定:tq=BRP/tSCL.
同时,还要注意由于不同节点的CAN系统时钟是由不同振荡器提供的,每个节点的实际CAN系统时钟频率与实际位时有一容差,环境温度的变化和振荡器老化影响起始容差,为确保准确地进行数据传输,必须保证每个节点对CAN系统时钟频率都在特定的频率容差限值以内,因此,在选择振荡器时要以对振荡器容差范围要求最高的节点为准。而且,在一个可以扩展的总线结构中,最大节点延迟和总线最大长度必须考虑,一般情况下,延迟为5.5ns/m.
在实际运行中,经常会遇到CAN总线不通或者总线突然关闭现象,其主要原因是由于在数据传输过程中出现丢帧现象,从而引起出错,当错误计数器达到一定时会自动关闭总线,因此,必须在软件设计的过程中,及时对其错误状态ES位进行判别,在出现错误时需对SJA1000进行软件复位,恢复通讯。
在"863重大专项"电动汽车的电池管理模块的研制中,就是采用CAN总线通讯的分布式结构。通过对镍氢电池组、锂电池组的台架试验结果表明了系统结构的先进性,实现了各模块的独自功能,工作正常可靠,锂电池组系统的CAN总线的节点数增加到12,在强电磁干扰下,仍能正常工作,而且线路连接十分简单、实用。
两种电池组的参数、测量方法、电池个数、安全要求都不相同,分组也不一样,但系统均能有效地适应,反映出其具有良好的适应性和较大的灵活性。