当前位置: 简表范文网 > 专题范文 > 公文范文 >

智能建筑管理系统数据库模块的研究和设计

| 来源:网友投稿

摘 要:随着信息技术的飞速发展,真正意义上的智能建筑管理系统应当采用Web技术且具有很强的开放性和通用性。提出基于子系统平等方式的智能建筑管理系统,并对其数据库模块,包括实时数据库、实时数据分发服务器、历史数据库、实时数据库与OPC的通信几个子模块进行深入的研究和设计。实际应用表明,该系统的数据库模块设计合理、实时性高、安全稳定性好。

关键词:子系统平等;智能建筑;实时数据库;OPC;hash表

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

1 引言

智能建筑管理系统(Intelligent Building Man-agement System)是信息时代和计算机技术应用的重要产物,其具体任务就是在物理上集成各子系统信息,集中监视各子系统、关键设备、关键监测点状态,执行集中管理控制指令,向数据库提供各子系统数据、图像信息,实现各子系统间的联动功能,并且协调优化各系统的运行,从而为建筑物提供安全、舒适、方便的生活条件和高效的工作环境,并保证其运行维护管理的经济性和智能化。

现阶段智能建筑管理系统集成模式…主要有:①基于硬结点方式的系统集成;②以串行通信方式进行的系统集成;③以楼宇自控系统BAS为平台进行的系统集成;④采用开放式标准协议实现的系统集成;⑤基于子系统平等方式进行的系统集成。其中基于子系统平等方式进行的系统集成是目前公认最先进的集成方式,其核心思想是:

整个BMS集成分为上层管理网和下层现场控制网两个网络层次。系统集成数据库位于上层管理网,各个子系统以平等的方式集成在现场控制网。各子系统的实时数据通过开放的工业标准接口(如OPC接口)转换成统一的格式,存储在系统集成数据库中。系统集成管理网络通过BMS系统核心调度程序对各子系统实现统一管理、监控及信息交换。这种系统集成方法有利于设备制造商各种子系统之间的集成,可以降低开发成本和开发难度,有利于节省项目开发时间。

随着现代信息技术的发展,基于子系统平等的系统集成方式和支持以Web浏览和数据库为核心应用的B/S(Browser/Server)监控模式的IBMS,已成为智能建筑系统集成的发展方向。

2 系统框架

本文研究的系统是在VC的背景下集成开发的,采用了基于子系统平等的集成方式。系统基本框架如图1所示,整个系统采用分层分布式结构的集散监控,总体分为三层。最上层为监控管理中心,负责整个系统协调运行和综合管理;中间监控层及各子系统,具有独立运行能力,实现各系统的监测和控制;下层为现场设备层,包括各类传感器、探测器、仪表和执行机构等。

3 数据库模块的研究与实现

在整个系统实现过程中,数据库模块为IBMS系统集成的关键,同时也是项目开发难点。数据库模块主要包括实时数据库模块、历史数据库模块、实时数据分发服务器模块以及实时数据库与OPC客户端的通信模块。它为集成系统和下层子系统之间的数据通信提供高速通道,是智能建筑系统集成的核心。

数据库模块向上接受监控中心的控制指令,准确迅速地传递给各个子系统,达到控制设备运转的目的;向下数据库模块从现场控制网获取数据,对数据进行分析、处理,执行用户定义的子系统联动功能,保存历史数据。数据库模块的层次结构如图2所示。

3.1 实时数据分发服务器

实时数据分发服务器(RDDS)是实时数据库与Web客户端的数据通信接口。其功能是为浏览器端的页面表现提供数据分发服务,接收并转发客户端(访问、操作人员)下发的控制命令和事件记录。这里我们设计了基于Sockett的实时数据分发服务器,提供客户端与服务器之间的可靠无差错的数据传输。

数据分发服务器与客户端之间的数据交互方式采用面向连接的TCP/IP流式套接字,通信双方接收数据通过多次握手完成,保证了数据传输的有效性。数据由操作功能信息码和操作数据信息两部分组成。接收方首先读取操作功能信息码,再根据操作功能信息码确定下一步读取操作中的数据类型和数据大小,以完成读取操作数据信息,保证了数据传输的安全性。操作功能信息码的各字段值由交互双方的操作类型决定。操作类型划分为客户端注册、客户端注销、客户端用户登录、客户端用户退出、信息点同步、分发状态数据和接收控制指令。操作数据信息的数据包结构如图3所示:

实时数据分发服务器采用事件驱动机制传输数据,服务器把更新的数据主动提供给客户端,以保证数据传输的实时性。

3.2 实时数据库

实时数据库是数据库模块的核心部分,在智能建筑集成系统中起着至关重要的作用。

本系统的实时数据库基于对象方式进行设计,采用从上至下包容的方式:包含系统类对象、子系统类对象、设备类对象和点类对象。实时数据库类对象的层次结构如图4所示:

目前,在Windows环境的组态软件中I/O接口驱动程序与系统实时数据库之间的数据交换一般都是利用动态数据交换协议(DDE)来实现的。由于DDE为基于消息的协议标准,数据传送过程需要处理多条消息,数据交换效率会受到影响。为了提高系统的实时性能,本文提出了利用动态链接库(DLL)和全局共享内存技术来建立实时数据库的设计思想,并通过给用户提供一套接口标准——实时数据库接口,来实现OPC Client及用户程序和实时数据库间的高速数据传递。实时数据库接口由一组API函数组成,包括创建点、删除点、设置点属性、读取点属性等功能,OPC Client和各个用户模块可以直接访问数据库,使系统具有全面的开放型和二次开发功能。

如图5,实时数据库,OPC Client和分发服务器之间通过内存映射实现全局共享内存。OPCClient通过内存映射获得实时数据库点对象的指针,完成写,读,修改配置参数以及对数据的操作,包括添加、删除对象。由于系统包含的点对象数量庞大,需要使用hash表来记录点名与点对象的地址。本系统采用静态分配桶(hash链表长度)结合拉链的方法构造hash链表。拉链即将所有关键字为同义词的结点链接在同一个单链表中。hash表的结构如图6所示,纵向的为静态桶数据结构,横向的为hash node节点数据。

以上的结构建立了点名与点内存地址的一个映射,这样通过点名就可以查询到点的内存地址,即点对象指针。本系统采用time33的hash算法,定义点名变量str,取hash初值为5381。核心代码为:

hash+=(hash<<5)+(*str++);

用掩码取结果的有效位,得到最终的hash值。

在多线程访问同一个数据对象的情况下必须要考虑冲突的解决问题。本系统采用对数据加锁

的方式,即访问数据必须先获得锁再进行操作。该算法构造一个和hash静态桶数组一样的一个BOOL型记录锁数组,访问时通过点名经过hash函数运算得到一个key及对应桶数组的位置。得到key后判断锁数组对应位置的BOOL型变量是否为0(没其他线程访问),如果为0则改为1(这个操作过程须为原子操作),如果为1(其他线程正在操作数据)则放弃剩余时间片,等到下个时间再判断是否锁已经开了,循环一段时间如果还没有开则放弃此次操作报警。经过测试,拉链长度16229静态桶,插入10000个随机字符串,最大拉链长度为7,一个记录锁最多锁住7个点,函数调用总时间不超过1.4秒。算法分布为:kong:8739,elements=10000,good=5426,second=1683,three=322.four=53,five=6。输出中的kong表示hash表的空桶数。elements表示hash表中一共存放了多少个元素,good表示“只有一个元素”的桶个数,sec-ond表示“有两个元素”的桶个数,three表示“有三个元素”的桶个数,four表示“有四个元素”的桶个数,five表示“有五个元素”的桶个数,函数调用总时间表示hash函数总的执行时间。以上测试表明,该算法能以较快的速度建立hash表,并能很好地组织点名与内存地址的映射关系,减少冲突问题的发生。

3.3 实时数据库与OPC的通信

OPC是OLE for Process Control的缩写。顾名思义,OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定。基于OPC技术的接口是一种有效的手段,能够实现各异构子系统的无缝连接,从而快捷有效地把已有建筑子系统融合起来,组成智能建筑系统集成。

OPC协议采用Client/Server体系。应用程序作为OPC接口中的Client方,硬件驱动程序作为OPC接口中的Server方。OPC Client通过读取配置文件,加载实时数据库DLL并且打开内存映射文件获得实时数据库对象的指针。接着OPCClient遍历实时数据库各个子系统对象,创建相应线程并建立与各OPC Server的连接。OPC Client与实时数据库间的通信如图7所示,包括以下几个步骤:

1)OPC Client初始化实时数据库,由OPCClient提供初始化函数;

2)Web界面发生控制事件或触发联动脚本执行,实时数据库执行OPC Client提供的接口函数写OPC Server;

3)OPC Server数据发生变化时,系统调用COM接口里面的回调函数OnDataChange(),通过实时数据库提供的接口,把更新的数据写入实时数据库。

当有大量的客户和大量的数据进行交互的时候,采用这种异步通讯的方式可以避免客户端数据请求的阻塞,最大限度地节省CPU和网络资源,提高数据传输效率。

3.4 历史数据库

本系统使用SOL Server作为历史数据库的开发平台。历史数据库用于记录、保存和查询各种报警和操作事件、设备运行数据及故障情况。系统采用时间片结合缓冲区链表的方法将实时数据库里的数据写入历史数据库。具体实现办法是:缓冲区维护一个300条数据的链表,实时数据库不断将已更新的数据写入缓存区。一旦缓存区满或经过了一个时间片,系统就将缓存区里的数据追加到历史数据库里面。这样做的好处是能防止断电丢失缓存区里的数据且能提高数据的有效性和准确性。

4 结束语

本文提出了基于子系统平等的智能建筑管理系统,并对该系统的数据库模块,包括实时数据库、实时数据分发服务器、历史数据库、实时数据库与OPC的通信几个子模块进行了深入的研究和设计。基于流式套接字的分发服务器保证了数据传输的安全性、有效性和及时性;动态链接库和全局共享内存技术的应用提高了系统的实时性;hash表在点名和点的内存地址之间建立了快速有效的映射关系;子系统平等方式集成的特点以及OPC技术的运用使得各个异构子系统之间的无缝集成成为可能,解决了系统集成的伸缩性问题。

目前该系统集成已在深圳某大厦得到了较好的应用。经测试,系统实时数据的传输时间≤1秒,控制命令的传输时间≤2秒,联动控制命令传输时间≤2秒。事实证明该智能建筑管理系统的数据库模块设计合理,实时性高,安全稳定性好。

推荐访问:管理系统 模块 智能建筑 数据库 研究

热门文章

2022年大学生档案自我鉴定300字10篇

2022年普通大学生个人社会实践实习报告精选服务社会做好思想准备和业务准备,公司内部电脑系统都是统一英文系统,就要求自己以职场……[详细]2022年党员思想汇报例文两篇【完整版】所以在以后的学习和生活中,经历过苦难的中国,工作以及生活中,特别是通过学习党章党纪……[详细]企业员工服务意识培训心得体会

追梦筑梦圆梦演讲稿

最近发表了一篇名为《追梦筑梦圆梦演讲稿》的范文,感觉很有用处,这里给大家转摘到。演讲稿特别注重结构清楚,层次简明。在日新月异的现代社会中,在很多情况下需要用到演讲稿,如何写一份恰当的演讲稿呢?下面是小编为大家整理的追梦筑梦圆梦演讲稿,希望能够帮助到大家!追梦筑梦圆梦演讲稿1尊敬的

《********大宣讲特别节目》直播观后感

最近发表了一篇名为《2022《********大宣讲特别节目》直播观后感【精选】》的范文,感觉写的不错,希望对您有帮助,希望对网友有用。,安全,在学校里,在校外,安全这个词恐怕是再熟悉不过了吧,让将安全铭记心中,时进刻刻都做到安全,让父母不再操心,让长辈不再担心,让安全从我做起,从身边

2022年度有关安全学习心得合集(2022年)

本页是最新发布的《有关安全学习心得》的详细范文参考文章,感觉很有用处,看完如果觉得有帮助请记得(CTRL+D)收藏本页。有了一些收获以后,可以记录在心得体会中,这么做能够提升的书面表达能力。相信许多人会觉得心得体会很难写吧,下面是小编为大家收集的有关学习心得,供大家参考借鉴,希望可以帮

2022员工培训学习心得体会范本合集(范文推荐)

最近发表了一篇名为《员工培训学习心得体会范文》的范文,感觉写的不错,希望对您有帮助,为了方便大家的阅读。培训能让员工不断的提高,并清楚的意识到自己的缺点。经过员工培训,你一定有许多的收获,不妨来写一篇员工培训心得。你是否在找正准备撰写“员工培训心得体会范文”,下面小编收集了相关的素材,

2022年度中考优秀作文素材别样美三篇

最近发表了一篇名为《中考优秀作文素材别样的美精选三篇》的范文,好的范文应该跟大家分享,看完如果觉得有帮助请记得(CTRL+D)收藏本页。雨过天晴,花坛边上,几只蜗牛缓缓的爬行着,留下一道彩虹般的痕迹,那柔软的外面,是坚硬的外壳,那也是一道的美丽。下面是小编为大家收集整理的关于素材别样的美精

2022不期而遇作文600字初中记叙文

《不期而遇作文600字初中记叙文》是一篇好的范文,感觉很有用处,希望对网友有用。,美词,像是袭袭的寒风慢慢轻掠大地,刺刺的,一缕****的阳光下有一小缕的橘红色静静的生长。下面是小编为大家收集整理的关于不期而遇600字初中记叙文,一起来看看吧!不期而遇作文600字篇一苏轼有语人间有味是清欢,或许正是

2022年度幼儿园清明节主题活动总结范本

《2022幼儿园清明节主题活动总结范文【精选】》是一篇好的范文,感觉很有用处,为了方便大家的阅读。,又称踏青节、行清节、三月节、祭祖节等,节期在仲春与暮春之交。清明节源自上古时代的祖先信仰与春祭礼俗,以下是小编整理的2022园清明节主题总结,希望可以提供给大家进行参考和借鉴。2022幼儿园清明节

建团百周年活动策划

《2022建团百周年活动策划【精选】》是一篇好的范文,感觉很有用处,希望大家能有所收获。党的领导是共青团顺利发展的关键所在,无论是中国早期青年团的建立,还是中国共青团的正式成立,都离不开党的领导。下面小编为大家整理了2022建团百周年策划【精选】的相关内容,以供参考,希望给大家带来帮助!20

以小见大作文500字范本(范文推荐)

最近发表了一篇名为《以小见大作文500字范文【精选】》的范文,感觉写的不错,希望对您有帮助,重新编辑了一下发到。一件事情的发生,离不开时间、地点、人物、事情的起因、经过和结果这六方面,即常说的六要素,只有交待清楚这几方面,才能使读者对所叙述的事,有个清楚、全面的了解。这里小编

大一暑假社会实践报告(精选文档)

本页是最新发布的《2022大一暑假社会实践报告》的详细范文参考文章,感觉写的不错,希望对您有帮助,希望大家能有所收获。这个暑假过得是否充实呢,有些小伙伴在假期中参加了实践,那么如何做一份报告呢?下面是小编整理的2022大一暑假社会实践报告,仅供参考,希望能够帮助到大家。2022大一暑假社会

小学品德教师期末工作总结范本合集

最近发表了一篇名为《小学品德教师期末工作总结范文》的范文,感觉很有用处,重新整理了一下发到这里[http: www fwwang cn]。时光飞逝,如梭之日,回顾这段时间的工作,一定有许多的艰难困苦,是时候在工作总结中好好总结过去的成绩了。下面小编在这里为大家精心整理了几篇小学教师期