〔実施形態1〕
以下、本発明の実施の形態について、図1から図11に基づいて詳細に説明する。まず、本実施形態に係る測位システム1の概要を、従来の、VRS(仮想基準点、Virtual Reference Station)−RTK(リアルタイムキネマティック、Real Time Kinematic)測位システムの概要と対比して説明しておく。
(従来のVRS−RTK測位システム)
VRS−RTK測位とは、電子基準点のリアルタイム観測データを利用することにより、観測データの誤差(例えば、自然条件および衛星自体の問題などにより生じる誤差)を補正し、高精度な位置情報を取得するものである。ここで、電子基準点とは、国土地理院により全国に設置されたGNSS(Global Navigation Satellite System)連続観測点であり、日本測量協会が、全国の電子基準点リアルタイムデータを配信している。
従来のVRS−RTK測位システムにおいては、観測局は単独で「現在の位置」を計測し、計測した「現在の位置」を、例えば携帯電話等を用いて補正情報生成サーバへ送信する。補正情報生成サーバは、観測局から受信した「現在の位置」に基づいて、観測局の近傍にVRSを設置し、このVRSについての補正情報を生成する。そして、生成した補正情報を観測局に送信する。観測局は、補正情報生成サーバから受信する補正情報を用いて、自位置の相対測位を行なう。すなわち、従来のVRS−RTK測位システムにおいて観測局は、個々に、自局が位置している概略の位置情報を取得し(つまり、単独測位し)、その位置情報を、補正情報生成サーバに送信する。また、従来のVRS−RTK測位システムにおいて補正情報生成サーバは、観測局ごとにVRSを設置し、観測局に対応するVRSごとに補正情報を生成し、生成した補正情報を対応する観測局に送信する。
従来のVRS−RTK測位システムにおいては、観測局ごとにVRSが設置され、VRSごとに生成された補正情報が各観測局に送信されていたため、利用者は、観測局ごとに(つまり、VRSごとに)、補正情報の利用料(配信料)を支払う必要があった。
また、従来のVRS−RTK測位システムにおいて観測局は、補正情報生成サーバに補正情報(つまり、VRS)を生成させるために、自局が位置している概略の位置情報を補正情報生成サーバに送信する必要があった。そのため、従来のVRS−RTK測位システムにおいては、観測局と補正情報生成サーバとの双方向通信が必須であり、また、各観測局が個別に補正情報生成サーバと通信する必要があるため、補正情報生成サーバが観測局と通信する情報量も多くなる傾向があった。
(本実施形態の測位システム)
(本実施形態の測位システムの概要)
測位システム1は、VRS−RTK測位システムであって、測位システム1において、ユーザが指定した領域(つまり、現場50としてユーザが指定したエリア)内には、補正情報60を生成するための共通の仮想基準点であるVRS40が1つ設置される。測位システム1においては、現場50ごとに設定された1つのVRS40の補正情報60が、接続サーバ10によって、現場50内の複数の現場端末30(1)〜(n)の各々へ配信される(なお、「n」は2以上の整数を示している)。測位システム1において、現場50内の複数の現場端末30の(1)〜(n)の各々は、従来のVRS−RTK測位システムにおける観測局とは異なり、放送型の1つの共通の補正情報60を用いて、自位置の相対測位を行なう。なお、測位システム1において「ユーザ」とは、「現場端末30に対する補正情報60の送信サービス(補正情報配信サービス)を申し込んだ者」を指し、「現場50において実際に現場端末30を操作して現場端末30の位置を測位する者」ではない。「現場50において実際に現場端末30を操作して現場端末30の位置を測位する者」は「測位者」と称し、「ユーザ」と区別する。
従来のVRS−RTK測位システムにおいてVRSは、観測局の単独測位にて得られる位置の近傍に自動的に設置される。これに対して、測位システム1においては、ユーザが任意の位置にVRS40を設置することができ、ユーザが任意に設置したVRS40の補正情報60を生成することが可能となる。例えば、従来のVRS−RTK測位システムにおいては、複数の異なる地点において測位をする場合、複数の異なる地点ごとにVRSが設置され、設置された複数のVRSごとに補正情報が生成されていた。一方、測位システム1においては、例えば、複数の異なる地点の中間地点にVRS40を1つだけ設置し、この1つの共通のVRS40の補正情報60を、複数の異なる地点での測位に利用する等、測位作業を効率化することができる。
また、測位システム1においては、以下の2点が、ユーザごとに管理される。すなわち、(i)「1つのVRS40の補正情報60」が「どの領域(現場50)で利用されるか」、および(ii)「1つのVRS40の補正情報60」を「受信可能な現場端末30は何台か(配信量)」という2点が、ユーザごとに管理される。
従来のVRS−RTK測位システムと対比してこれまで概要を説明してきた測位システム1について、次に、図2を用いて詳細を説明していく。なお、以下の説明において、現場50について、複数の現場50A〜50Zの各々を区別する必要がある場合には、符号に「A」、「B」、「C」等の添え字を付して、例えば、現場50A、現場50B、および現場50Cと記載して区別する。逆に、現場50A、現場50B、および現場50Cを特に区別する必要がない場合は単に「現場50」と称する。また、VRS40について、複数の現場50(現場50A〜現場50Z)の各々に設置される1つのVRS40(VRS40A〜40Z)の各々を区別する必要がある場合には、符号に「A」、「B」、「C」等の添え字を付して区別し、特に区別する必要がない場合は単に「VRS40」と称する。さらに、VRS40A〜40Zの各々の補正情報60A〜60Zの各々を区別する必要がある場合には、符号に「A」、「B」、「C」等の添え字を付して区別し、特に区別する必要がない場合は単に「補正情報60」と称する。
同様に、複数の現場端末30(1)〜30(n)の各々を区別する必要がある場合には、符号に「(1)」、「(2)」、「(3)」等の添え字を付して区別し、特に区別する必要がない場合は単に「現場端末30」と称する。複数の現場50(現場50A〜現場50Z)の各々における現場端末30は、現場50に付したのと同じ添え字を付すことによって区別する。具体的には、「現場端末30A」は現場50Aにおける現場端末30を、「現場端末30B」は現場50Bにおける現場端末30を、示している。したがって、現場端末30A(1)〜30A(n)は、現場50Aにおける複数の現場端末30(1)〜30(n)を、現場端末30B(1)〜30B(n)は、現場50Bにおける複数の現場端末30(1)〜30(n)の各々を、示している。
(本実施形態の測位システムの詳細)
図2は、測位システム1の概要を示す図である。図2に示すように、測位システム1は、接続サーバ10(補正情報送信装置)、従来のVRS−RTK測位システムにおける補正情報生成サーバに相当する生成サーバ20、および従来のVRS−RTK測位システムにおける観測局に相当する現場端末30(受信機)を含んでいる。
なお、測位システム1の理解を容易にするため、図2は、現場50内の複数の現場端末30(1)〜30(n)の「ユーザ(現場端末30に対する補正情報60の送信サービスを申し込んだ者)」が同一である例を示している。しかしながら、測位システム1においては、1つの現場50について複数のユーザが存在してもよい。むしろ、図3を用いて後述するように、測位システム1は、1つの現場50について複数のユーザが存在し、各ユーザの複数の現場端末30が1つの現場50内に存在することを想定している。当然、現場50内の複数の現場端末30(1)〜30(n)の各々の「測位者(現場50において実際に現場端末30を操作して現場端末30の位置を測位する者)」は、異なる。
現場端末30は、GPS(Global Positioning System)およびGLONASS(Global Navigation Satellite System)などの衛星からの測位情報と、接続サーバ10から受信する補正情報60とにより自位置の相対測位を行なう受信機であり、例えばGNSS受信機である。GNSS受信機とは、GPSおよびGLONASSなどの衛星測位システムにおける利用者装置であり、衛星からの電波を受信するアンテナを備えている。本実施形態の現場端末30は、例えば、TCP(Transport Control Protocol、伝送制御プロトコル)またはUDP(User Datagram Protocol、ユーザデータグラムプロトコル)等の通信プロトコルによって接続サーバ10と通信する。現場端末30が接続サーバ10とTCPまたはUDPで通信する場合、現場端末30は、接続サーバ10の「現場50ごと、ユーザごとに予め割り当てられたポート番号の通信ポート」に接続を要求する。接続サーバ10によって接続が許可されると、現場端末30は、接続サーバ10から、現場50ごとに共通の1つの補正情報60(現場50ごとに共通の1つのVRS40の補正情報60)を受信する。なお、現場端末30が接続サーバ10とTCPまたはUDPで通信することは必須ではなく、TCPまたはUDPとは異なる通信プロトコルで現場端末30と接続サーバ10とが通信する例は、実施形態2において説明する。
生成サーバ20は、接続サーバ10から、現場50に1つ設置されるVRS40の位置情報(緯度および経度を示す情報)を受信し、受信したVRS40の位置情報から、VRS40の補正情報60を生成し、生成した補正情報60を接続サーバ10に送信する。
接続サーバ10は、生成サーバ20から受信した補正情報60を現場端末30に送信する。接続サーバ10は、ユーザが指定した領域(エリア)である現場50について、1つのVRS40を設置し、この1つのVRS40の補正情報60を生成サーバ20から受信する。接続サーバ10は、生成サーバ20から受信した補正情報60を、現場50内の複数の現場端末30(1)〜30(n)の各々に送信する。接続サーバ10は、複数の現場端末30(1)〜30(n)の各々に送信する補正情報60として、現場50ごとに共通の1つのVRS40の補正情報60を生成サーバ20に生成させるので、生成サーバ20への負荷を軽減させることができる。
現場50内の現場端末30(1)〜30(n)の各々は、現場50ごとに1つ設置されたVRS40の補正情報60を用いて自位置の測位を行なう。現場50内の現場端末30(1)〜30(n)の各々は、自位置の測位に際して、1つの共通の補正情報60を利用し、自端末の概略位置に係る補正情報を利用しない。測位システム1の現場端末30は、自端末の概略位置を接続サーバ10へ送信する必要がないので、接続サーバ10との通信量を削減し、放送型の補正情報60を利用して自位置の測位を行なうことができる。
現場50内の現場端末30(1)〜30(n)はどの端末も、現場50ごとに共通の1つのVRS40の補正情報60を受信することができる。したがって、測位システム1においては、接続サーバ10が、補正情報60を受信できる現場端末30の台数を管理し、補正情報60を利用する現場端末30の台数を、ライセンス数以下に制限する。接続サーバ10は、現場50ごと、ユーザごとに、補正情報60を利用する現場端末30の台数を管理し、現場50ごとに共通の1つの補正情報60を利用できる「ユーザの現場端末30の台数」に応じて課金することで、補正情報配信サービスの運用を効率化する。
具体的には、接続サーバ10は、現場端末30に対し補正情報60を送信する補正情報送信装置であって、1つのVRS40(仮想基準点)に係る補正情報60を取得する補正情報受信部18(取得部)と、補正情報受信部18により取得された補正情報60を、ユーザが予め設定したライセンス数(上限数)以下の台数の現場端末30であって、ユーザの複数の現場端末30の各々に送信する端末通信部16(送信部)と、を備えている。
したがって、接続サーバ10は、例えばライセンス数に達するまで、補正情報60を、ユーザの複数の現場端末30の各々に送信することができるという効果を奏する。つまり、接続サーバ10は、1つのVRS40に係る補正情報60の送信先数(ライセンス数)を管理することができ、補正情報60の配信について、効率的なユーザ端末(現場端末30)の管理および課金管理を実現することができるという効果を奏する。
一般的に補正情報配信サービスは、配信(送信)する補正情報に対応するVRSの数に応じて、利用料金が決定される。従来のVRS−RTK測位システムにおいては、観測局ごとにVRSが生成され、補正情報配信サービスのユーザは、観測局ごとに生成されたVRSの補正情報について、利用料を支払う必要があった。これに対して、測位システム1において接続サーバ10は、同じ現場50(同じ領域)内の複数の現場端末30(1)〜30(n)の各々に、同じ補正情報60(つまり、現場50に1つ設置されるVRS40の補正情報60)を送信する。つまり、現場50内の現場端末30(1)〜30(n)の各々は、現場50ごとに共通の1つのVRS40の補正情報60を接続サーバ10から受信して、この1つの補正情報60を用いて自位置の測位を行なう。したがって、現場端末30(1)〜30(n)のユーザは、現場端末30(1)〜30(n)の各々が各々に専用のVRSの補正情報を受信する方式に比べて、補正情報配信サービスの利用料金を抑えることができる。接続サーバ10は、特に土木・建築施工現場、鉱山・掘削現場、農地等の「一定の領域(つまり、現場50)内に、複数台の現場端末30が稼働する」状況において、一つの現場50全体での利用料金を抑えた補正情報配信サービスを提供できる。
接続サーバ10は、生成サーバ20(補正情報生成サーバ)の稼働を効率化することができる。従来のVRS−RTK測位システムにおいては、1つの測位システムごとに、つまり、個々のユーザごとに、補正情報生成サーバが動作していた。具体的には、従来のVRS−RTK測位システムにおける補正情報生成サーバは、個々のユーザごとに、補正情報を生成していた。これに対して、本発明の一対応に係る測位システム1においては、1つの現場が複数の測位システム(つまり、複数のユーザー)を有し、生成サーバ20は現場ごとに動作するため、生成サーバ20の稼働を効率化することができる。
ここで、接続サーバ10は、1つのVRS40(現場50ごとに共通の1つのVRS40)を、ユーザにより指定された現場50(領域)の略中心として設定する。したがって、接続サーバ10は、ユーザにより指定された領域である現場50の略中心として設定される1つのVRS40に係る補正情報60を、ユーザが予め設定する上限数であるライセンス数に達するまで、ユーザの複数の現場端末30の各々に送信することができるという効果を奏する。つまり、接続サーバ10は、現場50ごと、ユーザごとに、1つの補正情報60を、ライセンス数に達するまで、ユーザの複数の現場端末30の各々に送信することができ、補正情報60の配信について、現場50ごと、ユーザごとの効率的なライセンス管理を実現することができるという効果を奏する。また、ユーザは、現場50を指定するだけで、接続サーバ10に、現場50の略中心の位置に係る補正情報60を、ユーザの複数の現場端末30の各々に、ライセンス数に達するまで送信させることができる。なお、現場端末30が補正情報60を用いて行う測位の精度を維持するため、現場50は、対応する1つのVRS40から例えば10Km以内の領域であることが好ましい。
(接続サーバの構成)
図1は、測位システム1の接続サーバ10の要部構成を示すブロック図である。なお、本実施形態に直接関係のない部分(例えば、接続サーバ10が、ユーザからの申込情報の入力を受け付けるための画面を、通信ネットワーク等を利用してユーザに提供にする部分など)については、以下の説明および上記ブロック図から省略している。ただし、実施の実情に則して、測位システム1の接続サーバ10は、当該省略した構成を含んでもよい。図1に示すように、接続サーバ10は、申込情報取得部11、ライセンス情報生成部12、仮想基準点算出部13、記憶部14、ライセンス管理部15、端末通信部16、仮想基準点情報送信部17、および補正情報受信部18を備えている。
(記憶部以外の機能部)
申込情報取得部11は、補正情報配信サービスを申し込むユーザからの、現場ID、ユーザID、現場位置、ライセンス数(申込ライセンス数)を含む申込情報を取得する。現場IDは現場50を識別する情報であり、ユーザIDはユーザを識別する情報であり、現場位置は、現場50としてユーザに指定された領域を特定する情報である。ライセンス数は、ユーザが補正情報配信サービスの利用を申し込んだ現場50ごとのライセンスの数であり、接続サーバ10が、現場50ごと、ユーザごとに補正情報60を送信する現場端末30の台数の上限である。ライセンス数は、現場50ごとに1つ設置されるVRS40の補正情報60を利用できる「ユーザの現場端末30」の上限台数を示している。申込情報取得部11が取得する申込情報は、上記の項目に加えて、図3に例示するライセンス情報管理テーブル141に格納される項目を含んでいる。申込情報取得部11は、ユーザからの申込情報を取得すると、取得した申込情報をライセンス情報生成部12に通知する。
ライセンス情報生成部12は、1つの現場50に対応付けて、1つのVRS40の位置情報をライセンス情報管理テーブル141に格納する。具体的には、ライセンス情報生成部12は、申込情報取得部11から通知された申込情報に含まれる現場位置(現場50の位置を示す情報)に対応するVRS40の位置情報を仮想基準点算出部13から取得し、ライセンス情報管理テーブル141に格納する。すなわち、ライセンス情報生成部12は、申込情報取得部11から通知された申込情報の内、現場50として指定された領域を特定する情報である現場位置を仮想基準点算出部13に通知する。ライセンス情報生成部12は、仮想基準点算出部13に通知した現場位置から仮想基準点算出部13が生成したVRS40の位置情報を、仮想基準点算出部13から取得する。ライセンス情報生成部12は、取得したVRS40の位置情報を、申込情報取得部11から通知された申込情報に含まれる現場位置(現場50の位置情報)に対応するVRS40の位置情報として、ライセンス情報管理テーブル141に格納する。
また、ライセンス情報生成部12は、申込情報取得部11から通知された申込情報に基づいて、ライセンス情報管理テーブル141に、現場50ごと、ユーザごとに、ライセンス数、およびライセンス数に対応する数のポート番号(割当ポート番号)を格納する。ライセンス情報生成部12は、例えば、現場50ごとに、補正情報60を受信するために現場端末30がアクセスする共通のIPアドレスを生成する。そして、ライセンス情報生成部12は、その共通のIPアドレスについて、現場50ごと、ユーザごとのライセンス数に相当する数のポート番号(通信ポート)を割り当てる。すなわち、接続サーバ10は、例えば、現場50ごとのIPアドレスについて、ユーザごとに、現場ごとのライセンス数に相当する数のポート番号の通信ポートを開ける。現場端末30は、現場50ごとに共通のIPアドレスの、所定のポート番号(つまり、現場50ごと、ユーザごとに予め割り当てられた「ライセンス数に相当する数のポート番号」)の通信ポートに対して接続を要求する。現場端末30は、その共通のIPアドレスの、所定のポート番号の通信ポートの1つで接続を許可されると、その通信ポートから送信された補正情報60を受信する。
詳細は図3を用いて後述するが、ライセンス情報生成部12は、例えば、「現場ID:AAAの現場50A」に「ライセンス数:3」で申込を行なった「ユーザID:IDU1のユーザ」について、以下の情報をライセンス情報管理テーブル141に格納する。すなわち、ライセンス情報生成部12は、「現場50A」について、「ユーザID:IDU1のユーザ」の現場端末30A(1)〜30A(n)が接続可能な通信ポートのポート番号として、「30001」、「30002」、および「30003」という3つのポート番号を格納する。ライセンス情報生成部12は、「現場ID:AAA」および「ユーザID:IDU1」に対応付けて、「ライセンス数:3」に対応する3つのポート番号(つまり、「30001」、「30002」、および「30003」)を、ライセンス情報管理テーブル141に格納する。「ユーザID:IDU1のユーザ」の現場端末30は、現場50Aに対応するIPアドレスの、ポート番号が「30001〜30003」である通信ポートに接続を要求する。現場端末30は、そのIPアドレスの、ポート番号が「30001〜30003」である通信ポートのいずれかで接続を許可されると、接続を許可された通信ポートから送信された補正情報60を受信する。つまり、現場50Aに1つ設置されるVRS40Aの補正情報60Aは、現場50Aに対応するIPアドレスの、ポート番号が「30001〜30003」である通信ポートのいずれかに接続を許可された現場端末30のみが受信することができる。
同様に、ライセンス情報生成部12は、例えば、「現場ID:AAAの現場50A」に「ライセンス数:2」で申込を行なった「ユーザID:IDU2のユーザ」の現場端末30A(1)〜30A(m)が接続可能な通信ポートのポート番号として、「30011」および「30012」という2つのポート番号を格納する(なお、「m」は2以上の整数を示している)。ライセンス情報生成部12は、例えば、「現場ID:BBBの現場50B」に「ライセンス数:2」で申込を行なった「ユーザID:IDU4のユーザ」の現場端末30B(1)〜30B(n)が接続可能な通信ポートのポート番号として、「30101」および「30102」という2つのポート番号を格納する。
以上に説明したように、ライセンス情報生成部12は、現場50ごとに、対応する1つのVRS40の位置情報(現場50の位置を示す情報から、仮想基準点算出部13が算出した1つのVRS40の緯度および経度を示す情報)を、ライセンス情報管理テーブル141に格納する。また、ライセンス情報生成部12は、現場50ごと、ユーザごとに、ライセンス数に対応する数のポート番号(割当ポート番号)を、ライセンス情報管理テーブル141に格納する。したがって、ライセンス情報管理テーブル141を参照することで、ポート番号から、そのポート番号に対応する現場50を一意に特定することができ、つまり、対応するVRS40の位置(対応仮想基準点位置)を一意に特定することができる。
仮想基準点算出部13は、ライセンス情報生成部12から、申込情報の内、現場50として指定された領域(エリア)を特定する情報である現場位置を取得する。仮想基準点算出部13は、現場50に対応する1つの共通のVRS40として、例えば、現場50として指定された領域の略中心にVRS40を設置する。仮想基準点算出部13は、設置したVRS40の位置情報(例えば、VRS40の緯度および経度を示す情報)を生成(算出し)し、生成したVRS40の位置情報をライセンス情報生成部12に通知する。仮想基準点算出部13は、「現場位置」として、例えば、現場50としてユーザに指定された領域の外周上の複数の点の緯度、経度、および楕円体高を取得する。仮想基準点算出部13は、現場50の外周上の複数の点の緯度、経度、および楕円体高から、VRS40の緯度、経度、および楕円体高を算出する。
ライセンス管理部15は、ライセンス情報管理テーブル141を参照して、現場50ごと、ユーザごとに、ライセンス数に応じて割り当てられた数のポート番号(割当ポート番号)を取得し、取得したポート番号を端末通信部16に通知する。ライセンス管理部15は、また、端末通信部16から、端末通信部16が新たに接続を許可した通信ポートのポート番号(受信ポート番号)を通知されると、ライセンス情報管理テーブル141を参照して、通知されたポート番号に対応するVRS40の位置情報(対応仮想基準点位置)を取得する。ライセンス管理部15は、取得したVRS40の位置情報を仮想基準点情報送信部17に通知する。
端末通信部16は、無線回線を利用して、例えばTCPまたはUDP等の通信プロトコルで現場端末30と通信し、補正情報受信部18が生成サーバ20から受信した補正情報60を、現場端末30に送信する。本実施形態の端末通信部16は、ライセンス管理部15から通知されたポート番号(割当ポート番号)の通信ポートでのみ現場端末30と通信し、各通信ポートについて、一度に1つの接続のみを許可する。すなわち、端末通信部16は、ライセンス情報管理テーブル141において現場50ごと、ユーザごとに割り当てられたポート番号の通信ポートから、その現場50に対応する1つのVRS40の補正情報60を送信し、割り当てられた通信ポートの各々について、一度に1つの接続のみを許可する。つまり、端末通信部16は、現場50ごと、ユーザごとに割り当てられたポート番号の通信ポートの内、現場端末30との間で通信を行っていない通信ポート(未使用の通信ポート)に現場端末30から接続要求があった場合に、その未使用の通信ポートについて、接続要求を出力してきた現場端末30との接続を許可する。端末通信部16は、補正情報受信部18から取得した補正情報60を、端末通信部16が今回新たに接続を許可したポート番号の通信ポートから、現場端末30に送信する。端末通信部16は、現場50ごと、ユーザごとに割り当てられたポート番号の通信ポートの内、現場端末30との間で通信を行っていない通信ポート(未使用の通信ポート)が無い状態で新たな接続要求を受信しても、その新たな接続要求は無視する。
以上に説明した通り、端末通信部16は、ユーザの複数の現場端末30の各々に補正情報60を送信するための通信ポートの数を、ライセンス数(上限数)に相当する数とし、ライセンス数に相当する数の通信ポートの各々について、一度に1つの接続のみを許可する。つまり、接続サーバ10は、例えばライセンス数と同数の通信ポートの各々から、ユーザの複数の現場端末30の各々に、補正情報60を送信し、ライセンス数を超過した台数の現場端末30には補正情報60を送信しない。したがって、接続サーバ10は、補正情報60の送信先数を、ライセンス数以下に容易に制限することができるので、補正情報60の配信に係るライセンス管理を効率化できるという効果を奏する。
また、接続サーバ10は、ライセンス数に相当する数の通信ポートの内、現場端末30との間で通信を行っていない通信ポートに接続要求があった場合に、その未使用の通信ポートから補正情報60を送信する。例えば、図3のライセンス情報管理テーブル141によれば、端末通信部16は、現場50Aに対応するIPアドレスの、ポート番号が「30002」の通信ポートが未使用である場合、以下の処理を実行する。すなわち、ポート番号が「30002」の通信ポートに現場端末30からの接続要求があると、端末通信部16は、ポート番号が「30002」の通信ポートから、現場50Aに1つ設置されるVRS40Aの補正情報60Aを、その現場端末30に送信する。端末通信部16は、現場50Aに対応するIPアドレスの、ポート番号が「30001〜30003」の通信ポートが全て使用中である場合、現場端末30からの新たな接続要求(つまり、4台目の現場端末30からの接続要求)は無視する。つまり、「ライセンス数:3」を超えた4台目の現場端末30には、補正情報60Aを送信しない。したがって、接続サーバ10は、現場端末30の各々との間で通信を確立せずに、ライセンス数に達するまで、補正情報60を、現場端末30の各々に送信することができるという効果を奏する。接続サーバ10によって、現場端末30の各々は、接続サーバ10との間で通信を確立することなく、所定のポート番号の通信ポートへの接続要求のみによって、補正情報60を受信できる。
また、端末通信部16は、「現場50ごと、ユーザごとに割り当てられたポート番号の通信ポートの内、未使用の通信ポート」に接続要求があると、その未使用の通信ポートのポート番号を、つまり、その接続要求を許可する通信ポートのポート番号(受信ポート番号)を、ライセンス管理部15に通知する。
仮想基準点情報送信部17は、「端末通信部16が新たに接続を許可した通信ポートのポート番号(受信ポート番号)」に対応するVRS40の位置情報(対応仮想基準点位置)をライセンス管理部15から取得する(通知される)。仮想基準点情報送信部17は、ライセンス管理部15から取得したVRS40の位置情報を生成サーバ20に送信する。
補正情報受信部18は、「仮想基準点情報送信部17から受信したVRS40の位置情報(対応仮想基準点位置)に基づいて、生成サーバ20が生成した補正情報60」を、生成サーバ20から受信する。補正情報受信部18は、生成サーバ20から受信した補正情報60を、端末通信部16に出力する。
(記憶部)
記憶部14は、接続サーバ10が使用する各種データを格納する。記憶部14は、接続サーバ10が実行する(1)制御プログラム、(2)OSプログラム、(3)各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを記憶する。上記の(1)〜(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。また、記憶部14には、ライセンス情報管理テーブル141およびユーザ情報管理テーブル142が格納されている。
(ライセンス情報管理テーブル)
図3は、接続サーバ10が保持する、ライセンス情報管理テーブル141のデータ構造および具体例を示す図である。ライセンス情報管理テーブル141には、現場50ごとに、現場50に対応する1つのVRS40の位置情報が、また、現場50ごと、ユーザごとに、ライセンス数に対応する数のポート番号(割当ポート番号)が、格納されている。図3に例示するライセンス情報管理テーブル141には、例えば、現場名、現場ID、ユーザ名、ユーザID、現場位置としてVRS基準点(X)およびVRS基準点(Y)、ライセンス数、接続台数、割当ポート番号、そして接続中ポート番号が格納される。
現場名および現場IDは、各々、現場50の名称および識別情報であり、ユーザ名およびユーザIDは、各々、ユーザの名称および識別情報である。現場位置としてのVRS基準点(X)およびVRS基準点(Y)は、各々、現場50に1つ設置されるVRS40の緯度および経度を示す情報である。ライセンス数は、現場50ごと、ユーザごとの、「補正情報60を利用可能な現場端末30の台数の上限数」であり、接続台数は、現場50ごと、ユーザごとの、「補正情報60を現在利用している現場端末30の台数」である。割当ポート番号は、現場50ごと、ユーザごとに、ライセンス数に応じて割り当てられたポート番号であり、ライセンス数に相当する数のポート番号が格納される。接続中ポート番号は、割当ポート番号の通信ポートのうち、現場端末30と現在通信中の(つまり、使用中の)通信ポートのポート番号である。
図3に例示するライセンス情報管理テーブル141の1行目には、「現場ID:AAAの現場50A」に対応する1つのVRS40の位置(緯度および経度)は、「VRS基準点(X):123.123456」および「VRS基準点(Y):456.123456」であることが示されている。
また、図3のライセンス情報管理テーブル141の1行目には、現場50Aについて、「ユーザID:IDU1」のユーザが「ライセンス数:3」を申し込んだことが示されている。そして、現場50Aについて、「ユーザID:IDU1」のユーザに割り当てられたポート番号は、「30001」、「30002」、および「30003」という3つであることが示されている。現場50Aの補正情報60Aを受信するには、「ユーザID:IDU1」のユーザの現場端末30は、ポート番号が「30001〜30003」の3つの通信ポートのいずれかに接続を要求し、接続を許可されなくてはならない。
さらに、図3のライセンス情報管理テーブル141の1行目には、補正情報60Aを現場端末30に送信するために、ポート番号が「30001」の通信ポートが現在使用されていること(接続中ポート番号:30001)が示されている。つまり、接続サーバ10が補正情報60Aを送信している現場端末30の接続台数が1台であること(接続台数:1)が示されている。図3に例示する状況において、「ユーザID:IDU1」のユーザの現場端末30は、ポート番号が「30002」または「30003」の通信ポートに接続を要求した場合、接続サーバ10から、補正情報60Aを受信することができる。
同様に、図3のライセンス情報管理テーブル141の2行目には、現場50Aについて「ライセンス数:2」で申込を行なった「ユーザID:IDU2」のユーザの現場端末30A(x)〜30A(z)が接続可能な通信ポートのポート番号が、「30011」および「30012」という2つであること(割当ポート番号)が示されている。そして、「ユーザID:IDU2」のユーザの現場端末30に現場50Aについての補正情報60Aを送信するために使用されている通信ポートはなく(接続中ポート番号:なし)、補正情報60Aを現在受信している「ユーザID:IDU2」のユーザの現場端末30がない(接続台数:0)ことが示されている。また、図3のライセンス情報管理テーブル141の4行目には、「現場ID:BBBの現場50B」に「ライセンス数:2」で申込を行なった「ユーザID:IDU4のユーザ:XX YY」の現場端末30B(1)〜30B(n)が接続可能な通信ポートのポート番号が、「30101」および「30102」という2つであること(割当ポート番号)が示されている。そして、「ユーザID:IDU4」のユーザの現場端末30に現場50Bについての補正情報60Bを送信するために使用されている通信ポートはなく(接続中ポート番号:なし)、補正情報60Bを現在受信している「ユーザID:IDU4」のユーザの現場端末30がない(接続台数:0)ことが示されている。
測位システム1においては、1つの現場50に複数のユーザが存在し、各ユーザの複数の現場端末30(1)〜30(n)の各々が、現場50ごとに1つ設置されるVRS40の補正情報60を利用する。接続サーバ10は、例えばライセンス情報管理テーブル141を利用して、現場50ごと、ユーザごとに、補正情報60を送信する現場端末30の台数を管理する。図3のライセンス情報管理テーブル141の1行目から3行目には、現場50Aについて、「ユーザID」が、各々、「IDU1」、「IDU2」、「IDU3」である3人のユーザが存在することが示されている。また、「ユーザID」が、各々、「IDU1」、「IDU2」、「IDU3」である3人のユーザは、共通の現場50Aについて、それぞれ「ライセンス数」を「3」、「2」、「2」として申し込んだことが示されている。つまり、現場50Aに設置された1つVRS40Aの補正情報60Aを受信することのできる「ユーザID:IDU1」のユーザの現場端末30は3台である。補正情報60Aを受信することのできる「ユーザID:IDU2」のユーザの現場端末30は2台である。補正情報60Aを受信することのできる「ユーザID:IDU3」のユーザの現場端末30は2台である。図3のライセンス情報管理テーブル141の1行目から3行目には、また、補正情報60Aを受信している「ユーザID:IDU1」のユーザの現場端末30の台数は1台、補正情報60Aを受信している「ユーザID:IDU2」のユーザの現場端末30はなく、補正情報60Aを受信している「ユーザID:IDU3」のユーザの現場端末30の台数は2台であることが示されている。
(ユーザ情報管理テーブル)
図4は、接続サーバ10が保持する、ユーザ情報管理テーブル142のデータ構造および具体例を示す図である。補正情報配信サービスについて、接続サーバ10は、例えばユーザ情報管理テーブル142を用いて、現場50ごと、ユーザごとに、補正情報配信サービス利用申込の開始月、開始月から現在までの契約月数、ログイン・パスワード等を管理している。接続サーバ10は、ライセンス数(接続台数)の上限までは現場端末30からの接続を許可し、接続台数を超えた現場端末30には補正情報60を配信しない。そして、接続サーバ10は、毎月末に、補正情報60の使用/不使用に関わらず、月単位での請求書を発行する。
図4に例示するユーザ情報管理テーブル142には、例えば、現場名、顧客名(会社名)、ユーザ名、VRS基準点(X)およびVRS基準点(Y)、ライセンス数、ログイン(ログインID。つまり、ユーザID)、パスワード、開始月、および契約月数が格納される。現場名は現場50の名称であり、顧客名(会社名)はユーザの所属会社名であり、ユーザ名はユーザの名称、VRS基準点(X)およびVRS基準点(Y)は、各々、現場50に1つ設置されるVRS40の緯度および経度を示す情報である。ライセンス数は、現場50ごと、ユーザごとの、「補正情報60を利用可能な現場端末30の台数の上限数」である。ログイン(ログインID)およびパスワードは、各々、補正情報配信サービスについてユーザの申込情報等を管理しているシステムにユーザがログインする際のID(識別情報)およびパスワードである。開始月は補正情報配信サービス利用申込の開始月であり、契約月数は開始月から現在までの契約月数である。
(処理の概要)
次に、測位システム1において接続サーバ10、生成サーバ20、および現場端末30の各々が実行する処理の連携、および、接続サーバ10が実行する接続可否判定処理の詳細について図5および図6を用いて説明していく。
(システム全体において実行される処理)
図5は、測位システム1において実行される処理の一例を示すフローチャートである。図5に示すように、現場端末30は、現場50ごと、ユーザごとに予め割り当てられたポート番号の通信ポートに対して、接続処理を実行する(S310)。現場端末30は、例えば現場50に対応するIPアドレスの、現場50ごと、ユーザごとに、ライセンス数に応じて割り当てられた数のポート番号の通信ポートに接続を要求する。
接続サーバ10の端末通信部16は、現場50ごと、ユーザごとに予め割り当てられたポート番号(つまり、設定されたポート番号)の通信ポートを監視している。接続サーバ10の端末通信部16は、例えばTCPまたはUDPで現場端末30と通信する場合、設定されたポート番号の通信ポート(TCPポートまたはUDPポート)を常時監視している。そして、端末通信部16は、設定されたポート番号の通信ポートに接続処理があると、接続可否を判定する(S110、接続可否判定処理)。端末通信部16が接続可否判定処理(S110)で「接続不可」と判定すると、接続サーバ10は以降の処理を終了する。端末通信部16は、S110の接続可否判定処理において接続が可能である(つまり、接続を許可してもよい)と判定すると、S310で接続処理を実行した現場端末30からの接続を受信(許可)する(S120)。端末通信部16は、S120で接続を許可した通信ポートのポート番号を、ライセンス管理部15に通知する。ライセンス管理部15は、ライセンス情報管理テーブル141を参照し、通知されたポート番号に対応する現場50Xを特定し(S130)、特定した現場50Xに対応するVRS40Xの位置情報(緯度および経度の情報)を取得する(なお、「X」はA〜Wの中の1つである)。仮想基準点情報送信部17は、ライセンス管理部15が取得したVRS40Xの位置情報を、生成サーバ20に送信する(S140)。
生成サーバ20は、接続サーバ10の仮想基準点情報送信部17から、S310で接続要求を出力した現場端末30に接続を許可した端末通信部16のポート番号に対応するVRS40Xの位置情報を受信する(S210)。生成サーバ20は、接続サーバ10から受信したVRS40Xの位置情報から、VRS40Xの補正情報60Xを生成し(S220)、生成した補正情報60Xを接続サーバ10に送信する(S230)。
接続サーバ10の補正情報受信部18は、VRS40Xの補正情報60Xを、生成サーバ20から受信する(S150)。そして、補正情報受信部18は、生成サーバ20から受信した補正情報60Xを、端末通信部16に通知する。端末通信部16は、補正情報受信部18から通知された補正情報60Xを、S120で接続を許可した通信ポートで、S310で接続要求を出力した現場端末30に送信する(S160)。
S310で接続サーバ10に接続要求を出力した現場端末30は、接続サーバ10から補正情報60Xを受信する(S320)。これまでの説明からも明らかな通り、現場端末30は、接続サーバ10の所定の通信ポートに対して接続要求を出力するだけで、接続サーバ10から補正情報60Xを受信することができる。また、接続サーバ10は、現場ごと、ユーザごとに予め申し込まれたライセンス数の上限まで、S110〜S160の処理を実行し、ライセンス数を上回る接続要求がきた場合、その接続要求は無視する。例えば、図3のライセンス情報管理テーブル141の1行目によれば、「ライセンス数:3」に対応して、現場50Aについての補正情報60Aを「ユーザID:IDU1」のユーザの現場端末30に送信する通信ポートのポート番号は「30001〜30003」の3つである。したがって、ポート番号が「30001〜30003」の3つ通信ポートの全てが使用中の場合、これらの通信ポートは各々1台の現場端末30に補正情報60Aを送信中なので、端末通信部16は、これら3つの通信ポートへの新たな接続要求を、「ライセンス数:3」を超えた4台目の現場端末30からの接続要求として無視する。
以上に説明したように、接続サーバ10の実行する制御方法(処理)は、現場端末30に対し補正情報60を送信する補正情報送信装置の制御方法であって、1つのVRS40(仮想基準点)に係る補正情報60を取得する取得ステップ(S150)と、前記取得ステップにて取得した補正情報60を、ユーザが予め設定したライセンス数(上限数)以下の台数の現場端末30であって、ユーザの複数の現場端末30の各々に送信する送信ステップ(S160)と、を含んでいる。
(接続サーバの実行する接続可否判定処理)
図6は、図5における接続可否判定処理(S110)の詳細な具体例を示すフローチャートである。図5の接続可否判定処理(S110)は、図6に例示するS111およびS112の処理を含んでいる。以下、接続可否判定処理について詳細を説明していく。
現場端末30は、例えば現場50に対応するIPアドレスの、現場50ごと、ユーザごとに予め割り当てられたポート番号の通信ポートに対して、接続要求を送信する(図5のS310)。接続サーバ10の端末通信部16は、通信ポート(例えば、TCPポートまたはUDPポート)を常時監視している。端末通信部16は、現場50ごと、ユーザごとに予め割り当てておいた通信ポートのいずれかに対する現場端末30からの接続要求を取得すると(S111)、接続要求を取得した通信ポートが未使用であるかを判定する。すなわち、端末通信部16は、現場50ごと、ユーザごとに予め割り当てておいた複数の通信ポートの内、未使用の通信ポートが残っているかを判定する(S112)。
接続サーバ10の端末通信部16は、現場50ごと、ユーザごとにライセンス数に応じて割り当てた複数の通信ポートの内、現場端末30との間で通信を行っていない通信ポート(未使用の通信ポート)があると判定すると(S112でYes)、その未使用の通信ポートに対する現場端末30から接続要求を許可する(図5のS120)。現場50ごと、ユーザごとにライセンス数に応じて割り当てた複数の通信ポートの全てが使用中の状態の場合(S112でNo)、それらの通信ポートのいずれかに新たな接続要求があったとしても、端末通信部16は、その新たな接続要求は無視する。端末通信部16によって接続要求が無視された現場端末30には、補正情報60は送信されない。
(ユーザが利用可能な画面)
(ユーザ登録画面)
図7は、測位システム1において、ユーザが補正情報60の送信サービス(補正情報配信サービス)の利用を申し込むためのユーザ登録画面の一例を示す図である。図7に例示するユーザ登録画面において、接続サーバ10が提供する補正情報60の送信サービス(補正情報配信サービス)の利用を申し込もうとするユーザは、その氏名および氏名のふりがな、メールアドレス、所属する会社の会社名および会社名のふりがな、所属する部署名、郵便番号、住所、電話番号、申し込みに係る権限、ユーザとしての記載内容の作成日および修正日などを入力する。
接続サーバ10の申込情報取得部11は、図7に例示するユーザ登録画面に入力された情報を取得する。そして、ライセンス情報生成部12は、申込情報取得部11が取得した情報を、つまり、接続サーバ10が提供する補正情報60の送信サービス(補正情報配信サービス)の利用を申し込むユーザについての情報を、ユーザ情報管理テーブル142に格納する。なお、図7に例示するユーザ登録画面は、接続サーバ10がユーザのPC等に表示させてもよい。すなわち、接続サーバ10は、図7に例示するユーザ登録画面をユーザのPC等に表示させる機能を備えていてもよい。また、接続サーバ10は、測位システム1の外部の装置がユーザのPC等に表示させたユーザ登録画面への入力内容を取得するだけであってもよい。
(現場登録画面)
図8は、測位システム1において、ユーザが補正情報60の送信サービス(補正情報配信サービス)の利用を申し込むための現場登録画面の一例を示す図である。図8に例示する現場登録画面において、ユーザは、地図上で、所定の大きさ(例えば、略中心位置から10km以内)の領域(図8において、地図上に円で示された領域)を、現場50として指定する。接続サーバ10の仮想基準点算出部13は、現場50としてユーザに指定された領域の略中心位置を算出し、算出した略中心位置に、現場50に共通の1つの仮想基準点としてのVRS40を設置する。仮想基準点算出部13は、例えば、現場50としてユーザに指定された領域の外周上の複数の点の緯度、経度、および楕円体高から、VRS40の緯度、経度、および楕円体高を算出する。楕円体高とは、GNSSから得られる高さであり、WGS84(World Geodetic System 1984)の楕円体面からの高さである。
図8に例示する現場登録画面において、ユーザは、現場50として指定した領域について、現場50に対応する1つの補正情報60を受信可能な現場端末30の上限数を「ライセンス数」として入力する。ユーザは、現場端末30が補正情報60を受信する際の接続サーバ10と現場端末30との間の通信プロトコルを「接続形態」として指定する。「接続形態」は、例えば、TCPまたはUDPであり、Ntrip(Networked Transport of RTCM via Internet Protocol)等であってもよい。ユーザは、現場端末30が受信する補正情報60のデータフォーマットを「マウントポイント」として指定する。より正確には、「マウントポイント」は、Ntripで送信される補正データ用ストリームに付けられたIDのことであり、ユーザは、マウントポイントを指示することによって、「補正情報60の種類」と「配信サービスの方式」を選択することができる。
図8に例示する現場登録画面においてはさらに、ユーザが指定した現場50の補正情報60を受信するために現場端末30が接続を要求する通信ポートの「ポート番号」が表示されている。図8に例示する現場登録画面における「ポート番号」は、現場登録画面でユーザが指定した現場50ごと、ユーザごとに、ライセンス数に応じて割り当てられたポート番号を示している。図8に示す例では、「ライセンス数:3」である、「30001〜30003(つまり、30001、30002、および30003)」という3つのポート番号が、ユーザが指定した現場50の補正情報60を受信するために現場端末30が接続を要求する通信ポートのポート番号として表示されている。
接続サーバ10の申込情報取得部11は、図8に例示する現場登録画面に入力された情報を取得する。そして、ライセンス情報生成部12は、申込情報取得部11が取得した情報(補正情報配信サービスの利用申込に際してユーザが指定した「現場位置」および「ライセンス数」等についての情報)を、ユーザ情報管理テーブル142に格納する。ライセンス情報生成部12は、現場50ごとに、対応する1つのVRS40の位置情報をライセンス情報管理テーブル141に格納し、また、現場50ごと、ユーザごとに、ライセンス数に対応する数のポート番号を、ライセンス情報管理テーブル141に格納する。なお、図8に例示する現場登録画面は、接続サーバ10がユーザのPC等に表示させてもよい。すなわち、接続サーバ10は、図8に例示する現場登録画面をユーザのPC等に表示させる機能を備えていてもよい。また、接続サーバ10は、測位システム1の外部の装置がユーザのPC等に表示させた現場登録画面への入力内容を取得するだけであってもよい。
(現場一覧画面)
図9は、ユーザが図8の現場登録画面を利用して補正情報60の送信サービス(補正情報配信サービス)の利用を申し込んだ現場50を、ユーザごとに一覧で示す現場一覧画面の一例を示す図である。図9に例示する現場一覧画面において、「現場名」は、ユーザが図8に例示する現場登録画面を用いて補正情報配信サービスの利用を申し込んだ現場50の名称を示している。「作成者」は、現場50の各々について、補正情報配信サービスの利用を申し込んだユーザの名称を示している。「作成日」は、現場50の各々について、補正情報配信サービスの利用のための情報の初回入力日を、「修正日」は、現場50の各々について、補正情報配信サービスの利用のための情報を修正した(編集した)直近の日を、示している。「ライセンス数」は、現場50ごと、ユーザごとの、「補正情報60を利用可能な現場端末30の台数の上限数」を示し、「接続数」は、「現在、接続サーバ10に接続している(つまり、補正情報60の送信を受けている)現場端末30の台数」を示している。「Action」は、この現場一覧画面に示されている現場50の各々についてユーザが実行する処理を示しており、各々の現場50について、ユーザは例えば、申込内容の確認(View)、申込内容の変更(Edit)、および申込内容の削除(Delete)から1つを選択して実行することができる。「接続形態」は、接続サーバ10と現場端末30との間の通信プロトコルを示している。なお、「N−Trp」は、Ntripを略記したものである。
「Ntrip発行状況」は、現場端末30がNtripで接続サーバ10と通信するための環境が整っているか否かを示している。現場端末30との通信プロトコルとしてNtripが選択された場合、接続サーバ10は、例えば、現場50ごと、ユーザごとに、申し込まれたライセンス数に応じた数の「Ntrip通信用ユーザアカウント」を発行する。1つの「Ntrip通信用ユーザアカウント」で、1度に、1台の現場端末30のみが接続サーバ10に接続することができる。「Ntrip発行状況:済」は、現場50ごと、ユーザごとに、申し込まれたライセンス数に応じた数の「Ntrip通信用ユーザアカウント」が発行されていることを示している。
(現場設定方法)
図10は、ユーザが現場50を設定する方法の一例を示す図である。図10の(A)〜(F)に示すように、ユーザは地図上で複数の点50(1)〜50(6)を選択(設定)することによって、複数の点50(1)〜50(6)によって囲まれた領域を現場50として指定することができる。接続サーバ10の仮想基準点算出部13は、ユーザによって指定された領域である現場50の略中心にVRS40を設置する。仮想基準点算出部13は、例えば、ユーザが選択した複数の点50(1)〜50(6)の各々の緯度および経度から、現場50の略中心に設置するVRS40の緯度および経度を算出する。仮想基準点算出部13は、ユーザが選択した複数の点50(1)〜50(6)の各々の標高(または楕円体高)から、VRS40の標高(または楕円体高)を算出してもよい。
測位システム1において、ユーザは、地図上に任意にVRS40を設定(設置)することができ、例えば、ユーザは地図上の任意の領域を現場50として指定し、指定した領域の略中心にVRS40を設定(設置)することができる。すなわち、接続サーバ10は、ユーザの指定した領域である現場50の略中心としてVRS40を設置する。
なお、ユーザが現場50を指定する方法は図10に示す方法に限られない。図10には、ユーザが地図上で50(1)〜50(6)の6つの点を選択(設定)することにより、接続サーバ10が、50(1)〜50(6)の6つの点で囲まれた領域を現場50として認識する例を示した。しかしながら、ユーザが地図上で選択する点の数は3つ以上であればよく、接続サーバ10は、ユーザにより選択された3つ以上の点で囲まれた領域を現場50として認識してもよい。また、ユーザが地図上で3つ以上の点を選択することも必須ではない。図8に例示したように、ユーザは、地図上で、所定の大きさの円または楕円(例えば、略中心位置から10km以内の円または楕円)を描画し、描画した円または楕円を現場50として指定してもよい。この場合、接続サーバ10の仮想基準点算出部13は、現場50としてユーザが描画した円または楕円の外周上の複数の点の緯度、経度、および楕円体高から、VRS40の緯度、経度、および楕円体高を算出するとしてもよい。
また、接続サーバ10がユーザ操作に基づいてVRS40を設置する方法は、ユーザの指定した現場50の略中心としてVRS40を設置する方法に限られるものではない。接続サーバ10は、例えば、ユーザによって指定された地図上の1点にVRS40を設置し、さらに、設置したVRS40を略中心とする円または楕円を現場50として設定してもよい。すなわち、接続サーバ10は、ユーザが指定した領域である現場50から1つのVRS40を設置する代わりに、ユーザが地図上で選択した1点に1つのVRS40を設置し、設置した1つのVRS40から所定の範囲を現場50と見なしてもよい。なお、補正情報60を用いた自位置の測位精度の観点から、現場50として設定される領域は、VRS40から10Km以内であることが好ましい。
〔実施形態2〕
上記までに説明してきた測位システム1においては、接続サーバ10と現場端末30との間の接続形態が例えばTCPまたはUDPである例を主に説明してきた。しかしながら、接続サーバ10が現場端末30とTCPまたはUDPで通信を行うことは必須ではない。接続サーバ10は、現場端末30と、例えばNtripで通信を行ってもよい。Ntripは、インターネット回線を使用したGPSデータ通信プロトコルであり、つまり、RTK−GNSSの測位に利用するGNSS補正データを、インターネットを利用して送受信するための通信プロトコルである。
例えばNtripで現場端末30と通信する場合、接続サーバ10は、通信する現場端末30の各々の識別情報(一例として、後述する「Ntrip通信用ユーザアカウント」)を、通信する現場端末30から取得する。本実施形態の接続サーバ10は、複数の現場端末30の各々の識別情報によって、現場50ごとに共通の1つのVRS40の補正情報60を送信する現場端末30の台数を管理する。接続サーバ10は、現場50ごとに共通の1つのVRS40の補正情報60を、現場50ごと、ユーザごとのライセンス数に達するまで、識別情報によって識別される個々の現場端末30に送信する。
接続サーバ10は、現場50ごと、ユーザごとに、申し込まれたライセンス数に応じた数のユーザアカウント(例えば、「Ntrip通信用ユーザアカウント」)を予め発行しておく。1つのユーザアカウントで、1度に、1台の現場端末30のみが接続サーバ10に接続することができる。そして、複数の現場端末30の各々は、予めライセンス数に応じて発行された数のユーザアカウントの1つで、接続サーバ10に接続する。したがって、接続サーバ10は、発行するユーザアカウントの数によって、現場50ごと、ユーザごとに、「現場50ごとに共通の1つのVRS40の補正情報60を受信可能な現場端末30の台数」を管理することができる。
本実施形態においても、補正情報受信部18は、生成サーバ20から、現場50ごとに共通の1つのVRS40の補正情報60を受信する。本実施形態における端末通信部16は、現場50ごと、ユーザごとに予め発行された上記のユーザアカウントの1つで接続を要求してきた現場端末30のみに補正情報60を送信する。すなわち、端末通信部16は、「1度に、1台の現場端末30のみが利用可能な」、「現場50ごと、ユーザごとに、申し込まれたライセンス数に応じた数が発行された」ユーザアカウントの1つで接続を要求してきた現場端末30にのみ補正情報60を送信する。したがって、本実施形態においても、端末通信部16は、補正情報受信部18により取得された補正情報60を、ユーザが予め設定したライセンス数(上限数)以下の台数の現場端末30であって、ユーザの複数の現場端末30の各々に送信する。
これまで説明してきたように、実施形態1の接続サーバ10は「一度に1つの接続のみ可能な通信ポート(のポート番号)」の数をライセンス数に相当する数とし、本実施形態の接続サーバ10は「通信する現場端末30の各々の識別情報(例えば、1度に1台の現場端末30のみが利用可能なユーザアカウント)」の数をライセンス数に相当する数とする。これに対応して、本実施形態のライセンス情報管理テーブル141は以下のように構成されてもよい。すなわち、本実施形態において、図3に例示したライセンス情報管理テーブル141には、「割当ポート番号」という項目に代えて、「割当ユーザアカウント」という項目が設けられてもよい。そして、ライセンス情報管理テーブル141の「割当ユーザアカウント」には、現場50ごと、ユーザごとに、ライセンス数に対応する数を予め発行したユーザアカウントが格納されてもよい。
すなわち、本実施形態のライセンス情報管理テーブル141には、1つの現場50に対応付けて、1つのVRS40の位置情報が格納される。また、現場50ごと、ユーザごとに、ライセンス数に対応する数のユーザアカウントが格納される。本実施形態のライセンス管理部15は、ライセンス情報管理テーブル141を参照して、端末通信部16に接続してきた現場端末30のユーザアカウントから、そのユーザアカウントに対応する現場50を、つまり、対応するVRS40の位置(対応仮想基準点位置)を、特定する。本実施形態の端末通信部16は、端末通信部16に接続してきた現場端末30のユーザアカウントに対応するVRS40の補正情報60を、端末通信部16に接続してきた現場端末30に送信する。なお、本実施形態の端末通信部16は、接続してきた現場端末30のユーザアカウントによって補正情報60を送信する現場端末30を管理するので、現場端末30が接続を要求する通信ポートの各々について、一度に複数の接続を許可してもよい。
なお、上記以外の構成(例えば、仮想基準点算出部13が、ユーザによって現場50として指定された領域を特定する情報から、現場50に1つ設置されるVRS40の位置情報を生成する構成等)については、実施形態と同様であり、説明は省略する。
〔実施形態3〕
上記までに説明してきた測位システム1においては、以下の複数の処理(機能)が複数の装置に分散されて実行される構成となっていた。例えば、(1)ユーザが補正情報60の送信サービス(補正情報配信サービス)の利用を申し込むためのユーザインターフェース(例えば、図7および図8に例示したようなユーザ登録画面および現場登録画面)を提供する機能、(2)ユーザからの補正情報配信サービスの申込内容を取得する機能、(3)ユーザからの申込内容に基づいて、現場50ごと、ユーザごとに、ライセンス数に応じた数のポート番号を、接続可能な通信ポートのポート番号として割り当てる機能、(4)現場50ごとに共通の1つのVRS40の位置を算出する機能、(5)現場端末30からの接続要求を受信する機能、(6)現場端末30からの接続要求を許可した通信ポートのポート番号から、対応するVRS40の位置情報を取得する機能、(7)対応するVRS40の補正情報60を生成する機能、および(8)補正情報60を、現場端末30からの接続要求を許可した通信ポートから、現場端末30に送信する機能は、接続サーバ10および生成サーバ20によって分担されて実行されていた。
しかしながら、1つのサーバまたは装置内で各々の機能を実現してもよいし、各々の機能を有するサーバまたは装置が個別に複数存在してもよいし、個々のサーバは異なる事業者によって管理されていてもよい。例えば、接続サーバ10が生成サーバ20を含み、接続サーバ10が上記(1)〜(8)の機能を全て実行してもよい。また、例えば、接続サーバ10および生成サーバ20の各々によって実行されていた上記(1)〜(8)の機能を複数のサーバによって分散して実行させてもよい。例えば、接続サーバ10とは別のサーバが現場50ごとに共通の1つのVRS40の位置を算出し、接続サーバ10は、その別のサーバから現場50ごとに共通の1つのVRS40の位置の情報を取得するだけでもよい。そして、接続サーバ10は、現場50ごと(つまり、1つの現場50に対応する1つのVRS40ごと)、ユーザごとに、ライセンス数に応じた数のポート番号を管理するだけであってもよい。すなわち、接続サーバ10が現場50の略中心としてVRS40を算出する機能を備えていることは必須ではない。接続サーバ10は、現場端末30からの接続要求を許可した通信ポートのポート番号から、その現場端末30に送信すべき補正情報60に対応するVRS40を特定できればよい。
〔実施形態4〕
接続サーバ10の各機能ブロック(申込情報取得部11、ライセンス情報生成部12、仮想基準点算出部13、ライセンス管理部15、端末通信部16、仮想基準点情報送信部17、および補正情報受信部18)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。後者の場合、接続サーバ10を図11に示すようなコンピュータ(電子計算機)を用いて構成することができる。
図11は、接続サーバ10として利用可能なコンピュータ400の構成を例示したブロック図である。コンピュータ400は、図11に示すように、バス410を介して互いに接続された演算装置420と、主記憶装置430と、補助記憶装置440と、入出力インタフェース450と、を備えている。演算装置420、主記憶装置430、および補助記憶装置440は、それぞれ、例えばCPU、RAM(random access memory)、ハードディスクドライブであってもよい。なお、主記憶装置430は、コンピュータ読み取り可能な「一時的でない有形の媒体」であればよく、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブル論理回路などを用いることができる。
入出力インタフェース450には、入力装置500および出力装置600が接続される。接続サーバ10に対する入力装置500および出力装置600(例えば、生成サーバ20および現場端末30)は、他のサーバまたは装置から送信されるデータの受信、および他のサーバまたは装置へのデータの送信を行うことができる。接続サーバ10に対する入力装置500および出力装置600は、さらに、ユーザからの音声および文字等の入力操作の取得、およびユーザへの発話等を行うことができてもよい。
補助記憶装置440には、コンピュータ400を接続サーバ10として動作させるための各種プログラムが格納されている。そして、演算装置420は、補助記憶装置440に格納された上記各プログラムを主記憶装置430上に展開し、主記憶装置430上に展開された上記各プログラムに含まれる命令を実行することによって、コンピュータ400を、接続サーバ10が備える各部として機能させる。
なお、ここでは、内部記録媒体である補助記憶装置440に記録されている上記各プログラムを用いてコンピュータ400を機能させる構成について説明したが、外部記録媒体に記録されているプログラムを用いてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。