基于Android的移动终端GPS测量系统的设计与开发

基于Android的移动终端GPS测量系统的设计与开发

ID:16043128

大小:174.00 KB

页数:7页

时间:2018-08-07

上传者:U-13160
基于Android的移动终端GPS测量系统的设计与开发_第1页
基于Android的移动终端GPS测量系统的设计与开发_第2页
基于Android的移动终端GPS测量系统的设计与开发_第3页
基于Android的移动终端GPS测量系统的设计与开发_第4页
基于Android的移动终端GPS测量系统的设计与开发_第5页
资源描述:

《基于Android的移动终端GPS测量系统的设计与开发》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

基于Android的移动终端GPS测量系统的设计与开发摘要:本文针对手机GPS功能进行移动应用开发,设计并实现了基于Android平台的移动终端GPS测量系统。在分析学生野外测量实习需求的基础上,对系统进行了功能模块划分;在系统的程序模块详细设计中,着重探讨了数据库的设计与地块长度/面积计算方法。测试结果表明,该系统已能替代GPS手持终端,满足野外测量实习的需要。关键词:Android;移动终端;GPS测量1引言第三代移动通讯(3G)技术为移动终端用户带来了更快的数据传输率,也为电信网络与计算机网络的融合提供了支持。随着3G网络的使用,移动终端不仅是通讯网络的终端,也将成为互联网的终端[1]。因此,移动终端的应用和需要的服务将会有很大的发展空间。Google于2007年11月5日推出了基于Linux平台的移动终端系统软件平台——Android,该平台由操作系统、中间件、用户界面和应用软件组成,是首个为移动终端打造的真正开放和完整的移动软件[2],并融合了GPS技术,支持GPS的应用开发。GPS的出现为测量技术带来了一场深刻的技术革命。利用GPS的定位功能,对于任何点状、线状、面状地物,都可以通过GPS的定位功能获取其地理坐标数据,通过地图投影方法,可计算出线状地物的长度,面状地物的面积等。以前学生野外测量实习时,常用的是手持GPS,这是一种专用的测量设备,需要专门购置和携带。而随着智能手机的发展和普及,学生基本上是人手一部,因此在基于Android平台的移动终端上开发GPS测量系统,可使得手机用户随时利用手机进行测量定位,操作方便、便于携带,具有很强的实用性。因此,本文利用智能手机自带的GPS定位功能,通过获取测量点的地理坐标数据,进行点、线、面地物的空间位置测量,通过地图投影方法,计算出线状地物的长度或面状地物的面积及周长,并能够将结果可视化的显示在屏幕上。2系统功能模块划分野外测量实际上包括独立点位测量、线状地物或面状地物的连续测量、测量数据存储、查看、显示与更新、地物面积、长度的计算等。因此,基于Android的GPS测量系统主要功能模块可以划分为:独立点位测量、地物点的动态定位测量、测量结果显示与更新、地物面积(或长度)测量。1)独立点位测量:测量时对独立点逐一定位,获取其地理坐标。其属性信息,如地物名称、所属图层类型、所属图层名称、测量点位置序号等,可事先在室内输入系统。2)地物点的动态定位测量:在线状边界测量时采用,通过设置定位间距(或者定位时间间隔),随着设备的移动每隔设定的间距(或时间)自动采集一次定位数据;-7- 而对于开始点、结束点以及转角点等这些特殊的点位,可通过点击特殊点定位按钮定位获取;用户单击停止定位按钮后,定位过程结束。其相关属性信息,如地物名称、所属图层类型、所属图层名称等可手工输入系统。3)测量结果显示与更新:测量结果存入数据库后,可按一定条件查询查看,结果以列表方式,或图形可视化的方式显示,列表显示顺序与测量数据的创建顺序一致;可以向数据库中添加定位数据记录或者从数据库中删除定位数据记录,并给出更新提示。4)地物长度(或面积)测量:通过地图投影方法,将地物经纬度坐标投影为平面坐标,从而计算出线状地物的长度或者面状地物的面积及周长,并将结果以对话框的形式反馈给用户。3系统详细设计整个系统的功能是通过系统主模块、地物信息输入模块、独立点定位模块、动态定位模块、数据存储、数据查看与更新模块、面积/长度测量模块以及图形显示等程序模块来实现(如图1所示)。1)系统主模块是整个系统的入口。它实现的功能包括显示程序主界面、打开/创建数据库、查看所有图层、删除数据库,查看帮助信息,该模块基于类Welcome来实现。2)地物信息输入模块负责地物属性信息的输入,同时打开独立点定位模块、动态定位模块和增加测量点模块,该模块基于类InputObject来实现。系统主模块(Welcome)地物信息输入(InputObject)独立点定位(StLocate)图层列表(ListLayer)地物列表(ListObject)测量点列表(ListPoint)图形显示(ShowMap)面积/长度计算删除动态定位(DyLocate/DyShowMap))增加测量点(AddPoint)数据存储(DataStorage)数据库图1系统程序模块图-7- 3)系统设计了一个数据存储模块来管理定位数据,它负责创建和打开存放定位数据的存储系统,并向其它模块提供数据访问接口。该模块基于类DataStorage来实现。4)独立点定位模块,获取独立点的GPS绝对定位数据,从中提取经、纬度,并将定位数据保存至数据库。该模块基于类StLocate来实现。5)动态定位模块,完成地块边界的连续测量和特殊点位的定点测量。用户可以选择动态显示测量点经纬度或动态显示地物地理位置来进行动态定位。定位开始后,当GPS设备每移动用户所设的距离(或时间),该模块就会自动获取所在点的经纬度并将其加入到对应地物;同时,用户可根据需要在特殊点位处点击按钮获取其地理数据;最后将该地物保存至数据库。动态定位模块基于类DyLocate或DyShowMap来实现。6)数据查看模块,根据图层名称、地物名称等在数据库中查询记录,并以顺序列表的方式显示给用户。该模块基于类ListLayer、ListObject和ListPoint来实现。7)图形显示模块,对查看的地物以可视化的方式显示其地理分布特征。该模块基于类ShowMap来实现。8)面积/长度测量模块,对查看的地物计算长度和面积。该模块基于类ListObject实现。9)数据更新模块,对查看地物进行数据添加或者某些数据的删除。该模块是由类AddPoint及其他部分来实现的。整个系统程序模块的详细设计中,数据库的设计和长度/面积计算方法设计是最关键的部分,下面对这两个部分进行详细说明。3.1数据库设计本系统使用的是Android平台集成的嵌入式关系型数据库——SQLite数据库,这是一款轻型的数据库,其设计目标是嵌入式应用,目前已在很多嵌入式产品中使用。它占用资源非常的低,在嵌入式设备中,只需要几百K的内存,支持Windows/Linux/Unix等主流的操作系统,同时能够与很多程序语言相结合。和Mysql、PostgreSQL这两款世界著名的开源数据库管理系统相比,它的处理速度比他们都快[3]。在本数据库中创建了三个表Layer、Object和Point,分别用来存储图层记录、地物记录和测量点记录。表Layer与表Object通过字段layer_name连接,一个图层由一个或多个对应类型的地物组成;表Object与表Point通过字段object_name连接,一个地物由一个或多个测量点组成。他们的结构分别如表1、表2、表3所示(表中粗体标识字段为该表的主键):表1表Layer的结构字段说明图层ID图层名图层类型创建时间修改时间字段layer_idlayer_namelayer_typecreate_atupdate_at数据类型integertexttexttexttext表2表Object的结构字段说明地物ID地物名所属图层长度面积字段object_idobject_namelayer_namelengtharea_数据类型integertexttextdoubledouble表3表Point的结构字段说明点ID点名点号经度纬度所属地物字段point_idpoint_namepoint_nojdwdobject_name-7- 数据类型integertexttextdoubledoubletext如下图2所示,本系统抽象出地物类MyObject,据此派生出点状地物类PntObject、线状地物类LObject和面状地物类AObject。MyPoint是由经纬度及其它属性组成的类,三种地物均由一个或多个MyPoint对象组成。数据库方法只须将抽象地物类对象的引用作为参数,便可对不同地物进行统一操作,这样减少了数据库接口方法中参数的个数,其它模块调用数据库方法就变得非常简单,在一定程度上屏蔽了数据库的复杂性,也便于日后维护。抽象地物类还可以用于其它模块。PntObjectLObjectAObjectMyPoint数据库MyObject数据交换1**图2数据操作结构图本数据库的优点在于改进了数据存储方式,数据库不直接操作测量点,只对完整的地物进行操作,避免了对数据的频繁读写,也在一定程度上保证了数据的完整性。3.2长度/面积测量实现原理1)利用地图投影,球面坐标向平面坐标转化通过测量,获得的地物地理数据,是球面坐标下的经纬度值,如果要计算其面积或长度,必须在平面坐标下进行。因此,首先要对测量点的坐标进行投影转换。地图投影采用高斯-克吕格投影,为了减小误差,将投影的中央经线放置在测量区块的中间位置,即计算出该区块所有测量点经度的平均值,作为投影的纵坐标,赤道投影为横坐标构建高斯平面。然后重新遍历一次该地物的所有测量点,利用高斯投影公式将它们的经纬度转化为平面上的坐标[4]。高斯—克吕格正射投影优化公式如下[5]:X=6367452.1328B-(P0-(0.5+(P4+P6L2)L2)L2N)sinB(1)Y=(1+(P3+P5L2)L2)LN²(2)式中:N=(6399596.652-(21565.045-(108.996-0.603cos2B)cos2B)cos2B)cosB(3)P0=(32144.5189-(135.3646-0.7034cos2B)cos2B)cosB(4)P3=(0.3333333+0.0011233cos2B)cos2B-0.1666667(5)P4=(0.25+0.00253cos2B)cos2B-0.04167(6)P5=0.00878-(0.1702-0.20382cos2B)cos2B(7)P6=cos2B(0.167cos2B-0.083)(8)其中,B为测量点的纬度,L为测量点的经度距中央经线的经差,单位均为弧度。-7- 2)长度/面积计算在已知折线各拐点坐标的情况下,可用如下公式快速的求出折线的长度L=(9)地块面积的计算采用梯形面积累加法。其基本思想是在平面直角坐标系中,按多边形顶点顺序依次求出多边形所有边与X轴(或Y轴)组成的梯形面积,然后求其代数和,这个代数和即为多边形面积。例如,对五边形(如右图3所示),其面积计算公式为:图3五边形(阮志成,1978)S=((Xi+1-Xi)(Yi+1+Yi))+(X5-X1)(Y5+Y1)(10)同理,对于任意多边形,假设有n个顶点(Xi,Yi),则该多边形的面积求算公式为:S=((Xi+1-Xi)(Yi+1+Yi))+(Xn-X1)(Yn+Y1)(11)该公式适合各类不规则多边形的面积计算。计算出的多边形面积即为该地块的面积。4系统实现本系统是在JavaDevelopmentKit(JDK)v6.0,AndroidSDK1.0r2以上,在Eclipse集成开发环境中开发实现的。本系统的功能已经基本实现,并初步通过了测试。图4是显示我校14教前草坪面积及长度的界面,图5是足球场地理位置分布图。-7- 图4草坪面积及长度显示结果图5足球场地理位置分布在系统测试过程中,我们与手持GPS进行了测量对比。对同一区块,我们同时采用手持GPS和Android手机进行测量,发现除了手持GPS寻星速度较手机稍快以外,定位精度、长度/面积测量两者大体一致。手持GPS寻星速度较手机稍快,可能是由于其内置较大功率天线的原因。5结论本文针对手机上的GPS功能进行移动应用开发,设计并实现了基于Android平台的移动终端GPS测量系统。在分析野外测量实习需求的基础上,对系统的功能模块进行了划分;在系统的程序模块详细设计中,着重讨论了数据库的设计与地块长度/面积计算方法。最后对本系统与手持GPS进行了测量对比,测试结果表明,该系统已能替代GPS手持终端,完全能满足野外测量实习的需要,在手机普及的情况下,野外测量无需再专门购置设备,使用成本大大降低,且携带方便,可随时进行野外作业。因此,本系统有着广阔的应用前景。本系统下一步计划要扩展的功能是:1)测量数据输出并能上载添加到GIS系统中更新已有的GIS数据;2)将预编辑好的文本文件形式的属性数据读入程序,实现测量地物属性数据的批量录入。参考文献[1]王紫瑶,南俊杰,段紫辉等.SOA核心技术及应用[M].北京:电子工业出版社.2008:1-15.[2]http://baike.baidu.com/view/1241829.htm?fr=ala0_1_1[3]http://baike.baidu.com/view/19310.htm[4]公磊.基于Android的GPS测量系统开发[D].南昌大学硕士学位论文.2008.[5]沈永年,孔庆喻.1980西安坐标系快速高斯投影计算公[J].冶金测绘1994,3(2):38.[6]阮志成.解析法计算多边形面积的改进[J].测绘通报.1978(06):45.-7- TheDesignandDevelopmentofGPSSurveySystemBaseonAndroidPlatformQinChao,JiangLiangJunCaiYongXiang(SchoolofGeoscience,YangtzeUniversity,Jingzhou434023,China)Abstract:Inthispaper,themobileterminalGPSsurveysystembasedonandroidplatformisdesignedandrealized.Thesystemfunctionalmodulesaredesignedaccordingtotheanalysisofstudentdemandsinfieldsurveyingpractice,itfocusesonthedesignofthedatabaseandthemethodofblocklength/areacalculationinthedetaileddesignofsystemprogrammodules.TheresultshowsthatthesystemhasbeenabletosubstituteforGPShandset,anditcanmeettheneedsoffieldsurveyingpractice.KeyWords:Android;MobileTerminal;GPSSurvey-7-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭