JP3693383B2 - Current position calculation system and current position calculation method - Google Patents
Current position calculation system and current position calculation method Download PDFInfo
- Publication number
- JP3693383B2 JP3693383B2 JP14082395A JP14082395A JP3693383B2 JP 3693383 B2 JP3693383 B2 JP 3693383B2 JP 14082395 A JP14082395 A JP 14082395A JP 14082395 A JP14082395 A JP 14082395A JP 3693383 B2 JP3693383 B2 JP 3693383B2
- Authority
- JP
- Japan
- Prior art keywords
- candidate point
- line segment
- current position
- candidate
- vehicle
- 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
Links
Images
Description
【0001】
【産業上の利用分野】
本発明は、車両等の移動体に搭載され、該移動体の進行距離、進行方位などを測定して、これにより、当該移動体の現在位置を算出する現在位置算出システムに関するものであり、より詳細には、該移動体が道路上に存在すると判断された場合に、処理時間を増大させることなく、より正確に移動体の現在位置を算出する現在位置算出システムに関するものである。
【0002】
【従来技術】
従来より、道路上を走行する車両の現在位置を算出する現在位置算出システムにおいて、該車両の現在位置は、ジャイロ等の方位センサにより測定した車両の進行方向と、車速センサまたは距離センサにより測定した車両の進行距離とに基づいて算出されている。
【0003】
また、車両の進行距離は、一般的には、トランスミッションの出力軸、または、タイヤの回転数を計測して、その回転数に、タイヤ1回転あたりに車両が進む距離である距離係数を乗ずることにより求められている。
【0004】
さらに、特開昭61−56910号公報に記載されたように、車両の進行方向と進行距離から求めた現在位置に基づき、CD−ROMなどに記憶された地図データに含まれる所定の線分を取り出し、求められた現在位置から、該線分に垂線をおろし、垂線と線分との交点を表示装置に表示すべき位置とする、いわゆるマップマッチングの技術が知られており、このマップマッチングにより、表示装置上に、所定の道路と整合する車両の現在位置を示すシンボルを表わすことができる。
【0005】
【発明が解決しようとする課題】
しかしながら、上述した従来のマップマッチングの技術においては、求められた現在位置と線分との垂線の足に対応する位置を、表示すべき車両の位置と推定するため、実際に道路に沿って車両が走行した後の車両の位置と、表示すべき車両の位置との間の誤差が生じ、車両が走行するのにしたがってこの誤差が累積され、その結果、車両が実際に走行している位置と、算出された車両の現在位置との間に数百メートル程度の誤差が生じる可能性もあるという問題点があった。
【0006】
本発明は、車両の現在位置を、より少ない処理時間で、かつ、より正確に算出する現在位置算出システムを提供することを目的とする。
【0007】
【課題を解決する手段】
本発明の目的は、車両に搭載され、該車両の現在位置を算出する現在位置算出システムであって、車両の進行方位を検出する方位検出手段と、車両の走行距離を算出する距離算出手段と、前記進行方位および前記走行距離に基づき得られた相対変位と、車両が何れかの道路上に位置する状態、或いは、車両が道路上に位置しない状態を示す候補点とに基づき、車両の現在位置であると予想される仮想現在位置を生成する仮想現在位置生成手段と、前記道路上に位置する状態を示す候補点に関連して、前記候補点が位置する道路或いはこれに接続された道路を検索する道路検索手段と、前記道路検索手段により検索された道路に沿って、前記候補点から、車両の走行距離だけ進められた位置を算出する位置算出手段とを備え、前記位置算出手段により得られた位置に対応する点を新たな候補点とするように構成された現在位置算出システムにより達成される。
【0008】
本発明の好ましい実施態様においては、前記道路検索手段が、前記候補点が位置する道路或いはこれに接続された道路であって、その方位と前記進行方位との間の方位差が所定の範囲内である道路を選択するように構成されている。
【0009】
本発明のさらに好ましい実施態様においては、前記道路検索手段が、前記候補点が位置する道路或いはこれに接続された道路であって、前記仮想現在位置からの距離が所定の範囲内である道路を選択するように構成されている。
【0010】
本発明のさらに好ましい実施態様においては、さらに、前記道路上に位置しない状態を示す候補点に関連して、前記候補点から所定の範囲内に存在する道路を検索する第2の道路検索手段と、前記道路上に存在しない状態を示す候補点に関連する仮想現在位置から、前記第2の道路検索手段により検索された道路への垂線の交点を算出する第2の位置算出手段とを備え、前記第2の算出手段により得られた位置に対応する点を、他の新たな候補点とするように構成されている。
【0011】
本発明のさらに好ましい実施態様においては、さらに、前記新たな候補点が車両の現在位置であることの信憑性を示す信頼度を算出する信頼度算出手段と、前記新たな候補点に関連する信頼度を比較し、最も信頼度の値が大きな候補点の位置を、車両の現在位置とする判断手段とを備えている。
【0012】
本発明のさらに好ましい実施態様においては、前記道路検索手段が、前記候補点が位置する点から前記車両が位置する線分の車両の進行方向に存する端部までの距離を算出する残り距離算出手段と、前記算出された距離が、車両の進行距離よりも小さい場合に、前記端部に接続された線分を検索する接続線分検索手段とを備えている。
【0013】
【作用】
本発明によれば、候補点が位置する道路およびこれに接続された道路を検索し、検索された道路に、新たな候補点を生成するため、処理時間を要することなく、より正確な車両の現在位置を求めることが可能となる。
【0014】
また、本発明によれば、候補点から、車両の走行距離だけ進められた位置に対応する点を新たな候補点とするため、算出された新たな候補点の位置と、車両の現実の位置との間の誤差をより少なくすることが可能となる。
【0015】
本実施例の好ましい実施態様によれば、さらに、その方位と車両の進行方位との間の方位差が所定の範囲内である道路が選択され、選択された道路に関連して新たな候補点が得られるため、無駄な処理を経ることなく、正確な車両の現在位置を算出することが可能となる。
【0016】
本実施例の好ましい実施態様によれば、さらに、仮想現在位置からの距離が所定の範囲内である道路が選択され、選択された道路に関して新たな候補点が得られるため、無駄な処理を経ることなく、正確な車両の現在位置を算出することが可能となる。
【0017】
【実施例】
以下、添付図面に基づいて、本発明の実施例につき詳細に説明を加える。
【0018】
図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。図1に示すように、この現在位置算出装置10は、車両のヨーレイトを検出することで進行方位変化を検出する角速度センサ11と、地磁気を検出することで車両の進行方位を検出する地磁気センサ12と、車両のトランスミッションの出力軸の回転に比例した時間間隔でパルスを出力する車速センサ13を備えている。
【0019】
また、現在位置周辺の地図や現在位置を示すマーク等を表示するディスプレイ17と、ディスプレイ17に表示する地図の縮尺切り替えの指令をユーザに(運転者)から受け付けるスイッチ14と、デジタル地図データを記憶しておくCD−ROM15と、そのCD−ROM15から地図データを読みだすためのドライバ16とを備えている。また、以上に示した各周辺装置の動作の制御を行うコントローラ18を備えている。本実施例において、上述したディジタル地図データには、複数の線分の端部を示す座標から構成される道路データ、或いは、該道路の道幅を示す道路幅データ、道路が高速道路或いは一般道路であるかを示す高速道路フラグなどが含まれる。
【0020】
コントローラ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とを有する。
【0021】
また、コントローラ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とを含んでいる。
【0022】
以下、このように構成された現在位置算出装置10の動作について説明する。
【0023】
装置10の動作は、全般的に、車両の進行方位及び進行距離を算出する処理と、算出された進行方位及び距離から車両の現在位置を決定する処理と、得られた車両位置および方位を表示する処理との三つの処理に分けることができるため、これらについて順次説明する。
【0024】
図3に、車両の進行方位及び進行距離を算出する処理の流れを説明する。
【0025】
この処理は、一定周期、たとえば100mS毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0026】
このルーチンでは、最初、A/D変換器19から角速度センサ11の出力値を読み込む(ステップ301)。この角速度センサ11の出力値には、方位変化が出力されるので、車両の進行方向の相対的な値しか検出できない。このため、次に、A/D変換器20から地磁気センサ12の出力値を読み込み(ステップ302)、この地磁気センサ12の出力値により算出された絶対方位とジャイロ11から出力される方位変化(角速度出力)とを用いて、車両の推定方位を決定する(ステップ303)。
【0027】
この方位の決定は、たとえば、長い時間、車速が低い時には、角速度センサの誤差が大きいので、一定時間以上車速が低い場合には、地磁気センサ方位のみを利用するという方法により行う。
【0028】
次に、車速センサ13の出力するパルス数を、0.1秒毎に、カウンタ26で計数して、その計数値を読み込む(ステップ304)。この読み込んだ値に、距離係数を乗算することで、0.1秒間に進んだ距離を求める(ステップ305)。
【0029】
次に、このようにして求められた0.1秒間あたりの進行距離値を、前回得られた値に積算して、車両の進行距離が20mとなったかどうかを調べ(ステップ306)、20mに満たない場合(ステップ306でノー(No))、今回の処理を終了して、新たな処理を開始する。
【0030】
進行距離算出処理の結果、積算された進行距離が一定距離、例えば20mとなった場合(ステップ306でイエス(Yes))、その時点での進行方向と進行距離R(本実施例においては20m)とを出力する(ステップ307)。ステップ307では、さらに、積算距離を初期化して、新たに進行距離の積算を開始する。
【0031】
次に、算出された進行方位および進行距離に基づいて、車両の仮想現在位置を算出し、算出された仮想現在位置に基づき、車両の候補点を求める処理について説明する。
【0032】
図4に、この処理の流れを示す。
【0033】
本処理は、図3からの進行方位および進行距離が出力されるのを受けて起動され、実行されるマイクロプロセッサ24のルーチンである。すなわち、本実施例において、本処理は、車両が20m進む毎に起動される。
【0034】
さて、この処理では、まず、ステップ407で出力された進行方位と進行距離とを読み込む(ステップ401)。次に、それらの値に基づいて、車両の移動量を緯度経度方向、別々に、それぞれ求める。さらに、これらの各方向における移動量を、前回の車両の候補点を求める処理で得られた車両の候補点の位置に加算して、現在車両が存在すると推定される位置である仮想現在位置(A)を求める(ステップ402)。
【0035】
もし、装置の始動直後など、前回の車両の候補点を求める処理で得られた候補点が存在しない場合には、別途設定された位置を、前回得られた候補点の位置として用いて仮想現在位置(A)を求める。
【0036】
ここに、候補点につき説明を加える。装置の始動直後など、初期的な状態においては、仮想現在位置(A)は、ユーザ(運転者)がスイッチ14を用いて所定の情報を入力することなどにより、一意的に定まり、かつ、これは道路に対応する線分上に位置する。しかしながら、車両が走行した後には、ジャイロなどの方位センサの誤差などにより、仮想現在位置(A)が、道路に対応する線分上に存在しなくなる場合がある。その結果、たとえば、図5に示すように、道路が分岐している場合、すなわち、道路に対応する線分61の節点すなわち端部68から、二つの線分64および65があらわれる場合に、いずれの線分に対応する道路上に車両が存在するかが、明確にすることができない場合が多い。
【0037】
したがって、このような場合に、本実施例においては、後述する処理により得られた線分(図5に示す例では二つの線分)上に存在する点を、所定の条件の下で候補点として設定し、これらの現在位置、エラーコスト、後述する累算エラーコストなどを、それぞれ、メモリ25のRAMの所定の領域に記憶するように構成されている。なお、説明を容易にするため、以下の説明においては、特に複数の候補点であることを明示しない限り、単一の候補点から、新たな一以上の候補点を生成することとする。
【0038】
次いで、前回の車両の候補点を求める処理で得られたマッチング状態の候補点のみに関して、道路とのマッチングを行うための第1の道路検索処理が実行される(ステップ403)。なお、本実施例において、マッチング状態とは、ある仮想現在位置に関連して、該仮想現在位置との距離、或いは、その方位と車両の進行方位との間の方位差が、所定の範囲内であるような道路が存在し、その結果、仮想現在位置に基づき、道路上の所定の位置に候補点が得られた状態を称する。これに対して、ある仮想現在位置に関連して、上述した距離および方位差が、所定の範囲内であるような道路が存在しない場合が考えられる。本実施例においては、このような場合に、仮想現在位置Aに対応する点自体が候補点となり、このようにして得られた候補点を、フリー状態の候補点と称している。
【0039】
ここに、図6および図7は、本実施例にかかる第1の道路検索処理を詳細に示すフローチャートである。
【0040】
図6に示すように、この道路検索処理においては、まず、CD−ROM15から、ドライバ16およびDMAコントローラ23を介して、所定の道路データを読み出す(ステップ601)。本実施例においては、道路データとして、図8に示すように、2点間を結ぶ複数の線分51ないし55で近似し、それら線分を、その始点と終点の座標によって表したものなどを用いている。たとえば、線分53は、その始点(x3、y3)と終点(x4、y4)によって表現される。したがって、このステップ601においては、前回の処理により得られたマッチング状態の候補点が位置する線分が選択されて、これに関するデータが読み出される。
【0041】
次に、ステップ601において選択された線分の座標に基づき、候補点の位置から線分の車両の進行方向の端部までの長さが、20mに対応する長さ以下であるかどうかを判断する(ステップ602)。このステップ602においてNo(ノー)と判断された場合には、当該線分が、一次候補線分として一時的に記憶される(ステップ603)。これに対して、ステップ602においてYes(イエス)と判断された場合には、この線分の車両の進行方向の端部に接続されている線分が存在するか否かを判断する(ステップ604)。
【0042】
線分の端部に、他の線分が接続されている場合には、この接続されている線分を、一次候補線分として一時的に記憶される(ステップ605)。ここで、線分の端部に複数の線分が接続されている場合には、これら複数の線分のそれぞれが、一次候補線分として一時的に記憶される。その一方、このステップ604においてNo(ノー)と判断された場合には、ステップ606に進む。
【0043】
次いで、車両の進行方位と、線分の方位との間の角度を比較する角度比較処理が実行される(ステップ607)。図9は、本実施例にかかる角度比較処理を示すフローチャートである。図9に示すように、この処理においては、車両の進行方位と線分の方位との方位差θdを算出し(ステップ901)、この方位差θdの絶対値が、所定のしきい値θthよりも大きいか否かを判断する(ステップ902)。本実施例において、このしきい値θthは、30°に設定されている。ステップ902においてノー(No)と判断された場合には、処理を終了し、その一方、イエス(Yes)と判断された場合には、この道路を一次候補線分としない旨の判断がなされ、一時的に記憶されたこの一次候補線分に対応するデータが削除される(ステップ903)。
【0044】
図6のステップ607に示す角度比較処理が終了すると、ステップ608において複数の一次候補線分が記憶された場合には、他の一次候補線分についても角度比較処理が実行され(ステップ607、608)、全ての一次候補線分につき、角度比較処理が実行されると、ステップ609に進む。このようにして、前回の処理において得られた候補点が位置する線分、或いは、これに接続する線分のうち、その方位と車両の方位との間の方位差が、しきい値θth以下であるような線分が、一次候補線分として記憶される。
【0045】
ステップ609は、一時的に記憶された一次候補線分が、少なくとも一つ以上存在するかどうかを判断する。このステップ609においてノー(No)と判断された場合には、ステップ606に進む。その一方、ステップ609においてイエス(Yes)と判断された場合には、前回の処理において得られた候補点から、1或いは2の線分に沿って、車両の進行した距離R、本実施例では20mに対応する長さだけ進められた位置が、一次候補線分上にないか否かを判断する(ステップ610)。例えば、前述したステップ602でノー(No)と判断された結果得られた一次候補線分に関しては、このステップ610においてノー(No)と判断される。また、前述したステップ602でイエス(Yes)と判断された場合に得られた一次候補線分であっても、前回の処理で得られた候補点の位置から、この点が位置する線分の端部までの長さと、得られた一次候補線分の長さとの和が、距離R、すなわち、本実施例では20mに対応する長さより以上である場合には、このステップ610において、ノー(No)と判断される。換言すれば、このステップ610において、イエス(Yes)と判断される場合は、前回の処理で得られた候補点の位置から、この点が位置する線分の端部までの長さと、得られた一次候補線分の長さとの和が、距離R、すなわち、本実施例においては20mに対応する長さに満たない場合に限られる。
【0046】
さて、ステップ610においてノー(No)と判断された場合には、垂線距離比較処理が実行される(ステップ611)。ここに、図10は、本実施例にかかる垂線距離比較処理を示すフローチャートである。図10に示すように、この処理においては、仮想現在位置から一次候補線分に向けて垂線をひき、この垂線の長さLを求める(ステップ1001)。次いで、この垂線の長さLが、予め定められたしきい値Lth以下であるか否かを判断する(ステップ1002)。すなわち、一次候補線分が仮想現在位置から、しきい値Lthの範囲に存在しているかどうかを判断する。このステップ1002においてイエスと判断された場合には、この一次候補線分が、二次候補線分として記憶されるとともに、前回の処理で得られた候補点から、所定の線分に沿って、距離Rだけ離間した位置の座標データが、当該二次候補線分に対応する位置データとして記憶される。
【0047】
その一方、ステップ1002においてノー(No)と判断された場合には、この一次候補線分は消去され、その結果、二次候補線分は生成されない(ステップ1004)。
【0048】
このように、垂線距離比較処理611が終了すると、全ての一次候補線分につき、処理が終了しているか否かが判断される(ステップ612)。
【0049】
これに対して、前述したステップ610においてイエス(Yes)と判断された場合には、さらに、一次候補線分の車両の進行方向の端部に接続された線分が無いか否かが判断される(ステップ613)。このステップにおいてイエス(Yes)と判断された場合、すなわち、接続された線分が存在しないと判断された場合には、この一次候補線分は消去され、その結果、二次候補線分は生成されず(ステップ614)。ステップ612に進む。その一方、ステップ613においてノー(No)と判断された場合には、この接続された線分を、一次候補線分として一時的に記憶し(ステップ615)、さらに、角度比較処理が実行される(ステップ616)。
【0050】
ステップ610ないしステップ616の処理を繰り返すことにより、前回の処理により得られた候補点が位置する線分から、車両の進行方向に、該線分或いはこれに接続された線分に沿って、所定の距離Rだけ離間した点が存在し、その方位と車両の進行方位との間の方位差が、所定のしきい値θth以下であり、かつ、仮想現在位置との間の距離が、所定のしきい値Lth以下であるような二次候補線分を得ることができる。さらに、得られた二次線分に対応する位置データとして、前回の処理で得られた候補点から、所定の線分に沿って、距離Rだけ離間した位置の座標データを得ることができる。この座標データが、後述する候補点を示すデータに対応する。
【0051】
一次候補線分に関して、ステップ610ないしステップ616の処理が終了すると、これらステップを経た結果、二次候補線分が得られているか否かを判断する(ステップ617)。このステップ617において、ノー(No)と判断された場合には、ステップ606に進み、その一方、イエス(Yes)と判断された場合には、処理を終了する。
【0052】
たとえば、図5において、線分61上に存在したある候補点62に対して、仮想現在位置Aが、点63に示す位置に表わされるとする。このような場合に、まず、候補点62が位置する線分61を選択し(ステップ601)、この線分上の候補点62から、車両の進行方向の端部68までの距離を判断する(ステップ602)。図5の例の場合には、この線分に接続されている道路があるため、線分64、65が、それぞれ、一次候補線分として一時的に記憶され、それぞれに関連して、角度比較処理(ステップ607)が実行される。ここに、図5の例において、|θ(1)−θcar|<θth、かつ、|θ(2)−θcar|<θthであると仮定すると、ステップ610、611および612からなる処理ループが二回繰り返され、線分64、65のそれぞれに関連して、垂線距離比較処理(ステップ611)が実行される。
【0053】
さらに、図5の例において、L(1)<Lth、かつ、L(2)<Lthであったとすると、線分64、65が二次候補線分として記憶され、さらに、候補点62から、線分61および64、或いは、線分61および65に沿って、進行距離R(本実施例では20m)に対応する長さだけ進められた点が候補点66、67として設定され、この点の座標データ、仮想現在位置から線分までの距離L(1)、L(2)に対応するデータ、および、線分の角度θ(1)、θ(2)に対応するデータが記憶される。
【0054】
また、図11に示すように、線分64上の候補点66に対して、新たな仮想現在位置Aが、点71に示す位置に表わされ、その一方、線分65上の候補点67に対して、新たな現在位置A‘が、点72に示す位置に表わされるとする。この場合にも、候補点66に関連して、線分73、74が、一次候補線分として一時的に記憶されるとともに、候補点67に関連して、線分75が、一次候補線分として一時的に記憶される。さらに、これらに一次候補線分に関連して、角度比較処理、一定の条件を満たしている場合には、さらに垂線距離比較処理が実行される。図11に示す例において、線分73ないし75が、二次候補線分となり得るものであったとすると、図12に示すように、候補点66から、線分64および73、或いは、線分64および74に沿って、若しくは、候補点67から、線分65および75に沿って、車両の走行距離R(本実施例では20m)に対応する長さだけ進められた点が、候補点81、82、83として設定され、これらの座標データが記憶されるとともに、これら候補点に対応して、仮想現在位置Aから、線分73、74までのそれぞれの距離L1(1)、L1(2)に対応するデータ、および、仮想現在位置A’から、線分75までの距離L2(1)に対応するデータと、線分73、74の角度θ1(1)、θ1(2)に対応するデータ、および、線分75の角度θ2(1)に対応するデータとが記憶される。
【0055】
再度、図6および図7の第1の道路検索処理に戻る。ここで、ステップ604においてノー(No)と判断された場合、すなわち、前回の処理において得られた候補点が位置する線分の車両の進行方向の端部に接続している線分が存在しない場合、ステップ607ないし608において、一次候補線分が得られなかった場合(ステップ609でノー(No))、或いは、ステップ610ないしステップ616において、二次候補線分が得られなかった場合(ステップ617でノー(No))には、仮想現在位置を示す座標データが、候補点を示すデータとなる。
【0056】
このようにステップ403の第1の道路検索処理が終了すると、前回の車両の候補点を求める処理で得られたフリー状態の候補点に関して、道路とのマッチングを行うための第2の道路検索処理が実行される(ステップ404)。図13は、本実施例にかかる第2の道路検索処理を示すフローチャートである。
【0057】
図13に示すように、この処理(ステップ1301ないし1304)は、図5に示すマッチング状態の候補点に対する第1の道路検索処理(図4のステップ403)に類似している。これら二つの処理の間の相違は以下の点にある。すなわち、第1の道路検索処理においては、前回の車両の候補点を求める処理で得られた候補点が位置する線分、あるいは、これに接続する線分を、一次候補線分として一時的に記憶し、これら一次候補線分から、さらに、その方位と車両方位との方位差が所定のしきい値θth以下であって、かつ、仮想現在位置からの距離に対応する長さが所定のしきい値Lth以内の線分を、二次候補線分として選択している。これに対して、第2の道路検索処理においては、仮想現在位置(A)を中心とする予め設定された距離D内にある線分をすべて抽出し(ステップ1301)、これら線分から、その方位と車両方位との方位差が所定のしきい値θth以下の線分を選択し(ステップ1302)、さらに、選択された線分と仮想現在位置との間の距離を求め、この距離に対応する長さが所定のしきい値Lth以内の線分を選択している(ステップ1303)。換言すれば、第1の道路選択処理においては、候補点が位置している線分、或いは、当該線分の分岐点から延びる幾つかの線分などが選択されるが、図13のステップ1302の処理においては、読み出された地図データに対応する地図中の道路データから、抽出すべき線分が決定される。したがって、ステップ1301ないし1303を実行するための処理時間は、道路データに対応する道路の密度に依存し、特に、読み出された地図データに対応する地図が、市街地であった場合など、道路の密度が大きい場合などでは、この処理時間は、第1の道路検索処理における対応する処理を実行するのに必要な時間と比較すると大きい。
【0058】
この第2の道路検索処理において、ステップ1303が終了すると、ステップ1302およびステップ1303により取り出された線分、すなわち、その方位と車両方位との間の方位差が、しきい値θth以下であり、かつ、仮想現在位置からの距離に対応する長さがしきい値Lth以下であるような線分が二次候補線分として選択されるとともに、仮想現在位置から当該線分におろした垂線の足、すなわち、この垂線と線分との交点が、候補点として設定され、この座標データが記憶される(ステップ1304)。また、設定された候補点に対応して、仮想現在位置から線分までの距離を示すデータ、および、線分の方位と車両方位との間の方位差を示すデータが、記憶される。なお、第2の道路検索処理においては、仮想現在位置から線分おろした垂線と線分との交点が候補点となるが、これは、前回の処理により得られた候補点が、フリー状態であり、したがって、たどるべき線分が存在しないためである。
【0059】
なお、この第2の道路検索処理において、仮想現在位置から所定の範囲D内に線分が存在しない場合、その方位と車両の進行方位との方位差がしきい値θth以下の線分が存在しない場合、或いは、仮想現在位置からの距離に対応する長さがしきい値Lth以下であるような線分が存在しない場合には、仮想現在位置に対応する点が候補点となる。
【0060】
上述したように、ステップ404の第2の道路探索処理が終了すると、第1の道路検索処理および第2の道路検索処理により得られたn個の候補点に関連する垂線の長さL(i)(1≦i≦n)と、候補点が位置する二次候補線分の方位と車両の方位との間の方位差θd(i)とに基づき、以下の式により定義されるエラーコストec(i)が算出される(ステップ404)。
【0061】
ec(i)=α×|θd(i)|+β×L(i)
ここに、αおよびβは、重み係数である。これら重み係数の値は、車両の進行方位と線分の方位との間のずれと、仮想現在位置と線分との間のずれとの何れを、道路が選択される上で重視するかにしたがって決定される。たとえば、進行方位とその方位と方位が近い道路を選択することを重視する場合は、αを大きくするようにする。
【0062】
ついで、算出されたエラーコストec(i)と、前回の処理で得られた候補点に関連する累算エラーコストesとにしたがって、下記の式により定義される、今回の処理における累算エラーコストesを算出する(ステップ405)。
【0063】
es(i)=(1−k)×es+k×ec(i)
ここに、kは、0より大きく1より小さな重み係数である。この累算エラーコストes(i)は、前回以前の処理において算出されたエラーコストを、今回の処理において算出されるエラーコストにどのくらい反映させるかを表わしている。
【0064】
さらに、算出された累算エラーコストes(i)に基づき、下記の式に定義される信頼度trst(i)を算出する(ステップ406)。
【0065】
trst(i)=100/(1+es(i))
上記式から明らかなように、累算エラーコストec(i)が大きくなるのにしたがって、信頼度trst(i)は減少し、0(ゼロ)に近づく。その一方、これが小さくなるのにしたがって、信頼度trst(i)は増大し、その値は、100に近づく。
【0066】
このような処理をすることにより、ある候補点に対応して得られたn個の二次候補線分に関連する信頼度trst(i)が求められる。候補点が複数存在する場合には、それぞれの候補点に対応して得られた複数の二次候補線分に関連する信頼度trstを算出すればよい。
【0067】
なお、フリー状態の候補点に関連して、ステップ405で算出すべきエラーコストec(n)には、マッチング状態である場合に得られるエラーコストの値よりも大きな一定の値が与えられる。
【0068】
次いで、このように得られた候補点の各々に対応する信頼度trstの値にしたがって、これら新たな候補点をソートし(ステップ408)、最も信頼度の値の大きな候補点Cを、表示候補点CD、すなわち、ディスプレイ17上に表示するための候補点として、その位置、累算エラーコスト、信頼度、マッチング状態であるかフリー状態であるかを示す状態フラグなどを、メモリ25のRAMの所定の領域に記憶するとともに、表示候補点以外の他の候補点の位置、累算エラーコスト、信頼度、状態フラグなども、RAMの所定の領域に記憶する(ステップ409)。なお、本実施例においては、7個の候補点に関連するデータを記憶可能に構成されている。したがって、図4のステップ401ないし408の処理を実行した結果、8個以上の候補点が算出された場合には、これらのうち、信頼度trstの値が大きい順に7個の候補点に関連する種々のデータが、メモリ25のRAMの所定の領域に記憶されることになる。
【0069】
最後に、表示候補点に関連するデータが出力され(ステップ410)、処理を終了する。
【0070】
図4のステップ401ないし410を実行することにより得られた表示候補点は、図14に示すフローチャートに基づく処理によりディスプレイ17の画面上に表示される。
【0071】
本処理は、1秒毎に起動され実行されるマイクロプロセッサ24のルーチンである。
【0072】
最初、スイッチ14が押圧により地図の縮尺の変更を指示されているかを、パラレルI/O21の内容を見て判断する(ステップ1401)。もし、押されていれば(ステップ1401でイエス(Yes))、それに対応して、所定の縮尺フラグを設定する(ステップ1402)。
【0073】
次に、図4の処理を実行することにより得られた表示候補点の位置および方位を示すデータを、メモリ25のRAMの所定の領域から読み出し(ステップ1403)、ステップ1402で切り替えられた縮尺フラグの内容に応じた縮尺の地図をディスプレイ17に、例えば、図2に示すような状態で表示する(ステップ1404)。
【0074】
そして、地図に重畳して、表示候補点の位置およびその方位を、たとえば、先に示した図2のように、矢印記号“↑”を用いて表示する(ステップ1405)。そして最後に、これらに重畳して、北を示す北マークと、縮尺に対応した距離マークとを、図2のように表示する(ステップ1406)。
【0075】
なお、本実施例においては、上記のように矢印記号を用いて車両位置および方向を示したが、車両位置および方向の表示形態は、位置および進行方向が、表示状態が明確に示されるものであれば、その形態は任意でよい。また、北マーク等も同様である。
【0076】
本実施例によれば、マッチング状態の候補点から得られた仮想現在位置に関連して、当該候補点が位置する線分、或いは、これに接続された線分を検索するため、仮想現在位置の周辺に存在する全ての道路を検索する場合と比較すると、より短時間で、所望の線分を検索することが可能となる。
【0077】
また、本実施例によれば、マッチング状態の候補点の位置する線分および/または該候補点の位置する線分に接続された線分に沿って、車両の進行距離に対応する長さだけ、前記候補点から進められた位置を候補点とするため、算出された車両の現在位置と実際の車両の現在位置との間の誤差をより小さくすることが可能となる。
【0078】
本発明は、以上の実施例に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【0079】
たとえば、前記実施例においては、第1の道路検索処理において、マッチング状態の候補点の位置する線分或いはこれに接続された線分を一次候補線分として一時的に記憶し、これに関して角度比較処理を実行し、さらに、角度比較処理により方位差が所定の範囲内である一次候補線分が、所定の長さに満たない場合には、さらに、これに接続された線分を検索している。これは、本実施例においては、第1の道路検索処理が、車両の走行距離20mごとに実行されるため、候補点が位置している線分およびこれに接続する線分に対応する道路上に、車両が実際に位置している信憑性が高いからである。
【0080】
しかしながら、本発明は、このようなアルゴリズムに限定されるものではない。すなわち、候補点が位置する線分から、車両の走行距離だけ、線分に沿って進められた点を含む線分を、まず、すべて検索し、検索されたすべての線分に関して、角度比較処理を実行するように構成しても良い。
【0081】
また、本実施例において用いられたパラメータは、例示のために与えられたものに過ぎず、したがって、これらパラメータは、装置の処理速度、車両が走行する道路の種別(例えば、一般道路、高速道路など)にしたがって変更可能であることを理解すべきである。
【0082】
さらに、本明細書において、手段とは、必ずしも物理的手段を意味するものではなく、各手段の機能が、ソフトウエアによって実現される場合も包含する。また、一つの手段の機能が二以上の物理的手段により実現されても、二以上の手段の機能が一つの物理的手段により実現されてもよい。
【0083】
【発明の効果】
本発明によれば、車両の現在位置を、より少ない処理時間で、かつ、より正確に算出する現在位置算出システムを提供することが可能となる。
【図面の簡単な説明】
【図1】 図1は、本発明の実施例にかかる現在位置算出装置の構成を示すブロックダイヤグラムである。
【図2】 図2は、本実施例にかかる地図および現在位置の表示例を示す図である。
【図3】 図3は、本実施例にかかる車両の進行方位および進行距離を算出する処理を示すフローチャートである。
【図4】 図4は、本実施例にかかる車両の候補点を算出する処理を示すフローチャートである。
【図5】 図5は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図6】 図6は、本実施例にかかる第1の道路検索処理を示すフローチャートである。
【図7】 図7は、本実施例にかかる第1の道路検索処理を示すフローチャートである。
【図8】 図8は、本実施例にかかる道路データの一例を説明するための図である。
【図9】 図9は、本実施例にかかる角度比較処理を示すフローチャートである。
【図10】 図10は、本実施例にかかる垂線距離比較処理を示すフローチャートである。
【図11】 図11は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図12】 図12は、道路に対応する線分、仮想現在位置および候補点を説明するための図である。
【図13】 図13は、本実施例にかかる第2の道路検索処理を示すフローチャートである。
【図14】 図14は、本実施例にかかる現在位置表示処理を示すフローチャートである。
【符号の説明】
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 system that is mounted on a moving body such as a vehicle, measures a traveling distance, a traveling direction, and the like of the moving body, and thereby calculates a current position of the moving body. Specifically, the present invention relates to a current position calculation system that calculates the current position of a moving object more accurately without increasing the processing time when it is determined that the moving object exists on a road.
[0002]
[Prior art]
Conventionally, in a current position calculation system for calculating the current position of a vehicle traveling on a road, the current position of the vehicle is measured by a vehicle traveling direction 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]
Further, the travel distance of the vehicle is generally obtained by measuring the output shaft of the transmission or the rotation speed of the tire and multiplying the rotation speed by a distance coefficient that is the distance the vehicle travels per rotation of the tire. It is demanded by.
[0004]
Further, as described in JP-A-61-56910, based on the current position obtained from the traveling direction and traveling distance of the vehicle, a predetermined line segment included in the map data stored in a CD-ROM or the like is obtained. A so-called map matching technique is known in which a perpendicular line is drawn from the current position obtained and the intersection point between the perpendicular line and the line segment is to be displayed on the display device. On the display device, a symbol indicating the current position of the vehicle matching the predetermined road can be represented.
[0005]
[Problems to be solved by the invention]
However, in the conventional map matching technique described above, the position corresponding to the vertical foot between the current position and the line segment obtained is estimated as the position of the vehicle to be displayed. An error occurs between the position of the vehicle after the vehicle travels and the position of the vehicle to be displayed, and this error is accumulated as the vehicle travels, and as a result, the position where the vehicle is actually traveling There is a problem that an error of about several hundred meters may occur between the calculated current position of the vehicle.
[0006]
It is an object of the present invention to provide a current position calculation system that calculates a current position of a vehicle more accurately with less processing time.
[0007]
[Means for solving the problems]
An object of the present invention is a current position calculation system that is mounted on a vehicle and calculates the current position of the vehicle, the direction detection means for detecting the traveling direction of the vehicle, and the distance calculation means for calculating the travel distance of the vehicle, Based on the relative displacement obtained based on the traveling direction and the travel distance and a candidate point indicating a state where the vehicle is located on any road or a state where the vehicle is not located on the road. A virtual current position generating means for generating a virtual current position expected to be a position, and a road on which the candidate point is located or a road connected thereto in relation to a candidate point indicating a state of being located on the road And a position calculating means for calculating a position advanced from the candidate point by a travel distance of the vehicle along the road searched by the road searching means, and the position calculating means It is achieved by the current position calculating system which is configured to the point corresponding to more obtained position as a new candidate point.
[0008]
In a preferred embodiment of the present invention, the road search means is a road on which the candidate point is located or a road connected thereto, and the azimuth difference between the direction and the traveling direction is within a predetermined range. Is configured to select a road.
[0009]
In a further preferred aspect of the present invention, the road search means is a road on which the candidate point is located or a road connected thereto, and a road whose distance from the virtual current position is within a predetermined range. Configured to select.
[0010]
In a further preferred embodiment of the present invention, a second road search means for searching for a road existing within a predetermined range from the candidate point in relation to the candidate point indicating a state not located on the road. A second position calculating means for calculating an intersection of a perpendicular to the road searched by the second road searching means from a virtual current position related to a candidate point indicating a state that does not exist on the road, The point corresponding to the position obtained by the second calculating means is configured as another new candidate point.
[0011]
In a further preferred embodiment of the present invention, further, a reliability calculation means for calculating reliability indicating the credibility that the new candidate point is a current position of a vehicle, and a reliability associated with the new candidate point. And determining means for determining the position of the candidate point having the highest reliability value as the current position of the vehicle.
[0012]
In a further preferred embodiment of the present invention, the road search means calculates the distance from the point where the candidate point is located to the end portion of the line segment where the vehicle is located in the traveling direction of the vehicle. And a connecting line segment search means for searching for a line segment connected to the end when the calculated distance is smaller than the traveling distance of the vehicle.
[0013]
[Action]
According to the present invention, a road where a candidate point is located and a road connected thereto are searched, and a new candidate point is generated on the searched road. The current position can be obtained.
[0014]
Further, according to the present invention, since the point corresponding to the position advanced from the candidate point by the travel distance of the vehicle is set as a new candidate point, the calculated position of the new candidate point and the actual position of the vehicle It is possible to reduce the error between and.
[0015]
According to a preferred embodiment of the present embodiment, a road whose azimuth difference between the azimuth and the traveling azimuth of the vehicle is within a predetermined range is selected, and a new candidate point is associated with the selected road. Therefore, it is possible to calculate the accurate current position of the vehicle without going through unnecessary processing.
[0016]
According to a preferred embodiment of the present embodiment, a road whose distance from the virtual current position is within a predetermined range is selected, and a new candidate point is obtained for the selected road. Without this, it is possible to calculate the accurate current position of the vehicle.
[0017]
【Example】
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0018]
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
[0019]
In addition, a
[0020]
The
[0021]
The
[0022]
Hereinafter, the operation of the current
[0023]
The operation of the
[0024]
FIG. 3 illustrates a flow of processing for calculating the traveling direction and traveling distance of the vehicle.
[0025]
This process is a routine of the
[0026]
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. For this reason, next, the output value of the
[0027]
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.
[0028]
Next, the number of pulses output from the
[0029]
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.
[0030]
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 travel direction and the travel distance R (20 m in this embodiment) at that time Are output (step 307). In
[0031]
Next, a process of calculating a virtual current position of the vehicle based on the calculated traveling direction and traveling distance and obtaining a candidate point of the vehicle based on the calculated virtual current position will be described.
[0032]
FIG. 4 shows the flow of this process.
[0033]
This process is a routine of the
[0034]
In this process, first, the travel direction and travel distance output in
[0035]
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.
[0036]
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
[0037]
Therefore, in such a case, in this embodiment, a point existing on a line segment (two line segments in the example shown in FIG. 5) obtained by the processing described later is selected as a candidate point under a predetermined condition. The current position, error cost, accumulated error cost, which will be described later, and the like are each stored in a predetermined area of the RAM of the
[0038]
Next, the first road search process for matching with the road is executed only for the candidate points in the matching state obtained by the process for obtaining the candidate points of the previous vehicle (step 403). In this embodiment, the matching state means that a distance from the virtual current position or an azimuth difference between the direction and the traveling direction of the vehicle is within a predetermined range in relation to a certain virtual current position. This means a state in which a candidate point is obtained at a predetermined position on the road based on the virtual current position. On the other hand, in relation to a certain virtual current position, there may be a case where there is no road where the above-described distance and direction difference are within a predetermined range. In this embodiment, in such a case, the point itself corresponding to the virtual current position A is a candidate point, and the candidate point obtained in this way is referred to as a free state candidate point.
[0039]
6 and 7 are flowcharts showing in detail the first road search process according to the present embodiment.
[0040]
As shown in FIG. 6, in this road search process, first, predetermined road data is read from the CD-
[0041]
Next, based on the coordinates of the line segment selected in step 601, it is determined whether or not the length from the position of the candidate point to the end of the line segment in the traveling direction is equal to or less than the length corresponding to 20 m. (Step 602). If it is determined No in
[0042]
If another line segment is connected to the end of the line segment, the connected line segment is temporarily stored as a primary candidate line segment (step 605). Here, when a plurality of line segments are connected to the end portions of the line segments, each of the plurality of line segments is temporarily stored as a primary candidate line segment. On the other hand, if it is determined No in step 604, the process proceeds to step 606.
[0043]
Next, an angle comparison process is performed in which the angle between the traveling direction of the vehicle and the direction of the line segment is compared (step 607). FIG. 9 is a flowchart illustrating the angle comparison process according to the present embodiment. As shown in FIG. 9, in this process, an azimuth difference θd between the traveling azimuth of the vehicle and the azimuth of the line segment is calculated (step 901). Is also larger (step 902). In this embodiment, the threshold value θth is set to 30 °. When it is determined NO in
[0044]
When the angle comparison process shown in
[0045]
Step 609 determines whether there is at least one primary candidate line segment temporarily stored. If it is determined NO in step 609, the process proceeds to step 606. On the other hand, if it is determined as Yes in step 609, the distance R traveled by the vehicle along the
[0046]
If it is determined NO in step 610, a perpendicular distance comparison process is executed (step 611). FIG. 10 is a flowchart showing the perpendicular distance comparison processing according to the present embodiment. As shown in FIG. 10, in this process, a perpendicular line is drawn from the virtual current position toward the primary candidate line segment, and the length L of this perpendicular line is obtained (step 1001). Next, it is determined whether or not the length L of the perpendicular is equal to or less than a predetermined threshold value Lth (step 1002). That is, it is determined whether or not the primary candidate line segment exists within the range of the threshold value Lth from the virtual current position. If it is determined as YES in
[0047]
On the other hand, if it is determined NO in
[0048]
Thus, when the perpendicular distance comparison process 611 is completed, it is determined whether or not the process has been completed for all primary candidate line segments (step 612).
[0049]
On the other hand, if it is determined as Yes in step 610 described above, it is further determined whether or not there is a line segment connected to the end portion of the vehicle in the traveling direction of the primary candidate line segment. (Step 613). If it is determined yes in this step, that is, if it is determined that there is no connected line segment, this primary candidate line segment is deleted, and as a result, a secondary candidate line segment is generated. Not (step 614). Proceed to step 612. On the other hand, if it is determined NO in step 613, the connected line segment is temporarily stored as a primary candidate line segment (step 615), and angle comparison processing is further executed. (Step 616).
[0050]
By repeating the processing from step 610 to step 616, a predetermined segment is obtained from the line segment where the candidate point obtained by the previous process is located along the line segment or a line segment connected thereto in the traveling direction of the vehicle. There is a point separated by a distance R, the azimuth difference between the azimuth and the traveling azimuth of the vehicle is equal to or smaller than a predetermined threshold value θth, and the distance from the virtual current position is a predetermined value. A secondary candidate line segment that is equal to or less than the threshold value Lth can be obtained. Furthermore, as position data corresponding to the obtained secondary line segment, coordinate data of a position separated by a distance R along a predetermined line segment can be obtained from the candidate point obtained in the previous process. This coordinate data corresponds to data indicating candidate points to be described later.
[0051]
When the processing from step 610 to step 616 is completed for the primary candidate line segment, it is determined whether or not the secondary candidate line segment is obtained as a result of these steps (step 617). In step 617, if it is determined no (No), the process proceeds to step 606. On the other hand, if it is determined yes (Yes), the process ends.
[0052]
For example, in FIG. 5, it is assumed that the virtual current position A is represented at a position indicated by a
[0053]
Furthermore, in the example of FIG. 5, assuming that L (1) <Lth and L (2) <Lth, the
[0054]
Further, as shown in FIG. 11, a new virtual current position A is represented at the position indicated by a
[0055]
Again, the process returns to the first road search process of FIGS. 6 and 7. Here, when it is determined as No (No) in Step 604, that is, there is no line segment connected to the end of the vehicle in the traveling direction of the line segment where the candidate point obtained in the previous process is located. If no primary candidate line segment is obtained in
[0056]
When the first road search process in
[0057]
As shown in FIG. 13, this process (steps 1301 to 1304) is similar to the first road search process (step 403 in FIG. 4) for the candidate points in the matching state shown in FIG. The difference between these two processes is as follows. That is, in the first road search process, the line segment where the candidate point obtained by the process for obtaining the candidate point of the previous vehicle is located or the line segment connected thereto is temporarily used as the primary candidate line segment. From these primary candidate line segments, further, the direction difference between the direction and the vehicle direction is equal to or smaller than a predetermined threshold value θth, and the length corresponding to the distance from the virtual current position is a predetermined threshold. A line segment within the value Lth is selected as a secondary candidate line segment. On the other hand, in the second road search process, all the line segments within the preset distance D centered on the virtual current position (A) are extracted (step 1301), and the direction is determined from these line segments. A line segment whose azimuth difference between the vehicle direction and the vehicle direction is equal to or smaller than a predetermined threshold value θth is selected (step 1302). A line segment whose length is within a predetermined threshold Lth is selected (step 1303). In other words, in the first road selection process, the line segment where the candidate point is located, or some line segments extending from the branch point of the line segment are selected, but step 1302 in FIG. In this process, a line segment to be extracted is determined from road data in the map corresponding to the read map data. Therefore, the processing time for executing steps 1301 to 1303 depends on the density of the road corresponding to the road data, and particularly when the map corresponding to the read map data is an urban area. In the case where the density is high, this processing time is longer than the time required to execute the corresponding processing in the first road search processing.
[0058]
In this second road search process, when step 1303 ends, the line segment extracted in
[0059]
In the second road search process, when there is no line segment within the predetermined range D from the virtual current position, there is a line segment whose azimuth difference between the direction and the traveling direction of the vehicle is equal to or smaller than the threshold value θth. Otherwise, or when there is no line segment whose length corresponding to the distance from the virtual current position is equal to or less than the threshold value Lth, the point corresponding to the virtual current position is a candidate point.
[0060]
As described above, when the second road search process in step 404 is finished, the length L (i of the perpendicular line related to the n candidate points obtained by the first road search process and the second road search process is obtained. ) (1 ≦ i ≦ n) and an orientation difference θd (i) between the orientation of the secondary candidate line segment where the candidate point is located and the orientation of the vehicle, the error cost ec defined by the following equation: (I) is calculated (step 404).
[0061]
ec (i) = α × | θd (i) | + β × L (i)
Here, α and β are weighting factors. The values of these weighting factors should be used to select a road between a deviation between the traveling direction of the vehicle and the direction of the line segment, or a deviation between the virtual current position and the line segment. Therefore, it is determined. For example, when it is important to select a traveling direction and a road having a similar direction and direction, α is increased.
[0062]
Next, the accumulated error cost in the current process defined by the following equation according to the calculated error cost ec (i) and the accumulated error cost es related to the candidate point obtained in the previous process. es is calculated (step 405).
[0063]
es (i) = (1-k) × es + k × ec (i)
Here, k is a weight coefficient larger than 0 and smaller than 1. This accumulated error cost es (i) represents how much the error cost calculated in the previous process is reflected in the error cost calculated in the current process.
[0064]
Further, based on the calculated accumulated error cost es (i), the reliability trst (i) defined in the following equation is calculated (step 406).
[0065]
trst (i) = 100 / (1 + es (i))
As is clear from the above equation, as the accumulated error cost ec (i) increases, the reliability trst (i) decreases and approaches 0 (zero). On the other hand, as it decreases, the reliability trst (i) increases and its value approaches 100.
[0066]
By performing such processing, the reliability trst (i) related to the n secondary candidate line segments obtained corresponding to a certain candidate point is obtained. When there are a plurality of candidate points, the reliability trst related to the plurality of secondary candidate line segments obtained corresponding to each candidate point may be calculated.
[0067]
In relation to the candidate point in the free state, the error cost ec (n) to be calculated in step 405 is given a constant value larger than the error cost value obtained in the matching state.
[0068]
Next, the new candidate points are sorted according to the value of the reliability trst corresponding to each of the candidate points thus obtained (step 408), and the candidate point C having the highest reliability value is displayed as a display candidate. The point CD, that is, as a candidate point to be displayed on the
[0069]
Finally, data related to the display candidate point is output (step 410), and the process ends.
[0070]
The display candidate points obtained by executing
[0071]
This process is a routine of the
[0072]
First, it is determined by checking the contents of the parallel I /
[0073]
Next, data indicating the position and orientation of the display candidate point obtained by executing the processing of FIG. 4 is read from a predetermined area of the RAM of the memory 25 (step 1403), and the scale flag switched in step 1402 A map of a scale corresponding to the contents of is displayed on the
[0074]
Then, the position of the display candidate point and its orientation are displayed using the arrow symbol “↑” as shown in FIG. 2, for example, as shown in FIG. 2 (step 1405). 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 1406).
[0075]
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.
[0076]
According to this embodiment, in order to search for a line segment where the candidate point is located or connected to the virtual current position obtained from the matching candidate point, the virtual current position is searched. As compared with the case of searching for all roads existing in the vicinity, the desired line segment can be searched in a shorter time.
[0077]
Further, according to the present embodiment, only the length corresponding to the traveling distance of the vehicle along the line segment where the candidate point in the matching state is located and / or the line segment connected to the line segment where the candidate point is located. Since the position advanced from the candidate point is set as the candidate point, the error between the calculated current position of the vehicle and the actual current position of the vehicle can be further reduced.
[0078]
The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the invention described in the claims, and these are also included in the scope of the present invention. Needless to say.
[0079]
For example, in the above-described embodiment, in the first road search process, the line segment where the candidate point in the matching state is located or the line segment connected thereto is temporarily stored as the primary candidate line segment, and the angle comparison is performed on this. If the primary candidate line segment whose azimuth difference is within the predetermined range is less than the predetermined length by the angle comparison process, the line segment connected to this is further searched. Yes. This is because, in the present embodiment, the first road search process is executed every 20 m of the vehicle travel distance, and therefore on the road corresponding to the line segment where the candidate point is located and the line segment connected thereto. In addition, the credibility that the vehicle is actually located is high.
[0080]
However, the present invention is not limited to such an algorithm. That is, from the line segment where the candidate point is located, first, all line segments that include points advanced along the line segment by the distance traveled by the vehicle are searched, and the angle comparison process is performed for all the searched line segments. It may be configured to execute.
[0081]
In addition, the parameters used in this embodiment are merely given for illustration, and therefore these parameters are the processing speed of the device, the type of road on which the vehicle is traveling (for example, general road, highway) It should be understood that the change can be made according to the above.
[0082]
Furthermore, in this specification, the means does not necessarily mean a physical means, but includes cases where the functions of the means are 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.
[0083]
【The invention's effect】
According to the present invention, it is possible to provide a current position calculation system that calculates a current position of a vehicle more accurately with less processing time.
[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 illustrating a process of calculating a traveling direction and a traveling distance of the vehicle according to the present embodiment.
FIG. 4 is a flowchart illustrating a process for calculating candidate points for a vehicle according to the embodiment.
FIG. 5 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points;
FIG. 6 is a flowchart illustrating a first road search process according to the embodiment.
FIG. 7 is a flowchart illustrating a first road search process according to the embodiment.
FIG. 8 is a diagram for explaining an example of road data according to the embodiment.
FIG. 9 is a flowchart illustrating an angle comparison process according to the present embodiment.
FIG. 10 is a flowchart illustrating normal distance comparison processing according to the embodiment.
FIG. 11 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points;
FIG. 12 is a diagram for explaining a line segment corresponding to a road, a virtual current position, and candidate points;
FIG. 13 is a flowchart of a second road search process according to the embodiment.
FIG. 14 is a flowchart illustrating a current position display process according to the embodiment.
[Explanation of symbols]
DESCRIPTION OF
16 CD-
Claims (5)
複数の線分からなる道路地図を記憶した記憶手段と、
前記車両の進行方位を検出する方位検出手段と、
前記車両の走行距離を測定する距離測定手段と、
前記車両の現在位置を算出する現在位置算出手段と
を備え、
前記現在位置算出手段は、
前回算出された候補点毎に、当該候補点と、前記進行方位および前記走行距離から得られる当該候補点が算出されてからの相対変位とに基づいて、前記車両の仮想現在位置を算出する仮想現在位置算出手段と、
前記前回算出された候補点毎に、当該候補点が位置する線分を前記記憶手段から読み出し、前記前回算出された候補点から当該読み出した線分における前記車両の進行方位側の端部までの残り距離が、前記前回算出された候補点が算出されてから前記距離測定手段によって測定された前記車両の走行距離である進行距離未満の場合に、当該読み出した線分に接続された線分を前記記憶手段から検索し、当該検索した線分を候補線分として選択する道路選択手段と、
前記前回算出された候補点毎に、前記残り距離が前記進行距離未満の場合に、前記前回算出された候補点が位置する線分および前記道路選択手段によって選択された候補線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出し、前記残り距離が前記進行距離以上の場合に、前記前回算出された候補点が位置する線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出する候補点算出手段と、
前記仮想現在位置算出手段によって算出された前記車両の仮想現在位置から前記候補点算出手段によって算出された今回の候補点が位置する線分までの距離、および前記車両の進行方位と前記今回の候補点が位置する線分の方位との方位差に基づいて、前記今回の候補点の信頼度を算出する信頼度算出手段と、
前記信頼度算出手段によって算出された信頼度に基づいて、前記今回の候補点の中から前記車両の現在位置を決定する現在位置決定手段と
を有することを特徴とする現在位置算出システム。A current position calculation system that is mounted on a vehicle and calculates a current position of the vehicle,
Storage means for storing a road map comprising a plurality of line segments;
Direction detecting means for detecting the traveling direction of the vehicle;
Distance measuring means for measuring the travel distance of the vehicle;
A current position calculating means for calculating the current position of the vehicle,
The current position calculating means includes
For each candidate point calculated last time, the virtual current position of the vehicle is calculated based on the candidate point and the relative displacement after the candidate point obtained from the traveling direction and the travel distance is calculated. Current position calculating means;
For each of the previously calculated candidate points, the line segment where the candidate point is located is read from the storage means, and from the previously calculated candidate point to the end of the read line segment on the traveling direction side of the vehicle If the remaining distance is less than the travel distance that is the travel distance of the vehicle measured by the distance measuring means since the candidate point calculated last time is calculated, the line segment connected to the read line segment is Road selection means for searching from the storage means and selecting the searched line segment as a candidate line segment;
For each of the previously calculated candidate points, when the remaining distance is less than the travel distance, along the line segment where the previously calculated candidate point is located and the candidate line segment selected by the road selection means, A position advanced by the traveling distance from the previously calculated candidate point is calculated as a current candidate point, and when the remaining distance is equal to or longer than the traveling distance, along the line segment where the previously calculated candidate point is located A candidate point calculating means for calculating a position advanced by the travel distance from the previously calculated candidate point as a current candidate point;
The distance from the virtual current position of the vehicle calculated by the virtual current position calculating means to the line segment where the current candidate point calculated by the candidate point calculating means is located, and the traveling direction of the vehicle and the current candidate A reliability calculation means for calculating the reliability of the candidate point of this time, based on an azimuth difference with the azimuth of the line segment where the point is located;
A current position calculation system comprising: current position determination means for determining the current position of the vehicle from the current candidate points based on the reliability calculated by the reliability calculation means.
検索した線分のうち、前記仮想現在位置の車両の進行方位との方位差が所定範囲内の線分を前記候補線分として選択し、
前記候補点算出手段は、
前記残り距離が前記進行距離未満の場合、前記前回算出された候補点が位置する線分および前記道路選択手段によって選択された候補線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出し、
前記残り距離が前記進行距離以上の場合であって、かつ前記前回算出された候補点が位置する線分の方位と前記仮想現在位置の車両の進行方位との方位差が所定範囲内の場合には、前記前回算出された候補点が位置する線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出することを特徴とする請求項1に記載の現在位置算出システム。The road selection means is
Among the searched line segments, select a line segment whose azimuth difference with the traveling direction of the vehicle at the virtual current position is within a predetermined range as the candidate line segment,
The candidate point calculation means includes:
When the remaining distance is less than the travel distance, the travel distance from the previously calculated candidate point along the line segment where the previously calculated candidate point is located and the candidate line segment selected by the road selection unit Calculated as the candidate point for this time,
When the remaining distance is equal to or longer than the traveling distance, and the difference between the azimuth of the line segment where the previously calculated candidate point is located and the traveling azimuth of the virtual current position is within a predetermined range The method according to claim 1, wherein a position advanced by the travel distance from the previously calculated candidate point along the line segment where the previously calculated candidate point is located is calculated as the current candidate point. The current position calculation system described.
検索した線分のうち、前記仮想現在位置から所定距離以内にある線分を前記候補線分として選択し、
前記候補点算出手段は、
前記残り距離が前記進行距離未満の場合、前記前回算出された候補点が位置する線分および前記道路選択手段によって選択された候補線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出し、
前記残り距離が前記進行距離以上の場合であって、かつ前記前回算出された候補点が位置する線分が前記仮想現在位置から所定距離以内にある場合には、前記前回算出された候補点が位置する線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出することを特徴とする請求項1または2に記載の現在位置算出システム。The road selection means is
Among the searched line segments, select a line segment within a predetermined distance from the virtual current position as the candidate line segment,
The candidate point calculation means includes:
When the remaining distance is less than the travel distance, the travel distance from the previously calculated candidate point along the line segment where the previously calculated candidate point is located and the candidate line segment selected by the road selection unit Calculated as the candidate point for this time,
If the remaining distance is greater than or equal to the travel distance, and the line segment where the previously calculated candidate point is located is within a predetermined distance from the virtual current position, the previously calculated candidate point is 3. The current position calculation system according to claim 1, wherein a position advanced by the travel distance from the previously calculated candidate point along the line segment is calculated as a current candidate point. 4.
前記残り距離が前記進行距離未満であって、かつ前記前回算出された候補点が位置する線分に接続された線分が前記記憶手段内に存在しない場合に、前記仮想現在位置を今回の候補点であるフリーの候補点としてさらに算出し、
前記前回算出された候補点が前記フリーの候補点である場合に、前記フリーの候補点に基づいて算出された前記仮想現在位置から所定距離以内に存在する線分を検索し、前記フリーの候補点に基づいて算出され前記仮想現在位置から当該検索した線分への垂線の交点を今回の候補点として算出することを特徴とする請求項1から3のいずれかに記載の現在位置算出システム。The candidate point calculation means includes:
If the remaining distance is less than the travel distance and a line segment connected to the line segment where the previously calculated candidate point is located does not exist in the storage unit, the virtual current position is determined as the current candidate. Further calculate as free candidate points,
When the previously calculated candidate point is the free candidate point, a line segment existing within a predetermined distance from the virtual current position calculated based on the free candidate point is searched, and the free candidate The current position calculation system according to any one of claims 1 to 3, wherein an intersection of a perpendicular calculated from a virtual current position to the searched line segment is calculated as a candidate point for this time.
現在位置算出システムは、
複数の線分からなる道路地図を記憶手段に記憶する記憶ステップと、
前記車両の進行方位を検出する方位検出ステップと、
前記車両の走行距離を測定する距離測定ステップと、
前記車両の現在位置を算出する現在位置算出ステップと
を行い、
前記現在位置算出ステップは、
前回算出された候補点毎に、当該候補点と、前記進行方位および前記走行距離から得られる当該候補点が算出されてからの相対変位とに基づいて、前記車両の仮想現在位置を算出する仮想現在位置算出ステップと、
前記前回算出された候補点毎に、当該候補点が位置する線分を前記記憶手段から読み出し、前記前回算出された候補点から当該読み出した線分における前記車両の進行方位側の端部までの残り距離が、前記前回算出された候補点が算出されてから前記距離測定ステップにおいて測定した前記車両の走行距離である進行距離未満の場合に、当該読み出した線分に接続された線分を前記記憶手段から検索し、当該検索した線分を候補線分として選択する道路選択ステップと、
前記前回算出された候補点毎に、前記残り距離が前記進行距離未満の場合に、前記前回算出された候補点が位置する線分および前記道路選択ステップにおいて選択した候補線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出し、前記残り距離が前記進行距離以上の場合に、前記前回算出された候補点が位置する線分に沿って、前記前回算出された候補点から前記進行距離だけ進めた位置を今回の候補点として算出する候補点算出ステップと、
前記仮想現在位置算出ステップにおいて算出した前記車両の仮想現在位置から前記候補点算出ステップにおいて算出した今回の候補点が位置する線分までの距離、および前記車両の進行方位と前記今回の候補点が位置する線分の方位との方位差に基づいて、前記今回の候補点の信頼度を算出する信頼度算出ステップと、
前記信頼度算出ステップにおいて算出した信頼度に基づいて、前記今回の候補点の中から前記車両の現在位置を決定する現在位置決定ステップと
を含むことを特徴とする現在位置算出方法。A current position calculation method in a current position calculation system that is mounted on a vehicle and calculates a current position of the vehicle,
The current position calculation system
A storage step of storing a road map comprising a plurality of line segments in the storage means;
A direction detecting step for detecting a traveling direction of the vehicle;
A distance measuring step for measuring a travel distance of the vehicle;
Performing a current position calculating step for calculating a current position of the vehicle;
The current position calculating step includes:
For each candidate point calculated last time, the virtual current position of the vehicle is calculated based on the candidate point and the relative displacement after the candidate point obtained from the traveling direction and the travel distance is calculated. A current position calculating step;
For each of the previously calculated candidate points, the line segment where the candidate point is located is read from the storage means, and from the previously calculated candidate point to the end of the read line segment on the traveling direction side of the vehicle If the remaining distance is less than the travel distance that is the travel distance of the vehicle measured in the distance measurement step after the previously calculated candidate point is calculated, the line segment connected to the read line segment is A road selection step of searching from the storage means and selecting the searched line segment as a candidate line segment;
For each of the previously calculated candidate points, when the remaining distance is less than the travel distance, along the line segment where the previously calculated candidate point is located and the candidate line segment selected in the road selection step, A position advanced by the travel distance from the previously calculated candidate point is calculated as the current candidate point, and when the remaining distance is greater than or equal to the travel distance, along the line segment where the previously calculated candidate point is located A candidate point calculation step of calculating a position advanced by the travel distance from the previously calculated candidate point as a current candidate point;
Before Symbol distance from the virtual current position of the vehicle calculated in the virtual current position calculation step to the segment candidate points of the current calculated it is positioned at said candidate point calculating step, and traveling direction and the current candidate points of the vehicle A reliability calculation step of calculating the reliability of the candidate point of this time, based on the azimuth difference with the direction of the line segment where
And a current position determining step of determining a current position of the vehicle from the current candidate points based on the reliability calculated in the reliability calculating step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14082395A JP3693383B2 (en) | 1995-06-07 | 1995-06-07 | Current position calculation system and current position calculation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14082395A JP3693383B2 (en) | 1995-06-07 | 1995-06-07 | Current position calculation system and current position calculation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08334350A JPH08334350A (en) | 1996-12-17 |
JP3693383B2 true JP3693383B2 (en) | 2005-09-07 |
Family
ID=15277557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14082395A Expired - Lifetime JP3693383B2 (en) | 1995-06-07 | 1995-06-07 | Current position calculation system and current position calculation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3693383B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006163916A (en) * | 2004-12-08 | 2006-06-22 | Nippon Telegr & Teleph Corp <Ntt> | Straight line pattern identification method and device, and program |
-
1995
- 1995-06-07 JP JP14082395A patent/JP3693383B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH08334350A (en) | 1996-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3545839B2 (en) | Current position calculation device | |
JP3634006B2 (en) | Current position calculation device | |
JP3693383B2 (en) | Current position calculation system and current position calculation method | |
JP3596943B2 (en) | Current position calculation system and current position calculation method | |
JP3679450B2 (en) | Current position calculation device and current position calculation method | |
JP3634005B2 (en) | Current position calculation device | |
JP3660389B2 (en) | Current position calculation system and current position calculation method | |
JP3660392B2 (en) | Current position calculation system and current position calculation method | |
JP3758710B2 (en) | Current position calculation system and current position calculation method | |
JP3599420B2 (en) | Current position calculation device | |
JP3682091B2 (en) | Current position calculation system and current position calculation method | |
JP3764508B2 (en) | Current position calculation system and current position calculation method | |
JP3545838B2 (en) | Current position calculation device | |
JP3798444B2 (en) | Current position calculation system and current position calculation method | |
JP3596944B2 (en) | Current position calculation system and current position calculation method | |
JP3599422B2 (en) | Current position calculation device | |
JP3792270B2 (en) | Current position calculation system and current position calculation method | |
JP3569028B2 (en) | Current position calculation device | |
JP3545837B2 (en) | Current position calculation device | |
JP3587904B2 (en) | Current position calculation device | |
JP3679826B2 (en) | Current position calculation system and current position calculation method | |
JP3596941B2 (en) | Current position calculation device | |
JP3859743B2 (en) | Current position calculation device | |
JP3656661B2 (en) | Current position calculation system and current position calculation method | |
JP3599421B2 (en) | Current position calculation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040701 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040727 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050125 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050405 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050517 |
|
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: 20050614 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050621 |
|
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: 20080701 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130701 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130701 Year of fee payment: 8 |
|
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: 20130701 Year of fee payment: 8 |
|
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: 20130701 Year of fee payment: 8 |
|
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: 20130701 Year of fee payment: 8 |
|
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 |