説明

GPSレシーバ

【課題】初回測位の精度が低い場合であってもその後の測定位置の精度低下を有効に避けることができるGPSレシーバを提供する。
【解決手段】GPS測位の結果に基づいてGPSレシーバが現在位置し得る第一の範囲を推定する現在位置推定手段と、第一の範囲に基づいて、過去のある時点でGPSレシーバが位置し得た第二の範囲を推定する過去位置推定手段と、過去のある時点のGPS測位で計算された過去測定位置が第二の範囲に含まれるか否かを判定する過去測定位置判定手段とを備え、過去測定位置が第二の範囲に含まれない場合には、推定位置の計算に該過去測定位置を使用しないようにGPSレシーバを構成する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、GPS(Global Positioning System)信号を用いてGPS測位を行うGPSレシーバに関連し、詳しくは、該GPS測位の結果に基づいて計算した推定位置を外部に出力するGPSレシーバに関する。
【背景技術】
【0002】
GPSは、地球を周回するGPS衛星から発信されるGPS信号を用いて対象物の位置情報等を測定するための測位システムであり、日常生活においても広く利用されている。
【0003】
GPSでは、CDMA(Code Division Multiple Access)方式によって複数のGPS衛星が同じ周波数帯を共用してGPS信号を送信する。すなわち、GPS信号は、GPS衛星の軌道情報やクロック情報を含む通信信号としての航法メッセージと、GPS衛星毎に定められた拡散符号としてのPRNコード(Pseudo Random Noise code)とにより、1575.42MHzのキャリアをBPSK(Binary Phase Shift Keying)変調したものである。GPSレシーバは、原理上必要とされる個数以上のGPS衛星を選択し、選択したGPS衛星に対応するPRNコードを生成し、生成したPRNコードの位相をGPS信号に同期させて乗じることにより航法データを復調する。そして、復調して得られた航法データを用いて演算を行い、対象物の位置情報、移動速度等を得る。以下、GPSレシーバによるGPS信号を利用した位置測位、移動速度測定等を「GPS測位」と記す。
【0004】
GPSレシーバを備えたエンドユーザ向け製品には、例えば乗用車に搭載されるカーナビゲーション装置がある。カーナビゲーション装置は、GPS測位に加えてDR(dead reckoning)センサを用いた周知のDR測位も行い、2つの測位方式の弱点を補完するように、両方式による測位結果から最終的な測位結果を演算する。そして、演算して得られた測位結果に基づいて、画面上に表示する自車位置を更新する。また、ユーザによって目的地が設定されている場合には、カーナビゲーション装置は画面上の自車位置の更新と併せて当該目的地に向けたナビゲーションを行う。
【0005】
このようなカーナビゲーション装置では、GPSレシーバがGPS測位に利用できるGPS衛星は、建造物等によるGPS信号の遮蔽により刻々と変化する。このためGPS測位に利用されるGPS衛星の幾何学的配置がばらついてGPS測位解に含まれる誤差が変動し、次の図1(a)に示されるようにGPS測位による測定位置がばらつく。
【0006】
図1(a)はGPS測位による測定位置のばらつきを説明するための図である。図1(a)の線Aは乗用車の実際の走行軌跡を、●印の各プロットは所定の周期で実行されるGPS測位により得られる測定位置を、線A’は各測定位置を時系列で結んだ軌跡を示す。図1(a)に示されるように、測位に利用されるGPS衛星の幾何学的配置のばらつきに起因して測位誤差が変動するため、各測定位置を時系列で結んだ軌跡A’が乗用車の実際の走行軌跡Aに対して大きくばらついていることが分かる。
【0007】
カーナビゲーション装置等においては、このように不規則にゆらいだ軌跡を画面表示することは好ましくない。このため一般的なGPSレシーバは、カルマンフィルタを使用してGPS測位結果から統計的に誤差成分を除去した推定値を計算する構成を有している。GPSレシーバは、カルマンフィルタが過去のGPS測位結果や測定条件等の情報を統合して求めた推定値に基づいてGPS測位結果を修正して出力する。図1(b)は、図1(a)と同一の走行軌跡Aと、カルマンフィルタによる推定値に基づいて修正された各測定位置を時系列で結んだ軌跡A”との関係を表す図である。図1(b)に示されるように、カルマンフィルタの処理によって、実際の走行軌跡Aと修正後の測定位置との誤差は小さくなり、また時間的に隣り合う測定位置が連続性を有するように位置修正されるため、修正後の各測定位置を時系列で結んだ軌跡は滑らかな軌跡を描くようになる。
【0008】
ここで、例えば乗用車がトンネルに進入するとGPS衛星からのGPS信号がトンネルで遮蔽されるため、GPSレシーバはGPS測位を行うことができない。このようなGPSレシーバの非測位状態が長く継続すると、例えば前回測定位置からの移動距離や方位の変化が大きくなるため、カルマンフィルタの推定値の精度が低下してGPS測位結果の誤差が大きくなる。このためGPSレシーバは、非測位状態が一定時間以上継続した場合にはカルマンフィルタの推定値をリセットするように構成されている。
【0009】
また、乗用車がトンネルから抜けるとGPSレシーバはGPS信号を遮蔽する要素がなくなるためGPS測位を再開するが、このときGPS測位による測定位置が大きく位置飛びすることがある。
【0010】
例えば長時間の非測位状態から測位可能状態に復帰した時に最初に行うGPS測位(以下、「初回測位」と記す。)では、非測位時にキャリア周波数やPRNコードの位相が変動しているため、非測位状態になる前のGPS測位で用いた値(GPS衛星を捕捉する際に用いた各種設定値)を利用した場合、GPS衛星を再捕捉することが難しい。このためGPSレシーバは、GPS衛星を再捕捉する際のキャリア周波数やPRNコードの位相のサーチレンジを広めに設定する。このためGPSレシーバはGPS衛星の捕捉に時間がかかり、初回測位で十分な数のGPS衛星を捕捉できず、精度の良いGPS測位結果を演算できないことがある。このとき測定位置が大きく位置飛びしたものになる。
【0011】
さらに、非測位状態が一定時間以上継続してカルマンフィルタの推定値がリセットされている場合、カルマンフィルタは、精度の低い初回測位結果によって初期値が設定され、それ以降の推定値を精度の低い初回測位結果に基づいて推定することになる。このため乗用車がトンネルから抜けた直後はカルマンフィルタの推定値の精度が著しく低下する。カルマンフィルタは過去の推定値を用いて新たな推定値を演算するように設計されているため、一旦推定値に大きな誤差が含まれるとその誤差が除去されるまでに時間がかかる欠点がある。
【0012】
図2は、カルマンフィルタの推定値の精度が低下した場合の問題を説明するための図である。図2の線Aは図1(a)等と同一の走行軌跡を、線Bはトンネルと該トンネルの外との境界を、プロットCは初回測位で得られる測定位置を、●印の各プロットはカルマンフィルタで処理されていない場合の二回目以降の各測定位置(初回測位の次回(二回目)以降のGPS測位で得られる測定位置)を、×印の各プロットはカルマンフィルタで処理された場合の二回目以降の測定位置を示す。図2に示されるように、大きく位置飛びした測定位置Cによりカルマンフィルタの推定値の精度が一旦劣化すると、カルマンフィルタで処理された測定位置が良好な値(直線Aの近傍)に収束するまでに時間がかかることが分かる。
【0013】
初回測位を速やかに行なうための技術については、特許文献1〜3に幾つかの方法が示されている。特許文献1に記載のGPSレシーバは、キャリアとGPSレシーバ内部で発生させた信号との同期レベルを監視し、トンネル等の遮蔽物によりGPS信号が遮蔽されているかを判定する。そして、GPS信号が遮蔽されていると判定した場合にはその代替として別のGPS衛星をサーチすることを禁止する。また特許文献2に記載のGPSレシーバは、GPS信号の遮断を検知したときに、過去に捕捉したGPS衛星を優先的にサーチする。このため特許文献1や2に記載のGPSレシーバでは、例えばトンネルを通過した際にサーチレンジを広げて新たなGPS衛星をサーチするといった必要がなくなるため、速やかな初回測位が達成される。
【0014】
また特許文献3に記載のGPSレシーバは、キャリア周波数に基づいてGPSレシーバ内部の基準周波数発振器の周波数ズレ量を算出する。そして、算出された周波数ズレ量に基づいてキャリア周波数やPRNコードの位相のサーチレンジを設定して次のサーチ動作を行う。特許文献3に記載のGPSレシーバは、適切なサーチレンジを予め設定することで速やかな初回測位を達成する。
【特許文献1】特開平8−201503号公報
【特許文献2】特開平8−211142号公報
【特許文献3】特開平10−268025号公報
【発明の開示】
【発明が解決しようとする課題】
【0015】
しかし、特許文献1〜3の何れにも上述した問題、つまり初回測位による測定位置が位置飛びするようなときにカルマンフィルタの推定値の精度が著しく低下する問題については提起されておらず、これまで当該問題を解決する手段についての検討は行なわれていなかった。
【0016】
本発明はこのような事情に鑑みてなされたものであり、その目的とするところは、初回測位の精度が低い場合であってもその後の測定位置の精度低下を有効に避けることができるGPSレシーバを提供することにある。
【課題を解決するための手段】
【0017】
上記の課題を解決する本発明の一形態に係るGPSレシーバは、GPS信号を用いてGPS測位を行い、該GPS測位により求められた測定位置に基づいて推定位置を計算して外部に出力するように構成されたものであり、GPS測位の結果に基づいてGPSレシーバが現在位置し得る第一の範囲を推定する現在位置推定手段と、第一の範囲に基づいて、過去のある時点でGPSレシーバが位置し得た第二の範囲を推定する過去位置推定手段と、過去のある時点のGPS測位で計算された過去測定位置が第二の範囲に含まれるか否かを判定する過去測定位置判定手段とを備え、過去測定位置が第二の範囲に含まれない場合には、推定位置の計算に該過去測定位置を使用しないことを特徴としたものである。
【0018】
このように構成されたGPSレシーバによれば、初回測位の精度が低く位置飛びするようなときにカルマンフィルタが該初回測位結果の影響を受けてその推定値の精度が低下することを有効に避けることができる。これにより、初回測位の次以降のGPS測位による測定位置は該初回測位の影響を受けず、該影響により精度が低下することがない。
【0019】
上記GPSレシーバは、過去測定位置が第二の範囲に含まれない場合に、現在のGPS測位におけるDOP(Dilution of Precision)と、過去のある時点のGPS測位におけるDOPとを比較するDOP比較手段をさらに備えた構成としてもよい。このように構成されたGPSレシーバは、現在のGPS測位におけるDOPの方が良好である場合には、推定位置の計算に該過去測定位置を使用しない。
【0020】
また上記GPSレシーバは、過去測定位置が第二の範囲に含まれない場合に、現在のGPS測位におけるDOPが規定値以下であるか否かを判定するDOP判定手段をさらに備えた構成としてもよい。このように構成されたGPSレシーバは、現在のGPS測位におけるDOPが規定値以下である場合には、推定位置の計算に該過去測定位置を使用しない。
【0021】
上記現在位置推定手段は、GPS測位時に利用したGPS衛星の幾何学的配置および該GPS測位結果から求められる疑似距離誤差に基づいて第一の範囲を推定する構成としてもよい。
【0022】
また上記過去位置推定手段は、現在のGPS測位による測位結果に含まれる測定方位および測定速度に基づいて第一の範囲をシフトさせたものを第二の範囲とする構成としてもよい。
【0023】
ここで、上述した過去のある時点とは、例えば一定時間以上継続してGPS測位ができない状態から、GPS測位ができる状態に復帰した時点である。
【0024】
また上記GPSレシーバにおいて、推定位置の計算はカルマンフィルタを使用した推定計算であってもよい。このように構成されたGPSレシーバは、過去測定位置が第二の範囲に含まれない場合には、カルマンフィルタを使用した推定計算に該過去測定位置が用いられないよう、該カルマンフィルタをリセットする。
【発明の効果】
【0025】
本発明のGPSレシーバによれば、初回測位の精度が低く測定位置が位置飛びした場合であってもその後のカルマンフィルタの推定値の精度低下を有効に避けることができる。
【発明を実施するための最良の形態】
【0026】
以下、図面を参照して、本発明の実施の形態のカーナビゲーション装置の構成および動作について説明する。
【0027】
図3は、ナビゲーション装置200の構成を示すブロック図である。図3に示されるように、ナビゲーション装置200は、GPSレシーバ100、ジャイロセンサ102、車速センサ104、A/D変換部102a、104a、CPU(Central Processing Unit)108、ROM(Read Only Memory)110、RAM(Random Access Memory)112、HDD(Hard Disk Drive)114、表示部116、および入力部118を備えている。CPU108は、ナビゲーション装置200全体の制御を統括し、ナビゲーション装置200の各構成要素との連携動作により各種機能を実現する。
【0028】
GPSレシーバ100は、複数のGPS衛星からGPS測位に必要な数以上のGPS信号を捕捉、追尾してGPS測位を行い、得られたGPS測位結果をCPU108に出力する。GPSレシーバ100によるGPS測位は例えば毎秒一回行われる。
【0029】
ジャイロセンサ102および車速センサ104は周知のDRセンサである。ジャイロセンサ102は、カーナビゲーション装置200を搭載した車両の水平面における方位に関する角速度を計測し、その計測結果をA/D変換部102aに出力する。また、車速センサ104は、当該車両の左右の駆動輪の回転速度を検出し、その検出結果に応じたパルス数をA/D変換部104aに出力する。A/D変換部102a、104aに入力された信号はデジタル信号に変換された後、CPU108に入力される。
【0030】
ROM110は、ナビゲーション処理を実行するための各種プログラムを格納している。これらのプログラムは、ナビゲーション装置200起動時にRAM112のワークエリアにロードされる。CPU108は、当該ワークエリア上のプログラムを実行するとともに、HDD114に格納されている地図データを適宜読み出して表示部116に地図を表示させる。
【0031】
具体的には、CPU108は、各DRセンサの出力に基づいてDR測位演算を行い、DR測位結果を取得する。次いで、取得したDR測位結果と、GPSレシーバ100のGPS測位結果とを、夫々の測位結果に対する誤差の推定値を加味した上で比較する。そして、その比較結果に基づいて高精度と判定される測位結果を選択し、選択された測位結果を最終的な測位結果(以下、「最終測位結果」と記す。)として決定する。なおGPS測位結果の出力が無い場合には、上記の比較処理を行うことなくDR測位結果を最終測位結果とする。
【0032】
そして、CPU108は、決定した測位結果に基づいてHDD114に格納されている地図データベースを検索し、対応する地図画像を抽出する。最後にマップマッチングを行い、抽出した地図画像に自車位置マークを重畳して表示部116に表示させる。このときユーザが入力部118を操作して目的地を設定していれば、CPU108はその目的地に向けたナビゲーション処理も行う。
【0033】
次に、GPSレシーバ100について詳細に説明する。図4は、GPSレシーバ100の構成を示すブロック図である。図4に示されるように、GPSレシーバ100は、ダウンコンバータ部1、受信信号処理部2、および測位演算制御部3を備えている。ダウンコンバータ部1は、GPS信号を受信して中間周波数に変換した後、受信信号処理部2に出力する。受信信号処理部2と測位演算制御部3は連携動作して、ダウンコンバータ部1から出力される信号を用いてGPS信号の捕捉、追尾、および測位の各処理を実行する。測位演算制御部3は、受信信号処理部2との連携動作で得られたGPS測位結果をCPU108に出力する。
【0034】
ダウンコンバータ部1は、GPSアンテナ10、RF(radio frequency)入力部11、BPF(Band Pass Filter)12および14、LNA(Low Noise Amplifier)13、ダウンコンバータ15、AGC(Auto Gain Control)16、TCXO(Temperature Compensated Crystal Oscillator)17、周波数シンセサイザー18、およびA/D変換部19を有している。
【0035】
GPS衛星から発信されたGPS信号は、GPSアンテナ10により受信され、RF入力部11を介してBPF12に入力する。次いで、この入力信号(以下、「RF信号」と記す。)は、BPF12により所定帯域にフィルタリングされ、低雑音増幅器であるLNA13、BPF14を経てGPS帯域外のノイズが減衰された後、ダウンコンバータ15に入力する。
【0036】
TCXO17は所定の周波数を発振する局部発振器であり、その発振周波数はダウンコンバータ15に入力されるRF信号の周波数よりも低い。また、周波数シンセサイザー18は、TCXO17からの入力に基づいて局部発振器信号を生成し、ダウンコンバータ15に出力する。ダウンコンバータ15は入力された局部発振器信号を用いて、AGC16の制御下で、RF信号を信号処理に有利な中間周波数、すなわちIF(Intermediate Frequency)信号に変換してA/D変換部19に出力する。
【0037】
A/D変換部19は、IF信号をサンプリングして直交復調し、I(In-phase)信号とQ(Quadra-phase)信号に変換する。なお、I信号は直交復調の際の同相成分であり、Q信号はI信号と直交関係にある成分である。以下、説明の便宜上、I信号とQ信号とをまとめて「IQ信号」という。A/D変換部19は、変換処理で得られたIQ信号を受信信号処理部2に出力する。
【0038】
受信信号処理部2は、チャンネル21およびNCO(Number Controlled Oscillator)22を有している。受信信号処理部2は、CDMA方式により複数のGPS衛星からのGPS信号を同時に捕捉、追尾できるようにチャンネル21を複数備えた構成となっている。
【0039】
また測位演算制御部3は、CPU31、RTC(Real-Time Clock)32、ROM33、RAM34、およびインターフェース35を有している。CPU31は、周波数シンセサイザー18から出力されるクロックに基づいて動作し、受信信号処理部2および測位演算制御部3の制御を統括的に行う。RTC32は、水晶発振器(不図示)によって動作する時計IC(Integrated Circuit)であり、計時手段として機能する。ROM33は、測位演算を行うためのプログラム(例えば上述したカルマンフィルタ等)やデータを格納している。当該プログラムは、ナビゲーション装置200起動時にRAM34のワークエリアにロードされる。CPU31は、RAM34のワークエリアにロードされたプログラムにしたがって動作し、NCO22を制御するとともに各チャンネル21からの信号に基づいて測位演算を行う。そして、演算によって得られたGPS測位結果をインターフェース35を介してCPU108に出力する。
【0040】
詳細には、CPU31は、前回までの測位で取得した航法メッセージ、前回のGPS測位結果、RTC32で計時される現在時刻に基づいて、各チャンネル21に入力されるIQ信号のドップラーシフト量、および、GPS信号を捕捉するために必要なPRNコードの位相のサーチレンジを推定し、推定結果に基づいてドップラーシフト量およびサーチレンジの設定値を生成してNCO22に出力する。CPU31は、各チャンネル21でそれぞれ異なるGPS衛星のGPS信号が捕捉、追尾されるように、各チャンネル21でサーチするPRNコードをチャンネル21毎にNCO22を通じて指定する。
【0041】
NCO22は、周波数シンセサイザー18から出力されるクロックを基準に動作し、CPU31からの設定値に基づいてPRNコードのリファレンスコードを生成するとともに、各チャンネル21と必要なデータ交換を行って各チャンネル21を制御する。
【0042】
各チャンネル21は、NCO22の制御下で、A/D変換部19からのIQ信号に対して、CPU31が設定したドップラーシフト量に基づいてドップラーシフトの補償を行う。また、同じくCPU31が設定したサーチレンジ内において、PRNコードのリファレンスコードとIQ信号とを乗積および積算することにより、GPS信号に含まれるPRNコードと、リファレンスコード(すなわちGPSレシーバ100側で生成したPRNコード)との相関値を求める。そして、各チャンネル21は、求めた相関値が所定の閾値を超えた場合、当該IQ信号すなわちGPS信号を捕捉する。このときの積算処理の時間が長く設定されるほどGPS信号に含まれるノイズの影響を除去することができ、捕捉感度が上昇する。この積算処理時間もCPU31によって設定される。
【0043】
CPU31は、各チャンネル21で求められた相関値に基づいて、各チャンネル21で捕捉されたIQ信号とリファレンスコードとの位相差を検出するとともに、リファレンスコードの位相をIQ信号の位相に同期させて該IQ信号を復調し、航法データを得る。またCPU31は、各チャンネル21に対応したフィードバック制御であって、各チャンネル21の出力値が最大となるようにNCO22をフィードバック制御することにより、各チャンネル21で捕捉されたGPS信号の追尾を行う。なおCPU31は、GPS信号の捕捉、追尾に失敗した場合、サーチレンジの再設定等を行った上でGPS信号の捕捉、追尾を再試行する。チャンネル21で捕捉、追尾されているGPS信号の総数がGPS測位に必要な数以上である場合、CPU31は、航法データを始めとする測位に必要なデータを各チャンネル21から受け取って、測位および速度測定を行い、各測定結果をカルマンフィルタにかけてGPS測位結果を取得してCPU108に出力する。GPSレシーバ100は、上述のように、毎秒一回測位演算を行い、得られたGPS測位結果をCPU108に出力する。
【0044】
このような処理(以下「GPS測位演算処理」と記す。)を経て得られたGPS測位結果がGPSレシーバ100からCPU108に出力されると、CPU108は該GPS測位結果、上記DR測位結果等を用いて最終測位結果を決定する。
【0045】
以上がGPSレシーバ100が実行するGPS測位の基本的な動作であるが、GPSレシーバ100は、上述した問題、すなわち初回測位による測定位置が位置飛びした場合にその後の測定位置の精度が劣化する問題を解消するため、図5〜図7のフローチャートに示されるGPS測定位置向上処理を実行する。以下、図5〜図7のフローチャートを参照しながら、本発明の実施形態によるGPS測定位置向上処理について説明する。なお、図5〜7のフローチャート及び以下の説明において、ステップを「S」と略記する。
【0046】
GPSレシーバ100のCPU31は、図5に示されるように、上述したGPS測位(ここでは測定結果をカルマンフィルタにかける前までの処理)を行う度に(S1)、非測位状態が一定時間以上継続しているか否かを判定する(S2)。例えばGPS測位が連続して失敗して非測位状態が一定時間以上継続した場合(S2:YES)、過去に測定された位置から現在位置までの乗用車の移動距離や方位の変化が大きいため、カルマンフィルタの推定値の精度が低下する。このためCPU31は、次回のGPS測位演算処理を実行する前に後述するS33のポストフィルタリセット処理においてカルマンフィルタの推定値をリセットするために、ポストフィルタリセットフラグをオンにする(S3)。さらに、カルマンフィルタの推定値をリセットするか否かを判断する処理ルーチンを実行するためにポストフィルタリセット判断実施フラグをオンにして(S4)、GPS測定位置向上処理を図6のS11に進める。またCPU31は、非測位状態の継続時間が一定時間未満である場合には(S2:NO)、S3およびS4のフラグ設定処理を実行することなく図6のS11に処理を進める。なお電源投入直後の初期設定では、ポストフィルタリセットフラグがオンで、ポストフィルタリセット判断実施フラグがオフである。これらのフラグは電源投入直後のリセット処理により初期値に設定される。
【0047】
図6のS11の処理においてCPU31は、ポストフィルタリセット判断実施フラグがオンになっていれば(S11:YES)、図6のS12以降の処理を実行する。またポストフィルタリセット判断実施フラグがオフになっていれば(S11:NO)、図6のS12以降の処理を実行することなく図7のS31に処理を進める。
【0048】
S12の処理においてCPU31は、一定時間以上の非測位状態から測位可能状態に復帰した後(以下、「測位可能状態復帰後」と記す。)にGPS測位により位置(以下、「測定位置POS_cur」と記す。)が求められているか否かを判定する。(なお、S12の処理では、後述の「測定位置POS_pre」が求められているか否かは判定しない)。そして測定位置POS_curが求められている場合(S12:YES)、測位可能状態復帰後で、かつ該測定位置POS_curが求められる以前に、GPS測位により位置が求められているか否かを判定する(S13)。
【0049】
測定位置POS_curが求められる以前にGPS測位により位置が求められていなければ(S13:NO)、該測定位置POS_curは初回測位により得られた測定位置である。この場合CPU31は、該測定位置POS_curを初回測位により得られた測定位置POS_preとして図示しないキャッシュメモリに保存する(S14)。なおキャッシュメモリに保持可能な測定位置は、キャッシュメモリの容量の関係上、直近の測定位置に限られる。
【0050】
CPU31は次いで、制限時間t_jdgのカウンタを初期値に設定して(S15)、図7のS31に処理を進める。なお制限時間t_jdgは、GPS測定位置向上処理の特徴的な処理(図6のS21等の処理)の実行の可否を判断するための制限時間である。
【0051】
またCPU31は、測位可能状態復帰後にGPS測位により位置が一度も求められていない(つまり測定位置POS_cur、POS_preのいずれも求められていない)場合(S12:NO、S16:NO)、非測位状態が未だ継続していることから、図6の処理を実行することなく図7のS31に処理を進める。また測位可能状態復帰後にGPS測位により測定位置POS_preだけが求められている場合には(S12:NO、S16:YES)、制限時間t_jdgをカウントアップする(S17)。そしてカウントアップされた制限時間t_jdgが規定時間を超過していないか判定する(S18)。
【0052】
CPU31は、制限時間t_jdgが規定時間を超過している場合(S18:YES)、所定のタイムアウト処理を実行(すなわち図6のS21等の処理を実行しないようにポストフィルタリセット判断実施フラグをオフ)し(S19)、さらに、キャッシュメモリに保持されている測定位置POS_preを破棄して(S20)、図7のS31に処理を進める。また制限時間t_jdgが規定時間を超過していない場合には(S18:NO)、S19およびS20の処理を実行することなく図7のS31に処理を進める。
【0053】
CPU31は、測位可能状態復帰後にGPS測位により位置が二度求められている(つまり測定位置POS_preに加えてその次の測定位置POS_curも求められている)場合(S12:YES、S13:YES)、測定位置POS_curに対応する誤差楕円ELL_curを算出する(S21)。
【0054】
誤差楕円はGPS測位時にGPSレシーバ100が存在し得る二次元平面上の範囲(つまり測定位置誤差)を楕円で表現したものであり、該GPS測位時に利用したGPS衛星の幾何学的配置から求められる誤差の共分散行列および疑似距離誤差(GPSレシーバで測距したGPS衛星からの距離に含まれる誤差)に基づいて計算される。例えばGPS衛星の幾何学的配置が一方向に偏る場合、該一方向に直交する方向に軸(長軸)が長い誤差楕円が求められる。またGPS衛星の幾何学的配置が均一である場合、短軸と長軸が同等の長さの誤差楕円が求められる。前者の場合、長軸方向の測定位置誤差が他の方向の測定位置誤差に比べて大きくなり、後者の場合、何れの方向の測定位置誤差も同じような値となる。また誤差楕円全体の大きさは疑似距離誤差に比例して大きくなる。なお誤差楕円はGPS測位時にGPSレシーバ100が存在し得る三次元空間内の範囲を楕円で表現したものとしてもよい。
【0055】
CPU31は続いて、測定位置POS_curと同じGPS測位結果に含まれる測定方位DIR_cur、測定速度SPE_cur、および誤差楕円ELL_curに基づいて測定位置POS_preに対応する推定誤差楕円ELL_preを算出する(S22)。詳細には、CPU31は、誤差楕円ELL_curを測定方位DIR_curと逆方向に測定速度SPE_curの大きさに応じた距離だけシフトさせたものを推定誤差楕円ELL_preとする。このときシフトされる距離は、例えば測定位置POS_curと測定位置POS_preが求められた時間差を測定速度SPE_curで乗算した値としてもよい。
【0056】
GPS31は、測定位置POS_preが推定誤差楕円ELL_pre内に入るか否かを判定する(S23)。そして測定位置POS_preが推定誤差楕円ELL_pre内に入る場合(S23:YES)、CPU31は、測定位置POS_preが比較的安定した測定条件で求められた値であり、初回測位の精度が良好であると判断する。このためカルマンフィルタによる推定を継続(すなわち、S20の処理のように測定位置POS_preを破棄することなく該測定位置POS_preもカルマンフィルタの推定に利用)した方が精度の高いGPS測位結果が得られると判断し、ポストフィルタリセットフラグをオフに(S24)、ポストフィルタリセット判断実施フラグをオフにして(S25)図7のS31に処理を進める。
【0057】
また測定位置POS_preが推定誤差楕円ELL_pre内に入らない場合(S23:NO)、CPU31は、測定位置POS_preと測定位置POS_curとの間でばらつき等が大きく、大きな位置飛びが発生していると判断する。そして測定位置POS_curに対応するHDOP(Horizontal Dilution of Precision)_curが測定位置POS_preに対応するHDOP_preより良好で、かつHDOP_curが既定値以下であるか否かを判定する(S26)。
【0058】
なおS23の判定処理は、タイムアウトにならない限り(すなわち制限時間t_jdg以内であれば)測定位置POS_preが推定誤差楕円ELL_pre内に入るまで何度も試行される。
【0059】
CPU31は、HDOP_curがHDOP_preより良好で、かつHDOP_curが既定値以下である場合(S26:YES)、測定位置POS_curの精度が高く測定位置POS_preの精度が低い、つまり初回測位の精度が低くその次のGPS測位の精度が高いと判断する。この場合、カルマンフィルタリセット後に精度の低い測定位置POS_preがカルマンフィルタの初期値に設定されると、上述した問題、つまりカルマンフィルタの推定値の精度が著しく低下して該推定値が良好な値に収束するまでに時間がかかる問題が発生する。このためCPU31は、良好な測定位置POS_curをカルマンフィルタの初期値とするためポストフィルタリセットフラグをオンにして(S27)、S19およびS20の処理を実行し、図7のS31に処理を進める。
【0060】
図7のS31に処理においてCPU31は、非測位状態が継続していれば(S31:NO)、非測位時の推定値も含む過去の推定値を継承して新たに推定された推定値を用いてGPS測位結果を修正し、CPU108に出力する(S35)。またGPS測位が行われていれば(S31:YES)、ポストフィルタリセットフラグがオンであるか否かを判定する(S32)。
【0061】
CPU31は、ポストフィルタリセットフラグがオンであれば(S32:YES)、カルマンフィルタの推定値を一旦リセットしてポストフィルタリセットフラグをオフする(S33、S34)。そして例えば、キャッシュメモリに残されている測定位置に基づいてカルマンフィルタの初期値を設定し、該設定値に基づいて推定された推定値を用いてGPS測位結果を修正し、CPU108に出力する(S35)。
【0062】
またCPU31は、ポストフィルタリセットフラグがオフであれば(S32:NO)、カルマンフィルタの推定値をリセットすることなく、過去の推定値を継承して新たに推定された推定値を用いてGPS測位結果を修正し、CPU108に出力する(S35)。
【0063】
ここで、図8(a)、(b)、および図9に示される例を用いてGPS測定位置向上処理を説明する。図9の●印の各プロットはカルマンフィルタで処理されていない場合の二回目以降の測定位置を、△印の各プロットはカルマンフィルタで処理された場合の二回目以降の測定位置を示す。
【0064】
図8(a)に示されるように測定位置POS_preが推定誤差楕円ELL_pre内に入る場合、上述したように初回測位結果が比較的安定した測定条件で求められており、測定位置POS_preを用いてカルマンフィルタの推定値を求めたとしても該推定値の精度は低下しない、あるいは低下しても問題にならない程度であると考えられる。このためCPU31は、カルマンフィルタをリセットすることなく、キャッシュメモリに残されている測定位置POS_preおよびPOS_curを用いて新たな推定値を設定してGPS測位結果の修正を行う。つまりこの場合カルマンフィルタでは、測位可能状態復帰後に推定値が一旦リセットされた後、測定位置POS_pre以降の測定位置を用いて新たに推定値が計算される。
【0065】
また図8(b)に示されるように測定位置POS_preが推定誤差楕円ELL_pre内に入らない場合、測定位置POS_preの精度が低く、図2に示された問題、つまりカルマンフィルタの推定値の精度が著しく低下して該推定値が良好な値に収束するまでに時間がかかる問題が発生する可能性がある。この場合CPU31は、S33の処理でカルマンフィルタの推定値を一旦リセットした後、低精度が懸念される測定位置POS_preを用いることなくその次の測定位置POS_curを初期値として新たな推定値を設定し、GPS測位結果の修正を行う。つまりこの場合、精度の低い測定位置POS_preがカルマンフィルタの初期値に設定されることがなくなる。
【0066】
この結果、カルマンフィルタで処理された二回目以降の測定位置は、図2の×印のプロットで示された例のように初回測位結果の影響を受けて精度が低下することなく、二回目以降のGPS測位による位置(すなわち比較的安定した測定条件で測定されたカルマンフィルタ処理前の位置であり、図9の●印のプロットで示される位置)に近い位置(図9の△印のプロット)であって、各測定位置を時系列で結んだときに滑らかな軌跡を描くような位置に修正される。
【0067】
このように本実施形態のGPSレシーバ100によれば、初回測位の精度が低く測定位置が位置飛びした場合であってもその後のカルマンフィルタの推定値の精度低下を有効に避けることができる。
【0068】
本発明は上記実施形態に限定されるものではなく、本発明の技術的思想の範囲において様々な変形が可能である。例えば本発明は本実施形態のカーナビゲーション装置に限らず、地図データベースを保持しない簡易ナビゲーション装置であるPND(Personal Navigation Device)や、携帯電話等のモバイル端末等にも適用することができる。
【0069】
また図6のS26の処理において、
(1)HDOP_curがHDOP_preより良好であるか
(2)HDOP_curが既定値以下であるか
の2つを判定条件としているが、S26の判定条件は条件(1)または(2)の何れか一方であってもよい。
【図面の簡単な説明】
【0070】
【図1】カルマンフィルタの効果を説明するための図である。
【図2】カルマンフィルタの推定値の精度が低下した場合の問題を説明するための図である。
【図3】本発明の実施の形態のカーナビゲーション装置の構成を示すブロック図である。
【図4】本発明の実施の形態のGPSレシーバの構成を示すブロック図である。
【図5】本発明の実施の形態で実行されるGPS測定位置向上処理を示すフローチャートである。
【図6】本発明の実施の形態で実行されるGPS測定位置向上処理を示すフローチャートである。
【図7】本発明の実施の形態で実行されるGPS測定位置向上処理を示すフローチャートである。
【図8】本発明の実施の形態で実行されるGPS測定位置向上処理を説明するための図である。
【図9】本発明の実施の形態で実行されるGPS測定位置向上処理を説明するための図である。
【符号の説明】
【0071】
1 ダウンコンバータ部
2 受信信号処理部
3 測位演算制御部
100 GPSレシーバ
102 ジャイロセンサ
104 車速センサ
108 CPU
200 ナビゲーション装置

【特許請求の範囲】
【請求項1】
GPS(Global Positioning System)信号を用いてGPS測位を行い、該GPS測位により求められた測定位置に基づいて推定位置を計算して外部に出力するGPSレシーバにおいて、
前記GPS測位の結果に基づいて前記GPSレシーバが現在位置し得る第一の範囲を推定する現在位置推定手段と、
前記第一の範囲に基づいて、過去のある時点で前記GPSレシーバが位置し得た第二の範囲を推定する過去位置推定手段と、
前記過去のある時点の前記GPS測位で計算された過去測定位置が前記第二の範囲に含まれるか否かを判定する過去測定位置判定手段と
を備え、前記過去測定位置が前記第二の範囲に含まれない場合には、前記推定位置の計算に該過去測定位置を使用しないことを特徴とするGPSレシーバ。
【請求項2】
前記過去測定位置が前記第二の範囲に含まれない場合に、現在の前記GPS測位におけるDOP(Dilution of Precision)と、前記過去のある時点の前記GPS測位におけるDOPとを比較するDOP比較手段をさらに備え、
現在の前記GPS測位におけるDOPの方が良好である場合には、前記推定位置の計算に該過去測定位置を使用しないことを特徴とする請求項2に記載のGPSレシーバ。
【請求項3】
前記過去測定位置が前記第二の範囲に含まれない場合に、現在の前記GPS測位におけるDOPが規定値以下であるか否かを判定するDOP判定手段をさらに備え、
現在の前記GPS測位におけるDOPが規定値以下である場合には、前記推定位置の計算に該過去測定位置を使用しないことを特徴とする請求項1または請求項2の何れかに記載のGPSレシーバ。
【請求項4】
前記現在位置推定手段は、GPS測位時に利用したGPS衛星の幾何学的配置および該GPS測位結果から求められる疑似距離誤差に基づいて前記第一の範囲を推定することを特徴とする請求項1から請求項3の何れかに記載のGPSレシーバ。
【請求項5】
前記過去位置推定手段は、現在の前記GPS測位による測位結果に含まれる測定方位および測定速度に基づいて前記第一の範囲をシフトさせたものを前記第二の範囲とすることを特徴とする請求項1から請求項4の何れかに記載のGPSレシーバ。
【請求項6】
前記過去のある時点とは、一定時間以上継続してGPS測位ができない状態から、GPS測位ができる状態に復帰した時点であることを特徴とする請求項1から請求項5の何れかに記載のGPSレシーバ。
【請求項7】
前記推定位置の計算はカルマンフィルタを使用した推定計算であり、前記過去測定位置が前記第二の範囲に含まれない場合には、前記カルマンフィルタを使用した推定計算に該過去測定位置が用いられないよう、該カルマンフィルタをリセットすることを特徴とする請求項1から請求項6の何れかに記載のGPSレシーバ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2009−236517(P2009−236517A)
【公開日】平成21年10月15日(2009.10.15)
【国際特許分類】
【出願番号】特願2008−79703(P2008−79703)
【出願日】平成20年3月26日(2008.3.26)
【出願人】(000001487)クラリオン株式会社 (1,722)
【Fターム(参考)】