• 休闲生活
  • 教育教学
  • 经济贸易
  • 政法军事
  • 人文社科
  • 农林牧渔
  • 信息科技
  • 建筑房产
  • 环境安全
  • 当前位置: 达达文档网 > 达达文库 > 建筑房产 > 正文

    UPS蓄电池监控系统嵌入SQLite数据库技术研究

    时间:2021-04-08 07:53:14 来源:达达文档网 本文已影响 达达文档网手机站

    [提要] 本文针对UPS蓄电池监控系统中存在的数据管理问题,提出一种在UPS蓄电池监控系统嵌入SQLite数据库管理系统的设计方案,并详细介绍方案开发平台、系统架构、工作原理及实现方法,最后以实验结果数据进行分析验证,说明方案可行和有效性。

    关键词:UPS蓄电池;在线监控系统;SQLite数据库

    中图分类号:TP311 文献标识码:A

    收录时间:2014年5月12日

    一、引言

    随着信息化社会的发展,能够提供持续、稳定、不间断的电源供应的UPS已广泛地应用于各个业务环节,UPS可以在市电突然中断时还能持续一定时间给各设备供电,使用户不致因停电而影响工作或丢失数据,其重要性随着信息应用重要性的日益提高而更加突显出来。

    作为UPS系统重要组成部分的单体蓄电池组,其性能决定了UPS性能,要了解电池性能状况需实时跟踪蓄电池的变化特性,蓄电池监控设备是用来通过采集并分析电池特性数据,实现对电池进行有效的管理,其中电池特性数据的管理方式是决定系统性能的重要因素。传统的UPS蓄电池在线监控设备中对采集的数据沿用的是早期数据管理,直接将数据存放在文件系统。由于简单的文件系统存在一些缺点,比如数据与程序独立性差;数据共享性差,冗余大;产品后续功能扩展差等问题导致系统性能低下。因此,蓄电池监控系统的数据管理水平的提高是系统设计的一个重要目标。

    基于此,本文提出一种有效解决方案:在蓄电池监控系统主机中嵌入SQLite数据库管理系统,主机实时采集的蓄电池各项特性参数管理工作交于SQLite数据库完成,程序和数据间相互独立,数据库管理系统提供应用程序和数据间的接口管理。本文第2节对相关知识进行介绍;第3节介绍设计方案的开发平台,系统架构及实现方法;第4节给出方案结果验证;第5节对方案进行总结。

    二、相关知识

    SQLite是一种开放源码的超轻量级嵌入式数据库引擎,SQLite很小巧编译后的SQLite3.0的动态链接库只占用几百K的空间,管理的数据量可达2TB,提供B-Tree存储数据模式,数据以ASCII码形式存储,支持SQL快速查询,具有小、快、稳定、免费特点。

    SQLite支持跨平台,操作简单,提供Windows/Linux/Unix等各种操作系统接口,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等。同Mysql、PostgreSQL世界著名的开源数据库管理系统相比,它的处理速度甚至比他们还快。

    三、方案设计

    (一)方案平台。产品硬件开发平台使用了内核为32位工业级品质的CPU ARM9系列AT91SAM9260,200MHZ主频,32MB系统内存,32MB FLASH存储器。基于这个硬件平台预装了微软的Windows CE5.0操作系统,Windows CE操作系统是当前市场上最流行的实时多任务操作系统之一,微软针对CE的应用开发提供了相应的SDK开发包,包括各种接口驱动程序API,以及推出一系列完善的开发工具,用户可在此基础上方便、快速的开发出各种工控产品。

    (二)蓄电池在线监控系统架构。系统由在线监测主机、单体电池传感器模块(以下简称传感器模块)、信号转接器组成。蓄电池在线监控系统原理示意图如图1所示,其中传感器模块是一种电子数字传感器,直接连接到单体电池组上,用于测量连接的单体电池组电压,温度及阻抗。模块之间通过标准通信线与在线监测主机以RS485或RS232通信方式进行数据交换。监控主机端通过液晶显示屏来监测参数和设定报警阀值及通信参数。同时主机通过TCP/IP网络或者RS485接口,将采集的数据和告警事件信息实时上传给后台管理系统。(图1)

    (三)软件设计流程。系统整个实现流程为:在线监测主机通过RS485或RS232端口定期向传感器模块发送测量单节电池的电压、电流、内阻和温度等电池参数的命令,然后等待接收传感器发回采集的特性数据,这些接收的特性数据一方面用于刷新监控主机的实时数据界面;另一方面被交给SQLite数据库管理系统,保存到嵌入在本机设备中的数据库,系统组成如图2所示。(图2)

    此外,用户通过主机界面接口从SQLite数据库中提取电池的历史特征参数,显示到主机的历史数据界面进行查询,主机端具有的智能分析功能可以根据设定的报警阀值自动判断电池的性能,发出告警信息。主机端采集的数据同时发给后台管理系统,通过后台管理界面进行远程集中监控系统,完成电池特性数据查询,性能分析等处理工作。

    (四)SQLite嵌入数据库实现。SQLite 3.0提供了丰富的API接口函数,但简单的程序仍然使用三个函数就可以完成: sqlite3_open(), sqlite3_exec(),和sqlite3_close(),其中int sqlite3_open()是打开指定的数据库,如果数据库不存在,sqlite会自动建立它。如果它存在,就尝试把它当数据库文件来打开;int sqlite3_close()是关闭数据库,一个数据库开启后,结尾时不要忘了用这个函数关闭数据库;sqlite3_exec()是使用回调来执行select操作。下面简单介绍蓄电池监控系统中嵌入SQLite数据库过程。

    第一步:将编译好的sqlite3.lib,sqlite3.h,sqlite3.dll添加到项目工程文件夹中。

    第二步:应用程序中加入头文件:

    #include "sqlite3.h"

    #pragma comment(lib,"sqlite3.lib")

    第三步:程序中调用API函数,实现数据库的创建,打开,查询,关闭等操作。

    第四步:编译运行项目,系统文件中将生成保存电池的特性参数的数据库文件*.db3。

    四、结果分析验证

    使用SQLite数据库图形化管理工具将数据库文件导入到图形界面中,用户可以查询实时监测的电池各项特性参数,视图效果如图3和图4。(图3、图4)

    图3是蓄电池电压-温度数据表,记录了电池所在组号、节号,及被蓄电池传感器模块采集的电压、温度、内阻值和该数据采集的时间点。图4是蓄电池告警事件数据表,保存的是被系统监测到的告警事件及事件发生的时间点信息。

    依据上述结果图表中得出结论:系统监测到的参数都交由SQLite数据库管理,解决了程序独立性差的问题;数据库中的所有数据都是唯一有效地数据,不存在多余或重复的数据;依据两个基本表的关联操作能导出局部关系视图,方便产品的功能扩展。

    五、总结

    本文提出UPS蓄电池在线监测系统中嵌入SQLite数据库管理系统的方案,详细介绍了系统架构原理和实现流程,依据实验数据说明了将SQLite数据库管理系统嵌入蓄电池在线监测系统中,能有效地提高电池特性参数管理的可靠性。

    主要参考文献:

    [1]王力坚.UPS蓄电池监控[J].应用实践,2010.

    [2]彭艳.基于嵌入式数据库SQLite的智能导游系统[J].计算机系统应用,2011.

    [3]杨建华,黄宇东等.基于ARM/Linux的燃料电池温度监控系统GUN设计[J].信息化纵横,2009.

    • 生活居家
    • 情感人生
    • 社会财经
    • 文化
    • 职场
    • 教育
    • 电脑上网