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