终端定位LBS系统设计与实现
- 格式:pdf
- 大小:515.64 KB
- 文档页数:5
基于LBS的定位系统的研究与设计-设计论文基于LBS的定位系统的研究与设计高翔,张成文(兰州文理学院电子信息工程学院,甘肃兰州730000)摘要:LBS的广泛应用带来海量的位置信息数据,如何充分利用这些数据并从中挖掘出隐含其中的知识为决策提供数据支持,已经成为空间数据挖掘技术的重要内容。
本文重点研究了空间数据挖掘中的聚类分析算法,以此提出了基于LBS的定位系统。
该系统分析了DBSCAN和K-means算法,并提出了一种改进算法,实现异常位置检测。
基于上述研究设计实现了基于LBS的定位系统,实现了实时定位查询,时空查询,异常轨迹分析等功能。
关键词:LBS;聚类算法;定位系统中图分类号:TP393文献标识码:A文章编号:1673-260X(2015)03-0009-03 1 引言基于位置的空间信息服务(Location Based Service,LBS)[1]是基于地理信息系统,通过移动计算技术在无线环境下实现资源共享和数据传输而衍生的信息服务。
LBS通过移动终端确定移动用户的实际地理位置,从而提高用户所需要的与位置相关的服务信息。
位置服务技术广泛的应用在民用和军事的诸多方面,为人们的生活提供极大的便利。
随着无线通信技术和GPS技术的发展,基于位置的信息数据呈指数倍增长,海量的信息已经远远超过了人工分析的能力,如何对这些信息进行有效的集成和分析,挖掘出这些空间数据背后隐藏的知识,从中发现出目标的运行规律,然后利用这些规律进行决策,实现决策的科学化合理化。
聚类分析是空间数据挖掘的常用方法,其通过将特征相近的空间数据归结到一个组内,最终根据不同的特征将数据划分为几个组。
聚类分析结果中组与组之间的差别尽可能大,而组内差异尽可能的小。
聚类分析广泛的应用在市场研究,模式识别和图像处理等,本文采用的方法主要涉及到DBSCAN(Density-Based Spatial Clustering of Applications with Noise)[2]和K-means算法[3]。
基于LBS的城市交通导航与服务系统设计与实现城市交通是我们日常生活中不可忽视的一部分。
随着城市化进程的加速,城市交通压力也越来越大。
为了减轻交通拥堵和提高出行效率,基于LBS(位置服务)的城市交通导航与服务系统应运而生。
本文将对这一系统的设计与实现进行探讨。
首先,为了实现基于LBS的城市交通导航与服务系统,我们首先需要建立一个庞大而准确的位置信息数据库。
这个数据库包含了城市各种交通设施的位置、道路信息、公交线路等等。
为此,我们需要与相关部门合作,获取并整理这些数据。
其次,对于城市交通导航系统的设计,我们应该考虑用户的实际需求。
一个好的交通导航系统应该能够提供多种出行方式的比较,包括步行、自行车、公交、驾车等等。
同时,系统还应该考虑用户的个性化需求,比如用户可能希望选择避开拥堵路段、避免转乘、或者优先选择绿色出行方式等等。
因此,我们需要在系统中提供这些选项,并通过智能算法进行路径规划和推荐。
具体来说,我们可以利用深度学习算法将历史出行数据与实时交通数据相结合,预测未来交通状况,从而提供准确的路径规划。
此外,我们还可以引入人工智能技术,对用户的出行习惯和偏好进行学习,从而提供个性化的出行建议。
除了导航功能外,基于LBS的城市交通导航与服务系统还可以提供其他附加功能,比如停车位查询、公交实时到站信息、交通违章查询等等。
这些功能的实现需要与相关部门和企业进行合作,获取相应的数据并提供相应的接口。
另外,为了提高系统的使用便捷性,我们还可以开发对应的手机应用程序。
通过该应用程序,用户可以随时随地获取交通信息,并进行出行规划。
此外,我们还可以利用社交媒体平台和用户评价系统,让用户之间可以分享交通信息和体验,从而提供更加全面和准确的服务。
总之,基于LBS的城市交通导航与服务系统的设计与实现涉及到诸多方面,包括数据获取与整理、路径规划与推荐、用户个性化需求、附加功能的开发、移动应用程序的开发等等。
这是一个复杂而庞大的系统工程,需要政府、企业和技术人员共同努力,才能真正实现智慧城市的目标。
LBS位置服务平台技术方案LBS(Location Based Services)位置服务是一种基于用户位置信息的应用服务,可以提供与地理位置相关的各种服务和功能,例如导航、周边、地理标注等。
LBS位置服务平台技术方案是指为了实现LBS服务,所在构建的技术方案,下面将介绍一个LBS位置服务平台的技术方案。
一、系统架构设计1.用户端:包括智能手机、平板电脑等终端设备,用于接收和发送位置信息。
2.定位子系统:负责获取用户位置信息,可以采用GPS、WiFi定位、基站定位等多种方式。
3.地理服务子系统:负责提供地图数据和地理相关的服务,例如地理标记、查找周边POI(point of interest)、路径规划等。
4.数据存储子系统:负责存储和管理用户位置信息、地图数据等。
5.业务逻辑子系统:负责处理用户请求,并调用其他子系统提供相应的服务。
6.安全子系统:负责保护用户位置信息的安全性和隐私。
二、定位技术选择LBS位置服务平台需要获取用户的位置信息,一种常见的方式是使用GPS定位,但是在室内或者城市峡谷等无法获取GPS信号的地方,需要采用其他定位技术,例如WiFi定位、基站定位等。
需要根据具体的场景选择合适的定位技术。
三、地图数据选择地图数据是LBS位置服务平台重要的基础数据,可以采用开源地图数据,例如OpenStreetMap,也可以使用商业地图服务提供商的地图数据,例如百度地图、高德地图等。
需要根据具体的需求和预算选择合适的地图数据。
四、开发平台和工具选择为了开发和实现LBS位置服务平台,需要选择合适的开发平台和工具。
常见的开发平台包括iOS平台、Android平台等。
工具方面可以使用开源工具,例如OpenLayers、Leaflet等,也可以使用商业地图服务提供商提供的开发工具。
五、数据存储和处理LBS位置服务平台需要存储和管理海量的用户位置数据、地图数据等。
可以采用分布式数据库进行存储和处理,例如Hadoop、Cassandra等。
LBS位置服务平台技术方案1000字LBS(基于位置的服务)已成为移动互联网市场中的一项重要服务,其准确定位和丰富多样的服务场景,为用户提供了更多的无缝体验,同时也为企业带来了更好的商业机会。
如今,LBS平台的发展已成为了移动互联网中的一个重要部分,下面是一份简短的LBS位置服务平台技术方案。
1. 系统架构设计基于广义架构的LBS系统,可以划分为5个层次,包括应用层、服务层、平台层、数据层和用户层。
其中,应用层包含各种LBS应用程序以及与其他应用程序的接口。
服务层提供LBS功能的实现服务,可以通过多服务架构的应用程序接口(API)进行调用。
平台层提供LBS服务所需要的基础设施,包括位置服务平台、环境传感器平台、支持软件平台、网络平台以及物联网平台。
数据层存储位置信息、地理信息以及用户数据等相关信息。
用户层则包括所有LBS系统的用户,包括个人和企业用户。
2. 技术实现方案(1)位置信息采集:利用多种技术手段采集位置信息,包括LBS基站定位、GPS定位、WIFI定位以及蓝牙低功耗(BLE)定位等。
(2)位置信息处理:利用大数据技术,对采集到的位置信息进行分析、处理和挖掘,并通过算法优化以提高定位精度。
(3)LBS服务API:通过RESTfulAPI等接口供开发者调用,包括地理位置信息服务API、路线规划与导航API、POI搜索API等。
(4)应用程序开发:通过Android、iOS等平台,开发各种LBS应用程序,并接入后端LBS服务。
(5)数据中心:提供高可用性、大容量的数据存储、处理、分发和查询服务,包括面向对象的数据库等。
3. 安全保障方案(1)程序和数据安全:采用HTTPS等技术加密传输,防止恶意攻击和黑客入侵。
(2)标准规范:遵循LBS产业标准,制定数据管理、服务接口、API使用规范等。
(3)权限管理:采用OAuth等用户授权协议,规范用户授权和数据访问。
(4)隐私保护:保护用户隐私,不泄露用户位置信息和个人隐私。
(总第79期) Journal of Zhangzhou Normal University(Nat. Sci.)General No. 79 文章编号:1008-7826(2013)01-0040-05移动LBS定位精度测试系统的实现及性能提升方案陈文建1 , 陈雪云2(1.中国移动通信集团福建有限公司, 福建福州 350108; 2.龙岩学院数学与计算机科学学院, 福建龙岩 364021)摘 要:本文通过“移动LBS定位精度测试系统” 这一项目实例, 介绍了项目背景、系统功能和实现思路,并分析了软件设计框架对系统性能的影响, 给出了性能提升的具体解决方案.关键字:LBS ; GPRS ; 软件架构 ; 系统性能中图分类号:TP393 文献标识码: AThe Realization of Mobile LBS Positioning Accuracy Measurement System and its Performance Enhancement ProgramsCHEN Wen-jian1,CHEN Xue-yun2(1.China Mobile Group Fujian Company Limited,FuZhou,350108, China; 2. School of Mathematics and Computer Science,Longyan University, Longyan 364012, China)Abstract: Through the development of “mobile LBS positioning accuracy test system”, the paper describes the project background, system functions and realization of ideas.It also analyzes the influence of software framework to system performance and gives the specific solutions of enhancing the system performance.Key words: LBS; GPRS; software architecture; system performance无线定位业务是移动通信网提供的一种增值业务,是位置业务(Location-Based Services,LBS)中的一种,其基本原理是:根据用户所当前所在及周边的移动通信基站的ID号、信号强度等信息,结合基站的坐标,采用三角公式等算法推算出用户的经纬度位置,并通过移动短信、GPRS无线数据通信网络等将定位结果提供给移动用户本人或应用系统,从而实现各种与位置相关的业务(如车辆定位、物流管理、导航等).从移动LBS原理可知,移动基站越密集、定位精度越高,同时LBS定位算法的优劣也会影响LBS定位精度.目前移动LBS定位系统,虽已在车辆定位、手机导航、抢险搜救、刑事技术侦查等方面得到了较为充分的应用,但存在定位精度不高和定位成功率不稳定的情况,另一方面,移动公司却没有合适的测试工具对LBS系统的定位精度进行定量分析,无法通过数据统计方法指导LBS定位算法的改进和优化工作.基于上述原因,本文设计了一种基于智能手机的移动LBS定位精度测试系统.1 系统实现因全球卫星定位系统(GPS)是目前精度最高的民用系统,故系统的目标是以GPS定位结果(即经纬度)为基准,将移动LBS定位结果和GPS的定位结果进行比较(如表1所示). 通过大量、不同地点的测试统计数据,得到移动LBS系统的平均定位精度、标准方差等结果,便于用数据统计方法指导LBS定位算法的改进和优化工作.收稿日期: 2012-08-16作者简介: 陈文建(1978-), 男, 福建省漳平市人, 工程师.表1 LBS 定位精度测试记录表GPS 定位结果 LBS 定位结果 测试时间GPS 经度GPS 纬度 LBS 经度 LBS 纬度 LBS 精度(误差,单位:米) 11:18:29 119.3 26.025 119.27 26.028 1128.926 11:18:35 119.3 26.025 119.29 26.028 1122.9112 …… …… …… …… …… …… 11:18:40 119.3 26.025 119.3 26.032 815.0303 11:18:46119.326.025119.326.032813.8473同时考虑到随着微电子技术和软件技术的发展,当前的手机除移动性外,还具备了智能化、多功能高度集成的特点. 例如当前市售的android/windows 等智能手机,除传统的语音通信功能外,还具备了无线数据通信、GPS 定位等功能,并允许用户自行开发安装软件进行功能扩展.因此,系统采用智能手机为测试终端,在智能手机上开发测试软件,周期性地进行GPS 定位和LBS 定位,这样测试人员携带手机在运动状态下进行测试,即可收集到行动路径上一系列LBS 定位和GPS 定位结果;最后,LBS 定位结果和GPS 定位结果通过GPRS 无线网络将定位结果上报给系统服务器,在服务器上完成后期数据分析工作(如图2所示).图1 移动LBS 定位原理 图2 系统基本结构框图1.1 GPS 定位流程智能手机上的GPS 定位流程比较简单,以Windows Mobile 智能手机为例,只需在测试软件启动时用GPSOpenDevice函数启动GPS 模块,之后便可随时调用GPSGetPosition 函数获得手机当前的经纬度等信息,在测试软件可通过GPSCloseDevice 函数关闭GPS 模块减少手机耗电.1.2 LBS 定位流程定位智能手机将手机号码(MSISDN )按一定的数据格式打包后,形成LBS 定位请求(LBSRequest )数据包,经GPRS 网络发送到移动LBS 定位系统; LBS 系统完成定位后,将LBS 定位结果打包成LBS 定位响应(LBSResponse )数据包回送给手机.1.3 精度比较算法因LBS 定位和GPS 定位时间点不可能完全一致(例如,GPS 定位时刻为0秒、3秒、6秒,而LBS 定位时刻为2秒、5秒、8秒…),而测试过程中智能手机终端有可能处于移动状态中,故不能直接计算LBS 定位精度.为消除LBS 定位和GPS 定位时差对定位精度分析的影响, 系统通过线性换算的方法来进行LBS 定GPRS GPRS GPS卫星系统服务器移动LBS 系统智能手机(A)GPS定位请求(D )LBS 定位结果(C)LBS 定位请求(B)GPS定位结果(E )LBS 定位结果(F )GPS 定位结果位精度计算,即,对任一LBS 定位结果,在GPS 定位结果集中找到LBS 定位时刻最接近的两个GPS 定位结果,并假设在这两个GPS 定位时间点之间,手机位于直线均速运动状态,这样,提高GPS 定位频率,就可以保证任一LBS 定位、均可找到前后两个时间间隔足够短的GPS 定位结果,通过时间线性换算方法估算出该LBS 定位时刻对应的GPS 坐标.设(Xb , Yb )为LBS 定位结果经纬度坐标,(Xg, Yg)为用时间线性换算方法估算出的GPS 坐标,根据球面距离计算公式,则本次LBS 的定位精度误差为:Distance= Radius * acos(sin(Yg)*sin(Yb) + cos(Yg)*cos(Yb)*cos(Xg - Xb))式中, Distance 为LBS 定位和GPS 定位结果的地球球面最短弧线距离,Radius 为地球半径.2 性能提升方案2.1 性能分析系统投入应用后,基本上达到了预期目标. 但用户反映,系统在进行测试时,GPS 定位的最高测试频率可达到每分钟60次,而LBS 定位的最高的测试频率只能达到每分钟5次,在时速60km 的车辆里随车沿路进行移动测试测试时,每200米才能得到一个LBS 和GPS 比对结果,而若要得到较为密集的测试结果,则只能在低速运动环境下进行测试,效率很低.经测试分析,问题主要出现在智能手机和LBS 系统通信环节上:受移动通信网络响应时延影响,智能手机通过GPRS 向LBS 系统提交定位请求包或接收定位响应包时,传输时延很大,造成单次LBS 定位时延长达10秒以上. 因此,若要提高系统的最大测试频率,应从减少GPRS 数据通信次数优化着手.2.2 优化措施2.2.1 优化前,智能手机周期性通过GPRS 网络直接向移动LBS 系统提交定位请求包和接收LBS 定位响应数据包,而实际上LBS 定位请求数据包的内容只和手机号码(MSISDN )有关,同一部手机每次提交的LBS 定位请求包的内容其实是一模一样的. 从而,本文设计了如下的性能提升优化方案:智能手机不再直接通过GPRS 和移动LBS 系统进行通信,而是通过系统服务器代理转发,即在系统服务器和移动LBS 系统间增加有线网络连接,系统服务器除了用于数据存贮分析功能外,还充当了智能手机和移动LBS 系统的通信代理角色(如图3).图3 优化后的系统结构图智能手机仅在测试启动时通过GPRS 网络发送一个“启动测试”数据包给系统服务器, 该数据包里包括了智能手机的号码(MSISDN )和期望的LBS 测试周期;在测试结束时,智能手机通过GPRS 网络发送一个“停止测试”数据包给系统服务器.系统服务器接收收到“启动测试包”后,根据手机号码构造LBS 定位请求包,并按“启动测试”数据包中指GPRSGPS卫星系统服务器移动智能手机(A)GPS定位请求(G)GPS 定位结果(F )LBS 定位结果(C)手机号码定的LBS测试周期、通过有线网络向移动LBS系统提交LBS定位请求数据包(见图3中的数据流D),并接收解析保存LBS定位结果,直到接收到“停止测试”的指令为止.2.2.2 优化前,GPS定位任务和LBS定位任务均由智能手机负责,改变构架后,GPS定位任务依旧由智能手机执行,LBS定位任务则改由系统服务器自动执行,无需在智能手机和LBS服务器之间通过GPRS 交互数据.为进一步减少GPRS通信次数,本文还引入“数据缓存--定期交互”机制:智能手机每完成一次GPS定位或系统服务器每接收到一个LBS定位结果包,不再像优化前直接将结果转发给系统服务器或智能手机,而是将结果保存在智能手机或系统服务器的内存中缓存起来,待收集满一定数量的GPS和LBS定位结果,再通过GPRS网络在智能手机和系统服务器之间交互GPS和LBS定位结果数据.2.2.3 优化效果如上,引入了“LBS通信代理”和“数据缓存--定期交互”思路后,智能手机无需每完成一次LBS定位即和移动LBS系统进行一次GPRS通信,而只需在测试启动和结束时通和系统服务器进行一次GPRS通信,并定期和系统服务器交互数据,从而,极大地减少了GPRS通信次数. 实测表明,优化后系统最高测试次数可达到40次/分钟,远高于优化前的5次/分钟.同时,优化前,数据包传送易受GPRS网络质量影响,当GPRS网络不可用时,会造成LBS定位无法进行测试中断、或造成数据上报失败现象;优化后,系统测试过程中即便发生GPRS网络不可用情况,只会造成数据交互滞后,不影响测试工作的进行,有效提高了系统的健壮性.3 系统应用情况和总结图4:系统在智能手机上的运行界面合理的系统架构和算法,是信息化系统成败的关键:优化前后,在不增加任务系统硬件资源的情况下系统的最高测试频率从每分钟5次提升到40次,性能提升了8倍,而且稳定性得到了提高.系统采用智能手机为测试终端,和其它类似的车载测试产品相比,具有成本低、体积小、易携带、应用方便等特点,目前已在福建移动公司经过大量的测试应用,完全达到了预期的设计目的,实现了LBS 定位精度的定量分析和LBS定位轨迹图形化展示的目标. 应用本系统,通过海量的测试,有助于地直观发现移动LBS定位误差偏大和定位失败现在的问题原因,完善LBS定位系统的算法.参考文献:[1] 罗文兴. 移动通信技术[M]. 北京: 机械工业出版社, 2010.[2] 刘彦博. Windows Mobile平台应用与开发[M]. 北京: 人民邮电出版社, 2006.[3] 高海辉. 基于LBS的车辆监控系统实现及关键技术研究[J]. 电信科学, 2009, (8): 67-71.[4] 曾勇. 移动LBS系统的实现[M]. 成都: 电子科技大学, 2004. [责任编辑: 林宝德]。
面向汽车定位服务的LBS技术系统设计随着科技的不断发展,汽车行业也在不断地进行着变革。
在汽车领域中,LBS (Location-Based Services)逐渐成为了重要的一环。
随着人们对出行安全、便捷和智能化的渴求不断加强,LBS技术系统成为了汽车定位服务的有力支撑。
本文将探讨面向汽车定位服务的LBS技术系统设计。
文章将按照以下的方式分别进行论述:LBS技术系统的结构框架、算法设计以及实现方法。
LBS技术系统的结构框架LBS技术系统的结构框架主要包含了GSM模块、GPS模块、数据传输模块、后台服务器等核心的模块。
首先,GSM模块和GPS模块是数据采集的核心,GSM模块主要用于发送控制指令和数据,GPS模块主要用于获取GPS信息,并提供较高的定位精度,两者协同可实现车辆定位。
其次,数据传输模块主要用于将嵌入式系统采集到的数据传输到后台服务器进行处理。
最后,后台服务器主要用于数据存储和数据分析,以实现对车辆信息的基准数据存储和高效的数据分析。
LBS技术系统的算法设计LBS技术系统的算法设计是整个技术系统中的重要部分。
主要包括公共交通工具路径匹配算法、车辆消失算法以及路网拓扑构建算法等。
首先,公共交通工具路径匹配算法主要是匹配GPS定位数据和公共交通工具路径信息,以实现出行方向的判断和明确路线。
其次,车辆消失算法主要是对于长时间无法与车辆进行通讯时的车辆消失事件进行处理,防止在实际行驶过程中发生严重错误。
最后,路网拓扑构建算法主要是为了提高数据处理的效率和精确度,为数据分析提供较为精确的基础数据。
LBS技术系统的实现方法LBS技术系统的实现方法主要是指嵌入式系统的集成实现和服务端软件的编写实现。
首先,嵌入式系统的集成是指需要将GPS模块、GSM模块和数据传输模块进行一体化集成,同时对于集成获得的数据进行处理和分析,以实现对车辆定位的掌握和预测。
其次,服务端软件的编写实现主要是需要考虑到后台JAVA Web应用程序的编写以及前台Web页面的设计,实现车辆的追踪、轨迹回放和车辆监控等功能。
LBS导航认知地图服务系统设计与实现
LBS导航认知地图服务系统设计与实现
科技发展改变了电子地图制作和使用环境.本文在分析传统大数据量地图形式在LBS中的应用缺陷后,提出了符合用户需求和移动终端条件的认知地图可视化方案,这种不同于传统制图综合原则制作的认知地图能有效缓解目前在LBS应用中存在的地图数据与屏幕大小的矛盾,适应了移动环境下用户的多行为状态和终端硬件特点.
作者:刘召芹谢彩香林宗坚姚春卉 LIU Zhao-qin XIE Cai-xiang LIN Zong-jian YAO Chun-hui 作者单位:刘召芹,LIU Zhao-qin(山东科技大学,地球信息科学与工程学院,山东青岛,266510;中国测绘科学研究院,北京,100039)
谢彩香,XIE Cai-xiang(中国矿业大学,环境与测绘学院,江苏徐州,221008)
林宗坚,LIN Zong-jian(中国测绘科学研究院,北京,100039)
姚春卉,YAO Chun-hui(山东科技大学,地球信息科学与工程学院,山东青岛,266510)
刊名:测绘科学ISTIC PKU英文刊名:SCIENCE OF SURVEYING AND MAPPING 年,卷(期):2007 32(2) 分类号:P208 P285 关键词:导航认知 LBS 制图综合路线简化认知地图。
DOI:CNKI:11-4415/P.20101130.1621.040 网络出版时间:2010-11-30 16:21网络出版地址:/kcms/detail/11.4415.p.20101130.1621.040.html终端定位LBS系统设计与实现徐辛超①,徐爱功①,苏丽娟②(①辽宁工程技术大学测绘与地理科学学院,辽宁 阜新123000;②北京交通大学土木建筑工程学院,北京 100044)【摘 要】本文首先分析了终端定位LBS系统的各个组成部分,研究了VC下开发MapX的方法,对最短路径算法及单片机控制、GSM模块开发等关键技术进行了详细介绍;然后结合SR-92GPS模块、西门子MC39i GSM模块,采用C8051F340双串口单片机最终设计出系统的移动终端;并以MapX为GIS平台实现了具备位置查询、要素信息服务、最短路径服务、客户轨迹回放等功能的系统平台。
【关键词】MapX;GPS;GSM模块;LBS【中图分类号】P208 【文献标识码】A 【文章编号】1009-2307(2011)03- -Design and implementation of terminal location LBS systemAbstract:The paper firstly analyzed the components of the terminal location LBS system, developed MapX under VC environment, and described some key technologies in detail,such as Shortest PathAlgorithm、MCU control, GSM Module Development; then achieved the mobile terminal which wasdesigned by C8051F340 MCU combined with SR-92GPS module and Siemens MC39i; finally the systemplatform which realized some functions based on MapX, such as Location Search、Information ElementsService, Shortest Path Service and Customer Track Playback.Key words: MapX;GPS;GSM module;LBSXU Xin-chao①,XU Ai-gong①,SU Li-juan②(①School of Geomatics, Liaoning Technical University, Liaoning Fuxin 123000,China; ②School of Civil Engineering, Beijing Jiaotong University, Beijing100044,China)1 引言人们的日常生活大部分都与位置有关,位置信息服务也将随着人们生活质量的提高而成为一个非常有价值的产业。
位置信息服务简称LBS,它几乎可以涵盖我们日常生活的方方面面,如:监控、调度、防卫、导航、旅游等等。
位置信息服务的产业化必将为社会带来更多的效益。
LBS于1996年始于美国,我国也于2001年以后开始了移动定位服务。
它是指通过定位终端与无线网络配合,获得用户实际位置信息,在电子地图平台支持下,利用这些信息提供一系列增值服务[1]。
按照定位模式信息服务可以分为网络定位、终端定位和混合定位三种模式[2]。
基于终端定位技术主要是利用GPS全球定位系统 ,由终端接收 GPS卫星的信号获得相应的位置信息。
它涉及到移动定位、无线通信技术、互联网技术、地理信息系统、数据库等诸多领域[3]。
随着近年来GPS技术的发展,移动定位时间越来越短,精度也越来越高;地理信息系统经过近年的发展已经广泛应用到国民生产的各个领域;无线通信技术也从2G发展到2.5G,到2.75G、如今的3G;计算机技术的飞速发展也带来了互联网、数据库等技术的飞跃。
这些行业的发展都为移动位置服务提供了更好的基础。
这也必将引领我国的移动位置信息服务进入高速发展期。
即将到来的3G时代也将为移动位置信息服务创造更好的发展空间。
2 系统设计基于MapX的终端定位LBS系统集成了GPS、GIS、GSM等高新技术,可以为客户提供位置信息、最短路径信息、周边信息等多种服务。
系统主要由客户的移动终端和服务中心平台组成。
用户可通过该移动终端向服务中心发送各种服务请求,而服务中心平台主要负责对客户的请求进行判断、分析、综合,最终将服务信息发送给客户。
系统基本机构如图1。
图1 系统基本机构移动终端是由GPS 模块、GSM 模块和C8051F340单片机三大部分组成。
其中GPS 模块负责确定用户位置;GSM 模块用于用户向服务中心发送请求和接受服务中心的反馈信息。
C8051F340单片机主要负责判断用户需求的服务类型,并将其发送给GSM 模块。
此外,单片机还负责处理服务中心的服务信息,并将这些信息反馈给用户。
服务中心GIS 平台基于MapX 进行开发。
MapX 控件是MapInfo 公司提供的二次开发控件,是一个基于ActiveX (OCX)技术的可编程的地图化组件,具有强大的图形显示与属性相关功能[4]。
系统以VC 为开发平台,以MapX 控件为图形平台,调用外部串口开发类CserialPort 为通信平台,开发研制了具有位置查询、周边信息查询查询、最优路径分析等功能的 GIS 平台。
当用户发出请求时,移动终端首先判断用户的请求的服务种类,然后向服务平台发出服务请求。
请求通过无线网络最终传送给服务中心平台。
服务中心平台首先进行服务种类的判断,然后从用户请求中提取出位置信息,然后通过MapX 平台进行GIS 处理,如:进行最短路径分析、周边重要地物信息以及其他服务等,然后将分析后的结果综合成为服务信息最终发送给移动终端。
用户可以通过移动终端的液晶显示得到服务平台的反馈信息。
3 关键技术分析系统主要分为用户移动终端和服务中心GIS 平台,其中包括的关键技术包括MapX 组件开发、最短路径分析和C8051F340程序控制三大部分。
3.1 MapX组件开发MapX 是MapInfo 公司开发用来做地图化工作的 OCX 控件[5]。
用它来将地图化功能嵌入到新的和现有的应用中具有开发周期短、成本低的特点。
在进行开发的过程中必须首先创建一个地图MapX 对象,该对象位于程序的顶部,Fields 、Features 、Selection 等都下属于它。
通过这些对象的属性和方法其进行修改,实现对地图的操作。
但在创建CMapXPoints CMapXRectangle 等对象后需要调用CreateDispatch 方法,将IDispatch 接口动态封装后对其进行操作。
此外在动态封装过程中,参数应用GetClsid 代替传给CreateDispatch 的字符串,增加程序的可移植性。
通过这样的方法实现对地图的修改。
在MapX 开发过程中必须对地图的坐标系统和投影进行设置才可以使地图正确显示,从而进行下一步的GIS 分析。
坐标系统的设置可通过操作CoordSys 对象来获得当前地图的坐标系统信息。
重新设置坐标系统需要先创建一个CMapXCoordSys 对象,然后给该对象赋值,最后通过SetNumericCoordSys 方法进行修改。
鹰眼图和底图必须采用同一坐标系统。
具体参数见图2。
图2 坐标系统设置3.2 最短路径分析现有的最短路径算法有许多,其中Dijkstra 算法由于能适应网络拓扑的变化,性能稳定,因而在计算机网络拓扑路径选择以及GIS 中得到广泛的应用[6]。
但传统的Dijkstra 算法采用邻接矩阵存储网络拓扑结构,需要(N×N)的存储空间,随着节点数N的增大,其计算效率和存储效率越低。
系统在对传统Dijkstra 算法分析的基础上,对其进行了优化。
在更新最短路径值与选择最短路径值最小的节点时,仅仅涉及到节点的邻居集合及已标识集合中所有节点的邻居集合与已标识集合的差集,其运行时间取决于转接点的邻居集合的元素数量多少(而该数量值往往小于未标识集合中的元素个数)。
当网络拓扑结构图具有的节点数N较大且其关联矩阵为一个稀疏矩阵时,相对传统Dijkstra 算法,优化算法大大减少了计算次数与比较次数,提高了运算速度。
3.3 C8051F340程序控制1)串口控制C8051F340有两个串口,其中UART1总是被分配到P0.4和P0.5两个端口,而要使UART1正常工作还需要将端口交叉开关寄存器XBR0值设置为0X01。
其他所有未被交叉开关分配的引脚和未被模拟外设使用的端口引脚都可以用作串口0。
将端口0输出寄存器的值设为0X01,端口交叉开关寄存器XBR1值设为0X01。
再将P0寄存器设置后串口0才可正常工作。
UART1的优先级在系统中断中处于最高级[7]。
在系统工作的时候需要两个串口配合工作才可以使系统高效的运行。
由于移动终端始终处于待命状态,所以GSM模块始终保持在工作状态,一旦收到指令首先进行服务类型判断,然后将服务请求从GSM模块发送出去。
所以将短信模块与优先级最高的串口1相连接,保证请求指令在第一时间发出。
在C8051F340中有1024字节的片内XRAM被用作串口0的FIFO空间,该空间可以用于输入和输出的缓存。
在有新指令提示的时候,通常收到的指令都要大于1024个字节,因此FIFO空间会溢出,在指令更新时需要将串口0重新初始化。
否则,新指令会处于溢出区域,SBUF0在读取的时候读取不到新的指令,造成新的服务信息收不到的严重错误。
2)GSM模块控制移动终端的数据无线传输采用了SMS短消息方式,主要是C8051F340通过串口对GSM模块进行控制。
单片机首先判断用户需要的服务类型,然后将用户的请求信息和GPS模块的位置信息同时编译成相应的A T指令并将这些指令从串口1发送给GSM模块,从而达到对GSM模块的控制[8]。
常用A T指令及其功能见表1。
表1 常用AT指令指令功能A T 确定GSM模块是否连接好A TE0 命令不回显AT+CPMS 优先信息存储,定义用来读写服务信息的存储区域A T+CMGF 优先信息格式,有TEXT 方式和PDU 方式A T+CMGD 删除短信息。
删除一个或多个信息A T+CMGS 发送短信息A T+CMGR 从+CPMS 命令设定的存储器读取服务信息A T+CNMI 新信息指示,选择如何从网络上接收服务信息4 系统的实现与应用在综合考虑了各种因素之后,实现了结合GPS、C8051F340、GSM、MapX的终端定位LBS系统。