測位システム、測位用ICチップ、測位方法及び測位プログラム
【課題】信号発生源からの信号の送信時刻を精度良く推定し、その推定により受信機の位置を精度良く測定すること。
【解決手段】受信機10は、複数のGPS衛星20から送信された複数の信号に基づいて各GPS衛星の速度ベクトルを算出する速度ベクトル算出部12と、複数の速度ベクトルから速度ベクトルの組合せを生成し、その組合せに基づいて、上記複数のGPS衛星から複数のGPS衛星を選択する衛星選択部13と、選択されたGPS衛星からの信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に受信機10の位置を算出する位置算出部15と、算出された受信機10の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定し、該一の送信時刻に対応する受信機10の位置を推定位置として設定する位置精度評価部17と、を備える。
【解決手段】受信機10は、複数のGPS衛星20から送信された複数の信号に基づいて各GPS衛星の速度ベクトルを算出する速度ベクトル算出部12と、複数の速度ベクトルから速度ベクトルの組合せを生成し、その組合せに基づいて、上記複数のGPS衛星から複数のGPS衛星を選択する衛星選択部13と、選択されたGPS衛星からの信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に受信機10の位置を算出する位置算出部15と、算出された受信機10の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定し、該一の送信時刻に対応する受信機10の位置を推定位置として設定する位置精度評価部17と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、受信機の位置を推定する測位システム、測位用ICチップ、測位方法及び測位プログラムに関する。
【背景技術】
【0002】
従来から、GPS(Global Positioning System、全地球測位システム)及びGalileo等を用いて受信機の測位を行う技術が知られている。これらのシステムは、測位用信号発信源である衛星(擬似衛星を含む)から受信機までの距離に基づいて測位を行なう。また、衛星からの信号と移動体通信網の信号とを併用して測位を行うハイブリッド(Hybrid)と呼ばれる測位方式もある。
【0003】
上記の測位方法では、衛星から送信され受信機により受信された測位用信号の送信時刻及び受信時刻に基づいて衛星から受信機までの距離が算出され、算出した距離を用いて測位計算が実行される。複数の衛星から受信機までの距離と各衛星の位置が正確に算出されれば、それらの衛星の位置を中心とし算出された距離を半径とした球の交点を算出することで、受信機の位置を算出することができる。しかしながら、上記の距離の算出では、誤差を発生させうる様々な要素が存在するため、正確な距離を算出することが難しい。そこで、算出された複数の衛星と受信機との間の距離から、最小二乗法等の方法で受信機の位置を算出することが行われている。このような手法は、例えば下記非特許文献1に記載されている。
【非特許文献1】井坂丈泰、「GPS技術入門」、東京電機大学出版局、2003年2月28日、36−41頁
【発明の開示】
【発明が解決しようとする課題】
【0004】
衛星の位置を算出するためには、衛星の軌道情報と送信時刻とを正確に知る必要がある。通常では、衛星の軌道情報、および送信時刻は、常時衛星から送信されている航法メッセージを受信することで知ることが可能である。一方、送信時刻を正しく検出できない事がある。例えば、屋内などにおいてGPS信号の強度が低下するなどの場合において、検出した送信時刻情報に誤りが発生することがある。この場合、検出した送信時刻情報の誤りにより、衛星の位置を正しく計算できないため、衛星の位置を中心とする球を正しく算出できなくなる。その結果、受信機の正確な位置を算出することが困難になる。
【0005】
このように、衛星を用いる測位方式では、信号の送信時刻の推定が測位精度に大きな影響を与える。また、送信時刻の推定の精度は、測位に用いる衛星をどのように選択するかにより大きく異なってくる。特に、受信可能な衛星数が少ない場合や、ハイブリッド測位法などでは、使用する衛星によって送信時刻の推定が困難になることがある。
【0006】
本発明は、上記課題を解決するためになされたものであり、信号発生源からの信号の送信時刻を精度良く推定し、その推定により受信機の位置を精度良く測定することが可能な測位システム、測位用ICチップ、測位方法及び測位プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明の測位システムは、受信機の位置を推定する測位システムであって、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、信号発信源選択手段により選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、位置算出手段により算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、送信時刻設定手段により設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、を備えることを特徴とする。
【0008】
また、本発明の測位用ICチップは、受信機の位置を推定する測位用ICチップであって、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、信号発信源選択手段により選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、位置算出手段により算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、送信時刻設定手段により設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、を備えることを特徴とする。
【0009】
また、本発明の測位方法は、測位システムが受信機の位置を推定する測位方法であって、測位システムが、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出ステップと、測位システムが、速度ベクトル算出ステップにおいて算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択ステップと、測位システムが、信号発信源選択ステップにおいて選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出ステップと、測位システムが、位置算出ステップにおいて算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定ステップと、送信時刻設定ステップにおいて設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定ステップと、を含むことを特徴とする。
【0010】
また、本発明の測位プログラムは、コンピュータに受信機の位置を推定させる測位プログラムであって、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出機能と、速度ベクトル算出機能により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択機能と、信号発信源選択機能により選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出機能と、位置算出機能により算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定機能と、送信時刻設定機能により設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定機能と、をコンピュータに実行させることを特徴とする。
【0011】
このような測位システム、測位用ICチップ、測位方法及び測位プログラムによれば、まず、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルが算出される。続いて、算出された速度ベクトルに基づいて生成された速度ベクトルの組合せに基づいて、上記複数の信号発信源から複数の信号発信源が選択される。続いて、選択された信号発信源からの信号に基づいて、複数の時刻毎に受信機の位置が算出される。続いて、算出された複数の位置を評価して、その複数の位置に対応する複数の時刻から一の時刻が信号の送信時刻として設定される。そして、設定された一の送信時刻に対応する受信機の位置が、推定位置として設定される。
【0012】
本発明者は、鋭意研究の結果、複数の信号発信源から送信された複数の信号の送信時刻の推定が、それら信号発信源の相対位置の時間変化により左右されるという知見を得た。信号発信源の相対位置の時間変化は、信号発信源の進行方向及び速度の大きさ(速さ)を示す速度ベクトルから導出できる。そのため、速度ベクトルの組合せに基づいて信号発信源を選択し、選択された信号発信源からの信号に基づいて複数の時刻から一の時刻を信号の送信時刻として設定することにより、信号発生源からの信号の送信時刻を精度良く推定できる。また、送信時刻として設定された一の時刻に対応する受信機の位置を該受信機の推定位置として設定することで、受信機の位置を精度良く測定できる。
【0013】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトルの組合せに対するベクトル和を算出し、算出されたベクトル和に基づいて複数の信号発信源から複数の信号発信源を選択することが好ましい。
【0014】
この場合、速度ベクトルの組合せに対するベクトル和が算出され、そのベクトル和に基づいて複数の信号発信源が選択される。このように、算出が簡易なベクトル和を用いることで、送信時刻の推定をより簡易に行うことが可能になる。
【0015】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された速度ベクトルの組合せに対するベクトル和の大きさが所定の閾値以下である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択することが好ましい。
【0016】
この場合、信号の送信元である複数の信号発信源に対応する複数の速度ベクトルの組合せが生成され、生成された組合せに対するベクトル和が算出される。そして、算出されたベクトル和の大きさが所定の閾値以下である場合に、信号の送信元である複数の信号発信源がすべて選択される。概して、ベクトル和の大きさが小さいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、閾値を用いてベクトル和の大きさを評価することで、送信時刻の推定の精度を一定の水準以上に保つことができる。
【0017】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る組合せを複数生成し、生成された複数の組合せのそれぞれについてベクトル和を算出し、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応する信号発信源を選択することが好ましい。
【0018】
この場合、信号の送信元である信号発信源の個数よりも少ない個数の速度ベクトルから成る組合せが複数生成され、生成された複数の組合せのそれぞれについてベクトル和が算出される。そして、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応する信号発信源が選択される。概して、ベクトル和の大きさが小さいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、ベクトル和の大きさが最小の組合せに対応する信号発信源を選択することで、送信時刻の推定の精度が最も高い信号発信源の組合せを取得できる。
【0019】
本発明の測位システムでは、信号発信源選択手段が、組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された値に基づいて複数の信号発信源から複数の信号発信源を選択することが好ましい。
【0020】
この場合、速度ベクトルの組合せを構成する速度ベクトルのばらつきを示す値が算出され、その値に基づいて複数の信号発信源が選択される。このように、ばらつきを示す値を用いることで信号発信源の相対位置の変化をより的確に導出することができ、その結果、送信時刻の推定をより精度良く行うことが可能になる。
【0021】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された組合せを構成する速度ベクトルのばらつきを示す値が所定の閾値以上である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択することが好ましい。
【0022】
この場合、信号の送信元である複数の信号発信源に対応する複数の速度ベクトルの組合せが生成され、生成された組合せを構成する速度ベクトルのばらつきを示す値が算出される。そして、算出された値が所定の閾値以上である場合に、信号の送信元である複数の信号発信源がすべて選択される。速度ベクトルのばらつきを示す値が大きいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、速度ベクトルのばらつきを示す値を閾値で評価することで、送信時刻の推定の精度を一定の水準以上に保つことができる。
【0023】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る組合せを複数生成し、生成された複数の組合せのそれぞれについて該組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された複数の値のうち最も大きい値を導出する速度ベクトルに対応する信号発信源を選択することが好ましい。
【0024】
この場合、信号の送信元である信号発信源の個数よりも少ない個数の速度ベクトルから成る組合せが複数生成され、生成された複数の組合せのそれぞれについて速度ベクトルのばらつきを示す値が算出される。そして、算出された値のうち最も大きい値を導出する速度ベクトルに対応する信号発信源が選択される。速度ベクトルのばらつきを示す値が大きいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、速度ベクトルのばらつきを示す値が最大の組合せに対応する信号発信源を選択することで、送信時刻の推定の精度が最も高い信号発信源の組合せを取得できる。
【発明の効果】
【0025】
このような測位システム、測位用ICチップ、測位方法及び測位プログラムによれば、速度ベクトルの組合せに基づいて信号発信源が選択され、選択された信号発信源からの信号に基づいて複数の時刻毎に受信機の位置が算出され、算出された位置を評価することで一の時刻が信号の送信時刻として設定されるので、信号発生源からの信号の送信時刻を精度良く推定し、その推定により受信機の位置を精度良く測定することができる。
【発明を実施するための最良の形態】
【0026】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
【0027】
まず、図1を用いて、実施形態に係る測位システムである受信機10と、信号発信源である複数のGPS衛星20を説明する。図1は、受信機10及びGPS衛星20を示す図である。なお、図1にはGPS衛星が4機(GPS衛星20a〜20d)示されているが、GPS衛星20の個数は限定されない。
【0028】
受信機10は、複数のGPS衛星20から電波として送信される測位用信号(メジャメント)を受信し、その測位用信号を用いて自機の位置を推定する測位装置である。受信機10は、測位を行う機能に加えて、更に移動体通信を行う機能を有していてもよい。受信機10は、例えば、携帯電話機等の移動通信端末である。受信機10は、ユーザが受信機10に対して測位を指示する入力を行った場合等に自機の位置を測定する。
【0029】
GPS衛星20は、時刻に応じて所定の場所に位置し、その位置から測位に用いられる測位用信号を送信している。GPS衛星20は、高度約2万kmの6個の周回軌道上に4〜5機ずつ配置されており、時間の経過に伴って周回軌道上を移動する。GPS衛星20が送信する測位用信号には、GPS衛星20を区別して特定するための識別情報、GPS衛星20の軌道を示す情報、及び信号を送信した時刻を示す情報が含まれている。
【0030】
本実施形態における測位の原理について図2〜4を用いて簡単に説明する。ここでは、受信機10が4機のGPS衛星20a〜20dから測位用信号を受信する場合を例に説明する。受信機10は、GPS衛星20a〜20dからの測位用信号に基づいてこれらGPS衛星20a〜20dとの間の距離を算出する。具体的には、受信機10は、測位用信号の伝播時間(GPS衛星20a〜20dにより送信されてから受信機10により受信されるまでの時間)に光速を乗算することにより、自機とGPS衛星20a〜20dとの距離a〜dを算出する。距離a〜dは、GPS衛星20a〜20dで共通である測位用信号の送信時刻ttと、受信機10での各測位用信号の受信時刻tra〜trdと、光速とを用いて、以下の式により算出できる。
距離a=光速×(tra−tt)
距離b=光速×(trb−tt)
距離c=光速×(trc−tt)
距離d=光速×(trd−tt)
【0031】
GPS衛星20a〜20dと受信機10との間の距離が正確に算出されれば、図2に示すように、GPS衛星20aの位置を中心として距離aを半径とする球(円)21a、及びGPS衛星20b〜20dについて同様に導出される球(円)21b〜21dの交点31が受信機10の位置となる。
【0032】
しかし、通常、算出される距離a〜dは、GPS衛星20a〜20dと受信機10との時計のずれ、マルチパス、GPS衛星20a〜20dの軌道情報の誤差及び大気圏の変動などにより、誤差を含んでいる。そのため、図3に示すように、導出される球(円)22a〜22dは、正確な距離(実際の距離)を半径とする球(円)21a〜21dと異なる。ここで、正確な距離と算出された距離とのずれ23a〜23dがGPS衛星20a〜20d間で等しければ、受信機10は、最小二乗法などを用いて球(円)22a〜22dのそれぞれから等しい距離にある位置31を受信機10の位置として正確に算出できる。この場合、受信機10の位置の算出には、最低でも4機のGPS衛星20を利用する必要がある。
【0033】
しかし、図4に示すように、通常、正確な距離と算出された距離とのずれ23a〜23dの大きさは、GPS衛星20a〜20d間で区々である。その場合、最小二乗法などにより算出された、球(円)22a〜22dのそれぞれから等しい距離にある位置31は、受信機10の実際の位置32と異なるものとなる。
【0034】
このように、算出された位置と実際の位置との誤差、即ち、測位誤差は、GPS衛星20a〜20dと受信機10との間の、正確な距離と算出された距離とのずれ23a〜23dのばらつきにより発生する。
【0035】
ここで、GPS衛星20a〜20dと受信機10との間の距離(擬似距離)prn(n=1〜4)は、以下のように表すことができる。
【数1】
【0036】
なお、rnはGPS衛星20a〜20dから受信機10までの実際の距離、clknはGPS衛星20a〜20dの時計と受信機10の時計とのずれ、βnは衛星間の時計のずれである。これらの誤差要素rn,clkn,βnは、軌道情報の誤差や大気圏の変動等が原因で発生するものであり、補正が可能である。これに対し、εnはその他のマルチパスや、βnの補正後に残る誤差等による距離の誤差であり、補正が不可能なものである。
【0037】
各GPS衛星20a〜20dは互いに時計の同期をとるので、誤差要素clknは各GPS衛星20a〜20d間で同じ値となる。即ち、clknは、受信機10のクロックバイアスである。また、誤差要素βnは、GPS衛星20の航法メッセージのパラメータにより補正できる。一方、誤差要素εnは、環境等により変化する成分やβn補正後に残る誤差が含まれるため、各GPS衛星20a〜20d間で異なり、また、計算により解いたり実際に観測したりして補正することが事実上不可能である。従って、上述した測位の誤差は、εnによるものである。
【0038】
そして、最小二乗法などにより算出された受信機10の位置からGPS衛星20a〜20dまでの各距離r´nと、GPS衛星20a〜20dについて算出、且つ補正された擬似距離prnとの差分を擬似クロックバイアスと定義する。擬似クロックバイアスをΔrnとすれば、Δrn=prn−r´nである。擬似クロックバイアスは、図6に示すように、GPS衛星20a〜20dの位置を中心として擬似距離prnを半径とする球(円)22a〜22dから、算出された受信機10の位置31までの距離24a〜24dである。
【0039】
擬似クロックバイアスΔrnは、上記の式(1)におけるrnをr´nとすると、以下の式のようにみなすことができる。
Δrn=clk´+ε´n
【0040】
ここで、clk´は、GPS衛星20a〜20dの時計と受信機10の時計のずれなどの共通な成分である。ε´nは、r´nに対応する誤差の変動成分(補正不能な成分)である。ここで、ε´nがゼロに近いほど擬似距離が正確であるといえ、Δrnが複数のGPS衛星20a〜20d間で揃った値となる。一方、ε´nがゼロから離れるほど擬似距離prnが不正確であることとなり、Δrnが複数のGPS衛星20a〜20d間でばらついた値となる。また、擬似距離prnが不正確であれば、算出された受信機の位置も正確な位置からずれる可能性が大きくなる。つまり、擬似クロックバイアスのばらつきによって、算出された受信機位置が正確かどうか(GPS測位精度)を判定することが可能である。
【0041】
GPS測位では、測位用信号の送信時刻におけるGPS衛星20の位置を知ることが必要である。通常、GPS測位では、GPS衛星20から送信される航法メッセージ中の衛星軌道パラメータによって、一定範囲内の任意時刻におけるGPS衛星20の位置が算出される。従って、GPS衛星20の正確な位置を算出ためには、正確な送信時刻が必要である。通常は、送信時刻情報を航法メッセージから取得することが可能である。しかしながら、GPS信号強度の低下などの原因で取得した送信時刻情報(TOW)が誤れば、算出されるGPS衛星20の位置に誤差が生じ、GPS測位の精度が大幅に劣化する。
【0042】
図5に示すように、GPS衛星20は数km/sの速度で移動している。送信時刻情報(TOW)が誤っていると、GPS衛星20が測位用信号を送信した時に実際には位置P1に位置していたにもかかわらず、位置P1とは異なる位置P2にGPS衛星20が存在していたものとして測位計算が行われてしまう。その結果、受信機10の位置が誤って算出されてしまう。そこで本実施形態では、前述のように、擬似クロックバイアスを用いると、GPS測位精度の評価が可能であることを利用して、このような状況を回避して正確な測位を行う。
【0043】
受信機10は、受信された航法メッセージから送信時刻情報(TOW)を取得し、その時刻情報に基づいて、探索する時刻の範囲(探索時間)と探索ステップ幅とを決定する。続いて受信機10は、探索時間において、探索ステップ幅に区切られた複数の送信時刻(以下では「探索時刻」ともいう)での各GPS衛星20a〜20dの位置を、衛星軌道パラメータ等を用いて算出する。続いて受信機10は、当該複数の送信時刻に応じて算出した各GPS衛星20a〜20dの位置と、GPS衛星20a〜20dまでの擬似距離とに基づいて、受信機10の送信時刻毎の位置を算出する。
【0044】
続いて受信機10は、送信時刻毎に算出された受信機10の位置に基づいて、送信時刻毎に擬似クロックバイアスΔrn(TOW)を算出する。続いて受信機10は、送信時刻毎に擬似クロックバイアスΔrn(TOW)のばらつきを算出する。なお、擬似クロックバイアスのばらつきを示す方法としては、分散や、平均との差分の最大値などが使用可能である。ここで、例として、分散σΔrn(TOW)2を用いてばらつきを表現すると、TOWと分散σΔrn(TOW)2との関係は、図7に示すグラフで表される。図7のグラフでは、横軸がTOWを、縦軸が分散σΔrn(TOW)2をそれぞれ示している。図7における実線Leは、誤差を含む擬似クロックバイアスの時間経過を示し、破線Liは、誤差がない理想的な擬似クロックバイアスの時間経過を示す。
【0045】
図7に示すように、正しい送信時刻Tpが探索範囲内にあれば、GPS衛星20は必ずその送信時刻Tpにおける位置に近づいた後、遠のく。測位誤差は、正しい送信時刻Tpに近づくにつれて小さくなった後、その送信時刻Tpから離れるにつれて大きくなる。即ち、測位誤差は、正しい送信時刻Tpにおいて最小になる。従って、測位誤差を示す、擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2の時間曲線も、図7に示すように下に凸となり、擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2は、正しい送信時刻Tpにおいて最小になる。
【0046】
従って、受信機10は、探索する時刻の範囲において擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2が最小となる時刻Tpを正しい送信時刻とし、この送信時刻Tpにおける測位結果を測位の最終結果とすればよい。さらに、送信時刻Tpにおける測位結果は、Tp探索されたあとで別途算出してよい、また、Tpの探索時に算出された位置を用いてもよい。
【0047】
このように、擬似クロックバイアスから正しい送信時刻Tpを導出できるのは、GPS衛星20a〜20dの相対位置が送信時刻毎に異なるからである。つまり、GPS衛星20a〜20dの速度ベクトル(移動の高度、単位時間における移動距離)がそれぞれ異なるからである。その結果、GPS衛星20a〜20dの相対位置が送信時刻毎に異なるからである。例えば、図8(a)〜(c)に示すように、GPS衛星20a〜20dの速度ベクトルra〜rdが互いに異なれば、GPS衛星20a〜20dの相対位置は、送信時刻t1〜t3において変動する。その結果、擬似クロックバイアスの分散も送信時刻毎に変動する。そのため、受信機10は、擬似クロックバイアスが最小となる送信時刻t2を導出でき、ひいては、GPS衛星20a〜20dの位置Pa〜Pdに基づいて受信機10の位置31を精度良く算出できる。
【0048】
しかし、図9(a)〜(c)に示すように、GPS衛星20a〜20dの速度ベクトルra〜rdが同じであり、その結果、GPS衛星20a〜20dの相対位置が送信時刻t1〜t3において変わらない場合には、擬似クロックバイアスの分散も変わらない。この場合、受信機10は、擬似クロックバイアスが最小となる送信時刻t2を導出できない。そのため、受信機10は、GPS衛星20a〜20dの位置Pa〜Pdに基づいて自機の位置31を算出できない。
【0049】
従って、受信した信号の送信元である複数のGPS衛星20の中から、正しい送信時刻を導出しうるGPS衛星20の組合せを決定する必要がある。例えば、5機以上のGPS衛星20から、図8(a)〜(c)に示されるGPS衛星20a〜20dを決定する必要がある。
【0050】
このために本実施形態では、まず、受信機10が各GPS衛星20の速度ベクトルを算出する。続いて、受信機10が、算出された複数の速度ベクトルから速度ベクトルの組合せを一つ以上生成し、生成された速度ベクトルの組合せに基づいて複数のGPS衛星20を選択する。
【0051】
速度ベクトルの組合せに基づいてGPS衛星20を選択する手法はいくつか考えられるが、ここでは一例として、速度ベクトルの和(ベクトル和)に基づいて選択する手法を簡単に説明する。送信ベクトルの組合せを生成した受信機10は、各組合せについて速度ベクトルの和(ベクトル和)を算出する。このベクトル和が小さいほど、組合せに含まれる各速度ベクトルに対応する各GPS衛星20の相対位置が送信時刻毎に変動する可能性が高いといえる。例えば、各GPS衛星20の相対位置が変動する図8の場合、ベクトル和rT1は図10(a)に示されるように比較的小さい。これに対し、各GPS衛星20の相対位置が変動しない図9の場合には、ベクトル和rT2は図10(b)に示すように大きくなる。
【0052】
最終的に、受信機10は、ベクトル和が最小の組合せに対応する複数のGPS衛星20を選択する。これにより、受信機10は、擬似クロックバイアスが最小となる正しい送信時刻を導出し、その送信時刻における自機の位置を算出できるので、受信機10のユーザは、精度の高い現在位置を取得できる。
【0053】
続いて、図11及び12を用いて測位対象及び測位の主体となる受信機10の機能的な構成を説明する。図11は、図1に示す受信機10の機能構成を示す図である。図12は、受信機10のハードウェア構成を示す図である。なお、以下の説明では、算出された擬似距離prnが、βnの補正が実施された後のものであることを前提とする。
【0054】
図11に示すように、受信機10は、信号受信部11、速度ベクトル算出部12、衛星選択部13、距離算出部14、位置算出部15、距離差分算出部16、位置精度評価部17、衛星精度評価部18、及び出力部19を備えている。なお、受信機10は、上述した移動体通信を行う機能を更に備えていてもよい。
【0055】
受信機10は、図12に示すように、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、ROM(Read Only Memory)103、操作部104、無線通信部105、ディスプレイ106、アンテナ107及び測位用ICチップ108により構成されている。図11に示される各機能は、これらのハードウェアが動作することで実現される。特に、測位用ICチップ108は、速度ベクトル算出部12、衛星選択部13、距離算出部14、位置算出部15、距離差分算出部16、位置精度評価部17、及び衛星精度評価部18の各機能を有する。なお、受信機10が測位用ICチップ108を有さず、他のハードウェア(例えば、CPU101、RAM102、ROM103など)により図11の各機能が実現されてもよい。
【0056】
図11に戻って、信号受信部11は、GPS衛星20から送信される信号を受信する手段である。信号受信部11は、受信した信号に含まれる情報を速度ベクトル算出部12、距離算出部14、及び位置算出部15に出力する。信号受信部11は、時計の機能を有しており、上記の情報と併せて、測位用信号を受信した受信時刻を示す情報を距離算出部14に出力する。なお、信号受信部11は、複数のGPS衛星20から信号を受信する。
【0057】
速度ベクトル算出部12は、複数のGPS衛星20から送信され信号受信部11により受信された複数の信号に基づいて、各GPS衛星20の速度ベクトルを算出する速度ベクトル算出手段である。速度ベクトル算出部12は、算出した各GPS衛星20の速度ベクトルを衛星選択部13に出力する。
【0058】
速度ベクトルの算出方法はいくつか考えられるが、ここでは、時刻tにおけるGPS衛星の速度ベクトルを衛星軌道パラメータから算出する手法について説明する。
【0059】
GPS衛星20の軌道楕円の長半径、離心率、軌道傾斜角、昇交点赤経、近地点引数をそれぞれa,e,i,Ω,ωとする。速度ベクトル算出部12は、まず、GPS衛星20の平均角速度を示す平均運動nを下記式により算出する。なお、μeは地球重力定数である。
【数2】
【0060】
続いて、速度ベクトル算出部12は、平均近点角Mを下記式により算出する。なお、tpはGPS衛星20が近地点(GPS衛星20が地球に最も近づく地点)を通過する時刻を表す。
M=n(t−tp)
【0061】
続いて、速度ベクトル算出部12は、算出した平均近点角Mを下記のケプラー式に代入することで離心近点角Eを算出する。
M=E−e・sinE
【0062】
続いて、速度ベクトル算出部12は、軌道面座標系におけるGPS衛星20の速度ベクトルrを下記式により算出する。
【数3】
【0063】
続いて、速度ベクトル算出部12は、算出した軌道面座標系内の速度ベクトルrを、下記式により慣性座標系に変換する。なお、Rz(α)は、慣性座標系のz軸を角度αだけ回転させるベクトルを表し、Rx(α)は、慣性座標系のx軸を角度αだけ回転させるベクトルを表す。
rl=Rz(−Ω)Rx(i)Rz(−ω)r
【0064】
そして、速度ベクトル算出部12は、慣性座標系の速度ベクトルrlを、下記式によりECEF座標系に変換する。
rT=Rz(θ)rl
【0065】
これにより、速度ベクトル算出部12は、時刻tにおけるECEF座標系での速度ベクトルrTを取得する。速度ベクトル算出部12は、このような一連の演算を実行するプログラムを予め記憶しており、必要に応じて読み出すことで、各GPS衛星20についてECEF座標系の速度ベクトルrTを算出する。なお、以下では、ECEF座標系の速度ベクトルrTをX(x,y,z)とも表す。
【0066】
もちろん、速度ベクトル算出部12は、他の手法により速度ベクトルを算出してもよい。例えば、速度ベクトル算出部12は、時間経過に伴うGPS衛星20の位置の変動量に基づいて速度ベクトルを算出してもよい。
【0067】
衛星選択部13は、速度ベクトル算出部12により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、信号受信部11により受信された複数の信号の送信元である複数のGPS衛星20から複数のGPS衛星20を選択する信号発信源選択手段である。衛星選択部13は、選択したGPS衛星20を示す衛星選択情報を位置算出部15に出力する。
【0068】
GPS衛星20を選択する手法は一種類に限定されない。以下では、GPS衛星20の選択手法をいくつか示す。
【0069】
まず、第一の手法を説明する。この場合、衛星選択部13は、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)から成る組合せCを生成する。続いて衛星選択部13は、生成された組合せCについて三次元速度ベクトルのベクトル和を算出し、そのベクトル和の大きさが所定の閾値THa以下か否かを判定する。そして、ベクトル和の大きさが閾値THa以下である場合、衛星選択部13は、入力されたm個の速度ベクトルに対応するm個のGPS衛星20を、位置推定のために使用する信号発信源として選択する。
【0070】
ここで、m個の速度ベクトルのベクトル和vは次のように表される。
【数4】
【0071】
そして、ベクトル和vの大きさ(ノルム)は、‖v‖で表される。従って、‖v‖≦THaである場合、衛星選択部13は、m個のGPS衛星20を選択する。
【0072】
なお、ベクトル和の算出は、式(2)で示される手法に限定されない。例えば、衛星選択部13は、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)をすべて局地直交座標系に変換し、変換後の速度ベクトルに基づいて二次元速度ベクトルのベクトル和を算出してもよい。具体的には、衛星選択部13は、次に示す式を用いて、二次元速度ベクトルのベクトル和v´を算出する。なお、変換後の速度ベクトルをX´1(x´1,y´1,z´1)〜X´m(x´m,y´m,z´m)とする。
【数5】
【0073】
このとき、ベクトル和v´の大きさは‖v´‖である。その後、衛星選択部13は、所定の閾値TH´aとノルム‖v´‖とを比較し、‖v´‖≦TH´aであればm個のGPS衛星20を選択する。
【0074】
次に第二の手法を説明する。この場合、衛星選択部13は、入力された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る組合せを複数生成し、生成された複数の組合せのそれぞれについてベクトル和を算出し、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応するGPS衛星20を選択する。すなわち、衛星選択部13は、受信機10の位置をより精度良く算出するために、測位に用いるGPS衛星20を絞り込む。なお、選択するGPS衛星20の個数の設定方法は限定されない。例えば、衛星選択部13がその個数を予め記憶し、必要に応じて読み出してもよいし、他の構成要素から入力された情報に基づいて、選択するGPS衛星20の個数を決定してもよい。
【0075】
一例として、衛星選択部13に6個の速度ベクトルX1(x1,y1,z1)〜X6(x6,y6,z6)が入力された場合に、衛星選択部13が6機のGPS衛星20a〜GPS衛星20fから5機のGPS衛星20を選択する処理を説明する。なお、GPS衛星20a〜GPS衛星20fに対応する速度ベクトルがそれぞれX1〜X6であるとする。この場合、衛星選択部13は、まず5個の速度ベクトルから成る組合せを生成する。言い換えれば、衛星選択部13は、5個の速度ベクトルに対応する5個のGPS衛星20から成る組合せを生成する。衛星選択部13により生成される組合せの個数は、6C5=6通りである。具体的には、衛星選択部13は、以下に示す速度ベクトルの組合せCn(n=1〜6)を生成する。
C1=(X1,X2,X3,X4,X5)
C2=(X1,X2,X3,X4,X6)
C3=(X1,X2,X3,X5,X6)
C4=(X1,X2,X4,X5,X6)
C5=(X1,X3,X4,X5,X6)
C6=(X2,X3,X4,X5,X6)
【0076】
続いて衛星選択部13は、生成された速度ベクトルの組合せCn(n=1〜6)のそれぞれについて、式(2)を用いてベクトル和vn(n=1〜6)を算出し、更にベクトル和の大きさ‖vn‖(n=1〜6)を算出する。続いて衛星選択部13は、ベクトル和の大きさが最小である速度ベクトルの組合せを導出し、導出された組合せに対応するGPS衛星20を選択する。例えば、‖vn‖(n=1〜6)の中で‖v3‖が最小である場合、衛星選択部13は、組合せC3に対応するGPS衛星20a,20b,20c,20e,20fを選択する。
【0077】
なお、衛星選択部13は、二次元速度ベクトルのベクトル和を第二の手法に適用することも可能である。また、衛星選択部13が一回の処理で選択するGPS衛星20の個数は限定されない。衛星選択部13は、6個の速度ベクトルに基づいて4個のGPS衛星20を選択してもよいし、2個の速度ベクトルに基づいて1個のGPS衛星20を選択してもよい。
【0078】
次に第三の手法を説明する。この場合、衛星選択部13は、速度ベクトルの方向のばらつき、速度ベクトルの大きさのばらつき、又はこれら双方のばらつきを評価することで、GPS衛星20を選択する。
【0079】
一例として、衛星選択部13は、まず、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)から成る組合せCを生成する。続いて衛星選択部13は、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)を局地直交座標系に変換し、該座標系の速度ベクトルX´1(x´1,y´1,z´1)〜X´m(x´m,y´m,z´m)を取得する。続いて衛星選択部13は、変換された速度ベクトルのそれぞれについて、二次元速度方向θiを下記式により算出する。
θi=tan−1(y´i/x´i) (i=1〜m) …(4)
【0080】
続いて衛星選択部13は、生成された組合せCについて、算出された二次元速度方向のばらつきを評価する。衛星選択部13は、例えば標本分散や、平均値との差分の最大値などに基づいて二次元速度方向のばらつきを評価する。
【0081】
標本分散を用いてばらつきを評価する場合、衛星選択部13は、下記式を用いて、速度ベクトルの組合せに対する評価値hを算出する。
【数6】
これとは別に、平均値との差分の最大値を用いてばらつきを評価する場合、衛星選択部13は、下記式を用いて、速度ベクトルの組合せCに対する評価値hを算出する。
【数7】
【0082】
衛星選択部13は、いずれかの手法を用いて評価値hを算出する。この評価値hは、組合せCのばらつきを示す値である。続いて衛星選択部13は、その評価値hが所定の閾値THc以上か否かを判定する。そして、h≧THcである場合、衛星選択部13は、衛星m個の速度ベクトルのそれぞれに対応するm個のGPS衛星20を選択する。
【0083】
衛星選択部13は、速度ベクトルの大きさのばらつきに基づいてGPS衛星20を選択する場合も同様の演算を行い、ばらつきを示す評価値が所定の閾値以上であれば、m個のGPS衛星20を選択する。また、速度ベクトルの方向のばらつきを示す評価値と、速度ベクトルの大きさのばらつきを示す評価値との和が所定の閾値以上である場合にm個のGPS衛星20を選択するように衛星選択部13を構成してもよい。
【0084】
次に第四の手法を説明する。この場合、衛星選択部13は、上記第三の手法を利用して、測位に用いるGPS衛星20を絞り込む。ただし、衛星選択部13は、ベクトル和ではなく速度ベクトルのばらつきに基づいて、GPS衛星20を選択する。
【0085】
一例として、衛星選択部13に6個の速度ベクトルX1(x1,y1,z1)〜X6(x6,y6,z6)が入力された場合に、衛星選択部13が6機のGPS衛星20a〜GPS衛星20fから5機のGPS衛星20を選択する処理を説明する。なお、GPS衛星20a〜GPS衛星20fに対応する速度ベクトルがそれぞれX1〜X6であるとする。この場合、衛星選択部13は、まず、入力された6個の速度ベクトルX1(x1,y1,z1)〜X6(x6,y6,z6)を局地直交座標系に変換し、該座標系の速度ベクトルX´1(x´1,y´1,z´1)〜X´6(x´6,y´6,z´6)を取得する。続いて衛星選択部13は、変換後の速度ベクトルのそれぞれについて、二次元速度方向を式(4)により算出する。
【0086】
続いて衛星選択部13は、5個の速度ベクトルから成る組合せCn(n=1〜6)を以下のように生成する。
C1=(X1,X2,X3,X4,X5)
C2=(X1,X2,X3,X4,X6)
C3=(X1,X2,X3,X5,X6)
C4=(X1,X2,X4,X5,X6)
C5=(X1,X3,X4,X5,X6)
C6=(X2,X3,X4,X5,X6)
【0087】
続いて衛星選択部13は、生成された速度ベクトルの組合せCn(n=1〜6)のそれぞれについて、上記式(5)又は式(6)を用いてばらつきの評価値hn(n=1〜6)を算出する。
【0088】
速度ベクトルの方向のばらつきのみに基づいてGPS衛星20を絞り込む場合、衛星選択部13は、評価値が最も大きい組合せに対応するGPS衛星20を選択する。例えば、評価値h5が他の評価値よりも大きければ、衛星選択部13は、GPS衛星20a,20c,20d,20e,20fを選択する。速度ベクトルの大きさのばらつきのみに基づいてGPS衛星20を絞り込む場合も、衛星選択部13は同様の処理を実行する。
【0089】
一方、速度ベクトルの方向及び大きさのばらつきに基づいてGPS衛星20を選択する場合、衛星選択部13は、速度ベクトルの方向のばらつきを示す評価値hanを算出し、その評価値が小さい順に、各組合せCnに対して1〜6の番号を付ける。更に衛星選択部13は、速度ベクトルの大きさのばらつきを示す評価値hbnを算出し、その評価値が小さい順に、各組合せCnに対して1〜6の番号を付ける。そして、衛星選択部13は、組合せCn毎に番号の和を算出し、その和が最大の組合せに対応するGPS衛星を選択する。
【0090】
例えば、評価値hanの大小関係がha3<ha4<ha5<ha6<ha1<ha2であり、評価値hbnの大小関係がhb4<hb5<hb1<hb2<hb6<hb3である場合、各組合せCnに付される番号の和は以下の通りである。
C1…5+3=8
C2…6+4=10
C3…1+6=7
C4…2+1=3
C5…3+2=5
C6…4+5=9
【0091】
この場合、衛星選択部13は、組合せC2に対応するGPS衛星20a,20b,20c,20d,20fを選択する。なお、この第四の手法においても、衛星選択部13が一回の処理で選択するGPS衛星20の個数は限定されない。例えば、衛星選択部13は、6個の速度ベクトルに基づいて4個のGPS衛星20を選択してもよいし、10個の速度ベクトルに基づいて9個のGPS衛星20を選択してもよい。
【0092】
衛星選択部13は、上述した機能を実行するために、GPS衛星20を選択するためのプログラム(例えば、第一の手法を実行するためのプログラム)を予め記憶しており、必要に応じて読み出す。
【0093】
距離算出部14は、信号受信部11から入力された情報に基づいて、各GPS衛星20と受信機10との間の距離を算出する手段である。距離算出部14は、信号受信部11から入力された情報に含まれる信号の送信時刻と、受信時刻を示す情報とから時間差を算出し、算出された時間差に光速を乗算することにより擬似距離を算出する。距離算出部14は、GPS衛星20の識別情報に基づいて、GPS衛星20毎に擬似距離を算出する。このために距離算出部14は、擬似距離を算出するためのプログラムを予め記憶しており、必要に応じて読み出す。なお、距離の算出方法は、このような手法に限られず、測位用信号に基づいて算出するものであれば、既存の方法を含むどのようなものでもよい。距離算出部14は、算出された各距離を示す情報を位置算出部15及び距離差分算出部16に出力する。
【0094】
位置算出部15は、衛星選択部13により選択されたGPS衛星20から送信され信号受信部11により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に受信機10の位置を算出する位置算出手段である。具体的には、位置算出部15は、衛星選択部13から入力された衛星選択情報で示される複数のGPS衛星20の位置を、信号受信部11から入力されたGPS衛星20の軌道情報や送信時刻情報などに基づいて特定する。続いて位置算出部15は、特定されたGPS衛星20の位置を用いて受信機10の位置を算出する。
【0095】
まず、位置算出部15は、衛星選択部13から入力された衛星選択情報に基づいて、位置を特定するGPS衛星20を決定する。例えば、信号受信部11から入力された情報が6個のGPS衛星20a〜20fに関するものであり、衛星選択部13から入力された衛星選択情報がGPS衛星20a〜20dを示す場合、位置算出部15は、GPS衛星20a〜20dの位置のみを特定すると決定する。
【0096】
続いて、位置算出部15は、送信時刻情報を用いて、探索時間及び探索ステップ幅を決定する。例えば位置算出部15は、送信時刻情報により示される時刻を中心として、その前後数秒〜数十秒程度(例えば5秒)の範囲を探索時間に設定し、数ms〜数百ms程度(例えば100ms)の探索ステップ幅を設定する。このために、位置算出部15は、探索時間及び探索ステップ幅を決定するためのプログラムを予め記憶している。
【0097】
続いて位置算出部15は、探索時間において探索ステップ幅で区切られた時刻(探索時刻)毎に、算出対象のGPS衛星20の位置を衛星軌道パラメータ等に基づいて算出する。続いて位置算出部15は、探索時刻毎に算出した各GPS衛星20の位置と、距離算出部14から入力された各擬似距離を示す情報とに基づいて、最小二乗法のアルゴリズムなどにより、受信機10の位置を探索時刻毎に算出する。位置算出部15は、GPS衛星20の位置や受信機10の位置を示す情報を、例えば、緯度及び経度(GPS衛星20については高度も)を示す座標として算出する。位置算出部15は、探索時刻毎に算出した受信機10及び各GPS衛星20の位置を示す情報を距離差分算出部16に出力する。
【0098】
距離差分算出部16は、位置算出部15から入力された受信機10及び複数のGPS衛星20の位置に基づいて、受信機10と各GPS衛星20との距離r´nを算出し、この距離r´nと、距離算出部14から入力された擬似距離prnとの差分ΔrnをGPS衛星20毎に算出する手段である。位置算出部15からは、探索時刻毎に算出された受信機10及び複数のGPS衛星20の位置が入力されるので、距離差分算出部16は、各探索時刻における擬似クロックバイアスΔrn(TOW)を算出する。距離差分算出部16は、算出した複数の擬似クロックバイアスΔrn(TOW)を位置精度評価部17に出力する。
【0099】
位置精度評価部17は、位置算出部15により算出された受信機10の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段である。また、位置精度評価部17は、設定された一の送信時刻に対応する受信機10の位置を、受信機10の推定位置として設定する推定位置設定手段でもある。
【0100】
具体的には、位置精度評価部17は、距離差分算出部16から入力されたGPS衛星20a〜20d毎の擬似クロックバイアスΔrn(TOW)のばらつきを探索時刻毎に算出し、算出されたばらつきに基づいて、位置算出部15により算出された受信機10の位置の精度を評価する。位置精度評価部17は、擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2を、ばらつきを示す値として用いる。続いて、位置精度評価部17は、探索時間において擬似クロックバイアスの分散σΔrn(TOW)2が最小となる時刻を正しい送信時刻Tpとして設定する。そして、位置精度評価部17は、正しい送信時刻Tpにおける測位結果を最終結果として採用する。すなわち、位置精度評価部17は、正しい送信時刻Tpに対応する受信機10の位置を、受信機10の推定位置として設定する。なお、正しい送信時刻Tpに対応する受信機10の位置とは、位置算出部15において該送信時刻Tpに基づいて算出された測位結果のことである。
【0101】
なお、以下では、送信時刻Tpに対応する擬似クロックバイアスをΔrn(Tp)と表し、送信時刻Tpに対応する擬似クロックバイアスの分散をσΔrn(Tp)2と表す。
【0102】
続いて位置精度評価部17は、分散σΔrn(Tp)2に基づいて受信機10の位置の精度を評価する。このために位置精度評価部17は、評価用のプログラムを予め記憶し、必要に応じてそのプログラムを読み出す。
【0103】
例えば、位置精度評価部17は、分散σΔrn(Tp)2が予め設定した閾値よりも大きい場合には、算出された受信機10の位置の精度が悪いと評価し、算出した分散σΔrn(Tp)2が予め設定した閾値よりも小さい場合には、受信機10の位置の精度が良いと評価する。また、位置精度評価部17は、分散σΔrn(Tp)2自体を、算出した受信機10の位置の精度を示す値(実際の受信機10の位置と算出された位置とが乖離している度合を示す値)として用いてもよい。この場合、分散σΔrn(Tp)2の値が小さいほど、受信機10の位置の精度が良いことになる。また、予めチューニングされて設定された係数を分散σΔrn(Tp)2に乗算することによって、実際の受信機10の位置と算出された位置との乖離量を推定するように位置精度評価部17を構成してもよい。
【0104】
位置精度評価部17は、分散σΔrn(Tp)2と、正しい送信時刻Tpにおける測位結果(受信機10の推定位置として設定された測位結果)を衛星精度評価部18に出力する。これとは別に、位置精度評価部17による評価を示す情報は、受信機10において適宜用いられる。
【0105】
例えば、精度が良いと判断された場合(一定以上の精度を示す結果が得られた場合)、位置精度評価部17は、測位結果(位置算出部15により算出された受信機10の位置を示す情報)を出力部19に出力する。このとき、測位結果と併せて、位置精度評価部17による評価を示す情報を出力部19に出力するように位置精度評価部17を構成してもよい。これに対し、精度が悪いと判断された場合(一定以上の精度を示す結果が得られなかった場合)、位置精度評価部17は、位置算出部15により位置を特定されるGPS衛星20を絞り込んで測位を再実行するために、絞り込むGPS衛星20の個数を示す情報を衛星選択部13に出力する。なお、位置精度評価部17は、精度が悪いと判断した場合に測位処理を終了してもよい。
【0106】
衛星精度評価部18は、位置精度評価部17から入力された各GPS衛星20の擬似クロックバイアスΔrn(Tp)の、各GPS衛星20間でのばらつきに基づいて、位置算出部15による受信機10の位置の算出に使用したGPS衛星20の精度を評価する手段である。GPS衛星20の精度とは、各GPS衛星20からの信号を用いて、距離算出部14によって、いかに誤差の変動成分ε´の小さい擬似距離prnを算出できるかを示す度合である。
【0107】
衛星精度評価部18での評価は、誤差の変動成分ε´が小さい場合には、複数のGPS衛星20間で擬似クロックバイアスΔrn(Tp)のばらつきが小さく、ε´が大きい場合には、そのばらつきが大きくなることに基づいている。位置精度評価部17は、擬似クロックバイアスΔrn(Tp)に基づいて、各GPS衛星20をクラスタリングする。クラスタリングにより、他のGPS衛星と比べて、大きく異なる擬似クロックバイアスΔrn(Tp)を有するGPS衛星を抽出できる。例えば、衛星精度評価部18は、擬似クロックバイアスΔrn(Tp)に基づいて抽出されたGPS衛星20の精度を低いと評価する。なお、衛星精度評価部18は、各GPS衛星20の精度を評価するためのプログラムを予め記憶しており、必要に応じて読み出すことで評価を行なう。
【0108】
衛星精度評価部18による、各GPS衛星20の精度の評価を示す情報は、受信機10において適宜用いられる。例えば、精度が悪いと判断されたGPS衛星20の数が一定数以下であった場合、衛星精度評価部18は、測位結果(位置算出部15により算出された受信機10の位置を示す情報)を出力部19に出力する。また、衛星精度評価部18は、測位結果と併せて、GPS衛星20の評価を示す情報を出力部19に出力してもよい。これに対し、精度が悪いと判断されたGPS衛星20の数が一定数以上であった場合、衛星精度評価部18は、位置算出部15により位置を特定されるGPS衛星20を絞り込んで測位を再実行するために、絞り込むGPS衛星20の個数を示す情報を衛星選択部13に出力する。なお、衛星精度評価部18は、精度が悪いと判断されたGPS衛星20の数が一定数以上であった場合に、測位処理を終了してもよい。
【0109】
出力部19は、位置精度評価部17及び衛星精度評価部18から入力された情報を画面表示や音声等により出力する手段である。出力される情報には、例えば、位置算出部15により算出された受信機10の位置を示す情報が含まれる。受信機10のユーザは、出力された情報を参照することにより、受信機10の位置、即ち、自身の位置を知ることができる。
【0110】
次に、図13を用いて、図1に示す受信機10の処理を説明するとともに本実施形態に係る測位方法について説明する。図13は、受信機10の処理を示すフローチャートである。
【0111】
受信機10による測位処理は、例えば、受信機10のユーザが操作部104を介して測位要求を入力することによって開始される。もちろん、受信機10内で実行されている他のアプリケーションプログラムが測位要求を出力するなどの他の手法により測位処理が開始されてもよい。
【0112】
まず、信号受信部11が、複数のGPS衛星20から送信されてくる測位用信号を受信する(ステップS01)。信号受信部11は、受信した信号に含まれる情報を速度ベクトル算出部12及び距離算出部14に出力する。
【0113】
続いて、距離算出部14が、信号受信部11から入力された情報に基づいて、各GPS衛星20と受信機10との間の距離(擬似距離)を算出する(ステップS02)。距離算出部14は、擬似距離を示す情報を位置算出部15及び距離差分算出部16に出力する。
【0114】
続いて、速度ベクトル算出部12が、信号受信部11から入力された情報に基づいて、各GPS衛星20の速度ベクトルを算出する(ステップS03、速度ベクトル算出ステップ)。例えば、速度ベクトル算出部12は、上述の方法を用いて、ECEF座標系の速度ベクトルをGPS衛星20毎に算出し、算出結果を衛星選択部13に出力する。なお、速度ベクトル算出部12による速度ベクトルの算出と、距離算出部14による擬似距離の算出とは、並行して実行されてもよい。
【0115】
続いて、衛星選択部13が、算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、信号受信部11により受信された複数の信号の送信元である複数のGPS衛星20から複数のGPS衛星20を選択する(ステップS04、信号発信源選択ステップ)。衛星選択部13は、選択したGPS衛星20を示す衛星選択情報を位置算出部15に出力する。
【0116】
上述したように、GPS衛星20の選択手法は複数存在するが、衛星選択部13は、測位要求の内容などに基づいて任意の手法を用いることが可能である。例えば、入力されたm個の速度ベクトルに対応するm個のGPS衛星20をすべて選択するか否かを判断する際には、衛星選択部13は、上記第一の手法又は上記第三の手法を用いることが可能である。また、入力されたm個の速度ベクトルに対応するm個のGPS衛星20のうちn個(ただし、m>n)のGPS衛星20を選択する際には、衛星選択部13は、上記第二の手法又は上記第四の手法を用いることが可能である。
【0117】
続いて、位置算出部15が、入力された衛星選択情報に基づいて、信号受信部11で受信された複数の信号に対応する複数のGPS衛星20から、位置を特定するGPS衛星20を抽出する。そして、位置算出部15は、抽出されたGPS衛星20の位置を示す情報と、距離算出部14から入力された各擬似距離を示す情報とから、受信機10の位置を算出する(ステップS05、位置算出ステップ)。位置算出部15は、算出された受信機10の位置を示す情報を距離差分算出部16に出力する。
【0118】
続いて、距離差分算出部16が、位置算出部15から入力された受信機10の位置から複数のGPS衛星20までの各距離と、距離算出部14から各擬似距離とに基づいて、これら二種類の距離の差分である擬似クロックバイアスΔrn(TOW)をGPS衛星20毎に算出する(ステップS06)。距離差分算出部16は、算出した擬似クロックバイアスΔrn(TOW)を位置精度評価部17及び衛星精度評価部18に出力する。
【0119】
続いて、位置精度評価部17及び衛星精度評価部18が測位精度を評価する(ステップS07)。即ち、位置精度評価部17が、複数のGPS衛星20間における擬似クロックバイアスΔrn(TOW)のばらつきに基づいて、位置算出部15により算出された受信機10の位置の精度を評価する。
【0120】
この際、位置精度評価部17は、擬似クロックバイアスの分散σΔrn(TOW)2が最小となる時刻を正しい送信時刻Tpとして設定する(送信時刻設定ステップ)。また、位置精度評価部17は、正しい送信時刻として設定された送信時刻Tpにおける測位結果を最終結果(受信機10の推定位置)として設定する(推定位置設定ステップ)。
【0121】
また、衛星精度評価部18は、複数のGPS衛星20間における擬似クロックバイアスΔrn(TOW)のばらつきに基づいて、位置算出部15による受信機10の位置の算出の際に利用した各GPS衛星20の精度を評価する。
【0122】
位置精度評価部17及び衛星精度評価部18が、上記評価に基づいて所定の精度の測位結果を取得したと判断した場合(ステップS08;YES)、位置精度評価部17が測位結果(位置算出部15により算出された受信機10の位置を示す情報)を出力部19に出力し、出力部19がその測位結果を出力する(ステップS09)。これにより、受信機10のユーザは、測位結果を知ることができる。
【0123】
これに対し、位置精度評価部17及び衛星精度評価部18が、所定の精度の測位結果が得られなかったと判断した場合(ステップS08;NO)、位置精度評価部17及び衛星精度評価部18は、測位を再実行すると判断し、絞り込むGPS衛星20の個数を示す情報を衛星選択部13に出力する。これにより、上記ステップS04〜S08の処理が繰り返される。例えば、6機のGPS衛星20からの信号に基づいて算出した受信機10の位置の精度が一定の水準を満たさなかった場合、位置精度評価部17及び衛星精度評価部18は、6機のGPS衛星20を5機に絞り込むための情報を衛星選択部13に出力する。この場合、衛星選択部13は、上述した第二の手法又は第四の手法の例のように、5機のGPS衛星20を選択する。
【0124】
但し、このような繰り返し処理は必ず行われる必要はなく、所定のタイミングで測位処理を終了してもよい。例えば、位置を特定したGPS衛星20の個数が所定の閾値以下(例えば、4以下)の場合には、位置精度評価部17及び衛星精度評価部18が、これ以上GPS衛星20を絞り込んでも一定の精度の測位ができないと判断して、処理を終了してもよい。
【0125】
なお、上記ステップS04〜S08の処理が繰り返される場合に、衛星選択部13は、GPS衛星20を選択する手法を都度変更することも可能である。例えば、衛星選択部13は、一回目の処理では上記第一の手法を用い、二回目の処理(一回目の繰り返し処理)では第二の手法を用いてもよい。
【0126】
続いて、上述した一連の受信機10の測位を行う処理をコンピュータに実行させるための測位プログラムを説明する。図14に示すように、測位プログラム81は、コンピュータが備える記録媒体80に形成されたプログラム格納領域80a内に格納されている。
【0127】
測位プログラム81は、測位処理を統括的に制御するメインモジュール81a、信号受信モジュール81b、速度ベクトル算出モジュール81c、衛星選択モジュール81d、距離算出モジュール81e、位置算出モジュール81f、距離差分算出モジュール81g、位置精度評価モジュール81h、衛星精度評価モジュール81i及び出力モジュール81jを備えて構成される。信号受信モジュール81b、速度ベクトル算出モジュール81c、衛星選択モジュール81d、距離算出モジュール81e、位置算出モジュール81f、距離差分算出モジュール81g、位置精度評価モジュール81h、衛星精度評価モジュール81i及び出力モジュール81jを実行させることにより実現される機能は、上述した受信機10の信号受信部11、速度ベクトル算出部12、衛星選択部13、距離算出部14、位置算出部15、距離差分算出部16、位置精度評価部17、衛星精度評価部18及び出力部19の機能とそれぞれ同様である。
【0128】
なお、測位プログラム81は、その一部若しくは全部が、通信回線等の伝送媒体を介して伝送され、他の機器により受信されて記録(インストールを含む)される構成としてもよい。
【0129】
以上説明したように、本実施形態によれば、速度ベクトルの組合せに基づいてGPS衛星20を選択し、選択されたGPS衛星20からの信号に基づいて複数の時刻から一の時刻を信号の送信時刻として設定することにより、GPS衛星20からの信号の送信時刻を精度良く推定できる。また、送信時刻として設定された一の時刻に対応する受信機10の位置を該受信機10の推定位置として設定することで、受信機10の位置を精度良く測定できる。
【0130】
本実施形態では、速度ベクトルの組合せに対するベクトル和に基づいて複数のGPS衛星20を選択することが可能である。ベクトル和は簡易に算出できるので、この手法を用いた場合には、送信時刻の推定をより簡易に行うことが可能である。
【0131】
特に、上記第一の手法を採用した場合には、閾値を用いてベクトル和の大きさが評価されるので、送信時刻の推定の精度を一定の水準以上に保つことができる。また、上記第二の手法を採用した場合には、ベクトル和の大きさが最小の組合せに対応するGPS衛星20が選択されるので、送信時刻の推定の精度が最も高いGPS衛星20の組合せを取得できる。
【0132】
また、本実施形態では、速度ベクトルの組合せを構成する速度ベクトルのばらつきを示す値に基づいて複数のGPS衛星20を選択することが可能である。この値を用いることでGPS衛星20の相対位置の変化をより的確に導出することができ、その結果、送信時刻の推定をより精度良く行うことが可能になる。
【0133】
特に、上記第三の手法を採用した場合には、閾値を用いて速度ベクトルのばらつきを示す値が評価されるので、送信時刻の推定の精度を一定の水準以上に保つことができる。また、上記第四の手法を採用した場合には、速度ベクトルのばらつきを示す値が最大の組合せに対応するGPS衛星20が選択されるので、送信時刻の推定の精度が最も高いGPS衛星20の組合せを取得できる。
【0134】
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で以下のような様々な変形が可能である。
【0135】
上記実施形態では、衛星選択部13が速度ベクトルに基づいてGPS衛星20を選択したが、GPS衛星20の選択方法はこれに限定されない。例えば、衛星選択部13は、従来から知られている手法と、速度ベクトルを利用した手法とを併用してGPS衛星20を選択してもよい。
【0136】
従来から知られている手法としては、例えば、信号のC/N(信号対ノイズ比)によってGPS衛星毎に受信感度を評価する手法、擬似距離の平均二乗誤差(RMS:Root Mean Square)により各擬似距離のばらつきを評価する手法、精度低下率(DOP:Dilution Of Precision)を用いてGPS衛星の幾何学的な配置を評価する手法が挙げられる。このうち、C/Nを用いる手法と、平均二乗誤差を用いる手法は、共にGPS衛星単体を評価する手法であり、精度低下率を用いる手法は、上記実施形態と同様にGPS衛星の組合せを評価する手法である。
【0137】
例えば、衛星選択部13が、C/N、平均二乗誤差及び精度低下率がそれぞれ所定の閾値以上であるGPS衛星20をまず抽出し、上記実施形態の手法、すなわち速度ベクトルに基づく手法を用いて、抽出されたGPS衛星20から特定のGPS衛星20を選択してもよい。
【0138】
上記実施形態では、擬似クロックバイアスを用いて測位精度を評価したが、RAIM(Receiver Autonomous Integrity Monitoring)などの他の手法を用いて測位精度を評価してもよい。なお、RAIMの詳細は、例えば下記非特許文献1に記載されている。
【非特許文献2】BWParkinson, JJ Spilker, "Global Positioning System: Theory and ApplicationsVolume II - Chapter 5", American Institute of Aeronautics andAstronautics, Inc., p.p.143--164, 1996.
【0139】
また、上記実施形態では、信号発信源としてGPS衛星20を用いたが、擬似衛星や、移動体通信網を構成する基地局などを信号発信源として用いてもよい。
【0140】
また、上記実施形態では、測位の主体は測位の対象でもある受信機10であったが、必ずしも測位の主体と測位の対象とが一致していなくてもよい。例えば、測位の主体は受信機10と別構成の測位サーバにより行われてもよい。測位サーバは、例えば、受信機10と移動体通信網を介して接続することができ、受信機10から測位に必要な情報を受信して、測位を行う。測位サーバは、受信機10から必要な情報を受信して、測位に係る全ての演算を行ってもよい。あるいは、受信機10によって計算されたGPS衛星20と受信機10との間の距離を示す情報を受信することによって取得して、取得した距離を示す情報から測位に係る演算を行ってもよい。特許請求の範囲に記載の測位システムは、受信機やサーバなどの任意の装置に対して適用することが可能である。
【図面の簡単な説明】
【0141】
【図1】本発明の実施形態に係る受信機、及びGPS衛星を示す図である。
【図2】実施形態に係る測位の原理を示す図である。
【図3】実施形態に係る測位の原理を示す図である。
【図4】実施形態に係る測位の原理を示す図である。
【図5】時刻に応じたGPS衛星の位置を示す図である。
【図6】擬似クロックバイアスの概念を示す図である。
【図7】TOWと擬似クロックバイアスの分散との関係を示すグラフである。
【図8】GPS衛星の相対位置が変化する例を示す図である。
【図9】GPS衛星の相対位置が変化しない例を示す図である。
【図10】速度ベクトルの和の概念を示す図であり、(a)は図8に対応し、(b)は図9に対応する。
【図11】図1に示す受信機の機能構成を示す図である。
【図12】図1に示す受信機のハードウェア構成を示す図である。
【図13】図1に示す受信機で実行される処理(測位方法)を示すフローチャートである。
【図14】実施形態に係る測位プログラムの構成を示す図である。
【符号の説明】
【0142】
10…受信機、11…信号受信部、12…速度ベクトル算出部、13…衛星選択部、14…距離算出部、15…位置算出部、16…距離差分算出部、17…位置精度評価部、18…衛星精度評価部、19…出力部、101…CPU、102…RAM、103…ROM、104…操作部、105…無線通信部、106…ディスプレイ、107…アンテナ、108…測位用ICチップ、20…GPS衛星、80…記録媒体、80a…プログラム格納領域、81…測位プログラム、81a…メインモジュール、81b…信号受信モジュール、81c…速度ベクトル算出モジュール、81d…衛星選択モジュール、81e…距離算出モジュール、81f…位置算出モジュール、81g…距離差分算出モジュール、81h…位置精度評価モジュール、81i…衛星精度評価モジュール、81j…出力モジュール。
【技術分野】
【0001】
本発明は、受信機の位置を推定する測位システム、測位用ICチップ、測位方法及び測位プログラムに関する。
【背景技術】
【0002】
従来から、GPS(Global Positioning System、全地球測位システム)及びGalileo等を用いて受信機の測位を行う技術が知られている。これらのシステムは、測位用信号発信源である衛星(擬似衛星を含む)から受信機までの距離に基づいて測位を行なう。また、衛星からの信号と移動体通信網の信号とを併用して測位を行うハイブリッド(Hybrid)と呼ばれる測位方式もある。
【0003】
上記の測位方法では、衛星から送信され受信機により受信された測位用信号の送信時刻及び受信時刻に基づいて衛星から受信機までの距離が算出され、算出した距離を用いて測位計算が実行される。複数の衛星から受信機までの距離と各衛星の位置が正確に算出されれば、それらの衛星の位置を中心とし算出された距離を半径とした球の交点を算出することで、受信機の位置を算出することができる。しかしながら、上記の距離の算出では、誤差を発生させうる様々な要素が存在するため、正確な距離を算出することが難しい。そこで、算出された複数の衛星と受信機との間の距離から、最小二乗法等の方法で受信機の位置を算出することが行われている。このような手法は、例えば下記非特許文献1に記載されている。
【非特許文献1】井坂丈泰、「GPS技術入門」、東京電機大学出版局、2003年2月28日、36−41頁
【発明の開示】
【発明が解決しようとする課題】
【0004】
衛星の位置を算出するためには、衛星の軌道情報と送信時刻とを正確に知る必要がある。通常では、衛星の軌道情報、および送信時刻は、常時衛星から送信されている航法メッセージを受信することで知ることが可能である。一方、送信時刻を正しく検出できない事がある。例えば、屋内などにおいてGPS信号の強度が低下するなどの場合において、検出した送信時刻情報に誤りが発生することがある。この場合、検出した送信時刻情報の誤りにより、衛星の位置を正しく計算できないため、衛星の位置を中心とする球を正しく算出できなくなる。その結果、受信機の正確な位置を算出することが困難になる。
【0005】
このように、衛星を用いる測位方式では、信号の送信時刻の推定が測位精度に大きな影響を与える。また、送信時刻の推定の精度は、測位に用いる衛星をどのように選択するかにより大きく異なってくる。特に、受信可能な衛星数が少ない場合や、ハイブリッド測位法などでは、使用する衛星によって送信時刻の推定が困難になることがある。
【0006】
本発明は、上記課題を解決するためになされたものであり、信号発生源からの信号の送信時刻を精度良く推定し、その推定により受信機の位置を精度良く測定することが可能な測位システム、測位用ICチップ、測位方法及び測位プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明の測位システムは、受信機の位置を推定する測位システムであって、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、信号発信源選択手段により選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、位置算出手段により算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、送信時刻設定手段により設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、を備えることを特徴とする。
【0008】
また、本発明の測位用ICチップは、受信機の位置を推定する測位用ICチップであって、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、信号発信源選択手段により選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、位置算出手段により算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、送信時刻設定手段により設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、を備えることを特徴とする。
【0009】
また、本発明の測位方法は、測位システムが受信機の位置を推定する測位方法であって、測位システムが、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出ステップと、測位システムが、速度ベクトル算出ステップにおいて算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択ステップと、測位システムが、信号発信源選択ステップにおいて選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出ステップと、測位システムが、位置算出ステップにおいて算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定ステップと、送信時刻設定ステップにおいて設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定ステップと、を含むことを特徴とする。
【0010】
また、本発明の測位プログラムは、コンピュータに受信機の位置を推定させる測位プログラムであって、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出機能と、速度ベクトル算出機能により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、複数の信号発信源から複数の信号発信源を選択する信号発信源選択機能と、信号発信源選択機能により選択された信号発信源から送信され受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出機能と、位置算出機能により算出された受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定機能と、送信時刻設定機能により設定された一の送信時刻に対応する受信機の位置を、該受信機の推定位置として設定する推定位置設定機能と、をコンピュータに実行させることを特徴とする。
【0011】
このような測位システム、測位用ICチップ、測位方法及び測位プログラムによれば、まず、複数の信号発信源から送信され受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルが算出される。続いて、算出された速度ベクトルに基づいて生成された速度ベクトルの組合せに基づいて、上記複数の信号発信源から複数の信号発信源が選択される。続いて、選択された信号発信源からの信号に基づいて、複数の時刻毎に受信機の位置が算出される。続いて、算出された複数の位置を評価して、その複数の位置に対応する複数の時刻から一の時刻が信号の送信時刻として設定される。そして、設定された一の送信時刻に対応する受信機の位置が、推定位置として設定される。
【0012】
本発明者は、鋭意研究の結果、複数の信号発信源から送信された複数の信号の送信時刻の推定が、それら信号発信源の相対位置の時間変化により左右されるという知見を得た。信号発信源の相対位置の時間変化は、信号発信源の進行方向及び速度の大きさ(速さ)を示す速度ベクトルから導出できる。そのため、速度ベクトルの組合せに基づいて信号発信源を選択し、選択された信号発信源からの信号に基づいて複数の時刻から一の時刻を信号の送信時刻として設定することにより、信号発生源からの信号の送信時刻を精度良く推定できる。また、送信時刻として設定された一の時刻に対応する受信機の位置を該受信機の推定位置として設定することで、受信機の位置を精度良く測定できる。
【0013】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトルの組合せに対するベクトル和を算出し、算出されたベクトル和に基づいて複数の信号発信源から複数の信号発信源を選択することが好ましい。
【0014】
この場合、速度ベクトルの組合せに対するベクトル和が算出され、そのベクトル和に基づいて複数の信号発信源が選択される。このように、算出が簡易なベクトル和を用いることで、送信時刻の推定をより簡易に行うことが可能になる。
【0015】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された速度ベクトルの組合せに対するベクトル和の大きさが所定の閾値以下である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択することが好ましい。
【0016】
この場合、信号の送信元である複数の信号発信源に対応する複数の速度ベクトルの組合せが生成され、生成された組合せに対するベクトル和が算出される。そして、算出されたベクトル和の大きさが所定の閾値以下である場合に、信号の送信元である複数の信号発信源がすべて選択される。概して、ベクトル和の大きさが小さいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、閾値を用いてベクトル和の大きさを評価することで、送信時刻の推定の精度を一定の水準以上に保つことができる。
【0017】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る組合せを複数生成し、生成された複数の組合せのそれぞれについてベクトル和を算出し、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応する信号発信源を選択することが好ましい。
【0018】
この場合、信号の送信元である信号発信源の個数よりも少ない個数の速度ベクトルから成る組合せが複数生成され、生成された複数の組合せのそれぞれについてベクトル和が算出される。そして、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応する信号発信源が選択される。概して、ベクトル和の大きさが小さいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、ベクトル和の大きさが最小の組合せに対応する信号発信源を選択することで、送信時刻の推定の精度が最も高い信号発信源の組合せを取得できる。
【0019】
本発明の測位システムでは、信号発信源選択手段が、組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された値に基づいて複数の信号発信源から複数の信号発信源を選択することが好ましい。
【0020】
この場合、速度ベクトルの組合せを構成する速度ベクトルのばらつきを示す値が算出され、その値に基づいて複数の信号発信源が選択される。このように、ばらつきを示す値を用いることで信号発信源の相対位置の変化をより的確に導出することができ、その結果、送信時刻の推定をより精度良く行うことが可能になる。
【0021】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された組合せを構成する速度ベクトルのばらつきを示す値が所定の閾値以上である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択することが好ましい。
【0022】
この場合、信号の送信元である複数の信号発信源に対応する複数の速度ベクトルの組合せが生成され、生成された組合せを構成する速度ベクトルのばらつきを示す値が算出される。そして、算出された値が所定の閾値以上である場合に、信号の送信元である複数の信号発信源がすべて選択される。速度ベクトルのばらつきを示す値が大きいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、速度ベクトルのばらつきを示す値を閾値で評価することで、送信時刻の推定の精度を一定の水準以上に保つことができる。
【0023】
本発明の測位システムでは、信号発信源選択手段が、速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る組合せを複数生成し、生成された複数の組合せのそれぞれについて該組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された複数の値のうち最も大きい値を導出する速度ベクトルに対応する信号発信源を選択することが好ましい。
【0024】
この場合、信号の送信元である信号発信源の個数よりも少ない個数の速度ベクトルから成る組合せが複数生成され、生成された複数の組合せのそれぞれについて速度ベクトルのばらつきを示す値が算出される。そして、算出された値のうち最も大きい値を導出する速度ベクトルに対応する信号発信源が選択される。速度ベクトルのばらつきを示す値が大きいほど複数の信号発信源の相対位置の変動が大きく、送信時刻が精度良く推定できるといえる。従って、速度ベクトルのばらつきを示す値が最大の組合せに対応する信号発信源を選択することで、送信時刻の推定の精度が最も高い信号発信源の組合せを取得できる。
【発明の効果】
【0025】
このような測位システム、測位用ICチップ、測位方法及び測位プログラムによれば、速度ベクトルの組合せに基づいて信号発信源が選択され、選択された信号発信源からの信号に基づいて複数の時刻毎に受信機の位置が算出され、算出された位置を評価することで一の時刻が信号の送信時刻として設定されるので、信号発生源からの信号の送信時刻を精度良く推定し、その推定により受信機の位置を精度良く測定することができる。
【発明を実施するための最良の形態】
【0026】
以下、添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、図面の説明において同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
【0027】
まず、図1を用いて、実施形態に係る測位システムである受信機10と、信号発信源である複数のGPS衛星20を説明する。図1は、受信機10及びGPS衛星20を示す図である。なお、図1にはGPS衛星が4機(GPS衛星20a〜20d)示されているが、GPS衛星20の個数は限定されない。
【0028】
受信機10は、複数のGPS衛星20から電波として送信される測位用信号(メジャメント)を受信し、その測位用信号を用いて自機の位置を推定する測位装置である。受信機10は、測位を行う機能に加えて、更に移動体通信を行う機能を有していてもよい。受信機10は、例えば、携帯電話機等の移動通信端末である。受信機10は、ユーザが受信機10に対して測位を指示する入力を行った場合等に自機の位置を測定する。
【0029】
GPS衛星20は、時刻に応じて所定の場所に位置し、その位置から測位に用いられる測位用信号を送信している。GPS衛星20は、高度約2万kmの6個の周回軌道上に4〜5機ずつ配置されており、時間の経過に伴って周回軌道上を移動する。GPS衛星20が送信する測位用信号には、GPS衛星20を区別して特定するための識別情報、GPS衛星20の軌道を示す情報、及び信号を送信した時刻を示す情報が含まれている。
【0030】
本実施形態における測位の原理について図2〜4を用いて簡単に説明する。ここでは、受信機10が4機のGPS衛星20a〜20dから測位用信号を受信する場合を例に説明する。受信機10は、GPS衛星20a〜20dからの測位用信号に基づいてこれらGPS衛星20a〜20dとの間の距離を算出する。具体的には、受信機10は、測位用信号の伝播時間(GPS衛星20a〜20dにより送信されてから受信機10により受信されるまでの時間)に光速を乗算することにより、自機とGPS衛星20a〜20dとの距離a〜dを算出する。距離a〜dは、GPS衛星20a〜20dで共通である測位用信号の送信時刻ttと、受信機10での各測位用信号の受信時刻tra〜trdと、光速とを用いて、以下の式により算出できる。
距離a=光速×(tra−tt)
距離b=光速×(trb−tt)
距離c=光速×(trc−tt)
距離d=光速×(trd−tt)
【0031】
GPS衛星20a〜20dと受信機10との間の距離が正確に算出されれば、図2に示すように、GPS衛星20aの位置を中心として距離aを半径とする球(円)21a、及びGPS衛星20b〜20dについて同様に導出される球(円)21b〜21dの交点31が受信機10の位置となる。
【0032】
しかし、通常、算出される距離a〜dは、GPS衛星20a〜20dと受信機10との時計のずれ、マルチパス、GPS衛星20a〜20dの軌道情報の誤差及び大気圏の変動などにより、誤差を含んでいる。そのため、図3に示すように、導出される球(円)22a〜22dは、正確な距離(実際の距離)を半径とする球(円)21a〜21dと異なる。ここで、正確な距離と算出された距離とのずれ23a〜23dがGPS衛星20a〜20d間で等しければ、受信機10は、最小二乗法などを用いて球(円)22a〜22dのそれぞれから等しい距離にある位置31を受信機10の位置として正確に算出できる。この場合、受信機10の位置の算出には、最低でも4機のGPS衛星20を利用する必要がある。
【0033】
しかし、図4に示すように、通常、正確な距離と算出された距離とのずれ23a〜23dの大きさは、GPS衛星20a〜20d間で区々である。その場合、最小二乗法などにより算出された、球(円)22a〜22dのそれぞれから等しい距離にある位置31は、受信機10の実際の位置32と異なるものとなる。
【0034】
このように、算出された位置と実際の位置との誤差、即ち、測位誤差は、GPS衛星20a〜20dと受信機10との間の、正確な距離と算出された距離とのずれ23a〜23dのばらつきにより発生する。
【0035】
ここで、GPS衛星20a〜20dと受信機10との間の距離(擬似距離)prn(n=1〜4)は、以下のように表すことができる。
【数1】
【0036】
なお、rnはGPS衛星20a〜20dから受信機10までの実際の距離、clknはGPS衛星20a〜20dの時計と受信機10の時計とのずれ、βnは衛星間の時計のずれである。これらの誤差要素rn,clkn,βnは、軌道情報の誤差や大気圏の変動等が原因で発生するものであり、補正が可能である。これに対し、εnはその他のマルチパスや、βnの補正後に残る誤差等による距離の誤差であり、補正が不可能なものである。
【0037】
各GPS衛星20a〜20dは互いに時計の同期をとるので、誤差要素clknは各GPS衛星20a〜20d間で同じ値となる。即ち、clknは、受信機10のクロックバイアスである。また、誤差要素βnは、GPS衛星20の航法メッセージのパラメータにより補正できる。一方、誤差要素εnは、環境等により変化する成分やβn補正後に残る誤差が含まれるため、各GPS衛星20a〜20d間で異なり、また、計算により解いたり実際に観測したりして補正することが事実上不可能である。従って、上述した測位の誤差は、εnによるものである。
【0038】
そして、最小二乗法などにより算出された受信機10の位置からGPS衛星20a〜20dまでの各距離r´nと、GPS衛星20a〜20dについて算出、且つ補正された擬似距離prnとの差分を擬似クロックバイアスと定義する。擬似クロックバイアスをΔrnとすれば、Δrn=prn−r´nである。擬似クロックバイアスは、図6に示すように、GPS衛星20a〜20dの位置を中心として擬似距離prnを半径とする球(円)22a〜22dから、算出された受信機10の位置31までの距離24a〜24dである。
【0039】
擬似クロックバイアスΔrnは、上記の式(1)におけるrnをr´nとすると、以下の式のようにみなすことができる。
Δrn=clk´+ε´n
【0040】
ここで、clk´は、GPS衛星20a〜20dの時計と受信機10の時計のずれなどの共通な成分である。ε´nは、r´nに対応する誤差の変動成分(補正不能な成分)である。ここで、ε´nがゼロに近いほど擬似距離が正確であるといえ、Δrnが複数のGPS衛星20a〜20d間で揃った値となる。一方、ε´nがゼロから離れるほど擬似距離prnが不正確であることとなり、Δrnが複数のGPS衛星20a〜20d間でばらついた値となる。また、擬似距離prnが不正確であれば、算出された受信機の位置も正確な位置からずれる可能性が大きくなる。つまり、擬似クロックバイアスのばらつきによって、算出された受信機位置が正確かどうか(GPS測位精度)を判定することが可能である。
【0041】
GPS測位では、測位用信号の送信時刻におけるGPS衛星20の位置を知ることが必要である。通常、GPS測位では、GPS衛星20から送信される航法メッセージ中の衛星軌道パラメータによって、一定範囲内の任意時刻におけるGPS衛星20の位置が算出される。従って、GPS衛星20の正確な位置を算出ためには、正確な送信時刻が必要である。通常は、送信時刻情報を航法メッセージから取得することが可能である。しかしながら、GPS信号強度の低下などの原因で取得した送信時刻情報(TOW)が誤れば、算出されるGPS衛星20の位置に誤差が生じ、GPS測位の精度が大幅に劣化する。
【0042】
図5に示すように、GPS衛星20は数km/sの速度で移動している。送信時刻情報(TOW)が誤っていると、GPS衛星20が測位用信号を送信した時に実際には位置P1に位置していたにもかかわらず、位置P1とは異なる位置P2にGPS衛星20が存在していたものとして測位計算が行われてしまう。その結果、受信機10の位置が誤って算出されてしまう。そこで本実施形態では、前述のように、擬似クロックバイアスを用いると、GPS測位精度の評価が可能であることを利用して、このような状況を回避して正確な測位を行う。
【0043】
受信機10は、受信された航法メッセージから送信時刻情報(TOW)を取得し、その時刻情報に基づいて、探索する時刻の範囲(探索時間)と探索ステップ幅とを決定する。続いて受信機10は、探索時間において、探索ステップ幅に区切られた複数の送信時刻(以下では「探索時刻」ともいう)での各GPS衛星20a〜20dの位置を、衛星軌道パラメータ等を用いて算出する。続いて受信機10は、当該複数の送信時刻に応じて算出した各GPS衛星20a〜20dの位置と、GPS衛星20a〜20dまでの擬似距離とに基づいて、受信機10の送信時刻毎の位置を算出する。
【0044】
続いて受信機10は、送信時刻毎に算出された受信機10の位置に基づいて、送信時刻毎に擬似クロックバイアスΔrn(TOW)を算出する。続いて受信機10は、送信時刻毎に擬似クロックバイアスΔrn(TOW)のばらつきを算出する。なお、擬似クロックバイアスのばらつきを示す方法としては、分散や、平均との差分の最大値などが使用可能である。ここで、例として、分散σΔrn(TOW)2を用いてばらつきを表現すると、TOWと分散σΔrn(TOW)2との関係は、図7に示すグラフで表される。図7のグラフでは、横軸がTOWを、縦軸が分散σΔrn(TOW)2をそれぞれ示している。図7における実線Leは、誤差を含む擬似クロックバイアスの時間経過を示し、破線Liは、誤差がない理想的な擬似クロックバイアスの時間経過を示す。
【0045】
図7に示すように、正しい送信時刻Tpが探索範囲内にあれば、GPS衛星20は必ずその送信時刻Tpにおける位置に近づいた後、遠のく。測位誤差は、正しい送信時刻Tpに近づくにつれて小さくなった後、その送信時刻Tpから離れるにつれて大きくなる。即ち、測位誤差は、正しい送信時刻Tpにおいて最小になる。従って、測位誤差を示す、擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2の時間曲線も、図7に示すように下に凸となり、擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2は、正しい送信時刻Tpにおいて最小になる。
【0046】
従って、受信機10は、探索する時刻の範囲において擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2が最小となる時刻Tpを正しい送信時刻とし、この送信時刻Tpにおける測位結果を測位の最終結果とすればよい。さらに、送信時刻Tpにおける測位結果は、Tp探索されたあとで別途算出してよい、また、Tpの探索時に算出された位置を用いてもよい。
【0047】
このように、擬似クロックバイアスから正しい送信時刻Tpを導出できるのは、GPS衛星20a〜20dの相対位置が送信時刻毎に異なるからである。つまり、GPS衛星20a〜20dの速度ベクトル(移動の高度、単位時間における移動距離)がそれぞれ異なるからである。その結果、GPS衛星20a〜20dの相対位置が送信時刻毎に異なるからである。例えば、図8(a)〜(c)に示すように、GPS衛星20a〜20dの速度ベクトルra〜rdが互いに異なれば、GPS衛星20a〜20dの相対位置は、送信時刻t1〜t3において変動する。その結果、擬似クロックバイアスの分散も送信時刻毎に変動する。そのため、受信機10は、擬似クロックバイアスが最小となる送信時刻t2を導出でき、ひいては、GPS衛星20a〜20dの位置Pa〜Pdに基づいて受信機10の位置31を精度良く算出できる。
【0048】
しかし、図9(a)〜(c)に示すように、GPS衛星20a〜20dの速度ベクトルra〜rdが同じであり、その結果、GPS衛星20a〜20dの相対位置が送信時刻t1〜t3において変わらない場合には、擬似クロックバイアスの分散も変わらない。この場合、受信機10は、擬似クロックバイアスが最小となる送信時刻t2を導出できない。そのため、受信機10は、GPS衛星20a〜20dの位置Pa〜Pdに基づいて自機の位置31を算出できない。
【0049】
従って、受信した信号の送信元である複数のGPS衛星20の中から、正しい送信時刻を導出しうるGPS衛星20の組合せを決定する必要がある。例えば、5機以上のGPS衛星20から、図8(a)〜(c)に示されるGPS衛星20a〜20dを決定する必要がある。
【0050】
このために本実施形態では、まず、受信機10が各GPS衛星20の速度ベクトルを算出する。続いて、受信機10が、算出された複数の速度ベクトルから速度ベクトルの組合せを一つ以上生成し、生成された速度ベクトルの組合せに基づいて複数のGPS衛星20を選択する。
【0051】
速度ベクトルの組合せに基づいてGPS衛星20を選択する手法はいくつか考えられるが、ここでは一例として、速度ベクトルの和(ベクトル和)に基づいて選択する手法を簡単に説明する。送信ベクトルの組合せを生成した受信機10は、各組合せについて速度ベクトルの和(ベクトル和)を算出する。このベクトル和が小さいほど、組合せに含まれる各速度ベクトルに対応する各GPS衛星20の相対位置が送信時刻毎に変動する可能性が高いといえる。例えば、各GPS衛星20の相対位置が変動する図8の場合、ベクトル和rT1は図10(a)に示されるように比較的小さい。これに対し、各GPS衛星20の相対位置が変動しない図9の場合には、ベクトル和rT2は図10(b)に示すように大きくなる。
【0052】
最終的に、受信機10は、ベクトル和が最小の組合せに対応する複数のGPS衛星20を選択する。これにより、受信機10は、擬似クロックバイアスが最小となる正しい送信時刻を導出し、その送信時刻における自機の位置を算出できるので、受信機10のユーザは、精度の高い現在位置を取得できる。
【0053】
続いて、図11及び12を用いて測位対象及び測位の主体となる受信機10の機能的な構成を説明する。図11は、図1に示す受信機10の機能構成を示す図である。図12は、受信機10のハードウェア構成を示す図である。なお、以下の説明では、算出された擬似距離prnが、βnの補正が実施された後のものであることを前提とする。
【0054】
図11に示すように、受信機10は、信号受信部11、速度ベクトル算出部12、衛星選択部13、距離算出部14、位置算出部15、距離差分算出部16、位置精度評価部17、衛星精度評価部18、及び出力部19を備えている。なお、受信機10は、上述した移動体通信を行う機能を更に備えていてもよい。
【0055】
受信機10は、図12に示すように、CPU(Central Processing Unit)101、RAM(Random Access Memory)102、ROM(Read Only Memory)103、操作部104、無線通信部105、ディスプレイ106、アンテナ107及び測位用ICチップ108により構成されている。図11に示される各機能は、これらのハードウェアが動作することで実現される。特に、測位用ICチップ108は、速度ベクトル算出部12、衛星選択部13、距離算出部14、位置算出部15、距離差分算出部16、位置精度評価部17、及び衛星精度評価部18の各機能を有する。なお、受信機10が測位用ICチップ108を有さず、他のハードウェア(例えば、CPU101、RAM102、ROM103など)により図11の各機能が実現されてもよい。
【0056】
図11に戻って、信号受信部11は、GPS衛星20から送信される信号を受信する手段である。信号受信部11は、受信した信号に含まれる情報を速度ベクトル算出部12、距離算出部14、及び位置算出部15に出力する。信号受信部11は、時計の機能を有しており、上記の情報と併せて、測位用信号を受信した受信時刻を示す情報を距離算出部14に出力する。なお、信号受信部11は、複数のGPS衛星20から信号を受信する。
【0057】
速度ベクトル算出部12は、複数のGPS衛星20から送信され信号受信部11により受信された複数の信号に基づいて、各GPS衛星20の速度ベクトルを算出する速度ベクトル算出手段である。速度ベクトル算出部12は、算出した各GPS衛星20の速度ベクトルを衛星選択部13に出力する。
【0058】
速度ベクトルの算出方法はいくつか考えられるが、ここでは、時刻tにおけるGPS衛星の速度ベクトルを衛星軌道パラメータから算出する手法について説明する。
【0059】
GPS衛星20の軌道楕円の長半径、離心率、軌道傾斜角、昇交点赤経、近地点引数をそれぞれa,e,i,Ω,ωとする。速度ベクトル算出部12は、まず、GPS衛星20の平均角速度を示す平均運動nを下記式により算出する。なお、μeは地球重力定数である。
【数2】
【0060】
続いて、速度ベクトル算出部12は、平均近点角Mを下記式により算出する。なお、tpはGPS衛星20が近地点(GPS衛星20が地球に最も近づく地点)を通過する時刻を表す。
M=n(t−tp)
【0061】
続いて、速度ベクトル算出部12は、算出した平均近点角Mを下記のケプラー式に代入することで離心近点角Eを算出する。
M=E−e・sinE
【0062】
続いて、速度ベクトル算出部12は、軌道面座標系におけるGPS衛星20の速度ベクトルrを下記式により算出する。
【数3】
【0063】
続いて、速度ベクトル算出部12は、算出した軌道面座標系内の速度ベクトルrを、下記式により慣性座標系に変換する。なお、Rz(α)は、慣性座標系のz軸を角度αだけ回転させるベクトルを表し、Rx(α)は、慣性座標系のx軸を角度αだけ回転させるベクトルを表す。
rl=Rz(−Ω)Rx(i)Rz(−ω)r
【0064】
そして、速度ベクトル算出部12は、慣性座標系の速度ベクトルrlを、下記式によりECEF座標系に変換する。
rT=Rz(θ)rl
【0065】
これにより、速度ベクトル算出部12は、時刻tにおけるECEF座標系での速度ベクトルrTを取得する。速度ベクトル算出部12は、このような一連の演算を実行するプログラムを予め記憶しており、必要に応じて読み出すことで、各GPS衛星20についてECEF座標系の速度ベクトルrTを算出する。なお、以下では、ECEF座標系の速度ベクトルrTをX(x,y,z)とも表す。
【0066】
もちろん、速度ベクトル算出部12は、他の手法により速度ベクトルを算出してもよい。例えば、速度ベクトル算出部12は、時間経過に伴うGPS衛星20の位置の変動量に基づいて速度ベクトルを算出してもよい。
【0067】
衛星選択部13は、速度ベクトル算出部12により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、信号受信部11により受信された複数の信号の送信元である複数のGPS衛星20から複数のGPS衛星20を選択する信号発信源選択手段である。衛星選択部13は、選択したGPS衛星20を示す衛星選択情報を位置算出部15に出力する。
【0068】
GPS衛星20を選択する手法は一種類に限定されない。以下では、GPS衛星20の選択手法をいくつか示す。
【0069】
まず、第一の手法を説明する。この場合、衛星選択部13は、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)から成る組合せCを生成する。続いて衛星選択部13は、生成された組合せCについて三次元速度ベクトルのベクトル和を算出し、そのベクトル和の大きさが所定の閾値THa以下か否かを判定する。そして、ベクトル和の大きさが閾値THa以下である場合、衛星選択部13は、入力されたm個の速度ベクトルに対応するm個のGPS衛星20を、位置推定のために使用する信号発信源として選択する。
【0070】
ここで、m個の速度ベクトルのベクトル和vは次のように表される。
【数4】
【0071】
そして、ベクトル和vの大きさ(ノルム)は、‖v‖で表される。従って、‖v‖≦THaである場合、衛星選択部13は、m個のGPS衛星20を選択する。
【0072】
なお、ベクトル和の算出は、式(2)で示される手法に限定されない。例えば、衛星選択部13は、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)をすべて局地直交座標系に変換し、変換後の速度ベクトルに基づいて二次元速度ベクトルのベクトル和を算出してもよい。具体的には、衛星選択部13は、次に示す式を用いて、二次元速度ベクトルのベクトル和v´を算出する。なお、変換後の速度ベクトルをX´1(x´1,y´1,z´1)〜X´m(x´m,y´m,z´m)とする。
【数5】
【0073】
このとき、ベクトル和v´の大きさは‖v´‖である。その後、衛星選択部13は、所定の閾値TH´aとノルム‖v´‖とを比較し、‖v´‖≦TH´aであればm個のGPS衛星20を選択する。
【0074】
次に第二の手法を説明する。この場合、衛星選択部13は、入力された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る組合せを複数生成し、生成された複数の組合せのそれぞれについてベクトル和を算出し、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応するGPS衛星20を選択する。すなわち、衛星選択部13は、受信機10の位置をより精度良く算出するために、測位に用いるGPS衛星20を絞り込む。なお、選択するGPS衛星20の個数の設定方法は限定されない。例えば、衛星選択部13がその個数を予め記憶し、必要に応じて読み出してもよいし、他の構成要素から入力された情報に基づいて、選択するGPS衛星20の個数を決定してもよい。
【0075】
一例として、衛星選択部13に6個の速度ベクトルX1(x1,y1,z1)〜X6(x6,y6,z6)が入力された場合に、衛星選択部13が6機のGPS衛星20a〜GPS衛星20fから5機のGPS衛星20を選択する処理を説明する。なお、GPS衛星20a〜GPS衛星20fに対応する速度ベクトルがそれぞれX1〜X6であるとする。この場合、衛星選択部13は、まず5個の速度ベクトルから成る組合せを生成する。言い換えれば、衛星選択部13は、5個の速度ベクトルに対応する5個のGPS衛星20から成る組合せを生成する。衛星選択部13により生成される組合せの個数は、6C5=6通りである。具体的には、衛星選択部13は、以下に示す速度ベクトルの組合せCn(n=1〜6)を生成する。
C1=(X1,X2,X3,X4,X5)
C2=(X1,X2,X3,X4,X6)
C3=(X1,X2,X3,X5,X6)
C4=(X1,X2,X4,X5,X6)
C5=(X1,X3,X4,X5,X6)
C6=(X2,X3,X4,X5,X6)
【0076】
続いて衛星選択部13は、生成された速度ベクトルの組合せCn(n=1〜6)のそれぞれについて、式(2)を用いてベクトル和vn(n=1〜6)を算出し、更にベクトル和の大きさ‖vn‖(n=1〜6)を算出する。続いて衛星選択部13は、ベクトル和の大きさが最小である速度ベクトルの組合せを導出し、導出された組合せに対応するGPS衛星20を選択する。例えば、‖vn‖(n=1〜6)の中で‖v3‖が最小である場合、衛星選択部13は、組合せC3に対応するGPS衛星20a,20b,20c,20e,20fを選択する。
【0077】
なお、衛星選択部13は、二次元速度ベクトルのベクトル和を第二の手法に適用することも可能である。また、衛星選択部13が一回の処理で選択するGPS衛星20の個数は限定されない。衛星選択部13は、6個の速度ベクトルに基づいて4個のGPS衛星20を選択してもよいし、2個の速度ベクトルに基づいて1個のGPS衛星20を選択してもよい。
【0078】
次に第三の手法を説明する。この場合、衛星選択部13は、速度ベクトルの方向のばらつき、速度ベクトルの大きさのばらつき、又はこれら双方のばらつきを評価することで、GPS衛星20を選択する。
【0079】
一例として、衛星選択部13は、まず、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)から成る組合せCを生成する。続いて衛星選択部13は、入力されたm個の速度ベクトルX1(x1,y1,z1)〜Xm(xm,ym,zm)を局地直交座標系に変換し、該座標系の速度ベクトルX´1(x´1,y´1,z´1)〜X´m(x´m,y´m,z´m)を取得する。続いて衛星選択部13は、変換された速度ベクトルのそれぞれについて、二次元速度方向θiを下記式により算出する。
θi=tan−1(y´i/x´i) (i=1〜m) …(4)
【0080】
続いて衛星選択部13は、生成された組合せCについて、算出された二次元速度方向のばらつきを評価する。衛星選択部13は、例えば標本分散や、平均値との差分の最大値などに基づいて二次元速度方向のばらつきを評価する。
【0081】
標本分散を用いてばらつきを評価する場合、衛星選択部13は、下記式を用いて、速度ベクトルの組合せに対する評価値hを算出する。
【数6】
これとは別に、平均値との差分の最大値を用いてばらつきを評価する場合、衛星選択部13は、下記式を用いて、速度ベクトルの組合せCに対する評価値hを算出する。
【数7】
【0082】
衛星選択部13は、いずれかの手法を用いて評価値hを算出する。この評価値hは、組合せCのばらつきを示す値である。続いて衛星選択部13は、その評価値hが所定の閾値THc以上か否かを判定する。そして、h≧THcである場合、衛星選択部13は、衛星m個の速度ベクトルのそれぞれに対応するm個のGPS衛星20を選択する。
【0083】
衛星選択部13は、速度ベクトルの大きさのばらつきに基づいてGPS衛星20を選択する場合も同様の演算を行い、ばらつきを示す評価値が所定の閾値以上であれば、m個のGPS衛星20を選択する。また、速度ベクトルの方向のばらつきを示す評価値と、速度ベクトルの大きさのばらつきを示す評価値との和が所定の閾値以上である場合にm個のGPS衛星20を選択するように衛星選択部13を構成してもよい。
【0084】
次に第四の手法を説明する。この場合、衛星選択部13は、上記第三の手法を利用して、測位に用いるGPS衛星20を絞り込む。ただし、衛星選択部13は、ベクトル和ではなく速度ベクトルのばらつきに基づいて、GPS衛星20を選択する。
【0085】
一例として、衛星選択部13に6個の速度ベクトルX1(x1,y1,z1)〜X6(x6,y6,z6)が入力された場合に、衛星選択部13が6機のGPS衛星20a〜GPS衛星20fから5機のGPS衛星20を選択する処理を説明する。なお、GPS衛星20a〜GPS衛星20fに対応する速度ベクトルがそれぞれX1〜X6であるとする。この場合、衛星選択部13は、まず、入力された6個の速度ベクトルX1(x1,y1,z1)〜X6(x6,y6,z6)を局地直交座標系に変換し、該座標系の速度ベクトルX´1(x´1,y´1,z´1)〜X´6(x´6,y´6,z´6)を取得する。続いて衛星選択部13は、変換後の速度ベクトルのそれぞれについて、二次元速度方向を式(4)により算出する。
【0086】
続いて衛星選択部13は、5個の速度ベクトルから成る組合せCn(n=1〜6)を以下のように生成する。
C1=(X1,X2,X3,X4,X5)
C2=(X1,X2,X3,X4,X6)
C3=(X1,X2,X3,X5,X6)
C4=(X1,X2,X4,X5,X6)
C5=(X1,X3,X4,X5,X6)
C6=(X2,X3,X4,X5,X6)
【0087】
続いて衛星選択部13は、生成された速度ベクトルの組合せCn(n=1〜6)のそれぞれについて、上記式(5)又は式(6)を用いてばらつきの評価値hn(n=1〜6)を算出する。
【0088】
速度ベクトルの方向のばらつきのみに基づいてGPS衛星20を絞り込む場合、衛星選択部13は、評価値が最も大きい組合せに対応するGPS衛星20を選択する。例えば、評価値h5が他の評価値よりも大きければ、衛星選択部13は、GPS衛星20a,20c,20d,20e,20fを選択する。速度ベクトルの大きさのばらつきのみに基づいてGPS衛星20を絞り込む場合も、衛星選択部13は同様の処理を実行する。
【0089】
一方、速度ベクトルの方向及び大きさのばらつきに基づいてGPS衛星20を選択する場合、衛星選択部13は、速度ベクトルの方向のばらつきを示す評価値hanを算出し、その評価値が小さい順に、各組合せCnに対して1〜6の番号を付ける。更に衛星選択部13は、速度ベクトルの大きさのばらつきを示す評価値hbnを算出し、その評価値が小さい順に、各組合せCnに対して1〜6の番号を付ける。そして、衛星選択部13は、組合せCn毎に番号の和を算出し、その和が最大の組合せに対応するGPS衛星を選択する。
【0090】
例えば、評価値hanの大小関係がha3<ha4<ha5<ha6<ha1<ha2であり、評価値hbnの大小関係がhb4<hb5<hb1<hb2<hb6<hb3である場合、各組合せCnに付される番号の和は以下の通りである。
C1…5+3=8
C2…6+4=10
C3…1+6=7
C4…2+1=3
C5…3+2=5
C6…4+5=9
【0091】
この場合、衛星選択部13は、組合せC2に対応するGPS衛星20a,20b,20c,20d,20fを選択する。なお、この第四の手法においても、衛星選択部13が一回の処理で選択するGPS衛星20の個数は限定されない。例えば、衛星選択部13は、6個の速度ベクトルに基づいて4個のGPS衛星20を選択してもよいし、10個の速度ベクトルに基づいて9個のGPS衛星20を選択してもよい。
【0092】
衛星選択部13は、上述した機能を実行するために、GPS衛星20を選択するためのプログラム(例えば、第一の手法を実行するためのプログラム)を予め記憶しており、必要に応じて読み出す。
【0093】
距離算出部14は、信号受信部11から入力された情報に基づいて、各GPS衛星20と受信機10との間の距離を算出する手段である。距離算出部14は、信号受信部11から入力された情報に含まれる信号の送信時刻と、受信時刻を示す情報とから時間差を算出し、算出された時間差に光速を乗算することにより擬似距離を算出する。距離算出部14は、GPS衛星20の識別情報に基づいて、GPS衛星20毎に擬似距離を算出する。このために距離算出部14は、擬似距離を算出するためのプログラムを予め記憶しており、必要に応じて読み出す。なお、距離の算出方法は、このような手法に限られず、測位用信号に基づいて算出するものであれば、既存の方法を含むどのようなものでもよい。距離算出部14は、算出された各距離を示す情報を位置算出部15及び距離差分算出部16に出力する。
【0094】
位置算出部15は、衛星選択部13により選択されたGPS衛星20から送信され信号受信部11により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に受信機10の位置を算出する位置算出手段である。具体的には、位置算出部15は、衛星選択部13から入力された衛星選択情報で示される複数のGPS衛星20の位置を、信号受信部11から入力されたGPS衛星20の軌道情報や送信時刻情報などに基づいて特定する。続いて位置算出部15は、特定されたGPS衛星20の位置を用いて受信機10の位置を算出する。
【0095】
まず、位置算出部15は、衛星選択部13から入力された衛星選択情報に基づいて、位置を特定するGPS衛星20を決定する。例えば、信号受信部11から入力された情報が6個のGPS衛星20a〜20fに関するものであり、衛星選択部13から入力された衛星選択情報がGPS衛星20a〜20dを示す場合、位置算出部15は、GPS衛星20a〜20dの位置のみを特定すると決定する。
【0096】
続いて、位置算出部15は、送信時刻情報を用いて、探索時間及び探索ステップ幅を決定する。例えば位置算出部15は、送信時刻情報により示される時刻を中心として、その前後数秒〜数十秒程度(例えば5秒)の範囲を探索時間に設定し、数ms〜数百ms程度(例えば100ms)の探索ステップ幅を設定する。このために、位置算出部15は、探索時間及び探索ステップ幅を決定するためのプログラムを予め記憶している。
【0097】
続いて位置算出部15は、探索時間において探索ステップ幅で区切られた時刻(探索時刻)毎に、算出対象のGPS衛星20の位置を衛星軌道パラメータ等に基づいて算出する。続いて位置算出部15は、探索時刻毎に算出した各GPS衛星20の位置と、距離算出部14から入力された各擬似距離を示す情報とに基づいて、最小二乗法のアルゴリズムなどにより、受信機10の位置を探索時刻毎に算出する。位置算出部15は、GPS衛星20の位置や受信機10の位置を示す情報を、例えば、緯度及び経度(GPS衛星20については高度も)を示す座標として算出する。位置算出部15は、探索時刻毎に算出した受信機10及び各GPS衛星20の位置を示す情報を距離差分算出部16に出力する。
【0098】
距離差分算出部16は、位置算出部15から入力された受信機10及び複数のGPS衛星20の位置に基づいて、受信機10と各GPS衛星20との距離r´nを算出し、この距離r´nと、距離算出部14から入力された擬似距離prnとの差分ΔrnをGPS衛星20毎に算出する手段である。位置算出部15からは、探索時刻毎に算出された受信機10及び複数のGPS衛星20の位置が入力されるので、距離差分算出部16は、各探索時刻における擬似クロックバイアスΔrn(TOW)を算出する。距離差分算出部16は、算出した複数の擬似クロックバイアスΔrn(TOW)を位置精度評価部17に出力する。
【0099】
位置精度評価部17は、位置算出部15により算出された受信機10の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段である。また、位置精度評価部17は、設定された一の送信時刻に対応する受信機10の位置を、受信機10の推定位置として設定する推定位置設定手段でもある。
【0100】
具体的には、位置精度評価部17は、距離差分算出部16から入力されたGPS衛星20a〜20d毎の擬似クロックバイアスΔrn(TOW)のばらつきを探索時刻毎に算出し、算出されたばらつきに基づいて、位置算出部15により算出された受信機10の位置の精度を評価する。位置精度評価部17は、擬似クロックバイアスΔrn(TOW)の分散σΔrn(TOW)2を、ばらつきを示す値として用いる。続いて、位置精度評価部17は、探索時間において擬似クロックバイアスの分散σΔrn(TOW)2が最小となる時刻を正しい送信時刻Tpとして設定する。そして、位置精度評価部17は、正しい送信時刻Tpにおける測位結果を最終結果として採用する。すなわち、位置精度評価部17は、正しい送信時刻Tpに対応する受信機10の位置を、受信機10の推定位置として設定する。なお、正しい送信時刻Tpに対応する受信機10の位置とは、位置算出部15において該送信時刻Tpに基づいて算出された測位結果のことである。
【0101】
なお、以下では、送信時刻Tpに対応する擬似クロックバイアスをΔrn(Tp)と表し、送信時刻Tpに対応する擬似クロックバイアスの分散をσΔrn(Tp)2と表す。
【0102】
続いて位置精度評価部17は、分散σΔrn(Tp)2に基づいて受信機10の位置の精度を評価する。このために位置精度評価部17は、評価用のプログラムを予め記憶し、必要に応じてそのプログラムを読み出す。
【0103】
例えば、位置精度評価部17は、分散σΔrn(Tp)2が予め設定した閾値よりも大きい場合には、算出された受信機10の位置の精度が悪いと評価し、算出した分散σΔrn(Tp)2が予め設定した閾値よりも小さい場合には、受信機10の位置の精度が良いと評価する。また、位置精度評価部17は、分散σΔrn(Tp)2自体を、算出した受信機10の位置の精度を示す値(実際の受信機10の位置と算出された位置とが乖離している度合を示す値)として用いてもよい。この場合、分散σΔrn(Tp)2の値が小さいほど、受信機10の位置の精度が良いことになる。また、予めチューニングされて設定された係数を分散σΔrn(Tp)2に乗算することによって、実際の受信機10の位置と算出された位置との乖離量を推定するように位置精度評価部17を構成してもよい。
【0104】
位置精度評価部17は、分散σΔrn(Tp)2と、正しい送信時刻Tpにおける測位結果(受信機10の推定位置として設定された測位結果)を衛星精度評価部18に出力する。これとは別に、位置精度評価部17による評価を示す情報は、受信機10において適宜用いられる。
【0105】
例えば、精度が良いと判断された場合(一定以上の精度を示す結果が得られた場合)、位置精度評価部17は、測位結果(位置算出部15により算出された受信機10の位置を示す情報)を出力部19に出力する。このとき、測位結果と併せて、位置精度評価部17による評価を示す情報を出力部19に出力するように位置精度評価部17を構成してもよい。これに対し、精度が悪いと判断された場合(一定以上の精度を示す結果が得られなかった場合)、位置精度評価部17は、位置算出部15により位置を特定されるGPS衛星20を絞り込んで測位を再実行するために、絞り込むGPS衛星20の個数を示す情報を衛星選択部13に出力する。なお、位置精度評価部17は、精度が悪いと判断した場合に測位処理を終了してもよい。
【0106】
衛星精度評価部18は、位置精度評価部17から入力された各GPS衛星20の擬似クロックバイアスΔrn(Tp)の、各GPS衛星20間でのばらつきに基づいて、位置算出部15による受信機10の位置の算出に使用したGPS衛星20の精度を評価する手段である。GPS衛星20の精度とは、各GPS衛星20からの信号を用いて、距離算出部14によって、いかに誤差の変動成分ε´の小さい擬似距離prnを算出できるかを示す度合である。
【0107】
衛星精度評価部18での評価は、誤差の変動成分ε´が小さい場合には、複数のGPS衛星20間で擬似クロックバイアスΔrn(Tp)のばらつきが小さく、ε´が大きい場合には、そのばらつきが大きくなることに基づいている。位置精度評価部17は、擬似クロックバイアスΔrn(Tp)に基づいて、各GPS衛星20をクラスタリングする。クラスタリングにより、他のGPS衛星と比べて、大きく異なる擬似クロックバイアスΔrn(Tp)を有するGPS衛星を抽出できる。例えば、衛星精度評価部18は、擬似クロックバイアスΔrn(Tp)に基づいて抽出されたGPS衛星20の精度を低いと評価する。なお、衛星精度評価部18は、各GPS衛星20の精度を評価するためのプログラムを予め記憶しており、必要に応じて読み出すことで評価を行なう。
【0108】
衛星精度評価部18による、各GPS衛星20の精度の評価を示す情報は、受信機10において適宜用いられる。例えば、精度が悪いと判断されたGPS衛星20の数が一定数以下であった場合、衛星精度評価部18は、測位結果(位置算出部15により算出された受信機10の位置を示す情報)を出力部19に出力する。また、衛星精度評価部18は、測位結果と併せて、GPS衛星20の評価を示す情報を出力部19に出力してもよい。これに対し、精度が悪いと判断されたGPS衛星20の数が一定数以上であった場合、衛星精度評価部18は、位置算出部15により位置を特定されるGPS衛星20を絞り込んで測位を再実行するために、絞り込むGPS衛星20の個数を示す情報を衛星選択部13に出力する。なお、衛星精度評価部18は、精度が悪いと判断されたGPS衛星20の数が一定数以上であった場合に、測位処理を終了してもよい。
【0109】
出力部19は、位置精度評価部17及び衛星精度評価部18から入力された情報を画面表示や音声等により出力する手段である。出力される情報には、例えば、位置算出部15により算出された受信機10の位置を示す情報が含まれる。受信機10のユーザは、出力された情報を参照することにより、受信機10の位置、即ち、自身の位置を知ることができる。
【0110】
次に、図13を用いて、図1に示す受信機10の処理を説明するとともに本実施形態に係る測位方法について説明する。図13は、受信機10の処理を示すフローチャートである。
【0111】
受信機10による測位処理は、例えば、受信機10のユーザが操作部104を介して測位要求を入力することによって開始される。もちろん、受信機10内で実行されている他のアプリケーションプログラムが測位要求を出力するなどの他の手法により測位処理が開始されてもよい。
【0112】
まず、信号受信部11が、複数のGPS衛星20から送信されてくる測位用信号を受信する(ステップS01)。信号受信部11は、受信した信号に含まれる情報を速度ベクトル算出部12及び距離算出部14に出力する。
【0113】
続いて、距離算出部14が、信号受信部11から入力された情報に基づいて、各GPS衛星20と受信機10との間の距離(擬似距離)を算出する(ステップS02)。距離算出部14は、擬似距離を示す情報を位置算出部15及び距離差分算出部16に出力する。
【0114】
続いて、速度ベクトル算出部12が、信号受信部11から入力された情報に基づいて、各GPS衛星20の速度ベクトルを算出する(ステップS03、速度ベクトル算出ステップ)。例えば、速度ベクトル算出部12は、上述の方法を用いて、ECEF座標系の速度ベクトルをGPS衛星20毎に算出し、算出結果を衛星選択部13に出力する。なお、速度ベクトル算出部12による速度ベクトルの算出と、距離算出部14による擬似距離の算出とは、並行して実行されてもよい。
【0115】
続いて、衛星選択部13が、算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、信号受信部11により受信された複数の信号の送信元である複数のGPS衛星20から複数のGPS衛星20を選択する(ステップS04、信号発信源選択ステップ)。衛星選択部13は、選択したGPS衛星20を示す衛星選択情報を位置算出部15に出力する。
【0116】
上述したように、GPS衛星20の選択手法は複数存在するが、衛星選択部13は、測位要求の内容などに基づいて任意の手法を用いることが可能である。例えば、入力されたm個の速度ベクトルに対応するm個のGPS衛星20をすべて選択するか否かを判断する際には、衛星選択部13は、上記第一の手法又は上記第三の手法を用いることが可能である。また、入力されたm個の速度ベクトルに対応するm個のGPS衛星20のうちn個(ただし、m>n)のGPS衛星20を選択する際には、衛星選択部13は、上記第二の手法又は上記第四の手法を用いることが可能である。
【0117】
続いて、位置算出部15が、入力された衛星選択情報に基づいて、信号受信部11で受信された複数の信号に対応する複数のGPS衛星20から、位置を特定するGPS衛星20を抽出する。そして、位置算出部15は、抽出されたGPS衛星20の位置を示す情報と、距離算出部14から入力された各擬似距離を示す情報とから、受信機10の位置を算出する(ステップS05、位置算出ステップ)。位置算出部15は、算出された受信機10の位置を示す情報を距離差分算出部16に出力する。
【0118】
続いて、距離差分算出部16が、位置算出部15から入力された受信機10の位置から複数のGPS衛星20までの各距離と、距離算出部14から各擬似距離とに基づいて、これら二種類の距離の差分である擬似クロックバイアスΔrn(TOW)をGPS衛星20毎に算出する(ステップS06)。距離差分算出部16は、算出した擬似クロックバイアスΔrn(TOW)を位置精度評価部17及び衛星精度評価部18に出力する。
【0119】
続いて、位置精度評価部17及び衛星精度評価部18が測位精度を評価する(ステップS07)。即ち、位置精度評価部17が、複数のGPS衛星20間における擬似クロックバイアスΔrn(TOW)のばらつきに基づいて、位置算出部15により算出された受信機10の位置の精度を評価する。
【0120】
この際、位置精度評価部17は、擬似クロックバイアスの分散σΔrn(TOW)2が最小となる時刻を正しい送信時刻Tpとして設定する(送信時刻設定ステップ)。また、位置精度評価部17は、正しい送信時刻として設定された送信時刻Tpにおける測位結果を最終結果(受信機10の推定位置)として設定する(推定位置設定ステップ)。
【0121】
また、衛星精度評価部18は、複数のGPS衛星20間における擬似クロックバイアスΔrn(TOW)のばらつきに基づいて、位置算出部15による受信機10の位置の算出の際に利用した各GPS衛星20の精度を評価する。
【0122】
位置精度評価部17及び衛星精度評価部18が、上記評価に基づいて所定の精度の測位結果を取得したと判断した場合(ステップS08;YES)、位置精度評価部17が測位結果(位置算出部15により算出された受信機10の位置を示す情報)を出力部19に出力し、出力部19がその測位結果を出力する(ステップS09)。これにより、受信機10のユーザは、測位結果を知ることができる。
【0123】
これに対し、位置精度評価部17及び衛星精度評価部18が、所定の精度の測位結果が得られなかったと判断した場合(ステップS08;NO)、位置精度評価部17及び衛星精度評価部18は、測位を再実行すると判断し、絞り込むGPS衛星20の個数を示す情報を衛星選択部13に出力する。これにより、上記ステップS04〜S08の処理が繰り返される。例えば、6機のGPS衛星20からの信号に基づいて算出した受信機10の位置の精度が一定の水準を満たさなかった場合、位置精度評価部17及び衛星精度評価部18は、6機のGPS衛星20を5機に絞り込むための情報を衛星選択部13に出力する。この場合、衛星選択部13は、上述した第二の手法又は第四の手法の例のように、5機のGPS衛星20を選択する。
【0124】
但し、このような繰り返し処理は必ず行われる必要はなく、所定のタイミングで測位処理を終了してもよい。例えば、位置を特定したGPS衛星20の個数が所定の閾値以下(例えば、4以下)の場合には、位置精度評価部17及び衛星精度評価部18が、これ以上GPS衛星20を絞り込んでも一定の精度の測位ができないと判断して、処理を終了してもよい。
【0125】
なお、上記ステップS04〜S08の処理が繰り返される場合に、衛星選択部13は、GPS衛星20を選択する手法を都度変更することも可能である。例えば、衛星選択部13は、一回目の処理では上記第一の手法を用い、二回目の処理(一回目の繰り返し処理)では第二の手法を用いてもよい。
【0126】
続いて、上述した一連の受信機10の測位を行う処理をコンピュータに実行させるための測位プログラムを説明する。図14に示すように、測位プログラム81は、コンピュータが備える記録媒体80に形成されたプログラム格納領域80a内に格納されている。
【0127】
測位プログラム81は、測位処理を統括的に制御するメインモジュール81a、信号受信モジュール81b、速度ベクトル算出モジュール81c、衛星選択モジュール81d、距離算出モジュール81e、位置算出モジュール81f、距離差分算出モジュール81g、位置精度評価モジュール81h、衛星精度評価モジュール81i及び出力モジュール81jを備えて構成される。信号受信モジュール81b、速度ベクトル算出モジュール81c、衛星選択モジュール81d、距離算出モジュール81e、位置算出モジュール81f、距離差分算出モジュール81g、位置精度評価モジュール81h、衛星精度評価モジュール81i及び出力モジュール81jを実行させることにより実現される機能は、上述した受信機10の信号受信部11、速度ベクトル算出部12、衛星選択部13、距離算出部14、位置算出部15、距離差分算出部16、位置精度評価部17、衛星精度評価部18及び出力部19の機能とそれぞれ同様である。
【0128】
なお、測位プログラム81は、その一部若しくは全部が、通信回線等の伝送媒体を介して伝送され、他の機器により受信されて記録(インストールを含む)される構成としてもよい。
【0129】
以上説明したように、本実施形態によれば、速度ベクトルの組合せに基づいてGPS衛星20を選択し、選択されたGPS衛星20からの信号に基づいて複数の時刻から一の時刻を信号の送信時刻として設定することにより、GPS衛星20からの信号の送信時刻を精度良く推定できる。また、送信時刻として設定された一の時刻に対応する受信機10の位置を該受信機10の推定位置として設定することで、受信機10の位置を精度良く測定できる。
【0130】
本実施形態では、速度ベクトルの組合せに対するベクトル和に基づいて複数のGPS衛星20を選択することが可能である。ベクトル和は簡易に算出できるので、この手法を用いた場合には、送信時刻の推定をより簡易に行うことが可能である。
【0131】
特に、上記第一の手法を採用した場合には、閾値を用いてベクトル和の大きさが評価されるので、送信時刻の推定の精度を一定の水準以上に保つことができる。また、上記第二の手法を採用した場合には、ベクトル和の大きさが最小の組合せに対応するGPS衛星20が選択されるので、送信時刻の推定の精度が最も高いGPS衛星20の組合せを取得できる。
【0132】
また、本実施形態では、速度ベクトルの組合せを構成する速度ベクトルのばらつきを示す値に基づいて複数のGPS衛星20を選択することが可能である。この値を用いることでGPS衛星20の相対位置の変化をより的確に導出することができ、その結果、送信時刻の推定をより精度良く行うことが可能になる。
【0133】
特に、上記第三の手法を採用した場合には、閾値を用いて速度ベクトルのばらつきを示す値が評価されるので、送信時刻の推定の精度を一定の水準以上に保つことができる。また、上記第四の手法を採用した場合には、速度ベクトルのばらつきを示す値が最大の組合せに対応するGPS衛星20が選択されるので、送信時刻の推定の精度が最も高いGPS衛星20の組合せを取得できる。
【0134】
以上、本発明をその実施形態に基づいて詳細に説明した。しかし、本発明は上記実施形態に限定されるものではない。本発明は、その要旨を逸脱しない範囲で以下のような様々な変形が可能である。
【0135】
上記実施形態では、衛星選択部13が速度ベクトルに基づいてGPS衛星20を選択したが、GPS衛星20の選択方法はこれに限定されない。例えば、衛星選択部13は、従来から知られている手法と、速度ベクトルを利用した手法とを併用してGPS衛星20を選択してもよい。
【0136】
従来から知られている手法としては、例えば、信号のC/N(信号対ノイズ比)によってGPS衛星毎に受信感度を評価する手法、擬似距離の平均二乗誤差(RMS:Root Mean Square)により各擬似距離のばらつきを評価する手法、精度低下率(DOP:Dilution Of Precision)を用いてGPS衛星の幾何学的な配置を評価する手法が挙げられる。このうち、C/Nを用いる手法と、平均二乗誤差を用いる手法は、共にGPS衛星単体を評価する手法であり、精度低下率を用いる手法は、上記実施形態と同様にGPS衛星の組合せを評価する手法である。
【0137】
例えば、衛星選択部13が、C/N、平均二乗誤差及び精度低下率がそれぞれ所定の閾値以上であるGPS衛星20をまず抽出し、上記実施形態の手法、すなわち速度ベクトルに基づく手法を用いて、抽出されたGPS衛星20から特定のGPS衛星20を選択してもよい。
【0138】
上記実施形態では、擬似クロックバイアスを用いて測位精度を評価したが、RAIM(Receiver Autonomous Integrity Monitoring)などの他の手法を用いて測位精度を評価してもよい。なお、RAIMの詳細は、例えば下記非特許文献1に記載されている。
【非特許文献2】BWParkinson, JJ Spilker, "Global Positioning System: Theory and ApplicationsVolume II - Chapter 5", American Institute of Aeronautics andAstronautics, Inc., p.p.143--164, 1996.
【0139】
また、上記実施形態では、信号発信源としてGPS衛星20を用いたが、擬似衛星や、移動体通信網を構成する基地局などを信号発信源として用いてもよい。
【0140】
また、上記実施形態では、測位の主体は測位の対象でもある受信機10であったが、必ずしも測位の主体と測位の対象とが一致していなくてもよい。例えば、測位の主体は受信機10と別構成の測位サーバにより行われてもよい。測位サーバは、例えば、受信機10と移動体通信網を介して接続することができ、受信機10から測位に必要な情報を受信して、測位を行う。測位サーバは、受信機10から必要な情報を受信して、測位に係る全ての演算を行ってもよい。あるいは、受信機10によって計算されたGPS衛星20と受信機10との間の距離を示す情報を受信することによって取得して、取得した距離を示す情報から測位に係る演算を行ってもよい。特許請求の範囲に記載の測位システムは、受信機やサーバなどの任意の装置に対して適用することが可能である。
【図面の簡単な説明】
【0141】
【図1】本発明の実施形態に係る受信機、及びGPS衛星を示す図である。
【図2】実施形態に係る測位の原理を示す図である。
【図3】実施形態に係る測位の原理を示す図である。
【図4】実施形態に係る測位の原理を示す図である。
【図5】時刻に応じたGPS衛星の位置を示す図である。
【図6】擬似クロックバイアスの概念を示す図である。
【図7】TOWと擬似クロックバイアスの分散との関係を示すグラフである。
【図8】GPS衛星の相対位置が変化する例を示す図である。
【図9】GPS衛星の相対位置が変化しない例を示す図である。
【図10】速度ベクトルの和の概念を示す図であり、(a)は図8に対応し、(b)は図9に対応する。
【図11】図1に示す受信機の機能構成を示す図である。
【図12】図1に示す受信機のハードウェア構成を示す図である。
【図13】図1に示す受信機で実行される処理(測位方法)を示すフローチャートである。
【図14】実施形態に係る測位プログラムの構成を示す図である。
【符号の説明】
【0142】
10…受信機、11…信号受信部、12…速度ベクトル算出部、13…衛星選択部、14…距離算出部、15…位置算出部、16…距離差分算出部、17…位置精度評価部、18…衛星精度評価部、19…出力部、101…CPU、102…RAM、103…ROM、104…操作部、105…無線通信部、106…ディスプレイ、107…アンテナ、108…測位用ICチップ、20…GPS衛星、80…記録媒体、80a…プログラム格納領域、81…測位プログラム、81a…メインモジュール、81b…信号受信モジュール、81c…速度ベクトル算出モジュール、81d…衛星選択モジュール、81e…距離算出モジュール、81f…位置算出モジュール、81g…距離差分算出モジュール、81h…位置精度評価モジュール、81i…衛星精度評価モジュール、81j…出力モジュール。
【特許請求の範囲】
【請求項1】
受信機の位置を推定する測位システムであって、
複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、
前記速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、
前記信号発信源選択手段により選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、
前記位置算出手段により算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、
前記送信時刻設定手段により設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、
を備えることを特徴とする測位システム。
【請求項2】
前記信号発信源選択手段が、前記速度ベクトルの組合せに対するベクトル和を算出し、算出されたベクトル和に基づいて前記複数の信号発信源から複数の信号発信源を選択する、
ことを特徴とする請求項1に記載の測位システム。
【請求項3】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された速度ベクトルの組合せに対するベクトル和の大きさが所定の閾値以下である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択する、
ことを特徴とする請求項2に記載の測位システム。
【請求項4】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る前記組合せを複数生成し、生成された複数の組合せのそれぞれについてベクトル和を算出し、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応する前記信号発信源を選択する、
ことを特徴とする請求項2に記載の測位システム。
【請求項5】
前記信号発信源選択手段が、前記組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された値に基づいて前記複数の信号発信源から複数の信号発信源を選択する、
ことを特徴とする請求項1に記載の測位システム。
【請求項6】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された組合せを構成する速度ベクトルのばらつきを示す値が所定の閾値以上である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択する、
ことを特徴とする請求項5に記載の測位システム。
【請求項7】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る前記組合せを複数生成し、生成された複数の組合せのそれぞれについて該組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された複数の値のうち最も大きい値を導出する速度ベクトルに対応する前記信号発信源を選択する、
ことを特徴とする請求項5に記載の測位システム。
【請求項8】
受信機の位置を推定する測位用ICチップであって、
複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、
前記速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、
前記信号発信源選択手段により選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、
前記位置算出手段により算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、
前記送信時刻設定手段により設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、
を備えることを特徴とする測位用ICチップ。
【請求項9】
測位システムが受信機の位置を推定する測位方法であって、
前記測位システムが、複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出ステップと、
前記測位システムが、前記速度ベクトル算出ステップにおいて算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択ステップと、
前記測位システムが、前記信号発信源選択ステップにおいて選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出ステップと、
前記測位システムが、前記位置算出ステップにおいて算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定ステップと、
前記送信時刻設定ステップにおいて設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定ステップと、
を含むことを特徴とする測位方法。
【請求項10】
コンピュータに受信機の位置を推定させる測位プログラムであって、
複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出機能と、
前記速度ベクトル算出機能により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択機能と、
前記信号発信源選択機能により選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出機能と、
前記位置算出機能により算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定機能と、
前記送信時刻設定機能により設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定機能と、
をコンピュータに実行させることを特徴とする測位プログラム。
【請求項1】
受信機の位置を推定する測位システムであって、
複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、
前記速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、
前記信号発信源選択手段により選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、
前記位置算出手段により算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、
前記送信時刻設定手段により設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、
を備えることを特徴とする測位システム。
【請求項2】
前記信号発信源選択手段が、前記速度ベクトルの組合せに対するベクトル和を算出し、算出されたベクトル和に基づいて前記複数の信号発信源から複数の信号発信源を選択する、
ことを特徴とする請求項1に記載の測位システム。
【請求項3】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された速度ベクトルの組合せに対するベクトル和の大きさが所定の閾値以下である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択する、
ことを特徴とする請求項2に記載の測位システム。
【請求項4】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る前記組合せを複数生成し、生成された複数の組合せのそれぞれについてベクトル和を算出し、算出された複数のベクトル和のうち最も小さいベクトル和を構成する速度ベクトルに対応する前記信号発信源を選択する、
ことを特徴とする請求項2に記載の測位システム。
【請求項5】
前記信号発信源選択手段が、前記組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された値に基づいて前記複数の信号発信源から複数の信号発信源を選択する、
ことを特徴とする請求項1に記載の測位システム。
【請求項6】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された複数の速度ベクトルから成る組合せを生成し、生成された組合せを構成する速度ベクトルのばらつきを示す値が所定の閾値以上である場合に、該複数の速度ベクトルに対応する複数の信号発信源を選択する、
ことを特徴とする請求項5に記載の測位システム。
【請求項7】
前記信号発信源選択手段が、前記速度ベクトル算出手段により算出された速度ベクトルの個数よりも少ない個数の速度ベクトルから成る前記組合せを複数生成し、生成された複数の組合せのそれぞれについて該組合せを構成する速度ベクトルのばらつきを示す値を算出し、算出された複数の値のうち最も大きい値を導出する速度ベクトルに対応する前記信号発信源を選択する、
ことを特徴とする請求項5に記載の測位システム。
【請求項8】
受信機の位置を推定する測位用ICチップであって、
複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出手段と、
前記速度ベクトル算出手段により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択手段と、
前記信号発信源選択手段により選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出手段と、
前記位置算出手段により算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定手段と、
前記送信時刻設定手段により設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定手段と、
を備えることを特徴とする測位用ICチップ。
【請求項9】
測位システムが受信機の位置を推定する測位方法であって、
前記測位システムが、複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出ステップと、
前記測位システムが、前記速度ベクトル算出ステップにおいて算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択ステップと、
前記測位システムが、前記信号発信源選択ステップにおいて選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出ステップと、
前記測位システムが、前記位置算出ステップにおいて算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定ステップと、
前記送信時刻設定ステップにおいて設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定ステップと、
を含むことを特徴とする測位方法。
【請求項10】
コンピュータに受信機の位置を推定させる測位プログラムであって、
複数の信号発信源から送信され前記受信機により受信された複数の信号に基づいて、各信号発信源の速度ベクトルを算出する速度ベクトル算出機能と、
前記速度ベクトル算出機能により算出された複数の速度ベクトルから速度ベクトルの組合せを生成し、生成された速度ベクトルの組合せに基づいて、前記複数の信号発信源から複数の信号発信源を選択する信号発信源選択機能と、
前記信号発信源選択機能により選択された信号発信源から送信され前記受信機により受信された信号に基づいて、複数の時刻を該信号の送信時刻としたときに、該時刻毎に前記受信機の位置を算出する位置算出機能と、
前記位置算出機能により算出された前記受信機の複数の位置の精度を評価して、該複数の位置に対応する複数の時刻から一の時刻を送信時刻として設定する送信時刻設定機能と、
前記送信時刻設定機能により設定された一の送信時刻に対応する前記受信機の位置を、該受信機の推定位置として設定する推定位置設定機能と、
をコンピュータに実行させることを特徴とする測位プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2009−20072(P2009−20072A)
【公開日】平成21年1月29日(2009.1.29)
【国際特許分類】
【出願番号】特願2007−184883(P2007−184883)
【出願日】平成19年7月13日(2007.7.13)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
【公開日】平成21年1月29日(2009.1.29)
【国際特許分類】
【出願日】平成19年7月13日(2007.7.13)
【出願人】(392026693)株式会社エヌ・ティ・ティ・ドコモ (5,876)
【Fターム(参考)】
[ Back to top ]