以下、本発明に係る運転支援装置をナビゲーション装置1に具体化した一実施形態について図面を参照しつつ詳細に説明する。先ず、本実施形態に係るナビゲーション装置1を含む運転支援システム2の概略構成について図1及び図2を用いて説明する。図1は本実施形態に係る運転支援システム2を示した概略構成図である。図2は本実施形態に係る運転支援システム2の構成を示したブロック図である。
図1に示すように、本実施形態に係る運転支援システム2は、情報配信センタ3が備えるサーバ装置4と、車両5に搭載されて車両5の自動運転に関する各種支援を行うナビゲーション装置1と、を基本的に有する。また、サーバ装置4とナビゲーション装置1は通信ネットワーク網6を介して互いに電子データを送受信可能に構成されている。尚、ナビゲーション装置1の代わりに、車両5に搭載された他の車載器や車両5に関する制御を行う車両制御装置を用いても良い。
ここで、車両5はユーザの運転操作に基づいて走行する手動運転走行に加えて、ユーザの運転操作によらず車両が予め設定された経路や道なりに沿って自動的に走行を行う自動運転支援による支援走行が可能な車両とする。
また、自動運転支援は全ての道路区間に対して行っても良いし、特定の道路区間(例えば境界にゲート(有人無人、有料無料は問わない)が設けられた高速道路)を車両が走行する間のみ行う構成としても良い。以下の説明では車両の自動運転支援が行われる自動運転区間は、一般道や高速道路を含む全ての道路区間に加えて駐車場も含むこととし、車両が走行を開始してから走行を終了するまでの間において基本的に自動運転支援が行われるとして説明する。但し、車両が自動運転区間を走行する場合には必ず自動運転支援が行われるのではなく、ユーザにより自動運転支援を行うことが選択され(例えば自動運転開始ボタンをONする)、且つ自動運転支援による走行を行わせることが可能と判定された状況でのみ行うのが望ましい。一方で、車両5は自動運転支援による支援走行のみ可能な車両としても良い。
そして、自動運転支援における車両制御では、例えば、車両の現在位置、車両が走行する車線、周辺の障害物の位置を随時検出し、後述のようにナビゲーション装置1で生成された走行軌道に沿って、同じく生成された速度計画に従った速度で走行するようにステアリング、駆動源、ブレーキ等の車両制御が自動で行われる。尚、本実施形態の自動運転支援による支援走行では、車線変更や右左折についても上記自動運転支援による車両制御を行うことにより走行するが、車線変更や右左折等の特殊な走行については自動運転支援による走行は行わずに手動運転により行う構成としても良い。
一方、ナビゲーション装置1は、車両5に搭載され、ナビゲーション装置1が有する地図データ或いは外部から取得した地図データに基づいて自車位置周辺の地図を表示したり、地図画像上において車両の現在位置を表示したり、設定された案内経路に沿った移動案内を行う車載機である。本実施形態では特に自動運転支援による支援走行を車両が行う場合に、自動運転支援に関する各種支援情報を生成する。支援情報としては例えば車両の走行が推奨される走行軌道(推奨される車線移動態様を含む)、走行する際の車速を示す速度計画等がある。尚、ナビゲーション装置1の詳細については後述する。
また、サーバ装置4は、ナビゲーション装置1の要求に応じて経路探索の実行を行う。具体的には、ナビゲーション装置1において目的地が設定された場合や経路の再探索(リルート)を行う場合に、ナビゲーション装置1からサーバ装置4へと出発地や目的地等の経路探索に必要な情報が経路探索要求とともに送信される(但し、再探索の場合には目的地に関する情報は必ずしも送信する必要は無い)。そして経路探索要求を受信したサーバ装置4は、サーバ装置4の有する地図情報を用いて経路探索を行い、出発地から目的地までの推奨経路を特定する。その後、特定された推奨経路を要求元のナビゲーション装置1へと送信する。そして、ナビゲーション装置1は受信した推奨経路に関する情報をユーザに提供したり、推奨経路を案内経路に設定し、案内経路に従って自動運転支援に関する各種支援情報を生成する。それによって、経路探索時点においてナビゲーション装置1が有する地図情報が古いバージョンの地図情報であったり、ナビゲーション装置1が地図情報自体を有さない場合であっても、サーバ装置4が有する最新バージョンの地図情報に基づいて適切な目的地までの推奨経路を提供することが可能となる。
更に、サーバ装置4は、上記経路探索に用いる通常の地図情報とは別に、より精度の高い地図情報である高精度地図情報を有している。高精度地図情報は、例えば道路のレーン形状(車線単位の道路形状や曲率、車線幅等)と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報が含まれる。また、その他に交差点に関する情報、駐車場に関する情報等も含まれる。そして、サーバ装置4はナビゲーション装置1からの要求に応じて高精度地図情報を配信し、ナビゲーション装置1はサーバ装置4から配信された高精度地図情報を用いて後述のように自動運転支援に関する各種支援情報を生成する。尚、高精度地図情報は基本的に道路(リンク)及びその周辺のみを対象とした地図情報であるが、道路周辺以外のエリアについても含む地図情報としても良い。
但し、上述した経路探索処理については必ずしもサーバ装置4で行う必要は無く、地図情報を有するナビゲーション装置1であればナビゲーション装置1で行っても良い。また、高精度地図情報についてもサーバ装置4から配信されるのではなくナビゲーション装置1が予め有するようにしても良い。
また、通信ネットワーク網6は全国各地に配置された多数の基地局と、各基地局を管理及び制御する通信会社とを含み、基地局及び通信会社を有線(光ファイバー、ISDN等)又は無線で互いに接続することにより構成されている。ここで、基地局はナビゲーション装置1との通信をするトランシーバー(送受信機)とアンテナを有する。そして、基地局は通信会社の間で無線通信を行う一方、通信ネットワーク網6の末端となり、基地局の電波が届く範囲(セル)にあるナビゲーション装置1の通信をサーバ装置4との間で中継する役割を持つ。
続いて、運転支援システム2におけるサーバ装置4の構成について図2を用いてより詳細に説明する。サーバ装置4は、図2に示すようにサーバ制御部11と、サーバ制御部11に接続された情報記録手段としてのサーバ側地図DB12と、高精度地図DB13と、サーバ側通信装置14とを備える。
サーバ制御部11は、サーバ装置4の全体の制御を行う制御ユニット(MCU、MPU等)であり、演算装置及び制御装置としてのCPU21、並びにCPU21が各種の演算処理を行うにあたってワーキングメモリとして使用されるRAM22、制御用のプログラム等が記録されたROM23、ROM23から読み出したプログラムを記憶するフラッシュメモリ24等の内部記憶装置を備えている。尚、サーバ制御部11は、後述のナビゲーション装置1のECUとともに処理アルゴリズムとしての各種手段を有する。
一方、サーバ側地図DB12は、外部からの入力データや入力操作に基づいて登録された最新のバージョンの地図情報であるサーバ側地図情報が記憶される記憶手段である。ここで、サーバ側地図情報は、道路網を始めとして経路探索、経路案内及び地図表示に必要な各種情報から構成されている。例えば、道路網を示すノード及びリンクを含むネットワークデータ、道路(リンク)に関するリンクデータ、ノード点に関するノードデータ、各交差点に関する交差点データ、施設等の地点に関する地点データ、地図を表示するための地図表示データ、経路を探索するための探索データ、地点を検索するための検索データ等からなる。
また、高精度地図DB13は、上記サーバ側地図情報よりも精度の高い地図情報である高精度地図情報15が記憶される記憶手段である。高精度地図情報15は、特に車両が走行対象となる道路や駐車場等に関してより詳細な情報を格納した地図情報であり、本実施形態では例えば道路のレーン形状(車線単位の道路形状や曲率、車線幅等)と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報が含まれる。また、更に高精度地図DB13としては、道路を構成する各リンクに関してリンクの属する道路の幅員、勾(こう)配、カント、バンク、路面の状態、ノード間のリンク形状(例えばカーブ道路ではカーブの形状)を特定する為の形状補完点データ、合流区間、道路構造、道路の車線数、車線数の減少する箇所、幅員の狭くなる箇所、踏切等を表すデータが、コーナに関して、曲率半径、交差点、T字路、コーナの入口及び出口等を表すデータが、道路属性に関して、降坂路、登坂路等を表すデータが、道路種別に関して、国道、県道、細街路等の一般道のほか、高速自動車国道、都市高速道路、自動車専用道路、一般有料道路、有料橋等の有料道路を表すデータがそれぞれ記録される。特に本実施形態では、道路の車線数に加えて、車線毎の進行方向の通行区分や道路の繋がり(具体的には、交差点の通過前の道路に含まれる車線と交差点の通過後の道路に含まれる車線との対応関係)を特定する情報についても記憶されている。更に、道路に設定されている制限速度についても記憶されている。また、高精度地図情報は基本的に道路(リンク)及びその周辺のみを対象とした地図情報であるが、道路周辺以外のエリアについても含む地図情報としても良い。また、図2に示す例ではサーバ側地図DB12に格納されるサーバ側地図情報と高精度地図情報15とは異なる地図情報としているが、高精度地図情報15はサーバ側地図情報の一部としても良い。
一方、サーバ側通信装置14は各車両5のナビゲーション装置1と通信ネットワーク網6を介して通信を行う為の通信装置である。また、ナビゲーション装置1以外にインターネット網や、交通情報センタ、例えば、VICS(登録商標:Vehicle Information and Communication System)センタ等から送信された渋滞情報、規制情報、交通事故情報等の各情報から成る交通情報の受信についても可能である。
次に、車両5に搭載されたナビゲーション装置1の概略構成について図3を用いて説明する。図3は本実施形態に係るナビゲーション装置1を示したブロック図である。
図3に示すように本実施形態に係るナビゲーション装置1は、ナビゲーション装置1が搭載された車両の現在位置を検出する現在位置検出部31と、各種のデータが記録されたデータ記録部32と、入力された情報に基づいて、各種の演算処理を行うナビゲーションECU33と、ユーザからの操作を受け付ける操作部34と、ユーザに対して車両周辺の地図やナビゲーション装置1で設定されている案内経路(車両の走行予定経路)に関する情報等を表示する液晶ディスプレイ35と、経路案内に関する音声ガイダンスを出力するスピーカ36と、記憶媒体であるDVDを読み取るDVDドライブ37と、プローブセンタやVICSセンタ等の情報センタとの間で通信を行う通信モジュール38と、を有する。また、ナビゲーション装置1はCAN等の車載ネットワークを介して、ナビゲーション装置1の搭載された車両に対して設置された車外カメラ39や各種センサが接続されている。更に、ナビゲーション装置1の搭載された車両に対する各種制御を行う車両制御ECU40とも双方向通信可能に接続されている。
以下に、ナビゲーション装置1が有する各構成要素について順に説明する。
現在位置検出部31は、GPS41、車速センサ42、ステアリングセンサ43、ジャイロセンサ44等からなり、現在の車両の位置、方位、車両の走行速度、現在時刻等を検出することが可能となっている。ここで、特に車速センサ42は、車両の移動距離や車速を検出する為のセンサであり、車両の駆動輪の回転に応じてパルスを発生させ、パルス信号をナビゲーションECU33に出力する。そして、ナビゲーションECU33は発生するパルスを計数することにより駆動輪の回転速度や移動距離を算出する。尚、上記4種類のセンサをナビゲーション装置1が全て備える必要はなく、これらの内の1又は複数種類のセンサのみをナビゲーション装置1が備える構成としても良い。
また、データ記録部32は、外部記憶装置及び記録媒体としてのハードディスク(図示せず)と、ハードディスクに記録された地図情報DB45やキャッシュ46や所定のプログラム等を読み出すとともにハードディスクに所定のデータを書き込む為のドライバである記録ヘッド(図示せず)とを備えている。尚、データ記録部32をハードディスクの代わりにフラッシュメモリやメモリーカードやCDやDVD等の光ディスクを有しても良い。また、本実施形態では上述したようにサーバ装置4において目的地までの経路を探索するので、地図情報DB45については省略しても良い。地図情報DB45を省略した場合であっても、必要に応じてサーバ装置4から地図情報を取得することも可能である。
ここで、地図情報DB45は、例えば、道路(リンク)に関するリンクデータ、ノード点に関するノードデータ、経路の探索や変更に係る処理に用いられる探索データ、施設に関する施設データ、地図を表示するための地図表示データ、各交差点に関する交差点データ、地点を検索するための検索データ等が記憶された記憶手段である。
一方、キャッシュ46は、過去にサーバ装置4から配信された高精度地図情報15が保管される記憶手段である。保管する期間は適宜設定可能であるが、例えば記憶されてから所定期間(例えば1カ月)としても良いし、車両のACC電源(accessory power supply)がOFFされるまでとしても良い。また、キャッシュ46に格納されるデータ量が上限となった後に古いデータから順次削除するようにしても良い。そして、ナビゲーションECU33は、キャッシュ46に格納された高精度地図情報15を用いて、自動運転支援に関する各種支援情報を生成する。詳細については後述する。
一方、ナビゲーションECU(エレクトロニック・コントロール・ユニット)33は、ナビゲーション装置1の全体の制御を行う電子制御ユニットであり、演算装置及び制御装置としてのCPU51、並びにCPU51が各種の演算処理を行うにあたってワーキングメモリとして使用されるとともに、経路が探索されたときの経路データ等が記憶されるRAM52、制御用のプログラムのほか、後述の自動運転支援プログラム(図4参照)等が記録されたROM53、ROM53から読み出したプログラムを記憶するフラッシュメモリ54等の内部記憶装置を備えている。尚、ナビゲーションECU33は、処理アルゴリズムとしての各種手段を有する。例えば、道路情報取得手段は、車両が走行する対象となる道路の車線幅を取得する。車速取得手段は、車両が道路を走行する際の車速を取得する。走行軌道生成手段は、車線変更中に車両に対して生じる加速度が上限値を超えないことを条件として、道路の車線幅と車両の車速に基づいて車両が道路で車線変更を行う為の推奨される走行軌道を生成する。運転支援手段は、走行軌道に基づいて車両の運転支援を行う。
操作部34は、走行開始地点としての出発地及び走行終了地点としての目的地を入力する際等に操作され、各種のキー、ボタン等の複数の操作スイッチ(図示せず)を有する。そして、ナビゲーションECU33は、各スイッチの押下等により出力されるスイッチ信号に基づき、対応する各種の動作を実行すべく制御を行う。尚、操作部34は液晶ディスプレイ35の前面に設けたタッチパネルを有しても良い。また、マイクと音声認識装置を有しても良い。
また、液晶ディスプレイ35には、道路を含む地図画像、交通情報、操作案内、操作メニュー、キーの案内、案内経路(走行予定経路)に沿った案内情報、ニュース、天気予報、時刻、メール、テレビ番組等が表示される。尚、液晶ディスプレイ35の代わりに、HUDやHMDを用いても良い。
また、スピーカ36は、ナビゲーションECU33からの指示に基づいて案内経路(走行予定経路)に沿った走行を案内する音声ガイダンスや、交通情報の案内を出力する。
また、DVDドライブ37は、DVDやCD等の記録媒体に記録されたデータを読み取り可能なドライブである。そして、読み取ったデータに基づいて音楽や映像の再生、地図情報DB45の更新等が行われる。尚、DVDドライブ37に替えてメモリーカードを読み書きする為のカードスロットを設けても良い。
また、通信モジュール38は、交通情報センタ、例えば、VICSセンタやプローブセンタ等から送信された交通情報、プローブ情報、天候情報等を受信する為の通信装置であり、例えば携帯電話機やDCMが該当する。また、車車間で通信を行う車車間通信装置や路側機との間で通信を行う路車間通信装置も含む。また、サーバ装置4で探索された経路情報や高精度地図情報15をサーバ装置4との間で送受信するのにも用いられる。
また、車外カメラ39は、例えばCCD等の固体撮像素子を用いたカメラにより構成され、車両のフロントバンパの上方に取り付けられるとともに光軸方向を水平より所定角度下方に向けて設置される。そして、車外カメラ39は、車両が自動運転区間を走行する場合において、車両の進行方向前方を撮像する。また、ナビゲーションECU33は撮像された撮像画像に対して画像処理を行うことによって、車両が走行する道路に描かれた区画線や周辺の他車両等の障害物を検出し、検出結果に基づいて自動運転支援に関する各種支援情報を生成する。例えば、障害物を検出した場合には、障害物を回避或いは追従して走行する新たな走行軌道を生成する。尚、車外カメラ39は車両前方以外に後方や側方に配置するように構成しても良い。また、障害物を検出する手段としてはカメラの代わりにミリ波レーダやレーザセンサ等のセンサや車車間通信や路車間通信を用いても良い。
また、車両制御ECU40は、ナビゲーション装置1が搭載された車両の制御を行う電子制御ユニットである。また、車両制御ECU40にはステアリング、ブレーキ、アクセル等の車両の各駆動部と接続されており、本実施形態では特に車両において自動運転支援が開始された後に、各駆動部を制御することにより車両の自動運転支援を実施する。また、自動運転支援中にユーザによってオーバーライドが行われた場合には、オーバーライドが行われたことを検出する。
ここで、ナビゲーションECU33は、走行開始後にCANを介して車両制御ECU40に対してナビゲーション装置1で生成された自動運転支援に関する各種支援情報を送信する。そして、車両制御ECU40は受信した各種支援情報を用いて走行開始後の自動運転支援を実施する。支援情報としては例えば車両の走行が推奨される走行軌道、走行する際の車速を示す速度計画等がある。
続いて、上記構成を有する本実施形態に係るナビゲーション装置1においてCPU51が実行する自動運転支援プログラムについて図4に基づき説明する。図4は本実施形態に係る自動運転支援プログラムのフローチャートである。ここで、自動運転支援プログラムは、車両のACC電源(accessory power supply)がONされた後であって自動運転支援による車両の走行が開始された場合に実行され、ナビゲーション装置1で生成された支援情報に従って自動運転支援による支援走行を実施するプログラムである。また、以下の図4、図6、図14、図19及び図24にフローチャートで示されるプログラムは、ナビゲーション装置1が備えているRAM52やROM53に記憶されており、CPU51により実行される。
先ず、自動運転支援プログラムではステップ(以下、Sと略記する)1において、CPU51は、車両が今後走行する予定にある経路(以下、走行予定経路という)を取得する。尚、車両の走行予定経路は、ナビゲーション装置1において案内経路が設定されている場合には、ナビゲーション装置1において現在設定されている案内経路の内、車両の現在位置から目的地までの経路を走行予定経路とする。一方、ナビゲーション装置1において案内経路が設定されていない場合には、車両の現在位置から道なりに走行する経路を走行予定経路としても良い。
また、案内経路はナビゲーション装置1によって設定された出発地から目的地までの推奨経路であり、本実施形態では特にサーバ装置4によって探索される。推奨経路の探索を行う場合には先ずCPU51は、サーバ装置4に対して経路探索要求を送信する。尚、経路探索要求には、経路探索要求の送信元のナビゲーション装置1を特定する端末IDと、出発地(例えば車両の現在位置)及び目的地を特定する情報と、が含まれている。尚、再探索時については目的地を特定する情報は必ずしも必要では無い。その後、CPU51は経路探索要求に応じてサーバ装置4から送信された探索経路情報を受信する。探索経路情報は、送信した経路探索要求に基づいてサーバ装置4が最新のバージョンの地図情報を用いて探索した出発地から目的地までの推奨経路(センタールート)を特定する情報(例えば推奨経路に含まれるリンク列)である。例えば公知のダイクストラ法を用いて探索される。そして、CPU51は、受信した推奨経路をナビゲーション装置1の案内経路として設定する。
次に、S2においてCPU51は、車両の現在位置から前記S1で取得された走行予定経路に沿った所定距離以内の区間を対象として高精度地図情報15を取得する。例えば車両が現在位置する2次メッシュに含まれる走行予定経路を対象として高精度地図情報15を取得する。但し、高精度地図情報15を取得する対象となるエリアは適宜変更可能であり、例えば車両の現在位置から走行予定経路に沿って3km以内のエリアの高精度地図情報15を取得するようにしても良い。また、走行予定経路の全体を対象として高精度地図情報15を取得しても良い。
ここで、高精度地図情報15は図5に示すように矩形形状(例えば500m×1km)に区分されてサーバ装置4の高精度地図DB13に格納されている。従って、例えば図5に示すように走行予定経路61が取得された場合には、車両の現在位置を含む2次メッシュ内にある走行予定経路61を含むエリア62~64を対象として高精度地図情報15が取得される。高精度地図情報15には例えば道路のレーン形状と車線幅と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報が含まれる。また、その他に交差点に関する情報、駐車場に関する情報等も含まれる。
また、高精度地図情報15は基本的にサーバ装置4から取得されるが、キャッシュ46に既に格納されているエリアの高精度地図情報15が存在する場合には、キャッシュ46から取得する。また、サーバ装置4から取得された高精度地図情報15はキャッシュ46に一旦格納される。
その後、S3においてCPU51は、後述の静的走行軌道生成処理(図6)を実行する。ここで、静的走行軌道生成処理は、車両の走行予定経路と前記S2で取得した高精度地図情報15とに基づいて、走行予定経路に含まれる道路に対して車両に走行が推奨される走行軌道である静的走行軌道を生成する処理である。尚、静的走行軌道は後述のように車両の現在位置から進行方向に沿って所定距離前方までの区間(例えば車両が現在位置する2次メッシュ内、或いは目的地までの全区間)を対象として生成される。尚、所定距離については適宜変更可能であるが、少なくとも車外カメラ39やその他のセンサによって車両周辺の道路状況を検出することが可能な範囲(検出範囲)外を含む領域を対象として静的走行軌道を生成する。
次に、S4においてCPU51は、前記S2で取得した高精度地図情報15に基づいて、前記S3で生成された静的走行軌道を走行する際の車両の速度計画を生成する。例えば、制限速度情報や走行予定経路上にある速度変化地点(例えば交差点、カーブ、踏切、横断歩道など)を考慮して、静的走行軌道を走行する際に推奨される車両の走行速度を算出する。
そして、前記S4で生成された速度計画は、自動運転支援に用いる支援情報としてフラッシュメモリ54等に格納される。また、前記S4で生成された速度計画を実現する為に必要な車両の加減速を示す加速度の計画についても自動運転支援に用いる支援情報として生成するようにしても良い。
続いて、S5においてCPU51は、車外カメラ39で撮像された撮像画像に対して画像処理を行うことによって、周辺の道路状況として、特に自車両の周辺に自車両の走行に影響が生じる要因が存在するか否かを判定する。ここで、前記S5で判定対象となる“自車両の走行に影響が生じる要因”は、リアルタイムで変化する動的な要因とし、道路構造に基づくような静的な要因は除かれる。例えば、自車両の進行方向前方を走行又は駐車する他車両、自車両の進行方向前方に位置する歩行者、自車両の進行方向前方にある工事区間等が該当する。一方で、交差点、カーブ、踏切、合流区間、車線減少区間等は除かれる。また、他車両、歩行者、工事区間が存在する場合であっても、それらが自車両の今後の走行軌道と重複する虞のない場合(例えば自車両の今後の走行軌道から離れた位置にある場合)については“自車両の走行に影響が生じる要因”からは除かれる。また、車両の走行に影響が生じる可能性のある要因を検出する手段としてはカメラの代わりにミリ波レーダやレーザセンサ等のセンサや車車間通信や路車間通信を用いても良い。
そして、自車両の周辺に自車両の走行に影響が生じる要因が存在すると判定された場合(S5:YES)には、S6へと移行する。それに対して、自車両の周辺に自車両の走行に影響が生じる要因が存在しないと判定された場合(S5:NO)には、S9へと移行する。
S6においてCPU51は、後述の動的走行軌道生成処理(図19)を実行する。ここで、動的走行軌道生成処理は、車両の現在位置から前記S5で検出された“自車両の走行に影響が生じる要因”を回避或いは追従して静的走行軌道に戻る為の新たな軌道を動的走行軌道として生成する。尚、動的走行軌道は後述のように“自車両の走行に影響が生じる要因”を含む区間を対象として生成される。また、区間の長さは要因の内容によって変化する。例えば、“自車両の走行に影響が生じる要因”が車両の前方を走行する他車両(前方車両)である場合には、一例として右側に車線変更して前方車両を追い越し、その後に左側に車線変更して元の車線に戻るまでの軌道が動的走行軌道として生成される。尚、動的走行軌道は、車外カメラ39やその他のセンサで取得した車両周辺の道路状況に基づいて生成されるので、動的走行軌道が生成される対象となる領域は、少なくとも車外カメラ39やその他のセンサによって車両周辺の道路状況を検出することが可能な範囲(検出範囲)内となる。
続いて、S7においてCPU51は、後述の走行軌道反映処理(図24)を実行する。ここで、走行軌道反映処理は、前記S6で新たに生成された動的走行軌道を、前記S3で生成された静的走行軌道に反映する処理である。具体的には、車両の現在位置から“自車両の走行に影響が生じる要因”を含む区間の終端まで、静的走行軌道、及び少なくとも一以上の動的走行軌道の夫々のコストを算出し、該コストが最少となる走行軌道を選択する。結果的に、必要に応じて静的走行軌道の一部が動的走行軌道に置き換わることになる。尚、状況によっては動的走行軌道の置き換えが行われない場合、即ち動的走行軌道の反映が行われても前記S3で生成された静的走行軌道から変化しない場合もある。更に、動的走行軌道と静的走行軌道が同じ軌道である場合には、置き換えが行われても前記S3で生成された静的走行軌道から変化しない場合もある。
次に、S8においてCPU51は、前記S7で動的走行軌道が反映された後の静的走行軌道について、反映された動的走行軌道の内容に基づいて前記S4で生成された車両の速度計画を修正する。尚、動的走行軌道の反映が行われた結果、前記S3で生成された静的走行軌道から変化しない場合には、S8の処理については省略しても良い。
続いて、S9においてCPU51は、前記S3で生成された静的走行軌道(前記S7で動的走行軌道の反映が行われている場合には反映後の軌道)を前記S4で生成された速度計画(前記S8で速度計画の修正が行われている場合には修正後の計画)に従った速度で車両が走行する為の制御量を演算する。具体的には、アクセル、ブレーキ、ギヤ及びステアリングの制御量が夫々演算される。尚、S9及びS10の処理についてはナビゲーション装置1ではなく車両を制御する車両制御ECU40が行うようにしても良い。
その後、S10においてCPU51は、S9において演算された制御量を反映する。具体的には、演算された制御量を、CANを介して車両制御ECU40へと送信する。車両制御ECU40では受信した制御量に基づいてアクセル、ブレーキ、ギヤ及びステアリングの各車両制御が行われる。その結果、前記S3で生成された静的走行軌道(前記S7で動的走行軌道の反映が行われている場合には反映後の軌道)を前記S4で生成された速度計画(前記S8で速度計画の修正が行われている場合には修正後の計画)に従った速度で走行する走行支援制御が可能となる。
次に、S11においてCPU51は、前記S3で静的走行軌道の生成が行われてから車両が一定距離走行したか否かを判定する。例えば一定距離は1kmとする。
そして、前記S3で静的走行軌道の生成が行われてから車両が一定距離走行したと判定された場合(S11:YES)には、S1へと戻る。その後、車両の現在位置から走行予定経路に沿った所定距離以内の区間を対象として、静的走行軌道の生成が再度行われる(S1~S4)。尚、本実施形態では車両が一定距離(例えば1km)走行する度に、車両の現在位置から走行予定経路に沿った所定距離以内の区間を対象として、静的走行軌道の生成が繰り返し行われることとしているが、目的地までの距離が短い場合には走行開始時点において目的地までの静的走行軌道の生成を一度に行うようにしても良い。
一方、前記S3で静的走行軌道の生成が行われてから車両が一定距離走行していないと判定された場合(S11:NO)には、自動運転支援による支援走行を終了するか否かを判定する(S12)。自動運転支援による支援走行を終了する場合としては、目的地に到着した場合以外に、ユーザが車両に設けられた操作パネルを操作したり、ハンドル操作やブレーキ操作などが行われることによって自動運転支援による走行を意図的に解除(オーバーライド)した場合がある。
そして、自動運転支援による支援走行を終了すると判定された場合(S12:YES)には、当該自動運転支援プログラムを終了する。それに対して自動運転支援による支援走行を継続すると判定された場合(S12:NO)には、S5へと戻る。
次に、前記S3において実行される静的走行軌道生成処理のサブ処理について図6に基づき説明する。図6は静的走行軌道生成処理のサブ処理プログラムのフローチャートである。
先ず、S21においてCPU51は、現在位置検出部31により検出した車両の現在位置を取得する。尚、車両の現在位置は、例えば高精度のGPS情報や高精度ロケーション技術を用いて詳細に特定することが望ましい。ここで、高精度ロケーション技術とは、車両に設置されたカメラから取り込んだ白線や路面ペイント情報を画像認識により検出し、更に、検出した白線や路面ペイント情報を例えば高精度地図情報15と照合することにより、走行車線や高精度な車両位置を検出可能にする技術である。更に、車両が複数の車線からなる道路を走行する場合には車両の走行する車線についても特定する。
次に、S22においてCPU51は、前記S2で取得した高精度地図情報15に基づいて、車両の進行方向前方の静的走行軌道を生成する区間(例えば車両の現在位置を含む2次メッシュ内)を対象として、レーン形状、区画線情報、交差点に関する情報等を取得する。尚、前記S22で取得されるレーン形状と区画線情報には、車線数、車線幅、車線数の増減がある場合にはどの位置でどのように増減するか、車線毎の進行方向の通行区分や道路の繋がり(具体的には、交差点の通過前の道路に含まれる車線と交差点の通過後の道路に含まれる車線との対応関係)を特定する情報等を含む。また、交差点に関する情報としては、交差点の形状に加えて交差点上に配置された地物の位置や形状に関する情報を含む。更に、“交差点上に配置された地物”には、誘導線(ガイド白線)、交差点中央に配置されるひし形の導流帯(ダイヤマーク)等の路面に描かれた路面表示の他、ポール等の構造物がある。
続いて、S23においてCPU51は、前記S22で取得したレーン形状と区画線情報とに基づいて、車両の進行方向前方の静的走行軌道を生成する区間を対象としてレーンネットワークの構築を行う。ここで、レーンネットワークは車両が選択し得る車線移動を示したネットワークである。
ここで、前記S23におけるレーンネットワークを構築する例として、例えば図7に示す走行予定経路を車両が走行する場合を例に挙げて説明する。図7に示す走行予定経路は、車両の現在位置から直進した後に次の交差点71で右折し、更に次の交差点72でも右折し、次の交差点73で左折する経路とする。図7に示す走行予定経路では、例えば交差点71で右折する場合に右側の車線に進入することも可能であるし、左側の車線に進入することも可能である。但し、次の交差点72で右折する必要があるので、交差点72の進入時点では最も右側の車線に車線移動する必要がある。また、交差点72で右折する場合においても右側の車線に進入することも可能であるし、左側の車線に進入することも可能である。但し、次の交差点73で左折する必要があるので、交差点73の進入時点では最も左側の車線に車線移動する必要がある。このような車線移動が可能な区間を対象として構築したレーンネットワークを図8に示す。
図8に示すようにレーンネットワークは、車両の進行方向前方の静的走行軌道を生成する区間を複数の区画(グループ)に区分する。具体的には、交差点の進入位置、交差点の退出位置、車線が増減する位置を境界として区分する。そして、区分された各区画の境界に位置する各車線に対してノード点(以下、レーンノードという)75が設定されている。更に、レーンノード75間をつなぐリンク(以下、レーンリンクという)76が設定されている。
次に、S24においてCPU51は、前記S23で構築されたレーンネットワークに対して、レーンネットワークの始点に位置するレーンノードに対して車両が移動を開始する開始レーンを設定し、レーンネットワークの終点に位置するレーンノードに対して車両が移動する目標となる目標レーンを設定する。そして、レーンネットワークを参照し、開始レーンから目標レーンまでを連続して繋ぐルートを探索する。ルートの探索には例えばダイクストラ法を用い、レーンコストの合計が最小となるルートを車両が移動する際に推奨される車両の車線移動態様として特定する。
尚、レーンコストは、レーンリンク76毎に付与されており、各レーンリンク76の長さを基準値とする。そして、基準値に対して以下の(1)~(3)の条件で補正を行う。尚、基本的に同一の区画(グループ)内のレーンリンク76は同一の長さとみなす。また、交差点内のレーンリンク76の長さは0又は固定値とみなす。但し、開始レーンから目標レーンまでを連続して繋ぐルートを探索できるのであればダイクストラ法以外の探索手段を用いても良い。
(1)レーンコストは、基準値に対して必要な車線変更の回数に応じた車線変更係数αを乗じる。ここで、車線変更係数は、図9に示すように必要な車線変更の回数の多いレーンリンク76程、より大きい値となる。例えば、車線81から車線82へと移動するレーンリンク76は、1回の車線変更が必要となるので、車線変更係数αとして1.2が基準値に乗じられる。また、車線81から車線83へと移動するレーンリンク76は、連続した2回の車線変更が必要となるので、車線変更係数αとしてより大きい1.5が基準値に乗じられる。一方、車線81を維持するレーンリンク76は、車線変更が不要なので車線変更係数αを乗じない。その結果、車線変更の回数が多いルート程、より大きいレーンコストの合計値が算出されるので、推奨される車線移動態様として選択され難くなる。また、同一区間で複数の車線変更を行う(即ち車線変更が連続して行われる)ルートについては、車線変更が連続して行われないルートより大きいレーンコストの合計値が算出されるので、推奨される車線移動態様として選択され難くなる。
(2)車線変更せずに追い越し車線(例えば左側通行では最も右側の車線)を走行するレーンリンクのレーンコストについては基準値に対して所定値を加算する。例えば図10に示すように追い越し車線である車線83を走行するレーンリンク76は基準値に『5』加算される。その結果、追い越し車線を走行する距離の長いルート程、より大きいレーンコストの合計値が算出されるので、推奨される車線移動態様として選択され難くなる。
(3)車線変更を行うレーンリンクのレーンコストについては、車線変更を行う位置の候補を複数パターン生成し、複数のパターン毎にレーンコストを算出する。具体的には、パターン毎に車線変更を行う位置を参照し、(A)車線変更前又は後の追い越し車線の走行距離が閾値より長くなる場合、(B)複数回の車線変更を行う際に車線変更の間隔が閾値より短くなる(即ち連続で車線変更を行う)場合、そして(C)交差点の手前側所定距離(例えば一般道路700m、高速道路2km)以内で車線変更を行う場合のいずれかに該当するパターンについては、車線変更を行うレーンリンクのレーンコストについて基準値に対して更に所定値を加算する。例えば図11に示すように交差点の所定距離手前から交差点までの間で車線81から車線82へと移動するパターンについては、基準値に『5』加算される。そして、前記S24では、レーンコストの合計が最小となるルート(車線移動のパターンを含む)を車両が移動する際に推奨される車両の車線移動態様として特定することによって、車線変更を行うのに推奨される区間に加えて、該区間内において車線変更を行うのに推奨される位置についても特定されることとなる。尚、車線変更が連続して行われる車線移動のパターンや、車線変更前又は後に追い越し車線を走行する距離の長い車線移動のパターンや、交差点の所定距離手前から交差点までの間で車線変更を行う車線移動のパターンについて、そのような車線変更が行われないパターンより大きいレーンコストの合計値が算出されるので、推奨される車線移動態様として選択され難くなる。
また、上記(3)の条件では、特に複数回の車線変更を行うレーンリンクのレーンコストについても同様の処理を行う。例えば、図12では最も左側の車線から2回の車線変更を行うレーンリンクを例に挙げて説明する。図12に示す例では車線変更を行う位置として、できる限り車両が現在の走行車線を継続して走行し、交差点付近で2回の車線変更を行う第1のパターンと、交差点までの間において略等間隔で2回の車線変更を行う第2のパターンと、できる限り早いタイミングで車線変更を行う第3のパターンが候補として考えられる。ここで、第1のパターンは、車線変更が短い間隔で連続して行われ、且つ交差点の近くで車線変更が行われることから、高いコストが算出される。また、第3のパターンは、右側の追い越し車線の走行距離が長くなるので、同じく高いコストが算出される。それに対して第2のパターンは、車線変更が短い間隔でなく、交差点の近くで車線変更も行われず、右側の追い越し車線の走行距離も比較的短いので、他のパターンに比べて低いコストが算出される。従って、図12に示す例では、車線変更を行う位置として第2のパターンが最もコストが小さく、推奨される車両の車線移動態様として選択され易くなる。
次に、S25においてCPU51は、後述の車線変更走行軌道生成処理(図14)を実行する。ここで、車線変更走行軌道生成処理は、前記S24で選択されたルートに従って、車両が車線を移動する場合において、特に車線変更を実施する区画(グループ)を対象として推奨される走行軌道を算出する。尚、前記S24で選択されたルートが車線変更を一度も行わないルートである場合にはS25の処理は省略しても良い。
次に、S26においてCPU51は、前記S24で選択された車線移動のルートに従って、車両が車線を移動する場合において、特に交差点内の区画(グループ)を対象として推奨される走行軌道を算出する。尚、前記S24で選択された車線移動のルートが交差点を一度も通過しないルートである場合にはS26の処理は省略しても良い。
例えば、図13では最も右側の車線から交差点内に進入し、その後に最も左側の車線へと退出する車線移動のルートが設定された交差点内の区画(グループ)を対象として、走行軌道を算出する場合を例に挙げて説明する。先ず、CPU51は、交差点内において車両が通過すべき位置についてマーキングする。具体的には、交差点への進入車線内、交差点への進入位置、交差点内の誘導線内(誘導線がある場合のみ)、交差点からの退出位置、交差点からの退出車線に対して夫々マーキングする。交差点中央にひし形の導流帯(ダイヤマーク)が有る場合にはダイヤマークについても考慮してマーキングを行う。そして、マーキングされた各マークを全て通過する曲線を走行軌道として算出する。より詳細には各マークをスプライン曲線で繋いだ後に、繋いだ曲線を近似するクロソイド曲線を走行軌道として算出する。尚、クロソイド曲線は、車両が一定の走行速度で且つステアリングを一定の角速度で回した場合に車両の軌跡が描く曲線である。
その後、S27においてCPU51は、前記S25及びS26で算出された各走行軌道を繋ぐことによって、走行予定経路に含まれる道路に対して車両に走行が推奨される走行軌道である静的走行軌道を生成する。尚、車線変更を行う区画でもなく交差点内の区画でもない区画については、車線の中央を通過する軌道を車両の走行が推奨される走行軌道とする。
そして、前記S27で生成された静的走行軌道は、自動運転支援に用いる支援情報としてフラッシュメモリ54等に格納される。
次に、前記S26において実行される車線変更走行軌道生成処理のサブ処理について図14に基づき説明する。図14は車線変更走行軌道生成処理のサブ処理プログラムのフローチャートである。尚、以下の車線変更走行軌道生成処理は前記S24で選択されたルートに従って、車両が車線を移動する場合において、特に車線変更を行う区画(グループ)に対して実施する。従って、車線変更を行う区画が複数あれば複数の区画に対して夫々実施する。
先ず、S31においてCPU51は、特に車線変更を行う区画(グループ)を対象として車両が走行する予定の走行予定経路の道路情報を取得する。具体的には、道路幅、車線形状、車線幅、配置される区画線の種類や位置について取得する。
次に、S32においてCPU51は、特に車線変更を行う区画(グループ)を対象として車両が走行する際の車速を取得する。具体的には、前記S4の速度計画生成処理と同様に、制限速度情報や走行予定経路上にある速度変化地点(例えば交差点、カーブ、踏切、横断歩道など)を考慮して、走行する際の車両の車速を予測する。
そして、前記S31及びS32で取得した情報に基づいて以降のS33~S37の処理では、車両が車線変更を行う場合の推奨される車両の走行軌道を算出する。ここで、車両が車線変更を行う場合の推奨される車両の走行軌道は、曲率が連続して変化するクロソイド曲線を含む。より具体的には形状の異なる複数のクロソイド曲線を接続した軌道となる。図15は例えば右側に隣接する車線に移動する場合の推奨される車両の走行軌道を示した図である。図15に示すように右側に隣接する車線に移動する場合の推奨される車両の走行軌道は、車線移動の開始点P1からステアリングを右方向に徐々に旋回させながら(即ち曲率が徐々に大きく変化させながら)第1の中継地点P2まで進む第1のクロソイド曲線85と、第1の中継地点P2からステアリングを徐々に直進方向に戻しながら(即ち曲率が徐々に小さく変化させながら)車線の境界P3まで進む第2のクロソイド曲線86と、車線の境界P3から今度はステアリングを左方向に徐々に旋回させながら(即ち曲率が徐々に大きく変化させながら)第2の中継地点P4まで進む第3のクロソイド曲線87と、その後に第2の中継地点P4からステアリングを徐々に直進方向に戻しながら(即ち曲率が徐々に小さく変化させながら)車線移動の終了点P5まで進む第4のクロソイド曲線88とからなる。
そして、本実施形態においてCPU51は、先ず以下のS33~S35において第1のクロソイド曲線85と第2のクロソイド曲線86、即ち車線移動の開始点P1から車線の境界P3までの走行軌道について算出する。
最初にCPU51は、走行軌道を算出する為のパラメータとして、図16に示すように車両が走行する車速をv、車線幅をW、第1のクロソイド曲線85の終点P2(第2のクロソイド曲線86の始点にも相当)において車両に対して生じる加速度をg、第1のクロソイド曲線85の終点P2(第2のクロソイド曲線86の始点にも相当)における曲率半径をR、第1のクロソイド曲線85の終点P2(第2のクロソイド曲線86の始点にも相当)において道路の進行方向に対して走行軌道の接線がなす角度をθ、第1のクロソイド曲線85の始点P1から第2のクロソイド曲線86の終点P3までの走行軌道に沿った距離をLを設定する。尚、第2のクロソイド曲線86の終点P3(第3のクロソイド曲線87の始点にも相当)、即ち車線の境界において道路の進行方向に対して走行軌道の接線がなす角度はθの2倍である2θとなる。また、走行軌道に沿って走行する際の車両に対して生じる加速度の上限は0.2Gとする。ここで、車両に対して最も大きな加速度が生じる地点は曲率半径の最も小さい第1のクロソイド曲線85の終点P2(第2のクロソイド曲線86の始点にも相当)であるので、gを0.2G以下とすることを条件として走行軌道を算出する。
S33においてCPU51は、上記パラメータの内、曲率半径Rと角度θと距離Lとの対応関係を特定する。具体的には、以下の式(1)により特定される。
続いて、S34においてCPU51は、第1のクロソイド曲線85の始点P1から第2のクロソイド曲線86の終点P3までの走行軌道に沿った距離Lに対する第1のクロソイド曲線85の始点P1から第2のクロソイド曲線86の終点P3までの道路幅方向への距離Pの比率であるP/Lと、第1のクロソイド曲線85の終点P2(第2のクロソイド曲線86の始点にも相当)において道路の進行方向に対して走行軌道の接線がなす角度θとの関係を示す一次近似式を算出する。具体的には以下の(A)~(E)の処理を行うことにより算出する。
(A)先ず、CPU51は、図17に示すように第1のクロソイド曲線85の始点P1から第1のクロソイド曲線85の終点P2までの道路幅方向への距離pと、第1のクロソイド曲線85の始点P1から第1のクロソイド曲線85の終点P2までの道路の進行方向に沿った距離qについて、θ、Lとの関係を示す関係式である式(2)を算出する。
(B)続いて、CPU51は、図17に示すように第1のクロソイド曲線85の始点P1から第2のクロソイド曲線86の終点P3までの道路幅方向への距離Pと、第1のクロソイド曲線85の始点P1から第2のクロソイド曲線86の終点P3までの道路の進行方向に沿った距離Qについて、三角関数を用いてp、q、θとの関係を示す関係式である以下の式(3)を算出する。
(C)更に、CPU51は、式(2)及び式(3)を用いて第1のクロソイド曲線85の始点P1から第2のクロソイド曲線86の終点P2までの道路幅方向への距離Pについて、θとLとの関係を示す関係式である以下の式(4)を算出する。
(D)その後、CPU51は、式(4)を用いてLに対するPの比率であるP/Lとθとの関係を示す関係式である以下の式(5)を算出する。
(E)更に、CPU51は、上記式(5)について実計算により一次近似式を算出する。例えば図18は、車線幅W(=2P)が3.5mであって、第1のクロソイド曲線の終点P2(第2のクロソイド曲線の始点にも相当)において車両に対して生じる加速度を上限である0.2Gと設定した場合において、車両の車速vの値を適宜変化させた場合におけるP/Lとθの値を直交座標系にプロットしたものである。そして、プロットした各点に基づいて一次近似式を算出する。図18に示す例ではP/Lとθとの関係を示す一次近似式は以下の式(6)となる。
次に、S35においてCPU51は、前記S34で算出したP/Lとθとの関係を示す一次近似式に基づいて、車線移動を開始する開始点P1から車線の境界P3までの走行軌道を生成する。具体的にCPU51は、上記式(6)についてθの代わりにvとgを用いて示した式(7)を算出する。
その結果、前記S31で取得した車線幅Wと、前記S32で取得した車両の車速vに基づいて、L(式(7)より)、R(=v2/g)、θ(=L/4R)、p(式(2)より)、q(式(2)より)、P(=W/2)、Q(式(2)、(3)より)の各パラメータ(即ち車線移動を開始する開始点P1から車線の境界P3までの走行軌道)が算出可能となる。尚、車線変更を行う際の走行軌道の長さは短いほど良いので、gは上限値である0.2Gとするが、gは上限値より小さい0.15Gや0.1Gとしても良い。
その後、S36においてCPU51は、車線の境界P3から車線移動を終了する終了点P5までの走行軌道を生成する。ここで、図15及び図16に示すように車両が車線変更を行う場合の推奨される車両の走行軌道は、第1のクロソイド曲線85と第2のクロソイド曲線86と第3のクロソイド曲線87と第4のクロソイド曲線88とからなるが、第1のクロソイド曲線85及び第2のクロソイド曲線86は、第3のクロソイド曲線87及び第4のクロソイド曲線88と車線の境界P3を対象点として、点対象の関係にある。従って、CPU51は前記S35で生成された走行軌道について終点である車線の境界P3を対象点として反転させることにより、車線の境界P3から車線移動を終了する終了点P5までの走行軌道を生成することが可能となる。但し、前記S36では点対象の関係を用いずに、前記S33~S35の処理と同様の処理を車線変更の終了点P5側から行うことによって、車線の境界P3から車線移動を終了する終了点P5までの走行軌道を生成しても良い。
続いて、S37においてCPU51は、前記S35で生成された走行軌道と前記S36で生成された走行軌道とを接続し、最終的な車線変更を行う際に推奨される走行軌道を生成する。尚、生成される走行軌道は第1のクロソイド曲線85と第2のクロソイド曲線86と第3のクロソイド曲線87と第4のクロソイド曲線88をつなげた軌道である。また、生成される走行軌道は、車線変更を行う際に生じる加速度(横G)が自動運転支援に支障が生じず且つ車両の乗員に不快感を与えない上限値(例えば0.2G)を超えることなく、更にクロソイド曲線を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くした軌道となる。
次に、前記S6において実行される動的走行軌道生成処理のサブ処理について図19に基づき説明する。図19は動的走行軌道生成処理のサブ処理プログラムのフローチャートである。
先ず、S41においてCPU51は、現在位置検出部31により検出した自車両の現在位置を取得する。尚、車両の現在位置は、例えば高精度のGPS情報や高精度ロケーション技術を用いて詳細に特定することが望ましい。ここで、高精度ロケーション技術とは、車両に設置されたカメラから取り込んだ白線や路面ペイント情報を画像認識により検出し、更に、検出した白線や路面ペイント情報を例えば高精度地図情報15と照合することにより、走行車線や高精度な車両位置を検出可能にする技術である。更に、車両が複数の車線からなる道路を走行する場合には車両の走行する車線についても特定する。
次に、S42においてCPU51は、前記S3で生成された静的走行軌道(即ち、自車両が今度に走行する予定の軌道)と、前記S4で生成された速度計画(即ち、自車両の今度の予定速度)を取得する。
次に、S43においてCPU51は、前記S2で取得した高精度地図情報15に基づいて、車両の進行方向前方の特に前記S5で検出された“自車両の走行に影響が生じる要因(以下、影響要因という)”の周辺を対象として、レーン形状、区画線情報等を取得する。尚、前記S43で取得されるレーン形状と区画線情報には、車線数、車線数の増減がある場合にはどの位置でどのように増減するかを特定する情報等を含む。
続いて、S44においてCPU51は、前記S5で検出された影響要因について、現時点の影響要因の位置と、影響要因が移動している場合には移動状況(移動方向、移動速度)について取得する。尚、影響要因の位置と移動状況については、例えば車外カメラ39で車両周辺の所定の検出範囲を撮像した撮像画像に対して画像処理等を行うことによって取得する。
その後、S45においてCPU51は、先ず前記S44で取得した影響要因の現在位置及び移動状況に基づいて影響要因の今後の移動軌跡を予測する。尚、影響要因が他車両である場合には、他車両のウィンカーやブレーキランプの点灯状態について考慮して予測しても良い。更に、車車間通信などで他車両の今後の走行軌道や速度計画が取得可能であれば、それらを考慮して予測しても良い。その後、予測された影響要因の今後の移動軌跡と前記S42で取得した自車両の静的走行軌道及び速度計画とに基づいて、影響要因が自車両の走行に影響があるか否かをより正確に判定する。具体的には自車両と影響要因が現時点又は将来において同一の車線上に位置し、その間の距離が適切な車間距離D以内に接近すると予測される場合に、影響要因が自車両の走行に影響があると判定する。尚、適切な車間距離Dは例えば以下の式(1)により算出する。
D=自車両の車速×2sec+自車両の制動距離-影響要因の制動距離(但し、影響要因が移動体の場合に限る)・・・・(1)
そして、影響要因が自車両の走行に影響があると判定された場合(S45:YES)には、S46へと移行する。一方、影響要因が自車両の走行に影響がないと判定された場合(S45:NO)には、動的走行軌道を生成することなくS9(S7、S8は省略する)へと移行する。
S46においてCPU51は、自車両が影響要因を回避して静的走行軌道に戻る(即ち追い越しする)為の新たな軌道を生成することが可能か否かを判定する。具体的には、影響要因と自車両が現時点で同一車線に位置する場合には、自車両が右側に車線変更して制限速度を超えない範囲で影響要因を追い越し、その後に左側に車線変更して元の車線に戻るまでの軌道について、影響要因と適切な車間距離D以上を維持する軌道を描くことができる場合には、自車両が影響要因を回避して静的走行軌道に戻る為の新たな軌道を生成することが可能と判定される。また、影響要因と自車両が現時点で異なる車線に位置し、その後に同一車線上へと移動する場合には、自車両が制限速度を超えない範囲で影響要因を追い越し、その後に影響要因と同一車線に車線変更するまでの軌道について、影響要因と適切な車間距離D以上を維持する軌道を描くことができる場合には、自車両が影響要因を回避して静的走行軌道に戻る為の新たな軌道を生成することが可能と判定される。上記S46の判定処理は、前記S43で取得した車両の進行方向前方のレーン形状及び区画線情報と、車両の現在位置と、影響要因の今後の移動軌跡と、道路の制限速度とに基づいて判定される。
そして、自車両が影響要因を回避して静的走行軌道に戻る(即ち追い越しする)為の新たな軌道を生成することが可能と判定された場合(S46:YES)には、S47へと移行する。それに対して、自車両が影響要因を回避して静的走行軌道に戻る(即ち追い越しする)為の新たな軌道を生成することができないと判定された場合(S46:NO)には、S48へと移行する。
S47においてCPU51は、自車両が影響要因を回避して静的走行軌道に戻る(即ち追い越しする)為の軌道(以下、回避軌道という)を算出する。具体的には、自車両と影響要因が現時点で同一車線上にある場合には、図20に示すように自車両が右側に車線変更して影響要因を追い越し、その後に左側に車線変更して元の車線に戻るまでの軌道が回避軌道に該当する。一方、自車両と影響要因が現時点で異なる車線上にあってその後に同一車線上へと移動する必要がある場合には、図21に示すように自車両が影響要因を追い越し、その後に車線変更して影響要因と同一車線へと移動するまでの軌道が回避軌道に該当する。
ここで、図20は片側2車線の道路において自車両90が左側車線を走行し、影響要因が同車線を走行する前方車両91である場合に前記S47で生成される回避軌道の一例を示す。
先ず、図20に示す例では、ステアリングの旋回を開始して右側の車線へと移動し、且つステアリングの位置が直進方向に戻るのに必要な第1の軌道L1を算出する。尚、第1の軌道L1は車両の現在の車速に基づいて車線変更を行う際に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くなる軌道を算出する。尚、上述した車線変更走行軌道生成処理(図14)と同様の処理を行うことによって算出するようにしても良い。また、前方車両91との間に適切な車間距離D以上を維持することについても条件とする。
次に、右側の車線を制限速度を上限に走行して前方車両91を追い越し、且つ前方車両91との間を適切な車間距離D以上とするまでの第2の軌道L2を算出する。尚、第2の軌道L2は基本的に直線の軌道であり、また軌道の長さは、前方車両91の車速と道路の制限速度に基づいて算出される。
続いて、ステアリングの旋回を開始して左側の車線へと戻り、且つステアリングの位置が直進方向に戻るのに必要な第3の軌道L3を算出する。尚、第3の軌道L3は車両の現在の車速に基づいて車線変更を行う際に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くなる軌道を算出する。尚、上述した車線変更走行軌道生成処理(図14)と同様の処理を行うことによって算出するようにしても良い。また、前方車両91との間に適切な車間距離D以上を維持することについても条件とする。
また、図21は片側2車線の道路において自車両90が右側車線を走行し、左側車線へ移動する必要がある状況において、影響要因が左側車線を走行する前方車両91である場合に前記S47で生成される回避軌道の一例を示す。
先ず、図21に示す例では、右側の車線を制限速度を上限に走行して前方車両91を追い越し、且つ前方車両91との間を適切な車間距離D以上とするまでの第1の軌道L4を算出する。尚、第1の軌道L4は基本的に直線の軌道であり、また軌道の長さは、前方車両91の車速と道路の制限速度に基づいて算出される。
続いて、ステアリングの旋回を開始して左側の車線へと移動し、且つステアリングの位置が直進方向に戻るのに必要な第2の軌道L5を算出する。尚、第2の軌道L5は車両の現在の車速に基づいて車線変更を行う際に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くなる軌道を算出する。尚、上述した車線変更走行軌道生成処理(図14)と同様の処理を行うことによって算出するようにしても良い。また、前方車両91との間に適切な車間距離D以上を維持することについても条件とする。
また、前記S47では上記回避軌道を走行する際の自車両の推奨速度についても算出する。自車両の推奨速度については、制限速度を上限として、車線変更時において車両に生じる横方向の加速度(横G)が自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えない速度を推奨速度とする。例えば回避軌道の曲率や制限速度などに基づいて算出される。
その後、S48においてCPU51は、自車両が影響要因に追従(或いは並走)して走行する為の軌道(以下、追従軌道という)を算出する。具体的には、自車両と影響要因が現時点で同一車線上にある場合には、図22に示すように自車両90が車線変更することなく現在の車線を継続して走行し、影響要因(例えば前方車両91)に対して追従する軌道が追従軌道に該当する。尚、追従軌道は基本的に静的走行軌道と同一の軌道となる。但し、影響要因との間の車間距離を適切に維持する必要がある為、後述のように速度計画については修正することとなる(S8)。一方、自車両と影響要因が現時点で異なる車線上にあってその後に同一車線上へと移動する必要がある場合には、図23に示すように自車両90が車線変更することなく現在の車線を継続して走行し、影響要因(例えば前方車両91)と並走する軌道が追従軌道に該当する。尚、この場合には追従軌道は静的走行軌道と異なる軌道となる。
また、前記S48では上記追従軌道を走行する際の自車両の推奨速度についても算出する。自車両の追従速度については、制限速度を上限として、前方の影響要因との間の車間距離について適切な車間距離D以上を維持する速度を推奨速度とする。尚、適切な車間距離Dについては前述した式(1)に基づいて算出される。但し、図23に示すように自車両と影響要因が異なる車線に位置する場合については必ずしも車間距離D以上を維持する必要は無いが、その後に自車両が影響要因と同一車線へ車線変更する必要があることを考えれば、車間距離D以上を維持しておくのが望ましい。
その後、S49においてCPU51は、前記S47で算出された回避軌道(回避軌道に関しては算出された場合のみ)及び前記S48で算出された追従軌道を、周辺の道路状況を考慮した上で走行予定経路に含まれる道路に対して車両に走行が推奨される走行軌道である動的走行軌道として生成する。
そして、前記S49で生成された動的走行軌道は、自動運転支援に用いる支援情報としてフラッシュメモリ54等に格納される。
次に、前記S7において実行される走行軌道反映処理のサブ処理について図24に基づき説明する。図24は走行軌道反映処理のサブ処理プログラムのフローチャートである。
先ず、S51においてCPU51は、前記S3で生成された静的走行軌道と、前記S6で生成された動的走行軌道をフラッシュメモリ54等の記憶媒体から読み出す。
続いて、S52においてCPU51は、前記S51で読み出された各走行軌道について、走行軌道毎に車両の走行軌道としての適正度を示すパスコストを算出する。ここで、パスコストは、(a)走行時間(平均車速)、(b)車線変更回数、(c)車線変更を行う位置、(d)走行車線の少なくとも一以上を考慮して算出する。具体的には、以下の条件に基づいて算出する。
(a)“走行時間(平均車速)”については、走行時間が長い(即ち平均車速が遅い)走行軌道程、パスコストを高く算出する。尚、静的走行軌道の平均車速については前記S4で生成された速度計画に基づいて特定する。一方、動的走行軌道については前記S47及びS48で算出された推奨速度に基づいて特定する。
(b)“車線変更回数”については、車線変更回数が多い走行軌道程、パスコストを高く算出する。
(c)“車線変更を行う位置”については、複数回の車線変更を行う場合には、車線変更の間隔が短くなる走行軌道程、パスコストを高く算出する。また、交差点の手前側所定距離(例えば一般道700m、高速道路2km)以内で車線変更を行う走行軌道については、パスコストを加算する。
(d)“走行車線”については、追い越し車線の走行距離が長い走行軌道程、パスコストを高く算出する。
但し、上記(a)~(d)の条件に関わらず、自車両が前記S5で検出された影響要因と接触すると判定される走行軌道についてはコストを無限大とする。
その後、S53においてCPU51は、前記S52で算出された走行軌道毎のパスコストを比較し、最もパスコストの値が小さい走行軌道を車両の走行が推奨される走行軌道として選択する。
次に、S54においてCPU51は、前記S53において動的走行軌道である回避軌道又は追従軌道が選択されたか否かを判定する。
そして、前記S53において動的走行軌道である回避軌道又は追従軌道が選択されたと判定された場合(S54:YES)には、S55へと移行する。
S55においてCPU51は、選択された動的走行軌道が生成された区間を対象として、静的走行軌道を動的走行軌道へと、結果として置き換えられることになる。尚、基本的に静的走行軌道を動的走行軌道へと置き換えられた場合には、動的軌道の始点及び終点は静的走行軌道と繋がることとなるが、例外的に図23に示す追従軌道が選択された場合には、動的走行軌道の終点が静的走行軌道と繋がらない場合もある。そのような場合には、動的走行軌道の終点を始点として静的走行軌道の生成を新たに行っても良いし、静的走行軌道に繋がるまで動的走行軌道の生成を一定間隔で繰り返し行うようにしても良い。
その後、一部が動的走行軌道に置き換えられた静的走行軌道に基づいて、自動運転支援による支援走行が行われる(S9、S10)
一方、前記S53において静的走行軌道が選択されたと判定された場合(S54:NO)には、動的走行軌道への置き換えを行うことなくS8へと移行する。
以上詳細に説明した通り、本実施形態に係るナビゲーション装置1及びナビゲーション装置1で実行されるコンピュータプログラムでは、車両が走行する対象となる道路の車線幅を取得し(S31)、車両が道路を走行する際の車速を取得し(S32)、車線変更中に車両に対して生じる加速度が上限値を超えないことを条件として、道路の車線幅と車両の車速に基づいて車両が道路で車線変更を行う為の推奨される走行軌道をクロソイド曲線を含む走行軌道により生成し(S37)、生成した走行軌道に基づいて車両の運転支援を行う(S9、S10)ので、車両の運転支援を行う場合において、車線変更を行う車両にとって実現することが容易で且つ推奨される走行軌道を生成することが可能となる。そして、生成された走行軌道に基づいて運転支援を行うことによって、運転支援を適切に実施することを可能とする。
尚、本発明は前記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。
例えば、本実施形態では、車両の走行に影響が生じる影響要因を検出した場合に、動的走行軌道として回避軌道と追従軌道を夫々生成しているが、いずれか一方のみを生成するようにしても良い。
また、本実施形態では、サーバ装置4が有する高精度地図情報には、道路のレーン形状(車線単位の道路形状や曲率、車線幅等)と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報の両方を含むが、区画線に関する情報のみを含むようにしても良いし、道路のレーン形状に関する情報のみを含むようにしても良い。例えば区画線に関する情報のみを含む場合であっても、区画線に関する情報に基づいて道路のレーン形状に関する情報に相当する情報を推定することが可能である。また、道路のレーン形状に関する情報のみを含む場合であっても、道路のレーン形状に関する情報に基づいて区画線に関する情報に相当する情報を推定することが可能である。また、「区画線に関する情報」は、車線を区画する区画線自体の種類や配置を特定する情報であっても良いし、隣接する車線間で車線変更が可能か否かを特定する情報であっても良いし、車線の形状を直接または間接的に特定する情報であっても良い。
また、本実施形態では、車両の走行に影響が生じる影響要因を検出した場合に動的走行軌道を生成するとともに、既存の静的走行軌道と新たに生成された動的走行軌道のパスコストとを比較して(S52、S53)、動的走行軌道の方が推奨されると判定された場合にのみ静的走行軌道を動的走行軌道に置き換えている(S55)が、動的走行軌道が生成された場合には必ず静的走行軌道を動的走行軌道に置き換えるようにしても良い。
また、本実施形態では、静的走行軌道に動的走行軌道を反映する手段として、静的走行軌道の一部を動的走行軌道に置き換えている(S55)が、置き換えるのではなく静的走行軌道を動的走行軌道に近づけるように軌道の修正を行っても良い。
また、本実施形態では、車両の操作のうち、車両の挙動に関する操作である、アクセル操作、ブレーキ操作及びハンドル操作の全てを車両制御ECU40が制御することをユーザの運転操作によらずに自動的に走行を行う為の自動運転支援として説明してきた。しかし、自動運転支援を、車両の操作のうち、車両の挙動に関する操作である、アクセル操作、ブレーキ操作及びハンドル操作の少なくとも一の操作を車両制御ECU40が制御することとしても良い。一方、ユーザの運転操作による手動運転とは車両の操作のうち、車両の挙動に関する操作である、アクセル操作、ブレーキ操作及びハンドル操作の全てをユーザが行うこととして説明する。
また、本発明の運転支援は車両の自動運転に係る自動運転支援に限られない。例えば、静的走行軌道や動的走行軌道をナビゲーション画面に表示するとともに、音声や画面等を用いた案内(例えば車線変更の案内、推奨車速の案内等)を行うことによる運転支援も可能である。また、静的走行軌道や動的走行軌道をナビゲーション画面に表示することでユーザの運転操作を支援するようにしてもよい。
また、本実施形態では、自動運転支援プログラム(図4)をナビゲーション装置1が実行する構成としているが、ナビゲーション装置1以外の車載器や車両制御ECU40が実行する構成としても良い。その場合には、車載器や車両制御ECU40は車両の現在位置や地図情報等をナビゲーション装置1やサーバ装置4から取得する構成とする。更に、サーバ装置4が自動運転支援プログラム(図4)のステップの一部または全部を実行するようにしても良い。その場合にはサーバ装置4が本願の運転支援装置に相当する。
また、本発明はナビゲーション装置以外に、携帯電話機、スマートフォン、タブレット端末、パーソナルコンピュータ等(以下、携帯端末等という)に適用することも可能である。また、サーバと携帯端末等から構成されるシステムに対しても適用することが可能となる。その場合には、上述した自動運転支援プログラム(図4参照)の各ステップは、サーバと携帯端末等のいずれが実施する構成としても良い。但し、本発明を携帯端末等に適用する場合には、自動運転支援が実行可能な車両と携帯端末等が通信可能に接続(有線無線は問わない)される必要がある。
また、本発明に係る運転支援装置を具体化した実施例について上記に説明したが、運転支援装置は以下の構成を有することも可能であり、その場合には以下の効果を奏する。
例えば、第1の構成は以下のとおりである。
車両(5)が走行する対象となる道路の車線幅を取得する道路情報取得手段(51)と、車両が前記道路を走行する際の車速を取得する車速取得手段(51)と、車線変更中に車両に対して生じる加速度が上限値を超えないことを条件として、前記道路の車線幅と前記車速に基づいて車両が前記道路で車線変更を行う為の推奨される走行軌道を生成する走行軌道生成手段(51)と、前記走行軌道に基づいて車両の運転支援を行う運転支援手段(51)と、を有し、前記走行軌道は、曲率が連続して変化するクロソイド曲線(85~88)を含む。
上記構成を有する運転支援装置によれば、車両の運転支援を行う場合において、車線変更中に車両に対して生じる加速度が上限値を超えることなく、且つ曲率が連続して変化するクロソイド曲線を含む走行軌道を生成するので、車線変更を行う車両にとって実現することが容易で且つ推奨される走行軌道を生成することが可能となる。そして、生成された走行軌道に基づいて運転支援を行うことによって、運転支援を適切に実施することを可能とする。
また、第2の構成は以下のとおりである。
前記走行軌道生成手段(51)は、形状の異なる複数の前記クロソイド曲線(85~88)を接続することにより前記走行軌道を生成する。
上記構成を有する運転支援装置によれば、特に曲率が一定の割合で連続して変化するクロソイド曲線をつなげて走行軌道を生成することによって、ステアリングを徐々に旋回させながら或いは直進方向に戻しながら進むという一般的な車両の走行態様に従った走行軌道を生成することが可能となる。
また、第3の構成は以下のとおりである。
前記走行軌道生成手段(51)は、車両が車線変更を開始する開始点(P1)から第1中継地点(P2)までの曲率が徐々に大きく変化する第1のクロソイド曲線(85)と、前記第1中継地点から車線の境界(P3)までの曲率が徐々に小さく変化する第2のクロソイド曲線(86)と、車線の境界から第2中継地点までの曲率が徐々に大きく変化する第3のクロソイド曲線(87)と、前記第2中継地点から車両が車線変更を終了する終了点までの曲率が徐々に小さく変化する第4のクロソイド曲線(88)と、を生成し、前記第1のクロソイド曲線と前記第2のクロソイド曲線と前記第3のクロソイド曲線と前記第4のクロソイド曲線を接続することにより前記走行軌道を生成する。
上記構成を有する運転支援装置によれば、特に曲率が一定の割合で連続して変化するクロソイド曲線を4本つなげて車線変更を行う際の走行軌道を生成することによって、ステアリングを徐々に旋回させながら或いは直進方向に戻しながら進むという一般的な車両の走行態様を繰り返し実行する走行軌道を生成することが可能となる。
また、第4の構成は以下のとおりである。
前記走行軌道生成手段(51)は、前記走行軌道を生成する場合に、前記第1のクロソイド曲線(85)の終点の曲率半径と前記第1のクロソイド曲線の終点における接線が前記道路の進行方向に対してなす角度と前記第1のクロソイド曲線の始点から終点までの前記第1のクロソイド曲線に沿った距離との対応関係を特定し、前記対応関係に基づいて前記走行軌道を生成する。
上記構成を有する運転支援装置によれば、クロソイド曲線を算出する為のパラメータの対応関係を用いて、車両が走行する道路の形状に応じたクロソイド曲線を生成することが可能となる。
また、第5の構成は以下のとおりである。
前記走行軌道生成手段(51)は、前記走行軌道を生成する場合に、前記第1のクロソイド曲線(85)の始点から前記第2のクロソイド曲線(86)の終点までのクロソイド曲線に沿った距離に対する前記第1のクロソイド曲線の始点から前記第2のクロソイド曲線の終点までの道路幅方向への距離の比率と、前記第1のクロソイド曲線の終点における接線が前記道路の進行方向に対してなす角度との関係を示す一次近似式を算出し、前記一次近似式に基づいて前記走行軌道を生成する。
上記構成を有する運転支援装置によれば、クロソイド曲線を算出する為のパラメータの対応関係を一次近似式により特定することによって、車両が走行する道路の形状や車両の車速に応じたクロソイド曲線を生成することが可能となる。
また、第6の構成は以下のとおりである。
前記運転支援手段(51)は、車両の自動運転支援を行う。
上記構成を有する運転支援装置によれば、自動運転支援による車両の走行を行う場合において、車線変更を行う車両にとって実現することが容易で且つ推奨される走行軌道を生成することが可能となる。そして、生成された走行軌道に基づいて自動運転支援を行うことによって、自動運転支援を適切に実施することを可能とする。