IBMS系统集成及数据通信

2022-03-16 08:11:35 | 浏览次数:

摘要:本文以南京化工园综合楼信息管理系统(IBMS)的系统集成为背景,结合智能楼宇管理系统的需求与应用,论述了该系统的硬件设备组成和软件框架结构,并详细讨论了IBMS管理系统与各子系统之间的DDE、串口通信等关键数据通信技术。

关键词:智能楼宇;IBMS;系统集成;DDE;串口通信

一、引言

随着信息时代的到来,作为信息技术与现代建筑相结合的产物——智能楼宇(Intelligent Building)自1984年在美国建成以来,得到了蓬勃的发展。智能楼宇通常又称为“5A”建筑,它主要由BA(楼宇控制自动化)、SA(安保自动化)、FA(消防自动化)、CA(通讯自动化)和OA(办公自动化)等子系统组成。这些系统通常独立工作,各司其职。但随着计算机技术、网络技术和客户管理需求的发展,对楼宇管理的信息共享和相关智能提出了更高的要求,需要综合各子系统信息,在硬件设备基础上集成一个具有更高开放性、兼容性和便利性的智能楼宇信息管理系统(Intelligent Building Management System,即IBMS),实现信息与资源的交互和共享,提高系统维护和管理自动化水平及协调运行能力。

IBMS的具体任务是集成各子系统信息,集中监视关键设备和关键监测点状态,执行集中管理控制指令,向数据库提供各子系统数据、图像信息记录,并可根据用户需求提供及时的系统间联动功能,协调优化各系统的运行。

目前IBMS系统可分为专用集成平台和第三方通用平台两大类,前者是指以楼宇自控系统为基础进行配套的、具备部分集成能力的产品,这类产品多在其楼宇自控子系统BA专用软件产品基础上进行扩展,侧重于硬件设备互连,多采用传统的C/S模式开发,对综合信息管理和联动支持能力较差;后者则指基于计算机网络和第三方软件方式进行系统集成的信息管理平台,这类系统通用性强、应用范围广、适应性好、信息集成和系统联动功能强,可适用于不同设备制造商子系统的集成,并支持Internet范围内的信息化管理。本文以属于后者的南京化工园IBMS系统集成背景,论述了系统的硬件设备组成和软件框架结构,并详细讨论了IBMS管理系统与各子系统之间的关键数据通信技术。

二、工程概况及硬件设备组成

南京化学工业园综合服务中心楼是一座集内部办公及对外出租办公为一体的现代化综合建筑。共分为四个区,一二区为内部办公,三四区对外出租办公。主楼为地上四层,另有地下一层和食堂等附属建筑,是一座自动化办公大楼。为了达到智能化管理、监控和办公的目的,就需要对大楼进行一体化系统集成。该方案中主要包括以下5个子系统:楼宇控制自动化系统、门禁系统、安保监控系统、消防系统以及物业管理系统。系统集成的目标是将各个弱电子系统集成于一个计算机网络系统中,建立统一的平台,解决智能楼宇内不同弱电子系统之间的异构问题,以实现整个智能楼宇信息资源的合理分配共享,提高管理者的工作效率,降低设备运行以及维护的费用。借助智能决策分析系统,实现楼宇内弱电系统之间的有机融合,跨子系统的设备联动控制,实现楼宇管理的统一化,规范化和自动化。

各子系统产品的选择遵循性价比高、集成接口良好的原则。具体采用设备如下:楼宇控制系统采用英国INVENSYS公司的集散型建筑物自动化系统MICRONET,选用MNMI控制接口和MN620等控制器;门禁系统的控制部分主要采用INTEGRATED的分布式门禁控制、考勤管理系统,门禁控制系统前端采用非接触IC卡读卡机,配用加拿大枫叶公司的阴极锁、磁力锁,同时配以西蒙的出门按钮和日本ALEPH公司的门磁开关,用于出门和感知门的状态,从而组成联网型非接触IC卡门禁系统;安保监控系统选用美国洛泰克公司的AD2020X96-20系列矩阵控制主机和快球摄像机AD722C1/S,以及韩国三星公司的数字信号彩色摄像机SCC-101P;消防报警系统采用北京利达防火保安设备有限公司的LD128E系列。这些系统由各自公司承接,完成系统硬件设备及相关软件的安装、调试,并提供相应的集成接口。IBMS主机与子系统硬件设备连接如图1所示。

经现场调研,并根据业主要求IBMS系统应具有以下如下功能:集中监视功能;设备集中管理功能;系统报警功能;以各子系统的状态参数为基础,实现各子系统之间的相关软件联动;能够从网络上浏览和控制建筑物内各设备的状态和报警信息。

三、软件实现及数据通信技术

IBMS技术应用的关键在于互联网技术的引入和设备连接协议的标准化(如采用OPC,BACNET等技术)。但事实上由于目前各个系统可选的设备多种多样,多数设备之间还沿用非标准的信息互联方式,因此在系统集成时,要根据系统设备所提供的通信接口来灵活使用的不同的通信手段。分析各系统之间的通信接口以及它们之间的联动要求是实施系统集成的关键。

(一)软件基本结构

IBMS软件分为5个模块,分别是楼控系统、门禁系统、安保系统、消防系统和物业管理系统,具体结构如图2所示。进入各系统界面后就可以对相应的设备状态进行浏览和控制,因为IBMS提供了WEB访问功能,用户在获得权限后通过Internet就可以执行以上的操作。另外,集成系统拥有独立子系统所没有的其它优势,比如用户可以根据合理的控制策略,在某些情况下产生组合的跨子系统的联动控制,真正体现智能楼宇的优越性。

IBMS软件开发的一个核心部分是与各子系统之间的数据通信,这将直接影响到集成软件的质量与效率。在南京化工园项目中,IBMS软件运用DDE(动态数据交换)、串口通信、数据库访问等方法与子系统进行通信,下面将详细讨论这些方法在此工程中的应用实现。

(二)DDE数据通信

南京化工园采用的INVENSYS楼控系统中,MICRONET I/O-Server作为DDE(动态数据交换)的服务端,为能够进行DDE通信的程序,如MICRONET View提供来自现场控制器的即时数据。MICRONET View与现场连通后,就可以通过对控制器的读写,实现楼宇控制的功能。

IBMS系统对楼控部分的集成,也需要经过唯一的数据接口I/O-Server获得数据。通过编写DDE客户端程序,与I/O-Server进行通信,然后将数据传送回IBMS服务主机,实现对楼控系统的集成。因为C#中没有相关命名空间,我们采用VC++.NET语言编写DDE通用函数,然后生成DLL供C#调用编写客户端程序。

DDE会话发生在客户应用程序和服务器应用程序之间。DDE协议使用三级树型命名:服务(SERVICE)、主题(TOPIC)和数据项(ITEM)来标识DDE所传递的数据单元。服务使应用程序有了提供给其他程序的数据交换能力;主题类似于目录;ITEM才是具体通信的数据内容,比如一个字符串。在南京化工园项目中,DDE服务名为“MNNCPIO”,主题名为“nanhua / High Priority”(即时性较高的点集)和“nanhua / Low Priority”(即时性较低的点集)。Item的命名与控制器在子网中的位置以及点值的类型等有关,具体格式为<Subnet>/<Node>/<Object Name><Object Number>.<Property Name >,查表可得其中具体Object Name含义。比如1/21/DI8.State,表示在主网中第21个DDC控制器的第8个数字输入点的状态。

以下对VC.NET编写的核心代码进行简单介绍:

首先添加#include “ddeml.h” 以便调用DDEML函数。

用CString类型定义所需读取的服务名、主题名和数据项名,三个变量为strServer、strTopic和strItem。

DWORD id = 0;//DDEML的实例ID

char temp[256] = {""};//存放所得值的字符串数组

//初始化DDE客户端

UINT result = ::DdeInitialize(&id,0,APPCMD_CLIENTONLY,0);

//获得服务字符串句柄

HSZ hszServer = ::DdeCreateStringHandle(id,strServer,CP_WINANSI);

//获得主题字符串句柄

HSZ hszTopic = ::DdeCreateStringHandle(id,strTopic,CP_WINANSI);

//获得数据项字符串句柄

HSZ hszItem = ::DdeCreateStringHandle(id,strItem,CP_WINANSI);

//根据服务和主题句柄与DDE服务端建立会话连接

HCONV hConv = ::DdeConnect(id,hszServer,hszTopic,NULL);

//根据数据项句柄从服务端获得数据

HDDEDATA hddedata=::DdeClientTransaction

(NULL,0,hConv,hszItem,CF_TEXT,XTYP_REQUEST,2000,NULL);

//将得到的数据保存在以temp为首址的内存空间中

::DdeGetData(hddedata,(BYTE*)temp,256,0);

返回temp就可以得到I/O Server提供的我们所需的数据值。

结束会话结束后释放所用的资源。

通过以上的程序段就可以对I/O Server进行数据访问。设定一个定时器就可以指定时间进行读取。向服务端写入数据的过程与之类似,只需要对参数作一些相应的修改。能读写I/O Server就实现了IBMS软件与楼控系统的完全数据通信,能够在IBMS中对楼控设备进行状态显示和必要的控制。

(三)串口通信

串口通信是IBMS与各子系统的一种主要通信方式。

在集成安保监控系统方面,IBMS主机通过RS232与监控系统中的AD2020X96-20矩阵主机相连,传递命令控制报文。摄像视频信号通过IBMS主机上的视频采集卡接入系统,IBMS用户通过发送不同的报文来实现画面的切换,同样可以控制快球左右移动,摄像机镜头变焦距。

在集成消防子系统方面,LD128E系列控制器提供一个标准的RS232通讯接口,并提供开放的基于RS232的通讯协议。分为主动和被动两种方式:1、当LD128E系列控制器监测到火警和故障,或由本身发出的联动启动、复位等命令时,都会主动发出一组数据,该数据格式为:命令,参数一,参数二。命令为单字节,指明报警的设备类型,参数一指明设备回路,参数二指明设备地址。2、IBMS主机可以询问控制器工作状态:计算机发出命令20H,控制器应答命令7FH,表明控制器工作正常且通讯正常,错误或收不到表明控制器工作不正常或通讯出错。

IBMS软件由MS Visual Studio .NET 2003开发,我们采用其中的C#来开发串口通信程序。在C#中实现串口通信有多种方法,其中通过MSCOMM控件是最简单,最方便的方法。可功能上很难做到控制自如,同时这个控件并不是系统本身所带,所以还得注册,这里不采用。通过调用API函数实现串口通信,虽有一定的难度,却可以方便的实现想要的各种功能。API函数多,使用复杂,我们使用封装好的类库CommBase。由CommBase调用API实现底层的通信,我们在其基础上对一些函数进行重载完成所需的功能。主要的收发函数有:OnRxChar(byte c)为收到一个字节c后进行的处理工作;SendChar(byte c)为向串口发送一个字节c。收发一组数据可以在收发单字节的基础上完成。

(四)数据库存储

在INTEGRATED的门禁系统中,门禁主机可以手动或者定时通过串口从门禁主控制器读取读卡器记录,并保存在本地的menjin数据库中。主要的持卡人信息和出入历史记录分别保存在ctrller和AGMS_Entryrec这两张表中。IBMS软件通过ADO.NET远程访问menjin数据库,就可以得到目前的门禁信息,实现与门禁子系统的集成。

四、结束语

智能楼宇信息管理系统是高质量楼宇办公、生活环境的基础保证,其系统集成是一项复杂的工程,根据用户提出的不同要求和所采用的设备不同,集成方案也要进行适当的调整。另外系统集成涉及到许多子系统设备供应商,跟他们的融洽沟通也是成功集成不可或缺的。随着现代信息技术的发展,客户要求从楼宇到整个世界的范围内进行信息的采集和综合、信息的分析和处理、信息的交互和共享,因此基于Internet/Intranet技术,以TCP/IP协议为基础,支持以WEB浏览和数据库为核心应用的B/S(Brower/Server)监控模式的IBMS已成为智能楼宇系统集成的发展方向。

参考文献:

[1]马飞虹.建筑智能化系统. 机械工业出版社, 2003.

[2]陈洪亮, 王斌. 智能建筑IBMS中的系统集成开发. 智能建筑与城市信息, 2004, 10期.

[3]Simon Robinson, K.Scott Allen. C#高级编程. 清华大学出版社, 2002

推荐访问: 数据通信 系统集成 IBMS