欢迎来到学术参考网

基于PDA的GIS动态地理信息交互系统架构设计

发布时间:2015-07-13 09:46
摘 要 本文基于Windows Mobile这一嵌入式操作系统,给出了一种PDA上的GIS远程控制和动态交互系统的架构设计,该系统将传统的地图分离成静态元素和动态元素,有效的实现了动态地理信息依据远程命令的实时更新以及动态地理元素之间的协作分析,从而提高了PDA使用人员对复杂的地理环境的适应能力,而且同时保证了通信的安全性和保密性,进而满足了基于PDA的个人导航系统在一些特殊场合的需要.
关键词 移动地理信息系统;WEB 服务;有线对等加密;SQL Mobile

0 引言

移动地理信息系统是GIS在嵌入式的系统基础上面向专业领域的应用拓展,它利用今天计算机领域最前大的发展趋势:移动计算和无线通信技术,改变地理信息的处理方式,并且与地理信息服务紧密联系在一起,是技术、信息、服务的集成。
已有的移动地理信息系统通常基于LBS(Location Based Service)技术,能够给人们基于定位信息的丰富的其他相关信息,此类系统服务全面,但是仍然难以满足所有用户的需要,在一些特殊场合,基于保密通信和安全性的考虑,更需要一种适应于自定义的、可以实时响应控制台的命令的系统,该系统由使用方可以轻松定制,并且具有自定义的保密服务功能。
Windows Mobile是一个开放的移动设备操作系统,同时也是最佳的行业应用平台之一,具有良好的平台扩展性,可以与微软的各种服务器产品结合来构建各种消息方案和移动平台。同时又拥有强大的安全架构支持和远程强制IT策略。Microsoft .NET Compact Framework的出现,又使应用程序具有良好的安全性和可移植性,同时也给开发带来了高效性。
本文针对自定义的保密通信GIS系统的需要提出了一种基于Windows Mobile的实时动态交互系统架构。

1 相关技术简介

1.1 Web Services

Web服务是一个可以用URI来标志的软件系统,它采用XML格式的信息来定义和描述对外的公共接口和绑定,通过标准的HTTP协议来传输数据,可以方便的跨越Intranet或者Internet网段,通过适当的配置还可以使访问轻易的穿透防火墙。由于Web Services通常设计为面向服务的接口,所以只需要向其发送命令来完成某一项服务的请求,就可以很方便地来访问远程服务器上提供的各种封装好的服务,来获取数据或向服务器提交数据。由于Windows Mobile的存储能力有限和它的移动性,往往需要通过访问服务器来获取和同步最新的数据,而在Windows Mobile程序中通过Web Service可以很方便的获取数据和结构化的数据集。

1.2 WEP

WEP(Wired Equivalent Privacy),即有线对等加密,是对在两台设备间无线传输的数据进行加密的方式,用以防止非法用户窃听或侵入无线网络。该技术使用RC4算法来加密数据包,RC4是一个同步流式对称加密系统,由一个密钥流生成算法来生成密钥流,然后与明文进行异或得到秘文,使用相同的密钥流,再对秘文进行一次异或,即可以得到明文信息。由于该算法使用了一种状态数组和密钥调度算法来模仿随即的密钥调用,所以使预测用来加密明文的密钥比较困难,从而保护了密钥。

1.3 SQL Mobile

SQL Mobile是微软公司为Windows CE、Pocket PC等移动设备提供的关系型数据库产品,以前被称作SQL Server CE,SQL Server 2005 Mobile Edition推出时改为 SQL Mobile。
SQL Mobile主要包括设备端与服务器端两个部分。SQL Mobile的设备端是运行于Windows CE设备上的,包括SQL Mobile数据库文件、数据库引擎以及SQL Mobile Client Agent等。其中SQL Mobile数据库是以文件的形式存储在Windows CE设备上的,数据库文件的扩展名为sdf。一个sdf文件中包括一个完整的数据库,其中包含多张数据表和其他数据信息。

1.4

美国Geoframeworks公司基于.net平台的GIS类库,支持桌面和Pocket PC两种运行平台,其中的地图组件可以加载ESRI的Shape标准格式的地图,还支持多种辅助信息图层的加载和显示。

2 系统架构设计方案

2.1 地图模块整体架构

利用的Map组件,可以加载后缀名为.shp和.dbf格式的ESRI标准格式的地图文件,分别生成空间位置图层ShapeLayer和属性信息图层AnnotationLayer。其他辅助信息图层主要有:
经纬网络层(GridLayer):该图层负责给地图加载经纬网络,可以控制网格的疏密程度。
符号标记图层(AdornmentLayer):该图层负责给地图上面的相关位置加载具有一定意义的图标,使得位置的显示更易于用户的理解。
卫星图像图层(ImageLayer):该图层负责将拍摄的卫星图片转换成位图信息并基于给定的坐标表示范围嵌入到指定的地图中,从而实现地图的匹配和配准。
基于的图层创建机制,可以创建自定义图层,其为包含一系列动态的数据元素和对象的动态信息图层组,通过与SQL Mobile进行交互实现图层内建对象的位置和属性的更新,其与静态图层和辅助图层自下而上存在于地图组件中。自定义图层可以克服原地图组件只加载和显示静态图层的缺点,极大的提高了对动态地理对象的处理的灵活性,从而为该系统对动态地理元素之间的协作分析提供了可能。

2.2 动态信息图层组内部架构:

动态信息图层组的内部架构如下图所示:
下面自上而下对动态信息图层组的元素进行分析:
GPSPositionLayer : 基于PDA客户端的GPS位置信息显示图层,可以将GPS接收机中获取的实时的经纬度坐标以图标的形式显示在该图层上,并且当GPS位置信息改变的时候,对该位置的显示进行同步更新。
NetPositionLayer : 当一组人员使用PDA执行任务的时候,PDA之间的信息传递与交互就显得非常重要,该图层的数据通过无线网络传递并且实时更新SQL Mobile的记录,从而获取其他PDA用户的位置信息,并一同显示该图层上面,进而构建了一个动态的网络拓扑结构,PDA使用者可以同时看到自己的同伴的位置与自己的当前位置的空间关系。

DynamicRouteLayer : 动态路线显示图层,该动态路线是一组坐标的顺次连接组成的,由于实际情况中,路线的选择随时会因任务和环境的改变而改变,而路线的描述以图形的显示方式更为准确,控制中心的命令通过无线网络,将新的路线信息更新到PDA的本地数据库,然后由客户端系统负责将图层的内部元素更新。
DynamicAreaLayer : 动态区域显示图层,该动态区域是一组坐标的顺次连接组成的多边形,在实际任务场景中,许多区域存在着不同的含义,而且环境的改变导致任务区域也会改变,与动态路线显示图层的更新原理一样,具有实时性。
DynamicAnalysisLayer : 动态分析显示图层,该图层对动态元素分析例程的输出结果进行显示,以向导的方式给PDA使用人员以提示,动态元素分析例程的分析对象是基于动态图层分析组的活动对象,调用的例程是一些算法函数。

2.3 自定义图层的实现

中的地图组件相当于图层的容器,对于每一类型的图层都是对Layer类继承实现的,Layer类定义了图层这一对象包含的成员变量、属性、方法和事件。图层设计的基本思想就是绘图操作,即根据不同的图层功能设计不同的图形显示方案,绘图的操作主要基于GDI的方法进行完成,以动态路线显示图层为例给出示意代码,动态的实现效果主要是当SQL Mobile的相关记录项的改变时,通过触发器来通知相关的图层,并且实时更新图层内部绘图所用的数据和对象属性:
public class DynamicRouteLayer : Layer
{ //构造函数、图层属性、定义成员变量部分的代码
protected override void OnRender(WorldGraphics g)
{//当地图组件放大和缩小时候,引起图层内部的绘图操作
for (int i = 0; i countSegment;i++)
idLine(g, ng(), segment[i]);
}
private void DrawGridLine(WorldGraphics g, string labelText, Segment line)
{
ne(this._pen, line);//具体绘图函数
}
}

2.4 地图动态元素分析例程的实现

地图动态元素的的分析例程主要进行对地图动态元素进行空间和时间上的分析和预测,然后将结果提交给动态分析显示层,具体流程



其中拓扑分析算法主要进行点线面元素的空间位置关系的分析,时间分析算法主要进行瞬时速度以及目标的存在时间的分析,趋势分析算法基于当前的任务目标以向导的方式给以提示,不同的算法的实现取决于系统的设计需求。这类算法目前都已有比较成熟的实现,这里不在一一详述。

2.5 系统安全性和实时性

由于移动设备的移动特性,其运行的网络首选为无线局域网络,然而无线信号的发送是广播性质的,理论上只要有相同频率的接收器,就能够接收无线信号,这就决定了无线网络要比有线网络需要对于群用户PDA人员,通过系统无线网络配置,使用WEP技术加密数据,在一定程度上可以保证无线传输的安全性,但是由于Web服务通过Internet向外部提供重要的数据,所以在保密级别很高的通信环境下,还要对Web服务建立一套更为安全的访问机制,如对Web服务和PDA客户端进行双向的授权和身份验证,防止非法的指令和访问介入。而且在进行向目的地发送数据的过程中,使用XML加密技术、XML签名技术可以有效保证重要数据的保密性和完整性,从而实现安全通信。由于这些技术有比较成熟的解决策略,且可以灵活的与PDA的GIS客户端程序整合,这里不在具体叙述。
对于一些实时性要求比较严格的场合,控制中心发送指令和PDA终端接收指令之间的时延就要尽可能的减少。考虑到使用Web Services传输过大的数据会比较耗时且带来程序性能上的降低,在PDA访问Web Services需采用异步调用技术,即在单独的线程中进行远程调用,以改善系统的性能和PDA终端的主程序的等待数据的时间,并且每一次只传输有变化的数据和该数据在数据库中的位置信息,由于对于每一层数据在某一个具体的时刻改变的数据量并不是很大,所以可以在很大程度上保证了系统的实时性。

3 结束语

客户端地图随控制台命令的实时更新,基于环境适应算法的地图动态元素交互和基于无线的保密数据通信在PDA设备上面的实现,对移动作业系统有着极其重要的作用。本文由此提出了一种基于WEB服务的Windows Mobile客户端的GIS系统的架构。该架构具有一定的可行性和实用性,能够完成控制命令下的PDA群用户的同步作业。

参考文献

[1]Web Services Description Language (WSDL)[EB/OL].
Help Documents [EB/OL]
Peter Thorsteinson. .NET安全性与密码术[M]. 北京: 清华大学出版社, 2004
刘彦博,胡彦,马骐.Windows Mobile 平台应用与开发 [M]. 北京: 人民邮电出版社, 2006
任福.基于PDA的个人移动导航系统的设计与实现 [D]. 武汉: 武汉大学, 2002
谢荣岳 , 李军 , 吴秋云 , 余理富 .基于PDA移动作业系统的设计[J ]. 兵工自动化, 2005 ,24 (1) :42 - 44

上一篇:一种实现双向认证的动态口令身份认证方案

下一篇:基于JavaServerTM Faces和DAO模式的大型设备采购系统