(57)【要約】【課題】  すれ違い可能な待避所の場所を示す情報を容易かつ低コストで取得することのできる技術を提供する。【解決手段】  現在位置算出装置において車両が所定の道幅以下の道路を走行している間に、（１）車両が進行方位に対し道路の左側に寄り、（２）所定の車両速度以下となり、（３）車両が進行方位に対し道路の右側に寄る、ことを検出した場合、（２）の状態となった位置をすれ違い可能な場所と判定する。【選択図】  図１
2006267005.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載される現在位置算出装置であって、
線分で示される道路データと、道路の道幅とを含む地図データを記憶する地図データ記憶手段と、
搭載される車両の車幅を記憶する車幅記憶手段と、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
車両の走行速度を算出する速度算出手段と、
前記方位検出手段により検出される進行方位と、前記距離算出手段により算出される走行距離と、前記地図データに含まれる道路データとに基づき、何れかの道路上に存在する車両の現在位置を算出する現在位置算出手段と、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下である間に、前記方位検出手段により検出される進行方位が、該車両の存在する道路の左側前方を向いて走行する状態を示した後に、前記距離算出手段により算出される該車両の走行速度が所定速度以下となり、該状態となった後に、前記方位検出手段により検出される進行方位が、該車両の存在する道路の右側前方を向いて走行する状態となる場合、前記車両の速度が所定速度以下となった位置をすれ違い可能な場所と判定する判定手段と、
前記判定されたすれ違い可能な場所を示す情報を出力する出力手段と、
を有することを特徴とする現在位置算出装置。
【請求項２】
車両に搭載される現在位置算出装置であって、
線分で示される道路データと、道路の道幅とを含む地図データを記憶する地図データ記憶手段と、
搭載される車両の車幅を記憶する車幅記憶手段と、
車両の進行方位を検出する方位検出手段と、
車両の走行距離を算出する距離算出手段と、
車両の走行速度を算出する速度算出手段と、
前記方位検出手段により検出された前記進行方位と、前記距離算出手段により算出された前記走行距離と、前記地図データに含まれる道路データとに基づき、何れかの道路上に存在する車両の現在位置を算出する現在位置算出手段と、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、該車両の速度が所定速度以下となるときに、前記現在位置判定手段により算出された現在位置を記憶する車両位置記憶手段と、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、前記車両位置記憶手段への現在位置の記憶以降に、該車両の進行方位が該車両の存在する道路の右側前方を向いている場合、該車両の現在位置における進行方位及び該車両の存在する道路の線分からなる角度と、該車両の走行距離とから、該車両の存在する道路の垂直方向への移動距離を算出する第１の移動距離算出手段と、
前記第２の移動距離算出手段により算出される移動距離が第１の閾値以上である場合、前記判定値に第１の値を加算する第１の判定値加算手段と、
前記判定値の合計が所定の閾値以上となる場合、前記車両位置記憶手段に記憶される位置をすれ違い可能な場所と判定する判定手段と、
前記すれ違い可能な場所と判定された位置を出力する出力手段と、
を有することを特徴とする現在位置算出装置。
【請求項３】
請求項２記載の現在位置算出装置であって、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、且つ、該車両の進行方位が該車両の存在する道路の左側前方を向いている場合、該車両の現在位置における進行方位及び該車両の存在する道路を示す線分からなる角度と、該車両の走行距離とから、該車両の存在する道路の垂直方向への移動距離を算出する第２の移動距離算出手段と、
前記第２の移動距離算出手段により算出される移動距離が第２の閾値以上である場合、判定値に第２の値を加算する第２の判定値加算手段と、をさらに有し、
前記車両位置記憶手段が、前記第２の判定値加算手段による加算以降に、該車両の速度が所定速度以下となるときに、前記現在位置判定手段により算出された現在位置を記憶する
ことを特徴とする現在位置算出装置。
【請求項４】
請求項２又は３記載の現在位置算出装置であって、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下である場合に、前記速度算出手段により算出された車両の走行速度を記憶する速度記憶手段と、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、且つ、前記第１の判定値加算手段による加算以降に、前記速度記憶手段から速度を読み出し、該読み出した速度と、現在の車両の速度との差分が特定の値以下である場合、前記判定値に第３の値を加算する第３の判定値加算手段と、
をさらに有することを特徴とする現在位置算出装置。
【請求項５】
車両に搭載される現在位置算出装置による位置情報算出方法であって、
線分で示される道路データと、道路の道幅とを含む地図データを地図データ記憶手段に記憶するステップと、
搭載される車両の車幅を車幅記憶手段に記憶するステップと、
車両の進行方位を方位検出手段で検出するステップと、
車両の走行距離を距離算出手段で算出するステップと、
車両の走行速度を速度算出手段で算出するステップと、
前記方位検出手段により検出された前記進行方位と、前記距離算出手段により算出された前記走行距離と、前記地図データに含まれる道路データとに基づき、何れかの道路上に存在する車両の現在位置を、現在位置算出手段により算出するステップと、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、該車両の速度が所定速度以下となるときに、前記現在位置判定手段により算出された現在位置を、車両位置記憶手段に記憶するステップと、
車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、前記車両位置記憶手段への現在位置の記憶以降に、該車両の進行方位が該車両の存在する道路の右側前方を向いている場合、該車両の現在位置における進行方位及び該車両の存在する道路の線分からなる角度と、該車両の走行距離とから、該車両の存在する道路の垂直方向への移動距離を、第１の移動距離算出手段により算出するステップと、
前記第２の移動距離算出手段により算出される移動距離が第１の閾値以上である場合、第１の判定値加算手段により、前記判定値に第１の値を加算するステップと、
前記判定値の合計が所定の閾値以上となる場合、判定手段により、前記車両位置記憶手段に記憶される位置をすれ違い可能な場所と判定するステップと、
出力手段により、前記すれ違い可能な場所と判定された位置を出力するステップと、
を有することを特徴とする位置情報算出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、現在位置算出装置を用いる技術に関するものである。
【背景技術】
【０００２】
例えば山道等で道幅が狭く、すれ違い困難な道がある。そのような道では、一部道幅が広くなっている待避所があり、当該場所でどちらかの車両が対向車等を待つことによりすれ違うことが行われている。すれ違い困難な道は、カーブが連続する等見通しが悪く、すれ違い可能な場所、又は、すれ違い不可の区間が見えづらい場合もある。このような場合でも、予め、すれ違い可能な場所、又は、すれ違い不可の区間が分かっていれば、対向車が来たときの対応が容易となる。
【０００３】
対向車とすれ違う際の技術として、特許文献１及び特許文献２に記載の技術がある。特許文献１には、車両に対向車検知機能を有するナビゲーションシステムを設置し、当該機能により検知された対向車と、自車とがすれ違うポイントを推測演算し、演算されたすれ違いポイントを対向車と共に表示することで、ドライバに対してすれ違いポイントを認識させることが記載されている。
【０００４】
特許文献２には、ナビゲーションシステムにおいて、当該システムで用いる地図データにすれ違い用の待避所等の道幅が異なる場所の情報を含めておき、道幅等所定の条件を満たし、すれ違い出来ない区間と判断する場合、当該区間を表示することが記載されている。
【０００５】
【特許文献１】特開平１１−８３５０８号公報
【特許文献２】特開２００４−２４５６１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術は、対向車がくることを検知した場合のみ警告を発するものであり、すれ違い可能な場所、又は、すれ違い不可の区間を通知するためのものではない。
【０００７】
また、特許文献２に記載の技術は、予め、待避所等の位置情報をナビゲーションシステムの地図データに含めておく必要があるが、その情報を収集するにはコストがかかる。
【０００８】
本発明は、このような事情に鑑みてなされたもので、すれ違い可能な待避所の場所を示す情報を容易かつ低コストで取得することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は上記の目的を達成するためになされたもので、現在位置算出装置において車両が所定の道幅以下の道路を走行している間に、（１）車両が進行方位に対し道路の左側に寄り、（２）所定の車両速度以下となり、（３）車両が進行方位に対し道路の右側に寄る、ことを検出した場合、（２）の状態となった位置をすれ違い可能な場所と判定し、当該位置を示す情報を記憶することを特徴とする。
【００１０】
具体的には、例えば、車両に搭載される現在位置算出装置であって、線分で示される道路データと、道路の道幅とを含む地図データを記憶する地図データ記憶手段と、搭載される車両の車幅を記憶する車幅記憶手段と、車両の進行方位を検出する方位検出手段と、車両の走行距離を算出する距離算出手段と、車両の走行速度を算出する速度算出手段と、前記方位検出手段により検出される進行方位と、前記距離算出手段により算出される走行距離と、前記地図データに含まれる道路データとに基づき、何れかの道路上に存在する車両の現在位置を算出する現在位置算出手段と、車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下である間に、前記方位検出手段により検出される進行方位が、該車両の存在する道路の左側前方を向いて走行する状態を示した後に、前記距離算出手段により算出される該車両の走行速度が所定速度以下となり、該状態となった後に、前記方位検出手段により検出される進行方位が、該車両の存在する道路の右側前方を向いて走行する状態となる場合、前記車両の速度が所定速度以下となった位置をすれ違い可能な場所と判定する判定手段と、前記判定されたすれ違い可能な場所を示す情報を出力する出力手段と、を有することを特徴とする。
【００１１】
また、本発明は、車両の存在する道路の道幅と該車両の車幅との差分が特定の値以下であり、且つ、該車両の進行方位が該車両の存在する道路の左側前方を向いている場合、該車両の現在位置における進行方位及び該車両の存在する道路を示す線分からなる角度と、該車両の走行距離とから、該車両の存在する道路の垂直方向への移動距離を算出する第２の移動距離算出手段と、前記第２の移動距離算出手段により算出される移動距離が第２の閾値以上である場合、判定値に第２の値を加算する第２の判定値加算手段と、をさらに有し、前記車両位置記憶手段が、前記第２の判定値加算手段による加算以降に、該車両の速度が所定速度以下となるときに、前記現在位置判定手段により算出された現在位置を記憶することを特徴とする。
【発明の効果】
【００１２】
本発明による現在位置算出装置によれば、該現在位置算出装置を搭載した車両で道路を走行するだけで、すれ違い可能な位置を示す情報を取得することが可能となる。本発明の現在位置算出装置を、情報収集のためだけに走行する車両だけではなく、レジャーや仕事等で人や物を運ぶために使用する車両に搭載することにより、すれ違い可能な位置を示す情報を、容易且つ低コストで取得することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態を図面を参照して詳細に説明する。
【００１４】
本実施形態は、すれ違い可能な待避所の位置を取得する現在位置算出装置である。まず、すれ違う車両の一般的な動きを説明する。図１において、車両１は、道幅の狭い道路を走行しており、対向車２とすれ違うために、待避所１０１に侵入するものとする。図１に示す破線は、車両１が対向車２とすれ違うための経路１０２を示す。区間Ａにおいて、車両１は通常通り走行し、区間Ｂにおいて、進行方位の左側前方に向かう。区間Ｃにおいて、車両１は、停止する又は徐行等の低速で、対向車２が通りすぎるのを待つ。区間Ｄにおいて、車両１は、進行方位の右側前方に向かう。区間Ｅにおいて、区間Ａでの車速程度となるまで加速する。
【００１５】
本実施形態の現在位置算出装置は、上記区間Ａ〜Ｅを検出し、各区間を検出する毎に判定値に所定の値を加算し、該判定値の合計が所定の値以上となった場合、上記区間Ｃの位置をすれ違い可能な位置と判定するものである。このような現在位置算出装置を複数の車両に搭載し、各現在位置算出装置の記憶したすれ違い可能な位置を示す情報の統計をとることにより、より正確な情報を取得することが可能となる。
【００１６】
なお、実際に車両１が走行する場合、上記区間Ａ〜Ｅの全てが検出できない場合も考えられる。例えば、車両１が、非常に長い時間及び距離をかけて待避所１０１に進入する場合、区間Ｂを検出できない場合もある。従って、本実施形態では、上記のように判定値に所定の値を加算することにより、区間Ａ〜Ｅ全てを検出できない場合でも、上記区間Ｃ及び区間Ｄ等を含む一部の区間を検出し判定値が所定の値以上となっていれば、区間Ｃの位置をすれ違い可能な場所と判定する構成となっている。
【００１７】
次に、車両１に搭載される現在位置算出装置の一例を具体的に説明する。図２において、現在位置算出装置３は、角速度センサ３１、方位センサ３２、車速センサ３３、対向車検出部３４、コントローラ３５、入力装置３６、記憶装置３７、ディスプレイ３８、音声出力装置３９等を有する。
【００１８】
角速度センサ３１は、車両のヨーレイトを検出することで車両１の方位の変化を検出する。方位センサ３２は、地磁気を検出することで車両１の方位を検出する。車速センサ３３は、車両のトランスミッションの出力軸の回転に比例した時間間隔でパルスを出力する。対向車検出部３４は、カメラ撮影した画像の画像処理の結果や、送出した電波の反射状況等により対向車を検出する。
【００１９】
入力装置３６は、例えば、リモコン及びリモコン受信部、タッチパネル、スイッチ等である。記憶装置３７は、例えば、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disk）等の記憶メディア及び当該記憶メディアの駆動装置、ＨＤＤ（Hard Disk Drive）等であり、道路データ、該道路の道幅等を含む地図データ等を記憶する。なお、ここでは、地図データは、ＸＹ座標で示されるものとする。また、道路データは、２点間を結ぶ１つ以上の線分で近似し、それらの線分を、その始点と終点の座標によって示すものとする。
【００２０】
ディスプレイ３８は、地図を表示し、表示した地図上に車両１を位置づけて表示する。音声出力装置３９は、音声を出力する。
【００２１】
コントローラ３５は、上述した各周辺装置の動作の制御を行うためのものであり、ＡＤ変換器３５１、ＡＤ変換器３５２、カウンタ３５３、パラレルＩ／Ｏ３５４、ＤＭＡ（Direct Memory Access）コントローラ３５５、メモリ３５６、マイクロプロセッサ（以下ＭＰＵ）３５７等を有する。
【００２２】
ＡＤ変換器３５１は、角速度センサ３１の信号（アナログ）をデジタル信号に変換する。ＡＤ変換器３５２は、方位センサ３２の信号（アナログ）をデジタル信号に変換する。カウンタ３５３は、車速センサ３３から出力されるパルス数を例えば０．１秒毎にカウントする。パラレルＩ／Ｏ３５４は、入力装置３６からの入力信号を受け付ける。ＤＭＡコントローラ３５５は、記憶装置３７から読み取られた地図データを転送する。メモリ３５６には、車両１の進行方位、車両１の車速、対向車検出部３４が対向車を検出したことを示す情報等が格納される。
【００２３】
ＭＰＵ３５７は、メモリ３５６にロードされたプログラムを実行することにより、現在位置算出部３６１、すれ違い位置取得処理部３６２、角度算出部３６３、平均速度算出部３６４、区間ＡＢ算出部３６５、区間Ｃ算出部３６６、区間Ｄ算出部３６７、判定部３６８等を実現する。現在位置算出部３６１は、従来の現在位置算出装置の動作により、車両１の現在位置を算出する。すれ違い位置取得処理部３６２は、すれ違い可能な位置を示す情報を取得する動作を制御する。角度算出部３６３は、車両１が現在存在する道路の線分と、車両の進行方位とからなる角度を算出する。平均速度算出部３６４は、車両の平均速度を算出する。区間ＡＢ算出部３６５は、上記区間Ａ及びＢを判定し、上記区間Ｂにおいて、車両の存在する道路の垂直方向への移動距離を算出し、該算出した移動距離が所定の閾値以上となる場合、判定値に所定の値を加算する。区間Ｃ算出部３６６は、上記区間Ｃにおいて、車両の速度が所定の値以下となる場合に、判定値に所定の値を加算すると共に、該区間Ｃの位置を示す情報をメモリ３５６等に格納する。区間Ｄ算出部３６７は、上記区間Ｄにおいて、車両の存在する道路の垂直方向への移動距離を算出し、該算出した移動距離が所定の閾値以上となる場合、判定値に所定の値を加算する。判定部３６８は、上記区間Ｅにおいて、車両の速度が平均速度算出部３６４の算出した平均速度と同じ程度となる場合、判定値に所定の値を加算すると共に、判定値の合計が所定の閾値以上であるか否かにより、区間Ｃ算出部３６６が格納した位置がすれ違い可能な位置であるか否か判定する。
【００２４】
次に、現在位置算出装置３の動作を説明する。まず、現在位置算出部３６１が現在位置を算出する動作を説明する。この動作は、従来技術と同じであるので簡単に説明する。
【００２５】
図３に示す動作は、現在位置算出部３６１が、一定周期、例えば１００ｍＳ毎等に実行する動作である。
【００２６】
まず、現在位置算出部３６１は、ＡＤ変換器３５１から角速度センサ３１の出力値を読み込む（Ｓ３０１）。次に、現在位置算出部３６１は、ＡＤ変換器３５２から方位センサ３２の出力値を読み込み（Ｓ３０２）、角速度センサ３１の出力値と、方位センサ３２の出力値とから、車両の進行方位を計算する（Ｓ３０３）。なお、この進行方位の算出は、例えば、所定時間以上車速が低い時には、角速度センサ３１の出力値の誤差が大きいので、方位センサ３２の出力値のみを利用する等してもよい。
【００２７】
現在位置算出部３６１は、車速センサ３３の出力するパルス数を、０．１秒毎等の所定の時間毎にカウンタ３５３で計数し、その計数値を読み込む（Ｓ３０４）。現在位置算出部３６１は、該読み込んだ値に距離係数を乗算することで、０．１秒間の所定の時間の間に進んだ距離を算出する（Ｓ３０５）。
【００２８】
現在位置算出部３６１は、このように取得した所定時間毎の進行方位及び距離を、メモリ３５６の所定の記憶領域に順次格納しておく。後述するすれ違い可能な位置を判定する動作は、該格納した進行方位及び距離を用いて行う。
【００２９】
次に、現在位置算出部３６１は、上記Ｓ３０５で算出した所定の時間内に車両１の走行した距離値を、前回までの距離値に加算し、該加算した距離が所定距離（例えば２０ｍ）以上となるか否か判定する（Ｓ３０６）。Ｓ３０６の判定の結果、所定距離に満たない場合、現在位置算出部３６１は、今回の処理を終了し、一定周期後に上記処理を再度行なう。Ｓ３０６の判定の結果、所定距離以上である場合、現在位置算出部３６１は、その時点での進行方向と距離とをメモリ３５６の所定の記憶領域に格納し、後述するマップマッチ処理を実行する（Ｓ３０７）。なお、現在位置算出部３６１がメモリ３５６の所定の記憶領域に格納する距離とは、上記Ｓ３０６の処理で判定に用いた所定距離であり、例えば２０ｍ等である。
【００３０】
次に、図４を参照し、マップマッチの動作例を説明する。
【００３１】
まず、現在位置算出部３６１は、メモリ３５６の所定の記憶領域から、進行方位及び距離等を読み出す（Ｓ４０１）。次に、現在位置算出部３６１は、読み出した進行方位及び進行距離等に基づいて、車両の移動量を、緯度方向、経度方向、別々に算出する。さらに、現在位置算出部３６１は、算出した各方向における移動量を、前回のマップマッチ処理で求められた候補点の位置に加算して、現在車両１が存在すると推定される位置である仮想現在位置を算出する（Ｓ４０２）。
【００３２】
次に、現在位置算出部３６１は、算出した仮想現在位置と、地図データに含まれる道路データとから、１つ以上の候補点を算出し（Ｓ４０３）、さらに、各候補点の信頼度を算出する（Ｓ４０４）。この動作は、従来技術と同じであるので、詳細な説明は省略する。
【００３３】
次に、現在位置算出部３６１は、各々の候補点うち最も信頼度の値の大きな候補点を選択し、該候補点を表示候補点とする（Ｓ４０５）。この表示候補点が、ディスプレイ３８に表示される車両１の位置を示す情報となる。現在位置算出部３６１は、該表示候補点の位置を示す情報を、メモリ３５６の所定の記憶領域に格納する。ここまでの現在位置算出部３６１の動作は、従来技術の現在位置算出装置と同じである。
【００３４】
次に、現在位置算出部３６１は、メモリ３５６の所定の記憶領域を参照し、表示候補点の位置が、何れかの道路上に存在するか否か判定する（Ｓ４０６）。
【００３５】
Ｓ４０６の判定の結果、表示候補点の位置が道路上に存在する場合、現在位置算出部３６１は、記憶装置３７から該表示候補点の位置する道路の道幅を読み出すと共に、メモリ３５６等から該現在位置算出装置３の搭載される車両の車幅を読出し、読み出した道幅と車幅との差分が第１の閾値以下であるか否か判定する（Ｓ４０７）。
【００３６】
Ｓ４０７の判定の結果、読み出した道幅と車幅との差分が第１の閾値（例えば１．５ｍ等）以下である場合、現在位置算出部３６１は、後述するすれ違い可能位置を取得するプログラムを起動させる（Ｓ４０８）。
【００３７】
Ｓ４０７の判定の結果、読み出した道幅と車幅との差分が第１の閾値以下でない場合、現在位置算出部３６１は、後述するすれ違い可能位置を取得するプログラムが実行中であれば、該プログラムを終了させると共に、該プログラムで用いる変数を初期化する（Ｓ４０９）。具体的には、例えば、現在位置算出部３６１は、メモリ３５６の所定の記憶領域に格納されている変数を「Ｘ＝０」、「フラグＢ＝０」、「フラグＣ＝０」、「フラグＤ＝０」、「ＨＢ＝０」、「ＨＤ＝０」、「Ｈｂ＝０」、「Ｈｄ＝０」、「α１＝０」、「α２＝０」、「ｈｂ＝０」、「ｈｃ＝０」等として上書き等する。なお、すれ違い可能位置を取得するプログラムが実行中であるか否か判定するために、例えば、現在位置算出部３６１は、該プログラムを実行しているか否かを示すフラグを参照することにより判定する。
【００３８】
Ｓ４０６の判定の結果、表示候補点が何れかの道路上に存在しない場合、又は、上記Ｓ４０８及びＳ４０９の処理を行なった後に、現在位置算出部３６１は、Ｓ４０５で設定した表示候補点を、ディスプレイ３８に表示した地図に位置付けて表示し（Ｓ４１０）、処理を終了する。
【００３９】
次に、上記Ｓ４０８で起動したすれ違い可能位置を取得するプログラムの動作例を、図５〜図１０を参照して説明する。このプログラムは、Ｓ４０８の処理で起動されると、図３及び図４に示す動作とは別に実行される。ただし、上述のように、すれ違い可能位置を取得するプログラムを実行中に、上記Ｓ４０７の判定で道幅と車幅との差分が第１の閾値以下でない場合、該プログラムが終了される共に、該プログラムで用いる変数が初期化される。
【００４０】
すれ違い位置取得処理部３６２は、以下に説明する動作を、一定距離「ｈ」走行する毎等に実行する。この距離「ｈ」は、上記マップマッチの処理と同じ２０ｍ毎等でもよいが、ここでは、５ｍ毎に行うものとする。すれ違い位置取得処理部３６２は、メモリ３５６の所定の記憶領域から、角速度センサ３１の取得した車速を読み出し、前回の判定から今回の判定までの最低車速が第１の速度閾値（例えば１０ｋｍ／ｈ等）以下であるか否か判定する（Ｓ５０１）。
【００４１】
Ｓ５０１の判定の結果、最低速度が第１の速度閾値以下である場合、すれ違い位置取得処理部３６２は、区間Ｃ算出部３６６に、上記区間Ｃに該当するか否か判定するための処理の実行を指示する。この動作は後述する。
【００４２】
Ｓ５０１の判定の結果、最低速度が第１の速度閾値以下でない場合、すれ違い位置取得処理部３６２は、メモリ３５６の所定の記憶領域を参照し、「フラグＣ＝１」であるか否か判定する（Ｓ５０２）。
【００４３】
Ｓ５０２の判定の結果、「フラグＣ＝１」でない場合、すれ違い位置取得処理部３６２は、区間ＡＢ算出部３６５に、上記区間Ａ及び区間Ｂに該当するか否か判定するための処理の実行を指示する。
【００４４】
Ｓ５０２の判定の結果、「フラグＣ＝１」である場合、すれ違い位置取得処理部３６２は、メモリ３５６の所定の記憶領域を参照し、「フラグＤ＝１」であるか否か判定する（Ｓ５０３）。
【００４５】
Ｓ５０３の判定の結果、「フラグＤ＝１」でない場合、すれ違い位置取得処理部３６２は、区間Ｄ算出部３６７に、区間Ｄを判定するための処理の実行を指示する。
【００４６】
Ｓ５０３の判定の結果、「フラグＤ＝１」でない場合、すれ違い位置取得処理部３６２は、判定部３６８に、区間Ｅ、及び、すれ違い可能位置を判定するための処理の実行を指示する。
【００４７】
まず、区間Ａ及び区間Ｂを判定する動作例を、図６を参照して説明する。まず、区間ＡＢ算出部３６５は、車両１の存在する道路の線分と、車両１の進行方位とからなる角度が、道路の左側前方に対し第１の角度閾値（例えば５度）以上であるか否か判定する（Ｓ６０１）。具体的には、例えば、区間ＡＢ算出部３６５は、角度算出部３６３に、道路の左側前方に対する、道路と車両１の進行方位とからなる角度の取得を指示する。角度算出部３６３は、現在位置算出部３６１が複数の進行方位及び距離の組合せから算出した車両１の経路と、道路を示す線分とから、道路と車両１の進行方位とからなる角度「α１」と、該角度で走行した距離「Ｈｂ」とを取得し、メモリ３５６の所定の記憶領域に格納する。
【００４８】
この角度を図７を参照して説明する。図７において、太線は道路データを示す線分７０１の例である。複数の地点７０２の各々は、現在位置算出部３６１が、角速度センサ３１、方位センサ３２、車速センサ３３の出力値からデッドレコニング等により算出した車両１の位置の例である。破線は、現在位置算出部３６１が各地点７０２から算出した車両１の経路７０３である。車両１は、すれ違い可能位置を判定する前回の処理と今回の処理との間に、（１）の位置から（２）の位置まで距離「ｈ」分だけ移動したものとする。図７に示す例の場合、道路の左側前方に対する角度は「α」となる。また、角度「α」で走行した距離は「Ｙ１」となる。
【００４９】
区間ＡＢ算出部３６５は、角度算出部３６３により算出された道路の左側前方の角度をメモリ３５６の所定の記憶領域から読み出し、道路の左側前方に対し第１の角度閾値以上であるか否か判定する。
【００５０】
Ｓ６０１の判定の結果、第１の角度閾値以上でない場合、上記区間Ａであるものとし、区間ＡＢ算出部３６５は、平均速度算出部３６４に、平均速度の算出を指示する。平均速度算出部３６４は、該指示に従い、平均速度を算出する（Ｓ６０２）。具体的には、例えば、平均速度算出部３６４は、メモリ３５６の所定の記憶領域から、車速センサ３３の出力値をカウンタ３５３がカウントし算出した車速を任意の数読み出し、該読み出した車速の平均値を算出する。この車速の平均値は、車両１が距離「ｈ」を走行する間の車速の平均値でもよいが、これに限定するわけではない。以下、平均速度算出部３６４の算出した車速平均値を「Ｖａｖ」という。平均速度算出部３６４は、算出した車速平均値「Ｖａｖ」を、メモリ３５６の所定の記憶領域に格納する。
【００５１】
Ｓ６０１の判定の結果、第１の角度閾値以上である場合、上記区間Ｂであるものとし、区間ＡＢ算出部３６５は、区間Ｂであると判定してからの走行距離「ｈｂ」に、前回の判定から今回の判定までの間に走行した距離「ｈ」を加算する（Ｓ６０３）。次に、区間ＡＢ算出部３６５は、走行距離「ｈｂ」が、第１の距離閾値（例えば５０ｍ等）以上であるか否か判定する（Ｓ６０４）。
【００５２】
Ｓ６０４の判定の結果、走行距離「ｈｂ」が、第１の距離閾値以上である場合、区間ＡＢ算出部３６５は、上記と同様に変数を初期化し（Ｓ６０５）、処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、再度、図５に示す動作を行う。
【００５３】
Ｓ６０４の判定の結果、走行距離「ｈｂ」が、第１の距離閾値以上でない場合、区間ＡＢ算出部３６５は、車両の存在する道路の垂直方向への移動距離を算出し、今回算出した移動距離を、前回までに算出した移動距離の加算値に加算する（Ｓ６０６）。
【００５４】
道路の垂直方向への移動距離を、図７を参照して説明する。図７において、車両１の道路の垂直方向への移動距離は、一点破線７０４「Ｙ２」に該当する。また、上記のように、角度「α」で走行した距離は「Ｙ１」である。従って、一点破線７０４「Ｙ２」は「（Ｙ１）×ｓｉｎ（α）」により算出することができる。
【００５５】
上記のように、角度算出部３６３により算出された道路の左側前方への角度「α１」、該角度での車両１の進行距離「Ｈｂ」とすると、区間Ｂでの道路の垂直方向への移動距離の加算値「ＨＢ」は、「ＨＢ＝ＨＢ＋（Ｈｂ）×ｓｉｎ（α１）」で算出することができる。
【００５６】
図６において、区間ＡＢ算出部３６５は、「ＨＢ」が、第１の垂直方向距離閾値（例えば２ｍ等）以上であるか否か判定する（Ｓ６０７）。
【００５７】
Ｓ６０７の判定において、「ＨＢ」が、第１の垂直方向距離閾値以上でない場合、区間ＡＢ算出部３６５は処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、再度、図５に示す動作を行う。
【００５８】
Ｓ６０７の判定において、「ＨＢ」が、第１の垂直方向距離閾値以上である場合、区間ＡＢ算出部３６５は、判定値「Ｘ」に第１の所定の値「Ｂ」を加算する（Ｓ６０８）。次に、区間ＡＢ算出部３６５は、「フラグＢ＝１」とし（Ｓ６０９）、処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、再度、図５に示す動作を行う。
【００５９】
次に、区間Ｃを判定する動作例を説明する。上述のように、図５のＳ５０１の判定において、最低車速が第１の速度閾値以下である場合、区間Ｃ算出部３６６は、処理を開始する。区間Ｃを判定する動作例を、図８を参照して説明する。
【００６０】
まず、区間Ｃ算出部３６６は、車両１の最低車速が第１の速度閾値以下となってからの走行距離「ｈｃ」に、前回の判定から今回の判定までの間に車両１が走行した距離「ｈ」を加算する（Ｓ８０１）。次に、区間Ｃ算出部３６６は、走行距離「ｈｃ」が、第１の距離閾値以上であるか否か判定する（Ｓ８０２）。
【００６１】
Ｓ８０２の判定の結果、走行距離「ｈｃ」が、第１の距離閾値以上である場合、区間Ｃ算出部３６６は、上記と同様に変数を初期化し（Ｓ８０３）、処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、図５に示す動作を再度行なう。
【００６２】
Ｓ８０２の判定の結果、走行距離「ｈｃ」が、第１の距離閾値以上でない場合、区間Ｃ算出部３６６は、メモリ３５６の所定の記憶領域を参照し、「フラグＣ＝１」であるか否か判定する（Ｓ８０４）。
【００６３】
Ｓ８０４の判定の結果、「フラグＣ＝１」である場合、区間Ｃ算出部３６６は処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、図５に示す動作を再度行なう。
【００６４】
Ｓ８０４の判定の結果、「フラグＣ＝１」でない場合、区間Ｃ算出部３６６は、判定値「Ｘ」に第２の所定の値「Ｃ１」を加算し（Ｓ８０５）、「フラグＣ＝１」とする（Ｓ８０６）。次に、区間Ｃ算出部３６６は、「フラグＢ＝１」であるか否か判定する（Ｓ８０７）。Ｓ８０７の判定の結果、「フラグＢ＝１」である場合、区間Ｃ算出部３６６は、判定値「Ｘ」に第３の所定の値「Ｃ２」を加算する（Ｓ８０８）。
【００６５】
Ｓ８０７の判定の結果「フラグＢ＝１」でない場合、又は、Ｓ８０８の処理を行った後、区間Ｃ算出部３６６は、メモリ３５６の所定の記憶領域から対向車検出部３４の出力値を読出し、前回の判定から今回の判定の間に、対向車が検出されたか否か判定する（Ｓ８０９）。Ｓ８０９の判定の結果、対向車を検出している場合、区間Ｃ算出部３６６は、判定値「Ｘ」に第４の所定の値「Ｃ３」を加算する（Ｓ８１０）。
【００６６】
Ｓ８０９の判定の結果、対向車を検出しない場合、又は、Ｓ８１０の処理を行った後、区間Ｃ算出部３６６は、現在位置算出部３６１が、従来技術のマップマッチ及びデッドレコニングにより算出した車両１の現在位置を示す情報を、メモリ３５６の所定の記憶領域に格納する（Ｓ８１１）。
【００６７】
次に、区間Ｄを判定する動作例を、図９を参照して説明する。
【００６８】
図９において、区間Ｄ算出部３６７は、車両１の最低車速が第１の速度閾値以下となってからの走行距離「ｈｃ」に、前回の判定から今回の判定までの間に走行した距離「ｈ」を加算する（Ｓ９０１）。次に、区間Ｄ算出部３６７は、走行距離「ｈｃ」が、第２の距離閾値（例えば１００ｍ等）以上であるか否か判定する（Ｓ９０２）。
【００６９】
Ｓ９０２の判定の結果、走行距離「ｈｃ」が、第２の距離閾値以上である場合、区間Ｄ算出部３６７は、上記と同様に変数を初期化し（Ｓ９０３）、処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、図５に示す動作を再度行なう。
【００７０】
Ｓ９０２の判定の結果、走行距離「ｈｃ」が、第２の距離閾値以上でない場合、区間Ｄ算出部３６７は、車両１の存在する道路の線分と、車両１の進行方位とからなる角度が、道路の右側前方に対し第１の角度閾値以上であるか否か判定する（Ｓ９０４）。具体的には、例えば、区間Ｄ算出部３６７は、角度算出部３６３に、道路の右側前方に対する、道路と車両１の進行方位とからなる角度の取得を指示する。角度算出部３６３は、上述と同様に、現在位置算出部３６１が複数の進行方位及び距離の組合せから算出した車両１の経路と、道路を示す線分とから、道路と進行方位とからなる角度「α２」と、該角度で走行した距離「Ｈｄ」とを取得し、メモリ３５６の所定の記憶領域に格納する。
【００７１】
区間Ｄ算出部３６７は、角度算出部３６３により算出された角度をメモリ３５６の所定の記憶領域から読み出し、道路の右側前方に対し第１の角度閾値以上であるか否か判定する。
【００７２】
Ｓ９０４の判定の結果、第１の角度閾値以上でない場合、区間Ｄ算出部３６７は処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、再度、図５に示す動作を行う。
【００７３】
Ｓ９０４の判定の結果、第１の角度閾値以上である場合、上記区間Ｄであるものとし、区間Ｄ算出部３６７は、車両の存在する道路の垂直方向への移動距離を算出し、今回算出した移動距離を、前回までに算出した移動距離の加算値に加算する（Ｓ９０５）。具体的には、例えば、上述と同様に、区間Ｄ算出部３６７は、メモリ３５６の所定の記憶領域から、角度算出部３６３が算出した道路の右側前方に対する角度「α２」と該角度で走行した距離「Ｈｄ」とを読み出し、区間Ｄでの道路の垂直方向への移動距離の加算値「ＨＤ」を、「ＨＤ＝ＨＤ＋（Ｈｄ）×ｓｉｎ（α２）」で算出する。
【００７４】
次に、区間Ｄ算出部３６７は、「ＨＤ」が、第１の垂直方向距離閾値以上であるか否か判定する（Ｓ９０６）。
【００７５】
Ｓ９０６の判定において、「ＨＤ」が、第１の垂直方向距離閾値以上でない場合、区間Ｄ算出部３６７は処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、再度、図５に示す動作を行う。
【００７６】
Ｓ９０６の判定において、「ＨＤ」が、第１の垂直方向距離閾値以上である場合、区間Ｄ算出部３６７は、判定値「Ｘ」に第５の所定の値「Ｄ」を加算し（Ｓ９０７）、さらに「フラグＤ＝１」とする（Ｓ９０８）。
【００７７】
次に、区間Ｅを判定する動作例を、図１０を参照して説明する。
【００７８】
判定部３６８は、車両１の最低車速が第１の速度閾値以下となってからの走行距離「ｈｃ」に、前回の判定から今回の判定までの間に走行した距離「ｈ」を加算する（Ｓ１００１）。次に、判定部３６８は、走行距離「ｈｃ」が、第３の距離閾値（例えば１５０ｍ等）以上であるか否か判定する（Ｓ１００２）。
【００７９】
Ｓ１００２の判定の結果、走行距離「ｈｃ」が、第３の距離閾値以上である場合、判定部３６８は、上記と同様に変数を初期化し（Ｓ１００３）、処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、図５に示す動作を再度行なう。
【００８０】
Ｓ１００２の判定の結果、走行距離「ｈｃ」が、第３の距離閾値以上でない場合、判定部３６８は、メモリ３５６の所定の記憶領域から、前回の判定と今回の判定との間の車速を読み出す。さらに、判定部３６８は、メモリ３５６の所定の記憶領域から、平均速度算出部３６４の算出した平均車速「Ｖａｖ」を読み出す。判定部３６８は、読み出した車速「Ｖ」と、平均車速「Ｖａｖ」との差分の絶対値が第２の閾値以下であるか否か判定する（Ｓ１００４）。ここで、車速「Ｖ」は、前回の判定と今回の判定との間に車速センサ３３の出力した１つ以上の車速のうち、任意又は所定の１つでもよく、また、任意の数の車速の平均値でもよい。
【００８１】
Ｓ１００４の判定の結果、差分の絶対値が第２の閾値以下である場合、判定部３６８は、判定値「Ｘ」に第６の所定の値「Ｅ」を加算する（Ｓ１００５）。
【００８２】
Ｓ１００４の判定の結果、差分の絶対値が第２の閾値以下でない場合、又は、Ｓ１００５の処理を行った後に、判定部３６８は、判定値「Ｘ」が第３の閾値以上であるか否か判定する（Ｓ１００６）。
【００８３】
Ｓ１００６の判定の結果、判定値「Ｘ」が第３の閾値以上である場合、判定部３６８は、区間Ｃ算出部３６６がメモリ３５６の所定の記憶領域に格納した情報に示される場所をすれ違い可能な位置と判定し（Ｓ１００７）、該場所を示す情報に、すれ違い可能な場所であることを示すフラグを付与等する。
【００８４】
Ｓ１００６の判定の結果、判定値「Ｘ」が第３の閾値以上でない場合、判定部３６８は処理を終了する。すれ違い位置取得処理部３６２は、所定距離「ｈ」走行後に、再度、図５に示す動作を行う。
【００８５】
上記動作を行なう現在位置算出装置３を、レジャーや職務等で人や物を運搬するために用いる車両に搭載することで、情報収集のためだけに人や時間を割くことなくすれ違い可能な位置を示す情報を取得することが可能となる。車両の運転手や搭乗者等が特別な操作をするものではないので、すれ違い可能な位置を示す情報の収集を、容易且つ低コストで行なうこと可能となる。
【００８６】
現在位置算出装置３の取得したすれ違い可能な場所を示す情報は、任意の場所や時間で収集され、サーバ等で処理される。すれ違い可能な場所を示す情報を収集する例として、例えば、給油や整備サービス等を受けている間や、現在位置算出装置３の地図データを更新する場合等がある。現在位置算出装置３と接続された読み取り装置が情報を要求すると、すれ違い位置取得処理部３６２等が、メモリ３５６の所定の記憶領域に格納された場所を示す情報のうち、すれ違い可能な場所であることを示すフラグが付与されている情報を読み出し、該読み出した情報を読み取り装置に出力する。複数の現在位置算出装置３から読み出した情報の統計を取ることにより、すれ違い可能な位置の精度を向上させることも可能である。また、現在位置算出装置３は、すれ違い可能な場所を示す情報と共に、該場所を判定したときの判定値を記憶しておき、各場所を判定したときの判定値を考慮して統計をとることも可能である。
【００８７】
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【００８８】
例えば、上述の実施形態では、区間Ｃ算出部が図８に一例を示す動作を行っているときに、エンジン停止、サイドブレーキ、ギヤチェンジ、ドア開閉等の動作がされたか否か判定する処理を追加してもよい。エンジン停止を検出するために、例えば、現在位置算出装置３の電源がオフされ、再起動等をされたか否かを検出する。また、サイドブレーキの操作を検出するために、例えば、サイドブレーキ検出信号により、サイドブレーキが引かれたこと検出する。また、ギヤチェンジを検出するために、例えば、シフトレバーの位置を検出するインヒビタスイッチ等からの出力信号により検出する。また、ドア開閉を検出するために、例えば、ドア開閉検出信号により検知する。車両１の最低速度が第１の速度閾値以下となった状態で、エンジン停止、サイドブレーキ操作、「パーキング」や「ニュートラル」等のギヤチェンジ、ドア開閉等を検知した場合、区間Ｃ算出部は、変数を初期化して処理を終了し、すれ違い位置取得処理部は、所定距離走行後に、再度、図５に示す動作を行ってもよい。
【００８９】
また、区間Ｂ〜Ｅを判定する度に判定値「Ｘ」に加算する各値は、各々が異なってもよく、同じでもよいが、区間の重要度により異なるようにすると効果的である。例えば、区間Ｃ及び区間Ｄを検出した場合に加算する値「Ｃ１」、「Ｃ３」、「Ｄ」等は、例えば「Ｂ１」等の他の所定の値より大きい値としてもよい。
【００９０】
また、区間Ｂを検出する角度閾値と、区間Ｄを検出する角度閾値とは、同じ値であってもよく、異なっていても良い。また、これらの角度閾値は、車両の存在する道路のカーブ等に応じて可変としてもよい。
【００９１】
また、上述の実施形態では、区間Ｂであると判定してからの走行距離「ｈｂ」、車両の最低速度が第１の速度閾値となってからの距離「ｈｃ」等が所定の距離閾値以上となった場合に変数を初期化するものとしたが、これらの閾値は、各区間に至るまでの車速や、道幅等により可変としてもよい。
【図面の簡単な説明】
【００９２】
【図１】本発明の一実施形態において、すれ違う場合の車両の動きの一例を説明する図である。
【図２】同実施形態において、現在位置算出装置の構成例を示す図である。
【図３】同実施形態において、現在位置算出装置の通常動作例を説明する図である。
【図４】同実施形態において、現在位置算出装置の通常動作例を説明する図である。
【図５】同実施形態において、すれ違い可能な位置を判定する動作例である。
【図６】同実施形態において、区間Ｂを判定する動作例である。
【図７】同実施形態において、車両の進行方位と、道路データとからなる角度を説明するための図である。
【図８】同実施形態において、区間Ｃを判定する動作例である。
【図９】同実施形態において、区間Ｄを判定する動作例である。
【図１０】同実施形態において、区間Ｅを判定すると共に、最低速度が所定の値以下となった場所がすれ違い可能な場所か否か判定する動作例である。
【符号の説明】
【００９３】
１：車両、２：対向車、１０１：待避所、１０２：経路、３：現在位置算出装置、３１：角速度センサ、３２：方位センサ、３３：車速センサ、３４：対向車検出部、３５：コントローラ、３６：入力装置、３７：記憶装置、３８：ディスプレイ、３９：音声出力装置、３５１：ＡＤ変換器、３５２：ＡＤ変換器、３５３：カウンタ、３５４：パラレルＩ／Ｏ、３５５：ＤＭＡコントローラ、３５６：メモリ、３５７：ＭＰＵ、３６１：現在位置算出部、３６２：すれ違い位置取得処理部、３６３：角度算出部、３６４：平均速度算出部、３６５：区間Ｂ算出部、３６６：区間Ｃ算出部、３６７：区間Ｄ算出部、３６８：判定部、７０１：線分、７０２：地点、７０３：経路、７０４：一点破線
【図１】
2006267005.tif 000003
【図２】
2006267005.tif 000004
【図３】
2006267005.tif 000005
【図４】
2006267005.tif 000006
【図５】
2006267005.tif 000007
【図６】
2006267005.tif 000008
【図７】
2006267005.tif 000009
【図８】
2006267005.tif 000010
【図９】
2006267005.tif 000011
【図１０】
2006267005.tif 000012