(57)【特許請求の範囲】
【請求項１】
車両に搭載され、該車両の現在位置を算出する現在位置算出装置であって、
衛星より受信する電波に基づいて現在位置を算出する衛星利用現在位置算出手段と、
少なくとも、一般道路か高速道路かを示すデータを備えた道路データを含む、道路地図を表わす地図データを記憶する手段と、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
前記方位検出手段により検出された前記進行方位と、前記距離算出手段により算出された前記走行距離とに基づき仮想現在位置を求め、該仮想現在位置と前記地図データに含まれる前記道路データとを比較し、現在位置としての信頼度が仮想現在位置の現在位置としての信頼度より高い道路上の位置が存在する場合には、最も信頼度の高い道路上の位置を現在位置として推定し、現在位置としての信頼度が仮想現在位置の現在位置としての信頼度より高い道路上の位置が存在しない場合には、前記仮想現在位置を現在位置として推定するマップマッチング手段と、
前記マップマッチング手段によって推定された現在位置と、衛星利用現在位置算出手段が算出した現在位置とのうちの一方を、所定の基準に従って選択し、最終的な現在位置として決定する現在位置決定手段と、
前記推定された現在位置と前記道路データとに基づき、車両が高速道路の本線からサービスエリアまたはパーキングエリアへ進入したか否かと、車両がサービスエリアまたはパーキングエリアから本線に戻ったか否かとを判定するエリア判定手段とを備え、
前記所定の基準は、前記マップマッチング手段によって仮想現在位置が現在位置として推定されている場合に、他の場合に比べ、衛星利用現在位置算出手段が算出した現在位置が、最終的な現在位置として決定され易くなるよう定められた基準であり、
前記マップマッチング手段は、前記サービスエリアまたはパーキングエリアへ進入してから本線に戻るまでの間は、無条件に、前記仮想現在位置を前記現在位置として推定し、
前記現在位置決定手段は、少なくとも前記サービスエリアまたはパーキングエリアへ進入してから本線に戻るまでの間を含む間は、無条件に、前記マップマッチング手段によって推定された現在位置を、最終的な現在位置として決定することを特徴とする現在位置算出装置。
【請求項２】
前記エリア判定手段は、前記推定された現在位置と前記道路データとに基づいて、車両が高速道路上で分岐点を検出し、該分岐点の一方の道路が当該分岐点から所定距離以内に他方の道路と再度合流することを検出するとともに、前記分岐点の通過後に車両が旋回したことを検出したとき、前記エリアへ進入したと判定することを特徴とする請求項１記載の現在位置算出装置。
【請求項３】
前記エリア判定手段は、前記サービスエリアまたはパーキングエリアに進入した後の走行距離が予め定めた距離に達したとき、前記本線に戻ったと判定することを特徴とする請求項１または２記載の現在位置算出装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、該移動体の進行距離、進行方位などを測定して、これにより、当該移動体の現在位置を算出する現在位置算出装置に関するものであり、より詳細には、該移動体が高速道路上に存在する場合の該移動体の現在位置を算出する現在位置算出装置に関するものである。
【０００２】
【従来の技術】
従来より、道路上を走行する車両の現在位置を算出する現在位置算出装置において、該車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の進行距離とに基づいて算出されている。
【０００３】
また、車両の進行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ１回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【０００４】
さらに、このように車両の進行方向と進行距離から求めた現在位置の誤差を補正するために、特開昭６３−１４８１１５号公報に記載のように、走行距離および方位変化量に基づき定まる車両の推定位置と、道路地図の誤差に基いて誤差量を得て、推定位置を中心とする誤差量の範囲内に位置するすべての道路上に対応させて、推定位置を自己位置として登録し、これら登録された推定位置の各道路に対する相関係数を算出して、道路に対する誤差が最も少ないことを示す相関係数に対応する推定位置を現在位置とする技術が開示されている。また、特公平１−４６００４号公報には、地図上の道路を折れ線近似した地図情報中の折点間を結ぶ直線がなす方位と方位検出器の検出する方位との差が、一定角度内にあれば、車両が折点間の道路を前進していると判断する技術が開示されている。これら公報に記載されたように、道路に整合するように、求められた車両の現在位置を修正する、いわゆる、マップマッチングの技術が知られており、このマップマッチングの技術により、現在位置算出の精度を高めることができる。
【０００５】
一方、現在位置を求める技術としては、衛星よりの電波を利用して現在位置を算出する技術も知られている。このような技術の代表的なシステムとしては、ＧＰＳ等が知られている。
【０００６】
さて、前述したマップマッチング技術と、ＧＰＳを利用する技術を比較すると、ＧＰＳを利用する技術は、高い精度で現在位置を求めることは期待できないが、大きく位置を誤ることがなく、マップマッチングを利用する技術は、高い精度で現在位置を求まることが期待できるが、その反面、大きく位置を誤ることがあるという特性を有している。
【０００７】
そこで、両者の技術の長所を組あわせて利用することが行われている。
【０００８】
このようなハイブリッドな現在位置算出装置では、たとえば、マップマッチングによって求めた位置と、ＧＰＳによって求めた位置のずれが小さい場合には、マップマッチングによって求めた現在位置を採用し、位置のずれが大きい場合にはＧＰＳによって求めた現在位置を採用することにより、精度がよく、かつ、大きく現在位置を誤らない現在位置算出を実現している。
【０００９】
【発明が解決しようとする課題】
ところで、車両が高速道路中のサービスエリア或いはパーキングエリアに進入した場合や、車両がサービスエリア或いはパーキングエリアから、高速道路の本線に復帰した場合に、マップマッチングにより却って現在位置が不明確或いは不安定となる場合がある。すなわち、サービスエリア或いはパーキングエリア内で車両が旋回することにより生じる車両方位の変化などに起因して、マップマッチングを行った場合に、装置が、現在車両の位置する道路以外の道路（本線あるいは側道等）に現在位置をマッチングさせたり、現在位置が複数の道路間で飛んだりする誤動作が生じるおそれがある。特に、道路の前回の現在位置が位置した道路と今回の現在位置が位置する道路との接続関係も考慮するマップマッチングを行う場合に、装置が、ひとたび、現在位置を、高速道路の近傍を通っている側道にマッチングさせた場合には、車両が本来走行している道路である高速道路に、現在位置を再度マッチングさせることが困難となる場合がある。
【００１０】
そこで、本発明は、マップマッチングとＧＰＳを併用する、ハイブリッドな現在位置算出装置において、車両が高速道路のサービスエリア或いはパーキングエリアに進入した場合にも、車両の現在位置を、誤って算出してしまうことのない現在位置算出装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
前記目的達成のために、本発明は、車両に搭載され、該車両の現在位置を算出する現在位置算出装置であって、
衛星より受信する電波に基づいて現在位置を算出する衛星利用現在位置算出手段と、
少なくとも、一般道路か高速道路かを示すデータを備えた道路データを含む、道路地図を表わす地図データを記憶する手段と、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
前記方位検出手段により検出された前記進行方位と、前記距離算出手段により算出された前記走行距離とに基づき仮想現在位置を求め、該仮想現在位置と前記地図データに含まれる前記道路データとを比較し、現在位置としての信頼度が仮想現在位置の現在位置としての信頼度より高い道路上の位置が存在する場合には、最も信頼度の高い道路上の位置を現在位置として推定し、現在位置としての信頼度が仮想現在位置の現在位置としての信頼度より高い道路上の位置が存在しない場合には、前記仮想現在位置を現在位置として推定するマップマッチング手段と、
前記マップマッチング手段によって推定された現在位置と、衛星利用現在位置算出手段が算出した現在位置とのうちの一方を、所定の基準に従って選択し、最終的な現在位置として決定する現在位置決定手段と、
前記推定された現在位置と前記道路データとに基づき、車両が高速道路の本線からサービスエリアまたはパーキングエリアへ進入したか否かと、車両がサービスエリアまたはパーキングエリアから本線に戻ったか否かとを判定するエリア判定手段とを備え、
前記所定の基準は、前記マップマッチング手段によって仮想現在位置が現在位置として推定されている場合に、他の場合に比べ、衛星利用現在位置算出手段が算出した現在位置が、最終的な現在位置として決定され易くなるよう定められた基準であり、
前記マップマッチング手段は、前記サービスエリアまたはパーキングエリアへ進入してから本線に戻るまでの間は、無条件に、前記仮想現在位置を前記現在位置として推定し、
前記現在位置決定手段は、少なくとも前記サービスエリアまたはパーキングエリアへ進入してから本線に戻るまでの間を含む間は、無条件に、前記マップマッチング手段によって推定された現在位置を、最終的な現在位置として決定することを特徴とする現在位置算出装置を提供する。
【００１２】
【作用】
本発明においては、高速道路走行中に、現在位置データおよび道路データに基づいてサービスエリアまたはパーキングエリアの存在を検出するとともに、当該エリア内への進入を検出し、少なくとも該エリアへ進入してから本線に戻るまでの間少なくともこのエリア内ではマップマッチングによって道路に現在位置をマッチングする機能を抑止し、前記進行方位と前記走行距離とに基づき求められた仮想現在位置がマップマッチング手段によって、現在位置として推定されるようにしている。これにより、当該エリア内進入に伴って生じるマップマッチングによる現在位置算出の誤動作を未然に防止することができる。
【００１３】
ここで、通常は、マップマッチング手段によって、仮想現在位置が現在位置として推定される場合は、当該仮想現在位置が道路地図と整合しない場合であるから、現在位置として推定された仮想現在位置の信頼度は、現在位置として推定された道路上にマッチングされた位置の現在位置の信頼度よりも低い。そこで、本発明では、通常は、前記マップマッチング手段によって仮想現在位置が現在位置として推定されている場合に、他の場合に比べ、衛星利用現在位置算出手段が算出した現在位置が、最終的な現在位置として決定され易くなるようにしている。
【００１４】
しかし、信頼度とは無関係に仮想現在位置を現在位置として推定するように前記マップマッチング手段を制御したサービスエリアまたはパーキングエリア内においても、衛星利用現在位置算出手段が算出した現在位置が、最終的な現在位置として決定され易くなってしまう。
【００１５】
そこで、本発明では、さらに、サービスエリアまたはパーキングエリア内においては、前記サービスエリアまたはパーキングエリアへ進入してから本線に戻るまでの間を含む間は、無条件に、前記マップマッチング手段によって推定された現在位置を、最終的な現在位置として決定するようにしている。
【００１６】
これにより、当該エリア内進入に伴って生じるマップマッチングによる現在位置算出の誤動作を未然に防止し、また、その間は、仮想現在位置のデータを用いることにより対処することができる。なお、当該エリア内での走行距離はそれほど大きなものではなく、その間に生じる測定走行距離の誤差は小さいので、仮想現在位置の現実位置に対する誤差は、衛星を利用して現在位置を求めた場合に比べ小さいことが期待でき、本線に戻って再度マップマッチングを再開したときには、現在位置が、すみやかに当該高速道路本線上に戻ることが期待できる。
【００１７】
【実施例】
以下、添付図面に基づいて、本発明の実施例につき詳細に説明を加える。
【００１８】
図１は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。図１に示すように、この現在位置算出装置１０は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ１１と、地磁気を検出することで車両の進行方位を検出する方位センサ１２と、車両のトランスミッションの出力軸の回転速度に比例した時間間隔でパルスを出力する車速センサ１３を備えている。また、ＧＰＳ衛星より受信した電波に基づいて現在位置を算出するＧＰＳ受信機２９を備えている。
【００１９】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ１７と、ディスプレイ１７に表示する地図の縮尺切り替えの指令をユーザ（運転者）から受け付けるスイッチ１４と、デジタル地図データを記憶しておくＣＤ−ＲＯＭ１５と、そのＣＤ−ＲＯＭ１５から地図データを読みだすためのドライバ１６とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ１８を備えている。本実施例において、上述したデジタル地図データには、複数の線分の端部を示す座標から構成される道路データ、或いは、該道路の道幅を示す道路幅データ、道路が高速道路或いは一般道路であるかを示す高速道路フラグなどが含まれる。
【００２０】
コントローラ１８は、角速度センサ１１の信号（アナログ）をデジタル信号に変換するＡ／Ｄ変換器１９と、方位センサ１２の信号（アナログ）をデジタル信号に変換するＡ／Ｄ変換器２０と、車速センサ１３から出力されるパルス数を０．１秒毎にカウントするカウンタ２６と、スイッチ１４の押圧の有無を入力するパラレルＩ／Ｏ２１と、ＣＤ−ＲＯＭ１５から読みだされた地図データを転送するＤＭＡ（Direct Memory Access）コントローラ２２と、ディスプレイ１７に地図画像を表示する表示プロセッサ２３とを有する。
【００２１】
また、コントローラ１８は、さらに、マイクロプロセッサ２４と、メモリ２５とを有する。マイクロプロセッサ２４は、ＧＰＳ受信機２９が算出した現在位置、Ａ／Ｄ変換器１９を介して得た角速度センサ１１の信号、Ａ／Ｄ変換器２０を介して得た方位センサ１２の信号、カウンタ２６がカウントした車速センサ１３の出力パルス数、パラレルＩ／Ｏ２１を介して入力するスイッチ１４の押圧の有無、ＤＭＡコントロ−ラ２２を介して得たＣＤ−ＲＯＭ１５からの地図データを受け入れて、それら信号に基づいて処理を行い、車両の現在位置を算出して、それを表示プロセッサ２３を介してディスプレイ１７に表示させる。この車両位置の表示は、図２に示すように、すでにディスプレイ１７に表示している地図上に矢印マ−ク等を重畳して表示することにより行う。これにより、ユーザは、地図上で車両の現在位置を知ることができる。メモリ２５は、このような動作を実現するための処理（後述）の内容を規定するプログラムなどを格納したＲＯＭと、マイクロプロセッサ２４が処理を行う場合にワ−クエリアとして使用するＲＡＭとを含んでいる。
【００２２】
以下、このように構成された現在位置算出装置１０の動作について説明する。現在位置算出装置１０の動作は、全般的に、車両の進行方位及び進行距離を算出する処理と、算出された進行方位及び距離から車両の現在位置を決定する処理と、得られた車両位置および方位を表示する処理との三つの処理に分けることができるため、これらについて順次説明する。
【００２３】
図３に、車両の進行方位及び進行距離を算出する処理の流れを説明する。
【００２４】
この処理は、一定周期、たとえば１００ｍＳ毎に起動され実行されるマイクロプロセッサ２４のルーチンである。
【００２５】
このルーチンでは、最初、Ａ／Ｄ変換器１９から角速度センサ１１の出力値を読み込む（ステップ４０１）。この角速度センサ１１の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、Ａ／Ｄ変換器２０から方位センサ１２の出力値を読み込み（ステップ４０２）、この方位センサ１２の出力値により算出された絶対方位とジャイロ１１から出力される方位変化（角速度出力）とを用いて、車両の推定方位を決定する（ステップ４０３）。
【００２６】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサの誤差が大きいので、一定時間以上車速が低い場合には、方位センサ方位のみを利用するという方法により行う。
【００２７】
次に、車速センサ１３の出力するパルス数を、０．１秒毎に、カウンタ２６で計数して、その計数値を読み込む（ステップ４０４）。この読み込んだ値に、距離係数を乗算することで、０．１秒間に進んだ距離を求める（ステップ４０５）。
【００２８】
次に、このようにして求められた０．１秒間あたりの進行距離値を、前回得られた値に積算して、車両の進行距離が２０ｍとなったかどうかを調べ（ステップ４０６）、２０ｍに満たない場合（ステップ４０６でＮｏ）、今回の処理を終了して、新たな処理を開始する。
【００２９】
進行距離算出処理の結果、積算された進行距離が一定距離、例えば２０ｍとなった場合（ステップ４０６でＹｅｓ）、その時点での進行方向と進行距離（２０ｍ）とを出力する（ステップ４０７）。ステップ４０７では、さらに、積算距離を初期化して、新たに進行距離の積算を開始する。
【００３０】
次に、算出された進行方位および進行距離に基づいて、車両の仮想現在位置を算出し、算出された仮想現在位置に基づき、車両の候補点を求める処理について説明する。
【００３１】
図４に、この処理の流れを示す。
【００３２】
本処理は、図３からの進行方位および進行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ２４のルーチンである。すなわち、本処理は、車両が２０ｍ進む毎に起動される。
【００３３】
さて、この処理では、まず、ステップ４０７で出力された進行方位と進行距離とを読み込む（ステップ５０１）。次に、それらの値に基づいて、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の処理で求められた車両の候補点の位置に加算して、現在車両が存在すると推定される位置である仮想現在位置（Ａ）を求める（ステップ５０２）。この候補点の詳細については後述する。
【００３４】
もし、装置の始動直後など、前回求められた候補点の位置が存在しない場合には、別途設定された位置を、前回求められた候補点の位置として用いて仮想現在位置（Ａ）を求める。
【００３５】
次に、求めた仮想現在位置（Ａ）の周辺の地図を、ＣＤ−ＲＯＭ１５から、ドライバ１６およびＤＭＡコントローラ２２を介して読み出し、仮想現在位置（Ａ）を中心とする予め設定された距離Ｄ内にある道路データ（線分）を選択して、これらを取り出す（ステップ５０３）。
【００３６】
なお、前述したように、本実施例においては、道路データとして、図５に示すように、２点間を結ぶ複数の線分５１ないし５６で近似し、それら線分を、その始点と終点の座標によって表したものなどを用いている。たとえば、線分５３は、その始点（ｘ３、ｙ３）と終点（ｘ４、ｙ４）によって表現される。
【００３７】
ステップ５０３に続いて、マップマッチング抑止フラグが１か否かを確認する（ステップ５１０）。このマップマッチング抑止フラグは、後述するように、車両が高速道路上のサ−ビスエリアやパ−キングエリアに進入したと判定された場合に１に設定される。この設定処理については図１０を用いて後述する。この例では、マップマッチング抑止フラグが１の場合にマップマッチング機能を抑止し、０の場合に抑止が解除された状態を示す。
【００３８】
このフラグが１の場合、仮想現在位置（Ａ）を表示候補点としてＲＡＭの所定の領域に記憶する（ステップ５１１）。
【００３９】
ステップ５１０でマップマッチング抑止フラグが０の場合、次に、ステップ５０３で取り出された線分の中から、その線分の方位が、求められている進行方向と、所定値以内にある線分だけを選択する（ステップ５０４）。さらに、取り出されたｎ個すべての線分に対して、仮想現在位置（Ａ）から垂線をおろし、その垂線Ｌ（ｎ）の長さを求める（ステップ５０５）。
【００４０】
次に、これら垂線の長さに基づき、ステップ５０４で抜き出されたすべての線分に対して、以下の式によりに定義されるエラーコスト値ｅｃ（ｎ）を算出する。
【００４１】
ｅｃ（ｎ）＝α×｜θcar−θ（ｎ）｜＋β×｜Ｌ（ｎ）｜
ここに、θcarは仮想現在位置（Ａ）における車両方位、θ（ｎ）は、線分の方位、Ｌ（ｎ）は、仮想現在位置（Ａ）から線分までの距離、すなわち垂線の長さ、αおよびβは、重み係数である。これら重み係数の値は、進行方向と道路の方位のずれと現在位置と道路のずれのどちらを、現在位置が、その上にある道路を選択する上で重視するかによって変化させてよい。たとえば、進行方向と方位が近い道路を重視する場合は、αを大きくするようにする。
【００４２】
ここで、候補点について説明する。装置の始動直後など、初期的な状態においては、仮想現在位置（Ａ）は、ユーザ（運転者）がスイッチ１４を用いて所定の情報を入力することなどにより、一意的に定まり、かつ、この位置は道路に対応する線分上に存在する。しかしながら、車両が走行した後には、ジャイロなどの方位センサの誤差などにより、仮想現在位置（Ａ）が、道路に対応する線分に存在しなくなる場合がある。その結果、たとえば、図６に示すように、道路が分岐している場合、すなわち、道路に対応する線分６１の節点６８から、二つの線分６４および６５があらわれる場合に、いずれの線分に対応する道路上に車両が存在するかが、明確にすることができない場合が多い。
【００４３】
したがって、このような場合に、本実施例においては、考えられ得る二つの線分上に存在する所定の点を候補点として設定し、これらの現在位置、エラーコスト、後述する累算エラーコストなどを、それぞれ、メモリ２５のＲＡＭの所定の領域に記憶するように構成されている。なお、説明を容易にするため、以下の説明においては、特に複数の候補点であることを明示しない限り、単一の候補点から、新たな一以上の候補点を生成することとする。
【００４４】
ついで、算出されたエラーコストｅｃ（ｎ）と、前回の処理において算出された候補点に関連する累算エラーコストｅｓとにしたがって、下記の式により定義される、今回の処理における累算エラーコストｅｓ（ｎ）を算出する（ステップ５０６）。
【００４５】
ｅｓ（ｎ）＝（１−ｋ）×ｅｓ＋ｋ×ｅｃ（ｎ）
ここに、ｋは、０より大きく１より小さな重み係数である。この累算エラーコストｅｓ（ｎ）は、前回以前の処理において算出されたエラーコストを、今回の処理において算出されるエラーコストにどのくらい反映させるかを表わしている。  さらに、算出された累算エラーコストｅｓ（ｎ）に基づき、下記の式に定義される信頼度ｔｒｓｔ（ｎ）を算出する（ステップ５０６）。
【００４６】
ｔｒｓｔ（ｎ）＝１００／（１＋ｅｓ（ｎ））
上記式から明らかなように、累算エラーコストｅｓ（ｎ）が大きくなるのにしたがって、信頼度ｔｒｓｔ（ｎ）は減少し、０（ゼロ）に近づく。その一方、これが小さくなるのにしたがって、信頼度ｔｒｓｔ（ｎ）は増大し、その値は、１００に近づく。
【００４７】
このような処理をすることにより、ある候補点に対する現在位置Ａより所定の範囲Ｄに存在するｎ個の線分に関連する信頼度ｔｒｓｔ（ｎ）が求められる。候補点が複数存在する場合には、それぞれの候補点Ｃｍより所定の範囲Ｄに存在するｎ個の線分に関連する信頼度ｔｒｓｔ（ｍ，ｎ）を算出すればよい。
【００４８】
ついで、算出した信頼度ｔｒｓｔ（ｎ）に基づき、ある候補点から、対応する線分にそって、車両の進行した距離Ｒに対応する長さだけ進められた点を、新たな候補点Ｃ（ｎ）とする（ステップ５０７）。したがって、ある候補点に対する現在位置Ａより所定の範囲Ｄに存在し、かつその方位と車両方位との差が所定値以下であるような線分の本数がｎである場合には、ｎ個の新たな候補点Ｃ（ｎ）が生成されることになる。
【００４９】
さらに、新たな候補点Ｃ（ｎ）の各々に対応する信頼度ｔｒｓｔ（ｎ）の値にしたがって、これら新たな候補点Ｃ（ｎ）をソートし（ステップ５０８）、最も信頼度の値の大きな候補点Ｃ（ｉ）を、表示候補点、すなわち、ディスプレイ１７上に表示するための候補点として、その位置、累算エラーコスト、信頼度などを、メモリ２５のＲＡＭの所定の領域に記憶するとともに、表示候補点以外の他の候補点の位置、累算エラーコスト、信頼度なども、ＲＡＭの所定の領域に記憶する（ステップ５０９）。
【００５０】
たとえば、図６に示すように、線分６１上に存在したある候補点６２に対して、現在位置Ａが、点６３に示す位置に表わされるとする。このような場合に、現在位置Ａから、所定範囲Ｄに存在し、その方位と車両方位との差が所定値以下であるような線分６４、６５を取り出し、現在位置Ａから、線分６４、６５までの距離Ｌ（１）、Ｌ（２）を算出するともに、算出された距離、線分６４、６５の角度θ（１）、θ（２）および車両方位θcarなどに基づき、関連するエラーコスト、累算エラーコスト、信頼度を算出する。さらに、図３のステップ４０５で求められた車両の進行距離Ｒに基づき、ある候補点６２から、線分６１および６４、或いは、線分６１および６５に沿って、進行距離Ｒに対応する長さだけ進められた位置を算出し、この位置に対応する点を、それぞれ候補点６６、６７とする。このように求められた候補点６６、６７のうち、最も信頼度ｔｒｓｔの値が大きなものが、表示候補点となる。
【００５１】
さらに、図７に示すように、線分６４上の候補点６６に対して、新たな現在位置Ａが、点７１に示す位置に表わされ、その一方、線分６５上の候補点６７に対して、新たな現在位置Ａ’が、点７２に示す位置に表わされるとする。この場合には、現在位置Ａから所定範囲Ｄに存在し、その方位と車両方位との差が所定値以下であるような線分７３、７４を取り出すとともに、新たな現在位置Ａ’から所定範囲Ｄに存在し、その方位と車両方位との差が所定値以下であるような線分７５を取り出す。ついで、現在位置Ａから、線分７３、７４までのそれぞれの距離Ｌ１（１）およびＬ１（２）を算出するともに、現在位置Ａ’から、線分７５までの距離Ｌ２（１）を算出する。さらに、現在位置Ａに関連して算出された距離、線分７３、７４の角度θ１（１）およびθ１（２）ならびに車両方位θcarなどに基づき、関連するエラーコスト、累算エラーコストおよび信頼度を算出するとともに、現在位置Ａ‘に関連して算出された距離、線分７５の角度θ２（１）および車両方位θcarなどに基づき、関連するエラーコスト、累算エラーコス
トおよび信頼度を算出する。
【００５２】
さらに、図３のステップ４０５で求められた車両の走行距離Ｒに基づき、候補点６６から、線分６４および７３、或いは、線分６４および７４に沿って、若しくは、候補点６７から、線分６５および７５に沿って、車両の走行距離Ｒに対応する長さだけ進められた位置を算出し、この位置に対応する点を、それぞれ新たな候補点とする。図８は、このように新たに求められた候補点８１、８２、及び８３を示している。
【００５３】
なお、図６を参照して説明した例と同様に、候補点８１、８２、及び８３のうち、最も信頼度ｔｒｓｔの値が大きなものが、表示候補点となる。また、本実施例においては、１４個の候補点に関連するデータを記憶可能に構成されている。したがって、図４のステップ５０９において、候補点が１５個以上算出された場合には、これらのうち、信頼度ｔｒｓｔの値が大きい順に１４個の候補点に関連する種々のデータが、メモリ２５のＲＡＭの所定の領域に記憶されることになる。
【００５４】
ところで、前述したステップ５０３では、仮想現在位置（Ａ）を中心とする予め設定された距離Ｄ内にある道路データ（線分）を取り出したが、この距離Ｄは、前回行ったステップ５０９で算出した候補点の信頼度ｔｒｓｔの値に基づいて決定する値でもよい。
【００５５】
なお、信頼度に基づいて、検索範囲を求める理由は、信頼度が小さい場合には、前回求めた現在位置の精度に対する信憑性が低いと考えられるので、より広い範囲を検索して道路を探す方が、正しい現在位置を求める上で適当であるからである。
【００５６】
また、ある候補点に対する現在位置Ａから所定範囲Ｄ内に、その方位と車両の進行方位との差が所定値以下であるような線分が存在しない場合が考えられる。この場合には、現在位置Ａを、ある候補点から算出された次の候補点とする。これに対して、それ以外の状態、すなわち、ある候補点に対する現在位置Ａから所定の範囲Ｄ内に、その方位と車両の進行方位との差が所定値以下であるような線分が存在し、その結果、特定の線分上に次の候補点が存在し得る状態をマッチング状態と称する。
【００５７】
なお、現在位置Ａから所定範囲Ｄ内に、その方位と車両の進行方位との差が所定値以下であるような線分が存在しない場合に、ステップ５０６で算出すべきエラーコストｅｃ（ｎ）には、マッチング状態である場合に得られるエラーコストの値よりも大きな一定の値が与えられる。
【００５８】
ステップ５０９までの処理が実行されると、表示候補点を含む候補点が生成され、これらに関連する種々のデータが、メモリ２５のＲＡＭの所定の領域に記憶される。
【００５９】
以上の処理によって、マップマッチング抑止フラグが１のときにはステップ５１１によって、マップマッチング抑止フラグが０のときにはステップ５０９によって表示候補点が求められたことになる。そこで、次に、ステップ５１１またはステップ５０９で求められた表示候補点と、ＧＰＳ受信機２９によって算出された現在位置とを用いて、最終的に現在位置を表す表示候補点を求める処理（ステップ５１２〜５１７）を行う。
【００６０】
この処理では、まずＧＰＳ位置採用抑止フラグＧＰＳ＿ｆが１か否かを判定する。ＧＰＳ位置採用抑止フラグＧＰＳ＿ｆは、後述するようにマップマッチング抑止フラグが１に設定されるときに１に設定される。すなわち、車両が高速道路上のサ−ビスエリアやパ−キングエリアに進入したと判定された場合に１に設定される。この設定処理については図１２を用いて後述する。この例では、ＧＰＳ位置採用抑止フラグＧＰＳ＿ｆが１のときに、最終的に現在位置を表す表示候補点として、ＧＰＳ受信機２９が算出した現在位置が採用されることを抑止する。さて、このＧＰＳ位置採用抑止フラグＧＰＳ＿ｆは、１に設定されてから、車両が距離ｌｔｈ走行したら０に初期化される。ステップ５１３〜５１５は、この初期化のために処理である。これは車両が高速道路上のサ−ビスエリアやパ−キングエリアに進入してから、距離ｌｔｈ走行したらサ−ビスエリアやパ−キングエリアから高速道路の本線に復帰したと考えられるかである。距離ｌｔｈは、このような判定が適正に実行できるような距離とする。なお、ＧＰＳ＿ｌは、後述するようにＧＰＳ＿ｆが１に設定されたときに、０に初期化されるパラメ−タであり、ステップ５１３の処理によって、常に、ＧＰＳ＿ｆが１に設定されてからの車両の走行距離を表すように更新される。
【００６１】
ここで、前述した、マップマッチング抑止フラグも、後述する図１２の処理により、サ−ビスエリアやパ−キングエリアから高速道路の本線に復帰したと考えられる時点で０にリセットされるが、前述した距離ｌｔｈは、マップマッチング抑止フラグが０にリセットされた後、しばらく車両が走行した後にＧＰＳ位置採用抑止フラグＧＰＳ＿ｆが０にリセットされるように定める。このようにする理由については後述する。
【００６２】
さて、前述したようにｌｔｈを定めているので、ＧＰＳ＿ｆが１のときにはステップ５１１で表示候補点が求められている場合である。そこで、ステップ５１８で、ＧＰＳ受信機２９が算出した現在位置を不採用とし、ステップ５１１で求められた表示候補点を、最終的に現在位置を表す表示候補点として選択する。
【００６３】
一方、ＧＰＳ＿ｆが０のときには、ステップ５０９で表示候補点が求められている場合である。そこで、ステップ５１７で、ステップ５０９で求められた表示候補点と、ＧＰＳ受信機２９によって算出された現在位置と、どちらが最終的に現在位置を表す表示候補点として妥当であるかを判定する。この判定は、ステップ５０９で求められた表示候補点と、ＧＰＳ受信機２９によって算出された現在位置とのずれが所定の距離しきい値より大きい場合には、ＧＰＳ受信機２９によって算出された現在位置を最終的に現在位置を表す表示候補として選択し、逆に、前記ずれが所定のしきい値より小さい場合は、ステップ５０９で求められた表示候補点を、最終的に現在位置を表す表示候補として選択するように行われる。ここで、しきい値は、前記マッチング状態の候補点がステップ５０９で選択されている場合は、そうでない場合に比べ大きくする。ステップ５０９で表示候補点として選択されたマッチング状態の候補点は、ステップ５０９で表示候補点として選択された非マッチング状態の候補点に比べ、信頼度が高いことが期待できるので、しきい値を大きくすることにより、より最終的に現在位置を表す表示候補点として選択され易くするのである。
【００６４】
このようにして、最終的に現在位置を表す表示候補点が選択されると、ステップ５１９へ移行して、最終的に現在位置を表す表示候補点の座標等のデータを出力し、本処理を終了する。
【００６５】
さて、５１９で最終的に出力された表示候補点は、図９に示すフローチャートに基づく処理によりディスプレイ１７の画面上に表示される。
【００６６】
本処理は、１秒毎に起動され実行されるマイクロプロセッサ２４のルーチンである。
【００６７】
最初、スイッチ１４が押圧により地図の縮尺の変更を指示されているかを、パラレルＩ／Ｏ２１の内容を見て判断する（ステップ１００１）。もし、押されていれば（ステップ１００１でＹｅｓ）、それに対応して、所定の縮尺フラグを設定する（ステップ１００２）。
【００６８】
次に、図５の処理を実行することにより得られた表示候補点の位置および方位を示すデータを、メモリ２５のＲＡＭの所定の領域から読み出し（ステップ１００３）、ステップ１００２で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ１７に、例えば、図２に示すような状態で表示する（ステップ１００４）。
【００６９】
そして、地図に重畳して、表示候補点の位置およびその方位を、たとえば、先に示した図２のように、矢印記号“↑”を用いて表示する（ステップ１００５）。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図２のように表示する（ステップ１００６）。
【００７０】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【００７１】
さて、以上のように、本実施例においては、マップマッチング抑止フラグを１に設定し、ＧＰＳ位置採用抑止フラグＧＰＳ＿ｆを１に設定することにより、マップマッチング処理によって道路上にマッチングされた位置や、ＧＰＳ受信器２９によって算出された現在位置が最終的に現在位置を表す位置として、算出されることを抑止している。
【００７２】
ここで、前述したように、マップマッチング抑止フラグ、ＧＰＳ位置採用抑止フラグＧＰＳ＿ｆは、高速道路のサービスエリア（ＳＡ）或いはパーキングエリア（ＰＡ）で１に設定する。
【００７３】
そのための処理を以下に説明する。
【００７４】
まず、装置始動時に、エリア判定処理後の走行距離を示す定数Ｌおよびエリア判定フラグｆｌａｇやマップマッチング抑止フラグを０やＧＰＳ位置採用抑止フラグＧＰＳ＿ｆ等の各種パラメ−タを初期化する。
【００７５】
そして、図１０に示す処理を実行し、マップマッチング抑止フラグのセットリセット、ＧＰＳ位置採用抑止フラグＧＰＳ＿ｆのセットを制御する。
【００７６】
この図１０に示す処理は、図４に示した現在位置を算出する処理の終了を待って実行される。
【００７７】
図示するように、この処理では、まず、後述するエリア判定処理の後に走行した距離である定数Ｌが０以下かを調べる（１１０１）。Ｌが０の場合、エリア判定を実行可能とするためにエリア判定フラグｆｌａｇを０に設定する（ステップ１１０３）。Ｌが０でない場合、Ｌの値が更新（この例ではデクリメント）される（ステップ１１０２）。
【００７８】
ついで、エリア判定フラグｆｌａｇが０か否かをチェックする（ステップ１１０４）。０であれば、前述した高速道路フラグに基づいて現在走行している道路が高速道路であるか否かをチェックする（ステップ１１０５）。高速道路上でなければステップ１１０８へ進む。高速道路上であれば、次のステップ１１０６で、現在進行中の道路前方所定距離内に分岐点が存在するかを否かを、道路データおよび現在位置に基づいて調べる（ステップ１１０６）。分岐点が存在しなければステップ１１０８へ移行する。分岐点が存在した場合には、サービスエリア或いはパーキングエリアへの進入の可能性があるので、次のステップ１１０７で、サービスエリア或いはパーキングエリアへ進入したか否かを判定するエリア判定処理を行う。この詳細な処理については図１１で後述する。
【００７９】
ステップ１１０４でｆｌａｇが０でなければ、これらのステップ１１０５〜１１０７は実行せずにステップ１１０８へジャンプする。なお、ｆｌａｇの設定は、初期化処理以外では、前記ステップ１１０３、および後述する図１１のエリア判定処理の中で行われる。
【００８０】
ステップ１１０８では、エリア判定フラグｆｌａｇが０か否かを調べ、０であればそのまま本処理を終了し、０でなければステップ１１０９で後述のエリア処理を実行して、本処理を終了する。
【００８１】
次に図１１により、ステップ１１０７のエリア判定処理の具体的な処理手順の例を示す。
【００８２】
この処理では、まず、分岐点の確認後に当該分岐点に接続された１つの道路を道路データ検索により前方へたどっていき（１２０１）、新たな分岐点があるかを調べる（１２０２）。新たな分岐点がなければ、その状態が５００ｍ以上続くまで当該道路を調べる（ステップ１２０９、１２０１）。それでも分岐点が見つからない場合には本処理を終了する。その間に分岐点が見つかれば、ステップ１２０３で、次に先の第１の分岐点に接続された他の道路を検索する。そこで、この道路の先にも分岐点があるか否かを、ステップ１２０１、１２０２、１２０９の場合と同様にして、ステップ１２０３、１２０４、１２０５で調べる。分岐点がなければ処理を終了する。分岐点があれば、この分岐点が前回ステップ１２０２で検出した分岐点と同一か否かを調べる（１２０６）。両分岐点が同一であるということは、第１の分岐点を通過した後、この分岐点で分かれた２本の道路が約５００ｍ以内に再び合流したということを意味する。これは、高速道路上ではサービスエリア或いはパーキングエリアの存在を示すと考えられる。同一でなければ本処理を終了し、同一であれば、次のステップ１２０７へ進む。
【００８３】
ステップ１２０６で同一の分岐点であることが判明した場合は、次のステップ１２０７で、本エリア判定処理後の定数Ｌを１０００ｍに設定する。この定数Ｌの値は、前述したように図１０のステップ１１０２で新たな走行距離分だけデクリメントされていき、図１０のエリア処理において利用される。ついで、ステップ１２０８でｆｌａｇを１に設定して本処理を終了する。このｆｌａｇを１に設定したことにより、ＳＡ，ＰＡに進入した後、再度、エリア判定処理（図１０のステップ１１０７）を実行することを回避する。
【００８４】
次に図１２により、ステップ１１０９のエリア処理の具体的な処理手順の例を説明する。
【００８５】
まず、ステップ１３０１で、前述した定数Ｌが０またはそれ以下になったか否かをチェックする。これが０以下になった（ステップ１３０１でＮｏ）ということは、エリア判定を行った後の走行距離が１０００ｍ以上となったことを意味する。ステップ１２０７の定数Ｌの設定後に最初にステップ１３０２に入ったときには、当然ながらＬ＞０であり、次のステップ１３０２で、進行方位のデータに基づいて車両が旋回したか否かをチェックする。車両が旋回したか否かを調べるのは、図１１のステップ１２０６でサービスエリアまたはパーキングエリアの存在が確認されても、分岐点において車両の選択した道路がそのエリア側の道路かどうかが不明であるためである。通常、車両はそのようなエリアに入るためには旋回するのが常であるから、これを検出することにより当該エリアへの進入が検出できる。したがって、このような旋回を検出して初めてＳＡ，ＰＳへの進入と判定する。このような旋回は、進行方位の所定角度以上の変化（例えば、過去の数点の方位変化の積分量が所定値を越えたこと）により検出できる。ステップ１３０２での判定結果がＮｏの場合には本処理を終了する。
【００８６】
ステップ１３０２での判定結果がＹｅｓの場合、次のステップ１３０３で、以後のマップマッチングの実行と、ＧＰＳ受信機２９が最終的に現在位置を表す現在位置として算出されるのを抑止するために、マップマッチング抑止フラグと、ＧＰＳ位置採用抑止フラグを１に設定する。また、ＧＰＳ＿ｌを０に初期化する。これにより、以後の図４のステップ５０４〜５０９によるマップマッチングの処理をスキップし、図４のステップ５１５でＧＰＳ受信機２９の算出した位置が最終的に現在位置を表す表示候補点として算出されるのを抑止することになり、現在位置（Ａ）がそのまま画面上に表示されることになる。なお、この現在位置（Ａ）算出の際には、前回の現在位置（Ａ）がその算出の基準となる。その結果、前述したようなマップマッチングによる不都合が解消される。ステップ１３０３の後、本処理を終了する。
【００８７】
また、ステップ１３０１で定数Ｌが０または負である場合、これにより車両がＳＡ，ＰＡから抜け出した、或いは分岐点後に車両が旋回しないまま１０００ｍを走行したことが推定されるので、マップマッチング抑止フラグを０とするとともに、定数Ｌを０にリセットする（ステップ１３０４）。その結果、再びマップマッチング機能が働くようになる。
【００８８】
ただし、前述したように、前述したｌｔｈの働きにより、この時点ではＧＰＳ位置採用抑止フラグＧＰＳ＿ｆは、まだ０にリセットされない。
【００８９】
これは、次の理由によるものである。
【００９０】
すなわち、マップマッチング抑止フラグが０にリセットされた直後は、必ずしも、マップマッチング処理によって、正しい位置に、直ちに、表示候補点が求まらない場合もありえる。しかし、このような場合でも、数回のマップマッチングを繰り返すうちに、前述したようなマップマッチング処理によって、正しい位置に表示候補点が求まる可能性が高い。そこで、ＧＰＳ受信機２９の算出した現在位置が最終的な現在位置を表す表示候補点として算出するのをマップマッチング開始後は、しばらく猶予し、マップマッチング処理によって、正しい位置に表示候補点が求まるのを期待するのである。
【００９１】
なお上記説明における種々の数値、例えば２０ｍ、５００ｍ、１０００ｍ等は、本発明をこれらに限定するものではない。また、図４および図１１の処理は常に２０ｍ毎に行うようにしたが、例えばステップ１１０６の分岐点確認後からステップ１３０４までは、もっと短い距離（例えば１０ｍ）毎に実行して、ステップ１３０２における旋回の検出および現在位置（Ａ）の更新の頻度を増加させるようにすることもできる。
【００９２】
【発明の効果】
以上のように、本発明によれば、マップマッチングとＧＰＳを併用する、ハイブリッドな現在位置算出装置において、車両が高速道路のサービスエリア或いはパーキングエリアに進入した場合にも、車両の現在位置を、誤って算出してしまうことのない現在位置算出装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。
【図２】実施例にかかる地図および現在位置の表示例を示す図である。
【図３】実施例において車両の進行方位および進行距離を算出する処理を示すフローチャートである。
【図４】実施例において車両の現在位置を算出する処理を示すフローチャートである。
【図５】実施例にかかる道路データの一例を説明するための図である。
【図６】道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図７】道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図８】道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図９】実施例における表示処理を示すフローチャートである。
【図１０】実施例におけるサービスエリア、パーキングエリアに関連する処理のフローチャートである。
【図１１】図１０に示したエリア判定処理の詳細手順を示すフローチャートである。
【図１２】図１０に示したエリア処理の詳細手順を示すフローチャートである。
【符号の説明】
１０      現在位置算出装置
１１      角速度センサ
１２      方位センサ
１３      車速センサ
１４      スイッチ
１５      ＣＤ−ＲＯＭ
１６      ＣＤ−ＲＯＭ読み取りドライバ
１７      ディスプレイ
１８      コントローラ
【図１】
0003587904.tif 000002
【図２】
0003587904.tif 000003
【図３】
0003587904.tif 000004
【図４】
0003587904.tif 000005
【図５】
0003587904.tif 000006
【図６】
0003587904.tif 000007
【図７】
0003587904.tif 000008
【図８】
0003587904.tif 000009
【図９】
0003587904.tif 000010
【図１０】
0003587904.tif 000011
【図１１】
0003587904.tif 000012
【図１２】
0003587904.tif 000013