(57)【特許請求の範囲】
【請求項１】
道路地図を表す地図データを記憶する地図データ記憶手段と、
所定期間毎に、距離係数を用いて車輪の回転数から前記車両の走行距離を算出する走行距離算出手段と、
前記所定期間毎に、前記車両の進行方位を検出する進行方位検出手段と、
前記走行距離算出手段により算出された走行距離、前記進行方位検出手段により検出された進行方位、および、前記地図データ記憶手段に記憶されている地図データを用いて、当該地図データが表す道路地図上における前記車両の現在位置を逐次算出する現在位置算出手段と、
前記現在位置算出手段により算出された現在位置が前記地図データが表す道路地図上に表した画像を表示する表示手段と、
前記進行方位検出手段が検出する進行方位から前記車両の右左折を検出する右左折検出手段と、
前記地図データ記憶手段に記憶されている地図データを用いて、前記右左折検出手段により検出された右左折に対応する道路地図上の地点と、前記現在位置算出手段が算出した現在位置とのずれを表す距離誤差を算出する距離誤差算出手段と、
前記距離誤差算出手段で算出された距離誤差に応じた補正係数を算出する補正係数算出手段と、を有し、
前記走行距離算出手段は、
前記右左折検出手段により右左折が検出されてから前記走行距離算出手段が所定距離を算出するまでの間、前記距離係数および前記補正係数算出手段で算出した補正係数を用いて、車輪の回転数から前記車両の走行距離を算出し、
前記走行距離算出手段が前記所定距離を算出してから前記右左折検出手段により右左折が新たに検出されるまでの間、前記距離係数を用いて、車輪の回転数から前記車両の走行距離を算出すること
を特徴とする現在位置算出装置。
【請求項２】
請求項１に記載の現在位置算出装置であって、
前記距離係数は、固定値であること
を特徴とする現在位置算出装置。
【請求項３】
請求項１に記載の現在位置算出装置であって、
前記距離係数は、前記距離誤差算出手段で算出された距離誤差に応じた値であること
を特徴とする現在位置算出装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、走行距離や進行方位等を測定して、これらより当該車両の現在位置を算出して、現在位置周辺の道路地図と共に表示する現在位置算出装置に関するものであり、特に、算出した現在位置が誤っていた場合に、地図上の現在位置の表示位置を修正する技術に関するものである。
【０００２】
【従来の技術】
従来、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の走行距離に基づいて、車両の現在位置を逐次算出し、算出した現在位置に対応する位置に、表示装置に表示した道路地図上の現在位置を更新する。このような技術によれば、車両の移動に伴い、現在位置の表示が地図上を滑らかに移動するので、運転者は、この表示より、車両の現在位置や地図上の進行方向や走行状況等を直ちに把握することができる。
【０００３】
また、車両の走行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ１回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【０００４】
また、このように車両の進行方向と走行距離から求めた現在位置の誤差を補正するために、特公平６−１３９７２号記載の技術のように、道路データに整合するように、求められた車両の現在位置を修正する、いわゆる、マップマッチングの技術が知られている。このマップマッチングの技術によれば、位置算出の精度を高めることができる。
【０００５】
ところで、走行時には、タイヤの磨耗や、温度変化による膨張等により、タイヤの直径、すなわち、距離係数が時事刻々と変化する。このため、走行距離の算出において誤差が発生し、現在位置の算出が高精度に行えなくなる。たとえば、タイヤ１回転あたりの走行距離係数に、１％の誤差が存在すると、１００ｋｍ走行した場合、１ｋｍの誤差が発生してしまう。
【０００６】
このような走行距離の測定誤差は、通常の道路を走行している場合は、前述したマップマッチングの技術により、ある程度修正できる。しかし、高速道路等の道路を走行する際には、マップマッチングで利用できるカーブや交差点等の特徴が道路にないため、充分に誤差を修正することができなくなる。
【０００７】
さらに、一旦、測定した現在位置と真の現在位置との間に１ｋｍ程度の誤差が発生してしまうと、マップマッチングの技術によっては、正しい位置に補正することが困難になる。
【０００８】
そこで、走行距離の測定の誤差を無くすために、従来は、（１）交差点を曲がった時（始点）から、次の交差点を曲がる（終点）までの道路データと、計測した回転数より得られる走行距離とを比較することにより、タイヤ１回転あたりの距離係数を補正することが行われていた。また、（２）特公平６−２７６５２号公報に記載のように、２つのビーコンの間の地図上の距離と、走行して計測した距離を比較することにより、前述した距離係数を補正する技術も知られている。
【０００９】
【発明が解決しようとする課題】
さて、このように、距離係数は常に正しい走行距離を算出できる値を持つとは限らないので、実際の現在位置より進んだ位置もしくは遅れた位置が現在位置として誤って算出され、地図上に表示されていることがある。
【００１０】
このような場合に、地図上の現在位置の表示を正しい位置に一度に修正すると、地図上において現在位置が不連続に移動したり、進行方向と逆方向に移動したりする等、現在位置が、運転者の運転とは異なる不自然、不可解な挙動をすることになり、運転者に混乱をもたらす。
【００１１】
そこで、本発明は、表示装置上に表わされた地図上の現在位置の表示を修正を、利用者が、より自然に感じられるように行うことを目的とする。
【００１２】
【課題を解決するための手段】
前記目的達成のために、本発明は、逐次、検出された車輪の回転速度と、設定された距離係数に応じて車両の走行距離を算出し、検出された車両の走行距離と検出された車両の進行方位に応じて、車両が存在する現在位置を算出し、算出した現在位置を当該現在位置周辺の道路地図と共に表示する、車輪の回転に伴い移動する車両に搭載された現在位置算出装置において、算出された現在位置が誤っていた場合に、現在位置の前記道路地図上の表示位置を修正する方法であって、算出された現在位置が誤っていた場合に、前記走行距離算出手段に設定された距離係数を、一定の走行距離を走行するまでの間、当該間に算出される現在位置が漸次正しい位置に近づくように補正することにより、前記現在位置の前記道路地図上の表示位置を前記間に漸次修正することを特徴とする現在位置算出装置における現在位置の表示位置の修正方法を提供する。
【００１３】
【作用】
本発明に係る現在位置算出装置における現在位置の表示位置の修正方法によれば、現在位置が誤っていた場合に直に、現在位置の表示位置を修正するのではなく、算出された現在位置が実際の現在位置より遅れている場合には、一定の走行距離を走行するまでの間、前記走行距離算出手段に設定された距離係数を、より大きな値に補正し、算出された現在位置が誤っていた場合であって、算出された現在位置が実際の現在位置より進んでいる場合には、前記一定の走行距離を走行するまでの間、前記走行距離算出手段に設定された距離係数を、より小さな値に補正することにより、前記現在位置の前記道路地図上の表示位置が前記間に漸次修正されるようにする。
【００１４】
したがい、地図上において現在位置を正しい位置に修正するのに際し、この現在位置が地図上において不連続に移動したり、進行方向と逆方向に移動したりする等、現在位置が、運転者の運転とは異なる不自然、不可解な挙動をすることを防ぐことができる。
【００１５】
【実施例】
以下、本発明に係る現在位置算出装置の一実施例について説明する。
【００１６】
図１に本実施例に係る現在位置算出装置の構成について説明する。
【００１７】
すなわち、本実施例に係る現在位置算出装置は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ２０１と、地磁気を検出することで車両の進行方位を検出する地磁気センサ等の方位センサ２０２と、車両のトランスミッションの出力軸の回転速度に比例した時間間隔でパルスを出力する車速センサ２０３を備えている。
【００１８】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ２０７と、ディスプレイ２０７に表示する地図の縮尺切り替えの指令をユーザに（運転者）から受け付けるスイッチ２０４と、デジタル地図データを記憶しておくＣＤ−ＲＯＭ２０５と、そのＣＤ−ＲＯＭ２０５から地図データを読みだすためのドライバ２０６とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ２０８を備えている。
【００１９】
次に、コントローラ２０８は、角速度センサ２０１の信号（アナログ）をデジタル信号に変換するＡ／Ｄ変換器２０９と、方位センサ２０２の信号（アナログ）をデジタル信号に変換するＡ／Ｄ変換器２１０と、車速センサ２０３から出力されるパルス数を０．１秒毎にカウントするカウンタ２１６と、スイッチ２０４の押圧の有無を入力するパラレルＩ／Ｏ２１１と、ＣＤ−ＲＯＭ２０５から読みだされた地図データを転送するＤＭＡ（Direct Memory Access）コントローラ２１２と、ディスプレイ２０７に地図画像を表示する表示プロセッサ２１３とを有する。
【００２０】
また、コントローラ２０８は、さらに、マイクロプロセッサ２１４と、メモリ２１５とを有する。マイクロプロセッサ２１４は、Ａ／Ｄ変換器２０９を介して得た角速度センサ２０１の信号、Ａ／Ｄ変換器２１０を介して得た方位センサ２０２の信号、カウンタ２１６がカウントした車速センサ２０３の出力パルス数、パラレルＩ／Ｏ２１１を介して入力するスイッチ２０４の押圧の有無、ＤＭＡコントロ−ラ２１２を介して得たＣＤ−ＲＯＭ２０５からの地図データを受け入れて、それら信号に基づいて処理を行い、車両の現在位置を算出して、それを表示プロセッサ２１３を介してディスプレイ２０７に表示させる。この車両位置の表示は、図２に示すように、すでにディスプレイ２０７に表示している地図上に矢印マ−ク等を重畳して表示することにより行う。これにより、ユーザは、地図上で車両の現在位置を知ることができる。メモリ２１５は、このような動作を実現するための処理（後述）の内容を規定するプログラムや、後述する各種テ−ブル等を格納したＲＯＭと、マイクロプロセッサ２１４が処理を行う場合にワ−クエリアとして使用するＲＡＭとを含んでいる。
【００２１】
以下、本実施例に係る現在位置算出装置の動作について説明する。
【００２２】
まず、車両の進行方位及び走行距離を算出する処理、算出された進行方位及び距離から車両の現在位置を決定する処理、得られた車両位置および方位を表示する処理の三つの処理について説明する。
【００２３】
図３に、車両の進行方位及び走行距離を算出する処理の流れを説明する。
【００２４】
この処理は、一定周期、たとえば１００ｍＳ毎に起動され実行されるマイクロプロセッサ２１４のルーチンである。
【００２５】
このルーチンでは、最初、Ａ／Ｄ変換器２０９から角速度センサ２０１の出力値を読み込む（ステップ４０１）。この角速度センサ２０１の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、Ａ／Ｄ変換器２１０から方位センサ２０２の出力値を読み込み（ステップ４０２）、この方位センサ２０２の出力値により算出された絶対方位と角速度センサ２０１から出力される方位変化（角速度出力）とを用いて、車両の推定方位を決定する（ステップ４０３）。
【００２６】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサ２０１の誤差が大きいので、一定時間以上車速が低い場合には、方位センサ２０２の出力する方位のみを利用するという方法により行う。
【００２７】
次に、車速センサ２０３の出力するパルス数を、０．１秒毎に、カウンタ２１６で計数して、その計数値を読み込む（ステップ４０４）。この読み込んだ値に、距離係数Ｒを乗算することで、０．１秒間に進んだ距離を求める（ステップ４０５）。この距離係数Ｒの求め方については後述する。
【００２８】
次に、このようにして求められた０．１秒間あたりの走行距離値を、前回得られた値に積算して、車両の走行距離が２０ｍとなったかどうかを調べ（ステップ４０６）、２０ｍに満たない場合（ステップ４０６でＮｏ）、今回の処理を終了して、新たな処理を開始する。
【００２９】
走行距離算出処理の結果、積算された走行距離が一定距離、例えば２０ｍとなった場合（ステップ４０６でＹｅｓ）、その時点での進行方向と走行距離（２０ｍ）とを出力する（ステップ４０７）。ステップ４０７では、さらに、積算距離を初期化して、新たに走行距離の積算を開始する。
【００３０】
次に、算出された進行方位および走行距離に基づいて、車両の現在位置を求める処理について説明する。
【００３１】
図４に、この処理の流れを示す。
【００３２】
本処理は、図３からの進行方位および走行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ２１４のルーチンである。すなわち、本処理は、車両が２０ｍ進む毎に起動される。
【００３３】
さて、この処理では、まず、ステップ４０７で出力された進行方位と走行距離とを読み込む（ステップ５０１）。次に、それらの値に基づいて、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の処理で求められた車両の現在位置に加算して、現在位置（Ａ）を求める（ステップ５０２）。
【００３４】
もし、装置の始動直後など、前回求められた位置がない場合には、別途設定された位置を前回求められた位置として用いて現在位置（Ａ）を求める。
【００３５】
次に、求めた現在位置（Ａ）の周辺の地図を、ＣＤ−ＲＯＭ２０５から、ドライバ２０６およびＤＭＡコントローラ２１３を介して、読み出し、現在位置（Ａ）を中心とする予め設定された距離Ｄ内にある道路データ（線分）を抜き出す（ステップ５０３）。
【００３６】
なお、道路データとしては、たとえば、図６に示すように、２点間を結ぶ複数の線分８１〜８５で近似し、それら線分を、その始点と終点の座標によって表したもの等を用いることができる。たとえば、線分８３は、その始点（ｘ３、ｙ３）と終点（ｘ４、ｙ４）によって表現するようにする。
【００３７】
次に、ステップ５０３で抜き出された線分の中から、その線分の方位が、求められている進行方向と、所定値以内にある線分だけを抜き出す（ステップ５０４）。さらに、抜き出されたすべての線分に対し、現在位置（Ａ）から垂線をおろし、その垂線の長さを求める（ステップ５０５）。
【００３８】
次に、それら垂線の長さを用いて、ステップ５０４で抜き出されたすべての線分に対して、以下に定義されるエラーコスト値を算出する。
【００３９】
エラーコスト＝α×｜進行方向−線分方位｜＋β｜垂線の長さ｜
ここで、α、βは、重み係数である。これら係数の値は、進行方向と道路の方位のずれと現在位置と道路のずれのどちらを、現在位置が、その上にある道路を選択する上で重視するかによって変化させてよい。たとえば、進行方向と方位が近い道路を重視する場合は、αを大きくするようにする。
【００４０】
そして、各線分のエラーコストが算出されたならば、エラーコストが算出された線分のうち、エラーコスト値が最も小さい線分を選び（ステップ５０６）、その選択された線分と垂線との交差する点（線分の垂線のあし）を、修正された現在位置（Ｂ）とする（ステップ５０７）。
【００４１】
ところで、前述したステップ５０３では、現在位置（Ａ）を中心とする予め設定された距離Ｄ内にある道路データ（線分）を抜き出したが、この距離Ｄは、前回行ったステップ５０６で選択した道路のエラーコストの値に基づいて決定する値でもよい。
【００４２】
ここで、エラーコストに基づいて、検索範囲を求める理由は、エラーコストのが大きい場合は、前回求めた現在位置（Ｂ）の精度に対する信憑性が低いと考えられるので、より広い範囲を検索して道路を探す方が、正しい現在位置を求める上で適当であるからである。
【００４３】
次に、得られた車両位置および方位を表示する処理について説明する。
【００４４】
図５に、この処理の流れを示す。
【００４５】
本処理は、１秒毎に起動され実行されるマイクロプロセッサ２１４のルーチンである。
【００４６】
最初、スイッチ２０４が押圧により地図の縮尺の変更を指示されているかを、パラレルＩ／Ｏ２１１の内容を見て判断する（ステップ６０１）。もし、押されていれば（ステップ６０１でＹｅｓ）、それに対応して、所定の縮尺フラグを設定する（ステップ６０２）。
【００４７】
次に、図４の処理で求められた現在位置（Ｂ）を読み出し（ステップ６０３）、ステップ６０２で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ２０７に、例えば、図２に示すような状態で表示する（ステップ６０４）。
【００４８】
そして、地図に重畳して、車両の現在位置（Ｂ）と車両の進行方位を、たとえば、先に示した図２のように、矢印記号“↑”を用いて表示する（ステップ６０５）。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図２のように表示する（ステップ６０６）。
【００４９】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【００５０】
以下、現在位置が誤っていた場合に、本実施例においてどのように、現在位置の表示（図２の矢印）の表示位置が修正されるのかを説明する。
【００５１】
さて、前述したように車両の走行距離は、車速センサ２０３の出力するパルス数に距離係数Ｒを乗じて求める。しかし、タイヤの摩耗等によりタイヤ１回転あたりの車両の進行距離は変化するので、距離係数Ｒは常に走行距離を正しく算出できる正しい値を持つとは限らない。そして、距離係数Ｒによって、正しい走行距離を算出できなかった場合には、実際の位置より進んだ位置か遅れた位置が、現在位置として算出され、表示されることになる。
【００５２】
したがい、表示されている現在位置が正しいものであるか否かを判定し、誤っていた場合には、算出、表示される現在位置が正しい位置になるように修正するする必要がある。
【００５３】
本実施例では、表示されている現在位置が正しいものであるか否かを次のように判定する。
【００５４】
いま、図４のステップ５０８で出力された現在位置（Ｂ）が、図７の道路Ａを進行するものであったとする。一方、たとえば、逐次出力される現在位置（Ｂ）のうちの、走行上カ−ブ開始点ｏより所定距離だけ前のａ点を基準に、車両の進行方位の走行距離から求めた車両の現在位置の軌跡が、図中に破線で示したようにｏ点をオ−バした地点から曲がり始めた軌跡であったとする。
【００５５】
この場合には、距離係数Ｒが真の値より大きかったものと推定することができる。なぜならば、車両がカ−ブに達したと距離係数Ｒを用いて推定された時点では、車両は曲がり始めていないので実際には車両はカ−ブに達していないと考えられるからである。また、距離係数Ｒが真の値より大きい度合いは、車両が実際に曲がり始めた地点とカ−ブ開始点ｏとの距離を表す図中の距離ｄより推定することができる。
【００５６】
また、逆に、車両の進行方位の走行距離から求めた車両の現在位置の軌跡が、交叉点ｏに到る前に曲がり始めた軌跡である場合には、距離係数Ｒが真の値より小さかったものと推定することができる。なぜならば、車両がカ−ブｏに達したと距離係数Ｒを用いて推定される前に、車両は曲がり始めているので実際には車両は既にカ−ブｏに達していると考えられるからである。また、この場合も、距離係数Ｒが真の値より小さい度合いは、車両が実際に曲がり始めた地点とカ−ブｏとの距離を表す図中の距離誤差ｄより推定することができる。
【００５７】
したがい、図中のｄより距離係数Ｒの真値よりのずれの方向と、その度合いを判定することができる。そして、距離係数Ｒの真値よりのずれの方向と、その度合いが分かれば、これより、現在位置として算出されている位置が、実際の位置より遅れた位置なのか、進んだ位置なのかを、その度合いと共に推定することができる。たとえば、距離係数Ｒが真の値より小さければ、算出、表示されている現在位置は実際の位置より遅れた位置であると推定できるし、距離係数Ｒが真の値より大きければ、算出、表示されている現在位置は実際の位置より進んだ位置であると推定できる。また、遅れ進みの程度は、距離係数Ｒの真の値よりのずれ量に比例する傾向を持つと期待することができる。すなわち、算出されている現在位置の遅れ進みの度合いは、距離誤差ｄに応じた値となると期待できる。
【００５８】
そこで、本実施例では、このようにして距離誤差ｄが検出された場合に、距離誤差ｄの値に応じて、表示されている現在位置が実際の位置より進んだ位置であるか遅れた位置であるかをを判定する。また、さらに、補正変数Ｒｓｈを導入し距離係数をＲ＝Ｒ０×（１＋Ｒｓｈ）により定義する。そして、距離誤差ｄが算出されたら、その後３００ｍ間だけ、距離誤差ｄに応じた値をＲｓｈとし、その後は次に距離誤差ｄが算出されるまでＲｓｈ＝０とすることにより、距離誤差ｄが算出された後の３００ｍの間に、算出、表示される現在位置が漸次正しい位置になるようにする。なお、Ｒ０は距離係数の初期値であってもよいし、前述した従来の技術によって補正される距離係数であってもよい。なお、このＲ０は、逐次、距離誤差ｄに応じて補正するようにしてもよい。前述したように、距離誤差ｄより、距離係数Ｒの真値よりのずれの方向と、その度合いを判定することができるからである。
【００５９】
なお、車両方位と道路の方位差から、車両がカ−ブｏに達したと距離係数Ｒを用いて推定されるより前に、車両が曲がり始めたか、車両がカ−ブｏに達したと距離係数Ｒを用いて推定された時点より後に車両が曲がり始めたかを判定するようにしてもよい。また、この場合には、車両方位と道路の方位差の積分値より、距離係数Ｒが真の値よりずれている度合いを求めることができる。したがい、この場合は、車両方位と道路の方位差の積分値より、補正変数Ｒｓｈを求めることができる。
【００６０】
以下、上述したように現在位置の表示位置の実際の位置よりのずれを修正するために、マイクロプロセッサ２１４によって実行される処理の詳細について説明する。
【００６１】
まず、本装置が起動されると、まず、図８に示すように、以降の処理で使用する各種パラメ−タを初期化する。すなわち、距離誤差ｄを０に、補正変数Ｒｓｈを０に、補正実施距離ｌを０にセットする。
【００６２】
これ以降は、図９に示す処理が、車両が２０ｍ走行する度に実行される。
【００６３】
図９の処理では、まず、各センサに２０１、２０２、２０３を用いて算出した走行距離や進行方位をセンサデータとして読み込む（ステップ７０１）。そして次に、ＣＤ−ＲＯＭ２０５からドライバ２０６に読み出された地図データを読み込む（ステップ７０２）。
【００６４】
次に、図７に示した距離誤差ｄを、ステップ７０１で読み込んだセンサデータと、ステップ７０２で読み込んだ地図データを用いて求め（ステップ７０３）、求めた距離誤差ｄが０か否かを判定し（ステップ７０４）、０であれば処理を終了する。一方、ｄが０でなければ、補正変数Ｒｓｈの設定処理を行い（ステップ７０５）処理を終了する。
【００６５】
以下、各ステップの処理の詳細について説明する。
【００６６】
まず、ステップ７０３の距離誤差ｄの算出処理について説明する。
【００６７】
図１０に、この処理の手順を示す。
【００６８】
図示するように、この処理では、まず、補正変数Ｒｓｈが０か否かを判定する（ステップ８０１）。
【００６９】
そして、０でなければ、前回求めたＲｓｈが、まだ有効であるので（前回距離誤差およびＲｓｈを算出してから３００ｍ走行していないので）、新たな補正変数Ｒｓｈを求めるための距離誤差ｄの算出は行わずに処理を終了する。したがい、前回補正変数Ｒｓｈを求めるために用いた距離誤差が、距離誤差ｄとして維持され続けることになる。したがい、この場合には、図９のステップ７０４の判定ステップによってｙｅｓと判定され、ステップ７０５のＲｓｈ設定処理が実行されることになる。
【００７０】
一方、もし０である場合には、まず、車両が右左折したか否かを判定し（ステップ８０２）、距離誤差が存在するか否かを判定し（ステップ８０３）、距離誤差があれば、先に説明した距離誤差ｄを算出する（ステップ８０４）。ただし、このとき、車両がカ−ブを内回りしたときに距離誤差ｄの符号は負とし、車両がカ−ブを外回りしたときに距離誤差ｄの符号は正とする。
【００７１】
一方、車両が右左折していない場合、または、距離誤差が存在しない場合には、そのまま処理を終了する。
【００７２】
次に、図９のステップ７０５の補正変数Ｒｓｈの設定処理について説明する。
【００７３】
図１１に、この補正変数Ｒｓｈの設定処理の処理手順を示す。
【００７４】
この処理では、まず、距離補正変数Ｒｓｈが０か否かを判定する（ステップ１１０１）。そして、０であれば、前回求めた補正変数Ｒｓｈは既にリセットされているので、距離誤差ｄに応じた新たな補正変数Ｒｓｈを求める（ステップ１１０２）。
【００７５】
すなわち、補正変数Ｒｓｈの正負を図１２に示す対応によって定め、補正変数Ｒｓｈの絶対値を距離誤差ｄの絶対値に、予め定めた係数ｊを乗じて求める。
【００７６】
そして、最後に補正実施距離ｌを０に初期化し（ステップ１１０３）処理を終了する。
【００７７】
この後、この補正実施距離ｌは、ステップ１１０３で初期化された後の走行距離を、ステップ１１０３で初期化された後車両が３００ｍ走行するまで表すこことになる。
【００７８】
ステップ１１０１において、一方、距離補正変数Ｒｓｈが０でないと判定されたならば、まだ、前回求めた補正変数Ｒｓｈが有効であるので、補正実施距離ｌが３００ｍ以下であるか否かを判断し（ステップ１４０４）、３００ｍ以下であれば補正実施距離ｌの値を、ステップ１１０３で初期化された後の走行距離を表すように更新する（ステップ１１０５）。
【００７９】
一方、３００ｍを超えている場合には、補正変数Ｒｓｈを０に、補正実施距離ｌを０に、距離誤差ｄを０にリセットする（ステップ１１０６）。
【００８０】
以上説明した処理によって、距離誤差ｄが検出された場合に距離誤差ｄの値に応じて補正変数Ｒｓｈを求め、その後３００ｍ間だけ、求めた補正変数Ｒｓｈによって距離係数Ｒを補正し、その後Ｒｓｈを０にリセットする。また、この３００ｍの間は、新たに補正変数Ｒｓｈが求まってしまうことを防ぐ。
【００８１】
すなわち、図９の処理において、補正変数Ｒｓｈがリセットされているときには、ステップ７０３（図１０）において距離誤差ｄが求められる。そして、求めた距離誤差ｄが０でなければ、ステップ７０５（図１１）で補正変数Ｒｓｈが求められる。しかし、補正変数Ｒｓｈがリセットされていないときには、図９ステップ７０３の距離誤差ｄの算出処理において新たな距離誤差ｄは求められず（図１０ステップ８０１参照）、前回Ｒｓｈを求めるのに用いた距離誤差ｄが維持され続ける。したがい、補正変数Ｒｓｈがリセットされていないときには、図９ステップ７０４でｙｅｓと判定され、ステップ７０５（図１１）において、補正実施距離ｌが３００ｍに達するまでは補正実施距離ｌの更新のみが行われる。そして、３００ｍに達すると同ステップにおいて補正変数Ｒｓｈ、補正実施距離ののリセットが行われる。なお、この補正実施距離ｌの更新や、補正変数Ｒｓｈ、補正実施距離のリセットは、既にＲｓｈがリセットされている場合には行われない。
【００８２】
このように、補正変数Ｒｓｈを用いて距離係数Ｒを補正することにより、前述した各処理（図３〜図５）によって、ディスプレイ２０７に表示される地図上の現在位置の表示が、前述した３００ｍの間に漸次少しづつ正しい位置に近づくようになる。したがい、現在位置表示の不連続な飛びや、逆戻りは生じない。
【００８３】
【発明の効果】
以上のように、本発明によれば、表示装置上に表わされた地図上の現在位置の表示を修正を、利用者が、より自然に感じられるように行うことのできる現在位置算出装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の一実施例に係る現在位置算出装置の構成を示すブロック図である。
【図２】本発明の一実施例において行う地図および現在位置の表示例を示す図である。
【図３】本発明の一実施例において行う進行方位および距離の算出処理の手順を示すフローチャートである。
【図４】本発明の一実施例において行う現在位置の算出処理の手順を示すフローチャートである。
【図５】本発明の一実施例において行う現在位置表示処理の手順を示すフローチャートである。
【図６】本発明の一実施例において用いる地図データにおける道路の表現形式を示す図である。
【図７】本発明の一実施例において用いる距離誤差ｄを示す図である。
【図８】本発明の一実施例において行う距離係数を補正する処理の手順を示す第１のフロチャ−トである。
【図９】本発明の一実施例において行う距離係数を補正する処理の手順を示す第２のフロチャ−トである。
【図１０】本発明の一実施例において行う距離係数を補正する処理の手順を示す第３のフロチャ−トである。
【図１１】本発明の一実施例において行う距離係数を補正する処理の手順を示す第４のフロチャ−トである。
【図１２】本発明の一実施例において用いる距離誤差ｄと補正変数Ｒｓｈの正負の関係を示した図である。
【符号の説明】
２０１    角速度センサ
２０２    方位センサ
２０３    車速センサ
２０４    スイッチ
２０５    ＣＤ−ＲＯＭ
２０６    ＣＤ−ＲＯＭドライバ
２０７    ディスプレイ
２０８    ＤＭＡコントローラ
２１４    マイクロプロセッサ
２１５    メモリ
【図１】
0003679449.tif 000002
【図２】
0003679449.tif 000003
【図３】
0003679449.tif 000004
【図４】
0003679449.tif 000005
【図５】
0003679449.tif 000006
【図６】
0003679449.tif 000007
【図７】
0003679449.tif 000008
【図８】
0003679449.tif 000009
【図９】
0003679449.tif 000010
【図１０】
0003679449.tif 000011
【図１１】
0003679449.tif 000012
【図１２】
0003679449.tif 000013