JP3573525B2 - Current position calculation device - Google Patents

Current position calculation device Download PDF

Info

Publication number
JP3573525B2
JP3573525B2 JP14221095A JP14221095A JP3573525B2 JP 3573525 B2 JP3573525 B2 JP 3573525B2 JP 14221095 A JP14221095 A JP 14221095A JP 14221095 A JP14221095 A JP 14221095A JP 3573525 B2 JP3573525 B2 JP 3573525B2
Authority
JP
Japan
Prior art keywords
current position
road
candidate point
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
JP14221095A
Other languages
Japanese (ja)
Other versions
JPH08334355A (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 JP14221095A priority Critical patent/JP3573525B2/en
Publication of JPH08334355A publication Critical patent/JPH08334355A/en
Application granted granted Critical
Publication of JP3573525B2 publication Critical patent/JP3573525B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、該移動体の走行距離、進行方位などを測定して、これにより、当該移動体の現在位置を算出する現在位置算出装置に関するものである。
【0002】
【従来技術】
従来より、道路上を走行する車両の現在位置を算出する現在位置算出装置において、該車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の走行距離とに基づいて算出されている。
【0003】
また、車両の走行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ1回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【0004】
さらに、このように車両の進行方向と走行距離から求めた現在位置の誤差を補正するために、特開昭63−148115号公報に記載のように、道路に整合するように、求められた車両の現在位置を修正する、いわゆる、マップマッチングの技術が知られており、このマップマッチングの技術により、現在位置算出の精度を高めることができる。
【0005】
【発明が解決しようとする課題】
しかしながら、車両の仮想現在位置に対して所定の範囲内に位置するすべての道路を検索する処理を実行することが必要であり、そのために要する時間は、当該所定の範囲内に位置する道路の密度に依存し、特に、道路が市街地内に存在するものであった場合には、処理時間が著しく長くなる。さらに、その現在位置候補点の信頼度を算出するために要する処理時間も長くなる。
【0006】
道路を検索するための処理時間および信頼度を算出するための処理時間が、著しく長くなることにより、装置が実行すべき他の処理、たとえば、方位センサのデータの読み取り、車速センサまたは距離センサのデータの読み取り、或いは、車速センサまたは距離センサのデータに基づく車両の走行距離の算出などを適切に行うことができない場合があるという問題点があった。
【0007】
本発明は、マップマッチングの精度を損なうことなく、その処理負荷を軽減することができる現在位置算出装置を提供することを目的とする。
【0008】
【課題を解決する手段】
本発明の目的は、車両に搭載され、該車両の現在位置を算出する現在位置算出装置であって、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
道路データを格納した道路データ格納手段と、
前記進行方位および前記走行距離に基づき得られた相対変位に基づいて、車両の現在位置を仮想現在位置として推定し、該仮想現在位置を前記道路データ格納手段の道路データを構成する道路と照合して、現在位置の候補点をその信憑性を示す信頼度とともに算出し、該信頼度の最も高い候補点を現在位置と認定するマップマッチング手段とを備え、
該マップマッチング手段は、前記信頼度の最も高い候補点以外の候補点に対しても次回の仮想現在位置の推定およびそれに伴う候補点の算出を行い、かつ、予め定めた条件下で、前記仮想現在位置に対応する道路上に現在位置の候補点がみつからないとき、当該道路外の仮想現在位置を候補点とし、道路外にある候補点がn(予め定めた個数)以上存在する場合には、当該道路外の候補点を信頼度の高い順にソートし、n番目以降の候補点を削除することを特徴とする現在位置算出装置により達成される。
【0009】
この装置において、好ましくは、前記マップマッチング手段は、前記仮想現在位置からその周辺の道路までの距離、およびその道路方位と車両方位との方位差に基づいてエラーコストを求めるとともに、該エラーコストに過去のエラーコストを反映させた累算エラーコストを求め、該累算エラーコストに基づいて当該候補点の信頼度を算出する。
【0010】
また、好ましくは、前記マップマッチング手段は、前記予め定めた条件下で、前記仮想現在位置に対応する道路上に現在位置の候補点がみつからないとき、当該道路外の候補点に対して、道路上の候補点に比べて大きい一定のエラーコストを求めるとともに、該エラーコストに過去のエラーコストを反映させた累算エラーコストを求め、該累算エラーコストに基づいて当該候補点の信頼度を算出する。
【0011】
前記予め定めた条件は、例えば、前記仮想現在位置から所定検索範囲内に道路が存在し、かつ、道路方位と車両方位との方位差が所定値以内であることである。
【0012】
好ましくは、前記マップマッチング手段は、前記道路外の候補点から新たな候補点を求めるとき、前記予め定めた条件を満たす道路上の候補点を新たな候補点とするとともに、当該道路外の候補点から得られた仮想現在位置そのものをも新たな候補点とする。
【0013】
【作用】
マップマッチング処理においては、原則的には、車両の現在位置に対して新たに求められた相対走行距離および進行方位に基づいて、仮想現在位置を算出し、この仮想現在位置をその付近の道路データと照合して、最も確からしい(信頼度が最も高い)と判断される道路上の位置を求め、これを現在位置と認定する。しかし、誤差による誤認定を防止するために、最も確からしいと判断された現在位置の候補点以外の候補点のデータを直ちに破棄せず、その候補点についても次回にそれに基づく新たな候補点を算出し、これらの候補点の中から最も確からしい候補点を現在位置と認定する。一方、マップマッチングにおいて特定の仮想現在位置については道路データとの照合が成功しない(予め定めた条件を満足する道路がみつからない)場合があり、そのような場合には、その仮想現在位置そのものを候補点として扱う。
【0014】
このような手法により逐次新たな候補点を求めていくと、車両の走行に伴い候補点の個数が著しく増大する可能性がある。これは、リアルタイムに処理すべきマップマッチング処理の実行においてプロセッサに過大な処理負荷を課すおそれがある。特に、市街地のように道路が密集している地域では、この問題が顕著となるそこで、本発明では、道路外にある候補点については、比較的その信憑性が低いことおよび負荷が大きいことに鑑みて、所定個数を超える道路外候補点が求められた場合には、その所定個数を超えた信頼度のより低い道路外候補点を削除する。
【0015】
これによって、マップマッチング処理の信頼性を維持しながら、その処理における処理対象の数、すなわち処理負荷を軽減し、処理実行に要する時間を短縮することが可能となる。
【0016】
【実施例】
以下、添付図面に基づいて、本発明の実施例につき詳細に説明を加える。
【0017】
図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。図1に示すように、この現在位置算出装置10は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ11と、地磁気を検出することで車両の進行方位を検出する地磁気センサ12と、車両のトランスミッションの出力軸の回転に比例した時間間隔でパルスを出力する車速センサ13を備えている。
【0018】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ17と、ディスプレイ17に表示する地図の縮尺切り替えの指令をユーザ(運転者)から受け付けるスイッチ14と、デジタル地図データを記憶しておくCD−ROM15と、そのCD−ROM15から地図データを読みだすためのドライバ16とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ18を備えている。本実施例において、上述したディジタル地図データには、複数の線分の端部を示す座標から構成される道路データ、或いは、該道路の道幅を示す道路幅データ、道路が高速道路或いは一般道路であるかを示す高速道路フラグなどが含まれる。
【0019】
コントローラ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とを有する。
【0020】
また、コントローラ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とを含んでいる。
【0021】
以下、このように構成された現在位置算出装置10の動作について説明する。
【0022】
装置10の動作は、全般的に、車両の進行方位及び走行距離を算出する処理と、算出された進行方位及び距離から車両の現在位置を決定する処理と、得られた車両位置および方位を表示する処理との三つの処理に分けることができるため、これらについて順次説明する。
【0023】
図3により、車両の進行方位及び走行距離を算出する処理の流れを説明する。
【0024】
この処理は、一定周期、たとえば100mS毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0025】
このルーチンでは、最初、A/D変換器19から角速度センサ11の出力値を読み込む(ステップ301)。この角速度センサ11の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、A/D変換器20から地磁気センサ12の出力値を読み込み(ステップ302)、この地磁気センサ12の出力値により算出された絶対方位と角速度センサ11から出力される方位変化(角速度出力)とを用いて、車両の推定方位を決定する(ステップ303)。
【0026】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサの誤差が大きいので、一定時間以上車速が低い場合には、地磁気センサ方位のみを利用するという方法により行う。
【0027】
次に、車速センサ13の出力するパルス数を、0.1秒毎に、カウンタ26で計数して、その計数値を読み込む(ステップ304)。この読み込んだ値に、距離係数を乗算することで、0.1秒間に進んだ距離を求める(ステップ305)。
【0028】
次に、このようにして求められた0.1秒間あたりの走行距離値を、前回得られた値に積算して、車両の走行距離が20mとなったかどうかを調べ(ステップ306)、20mに満たない場合(ステップ306でノー(No))、今回の処理を終了して、新たな処理を開始する。
【0029】
走行距離算出処理の結果、積算された走行距離が一定距離、例えば20mとなった場合(ステップ306でイエス(Yes))、その時点での進行方向と走行距離(20m)とを出力する(ステップ307)。ステップ307では、さらに、積算距離を初期化して、新たに走行距離の積算を開始する。
【0030】
次に、算出された進行方位および走行距離に基づいて、車両の仮想現在位置を算出し、算出された仮想現在位置に基づき、車両の候補点を求める処理について説明する。
【0031】
図4に、この処理の流れを示す。
【0032】
本処理は、図3からの進行方位および走行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ24のルーチンである。すなわち、本処理は、車両が20m進む毎に起動される。
【0033】
さて、この処理では、まず、先のステップ307で出力されたセンサデータ、すなわち進行方位と走行距離とを読み込む(ステップ401)。
【0034】
ついで、前回の図4の処理で得られた候補点の内、後述するマッチング状態の候補点、すなわち道路上の候補点につき、マップマッチング処理を行う(ステップ402)。これにより得られた候補点の信頼度を算出する(ステップ403)。この詳細についても後述する。
【0035】
次に、前回の候補点の内、後述するフリー状態の候補点(フリー候補点とも呼ぶ)、すなわち道路外の候補点の個数cntを算出する(ステップ404)。候補点がフリー候補点か否かは、メモリに記憶された候補点に付された状態フラグにより判明する。
【0036】
そこで、その個数cntを予め定めた一定数cnt_thと比較する(ステップ405)。本実施例では、この一定数cnt_thとして”4”を用いる。フリー候補点の個数cntが当該一定数より小さければ、ステップ408へ移行する。
【0037】
フリー候補点の個数cntが当該一定値以上であれば、フリー候補点をその信頼度の高い順にソートする(ステップ406)。このソートの結果、信頼度の高い順からcnt_th番目以降(ここでは、4番目以降)のフリー候補点(および後述する各種情報)をメモリから削除する(ステップ407)。換言すれば、最大cnt_th−1個(ここでは3個)のフリー候補点を残す。この削除によって、次のステップ408のマップマッチング処理においてこの候補点から新たな候補点を求める処理が省略され、処理負担を軽減することができる。
【0038】
すなわち、残ったフリー候補点について、マップマッチング処理を行う(ステップ408)。さらに、これにより求められた新たな候補点の信頼度を求める(ステップ409)。
【0039】
最後に、ステップ403及びステップ409で信頼度が求められた各候補点の中から、最も信頼度の高い候補点を表示候補点として選定し、その表示候補点データを出力する(ステップ410)。より具体的には、最も信頼度の値の大きな候補点Cを、表示候補点CD、すなわち、ディスプレイ17上に表示するための候補点として、その位置、累算エラーコスト、信頼度、後述するマッチング状態であるかフリー状態であるかを示す状態フラグなどを、メモリ25のRAMの所定の領域に記憶するとともに、表示候補点以外の他の候補点の位置、累算エラーコスト、信頼度、状態フラグなども、RAMの所定の領域に記憶する。
【0040】
図5に、マップマッチング処理の詳細を示す。
【0041】
マップマッチング処理においては、まず、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の車両の候補点を求める処理で得られた車両の候補点の位置に加算して、現在車両が存在すると推定される位置である仮想現在位置(A)を求める(ステップ421)。この候補点の詳細については後述する。もし、装置の始動直後など、前回の車両の候補点を求める処理で得られた候補点が存在しない場合には、別途設定された位置を、前回得られた候補点の位置として用いて仮想現在位置(A)を求める。
【0042】
次に、得られた仮想現在位置(A)の周辺の地図の道路データを、CD−ROM15から、ドライバ16およびDMAコントローラ23を介して読み出す(ステップ422)。このとき、仮想現在位置(A)を得るために用いた候補点が道路上の候補点(マッチング状態の候補点)であれば、距離検索範囲D内の道路であって、当該候補点が位置する道路を表す線分またはこれにつながる線分を選択する。道路上の候補点でない候補点(フリー状態の候補点)の場合には、当該仮想現在位置(A)から距離検索範囲D内の線分を選択する。この際、当該仮想現在位置を得るために用いた候補点に関する信頼度(前回補正されたもの)に基づいて、道路の検索範囲Dを可変としてもよい。すなわち、信頼度の高い候補点から得た仮想現在位置に関しては、より狭い範囲内に含まれる線分を選択し、逆に信頼度の低い候補点から得た仮想現在位置に関しては、より広い範囲に含まれる線分を選択する。信頼度に基づいて、検索範囲を可変とする理由は、信頼度が小さい場合には、前回求めた現在位置の精度に対する信憑性が低いと考えられるので、より広い範囲を検索して道路を探す方が、正しい現在位置を求める上で適当であるからである。
【0043】
なお、前述したように、本実施例においては、道路データとして、図6に示すように、2点間を結ぶ複数の線分51ないし55で近似し、それら線分を、その始点と終点の座標によって表したものなどを用いている。たとえば、線分53は、その始点(x3、y3)と終点(x4、y4)によって表現される。
【0044】
次に、ステップ422で取り出された線分の中から、その線分の方位が、求められている進行方向と、所定値以内にある線分だけを選択し(ステップ423)、さらに、取り出されたn個すべての線分に対して、仮想現在位置(A)から垂線をおろし、その垂線L(n)の長さを求める(ステップ424)。
【0045】
ステップ422、423において、上記条件を満足する線分が存在しない場合にはマッチング不成立となり、仮想現在位置(A)そのものが候補点(フリー状態候補点)となる。
【0046】
次に、これら垂線の長さに基づき、ステップ423で選択されたすべての線分に対して、以下の式によりに定義されるエラーコスト値ec(n)を算出する(ステップ425)。
【0047】
ec(n)=α×|θcar−θ(n)|+β|L(n)|
ここに、θcarは仮想現在位置(A)における車両方位、θ(n)は、線分の方位、L(n)は、仮想現在位置(A)から線分までの距離、すなわち垂線の長さ、αおよびβは、重み係数である。これら重み係数の値は、進行方向と道路の方位のずれと現在位置と道路のずれのどちらを、現在位置の属する道路を選択する上で重視するかによって変化させてよい。たとえば、進行方向と方位が近い道路を重視する場合は、αを大きくするようにする。
【0048】
なお、フリー状態の候補点に対しては、ステップ425で算出すべきエラーコストec(n)には、マッチング状態である場合に得られるエラーコストの値よりも大きな一定の値が与えられる。
【0049】
また、このフリー状態候補点を基に新たな候補点を求める際には、フリー状態の候補点に対する仮想現在位置そのものも無条件に新たな候補点とする。
【0050】
ここで、候補点につきさらに具体的な説明を加える。装置の始動直後など、初期的な状態においては、仮想現在位置(A)は、ユーザ(運転者)がスイッチ14を用いて所定の情報を入力することなどにより、一意的に定まり、かつ、これは道路に対応する線分上に位置する。しかしながら、車両が走行した後には、ジャイロなどのセンサの誤差などにより、仮想現在位置(A)が、道路に対応する線分に存在しなくなる場合がある。その結果、たとえば、図7に示すように、道路が分岐している場合、すなわち、道路に対応する線分61の節点68から、二つの線分64および65があらわれる場合に、いずれの線分に対応する道路上に車両が存在するかを、明確にすることができない場合が多い。
【0051】
したがって、このような場合に、本実施例においては、考えられ得る二つの線分上に存在する所定の点を候補点として設定し、これらの現在位置、エラーコスト、後述する累算エラーコストなどを、それぞれ、メモリ25のRAMの所定の領域に記憶するように構成されている。なお、説明を容易にするため、以下の説明においては、特に複数の候補点であることを明示しない限り、単一の候補点から、新たな一以上の候補点を生成することとする。
【0052】
ついで、ある候補点から、対応する線分に沿って、車両の進行した距離Rに対応する長さだけ進められた点を、新たな候補点C(n)とする(ステップ426)。したがって、ある候補点の位置する線分或いはこれに接続された線分であって、その方位と車両方位との差が所定値以下であるような線分の本数がnである場合には、n個の新たな候補点C(n)が生成されることになる。後述するフリー状態の候補点が存在する場合、候補点の位置する線分が存在しないので、この候補点に対する次の候補点の算出時(ステップ422〜426)には対応する仮想現在位置から所定範囲D内のすべての線分を取り出すので、候補点の数が多くなりうる。
【0053】
図4のステップ403および409における信頼度の算出に関して説明する。先に算出されたエラーコストec(n)と、前回の処理で得られた候補点に関連する累算エラーコストesとにしたがって、下記の式により定義される、今回の処理における累算エラーコストes(n)を算出する。
【0054】
es(n)=(1−k)×es+k×ec(n)
ここに、kは、0より大きく1より小さな重み係数である。この累算エラーコストes(n)は、前回以前の処理において算出されたエラーコストを、今回の処理において算出されるエラーコストにどのくらい反映させるかを表わしている。
【0055】
さらに、算出された累算エラーコストes(n)に基づき、下記の式に定義される信頼度trst(n)を算出する。
【0056】
trst(n)=100/(1+es(n))
この式から明らかなように、累算エラーコストec(n)が大きくなるのにしたがって、信頼度trst(n)は減少し、0(ゼロ)に近づく。その一方、これが小さくなるのにしたがって、信頼度trst(n)は増大し、その値は、100に近づく。
【0057】
このような処理をすることにより、ある候補点に対する現在位置Aより所定の範囲内に存在するn個の線分に関連する信頼度trst(n)が求められる。信頼度は、このように、選択された各線分に対して算出されるものであるが、本明細書中では、その線分上に求められる候補点に対する信頼度としても扱う。
【0058】
ここで、具体的な道路を例に挙げて、マップマッチングの作用を考える。たとえば、図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とする。
【0059】
さらに、図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などに基づき、関連するエラーコスト、累算エラーコストおよび信頼度を算出する。
【0060】
さらに、図3のステップ307で求められた車両の走行距離Rに基づき、候補点66から、線分64および73、或いは、線分64および74に沿って、若しくは、候補点67から、線分65および75に沿って、車両の走行距離Rに対応する長さだけ進められた位置を算出し、この位置に対応する点を、それぞれ新たな候補点とする。図9は、このように新たに求められた候補点81ないし83を示している。
【0061】
以上の説明から容易に予測されるように、マップマッチング処理を実行するための処理時間は、道路データに対応する道路の密度に依存し、特に、読み出された地図データに対応する地図が、市街地であった場合など、道路の密度が大きい場合などでは、この処理時間は、非常に大きくなる。したがって、本実施例においては、図4で前述したように、所定個数以上のフリー候補点を削除することにより、処理負担を軽減し、処理時間の増大を防止することができる。当該所定個数以上の信頼度のより低いフリー候補点については、その候補点が真の現在位置である可能性は低いので、その削除によってマップマッチングの精度が低下することはないと考えられる。
【0062】
図4のステップ410で得られた表示候補点は、図10に示すフローチャートに基づく処理によりディスプレイ17の画面上に表示される。
【0063】
本処理は、1秒毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0064】
最初、スイッチ14が押圧により地図の縮尺の変更を指示されているかを、パラレルI/O21の内容を見て判断する(ステップ1301)。もし、押されていれば(ステップ1301でYes)、それに対応して、所定の縮尺フラグを設定する(ステップ1302)。
【0065】
次に、表示候補点の位置および方位を示すデータを、メモリ25のRAMの所定の領域から読み出し(ステップ1303)、ステップ1302で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ17に、例えば、図2に示すような状態で表示する(ステップ1304)。
【0066】
そして、地図に重畳して、表示候補点の位置およびその方位を、たとえば、先に示した図2のように、矢印記号“↑”を用いて表示する(ステップ1305)。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図2のように表示する(ステップ1306)。
【0067】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【0068】
さて、本実施例によれば、所定個数以上のフリー状態候補点を削除するようにしたので、マップマッチング処理の信頼性を維持しながら、多大な処理時間を要する処理を減じることができる。これは、次のような理由によるものである。
【0069】
前述したように前回のマッチング状態の候補点から、つぎの候補点を生成する際には、前回のマッチング状態の候補点が位置する線分および当該線分に直接または間接的に接続する線分のみを抽出し、これらの線分上の候補点と、当該候補点のエラ−コストecや累積エラ−コストesや信頼度trstを求めれば良いのに対して、前回のフリ−状態の候補点から、つぎの候補点を生成する際には、車両が走行している道路を特定できないため、仮想現在位置(A)周辺の全ての線分に対して、同様な処理を施さなければならない。このため、前回求めたフリ−状態の候補点に対するマップマッチング処理の負荷は、前回求めたマッチング状態の候補点に対するマップマッチング処理の負荷比べ、はるかに大きくなる。特に、道路密度の高い地域では、この負荷の差は顕著となる。
【0070】
したがい、フリ−状態の候補点を優先して削除することにより、現在位置の算出に要する処理時間が大幅に減少することが期待できる。
【0071】
また、フリ−状態の候補点は、そもそも車両が走行する、すなわち、通常車両が位置することができる道路に整合しない位置の点であり、その現在位置としての信頼性は低い。したがい、このようなフリ−状態候補点数を、ある程度制限しても、現在位置算出の信頼性が、さほど低下することはない。
【0072】
なお、本明細書において、手段とは、必ずしも物理的手段を意味するものではなく、各手段の機能が、ソフトウエアによって実現される場合も包含する。また、一つの手段の機能が二以上の物理的手段により実現されても、二以上の手段の機能が一つの物理的手段により実現されてもよい。
【0073】
【発明の効果】
本発明によれば、マップマッチングの精度を損なうことなく、その処理負荷を軽減することができる現在位置算出装置を提供することが可能となる。
【図面の簡単な説明】
【図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 applications]
The present invention relates to a current position calculation device that is mounted on a moving body such as a vehicle and measures a traveling distance, a traveling direction, and the like of the moving body, and thereby calculates a current position of the moving body.
[0002]
[Prior art]
2. Description of the Related 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 the vehicle measured by a direction sensor such as a gyro and a vehicle speed sensor or a distance sensor. It is calculated based on the traveling distance of the vehicle.
[0003]
Generally, the travel distance of a vehicle is measured by measuring the output shaft of a transmission or the number of rotations of a tire, and multiplying the number of rotations by a distance coefficient which is a distance that the vehicle travels per rotation of the tire. Is required by
[0004]
Further, in order to correct the error of the current position obtained from the traveling direction and the traveling distance of the vehicle in this manner, as described in JP-A-63-148115, the vehicle determined to match the road is used. The technique of so-called map matching, which corrects the current position, is known, and the accuracy of current position calculation can be increased by this map matching technique.
[0005]
[Problems to be solved by the invention]
However, it is necessary to execute a process of searching for all roads located within a predetermined range with respect to the virtual current position of the vehicle, and the time required for the search is determined by the density of roads located within the predetermined range. In particular, if the road is located in an urban area, the processing time becomes significantly longer. Further, the processing time required to calculate the reliability of the current position candidate point also increases.
[0006]
Since the processing time for searching for a road and the processing time for calculating the reliability are significantly increased, other processing to be performed by the device, such as reading data of a direction sensor, reading of a vehicle speed sensor or a distance sensor, may be performed. There has been a problem that it may not be possible to appropriately read data or calculate a travel distance of a vehicle based on data from a vehicle speed sensor or a distance sensor.
[0007]
SUMMARY OF THE INVENTION It is an object of the present invention to provide a current position calculation device capable of reducing the processing load without impairing the accuracy of map matching.
[0008]
[Means to solve the problem]
An object of the present invention is a current position calculating device mounted on a vehicle and calculating a current position of the vehicle,
Azimuth detecting means for detecting the traveling azimuth of the vehicle,
Distance calculating means for calculating the traveling distance of the vehicle,
Road data storage means for storing road data;
Based on the relative displacement obtained based on the traveling direction and the traveling distance, the current position of the vehicle is estimated as a virtual current position, and the virtual current position is compared with a road constituting road data of the road data storage unit. And a map matching means for calculating a candidate point at the current position together with a reliability indicating its credibility, and identifying the candidate point having the highest reliability as the current position,
The map matching unit estimates a next virtual current position and calculates a candidate point associated therewith also for candidate points other than the candidate point having the highest reliability, and under the predetermined condition, When no candidate point of the current position is found on the road corresponding to the current position, the virtual current position outside the road is set as a candidate point, and when there are n (predetermined number) or more candidate points outside the road, The present position calculating apparatus is characterized in that the candidate points outside the road are sorted in descending order of reliability, and the nth and subsequent candidate points are deleted.
[0009]
In this device, preferably, the map matching means obtains an error cost based on a distance from the virtual current position to a road around the virtual current position and an azimuth difference between the road azimuth and the vehicle azimuth. An accumulated error cost reflecting a past error cost is obtained, and the reliability of the candidate point is calculated based on the accumulated error cost.
[0010]
Preferably, when no candidate point of the current position is found on the road corresponding to the virtual current position under the predetermined condition, A constant error cost that is larger than the above candidate point is determined, an accumulated error cost that reflects the past error cost is determined for the error cost, and the reliability of the candidate point is determined based on the accumulated error cost. calculate.
[0011]
The predetermined condition is, for example, that a road exists within a predetermined search range from the virtual current position, and that the azimuth difference between the road azimuth and the vehicle azimuth is within a predetermined value.
[0012]
Preferably, when obtaining a new candidate point from the candidate points outside the road, the map matching means sets a candidate point on the road satisfying the predetermined condition as a new candidate point, and The virtual current position itself obtained from the point is also set as a new candidate point.
[0013]
[Action]
In the map matching processing, in principle, a virtual current position is calculated based on a relative traveling distance and a traveling direction newly obtained with respect to the current position of the vehicle, and the virtual current position is calculated based on road data in the vicinity thereof. Then, a position on the road determined to be most probable (the highest reliability) is obtained, and this is determined as the current position. However, in order to prevent erroneous recognition due to errors, data of candidate points other than the candidate point of the current position determined to be most probable are not immediately discarded, and a new candidate point based on it will be Then, the most probable candidate point among these candidate points is identified as the current position. On the other hand, in the map matching, there is a case where the matching with the road data does not succeed for a specific virtual current position (a road satisfying a predetermined condition is not found). In such a case, the virtual current position itself is Treat as a candidate point.
[0014]
If new candidate points are sequentially obtained by such a method, the number of candidate points may significantly increase as the vehicle travels. This may impose an excessive processing load on the processor in executing the map matching process to be performed in real time. In particular, this problem is remarkable in an area where the roads are dense, such as in an urban area.Therefore, in the present invention, the candidate points outside the road have relatively low credibility and a large load. In view of the above, if a candidate number of outside roads exceeding a predetermined number is obtained, candidate candidate points outside the road exceeding the predetermined number and having lower reliability are deleted.
[0015]
As a result, while maintaining the reliability of the map matching process, the number of processing targets in the process, that is, the processing load can be reduced, and the time required for executing the process can be reduced.
[0016]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0017]
FIG. 1 is a block diagram showing the configuration of the current position calculating device according to the embodiment of the present invention. As shown in FIG. 1, the current position calculating device 10 includes an angular velocity sensor 11 that detects a change in a traveling direction by detecting a yaw rate of a vehicle, and a geomagnetic sensor 12 that detects a traveling direction of a 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 transmission of the vehicle.
[0018]
The display 17 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 stores digital map data. And a driver 16 for reading map data from the CD-ROM 15. Further, a controller 18 for controlling the operation of each peripheral device described above is provided. In the present embodiment, the digital map data described above includes road data composed of coordinates indicating the ends of a plurality of line segments, or road width data indicating the road width of the road, and whether the road is an expressway or a general road. It includes a highway flag indicating whether there is a vehicle.
[0019]
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 from the switch 13 every 0.1 second, a parallel I / O 21 that inputs the presence or absence of pressing of the switch 14, and a DMA that transfers map data read from the CD-ROM 15 ( It has a Direct Memory Access controller 22 and a display processor 23 for displaying a map image on the display 17.
[0020]
The controller 18 further has a microprocessor 24 and a memory 25. The microprocessor 24 includes a signal of the angular velocity sensor 11 obtained through the A / D converter 19, a signal of the geomagnetic sensor 12 obtained through the A / D converter 20, and an output pulse of the vehicle speed sensor 13 counted by the counter 26. The number, the presence or absence of pressing of the switch 14 input through the parallel I / O 21, the map data from the CD-ROM 15 obtained through the DMA controller 22 are received, and the processing is performed based on these signals, and The current position is calculated and displayed on the display 17 via the display processor 23. The display of the vehicle position is performed by superimposing an arrow mark or the like on the map already displayed on the display 17 as shown in FIG. Thereby, the user can know the current position of the vehicle on the map. The memory 25 includes a ROM storing a program for defining the contents of processing (described later) for realizing such an operation, and a RAM used as a work area when the microprocessor 24 performs processing. I have.
[0021]
Hereinafter, the operation of the current position calculating device 10 configured as described above will be described.
[0022]
The operation of the device 10 generally includes a process of calculating the heading and traveling distance of the vehicle, a process of determining the current position of the vehicle from the calculated heading and distance, and displaying the obtained vehicle position and heading. Since these processes can be divided into three processes, these processes will be sequentially described.
[0023]
With reference to FIG. 3, a description will be given of a flow of processing for calculating the traveling direction and the traveling distance of the vehicle.
[0024]
This process is a routine of the microprocessor 24 that is started and executed at a fixed period, for example, every 100 ms.
[0025]
In this routine, first, the output value of the angular velocity sensor 11 is read from the A / D converter 19 (step 301). Since the azimuth change is output as the output value of the angular velocity sensor 11, only the relative value of 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 direction 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 the angular velocity output (step 303).
[0026]
For example, when the vehicle speed is low for a long time, the error of the angular velocity sensor is large. Therefore, when the vehicle speed is low for a predetermined time or more, only the azimuth of the geomagnetic sensor is used.
[0027]
Next, the number of pulses output from the vehicle speed sensor 13 is counted by the counter 26 every 0.1 seconds, and the counted value is read (step 304). The read value is multiplied by a distance coefficient to obtain a distance advanced for 0.1 second (step 305).
[0028]
Next, the mileage value per 0.1 second obtained in this way is added to the value obtained last time to check whether or not the mileage of the vehicle has reached 20 m (step 306). If not (No in Step 306), the current process is terminated, and a new process is started.
[0029]
As a result of the travel distance calculation processing, when the integrated travel distance becomes a fixed 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 integrated distance is further initialized, and the integration of the traveling distance is newly started.
[0030]
Next, a description will be given of a process of calculating a virtual current position of a vehicle based on the calculated heading and traveling distance, and obtaining a candidate point of the vehicle based on the calculated virtual current position.
[0031]
FIG. 4 shows the flow of this processing.
[0032]
This processing is a routine of the microprocessor 24 that is started and executed in response to the output of the traveling direction and the traveling distance from FIG. That is, this process is started every time the vehicle travels 20 m.
[0033]
In this processing, first, the sensor data output in the previous step 307, that is, the traveling direction and the traveling distance are read (step 401).
[0034]
Next, among the candidate points obtained in the previous process of FIG. 4, a map matching process is performed on a candidate point in a matching state described later, that is, a candidate point on a road (step 402). The reliability of the obtained candidate points is calculated (step 403). This will be described later in detail.
[0035]
Next, among the previous candidate points, a free state candidate point (also referred to as a free candidate point) described later, that is, the number cnt of candidate points outside the road is calculated (step 404). Whether or not the candidate point is a free candidate point is determined by a state flag attached to the candidate point stored in the memory.
[0036]
Therefore, the number cnt is compared with a predetermined constant number cnt_th (step 405). In the present embodiment, “4” is used as the fixed number cnt_th. If the number cnt of free candidate points is smaller than the certain number, the process proceeds to step 408.
[0037]
If the number cnt of free candidate points is equal to or larger than the certain value, the free candidate points are sorted in descending order of their reliability (step 406). As a result of this sorting, the free candidate points (and various types of information described later) after the cnt_th (in this case, the fourth and subsequent) from the order of higher reliability are deleted from the memory (step 407). In other words, a maximum of cnt_th−1 (here, three) free candidate points are left. By this deletion, the process of finding a new candidate point from this candidate point in the map matching process of the next step 408 is omitted, and the processing load can be reduced.
[0038]
That is, map matching processing is performed on the remaining free candidate points (step 408). Further, the reliability of the new candidate point thus obtained is obtained (step 409).
[0039]
Finally, a candidate point having the highest reliability is selected as a display candidate point from among the candidate points for which the degrees of reliability have been obtained in steps 403 and 409, and the display candidate point data is output (step 410). More specifically, the candidate point C having the highest reliability value is set as the display candidate point CD, that is, the candidate point to be displayed on the display 17, and its position, accumulated error cost, reliability, which will be described later. A state flag indicating whether the state is the matching state or the free state is stored in a predetermined area of the RAM of the memory 25, and the positions of the 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.
[0040]
FIG. 5 shows details of the map matching process.
[0041]
In the map matching process, first, the movement amount of the vehicle is separately obtained in the latitude and longitude directions. Further, the amount of movement in each of these directions is added to the position of the candidate point of the vehicle obtained in the process of obtaining the candidate point of the previous vehicle, and the virtual current position (the position where the current vehicle is estimated to exist) is added. A) is obtained (step 421). Details of this candidate point will be described later. If there is no candidate point obtained in the previous process for obtaining a candidate point for the vehicle, for example, immediately after the start of the apparatus, the position set separately is used as the position of the candidate point obtained last time, and the virtual current Find the position (A).
[0042]
Next, the obtained road data of the map around the 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 the road (a candidate point in a matching state), the candidate point is a road within the distance search range D, and the candidate point is Select the line segment representing the road to be connected or the line segment connected to it. In the case of a candidate point that is not a candidate point on the road (a free state candidate point), a line segment within the distance search range D from the virtual current position (A) is selected. At this time, the search range D of the road may be variable based on the reliability (previously corrected) regarding the candidate point 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, it is considered that the credibility of the accuracy of the current position obtained last time is low. This is because it is more appropriate for finding the correct current position.
[0043]
As described above, in the present embodiment, as shown in FIG. 6, as the road data, a plurality of line segments 51 to 55 connecting between two points are approximated, and these line segments are defined as a start point and an end point thereof. Those represented by coordinates are used. For example, the line segment 53 is represented by its start point (x3, y3) and end point (x4, y4).
[0044]
Next, from the line segments extracted in step 422, only the line segments whose azimuths are within the predetermined direction and the determined traveling direction are selected (step 423). With respect to all the n line segments, a perpendicular line is lowered from the virtual current position (A), and the length of the perpendicular line L (n) is obtained (step 424).
[0045]
In Steps 422 and 423, if there is no line segment that satisfies the above condition, matching is not established, and the virtual current position (A) itself becomes a candidate point (free state candidate point).
[0046]
Next, based on the lengths of these perpendiculars, an error cost value ec (n) defined by the following equation is calculated for all the line segments selected in step 423 (step 425).
[0047]
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. , Α and β are weighting factors. The values of these weighting factors may be changed depending on which of the deviation between the traveling direction and the direction of the road and the deviation between the current position and the road is more important 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.
[0048]
For the candidate points in the free state, a fixed value larger than the value of the error cost obtained in the matching state is given to the error cost ec (n) to be calculated in step 425.
[0049]
When a new candidate point is determined based on the free state candidate point, the virtual current position itself with respect to the free state candidate point is also unconditionally set as a new candidate point.
[0050]
Here, a more specific description of the candidate points will be added. In an initial state such as immediately after the start-up 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 segment corresponding to the road. However, after the vehicle has traveled, 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 is not possible to clarify whether or not a vehicle exists on a road corresponding to.
[0051]
Therefore, in such a case, in this embodiment, predetermined points existing on two conceivable line segments are set as candidate points, and their current position, error cost, accumulated error cost described later, and the like are set. Are respectively stored in a predetermined area of the RAM of the memory 25. For the sake of simplicity, in the following description, one or more new candidate points will be generated from a single candidate point, unless otherwise specified.
[0052]
Next, a point advanced from a certain candidate point by a length corresponding to the distance R traveled by the vehicle along a corresponding line segment is set as a new candidate point C (n) (step 426). Therefore, if the number of line segments at which a candidate point is located or a line segment connected thereto and the difference between the azimuth and the vehicle azimuth is equal to or smaller than a predetermined value is n, n new candidate points C (n) will be generated. If there is a candidate point in the free state, which will be described later, there is no line segment on which the candidate point is located. Therefore, when calculating the next candidate point for this candidate point (steps 422 to 426), a predetermined value is calculated from the corresponding virtual current position. Since all the line segments within the range D are extracted, the number of candidate points may increase.
[0053]
The calculation of the reliability in steps 403 and 409 of FIG. 4 will be described. According to the previously calculated error cost ec (n) and the accumulated error cost es related to the candidate point obtained in the previous process, the accumulated error cost in the current process defined by the following equation: es (n) is calculated.
[0054]
es (n) = (1−k) × es + k × ec (n)
Here, k is a weight coefficient larger than 0 and smaller than 1. The accumulated error cost es (n) indicates how much the error cost calculated in the previous process is reflected in the error cost calculated in the current process.
[0055]
Further, based on the calculated accumulated error cost es (n), a reliability trst (n) defined by the following equation is calculated.
[0056]
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 this becomes smaller, the reliability trst (n) increases, and its value approaches 100.
[0057]
By performing such processing, the reliability trst (n) relating to n line segments existing within a predetermined range from the current position A for a certain candidate point is obtained. Although the reliability is calculated for each selected line segment in this way, in this specification, it is also treated as the reliability for a candidate point obtained on the line segment.
[0058]
Here, the operation of map matching will be considered by taking a specific road as an example. For example, as shown in FIG. 7, it is assumed that a current position A is represented at a position indicated by a point 63 with respect to a certain candidate point 62 existing on a line segment 61. In such a case, a line segment 64 connected from the current position A to the line segment 61 at which the candidate point 62 is located, wherein the difference between the azimuth and the vehicle azimuth 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 angles θ (1) and θ ( Based on 2) and the vehicle direction θcar, the related error cost, accumulated error cost, and reliability are calculated. Further, based on the travel distance R of the vehicle obtained in step 307 of FIG. 3, a length corresponding to the travel distance R from a certain candidate point 62 along the line segments 61 and 64 or the line segments 61 and 65. Is calculated, and points corresponding to this position are set as candidate points 66 and 67, respectively.
[0059]
Further, as shown in FIG. 8, for the candidate point 66 on the line segment 64, a new current position A is represented at the position indicated by the point 71, while the candidate point 67 on the line segment 65 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, the 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 smaller than a predetermined value are extracted, and a new one is extracted. From the current position A ′, a line segment 75 that is connected to the line segment 65 and whose difference between the azimuth and the vehicle azimuth is equal to or smaller than a predetermined value is extracted. Next, the distances L1 (1) and L1 (2) from the current position A to the line segments 73 and 74 are calculated, and the 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 direction θcar, and the like, the related error cost, accumulated error cost, and reliability And the associated 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 direction θcar, and the like. .
[0060]
Further, based on the traveling distance R of the vehicle obtained in step 307 in FIG. 3, the line segment 64 and 73 from the candidate point 66, or the line segment 64 and 74, or from the candidate point 67, A position advanced by a length corresponding to the traveling distance R of the vehicle is calculated along 65 and 75, and a point corresponding to this position is set as a new candidate point. FIG. 9 shows candidate points 81 to 83 thus newly obtained.
[0061]
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 density of roads is large, such as in an urban area, the processing time becomes very long. Therefore, in the present embodiment, as described above with reference to FIG. 4, by deleting a predetermined number or more of free candidate points, it is possible to reduce the processing load and prevent an increase in processing time. As for the free candidate points having the lower reliability than the predetermined number or more, it is unlikely that the candidate points are the true current position, and therefore, it is considered that the accuracy of the map matching is not reduced by the deletion.
[0062]
The display candidate points obtained in step 410 of FIG. 4 are displayed on the screen of the display 17 by processing based on the flowchart shown in FIG.
[0063]
This process is a routine of the microprocessor 24 which is started and executed every second.
[0064]
First, it is determined whether or not the switch 14 has been pressed to change the scale of the map by looking at the contents of the parallel I / O 21 (step 1301). If the button is pressed (Yes in step 1301), a predetermined scale flag is set accordingly (step 1302).
[0065]
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).
[0066]
Then, the position and the direction of the display candidate point are displayed on the map by using an arrow symbol “図”, for example, as shown in FIG. 2 described above (step 1305). Finally, a north mark indicating north and a distance mark corresponding to the scale are superimposed on them and displayed as shown in FIG. 2 (step 1306).
[0067]
In the present embodiment, the vehicle position and the direction are indicated using the arrow symbols as described above. However, the display form of the vehicle position and the direction is such that the position and the traveling direction are clearly displayed. If so, the form may be arbitrary. The same applies to the north mark and the like.
[0068]
By the way, according to the present embodiment, since a predetermined number or more of the free state candidate points are deleted, it is possible to reduce the processing requiring a long processing time while maintaining the reliability of the map matching processing. This is for the following reason.
[0069]
As described above, when generating the next candidate point from the candidate point in the previous matching state, the line segment where the candidate point in the previous matching state is located and the line segment directly or indirectly connected to the line segment Only the candidate points on these line segments and the error cost ec, the accumulated error cost es, and the reliability trst of the candidate points need to be obtained. Therefore, when the next candidate point is generated, the road on which the vehicle is traveling cannot be specified, so that the same processing must be performed on all the line segments around the virtual current position (A). For this reason, the load of the map matching process on the candidate points in the free state obtained last time is much larger than the load of the map matching process on the candidate points in the matching state obtained last time. In particular, in an area where the road density is high, the difference in the load becomes remarkable.
[0070]
Accordingly, by preferentially deleting candidate points in the free state, it can be expected that the processing time required for calculating the current position will be significantly reduced.
[0071]
The free state candidate point is a point where the vehicle travels in the first place, that is, a position that does not match the road on which the normal vehicle can be located, and its reliability as the current position is low. Accordingly, even if the number of free state candidate points is limited to some extent, the reliability of the current position calculation does not decrease so much.
[0072]
In this specification, means does not necessarily mean physical means, but also includes a case where the function of each means is realized by software. Further, the function of one unit may be realized by two or more physical units, or the function of two or more units may be realized by one physical unit.
[0073]
【The invention's effect】
According to the present invention, it is possible to provide a current position calculation device capable of reducing 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 calculating device 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 embodiment;
FIG. 3 is a flowchart illustrating a process of calculating a traveling direction and a traveling distance of a vehicle.
FIG. 4 is a flowchart illustrating a main process executed for each predetermined traveling distance according to the embodiment;
FIG. 5 is a flowchart showing a detailed process of one step (map matching process) shown in FIG. 4;
FIG. 6 is a schematic diagram illustrating 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 a candidate point;
FIG. 8 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and a candidate point;
FIG. 9 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and a candidate point;
FIG. 10 is a flowchart illustrating a current position display process according to the embodiment;
[Explanation of symbols]
Reference Signs List 10 Current position calculating device 11 Angular velocity sensor 12 Geomagnetic sensor 13 Vehicle speed sensor 14 Switch 15 CD-ROM
16 CD-ROM read driver 17 display 18 controller

Claims (5)

車両に搭載され、該車両の現在位置を算出する現在位置算出装置であって、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
道路データを格納した道路データ格納手段と、
前記進行方位および前記走行距離に基づき得られた相対変位に基づいて、車両の現在位置を仮想現在位置として推定し、該仮想現在位置を前記道路データ格納手段の道路データを構成する道路と照合して、現在位置の候補点をその信憑性を示す信頼度とともに算出し、該信頼度の最も高い候補点を現在位置と認定するマップマッチング手段とを備え、
該マップマッチング手段は、前記信頼度の最も高い候補点以外の候補点に対しても次回の仮想現在位置の推定およびそれに伴う候補点の算出を行い、かつ、予め定めた条件下で、前記仮想現在位置に対応する道路上に現在位置の候補点がみつからないとき、当該道路外の仮想現在位置を候補点とし、道路外にある候補点がn(予め定めた個数)以上存在する場合には、当該道路外の候補点を信頼度の高い順にソートし、n番目以降の候補点を削除することを特徴とする現在位置算出装置。
A current position calculation device mounted on a vehicle and calculating a current position of the vehicle,
Azimuth detecting means for detecting the traveling azimuth of the vehicle,
Distance calculating means for calculating the traveling distance of the vehicle,
Road data storage means for storing road data;
Based on the relative displacement obtained based on the traveling direction and the traveling distance, the current position of the vehicle is estimated as a virtual current position, and the virtual current position is compared with a road constituting road data of the road data storage unit. And a map matching means for calculating a candidate point at the current position together with a reliability indicating its credibility, and identifying the candidate point having the highest reliability as the current position,
The map matching unit estimates a next virtual current position and calculates a candidate point associated therewith also for candidate points other than the candidate point having the highest reliability, and under the predetermined condition, When no candidate point of the current position is found on the road corresponding to the current position, the virtual current position outside the road is set as a candidate point, and when there are n (predetermined number) or more candidate points outside the road, A candidate position outside the road is sorted in descending order of reliability, and the nth and subsequent candidate points are deleted.
前記マップマッチング手段は、前記仮想現在位置からその周辺の道路までの距離、およびその道路方位と車両方位との方位差に基づいてエラーコストを求めるとともに、該エラーコストに過去のエラーコストを反映させた累算エラーコストを求め、該累算エラーコストに基づいて当該候補点の信頼度を算出する請求項1記載の現在位置算出装置。The map matching means obtains an error cost based on a distance from the virtual current position to a road around the virtual current position and an azimuth difference between the road azimuth and the vehicle azimuth, and reflects a past error cost on the error cost. The current position calculation device according to claim 1, wherein the accumulated error cost is obtained, and the reliability of the candidate point is calculated based on the accumulated error cost. 前記マップマッチング手段は、前記予め定めた条件下で、前記仮想現在位置に対応する道路上に現在位置の候補点がみつからないとき、当該道路外の候補点に対して、道路上の候補点に比べて大きい一定のエラーコストを求めるとともに、該エラーコストに過去のエラーコストを反映させた累算エラーコストを求め、該累算エラーコストに基づいて当該候補点の信頼度を算出することを特徴とする請求項2記載の現在位置算出装置。The map matching means, when the candidate point of the current position is not found on the road corresponding to the virtual current position under the predetermined condition, the candidate point on the road is compared with the candidate point on the road. In addition to obtaining a constant error cost that is larger than the error cost, obtaining an accumulated error cost that reflects a past error cost on the error cost, and calculating the reliability of the candidate point based on the accumulated error cost. The current position calculating device according to claim 2, wherein 前記予め定めた条件は、前記仮想現在位置から所定検索範囲内に道路が存在し、かつ、道路方位と車両方位との方位差が所定値以内であることである請求項1、2または3記載の現在位置算出装置。4. The predetermined condition is that a road exists within a predetermined search range from the virtual current position, and that the azimuth difference between the road azimuth and the vehicle azimuth is within a predetermined value. 5. Current position calculation device. 前記マップマッチング手段は、前記道路外の候補点から新たな候補点を求めるとき、前記予め定めた条件を満たす道路上の候補点を新たな候補点とするとともに、当該道路外の候補点から得られた仮想現在位置そのものをも新たな候補点とすることを特徴とする請求項1〜4のいずれかに記載の現在位置算出装置。When finding a new candidate point from the candidate points outside the road, the map matching means sets a candidate point on the road that satisfies the predetermined condition as a new candidate point and obtains the candidate points from the candidate point outside the road. The current position calculation device according to claim 1, wherein the virtual current position itself is also set as a new candidate point.
JP14221095A 1995-06-08 1995-06-08 Current position calculation device Expired - Lifetime JP3573525B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14221095A JP3573525B2 (en) 1995-06-08 1995-06-08 Current position calculation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14221095A JP3573525B2 (en) 1995-06-08 1995-06-08 Current position calculation device

Publications (2)

Publication Number Publication Date
JPH08334355A JPH08334355A (en) 1996-12-17
JP3573525B2 true JP3573525B2 (en) 2004-10-06

Family

ID=15309965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14221095A Expired - Lifetime JP3573525B2 (en) 1995-06-08 1995-06-08 Current position calculation device

Country Status (1)

Country Link
JP (1) JP3573525B2 (en)

Also Published As

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

Similar Documents

Publication Publication Date Title
JP3545839B2 (en) Current position calculation device
JP3634006B2 (en) Current position calculation device
JP3599422B2 (en) Current position calculation device
JP3599420B2 (en) Current position calculation device
JP3634005B2 (en) Current position calculation device
JP3573525B2 (en) Current position calculation device
JP3569028B2 (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
JP3596939B2 (en) Current position calculation device
JP3545798B2 (en) Current position calculation device
JP3599421B2 (en) Current position calculation device
JP3596941B2 (en) Current position calculation device
JP3587904B2 (en) Current position calculation device
JP3660389B2 (en) Current position calculation system and current position calculation method
JP3596944B2 (en) Current position calculation system and current position calculation method
JP3693383B2 (en) Current position calculation system and current position calculation method
JP3859743B2 (en) Current position calculation device
JP3764508B2 (en) Current position calculation system and current position calculation method
JP3798444B2 (en) Current position calculation system and current position calculation method
JP3656662B2 (en) Current position calculation device
JP3545837B2 (en) Current position calculation device
JP3792270B2 (en) Current position calculation system and current position calculation method
JP3682091B2 (en) Current position calculation system and current position calculation method
JP3679826B2 (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: 20040520

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: 20040622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040629

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: 20080709

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080709

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130709

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130709

Year of fee payment: 9

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: 20130709

Year of fee payment: 9

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: 20130709

Year of fee payment: 9

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: 20130709

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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