(57)【特許請求の範囲】
【請求項１】
車輪の回転に伴い移動する車両に搭載されるナビゲーションシステムに備えられ、車両の現在位置を算出する現在位置算出装置において、
少なくとも道路を記述した地図を表す地図データを記憶している地図データ記憶手段と、
車両の進行方向および走行距離を測定する測定手段と、
上記測定手段が測定した進行方向および走行距離に基づいて、車両の現在位置を算出する現在位置算出手段と、
上記地図データ記憶手段が記憶している地図データが表す地図のうちの、上記現在位置算出手段が算出した現在位置から所定の距離内の範囲に記述されている道路のうちから、上記測定手段が測定した進行方向との間の角度のズレが第１のしきい値以下である道路であって、かつ、上記現在位置算出手段が算出した現在位置との間の最短距離が第２のしきい値以下である道路を選択し、選択した道路のうちから、１つの道路を車両が走行している道路として推定する走行道路推定手段と、
上記走行道路推定手段が推定した道路上に位置するように、上記現在位置算出手段が算出した現在位置を修正する現在位置修正手段とを備え、
上記走行道路推定手段は、
前回に推定を行った時点から現時点までの期間に上記測定手段が測定した走行距離である期間走行距離が大きいほど、上記第１のしきい値を大きくする第１のしきい値変更手段と、
上記期間走行距離が大きいほど、上記第２のしきい値を大きくする第２のしきい値変更手段とを備えたことを特徴とする現在位置算出装置。
【請求項２】
請求項１に記載の現在位置算出装置において、
上記第１のしきい値変更手段は、複数の範囲に分割された走行距離の範囲ごとに、該範囲に対応する第１のしきい値を記述したテーブルを記憶しているテーブル記憶手段を有し、上記期間走行距離が属する範囲に対応付けて、上記テーブル記憶手段が記憶しているテーブルに記述されている第１のしきい値を、新たな第１のしきい値とし、
上記第２のしきい値変更手段は、複数の範囲に分割された走行距離の範囲ごとに、該範囲に対応する第２のしきい値を記述したテーブルを記憶しているテーブル記憶手段を有し、上記期間走行距離が属する範囲に対応付けて、上記テーブル記憶手段が記憶しているテーブルに記述されている第２のしきい値を、新たな第２のしきい値とすることを特徴とする現在位置算出装置。
【請求項３】
請求項１に記載の現在位置算出装置において、
上記第１のしきい値変更手段は、上記期間走行距離に所定の定数を乗じた結果を、新たな第１のしきい値とし、
上記第２のしきい値変更手段は、上記期間走行距離に所定の定数を乗じた結果を、新たな第２のしきい値とすることを特徴とする現在位置算出装置。
【請求項４】
車輪の回転に伴い移動する車両に搭載されるナビゲーションシステムに備えられ、車両の現在位置を算出する現在位置算出装置の現在位置算出方法において、
前記現在位置算出装置は、
少なくとも道路を記述した地図を表す地図データを記憶している地図データ記憶手段を有し、
車両の進行方向および走行距離を測定する測定ステップと、
上記測定ステップが測定した進行方向および走行距離に基づいて、車両の現在位置を算出する現在位置算出ステップと、
上記地図データ記憶手段が記憶している地図データが表す地図のうちの、上記現在位置算出ステップが算出した現在位置から所定の距離内の範囲に記述されている道路のうちから、上記測定ステップが測定した進行方向との間の角度のズレが第１のしきい値以下である道路であって、かつ、上記現在位置算出ステップが算出した現在位置との間の最短距離が第２のしきい値以下である道路を選択し、選択した道路のうちから、１つの道路を車両が走行している道路として推定する走行道路推定ステップと、
上記走行道路推定ステップが推定した道路上に位置するように、上記現在位置算出ステップが算出した現在位置を修正する現在位置修正ステップとを行い、
上記走行道路推定ステップは、
前回に推定を行った時点から現時点までの期間に上記測定ステップが測定した走行距離である期間走行距離が大きいほど、上記第１のしきい値及び上記第２のしきい値を大きく変更することを特徴とする現在位置算出方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、車輪の回転に伴い移動する車両に搭載されるナビゲーションシステムに備えられ、車両の現在位置を算出する現在位置算出装置に関するものであり、特に、車両が走行している道路を推定する技術に関するものである。
【０００２】
【従来の技術】
一般に、ナビゲーションシステムにおいては、図２に示すように、車両の現在位置を表すマーク２０を、ＣＤ−ＲＯＭ等の記憶媒体に地図データとして記憶されている、少なくとも道路を記述した地図に重畳してディスプレイに表示するようになっている。この際に、車両は道路を走行していることから、車両の現在位置を表すマーク２０が道路と重なるようにして表示されなければならない。
【０００３】
従来、ナビゲーションシステムにおいて、車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向、および、車速センサまたは距離センサにより測定した車両の走行距離に基づいて算出することが行われている。
【０００４】
なお、車両の走行距離は、一般的には、トランスミッションの出力軸やタイヤの回転数を計測し、その回転数に、タイヤ１回転当りに車両が進む距離である係数を乗ずることにより求めることができる。
【０００５】
しかしながら、算出した車両の現在位置と実際に車両が存在する位置との間には、誤差が生じることが多いので、算出した車両の現在位置をそのまま表示すると、車両の現在位置を表すマーク２０がディスプレイに表示された道路と重ならなくなってしまう。そこで、車両の現在位置を表すマーク２０を表示する前に、車両が走行している道路を推定して車両の現在位置を修正する必要がある。
【０００６】
このように、車両の現在位置を算出すると共に、車両が走行している道路を推定して算出した車両の現在位置を修正するための技術としては、例えば、特公平６−１３９７２号公報に記載されている技術があり、この種の技術は、一般に、マップマッチング処理と呼ばれている。
【０００７】
マップマッチング処理は、車両が所定の距離だけ進む毎にその処理を行うようになっており、以下、具体的な処理内容について簡単に説明する。
【０００８】
まず、車両の現在位置を算出した後、算出した現在位置から所定の距離Ｄ内の地図に記述されている道路のうちから、測定した車両の進行方向との間の角度のズレがしきい値Ｔ以下である道路であって、かつ、現在位置との間の最短距離（該現在位置から該道路に下した垂線の長さ）がしきい値Ｌ以下である道路を、車両が走行している道路の候補として選択する。
【０００９】
続いて、候補として選択した道路のうちから、最終的に、１つの道路を、車両が走行している道路であると推定する。
【００１０】
最後に、推定した道路に現在位置から下した垂線が交わる点を、修正後の現在位置とする。
【００１１】
【発明が解決しようとする課題】
上述したように、マップマッチング処理は、車両の現在位置を表すマークを道路に重なるようにして表示するために必要な処理であるが、処理負荷がかかる大きな原因ともなっている。
【００１２】
そこで、車両が高速で走行しているときには、前回のマップマッチング処理の実行中に、マップマッチング処理を行わなければならない距離だけ、車両が進んでしまう場合がある。また、マップマッチング処理を行わなければならない距離だけ、車両が進んだときに、車両の現在位置を表すマークをディスプレイに表示する処理などの他の処理が実行中である場合がある。
【００１３】
このような場合は、実行中のマップマッチング処理や実行中の他の処理が終了してから、直ちに、マップマッチング処理を行うこととなり、実際には、車両が所定の距離以上進んでから、マップマッチング処理を行うこととなるが、この結果、以下に示すような問題点が生じてしまう。
【００１４】
例えば、図３に示すように、マップマッチング処理を行ったａ地点から、車両が所定の距離（例えば、２０ｍ）だけ進んだｂ時点で、次回のマップマッチング処理を行わなければならないが、車両が高速で走行し、ａ地点で行ったマップマッチング処理または他の処理が終了しないうちに、車両がｂ地点を通過してしまい、実際には、車両が１００ｍだけ進んだｃ地点で、次回のマップマッチング処理を行った場合を考える。
【００１５】
ここで、ｃ地点で行ったマップマッチング処理において、測定した車両の進行方向との間の角度のズレθがしきい値Ｔ以下である１つの道路３０について注目すると、算出した現在位置３１と道路３０との間の最短距離は、ｌｃとなる。しかし、ｂ地点でマップマッチング処理を行っていたならば、このとき算出したであろう現在位置３２と道路３０との間の最短距離は、ｌｂとなる。
【００１６】
そこで、ｃ地点で行ったマップマッチング処理においては、ｌｂがしきい値Ｌ以下であっても、ｌｃがしきい値Ｌより大きくなってしまうと、ｂ地点でマップマッチング処理を行っていたならば、候補として選択されていたはずの道路３０が、ｃ地点で行ったマップマッチング処理においては、候補として選択されなくなくなってしまうという問題点が生じる。
【００１７】
そこで、本発明の目的は、上記問題点に鑑み、現在位置算出装置において、前回にマップマッチング処理を行ってから現時点までの期間に車両が走行した距離に応じて、車両が走行している道路の候補として道路の選択を行うために用いるしきい値を変更する技術を提供するものである。
【００１８】
【課題を解決するための手段】
上記目的達成のために、本発明は、車輪の回転に伴い移動する車両に搭載されるナビゲーションシステムに備えられ、車両の現在位置を算出する現在位置算出装置において、
（１）少なくとも道路を記述した地図を表す地図データを記憶している地図データ記憶手段、
（２）車両の進行方向および走行距離を測定する測定手段、
（３）上記測定手段が測定した進行方向および走行距離に基づいて、車両の現在位置を算出する現在位置算出手段、
（４）上記地図データ記憶手段が記憶している地図データが表す地図のうちの、上記現在位置算出手段が算出した現在位置から所定の距離内の範囲に記述されている道路のうちから、上記測定手段が測定した進行方向との間の角度のズレが第１のしきい値以下である道路であって、かつ、上記現在位置算出手段が算出した現在位置との間の最短距離が第２のしきい値以下である道路を選択し、選択した道路のうちから、１つの道路を車両が走行している道路として推定する走行道路推定手段、
（５）上記走行道路推定手段が推定した道路上に位置するように、上記現在位置算出手段が算出した現在位置を修正する現在位置修正手段、
を備えるようにしており、さらに、上記走行道路推定手段が、前回に推定を行った時点から現時点までの期間に上記測定手段が測定した走行距離である期間走行距離に応じて、上記第２のしきい値を変更する第２のしきい値変更手段を備えるようにしている。
【００１９】
なお、上記第２のしきい値変更手段は、上記期間走行距離が大きいほど、上記第２のしきい値を大きくすることが好ましい。
【００２０】
さらに、上述した構成に加えて、上記走行道路推定手段が、上記期間走行距離に応じて、上記第１のしきい値を変更する第１のしきい値変更手段をさらに備えるようにすることができる。
【００２１】
なお、上記第１のしきい値変更手段は、上記期間走行距離が大きいほど、上記第１のしきい値を大きくすることが好ましい。
【００２２】
【作用】
本発明の現在位置算出装置においては、車両が走行している道路を推定する際に、前回に推定を行った時点から現時点までの期間に車両が進んだ距離である期間走行距離に応じて、上記第２のしきい値を変更する。詳しくは、期間走行距離が大きいほど、上記第２のしきい値を大きくする。
【００２３】
従来は、車両の進行方向との間の角度のズレが同じでも、期間走行距離が大きい場合と小さい場合とでは、図３を用いて説明したように、車両が走行している道路を推定する際に、同じ道路が候補として選択されたり選択されなかったりするという問題点が生じていたが、本発明では、期間走行距離に応じて上記第２のしきい値を変更しているので、このような問題点を解消することができる。
【００２４】
【実施例】
以下、本発明の実施例について図面を参照して説明する。
【００２５】
図１は本実施例の現在位置算出装置を適用したナビゲーションシステムの構成を示すブロック図である。
【００２６】
図１に示すように、本実施例に係るナビゲーションシステムは、車両のヨーレイトを検出することにより車両の進行方向の変化を検出する角速度センサ１０１と、地磁気を検出することにより車両の進行方向を検出する方位センサ１０２と、車両のトランスミッションの出力軸の回転速度に比例した時間間隔でパルスを出力する車速センサ１０３とを備えている。
【００２７】
また、本実施例に係るナビゲーションシステムは、車両の現在位置およびその周辺の地図を表示するディスプレイ１０７と、ディスプレイ１０７に表示する地図の縮尺を切替える旨の指示をユーザから受付けるスイッチ１０４と、地図を表す地図データを記憶しているＣＤ−ＲＯＭ１０５と、ＣＤ−ＲＯＭ１０５から地図データを読み込むドライバ１０６とを備えている。
【００２８】
また、本実施例に係るナビゲーションシステムは、上述した各周辺機器の動作を制御するコントローラ１０８を備えている。
【００２９】
コントローラ１０８は、角速度センサ１０１の出力値（アナログ信号）をディジタル信号に変換するＡ／Ｄ変換器１０９と、方位センサ１０２の出力値（アナログ信号）をディジタル信号に変換するＡ／Ｄ変換器１１０と、車速センサ１０３の出力パルス数を０.１秒毎にカウントするカウンタ１１６と、スイッチ１０４の押下の有無を入力するパラレルＩ／Ｏ１１１と、ドライバ１０６がＣＤ−ＲＯＭ１０５から読み込んだ地図データを転送するＤＭＡ（Direct Memory Access）コントローラ１１２と、ディスプレイ１０７に車両の現在位置およびその周辺の地図を表示する表示プロセッサ１１３とを有している。
【００３０】
また、コントローラ１０８は、さらに、マイクロプロセッサ（ＭＰＵ）１１４と、メモリ１１５とを有している。
【００３１】
ＭＰＵ１１４は、Ａ／Ｄ変換器１０９を介して得た角速度センサ１０１の出力値、Ａ／Ｄ変換器１１０を介して得た方位センサ１０２の出力値、カウンタ１１６がカウントした車速センサ１０３の出力パルス数、パラレルＩ／Ｏ１１１を介して得たスイッチ１０４の押下の有無、ＤＭＡコントローラ１１２を介して得た地図データを入力し、これらに基づいて処理を行うことにより、車両の現在位置を算出する。また、ＭＰＵ１１４は、算出した車両の現在位置およびその周辺の地図を表示プロセッサ１１３を介してディスプレイ１０７に表示させる。
【００３２】
なお、車両の現在位置の表示は、図２に示すように、既にディスプレイ１０７に表示している地図にマーク（ここでは、矢印）２０を重畳して表示することにより行う。これにより、ユーザは、車両の現在位置を知ることができる。
【００３３】
また、メモリ１１５は、ＭＰＵ１１４が実行するプログラムおよび後述するテーブルを記憶しているＲＯＭと、ＭＰＵ１１４がワークエリアとして使用するＲＡＭとから構成されている。
【００３４】
以下、本実施例に係るナビゲーションシステムの動作について説明する。
【００３５】
まず、車両の走行距離を算出する走行距離算出処理について説明する。
【００３６】
図４は走行距離算出処理のフローチャートである。
【００３７】
本処理は、一定周期、例えば、１００ｍＳ毎に処理を開始するＭＰＵ１１４のプログラムルーチンである。
【００３８】
図４に示すように、本処理では、まず、車速センサ１０３からの出力パルス数を０.１秒毎に計数したカウンタ１１６の計数値を読み込み（ステップ４０１）、読み込んだ計数値に、走行距離係数Ｒを乗ずることにより、０.１秒当りに車両が進んだ走行距離Ｋを求める（ステップ４０２）。なお、走行距離係数Ｒは、タイヤ１回転当りに車両が進む距離を示すものである。
【００３９】
続いて、ステップ４０２で求めた走行距離Ｋを、走行距離Ｋの積算値ΣＫに加算し、積算値ΣＫが一定距離（例えば、２０ｍ）に達したか否かを判定し（ステップ４０３）、２０ｍに満たない場合は、今回の処理を終了する。また、積算値ΣＫが２０ｍに達した場合は、後述する現在位置算出処理を起動してから（ステップ４０４）、今回の処理を終了する。
【００４０】
次に、車両の現在位置を算出する現在位置算出処理について説明する。
【００４１】
図５は現在位置算出処理のフローチャートである。
【００４２】
本処理は、図４のステップ４０４で起動されるＭＰＵ１１４のプログラムルーチンである。従って、本処理は、基本的には、車両が進んだ距離が２０ｍに達する毎に処理を開始するが、車両が進んだ距離が２０ｍに達しても、前回以前に起動されて処理を開始した現在位置算出処理の実行中や後述する表示処理の実行中等には、処理の開始が可能となってから、もしくは、更に２０ｍ走行したときに処理を開始する。
【００４３】
なお、本処理は、マップマッチング処理に相当する処理である。
【００４４】
図５に示すように、本処理では、まず、積算値ΣＫを読み込んでから（ステップ５０１）、積算値ΣＫを初期化する（ステップ５０２）。これにより、積算値ΣＫは、現在位置算出処理が前回に処理を開始した時点から現時点までの期間の車両の走行距離Ｋを表すこととなる。
【００４５】
続いて、Ａ／Ｄ変換器１０９から角速度センサ１０１の出力値を読み込む（ステップ５０３）。この角速度センサ１０１の出力値は、方向の変化（角速度）を示す値であるので、車両の相対的な進行方向しか検出できない。そこで、続いて、Ａ／Ｄ変換器１１０から方位センサ１０２の出力値を読み込み（ステップ５０４）、読み込んだ方位センサ１０２の出力値が示す絶対的な方向、および、ステップ５０３で読み込んだ角速度センサ１０１の出力値が示す方向の変化を用いて、車両の進行方向Ｗを決定する（ステップ５０５）。
【００４６】
なお、進行方向Ｗの決定は、例えば、長い時間、車速が低いときには、角速度センサ１０１の誤差が大きいので、一定時間以上車速が低い場合には、方位センサ１０２の出力値が示す絶対的な方向のみを利用するという方法により行う。
【００４７】
続いて、ステップ５０１で読み込んだ積算値ΣＫおよびステップ５０５で決定した進行方向Ｗに基づいて、車両の移動量を、緯度方向および経度方向の各々について求め、さらに、これらの各方向についての移動量を、前回の車両の候補点を求める処理で得られた車両の候補点の位置に加算することにより、現在車両が存在すると推定される位置である現在位置Ａを求める（ステップ５０６）。この候補点の詳細については後述する。
【００４８】
なお、ナビゲーションシステムの始動直後など、前回の車両の候補点を求める処理で得られた候補点が存在しない場合には、別途設定された位置を、前回得られた候補点の位置として用いることにより、現在位置Ａを求めるようにする。
【００４９】
続いて、ステップ５０６で求めた現在位置Ａの周辺の地図を表す地図データを、ＣＤ−ＲＯＭ１０５からドライバ１０６およびＤＭＡコントローラ１１３を介して読み込む（ステップ５０７）。
【００５０】
続いて、現在位置Ａを求めるために用いた候補点が、読み込んだ地図データが表す地図に記述されている道路（線分）上の候補点である場合は、現在位置Ａから所定の距離Ｄ内の線分であってその線分またはこれにつながる線分を抽出し、また、道路（線分）上の候補点でない場合は、現在位置Ａから所定の距離Ｄ内の線分を抽出する（ステップ５０８）。
【００５１】
なお、この際に、後述する、現在位置Ａを求めるために用いた候補点に関する信頼度に基づいて、Ｄを可変としてもよい。すなわち、信頼度の高い候補点から求めた現在位置Ａに関しては、より狭い範囲に含まれる線分を選択し、逆に、信頼度の低い候補点から求めた現在位置Ａに関しては、より広い範囲に含まれる線分を選択する。信頼後に基づいてＤを可変とする理由は、信頼度が低い場合には、前回求めた現在位置の精度に対する信憑性が低いと考えられるので、より広い範囲を検索して道路を探す方が、正しい現在位置を求める上で適当であるからである。
【００５２】
なお、道路は、例えば、図６に示すように、２点間を結ぶ複数の線分６０〜６３で近似し、これらの線分を、その始点および終点の座標によって表したものを用いるようになっている。図６に示した例では、線分６２は、その始点（ｘ３，ｙ３）および終点（ｘ４，ｙ４）によって表される。
【００５３】
続いて、ステップ５０１で読み込んだ積算値ΣＫに基づいて、しきい値Ｌを求める（ステップ５０９）。すなわち、ＲＯＭに記憶されているテーブルを参照することにより、積算値ΣＫに対応付けて記述されているしきい値Ｌを求める。
【００５４】
テーブルは、図８に示すように、積算値ΣＫ（現在位置算出処理が前回に処理を開始した時点から現時点までの期間の車両の走行距離Ｋを表す。）を複数の範囲に分割したときの各範囲ごとに、該範囲に対応するしきい値Ｌを対応付けて記述しているテーブルである。ここで、しきい値Ｌは、積算値ΣＫが大きいほど、大きくなるような値が記述されている。
【００５５】
続いて、ステップ５０８で抽出した線分の中から、該線分とステップ５０５で決定した進行方向Ｗとの間の角度のズレθがしきい値Ｔ以下である全ての線分を１次選択し（ステップ５１０）、１次選択した全ての線分に対して、現在位置Ａから垂線を下し、該垂線の長さ（現在位置Ａと線分との間の最短距離）ｌを求める（ステップ５１１）。
【００５６】
続いて、求めた最短距離ｌがステップ５０９で求めたしきい値Ｌ以下である全ての線分を２次選択し（ステップ５１２）、２次選択した全ての線分について、エラーコストｅｃ＝α×θ＋β×ｌを求める（ステップ５１３）。
【００５７】
ここで、α，βは、重み付け係数であり、これらは、車両が走行している道路を推定する際に、進行方向と道路との間の角度のズレθ、および、現在位置Ａと道路との間の最短距離ｌのいずれを重視するかによって変化させることができる。例えば、現在位置Ａとの間が近い道路を重視する場合は、αよりもβを大きくするようにする。
【００５８】
また、ここで、候補点について説明する。
【００５９】
ナビゲーションシステムの始動直後など、初期的な状態においては、現在位置Ａは、ユーザがスイッチ１０４を用いて所定情報を入力することなどにより、一意的に定まり、かつ、これは、道路に対応する線分上に位置する。しかしながら、車両走行した後には、各種センサの誤差などにより、現在位置Ａが、道路（線分）上に存在しなくなる場合がある。その結果、例えば、道路が分岐している場合、すなわち、道路（線分）の節点から２つの線分が現れる場合に、いずれの線分に対応する道路上に車両が存在するかを明確にすることができない場合が多い。
【００６０】
従って、このような場合に、本実施例においては、考えられる２つの線分上に存在する所定の点（現在位置Ａから下した垂線が該線分と交わる点）を候補点として設定し、これらの現在位置Ａ，エラーコストｅｃ，後述する累積エラーコストｅｓなどを、各々、メモリ１１５のＲＡＭに保存するように構成されている。
【００６１】
さて、全ての線分についてエラーコストｅｃを求めると、これらの線分の各々について、求めたエラーコストｅｃ、および、前回の処理で得られた候補点に関連する累積エラーコストｅｓに基づいて、以下の式によって定義される、今回の処理における累積エラーコストｅｓを求める（ステップ５１４）。
【００６２】
ｅｓ＝（１−ｋ）×ｅｃ＋ｋ×ｅｃ
ここで、ｋは、「０」より大きく「１」より小さな重み係数である。この累積エラーコストｅｓは、前回以前の処理で求めたエラーコストｅｃを、今回の処理で求めたエラーコストｅｃにどのくらい反映させるかを表している。
【００６３】
さらに、全ての候補点の各々について、求めた累積エラーコストｅｓ（ｎ）に基づいて、以下の式によって定義される信頼度ｔｒｓｔを求める（ステップ５１５）。
【００６４】
ｔｒｓｔ＝１００／（１＋ｅｓ）
この式から明らかなように、累積エラーコストｅｓが大きくなるに従って、信頼度ｔｒｓｔは減少し、「０」に近づく。逆に、累積エラーコストｅｓが小さくなるに従って、信頼度ｔｒｓｔは増大し、その値は「１００」に近づく。
【００６５】
このような処理をすることにより、ある候補点に対する現在位置Ａから所定の範囲Ｄ内に存在する線分の各々についての信頼度ｔｒｓｔが求められる。
【００６６】
最後に、求めた信頼度ｔｒｓｔが最大の線分を、車両が走行している道路であると推定し（ステップ５１６）、推定した線分に現在位置Ａから下した垂線が交わる点を、修正した現在位置Ｂとしてから（ステップ５１７）、今回の処理を終了する。
【００６７】
次に、現在位置およびその周辺の地図を表示する表示処理について説明する。
【００６８】
図７は表示処理のフローチャートである。
【００６９】
本処理は、一定周期、例えば、１Ｓ毎に処理を開始するＭＰＵ１１４のプログラムルーチンである。
【００７０】
図７に示すように、本処理では、まず、スイッチ１０４が押下されて地図の縮尺の切替えが指示されているか否かを、パラレルＩ／Ｏ１１１が入力している内容を見て判断する（ステップ７０１）。スイッチ１０４が押下されている場合は、それに対応して、所定の縮尺フラグを設定する（ステップ７０２）。
【００７１】
続いて、図５のステップ５１７で修正された現在位置Ｂ、および、図５のステップ５０５で決定した進行方向Ｗを読み込み（ステップ７０３）、ステップ７０２で設定した縮尺フラグの内容に応じた縮尺の地図を、例えば、図２に示すように、表示プロセッサ１１３を介してディスプレイ１０７に表示する（ステップ７０４）。
【００７２】
続いて、ディスプレイ１０７に表示された地図に重畳して、車両の現在位置Ｂと車両の進行方向Ｗを、例えば、図２に示すように、矢印２０を用いて、表示プロセッサ１１３を介してディスプレイ１０７に表示する（ステップ７０５）。
【００７３】
最後に、これらに重畳して、北を示す北マーク２１および縮尺に対応した距離マーク２２を、例えば、図２に示すように、表示プロセッサ１１３を介してディスプレイ１０７に表示する（ステップ７０６）。
【００７４】
なお、本実施例においては、上述したように、矢印を用いて車両の現在位置および進行方向を示したが、車両の現在位置Ｂおよび進行方向Ｗの表示形態は、これらが明確に示されるものであれば、任意でよい。また、北マーク２１等も同様である。
【００７５】
以上説明したように、本実施例では、積算値ΣＫが大きいほど、車両が走行している道路の候補として道路の選択を行うために用いるしきい値Ｌを大きくしている。
【００７６】
従来は、車両の進行方向Ｗとの間の角度のズレθが同じでも、積算値ΣＫ、すなわち、現在位置算出処理が前回に処理を開始した時点から現時点までの期間の車両の走行距離Ｋが大きい場合と小さい場合とでは、図３を用いて説明したように、走行道路を推定するときに、同じ道路が２次選択で選択されたり選択されなかったりするという問題点が生じていたが、本実施例では、積算値ΣＫに応じてしきい値Ｌを変更しているので、このような問題点を解消することができる。
【００７７】
なお、本実施例では、図８に示したテーブルを参照することにより、積算値ΣＫに対応するしきい値Ｌを求めるようにしているが、積算値ΣＫに所定の定数ａを乗じることにより、しきい値Ｌを求めるようにしてもよい。
【００７８】
また、本実施例では、進行方向Ｗとの間の角度のズレθがしきい値Ｔ以下である線分を１次選択し、最短距離ｌがしきい値Ｌ以下である線分を２次選択しているが、逆でもよい。
【００７９】
ところで、一般に、方位センサ１０２には、検出間隔が大きいほど、その出力値の誤差が大きくなるという特性があるということが知られている。
【００８０】
このことは、積算値ΣＫ（現在位置算出処理が前回に処理を開始した時点から現時点までの期間の車両の走行距離Ｋ）が大きくなるほど、車両の進行方向Ｗの誤差が大きくなるということを意味している。
【００８１】
例えば、図９に示すように、現在位置算出処理が処理を開始したａ地点から、車両が進んだ距離が２０ｍに達したｂ時点で、基本的には、現在位置算出処理が次回の処理を開始しなければならないが、車両が高速で走行し、ａ地点で処理を開始した現在位置算出処理または表示処理が終了しないうちに、車両がｂ地点を通過してしまい、実際には、車両が１００ｍだけ進んだｃ地点で、現在位置算出処理が次回の処理を開始した場合を考える。
【００８２】
この場合、ｃ地点で処理を開始した現在位置算出処理において、ステップ５０５で求めた進行方向Ｗ９１の誤差は、ｂ地点で現在位置算出処理が処理を開始していたならば、ステップ５０５で求めたであろう進行方向Ｗ９２の誤差より大きくなる。
【００８３】
そこで、ｂ地点で現在位置算出処理が処理を開始していたならば、ステップ５０５で求めたであろう進行方向Ｗ９２と道路９０との間の角度のズレθｂが、しきい値Ｔ以下であっても、ｃ地点で処理を開始した現在位置算出処理において、ステップ５０５で求めた進行方向Ｗ９１と道路９０との間の角度のズレθｃが、しきい値Ｔより大きくなってしまうと、ｂ地点で現在位置算出処理が処理を開始していたならば、ステップ５１０の１次選択で選択されていたはずの道路９０が、ｃ地点で処理を開始した現在位置算出処理において、ステップ５０１の１次選択で選択されなくなくなってしまうという問題点が生じる。
【００８４】
このような問題点を解消するためには、しきい値Ｌに加えて、しきい値Ｔも変更するようにすればよい。
【００８５】
以下、しきい値Ｌに加えて、しきい値Ｔも変更するようにした実施例について説明する。
【００８６】
本実施例が上述した実施例と異なる点は、図５のステップ５０９で、しきい値Ｌに加えて、しきい値Ｔを求めるようにした点、および、図８に示したテーブルの内容が図１０に示すようになる点の２点である。
【００８７】
すなわち、テーブルは、図１０に示すように、積算値ΣＫ（現在位置算出処理が前回に処理を開始した時点から現時点までの期間の車両の走行距離Ｋ）を複数の範囲に分割したときの各範囲ごとに、該範囲に対応するしきい値Ｌおよびしきい値Ｔを対応付けて記述しているテーブルとなる。ここで、しきい値Ｔは、しきい値Ｌと同様に、積算値ΣＫが大きいほど、大きくなるような値が記述されている。
【００８８】
また、ステップ５０９では、図１０に示したテーブルを参照することにより、積算値ΣＫに対応付けて記述されているしきい値Ｌおよびしきい値Ｔを求めるようにする。
【００８９】
このように、積算値ΣＫが大きいほど、車両が走行している道路の候補として道路の選択を行うために用いるしきい値Ｔを大きくなるように変更することにより、上述した問題点を解消することができる。
【００９０】
なお、本実施例では、図１０に示したテーブルを参照することにより、積算値ΣＫに対応するしきい値Ｌおよびしきい値Ｔを求めるようにしているが、積算値ΣＫに所定の定数ａを乗じることにより、しきい値Ｌを求めるようにし、積算値ΣＫに所定の定数ｂを乗じることにより、しきい値Ｌを求めるようにしてもよい。
【００９１】
【発明の効果】
以上説明したように、本発明の現在位置算出装置によれば、前回にマップマッチング処理を行った時点から現時点までの期間に車両が走行した距離に応じて、車両が走行している道路の候補として道路の選択を行うために用いるしきい値を変更することができる。
【００９２】
従って、マップマッチング処理の開始の遅延によって、同じ道路が候補として選択されたりされなかったりするのを防ぐことができる。
【図面の簡単な説明】
【図１】本実施例の現在位置算出装置を適用したナビゲーションシステムの構成を示すブロック図。
【図２】ディスプレイの表示例を示す説明図。
【図３】従来の問題点を示す説明図。
【図４】本実施例における走行距離算出処理のフローチャート。
【図５】本実施例における現在位置算出処理のフローチャート。
【図６】道路の表現形式を示す説明図。
【図７】本実施例における表示処理のフローチャート。
【図８】本実施例で用いるテーブルの説明図。
【図９】センサの特性が原因で生じる問題点を示す説明図。
【図１０】本実施例で用いるテーブルの説明図。
【符号の説明】
１０１…角速度センサ、１０２…方位センサ、１０３…車速センサ、１０４…スイッチ、１０５…ＣＤ−ＲＯＭ、１０６…ドライバ、１０７…ディスプレイ、１０８…コントローラ、１０９，１１０…Ａ／Ｄ変換器、１１１…パラレルＩ／Ｏ、１１２…ＤＭＡコントローラ、１１３…表示プロセッサ、１１４…マイクロプロセッサ、１１５…メモリ、１１６…カウンタ。
【図１】
0003656662.tif 000002
【図２】
0003656662.tif 000003
【図３】
0003656662.tif 000004
【図４】
0003656662.tif 000005
【図５】
0003656662.tif 000006
【図６】
0003656662.tif 000007
【図７】
0003656662.tif 000008
【図８】
0003656662.tif 000009
【図９】
0003656662.tif 000010
【図１０】
0003656662.tif 000011