基于DELPHI的镍氢电池管理系统软件设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于 DELPHI 的镍氢电池管理系统软件设计 摘要通过对镍氢电池性能的研究,给出了一个应用总线技术构建的、 基于编程平台的镍氢电池管理系统的设计方案,重点介绍了该系统的软件 技术和实现方法。

关键词;充放电;软件;模块;1前言镍氢电池是目前大容量电池的 主要品种,已在通讯、交通、电力等部门得到广泛的应用,同时它也是其 它智能仪表中最为常用的备用电池。

但在实际使用中,由于充放电控制不合理而损坏的电池占大多数。

实际上,若镍氢电池充放电适当,通常可以工作10年时间。

为此,笔者研制了镍氢电池自动充放电控制系统。

该系统由恒流源充电器和恒流源放电器对电池进行充放电 流、电压、温度控制是该电池控制系统的重要部分。

为此,该系统在总体考虑电流、电压、温度控制系统的基础上,选用 微机控制系统对电压、电流、温度进行控制及模拟曲线处理,用得出的数 据库对数据进行研究,并对电池性能及SOC进行预测。

应用软件可在Windows平台上用面向对象的DELPHI6 编程软件编写 2 这对整个系统控制软件的可靠性、易编制性大有益处。

因此电


DELPHI软件介绍采用PC机作为上位机对采集的数据进行分 析处理,是实现这种小型系统实时数据采集和分析的有效方法。

Borland公司的Delphi是当今最优秀的Window s开发工具之一,它的可视化开发环境和面向对象的快速应用程序开发工 具RAD,可使程序开发人员在Windows平台上快速开发出32位 的应用程序。

由于它采用面向对象的编程语言,能嵌入汇编和实现多线程操作,且 开发数据库功能强大,因而是控制工程师极好的编程工具。

3 系统硬件设计范文先生网收集整理本文所设计的电池控制系统的硬 件主要由工控机、PCL711BI/O接口板、光电隔离及采集板、恒 流源充电器和恒流源放电器构成,其整体框图如图1所示,其各部分的硬 件原理在此不再详述。

4 系统软件设计图2所示是该系统的软件模块图。

其中程序初始化包括关闭所有继电器选择开关充放电选择继电器,充 放电使能继电器、接收数据模块的图象处理初始化、数据库初始化、充放 电条件的选择包括充电电池容量选择、充放电切换选择以及是否按预定曲 线充放电等,同样,程序退出也需实现一系列清零操作。

4.1数据发送模块数据发送模块用于完成电流信号的产生、调制以 及通过对PCL711-B卡的编程操作来实现数据的发送和电流信号 的形成。




由于充放电电流一般较大,考虑到安全问题,操作应严格按照操作规 程来处理,本软件模拟了各项操作工序,并配以图文指示。

为了灵活地充放电,系统分为手动和自动充放电两种方式,如对电池 有一定的了解,可以选择手动充电并通过一定的试验了解电池的性能,然 后向数据库中或者预存曲线库中添加想要的充放电形式,从而实现充放电 的智能控制。

若选择自动充电,可以选择不同情况下的充放电形式。

电池充放电与许多因素有关,如夏天和冬天的情况不同,不同温度下 充放电的要求也不一样,不同循环次数的电池充放电表现出来的SOC值 也不一样,本系统在设计充放电预定库时都有基于此方面的考虑。

一般电池充放电有2种主要形式恒压充电和恒流充电,本系统选择的 是恒流充电恒流源自制,电路原理图可向作者索取,并通过软件和硬件相 结合的方式实现电流的智能充电。

电池充放电就充电来说主要表现为三个阶段电池恢复阶段、大电流充 电阶段、涓流补充充电阶段。

刚开始充电由于电池内阻较大,故需要用小电流充电以恢复电池,充 电电流不宜高于0.3C,大电流充电阶段控制到0.5C-2C之间, 待到电池电压上升到预定充电电压时预定额度时,可以改为小电流补充充 电方式,从而使其能量SOC 90%以上。

而当基于DELP HI设计软件时,要综合考虑以上要素,然后在预定曲线图和数据库 Stateofcharge 达到满额


中给出理想的充放电方案。

利用DELPHI软件实现D/A卡的定时发送时,可通过系统的中 断来实现。

4.2数据采集模块镍氢电池充放电系统一般需要采集4种数据充放 电电压、充放电电流、电池温度、充放电器温度。

为了保证采样的准确性,可采用三次采样取平均值的算法来实现采样。

利用DLL提供的功能函数,再配以DELPHI软件,就能很容易 地通过PCL911-B采集卡实现对设定通道内数据的采集。

下面是其简单的例程 {打开设备}ErrCde=DRV _Devic eOpendwDeviceNum ,De-viceHandle ;{设置 采集通道,采集开始}AiVolIn1.chan=ptAIConfi g1.DasChan;AiVolIn1.gain=ptAIConf ig1.DasGain;AiVolIn1.TrigMode CtrMode1;AiVolIn1. voltage =Ai
=@Volta
ge1;................ErrCde1=DRV _A IVoltageInDeviceHandle _ AiVolIn 1;................ErrCde=ErrCde1* ErrCde2*ErrCde3*Er -rCde7*ErrCde8 *ErrCde9;{获取采集卡的数据}Edit1.Text=Floa tToStrFVoltage1/5, ffFixed 6 ,4;{采集结
束,保存、退出}lpDioWritePort.port=lpDio PortMode.port;lpDioWritePort.mask


=255;lpDioWritePort.state=0 ;ErrCd e=DRV_DioWritePortByteDeviceHand le,lpDioWritePort ;4.3数据处理模块通过数据处理 模块可以完成信号的存贮、显示、分析以及信号的调节、系统报警及紧急 停止等功能。

信号的保存分为图象和数据库的保存,这些都可以利用DELPHI 的SaveDialog对话框以及Pic-ture. SaveToFi le事件来实现。

数据的显示可以利用DELPHI的Tcanv as对象,也可以用简单的绘图语句在图象框等控件中实时地复现出 数据波形,还可以通过Teechart统计图表对采集数据进行波形复 现和简单的分析。

若要对其采集数据线性度以及信号的频率、幅度、变化率做进一步的 分析,可以调用MATLAB进行高级处理。

有关数据库的操作可以围绕Table或者Query控件来完成, 并通过ODBC数据源以及DELPHI的BDE数据管理器来进行连 接。

但Query控件需调用SQL语言来从事设计。

信号的分析主要包括通过采集的电流、电压、以及温度、循环次数来 研究电池的能量-SOCStateofcharge , 电池荷电状态可 反映电池的剩余容量。

其数值上定义为电池剩余容量占电池容量的比值。




SOC建模的正确与否关系到电池的工作效率、电池的寿命、电池所 能释放的能量和继续充放电的时间,所以SOC建模是电池管理系统的重 要一环。

因篇幅有限,这里不作介绍。

本系统还可利用经典的PID调节方式,并通过DELPHI软件来 保证输出的线性度和稳定性。

由于充放电需要恒流源,并且充放电时间都较长,故可采用常见的P ID调节可消除偏差方法来满足系统要求。

5 结束语利用DELPHI软件进行基于ISA总线的检测系统开发, 可以与各类数据采集卡、数模转换卡进行无缝集成。

实际使用证明该系统稳定可靠, 功能强大, 可实现电池的自动化监控, 并能够得出有价值的信息。

目前,该系统已成功应用于某新型汽车研发平台。











相关文档
最新文档