説明

道路形状学習装置、道路形状学習方法および道路形状学習プログラム

【課題】車両制御の対象となる区間を確実に含み、且つ、曲率半径が比較的大きい区間までを、コーナ区間として適切に検出する技術の提供。
【解決手段】車両の走行軌跡を取得し、当該取得した走行軌跡に基づく位置情報と曲率半径情報とを対応付けて記憶部に記憶し、記憶されている位置情報と前曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出するとともに、記憶されている位置情報と曲率半径とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出し、検出した第2区間がコーナ区間であると特定して当該コーナ区間の形状を示すコーナ情報を作成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、道路形状学習装置、道路形状学習方法および道路形状学習プログラムに関する。
【背景技術】
【0002】
近年、ナビゲーション装置などの道路情報を出力可能な装置から、車両が走行する道路の道路形状などを示す道路情報を取得し、当該道路情報に応じて、変速機やブレーキ装置、サスペンション装置などの制御を行う車両制御装置が提案されている。
しかし、上述の如き装置に記憶されている地図データは、現地にて道路を計測した際の誤差や、地図データを作成した際の入力誤差等、様々な誤差を含んでいるため、地図データから得られる道路情報に基づいて車両制御を行う場合、地図データに基づく道路形状と実際の道路形状とが一致せず、道路形状に沿って適切に車両制御を行うことができないことがあった。
【0003】
そこで、実際の道路形状に沿った車両制御を精密に行うために、特許文献1に記載の車両制御装置では、走行中に、基点(交差点や料金所など)を通過したかを判断するとともに、基点より先の道路が制御対象道路(カーブが連続する道路、高速道路等)であるか否かを判断し、制御対象道路である場合に、当該基点から次の基点までの間のデータ(車速センサ及びジャイロセンサの測定値)の測定を開始する。そして、検出したデータに基づいて、区間内の各カーブにおけるカーブ長さ、カーブセンター、カーブの最小半径をそれぞれ導出し、車両制御用データとして記憶することが記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−328592
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、地図データの道路が実際の道路と一致しない原因としては、上述の誤差だけでなく、地図データに記憶されている地図自体が古いことが挙げられる。
そのため、上記特許文献1に記載の車両制御装置のように、制御対象道路であるか否かを地図データに基づいて判定し、制御対象道路である場合にデータの測定を開始する構成であると、地図データが古く、当該地図データに記憶されていないカーブ区間を走行した場合、当該カーブ区間は制御対象道路でないと判断されてしまうため、データの測定が開始されず、当該カーブ区間の道路形状は導出されないこととなってしまう。
【0006】
そこで、走行中常にデータの測定を行い、測定したデータに基づいて、曲率半径が所定値以下である区間をコーナとして検出し、検出したコーナの形状を学習する構成が考えられる。
【0007】
ここで、コーナにおいて実行される車両制御は、当該コーナを安全に走行するために成される制御であるため、曲率半径が比較的小さい区間が制御対象の区間となる。しかし、例えば、曲率半径が比較的小さい区間に到達する時点で所定の目標車速となるように車両を減速させる制御を実行する場合、当該曲率半径が比較的小さい区間の手前において車両を減速させる必要があるため、当該手前の区間、即ち曲率半径が比較的大きい区間についても道路形状を把握できている方が、実際の道路形状に沿った制御を行うためには好ましい。
【0008】
しかし、走行中常にデータの測定を行い、測定したデータに基づいて、曲率半径が所定値以下である区間をコーナとして検出する技術において、曲率半径が比較的大きい区間までを含めてコーナとして検出するために、上記の所定値を大きい値に設定してしまうと、制御対象となる曲率半径が比較的小さい区間以外の区間についてもコーナとして誤検出してしまい、車両制御に利用するためのコーナ情報を適切に学習することができない。
【課題を解決するための手段】
【0009】
上述した課題を解決し、目的を達成するために、請求項1に記載の道路形状学習装置は、車両の走行軌跡を取得し、当該取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径を示す曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて記憶部に記憶する走行情報管理手段と、前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出する第1区間検出手段と、前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出手段と、検出した第2区間がコーナ区間であると特定し、前記記憶部に記憶されている、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、当該コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成手段と、を有している。
【0010】
また、請求項2に記載の道路形状学習装置は、請求項1に記載の道路形状学習装置において、前記第1区間検出手段が第1区間を検出した場合、当該検出した第1区間を包含する学習対象区間を設定する区間設定手段をさらに有し、前記第2区間検出手段は、前記区間設定手段により前記学習対象区間が設定された後、当該学習対象区間を前記車両が新たに走行した場合に、当該新たに走行した際に前記走行情報管理手段により前記記憶部に記憶された、前記学習対象区間内における前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を前記第2区間として検出する。
【0011】
また、請求項3に記載の道路形状学習装置は、請求項2に記載の道路形状学習装置において、前記区間設定手段は、前記記憶部に記憶されている、前記第1区間内における位置情報と曲率半径情報とに基づいて、当該第1区間に隣接するクロソイド区間の区間長を推定し、当該推定した区間長に基づいて、前記学習対象区間を設定する。
【0012】
また、請求項4に記載の道路形状学習装置は、請求項2又は3に記載の道路形状学習装置において、前記走行情報管理手段は、前記学習対象区間を前記車両が走行する場合、前記学習対象区間以外を前記車両が走行する場合と比較して、前記位置情報と前記曲率半径情報とを特定する間隔を短くする。
【0013】
また、請求項5に記載の道路形状学習方法は、車両の走行軌跡を取得し、当該取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径を示す曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて記憶部に記憶する走行情報管理工程と、前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出する第1区間検出行程と、前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出行程と、検出した第2区間がコーナ区間であると特定し、前記記憶部に記憶されている、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、当該コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成行程と、を備えている。
【0014】
また、請求項6に記載の道路形状学習プログラムは、車両の走行軌跡を取得し、当該取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて記憶部に記憶する走行情報管理機能と、前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出する第1区間検出機能と、前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出機能と、検出した第2区間がコーナ区間であると特定し、前記記憶部に記憶されている、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、当該コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成機能と、をコンピュータに実現させる。
【発明の効果】
【0015】
請求項1に記載の道路形状学習装置、請求項5に記載の道路形状学習方法、及び請求項6に記載の道路形状学習プログラムによれば、第1区間検出手段が、曲率半径が第1閾値以下である区間を第1区間として検出し、第2区間検出手段が、当該第1区間を包含する区間であって、且つ、曲率半径が第1閾値よりも大きい第2閾値以下である区間を第2区間として検出し、コーナ情報記憶手段が、検出した第2区間がコーナ区間であるとし、当該コーナ区間の形状を示すコーナ情報を作成するため、コーナ区間を検出する場合に、曲率半径が第1閾値以下であるために車両制御の対象となる区間を確実に含み、且つ、曲率半径が第1閾値よりも大きい第2閾値以下の、比較的曲率半径が大きい区間までを、コーナ区間として適切に検出し、当該コーナ区間の形状を示すコーナ情報を作成することが可能となる。
【0016】
請求項2に記載の運転支援装置によれば、第1区間を検出した場合、区間設定手段が、当該検出した第1区間を包含する学習対象区間を設定し、第2区間検出手段は、当該学習対象区間を前記車両が新たに走行した場合に、当該新たに走行した際に記憶部に記憶された、学習対象区間内における位置情報と曲率半径とに基づいて第2区間を検出するため、車両制御の対象となる区間を包含する学習対象区間内における位置情報と曲率情報に基づいて第2区間を検出することが可能となり、第2区間を適切に検出することができる。
【0017】
請求項3に記載の運転支援装置によれば、区間設定手段が、第1区間内の位置情報と曲率半径とに基づいてクロソイド区間長を推定し、当該推定した区間長に基づいて学習対象区間を設定するため、車両制御の対象となる区間を確実に含む第1区間に接続するクロソイド区間について、当該クロソイド区間が存在すると予測される区間を学習対象区間として設定することが可能となり、第2区間を検出する対象となる区間を適切に設定することができる。
【0018】
請求項4に記載の運転支援装置によれば、走行情報管理手段は、車両が学習対象区間を走行する場合、学習対象区間以外を走行する場合と比較して、位置情報と曲率半径情報とを特定する間隔を短くするため、第2区間検出手段は、より詳細な情報を参照して第2区間を検出することが可能となるため、第2区間検出手段における第2区間の検出精度、並びにコーナ情報作成手段により作成されるコーナ情報の精度、を向上させることができる。
【図面の簡単な説明】
【0019】
【図1】実施の形態に係る道路形状学習システムを例示するブロック図である。
【図2】道路形状学習処理を示すフローチャートである。
【図3】第1区間検出処理を示すフローチャートである。
【図4】第2区間検出処理を示すフローチャートである。
【図5】コーナ区間を模式的に示す図である。
【図6】第1区間を模式的に示す図である。
【図7】学習対象区間を模式的に示す図である。
【図8】第2区間を模式的に示す図である。
【発明を実施するための形態】
【0020】
以下、本発明に係る道路形状学習装置、道路形状学習方法、及び、道路形状学習プログラムの実施の形態について図面を参照しつつ詳細に説明する。ただし、この実施の形態によって本発明が限定されるものではない。
〔実施の形態〕
【0021】
最初に、実施の形態について説明する。
【0022】
(構成)
まず、実施の形態に係る道路形状学習システムの構成を説明する。図1は、実施の形態に係る道路形状学習システムを例示するブロック図である。図1に示すように、この道路形状学習システム100は、車載センサ1と道路形状学習装置2とにより構成されている。
【0023】
(構成−車載センサ)
図1に示すように、車載センサ1は、GPSレシーバ11と、ジャイロセンサ12と、車速センサ13と、を有しており、これらのセンサによる測定値を、道路形状学習装置2に出力することが可能である。以下、これらのセンサの具体的な構成について説明する。尚、以下に車載センサ1と記載する場合、これらのセンサを包括する文言として使用している。
【0024】
GPSレシーバ11は、人口衛星から発生られる電波を受信して、車両の位置を測定する装置である。
【0025】
ジャイロセンサ12は、車両の回転角速度を検出し、その角速度を積分して車両の方位を求めるガスレートジャイロや振動ジャイロ等で構成される。また、このジャイロセンサ12により、車両に加わる横加速度(横G)を検出することもできる。
【0026】
車速センサ13は、車軸の回転数に比例する車速パルス信号等を出力するものであり、公知の車速センサを用いることができる。
【0027】
(構成−道路形状学習装置)
図1に示すように、道路形状学習装置2は、制御部21とデータ記憶部31とを有しており、以下、これらの構成について順に説明する。尚、道路形状学習装置としては、ナビゲーション装置などを採用することが可能である。
【0028】
(構成−道路形状学習装置−制御部)
制御部21は、道路形状学習装置2を制御する制御手段であり、具体的には、CPU、当該CPU上で解釈実行される各種のプログラム(OSなどの基本制御プログラムや、OS上で起動され特定機能を実現するアプリケーションプログラムを含む)、及びプログラムや各種のデータを格納するためのRAMの如き内部メモリを備えて構成されるコンピュータである。特に、実施の形態に係る道路形状学習プログラムは、任意の記録媒体又はネットワークを介して道路形状学習装置2にインストールされることで、制御部21の各部を実質的に構成する。この制御部21は、機能概念的に、現在位置検出部21a、曲率半径算出部21b、走行情報管理部21c、コーナ検出部21d、を備えている。
【0029】
(構成−現在位置検出部)
現在位置検出部21aは、道路形状学習装置2が取り付けられた車両の現在位置を検出する現在位置検出手段である。具体的には、現在位置検出部21aは、GPSレシーバ11、ジャイロセンサ12、車速センサ13等の測定値に基づいて、現在の車両の位置(座標)及び方位等を公知の方法にて検出する。尚、上記のセンサのうち、少なくとも一つの測定値に基づいて車両の現在位置を検出することができれば良く、また、地磁気センサや距離センサ(いずれも図示省略)等を加えて、それらの測定値を利用して現在位置を検出しても良い。また、後述する地図データ記憶部21aに記憶されている地図情報を参照して、公知のマップマッチング技術により、地図データ上における車両の現在位置を検出しても良い。
【0030】
(構成−曲率半径算出部)
曲率半径算出部21bは、道路の曲率半径を算出する曲率半径算出手段である。具体的には、曲率半径算出部21bは、ジャイロセンサ12により検出される角速度Φp(rad/s)と、車速センサ13により検出される車速Vp(m/s)とを、車両の挙動を示す情報である車両挙動情報として取得し、当該車両挙動情報に基づき、次の(式1)に従って曲率半径Rp(m)を算出する。尚、曲率半径算出部21bについては、曲率半径を算出することができれば良く、車速と角速度とから算出する方法以外にも、ジャイロセンサ12の測定値に基づく横加速度と車速とに基づいて算出する方法や、図示しないステアリングセンサにより検出される操舵角と車速とに基づいて算出する方法などを採用しても良い。
また、車載センサ1による測定値を利用せずに、車両の現在位置の履歴を参照し、曲率半径算出の対象となる現在位置、及び、当該対象となる現在位置の前後に検出された現在位置、の3点の現在位置から、当該3点の現在位置を通過する円を導出し、当該導出した円の半径を、対象となる現在位置における曲率半径として算出する方法を採用しても良い。この場合、曲率半径は、現在位置を接続する2つのセグメントの長さ、及び、2つのセグメントが成す方位角の関数となる。
【0031】
(式1)Rp=Vp/Φp
【0032】
(構成−走行情報管理部)
走行情報管理部21cは、車両の走行軌跡を取得する走行軌跡取得手段、及び、取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径を示す曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて、後述するデータ記憶部31の走行情報記憶部31bに記憶する走行情報管理手段である。より具体的には、現在位置検出部21aが検出した車両の現在位置、及び、当該車両の現在位置において取得された車両挙動情報に基づいて曲率半径算出部21bが算出した曲率半径、を走行軌跡情報として取得し、当該走行軌跡情報に基づいて現在位置を示す位置情報と当該現在位置における曲率半径を示す曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて走行情報記憶部31bに記憶する処理を行う。
さらに、走行情報管理部21cは、位置情報と曲率半径情報とを対応付けて記憶する際に、日時情報も対応付けて記憶させる。このように、日時情報を対応付けて記憶させることにより、走行情報記憶部31bに記憶されている位置情報及び曲率半径情報の連続性を判定することが可能となる。尚、走行情報記憶部31bに記憶されている位置情報及び曲率半径情報の連続性を判定することが可能であれば良いため、日時情報の代わりに、記憶された順番を示す番号を付与して、位置情報及び曲率半径情報を記憶するようにしても良い。
また、本実施の形態においては、走行情報管理部21cが、車両の現在位置と曲率半径とを走行軌跡情報として取得しているが、走行軌跡情報として、少なくとも位置情報と曲率半径情報とを特定することが可能な他の情報を取得しても良い。例えば、曲率半径に換えて車載センサ1の測定値を取得するようにしても良いし、現在位置のみを走行軌跡情報として取得するようにしても良い。尚、走行軌跡情報として曲率半径を取得しない場合には、走行情報管理部21cが、走行軌跡情報に基づいて曲率半径を算出する構成を採用することができる。
【0033】
(構成−コーナ検出部)
コーナ検出部21dは、後述する走行情報記憶部31bに記憶されている位置情報と曲率半径とに基づいて、車両が走行した道路のコーナを検出するコーナ検出手段であり、このコーナ検出部14は、さらに、機能概念的に、第1区間検出部21eと、第2区間検出部21fとを有している。以下、これらの第1区間検出部21e、第2区間検出部21f、の具体的な処理について説明する。
【0034】
(構成−第1区間検出部)
まず、第1区間検出部21eは、走行情報記憶部31bに記憶されている位置情報と曲率半径情報とを参照し、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられている位置情報が連続する区間を第1区間として検出する第1区間検出手段、及び、第1区間を検出した場合、当該検出した第1区間を包含する学習対象区間を設定し、当該設定した学習対象区間を後述する学習対象区間記憶手段31dに記憶する区間設定手段である。
【0035】
ここで第1区間検出部21eの処理について、図面を用いてより詳細に説明する。
図6は、第1区間検出部21eの処理により検出される第1区間を示した図であり、Pは車両の現在位置、Vpは車両の現在の車速(m/s)、φpは現在車両に作用している角速度(rad/s)を示している。
【0036】
第1区間検出部21eは、車両の走行に伴い、走行情報管理部21cの処理により走行情報記憶部31bに位置情報及び曲率半径情報が記憶される度に、当該記憶された位置情報及び曲率半径情報が示す、現在位置における曲率半径が第1閾値以下であるか否かを判定する。
そして、曲率半径が第1閾値超と判定されている状態から第1閾値以下と判定された位置情報が示す地点を、第1区間の開始点C1sとして、また、曲率半径が第1閾値以下と判定されている状態から第1閾値超と判定された位置情報が示す地点を、第1区間の終了点C1eとしてそれぞれ特定し、特定された開始点C1sから終了点C1eまでの区間を第1区間として検出する。
【0037】
さらに、第1区間検出部21eは、検出した第1区間に対して、学習対象区間を設定する。この学習対象区間の設定について、図7を参照して説明する。
【0038】
第1区間検出部21eは、第1区間C1を検出した場合、図7に示すように、当該第1区間C1の開始点C1sから、終了点C1eと反対方向に所定距離Ldだけ離れた地点を、学習対象区間の開始点Lsとして特定する。また、図7に示すように、当該第1区間C1の終了点C1eから、開始点C1sと反対方向に所定距離Ldだけ離れた地点を、学習対象区間の終了点Leとして特定する。そして、特定した開始点Lsから終了点Leまでの区間を、学習対象区間Lとして設定し、当該学習対象区間Lを示す情報として、開始点Ls及び終了点Leを対応付けて、後述する学習対象区間記憶部31dに記憶する。
【0039】
(構成−第2区間検出部)
次に、第2区間検出部21fの処理について詳細に説明する。
第2区間検出部21fは、第1区間検出部21eの処理により学習対象区間が設定された後、当該学習対象区間を車両が新たに走行した場合に、当該新たに走行した際に走行情報管理部21cの処理により後述する走行情報記憶部31bに記憶された当該学習対象区間内における位置情報と曲率半径情報とに基づいて、第1区間を包含する区間であって、且つ、第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出手段、当該検出した第2区間をコーナ区間であると特定し、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成手段、当該作成したコーナ情報を後述するコーナ情報記憶部31cに記憶するコーナ情報記憶手段である。
【0040】
より具体的には、第2区間検出部21fは、学習対象区間記憶部31dを参照し、車両の現在位置が、第1区間検出手段21eにより設定された学習対象区間L内であるか否かを判定する。そして、図8に示すように、車両の現在位置が学習対象区間L内である場合、当該学習対象区間Lの走行中に、走行情報管理部21cの処理により走行情報記憶部31bに記憶される位置情報及び曲率半径情報を参照し、曲率半径が第2閾値以下であるか否かを判定する。
そして、第2区間検出部21fは、曲率半径が第2閾値超と判定されている状態から第2閾値以下と判定された位置情報が示す地点を、第2区間の開始点C2sとして、また、曲率半径が第2閾値以下と判定されている状態から第2閾値超と判定された位置情報が示す地点を、第2区間の終了点C2eとしてそれぞれ特定し、特定された開始点C2sから終了点C2eまでの区間を第2区間として検出する。
第2区間を検出した後、第2区間検出部21fは、検出した第2区間がコーナ区間であると特定し、当該コーナ区間の形状を示すコーナ情報を作成し、当該作成したコーナ情報をコーナ情報記憶部31cに記憶する。尚、当該コーナ情報についての説明は後述する。
【0041】
上述の通り、本実施の形態では、第1区間検出部21eが、曲率半径が第1閾値以下である第1区間を検出するとともに、当該第1区間を包含する学習対象区間を設定し、第2区間検出部21fが、学習対象区間内において、第1区間を包含し、且つ、曲率半径が第2閾値以下である区間を第2区間として検出して、検出した第2区間をコーナ区間として特定するように構成されている。このように、第1閾値及び第2閾値の2つの閾値を利用してコーナ区間を検出する理由について以下に説明する。
【0042】
まず、現実世界に存在するコーナ区間には、曲率半径が一定の区間である一定曲率半径区間の前後にクロソイド区間が接続されていることが多々見受けられる。尚、クロソイド区間とは、車両の車速を一定としステアリングを一定の角速度で回転させた場合に車両が描く軌跡に沿って形成された道路区間であり、直線状の道路区間と円形状の道路区間(即ち、一定曲率半径区間)とを繋ぐ道路区間として挿入される。
このようなクロソイド区間が一定曲率半径区間の前後に存在するコーナ区間では、曲率半径の推移として、クロソイド区間の開始点から一定曲率半径区間の開始点まで連続的に値が小さくなっていき、一定曲率半径区間においては一定の値(コーナ区間における最小の曲率半径値)をとり、一定曲率半径区間の終了点からクロソイド区間の終了点まで連続的に値が大きくなっていく。
【0043】
また、コーナ区間において実行される車両制御の多くは、当該コーナ区間を車両が安全に走行するために成される制御であるため、車両制御の対象となるコーナ区間としては、一定曲率半径区間における曲率半径が比較的小さいコーナ区間が挙げられる。
これは、コーナ区間において曲率半径が最も小さい値となる区間である一定曲率半径区間を走行する際に、車両に対して発生する横加速度がコーナ区間内において最大となるため、曲率半径が比較的小さい一定曲率半径区間を走行する場合、曲率半径が比較的大きい一定曲率半径区間を走行する場合と比較して、車両に対して発生する横加速度は大きくなり、横滑りなどの危険な状況を発生させる可能性が高くなるためである。
従って、一定曲率半径区間における曲率半径が比較的小さいコーナ区間を走行する場合、車両に対して発生する横加速度を低減させて車両を安全に走行させる必要があるため、当該一定曲率半径区間における曲率半径が比較的小さいコーナ区間が車両制御を実施する対象の区間となる。一方、一定曲率半径区間における曲率半径が比較的大きいコーナ区間を走行する場合、車両に対して発生する横加速度が最大となる一定曲率半径区間においても曲率半径が大きいため、横滑りなどが発生する可能性が低く、一定曲率半径区間における曲率半径が比較的大きいコーナ区間は車両制御を実施する対象の区間とはならない。
【0044】
ところで、上述のように、一定曲率半径区間における曲率半径が比較的小さいコーナ区間を対象とした車両制御として、例えば、一定曲率半径区間を所定の目標車速で車両を走行させる制御を想定した場合、当該一定曲率半径区間に到達する時点で車両の車速が目標車速となっていることが必要であるため、当該一定曲率半径区間の手前において車両を減速させる制御を行う必要がある。
即ち、車両制御の対象となる区間は、一定曲率半径区間における曲率半径が比較的小さいコーナ区間であるが、実際に車両を減速させる制御が行われる区間は、一定曲率半径区間の手前の区間である。
このため、コーナ区間における実際の形状に沿って車両を適切に制御するためには、一定曲率半径区間の手前の区間、即ち、クロソイド区間の形状を把握した上で、車両を制御することが好ましい。さらには、当該クロソイド区間内においては一定曲率半径区間に接近する程曲率半径が小さくなっていくため、曲率半径が比較的大きいクロソイド区間の開始点から減速を開始させた方が車両の挙動に与える影響が小さく安全であることから、当該クロソイド区間の開始点の位置を把握することが安全に車両制御を行う上で重要である。
【0045】
しかし、クロソイド区間は曲率半径が比較的大きい区間を含んでいるため、当該クロソイド区間の形状を確実に学習するために、曲率半径が所定の閾値以下である区間をコーナ区間として検出して学習する構成としてしまうと、車両制御の対象とならない区間についてもコーナ区間として学習してしまう。
つまり、クロソイド区間の形状を確実に学習するためには、ある程度大きい曲率半径以下の区間全てを学習する必要があるが、車両制御の対象となる区間は、一定曲率半径区間における曲率半径が比較的小さいコーナ区間であるため、ある程度大きい曲率半径以下の区間が検出されたとしても、当該区間内に曲率半径が比較的小さい一定曲率半径区間が含まれないことがある。また、ある程度大きい曲率半径以下の区間全てをコーナ区間として検出してしまうと、車両の挙動の乱れ(例えば、車体のふらつきや車線変更)などが発生した区間についても、コーナ区間であると誤検出してしまうことも考えられる。
【0046】
そこで、本実施の形態では、第1閾値と当該第1閾値よりも大きい第2閾値との二つの閾値を利用してコーナ区間を検出することにより、車両制御の対象とならない区間を適切に除外するとともに、クロソイド区間のような比較的曲率半径が大きい区間についてもコーナ区間として確実に検出し、その形状を学習することを可能としている。
つまり、第1閾値として、車両制御の対象となるコーナ区間であると見なすことが可能な曲率半径の値を採用し、曲率半径が当該第1閾値以下である区間を第1区間として検出することで、車両制御の対象とならない区間を適切に除外し、車両制御の対象となるコーナ区間のみを検出する。そして、検出した第1区間を包含する学習対象区間を設定する。この学習対象区間は、車両制御の対象となるコーナ区間を含む区間である。
そして、第2閾値として、第1閾値よりも大きい曲率半径の値を採用し、設定した学習対象区間内で、曲率半径が第2閾値以下である区間を第2区間として検出することで、車両制御の対象となるコーナ区間を含むとともに、比較的大きい曲率半径を有する区間についても、第2区間として検出し、コーナ区間を特定することが可能となる。
【0047】
(構成−道路形状学習装置−データ記憶部)
データ記憶部31は、道路形状学習装置2の動作に必要なプログラム及び各種のデータを記憶する記憶手段であり、例えば、外部記憶装置としてのハードディスク(図示省略)を用いて構成されている。ただし、ハードディスクに代えてあるいはハードディスクと共に、磁気ディスクの如き磁気的記憶媒体、又はDVDやブルーレイディスクの如き光学的記憶媒体を含む、その他の任意の記憶媒体を用いることができる。このデータ記憶部31は、地図データ記憶部31aと、走行情報記憶部31bと、コーナ情報記憶部31cと、所定区間記憶部31dと、を備えている。
【0048】
地図データ記憶部31aは、地図情報を格納する地図情報格納手段である。地図情報としては、例えば、ノードデータ(ノード番号、接続リンク番号、座標)、リンクデータ(リンク番号、両端ノード番号、道路種別、車線数、走行規制等)、地物データ(信号機、道路標識、ガードレール、建物等)、地図をディスプレイ(図示せず)に表示するための地図表示データ等を含んで構成されている。
【0049】
走行情報記憶部31bは、車両の現在位置を示す位置情報及び当該現在位置における曲率半径を示す曲率半径情報を対応付けて格納する記憶部である。より具体的には、車両の走行に伴い、走行情報管理部21cの処理により記憶される位置情報と曲率半径情報とを対応付けて順次格納しており、制御部21の処理により読み出し可能に構成されている。
【0050】
コーナ情報記憶部31cは、第2区間検出部21fが作成したコーナ区間の形状に関するコーナ情報を格納する記憶部である。
ここで、コーナ区間の形状に関するコーナ情報を、図5を参照して説明する。コーナ区間の形状に関する情報として、本実施の形態においては、図5に示すようにコーナ区間における、コーナ区間の開始点Cs及び終了点Ce(座標)、一定曲率半径区間Fの曲率半径Rmin(m)、一定曲率半径区間の開始点Fs及び終了点Fe(座標)、をそれぞれコーナ情報記憶部31cに格納している。尚、コーナ区間開始点Csから一定曲率半径区間開始点Feまでの距離や、コーナ区間開始点Csから一定曲率半径区間開始点Fsまでの曲率半径の推移等、上記以外の情報をコーナの形状に関する情報としてコーナ情報記憶部31cに格納しても良い。
【0051】
学習対象区間記憶部31dは、第1区間検出部21eが設定した学習対象区間を格納する記憶部である。具体的には、学習対象区間Lを示す情報として、当該学習対象区間Lの開始点Ls及び終了点Leを対応付けて格納している。
【0052】
(処理)
次に、このように構成される道路形状学習システム100によって実行される処理について説明する。道路形状学習システム100が実行する処理である、道路形状学習処理について、以下詳細に説明する。
【0053】
(処理−道路形状学習処理)
図2は道路形状学習処理のフローチャートである(以下の各処理の説明ではステップを「S」と略記する)。この道路形状学習処理は、例えば、自車両のエンジン始動後自動的に起動され、所定の周期(例えば0.2sec)毎に制御部21にて実行される。
【0054】
まず、制御部21は、車両の現在位置を取得する(S1)。具体的には、現在位置検出部21aの処理により検出された車両の現在位置(座標)を取得する。
【0055】
次に、制御部21は、車両の現在位置における挙動を示す車両挙動情報を取得する(S2)。具体的には、制御部21は、ジャイロセンサ12及び車速センサ13から出力される角速度Φp(rad/s)及び車速Vpを、車両挙動情報として取得する。
【0056】
続いて、制御部21は、車両の現在位置における曲率半径を取得する(S3)。具体的には、曲率半径算出部21bにより、S2で取得した車両挙動情報に基づいて車両の現在位置における曲率半径Rpを算出し、当該算出した曲率半径Rpを取得する。尚、曲率半径Rpの具体的な算出方法については、上述の曲率半径部21bの説明の際に説明したため、ここでは省略する。
【0057】
続いて、制御部21は、車両の現在位置を示す位置情報と当該現在位置における曲率半径を示す曲率半径情報とを特定し、特定した位置情報と曲率半径情報とを対応付けて、データ記憶部31に記憶する(S4)。具体的には、S1で取得した車両の現在位置を位置情報として特定するとともに、S3で取得した曲率半径を曲率半径情報として特定し、これらを対応付けて、データ記憶部31の走行情報記憶部31bに記憶する。また、位置情報及び曲率半径情報の連続性を判定可能とするため、日時情報も対応付けて記憶する。
【0058】
続いて、制御部21は、車両の現在位置が学習対象区間内であるか否かを判定する(S5)。具体的には、制御部21は、データ記憶部の地図データ記憶部31a及び学習対象区間記憶部31dを参照し、車両の現在位置が、学習対象区間記憶部31dに記憶されている、互いに対応付けられた開始点Ls及び終了点Leの間に存在するか否かを判定する。
【0059】
そして、車両の現在位置が学習対象区間内でないと判定された場合(S5:No)、制御部21は、後述する第1区間検出処理(S6)を行った後、道路形状学習処理を終了する。一方、車両の現在位置が学習対象区間内であると判定された場合(S5:Yes)、制御部21は、後述する第2区間検出処理(S7)を行った後、道路形状学習処理を終了する。
【0060】
(処理−第1区間検出処理)
続いて、上述の第1区間検出処理について、図面を用いて詳細に説明する。
図3は、図2が示す道路形状学習処理のS6にて、制御部21の第1区間検出部21eにより実行される第1区間検出処理のフローチャートである。
【0061】
まず、第1区間検出部21eは、第1区間検出フラグFr1=1であり、且つ、車両の現在位置における曲率半径Rpが、第1閾値Sr1以下であるか否かを判定する(S6−1)。具体的には、まず、第1区間検出部21eは、図示しないRAM等に記憶された第1区間検出フラグFr1を参照し、当該第1区間検出フラグFr1が1であるか、0であるかを判定する。さらに、上述のS4にて、走行情報管理部21cにより走行情報記憶部31bに記憶されている、車両の現在位置を示す位置情報に対応付けられた曲率半径情報を参照し、車両の現在位置における曲率半径Rpが第1閾値Sr1以下であるか否かを判定する。
【0062】
ここで、第1区間検出フラグFr1とは、前回の道路形状学習処理により、第1閾値Sr1以下の曲率半径Rpが検出されているか否かを示すフラグであり、Fr1=1であれば、前回の道路形状学習処理により、第1閾値Sr1以下の曲率半径が検出されていることを示し、Fr1=0であれば、前回の道路形状学習処理により、第1閾値Sr1以下の曲率半径Rpが検出されていないことを示している。
つまり、第1区間検出フラグFr1=1の状態とは、既に第1閾値Sr1以下の曲率半径Rpが検出されていることから、車両は第1区間内を走行している状態であり、第1区間検出フラグFr1=0の状態とは、第1閾値Sr1以下の曲率半径Rpが検出されていないことから、車両は第1区間内を走行していない状態である。尚、換言すれば、第1区間検出フラグFr1=1の状態とは、後述するS6−4にて第1区間の開始点Cs1が既に設定されている状態である。
【0063】
そして、第1区間検出フラグFr1=1であり、且つ、車両の現在位置Pにおける曲率半径Rpが、第1閾値Sr1以下であると判定された場合(S6−1:Yes)、前回の道路形状学習処理により車両は既に第1区間内を走行していると判定されている状態であり、且つ、現在位置Pにおける曲率半径Rpも第1閾値Sr1以下であるため、車両の現在位置Pについても第1区間内であると判定し、第1区間検出部21eは、第1区間検出処理を終了する。
【0064】
一方、第1区間検出フラグFr1=1であり、且つ、車両の現在位置Pにおける曲率半径Rpが、第1閾値Sr1以下であると判定されない場合(S6−1:No)、第1区間検出部21eは、第1区間検出フラグFr1=0であるか否かを判定する(S6−2)。この判定についてもS6−1と同様に、第1区間検出部21eは、RAM等に記憶された第1区間検出フラグFr1を参照し、当該第1区間検出フラグFr1が1であるか、0であるかを判定する。
【0065】
第1区間検出フラグFr1=0であると判定された場合(S6−2:Yes)、第1区間検出部21eは、さらに、曲率半径Rpが第1閾値Sr1以下であるか否かを判定する(S6−3)。この判定についても、S6−1と同様に、第1区間検出部21eは、S4にて走行情報管理部21cにより走行情報記憶部31bに記憶されている、車両の現在位置を示す位置情報に対応付けられた曲率半径情報を参照し、車両の現在位置Pにおける曲率半径Rpが第1閾値Sr1以下であるか否かを判定する。
【0066】
そして、曲率半径Rpが第1閾値Sr1以下であると判定された場合(S6−3:Yes)、第1区間検出フラグFr1=0であり、且つ、現在位置Pにおける曲率半径Rpが第1閾値Sr1以下であることから、前回の道路形状学習処理では車両は第1区間内を走行していない判定されている状態であり、且つ、現在位置Pにおける曲率半径Rpが第1閾値Sr1以下であるため、車両の現在位置Pが第1区間の開始点であると判定し、第1区間検出部21eは、第1区間の開始点C1sを設定し、当該開始点C1sを図示しないRAM等に記憶する(S6−4)。
S6−4にて第1区間の開始点C1sを設定した後、第1区間検出部21eは、今回の道路形状学習処理における現在位置Pが第1区間内であることから、第1区間検出フラグFr1を1に設定して図示しないRAM等に記憶し(S6−5)、第1区間検出処理を終了する。
【0067】
一方、S6−2にて、第1区間検出フラグFr1=0でないと判定された場合(S6−2:No)、第1区間検出フラグFr1=1であり、且つ、現在位置Pにおける曲率半径Rpが第1閾値Sr1超であることから、前回の道路形状学習処理では車両は第1区間を走行していると判定されているのに対し、現在位置Pにおける曲率半径Rpが第1閾値Sr1超であるため、車両の現在位置Pが第1区間C1の終了点C1eであると判定し、第1区間検出部21eは、第1区間C1の終了点C1eを設定し、当該終了点C1eを図示しないRAM等に記憶する(S6−6)。
尚、走行情報記憶部31bに記憶されている、今回の道路形状学習処理における現在位置Pの一つ手前の位置情報が示す現在位置を、第1区間C1の終了点C1eとして設定しても良い。これは、今回の道路形状学習処理における現在位置Pは、曲率半径Rpが第1閾値Sr1超であることから、第1区間外であると判定し、前回の道路形状学習処理における現在位置が第1区間の終了点であると判定する場合に行う処理である。
【0068】
そして、第1区間C1の終了点C1eを設定した後、第1区間検出部21eは、学習対象区間Lを設定し、当該設定した学習対象区間Lの開始点Ls及び終了点Leを対応付けて学習対象区間記憶部31dに記憶する(S6−7)。尚、学習対象区間L、開始点Ls、及び、終了点Leの設定については、上述したためここでは省略する。
【0069】
S6−7にて学習対象区間Lを設定した後、又は、S6−3にて曲率半径Rpが第1閾値Sr1超であると判定された場合(S6−3:No)、車両の現在位置Pは第1区間ではないことから、第1区間検出部21eは、第1区間検出フラグFr1を0に設定して図示しないRAM等に記憶し(S6−8)、第1区間検出処理を終了する。
【0070】
(処理−第2区間検出処理)
続いて、上述の第2区間検出処理について、図面を用いて詳細に説明する。
図4は、制御部21の第2区間検出部21fにより実行される第2区間検出処理のフローチャートである。
【0071】
まず、第2区間検出部21fは、第2区間検出フラグFr2=1であり、且つ、車両の現在位置Pにおける曲率半径Rpが、第2閾値Sr2以下であるか否かを判定する(S7−1)。具体的には、第2区間検出部21fは、図示しないRAM等に記憶された第2区間検出フラグFr2を参照し、当該第2区間検出フラグFr2が1であるか、0であるかを判定する。さらに、上述のS4にて、走行情報管理部21cにより走行情報記憶部31bに記憶されている、車両の現在位置を示す位置情報に対応付けられた曲率半径情報を参照し、車両の現在位置における曲率半径Rpが第2閾値Sr2以下であるか否かを判定する。
【0072】
ここで、第2区間検出フラグFr2とは、図3に示す第1区間検出処理における第1区間検出フラグFr1と同様の意味を有するフラグであり、第2区間検出フラグFr2=1の状態とは、既に第2閾値Sr2以下の曲率半径Rpが検出されていることから、車両は第2区間内を走行している状態であり、第2区間検出フラグFr2=0の状態とは、第2閾値Sr2以下の曲率半径Rpが検出されていないことから、車両は第2区間内を走行していない状態である。尚、第1区間検出フラグFr1と同様、第2区間検出フラグFr2=1の状態とは、後述するS7−4にて第2区間の開始点C2sが既に設定されている状態である。
【0073】
そして、第2区間検出フラグFr2=1であり、且つ、車両の現在位置Pにおける曲率半径Rpが、第2閾値Sr2以下であると判定された場合(S7−1:Yes)、前回の道路形状学習処理により車両は既に第2区間内を走行していると判定されている状態であり、且つ、現在位置Pにおける曲率半径Rpも第2閾値Sr2以下であるため、車両の現在位置Pについても第2区間内であると判定し、第2区間検出部21fは、第2区間検出処理を終了する。
【0074】
一方、第2区間検出フラグFr2=1であり、且つ、車両の現在位置Pにおける曲率半径Rpが、第2閾値Sr2以下であると判定されない場合(S7−1:No)、第2区間検出部21fは、第2区間検出フラグFr2=0であるか否かを判定する(S7−2)。この判定については、S7−1と同様に、第2区間検出部21fは、図示しないRAM等に記憶された第2区間検出フラグFr2を参照し、当該第2区間検出フラグFr2が1であるか、0であるかを判定する。
【0075】
第2区間検出フラグFr2=0であると判定された場合(S7−2:Yes)、第2区間検出部21fは、さらに、曲率半径Rpが第2閾値Sr2以下であるか否かを判定する(S7−3)。この判定についても、S7−1と同様に、第2区間検出部21fは、S4にて走行情報管理部21cにより走行情報記憶部31bに記憶されている、車両の現在位置を示す位置情報に対応付けられた曲率半径情報を参照し、車両の現在位置Pにおける曲率半径Rpが第2閾値Sr2以下であるか否かを判定する。
【0076】
そして、曲率半径Rpが第2閾値Sr2以下であると判定された場合(S7−3:Yes)、第2区間検出フラグFr2=0であり、且つ、現在位置Pにおける曲率半径Rpが第2閾値Sr2以下であることから、前回の道路形状学習処理では車両は第2区間を走行していないと判定されている状態であり、且つ、現在位置Pにおける曲率半径Rpが第2閾値Sr2以下であるため、車両の現在位置Pが第2区間の開始点であると判定し、第2区間検出部21fは、車両の現在位置Pを第2区間の開始点C2sに設定し、当該開始点C2sを図示しないRAM等に記憶する(S7−4)。
第2区間検出部21fは、第2区間の開始点C2sを設定した後、今回の道路形状学習処理における現在位置Pが第2区間内であることから、第2区間検出フラグFr2を1に設定して図示しないRAM等に記憶し(S7−5)、第2区間検出処理を終了する。
【0077】
一方、S7−2にて、第2区間検出フラグFr2=0でないと判定された場合(S7−2:No)、第2区間検出フラグFr2=1であり、且つ、現在位置Pにおける曲率半径Rpが第2閾値Sr2超であることから、前回の道路形状学習処理では車両は第2区間内を走行していると判定されているのに対し、現在位置Pにおける曲率半径Rpが第2閾値Sr2超であり第2区間でないため、車両の現在位置Pが第2区間C2の終了点C2eであると判定し、第2区間検出部21fは、現在位置Pを第2区間C2の終了点C2eに設定し、当該終了点C2eを図示しないRAM等に記憶する(S7−6)。
尚、第1区間検出処理のS6−6と同様に、走行情報記憶部31bに記憶されている、今回の道路形状学習処理における現在位置Pの一つ手前の位置情報が示す現在位置を、第2区間C2の終了点C2eとして設定しても良い。
【0078】
そして、第2区間C2の終了点C2eを設定した後、第2区間検出部21fは、曲率半径が一定の区間である一定曲率半径区間を特定する(S7−7)。
具体的には、第2区間検出部21fは、S7−4及びS7−6で設定した第2区間C2の開始点C2s及び終了点C2eをRAM等から読み出し、走行情報記憶部31bに記憶されている位置情報及び曲率半径情報のうち、当該開始点C2sから終了点C2eまでの区間における位置情報及び曲率半径情報を抽出する。
そして、抽出した位置情報及び曲率半径情報を参照し、抽出した曲率半径情報が示す曲率半径のうちで最小の曲率半径を特定し、当該最小の曲率半径を示す曲率半径情報に対応付けられている位置情報が連続する区間を、一定曲率半径区間として特定する。尚、最小の曲率半径に所定のマージン(例えば+5%)を加えた範囲内の曲率半径を示す曲率半径情報に対応付けられている位置情報が連続する区間を、一定曲率半径区間として特定しても良い。
【0079】
S7−7にて、一定曲率半径区間を特定した後、第2区間検出部21fは、コーナ区間の形状を示すコーナ情報を、コーナ情報記憶部31cに記憶する(S7−8)。
具体的には、S7−7にて特定した一定曲率半径区間に基づいて、当該一定曲率半径区間の開始点Rs及び終了点Re、最小の曲率半径Rminを抽出する。また、S7−4及びS7−6で設定した第2区間C2の開始点C2s及び終了点C2eを、コーナ区間の開始点Cs及びCeとして抽出する。そして、抽出した、一定曲率半径区間の開始点Rs及び終了点Re、一定曲率半径区間の最小の曲率半径Rmin、コーナ区間の開始点Cs及びCe、をそれぞれ対応付けてコーナ情報とし、当該コーナ情報をコーナ情報記憶部31cに記憶する。
【0080】
S7−8にて、コーナ情報をコーナ情報記憶部31cに記憶した後、第2区間検出部21fは、学習対象区間記憶部31dを参照し、今回検出したコーナ区間に対応する学習対象区間Lの開始点Ls及び終了点Leを削除する(S7−9)。これは、今回の道路形状学習処理により、学習対象区間内のコーナ区間が検出されたため、次回以降は学習する必要がないためである。但し、コーナ情報の精度を向上させるために、学習対象区間を車両に複数回走行させてコーナ情報を学習する場合には、学習回数に閾値を設け、当該閾値以上学習(走行)した場合に、学習対象区間記憶部31dに記憶されている学習対象区間を削除するようにしても良い。
【0081】
S7−9にて学習対象区間記憶部31dに記憶されている学習対象区間を削除した後、又は、S7−3にて曲率半径Rpが第2閾値Sr2超であると判定された場合(S7−3:No)、今回の道路形状学習処理における車両の現在位置Pは第2区間内ではないため、第2区間検出部21fは、第2区間検出フラグFr2を0に設定して図示しないRAM等に記憶し(S7−10)、第2区間検出処理を終了する。
【0082】
(効果)
以上、詳細に説明したように、本実施の形態によれば、コーナ区間を検出して、当該検出したコーナ区間の形状を示すコーナ情報を作成する場合に、曲率半径が第1閾値以下であることから車両制御の対象となる区間を確実に含み、且つ、曲率半径が第1閾値よりも大きい第2閾値以下の、比較的曲率半径が大きい区間までを、コーナ区間として適切に検出することが可能となる。
【0083】
また、車両制御の対象となる区間を包含する学習対象区間内における位置情報と曲率情報に基づいて第2区間を検出することが可能となり、第2区間を適切に検出することができる。
【0084】
〔実施の形態に対する変形例〕
(解決しようとする課題や発明の効果について)
まず、発明が解決しようとする課題や発明の効果は、上述の内容に限定されるものではなく、発明の実施環境や構成の細部に応じて異なる可能性があり、上述した課題の一部のみを解決することや、上述した効果の一部のみを奏することがある。
【0085】
(コーナ検出処理について)
本実施の形態においては、第1区間検出部21eの処理により、第1区間が検出され、学習対象区間が設定された後、当該学習対象区間を車両が新たに走行した場合に、当該新たに走行した際に走行情報管理部21cの処理により後述する走行情報記憶部31bに記憶された当該学習対象区間内における位置情報と曲率半径情報とに基づいて、第1区間を包含する区間であって、且つ、第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する構成としたが、走行情報記憶部31bに記憶された位置情報と曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間である第1区間を検出し、当該第1区間を包含する区間であって、且つ、第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出することができれば良い。
例えば、同一の道路区間を複数回走行させることなく、一度の走行において走行情報記憶部31bに記憶された位置情報と曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間である第1区間を検出し、当該第1区間を包含する区間であって、且つ、第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する構成を採用することが可能である。
【0086】
具体的には、制御部21は、走行情報記憶部31bに位置情報と曲率半径情報とが記憶される度に、第1閾値以下である曲率半径が検出されたか否かを判断する。
そして、第1閾値以下である曲率半径が検出された場合、当該検出されてから所定距離(例えば1000m)走行したことをトリガとして、第1区間と第2区間の検出を開始する。
【0087】
制御部21は、走行情報記憶部31bを参照し、記憶されている位置情報と曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間である第1区間を検出する。そして、検出した第1区間の開始点と終了点とを特定する。
同様に、制御部21は、走行情報記憶部31bを参照し、記憶されている位置情報と曲率半径情報とに基づいて、第2閾値以下である曲率半径に対応付けられた位置情報が連続する区間である第2区間を検出する。そして、検出した第2区間の開始点と終了点とを特定する。
第1区間と第2区間とが検出された場合、それぞれの開始点及び終了点を参照し、車両の現在位置(第1閾値以下である曲率半径を検出してから所定距離走行した地点)を基準として、第1区間の開始点が第2区間の開始点よりも手前側であるか否か、及び、第2区間の終了点が第1区間の終了点よりも手前側であるか否か、を判定する。
そして、両者が手前側であると判定された場合、第2区間は、第1区間を包含している区間であるため、当該第2区間をコーナ区間であると特定する。
この形態によれば、コーナ区間を検出する場合に、曲率半径が第1閾値以下であることから車両制御の対象となる区間を確実に含み、且つ、曲率半径が第1閾値よりも大きい第2閾値以下の、比較的曲率半径が大きい区間までを、コーナ区間として適切に検出することが可能となる。
【0088】
尚、この形態では、第1閾値以下である曲率半径が検出された場合、当該検出されてから所定距離走行したことをトリガとして、第1区間と第2区間の検出を開始するように構成されているが、第1区間及び第2区間の検出を行うことが可能な位置情報と曲率半径が走行情報記憶部31bに記憶されている状態にて、第1区間及び第2区間の検出することができれば良い。
例えば、車両のエンジンがオンにされてからオフとなるまでに、走行情報記憶部に記憶された位置情報と曲率半径情報とを参照して、第1閾値以下の曲率半径を示す曲率半径情報に対応付けられている位置情報が連続する区間である第1区間を検出し、当該第1区間を包含する区間であって、第2閾値以下の曲率半径を示す曲率半径情報に対応付けられている位置情報が連続する区間である第2区間を検出し、当該第2区間をコーナ区間として特定する構成を採用しても良い。
尚、この場合、走行情報記憶部31bは、記憶されている位置情報及び曲率半径情報の連続性が判定可能な態様で、これらの情報を記憶している必要がある。
【0089】
(区間設定手段について)
また、本実施の形態においては、区間設定手段としての第1区間検出部21eが、第1区間C1を検出した場合、当該第1区間C1の開始点C1sから、終了点C1eと反対方向に所定距離Ldだけ離れた地点を、学習対象区間の開始点Lsとして特定するとともに、第1区間C1の終了点C1eから、開始点C1sと反対方向に所定距離Ldだけ離れた地点を、学習対象区間の終了点Leとして特定して、学習対象区間Lを設定していたが、第1区間内における位置情報と曲率半径とに基づいて、当該第1区間に隣接するクロソイド区間の区間長を推定し、当該推定した区間長に基づいて、前記学習対象区間を設定する構成を採用しても良い。
【0090】
具体的には、第1区間検出部21eは、第1区間を検出した場合、上記の第2区間検出処理におけるS7−7と同様の方法にて、当該第1区間内における一定曲率半径区間Fを特定するとともに、当該一定曲率半径区間Fの曲率半径Rmin、開始点Fs及び終了点Feをそれぞれ特定する。そして、当該特定した曲率半径Rminに基づいて、一定曲率半径区間Fに隣接するクロソイド区間の区間長Lcを推定する。
クロソイド区間の区間長の推定については、例えば、一定曲率半径区間Fにおける曲率半径Rminと、クロソイド区間の区間長Lcとを対応付けたマップをデータ記憶部31等に記憶しておき、当該マップを参照して、クロソイド区間の区間長Lcを推定する構成を採用しても良い。また、公知の方法にて、一定曲率半径区間Fにおける曲率半径Rminに基づいて、クロソイド区間の区間長Lcを算出しても良い。
【0091】
クロソイド区間の区間長Lcを推定した後、第1区間検出部21eは、一定曲率半径区間Fの開始点Fsから、終了点Feと反対方向に区間長Lcだけ離れた地点を学習対象区間Lの開始点Lsとして特定するとともに、一定曲率半径区間Fの終了点Feから、開始点Fsと反対方向に区間長Lcだけ離れた地点を学習対象区間Lの終了点Leとして特定して、学習対象区間Lを設定する。
尚、区間長Lcに所定のマージン(例えば、20m)を加えた距離Lmを特定し、一定曲率半径区間Fの開始点Fs及び終了点Feから、距離Lmだけ離れた地点を、それぞれ学習対象区間Lの開始点Ls及び終了点Leとして特定しても良い。
このように、第1区間内における位置情報と曲率半径とに基づいて、当該第1区間に隣接するクロソイド区間の区間長を推定し、当該推定した区間長に基づいて、前記学習対象区間を設定することで、車両制御の対象となる区間を確実に含む第1区間に接続するクロソイド区間について、当該クロソイド区間が存在すると予測される区間を学習対象区間として設定することが可能となり、第2区間を検出する対象となる区間を適切に設定することができる。
【0092】
(走行軌跡取得手段について)
また、車両が学習対象区間を走行する場合、走行軌跡取得手段としての走行情報管理部21cが位置情報を取得する間隔を、学習対象区間以外を走行する場合と比較して短くするように構成しても良い。尚、位置情報を取得する間隔は時間でも距離でも良く、所定時間毎に位置情報を取得する場合にはその所定時間を、所定距離毎に位置情報を取得する場合にはその所定距離を、それぞれ短くすることにより、位置情報を取得する間隔の変更を実現する。
【0093】
例えば、車両の現在位置を示す位置情報と当該車両の現在位置における曲率半径とを走行軌跡として取得する場合、学習対象区間内における位置情報の取得間隔を短くすることにより、走行情報記憶部31bに記憶される位置情報及び曲率半径のデータ数が増加するため、第2区間検出手段としての第2区間検出部21fの処理により検出された第2区間の開始点や終了点、一定曲率半径区間Fの開始点や終了点、の位置精度が向上する。そして、コーナ情報作成手段としての第2区間検出部21fの処理により作成されるコーナ情報の精度も向上させることが可能となる。
また、車両の現在位置を示す位置情報のみを走行軌跡として取得し、当該位置情報の履歴に基づいて、曲率半径算出の対象となる現在位置、及び、当該対象となる現在位置の前後に検出された現在位置、の3点の現在位置から、当該3点の現在位置を通過する円を導出し、当該導出した円の半径を、対象となる現在位置における曲率半径として算出する方法を採用する場合、学習対象区間内における位置情報の取得間隔を短くすることにより、曲率半径を算出する際に参照する位置情報の履歴が詳細になるため、曲率半径の算出精度を向上させることが可能となる。
【0094】
また、車両が学習対象区間を走行する場合と、学習対象区間以外を走行する場合とで、位置情報を取得する間隔を変更するだけでなく、曲率半径の算出方法を変更したり、車載センサ1の分解能や曲率半径の算出に利用するセンサの種類を変化させたりしても良い。
【0095】
曲率半径の算出方法を変更する構成としては、例えば、第1区間を検出する際に参照する曲率半径は位置情報の履歴のみから算出し、第2区間を検出する際に参照する曲率半径は車載センサの測定値に基づいて算出する構成を採用可能である。
具体的には、学習対象区間以外を走行する場合には、走行軌跡として位置情報のみを取得し、当該位置情報の履歴から曲率半径を算出し、第1区間を検出するとともに、学習対象区間を設定する。そして、学習対象区間を走行する場合、走行軌跡として位置情報と、車載センサ1の測定値に基づいて算出された曲率半径とを取得し、第2区間を検出する。
このように構成することで、第1区間を検出する際には、車載センサ1の測定値に基づいて曲率半径を算出する必要がないため、処理負荷が低減される。また、第2区間内における曲率半径は、車載センサ1の測定値に基づいて算出された曲率半径となるため、コーナ情報を作成する際に参照される曲率半径は、より詳細な値として検出することが可能となる。
【0096】
また、曲率半径の算出に利用するセンサの種類を変化させる構成としては、例えば、学習対象区間以外を走行する場合には、車速センサの測定値とジャイロセンサの測定値とに基づいて曲率半径を算出し、学習対象区間を走行する場合には、車速センサの測定値とジャイロセンサの測定値とに加えて、ステアリングセンサによる測定値(操舵角)に基づいて曲率半径を算出する構成としても良い。このように構成することで、第1区間の検出に利用する曲率半径を算出する処理の処理負荷を低減するとともに、第2区間の検出及びコーナ情報の作成に利用する曲率半径の精度を向上させることが可能となる。
【0097】
(曲率半径情報について)
また、本実施の形態においては、曲率半径を示す情報である曲率半径情報として、曲率半径を採用したが、曲率半径を示すことが可能な情報であれば良く、例えば曲率(曲率半径の逆数)等を曲率半径を示す曲率半径情報として採用しても良い。また、角速度や横加速度と車速とを対応付けて曲率半径情報とする構成や、連続する位置情報を接続するセグメントが次のセグメントと成す方位角の変化(履歴)を曲率半径情報とする構成など、曲率半径を算出することが可能な値を、曲率半径情報として採用することも可能である。
尚、曲率半径以外を曲率半径情報として採用する場合、第1区間及び第2区間の検出については、曲率半径が第1閾値及び第2閾値以下である区間に対応する区間を検出することが可能であれば良い。
例えば、曲率を曲率半径情報として採用する場合、第1閾値に対応する第1曲率閾値と、第2閾値に対応する第2曲率閾値とをそれぞれ設定し、曲率が第1曲率閾値以上である区間を第1区間として、また、曲率が第2閾値以上である区間を第2区間として、それぞれ検出することにより、曲率半径が第1閾値以下である区間及び第2閾値以下である区間に対応する区間を検出することが可能となる。尚、曲率は曲率半径の逆数であるため、第2曲率半径は第1曲率半径よりも小さい値となる。
【符号の説明】
【0098】
100…道路形状学習システム、1…車載センサ、11…GPSレシーバ、12…ジャイロセンサ、13…車速センサ、2…道路形状学習装置、21…制御部、21a…現在位置検出部、21b…曲率半径算出部、21c…走行情報管理部、21d…コーナ検出部、21e…第1区間検出部、21f…第2区間検出部、31…データ記憶部、31a…地図データ記憶部、31b…コーナ情報記憶部、31c…走行情報記憶部、31d…学習対象区間記憶部


【特許請求の範囲】
【請求項1】
車両の走行軌跡を取得し、当該取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径を示す曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて記憶部に記憶する走行情報管理手段と、
前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出する第1区間検出手段と、
前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出手段と、
検出した第2区間がコーナ区間であると特定し、前記記憶部に記憶されている、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、当該コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成手段と、
を有する道路形状学習装置。
【請求項2】
前記第1区間検出手段が第1区間を検出した場合、当該検出した第1区間を包含する学習対象区間を設定する区間設定手段をさらに有し、
前記第2区間検出手段は、
前記区間設定手段により前記学習対象区間が設定された後、当該学習対象区間を前記車両が新たに走行した場合に、
当該新たに走行した際に前記走行情報管理手段により前記記憶部に記憶された、前記学習対象区間内における前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を前記第2区間として検出する、
請求項1に記載の道路形状学習装置。
【請求項3】
前記区間設定手段は、
前記記憶部に記憶されている、前記第1区間内における位置情報と曲率半径情報とに基づいて、当該第1区間に隣接するクロソイド区間の区間長を推定し、当該推定した区間長に基づいて、前記学習対象区間を設定する、
請求項2に記載の道路形状学習装置。
【請求項4】
前記走行情報管理手段は、
前記学習対象区間を前記車両が走行する場合、前記学習対象区間以外を前記車両が走行する場合と比較して、前記位置情報と前記曲率半径情報とを特定する間隔を短くする、
請求項2又は3に記載の道路形状学習装置。
【請求項5】
車両の走行軌跡を取得し、当該取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径を示す曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて記憶部に記憶する走行情報管理工程と、
前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出する第1区間検出行程と、
前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出行程と、
検出した第2区間がコーナ区間であると特定し、前記記憶部に記憶されている、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、当該コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成行程と、
を備える道路形状学習方法。
【請求項6】
車両の走行軌跡を取得し、当該取得した走行軌跡に基づいて車両の位置を示す位置情報と曲率半径情報とを特定し、当該位置情報と曲率半径情報とを対応付けて記憶部に記憶する走行情報管理機能と、
前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、第1閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第1区間として検出する第1区間検出機能と、
前記記憶部に記憶されている前記位置情報と前記曲率半径情報とに基づいて、前記第1区間を包含する区間であって、且つ、前記第1閾値よりも大きい第2閾値以下である曲率半径を示す曲率半径情報に対応付けられた位置情報が連続する区間を第2区間として検出する第2区間検出機能と、
検出した第2区間がコーナ区間であると特定し、前記記憶部に記憶されている、当該コーナ区間内における位置情報と曲率半径情報とに基づいて、当該コーナ区間の形状を示すコーナ情報を作成するコーナ情報作成機能と、
をコンピュータに実現させる道路形状学習プログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−81526(P2011−81526A)
【公開日】平成23年4月21日(2011.4.21)
【国際特許分類】
【出願番号】特願2009−232131(P2009−232131)
【出願日】平成21年10月6日(2009.10.6)
【出願人】(000100768)アイシン・エィ・ダブリュ株式会社 (3,717)
【Fターム(参考)】