APP下载

基于MapX控件的城市窨井监控系统

2013-12-03张延波张琳解兆延徐文青周广旭

山东科学 2013年5期
关键词:窨井控件图层

张延波,张琳,解兆延,徐文青,周广旭

(山东省科学院自动化研究所 ,山东济南250014)

城市窨井及其地下管网设备是城市生存与发展的生命线[1],目前,窨井及其管网设备的管理大多停留在纸质人工管理上,工作量大、效率低下。同时,窨井井盖的丢失一直是令市政部门和相关企业非常头疼的问题,不仅给人员车辆带来安全隐患,而且井下的线缆和设备的丢失极易导致通讯、电力、供水、供气中断,给企业和居民生活造成巨大损失。

为适应城市规划、管理的要求以及数字化城市建设,本文设计了基于MapX控件的城市窨井监控系统,使用户可以方便地对整个城市的窨井及井下管网设备进行监控、管理,替代了原先较为落后的人工管理模式,能够为市政管理部门和相关企业提供及时、准确的辅助分析与决策。

1 MapX控件

1.1 GIS开发方式

随着计算机和测绘技术的飞速发展,地理信息系统(Geographic Information System,GIS)得到了广泛应用[2]。GIS按照内容可分为两类:应用型和工具型。应用型GIS是以某一专业、领域为主要内容,支持二次开发;而工具型GIS是基础软件,支持空间数据处理、图形分析等基本功能。目前应用型GIS二次开发主要有以下3种实现方式:(1)独立开发,不依赖于任何GIS工具,选用某种程序设计语言,在一定的操作系统下编程实现;(2)借助二次开发工具单纯二次开发,例如利用MapInfo的MapBasic开发系统;(3)集成二次开发,利用专业的GIS工具软件及其组件,实现GIS的基本功能。其中,利用组件技术进行开发是面向对象技术和分布式计算在软件工程中应用的深化和融合,是目前GIS软件开发和设计的先进技术。该技术既沿用了专业GIS产品的强大制图功能,又能根据需要灵活实现各种管理功能。其开发周期短、成本低、高效快速,可以脱离大型商业GIS软件平台独立运行,并且对开发者的GIS专业背景要求不高。

1.2 MapX 控件

MapX是MapInfo公司向用户提供的具有强大地图分析功能的ActiveX控件产品[4],可以很方便地集成到可视化的开发环境中,支持将地图功能添加到任何应用中,提供了一种高度可视化的方法,来显示和分析基于位置的数据信息,并且支持使用Visual C++、Visual Basic、Delphi等编程语言,开发者可方便地设计实现地图功能和特性。

MapX基于ActiveX技术,由一系列Object(对象)和Collection(对象集合)组成,而集合中包括对象,是多个对象的组合,每种对象和集合负责处理地图某一方面的功能。Map是最基本的对象,每个Map由Layer(层)、Dataset(数据集)和Annotation(标注)这3个对象及对象集合来定义,其中Layer用于操作地图图层,Dataset用于访问空间对象的属性数据,Annotation用于在地图上添加文本、符号等标注,如图1所示。

图1 MapX模型结构Fig.1 Model structure of MapX

2 窨井监控数据的获取与数据库设计

数据是GIS系统中最基础的部分,对整个系统的开发建设起到了至关重要的作用。空间数据结构是GIS的基石,GIS通过这些地理空间结构建立地理图形的空间数据模型并定义各空间数据关系,从而实现空间数据和数据库的结合[3]。

2.1 图形数据获取

获得空间图形数据的方式主要有2种:(1)利用数字化仪器对地图进行数字化,输入相应的数据属性描述信息。目前,大部分GIS软件都提供了数字化仪的操作功能。(2)用扫描仪将地图扫描成图像文件,再进行数字化[4]。本文采用第二种方式来获取图形数据,以济南市为例,把1:15 000的济南市地图进行扫描,保存成JPG格式图片,在Mapinfo软件中,进行图像配准。首先选取6个基准点,输入其经纬度坐标,完成图像配准工作;其次矢量化该地图,在Mapinfo中,输入表的各个字段名称、类型、宽度,然后将该表作为装饰图层加入到地图之中。矢量化之后的各个图层的图形数据转变成为GIS能够支持的数据格式,作为监控系统中工作底图数据来源。

2.2 属性数据采集

设计开发窨井监控系统,首先要对窨井的属性信息进行采集、过滤。窨井分布在城市的各个街道,井下环境不一,数量、种类繁多,测试手段也大不相同。目前,窨井监控数据的采集方法大概有如下2种途径:(1)井下有线信号传输方式,该方式工程量大、施工复杂,若线路故障则导致通信中断,稳定性差;(2)信号无线传输模式,每个监控点都安装GSM模块,利用GSM网络进行数据传输,该方式自动化程度高,但是施工成本较高,普及推广难度大。本文在现有基础上进行了改进,充分利用无线自组网技术[5]、GPRS通用分组无线业务设计了无线网络节点系统,系统硬件结构如图2所示。

首先由网络协调器启动一个网络的建立过程,设置自己的网络地址以及拓扑结构等参数,在无线网络搭建成功之后,路由器或终端节点通过网络协调器加入到网络中,并分配相应的网络地址,各个终端节点之间可通过路由器相互通信,若干个无线网络节点系统通过自组网形成无线传输网络。终端节点与监控窨井一一对应,负责采集监测信息并将信息汇集到离其最近的路由器,在无线网络节点系统中至少有一个节点和GPRS模块进行连接,节点系统通过GPRS数据业务向监控中心发送监测数据。监控中心的计算机接收、处理上传数据,将结果实时显示在大屏幕上。

图2 监控系统硬件结构Fig.2 Hardware structure of the monitoring system

2.3 数据库设计

数据库设计的主要任务是依据数据模型完成空间数据结构和属性数据结构的设计以及图形与属性信息之间的关联[6]。监控系统中,每个被监控的窨井井盖拥有一个唯一识别的ID号,检测终端通过这个ID号与之动态绑定,而电子地图中会有一个图元和这个ID号配对,实现空间数据库和属性数据库的逻辑连接。

(1)空间数据库。MapX开发系统中的地图是分层存放的,各层中的空间数据主要存放在数据文件*.map中,图形中的每一个地物均有其对应的标识,系统根据这个标识号作为索引建立该地物的图形文件。图层分为背景图层和专题图层两大部分,其中,背景图层主要有道路层、建筑物层、水系层、公共设施层;专题图层包含有通讯层、电力层、热力层、污水层、消防层、路灯层、自来水等窨井图层。

(2)属性数据库。属性数据库采用关系数据SQLSERVER2005来管理,以窨井的唯一识别码为关键字作为图形文件中该实物的标识码ID号,实现图形与属性数据的一一对应关系。根据关系型数据库管理系统的要求,对每一层的监控对象所对应的属性数据结构进行定义,然后统一汇总、编码,建立对应的变量字段。窨井的属性定义见表1。

表1 窨井数据结构Table 1 Data structure of the manhole

3 监控系统功能

城市窨井监控系统采用模块化设计思想,由图形的结构与层次关系确定各个模块的功能。以MapX控件为基础,集成到可视化的编程环境Visual C++中,实现了图层、图元控制,数据绑定等功能。系统界面设计简洁,主界面截图如图3所示,主要功能有:

(1)GIS图形操作管理功能。实现地图放大、缩小、全图、漫游等视图显示功能,提供全区域范围内导航的鹰眼功能,用户可以根据操作权限按照需要对一些图层进行显示、隐藏及关闭操作。

(2)综合查询与定位功能。实现双向查询功能,既可通过点击对象(道路、建筑、窨井等)获取属性信息,亦可输入属性查询条件定位对象。用户查看对象(窨井或城市地物)时,可通过鼠标点击捕捉后浏览其相关属性,用户查询属性信息时亦可立刻定位至该对象。

(3)量算功能。近似量算窨井与窨井之间、窨井和监控中心之间距离。

(4)监控对象图元自由组态功能。用户在监控背景图层上自由选择图元符号,可增加、删除、修改、移动窨井图元,同时能灵活修改图元的属性配置信息、无线网络采集系统中的通道号、端口号。

(5)实时数据监测与报警处理功能。用户可设定采样间隔时间,实时采集窨井井口状态及井下环境信息并以列表、曲线的形式显示。当系统检测到井盖异常开启或者气体浓度超标时,自动在报警信息栏中显示警情,系统迅速定位报警点至地图中央,并以声、光报警形式提醒值班人员,同时发送报警短信。

图3 系统界面Fig.3 System interface

4 系统关键技术

4.1 图元定位与闪烁

在监控系统中,图元的定位与闪烁是十分重要的技术。通过Visual C++创建一个应用项目后,将位于MapX的安装路径下的MapX.h和MapX.cpp两个文件拷贝到应用项目所在的文件夹下,从Project菜单中选择Add to Project->Files命令,打开Insert Files into Project对话框选项,选中开发项目程序文件夹下的MapX.cpp和MapX.h两个文件加载到工程中[7]。通过Mapx对象GetFind()属性函数可实现地图当中的任何图元对象的查询定位。实现图元闪烁的方法是利用Selection对象,结合Windows的定时器就能控制图元闪烁,主要代码如下:

4.2 通信流程

监控中心初始化配置无线节点信息,为所有无线网络节点分配地址并设置配置数据包,监控主机根据制定的通信协议,读取无线网络节点发送的数据,并对数据进行解析、识别。监测数据流程如图4所示。

5 结语

本文开发设计的城市窨井监控系统,充分利用了无线自组网技术,采用GPRS网络数据传输,以组件式GIS控件MapX为技术支撑,实现了城市窨井的网络化、图形可视化监控。监测人员能结合电子地图实时监控窨井位置信息与状态数据,快速及时了解警情,避免了由于窨井井盖被盗或损坏而出现的人员车辆安全隐患问题以及井下线缆和设备丢失的问题。目前,该系统还处于实验室运行阶段,如要将系统推广应用,窨井检测终端天线的材质选择、具体的安装方式是亟待解决的问题,也是我们下一步研发的重点。

图4 通信流程Fig.4 Communication flow

[1]张珺.基于WebGIS的城市地下管网信息系统的应用研究[J].国土资源信息化,2006(6):30.

[2]朱海鹏.VC++环境下基于MapX的软件开发[J].电脑知识与技术,2011,7(12):2846-2847.

[3]梁跃虹,齐耀斌.基于MapX桥梁数字化管养系统中电子地图的开发[J].微计算机信息,2006,22(10):200-201.

[4]张成才,孙喜梅,黄建红,等.基于MAPINFO电子地图制作方法研究[J].水土保持研究,2002,9(4):145-146.

[5]孙庆辉,王晓理,池天河,等.一种基于无线通信技术的GIS集成系统[J].计算机应用研究,2006,(8):255-256.

[6]向怀坤,武文波,丁继新.GIS支持下的城市地下管网信息系统研究[J].北京工业大学学报,1999,25(3):123-124.

[7]靳海亮,刘慧杰,苗宝亮.基于MapX控件的GIS应用软件基本功能的二次开发[J].计算机与数字工程[J].2011(1):62- 63.

猜你喜欢

窨井控件图层
面对窨井
窨井安全结构设计
关于.net控件数组的探讨
巧用混合图层 制作抽象动感森林
图层法在地理区域图读图中的应用
跟我学添加真实的光照效果
ASP.NET服务器端验证控件的使用
浅析“递层优化法”在矿井制图中的应用
地下管道、窨井的渗漏整治和修复应用
小伙跳下窨井救出被困的流浪狗