以下、図面を参照して、本発明を実施するための最良の形態の説明を行う。
図1は、本発明に係る移動体位置測位装置が適用されるGPS(Global Positioning System)の全体的な構成を示すシステム構成図である。図1に示すように、GPSは、地球周りを周回するGPS衛星10と、地球上に位置し地球上を移動しうる車両90とから構成される。尚、車両90は、あくまで移動体の一例であり、その他の移動体としては、自動二輪車、鉄道、船舶、航空機、ホークリフト、ロボットや、人の移動に伴い移動する携帯電話等の情報端末等がありうる。
GPS衛星10は、航法メッセージ(衛星信号)を地球に向けて常時放送する。航法メッセージには、対応するGPS衛星10に関する衛星軌道情報(エフェメリスやアルマナク)、時計の補正値、電離層の補正係数が含まれている。航法メッセージは、C/Aコードにより拡散されL1波(周波数:1575.42MHz)に乗せられて、地球に向けて常時放送されている。尚、L1波は、C/Aコードで変調されたSin波とPコード(Precision Code)で変調されたCos波の合成波であり、直交変調されている。C/Aコード及びPコードは、擬似雑音(Pseudo Noise)符号であり、−1と1が不規則に周期的に並ぶ符号列である。
尚、現在、24個のGPS衛星10が高度約20,000kmの上空で地球を一周しており、各4個のGPS衛星10が55度ずつ傾いた6つの地球周回軌道面に均等に配置されている。従って、天空が開けている場所であれば、地球上のどの場所にいても、常時、少なくとも5個以上のGPS衛星10が観測可能である。
車両90には、移動体位置測位装置としての車載器1が搭載される。
図2は、車載器1の一実施例を含むシステム全体を示す図である。図2には、説明の複雑化を避けるため、GPS衛星101(下付きの符号は、衛星番号)が1つだけ示されている。ここでは、GPS衛星101からの衛星信号に関する信号処理について代表して説明する。GPS衛星101からの衛星信号に関する信号処理は、他のGPS衛星102,103等からの衛星信号に関する信号処理と実質的に同じである。実際には、以下で説明する衛星信号に関する信号処理は、観測可能な各GPS衛星101,102,103等からの衛星信号に対して並列的(同時)に実行されることになる。
本実施例の車載器1は、GPS受信機20を備える。GPS受信機20の構成の詳細は後述する。GPS受信機20は、GPS衛星101から発信されている衛星信号をGPSアンテナ22を介して受信し、内部で発生させたレプリカC/Aコードを用いてC/Aコード同期を行い、航法メッセージを取り出す。C/Aコード同期の方法は、多種多様でありえ、任意の適切な方法が採用されてよい。例えば、DLL(Delay―Locked Loop)を用いて、受信したC/Aコードに対するレプリカC/Aコードの相関値がピークとなるコード位相を追尾する方法であってよい。
また、GPS受信機20は、後述の如く、GPS衛星101と車両90(正確にはGPS受信機20)との間の擬似距離ρを算出する。擬似距離ρとは、GPS衛星101と車両90との間の真の距離とは異なり、時計誤差(クロックバイアス)や、電離層遅延誤差のような電波伝搬速度変化による誤差を含む。
GPS受信機20には、測位演算部24が接続される。
測位演算部24は、先ず、航法メッセージの衛星軌道情報に基づいて、GPS衛星101の、ワールド座標系での現在位置(X1、Y1、Z1)を計算する。尚、GPS衛星101は、人工衛星の1つであるので、その運動は、地球重心を含む一定面内(軌道面)に限定される。また、GPS衛星101の軌道は地球重心を1つの焦点とする楕円運動であり、ケプラーの方程式を逐次数値計算することで、軌道面上でのGPS衛星101の位置が計算できる。また、GPS衛星101の位置(X1、Y1、Z1)は、GPS衛星101の軌道面とワールド座標系の赤道面が回転関係にあることを考慮して、軌道面上でのGPS衛星101の位置を3次元的な回転座標変換することで得られる。尚、ワールド座標系とは、図3に示すように、地球重心を原点として、赤道面内で互いに直交するX軸及びY軸、並びに、この両軸に直交するZ軸により定義される。
測位演算部24は、衛星位置の算出結果と、GPS受信機20から供給される擬似距離ρの算出結果に基づいて、車両90の位置(Xu,Yu,Zu)を測位する。車両90の位置は、3つのGPS衛星10に対して得られるそれぞれの擬似距離及び衛星位置を用いて、三角測量の原理で導出されてよい。この場合、擬似距離は上述の如く時計誤差を含むので、4つ目のGPS衛星10に対して得られる擬似距離及び衛星位置を用いて、時計誤差成分が除去される。尚、車両90の位置の測位方法としては、上述のような単独測位に限られず、干渉測位(既知の点に設置された固定局での受信データを併用する方式)であってもよい。干渉測位の場合、上述の如く固定局及び車両90にてそれぞれ得られる擬似距離の1重位相差や2重位相差等を用いて車両90の位置が測位されることになる。
或いは、測位演算部24は、必要に応じて、車両90の移動態様を検出するINS(inertial navigation system)センサ26や、車速センサ、舵角センサ、方位角計等のような車両センサ28からの情報を用いて、測位結果を補正してよい。INSセンサ26は、ジャイロセンサやG(加速度)センサを含んでよい。例えば、測位演算部24は、トンネル走行中などのように衛星信号が受信できない間、INSセンサ26や車両センサ28に基づいて推定される車両90の移動態様に基づいて、車両90の位置情報を生成してもよい。尚、例えば車両(車両90)の速度ベクトル(Vx、Vy)は、車体を基準としたボディ座標系(図3参照)に基づいているため、測位演算部24は、速度ベクトル(Vx、Vy)を、ローカル座標系を介してワールド座標系へと座標変換する。通常、座標の回転変換は、オイラー角を用いて実現できるが、ボディ座標系からローカル座標系への変換に関しては、ロール角及びピッチ角が小さいとしてヨー角ψのみで実現することとしてよい(但し、ロール角及びピッチ角を考慮することも、ヨー角を無視することも当然に可能である。)。また、ローカル座標系からワールド座標系への変換に関しては、車両位置の経度及び緯度を用いた変換で実現される。
このようにして測位演算部24により測位又は測位後に補正された車両90の位置(Xu,Yu,Zu)は、GPS上の車両位置(Xu,Yu,Zu)として、ブロック30及び36に出力される。
ブロック30では、GPS上の車両位置(Xu,Yu,Zu)は、MAPデータベース52からの地図データ(MAPデータ)の道路上の位置(XuMAP,YuMAP,ZuMAP)へと補正され、更に、カメラ50からの画像に基づいて実行される白線認識処理(ブロック34)結果に基づいて、白線補正(ブロック32)を受ける。カメラ50は、例えば、ルームミラーの前側に搭載される前方監視カメラであってもよいし、車両90の後部に配置される後方監視カメラであってもよい。白線認識方法は、多種多様でありえ、任意の適切な方法が採用されてよい。例えば、撮像画像の所定領域を画像処理対象領域としてエッジ処理を行い、パターンマッチング等を用いて、道路区画線である白線を認識してよい。白線補正(ブロック32)では、例えば複数車線のうちのどの車線を車両90が走行しているかが特定され、特定された車線の位置情報に基づいて、位置(XuMAP,YuMAP,ZuMAP)が補正される。
このようにして補正された車両位置(XuMAP,YuMAP,ZuMAP)は、最終的な車両位置として、例えばナビゲーション装置に出力されてよい。
一方、ブロック36では、測位演算部24により測位又は測位後に補正された車両90の位置(Xu,Yu,Zu)の履歴が、車両90の走行状態(走行軌跡)を表す情報として、車両状態メモリに記憶される。車両状態メモリに記憶された走行軌跡は、ブロック38において、MAPデータベース52からの地図データに基づいて、マップマッチング処理を受ける。このマップマッチング処理は、MAPデータベース52からの地図データの道路形状と、車両状態メモリに記憶された走行軌跡とをパターンマッチングすること(相関性・一致性を評価すること)により実現されてよい。この結果、ブロック40では、車両状態メモリに記憶された走行軌跡に基づいて、地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が算出される。このようにして算出された地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)は、ブロック46に入力される。
また、ブロック42では、カメラ50からの画像に基づいて標識認識処理が実行される。標識認識方法は、多種多様でありえ、任意の適切な方法が採用されてよい。例えば、撮像画像の所定領域を画像処理対象領域としてエッジ処理を行い、パターンマッチング等を用いて、標識を認識してよい。標識は、例えば、道路の表面に描かれる横断歩道や一時停止線,進行方向矢印,「横断歩道あり」の菱形標示,最高速度標示,転回禁止標示などを含む。これらの標識のパターンデータは、標識パターンデータベース54内に記憶されており、上述のパターンマッチングに用いられる。ブロック44では、標識認識結果と、MAPデータベース52からの地図データに基づいて、地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が算出される。具体的には、認識された標識の位置情報と、標識と車両90の位置関係に基づいて、地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が算出される。標識の位置情報は、標識パターンデータベース54内に記憶されていてよい。このようにして算出された地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)は、ブロック46に入力される。
ブロック46では、ブロック40及び44からそれぞれの地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が入力される場合に、信頼性の高い方の車両位置(XuMAP,YuMAP,ZuMAP)が選択される。尚、ブロック40及び44の一方のみが入力される場合には、当該一方からの地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が自動的に選択されてよい。信頼性は、例えばマッチング時の相関性や適合度等に基づいて判断されてもよい。或いは、ブロック46は、簡易的に、ブロック44から地図データ上の車両位置を優先的に選択してもよい。これは、ブロック44から地図データ上の車両位置は、標識が認識された際に不定期的に算出されるが、標識の位置情報を用いるので精度が高いからである。ブロック46にて選択された地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)は、GPS受信機20に入力される。尚、ブロック40及び44からの何れからも地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)がブロック46に入力されない場合には、それに対応してブロック46からGPS受信機20への地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)の出力は行われない。
ここで、標識認識結果から、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)を算出する方法の一例について説明する。
図4は、標識の位置と車両位置と位置関係を概略的に示す平面図である。本例では、横断歩道のある一時停止線手前の路面上に描かれる菱形標示を、認識対象とした場合について説明する。
図4には、菱形標示がカメラ50により捕捉された時点の車両位置が示されている。この時点での地図データ上の車両位置は、カメラ50からの画像情報に基づいて、菱形標示と車両の相対距離L0を算出し、菱形標示の位置(既知)に、相対距離L0を足し合わせることにより導出される。この際、相対距離L0に対応する大きさのベクトルを生成し、菱形標示の位置(既知)に当該ベクトルの始点を置いたときの当該ベクトルの終点の位置座標を、車両位置として算出してもよい。この場合、ベクトルの方向は、道路又は車線の方向に対応させてよい。或いは、菱形標示が交差点手前何mに存在するという既知情報を利用して、交差点の位置情報に基づいて地図データ上の車両位置を導出してもよい。
或いは、菱形標示は、カメラ50により捕捉される関係上、菱形標示の位置を車両が距離L0だけ通り過ぎた時点で認識され、この距離L0は、カメラ50の俯角や搭載位置等のような、動的に変化しないパラメータに依存する。即ち、標識が認識されるときの車両位置は、標識の種類と、カメラ50の俯角等に依存する。従って、予め標識の種類に応じて、標識が認識されるときの車両位置と当該標識の相対距離L0を導出しメモリに記憶しておき、かかる相対距離L0を、標識が認識された時点でメモリから読み出して用いてもよい。この場合、相対距離L0を画像処理により演算する処理負担が軽減される。
次に、GPS受信機20の主要構成(主要処理)について詳説する。ここでは、GPS衛星101からの衛星信号に関するGPS受信機20の信号処理について代表して説明する。GPS衛星101からの衛星信号に関する信号処理は、他のGPS衛星102,103等からの衛星信号に関する信号処理と実質的に同じである。実際には、以下で説明する衛星信号に関する信号処理は、観測可能な各GPS衛星101,102,103等からの衛星信号に対して並列的(同時)に実行されることになる。
図5は、GPS受信機20の主要構成の一例を示すブロック図である。
本実施例のGPS受信機20は、図5に示すように、高周波回路201と、A/D(analog-to-digital)変換回路202と、DLL(Delay―Locked Loop)203と、PLL(Phase−Locked Loop)204と、初期距離計算部206と、モード切替部208と、通常モードブロック210と、キャリア重視モードブロック212とを備える。また、GPS受信機20は、後述の精度比較部222を備えていてもよい。精度比較部222の機能については、後に、図10乃至図12を参照して説明する。
高周波回路201は、GPSアンテナ22を介して供給される微弱なRF信号を後段でA/D変換できるレベルまで増幅すると共に、RF信号の周波数を信号処理できる中間周波数(典型的には、1MHz〜20MHz)に変換する。尚、このようにRF信号をダウンコンバートして得られる信号を、IF(Intermediate frequency)信号と称する。
A/D変換回路202は、高周波回路201から供給されるIF信号(アナログ信号)を、デジタル信号処理ができるようにデジタルIF信号に変換する。
DLL203は、L1波のC/Aコードに対して、内部で発生させたレプリカC/AコードによりC/Aコード同期を行い、上述の擬似距離を算出するように構成されている。尚、実際には、デジタルIF信号は、図示しないミキサにより、PLL204から供給されるレプリカキャリアが乗算されてから、DLL203に入力される。レプリカC/Aコードとは、GPS衛星101からの衛星信号に乗せられるC/Aコードに対して、+1、−1の並びが同一のコードである。C/Aコード同期とは、受信したC/Aコードの位相に対してレプリカC/Aコードの位相を同期(一致)させることをいう。C/Aコードは、1ビットの長さが1μsであり、1ビットに相当する長さが約300m(1μs×光速)である。従って、GPS衛星101に係る擬似距離ρは、GPS衛星101でC/Aコードが0ビット目であるとしてC/AコードのNビット目が車両90にて受信されているかを計測することで、ρ=N×300として求めることができる。即ち、受信したC/AコードのGPS衛星101側のコード位相時刻とGPS受信機20側の時刻との差を測ることで、擬似距離ρが算出される。
PLL204は、内部で発生させたキャリアレプリカ信号を用いて、受信搬送波(受信キャリア)との相関値演算を行うことにより、ドップラシフトした受信キャリアのドップラ成分(ドップラ成分)Δfを測定するように構成されている。尚、実際には、デジタルIF信号は、図示しないミキサにより、DLL203から供給されるレプリカC/Aコードが乗算されてから、PLL204に入力される。PLL204は、レプリカキャリアの周波数frと既知の搬送波周波数fL1(1575.42MHz)に基づいて、ドップラ成分Δf(=fr−fL1)を演算する。
初期距離計算部206は、電離層や対流圏、時計誤差の影響を受けない衛星−車両間距離ρ”0(下付き文字「0」は初期距離を表す)を算出する。衛星−車両間距離ρ”0は、上述の図2のブロック46から供給される信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)と、GPS衛星101の位置(X1、Y1、Z1)とに基づいて、以下のように算出される。
ρ”0=sqrt{(XuMAP−X1)2+(YuMAP−Y1)2+(ZuMAP−Z1)2}
尚、ρ”0を求める際に用いる位置情報(XuMAP,YuMAP,ZuMAP)及び(X1、Y1、Z1)は、時間的に同期されて、例えば同一のGPS時刻に係る位置情報が用いられる。即ち、衛星−車両間距離ρ”0の算出には、車両位置(XuMAP,YuMAP,ZuMAP)に車両が位置した時点(以下、基準時刻t0という)に対応するGPS時刻でのGPS衛星101の位置(X1、Y1、Z1)が用いられる。
モード切替部208は、通常モードとキャリア重視モードとの間でモード選択を行う。モード選択方法の具体例については後述する。
通常モードブロック210は、常時若しくは通常モードが選択された時に動作する。通常モードブロック210では、PLL204からのドップラ成分Δfを用いて、DLL203からの擬似距離ρに対してフィルタ処理が実行される。フィルタ処理は、本分野で知られているいわゆるキャリアスムージングを実現する処理であってよい。キャリアスムージングは、例えばハッチフィルタやカルマンフィルタを用いて実現可能である。
通常モードが選択された時は、通常モードブロック210で算出された擬似距離ρが、通常モードブロック210から測位演算部24に供給される。測位演算部24は、通常モードブロック210から供給される擬似距離ρに基づいて、上述の測位演算を行うことになる。
キャリア重視モードブロック212は、上述の図2のブロック46から信頼性の高い地図データ上の車両位置が供給された時に動作する。尚、信頼性の高い地図データ上の車両位置が順次新たに供給される場合には、信頼性の高い地図データ上の車両位置が供給される毎に、キャリア重視モードブロック212の演算処理が初期化されてよい(即ち、新たな衛星−車両間距離ρ”0が演算されてよい)。
キャリア重視モードブロック212では、初期距離計算部206からの衛星−車両間距離ρ”0を初期距離として、衛星−車両間距離ρ”0に、基準時刻t0後の衛星−車両間距離変化量(以下、「擬似距離変化量」という)を積算することにより、基準時刻t0後の衛星−車両間距離ρ”が算出される。具体的には、キャリア重視モードブロック212では、先ず、入力されたドップラ成分Δfに基づいて、GPS衛星101と車両90との間の相対速度ΔVが、例えば以下の関係式を用いて、算出される。
Δf=ΔV・fL1/(c−ΔV)
次いで、相対速度ΔVを、基準時刻t0からの経過時間に亘って時間積分し、擬似距離変化量(=∫ΔV・dt)を算出する。そして、算出した擬似距離変化量を、基準時刻t0での衛星−車両間距離ρ”0に足し合わせることにより、基準時刻t0以後の衛星−車両間距離ρ”(=ρ”0+∫ΔV・dt)を算出する。
キャリア重視モードが選択された時は、キャリア重視モードブロック212で算出された衛星−車両間距離ρ”が、キャリア重視モードブロック212から測位演算部24に供給される。測位演算部24は、キャリア重視モードブロック212から供給される衛星−車両間距離ρ”を、擬似距離ρと同様に扱い、上述の測位演算を行う。即ち、擬似距離ρに代えて、衛星−車両間距離ρ”を用いて、例えば三角測量の原理に基づいて、上述の測位演算を行う。
このように、本実施例によれば、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)とドップラ成分Δfとを用いて、衛星−車両間距離ρ”を算出し、算出した衛星−車両間距離ρ”に基づいて、測位演算を行うことで、電離層や対流圏といった通常モードでは除去できない誤差要因の影響を受けない測位を実現することができる。また、衛星−車両間距離ρ”は、一般的にばらつきの小さいドップラ成分Δfを用いて導出されるので、ばらつきの小さい衛星−車両間距離ρ”を算出することが可能である。これにより、誤差とばらつきの双方が低減された衛星−車両間距離ρ”を用いて測位を行うことができ、測位結果の誤差とばらつきを効果的に低減することができる。
また、本実施例によれば、地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)を用いて、衛星−車両間距離ρ”0(及びひいてはρ” )を算出するので、地図データに対する整合性の高い測位結果を得ることができる。即ち、図6に示すように、通常モードが実現された際の測位演算部24の測位結果は、地図データから乖離する一方で、キャリア重視モードが実現された際の測位演算部24の測位結果は、地図データに近く、地図データに対する整合性を高めることができる。また、衛星−車両間距離ρ”には、擬似距離ρに含まれる時計誤差が含まれないので、通常モードに比して測位精度が向上する。
次に、上述のモード切替部208により実現されるモード切替態様について説明する。
図7は、モード切替部208により実現されるモード切替方法の一例を示すフローチャートである。図7に示す処理ルーチンは、例えば車両90のイグニッションスイッチがオンにされてからオフにされるまで、所定周期毎に繰り返し実行されてよい。
ステップ600では、モード切替部208は、上述の図2のブロック46からの情報に基づいて、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が取得されたか否かを判定する。即ち、上述の図2のブロック46から信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)がGPS受信機20に入力されたか否かを判定する。本ステップ600で肯定判定された場合には、ステップ610に進み、本ステップ600で否定判定された場合には、ステップ620に進む。
ステップ610では、モード切替部208は、キャリア重視モードを形成する。この結果、測位演算部24は、上述の如く、キャリア重視モードブロック212から供給される衛星−車両間距離ρ”を、擬似距離ρと同様に扱い、上述の測位演算を行う。この場合、モード切替部208は、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が取得された時点から、所定時間経過するまで、或いは、車両90が所定距離走行するまでの間、キャリア重視モードを維持することとしてよい。
ステップ620では、モード切替部208は、通常モードを形成する。この結果、測位演算部24は、上述の如く、通常モードブロック210から供給される擬似距離ρに基づいて、上述の測位演算を行うことになる。
図7に示すモード切替方法によれば、信頼性の高い地図データ上の車両位置が取得された時点から、キャリア重視モードが形成されるので、キャリア重視モードの利点(ばらつきや誤差の少ない点)を最大限に利用することができる。
図8は、モード切替部208により実現されるモード切替方法のその他の一例を示すフローチャートである。図8に示す処理ルーチンは、例えば車両90のイグニッションスイッチがオンにされてからオフにされるまで、所定周期毎に繰り返し実行されてよい。
ステップ700では、モード切替部208は、現在観測可能なGPS衛星10の数が所定数Th以下であるか否かを判定する。所定数Thは、通常モードで測位した場合に電離層等の影響をカバーできるようなGPS衛星10の数の最小値であってよい。即ち、原則的に、観測可能なGPS衛星10の数が多いほど、測位解が多数求まり、電離層等に起因した誤差を除去することが可能となるので、所定数Thは、かかる誤差要因の除去が可能な最小のGPS衛星10の数に対応してよい。尚、観測可能なGPS衛星10とは、例えば、仰角が所定値より大きく(仰角マスクされることが無く)、所定レベル以上の電波強度で衛星信号が受信されているGPS衛星10であってよい。観測可能なGPS衛星10の数が減少する状況は、例えば車両90の周辺環境に存在する建物や森林等の影響により生じうる。
ステップ710では、モード切替部208は、キャリア重視モードを形成する。この結果、測位演算部24は、上述の如く、キャリア重視モードブロック212から供給される衛星−車両間距離ρ”を、擬似距離ρと同様に扱い、上述の測位演算を行う。尚、本例では、キャリア重視モードブロック212においては、モード切替部208によりキャリア重視モードが選択されていない間も、本ステップ710に備えて衛星−車両間距離ρ”が継続的に演算(更新)される。
ステップ720では、モード切替部208は、通常モードを形成する。この結果、測位演算部24は、上述の如く、通常モードブロック210から供給される擬似距離ρに基づいて、上述の測位演算を行うことになる。
図8に示すモード切替方法によれば、観測可能なGPS衛星10の数が減少した場合には、キャリア重視モードが形成されるので、観測可能なGPS衛星10の数が減少することによる精度悪化(測位結果の飛び)を防止して、精度の高い測位を維持することができる。
以上の図8に示すモード切替方法においては、以下のような変形例が考えられる。
図8に示すモード切替方法では、観測可能なGPS衛星10の数が所定数Th以下である場合に、キャリア重視モードを形成しているが、マルチパス(GPS衛星10からの直接波に反射波が重畳されて受信される現象)が発生した場合に、キャリア重視モードを形成してもよい。この場合、観測可能なGPS衛星10の数から、マルチパスが発生したGPS衛星10の数を差し引いた数が、所定数Th以下である場合に、キャリア重視モードを形成することとしてもよい。マルチパスの発生の有無を判定する方法は、多種多様でありえ、任意の適切な方法が採用されてよい。例えば、車両90のGPS衛星10に対する速度ベクトルをドップラ成分Δfから算出すると共に、方位センサや車速センサ等の車両センサ28からの情報に基づいて同速度ベクトルを算出し、これらの算出した両速度ベクトルの向き及び/又は大きさの乖離度を評価し、乖離度が大きい場合にマルチパスが発生したと判定してもよい。
また、図8に示すモード切替方法では、観測可能なGPS衛星10の数が所定数Th以下である場合に、キャリア重視モードを形成しているが、森林等の影響でGPS衛星10からの信号の信号強度(受信レベル)が低下した場合に、キャリア重視モードを形成してもよい。或いは、同様の観点から、例えば、車両90が移動状態にある状況下で、電離層の活動が活発のとき(屈折誤差の増大が生じやすいとき)や、市街地に車両90が存在するとき(電波遮断や反射波の影響を受けて誤差が出やすい環境下に車両90が存在するとき)等のような、電波環境が悪いときには、キャリア重視モードを形成してもよい。
図9は、モード切替部208により実現されるモード切替方法のその他の一例を示す状態遷移図である。図9に示すモード切替方法は、実質的には、図7を参照して説明したモード切替方法の詳細に相当する。
図9において、初期距離計算モードとは、初期距離計算部206が、上述の如く取得された信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)に基づいて、衛星−車両間距離(初期距離)ρ”0を算出するモードである。即ち、初期距離計算モードは、実質的には、図7を参照して説明したモード切替方法における、通常モードからキャリア重視モードへ切り替わる過渡期のモードに相当する。初期距離計算モードは、上述の如く信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が取得された周期だけ実現されることになるが、信頼性の高い地図データ上の車両位置が連続的な周期で取得された場合には、初期距離計算モードは、図9の矢印401に示すように、当該連続的な周期で継続的に実現される。尚、初期距離計算モードでは、測位演算部24は測位演算を行わず、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)がそのまま測位結果として出力される。
図9において、キャリア計算モードとは、上述の如く衛星−車両間距離ρ”0に擬似距離変化量を積算して算出された衛星−車両間距離ρ”
に基づいて、測位を行うモードである。従って、上述のキャリア重視モードは、実質的には、上述の初期距離計算モードとキャリア計算モードを含むモードであるといえる。キャリア計算モードでは、キャリア重視モードブロック212において、上述の如く、直近の初期距離計算モードで算出された衛星−車両間距離(初期距離)ρ”0に基づいて、衛星−車両間距離ρ”が演算される。そして、測位演算部24は、キャリア重視モードブロック212から得られる衛星−車両間距離ρ”を、擬似距離ρと同様に扱って、上述の測位演算を行うことになる。
図9に示すモード切替方法では、モード切替部208は、現在のモードが通常モードである状況下で、上述の如く信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が取得された場合には、初期距離計算モードを形成する(矢印405)。その後、モード切替部208は、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が継続して取得される場合には、初期距離計算モードを維持し(矢印401)、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)の取得が途絶えた場合には、キャリア計算モードを形成する(矢印404)。その後、モード切替部208は、所定の通常モード復帰条件(矢印400参照)が成立せず、且つ、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が取得されない場合には、キャリア計算モードを維持する(矢印403)。そして、モード切替部208は、現在のモードがキャリア計算モードである状況下で、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が取得された場合には、図9の矢印402に示すように、初期距離計算モードを形成する。その後、同様に、モード切替部208は、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が継続して取得される場合には、初期距離計算モードを維持し(矢印401)、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)の取得が途絶えた場合には、キャリア計算モードを形成する(矢印404)。
図10は、モード切替方法のその他の一例を示すフローチャートである。図10に示すモード切替方法は、モード切替部208及び精度比較部222(図5参照)により協動して実現される。図10に示すモード切替方法は、主に、図9を参照して説明したモード切替方法の通常モード復帰条件(矢印400参照)に関するものである。図10に示す処理ルーチンは、例えば車両90のイグニッションスイッチがオンにされてからオフにされるまで、所定周期毎に繰り返し実行されてよい。
ステップ800では、モード切替部208は、現在のモードがキャリア計算モードであるか否かを判定する。現在のモードがキャリア計算モードである場合には、ステップ810に進み、それ以外の場合には、今回周期の処理ルーチンはそのまま終了する。
ステップ810では、精度比較部222は、キャリア計算モードで算出されている衛星−車両間距離ρ”の分散σ1を算出する。衛星−車両間距離ρ”の分散σ1の算出方法は、多種態様でありうるが、例えば、衛星−車両間距離ρ”の分散σ1は、図11に示すような分散σ1と経過時間tとの関係を表す曲線αを用いて、算出されてよい。これは、衛星−車両間距離ρ”の分散σ1が時間の経過に応じて変化(増加)する傾向を利用したものである。ここで、経過時間tとは、キャリア計算モードが形成されている継続時間に相当し、基準時刻t0から現時点までの経過時間であってよい。曲線αは、試験により特性を適合することで予め用意される。この場合、精度比較部222は、曲線αを表す関数(又はマップ)に基づいて現時点の経過時間tに応じた分散σ1を算出する。
ステップ820では、精度比較部222は、通常モードブロック210で算出されている擬似距離ρの分散σ2を算出する。擬似距離ρの分散σ2の算出方法は、多種態様でありうるが、ある1つのGPS衛星10に係る擬似距離ρの分散σ2’は、例えば以下の式に従って算出されてよい。
σ2’=Σ(ρ”1−ave(ρ”1))2/(n−1) 式(1)
式(1)において、ρ”1は、擬似距離ρから観測周期毎の擬似距離変化量を差し引いたものである。擬似距離変化量は、上述のドップラ成分Δfから導出されてよい。ave(ρ”1)は、データ数nのρ”1の平均を表す。
或いは、擬似距離ρの分散値σ2’は、例えば以下の式に従って算出されてよい。
σ2’=λ×√(d1/τ・C/N) 式(2)
式(2)において、C/Nは、搬送波の強度(電力)と雑音の強度(電力)の比である。C/N以外は固定値であり、λは、C/Aコードの1ビットの長さであり、約300[m]である。d1は、擬似距離ρを算出した際に用いたレプリカC/Aコードに係るEarlyレプリカ符号とLateレプリカ符号の位相差(コリレータ間隔)である。τは、フィルタにおけるフィルタ時定数であり、データ数に相当する。
この場合、C/Nの算出方法は、多種多様であり、例えば以下の式(3)に従って算出されてよい。
C/N={(GPS衛星10の発信電波強度)−α×L2}/(熱雑音レベル) 式(3)
これは、C/Nを理論式により推測する方法があり、熱雑音は基本的に常に一定であり、信号は距離の二乗に比例して減衰するという特徴を利用したものである。ここで、GPS衛星10の発信電波強度及び熱雑音レベルは、既知の値を用いる。Lは、GPS衛星10と車両90との間の距離であり、GPS衛星10の位置と、車両90の位置とに基づいて、算出される。Lとして、衛星−車両間距離ρ”が利用されてもよい。GPS衛星10の位置は、衛星位置算出部124からの情報が用いられてよく、車両90の位置は、測位演算部50における前回周期の測位結果であってよく、又は今回周期の測位結果をフィードバックして利用してもよい。また、αは、減衰係数である。尚、式(2)において、GPSアンテナ22の指向性ないしGPS衛星10の仰角を加味するための項を追加してもよい。
或いは、C/Nは、例えば以下の式(4)に従って算出されてよい。
C/N=log(ECA+LCA)+β 式(4)
これは、C/Nがノイズ電力Wnと信号電力(搬送波電力)Wcを用いて、C/N=10log(Wc/Wn)で表され、Wc/WnがEarly相関値ECA及びLate相関値LCAの和(=ECA+LCA)に比例関係にあることを考慮したものである。式(3)において、βは、適切な固定値であり、例えば既知のノイズ電力Wnを用いて、−10logWnで表されてよい。尚、Early相関値ECA及びLate相関値LCAは、熱雑音に起因してバラツキが発生するため、式(4)により求めるC/Nには、バラツキが発生する。従って、以下の式(5)のように、ある程度データをためてフィルタ(平均)処理を行うことで、各相関値ECA、LCAのバラツキの影響を低減することが可能である。
C/N=Σ(C/N’)/n 式(5)
C/N’は、上記の式(4)により算出されたC/Nで表す。nは、データ数(例えば、1ms毎にデータを収集し、100ms分のデータを用いる場合には、n=100)である。尚、データ数nは、観測開始時をゼロとして、その後、観測周期(例えば1ms)毎に1つずつ増加するものである。
或いは、C/Nは、例えば以下の式(6)に従って算出されてよい。
C/N=(C/N推測+n×C/N実測)/(n+1) 式(6)
C/N推測は、上記の式(3)により算出されたC/Nを表し、C/N実測は、上記の式(4)又は(5)により算出されたC/Nを表す。この式(6)では、データ数nが増えるに従って、C/N実測に大きい重みが付与されるようになっている。即ち、観測開始直後は、実測データ量の少なさに起因したC/N実測のバラツキを考慮してC/N推測に相対的に大きな重みが付与され、時間が経過するに従って、実測データ量の増加に伴って信頼性が高くなったC/N実測に相対的に大きな重みが付与されるようになっている。
上述の算出態様を採用した場合には、精度比較部222は、観測可能な全てのGPS衛星10について、GPS衛星10毎に分散σ2’を算出し、これらを積算して平均をとることで最終的な分散σ2を算出する。
ステップ830では、精度比較部222は、上記のステップ810で算出した分散σ1と、上記のステップ820で算出した分散σ2とを比較し、σ1≧σ2であるか否かを判定する。σ1≧σ2である場合には、ステップ840に進み、それ以外の場合には、今回周期の処理ルーチンはそのまま終了する(即ちキャリア計算モードが維持される)。
ステップ840では、モード切替部208は、キャリア計算モードから通常モードにモードを切り替える。この結果、測位演算部24は、上述の如く、通常モードブロック210から供給される擬似距離ρに基づいて、上述の測位演算を行うことになる。
ところで、キャリア計算モードでは、擬似距離ρに代えて、ばらつき及び誤差の小さい衛星−車両間距離ρ”が用いられるので、上述の如く、測位結果の誤差とばらつきを効果的に低減することができる。しかしながら、その反面、キャリア計算モードが長時間継続して維持されると、受信キャリアのドップラ成分Δfの計測値に含まれるバイアス成分に起因した誤差が蓄積し、測位結果の精度が悪化する虞がある。
これに対して、図10に示すモード切替方法によれば、キャリア計算モードで用いられる衛星−車両間距離ρ”の分散σ1が、通常モードで用いられる擬似距離ρの分散σ2以上となった場合には、キャリア計算モードから通常モードへ移行されるので、上記のバイアス成分に起因した誤差の蓄積による精度悪化を防止して、精度の高い測位を維持することができる。
以上の図11に示すモード切替方法においては、以下のような変形例が考えられる。
図11に示すモード切替方法では、衛星−車両間距離ρ”及び擬似距離ρのばらつきを評価する指標として好適な分散を用いているが、ばらつきを表すことが可能な他の指標を用いてもよい。
図12は、モード切替方法のその他の一例を示すフローチャートである。図12に示すモード切替方法は、主に、図9を参照して説明したモード切替方法の通常モード復帰条件(矢印400参照)に関するものである。図12に示す処理ルーチンは、例えば車両90のイグニッションスイッチがオンにされてからオフにされるまで、所定周期毎に繰り返し実行されてよい。
ステップ900では、モード切替部208は、現在のモードがキャリア計算モードであるか否かを判定する。現在のモードがキャリア計算モードである場合には、ステップ910に進み、それ以外の場合には、今回周期の処理ルーチンはそのまま終了する。
ステップ910では、通常モードブロック210にて今回周期の擬似距離ρが算出される。
ステップ920では、キャリア重視モードブロック212にて今回周期の衛星−車両間距離ρ”が算出される。
ステップ930では、測位演算部24において、上記ステップ910で算出された衛星−車両間距離ρ”に基づいて、車両位置が測位される。このようにして測位される車両位置をここでは「車両位置1」という。また、ステップ930では、測位演算部24において、上記ステップ920で算出された擬似距離ρに基づいて、車両位置が測位される。このようにして測位される車両位置をここでは「車両位置2」という。尚、現在の測位モードはキャリア計算モードであるが、本例では、測位演算部24において、擬似距離ρに基づく車両位置2についても測位されるものとする。
ステップ940では、精度比較部222は、上記のステップ930で得られる車両位置1及び車両位置2のそれぞれの精度を、地図データ(MAPデータベース52からの地図データ)との関係で比較する。具体的には、精度比較部222は、車両位置1及び車両位置2のいずれの方が地図データとの整合度が高いかを評価する。例えば、精度比較部222は、車両位置1及び車両位置2が上述のブロック30で地図データの道路上の位置(XuMAP,YuMAP,ZuMAP)へと補正された場合の補正量(即ちマップマッチングの際の補正量)に基づいて、精度を比較してもよい。この場合、精度比較部222は、車両位置1及び車両位置2のうちの補正量が小さい方が、精度の高い車両位置であると評価する。
ステップ950では、上記のステップ940の比較結果に基づいて、車両位置1の方が車両位置2よりも精度が悪い場合にはステップ960に進み、それ以外の場合には、今回周期の処理ルーチンはそのまま終了する(即ちキャリア計算モードが維持される)。
ステップ960では、モード切替部208は、キャリア計算モードから通常モードにモードを切り替える。この結果、測位演算部24は、上述の如く、通常モードブロック210から供給される擬似距離ρに基づいて、上述の測位演算を行うことになる。
図12に示すモード切替方法によれば、キャリア計算モードで測位される場合の車両位置1の精度が、通常モードで測位される場合の車両位置2の精度よりも悪くなった場合には、キャリア計算モードから通常モードへ移行されるので、精度の高い測位を維持することができる。また、地図データ上で精度の評価を行うので、地図データに対する整合性の高い測位を維持することができる。
尚、以上説明した本実施例においては、添付の特許請求の範囲における「第1測位手段」は、通常モードブロック210及び通常モード時の測位演算部24により協動して実現され、同特許請求の範囲における「位置情報取得手段」は、主に図2のブロック40,44、46等での処理により実現され、同特許請求の範囲における「第2測位手段」は、キャリア重視モードブロック212及びキャリア重視モード時の測位演算部24により協動して実現され、同特許請求の範囲における「モード切替手段」は、モード切替部208により実現され、同特許請求の範囲における「精度比較手段」は、精度比較部222により実現されている。また、同特許請求の範囲における「第1測位モード」は、通常モードに対応し、同特許請求の範囲における「第2測位モード」は、キャリア重視モードに対応している。
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、本発明の範囲を逸脱することなく、上述した実施例に種々の変形及び置換を加えることができる。
例えば、上述の実施例では、画像認識やマップマッチングにより信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が得られた場合に、当該地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)を初期位置として用いて、衛星−車両間距離ρ"0が導出されているが、ETC(登録商標)やVICS(登録商標)等のインフラとの路車間通信、又は、車車間通信を介して得られた信頼性の高い車両位置を初期位置として用いて、衛星−車両間距離ρ"0を導出することとしてもよい。
或いは、信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)に代えて、通常モード時の精度の良い測位結果に基づいて、衛星−車両間距離ρ”0を導出することとしてもよい。この場合、測位結果の精度は、車両90とGPS衛星10との幾何学的位置関係が測位精度に及ぼす影響の大きさを表す指標であるDOP(dilution of precision)を用いて評価されてよい。例えば、DOPが高精度を保証する値である場合には、その際に測位される車両位置(Xu,Yu,Zu)を、上述の地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)の代わりに用いて、衛星−車両間距離ρ”0を導出し、上述のキャリア重視モードを実現することとしてもよい。
また、上述の実施例では、キャリア重視モードでは、衛星−車両間距離ρ”を擬似距離として用いて測位を行っているが、他の方法により同様にドップラ成分Δfを用いて、測位を実現してもよい。例えば、上述の図2のブロック46から供給される信頼性の高い地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)に基づいて、当該初期位置から、基準時刻t0から現時点までの車両90の移動ベクトル分だけ移動した位置を、車両90の位置として測位してもよい。この場合、車両90のGPS衛星10に対する速度ベクトルを、ドップラ成分Δfから算出し、当該算出した速度ベクトルと、GPS衛星10の移動ベクトルとの差分ベクトルとして、上記の移動ベクトルが算出されてもよい。
また、上述の実施例では、GPSに本発明が適用された例を示したが、本発明は、GPS以外の衛星システム、例えばガリレオ等の他のGNSS (Global Navigation Satellite System)にも適用可能である。
また、上述の実施例では、通常モードにおいて、C/Aコードを用いて擬似距離ρを導出しているが、本発明は、L1波のPコード及び/又はL2波のPコードに基づいて、同様に、GPS衛星10に対する擬似距離ρを算出する構成にも適用可能である。尚、Pコードの場合、Wコードで暗号化されているので、Pコード同期を行う際に、クロス相関方式を利用したDLLにより、Pコードを取り出すこととしてよい。Pコードに基づく擬似距離ρPは、GPS衛星101でPコードが0ビット目であるとしてPコードのMPビット目が車両90にて受信されているかを計測することで、ρP=MP×30として求めることができる。
また、上述では、好ましい実施例として、通常モードにおいて、キャリアスムージングのようなフィルタ処理が実行されているが、かかるフィルタ処理が省略されてもよい。
また、上述の実施例では、図2に示すように、ブロック46は、ブロック40及び44からそれぞれの地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が所定レベル以上の高い信頼性があると看做して、ブロック40及び44からの地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)のうちの一方をGPS受信機20に出力している。しかしながら、ブロック40及び/又は44からの地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が所定レベル以上の高い信頼性があるか否かを評価した上で、所定レベル以上の地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)だけをGPS受信機20に出力することとしてもよい。この場合、ブロック40及び44の双方から地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が入力された場合であっても、双方ともGPS受信機20に出力されない場合がありうる。或いは、ブロック40及び44にフィルタ機能を付与し、算出された地図データ上の車両位置(XuMAP,YuMAP,ZuMAP)が所定レベル以上の高い信頼性があるときだけ、ブロック46への出力が実現されることとしてもよい。