WO2024048073A1 - 運転支援装置及びコンピュータプログラム - Google Patents
運転支援装置及びコンピュータプログラム Download PDFInfo
- Publication number
- WO2024048073A1 WO2024048073A1 PCT/JP2023/025102 JP2023025102W WO2024048073A1 WO 2024048073 A1 WO2024048073 A1 WO 2024048073A1 JP 2023025102 W JP2023025102 W JP 2023025102W WO 2024048073 A1 WO2024048073 A1 WO 2024048073A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vehicle
- travel
- trajectory
- lane
- curve
- Prior art date
Links
- 238000004590 computer program Methods 0.000 title claims abstract description 8
- 239000013598 vector Substances 0.000 claims description 226
- 238000005192 partition Methods 0.000 claims description 15
- 230000008685 targeting Effects 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000000034 method Methods 0.000 description 59
- 230000003068 static effect Effects 0.000 description 55
- 230000008569 process Effects 0.000 description 48
- 238000010586 diagram Methods 0.000 description 27
- 238000012545 processing Methods 0.000 description 26
- 238000004891 communication Methods 0.000 description 23
- 238000005452 bending Methods 0.000 description 20
- 230000008859 change Effects 0.000 description 20
- 230000001133 acceleration Effects 0.000 description 9
- 238000013459 approach Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 230000007423 decrease Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 230000015654 memory Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000003973 paint Substances 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
- B60W30/06—Automatic manoeuvring for parking
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
カーブ区間を走行する際に急な旋回や減速が行われることを抑制した走行軌道を車両の走行が推奨される走行軌道として生成することを可能にした運転支援装置及びコンピュータプログラムを提供する。具体的には、車両が走行する走行予定経路を取得し、特に取得した走行予定経路にカーブを含む場合に、区画線に関する情報を含む地図情報を用いて、当該カーブを含むカーブ区間を対象にして車両が走行する予定の車線の中心線に沿って配置された座標点とカーブの内側の区画線との間に通過点を設定し、カーブ区間を対象にして通過点を通過する走行軌道を、車両の走行が推奨される走行軌道として生成し、生成された走行軌道に基づいて車両の運転支援を行うように構成する。
Description
本発明は、駐車場内での車両の運転を支援する運転支援装置及びコンピュータプログラムに関する。
近年、車両の走行形態として、ユーザの運転操作に基づいて走行する手動走行以外に、ユーザの運転操作の一部又は全てを車両側で実行することにより、ユーザによる車両の運転を補助する自動運転支援システムについて新たに提案されている。自動運転支援システムでは、例えば、車両の現在位置、車両が走行する車線、周辺の他車両の位置を随時検出し、予め設定された経路に沿って走行するようにステアリング、駆動源、ブレーキ等の車両制御が自動で行われる。
また、上記自動運転支援による走行を行う場合やその他の車両に対する各種運転支援を行う場合において、車両の走行予定経路や地図情報等に基づいて走行が推奨される走行軌道を車両が走行する道路上に予め生成することが行われている。例えば国際公開第2021/059601号には、交差点内や車線変更を行う区間以外について車両が走行する車線の中央に対して走行が推奨される走行軌道を生成し、生成した走行軌道に従って走行するように車両を制御する技術について開示されている。
ここで、上記特許文献1に開示された技術では、交差点内等の一部区間を除いて基本的に車両が走行する車線の中央に対して走行が推奨される走行軌道を生成する。従って、道路が所定の角度で屈曲したり所定の曲率で円弧状に曲がる形状を含む区間(以下、カーブ区間という)に対しても車両が走行する車線の中央に対して走行が推奨される走行軌道が生成されていた。しかしながら、上記のようなカーブ区間においては車線の中央を走行する軌道が必ずしも車両にとって推奨される走行軌道となるとは限らず、例えば急な旋回や減速を伴う軌道となる可能性があった。
本発明は前記従来における問題点を解消するためになされたものであり、カーブ区間を走行する際に急な旋回や減速が行われることを抑制した走行軌道を車両の走行が推奨される走行軌道として生成することが可能となり、車両の乗員に負担を生じさせない適切な運転支援を実施することを可能にした運転支援装置及びコンピュータプログラムを提供することを目的とする。
前記目的を達成するため本発明に係る運転支援装置は、車両が走行する走行予定経路を取得する走行予定経路取得手段と、前記走行予定経路にカーブを含む場合に、区画線に関する情報を含む地図情報を用いて、前記カーブを含むカーブ区間を対象にして車両が走行する予定の車線の中心線に沿って配置された座標点と前記カーブの内側の区画線との間に通過点を設定する通過点設定手段と、前記カーブ区間を対象にして前記通過点を通過する走行軌道を、車両の走行が推奨される走行軌道として生成する走行軌道生成手段と、前記走行軌道生成手段によって生成された走行軌道に基づいて車両の運転支援を行う運転支援手段と、を有する。
尚、「カーブ」とは、道路が所定の曲率で円弧状に曲がる形状に加えて、直角などの所定の角度で屈曲する形状(例えばL字路)についても含む。
また、「車線の中心線」については、一車線の道路や車線の区分がない道路については道路の中心線が車線の中心線に相当する。
尚、「カーブ」とは、道路が所定の曲率で円弧状に曲がる形状に加えて、直角などの所定の角度で屈曲する形状(例えばL字路)についても含む。
また、「車線の中心線」については、一車線の道路や車線の区分がない道路については道路の中心線が車線の中心線に相当する。
また、本発明に係るコンピュータプログラムは、車両において実施する運転支援に用いる支援情報を生成するプログラムである。具体的には、コンピュータを、車両が走行する走行予定経路を取得する走行予定経路取得手段と、前記走行予定経路にカーブを含む場合に、区画線に関する情報を含む地図情報を用いて、前記カーブを含むカーブ区間を対象にして車両が走行する予定の車線の中心線に沿って配置された座標点と前記カーブの内側の区画線との間に通過点を設定する通過点設定手段と、前記カーブ区間を対象にして前記通過点を通過する走行軌道を、車両の走行が推奨される走行軌道として生成する走行軌道生成手段と、前記走行軌道生成手段によって生成された走行軌道に基づいて車両の運転支援を行う運転支援手段と、して機能させる。
前記構成を有する本発明に係る運転支援装置及びコンピュータプログラムによれば、道路や区画線の形状からカーブを通過する際に車両が通過すべき通過点を道路上に設定し、通過点を通過する走行軌道を生成することで、カーブ区間を走行する際に急な旋回や減速が行われることを抑制した走行軌道を車両の走行が推奨される走行軌道として生成することが可能となる。その結果、車両の乗員に負担を生じさせない適切な運転支援を実施することが可能となる。
以下、本発明に係る運転支援装置をナビゲーション装置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からサーバ装置4へと出発地や目的地等の経路探索に必要な情報が経路探索要求とともに送信される(但し、再探索の場合には目的地に関する情報は必ずしも送信する必要は無い)。そして経路探索要求を受信したサーバ装置4は、サーバ装置4の有する地図情報を用いて経路探索を行い、出発地から目的地までの推奨経路を特定する。その後、特定された推奨経路を要求元のナビゲーション装置1へと送信する。そして、ナビゲーション装置1は受信した推奨経路に関する情報をユーザに提供したり、推奨経路を使って後述のように自動運転支援に関する各種支援情報を生成することも可能である。
更に、サーバ装置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と、施設DB14と、サーバ側通信装置15とを備える。
サーバ制御部11は、サーバ装置4の全体の制御を行う制御ユニット(MCU、MPU等)であり、演算装置及び制御装置としてのCPU21、並びにCPU21が各種の演算処理を行うにあたってワーキングメモリとして使用されるRAM22、制御用のプログラム等が記録されたROM23、ROM23から読み出したプログラムを記憶するフラッシュメモリ24等の内部記憶装置を備えている。尚、サーバ制御部11は、後述のナビゲーション装置1のECUとともに処理アルゴリズムとしての各種手段を有する。
一方、サーバ側地図DB12は、外部からの入力データや入力操作に基づいて登録された最新のバージョンの地図情報であるサーバ側地図情報が記憶される記憶手段である。ここで、サーバ側地図情報は、道路網を始めとして経路探索、経路案内及び地図表示に必要な各種情報から構成されている。例えば、道路網を示すノード及びリンクを含むネットワークデータ、道路(リンク)に関するリンクデータ、ノード点に関するノードデータ、各交差点に関する交差点データ、施設等の地点に関する地点データ、地図を表示するための地図表示データ、経路を探索するための探索データ、地点を検索するための検索データ等からなる。
また、高精度地図DB13は、上記サーバ側地図情報よりも精度の高い地図情報である高精度地図情報16が記憶される記憶手段である。高精度地図情報16は、特に車両が走行対象となる道路に関してより詳細な情報を格納した地図情報であり、本実施形態では例えば道路に関してはレーン形状(車線単位の道路形状や曲率、車線幅等)と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報が含まれる。更に、道路の勾(こう)配、カント、バンク、合流区間、車線数の減少する箇所、幅員の狭くなる箇所、踏切等を表すデータが、カーブに関して曲率半径や屈曲角度を表すデータが、交差点、T字路等の分岐点を表すデータが、道路属性に関して、降坂路、登坂路等を表すデータが、道路種別に関して、国道、県道、細街路等の一般道のほか、高速自動車国道、都市高速道路、自動車専用道路、一般有料道路、有料橋等の有料道路を表すデータがそれぞれ記録される。また、区画線に関する情報としては、どの種類の区画線が道路に対してどのように配置されているかを特定する情報が記憶される。尚、以下の説明において「カーブ」とは、道路が所定の曲率で円弧状に曲がる形状に加えて、直角などの所定の角度で屈曲する形状(例えばL字路)についても含むものとする。また、道路の車線数に加えて、車線毎の進行方向の通行区分や道路の繋がり(具体的には、交差点の通過前の道路に含まれる車線と交差点の通過後の道路に含まれる車線との対応関係)を特定する情報についても記憶されている。更に、道路に設定されている制限速度についても記憶されている。
一方、施設DB14は、上記サーバ側地図情報に格納される施設に関する情報よりも、より詳細な施設に関する情報が記憶される記憶手段である。具体的には、施設情報17として特に車両の駐車対象となる駐車場(施設に付随する駐車場も独立型の駐車場も含む)について、駐車場の出入口の位置を特定する情報、駐車場内の駐車スペースの配置を特定する情報、駐車スペースを区画する区画線に関する情報、通路に関する情報等が含まれる。駐車場以外の施設に関しては施設のフロアマップを特定する情報が含まれる。フロアマップには、例えば出入口、通路、階段、エレベーター、エスカレーターの位置を特定する情報が含まれる。また、複数のテナントを有する複合型商業施設では入居する各テナントの位置を特定する情報が含まれる。施設情報17は特に駐車場や施設を3Dモデルによって生成した情報としても良い。更に、施設DB14には、駐車場の入口に面した進入道路に含まれる車線と駐車場の入口との間の接続関係を示す接続情報18と、進入道路と駐車場の入口との間において車両の通行可能な領域を特定する道路外形状情報19についても含まれる。
尚、高精度地図情報16は基本的に道路(リンク)とその周辺のみを対象とした地図情報であるが、道路周辺以外のエリアについても含む地図情報としても良い。また、図2に示す例ではサーバ側地図DB12に格納されるサーバ側地図情報と高精度地図DB13や施設DB14に格納される情報は異なる地図情報としているが、高精度地図DB13や施設DB14に格納される情報はサーバ側地図情報の一部としても良い。また、高精度地図DB13と施設DB14は分けずに一のデータベースとしても良い。
一方、サーバ側通信装置15は各車両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が備える構成としても良い。
現在位置検出部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から配信された高精度地図情報16、施設情報17、接続情報18、道路外形状情報19が保管される記憶手段である。保管する期間は適宜設定可能であるが、例えば記憶されてから所定期間(例えば1カ月)としても良いし、車両のACC電源(accessory power supply)がOFFされるまでとしても良い。また、キャッシュ46に格納されるデータ量が上限となった後に古いデータから順次削除するようにしても良い。そして、ナビゲーションECU33は、キャッシュ46に格納された高精度地図情報16、施設情報17、接続情報18、道路外形状情報19を用いて、自動運転支援に関する各種支援情報を生成する。詳細については後述する。
一方、ナビゲーション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で探索された経路情報や高精度地図情報16、施設情報17、接続情報18、道路外形状情報19をサーバ装置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、図7、図10及び図11にフローチャートで示されるプログラムは、ナビゲーション装置1が備えているRAM52やROM53に記憶されており、CPU51により実行される。
先ず、自動運転支援プログラムではステップ(以下、Sと略記する)1において、CPU51は、車両が今後走行する予定にある経路(以下、走行予定経路という)を取得する。尚、車両の走行予定経路は、例えばユーザが目的地を設定することによってサーバ装置4により探索された目的地までの推奨経路とする。尚、目的地が設定されていない場合には、車両の現在位置から道なりに走行する経路を走行予定経路としても良い。
また、推奨経路の探索を行う場合に先ずCPU51は、サーバ装置4に対して経路探索要求を送信する。尚、経路探索要求には、経路探索要求の送信元のナビゲーション装置1を特定する端末IDと、出発地(例えば車両の現在位置)及び目的地を特定する情報と、が含まれている。尚、再探索時については目的地を特定する情報は必ずしも必要では無い。その後、CPU51は経路探索要求に応じてサーバ装置4から送信された探索経路情報を受信する。探索経路情報は、送信した経路探索要求に基づいてサーバ装置4が最新のバージョンの地図情報を用いて探索した出発地から目的地までの推奨経路(センタールート)を特定する情報(例えば推奨経路に含まれるリンク列)である。例えば公知のダイクストラ法を用いて探索される。
尚、上記推奨経路の探索では、目的地において駐車場で車両を駐車する為に推奨される駐車位置(駐車スペース)を選択し、選択された駐車位置までの推奨経路を探索するのが望ましい。即ち、探索される推奨経路には駐車場までの経路に加えて駐車場内での車の移動を示す経路についても含むのが望ましい。例えば駐車場内で空き状態にある駐車スペースの内から、ユーザにとって停車し易い駐車スペース(例えば駐車場の入口から近い駐車スペース、左右に他車両が駐車していない駐車スペースなど)をユーザが駐車を行うのに推奨される駐車位置の候補として決定する。また、駐車位置の選択については、駐車位置までの車両の移動に加えて車両を駐車した後の徒歩の移動や、帰りに駐車位置から出庫する際の車の移動についても考慮してユーザの負担が軽くなる駐車位置を選択するのが望ましい。
また、車両を駐車する為に推奨される駐車位置は複数候補選択しても良い。また、車両を駐車する為に推奨される駐車位置を複数候補選択した場合については、前記S1において各駐車位置までの推奨経路が走行予定経路として取得される、即ち複数の走行予定経路の候補が取得されることとなる。更に、推奨される駐車位置を一のみ選択した場合であっても、その駐車位置に対して推奨経路が複数考えられる場合には複数の走行予定経路の候補を取得しても良い。尚、前記S1において複数の走行予定経路の候補を取得した場合には、後述のS25において複数の走行予定経路間で車線移動態様を比較し、推奨される車線移動態様を一に決定することで、駐車位置及び走行予定経路も一に決定されることとなる。
また、サーバ装置4は、ユーザが駐車を行う駐車場の入口に面した道路(以下、進入道路という)に含まれる車線と駐車場の入口との間の接続関係を示す接続情報18を参照し、進入道路から駐車場への進入可能な進行方向が限られている場合(例えば左折による進入のみ可)については、進入方向についても考慮して上記走行経路の探索を行う。尚、ルートの探索方法としてはダイクストラ法以外の探索手段を用いても良い。また、前記S1の走行経路の探索はサーバ装置4でなくナビゲーション装置1において行うようにしても良い。
次に、S2においてCPU51は、車両の現在位置から前記S1で取得された走行予定経路を含むエリアを対象として高精度地図情報16を取得する。
ここで、高精度地図情報16は図5に示すように矩形形状(例えば500m×1km)に区分されてサーバ装置4の高精度地図DB13に格納されている。従って、例えば図5に示すように車両の走行経路として経路61が取得された場合には、経路61を含むエリア62~65を対象として高精度地図情報16が取得される。但し、目的地までの距離が特に遠い場合については、例えば車両が現在位置する2次メッシュのみを対象として高精度地図情報16を取得しても良いし、車両の現在位置から所定距離(例えば3km以内)内のエリアのみを対象として高精度地図情報16を取得するようにしても良い。
高精度地図情報16には例えば道路のレーン形状と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報が含まれる。また、その他に交差点に関する情報、駐車場に関する情報等も含まれる。高精度地図情報16は基本的にサーバ装置4から上述した矩形形状のエリア単位で取得されるが、キャッシュ46に既に格納されているエリアの高精度地図情報16が存在する場合には、キャッシュ46から取得する。また、サーバ装置4から取得された高精度地図情報16はキャッシュ46に一旦格納される。
また、前記S2においてCPU51は、ユーザが駐車を行う駐車場の入口に面した進入道路に含まれる車線と駐車場の入口との間の接続関係を示す接続情報18と、進入道路とユーザが駐車を行う駐車場の入口との間において車両の通行可能な領域を特定する道路外形状情報19についても同様に取得する。
その後、S3においてCPU51は、後述の静的走行軌道生成処理(図7)を実行する。ここで、静的走行軌道生成処理は、車両の走行予定経路と前記S2で取得した高精度地図情報16とに基づいて、走行予定経路に含まれる道路に対して車両に走行が推奨される走行軌道である静的走行軌道を生成する処理である。特に、CPU51は車両に走行が推奨される車線を特定するだけではなく、車線内において走行が推奨される具体的な走行位置まで特定した走行軌道を静的走行軌道として生成する。尚、目的地までの距離が特に遠い場合には、車両の現在位置から進行方向に沿って所定距離前方までの区間(例えば車両が現在位置する2次メッシュ内)を対象とした静的走行軌道のみを生成しても良い。尚、所定距離については適宜変更可能であるが、少なくとも車外カメラ39やその他のセンサによって車両周辺の道路状況を検出することが可能な範囲(検出範囲)外を含む領域を対象として静的走行軌道を生成する。
次に、S4においてCPU51は、前記S2で取得した高精度地図情報16に基づいて、前記S3で生成された静的走行軌道を走行する際の車両の速度計画を生成する。例えば、制限速度情報や走行予定経路上にある速度変化地点(例えば交差点、カーブ、踏切、横断歩道など)を考慮して、静的走行軌道を走行する際に推奨される車両の走行速度を算出する。
そして、前記S4で生成された速度計画は、自動運転支援に用いる支援情報としてフラッシュメモリ54等に格納される。また、前記S4で生成された速度計画を実現する為に必要な車両の加減速を示す加速度の計画についても自動運転支援に用いる支援情報として生成するようにしても良い。
続いて、S5においてCPU51は、車外カメラ39で撮像された撮像画像に対して画像処理を行うことによって、周辺の道路状況として、特に自車両の周辺に自車両の走行に影響が生じる要因が存在するか否かを判定する。ここで、前記S5で判定対象となる“自車両の走行に影響が生じる要因”は、リアルタイムで変化する動的な要因とし、道路構造に基づくような静的な要因は除かれる。例えば、自車両の進行方向前方を走行又は駐車する他車両、渋滞車両、自車両の進行方向前方に位置する歩行者、自車両の進行方向前方にある工事区間等が該当する。一方で、交差点、カーブ、踏切、合流区間、車線減少区間等は除かれる。また、他車両、歩行者、工事区間が存在する場合であっても、それらが自車両の今後の走行軌道と重複する虞のない場合(例えば自車両の今後の走行軌道から離れた位置にある場合)については“自車両の走行に影響が生じる要因”からは除かれる。また、車両の走行に影響が生じる可能性のある要因を検出する手段としてはカメラの代わりにミリ波レーダやレーザセンサ等のセンサや車車間通信や路車間通信を用いても良い。
また、例えば全国の道路を走行する各車両のリアルタイムの位置等を外部のサーバで管理し、CPU51は自車両の周辺に位置する他車両の位置を外部のサーバから取得して前記S5の判定処理を行うようにしても良い。
そして、自車両の周辺に自車両の走行に影響が生じる要因が存在すると判定された場合(S5:YES)には、S6へと移行する。それに対して、自車両の周辺に自車両の走行に影響が生じる要因が存在しないと判定された場合(S5:NO)には、S9へと移行する。
S6においてCPU51は、車両の現在位置から前記S5で検出された“自車両の走行に影響が生じる要因”を回避或いは追従して静的走行軌道に戻る為の新たな軌道を動的走行軌道として生成する。尚、動的走行軌道は“自車両の走行に影響が生じる要因”を含む区間を対象として生成される。また、区間の長さは要因の内容によって変化する。例えば、“自車両の走行に影響が生じる要因”が車両の前方を走行する他車両(前方車両)である場合には、図6に示すように右側に車線変更して前方車両66を追い越し、その後に左側に車線変更して元の車線に戻るまでの軌道である回避軌道が動的走行軌道67として生成される。尚、前方車両66を追い越さずに前方車両66の所定距離後方を追従して走行(或いは前方車両66と並走)する軌道である追従軌道を動的走行軌道として生成しても良い。更に、複数の候補を動的走行軌道として生成しても良く、その場合には複数の候補の内から後述のS7において最もコストの小さい候補が選択されることとなる。
図6に示す動的走行軌道67の算出方法を例に挙げて説明すると、CPU51は先ずステアリングの旋回を開始して右側の車線へと移動し、且つステアリングの位置が直進方向に戻るのに必要な第1の軌道L1を算出する。尚、第1の軌道L1は車両の現在の車速に基づいて車線変更を行う際に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線や円弧を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くなる軌道を算出する。また、前方車両66との間に適切な車間距離N以上を維持することについても条件とする。
次に、右側の車線を制限速度を上限に走行して前方車両66を追い越し、且つ前方車両66との間を適切な車間距離N以上とするまでの第2の軌道L2を算出する。尚、第2の軌道L2は基本的に直線の軌道であり、また軌道の長さは、前方車両66の車速と道路の制限速度に基づいて算出される。
続いて、ステアリングの旋回を開始して左側の車線へと戻り、且つステアリングの位置が直進方向に戻るのに必要な第3の軌道L3を算出する。尚、第3の軌道L3は車両の現在の車速に基づいて車線変更を行う際に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線や円弧を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くなる軌道を算出する。また、前方車両66との間に適切な車間距離N以上を維持することについても条件とする。
尚、動的走行軌道は、車外カメラ39やその他のセンサで取得した車両周辺の道路状況に基づいて生成されるので、動的走行軌道が生成される対象となる領域は、少なくとも車外カメラ39やその他のセンサによって車両周辺の道路状況を検出することが可能な範囲(検出範囲)内となる。
次に、右側の車線を制限速度を上限に走行して前方車両66を追い越し、且つ前方車両66との間を適切な車間距離N以上とするまでの第2の軌道L2を算出する。尚、第2の軌道L2は基本的に直線の軌道であり、また軌道の長さは、前方車両66の車速と道路の制限速度に基づいて算出される。
続いて、ステアリングの旋回を開始して左側の車線へと戻り、且つステアリングの位置が直進方向に戻るのに必要な第3の軌道L3を算出する。尚、第3の軌道L3は車両の現在の車速に基づいて車線変更を行う際に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線や円弧を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くなる軌道を算出する。また、前方車両66との間に適切な車間距離N以上を維持することについても条件とする。
尚、動的走行軌道は、車外カメラ39やその他のセンサで取得した車両周辺の道路状況に基づいて生成されるので、動的走行軌道が生成される対象となる領域は、少なくとも車外カメラ39やその他のセンサによって車両周辺の道路状況を検出することが可能な範囲(検出範囲)内となる。
続いて、S7においてCPU51は、前記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)には、S2へと戻る。その後、車両の現在位置から走行予定経路に沿った所定距離以内の区間を対象として、静的走行軌道の生成が再度行われる(S2~S4)。尚、本実施形態では車両が一定距離(例えば1km)走行する度に、車両の現在位置から走行経路に沿った所定距離以内の区間を対象として、静的走行軌道の生成が繰り返し行われることとしているが、目的地までの距離が短い場合には走行開始時点において目的地までの静的走行軌道の生成を一度に行うようにしても良い。
一方、前記S3で静的走行軌道の生成が行われてから車両が一定距離走行していないと判定された場合(S11:NO)には、自動運転支援による支援走行を終了するか否かを判定する(S12)。自動運転支援による支援走行を終了する場合としては、目的地に到着した場合以外に、ユーザが車両に設けられた操作パネルを操作したり、ハンドル操作やブレーキ操作などが行われることによって自動運転支援による走行を意図的に解除(オーバーライド)した場合がある。
そして、自動運転支援による支援走行を終了すると判定された場合(S12:YES)には、当該自動運転支援プログラムを終了する。それに対して自動運転支援による支援走行を継続すると判定された場合(S12:NO)には、S5へと戻る。
次に、前記S3において実行される静的走行軌道生成処理のサブ処理について図7に基づき説明する。図7は静的走行軌道生成処理のサブ処理プログラムのフローチャートである。
先ず、S21においてCPU51は、現在位置検出部31により検出した車両の現在位置を取得する。尚、車両の現在位置は、例えば高精度のGPS情報や高精度ロケーション技術を用いて詳細に特定することが望ましい。ここで、高精度ロケーション技術とは、車両に設置されたカメラから取り込んだ白線や路面ペイント情報を画像認識により検出し、更に、検出した白線や路面ペイント情報を例えば高精度地図情報16と照合することにより、走行車線や高精度な車両位置を検出可能にする技術である。更に、車両が複数の車線からなる道路を走行する場合には車両の走行する車線についても特定する。また、車両が駐車場内に位置する場合については駐車場内の具体的な位置(例えば車両が位置する駐車スペースなど)と車両の姿勢(例えば車両の進行方向、駐車スペース内に位置する場合には駐車スペースに対してどのような向きで駐車されているか)についても特定する。
次に、S22においてCPU51は、前記S2で取得した高精度地図情報16に基づいて、特に車両の進行方向前方の静的走行軌道を生成する区間(例えば車両の現在位置から所定距離以内の走行予定経路)を対象として、レーン形状、区画線情報、交差点に関する情報等を取得する。尚、前記S22で取得されるレーン形状と区画線情報には、特に車両が走行対象として選択可能な車線が道路に対してどのように配置されているかを特定する情報を含み、更に車線数、車線を区画する区画線の種類と配置、車線幅、車線数の増減がある場合にはどの位置でどのように増減するか、車線毎の進行方向の通行区分や道路の繋がり(具体的には、交差点の通過前の道路に含まれる車線と交差点の通過後の道路に含まれる車線との対応関係)を特定する情報等を含む。
続いて、S23においてCPU51は、前記S22で取得したレーン形状と区画線情報とに基づいて、車両の進行方向前方の静的走行軌道を生成する区間を対象としてレーンネットワークの構築を行う。ここで、レーンネットワークは車両が選択し得る車線移動を示したネットワークである。
ここで、前記S23におけるレーンネットワークを構築する例として、例えば図8に示す走行予定経路を車両が走行する場合を例に挙げて説明する。図8に示す走行予定経路は、車両の現在位置から直進した後に次の交差点71で右折し、更に次の交差点72でも右折し、次の交差点73で左折する経路とする。図8に示す走行予定経路では、例えば交差点71で右折する場合に右側の車線に進入することも可能であるし、左側の車線に進入することも可能である。但し、次の交差点72で右折する必要があるので、交差点72の進入時点では最も右側の車線に車線移動する必要がある。また、交差点72で右折する場合においても右側の車線に進入することも可能であるし、左側の車線に進入することも可能である。但し、次の交差点73で左折する必要があるので、交差点73の進入時点では最も左側の車線に車線移動する必要がある。このような車線移動が可能な区間を対象として構築したレーンネットワークを図9に示す。
図9に示すようにレーンネットワークは、車両の進行方向前方の静的走行軌道を生成する区間を複数の区画(グループ)に区分する。具体的には、交差点の進入位置、交差点の退出位置、車線が増減する位置を境界として区分する。そして、区分された各区画の境界に位置する各車線に対してノード点(以下、レーンノードという)75が設定されている。更に、レーンノード75間をつなぐリンク(以下、レーンリンクという)76が設定されている。尚、レーンリンク76は、車線を跨がない場合については基本的には車線の中央に対して設定される。
また、上記レーンネットワークは、特に交差点でのレーンノードとレーンリンクとの接続によって、交差点の通過前の道路に含まれる車線と交差点の通過後の道路に含まれる車線との対応関係、即ち交差点の通過前の車線に対して交差点の通過後に移動可能な車線を特定する情報を含んでいる。具体的には交差点の通過前の道路に設定されたレーンノードと、交差点の通過後の道路に設定されたレーンノードとの内、レーンリンクによって接続されたレーンノードに対応する車線間において車両が移動可能なことを示している。このようなレーンネットワークを生成する為に高精度地図情報16には、交差点に接続する各道路について、交差点へと進入する道路と退出する道路の組み合わせごとに、車線の対応関係を示すレーンフラグが設定されて格納されている。CPU51は前記S23においてレーンネットワークを構築する際に、レーンフラグを参照して交差点におけるレーンノードとレーンリンクとの接続を形成する。
尚、図9では道路を対象として構築されたレーンネットワークの例を示しているが、静的走行軌道を生成する区間に駐車場内が含まれていれば駐車場内を対象としても同様のネットワーク(以下、駐車場内ネットワークという)を構築する。駐車場内ネットワークは、駐車場ノードと駐車場リンクからなり、駐車場ノードは駐車場の出入口と、車両が通行可能な通路が交差する交差点及び車両が通行可能な通路の曲がり角(即ち通路同士の接続点)、通路の終点に夫々設定される。一方で駐車場リンクは駐車場ノード間の車両が通行可能な通路に対して設定される。
尚、前記S1において複数の走行予定経路の候補が取得されている場合には、複数の走行予定経路に対して上記レーンネットワークや駐車場内ネットワークの構築が行われる。
次に、S24においてCPU51は、前記S23で構築されたレーンネットワーク(静的走行軌道を生成する区間に駐車場内が含まれていれば駐車場内ネットワークについても含む、以下同じ)に対して、レーンネットワークの始点に位置するレーンノードに対して車両が移動を開始する開始レーン(出発ノード)を設定し、レーンネットワークの終点に位置するレーンノードに対して車両が移動する目標となる目標レーン(目的ノード)を設定する。尚、レーンネットワークの始点が片側複数車線の道路である場合には、車両の現在位置する車線に対応するレーンノードが開始レーンとなる。一方、レーンネットワークの終点が片側複数車線の道路である場合には、最も左側の車線(左側通行の場合)に対応するレーンノードが目標レーンとなる。また、レーンネットワークの始点や終点が駐車場内である場合には、駐車場内ネットワークの車両が現在位置する駐車スペースや通路に開始レーンが設定され、車両が駐車する駐車スペースや駐車スペースへと進入可能な通路に目標レーンが設定される。
その後、S25においてCPU51は、前記S23で構築されたレーンネットワークを参照し、開始レーンから目標レーンまでを連続して繋ぐルートの内、レーンコストの最も小さいルート(以下、推奨ルートという)を導出する。例えばダイクストラ法を用いて目標レーン側からルートの探索を行う。但し、開始レーンから目標レーンまでを連続して繋ぐルートを探索できるのであればダイクストラ法以外の探索手段を用いても良い。導出された推奨ルートは、車両が移動する際に推奨される車両の車線移動態様(走行が推奨される車線や車線移動を行う推奨位置を特定した情報)となる。
また、上記ルートの探索に用いられるレーンコストは、レーンリンク76毎に付与されている。各レーンリンク76に付与されるレーンコストは、各レーンリンク76の長さ或いは移動に係る所要時間を基準値とする。特に本実施形態ではレーンリンクの長さ(m単位)をレーンコストの基準値とする。また、車線変更を伴うレーンリンクについては車線変更コスト(例えば50)を上記基準値に加算する。尚、車線変更コストについては車線変更の回数や車線変更の位置に応じて値を変えても良い。例えば交差点に近い位置で行われる車線変更や2車線分の車線変更が行われる場合については加算される車線変更コストの値をより高くすることが可能である。
尚、前記S1において複数の走行予定経路の候補が取得されている場合には、複数の走行予定経路の内からレーンコストの最も小さい推奨ルートを導出する。導出された推奨ルートによって走行予定経路も一に決定されることとなる。
続いて、S26においてCPU51は、後述のカーブ区間の走行軌道生成処理(図10、図11)を行う。カーブ区間の走行軌道算出処理は、車両の進行方向前方の静的走行軌道を生成する対象となる区間の走行予定経路の内、特にカーブを含むカーブ区間を対象として、前記S25で導出された推奨ルートに沿って走行する際に推奨される走行軌道を生成する処理である。尚、走行予定経路に複数のカーブ区間を含む場合については複数のカーブ区間毎に推奨される走行軌道を生成する。ここで、「カーブ」とは、道路が所定の曲率で円弧状に曲がる形状に加えて、直角などの所定の角度で屈曲する形状(例えばL字路)についても含む。一方で、本実施形態では車両が道路の同一車線内を走行して通過するカーブを想定しており、車線が途切れる交差点内や料金所周辺、駐車場出入口でのカーブについては前記S26のカーブからは除く。
その後、S27においてCPU51は、上記カーブ区間以外について前記S25で導出された推奨ルートに沿って走行する際に推奨される走行軌道を生成する。例えば車線変更を伴う区間の走行軌道については、できる限り車線変更が連続せず、且つ交差点から離れた位置で行うように車線変更の位置を設定する。また、特に交差点での右左折、車線変更をする際の走行軌道を生成する場合には、車両に生じる横方向の加速度(横G)を算出し、横Gが自動運転支援に支障が生じることなく、また車両の乗員に不快感を与えない上限値(例えば0.2G)を超えないことを条件として、クロソイド曲線を用いてできる限り円滑に結ぶ軌道を算出する。上記処理を行うことによって、走行予定経路に含まれる道路に対して車両に走行が推奨される走行軌道が生成される。尚、カーブ区間でもなく車線変更を行う区画でもなく交差点内の区画でもない区画については、車線の中央を通過する軌道を車両の走行が推奨される走行軌道とする。また、静的走行軌道を生成する対象に駐車スペースへの進入又は退出を含む場合には、駐車スペースへ進入又は退出する走行軌道についても生成する。
S28においてCPU51は、前記S26及び前記S27で算出された各走行軌道を組み合わせることによって、走行予定経路に含まれる道路に対して車両に走行が推奨される走行軌道である静的走行軌道が生成される。前記S28で生成された静的走行軌道は、自動運転支援に用いる支援情報としてフラッシュメモリ54等に格納される。その後S4へと移行し、生成された静的走行軌道に基づく各種運転支援が行われる。
次に、前記S26において実行されるカーブ区間の走行軌道算出処理のサブ処理について図10に基づき説明する。図10はカーブ区間の走行軌道算出処理のサブ処理プログラムのフローチャートである。
先ず、S31においてCPU51は、前記S2で取得した高精度地図情報16に基づいて、車両の進行方向前方の静的走行軌道を生成する区間を対象に車両が走行する走行領域を特定する情報を取得する。具体的には、前記S25で選択された車線移動態様に従って走行した場合に車両が走行する車線の左右の区画線(一車線の道路や車線の区分がない道路については道路端)の位置を特定する情報が取得される。
次に、S32においてCPU51は、前記S31で取得した走行領域の情報に基づいて、車両の進行方向前方の静的走行軌道を生成する区間を対象に車両が走行する車線の中心線を算出する。例えば走行領域の左右の区画線或いは道路端の位置からその中心にある中心線を算出することが可能である。但し、中心線については区画線から算出するのではなく予め車線毎に算出して高精度地図DB13に格納しておくことも可能である。
続いて、S33においてCPU51は、前記S32で算出された中心線に基づいて、車両の進行方向前方の静的走行軌道を生成する区間を対象に車両が走行する車線の移動平均線を算出する。尚、移動平均線は、車線の中心線に沿って配置された連続する所定数の座標点の平均地点を結んだ線である。より具体的には中心線に沿って所定間隔で設定した座標点毎に、その前後2つの座標点を含めた5つの座標点の平均地点(緯度経度をそれぞれ平均した地点)を算出し、その平均地点を結んだ線を移動平均線とする。但し、移動平均線については中心線から算出するのではなく予め車線毎に算出して高精度地図DB13に格納しておくことも可能である。
更に、S34においてCPU51は、前記S32で算出された中心線と前記S33で算出された移動平均線とを比較して、中心線と移動平均線とが一致しない範囲についてカーブが存在する範囲として検出する。ここで、図12は前記S31及びS32で算出される中心線81と移動平均線82の例を示した図である。前述のように移動平均線82は中心線81に沿って所定間隔で設定した座標点毎に、その前後2つの座標点を含めた5つの座標点の平均地点(緯度経度をそれぞれ平均した地点)を算出し、その平均地点を結んだ線である。従って、中心線81が直線状に配置された区間では中心線81と移動平均線82は一致するが、図12に示すように道路が円弧状に曲がる箇所や所定の角度で屈曲する箇所において、中心線81と移動平均線82とが一致しない範囲が生じる。従って、前記S34では中心線81と移動平均線82とが一致しない範囲をカーブが存在する範囲として検出する。
尚、前記S34でCPU51は、中心線81と移動平均線82を比較することによって車両の進行方向前方の静的走行軌道を生成する区間にあるカーブを検出しているが、地図情報に基づいてカーブを検出することも可能である。その場合には、地図情報に予めカーブの位置を特定する情報(例えばカーブに該当するリンクを特定する情報やカーブの始点や終点の座標)を含めるようにする。
続いて、S35においてCPU51は、前記S34の検出結果に基づいて車両の進行方向前方の静的走行軌道を生成する区間に、少なくとも一以上のカーブが存在するか否か判定する。
そして、車両の進行方向前方の静的走行軌道を生成する区間に、少なくとも一以上のカーブが存在すると判定された場合(S35:YES)にはS36へと移行する。それに対して、車両の進行方向前方の静的走行軌道を生成する区間に、カーブが存在しないと判定された場合(S35:NO)にはS27へと移行し、前記S25で導出された推奨ルートに沿って走行する際に推奨される走行軌道を生成する。
S36においてCPU51は、前記S34の検出結果に基づいて車両の進行方向前方の静的走行軌道を生成する区間に、少なくとも2以上のカーブが所定距離(例えば30m)以内の間隔で連続して存在するか否か判定する。具体的には図13に示すように中心線81と移動平均線82とが一致しない範囲が2か所以上あって、且つその間は中心線81と移動平均線82とが一致しており(一致していない場合については連続する複数のカーブでなく一のカーブとみなすこととなる)、更にその間が所定距離以内であることを条件とする。例えば車両の進行方向前方の静的走行軌道を生成する区間にクランク、S字カーブが存在する場合においてYESと判定される。
そして、車両の進行方向前方の静的走行軌道を生成する区間に、少なくとも2以上のカーブが所定距離以内の間隔で連続して存在すると判定された場合(S36:YES)にはS50へと移行する。それに対して、2以上のカーブが所定距離以内の間隔で連続して存在しないと判定された場合(S36:NO)にはS37へと移行する。
S37以下では、上述のように検出された連続しないカーブを含むカーブ区間を対象として以下の処理によりカーブ区間を走行する際に推奨される走行軌道を生成する。尚、連続しないカーブを複数検出した場合には、検出した全てのカーブに対応する各カーブ区間を対象として以下の処理を実行し、走行軌道を生成する。
先ず、S37においてCPU51は、前記S25で選択された車線移動態様に従って走行予定経路を走行した場合のカーブ区間の始点における車両の位置と方位を特定した開始ベクトルと、カーブ区間の終点における車両の位置と方位を特定した終了ベクトルと、をそれぞれ取得する。
このカーブ区間の始点及び終点の位置については前記S25で選択された車線移動態様によって適宜変化させても良いし、車線移動態様に関わらず固定された条件で設定しても良い。例えば、中心線81と移動平均線82が一致しなくなる区間の始点の所定距離(例えば20m)手前をカーブ区間の始点とし、中心線81と移動平均線82が一致しなくなる区間の終点に対して所定距離だけ進行方向側に進んだ地点をカーブ区間の終点とすることが可能である。また、車両の現在位置がカーブの手前である場合には車両の現在位置がカーブ区間の始点となる場合もある。また、予め地図情報にカーブとともにカーブ区間を特定する情報(例えばカーブ区間に含まれるリンクを特定する情報やカーブ区間の始点や終点の座標)についても含めるようにし、地図情報に基づいてカーブ区間を設定しても良い。
ここで、開始ベクトル及び終了ベクトルの道路の進行方向に沿った位置(前後方向の位置)については上述したカーブ区間の始点及び終点と対応する位置とする。
一方、開始ベクトル及び終了ベクトルの道路幅方向の位置については基本的には車両が走行する車線の中央(一車線の道路や車線の区分がない道路については道路の中央にも相当)とする。
更に、開始ベクトル及び終了ベクトルの方位については基本的に道路の進行方向(道路長さ方向)に平行な方向とする。
但し、例えばカーブ区間の手前で車線変更や右左折などの特殊な車両操作が要求される場合等についてはこの限りでなく、開始ベクトル及び終了ベクトルの道路幅方向の位置を車線の中央よりも左右寄りに設定しても良いし、方位についても道路の進行方向に対して傾斜して設定しても良い。
一方、開始ベクトル及び終了ベクトルの道路幅方向の位置については基本的には車両が走行する車線の中央(一車線の道路や車線の区分がない道路については道路の中央にも相当)とする。
更に、開始ベクトル及び終了ベクトルの方位については基本的に道路の進行方向(道路長さ方向)に平行な方向とする。
但し、例えばカーブ区間の手前で車線変更や右左折などの特殊な車両操作が要求される場合等についてはこの限りでなく、開始ベクトル及び終了ベクトルの道路幅方向の位置を車線の中央よりも左右寄りに設定しても良いし、方位についても道路の進行方向に対して傾斜して設定しても良い。
図12は直角に屈曲するカーブを含むカーブ区間に対して設定される開始ベクトル83と終了ベクトル84の例を示した図である。図12に示す例では中心線81と移動平均線82が一致しなくなる区間の始点の所定距離手前の車線中央に開始ベクトル83が設定され、中心線81と移動平均線82が一致しなくなる区間の終点に対して所定距離だけ進行方向側に進んだ地点の車線中央に終了ベクトル84が設定される。尚、開始ベクトル83及び終了ベクトル84の方位についてはいずれも道路の進行方向(道路長さ方向)に平行な方向とする。
その後、S38においてCPU51は、前記S33で算出された移動平均線とカーブの内側の区画線との間にクリッピングポイント(通過点)85を設定する。ここで、クリッピングポイント85は中心線81に沿って配置された各座標点とカーブの内側の区画線との間、より適切には移動平均線とカーブの内側の区画線との間で適宜設定可能であるが、例えば図14に示すように移動平均線82へのカーブの内側の区画線86の最近接点をクリッピングポイント85とする。尚、図12に示すように基本的に中心線81よりも移動平均線82の方がカーブの内側の区画線に近い位置となるので、移動平均線82とカーブの内側の区画線との間にクリッピングポイント85を設定すれば、そのクリッピングポイント85は中心線81に沿って配置された各座標点とカーブの内側の区画線の間に位置することとなる。但し、図14に示す例は車両の車幅を0とみなした場合であって、車幅を考慮するのであれば移動平均線82へのカーブの内側の区画線86の最近接点より車両の車幅の1/2だけ中心線側の位置、或いは誤差などを考慮して車両の車幅の1/2+α(例えば30cm)だけ中心線側の位置にクリッピングポイント85を設定するのが望ましい。
続いて、S39においてCPU51は、走行軌道が生成される対象となるカーブ区間の始点に前記S37で取得された開始ベクトル以外に新たな開始ベクトルの候補を生成する。更に、カーブ区間の終点に前記S37で取得された終了ベクトル以外に新たな終了ベクトルの候補を生成する。例えば、図15に示す例では、当初の開始ベクトル83よりもカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな開始ベクトル91を生成し、更にカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな開始ベクトル92を生成する。同様にして、当初の終了ベクトル84よりもカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな終了ベクトル93を生成し、更にカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな終了ベクトル94を生成する。尚、図15に示す例では新たな開始ベクトル及び終了ベクトルの候補を夫々2つ生成しているが、1つのみ或いは3つ以上生成しても良い。また、カーブの内側方向に生成することも可能である。新たな開始ベクトル及び終了ベクトルの候補を多く生成すれば、より適切な走行軌道を生成できる可能性は高くなるが、一方で走行軌道の候補が多くなるので走行軌道の算出に係る処理負荷は大きくなる。
以降のS40~S46の処理は、前記S37で取得され更に前記S38で新たに生成された開始ベクトルと終了ベクトルの組み合わせ毎に実行する。例えば図15に示す例では開始ベクトルが3つ、終了ベクトルが3つ存在するので、3×3の全9通りの組み合わせに対してS40~S46の処理を実行する。そして、全ての開始ベクトルと終了ベクトルの組み合わせに対してS40~S46の処理を実行した後にS47へと移行する。
先ずS40においてCPU51は、処理対象となる開始ベクトル及び終了ベクトルを各ベクトルの進行方向に通過する(即ち円弧の接線方向が各ベクトルの進行方向と一致する)最大曲率半径の円弧を算出する。
その後、S41においてCPU51は、前記S40で算出された円弧が開始ベクトルから終了ベクトルまでの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれるか否かを判定する。
そして、前記S40で算出された円弧が開始ベクトルから終了ベクトルまでの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれると判定された場合(S41:YES)には、S42へと移行する。一方、前記S40で算出された円弧が開始ベクトルから終了ベクトルまでの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれないと判定された場合(S41:NO)には、S43へと移行する。
S42においてCPU51は、前記S40で算出された開始ベクトルから終了ベクトルまでの間の円弧について第1の走行軌道として生成する。例えば図16に示す例は前記S40で算出された円弧95が開始ベクトル83から終了ベクトル84までの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれる場合の例であり、円弧95が第1の走行軌道として生成される。その後、S44へと移行する。
一方、S43においてCPU51は、前記S40で算出された円弧は走行領域をはみ出す軌道となり採用できないことから、前記S38で設定されたクリッピングポイント85を通過する新たな円弧を生成し、更に処理対象の開始ベクトルと終了ベクトルに夫々道路の進行方向に沿って直進して新たな円弧と接続する走行軌道を、第1の走行軌道として生成する。例えば図17に示す例は前記S40で算出された円弧95が開始ベクトル83から終了ベクトル84までの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれない場合の例であり、クリッピングポイント85を通過する軌道96が第1の走行軌道として生成される。尚、軌道96の円弧については曲率をできる限り小さくすることを条件とし、且つ軌道96は旋回方向の切り替えがない(複数の旋回動作を含まない)ことを条件とする。
その後、S44においてCPU51は、前記S37で取得された開始ベクトルから前記S42又はS43で生成された第1の走行軌道へと移動する為の第2の走行軌道を生成する。尚、図16や図17に示すように処理対象となる開始ベクトルが前記S37で取得された開始ベクトルである場合については第2の走行軌道は第1の走行軌道の一部となるのでS44の処理は不要である。一方で、図18に示すように処理対象となる開始ベクトルが前記S37で取得された開始ベクトルでない(S39で新たに追加された開始ベクトル)場合については第2の走行軌道が生成される。例えば図18に示す例では第1の走行軌道96は車線中央よりも左寄りに設定された新たな開始ベクトル92を処理対象として生成されており、本来の開始ベクトル83から第1の走行軌道96まで移動する新たな第2の走行軌道97が生成される。
続いて、S45においてCPU51は、前記S42又はS43で生成された第1の走行軌道から前記S37で取得された終了ベクトルへと移動する為の第3の走行軌道を生成する。尚、図16や図17に示すように処理対象となる終了ベクトルが前記S37で取得された終了ベクトルである場合については第3の走行軌道は第1の走行軌道の一部となるのでS45の処理は不要である。一方で、図18に示すように処理対象となる終了ベクトルが前記S37で取得された終了ベクトルでない(S39で新たに追加された終了ベクトル)場合については第3の走行軌道が生成される。例えば図18に示す例では第1の走行軌道96は車線中央よりも左寄りに設定された新たな終了ベクトル94を処理対象として生成されており、第1の走行軌道96から本来の終了ベクトル84まで移動する新たな第3の走行軌道98が生成される。
ここで、上記第2の走行軌道や第3の走行軌道のように車両が車線内を右側又は左側に移動する場合の推奨される車両の走行軌道は、曲率が連続して変化するクロソイド曲線を含む。より具体的には形状の異なる複数のクロソイド曲線を接続した軌道となる。図19は例えば車線内を右側に移動する場合の推奨される車両の走行軌道を示した図である(尚、左側に移動する場合は左右対称の走行軌道となる)。図19に示すように車線内を右側に移動する場合の推奨される車両の走行軌道は、移動の開始点P1からステアリングを右方向に徐々に旋回させながら(即ち曲率が徐々に大きく変化させながら)第1の中継地点P2まで進む第1のクロソイド曲線101と、第1の中継地点P2からステアリングを徐々に直進方向に戻しながら(即ち曲率が徐々に小さく変化させながら)中間点P3まで進む第2のクロソイド曲線102と、中間点P3から今度はステアリングを左方向に徐々に旋回させながら(即ち曲率が徐々に大きく変化させながら)第2の中継地点P4まで進む第3のクロソイド曲線103と、その後に第2の中継地点P4からステアリングを徐々に直進方向に戻しながら(即ち曲率が徐々に小さく変化させながら)移動の終了点P5まで進む第4のクロソイド曲線104とからなる。尚、クロソイド曲線101~104による横方向の移動幅については第2の走行軌道であればP5の時点で第1の走行軌道と重複する距離、第3の走行軌道であればP5の時点で当初の終了ベクトル84と重複する距離とする。そして、CPU51は各クロソイド曲線101~104について車線内移動を行う際に生じる加速度(横G)が車両の乗員に不快感を与えない上限値(例えば0.2G)を超えることなく、更にクロソイド曲線を用いてできる限り円滑で、且つできる限り車線変更に必要な距離が短くした軌道となるように算出する。そして、算出された各クロソイド曲線101~104を接続することにより上記第2の走行軌道や第3の走行軌道が算出される。
その後、S46においてCPU51は、前記S42又はS43で生成された第1の走行軌道と、前記S44で生成された第2の走行軌道(第2の走行軌道が生成された場合のみ)と、前記S45で生成された第3の走行軌道(第3の走行軌道が生成された場合のみ)とを連結して一の走行軌道とする。前記S46で生成された走行軌道は、処理対象の開始ベクトルと終了ベクトルの組み合わせに対して生成された“カーブ区間を走行する際に推奨される走行軌道の候補”である。例えば、図18には第1の走行軌道96と第2の走行軌道97と第3の走行軌道98を連結した“カーブ区間を走行する際に推奨される走行軌道の候補”の一例を示す。
以下同様にして、前記S37で取得され更に前記S38で新たに生成された開始ベクトルと終了ベクトルの組み合わせ毎に“カーブ区間を走行する際に推奨される走行軌道の候補”を生成し、全ての開始ベクトルと終了ベクトルの組み合わせに対して“カーブ区間を走行する際に推奨される走行軌道の候補”を生成した後にS47へと移行する。
その後、S47においてCPU51は、前記S46で生成された複数の走行軌道の各候補について、走行する場合の車両挙動を考慮して車両の走行にかかるコストを算出する。コストは走行軌道としての適性を示し、コストが小さい程、走行軌道としての適性が高いことを示す。以下に前記S47のコスト算出方法の一例について説明する。
具体的には、以下の(1)~(3)の各要素に基づいて算出されたコストを加算することによって走行軌道の候補毎に最終的なコストが算出される。
(1)移動時間(又は距離)・・・移動時間[s]×1.0
(2)最大曲率・・・最大曲率×0.1
(3)ステアリングの旋回方向を切り替える回数・・・回数×5.0
(1)移動時間(又は距離)・・・移動時間[s]×1.0
(2)最大曲率・・・最大曲率×0.1
(3)ステアリングの旋回方向を切り替える回数・・・回数×5.0
先ず(1)については走行軌道の移動時間によってコストが決定し、具体的には走行軌道を走行するのに必要な時間が長い程、より高いコストが算出される、即ち推奨される走行軌道として選択され難いことが分かる。尚、カーブ区間を走行する際の車両の車速が一定であると仮定すれば、走行軌道の移動時間は移動距離の長さにも相当する。
また、(2)については走行軌道に含まれる曲線の最大の曲率を算出する。そして、算出された最大の曲率に基づいてコストを算出する。具体的には、走行軌道の最大の曲率が大きい程、走行軌道を走行するに際してより急な旋回を行うこととなり、乗員への負荷が大きいのでより高いコストが算出される、即ち推奨される走行軌道として選択され難いことが分かる。
また、(3)については走行軌道内に含まれるステアリングの旋回方向を切り替える回数に応じてコストが決定し、具体的にはステアリングの旋回方向を切り替える回数が多い程、より高いコストが算出される、即ち推奨される走行軌道として選択され難いことが分かる。
尚、前記S47において走行軌道の候補に対してコストを算出する場合には、上記(1)~(3)の全ての要素を考慮するのではなく、上記(1)~(3)の内の一部の要素のみを考慮してコストを算出しても良い。例えば、(1)と(2)のコストの合計値を算出しても良い。また、上記(1)~(3)以外の要素(例えば加減速の有無、ステアリングの旋回量など)を用いてコストを算出しても良い。
その後、S48においてCPU51は、前記S47で算出されたコストを比較し、前記S46で生成された複数の走行軌道作の候補の内からカーブ区間を走行する際に推奨される走行軌道を選択する。基本的には算出されたコストが最も小さい走行軌道の候補を、推奨される走行軌道として選択する。その後、S27へと移行し、カーブ区間以外の区間について前記S25で導出された推奨ルートに沿って走行する際に推奨される走行軌道を生成する。
一方、前記S36において車両の進行方向前方の静的走行軌道を生成する区間に、少なくとも2以上のカーブが所定距離以内の間隔で連続して存在すると判定された場合(S36:YES)には、検出された連続するカーブを含むカーブ区間を対象として以下の処理によりカーブ区間を走行する際に推奨される走行軌道を生成する。尚、連続するカーブを複数組検出した場合には、検出した全てのカーブに対応する各カーブ区間を対象として以下の処理を実行し、走行軌道を生成する。更に、連続するカーブと連続しないカーブの両方を検出した場合については、前述したS37以降の処理に加えて以下のS50以降の処理を行うこととなる。
先ず、S50においてCPU51は、連続するカーブを中間点で分割する。具体的には、図20や図21に示すように中心線81と移動平均線82とが一致しない範囲、即ち前記S34でカーブと検出される範囲が所定距離(例えば30m)以内の間隔で2箇所ある場合に、各範囲の中間(等距離)にある地点(以下、中間点という)でカーブを分割する。尚、分割する中間点では中心線81と移動平均線82とは一致することとなる(一致していない場合については連続する複数のカーブでなく一のカーブとみなされる)。また、図20や図21では連続して2つのカーブが存在する場合を示すが3つ以上のカーブが連続する場合については、それぞれのカーブの中間点でカーブを分割するようにする。
次に、S51においてCPU51は、前記S50で分割された複数のカーブの曲折方向を比較し、曲折方向が同方向か否かを判定する。尚、図20は曲折方向が異なるカーブが連続する場合であり、図21は曲折方向が同じカーブが連続する場合を示している。
そして、前記S50で分割された複数のカーブの曲折方向が異なる方向であると判定された場合(S51:NO)には、中間点において車両が走行する予定の車線の中心線上に、複数のカーブの連結点を設定する(S52)。尚、連結点は車両が走行する予定の車線内にあって、カーブの中間点における道路幅方向の線分上であればいずれの地点でも設定可能であるが、本実施形態では特に各カーブを走行する車両の走行軌道を連結するのに推奨される地点に連結点を設定する。例えば、図20は曲折方向が異なるカーブが連続する場合を示しており、図20に示すように中間点(カーブの分割点)で且つ車両が走行する予定の車線の中心線上に連結点105が設定される。
一方、前記S50で分割された複数のカーブの曲折方向が同方向であると判定された場合(S51:YES)には、中間点において車両が走行する予定の車線の中心線上よりもカーブの外側に、複数のカーブの連結点を設定する(S53)。尚、連結点はS52と同じく各カーブを走行する車両の走行軌道を連結するのに推奨される地点に設定する。例えば、図21は曲折方向が同じカーブが連続する場合を示しており、図21に示すように中間点(カーブの分割点)で且つ車両が走行する予定の車線の中心線上よりもカーブ外側に連結点105が設定される。尚、連結点105の位置を中心線に対してどの程度カーブの外側にずらして設定するかについては適宜設定可能であるが、例えば車線幅の1/3或いは1/4とする。
続いて、S54においてCPU51は、前記S25で選択された車線移動態様に従って走行予定経路を走行した場合のカーブ区間の始点における車両の位置と方位を特定した開始ベクトルと、カーブ区間の終点における車両の位置と方位を特定した終了ベクトルと、をそれぞれ取得する。
このカーブ区間の始点及び終点の位置については前記S25で選択された車線移動態様によって適宜変化させても良いし、車線移動態様に関わらず固定された条件で設定しても良い。例えば、連続するカーブの内で最も手前側にあるカーブの中心線81と移動平均線82が一致しなくなる区間の始点の所定距離(例えば20m)手前をカーブ区間の始点とし、連続するカーブの内で最も進行方向側にあるカーブの中心線81と移動平均線82が一致しなくなる区間の終点に対して所定距離だけ進行方向側に進んだ地点をカーブ区間の終点とすることが可能である。また、車両の現在位置が連続するカーブの手前である場合には車両の現在位置がカーブ区間の始点となる場合もある。また、予め地図情報にカーブとともにカーブ区間を特定する情報(例えばカーブ区間に含まれるリンクを特定する情報やカーブ区間の始点や終点の座標)についても含めるようにし、地図情報に基づいてカーブ区間を設定しても良い。
ここで、開始ベクトル及び終了ベクトルの道路の進行方向に沿った位置(前後方向の位置)については上述したカーブ区間の始点及び終点と対応する位置とする。
一方、開始ベクトル及び終了ベクトルの道路幅方向の位置については基本的には車両が走行する車線の中央(一車線の道路や車線の区分がない道路については道路の中央にも相当)とする。
更に、開始ベクトル及び終了ベクトルの方位については基本的に道路の進行方向(道路長さ方向)に平行な方向とする。
但し、例えばカーブ区間の手前で車線変更や右左折などの特殊な車両操作が要求される場合等についてはこの限りでなく、開始ベクトル及び終了ベクトルの道路幅方向の位置を車線の中央よりも左右寄りに設定しても良いし、方位についても道路の進行方向に対して傾斜して設定しても良い。
一方、開始ベクトル及び終了ベクトルの道路幅方向の位置については基本的には車両が走行する車線の中央(一車線の道路や車線の区分がない道路については道路の中央にも相当)とする。
更に、開始ベクトル及び終了ベクトルの方位については基本的に道路の進行方向(道路長さ方向)に平行な方向とする。
但し、例えばカーブ区間の手前で車線変更や右左折などの特殊な車両操作が要求される場合等についてはこの限りでなく、開始ベクトル及び終了ベクトルの道路幅方向の位置を車線の中央よりも左右寄りに設定しても良いし、方位についても道路の進行方向に対して傾斜して設定しても良い。
図20は曲折方向が異なる2つのカーブが連続するカーブ区間に対して設定される開始ベクトル83と終了ベクトル84の例を示した図である。図20に示す例では1つ目のカーブの中心線81と移動平均線82が一致しなくなる区間の始点の所定距離手前の車線中央に開始ベクトル83が設定され、2つ目のカーブの中心線81と移動平均線82が一致しなくなる区間の終点に対して所定距離だけ進行方向側に進んだ地点の車線中央に終了ベクトル84が設定される。尚、開始ベクトル83及び終了ベクトル84の方位についてはいずれも道路の進行方向(道路長さ方向)に平行な方向とする。
また、図21は曲折方向が同じ2つのカーブが連続するカーブ区間に対して設定される開始ベクトル83と終了ベクトル84の例を示した図である。図21に示す例では1つ目のカーブの中心線81と移動平均線82が一致しなくなる区間の始点の所定距離手前の車線中央に開始ベクトル83が設定され、2つ目のカーブの中心線81と移動平均線82が一致しなくなる区間の終点に対して所定距離だけ進行方向側に進んだ地点の車線中央に終了ベクトル84が設定される。尚、開始ベクトル83及び終了ベクトル84の方位についてはいずれも道路の進行方向(道路長さ方向)に平行な方向とする。
その後、S55においてCPU51は、前記S52又はS53で設定された連結点105に新たな開始ベクトル及び終了ベクトルを追加する。その結果、図22に示すように曲折方向が異なる2つのカーブが連続するカーブ区間については、分割された前半のカーブ区間について図20に示す連結点105の位置(即ち中間点の車線中央)に新たな終了ベクトル106が設定され、後半のカーブ区間について図20に示す連結点105の位置(即ち中間点の車線中央)に新たな開始ベクトル107が設定されることとなる。同じく、図23に示すように曲折方向が同じ2つのカーブが連続するカーブ区間については、分割された前半のカーブ区間について図21に示す連結点105の位置(即ち中間点の車線中央よりもカーブ外側)に新たな終了ベクトル106が設定され、後半のカーブ区間について図21に示す連結点105の位置(即ち中間点の車線中央よりもカーブ外側)に新たな開始ベクトル107が設定されることとなる。尚、図22以降では分かり易くするために中間点でカーブ区間の前半と後半を分割して離間した状態で示す。尚、新たな開始ベクトル107及び終了ベクトル106の方位についてはいずれも道路の進行方向(道路長さ方向)に平行な方向とする。
続いて、S56においてCPU51は、走行軌道が生成される対象となるカーブ区間の始点に前記S54で取得された開始ベクトル以外に新たな開始ベクトルの候補を生成する。更に、カーブ区間の終点に前記S54で取得された終了ベクトル以外に新たな終了ベクトルの候補を生成する。詳細はS39と同様であり、当初の開始ベクトル83よりもカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな開始ベクトル91を生成し、更にカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな開始ベクトル92を生成する(図15参照)。同様にして、当初の終了ベクトル84よりもカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな終了ベクトル93を生成し、更にカーブの外側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな終了ベクトル94を生成する。
また、前記S56でCPU51は、前記S55で連結点に追加した開始ベクトル及び終了ベクトルについても同様にして新たな開始ベクトル及び終了ベクトルの候補を生成する。但し、図24に示すように曲折方向が同じ2つのカーブが連続するカーブ区間については、終了ベクトル106や開始ベクトル107が既に車線中央よりもカーブ外側寄りに配置されているので、当初の終了ベクトル106や開始ベクトル107よりもカーブの内側方向に新たな開始ベクトルと終了ベクトルの候補を生成する。具体的には、当初の終了ベクトル106よりもカーブの内側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな終了ベクトル108を生成し、更にカーブの内側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな終了ベクトル109を生成する。同じく当初の開始ベクトル107よりもカーブの内側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな開始ベクトル110を生成し、更にカーブの内側方向に所定距離(例えば車線幅の1/4や1/6)移動した地点に新たな開始ベクトル111を生成する。尚、図24に示す例では新たな開始ベクトル及び終了ベクトルの候補を夫々2つ生成しているが、1つのみ或いは3つ以上生成しても良い。また、カーブの外側方向に生成することも可能である。新たな開始ベクトル及び終了ベクトルの候補を多く生成すれば、より適切な走行軌道を生成できる可能性は高くなるが、一方で走行軌道の候補が多くなるので走行軌道の算出に係る処理負荷は大きくなる。
以降のS57~S63の処理は、前記S50で分割したカーブ区間毎、且つ分割されたカーブ区間の始点と終点に位置する開始ベクトルと終了ベクトルの組み合わせ毎に実行する。例えば図22や図23に示す例ではカーブ区間が2つに分割され、前半のカーブ区間において開始ベクトルが3つ、連結点にある終了ベクトルが3つ存在し、後半のカーブ区間において連結点にある開始ベクトルが3つ、終了ベクトルが3つ存在するので、3×3×3の全27通りの組み合わせに対してS57~S63の処理を実行する。そして、全ての分割されたカーブ区間と開始ベクトルと終了ベクトルの組み合わせに対してS57~S63の処理を実行した後にS64へと移行する。
先ずS57においてCPU51は、処理対象となる分割されたカーブ区間の開始ベクトル及び終了ベクトルを各ベクトルの進行方向に通過する(即ち円弧の接線方向が各ベクトルの進行方向と一致する)最大曲率半径の円弧を算出する。
その後、S58においてCPU51は、前記S57で算出された円弧が開始ベクトルから終了ベクトルまでの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれるか否かを判定する。
そして、前記S57で算出された円弧が開始ベクトルから終了ベクトルまでの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれると判定された場合(S58:YES)には、S59へと移行する。一方、前記S57で算出された円弧が開始ベクトルから終了ベクトルまでの間において車両が走行する車線内(前記S31で取得された走行領域内)に含まれないと判定された場合(S58:NO)には、S60へと移行する。
S59においてCPU51は、前記S57で算出された開始ベクトルから終了ベクトルまでの間の円弧について第1の走行軌道として生成する。詳細については前記S42(図16)と同様であるので省略する。その後、S61へと移行する。
一方、S60においてCPU51は、前記S57で算出された円弧は走行領域をはみ出す軌道となり採用できないことから、クリッピングポイントを通過する新たな円弧を生成し、更に処理対象の開始ベクトルと終了ベクトルに夫々道路の進行方向に沿って直進して新たな円弧と接続する走行軌道を、第1の走行軌道として生成する。詳細については前記S43(図17)と同様であるので省略する。尚、クリッピングポイントの設定方法についてはS38と同様である。その後、S61へと移行する。
S61においてCPU51は、前記S54又はS55で取得された開始ベクトルから前記S59又はS60で生成された第1の走行軌道へと移動する為の第2の走行軌道を生成する。尚、処理対象となる開始ベクトルが前記S54又はS55で取得された開始ベクトルである場合については第2の走行軌道は第1の走行軌道の一部となるのでS61の処理は不要である。詳細については前記S44(図18)と同様であるので省略する。
続いて、S62においてCPU51は、前記S59又はS60で生成された第1の走行軌道から前記S54又はS55で取得された終了ベクトルへと移動する為の第3の走行軌道を生成する。尚、処理対象となる終了ベクトルが前記S54又はS55で取得された終了ベクトルである場合については第3の走行軌道は第1の走行軌道の一部となるのでS62の処理は不要である。詳細については前記S45(図18)と同様であるので省略する。
その後、S63においてCPU51は、前記S59又はS60で生成された第1の走行軌道と、前記S61で生成された第2の走行軌道(第2の走行軌道が生成された場合のみ)と、前記S62で生成された第3の走行軌道(第3の走行軌道が生成された場合のみ)とを連結して一の走行軌道とする。前記S63で生成された走行軌道は、処理対象の分割されたカーブ区間の開始ベクトルと終了ベクトルの組み合わせに対して生成された“分割されたカーブ区間を走行する際に推奨される走行軌道の候補”である。
以下同様にして、前記S50で分割したカーブ区間毎、且つ分割されたカーブ区間の始点と終点に位置する開始ベクトルと終了ベクトルの組み合わせ毎に“分割されたカーブ区間を走行する際に推奨される走行軌道の候補”を生成し、全ての分割されたカーブ区間及び開始ベクトルと終了ベクトルの組み合わせに対して“分割されたカーブ区間を走行する際に推奨される走行軌道の候補”を生成した後にS64へと移行する。
S64でCPU51は、前記S63で生成された“分割されたカーブ区間を走行する際に推奨される走行軌道の候補”の内、カーブ区間の始点から連結点へと到る前半のカーブ区間を走行する際に推奨される走行軌道の候補(以下、前半走行軌道候補という)と、連結点からカーブ区間の終点へと到る後半のカーブ区間を走行する際に推奨される走行軌道の候補(以下、後半走行軌道候補という)と、を組み合わせ可能な全パターンについて組み合わせて連結し、“連続するカーブを含むカーブ区間を走行する際に推奨される走行軌道の候補”を生成する。但し、連結する対象とするのは前半走行軌道候補の終了ベクトルと後半走行軌道候補の開始ベクトルとが一致する組み合わせ、即ち連結点で軌道が繋がる組み合わせとなる。例えばカーブ区間が2つに分割され、前半のカーブ区間において開始ベクトルが3つ、連結点にある終了ベクトルが3つ存在し、後半のカーブ区間において連結点にある開始ベクトルが3つ、終了ベクトルが3つ存在する場合については、3×3×3の全27通りの組み合わせが存在し、全部で27本の“連続するカーブを含むカーブ区間を走行する際に推奨される走行軌道の候補”が生成されることとなる。尚、カーブ区間が3以上に分割されている場合についても同様であり、連結点で各カーブ区間における推奨される走行軌道の候補を組み合わせて連結する。
更に前記S64でCPU51は、後述のS65及びS66でコストの比較を行う前に、生成された“連続するカーブを含むカーブ区間を走行する際に推奨される走行軌道の候補”の円滑化が可能である場合については走行軌道の円滑化を行う。具体的には図25に示すように特に連続する複数のカーブの曲折方向が異なる場合を対象とし、前半走行軌道候補115と後半走行軌道候補116とを組み合わせた結果、各軌道候補を連結する連結点105付近において横移動と直進とが繰り返す走行軌道となった場合において、特に連結点105の前後において車線の中心線81に沿って直進走行する区間を含まないように修正することで走行軌道を円滑化する。即ち、図25の破線で囲まれた範囲について『直進→横移動→直進→横移動→直進』となっていた軌道について、中央の直進部分を削って図18に示す横移動するクロソイド曲線で両端の直線部分の間を繋ぐことで『直進→横移動→直進』となるように修正する。その結果、最大曲率を小さくし、ステアリングの旋回方向を切り替える回数についても減らした走行軌道へと修正可能となる。
その後、S65においてCPU51は、前記S64で生成され且つ必要に応じて修正された複数の走行軌道の各候補について、走行する場合の車両挙動を考慮して車両の走行にかかるコストを算出する。コストは走行軌道としての適性を示し、コストが小さい程、走行軌道としての適性が高いことを示す。詳細については前記S47と同様であり、(1)~(3)の各要素に基づいて算出されたコストを加算することによって走行軌道の候補毎に最終的なコストが算出される。
その後、S66においてCPU51は、前記S65で算出されたコストを比較し、前記S64で生成された複数の走行軌道作の候補の内から連続するカーブを含むカーブ区間を走行する際に推奨される走行軌道を選択する。基本的には算出されたコストが最も小さい走行軌道の候補を、推奨される走行軌道として選択する。その後、S27へと移行し、カーブ区間以外の区間について前記S25で導出された推奨ルートに沿って走行する際に推奨される走行軌道を生成する。
以上詳細に説明した通り、本実施形態に係るナビゲーション装置1及びナビゲーション装置1で実行されるコンピュータプログラムでは、車両が走行する走行予定経路を取得し(S1)、特に取得した走行予定経路にカーブを含む場合に、区画線に関する情報を含む地図情報を用いて、当該カーブを含むカーブ区間を対象にして車両が走行する予定の車線の中心線に沿って配置された座標点とカーブの内側の区画線との間に通過点を設定し(S38)、カーブ区間を対象にして通過点を通過する走行軌道を、車両の走行が推奨される走行軌道として生成し(S37~S48)、生成された走行軌道に基づいて車両の運転支援を行う(S9、S10)ので、カーブ区間を走行する際に急な旋回や減速が行われることを抑制した走行軌道を車両の走行が推奨される走行軌道として生成することが可能となる。その結果、車両の乗員に負担を生じさせない適切な運転支援を実施することが可能となる。
また、通過点を設定するに際して、車両が走行する予定の車線の中心線に沿って配置された連続する所定数の座標点の平均地点を結んだ線である移動平均線を算出し(S33)、更に算出した移動平均線とカーブの内側の区画線との間に通過点を設定する(S38)ので、通過点を道路形状に基づいて適切な位置に設定することにより、カーブ区間を走行する際に急な旋回や減速が行われることを抑制した走行軌道を車両の走行が推奨される走行軌道として生成することが可能となる。
また、走行予定経路に沿って走行した場合のカーブ区間の始点における車両の位置と方位を特定した開始ベクトルを取得するとともに、走行予定経路に沿って走行した場合のカーブ区間の終点における車両の位置と方位を特定した終了ベクトルを取得し(S37)、開始ベクトルから通過点を通過して終了ベクトルへと到る走行軌道を、車両の走行が推奨される走行軌道として生成する(S37~S48)ので、車両の目的地までの全体の走行軌道の内、特にカーブを含むカーブ区間のみを対象として、そのカーブ区間を対象とした推奨される走行軌道を生成することが可能となる。また、開始ベクトルと終了ベクトルを予め定めることによってカーブ区間の走行軌道がどのような軌道となったとしても、カーブ区間の前後の走行軌道に影響を与えることがない。
また、開始ベクトル及び終了ベクトルを各ベクトルの進行方向に通過する最も大きい曲率半径の円弧が、開始ベクトルから終了ベクトルまでの間において車両が走行する車線内に含まれるか否かを判定し(S41)、円弧が車両の走行する車線内に含まれないと判定された場合に、通過点を通過する走行軌道を車両の走行が推奨される走行軌道として生成する(S43)一方で、円弧が車両の走行する車線内に含まれると判定された場合には、円弧を車両の走行が推奨される走行軌道として生成する(S42)ので、開始ベクトルから終了ベクトルまでの間で車両が車線内を維持して走行可能な範囲で、できる限り曲率を小さくすることが可能な軌道を車両の走行が推奨される走行軌道として生成することが可能となる。
また、開始ベクトルから通過点を通過して終了ベクトルへと到る複数の走行軌道の候補に対してコストを算出し(S47)、算出されたコストを比較して前数の走行軌道の候補の内から車両の走行が推奨される走行軌道を選択して生成する(S48)ので、コストを算出して比較することで多数の走行軌道の候補の内から車両の走行が最も推奨される一の走行軌道を適切に選択することが可能となる。
また、複数の走行軌道の候補について曲率が小さい走行軌道程、又は移動時間の短い走行軌道程、より少ないコストを算出する(S47)ので、走行する場合の車両挙動を考慮して車両の走行に係る負担が小さい走行軌道を車両の走行が最も推奨される走行軌道として選択することが可能となる。
また、移動平均線へのカーブの内側の区画線の最近接点より車両の車幅の1/2だけ中心線側の位置に通過点を設定するので、特に車両の車幅を考慮して開始ベクトルから終了ベクトルまでの間で車両が車線内を維持して走行可能な範囲で、最も曲率が小さくなると予想される軌道を車両の走行が推奨される走行軌道として生成することが可能となる。
また、通過点を設定するに際して、車両が走行する予定の車線の中心線に沿って配置された連続する所定数の座標点の平均地点を結んだ線である移動平均線を算出し(S33)、更に算出した移動平均線とカーブの内側の区画線との間に通過点を設定する(S38)ので、通過点を道路形状に基づいて適切な位置に設定することにより、カーブ区間を走行する際に急な旋回や減速が行われることを抑制した走行軌道を車両の走行が推奨される走行軌道として生成することが可能となる。
また、走行予定経路に沿って走行した場合のカーブ区間の始点における車両の位置と方位を特定した開始ベクトルを取得するとともに、走行予定経路に沿って走行した場合のカーブ区間の終点における車両の位置と方位を特定した終了ベクトルを取得し(S37)、開始ベクトルから通過点を通過して終了ベクトルへと到る走行軌道を、車両の走行が推奨される走行軌道として生成する(S37~S48)ので、車両の目的地までの全体の走行軌道の内、特にカーブを含むカーブ区間のみを対象として、そのカーブ区間を対象とした推奨される走行軌道を生成することが可能となる。また、開始ベクトルと終了ベクトルを予め定めることによってカーブ区間の走行軌道がどのような軌道となったとしても、カーブ区間の前後の走行軌道に影響を与えることがない。
また、開始ベクトル及び終了ベクトルを各ベクトルの進行方向に通過する最も大きい曲率半径の円弧が、開始ベクトルから終了ベクトルまでの間において車両が走行する車線内に含まれるか否かを判定し(S41)、円弧が車両の走行する車線内に含まれないと判定された場合に、通過点を通過する走行軌道を車両の走行が推奨される走行軌道として生成する(S43)一方で、円弧が車両の走行する車線内に含まれると判定された場合には、円弧を車両の走行が推奨される走行軌道として生成する(S42)ので、開始ベクトルから終了ベクトルまでの間で車両が車線内を維持して走行可能な範囲で、できる限り曲率を小さくすることが可能な軌道を車両の走行が推奨される走行軌道として生成することが可能となる。
また、開始ベクトルから通過点を通過して終了ベクトルへと到る複数の走行軌道の候補に対してコストを算出し(S47)、算出されたコストを比較して前数の走行軌道の候補の内から車両の走行が推奨される走行軌道を選択して生成する(S48)ので、コストを算出して比較することで多数の走行軌道の候補の内から車両の走行が最も推奨される一の走行軌道を適切に選択することが可能となる。
また、複数の走行軌道の候補について曲率が小さい走行軌道程、又は移動時間の短い走行軌道程、より少ないコストを算出する(S47)ので、走行する場合の車両挙動を考慮して車両の走行に係る負担が小さい走行軌道を車両の走行が最も推奨される走行軌道として選択することが可能となる。
また、移動平均線へのカーブの内側の区画線の最近接点より車両の車幅の1/2だけ中心線側の位置に通過点を設定するので、特に車両の車幅を考慮して開始ベクトルから終了ベクトルまでの間で車両が車線内を維持して走行可能な範囲で、最も曲率が小さくなると予想される軌道を車両の走行が推奨される走行軌道として生成することが可能となる。
尚、本発明は前記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の改良、変形が可能であることは勿論である。
例えば、本実施形態では、図12や図13に示すように分岐や車線の増減が無く道路が所定の曲率で円弧状に曲がるカーブや所定の角度で屈曲するカーブを対象として推奨される走行軌道を生成することとしているが、車両が道路の同一車線内を走行して通過するカーブであれば途中で分岐や車線数の増減が存在していても良い。また、車線の区分がない(区画線のない)道路については道路全体を車両が走行する車線とみなすことで同様に走行軌道の生成が可能である。
例えば、本実施形態では、図12や図13に示すように分岐や車線の増減が無く道路が所定の曲率で円弧状に曲がるカーブや所定の角度で屈曲するカーブを対象として推奨される走行軌道を生成することとしているが、車両が道路の同一車線内を走行して通過するカーブであれば途中で分岐や車線数の増減が存在していても良い。また、車線の区分がない(区画線のない)道路については道路全体を車両が走行する車線とみなすことで同様に走行軌道の生成が可能である。
また、本実施形態では地図情報に基づいて中心線81と移動平均線82を特定し、中心線81と移動平均線82とを比較してカーブの存在を特定している(S34)が、例えば車外カメラで撮像した画像に対して画像認識処理を行うことによってカーブの存在を特定しても良い。更に、連続する複数のカーブを含むカーブ区間において設定する連結点105についても地図情報を用いずに上記車外カメラで撮像した画像を用いて複数のカーブの中間点を特定し、その中間点に対して設定することも可能である。
また、本実施形態では、中心線81を車両が走行する車線の中心線としているが、一車線の道路や車線の区分がない道路については道路の中心線としても良い。
また、本実施形態では、複数のカーブが連続するカーブ区間に対して走行軌道を生成する際に、各カーブの中間点でカーブ区間を分割している(S50)が、カーブとカーブの間であれば必ずしも中間点で分割しなくても良い。各カーブの形状によって分割する位置を変えることも可能である。
また、本実施形態では、車両が取り得る複数のパターンでカーブ区間の走行軌道を生成し、生成された各走行軌道のコストを比較して最終的に推奨される走行軌道を決定しているが、予め車両が走行する車線の形状などを考慮した上で最も推奨される一のパターンのみでカーブ区間の走行軌道を生成しても良い。
また、本実施形態では、走行軌道を生成した後に生成された走行軌道に従って走行する為の車両制御を行っている(S9、S10)が、S9以降の車両制御に係る処理については省略することも可能である。例えば、ナビゲーション装置1は、走行軌道に基づく車両の制御については行わずに、推奨される走行軌道をユーザに案内する装置であっても良い。
また、本実施形態では、高精度地図情報16や施設情報17を用いてレーンネットワーク、駐車場内ネットワークを生成している(S23)が、全国の道路、駐車場を対象とした各ネットワークを予めDBに格納しておき、必要に応じてDBから読み出すようにしても良い。
また、本実施形態では、サーバ装置4が有する高精度地図情報には、道路のレーン形状(車線単位の道路形状や曲率、車線幅等)と道路に描かれた区画線(車道中央線、車線境界線、車道外側線、誘導線等)に関する情報の両方を含むが、区画線に関する情報のみを含むようにしても良いし、道路のレーン形状に関する情報のみを含むようにしても良い。例えば区画線に関する情報のみを含む場合であっても、区画線に関する情報に基づいて道路のレーン形状に関する情報に相当する情報を推定することが可能である。また、道路のレーン形状に関する情報のみを含む場合であっても、道路のレーン形状に関する情報に基づいて区画線に関する情報に相当する情報を推定することが可能である。また、「区画線に関する情報」は、車線を区画する区画線自体の種類や配置を特定する情報であっても良いし、隣接する車線間で車線変更が可能か否かを特定する情報であっても良いし、車線の形状を直接または間接的に特定する情報であっても良い。
また、本実施形態では、静的走行軌道に動的走行軌道を反映する手段として、静的走行軌道の一部を動的走行軌道に置き換えている(S7)が、置き換えるのではなく静的走行軌道を動的走行軌道に近づけるように軌道の修正を行っても良い。
また、本実施形態では、車両の操作のうち、車両の挙動に関する操作である、アクセル操作、ブレーキ操作及びハンドル操作の全てを車両制御ECU40が制御することをユーザの運転操作によらずに自動的に走行を行う為の自動運転支援として説明してきた。しかし、自動運転支援を、車両の操作のうち、車両の挙動に関する操作である、アクセル操作、ブレーキ操作及びハンドル操作の少なくとも一の操作を車両制御ECU40が制御することとしても良い。一方、ユーザの運転操作による手動運転とは車両の操作のうち、車両の挙動に関する操作である、アクセル操作、ブレーキ操作及びハンドル操作の全てをユーザが行うこととして説明する。
また、本発明の運転支援は車両の自動運転に係る自動運転支援に限られない。例えば、前記S3で生成された静的走行軌道や前記S6で生成された動的走行軌道をナビゲーション画面に表示するとともに、音声や画面等を用いた案内(例えば車線変更の案内、推奨車速の案内等)を行うことによる運転支援も可能である。また、静的走行軌道や動的走行軌道をナビゲーション画面に表示することでユーザの運転操作を支援するようにしてもよい。
また、本実施形態では、自動運転支援プログラム(図4)をナビゲーション装置1が実行する構成としているが、ナビゲーション装置1以外の車載器や車両制御ECU40が実行する構成としても良い。その場合には、車載器や車両制御ECU40は車両の現在位置や地図情報等をナビゲーション装置1やサーバ装置4から取得する構成とする。更に、サーバ装置4が自動運転支援プログラム(図4)のステップの一部または全部を実行するようにしても良い。その場合にはサーバ装置4が本願の運転支援装置に相当する。
また、本発明はナビゲーション装置以外に、携帯電話機、スマートフォン、タブレット端末、パーソナルコンピュータ等(以下、携帯端末等という)に適用することも可能である。また、サーバと携帯端末等から構成されるシステムに対しても適用することが可能となる。その場合には、上述した自動運転支援プログラム(図4参照)の各ステップは、サーバと携帯端末等のいずれが実施する構成としても良い。但し、本発明を携帯端末等に適用する場合には、自動運転支援が実行可能な車両と携帯端末等が通信可能に接続(有線無線は問わない)される必要がある。
1…ナビゲーション装置(運転支援装置)、2…運転支援システム、3…情報配信センタ、4…サーバ装置、5…車両、16…高精度地図情報、33…ナビゲーションECU、40…車両制御ECU、51…CPU、81…中心線、82…移動平均線、83…開始ベクトル、84…終了ベクトル、85…クリッピングポイント(通過点)、96…第1の走行軌道、97…第2の走行軌道、98…第3の走行軌道、105…連結点、115…前半走行軌道候補、116…後半走行軌道候補
Claims (8)
- 車両が走行する走行予定経路を取得する走行予定経路取得手段と、
前記走行予定経路にカーブを含む場合に、区画線に関する情報を含む地図情報を用いて、前記カーブを含むカーブ区間を対象にして車両が走行する予定の車線の中心線に沿って配置された座標点と前記カーブの内側の区画線との間に通過点を設定する通過点設定手段と、
前記カーブ区間を対象にして前記通過点を通過する走行軌道を、車両の走行が推奨される走行軌道として生成する走行軌道生成手段と、
前記走行軌道生成手段によって生成された走行軌道に基づいて車両の運転支援を行う運転支援手段と、を有する運転支援装置。 - 車線の中心線に沿って配置された連続する所定数の前記座標点の平均地点を結んだ線である移動平均線を算出する移動平均算出手段を備え、
前記通過点設定手段は、前記座標点と前記カーブの内側の区画線との間であって、且つ前記移動平均線と前記カーブの内側との区画線との間に前記通過点を設定する請求項1に記載の運転支援装置。 - 前記走行予定経路に沿って走行した場合の前記カーブ区間の始点における車両の位置と方位を特定した開始ベクトルを取得する開始ベクトル取得手段と、
前記走行予定経路に沿って走行した場合の前記カーブ区間の終点における車両の位置と方位を特定した終了ベクトルを取得する終了ベクトル取得手段と、を有し、
前記走行軌道生成手段は、前記開始ベクトルから前記通過点を通過して前記終了ベクトルへと到る走行軌道を、車両の走行が推奨される走行軌道として生成する請求項1又は請求項2に記載の運転支援装置。 - 前記開始ベクトル及び前記終了ベクトルを各ベクトルの進行方向に通過する最も大きい曲率半径の円弧が、前記開始ベクトルから前記終了ベクトルまでの間において車両が走行する車線内に含まれるか否かを判定する円弧判定手段を有し、
前記走行軌道生成手段は、
前記円弧が車両の走行する車線内に含まれないと判定された場合に、前記通過点を通過する走行軌道を車両の走行が推奨される走行軌道として生成し、
前記円弧が車両の走行する車線内に含まれると判定された場合には、前記円弧を車両の走行が推奨される走行軌道として生成する請求項3に記載の運転支援装置。 - 前記走行軌道生成手段は、
前記開始ベクトルから前記通過点を通過して前記終了ベクトルへと到る複数の走行軌道の候補に対してコストを算出し、
算出されたコストを比較して前記複数の走行軌道の候補の内から車両の走行が推奨される走行軌道を選択して生成する請求項3に記載の運転支援装置。 - 前記走行軌道生成手段は、
前記複数の走行軌道の候補について曲率が小さい走行軌道程、又は移動時間の短い走行軌道程、より少ないコストを算出する請求項5に記載の運転支援装置。 - 前記通過点設定手段は、前記移動平均線への前記カーブの内側の区画線の最近接点より車両の車幅の1/2だけ中心線側の位置に前記通過点を設定する請求項2に記載の運転支援装置。
- コンピュータを、
車両が走行する走行予定経路を取得する走行予定経路取得手段と、
前記走行予定経路にカーブを含む場合に、区画線に関する情報を含む地図情報を用いて、前記カーブを含むカーブ区間を対象にして車両が走行する予定の車線の中心線に沿って配置された座標点と前記カーブの内側の区画線との間に通過点を設定する通過点設定手段と、
前記カーブ区間を対象にして前記通過点を通過する走行軌道を、車両の走行が推奨される走行軌道として生成する走行軌道生成手段と、
前記走行軌道生成手段によって生成された走行軌道に基づいて車両の運転支援を行う運転支援手段と、
して機能させる為のコンピュータプログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022136691A JP2024033222A (ja) | 2022-08-30 | 2022-08-30 | 運転支援装置及びコンピュータプログラム |
JP2022-136691 | 2022-08-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024048073A1 true WO2024048073A1 (ja) | 2024-03-07 |
Family
ID=90099465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/025102 WO2024048073A1 (ja) | 2022-08-30 | 2023-07-06 | 運転支援装置及びコンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024033222A (ja) |
WO (1) | WO2024048073A1 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014133477A (ja) * | 2013-01-10 | 2014-07-24 | Toyota Motor Corp | 走行支援装置 |
JP2016084092A (ja) * | 2014-10-28 | 2016-05-19 | 富士重工業株式会社 | 車両の走行制御装置 |
JP6342104B1 (ja) * | 2017-03-27 | 2018-06-13 | 三菱電機株式会社 | 車両位置推定装置 |
JP2019105578A (ja) * | 2017-12-14 | 2019-06-27 | アイシン・エィ・ダブリュ株式会社 | 車線変更可否判定システムおよび車線変更可否判定プログラム |
JP2020134198A (ja) * | 2019-02-14 | 2020-08-31 | 株式会社デンソー | 制御用地図情報評価装置、制御用地図情報評価方法、及び制御プログラム |
-
2022
- 2022-08-30 JP JP2022136691A patent/JP2024033222A/ja active Pending
-
2023
- 2023-07-06 WO PCT/JP2023/025102 patent/WO2024048073A1/ja unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014133477A (ja) * | 2013-01-10 | 2014-07-24 | Toyota Motor Corp | 走行支援装置 |
JP2016084092A (ja) * | 2014-10-28 | 2016-05-19 | 富士重工業株式会社 | 車両の走行制御装置 |
JP6342104B1 (ja) * | 2017-03-27 | 2018-06-13 | 三菱電機株式会社 | 車両位置推定装置 |
JP2019105578A (ja) * | 2017-12-14 | 2019-06-27 | アイシン・エィ・ダブリュ株式会社 | 車線変更可否判定システムおよび車線変更可否判定プログラム |
JP2020134198A (ja) * | 2019-02-14 | 2020-08-31 | 株式会社デンソー | 制御用地図情報評価装置、制御用地図情報評価方法、及び制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2024033222A (ja) | 2024-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7347522B2 (ja) | 運転支援装置及びコンピュータプログラム | |
JP7439529B2 (ja) | 運転支援装置及びコンピュータプログラム | |
WO2022259733A1 (ja) | 運転支援装置 | |
WO2023127689A1 (ja) | 運転支援装置及びコンピュータプログラム | |
JP7443992B2 (ja) | 運転支援装置及びコンピュータプログラム | |
WO2022085320A1 (ja) | 運転支援装置及びコンピュータプログラム | |
JP7405012B2 (ja) | 運転支援装置及びコンピュータプログラム | |
JP2023097308A (ja) | 運転支援装置及びコンピュータプログラム | |
JP2023050431A (ja) | 運転支援装置及びコンピュータプログラム | |
WO2024048073A1 (ja) | 運転支援装置及びコンピュータプログラム | |
WO2024048074A1 (ja) | 運転支援装置及びコンピュータプログラム | |
JP2021117039A (ja) | 運転支援装置及びコンピュータプログラム | |
WO2023140041A1 (ja) | 運転支援装置及びコンピュータプログラム | |
WO2022209914A1 (ja) | 運転支援装置及びコンピュータプログラム | |
WO2022181669A1 (ja) | 経路探索装置及びコンピュータプログラム | |
WO2022180937A1 (ja) | 運転支援装置 | |
JP2023140801A (ja) | 運転支援装置及びコンピュータプログラム | |
JP2023107725A (ja) | 運転支援装置及びコンピュータプログラム | |
JP2022083525A (ja) | 運転支援装置及びコンピュータプログラム | |
JP2023080504A (ja) | 運転支援装置及びコンピュータプログラム | |
JP2021154927A (ja) | 運転支援装置及びコンピュータプログラム | |
CN116547186A (zh) | 针对至少部分自动化行驶的车辆的与动力学有关的行为规划 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23859843 Country of ref document: EP Kind code of ref document: A1 |