以下の例示的な実施形態等の同様の構成要素には共通の符号を付与して、重複する説明を適宜省略する。
<第1実施形態>
図1は、第1実施形態の走行システム10の概略を説明する平面図である。走行システム10は、自動バレー駐車等のように、車両16を駐車する駐車場CPにおける駐車等の走行を自動運転(半自動運転含む)によって支援する。駐車場CPには、例えば、路面の複数の区画線DLによって区切られた複数の駐車枠PF、PFaが設けられている。駐車枠PF、PFaのそれぞれを区別する必要がない場合、駐車枠PFと記載する。
車両16は、例えば、内燃機関(エンジン、図示されず)を駆動源とする自動車(内燃機関自動車)であってもよく、電動機(モータ、図示されず)を駆動源とする自動車(電気自動車、燃料電池自動車等)であってもよく、それらの双方を駆動源とする自動車(ハイブリッド自動車)であってもよい。
図1に示すように、走行システム10は、走行管理システム12と、走行支援システム14とを備える。
走行管理システム12は、駐車場CPまたは道路を管理する走行管理センター等に設けられ、車両16の走行に必要な情報等を管理する。例えば、走行管理システム12は、駐車枠PF及び走行路PWの位置情報を含む地図情報とともに、複数の仮通過点VPa、VPb、・・・、VPgの位置等を示す仮通過点情報を管理し、必要に応じて地図情報または仮通過点情報を車両16の走行支援システム14へ送信する。仮通過点VPa、VPb、・・・、VPgのそれぞれを区別する必要がない場合、仮通過点VPと記載する。仮通過点VPは、駐車場CP内の特定の位置に予め設定された点であり、連結することにより走行路PW上に直線を生成するための点である。例えば、仮通過点VPは、走行路PWが交差する位置(走行路PWの曲線領域を含む)、走行路PWの端部、及び、走行路PWの延長線上等に設けられる。仮通過点VPは、駐車場CP内に実際に設置された実体物でなくてよく、駐車枠PF及び走行路PWの位置情報に対応したデータ上の仮想的な点であってよい。
走行支援システム14は、車両16に搭載され、情報を送受信可能に無線通信等により走行管理システム12と接続されている。走行支援システム14は、仮通過点VPの位置情報を取得すると、仮通過点VPを直列に連結した直線の仮経路VWa、VWb、VWcを生成する。仮経路VWa、VWb、VWcのそれぞれを区別する必要がない場合、仮経路VWと記載する。仮経路VWは、少なくとも一部が走行路PW上に生成される。具体的には、走行支援システム14は、車両16の位置である自車位置Psから目標駐車枠(図1では、駐車枠PFa)周辺までの走行経路RWを仮経路VWの一部を採用して生成する。ここで、走行支援システム14は、仮通過点VPの近傍では連続する仮経路VW間を曲線経路CWで連結して、走行経路RWを生成する。走行支援システム14は、走行経路RWの終点から目標駐車位置等の目標位置までの入庫経路LWを生成し、走行経路RW及び入庫経路LWを連結した目標経路TWを生成する。走行支援システム14は、目標経路TWに沿って車両16を自動運転して目標位置へと導く。
図2は、走行システム10の制御系を説明するブロック図である。
図2に示すように、走行管理システム12は、通信部18と、検出部19と、走行管理装置20とを備える。
通信部18は、無線通信等によって、走行支援システム14等の外部の装置と情報を送受信する。通信部18は、走行管理装置20と情報を送受信可能に接続されている。これにより、通信部18は、走行管理装置20と走行支援システム14との通信を中継する。
検出部19は、検出対象を検出するために駐車場CP内の状況を示す場内情報を生成して出力する。検出対象は駐車場CP内の移動体及び静止体を含む。移動体は駐車場CP内で移動する物体であって、例えば、他の車両及び人物等を含む。静止体は壁及びフェンス等を含む。検出部19は、例えば、CCD(Charge Coupled Device)、または、CIS(CMOS Image Sensor)等の撮像素子を内蔵する1または複数のデジタルカメラである。検出部19は、所定のフレームレートで生成される複数のフレーム画像を含む動画、または、静止画のデータを場内情報として走行管理装置20へ出力する。検出部19は、それぞれ、広角レンズまたは魚眼レンズを有し、水平方向の140°~190°の範囲を撮影できることが好ましい。検出部19は、上方から駐車場CPの全範囲を撮像した撮像画像のデータを場内情報として生成する。尚、検出部19は、検出対象までの距離を検出する超音波ソナーまたは測距センサを有し、測距画像を場内情報の1つとして出力してもよい。検出部19は、走行管理装置20と情報を送受信可能に接続されている。検出部19は、生成した場内情報を走行管理装置20へ出力する。
走行管理装置20は、駐車場CP内の車両16の駐車を管理する。走行管理装置20は、例えば、コンピュータである。走行管理装置20は、CPU(Central Processing Unit)20aと、ROM(Read Only Memory)20bと、RAM(Random Access Memory)20cと、SSD(Solid State Drive)20dと、HDD(Hard Disk Drive)20eと、バス21とを備える。
CPU20aは、ハードウェアプロセッサの一例であって、SSD20d及びHDD20e等の不揮発性の記憶装置に記憶されたプログラムを読み出して、当該プログラムにしたがって各種の演算処理及び制御を実行する。CPU20aは、例えば、車両16の走行に必要な情報を管理する走行管理処理を実行する。
ROM20bは、各プログラム及びプログラムの実行に必要なパラメータ等を記憶する。RAM20cは、CPU20aでの演算で用いられる各種のデータを一時的に記憶する。SSD20d及びHDD20eは、書き換え可能な不揮発性の記憶装置であって、走行管理装置20の電源がオフされた場合にあってもデータを維持する。
バス21は、CPU20a、ROM20b、RAM20c、SSD20d、HDD20e、通信部18、及び、検出部19を互いに情報を送受信可能に接続する。
走行支援システム14は、複数(例えば、4個)の撮像部22と、車輪速センサ24と、制動システム25と、加速システム26と、操舵システム27と、変速システム28と、モニタ装置32と、通信部33と、走行支援装置34と、車内ネットワーク36とを備える。
複数の撮像部22は、例えば、上述した検出部19と同様のデジタルカメラである。複数の撮像部22のそれぞれは、車両16の周囲に設けられ、MVC(Multi View Camera)として機能する。例えば、複数の撮像部22は、車両16の前後左右に設けられている。これにより、複数の撮像部22は、車両16のほぼ全方位の周辺の画像を撮像できる。撮像部22の光軸は、斜め下方に向けて設定されている。従って、撮像部22は、周辺の障害物等の対象物及び区画線DLが設けられた走行路及び走行路周辺の路面を含む車両16の周辺を撮像する。撮像部22は、撮像した撮像画像のデータを周辺情報として走行支援装置34へ出力する。
車輪速センサ24は、車両16の車輪の近傍に設けられたホール素子を有する。車輪速センサ24は、車輪の回転量または単位時間当たりの回転数を検出する。車輪速センサ24は、当該回転量または回転数に対応する車輪速パルス数を示す車輪回転情報を車両情報として検出して車内ネットワーク36に出力する。
制動システム25は、車両16の減速を制御する。制動システム25は、制動部40と、制動制御部42と、制動部センサ44とを有する。制動部40は、例えば、ブレーキ及びブレーキペダル等を含み、車両16を減速させるための装置である。制動制御部42は、例えば、CPU等のハードウェアプロセッサを有するECU(Electronic Control Unit)等のマイクロコンピュータを含むコンピュータである。制動制御部42は、走行支援装置34からの指示に基づいて、制動部40を制御して、車両16の減速を制御する。制動部センサ44は、例えば、位置センサであって、制動部40がブレーキペダルの場合、制動部40の位置を検出する。制動部センサ44は、検出した制動部40の位置を示す制動部位置情報を車両情報として車内ネットワーク36に出力する。
加速システム26は、車両16の加速を制御する。加速システム26は、加速部46と、加速制御部48と、加速部センサ50とを有する。加速部46は、例えば、アクセルペダル等を含み、車両16を加速させるための装置である。加速制御部48は、例えば、CPU等のハードウェアプロセッサを有するECU等のマイクロコンピュータを含むコンピュータである。加速制御部48は、走行支援装置34からの指示に基づいて、加速部46を制御して、車両16の加速を制御する。加速部センサ50は、例えば、位置センサであって、加速部46がアクセルペダルの場合、加速部46の位置を検出する。加速部センサ50は、検出した加速部46の位置を示す加速部位置情報を車両情報として車内ネットワーク36に出力する。
操舵システム27は、車両16の進行方向を制御する。操舵システム27は、操舵部52と、操舵制御部54と、操舵部センサ56とを有する。操舵部52は、例えば、ハンドルまたはステアリングホイール等を含み、車両16の転舵輪(例えば、前側の車輪)を操作する装置である。操舵制御部54は、例えば、CPU等のハードウェアプロセッサを有するECU等のマイクロコンピュータを含むコンピュータである。操舵制御部54は、走行支援装置34からの指示舵角に基づいて、操舵部52を制御して、車両16の左右の進行方向を制御する。操舵部センサ56は、例えば、ホール素子等を含む角度センサであって、操舵部52の回転方向の位置(例えば、回転角)を出力する。操舵部センサ56は、検出した操舵部52の回転角を示す操舵角情報を車両情報として車内ネットワーク36に出力する。
変速システム28は、車両16の変速比を制御する。変速システム28は、変速部58と、変速制御部60と、変速部センサ62とを有する。変速部58は、例えば、シフトレバー等を含み、車両16の変速比及び車両16の前後の進行方向を切り替えるための装置である。変速制御部60は、例えば、CPU等のハードウェアプロセッサを有するECU等のマイクロコンピュータを含むコンピュータである。変速制御部60は、走行支援装置34からの指示に基づいて、変速部58を制御して、車両16の変速比または車両16の前後の進行方向を制御する。変速部センサ62は、ドライブ、パーキング、及び、リバース等の変速部58の位置を検出する。変速部センサ62は、検出した変速部58の位置を示す変速部位置情報を車両情報として車内ネットワーク36に出力する。
モニタ装置32は、車両16の車室内のダッシュボード等に設けられている。モニタ装置32は、表示部64と、音声出力部66と、操作入力部68とを有する。
表示部64は、走行支援装置34が送信した画像データに基づいて、画像を表示する。表示部64は、例えば、液晶ディスプレイ、または、有機EL(Electro Luminescence)ディプレイ等の表示装置である。表示部64は、例えば、走行支援に関する画像を表示する。
音声出力部66は、走行支援装置34が送信した音声データに基づいて音声を出力する。音声出力部66は、例えば、スピーカである。音声出力部66は、例えば、走行支援に関する音声を出力する。
操作入力部68は、乗員の入力を受け付ける。操作入力部68は、例えば、タッチパネルである。操作入力部68は、表示部64の表示画面に設けられている。操作入力部68は、表示部64が表示する画像を透過可能に構成されている。これにより、操作入力部68は、表示部64の表示画面に表示される画像を乗員に視認させることができる。操作入力部68は、表示部64の表示画面に表示された画像に対応した位置を乗員が触れることによって入力した指示を受け付けて、走行支援装置34へ送信する。操作入力部68は、例えば、走行支援において目標とする駐車枠の指定等の走行支援に関する入力を受け付ける。尚、操作入力部68は、タッチパネルに限らず、押しボタン式等のハードスイッチであってもよい。
通信部33は、無線通信等によって、走行管理システム12等の外部の装置と情報を送受信する。通信部33は、車内ネットワーク36を介して、走行支援装置34と情報を送受信可能に接続されている。これにより、通信部33は、走行支援装置34と走行管理システム12との通信を中継する。
走行支援装置34は、ECU等のマイクロコンピュータを含むコンピュータである。走行支援装置34は、撮像部22から撮像画像のデータを取得する。走行支援装置34は、撮像画像等に基づいて生成した画像または音声に関するデータをモニタ装置32へ送信する。走行支援装置34は、運転者への指示、及び、運転者への通知等の画像または音声に関するデータをモニタ装置32へ送信する。走行支援装置34は、走行管理装置20から取得した仮通過点情報及び地図情報78に基づいて走行経路RW及び入庫経路LWを含む目標経路TWを算出する。走行支援装置34は、各センサ24、44、50、56、62から取得した車両情報及び走行管理システム12から取得した地図情報78によって自車位置Psを算出し、当該自車位置Psに基づいて車両16を自動運転して目標位置まで目標経路TWに沿って走行させる。走行支援装置34は、CPU34aと、ROM34bと、RAM34cと、表示制御部34dと、音声制御部34eと、SSD34fとを備える。CPU34a、ROM34b及びRAM34cは、同一パッケージ内に集積されていてもよい。
CPU34aは、ハードウェアプロセッサの一例であって、ROM34b等の不揮発性の記憶装置に記憶されたプログラムを読み出して、当該プログラムにしたがって各種の演算処理及び制御を実行する。CPU34aは、例えば、自動運転を実行して車両16の走行を支援する走行支援処理を実行する。
ROM34bは、各プログラム及びプログラムの実行に必要なパラメータ等を記憶する。RAM34cは、CPU34aでの演算で用いられる各種のデータを一時的に記憶する。表示制御部34dは、走行支援装置34での演算処理のうち、主として、撮像部22で得られた画像の画像処理、表示部64に表示させる表示用の画像のデータ変換等を実行する。音声制御部34eは、走行支援装置34での演算処理のうち、主として、音声出力部66に出力させる音声の処理を実行する。SSD34fは、書き換え可能な不揮発性の記憶装置であって、走行支援装置34の電源がオフされた場合にあってもデータを維持する。
車内ネットワーク36は、CAN(Controller Area Network)等のネットワークである。車内ネットワーク36は、車輪速センサ24と、制動システム25と、加速システム26と、操舵システム27と、変速システム28と、モニタ装置32の操作入力部68と、通信部33と、走行支援装置34とを互いに情報を送受信可能に接続する。
図3は、走行システム10の機能を説明するブロック図である。
図3に示すように、走行管理装置20は、管理側処理部70と、管理側記憶部72とを備える。
管理側処理部70は、例えば、CPU20aの機能として実現される。管理側処理部70は、判定部73と、出力部74とを有する。管理側処理部70は、例えば、管理側記憶部72に記憶された走行管理プログラム77を読み込むことによって、判定部73及び出力部74として機能してよい。判定部73及び出力部74の機能の一部または全部は、ASIC(Application Specific Integrated Circuit)及びFPGA(Field-Programmable Gate Array)等の回路を含むハードウェアによって構成してもよい。
判定部73は、車両16が駐車場CPに入場したか否かを判定し、入場したと判定すると、出力部74へ出力指示を出力する。判定部73は、例えば、検出部19が検出した場内情報である駐車場CPの撮像画像に基づいて車両16が入場したと判定して、出力指示を出力してよい。判定部73は、車両16の走行支援装置34から走行支援のための情報を要求する旨の要求指示を受け付けたか否かを判定し、要求指示を受け付けたと判定すると、出力指示を出力してもよい。
出力部74は、判定部73から出力指示を受け付けると、管理側記憶部72に格納されている地図情報78及び仮通過点データベース(DB:DataBase)79に含まれる複数の仮通過点情報を、通信部18を介して走行支援システム14へ出力する。尚、出力部74は、仮通過点データベース79に含まれる全ての仮通過点情報を走行支援システム14へ出力してもよい。
管理側記憶部72は、ROM20b、RAM20c、SSD20d及びHDD20eの機能として実現される。管理側記憶部72は、管理側処理部70が実行するプログラム、プログラムの実行に必要なデータ、及び、プログラムの実行によって生成されたデータ等を記憶する。例えば、管理側記憶部72は、管理側処理部70が実行する走行管理プログラム77を記憶する。走行管理プログラム77は、CD-ROM(Compact Disc Read Only Memory)またはDVD-ROM(Digital Versatile Disc Read Only Memory)等のコンピュータで読み取り可能な記憶媒体によって提供されてよく、または、インターネット等のネットワークを介して提供されてもよい。管理側記憶部72は、走行管理プログラム77を実行する際に必要な地図情報78及び仮通過点データベース79を記憶する。地図情報78は、駐車場CP内の駐車枠PF、区画線DL、及び、走行路PWの位置等を示すとともに、空車の駐車枠PFを示す。仮通過点データベース79は、各仮通過点VPの識別情報と、各仮通過点VPの位置情報とを関連付ける。仮通過点データベース79は、地図情報78の一部であってもよい。
走行支援装置34は、支援側処理部80と、支援側記憶部82とを備える。
支援側処理部80は、例えば、CPU34aの機能として実現される。支援側処理部80は、支援側取得部84と、設定部85と、運転支援部86とを有する。支援側処理部80は、走行支援プログラム87を読み込むことによって、支援側取得部84、設定部85及び運転支援部86として機能してよい。支援側取得部84、設定部85及び運転支援部86の一部または全部は、ASIC及びFPGA等の回路を含むハードウェアによって構成してもよい。
支援側取得部84は、通信部33を介して、走行管理装置20から取得した地図情報78及び複数の仮通過点情報を設定部85へ出力する。支援側取得部84は、走行管理装置20から取得した地図情報78、撮像部22から取得した周辺情報及び各センサ24、44、50、56、62から取得した車両情報を運転支援部86へ出力する。
設定部85は、地図情報78及び複数の仮通過点情報に基づいて、車両16の位置である自車位置Psから目標駐車枠内の目標位置までの目標経路TWを生成する。具体的には、設定部85は、地図情報78に含まれる駐車枠PFのうち、空車の駐車枠PFのいずれかを目標駐車枠として設定する。設定部85は、複数の仮通過点情報に基づいて、自車位置Ps及び複数の仮通過点VPを連結して、目標駐車枠周辺に達するまでに互いに連結された複数の仮経路VWを生成する。設定部85は、例えば、複数の仮通過点VPを直列に連結して目標駐車枠周辺まで分岐しない1本の線となるように複数の仮経路VWを生成する。設定部85は、一の仮経路VWの方向と次の仮経路VWの方向とから車両偏向角を算出する。車両偏向角は、一の仮経路VWから次の仮経路VWに方向転換する際に必要な車両16の回転角である。従って、設定部85は、一の仮経路VWの方向から車両16が回転する方向に沿った次の仮経路VWの方向までの角度を車両偏向角として算出してよい。設定部85は、一の仮経路VWと次の仮経路VWとを連結するために、車両偏向角に応じた曲線経路CWを設定する。例えば、設定部85は、曲線経路CWの曲率の積分値が車両偏向角θとなるように曲線経路CWを設定する。
設定部85は、一の仮経路VW上の位置であって、車両偏向角が算出された中間の仮通過点VPから初期距離の位置(以下、初期位置)に、曲線経路CWの始点の接線方向と一の仮経路VWとが平行になるように曲線経路CWの始点を配置する。初期距離は、予め設定された距離であって、支援側記憶部82に格納されている。例えば、車両偏向角が直角の場合、一の仮経路VW上の位置であって、中間の仮通過点VPから初期距離の初期位置に曲線経路CWの始点を配置すると、曲線経路CWの終点が次の仮経路VW上に配置されるように、初期距離は設定される。尚、曲線経路CWの始点及び終点は、曲線経路CWの一端及び他端の一例である。
設定部85は、曲線経路CWの始点を配置した状態で曲線経路CWの終点が次の仮経路VWからずれていると、曲線経路CWの終点と次の仮経路VWとの距離である補正距離に基づいて曲線経路CWの位置を補正する。具体的には、設定部85は、曲線経路CWの始点を一の仮経路VW上に配置した状態において、一の仮経路VWに平行な方向における曲線経路CWの終点と次の仮経路VWとの距離を補正距離として算出する。設定部85は、曲線経路CWの始点を当該補正距離に基づいて一の仮経路VWに沿って移動させて補正する。これにより、設定部85は、曲線経路CWの始点を一の仮経路VW上に配置するとともに、終点を次の仮経路VW上に配置する。ここで、曲線経路CWの曲率の積分値が車両偏向角θと等しく、かつ、曲線経路CWの始点の接線方向と一の仮経路VWとが平行になるように曲線経路CWの始点が一の仮経路VW上に配置されているので、曲線経路CWの終点は次の仮経路VWと平行になる。
設定部85は、一の仮経路VWの一部と次の仮経路VWの一部とを曲線経路CWによって連結する。具体的には、設定部85は、曲線経路CWの始点が配置された一の仮経路VW上の位置と曲線経路CWの始点とを連結し、曲線経路CWの終点が配置された次の仮経路VW上の位置と曲線経路CWの終点とを連結する。同様に、設定部85は、自車位置Psから目標駐車枠周辺までの仮経路VWの各対を曲線経路CWで連結して、目標駐車枠周辺までの走行経路RWを生成する。設定部85は、走行経路RWの終点から目標駐車枠内の目標位置までの入庫経路LWを設定する。設定部85は、走行経路RWと入庫経路LWとを連結して目標経路TWを生成し、運転支援部86へ出力する。
運転支援部86は、車両16を自動運転して目標位置へと走行させる。具体的には、運転支援部86は、設定部85から目標経路TWを取得すると、地図情報78、周辺情報及び車両情報に基づいて自車位置Psを算出しつつ、制御部42、48、54、60を制御して車両16を目標経路TWに沿って走行させて、目標位置へと走行させる。
支援側記憶部82は、ROM34b、RAM34c、及び、SSD34fの機能として実現される。支援側記憶部82は、支援側処理部80が実行するプログラム、プログラムの実行に必要なデータ、及び、プログラムの実行によって生成されるデータ等を記憶する。支援側記憶部82は、例えば、支援側処理部80が実行する走行支援プログラム87を記憶する。走行支援プログラム87は、CD-ROMまたはDVD-ROM等のコンピュータで読み取り可能な記憶媒体によって提供されてよく、または、インターネット等のネットワークを介して提供されてもよい。支援側記憶部82は、走行支援プログラム87の実行に必要な初期曲率、初期変化率、初期距離、地図情報78及び仮通過点情報を記憶する。支援側記憶部82は、走行支援プログラム87の実行によって生成される目標経路TW及び車両16の自車位置Ps等のデータを一時的に記憶する。
図4及び図6は、仮経路VW間の曲線経路CWの設定を説明する平面図である。図5及び図7は、曲線経路CWの曲率及び曲線経路CW上の移動距離の関係を示すグラフである。図4及び図6において左側に矢印で示す方向をXY方向とする。図5及び図7の縦軸は曲線経路CW上の車両16の曲率を示し、横軸は曲線経路CW上における移動距離を示す。図4及び図5は、補正前の図である。図6及び図7は、補正後の図である。
図4に示すように、設定部85は、複数(例えば、2個)の仮通過点VPa、VPbの位置情報を取得すると、自車位置Psと次の仮通過点VPaとを連結した第1仮経路VWaと、次の仮通過点VPaと次の次の仮通過点VPbとを連結した第2仮経路VWbとを生成する。仮通過点VPa、VPbは第2仮通過点及び第3仮通過点の一例である。設定部85は、第1仮経路VWaと第2仮経路VWbとの間の角度を車両偏向角θとして算出する。
設定部85は、車両偏向角θに基づいて曲線経路CWを設定する。ここで、図5に示す初期曲率は予め定められて支援側記憶部82に格納された値である。初期曲率は一定であってよく、例えば、車両16の最大旋回曲率である。初期曲率に達するまでの車両16の曲率の変化率(以下、初期変化率)は、予め定められて支援側記憶部82に格納された値である。初期変化率は、図5の台形における脚(即ち、上辺及び底辺以外の辺)の傾きである。初期変化率は一定であってよく、この場合、対応する曲線経路CWの部分はクロソイド曲線となる。ここで、車両偏向角θは、移動距離MD、移動距離MDの関数である曲率χ(MD)、及び、曲線経路CWの全長である総移動距離Dを用いた以下の式(1)で表すことができる。従って、図5に示すハッチング領域の台形の面積は車両偏向角θとなる。尚、移動距離MDの“0”に対応する位置は曲線経路CWの始点SPであってよい。
設定部85は、車両偏向角θを算出すると、式(1)に基づいて、曲線経路CWの長さである総移動距離を算出する。尚、設定部85は、総移動距離に代えて、初期曲率となっている領域(即ち、円弧の領域)の曲線経路CWの長さである円弧距離を算出してもよい。設定部85は、総移動距離または円弧距離を算出して、曲線経路CWを生成する。
図4に示すように、設定部85は、第1仮経路VWa上において、中間の仮通過点VPaから予め定められた初期距離だけ離れた初期位置に、曲線経路CWの始点SPの接戦方向が第1仮経路VWaと平行になるように、曲線経路CWの始点SPを配置する。ここで、曲線経路CWの終点EPが第2仮経路VWb上と異なる位置になり、終点EP以降の経路が第2仮経路VWbからずれると、設定部85は、曲線経路CWの始点SPの位置を補正する。
具体的には、設定部85は、第1仮経路VWaと平行な方向における曲線経路CWの終点EPと第2仮経路VWbとの距離である補正距離を算出する。図6及び図7に示すように、設定部85は、図6に一点鎖線で示す曲線経路CWの位置から補正距離だけ曲線経路CWの始点SPを第1仮経路VWaに沿って移動させる。これにより、設定部85は、曲線経路CWの始点SPを第1仮経路VWa上に配置して、曲線経路CWの終点EPを第2仮経路VWb上に配置する。設定部85は、自車位置Psまたは第1仮経路VWaの途中部と曲線経路CWの始点SPとを連結し、曲線経路CWの終点EPと第2仮経路VWbの途中部または次の次の仮通過点VPbとを連結することによって、自車位置Psから仮通過点VPbまでの経路を生成する。ここで、車両偏向角θと曲線経路CWの曲率の積分値は等しいので、曲線経路CWの終点EPの接戦方向は第2仮経路VWbと平行になる。運転支援部86は、各移動距離において図7に示す曲率となるように操舵部52の操舵角を制御することで、設定した走行経路RWの曲線経路CWに沿って車両16を走行させることができる。
設定部85は、仮通過点VPb以降に関しても同様に経路を設定することで、目標駐車枠周辺までの走行経路RWを生成する。例えば、設定部85は、図1に示す仮通過点VPaと次の仮通過点VPbとを連結した仮経路VWbと、次の仮通過点VPbと次の次の仮通過点VPcとを連結した仮経路VWcとを生成する。この場合、仮通過点VPa、VPb、VPcは、それぞれ第1仮通過点、第2仮通過点及び第3仮通過点の一例である。設定部85は、仮経路VWbと仮経路VWcとの間の車両偏向角θから総移動距離または円弧距離を算出して、初期曲率及び初期変化率に基づいて曲線経路CWを生成する。設定部85は、最初の仮通過点VPaから初期距離の初期位置に曲線経路CWの始点SPを配置して、終点EPが仮経路VWcからずれている場合、補正距離を算出する。設定部85は、仮経路VWc上を算出した補正距離だけ曲線経路CWの始点SPを移動させて、曲線経路CWの位置を補正する。設定部85は、前の曲線経路CWの終点EPまたは仮経路VWbの途中部と曲線経路CWの始点SPとを連結し、曲線経路CWの終点EPと次の仮通過点VPcまたは仮経路VWcの途中部とを連結することによって、仮通過点VPcまでの経路を生成する。
図8は、支援側処理部80が実行する走行支援処理のフローチャートである。支援側処理部80は、走行支援プログラム87を読み込むことによって、走行支援処理を実行する。
図8に示すように、走行支援処理では、支援側取得部84が、地図情報78及び仮通過点情報を走行管理装置20から取得したか否かを判定する(S102)。支援側取得部84は、地図情報78及び仮通過点情報を取得するまで待機状態となる(S102:No)。支援側取得部84は、地図情報78及び仮通過点情報を取得すると、地図情報78及び仮通過点情報を設定部85へ出力するとともに、地図情報78を運転支援部86へ出力する(S102:Yes)。
設定部85は、取得した地図情報78に基づいて目標駐車枠内の目標位置を設定する(S104)。尚、設定部85は、地図情報78に含まれる空車の駐車枠PFから目標駐車枠を選択してもよく、操作入力部68を介して運転手等の乗員から目標駐車枠の入力を受け付けてもよい。設定部85は、自車位置Psから目標駐車枠の周辺までの複数の仮経路VWを生成する(S106)。具体的には、設定部85は、取得した仮通過点情報に基づいて、複数の仮通過点VPを連結して目標駐車枠周辺まで直列に接続された複数の仮経路VWを生成する。
設定部85は、いずれかの仮通過点VPの車両偏向角θを算出する(S108)。設定部85は、最初、自車位置Psと自車位置Psの次の仮通過点VPとを連結した一の仮経路VWの方向と、当該次の仮通過点VPと次の次の仮通過点VPとを連結した次の仮経路VWの方向とに基づいて、当該次の仮通過点VPの車両偏向角θを算出してよい。
設定部85は、車両偏向角θに基づいて曲線経路CWを生成する(S110)。設定部85は、例えば、車両偏向角θとなるように曲線経路CWの長さである総移動距離または初期曲率の部分の長さである円弧距離を算出する。設定部85は、初期曲率と、初期変化率と、総移動距離または円弧距離とに基づいて曲線経路CWを設定してよい。
設定部85は、曲線経路CWの始点SPを配置する(S112)。具体的には設定部85は、曲線経路CWの始点SPの接線方向が一の仮経路VWと平行になるように、かつ、車両偏向角θの算出対象となった次の仮通過点VPから一の仮経路VW上の初期距離の初期位置に曲線経路CWの始点SPを配置する。
設定部85は、曲線経路CWの始点SPの位置に補正が必要か否かを判定する(S114)。設定部85は、例えば、曲線経路CWの終点EPが次の仮経路VW上に配置されている場合、補正が不要と判定し、曲線経路CWの終点EPが次の仮経路VWからずれている場合、補正が必要と判定する。設定部85は、補正が不要と判定すると(S114:No)、ステップS120以降を実行する。
設定部85は、補正が必要と判定すると(S114:Yes)、補正距離を算出する(S116)。設定部85は、例えば、一の仮経路VWに平行な方向における曲線経路CWの終点EPと次の仮経路VWとの距離を補正距離として算出する。設定部85は、一の仮経路VWに沿って補正距離だけ初期位置から曲線経路CWの始点SPを移動させて、曲線経路CWの位置を補正する(S118)。
設定部85は、目標駐車枠の周辺までの走行経路RWが完成したか否かを判定する(S120)。具体的には、設定部85は、目標駐車枠まで連結された複数の仮通過点VPのうち、最後の仮通過点VP以外の仮通過点VPに対してステップS108以降の処理を実行して、仮通過点VPの前後の仮経路VWを曲線経路CWで連結したら、走行経路RWが完成したと判定する。
設定部85は、走行経路RWが完成するまで、ステップS108以降を繰り返す(S120:No)。尚、設定部85は、ステップS108からS118の2回目以降の実行では、自車位置Psに代えて仮通過点VPと次の仮通過点VPとを連結した仮経路VWの方向と、次の仮通過点VPと次の次の仮通過点VPとを連結した仮経路VWの方向とに基づいて、当該次の仮通過点VPの車両偏向角θを算出する。設定部85は、車両偏向角θに応じた曲線経路CWによって、当該次の仮通過点VPの前後の仮経路VWを連結する。
設定部85は、走行経路RWが完成すると(S120:Yes)、走行経路RWの終点から目標駐車枠内の目標位置までの経路である入庫経路LWを生成する(S122)。設定部85は、走行経路RWの終点及び入庫経路LWの始点を連結して目標経路TWを生成して、運転支援部86へ出力する(S124)。
運転支援部86は、目標経路TWを取得すると、制御部42、48、54、60を制御して、車両16の自動運転を開始する(S126)。運転支援部86は、自動運転中に、撮像部22が撮像した周辺情報及びセンサ24、44、50、56、62から取得した車両情報に基づいて自車位置Psを算出する(S128)。運転支援部86は、自車位置Psが目標経路TWから位置ずれしていないか否かを判定する(S130)。運転支援部86は、例えば、目標経路TWからの距離が閾値距離以上の場合、位置ずれしていると判定してよい。運転支援部86は、自車位置Psが位置ずれしてない場合(S130:No)、ステップS134以降を実行する。
運転支援部86は、自車位置Psが位置ずれしていると判定すると(S130:Yes)、設定部85は、ずれている自車位置Psから目標位置までの目標経路TWを再設定する(S132)。尚、設定部85は、上述のステップS106以降の処理と同様の処理によって、目標経路TWを再設定してよい。
運転支援部86は、自車位置Psが目標位置に達したか否かを判定する(S134)。運転支援部86は、自車位置Psが目標位置に達していない場合(S134:No)、ステップS128以降を繰り返す。運転支援部86は、自車位置Psが目標位置に達すると(S134:Yes)、自動運転を終了する(S136)。これにより、支援側処理部80は、走行支援処理を終了する。
上述したように、走行支援装置34は、自車位置Psまたは仮通過点VPによって生成された一の仮経路VWに曲線経路CWの始点SPを配置した状態における次の仮経路VWと曲線経路CWの終点EPとの距離に基づいて、曲線経路CWの位置を補正している。これにより、走行支援装置34は、一対の仮経路VW、VW間の角度、即ち、車両偏向角θに応じた曲線経路CWによって、一対の仮経路VWを適切に連結することができる。この結果、走行支援装置34は、車両偏向角θが大きい場合(例えば、90°以上)であっても、一対の仮経路VWを曲線経路CWによって適切に連結することができる。
走行支援装置34は、一方の仮経路VWに曲線経路CWの始点SPを配置した状態で、他方の仮経路VWに平行な方向における他方の仮経路VWと曲線経路CWの終点EPとの距離を補正距離とし、一方の仮経路VW上で当該補正距離だけ曲線経路CWの始点SPの位置を移動させて補正している。これにより、走行支援装置34は、精度よく曲線経路CWの始点SP及び終点EPを仮経路VW上に配置することができる。
<第2実施形態>
初期曲率または初期変化率を変更して曲線経路CWを設定する第2実施形態について説明する。
第2実施形態の設定部85は、初期曲率または初期変化率を変更してよい。例えば、設定部85は、車両16の運転手等の乗員が設定したモードに応じて、初期曲率または初期変化率を変更してよい。
図9は、初期曲率を変更した曲率に基づく曲線経路CWの一例を説明する図である。図9は、図5及び図7に対応する図である。
図9に示すように、設定部85は、細実線の台形で示す初期曲率及び初期変化率による曲線経路CW、または、太線の台形で示す初期曲率と異なる曲率(以下、変更曲率)による曲線経路CWのいずれかで走行経路RWを設定してもよい。変更曲率は、予め定められた値であってもよく、車両16の周辺の状況または運転手等によって変更可能であってもよい。変更曲率は、例えば、初期曲率よりも小さい。この場合、設定部85は、変更曲率に基づいて、太線の台形の面積が車両偏向角θと同じになるように、総移動距離または円弧距離を設定する。換言すれば、太線ハッチングで示す領域の面積がドットハッチングで示す領域の面積と等しくなるように、設定部85は、変更曲率に基づいて総移動距離または円弧距離を設定する。設定部85は、変更曲率、初期変化率、及び、総移動距離または円弧距離に基づいて、曲線経路CWを設定する。これにより、変更曲率が初期曲率よりも小さい場合、曲線経路CWは、半径の大きい円弧、即ち、緩やかな曲線を含む。
図10は、初期曲率及び初期変化率を変更した曲率及び変化率に基づく曲線経路CWの一例を説明する図である。図10は、図5及び図7に対応する図である。
図10に示すように、設定部85は、細実線の台形で示す初期曲率及び初期変化率による曲線経路CW、または、太線の台形で示す変更曲率及び初期変化率と異なる変化率(以下、変更変化率)による曲線経路CWのいずれかによって走行経路RWを設定してもよい。変更変化率は、予め定められた値であってもよく、車両16の周辺の状況または運転手等によって変更可能であってもよい。変更変化率は、例えば、初期変化率よりも小さい。この場合、設定部85は、変更曲率及び変更変化率に基づいて、太線の台形の面積が車両偏向角θと同じになるように、総移動距離または円弧距離を設定する。換言すれば、太線ハッチングで示す領域の面積がドットハッチングで示す領域の面積と等しくなるように、設定部85は、変更曲率及び変更変化率に基づいて総移動距離または円弧距離を設定する。設定部85は、変更曲率、変更変化率、及び、総移動距離または円弧距離に基づいて、曲線経路CWを設定する。これにより、変更変化率が初期変化率よりも小さい場合、曲線経路CWは、半径の大きい円弧、即ち、緩やかな曲線を含むとともに、緩やかに曲率を変化させる曲線を含む。
図11は、初期変化率を変更した2つの変化率に基づく曲線経路CWの一例を説明する図である。図11は、図5及び図7に対応する図である。
図11に示すように、設定部85は、太線の台形で示すように、初期変化率よりも小さい2つの変化率(以下、第1変更変化率及び第2変更変化率)に基づいて曲線経路CWを設定してもよい。第1変更変化率は曲線経路CWの始点SPの側の曲線の曲率の変化率を示す。第1変更変化率は曲線経路CWの終点EPの側の曲線の曲率の変化率を示す。第1変更変化率は、第2変更変化率と異なる。第1変更変化率及び第2変更変化率は、予め定められた値であってもよく、車両16の周辺の状況または運転手等によって変更可能であってもよい。第1変更変化率は、第2変更変化率よりも大きくてもよく、または、小さくてもよい。この場合、設定部85は、太線の台形の面積が車両偏向角θと同じになるように、総移動距離または円弧距離を設定する。換言すれば、太線ハッチングで示す領域の面積がドットハッチングで示す領域の面積と等しくなるように、設定部85は、第1変更変化率及び第2変更変化率に基づいて総移動距離または円弧距離を設定する。設定部85は、初期曲率、第1変更変化率、第2変更変化率、及び、総移動距離または円弧距離に基づいて、曲線経路CWを設定する。これにより、曲線経路CWは、半径の大きい円弧、即ち、緩やかな曲線を含むとともに、緩やかに曲率を変化させる曲線を含む。
図12は、第2実施形態の走行支援処理のフローチャートである。第1実施形態の走行支援処理のステップと同様のステップについては説明を省略または簡略化する。
図12に示すように、第2実施形態の走行支援処理では、第1実施形態と同様に、支援側処理部80が、ステップS102からS108までを実行する。
設定部85は、初期モードか否かを判定する(S232)。設定部85は、例えば、表示部64にモード設定画面を表示させて、操作入力部68を介して乗員から受け付けたモード設定入力に基づいて、初期モードか否かを判定してよい。設定部85は、初期モードの場合(S232:Yes)、第1実施形態と同様に初期曲率及び初期変化率に基づいて曲線経路CWを設定してよい(S110)。設定部85は、初期モードでない場合(S232:No)、変更曲率、変更変化率、第1変更変化率及び第2変更変化率の少なくともいずれか1つを採用して曲線経路CWを設定する(S234)。
設定部85は、生成した曲線経路CWによって、ステップS112以降の処理を第1実施形態と同様に実行する。
上述したように、第2実施形態の走行支援装置34は、モードに応じて、曲線経路CWの曲率及び変化率を変更するので、曲線経路CWの自由度を向上させることができる。
走行支援装置34は、例えば、初期曲率よりも小さい変更曲率によって、緩やかな円弧を含む曲線経路CWを生成することができる。これにより、走行支援装置34は、曲線経路CWを走行中の乗員の快適性を向上させることができる。
走行支援装置34は、例えば、初期変化率よりも小さい変更変化率によって、緩やかに曲率を変化させる曲線経路CWを生成することができる。これにより、走行支援装置34は、曲線経路CWを走行中の乗員の快適性を向上させることができる。
走行支援装置34は、例えば、互いに異なる第1変更変化率及び第2変更変化率によって曲線経路CWを設定することにより、走行路PWの状況等に応じた適切な曲線経路CWを設定することができる。
上述した各実施形態の構成の機能、接続関係、個数、配置等は、発明の範囲及び発明の範囲と均等の範囲内で適宜変更、削除等してよい。各実施形態を適宜組み合わせてもよい。各実施形態の各ステップの順序を適宜変更してよい。
上述の実施形態では、設定部85が、曲線経路CWの始点SPを仮経路VW上に配置して補正距離を算出する例を挙げたが、補正距離の算出方法はこれに限定されない。例えば、設定部85は、曲線経路CWの終点EPを仮経路VW上に配置して、曲線経路CWの始点SPと仮経路VWとの距離に基づいて補正距離を算出してよい。この場合、曲線経路CWの終点EP及び始点SPが、曲線経路CWの一端及び他端の例となる。
上述の実施形態では、設定部85が車両偏向角θを算出して、走行経路RWを生成する例を挙げたが、走行経路RWの生成方法はこれに限定されない。例えば、設定部85は、走行管理装置20から仮通過点情報とともに車両偏向角θの情報を取得して、走行経路RWを生成してもよい。
上述の実施形態では、設定部85が車両偏向角θから総移動距離または円弧距離を算出して、走行経路RWを生成する例を挙げたが、走行経路RWの生成方法はこれに限定されない。例えば、設定部85は、車両偏向角θに関連付けられた総移動距離または円弧距離を支援側記憶部82から取得して、走行経路RWを生成してもよい。この場合、支援側記憶部82は、車両偏向角θと、総移動距離または円弧距離とを関連付けた車両偏向角データベースを記憶してよい。または、設定部85は、車両偏向角θに関連付けられた曲線経路CWを支援側記憶部82から取得して、走行経路RWを生成してもよい。この場合、支援側記憶部82は、車両偏向角θと、曲線経路CWとを関連付けた車両偏向角データベースを記憶してよい。
上述の第2実施形態では、設定部85がモードに応じて曲線経路CWを変更する例を挙げたが、設定部85は他の条件に基づいて曲線経路CWを変更してもよい。例えば、設定部85は、駐車場CP内、例えば、走行路PW上の障害物等を含む物体の有無の状況等に応じて、曲線経路CWを変更してもよい。更に、設定部85は、変更曲率、変更変化率、第1変更変化率及び第2変更変化率を物体の位置等に応じて適切に変更してもよい。
上述の第2実施形態では、設定部85が初期曲率を小さくした変更曲率による曲線経路CWで走行経路RWを設定する例を挙げたが、変更曲率は初期曲率より大きくしてもよい。この場合、設定部85は、障害物等の物体がある場合でも、当該物体を避けた走行経路RWを設定することができる。
上述の第2実施形態では、設定部85が初期変化率を小さくした変更変化率による曲線経路CWで走行経路RWを設定する例を挙げたが、変更変化率は初期変化率よりも大きくしてもよい。この場合、設定部85は、障害物等の物体がある場合でも、当該物体を避けた走行経路RWを設定することができる。