APP下载

基于WebGIS的物联网服务应用

2018-03-23张佳启

电子技术与软件工程 2018年4期
关键词:物联网

摘 要信息技术发展至今,物联网(Internet of things)已经成为其不可或缺的组成部分,在新一代信息技术中有着无可比拟的重要地位。物联网是指按特定的协议,利用红外感应器、射频识别(RFID)、激光扫描器、全球定位系统等诸多信息传感设备,使物体与互联网能够相互连接并进行通信和信息的交换,从而实现对物体的智能化管理(包括识别、定位、跟踪和监控)的一种网络。本文主要介绍了采用物联网技术与WebGIS技术相结合的技术思路,并在河网水系远程水位监测中成功应用的案例。

【关键词】物联网 WebGIS SOAP WebServer 远程传输

湖南省水利厅洞工局的基于河网水系远程水位监测项目是集合了JAVA的GIS技术和WebService技术并通过远程SOAP协议进行通信的物联网系统。它的主要特点是采用Oracle与Linux相结合的搭建平台,基于J2EE多层架构,实现水位数据自动采集,远程传输;客户端将设备采集到的数据通过互联网采用RPCtimer线程技术实时传送到远程服务器,同时使用80端口SSL加密传输;WebService中间件与MapXtreme、SOAP分别实现了无缝集成。

1 理论分析

Linux是UNIX增强版,是作为服务器平台比较理想的选择。Linux平台在目前它的用户面多集中在高端用户,从水平和层次来讲都是处在一个较高的位置。此类用户在总体计算机用户中占有的比例相对较少,这样有利地增强了操作系统本身的安全性。另一方面Linux与Windows不同,它的网络服务部分是整个操作系统的主要任务所在,系统的资源主要应用于网络服务。此外,它还继承了UNIX网络服务方面的优点,拼弃了UNIX的受硬件限制的缺点。

Oracle是目前适用于中小企业应用的最理想的数据库系统平台,这是众所周知的。Linux+Oracle无疑是一个完美的结合。

WebLogic与MapXtreme集成是一种非常好的中间件服务器和Web Services环境,是服务器与地图服务器的最佳组合,它为GIS的运行打下了坚实的基础。并且WebLogic中安装MapXtreme是一件非常容易的事,只需直接拷入WebLogic并重启WebLogic即可。

SOAP是用于远程访问的Web Services,它能很好地融合到WebLogic之中。SOAP的程序包能在WebLogic中自动解压,安装起来非常方便,而且无需做太多的配置即可运行。

环境部署中采用SOAP与WebLogic的组合,即省去了大量的安装部署工作,也使得通过互联网实现远程传输的方案得以轻松实现。

为了使水位信息能够在互联网上发布,本项目的规划设计采用服务器上网。这给系统的安全性问题带来了一些困难,因此,环境部署设计中选用了Internet地址映射的办法。地址映射为防火墙的安全性管理提供了实现的可行性条件,有效地避免了服务器直接上网,方便了管理,增强了安全性为服务器上网提供了可能性。

2 基于WEB的GIS技术实现

2.1 GIS实现方式

由于GIS必须使用矢量图形,而目前市场上的浏览器本身并不支持这种图像。所以要实现WebGIS,我们可以通过两个途径来解决。第一种途径是利用控件和插件,使客户端浏览器能够支持矢量图形;第二种途径是利用相关的软件,先在服务端将矢量图形转换格式,变为浏览器所支持的图形格式,然后再传递到客户端,客户端通过ASP或者公共网关接口(Common Gateway Interface,-----CGI)来发送请求,从而将从服务端传递过来的图像显示在浏览器上。主要的实现方式有以下几种:

2.1.1 公共网关接口(CG I)方式

由于浏览器本身不支持矢量图片,但是将矢量图形变成栅格图像后,再通过HTML就可以显示在浏览器中。不过这种图像是静态的,用户不能对图像进行缩放、漫游等操作。CGI提供了一个接口,使浏览器和服务器之间或者服务器和应用程序之间能够利用这个接口进行通信。用户首先通过客浏览器发送请求到Web服务器,Web服务器利用CGI把请求转移到后台的应用程序(地图服务器)上,由应用程序(地图服务器)访问数据库并按照相应的要求逻辑处理请求,然后将处理结果返还给Web服务器,Web服务器再将该结果发送给客户端,在浏览器中显示出来。具体原理如图1。

CGI模式相比较其它模式有着显著的优点:

(1)客户端无需安装任何插件,能够充分利用服务器的资源来完成所有的操作和分析;

(2)比较灵活性,不局限于特定的语言,只要该语言能运行在服务器上,那么都能拿来编写CGI;但用时,其也有着明显的缺点:服务器每次请求都要重新启动GIS应用程序,产生一个新的进程,这样会造成内存和CPU资源开销过大的问题,从而降低了系统响应速度。

2.1.2 ASP(Active Server Page)方式

CGI的最大的特点是他的平台无关性,但网关程序通常是一个独立的程序,较难编写和改变且不和 HTML文件融合在一起,而 ASP方式可以使得脚本的开发和HTML文件的编写融合在一起。相较于CGI网关,ASP技术有如下优点:

(1)容易創建,不需要其他编译,连接程序;

(2)完全与HTML文件融合在一起;

(3)性能较好,二次开发比较容易,面向对象并通过ActiveX Server对象可扩展。

2.1.3 基于插件(Plug-in)方式

插件方式是通过增加一个能识别矢量图形数据的插件,从而使浏览器能够显示原本不支持的GIS图形信息。这种方式直接把一部分服务器上的功能移到客户端上,在大大加快了客户操作的反应速度的同时,也减少了服务器和网络传输的负载。优点是比HTML更灵活,具有动态代码的模块,可直接操作传送到客户端的矢量数据,充分利用了客户端的计算机能力,运行效率高。缺点是插件必须装在客户端,而且需要不同的插件来支持不同类型的数据,从而加大了客户端的压力。

2.1.4 基于Java语言的实现方式

Java是一门面向对象的编程语言,最大特点是能跨平台使用(与平台无关)。本系统的WEBGIS部分采用Java语言实现,对于Web发布系统采用了JSP+Servlet+JavaBean的形式,整个系统的体系结构由显示层、应用服务器层和数据库层组成。如图2所示。

在数据表现层中,客户只需在浏览器的地址栏输入固定的地址以及用户名和密码登陆后,即可浏览系统页面,查询有关信息。服务器层由Web服务器与GIS服务器构成,Web服务器包含了JSP、Servlet 、Java Beans组件,响应从浏览器传过来的客户请求,通过JDBC访问数据库,并根据客户要求进行相应的逻辑计算,再将计算结果返回至客户端;GIS服务器侧重于响应地图绘制的请求,采用对象模型分层结构,更易于地图显示,在MapXtreme工作方式下,将地图数据转换成相应的图像格式嵌入到网页中进行输出,客户端则以提交表单的方式向服务器传回用户操作参数。

2.2 GIS的WEB部署

在客户端,用户通过HTML页面或浏览器中的applet与地图绘制应用程序交互。交互是以‘请求—响应方案为基础的。基于WEB的地图绘制部署利用标准的组件,其中包括WEB服务器、应用服务器(可以和WEB服务器是同一服务器)和用于背景的地图数据数据库、以及应用程序相关的定制数据。

用于MapXtreme Java的部署选项可以根据软件和向客户机发送的数据的多少划分为瘦客户机、中型客户机和胖客户机三类。考虑到本项目的特点,本系统采用‘瘦客户机模式,用户将与浏览器中的JSP页面交互,地图是嵌入到HTML中的GIF图像,地图请求的处理在服务器端完成。这是典型的Internet部署,Java程序并不在客户机上运行。MapXtreme有4个重要组件:数据提供方、渲染器、MapXtremeServlet和MapJ对象。这些组件协同工作,可用于访问地理数据、控制数据并为应用程序提供地图或数据。

3 系统运行效果

目前,本系统在洞庭湖区设立了南昏、澧南垸、围堤湖、母山基地四個水位采集站。水位采集站自动采集实时水位数据并传送到水利厅数据库服务器,每 5分钟(当然间隔时间可由用户设定)传送一次,而且系统会自动将数据发布到互联网上,各级防汛部门对各个监测点的汛情可以随时随地实时掌握。水位监测曲线显示:

3.1 运行安全、稳定、可靠

软件部分主要包括数据采集软件(与硬件部分配套使用)、远程传输、水位管理Web系统、GIS显示以及调度管理。数据采集软件使用C++ Builder进行开发,主要完成从水位计采集数据的功能,其他软件部分的软件结构采用了B/S(Browser/Server)模式。服务器端完成将客户端传入的数据实时地存入数据库表中,客户端完成将采集设备采集到的数据通过互联网按时传送到远程服务器。在进行远程传输的过程当中,系统利用了80端口的SSL加密传输的方式,使数据安全,又使其在互联网上能够畅通无阻地进行传输。

GIS部分采用MapXtreme47作为地图服务器 ,MapXtreme可以提供Java或ActiveX的Widget,完成多平台上的地图放大、缩小或平移等操作,同时也可以将矢量地图转化成JPG或GIF格式的图片。由于传递到客户端的只是一幅经过转换和压缩的栅格图片,而原本的矢量地图及数据仍然保留在服务器端,因此不但降低了网络传输的负担,也保护了原始数据不受污染。

3.2 多用户共享

以前的水位实时监测与调度系统一般都是采用传统的C/S结构,能够很好的解决在流域级或省级防洪调度决策模块中的系统集成问题,实现局域网内调度信息与多用户水位数据的共享。

随着网络技术的不断发展,多个专家在异地查看水情、进行联合调度决策已经成为可能。本系统采用B/S结构,基于因特网技术,其特点就充分满足了多用户共享数据信息,可以实现多个专家在异地查看水情、进行联合调度决策,大大的方便了用户。

3.3 使用方便、实用性强

系统界面简洁,屏幕提示直观明了,人机交互方便,并且具有较快的实时响应速度和较强的业务处理能力,能够快速的实现查询、统计和报表等功能。解决了以往水位数据采集难、获取难、查看难的问题。同时还提供了一系列实时信息、历史信息、平均水位的查询以及曲线图显示功能,可以对水情有一个比较全面的掌握,具有很好的实用性质。

4 技术特点

4.1 水位数据全自动化采集技术

水位数据通过485线或无线方式进行全自动采集,只要打开采集工作站,系统就能自动启动并自动实时地从水位计采集水位信息。充分地实现了无人值守的自动化功能。

4.2 全自动实时发布技术

从采集工作站到互联网,对水位数据实现了全程自动化处理。只要打开采集工作站,远程传输程序就会随水位采集程序自动启动,将水位信息实时准确地传送到服务器。服务器的水位及辅助调度系统会自动地将水位信息发布于互联网上,无需任何的人工处理。

4.3 基于Linux的WEBGIS展示技术

将水位信息进行WEBGIS实时展示的系统目前不多,特别是基于Linux平台下的这种部署方式是当前所没有。

4.4 自动生成辅助调度预案

系统辅助调度模块能够根据内外河水位、降雨量以及基本参数信息自动生成辅助调度预案,供调度人员决策参考。

4.5 基于SOAP的远程传输技术

SOAP是一种简单对象传输协议,它是通过80端口基于XML进行通信的。而80端口在INTERNET上是开放的,因此利用它,信息便可在互联网上自由传输。将这项技术用于水位信息的远程传输,是一个应用创新。

参考文献

[1]程铁信,李敏杰,郭涛.项目管理理论、方法与实践[M].北京:中国电力出版社,2008.

[2](美)Charles P.Pfleeger,Shari Lawrence Pfleeger.计算机安全[M].北京:机械工业出版社,2004.

[3] Robert Englander译者:黄刚.Java与SOAP[M].北京:中国电力出版社,2002.

作者简介

张佳启(1976-),男,湖南省怀化市人。大学专科学历。现为湖南湖大华龙电气与信息技术有限公司项目经理、高级项目经理。研究方向为主要从事计算机软件开发与项目管理工作。

邵立政,男,长期从事电力调度和项目管理工作。

汪红波,女,长期从事电力调度和项目管理工作。

刘翊枫,男,长期从事电力调度和项目管理工作。

作者单位

1.湖南湖大华龙电气与信息技术有限公司 湖南省长沙市 410205

2.国网湖北省电力公司 湖北省武汉市 430000

猜你喜欢

物联网
基于无线组网的智慧公交站点信息系统研究与实践
基于LABVIEW的温室管理系统的研究与设计
论智能油田的发展趋势及必要性
中国或成“物联网”领军者