1、 导言
阀控式铅酸蓄电池(VRLA)在实践使用中会呈现电池壳变形、电解液渗漏、容量缺乏、电池端电压不均匀等现象,实践证明,整组电池的容量是以情况最差的那块电池的容量值为准,而不是以平均值或额外值(初始值)为准,当电池的实践容量下降到其自身额外容量的90% 以下时,电池便进入阑珊期,当电池容量下降到本来的80%以下时,电池便进入急剧的阑珊情况,阑珊期很短,此刻电池组已存在极大的事故隐患,所以对VRLA蓄电池的守时检测和在线监测是非常重要和有必要的。
2、 硬件电路规划
VRLA蓄电池在线监测体系主要功用是对直流电源VRLA蓄电池组中每一个VRLA蓄电池的端电压进行巡检,其作业方式分为实时监测和守时监测两类,守时监测的时刻距离由用户依据实践需求设定,用户可随时切换实时与守时监测两种作业形式,经过监视器显现电压、温度、内阻曲线完结对单个及全体VRLA蓄电池的监控操作。可完结图表打印,图形保存,曲线显现,历史数据回放多种办理功用,并缺省设置越限报警电压及温度规模限,如有异常情况当即宣布报警信号。
2.1 测验体系硬件结构
图1 整机体系框图
本例FPGA开发体系采
用Xilinx FPGA操控模块Spartan-II(XC2S200)、差动式多路模仿开关(包含模仿开关CD4051及光耦合器TLP181)、A/D转化AD0809芯片、Philips公司PDIUSBD12通用串行接口芯片、Winbond公司W29C020C并口Flash存储器及SRAM W24257、2×4键盘阵列、越限报警器材等构成。抱负的VRLA蓄电池测验体系,经过实时监测VRLA蓄电池组内单节VRLA蓄电池的电压,内阻和温度能够有用的辨认单节VRLA蓄电池的功用差异和安全临界点,有用操控单节VRLA蓄电池的过充,过放和热失控,完结均衡放电和均衡充电的抱负功用;一起精确计算出单个VRLA蓄电池电量,依据充放电曲线,树立最佳充放电办法,并与操控器智能化合作,承认VRLA蓄电池负载特性参数挑选,延伸VRLA蓄电池使用寿命。
2.2 差动式多路模仿开关规划
数据收集电路规划选用差动式多路模仿开关能够防止惯例双刀式继电器模仿开关对大型VRLA蓄电池组丈量时需求的继电器太多,仪器的体积过大,功耗、本钱及故障率高级很多缺陷,如图示差动式模仿开关作业电源由所测VRLA蓄电池组供给,并选用光耦合器阻隔采样开关与低压体系,以处理VRLA蓄电池组的电池数目多,电压高,难以丈量等问题。差动式模仿开关作业进程为:FPGA操控器经过操控端CA,CB来一起操控U1,U2八选一模仿开关,假如操控端一起选中输入端B1,则模仿开关U1输出端OUT1输出VRLA蓄电池B1的正端电压,而模仿开关U2的输出端OUT2输出则是B1的负端电压,假如将OUT2接到丈量体系的地电平,OUT1接到丈量体系信号输入端,则便可测得VRLA蓄电池B1的各项数据值。同理,只需操控CA,CB就可完结对B1~B4各个单体电池数据的量测,继而得出整组电池的各项参数数据。
图2 差动式模仿开关电路原理图
3、 软件规划
体系软件选用模块化规划,底层固件程序由VHDL言语编程的若干子程序块组成,包含主 操控程序,数据收集子程序,超限判别及报警子程序,USB端点通讯子程序,中止处理子程序;上位机应用程序在Visual Basic环境下开发,可完结图表打印,图形保存,曲线显现,历史数据回放等办理功用。
3.1 主操控程序
用于完结FPGA及外部模块的上电自检和初始化,初始化flash存储器,SRAM作业区,A/D转化器及差动模仿采样通道设置、USB端口及周边接口的上电复位。初始化将对初始状况给予设定,包含守时器、中止器的敞开等。其间外部中止用于呼应键盘信号及USB口中止呼应与上位机通讯等操作。
3.2 USB操控端点中止服务程序流程图
USB操控端点中止服务程序功用是在USB通讯口宣布中止呼应后把当时选定的单节蓄电池的电压、温度等数据存入相应数据区,为体系显现、报警、通讯等功用供给原始数据,之后依据用户设置的蓄电池组数、每组蓄电池节数及设定电压、温度值,将原始数据作相应批改即可在上位机应用程序处显现每组蓄电池的单节电池电压及全体蓄电池的电压、温度、内阻曲线。
图3 USB操控端点中止服务程序流程图
3.3 USB操控端点通讯树立初始化程序
参阅Philips公司PDIUSBD12数据手册,PDIUSBD12的指令字分为三种:初始化指令字、数据流指令字和通用指令字,FPGA先给PDIUSBD12的指令地址发指令,依据不同指令的要求再发送或读出不同的数据。因而,能够将每种指令做成函数,用函数完结各个指令,今后直接调用相关函数即可。FPGA内部USB操控端点与PDIUSBD12通讯初始化程序清单:
constant D12_CONNECT_data: REG8x8:= //装备指令和数据
( D12_COMMAND_SET_DMA, //设置DMA指令
D12_DMA,&nbs p; //发送指令数据
D12_COMMAND_SET_MODE, //发送设置形式指令
D12_MODE_CONFIG, //发送形式设置
D12_MODE_CLOCK_DIV, //发送分频率形式
others => X"00" );
constant D12_CONNECT_DATA_TYPE: REG8x1:= //指令、数据履行次序
( D12_COMMAND,
D12_DATA, //发送数据
D12_COMMAND,
D12_DATA, //发送数据
others => 0 );
constant D12_CONNECT_DATA_LENGTH: INTEGER8 := 5; //装备参数总长度
constant D12_EP0_ACK_data: REG8x8:= //装备0断点指令
( D12_COMMAND_SEL_EP0_OUT,&nb
sp; //发送0断点挑选
D12_COMMAND_ACK_SETUP, //承认树立
D12_COMMAND_CLEAR_EP_BUFFER, //清寄存器
D12_COMMAND_SEL_EP0_IN, //接纳0断点挑选
D12_COMMAND_ACK_SETUP, //承认树立
others => X"00" );
constant D12_EP0_ACK_DATA_LENGTH: INTEGER8 := 5; //装备0断点总长度
constant ep0_ack_data: REG8x8 := D12_EP0_ACK_DATA; //发送0断点数据
4、 结语
根据FPGA的VRLA蓄电池测验体系充分利用固件编程调试灵敏,开发本钱低,片上资源丰富等优势,能便利的完结多组输入模仿量的扩展。可完结对单体电压0~15V、整组电压0~500V,电压丈量精度:±0.5%;温度丈量规模:-20℃~+80℃;内阻测验规模:0~99mΩ等高精度的参数丈量。