专利名称:卫星定位数据的分享系统及其方法
技术领域:
本发明是有关一种全球定位系统(Global Positioning System),特别是一种可 以将卫星定位数据分享给多个应用装置或应用模块的卫星定位数据分享系统及其方法。
背景技术:
全球定位系统(Global Positioning SyStem,GPS)最初是由美国国防部所发展完 成的一种定位技术,初期只使用于军事用途,如今则已普遍应用于商业用途。GPS系统包括 太空中的24颗GPS卫星;地面上的1个主控站、3个资料注入站和5个监测站及客户端的 卫星定位讯号接收器(GPS receiver),一般简称GPS接收器。一般商业用途的GPS接收器,最常见的就是供车辆导航使用的GPS接收器,这种 GPS接收器大部份皆透过串行端口(Serial Port)又称COM Port来传送卫星定位数据,卫 星定位数据在进行通讯传输时最普遍使用的通讯协议是NMEA (例如NMEA-0183协议)。客户 端的应用装置如PDA或是导航装置,透过串行端口连接GPS接收器获得卫星定位数据(如 NMEA Data或是SiRFBinary Data)再透过解析模块,就能得到GPS接收器所在位置的地理 数据。但是因为串行端口的限制,GPS接收器所传送的卫星定位数据无法同时供给两个或 以上的应用装置或应用模块来利用。目前已有软件透过建立虚拟串行端口(Virtual Serial Port)的方法,解决此问 题。它以类似连通管(software pipe)的原理,将卫星定位数据直接导入、导出,使得不同的 应用装置或应用模块都能获得卫星定位数据,但是这种利用方法对于客户端的应用装置或 应用模块发出的GPS命令(GPS Command)并未作任何适当的处里而直接传入GPS接收器, 容易造成其它共享此连通管的应用装置或应用模块的混乱。在中国台湾已公开的200807009「一种GPS卫星定位系统及方法」,其中揭露了一 种GPS卫星定位系统及方法,其包括有至少一受控端、一服务器端、以及至少一使用端。受 控端利用一 GPS接收模块接收卫星之坐标数据,并由一运算控制模块将卫星坐标数据借由 一无线传输模块发送至邻近之一基站,且透过所属之ISP (Internet Service Provider)技 术人员将卫星坐标数据传送至服务器端加以储存。而使用端则利用无线传输模块连结至服 务器端,从服务器端下载受控端的卫星坐标数据至使用端之一逻辑控制单元内,并透过一 虚拟连接端口模块之虚拟COM端口(串行端口),使其卫星坐标数据可被GIS (Geographic Information System)图资引擎模块所接受之COM端口格式,并加以定位成坐标图资,藉由 一运算控制模块将其指定之该受控端坐标图资呈现于该使用端之显示模块上。其中虽然利 用虚拟串行端口将卫星坐标数据传送给GIS图资引擎模块使用,但是就使用端而言仍然只 有单一个GIS图资引擎模块能使用卫星坐标数据,仍然无法同时提供卫星坐标数据给两个 或以上的应用装置或应用模块来利用。除此之外,前述的习知技术也不提供不同格式的卫 星定位数据转换服务,例如两个应用装置或应用模块分别需要不同格式的卫星定位数据, 例如NMEA,SiRF Binary,习知的技术就无法同时服务分别使用这两种不同格式之卫星定 位数据的应用装置或应用模块。
发明内容
本发明的主要目的在提供一种卫星定位数据分享系统,用以将卫星定位数据提供 给多个客户端(例如多个应用装置或应用模块)利用。为达上述目的,本发明揭露的卫星定位数据分享系统的较佳实施例,包括有一卫星定位讯号接收器(GPS receiver),接收来自卫星的原始卫星定位数据(Raw GPS Protocol Data);一卫星定位数据服务器(GPS Server),具有真实串行端口可与卫星定位讯号接收 器建立通讯,并取得原始卫星定位数据(NMEA,SiRF Binary,Other…),和一通讯接口 ;一服务应用模块,设于卫星定位数据服务器,服务应用模块包含一卫星定位数据 解析模块,可以对取得的原始卫星定位数据进行解析;和基于TCP/IP的多线程通讯模块, 服务应用模块可以透过卫星定位数据服务器的通讯接口提供基于TCP/IP传输协议的通讯 服务,用以服务来自多个客户端的服务请求和提供解析后的卫星定位数据;和一虚拟串行端口驱动模块(Virtual Port Driver),虚拟串行端口驱动模块可提 供数个虚拟串行端口(virtual COM port, VirCOM)供多个客户端建立通讯连接,每一个虚 拟串行端口可与卫星定位数据服务应用模块通讯;因此,多个客户端能分别透过虚拟串行 端口和服务应用模块通讯,进而获取服务应用模块所提供的卫星定位数据。较佳的,本发明所述的卫星定位数据分享系统还具有一卫星定位数据转换模块, 可以接受多个客户端的服务请求,而将某一卫星定位数据格式转换为另一种卫星定位数据 格式,其不仅可以将卫星定位数据提供给多个客户端应用,而且能提供格式转换服务,可以 接受多个客户端提出的服务请求,从而提供不同格式的卫星定位数据。此外,本发明还揭露了一种卫星定位数据的分享方法,包括A.取得来自卫星的原始卫星定位数据(Raw GPS Protocol Data);B.提供若干个虚拟串行端口(virtual COM port,VirC0M)供多个客户端连接,并 取得来自该多个客户端的服务请求;C.运用一服务应用模块解析该原始卫星定位数据,提供卫星定位数据的解析的服 务;D.将来自该多个客户端所提出的卫星定位数据解析的服务请求发送至该服务应 用模块;以及E.由该服务应用模块透过基于TCP/IP多线程通讯途径响应该多个客户端提出的 服务请求。相较于先前技术,本发明所述的一种卫星定位数据分享系统及其方法,可以达到 以下功效1.改善了一个卫星定位讯号接收器只可被单一个应用装置或应用模块开启的问 题,透过本发明的技术可以让卫星定位讯号接收器同时被多个要读取卫星定位讯号数据的 应用装置或应用模块开启并读取。2.利用软件的方式,将卫星定位数据服务器仿真成一个真实的卫星定位讯号接收 器,但功能更强大。一般的卫星定位讯号接收器同时间只可以输出一种通讯协议的卫星定 位数据格式,但透过本发明的卫星定位数据转换模块,可利用软件处理的方式对原始的卫星定位数据(Raw GPS Protocol Data)转换为多种不同格式的卫星定位数据。3.可以单独地服务客户端的某一个应用装置或应用模块,依据应用装置或应用模 块向服务应用模块提出的服务请求,更改应用装置或应用模块读取卫星定位数据的设定, 例如输出的卫星定位数据格式,卫星定位数据通讯协议(GPS protocol),传输速率…等等, 由于本发明的服务应用模块利用基于TCP/IP的多线程通讯模块向客户端提供服务,因此 不会干扰到客户端的其它应用装置或应用模块。4.可被远程(非Local端)的应用装置或应用模块读取卫星定位讯号接收器的卫 星定位数据,由于本发明的服务应用模块系利用基于TCP/IP的多线程通讯模块向客户端 提供服务,所以也可供远程的应用装置或应用模块联机。有关本发明的技术手段与较佳实施例,兹配合图示作最佳实施例详细说明如下。
图1为本发明之第一种较佳实施例的系统架构图。图2为本发明之方法的主要步骤流程图。图3为本发明之另一种较佳实施例的系统架构图。图4为本发明之另一种较佳实施例的系统架构图。
具体实施例方式图1揭露了本发明的一种较佳实施例,可以将来自卫星的原始卫星定位数据提供 给多个客户端利用,而所称的多个客户端可能是多个应用装置或是应用模块50,包括有一卫星定位讯号接收器(GPS receiver) 10,接收来自卫星的原始卫星定位数据 (Raw GPS Protocol Data);一卫星定位数据服务器(GPS Server) 20,具有真实串行端口(real serial port/ COM Port)21可与卫星定位讯号接收器10建立通讯取得原始卫星定位数据(Raw GPS Protocol Data),以及一通讯接口 22用以和客户端进行通讯,通讯接口的较佳的实施例可 以是有线网络卡(Network Interface Card,NIC),或是无线网络卡(Wireless LAN Card);一服务应用模块30,设于卫星定位数据服务器20,服务应用模块30包含一卫星 定位数据解析模块(Parse GPS Data) 31可对不同通讯协议(如NMEA, SiRF Binary, · · ·) 之原始卫星定位数据进行解析,用以将接收到的原始卫星定位数据解析为包含如经度,纬 度,高度,速度,时间之一或其组合的数据;和一基于TCP/IP的多线程通讯模块32 ;服务应 用模块30可以透过通讯接口 22提供基于TCP/IP传输协议的通讯服务,用以服务来自客户 端的服务请求(request),例如提供经过解析的卫星定位数据或是原始卫星定位数据,或是 卫星定位数据的传输速率;一虚拟串行端口驱动模块(Virtual Port Driver) 40,虚拟串行端口驱动模块40 可以仿真数个虚拟串行端口(virtual COM port,VirCOM)411,412,413,每一个虚拟串行端 口 411,412,413并可透过TCP/IP传输协议与服务应用模块30通讯,客户端的应用装置或 应用模块50皆可以各别地和虚拟串行端口 411,412,413建立通讯连接,透过虚拟串行端口 411,412,413取得服务应用模块30解析完成的卫星定位数据或是原始卫星定位数据,除此 之外,客户端的应用装置或应用模块50也可以透过虚拟串行端口 411,412,413向服务应用
6模块30发出服务的请求或是操作指令。请参阅图2,有关本发明的方法包括下列步骤步骤101.取得来自卫星的原始卫星定位数据(Raw GPS Protocol Data);步骤102.提供若干个虚拟串行端口(virtual COM port, VirCOM)供多个客户端 连接,并取得来自这些客户端的服务请求;步骤103.运用一服务应用模块解析原始卫星定位数据,提供卫星定位数据的解 析的服务;步骤104.将来自多个客户端所提出的卫星定位数据解析的服务请求发送至服务 应用模块;以及步骤105.由服务应用模块透过基于TCP/IP多线程通讯途径响应多个客户端提出 的服务请求。由于本发明的服务应用模块30利用基于TCP/IP的多线程通讯模块32向客户 端提供服务,因此来自于多个客户端所提出的服务的请求或是操作指令并不会彼此干扰。 依据本发明的较佳实施例,其中的卫星定位数据服务器20,可以利用服务器(server)、个 人计算机(PC)或是笔记本电脑等计算机设备加以实现,虚拟串行端口驱动模块(Virtual Port Driver)40也可以直接设于卫星定位数据服务器20(见图1),用以在卫星定位数据服 务器20仿真数个虚拟串行端口 (virtual COM port,VirC0M)411,412,413,以供多个客户 端能透过虚拟串行端口 411,412,413取得服务应用模块30解析完成的卫星定位数据或是 原始卫星定位数据。本发明的另一种较佳实施例,更在服务应用模块30中配置有一卫星定位数据转 换模块33(见图3),服务应用模块30可以依据客户端的请求,利用卫星定位数据转换模块 33将某一数据格式的卫星定位数据转换为另一种数据格式的卫星定位数据,例如将NMEA 格式的卫星定位数据转换为SiRF Binary格式的卫星定位数据,或是将NMEA格式的卫星定 位数据转换为SiRF Binary格式的卫星定位数据,再提供给两个或以上的客户端、应用装置 或应用模块来利用。本发明的另一种较佳实施例,其中的虚拟串行端口驱动模块40,设于一电子设备 60例如个人计算机(PC)或是笔记本电脑(见图4),而这个电子设备60还具有网络通讯接 口 61,网络通讯接口 61可以是有线网络卡(Network Interface Card,NIC)或是无线网络 卡(Wireless LAN Card),可以透过TCP/IP传输协议与服务应用模块30建立通讯,虚拟串 行端口驱动模块40可以在电子设备60之中仿真数个虚拟串行端口(virtual COM port, VirC0M)411,412,413,多个客户端、应用装置或应用模块50可以各别地和虚拟串行端口 411,412,413建立通讯连接,透过虚拟串行端口 411,412,413取得服务应用模块30所提供 的经过解析的卫星定位数据或是原始卫星定位数据,除此之外,多个客户端、应用装置或应 用模块50也可以透过虚拟串行端口 411,412,413向服务应用模块30发出服务的请求或是 操作指令,例如请求服务应用模块30改变卫星定位数据的传输速率、对卫星定位数据进行 不同数据格式的转换、或是提供原始卫星定位数据。虽然本发明以前述之较佳实施例揭露如上,然其并非用以限定本发明,任何熟习 相像技艺者,在不脱离本发明之精神和范围内,当可作些许之更动与润饰,因此本发明之专 利保护范围须视本说明书所附之申请专利范围所界定者为准。
权利要求
一种卫星定位数据的分享系统,可以将来自卫星的原始卫星定位数据分享给多个客户端利用,其特征在于,该分享系统包括一卫星定位讯号接收器,接收来自卫星的原始卫星定位数据;一卫星定位数据服务器,具有一真实串行端口可与该卫星定位讯号接收器建立通讯取得原始卫星定位数据,以及一通讯接口用以和客户端进行通讯;一服务应用模块,设于该卫星定位数据服务器,该服务应用模块具有一卫星定位数据解析模块可对不同通讯协议之原始卫星定位数据进行解析,和一基于TCP/IP的多线程通讯模块,该服务应用模块可以透过该通讯接口提供基于TCP/IP传输协议的通讯服务,用以服务来自该多个客户端的服务请求和提供该经过解析的卫星定位数据;一虚拟串行端口驱动模块,该虚拟串行端口驱动模块可以仿真数个虚拟串行端口,每一个该虚拟串行端口并与该服务应用模块通讯,该多个客户端可以个别地和该些虚拟串行端口建立通讯连接,透过该些虚拟串行端口取得该服务应用模块所提供的该原始卫星定位数据或是该解析完成的卫星定位数据,该多个客户端也可以透过该些虚拟串行端口向该服务应用模块发出服务请求或是操作指令。
2.根据权利要求1所述之卫星定位数据的分享系统,其特征在于,该服务应用模块依 据该多个客户端的服务请求改变卫星定位数据的传输速率。
3.根据权利要求1所述之卫星定位数据的分享系统,其特征在于,该服务应用模块中 还具有一卫星定位数据转换模块,该服务应用模块可以依据该多个客户端的请求,利用该 卫星定位数据转换模块将某一格式的卫星定位数据转换为另一种格式的卫星定位数据。
4.根据权利要求1所述之卫星定位数据的分享系统,其特征在于,该虚拟串行端口驱 动模块设于该卫星定位数据服务器。
5.根据权利要求1所述之卫星定位数据的分享系统,其特征在于,该虚拟串行端口驱 动模块设于一电子设备,该电子设备具有一网络通讯接口,可以透过TCP/IP传输协议与该 服务应用模块建立通讯。
6.一种卫星定位数据的分享方法,其特征在于,该分享方法包括 取得来自卫星的原始卫星定位数据;提供若干个虚拟串行端口供多个客户端连接,并取得来自该多个客户端的服务请求; 运用一服务应用模块解析该原始卫星定位数据,提供卫星定位数据的解析的服务; 将来自该多个客户端所提出的卫星定位数据解析的服务请求发送至该服务应用模块;以及由该服务应用模块透过基于TCP/IP多线程通讯途径响应该多个客户端提出的服务请求。
7.根据权利要求6所述之卫星定位数据的分享方法,其特征在于,上述取得来自卫星 的原始卫星定位数据步骤运用一卫星定位讯号接收器,该服务应用模块透过一真实串行端 口连接该卫星定位讯号接收器取得该原始卫星定位数据。
8.根据权利要求6所述之卫星定位数据的分享方法,其特征在于,利用一虚拟串行端 口驱动模块产生该虚拟串行端口,该虚拟串行端口驱动模块设于一电子设备,该电子设备 具有一网络通讯接口,可以透过TCP/IP传输协议与该服务应用模块建立通讯,用以透过 TCP/IP传输协议将来自该多个客户端所提出的卫星定位数据解析的服务请求发送至该服务应用模块。
9.根据权利要求6所述之卫星定位数据的分享方法,其特征在于,包括利用该服务应 用模块依据该客户端的服务请求改变卫星定位数据的传输速率。
10.根据权利要求6所述之卫星定位数据的分享方法,其特征在于,包括利用该服务应 用模块将某一格式的卫星定位数据转换为另一种格式的卫星定位数据。
全文摘要
本发明提供了一种卫星定位数据的分享系统及其方法,其利用一卫星定位讯号接收器,取得来自卫星的原始卫星定位数据;一卫星定位数据服务器透过真实串行端口连接卫星定位讯号接收器取得卫星定位数据;一服务应用模块设于卫星定位数据服务器,透过基于TCP/IP的多线程通讯模块提供卫星定位数据的解析或格式转换的服务;一虚拟串行端口驱动模块,用以产生若干个虚拟串行端口,每一个虚拟串行端口并可透过TCP/IP传输协议与服务应用模块通讯,使多个应用装置或应用模块能分别透过虚拟串行端口和服务应用模块通讯,进而获取服务应用模块所提供的卫星定位数据解析或格式转换的服务。
文档编号G01S1/02GK101887112SQ20091030234
公开日2010年11月17日 申请日期2009年5月15日 优先权日2009年5月15日
发明者游家缙 申请人:佛山市顺德区汉达精密电子科技有限公司