JP3859743B2 - Current position calculation device - Google Patents

Current position calculation device Download PDF

Info

Publication number
JP3859743B2
JP3859743B2 JP13953695A JP13953695A JP3859743B2 JP 3859743 B2 JP3859743 B2 JP 3859743B2 JP 13953695 A JP13953695 A JP 13953695A JP 13953695 A JP13953695 A JP 13953695A JP 3859743 B2 JP3859743 B2 JP 3859743B2
Authority
JP
Japan
Prior art keywords
current position
candidate point
road
vehicle
candidate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP13953695A
Other languages
Japanese (ja)
Other versions
JPH08334347A (en
Inventor
裕幸 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xanavi Informatics Corp
Original Assignee
Xanavi Informatics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xanavi Informatics Corp filed Critical Xanavi Informatics Corp
Priority to JP13953695A priority Critical patent/JP3859743B2/en
Publication of JPH08334347A publication Critical patent/JPH08334347A/en
Application granted granted Critical
Publication of JP3859743B2 publication Critical patent/JP3859743B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、該移動体の走行距離、進行方位などを測定して、これにより、当該移動体の現在位置を算出する現在位置算出装置に関するものである。
【0002】
【従来技術】
従来より、道路上を走行する車両の現在位置を算出する現在位置算出装置において、該車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の走行距離とに基づいて算出されている。
【0003】
また、車両の走行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ1回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【0004】
さらに、このように車両の進行方向と走行距離から求めた現在位置の誤差を補正するために、特開昭63−148115号公報に記載のように、道路に整合するように、求められた車両の現在位置を修正する、いわゆる、マップマッチングの技術が知られており、このマップマッピングの技術により、現在位置算出の精度を高めることができる。
【0005】
【発明が解決しようとする課題】
しかしながら、車両の仮想現在位置に対して所定の範囲内に位置するすべての道路を検索する処理を実行することが必要であり、そのために要する時間は、当該所定の範囲内に位置する道路の密度に依存し、特に、道路が市街地内に存在するものであった場合には、処理時間が著しく長くなる。さらに、その道路上の現在位置候補点の信頼度を算出するために要する処理時間も長くなる。
【0006】
道路を検索するための処理時間および信頼度を算出するための処理時間が、著しく長くなることにより、装置が実行すべき他の処理、たとえば、方位センサのデータの読み取り、車速センサまたは距離センサのデータの読み取り、或いは、車速センサまたは距離センサのデータに基づく車両の走行距離の算出などを適切に行うことができない場合があるという問題点があった。
【0007】
本発明は、マップマッチングの精度を損なうことなく、その処理負荷を軽減することができる現在位置算出装置を提供することを目的とする。
【0008】
【課題を解決する手段】
本発明の目的は、車両に搭載され、該車両の現在位置を算出する現在位置算出装置であって、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
道路データを格納した道路データ格納手段と、
前記進行方位および前記走行距離に基づき得られた相対変位に基づいて、車両の現在位置を仮想現在位置として推定し、該仮想現在位置を前記道路データ格納手段の道路データと照合して、道路上の現在位置の候補点をその信憑性を示す信頼度とともに算出し、該信頼度の最も高い候補点を現在位置と認定するマップマッチング手段とを備え、
該マップマッチング手段は、前記信頼度の最も高い候補点以外の候補点についても次回の仮想現在位置の推定およびそれに伴う候補点の算出を行い、その際、最も信頼度の高い候補点の位置から予め定めた距離以上離れた候補点を削除することを特徴とする現在位置算出装置により達成される。
【0009】
この装置において、前記マップマッチング手段は、前記仮想現在位置の周辺の道路に対する距離、およびその道路方位と車両方位との方位差に基づいて、当該道路上に求まる候補点の信頼度を算出することができる。
【0010】
前記マップマッチング手段は、道路外にある仮想現在位置に対応する道路上の候補点がみつからないとき、当該道路外にある仮想現在位置を候補点とし、該道路外の候補点を削除するか否かを判定する際に用いる前記予め定められた距離を、道路上の候補点に比べて小さく設定することも可能である。
【0011】
【作用】
マップマッチング処理においては、原則的には、車両の現在位置に対して新たに求められた相対走行距離および進行方位に基づいて、仮想現在位置を算出し、この仮想現在位置を付近の道路データと対照して、最も確からしい(信頼度が最も高い)と判断される道路上の位置を求め、これを現在位置と認定する。しかし、誤差による誤認定を防止するために、最も確からしいと判断された現在位置の候補点以外の候補点のデータを直ちに破棄せず、その候補点についてもそれに基づく新たな候補点を算出し、これらの候補点の中から最も確からしい候補点を現在位置と認定する。
【0012】
このように最も確からしい候補点以外の候補点のデータも保持して、これらから新たな候補点を求めると、保持すべきデータが相当数に増大する可能性がある。これは、リアルタイムに処理すべきマップマッチング処理の実行においてプロセッサに過大な処理負荷を課すおそれがある。特に、市街地のように道路が密集している地域では、この問題が顕著となる。本発明では、候補点に関して与えられたその信憑性を示す信頼度の最も高い候補点から他の候補点までの距離を検査し、この距離が所定量以上である場合に当該他の候補点を削除する。
【0013】
これによって、マップマッチング処理の信頼性を維持しながら、その処理における処理対象の数、すなわち処理負荷を軽減し、処理実行に要する時間を短縮することが可能となる。
【0014】
なお、マップマッチング処理において、道路外にある仮想現在位置に対応する道路上の候補点がみつからないとき、当該道路外にある仮想現在位置を候補点(フリー状態の候補点)とする場合がある。このような候補点を基に次に求めた仮想現在位置から得られる候補点は、信頼度の最も高い候補点(表示候補点)からはかなりの距離離れる場合がある。本発明は、このような候補点を削除して、処理負荷を軽減するのに有用である。
【0015】
【実施例】
以下、添付図面に基づいて、本発明の実施例につき詳細に説明を加える。
【0016】
図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。図1に示すように、この現在位置算出装置10は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ11と、地磁気を検出することで車両の進行方位を検出する地磁気センサ12と、車両のトランスミッションの出力軸の回転に比例した時間間隔でパルスを出力する車速センサ13を備えている。
【0017】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ17と、ディスプレイ17に表示する地図の縮尺切り替えの指令をユーザ(運転者)から受け付けるスイッチ14と、デジタル地図データを記憶しておくCD−ROM15と、そのCD−ROM15から地図データを読みだすためのドライバ16とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ18を備えている。本実施例において、上述したディジタル地図データには、複数の線分の端部を示す座標から構成される道路データ、或いは、該道路の道幅を示す道路幅データ、道路が高速道路或いは一般道路であるかを示す高速道路フラグなどが含まれる。
【0018】
コントローラ18は、角速度センサ11の信号(アナログ)をデジタル信号に変換するA/D変換器19と、地磁気センサ12の信号(アナログ)をデジタル信号に変換するA/D変換器20と、車速センサ13から出力されるパルス数を0.1秒毎にカウントするカウンタ26と、スイッチ14の押圧の有無を入力するパラレルI/O21と、CD−ROM15から読みだされた地図データを転送するDMA(Direct Memory Access)コントローラ22と、ディスプレイ17に地図画像を表示する表示プロセッサ23とを有する。
【0019】
また、コントローラ18は、さらに、マイクロプロセッサ24と、メモリ25とを有する。マイクロプロセッサ24は、A/D変換器19を介して得た角速度センサ11の信号、A/D変換器20を介して得た地磁気センサ12の信号、カウンタ26がカウントした車速センサ13の出力パルス数、パラレルI/O21を介して入力するスイッチ14の押圧の有無、DMAコントロ−ラ22を介して得たCD−ROM15からの地図データを受け入れて、それら信号に基づいて処理を行い、車両の現在位置を算出して、それを表示プロセッサ23を介してディスプレイ17に表示させる。この車両位置の表示は、図2に示すように、すでにディスプレイ17に表示している地図上に矢印マ−ク等を重畳して表示することにより行う。これにより、ユーザは、地図上で車両の現在位置を知ることができる。メモリ25は、このような動作を実現するための処理(後述)の内容を規定するプログラムなどを格納したROMと、マイクロプロセッサ24が処理を行う場合にワ−クエリアとして使用するRAMとを含んでいる。
【0020】
以下、このように構成された現在位置算出装置10の動作について説明する。
【0021】
装置10の動作は、全般的に、車両の進行方位及び走行距離を算出する処理と、算出された進行方位及び距離から車両の現在位置を決定する処理と、得られた車両位置および方位を表示する処理との三つの処理に分けることができるため、これらについて順次説明する。
【0022】
図3に、車両の進行方位及び走行距離を算出する処理の流れを説明する。
【0023】
この処理は、一定周期、たとえば100mS毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0024】
このルーチンでは、最初、A/D変換器19から角速度センサ11の出力値を読み込む(ステップ301)。この角速度センサ11の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、A/D変換器20から地磁気センサ12の出力値を読み込み(ステップ302)、この地磁気センサ12の出力値により算出された絶対方位と角速度センサ11から出力される方位変化(角速度出力)とを用いて、車両の推定方位を決定する(ステップ303)。
【0025】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサの誤差が大きいので、一定時間以上車速が低い場合には、地磁気センサ方位のみを利用するという方法により行う。
【0026】
次に、車速センサ13の出力するパルス数を、0.1秒毎に、カウンタ26で計数して、その計数値を読み込む(ステップ304)。この読み込んだ値に、距離係数を乗算することで、0.1秒間に進んだ距離を求める(ステップ305)。
【0027】
次に、このようにして求められた0.1秒間あたりの走行距離値を、前回得られた値に積算して、車両の走行距離が20mとなったかどうかを調べ(ステップ306)、20mに満たない場合(ステップ306でノー(No))、今回の処理を終了して、新たな処理を開始する。
【0028】
走行距離算出処理の結果、積算された走行距離が一定距離、例えば20mとなった場合(ステップ306でイエス(Yes))、その時点での進行方向と走行距離(20m)とを出力する(ステップ307)。ステップ307では、さらに、積算距離を初期化して、新たに走行距離の積算を開始する。
【0029】
次に、算出された進行方位および走行距離に基づいて、車両の仮想現在位置を算出し、算出された仮想現在位置に基づき、車両の候補点を求める処理について説明する。
【0030】
図4に、この処理の流れを示す。
【0031】
本処理は、図3からの進行方位および走行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ24のルーチンである。すなわち、本処理は、車両が20m進む毎に起動される。
【0032】
さて、この処理では、まず、先のステップ307で出力されたセンサデータ、すなわち進行方位と走行距離とを読み込む(ステップ41)。
【0033】
ついで、マップマッチング処理を行う(ステップ42)。これは、後に詳述するように、候補点の信頼度の算出処理を含む。
【0034】
次に、このマップマッチング処理で得られた最も信頼度の高い候補点である表示候補点の位置を変数X0,Y0に設定する(ステップ43)。
【0035】
そこで、表示候補点以外の候補点を1つ取り出し、その位置を変数X,Yに設定する(ステップ44)。ついで、位置(X0,Y0)と位置(X,Y)の間の直線距離を求め、この値を距離Lに設定する(ステップ45)。この距離Lを、予め定めた閾値Lthと比較する(ステップ46)。この距離Lは、例えば、数kmから数百Kmの範囲の値である。これを適用する候補点が後述するマッチング状態かフリー状態かに応じて、このLの値を切り替えるようにしてもよい。その場合、フリー状態候補点の方が削除されやすくなるように、フリー状態候補点に対するL値をマッチング状態の候補点に対するL値に比べて低くする。これは、フリー状態候補点の信頼度が低いことを考慮するものである。あるいは、フリー状態か否かに関わらず、その候補点の信頼度に応じて(計算式あるいは変換テーブル等を用いて)、別々の閾値を用いるようにすることも可能である。
【0036】
ステップ46において、距離Lが閾値Lth以下であれば、そのままステップ48へ移行し、Lthより大きければ、ステップ47へ進む。ステップ47では、当該候補(および後述する各種情報)をメモリから削除する。この削除によって、次のマップマッチング処理においてこの候補点から新たな候補点を求める処理が省略され、処理負担を軽減することができる。
【0037】
表示候補点以外のすべての候補点について、ステップ44以降の処理を繰り返して、本処理を終了する(ステップ48)。
【0038】
図5に、マップマッチング処理の詳細を示す。
【0039】
マップマッチング処理においては、まず、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の車両の候補点を求める処理で得られた車両の候補点の位置に加算して、現在車両が存在すると推定される位置である仮想現在位置(A)を求める(ステップ421)。この候補点の詳細については後述する。もし、装置の始動直後など、前回の車両の候補点を求める処理で得られた候補点が存在しない場合には、別途設定された位置を、前回得られた候補点の位置として用いて仮想現在位置(A)を求める。
【0040】
次に、得られた仮想現在位置(A)の周辺の地図の道路データを、CD−ROM15から、ドライバ16およびDMAコントローラ23を介して読み出す(ステップ422)。このとき、仮想現在位置(A)を得るために用いた候補点が道路上の候補点であれば、その道路を表す線分またはこれにつながる線分であって当該仮想現在位置(A)から距離検索範囲D内の線分を選択する。道路上の候補点でない候補点(フリー状態の候補点)の場合には、当該仮想現在位置(A)から距離検索範囲D内の線分を選択する。この際、当該仮想現在位置を得るために用いた候補点に関する信頼度(前回補正されたもの)に基づいて、道路の検索範囲Dを可変としてもよい。すなわち、信頼度の高い候補点から得た仮想現在位置に関しては、より狭い範囲内に含まれる線分を選択し、逆に信頼度の低い候補点から得た仮想現在位置に関しては、より広い範囲に含まれる線分を選択する。信頼度に基づいて、検索範囲を可変とする理由は、信頼度が小さい場合には、前回求めた現在位置の精度に対する信憑性が低いと考えられるので、より広い範囲を検索して道路を探す方が、正しい現在位置を求める上で適当であるからである。
【0041】
なお、前述したように、本実施例においては、道路データとして、図6に示すように、2点間を結ぶ複数の線分51ないし55で近似し、それら線分を、その始点と終点の座標によって表したものなどを用いている。たとえば、線分53は、その始点(x3、y3)と終点(x4、y4)によって表現される。
【0042】
次に、ステップ422で取り出された線分の中から、その線分の方位が、求められている進行方向と、所定値以内にある線分だけを選択し(ステップ423)、さらに、取り出されたn個すべての線分に対して、仮想現在位置(A)から垂線をおろし、その垂線L(n)の長さを求める(ステップ424)。
【0043】
次に、これら垂線の長さに基づき、ステップ423で選択されたすべての線分に対して、以下の式によりに定義されるエラーコスト値ec(n)を算出する。
【0044】
ec(n)=α×|θcar−θ(n)|+β|L(n)|
ここに、θcarは仮想現在位置(A)における車両方位、θ(n)は、線分の方位、L(n)は、仮想現在位置(A)から線分までの距離、すなわち垂線の長さ、αおよびβは、重み係数である。これら重み係数の値は、進行方向と道路の方位のずれと現在位置と道路のずれのどちらを、現在位置の属する道路を選択する上で重視するかによって変化させてよい。たとえば、進行方向と方位が近い道路を重視する場合は、αを大きくするようにする。
【0045】
ここに、候補点につき説明を加える。装置の始動直後など、初期的な状態においては、仮想現在位置(A)は、ユーザ(運転者)がスイッチ14を用いて所定の情報を入力することなどにより、一意的に定まり、かつ、これは道路に対応する線分上に位置する。しかしながら、車両が走行した後には、ジャイロなどのセンサの誤差などにより、仮想現在位置(A)が、道路に対応する線分に存在しなくなる場合がある。その結果、たとえば、図7に示すように、道路が分岐している場合、すなわち、道路に対応する線分61の節点68から、二つの線分64および65があらわれる場合に、いずれの線分に対応する道路上に車両が存在するかを、明確にすることができない場合が多い。
【0046】
したがって、このような場合に、本実施例においては、考えられ得る二つの線分上に存在する所定の点を候補点として設定し、これらの現在位置、エラーコスト、後述する累算エラーコストなどを、それぞれ、メモリ25のRAMの所定の領域に記憶するように構成されている。なお、説明を容易にするため、以下の説明においては、特に複数の候補点であることを明示しない限り、単一の候補点から、新たな一以上の候補点を生成することとする。
【0047】
ついで、算出されたエラーコストec(n)と、前回の処理で得られた候補点に関連する累算エラーコストesとにしたがって、下記の式により定義される、今回の処理における累算エラーコストes(n)を算出する(ステップ425)。
【0048】
es(n)=(1−k)×es+k×ec(n)
ここに、kは、0より大きく1より小さな重み係数である。この累算エラーコストes(n)は、前回以前の処理において算出されたエラーコストを、今回の処理において算出されるエラーコストにどのくらい反映させるかを表わしている。
【0049】
さらに、算出された累算エラーコストes(n)に基づき、下記の式に定義される信頼度trst(n)を算出する(ステップ452)。
【0050】
trst(n)=100/(1+es(n))
この式から明らかなように、累算エラーコストec(n)が大きくなるのにしたがって、信頼度trst(n)は減少し、0(ゼロ)に近づく。その一方、これが小さくなるのにしたがって、信頼度trst(n)は増大し、その値は、100に近づく。
【0051】
このような処理をすることにより、ある候補点に対する現在位置Aより所定の範囲内に存在するn個の線分に関連する信頼度trst(n)が求められる。信頼度は、このように、選択された各線分に対して算出されるものであるが、本明細書中では、便宜上、その線分上に求められる候補点に対する信頼度としても扱う。
【0052】
ついで、ある候補点から、対応する線分に沿って、車両の進行した距離Rに対応する長さだけ進められた点を、新たな候補点C(n)とする(ステップ426)。したがって、ある候補点の位置する線分或いはこれに接続された線分であって、その方位と車両方位との差が所定値以下であるような線分の本数がnである場合には、n個の新たな候補点C(n)が生成されることになる。後述するフリー状態の候補点が存在する場合、候補点の位置する線分が存在しないので、この候補点に対する次の候補点の算出時(ステップ422〜426)には対応する仮想現在位置から所定範囲D内のすべての線分を取り出すので、候補点の数が多くなりうる。
【0053】
最後に、これらの候補点から、最も信頼度の高い候補点を表示候補点として選出し、この表示データ候補点データを出力する(ステップ427)。より具体的には、最も信頼度の値の大きな候補点Cを、表示候補点CD、すなわち、ディスプレイ17上に表示するための候補点として、その位置、累算エラーコスト、信頼度、後述するマッチング状態であるかフリー状態であるかを示す状態フラグなどを、メモリ25のRAMの所定の領域に記憶するとともに、表示候補点以外の他の候補点の位置、累算エラーコスト、信頼度、状態フラグなども、RAMの所定の領域に記憶する。
【0054】
ここで、具体的な道路を例に挙げて、マップマッチングの作用を考える。たとえば、図7に示すように、線分61上に存在したある候補点62に対して、現在位置Aが、点63に示す位置に表わされるとする。このような場合に、現在位置Aから、候補点62が位置する線分61に接続された線分であって、その方位と車両方位との差が所定値以下であるような線分64、65を取り出し、現在位置Aから、線分64、65までの距離L(1)、L(2)を算出するともに、算出された距離、線分64、65の角度θ(1)、θ(2)および車両方位θcarなどに基づき、関連するエラーコスト、累算エラーコスト、信頼度を算出する。さらに、図3のステップ307で求められた車両の走行距離Rに基づき、ある候補点62から、線分61および64、或いは、線分61および65に沿って、走行距離Rに対応する長さだけ進められた位置を算出し、この位置に対応する点を、それぞれ候補点66、67とする。
【0055】
さらに、図8に示すように、線分64上の候補点66に対して、新たな現在位置Aが、点71に示す位置に表わされ、その一方、線分65上の候補点67に対して、新たな現在位置A’が、点72に示す位置に表わされるとする。この場合には、現在位置Aから、線分64に接続された線分であって、その方位と車両方位との差が所定値以下であるような線分73、74を取り出すとともに、新たな現在位置A’から、線分65に接続された線分であって、その方位と車両方位との差が所定値以下であるような線分75を取り出す。ついで、現在位置Aから、線分73、74までのそれぞれの距離L1(1)およびL1(2)を算出するともに、現在位置A’から、線分75までの距離L2(1)を算出する。さらに、現在位置Aに関連して算出された距離、線分73、74の角度θ1(1)およびθ1(2)ならびに車両方位θcarなどに基づき、関連するエラーコスト、累算エラーコストおよび信頼度を算出するとともに、現在位置A’に関連して算出された距離、線分75の角度θ2(1)および車両方位θcarなどに基づき、関連するエラーコスト、累算エラーコストおよび信頼度を算出する。
【0056】
さらに、図3のステップ307で求められた車両の走行距離Rに基づき、候補点66から、線分64および73、或いは、線分64および74に沿って、若しくは、候補点67から、線分65および75に沿って、車両の走行距離Rに対応する長さだけ進められた位置を算出し、この位置に対応する点を、それぞれ新たな候補点とする。図9は、このように新たに求められた候補点81ないし83を示している。
【0057】
ここで、候補点のマッチング状態およびフリー状態について説明する。ある線分上に位置する候補点に対する現在位置Aから、該候補点が位置する線分或いは、これに接続された線分であって、その方位と車両の進行方位との差が所定値以下であるような線分が存在しない場合が考えられる。この場合には、現在位置A自体を、当該候補点から算出された次の候補点として取り扱う。本実施例においては、このようにして得られた候補点を、フリー状態の候補点と称する。これに対して、それ以外の状態、すなわち、ある線分上に位置する候補点に対する現在位置Aから、該候補点が位置する線分或いはこれに接続された線分であって、その方位と車両の進行方位との差が所定値以下であるような線分が存在し、その結果、特定の線分上に次の候補点が存在し得る状態をマッチング状態と称する。
【0058】
また、候補点が位置する線分或いはこれに接続された線分であって、その方位と車両の進行方位との差が所定値以下であるような線分が存在しない場合に、ステップ425で算出すべきエラーコストec(n)には、マッチング状態である場合に得られるエラーコストの値よりも大きな一定の値が与えられる。
【0059】
なお、このフリー状態候補点を基に新たな候補点を求める際には、フリー状態の候補点に対する仮想現在位置そのものを新たなフリー状態の候補点とするとともに、その仮想現在位置から所定の範囲D内に、その方位と車両の進行方位との差が所定値以下の線分が存在する場合には、仮想現在位置から当該線分におろされた垂線とこの線分との交点をも、新たな候補点とする。
【0060】
以上の説明から容易に予測されるように、マップマッチング処理を実行するための処理時間は、道路データに対応する道路の密度に依存し、特に、読み出された地図データに対応する地図が、市街地であった場合など、道路の密度が大きい場合などでは、この処理時間は、非常に大きくなる。したがって、本実施例においては、図4で前述したように、表示候補点からの距離が所定量以上の候補点を削除することにより、処理負担を軽減し、処理時間の増大を防止することができる。表示候補点から極端に離れた候補点が真の現在位置である可能性は低いので、これによってマップマッチングの精度が低下することはないと考えられる。
【0061】
図5のステップ427で得られた表示候補点は、図10に示すフローチャートに基づく処理によりディスプレイ17の画面上に表示される。
【0062】
本処理は、1秒毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0063】
最初、スイッチ14が押圧により地図の縮尺の変更を指示されているかを、パラレルI/O21の内容を見て判断する(ステップ1301)。もし、押されていれば(ステップ1301でYes)、それに対応して、所定の縮尺フラグを設定する(ステップ1302)。
【0064】
次に、表示候補点の位置および方位を示すデータを、メモリ25のRAMの所定の領域から読み出し(ステップ1303)、ステップ1302で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ17に、例えば、図2に示すような状態で表示する(ステップ1304)。
【0065】
そして、地図に重畳して、表示候補点の位置およびその方位を、たとえば、先に示した図2のように、矢印記号“↑”を用いて表示する(ステップ1305)。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図2のように表示する(ステップ1306)。
【0066】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【0067】
本実施例によれば、表示候補点に対する各候補点の距離に基づいて、候補点を削除するようにしたので、
マップマッチング処理の信頼性を維持しながら、多大な処理時間を要する処理を減じることができ、したがって、現在位置の算出に要する処理時間を減少させることが可能となる。
【0068】
本明細書において、手段とは、必ずしも物理的手段を意味するものではなく、各手段の機能が、ソフトウエアによって実現される場合も包含する。また、一つの手段の機能が二以上の物理的手段により実現されても、二以上の手段の機能が一つの物理的手段により実現されてもよい。
【0069】
【発明の効果】
本発明によれば、マップマッチングの精度を損なうことなく、その処理負荷を軽減することができる現在位置算出装置を提供することが可能となる。
【図面の簡単な説明】
【図1】 図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。
【図2】 図2は、本実施例にかかる地図および現在位置の表示例を示す図である。
【図3】 図3は、車両の進行方位および走行距離を算出する処理を示すフローチャートである。
【図4】 図4は、本実施例にかかる所定走行距離毎に実行されるメイン処理を示すフローチャートである。
【図5】 図5は、図4に示した1ステップ(マップマッチング処理)の詳細処理を示すフローチャートである。
【図6】 図6は、本実施例にかかる道路データの一例を説明するための図である。
【図7】 図7は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図8】 図8は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図9】 図9は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図10】 図10は、本実施例にかかる現在位置表示処理を示すフローチャートである。
【符号の説明】
10 現在位置算出装置
11 角速度センサ
12 地磁気センサ
13 車速センサ
14 スイッチ
15 CD−ROM
16 CD−ROM読み取りドライバ
17 ディスプレイ
18 コントローラ
[0001]
[Industrial application fields]
The present invention relates to a current position calculation device that is mounted on a moving body such as a vehicle and measures a travel distance, a traveling direction, and the like of the moving body, thereby calculating a current position of the moving body.
[0002]
[Prior art]
Conventionally, in a current position calculation device that calculates a current position of a vehicle traveling on a road, the current position of the vehicle is measured by a traveling direction of a vehicle measured by an orientation sensor such as a gyro and a vehicle speed sensor or a distance sensor. It is calculated based on the travel distance of the vehicle.
[0003]
The vehicle travel distance is generally measured by measuring the output shaft of the transmission or the rotation speed of the tire, and multiplying the rotation speed by the distance coefficient that is the distance the vehicle travels per rotation of the tire. It is demanded by.
[0004]
Further, in order to correct the error of the current position obtained from the traveling direction and the travel distance of the vehicle in this way, as described in JP-A-63-148115, the vehicle obtained so as to be matched with the road A so-called map matching technique for correcting the current position of the current position is known, and the accuracy of the current position calculation can be improved by this map mapping technique.
[0005]
[Problems to be solved by the invention]
However, it is necessary to execute a process for searching all roads located within a predetermined range with respect to the virtual current position of the vehicle, and the time required for this is the density of roads located within the predetermined range. In particular, when the road exists in an urban area, the processing time is remarkably increased. Furthermore, the processing time required to calculate the reliability of the current position candidate point on the road also becomes longer.
[0006]
The processing time for searching the road and the processing time for calculating the reliability are significantly increased, so that other processing to be performed by the device, for example, reading of direction sensor data, speed sensor or distance sensor There has been a problem in that it may not be possible to appropriately read data, or calculate the travel distance of a vehicle based on data from a vehicle speed sensor or a distance sensor.
[0007]
An object of the present invention is to provide a current position calculation device that can reduce the processing load without impairing the accuracy of map matching.
[0008]
[Means for solving the problems]
An object of the present invention is a current position calculation device that is mounted on a vehicle and calculates the current position of the vehicle,
Direction detection means for detecting the traveling direction of the vehicle;
A distance calculating means for calculating a travel distance of the vehicle;
Road data storage means for storing road data;
Based on the relative displacement obtained based on the travel direction and the travel distance, the current position of the vehicle is estimated as a virtual current position, the virtual current position is compared with the road data in the road data storage means, And a map matching means for calculating a candidate point of the current position together with a reliability indicating its credibility, and certifying the candidate point with the highest reliability as the current position,
The map matching means also performs estimation of the next virtual current position for candidate points other than the candidate point with the highest reliability and calculation of the candidate point associated therewith, from the position of the candidate point with the highest reliability. This is achieved by a current position calculation device that deletes candidate points that are separated by a predetermined distance or more.
[0009]
In this apparatus, the map matching means calculates the reliability of the candidate point obtained on the road based on the distance to the road around the virtual current position and the direction difference between the road direction and the vehicle direction. Can do.
[0010]
Whether or not the map matching means deletes a candidate point outside the road by using the virtual current position outside the road as a candidate point when a candidate point on the road corresponding to the virtual current position outside the road is not found It is also possible to set the predetermined distance used when determining whether or not to be smaller than a candidate point on the road.
[0011]
[Action]
In the map matching process, in principle, a virtual current position is calculated based on the newly calculated relative travel distance and traveling direction with respect to the current position of the vehicle, and the virtual current position is calculated as the road data in the vicinity. In contrast, a position on the road that is determined to be the most likely (highest reliability) is obtained, and this is recognized as the current position. However, in order to prevent erroneous recognition due to errors, the candidate point data other than the candidate point at the current position determined to be the most probable are not immediately discarded, and a new candidate point based on that candidate point is also calculated. Among these candidate points, the most likely candidate point is recognized as the current position.
[0012]
If data of candidate points other than the most probable candidate points is also held and new candidate points are obtained from these, there is a possibility that the data to be held increases considerably. This may impose an excessive processing load on the processor in executing the map matching process to be processed in real time. This problem is particularly noticeable in areas where roads are dense, such as urban areas. In the present invention, the distance from the candidate point having the highest reliability indicating the credibility given to the candidate point to the other candidate point is inspected, and when the distance is a predetermined amount or more, the other candidate point is determined. delete.
[0013]
As a result, while maintaining the reliability of the map matching process, it is possible to reduce the number of processing targets in the process, that is, the processing load, and reduce the time required for the process execution.
[0014]
In addition, in the map matching process, when a candidate point on the road corresponding to the virtual current position outside the road is not found, the virtual current position outside the road may be used as a candidate point (a candidate point in a free state). . The candidate point obtained from the virtual current position obtained next based on such a candidate point may be far away from the candidate point (display candidate point) having the highest reliability. The present invention is useful for reducing the processing load by deleting such candidate points.
[0015]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0016]
FIG. 1 is a block diagram showing a configuration of a current position calculation apparatus according to an embodiment of the present invention. As shown in FIG. 1, the current position calculation device 10 includes an angular velocity sensor 11 that detects a change in traveling azimuth by detecting a yaw rate of the vehicle, and a geomagnetic sensor 12 that detects a traveling azimuth of the vehicle by detecting geomagnetism. And a vehicle speed sensor 13 that outputs pulses at time intervals proportional to the rotation of the output shaft of the vehicle transmission.
[0017]
In addition, a display 17 that displays a map around the current position, a mark indicating the current position, and the like, a switch 14 that receives a command to switch the scale of the map displayed on the display 17 from a user (driver), and digital map data are stored. A CD-ROM 15 to be stored, and a driver 16 for reading map data from the CD-ROM 15 are provided. Moreover, the controller 18 which controls operation | movement of each peripheral apparatus shown above is provided. In the present embodiment, the digital map data described above includes road data composed of coordinates indicating the end portions of a plurality of line segments, road width data indicating the road width of the road, and roads that are expressways or general roads. An expressway flag indicating whether or not there is included.
[0018]
The controller 18 includes an A / D converter 19 that converts a signal (analog) of the angular velocity sensor 11 into a digital signal, an A / D converter 20 that converts a signal (analog) of the geomagnetic sensor 12 into a digital signal, and a vehicle speed sensor. A counter 26 that counts the number of pulses output every 13 seconds, a parallel I / O 21 that inputs whether or not the switch 14 is pressed, and a DMA that transfers map data read from the CD-ROM 15 ( (Direct Memory Access) controller 22 and display processor 23 for displaying a map image on display 17.
[0019]
The controller 18 further includes a microprocessor 24 and a memory 25. The microprocessor 24 outputs a signal from the angular velocity sensor 11 obtained through the A / D converter 19, a signal from the geomagnetic sensor 12 obtained through the A / D converter 20, and an output pulse from the vehicle speed sensor 13 counted by the counter 26. Number, whether or not the switch 14 is input via the parallel I / O 21, the map data from the CD-ROM 15 obtained via the DMA controller 22 is received, and processing based on these signals is performed. The current position is calculated and displayed on the display 17 via the display processor 23. As shown in FIG. 2, the vehicle position is displayed by superimposing an arrow mark or the like on a map already displayed on the display 17. Thereby, the user can know the current position of the vehicle on the map. The memory 25 includes a ROM that stores a program that defines the contents of processing (to be described later) for realizing such an operation, and a RAM that is used as a work area when the microprocessor 24 performs processing. Yes.
[0020]
Hereinafter, the operation of the current position calculation device 10 configured as described above will be described.
[0021]
The operation of the apparatus 10 generally includes processing for calculating the traveling direction and distance of the vehicle, processing for determining the current position of the vehicle from the calculated traveling direction and distance, and displaying the obtained vehicle position and direction. Since these can be divided into three processes, i.e., the process to be performed, these will be described in turn.
[0022]
FIG. 3 illustrates the flow of processing for calculating the traveling direction and travel distance of the vehicle.
[0023]
This process is a routine of the microprocessor 24 that is activated and executed at a constant cycle, for example, every 100 ms.
[0024]
In this routine, first, the output value of the angular velocity sensor 11 is read from the A / D converter 19 (step 301). Since an azimuth change is output as the output value of the angular velocity sensor 11, only a relative value in the traveling direction of the vehicle can be detected. Therefore, next, the output value of the geomagnetic sensor 12 is read from the A / D converter 20 (step 302), and the absolute azimuth calculated from the output value of the geomagnetic sensor 12 and the azimuth change output from the angular velocity sensor 11 ( The estimated azimuth of the vehicle is determined using (angular velocity output) (step 303).
[0025]
For example, when the vehicle speed is low for a long time, the angular velocity sensor has a large error. Therefore, when the vehicle speed is low for a certain time or more, the direction is determined by using only the geomagnetic sensor direction.
[0026]
Next, the number of pulses output from the vehicle speed sensor 13 is counted by the counter 26 every 0.1 second, and the counted value is read (step 304). By multiplying this read value by a distance coefficient, a distance advanced in 0.1 seconds is obtained (step 305).
[0027]
Next, the travel distance value per 0.1 second thus determined is added to the previously obtained value to check whether the travel distance of the vehicle has reached 20 m (step 306). If not satisfied (No in step 306), the current process is terminated and a new process is started.
[0028]
As a result of the travel distance calculation process, when the accumulated travel distance becomes a certain distance, for example, 20 m (Yes in Step 306), the traveling direction and the travel distance (20 m) at that time are output (Step S306). 307). In step 307, the accumulated distance is further initialized, and accumulation of the travel distance is newly started.
[0029]
Next, a process of calculating a virtual current position of the vehicle based on the calculated traveling direction and travel distance and obtaining a candidate point of the vehicle based on the calculated virtual current position will be described.
[0030]
FIG. 4 shows the flow of this process.
[0031]
This process is a routine of the microprocessor 24 that is activated and executed in response to the output of the traveling direction and travel distance from FIG. That is, this process is started every time the vehicle travels 20 meters.
[0032]
In this process, first, the sensor data output in the previous step 307, that is, the traveling direction and the travel distance are read (step 41).
[0033]
Next, map matching processing is performed (step 42). This includes a calculation process of the reliability of the candidate points, as will be described in detail later.
[0034]
Next, the position of the display candidate point which is the candidate point with the highest reliability obtained by this map matching process is set to variables X0 and Y0 (step 43).
[0035]
Therefore, one candidate point other than the display candidate points is taken out, and its position is set to variables X and Y (step 44). Next, a linear distance between the position (X0, Y0) and the position (X, Y) is obtained, and this value is set as the distance L (step 45). This distance L is compared with a predetermined threshold value Lth (step 46). This distance L is a value in the range of several kilometers to several hundred kilometers, for example. The value of L may be switched depending on whether a candidate point to which this is applied is a matching state or a free state described later. In this case, the L value for the free state candidate point is set lower than the L value for the candidate point in the matching state so that the free state candidate point is more easily deleted. This is because the reliability of the free state candidate points is low. Alternatively, it is possible to use different threshold values depending on the reliability of the candidate points (using a calculation formula or a conversion table) regardless of whether or not the free state is set.
[0036]
In step 46, if the distance L is less than or equal to the threshold value Lth, the process proceeds to step 48, and if greater than Lth, the process proceeds to step 47. In step 47, the candidate (and various information described later) is deleted from the memory. By this deletion, a process for obtaining a new candidate point from this candidate point in the next map matching process is omitted, and the processing load can be reduced.
[0037]
For all candidate points other than the display candidate points, the processing from step 44 is repeated, and this processing is terminated (step 48).
[0038]
FIG. 5 shows details of the map matching process.
[0039]
In the map matching process, first, the movement amount of the vehicle is obtained separately in the latitude and longitude directions. Furthermore, the movement amount in each direction is added to the position of the candidate point of the vehicle obtained in the process for obtaining the candidate point of the previous vehicle, and the virtual current position (the position where the current vehicle is estimated to exist) A) is obtained (step 421). Details of the candidate points will be described later. If there is no candidate point obtained by the process of obtaining the previous candidate point of the vehicle, such as immediately after the start of the device, the virtual current position is set using the position set separately as the position of the previously obtained candidate point. The position (A) is obtained.
[0040]
Next, the road data of the map around the obtained virtual current position (A) is read from the CD-ROM 15 via the driver 16 and the DMA controller 23 (step 422). At this time, if the candidate point used to obtain the virtual current position (A) is a candidate point on a road, it is a line segment representing the road or a line segment connected thereto, and from the virtual current position (A). A line segment within the distance search range D is selected. In the case of a candidate point that is not a candidate point on the road (a candidate point in a free state), a line segment within the distance search range D is selected from the virtual current position (A). At this time, the road search range D may be variable based on the reliability (corrected last time) regarding the candidate points used to obtain the virtual current position. That is, for a virtual current position obtained from a candidate point with high reliability, a line segment included in a narrower range is selected, and conversely, for a virtual current position obtained from a candidate point with low reliability, a wider range is selected. Select the line segment included in. The reason for making the search range variable based on the reliability is that if the reliability is low, the credibility of the accuracy of the current position obtained last time is considered to be low, so search the road by searching a wider range. This is because it is more suitable for obtaining the correct current position.
[0041]
As described above, in this embodiment, the road data is approximated by a plurality of line segments 51 to 55 connecting two points as shown in FIG. 6, and these line segments are represented by the start point and the end point. The one represented by coordinates is used. For example, the line segment 53 is represented by its start point (x3, y3) and end point (x4, y4).
[0042]
Next, from the line segments extracted in step 422, select only the line segment whose direction is within the predetermined traveling direction and the predetermined direction (step 423), and further extract the line segment. For all the n line segments, a perpendicular line is taken from the virtual current position (A), and the length of the perpendicular line L (n) is obtained (step 424).
[0043]
Next, an error cost value ec (n) defined by the following equation is calculated for all the line segments selected in step 423 based on the lengths of these perpendicular lines.
[0044]
ec (n) = α × | θcar−θ (n) | + β | L (n) |
Here, θcar is the vehicle direction at the virtual current position (A), θ (n) is the direction of the line segment, and L (n) is the distance from the virtual current position (A) to the line segment, that is, the length of the perpendicular line. , Α and β are weighting factors. The values of these weighting factors may be changed depending on whether the shift in the traveling direction or the direction of the road or the shift in the current position or the road is emphasized in selecting the road to which the current position belongs. For example, when importance is attached to a road whose direction is close to the traveling direction, α is increased.
[0045]
Here, explanation is added for each candidate point. In an initial state such as immediately after the start of the device, the virtual current position (A) is uniquely determined by the user (driver) inputting predetermined information using the switch 14 and the like. Is located on the line corresponding to the road. However, after the vehicle travels, the virtual current position (A) may not exist in the line segment corresponding to the road due to an error of a sensor such as a gyro. As a result, for example, as shown in FIG. 7, when the road is branched, that is, when two line segments 64 and 65 appear from the node 68 of the line segment 61 corresponding to the road, In many cases, it cannot be clarified whether a vehicle is present on the road corresponding to.
[0046]
Therefore, in such a case, in this embodiment, predetermined points existing on two possible line segments are set as candidate points, their current position, error cost, accumulated error cost described later, etc. Are respectively stored in a predetermined area of the RAM of the memory 25. For ease of explanation, in the following explanation, one or more new candidate points are generated from a single candidate point unless it is clearly indicated that there are a plurality of candidate points.
[0047]
Next, the accumulated error cost in the current process defined by the following equation according to the calculated error cost ec (n) and the accumulated error cost es related to the candidate point obtained in the previous process. es (n) is calculated (step 425).
[0048]
es (n) = (1-k) × es + k × ec (n)
Here, k is a weight coefficient larger than 0 and smaller than 1. This accumulated error cost es (n) represents how much the error cost calculated in the previous process is reflected in the error cost calculated in the current process.
[0049]
Further, based on the calculated accumulated error cost es (n), a reliability trst (n) defined by the following equation is calculated (step 452).
[0050]
trst (n) = 100 / (1 + es (n))
As is clear from this equation, as the accumulated error cost ec (n) increases, the reliability trst (n) decreases and approaches 0 (zero). On the other hand, as it decreases, the reliability trst (n) increases and its value approaches 100.
[0051]
By performing such processing, the reliability trst (n) related to n line segments existing within a predetermined range from the current position A with respect to a certain candidate point is obtained. The reliability is calculated for each selected line segment as described above, but in the present specification, for the sake of convenience, it is also treated as the reliability for a candidate point obtained on the line segment.
[0052]
Next, a point advanced from a certain candidate point by a length corresponding to the distance R traveled by the vehicle along the corresponding line segment is set as a new candidate point C (n) (step 426). Therefore, when the number of line segments in which a candidate point is located or connected to the line segment and the difference between the direction and the vehicle direction is equal to or less than a predetermined value is n, n new candidate points C (n) will be generated. When there is a candidate point in a free state, which will be described later, there is no line segment where the candidate point is located, so when calculating the next candidate point for this candidate point (steps 422 to 426), a predetermined virtual current position is used. Since all the line segments in the range D are extracted, the number of candidate points can be increased.
[0053]
Finally, the candidate point with the highest reliability is selected from these candidate points as the display candidate point, and this display data candidate point data is output (step 427). More specifically, the candidate point C having the highest reliability value is set as a display candidate point CD, that is, a candidate point to be displayed on the display 17, its position, accumulated error cost, reliability, which will be described later. A state flag indicating whether the state is a matching state or a free state is stored in a predetermined area of the RAM of the memory 25, and the positions of candidate points other than the display candidate points, the accumulated error cost, the reliability, The status flag and the like are also stored in a predetermined area of the RAM.
[0054]
Here, the action of map matching is considered by taking a specific road as an example. For example, as shown in FIG. 7, it is assumed that the current position A is represented at a position indicated by a point 63 with respect to a certain candidate point 62 existing on the line segment 61. In such a case, a line segment 64 connected from the current position A to the line segment 61 where the candidate point 62 is located, and the difference between the direction and the vehicle direction is equal to or less than a predetermined value, 65, the distances L (1) and L (2) from the current position A to the line segments 64 and 65 are calculated, and the calculated distances and the angles θ (1) and θ ( 2) Calculate the related error cost, accumulated error cost, and reliability based on the vehicle orientation θcar and the like. Further, the length corresponding to the travel distance R from a certain candidate point 62 along the line segments 61 and 64 or along the line segments 61 and 65 based on the travel distance R of the vehicle obtained in step 307 of FIG. A position advanced by only this point is calculated, and points corresponding to this position are set as candidate points 66 and 67, respectively.
[0055]
Further, as shown in FIG. 8, the new current position A is represented at the position indicated by the point 71 with respect to the candidate point 66 on the line segment 64, while the candidate point 67 on the line segment 65 is displayed. On the other hand, it is assumed that the new current position A ′ is represented at the position indicated by the point 72. In this case, from the current position A, line segments 73 and 74 that are connected to the line segment 64 and whose difference between the azimuth and the vehicle azimuth is equal to or less than a predetermined value are taken out and a new one is taken. From the current position A ′, a line segment 75 connected to the line segment 65 and having a difference between the direction and the vehicle direction equal to or less than a predetermined value is taken out. Next, distances L1 (1) and L1 (2) from the current position A to the line segments 73 and 74 are calculated, and a distance L2 (1) from the current position A ′ to the line segment 75 is calculated. . Further, based on the distance calculated in relation to the current position A, the angles θ1 (1) and θ1 (2) of the line segments 73 and 74, the vehicle orientation θcar, and the like, the associated error cost, accumulated error cost, and reliability And the related error cost, accumulated error cost, and reliability are calculated based on the distance calculated in relation to the current position A ′, the angle θ2 (1) of the line segment 75, the vehicle orientation θcar, and the like. .
[0056]
Further, from the candidate point 66, along the line segments 64 and 73, or along the line segments 64 and 74, or from the candidate point 67, based on the vehicle travel distance R obtained in step 307 of FIG. A position advanced by a length corresponding to the travel distance R of the vehicle along 65 and 75 is calculated, and points corresponding to this position are set as new candidate points. FIG. 9 shows the candidate points 81 to 83 newly obtained in this way.
[0057]
Here, the candidate point matching state and the free state will be described. From the current position A to a candidate point located on a certain line segment, the line segment where the candidate point is located or a line segment connected thereto, and the difference between the direction and the traveling direction of the vehicle is less than a predetermined value There may be a case where there is no line segment such as In this case, the current position A itself is handled as the next candidate point calculated from the candidate point. In the present embodiment, the candidate points obtained in this manner are referred to as free state candidate points. On the other hand, in other states, that is, from the current position A to a candidate point located on a certain line segment, the line segment in which the candidate point is located or a line segment connected thereto, and its orientation and A state in which there is a line segment whose difference from the traveling direction of the vehicle is equal to or less than a predetermined value, and as a result, the next candidate point may exist on a specific line segment is referred to as a matching state.
[0058]
Further, when there is no line segment where the candidate point is located or connected to the line segment and the difference between the direction and the traveling direction of the vehicle is equal to or less than a predetermined value, in step 425 The error cost ec (n) to be calculated is given a constant value larger than the error cost value obtained in the matching state.
[0059]
When obtaining a new candidate point based on this free state candidate point, the virtual current position itself with respect to the free state candidate point is set as a new free state candidate point, and a predetermined range from the virtual current position. In D, if there is a line segment whose difference between the heading and the traveling direction of the vehicle is less than or equal to a predetermined value, the intersection of the vertical line drawn from the virtual current position to the line segment and this line segment, Let it be a new candidate point.
[0060]
As can be easily predicted from the above description, the processing time for executing the map matching process depends on the density of the road corresponding to the road data, and in particular, the map corresponding to the read map data is When the road density is high, such as in an urban area, this processing time is very long. Therefore, in this embodiment, as described above with reference to FIG. 4, by deleting candidate points whose distance from the display candidate points is a predetermined amount or more, it is possible to reduce the processing load and prevent an increase in processing time. it can. Since it is unlikely that a candidate point extremely far from the display candidate point is the true current position, it is considered that this does not reduce the accuracy of map matching.
[0061]
The display candidate points obtained in step 427 in FIG. 5 are displayed on the screen of the display 17 by processing based on the flowchart shown in FIG.
[0062]
This process is a routine of the microprocessor 24 that is activated and executed every second.
[0063]
First, it is determined by checking the contents of the parallel I / O 21 whether the switch 14 is instructed to change the scale of the map by pressing (step 1301). If it is pressed (Yes in Step 1301), a predetermined scale flag is set correspondingly (Step 1302).
[0064]
Next, data indicating the position and orientation of the display candidate point is read from a predetermined area of the RAM of the memory 25 (step 1303), and a map of a scale corresponding to the contents of the scale flag switched in step 1302 is displayed on the display 17. For example, it is displayed in a state as shown in FIG. 2 (step 1304).
[0065]
Then, the position of the display candidate point and its direction are displayed using, for example, the arrow symbol “↑” as shown in FIG. Finally, a north mark indicating north and a distance mark corresponding to the scale are displayed as shown in FIG. 2 so as to be superimposed on these (step 1306).
[0066]
In the present embodiment, the vehicle position and direction are indicated by using the arrow symbols as described above. However, in the display form of the vehicle position and direction, the display state is clearly shown for the position and the traveling direction. If it exists, the form may be arbitrary. The same applies to the north mark and the like.
[0067]
According to the present embodiment, since the candidate point is deleted based on the distance of each candidate point with respect to the display candidate point,
While maintaining the reliability of the map matching process, it is possible to reduce the process that requires a large amount of processing time, and therefore it is possible to reduce the processing time required to calculate the current position.
[0068]
In this specification, the term “means” does not necessarily mean a physical means, but includes cases where the function of each means is realized by software. Further, the function of one means may be realized by two or more physical means, or the functions of two or more means may be realized by one physical means.
[0069]
【The invention's effect】
According to the present invention, it is possible to provide a current position calculation device that can reduce the processing load without impairing the accuracy of map matching.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a current position calculation apparatus according to an embodiment of the present invention.
FIG. 2 is a diagram illustrating a display example of a map and a current position according to the present embodiment.
FIG. 3 is a flowchart showing a process for calculating a traveling direction and a travel distance of a vehicle.
FIG. 4 is a flowchart illustrating a main process executed for each predetermined travel distance according to the present embodiment.
FIG. 5 is a flowchart showing a detailed process of one step (map matching process) shown in FIG. 4;
FIG. 6 is a diagram for explaining an example of road data according to the embodiment.
FIG. 7 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points;
FIG. 8 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points.
FIG. 9 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points;
FIG. 10 is a flowchart of the current position display process according to the embodiment.
[Explanation of symbols]
10 Current position calculation device
11 Angular velocity sensor
12 Geomagnetic sensor
13 Vehicle speed sensor
14 switch
15 CD-ROM
16 CD-ROM reader
17 Display
18 Controller

Claims (1)

車両に搭載され、該車両の現在位置を算出する現在位置算出装置であって、  A current position calculation device that is mounted on a vehicle and calculates a current position of the vehicle,
車両の進行方位を検出する方位検出手段と、  Direction detection means for detecting the traveling direction of the vehicle;
車両の走行距離を算出する距離算出手段と、  A distance calculating means for calculating a travel distance of the vehicle;
道路データを格納した道路データ格納手段と、  Road data storage means for storing road data;
車両の仮想現在位置を推定し、前記推定した仮想現在位置を前記道路データ格納手段に格納されている道路データと照合して、道路上の現在位置の候補点を算出し、算出した候補点における信頼度を、当該候補点が位置する道路から前記仮想現在位置までの距離と当該候補点が位置する道路の方位および前記進行方位の方位差とに応じて算出し、該信頼度の最も高い候補点を現在位置と認定するマップマッチング手段と  A virtual current position of the vehicle is estimated, the estimated virtual current position is compared with road data stored in the road data storage means, a candidate point of the current position on the road is calculated, and the calculated candidate point The reliability is calculated according to the distance from the road where the candidate point is located to the virtual current position, the azimuth of the road where the candidate point is located, and the azimuth difference between the traveling directions, and the candidate with the highest reliability Map matching means to recognize the point as the current position and
を備え、With
該マップマッチング手段は、  The map matching means includes:
推定した仮想現在位置が道路外にあり、当該仮想現在位置に対する道路上の候補点がみつからない場合には、当該仮想現在位置をそのままフリーの候補点として算出し、  If the estimated virtual current position is outside the road and no candidate point on the road for the virtual current position is found, the virtual current position is directly calculated as a free candidate point,
前回算出した候補点のうち、前記信頼度の最も高い候補点から第1の距離以内に存在する道路上の候補点に対しては、当該候補点と前記進行方位および前記走行距離から求めた相対変位とに基づいて車両の今回の仮想現在位置を算出し、算出した今回の仮想現在位置に対して、今回の候補点を算出し、  Among candidate points calculated last time, for candidate points on the road existing within a first distance from the candidate point having the highest reliability, the relative value obtained from the candidate point and the traveling direction and the travel distance Calculate the current virtual current position of the vehicle based on the displacement, calculate the current candidate point for the calculated current virtual current position,
前回算出した候補点のうち、前記信頼度の最も高い候補点から、前記第1の距離よりも短い第2の距離以内に存在するフリーの候補点については、当該フリーの候補点から当該フリーの候補点に対応する今回の仮想現在位置を算出し、算出した今回の仮想現在位置に対して、今回の候補点を算出すること  Among the candidate points calculated last time, free candidate points that exist within a second distance shorter than the first distance from the candidate point with the highest reliability, from the free candidate point Calculate the current virtual current position corresponding to the candidate point, and calculate the current candidate point for the calculated current virtual current position
を特徴とする現在位置算出装置。A current position calculation device characterized by the above.
JP13953695A 1995-06-06 1995-06-06 Current position calculation device Expired - Lifetime JP3859743B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13953695A JP3859743B2 (en) 1995-06-06 1995-06-06 Current position calculation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13953695A JP3859743B2 (en) 1995-06-06 1995-06-06 Current position calculation device

Publications (2)

Publication Number Publication Date
JPH08334347A JPH08334347A (en) 1996-12-17
JP3859743B2 true JP3859743B2 (en) 2006-12-20

Family

ID=15247569

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13953695A Expired - Lifetime JP3859743B2 (en) 1995-06-06 1995-06-06 Current position calculation device

Country Status (1)

Country Link
JP (1) JP3859743B2 (en)

Also Published As

Publication number Publication date
JPH08334347A (en) 1996-12-17

Similar Documents

Publication Publication Date Title
JP3545839B2 (en) Current position calculation device
JP3634006B2 (en) Current position calculation device
JP3634005B2 (en) Current position calculation device
JP3859743B2 (en) Current position calculation device
JP3596943B2 (en) Current position calculation system and current position calculation method
JP3679450B2 (en) Current position calculation device and current position calculation method
JP3599422B2 (en) Current position calculation device
JP3599420B2 (en) Current position calculation device
JP3660389B2 (en) Current position calculation system and current position calculation method
JP3596939B2 (en) Current position calculation device
JP3758710B2 (en) Current position calculation system and current position calculation method
JP3693383B2 (en) Current position calculation system and current position calculation method
JP3764508B2 (en) Current position calculation system and current position calculation method
JP3656662B2 (en) Current position calculation device
JP3569028B2 (en) Current position calculation device
JP3660392B2 (en) Current position calculation system and current position calculation method
JP3798444B2 (en) Current position calculation system and current position calculation method
JP3682091B2 (en) Current position calculation system and current position calculation method
JP3545838B2 (en) Current position calculation device
JP3573525B2 (en) Current position calculation device
JP3596944B2 (en) Current position calculation system and current position calculation method
JP3792270B2 (en) Current position calculation system and current position calculation method
JP3587904B2 (en) Current position calculation device
JP3545837B2 (en) Current position calculation device
JP3656661B2 (en) Current position calculation system and current position calculation method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051025

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060719

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060719

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060824

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060920

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 4

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100929

Year of fee payment: 4

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110929

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110929

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120929

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120929

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120929

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120929

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130929

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term