基于Android平台的北斗和GPS双模在线定位方法

文档序号:9287939阅读:3480来源:国知局
基于Android平台的北斗和GPS双模在线定位方法
【技术领域】
[0001]本发明涉及一种北斗和GPS双模在线定位方法,特别是一种基于Android平台的北斗和GPS双模在线定位方法。
【背景技术】
[0002]卫星定位、导航等技术的研究和探索在国外起源的比较早,在20世纪80年代中期就有相关研究课题了,在国内起步相对比较晚并且发展缓慢,2000年以来,我国第一次成功发射4颗“北斗卫星”以建立第一代北斗定位、导航测试系统。该系统拥有在我国本土和周边其他区域的实时定位、授时和报文以及GPS广域差分等功能,并已经在勘察、通讯、水利、交通、渔业和丛林火灾预防以及国土安全等大部分范畴逐渐展现出明显的效益,尤其在2008年是在我国发生的一些重大事件如汶川地震抢险救灾、雪灾以及具有历史意义的北京奥运会等中北斗系统发挥了强大的功能,起到了很重要的作用。接着在2007年我国开始建设和完善北斗系统,于是推出了功能更为强大的北斗第二代系统,于2012年实现北斗系统覆盖整个亚太地区,如今我国研发的北斗卫星定位、导航系统的空间端由5颗静止轨道卫星和30颗非静止轨道卫星组成,其中可供给两种服务模式,一种开放服务和另一种授权服务(属于第二代系统)。授时精度达到10个ns,测速精度达到0.2米/秒。我们国家正在实施研制的斗极卫星定位系统,已完成十六颗斗极卫星安全的发射到相应的轨道。根据工程项目研发的三步走总体规划,于2020年前后,在功能上实现全球化、大众化,性能上相当稳定的、服务周期长的定位、导航系统。
[0003]我们看到我国自主研发的北斗定位系统有其他三种定位系统不能及的优势,以及广阔的发展前景和市场应用,更重要的是它对我国国土安全等有重大贡献,我们在看到它的优势之后,也认识到它的一些不足。首先现在我们的定位系统有一定的局限性,只能为我国和附近区域供给一些稳定可靠的服务,北斗定位、导航系统覆盖区域只在东经约70° -140°和北玮5° ~55°内。而GPS是覆盖全地球全天候的系统,可以保证在地球任何位置、任何时间能同时观测到6到9颗卫星。同时北斗系统是在赤道上设有2颗同步卫星,卫星的赤道角距约为60°。GPS导航的卫星轨道是在准同步轨道上,绕地球一周需要时间为11小时58分。其次我们国家的第一代定位系统是有一定的依赖性的,再加上系统容量受到限制并且由于定位、导航的设备的操作相对比较难、复杂。

【发明内容】

[0004]本发明要解决的技术问题是:提供一种种基于Android平台的北斗和GPS双模在线定位方法,能够稳定、可靠、精确的进行在线定位。
[0005]解决上述技术问题的技术方案是:一种基于Android平台的北斗和GPS双模在线定位方法,包括能够接受卫星发出的信息的移动定位终端、远端云服务器、移动web网页客户端、android手机客户端,所述的移动定位终端通过Internet与远端云服务器连接,所述的远端云服务器通过Internet分别与移动web网页客户端和android手机客户端连接,所述的移动定位终端为飞思卡尔1.mx6q平台中能获取到定位数据的硬件;具体步骤为:
(1)通过app应用调用Android系统的定位API来发出定位请求,然后Android应用层把请求指令发送给FrameWork层,FrameWork层对应的接口 API获取到指令后,再把请求指令传送给下一层的JNI动态库层,通过调用JNI的接口函数来调用Iinux内核的驱动文件,Iinux内核的驱动文件驱动硬件获取到定位数据;
(2)通过D2030C北斗/GPS双模模块通过卫星定位,获取到原始位置信息和时间,然后通过串口,把数据传送到飞思卡尔1.mx6q平台中,在飞思卡尔1.mx6q平台中运行Android系统,Android系统通过Iinux内核的串口驱动来从串口中读取到位置定位信息,在驱动程序中获取到定位信息后,接着把定位数据信息传给Android系统的JNI动态库层,该JNI动态库层的作用是通过调用Iinux内核驱动文件来和硬件进行交互;
(3)数据传送到Android系统的JNI层后,Android系统的FrameWork层通过调用JNI层的接口,从JNI层中获取到定位数据,然后app应用通过FrameWork层中API接口来获取到定位数据,此时,数据就从最底层的硬件传送到了最上层的软件中,软件就可以对获取到的定位数据进行处理;
(4)在app应用中对定位数据进行处理,先把定位数据进行解析,GPS的定位数据采用的是NMEA数据协议,通过遵守NMEA数据协议把经玮度数据解析出来,然后使用一种叫做JSON的轻量级网络数据协议把经玮度进行封装,打包成一个JSON数据包,接下来再通过调用Android系统的Http接口,并采用POST方法来把JSON数据包发送到远端云服务器中。
[0006](5)通过一个android客户端,通过Http的POST方式,从远端云服务器上把JSON数据格式的定位数据获取下来,通过Android端的百度地图API,来把定位数据中经玮度对应的地理位置显示在百度地图上。
[0007]本发明的进一步技术方案是:远端云服务器为使用ubuntul2.04,使用php语言来搭建实现,并采用mysql数据库来保存数据,当获取到JSON数据包之后,把经玮度数据解析出来,并且保存在mysql中的一张定位数据表中,然后通过调用百度地图的WebserverAPI,把定位数据转换成地址位置,并且在百度地图中显示出来。
[0008]由于采用上述技术方案,本发明之种基于Android平台的北斗和GPS双模在线定位方法,具有以下有益效果:
1.本发明为在底层硬件采用飞思卡尔1.mx6q系列移动平台,在这个平台使用Android系统,来实时接受北斗/GPS双模模块的实时位置信息,同时通过连接wifi/网卡/3G运用HTTP的POST方式将数据传送到由PHP、Mysql和Apache搭建的远端云服务器进行存储。移动客户端需要移动物体的实时位置信息时,系统会主动通过有线与无线网络运用HTTP的GET方式从服务器请求数据,这样移动客户端如web网页客户端和android客户端就可以调用百度地图的API把从服务器获得的经玮度等位置信息刷到百度地图上实时显示,并且有2D、三维和卫星地图几种形式来选择显示。解决了一些偏远地区由于通信基站覆盖少,信息传送难度大等问题,为有需要的人或者企事业单位提供相应的服务。
[0009]2.本发明中用到的android、php、mysql、http、javaScript以及互联网的相关技术都比较成熟,目标明确,开发周期也很短,同时后期维护的次数少并周期也很短,再加上以后系统有很大空间的功能拓展和升级的空间,系统开发成本比较低,客户需求比较大,同时产品的使用均是大众化的。可以创造一定的经济效益和价值。
[0010]3.北斗定位系统我国拥有完全的自主知识产权,不受限于其他国家,北斗定位系统是我国大力扶持的国家项目,发展前景大,北斗定位系统因为是我国自主研发的系统,所以使用成本比GPS低,android系统发展迅速,和android相结合可扩展性高,符合科技发展需要,云服务是当前最主流的企业服务器解决方案,可很大程度的节省服务器运营成本。
【具体实施方式】
[0011]—种基于Android平台的北斗和GPS双模在线定位方法,包括在线定位系统,该系统包括能够接受卫星发出的信息的移动定位终端、远端云服务器、移动web网页客户端、android手机客户端,所述的移动定位终端通过Internet与远端云服务器连接,所述的远端云服务器通过Internet分别与移动web网页客户端和android手机客户端连接,所述的移动定位终端为飞思卡尔1.mx6q平台中能获取到定位数据的硬件。
[0012]在线定位方法的具体步骤为:
(1)通过app应用调用Android系统的定位API来发出定位请求,然后Android应用层把请求指令发送给FrameWork层,FrameWork层对应的接口 API获取到指令后,再把请求指令传送给下一层的JNI动态库层,通过调用JNI的接口函数来调用Iinux内核的驱动文件,Iinux内核的驱动文件驱动硬件获取到定位数据;
(2)通过D2030C北斗/GPS双模模块通过卫星定位,获取到原始位置信息和时间,然后通过串口,把数据传送到飞思卡尔1.mx6q平台中,在飞思卡尔1.mx6q平台中运行Android系统,Android系统通过Iinux内核的串口驱动来从串口中读取到位置定位信息,在驱动程序中获取到定位信息后,接着把定位数据信息传给Android系统的JNI动态库层,该JNI动态库层的作用是通过调用Iinux内核驱动文件来和硬件进行交互;
(3)数据传送到Android系统的JNI层后,Android系统的FrameWork层通过调用JNI层的接口,从JNI层中获取到定位数据,然后app应用通过FrameWork层中API接口来获取到定位数据,此时,数据就从最底层的硬件传送到了最上层的软件中,软件就可以对获取到的定位数据进行处理;
(4)在app应用中对定位数据进行处理,先把定位数据进行解析,GPS的定位数据采用的是NMEA数据协议,通过遵守NMEA数据协议把经玮度数据解析出来,然后使用一种叫做JSON的轻量级网络数据协议把经玮度进行封装,打包成一个JSON数据包,接下来再通过调用Android系统的Http接口,并采用POST方法来把JSON数据包发送到远端云服务器中。
[0013](5)通过一个android客户端,通过Http的POST方式,从远端云服务器上把JSON数据格式的定位数据获取下来,通过Android端的百度地图API,来把定位数据中经玮度对应的地理位置显示在百度地图上。
[0014]远端云服务器为使用ubuntul2.04,使用php语言来搭建实现,并采用mysql数据库来保存数据,当获取到JSON数据包之后,把经玮度数据解析出来,并且保存在mysql中的一张定位数据表中,然后通过调用百度地图的Webserver API,把定位数据转换成地址位置,并且在百度地图中显示出来。
[0015]本实施
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1