济南供热管线地理信息系统设计与实现 | ![]() |
2. 山东省城市空间信息工程技术研究中心,山东 济南,250013
2. Shangdong Engineering Technology Research Center of Urban Spatial Information, Jinan 250013, China
城市地下管线是保障城市运行的重要基础设施和“生命线”[1]。近年来,随着城市快速发展,地下管线建设规模不足、管理水平不高等问题凸显,一些城市相继发生大雨内涝、管线泄漏爆炸、路面塌陷等事件,严重影响了人民群众生命财产安全和城市运行秩序。在城市发展的新形势下,城市管线种类日益更新和增加,如何科学有效地对管线进行规划管理,已成为城市管理中急需解决的问题[2]。
为了切实加强城市地下管线建设与管理,保障城市安全运行,提高城市综合承载能力和城镇化发展质量,济南市开展了地下管线基础信息普查工作。供热管线是这次管线普查的重要组成部分,基于地理信息系统技术[3-8]有效利用供热管线普查的成果,科学地管理供热管线和相关设施的数据,为管理部门的日常管理和规划决策提供信息化服务越来越重要。
本文基于天地图济南的数据成果,结合地下供热管线管理的应用需求,以Oracle大型数据库为支撑,以ArcGIS作为空间信息管理平台,通过C/S和B/S相结合的模式,构建了服务于城市供热管线的查询浏览、统计分析和规划管理的信息支持系统。
1 系统设计 1.1 系统体系结构设计为满足不同类型用户的需求,济南供热管线地理信息系统采用C/S和B/S混合的模式进行开发,一般用户通过浏览器就可以登录系统,对供热管线信息进行查询、统计和分析,系统管理员和数据管理员等高级用户通过桌面应用程序登录系统进行管线数据编辑、数据管理、系统管理和维护操作。系统的体系结构包括支持层、数据层、功能层和表现层,如图 1所示。
![]() |
图 1 系统架构图 Figure 1 System Architecture Diagram |
系统表现层是指成果展示的浏览显示层,根据用户类型的不同分为浏览器系统和桌面应用系统。浏览器系统采用微软的Silverlight技术开发,具有良好的用户交互体验和丰富的系统呈现形式。
系统功能层是根据系统事务划分为多个功能模块,主要包括信息查询、信息统计、管线分析、管线编辑和数据管理等。系统业务功能模块采用插件式开发,各个功能可以进行独立开发,相互之间不存在互依赖性,使各个独立的功能都可以单独运行,也可以通过插件框架进行托管运行,从而提高了整个系统的灵活性。插件式开发的功能模块可以根据需求动态的组装、分离系统,以便于系统功能的权限控制。
系统数据层主要包括管线空间数据库、济南天地图数据和系统数据库。管线空间数据库包括供热管点、设施和管线的矢量数据以及相关属性表; 济南天地图数据是指18~20层的政务版济南天地图数据,包含地图、影像和注记; 系统元数据库主要包含元数据、用户数据和系统设置管理数据等。
系统支撑层主要是指支撑系统运行的软硬件,包含服务器、操作系统、中间件、数据库和相关服务器软件等。
1.2 数据库设计系统涉及的数据主要包含管线空间数据、济南天地图数据和系统数据,其中济南天地图数据采用文件形式存储在服务器上,管线空间数据和系统数据存储在Oracle 11g数据库中。
1) 管线空间数据库采用ArcGIS Geodatabase数据模型存储在Oracle数据库中,通过建立一套完整的数据标准(分层、结构、编码)使得各类空间数据在数据库中按“子库-大类-小类”原则进行组织, 根据数据的各个用途和类型对其进行分级细化, 增强数据库的整体逻辑性, 提高数据库的访问效率。相关属性字段的设计参考济南市管线普查的数据标准。
2) 济南天地图数据采用文件形式存储在服务器上,包含地图、影像和注记数据,以服务的形式被C/S系统和B/S系统调用。
3) 系统数据库主要包含用户信息、用户权限信息、系统设置信息、系统日志及相关元数据信息等。系统数据以关系表的形式存储在Oracle数据库中。
1.3 系统功能设计C/S系统主要包括基本功能、数据编辑、管线查询与统计、管点查询与统计、工程分析、事故分析、数据更新和系统设置等功能模块,B/S系统包括图形基本功能、图形定位、管线查询、管线统计、管线分析和系统设置等功能模块,如图 2所示。
![]() |
图 2 系统功能模块 Figure 2 Function Modules of System |
2 系统实现
系统采用Visual Studio 2010作为集成开发环境,服务器端采用ArcGIS Server 10.2进行空间服务发布,B/S系统基于ArcGIS API for Silverlight进行开发,C/S系统基于ArcGIS Engine进行开发,通过ArcGIS SDE进行空间数据访问,数据库软件采用Oracle 11g。
1) 基本功能模块。该模块主要包括矢量和影像数据加载、地图缩放漫游、属性查询、数据选择、前后视图、全图显示、地图量算等基本功能,C/S系统的系统界面如图 3所示,B/S系统的系统界面如图 4所示。
![]() |
图 3 C/S系统用户界面 Figure 3 User Interface of C/S System |
![]() |
图 4 B/S系统用户界面 Figure 4 User Interface of B/S System |
2) 数据编辑模块。该模块主要包括一般编辑功能和管网线编辑功能,管网编辑主要是针对管点、管线数据的编辑,编辑管网数据的同时保证管点、管线的拓扑连接关系的正确性。
3) 管线查询与统计模块。该模块主要包括按管径、长度、材质、道路名称等简单条件和复合条件对管线信息进行查询和统计,统计结果以图表的形式进行呈现。
4) 管点查询与统计模块。该模块主要包括按地址、特征、附属物等简单条件和复合条件对管点和供热设施信息进行查询和统计,统计结果以图表的形式进行呈现。
5) 管网分析模块。该模块主要包括横断面分析、纵断面分析、覆土深度分析、连通性分析、最短路径分析和爆管分析等功能。管线横断面分析结果如图 5所示。爆管分析如图 6所示。
![]() |
图 5 横断面分析 Figure 5 Analysis of Cross-Section |
![]() |
图 6 爆管分析 Figure 6 Analysis of Pipeline Bursting |
6) 数据更新模块。该模块主要提供管线成果数据的入库功能,分为数据转换、数据检查和数据入库等3个功能。数据转换是根据模板提交的数据转换为系统可以识别的入库格式; 数据检查是验证外业提交的数据是否符合管线数据的基本要求,符合要求的数据录入到数据库中。
7) 系统管理模块。该模块主要包括用户信息管理、系统功能管理、权限管理、数据源管理、数据设置和系统日志管理等功能。B/S系统主要供浏览、查询、统计、分析使用,与C/S系统相比缺少数据编辑和数据更新模块。
3 系统关键技术 3.1 基于Silverlight的插件技术B/S系统采用插件式架构设计[9],而Silverlight发布的动态链接库或程序包更容易实现插件式架构。插件式架构设计的框架能够灵活地横向扩展业务组件的扩展开发,管理业务组件的生命周期等,它只需要依赖一个或多个通信接口实现数据通信,不用关心服务后台的架构以及具体实现细节。
插件框架的结构如图 7所示,框架由插件容器、插件契约和插件组件(业务功能插件)等3大部分组成,其中插件容器组织和管理插件的下载、装载、组合、实例化以及销毁,并提供整套完整的与后台服务通信的操作接口,插件契约以服务接口的形式存在,扩展开发新的插件组件需要实现插件契约接口,以便插件容器可以灵活地控制插件组件。
![]() |
图 7 插件框架结构 Figure 7 Framework of Plug-in |
3.2 爆管分析技术
当供热管线发生管线爆管时, 首先需要关闭上下游的阀门, 从而阻止热水或蒸汽的泄露, 然后采取其他措施对爆管事故进行处理完善。爆管分析功能通过选取管线的爆管位置点, 根据几何网络特性, 追踪搜索管线的上下游阀门, 并将阀门以及上下游路径显示出来。当需要关闭的阀门损坏或无法关闭时, 还可以通过二次爆管分析, 进行进一步关阀。
本系统的爆管分析功能采用图的深度优先遍历算法来设计与实现,其设计思想是:以事故点为出发点,搜索整个区域网络中所有的管线点,直到找到与事故点相关联的所有阀门点及检修井。深度优先遍历实际上是一种广义的先序遍历,首先需设置一个堆栈S和一张表T,堆栈用于存放管线点遍历时的邻接点,表T用于已访问过的管线点,初始时选择一个顶点作为被访问的起始点存放于堆栈S中,沿路径移动到终止点或被设定点,将搜索到的邻接点存放于堆栈中,这样直到所有的顶点都被访问到。以后每次从堆栈中取出一个节点判断该点是否已被访问过,若没有,则将其作为一个新的访问顶点搜索出其相邻顶点,并将该访问顶点插入到表T中,这样能确保每个顶点只能被访问一次,在堆栈弹出访问顶点时,需最后将该访问顶点搜索出的未在表T中的邻接顶点压入堆栈中,再对该节点进行搜索,将邻接顶点压入栈,如此重复,直到堆栈为空。流程图如图 8所示。
![]() |
图 8 算法流程图 Figure 8 Flow Chart of Algorithm |
4 结束语
济南供热管线地理信息系统充分利用地理信息系统技术和数据库技术,通过构建的B/S和C/S系统实现了供热管线数据的浏览、查询、统计、分析和更新等功能,为加强供热管线数据的管理,以及管线规划与建设、事故应急等,提供了辅助决策和技术支持。
[1] | 储征伟, 李东阳, 张书亮, 等. 城市地下管线地理信息公共服务平台建设模式探讨[J]. 测绘通报, 2014, (12): 48–51 |
[2] | 刘全海, 孙雪梅, 冉慧敏, 等. 面向管线全业务的综合管理信息系统研究与实现[J]. 测绘通报, 2014, (11): 92–96 |
[3] | 丁鹏辉, 李志刚, 董绍环, 等. 城市地下管线信息系统关键技术研究[J]. 测绘通报, 2015, (11): 92–95 |
[4] | 张翔, 王方雄, 崔羽. 城市三维管网地理信息系统的设计与开发[J]. 测绘地理信息, 2015, 40(2): 17–19 |
[5] | 朱国敏, 马照亭, 孙隆祥, 等. 城市三维地理信息系统中三维模型的快速构建方法[J]. 地理与地理信息科学, 2007, 23(4): 29–32 |
[6] | 赵俊兰, 邬伦. 校园地下管线综合信息管理系统的研究与开发[J]. 测绘科学, 2007, 32(5): 117–120 |
[7] | 解智强, 杜清运, 高忠, 等. 地下管线通用GIS平台建设及其在城市排水管理中的应用研究[J]. 测绘通报, 2012, (8): 72–75 |
[8] | 徐爱锋, 徐俊, 龚健雅. 基于Skyline的三维管线系统的设计与实现[J]. 测绘通报, 2013, (6): 79–81 |
[9] | 张毅, 李国卿, 赵军喜, 等. 插件式GIS应用框架关键技术研究[J]. 测绘科学技术学报, 2010, 27(4): 298–301 |