(57)【特許請求の範囲】
【請求項１】
始端から終端までが規定された走行経路であって各々が異なるパターンである複数の走行経路パターンを記憶する記憶手段と、
その記憶手段に記憶された複数の走行経路パターンのうち所定の走行経路パターンを選択する第１選択手段と、
その第１選択手段により選択された走行経路パターンの始端を車両の現在位置とした走行経路を、第１仮経路として生成する第１仮経路生成手段と、
その第１仮経路生成手段により生成された第１仮経路に沿って車両を走行させたと仮定した場合に、前記車両が目標位置へ到着可能か否かを判定する第１判定手段と、
その第１判定手段により到着不可能と判定された場合に、前記複数の走行経路パターンのうち所定の走行経路パターンを選択する第２選択手段と、
その第２選択手段により選択された走行経路パターンの始端を前記第１仮経路の終端とし、前記第１仮経路と前記第２選択手段により選択された走行経路パターンとを繋げた走行経路を、第２仮経路として生成する第２仮経路生成手段と、
その第２仮経路生成手段により生成された第２仮経路に沿って車両を走行させたと仮定した場合に、前記車両が目標位置へ到着可能か否かを判定する第２判定手段と、
その第２判定手段により到着可能と判定された場合には、その判定した第２仮経路を用いて、または、前記第１判定手段により到着可能と判定された場合には、その判定した第１仮経路を用いて、前記車両を前記現在位置から前記目標位置まで走行させるための走行経路を生成する走行経路生成手段と、
前記現在位置における車両の操舵角またはハンドル角を検出する検出手段とを備え、
前記複数の走行経路パターンの各々には、各走行経路を前記車両が走行する場合の操舵角またはハンドル角が規定されており、
前記第１選択手段は、前記複数の走行経路パターンのうち、前記複数の走行経路パターンの各々に規定されている操舵角と、前記検出手段により検出される操舵角との差が小さい走行経路パターンを、または、前記複数の走行経路パターンの各々に規定されているハンドル角と、前記検出手段により検出されるハンドル角との差が小さい走行経路パターンを、他の走行経路パターンよりも優先して選択することを特徴とする走行制御装置。
【請求項２】
前記複数の走行経路パターンの各々は、各走行経路を前記車両が走行する場合の操舵角またはハンドル角が規定されており、
前記第２選択手段は、前記複数の走行経路パターンのうち、前記複数の走行経路パターンの各々に規定されている操舵角と、前記第１仮経路として生成された走行経路パターンに規定されている操舵角との差が小さい走行経路パターンを、または、前記複数の走行経路パターンの各々に規定されているハンドル角と、前記第１仮経路として生成された走行経路パターンに規定されているハンドル角との差が小さい走行経路パターンを、他の走行経路パターンよりも優先して選択することを特徴とする請求項１に記載の走行制御装置。
【請求項３】
前記第１判定手段により到着不可能と判定された場合に、前記第１選択手段が選択した走行経路パターンとは別の走行経路パターンを、前記複数の走行経路パターンのうちから前記第１選択手段に選択させる選択制御手段を備え、
前記第２選択手段は、前記選択制御手段により前記第１選択手段が前記複数の走行経路パターンの全てを選択し、且つ、その全ての走行経路パターンについて前記第１仮経路生成手段が第１仮経路を生成し、その全ての第１仮経路について、前記第１判定手段が到着不可能と判定した場合に、前記複数の走行経路パターンのうち所定の走行経路パターンを選択することを特徴とする請求項１または２に記載の走行制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、走行制御装置に関し、特に、予め用意しておく走行経路パターンの数を抑制しつつ、車両を基準位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる走行制御装置に関するものである。
【背景技術】
【０００２】
従来より、運転者が自車両を目標位置まで走行させる場合に、自車両を現在の車両位置から目標位置まで走行させることが可能な走行経路を生成し、運転者がハンドル操作を行わなくても、自車両が走行経路に沿って走行するように自車両の走行を制御する走行制御装置が知られている。この種の走行制御装置に関し、次の特許文献１に記載の走行制御装置では、運転者が走行経路の生成を指示すると、自車両を現在の車両位置から後退により目標位置へ走行させることが可能な走行経路の生成が試みられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２８４９６９号公報（第００６２段落など）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載の走行制御装置は、複数の走行経路パターンを繋ぎ合わせた走行経路を生成するものの、走行経路パターンの種類があまりない上、単純な走行経路しか生成しないものである。そのため、自車両を現在の車両位置から目標位置まで走行させる走行経路が生成される可能性が低かった。そこで、走行経路パターンの種類を増やすことが考えられるが、走行経路パターンの数を増やすにしても、走行経路パターンを記憶しておく記憶手段の記憶容量によって数が制限されるという問題が生じる。
【０００５】
本発明は、上述した問題点を解決するためになされたものであり、予め用意しておく走行経路パターンの数を抑制しつつ、車両を基準位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる走行制御装置を提供することを目的としている。
【課題を解決するための手段および発明の効果】
【０００６】
請求項１記載の走行制御装置によれば、複数の走行経路パターンのうち、所定の走行経路パターンが第１選択手段により選択されると、その第１選択手段により選択された走行経路パターンの始端を車両の現在位置とした走行経路が、第１仮経路として第１仮経路生成手段により生成され、その第１仮経路に沿って車両に走行させたと仮定した場合にその車両が目標位置へ到着可能か否かが第１判定手段により判定される。第１判定手段により到着不可能という判定がされると、複数の走行経路パターンのうち、所定の走行経路パターンが第２選択手段により選択され、その選択された走行経路パターンの始端を第１仮経路の終端とし、第１仮経路と、第２選択手段により選択された走行経路パターンとを繋げた走行経路が、第２仮経路として第２仮経路生成手段により生成される。そして、その第２仮経路に沿って車両に走行させたと仮定した場合に、車両が目標位置へ到着可能か否かが第２判定手段により判定される。こうして、第２判定手段により到着可能と判定された場合には、その判定した第２仮経路を用いて、または、第１判定手段により到着可能と判定された場合には、その判定した第１仮経路を用いて、車両を現在位置から目標位置まで走行させるための走行経路が走行経路生成手段により生成される。よって、第１仮経路生成手段により生成された第１仮経路が第１判定手段により到着不可能と判定された場合に、その到着不可能な第１仮経路を扱わないようにするのではなく、その到着不可能な第１仮経路を用いて新たに第２仮経路の生成を試みることができる。従って、走行経路パターンの種類を多くしておかなくても、生成可能な仮経路の数を増やすことができ、第２判定手段により到着可能と判定される可能性を向上させることができる。故に、予め用意しておく走行経路パターンの数を抑制しつつ、車両を現在位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる。
また、現在位置における車両の操舵角またはハンドル角が検出手段により検出される。また、複数の走行経路パターンの各々には、各走行経路を車両が走行する場合の操舵角またはハンドル角が規定されている。そして、第１選択手段は、複数の走行経路パターンのうち、複数の走行経路パターンの各々に規定されている操舵角と、検出手段により検出される操舵角との差が小さい走行経路パターンを、または、複数の走行経路パターンの各々に規定されているハンドル角と、検出手段により検出されるハンドル角との差が小さい走行経路パターンを、他の走行経路パターンよりも優先して選択する。よって、現在位置における車両の操舵角またはハンドル角に対し、車両の操舵角またはハンドル角の変化量が小さい走行経路パターンを優先的に選択できるので、第１仮経路が生成される場合に、現在位置における車両の操舵角またはハンドル角に対し、車両の操舵角またはハンドル角の変化量の小さい走行経路パターンが優先的に用いられるようにすることができる。故に、車両が走行開始時にスムーズに走行できる走行経路を優先的に生成できる。その結果、予め用意しておく走行経路パターンの数を抑制しつつ、車両を現在位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる上、より好適な走行経路をより優先的に生成できるという効果がある。
【０００７】
【０００８】
請求項２記載の走行制御装置によれば、請求項１記載の走行制御装置の奏する効果に加え、次の効果を奏する。即ち、複数の走行経路パターンの各々は、各走行経路を車両が走行する場合の操舵角またはハンドル角が規定されている。第２選択手段は、複数の走行経路パターンのうち、複数の走行経路パターンの各々に規定されている操舵角と、第１仮経路として生成された走行経路パターンに規定されている操舵角との差が小さい走行経路パターンを、または、複数の走行経路パターンの各々に規定されているハンドル角と、第１仮経路として生成された走行経路パターンに規定されているハンドル角との差が小さい走行経路パターンを、他の走行経路パターンよりも優先して選択する。よって、第１仮経路に対し、車両の操舵角またはハンドル角の変化量が小さい走行経路パターンを優先的に選択できるので、第２仮経路が生成される場合に、車両の操舵角またはハンドル角の変化量の小さい走行経路パターンが優先的に用いられるようすることができる。故に、車両がスムーズに走行できる第２仮経路を優先的に生成できる。その結果、予め用意しておく走行経路パターンの数を抑制しつつ、車両を現在位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる上、より好適な走行経路を優先的に生成できるという効果がある。
【０００９】
請求項３記載の走行制御装置によれば、請求項１または２に記載の走行制御装置の奏する効果に加え、次の効果を奏する。即ち、第１判定手段により到着不可能と判定された場合、第１選択手段が選択した走行経路パターンとは別の走行経路パターンが、複数の走行経路パターンのうちから第１選択手段に選択される。そして、第２選択手段は、第１選択手段が複数の走行経路パターンの全てを選択し、且つ、その全ての走行経路パターンについて第１仮経路が生成され、その全ての第１仮経路について、到着不可能と判定された場合に、複数の走行経路パターンのうち所定の走行経路パターンを選択する。よって、複数の走行経路パターンを繋げて現在位置から目標位置まで走行させることができる走行経路よりも、単一の走行経路パターンで現在位置から目標位置まで走行させることができる走行経路を、いち早く生成できるという効果がある。
【図面の簡単な説明】
【００１０】
【図１】本発明の一例である走行制御装置が搭載される車両の上面視を模式的に示した模式図である。
【図２】走行経路全体に対して生成される走行制御点の一例を説明するための模式図である。
【図３】走行経路全体のうち、パターン走行部を生成するために用いる経路パターンの一例を示す模式図である。
【図４】経路パターンに応じて車両を移動させた場合の移動先と、その車両方位とを説明するための模式図である。
【図５】（ａ）は、走行経路上の経路点の一例を説明するための模式図であり、（ｂ）は、駐車可能条件を説明するための模式図である。
【図６】走行制御装置の電気的構成を示したブロック図である。
【図７】（ａ）は、シチュエーション判定テーブルの一例を示す模式図であり、（ｂ）は、シチュエーション判定テーブルの内容の一例を示す模式図であり、（ｃ）は、（ｂ）に示すシチュエーション判定テーブルの内容を説明するための模式図である。
【図８】（ａ）は、シチュエーション判定テーブルの内容の一例を示す模式図であり、（ｂ）は、（ａ）に示すシチュエーション判定テーブルの内容を説明するための模式図である。
【図９】経路パターン優先順位テーブルの一例を示す模式図である。
【図１０】走行制御点メモリの内容の一例を示す模式図である。
【図１１】判定済み順列メモリの内容の一例を示す模式図である。
【図１２】走行制御装置の自動駐車処理を示すフローチャートである。
【図１３】走行制御装置の点経路第１生成処理を示すフローチャートである。
【図１４】車両の現在の操舵角に基づいて、１０の経路パターンに優先順位を設定する場合の一例を説明するための模式図である。
【図１５】走行制御装置の点経路第２生成処理を示すフローチャートである。
【図１６】走行制御装置のパターン走行部制御点生成処理を示すフローチャートである。
【図１７】走行経路全体のうち、パターン走行部に対して生成される走行制御点の一例を説明するための模式図である。
【図１８】走行制御装置の後退旋回部制御点生成処理を示すフローチャートである。
【図１９】走行経路全体のうち、後退旋回部に対して生成される走行制御点の一例を説明するための模式図である。
【図２０】走行制御装置の最終後退部制御点生成処理を示すフローチャートである。
【図２１】走行経路全体のうち、最終後退部に対して生成される走行制御点の一例を説明するための模式図である。
【発明を実施するための形態】
【００１１】
以下、本発明の好ましい実施形態について添付図面を参照して、説明する。図１は、本発明の一例である走行制御装置１００が搭載される車両１の上面視を模式的に示した模式図である。なお、図１の矢印Ｕ−Ｄ，Ｌ−Ｒ，Ｆ−Ｂは、車両１の上下方向、左右方向、前後方向をそれぞれ示している。
【００１２】
まず、図１を参照して、車両１の概略構成について説明する。車両１は、運転者により運転操作可能に構成された車両であり、現在の車両位置から運転者により設定される駐車位置まで車両１を自律走行させて、その駐車位置に車両１を駐車させることができる走行制御装置１００が搭載されている。なお、本実施形態における自律走行とは、運転者の運転操作なしで車両１を走行させることを意味する。即ち、車両１が自律走行している場合、運転者は、後述するアクセルペダル１１、ブレーキペダル１２及びステアリング１３を操作しなくて良い。
【００１３】
走行制御装置１００は、目標とする駐車位置が運転者により設定されると、予め記憶されている１０の経路パターンＰＴ１〜ＰＴ１０（図３参照）を複数組み合わせて、現在の車両位置から目標とする駐車位置までの車両１の走行経路を生成し、その生成した走行経路に従って車両１を自律走行させて、目標とする駐車位置に車両１を停車させるものである。
【００１４】
詳細については後述するが、この走行制御装置１００によれば、走行経路を生成する場合に、距離の短い走行経路や、搭乗者が想定する可能性の高い走行経路や、車両１が走行開始時にスムーズに走行できる走行経路や、車両１がスムーズに走行できる走行経路を優先的に生成することができる。
【００１５】
尚、本実施形態では、目標とする駐車位置に車両１を駐車させた時の、左右の後輪２ＲＬ，２ＲＲの車軸上をｘ軸とし、車両１の前後軸上をｙ軸とし、ｘ軸およびｙ軸の交点を原点Ｏとした座標系を用いて、車両１の位置や、走行経路などの位置を算出する。
【００１６】
よって、以下の説明では、この座標系を用いて、車両１や、走行経路などの各位置を示す。また、車両１の前後軸と、車両１における左右の後輪２ＲＬ，２ＲＲの車軸との交点を車両１の基準点とし、上述した座標系における車両１の基準点の位置を、車両１の車両位置とする。また、車両１の前後軸方向のうち車両１が進行している方向を、車両１の進行方向とする。
【００１７】
図１に示すように、車両１は、車体フレームＢＦと、その車体フレームＢＦに支持される複数（本実施形態では４輪）の車輪２ＦＬ，２ＦＲ，２ＲＬ，２ＲＲと、それら複数の車輪２ＦＬ〜２ＲＲの内の一部（本実施形態では、左右の前輪２ＦＬ，２ＦＲ）を回転駆動する車輪駆動装置３と、各車輪２を車体フレームＢＦに懸架する懸架装置４と、複数の車輪２の内の一部（本実施形態では、左右の前輪２ＦＬ，２ＦＲ）を操舵するステアリング装置６および操舵駆動装置５とを主に備えている。
【００１８】
次いで、各部の詳細構成について説明する。車体フレームＢＦは、車両１の骨格をなすものであり、懸架装置４を支持すると共に、その懸架装置４を介して車輪２を支持している。懸架装置４は、いわゆるサスペンションとして機能する装置であり、図１に示すように、各車輪２に独立して設けられている。
【００１９】
車輪２ＦＬ，２ＦＲは、図１に示すように、車体フレームＢＦの前方側（矢印Ｆ側）に配置される左右の前輪であり、車輪駆動装置３によって回転駆動される駆動輪として構成されている。一方、車輪２ＲＬ，２ＲＲは、車体フレームＢＦの後方側（矢印Ｂ側）に配置される左右の後輪であり、車両１の走行に伴って従動する従動輪として構成されている。４つの車輪２ＦＬ〜２ＲＲのうち、左右の前輪２ＦＬ，２ＦＲには共に、車輪の回転量を検出する車輪回転センサ２３が取り付けられている。
【００２０】
車輪回転センサ２３は、センサ２３が取り付けられている車輪２の回転量を検出して、その検出結果をＣＰＵ９１に出力するセンサであり、車輪２が所定の角度回転する度に、回転検出信号をＣＰＵ９１に出力するものである。車輪２の外周の長さと、回転検出信号が出力される回転角度とは予め決まっているので、回転検出信号が出力されから次の回転検出信号が出力されるまでに車両１が走行する走行距離も予め決まる。ＣＰＵ９１は、車両１が自律走行をする場合、２つの車輪回転センサ２３の回転検出信号を個別にカウントし、２つのカウント数の平均値を用いて出発地点からの走行距離を算出する。
【００２１】
ジャイロセンサ装置２２は、車両１の水平面に対するロール角およびピッチ角と、ヨー
角とを検出すると共に、その検出結果をＣＰＵ９１に出力するための装置であり、車両１の重心を通る基準軸（図１矢印Ｆ−Ｂ，Ｌ−Ｒ，Ｕ−Ｄ方向軸）回りの車両１（車体フレームＢＦ）の回転角（ロール角、ピッチ角、ヨー角）をそれぞれ検出するジャイロセンサ（図示せず）と、そのジャイロセンサの検出結果を処理してＣＰＵ９１に出力する出力回路（図示せず）とを主に備えている。
【００２２】
なお、以下の説明では、車両１のヨー角のことを、車両１の車両方位と記載する。なお、車両１における車両方位の基準軸は、上述したｘ軸とし、そのｘ軸から車両１の進行方向までの反時計回りの角度を、車両１の車両方位とする。
【００２３】
ＣＰＵ９１は、車両１が自律走行する場合、ジャイロセンサ装置２２から出力される車両１の車両方位を取得し、車両１の進行方向を算出する。そして、その車両１の進行方向と、車輪回転センサ２３の回転検出信号から算出される車両１の走行距離とに基づいて、出発地点からの移動距離を算出する。出発地点は原点Ｏを基準に設定されているので、ＣＰＵ９１は、出発地点からの移動距離に基づいて、原点Ｏを基準とした車両１の現在位置を算出できる。
【００２４】
車輪駆動装置３は、左右の前輪２ＦＬ，２ＦＲに回転駆動力を付与するモータ３ａ（図６参照）を備えて構成されている。なお、モータ３ａは、ディファレンシャルギヤ（図示せず）及び一対のドライブシャフト３１を介して左右の前輪２ＦＬ，２ＦＲに接続されている。
【００２５】
例えば、運転者がアクセルペダル１１を操作した場合には、モータ３ａから左右の前輪２ＦＬ，２ＦＲに回転駆動力が付与され、それら左右の前輪２ＦＬ，２ＦＲがアクセルペダル１１の傾斜状態（傾斜角度、傾斜する速度など）に応じた速度で回転駆動される。なお、左右の前輪２ＦＬ，２ＦＲの回転差は、ディファレンシャルギヤにより吸収される。
【００２６】
ステアリング装置６は、図１に示すように、ステアリングシャフト６１と、フックジョイント６２と、ステアリングギヤ６３と、タイロッド６４と、ナックルアーム６５とを主に備えて構成されている。なお、ステアリング装置６は、ステアリングギヤ６３がピニオン（図示せず）とラック（図示せず）とを備えたラックアンドピニオン機構によって構成されている。
【００２７】
例えば、運転者がステアリング１３を操作した場合には、ステアリング１３の操作がステアリングシャフト６１を介してフックジョイント６２に伝達されると共にフックジョイント６２によって角度を変えられ、ステアリングギヤ６３のピニオンに回転運動として伝達される。そして、ピニオンに伝達された回転運動がラックの直線運動に変換され、ラックが直線運動することで、ラックの両端に接続されたタイロッド６４が移動し、ナックルアーム６５を介して車輪２が操舵される。
【００２８】
ステアリングシャフト６１には、左右の前輪２ＦＬ，２ＦＲの操舵角δを算出してＣＰＵ９１へ出力するステアリングセンサ装置２１が取り付けられている。ステアリングセンサ装置２１は、基準位置からのステアリングシャフト６１の回転角度に基づいて、左右の前輪２ＦＬ，２ＦＲの操舵角δを算出し、その算出結果を走行制御装置１００に設けられたＣＰＵ９１（図６参照）へ出力する。尚、操舵角δに加えて、ステアリング１３の角度をＣＰＵ９１に出力するように構成しても良い。
【００２９】
操舵駆動装置５は、ステアリング装置６と同様に、左右の前輪２ＦＬ，２ＦＲを操舵するための装置であり、ステアリングシャフト６１に回転駆動力を付与するモータ５ａ（図６参照）を備えて構成されている。即ち、モータ５ａが駆動されてステアリングシャフト６１が回転すると、運転者によりステアリング１３が操作された場合と同様に車輪２が操舵される。
【００３０】
アクセルペダル１１、ブレーキペダル１２及びステアリング１３は、いずれも運転者により制御される操作部材であり、各ペダル１１，１２の傾斜状態（傾斜角度、傾斜する速度など）に応じて車両１の加速力や制動力が決定されると共に、ステアリング１３の操作状態（操作量、操作方向）に応じて車両１の旋回半径や旋回方向が決定される。
【００３１】
自動駐車スイッチ２５は、自律走行により目標とする駐車位置に車両１を駐車させたい場合に、運転者が押下するスイッチであり、これが運転者により押下されると、走行制御装置１００において後述する自動駐車処理（図１２参照）が実行される。その結果、現在の車両位置から運転者により設定される駐車位置まで車両１が自律走行させられ、その駐車位置に車両１が停車させられる。
【００３２】
第１から第３までの各距離センサ２４ａ〜２４ｃは、車両１の周辺に存在する物体までの距離データをＣＰＵ９１（図６参照）に出力するための装置である。各距離センサ２４ａ，２４ｂ，２４ｃは、レーザ光を対象物に向けて照射し、その反射の度合いで対象物までの距離を測定するレーザレンジファインダで構成されている。
【００３３】
第１距離センサ２４ａは、車両１の前面右端に、第２距離センサ２４ｂは、車両１の前面左端に、第３距離センサ２４ｃは、車両１の後面中央に取り付けられている。本実施形態では、３つの距離センサ２４ａ〜２４ｃにより、車両１を中心として少なくとも６０ｍ四方の領域内に存在する各対象物までの距離を検出可能に構成されている。
【００３４】
走行制御装置１００は、車輪駆動装置３、操舵駆動装置５、及び、ブレーキ装置（図示せず）などを制御して、現在の車両位置から運転者により設定される駐車位置まで車両１を自律走行させて、その駐車位置に車両１を停車させるものである。
【００３５】
本実施形態では、運転者により自動駐車スイッチ２５が押下され、運転者により目標とする駐車位置が設定されると、走行制御装置１００によって、現在の車両位置から目標位置へ到達可能な走行経路ＲＴ１〜ＲＴ３が生成される（図２参照）。走行経路ＲＴ１〜ＲＴ３全体は、パターン走行部ＲＴ１と、後退旋回部ＲＴ２と、最終後退部ＲＴ３との３つにより構成されている。
【００３６】
この走行経路ＲＴ１〜ＲＴ３は線として連続的に構成されるが、走行経路ＲＴ１〜ＲＴ３を示すデータについては、走行経路ＲＴ１〜ＲＴ３を構成する点のうち、所定間隔ごとの点を示すデータより構成される。以下、この所定間隔ごとの点を、経路点Ｐと称し、経路点Ｐを示すデータを、経路点情報と称する。なお、この経路点Ｐは、車両１が走行経路ＲＴ１〜ＲＴ３を自律走行する場合に経由すべき点であり、経路点情報は、経路点Ｐにおける車両１の車両位置と、その経路点Ｐにおける車両１の車両方位θとにより構成される。各経路点Ｐの経路点情報は、後述する点経路メモリ９３ｂ（図６参照）に記憶される。詳細については後述するが、例えば、走行経路ＲＴ１であれば、走行経路ＲＴ１上を構成する点のうち、２ｍ間隔ごとの点を経路点Ｐとしている。
【００３７】
そして、本実施形態では、走行経路ＲＴ１〜ＲＴ３全体が生成されると、次に、走行制御装置１００が車両１を自律走行させる場合に車両１の車両状態を制御する点である走行制御点Ｑが、走行経路ＲＴ１〜ＲＴ３上に、０．０５ｍ間隔で仮想的に生成される。つまり、本実施形態では、車両１の走行状態が０．０５ｍ毎に制御される。
【００３８】
なお、経路点Ｐ０（車両１の出発位置）上には走行制御点Ｑは生成されず、経路点Ｐ０から０．０５ｍだけ目標とする駐車位置に近づいた位置から走行制御点Ｑが生成されて行き、経路点Ｐ０を除く各経路点Ｐ上には、必ず走行制御点Ｑが生成される。また、各走行制御点Ｑごとに、車両１の車両状態を設定するための車両設定情報が生成され、各走行制御点Ｑの車両設定情報は、後述する走行制御点メモリ９３ｃ（図６参照）にそれぞれ記憶される。
【００３９】
車両設定情報の詳細については後述するが、走行制御装置１００は、走行経路ＲＴ１〜ＲＴ３に沿って車両１を自律走行させる場合に、各走行制御点Ｑに到達する度に、その走行制御点Ｑに対応する車両設定情報に基づいて車両１の走行状態を設定し、運転者により設定される駐車位置まで車両１を自律走行させる。
【００４０】
ここで、図２を参照して、走行制御装置１００により生成される走行経路ＲＴ１〜ＲＴ３と、走行経路ＲＴ１〜ＲＴ３に対して生成される走行制御点Ｑについて説明する。図２は、走行経路ＲＴ１〜ＲＴ３全体と、その走行経路ＲＴ１〜ＲＴ３を示す経路点Ｐと、その走行経路ＲＴ１〜ＲＴ３に対して生成される走行制御点Ｑとの一例を説明するための模式図である。
【００４１】
以下、図２を含め、走行経路ＲＴ１〜ＲＴ３を示す図においては、経路点Ｐを白抜きの丸で示し、走行制御点Ｑを黒塗りの丸で示す。また、経路点Ｐ０は、車両１の出発位置を示し、経路点Ｐ８は、運転者により設定された駐車位置を示す。なお、他の経路点Ｐ１〜Ｐ７の詳細については後述する。また、走行制御点Ｑは、本来なら０．０５ｍ間隔で仮想的に生成されるが、図を見易くするために一部の走行制御点Ｑのみを示す。
【００４２】
上述したように、走行経路ＲＴ１〜ＲＴ３全体は、パターン走行部ＲＴ１と、後退旋回部ＲＴ２と、最終後退部ＲＴ３との３つにより構成される。パターン走行部ＲＴ１は、後述する経路パターンメモリ９２ａ（図６参照）に格納されている経路パターンＰＴ１〜ＰＴ１０の組み合わせにより生成される走行経路である。図２に示す例では、経路点Ｐ０から経路点Ｐ６までの走行経路が、パターン走行部ＲＴ１となる。
【００４３】
また、後退旋回部ＲＴ２は、パターン走行部ＲＴ１に続く走行経路であって、パターン走行部ＲＴ１の終端から目標とする駐車位置に車両１を後退直進させることが可能となる車両位置までの走行経路である。図２に示す例では、経路点Ｐ６から経路点Ｐ７までの経路が、後退旋回部ＲＴ２となる。なお、この後退旋回部ＲＴ２では、車両１が同一の操舵角δで後退旋回するように走行経路が決定される。
【００４４】
最終後退部ＲＴ３は、後退旋回部ＲＴ２に続く走行経路であって、後退旋回部ＲＴ２の終端から目標とする駐車位置までの走行経路である。図２に示す例では、経路点Ｐ７から経路点Ｐ８までの経路が、最終後退部ＲＴ３となる。なお、この最終後退部ＲＴ３は、車両１が後退直進するように走行経路が決定される。
【００４５】
パターン走行部ＲＴ１が生成され、後退旋回部ＲＴ２、および、最終後退部ＲＴ３が決定されると、各走行経路ＲＴ１〜ＲＴ３ごとに走行制御点Ｑが仮想的に生成される。走行制御点Ｑが仮想的に生成される場合には、走行制御点Ｑごとに、車両１の車両状態を設定するための車両設定情報が生成されると共に、その走行制御点Ｑを識別するためのインデックス番号（以下、「ＩＤ番号」と称す）が設定される。
【００４６】
このＩＤ番号は、走行経路ＲＴ１〜ＲＴ３上における走行制御点Ｑのうち、経路点Ｐ０（車両１の出発位置）に最も近い位置の走行制御点Ｑが１番に設定される。その後は、走行経路ＲＴ１〜ＲＴ３に沿ってＩＤ番号が１番ずつ大きくなるように、目標とする駐車位置に重なる走行制御点Ｑまで順番にＩＤ番号が設定される。
【００４７】
ここで、図３を参照して、経路パターンＰＴ１〜ＰＴ１０について説明する。図３は、走行経路ＲＴ１〜ＲＴ３全体のうち、パターン走行部ＲＴ１を生成するために用いる経路パターンＰＴ１〜ＰＴ１０の一例を示す模式図である。
【００４８】
本実施形態では、１０種類の断片的な走行経路が予め設定されており、それぞれが経路パターンとして、後述する経路パターンメモリ９２ａ（図６参照）に格納されている。１０種類の経路パターンＰＴ１〜ＰＴ１０には、「ＰＴ１」から「ＰＴ１０」までのパターン番号が付されている。１０種類の経路パターンＰＴ１〜ＰＴ１０では、各走行経路の軌跡はそれぞれ異なるが、各走行経路の長さ（即ち、走行距離）ＣＬは全て２ｍに設定されている。パターン走行部ＲＴ１は、この経路パターンＰＴ１〜ＰＴ１０に対応する走行経路が組み合わされて生成される。
【００４９】
そして、パターン走行部ＲＴ１では、経路パターンＰＴ１〜ＰＴ１０に対応する走行経路の始端および終端を、それぞれ経路点Ｐとしている。つまり、経路点Ｐ１〜Ｐ５は、経路パターンＰＴ１〜ＰＴ１０に対応する走行経路の接続点を示している。
【００５０】
経路パターンＰＴ１は、経路点Ｐｉから車両１を前方直進させ２ｍ移動させる走行経路を示すパターンであり、経路パターンＰＴ２は、経路点Ｐｉから車両１を後退直進させ２ｍ移動させる走行経路を示すパターンである。
【００５１】
経路パターンＰＴ３は、車両１の旋回半径Ｒを最小旋回半径の２倍とし、車両１を経路点Ｐｉから前方左旋回させ２ｍ移動させる走行経路を示すパターンであり、以下同様に、経路パターンＰＴ４は、車両１の旋回半径Ｒを最小旋回半径の２倍とし車両１を前方右旋回させ、経路パターンＰＴ５は、車両１の旋回半径Ｒを最小旋回半径の２倍とし車両１を後退左旋回させ、経路パターンＰＴ６は、車両１の旋回半径Ｒを最小旋回半径の２倍とし車両１を旋回半径Ｒで後退右旋回させ、それぞれ２ｍ移動させる走行経路を示すパターンである。
【００５２】
また、経路パターンＰＴ７は、車両１の旋回半径Ｒを最小旋回半径とし、車両１を経路点Ｐｉから前方左旋回させ２ｍ移動させる走行経路を示すパターンであり、以下同様に、経路パターンＰＴ８は、車両１の旋回半径Ｒを最小旋回半径とし車両１を前方右旋回させ、経路パターンＰＴ９は、車両１の旋回半径Ｒを最小旋回半径とし車両１を後退左旋回させ、経路パターンＰＴ１０は、車両１の旋回半径Ｒを最小旋回半径とし車両１を後退右旋回させ、それぞれ２ｍ移動させる走行経路を示すパターンである。
【００５３】
ここで、図４を参照して、経路パターンＰＴ１〜ＰＴ１０に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する各経路点Ｐおよび車両方位θについて説明する。図４は、経路パターンＰＴ１〜ＰＴ１０に応じて車両１を移動させた場合の移動先に対応する各経路点Ｐおよび車両方位θを算出するための模式図である。ここで、経路点Ｐｉ（ｘｉ，ｙｉ）は、移動前の車両１の車両位置を示す。また、経路点Ｐｉにおける車両１の車両方位をθｉと示し、車両１の進行方向を矢印で示す。
【００５４】
まず、経路パターンＰＴ８に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点ＰＡ（ｘＡ，ｙＡ）と、その経路点ＰＡにおける車両方位θＡを算出する方法について説明する。
【００５５】
車両１の走行距離をＣＬとし、車両１の旋回半径をＲとし、更に、経路点ＰＡにおける車両方位θＡと、経路点Ｐｉにおける車両方位θｉとの変化量をΔθとした場合、その変化量Δθは、
Δθ＝ＣＬ／Ｒ
により算出できる。従って、経路点ＰＡ（ｘＡ，ｙＡ）と、その経路点ＰＡにおける車両方位θＡとは、
θＡ＝θｉ−Δθ
ｘＡ＝ｘｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｃｏｓ（θｉ−Δθ／２）
ｙＡ＝ｙｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｓｉｎ（θｉ−Δθ／２）
により算出できる。なお、経路パターンＰＴ４についても同様に、この式により経路点Ｐおよび車両方位θを算出できる。
【００５６】
次に、経路パターンＰＴ７に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点ＰＢ（ｘＢ，ｙＢ）と、その経路点ＰＢにおける車両方位θＢを算出する方法について説明する。なお、経路点ＰＢにおける車両方位θＢと、経路点Ｐｉにおける車両方位θｉとの変化量Δθは、上述した式により同様に算出できる。よって、経路点ＰＢ（ｘＢ，ｙＢ）と、その経路点ＰＢにおける車両方位θＢとは、
θＢ＝θｉ＋Δθ
ｘＢ＝ｘｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｃｏｓ（θｉ＋Δθ／２）
ｙＢ＝ｙｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｓｉｎ（θｉ＋Δθ／２）
により算出できる。なお、経路パターンＰＴ３についても同様に、この式により経路点Ｐおよび車両方位θを算出できる。
【００５７】
以下同様に、経路パターンＰＴ９に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点ＰＣ（ｘＣ，ｙＣ）と、その経路点ＰＣにおける車両方位θＣとは、
θＣ＝θｉ−Δθ
ｘＣ＝ｘｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｃｏｓ（θｉ−Δθ／２−π）
ｙＣ＝ｙｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｓｉｎ（θｉ−Δθ／２−π）
により算出できる。なお、経路パターンＰＴ５についても同様に、この式により経路点Ｐおよび車両方位θを算出できる。
【００５８】
また、経路パターンＰＴ１０に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点ＰＤ（ｘＤ，ｙＤ）と、その経路点ＰＤにおける車両方位θＤとは、
θＤ＝θｉ＋Δθ
ｘＤ＝ｘｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｃｏｓ（θｉ＋Δθ／２−π）
ｙＤ＝ｙｉ＋２Ｒ・ｓｉｎ（Δθ／２）・ｓｉｎ（θｉ＋Δθ／２−π）
により算出できる。なお、経路パターンＰＴ６についても同様に、この式により経路点Ｐおよび車両方位θを算出できる。
【００５９】
また、図示はしていないが、経路パターンＰＴ１に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点ＰＥ（ｘＥ，ｙＥ）と、その経路点ＰＥにおける車両方位θＥとは、
θＥ＝θｉ
ｘＥ＝ｘｉ＋ＣＬ・ｃｏｓ（θｉ）
ｙＥ＝ｙｉ＋ＣＬ・ｓｉｎ（θｉ）
により算出できる。
【００６０】
また、経路パターンＰＴ２に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点ＰＦ（ｘＦ，ｙＦ）と、その経路点ＰＦにおける車両方位θＦとは、
θＦ＝θｉ
ｘＦ＝ｘｉ＋ＣＬ・ｃｏｓ（θｉ＋π）
ｙＦ＝ｙｉ＋ＣＬ・ｓｉｎ（θｉ＋π）
により算出できる。
【００６１】
以上の図４を参照して説明した数式を用いることにより、経路パターンＰＴ１〜ＰＴ１０に応じて車両１を経路点Ｐｉから移動させた場合の移動先に対応する経路点Ｐと、その車両方位θとを算出できる。よって、パターン走行部ＲＴ１を生成できる。
【００６２】
本実施形態では、パターン走行部ＲＴ１の生成が試みられる場合、経路パターンＰＴ１〜ＰＴ１０が組み合わされて、仮の走行経路ＲＴ１が生成される。すると、次に、その仮の走行経路ＲＴ１に続く後退旋回部ＲＴ２と、その後退旋回部ＲＴ２に続く最終後退部ＲＴ３とが有るか否かが判定される。この判定条件のことを、本実施形態では、駐車可能条件と称する。
【００６３】
なお、ここで駐車可能条件が成立する場合には、仮の走行経路ＲＴ１がパターン走行部ＲＴ１とされ、成立した駐車可能条件に基づいて、後退旋回部ＲＴ２および最終後退部ＲＴ３が決定され、走行経路ＲＴ１〜ＲＴ３全体が生成される。一方、駐車可能条件が成立しない場合には、別の仮の走行経路ＲＴ１が生成され、再度、駐車可能条件が成立しているかが判定される。仮の走行経路ＲＴ１の生成と、駐車可能条件の判定とは、駐車可能条件が成立するか、又は、予め定められている経路パターンＰＴ１〜ＰＴ１０の組み合わせが全て生成されるまで、繰り返される。
【００６４】
ここで、図５（ａ），（ｂ）を参照して、走行経路ＲＴ１〜ＲＴ３全体が生成されるまでの流れと、駐車可能条件とについて説明する。図５（ａ）は、走行経路ＲＴ１〜ＲＴ３上の経路点Ｐの一例を説明するための模式図であり、図５（ｂ）は、駐車可能条件を説明するための模式図である。図５（ａ）では、経路点Ｐ０〜Ｐ６までの走行経路が、パターン走行部ＲＴ１に対応し、経路点Ｐ６〜Ｐ７までの走行経路が、後退旋回部ＲＴ２に対応し、経路点Ｐ７〜Ｐ８までの走行経路が、最終後退部ＲＴ３に対応している。
【００６５】
本実施形態では、走行経路ＲＴ１〜ＲＴ３全体の生成が試みられる場合、まず、走行経路ＲＴ１の生成が試みられる。例えば、図５（ａ）に示すように、車両１の出発地点である経路点Ｐ０では、点線および実線で示した１０通りの仮の走行経路ＲＴ１が一つずつ順番に生成される。
【００６６】
より具体的には、仮の走行経路ＲＴ１の生成が開始される以前に、まず、車両１の現在の車両位置Ｐ０と、目標とする駐車位置Ｐ８と、車両１の車両方位θとの３つの条件、または、車両１の現在の操舵角δに基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定される。尚、優先順位の詳細については後述するが、この優先順位は、走行経路ＲＴ１を生成する場合に、距離の短い走行経路ＲＴ１や、搭乗者が想定する可能性の高い走行経路ＲＴ１や、車両１が走行開始時にスムーズに走行できる走行経路ＲＴ１を優先的に生成するためのものである。
【００６７】
そして、優先順位の高いものから順に一つずつ経路パターンＰＴ１〜ＰＴ１０が選択され、経路パターンＰＴ１〜ＰＴ１０が一つ選択される度に、その１個の経路パターンＰＴ１〜ＰＴ１０に対応する経路であって、経路点Ｐ０を始点とする仮の走行経路ＲＴ１が生成される。
【００６８】
本実施形態では、仮の走行経路ＲＴ１が生成されると、その度に、仮の走行経路ＲＴ１の終端に対応する経路点Ｐにおいて、駐車可能条件が成立しているかが判定され（図９のＳ３４参照）、駐車可能条件が成立していなければ、別の仮の走行経路ＲＴ１が生成される。
【００６９】
そのため、経路点Ｐ０では、優先順位の高い経路パターンＰＴ１〜ＰＴ１０の順に、点線および実線で示した１０通りの仮の走行経路ＲＴ１が一つずつ順番に生成され、各走行経路ＲＴ１が生成される度に、その終端となる経路点Ｐ１において、駐車可能条件が成立しているかが判定される。
【００７０】
ここで、駐車可能条件が成立していると判定されると、仮の走行経路ＲＴ１が、車両１の走行経路ＲＴ１とされて、走行経路ＲＴ１〜ＲＴ３全体が生成され、そこで仮の走行経路ＲＴ１の生成が終了する。一方、全ての経路パターンＰＴ１〜ＰＴ１０が選択され、生成された何れの仮の走行経路ＲＴ１において駐車可能条件が成立しなければ、次に、組み合わせる経路パターンＰＴ１〜ＰＴ１０の数が１つ増やされ、経路パターンＰＴ１〜ＰＴ１０を２個組み合わせた仮の走行経路ＲＴ１が一つずつ順番に生成される。
【００７１】
具体的には、先ほど生成した１０の走行経路ＲＴ１毎に、その終端から１０通りの方向に走行経路を延長するように、１０通りの仮の走行経路ＲＴ１が一つずつ順番に生成される。但し、本実施形態では、組み合わせる経路パターンＰＴ１〜ＰＴ１０の数が一つ増やされる度に、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定される。そして、仮の走行経路ＲＴ１が生成される場合には、優先順位の高い経路パターンＰＴ１〜ＰＴ１０の順に、１０通りの方向に走行経路を延長するように、１０通りの仮の走行経路ＲＴ１が一つずつ順番に生成され、それぞれ駐車可能条件が成立しているかが判定される。
【００７２】
尚、組み合わせる経路パターンＰＴ１〜ＰＴ１０の数が一つ増やされる場合は、今回増やす経路パターンＰＴ１〜ＰＴ１０の直前に並ぶ経路パターンＰＴ１〜ＰＴ１０の種別に基づいて、優先順位が設定される。この優先順位は、走行経路ＲＴ１を生成する場合に、車両１の操舵角δの変化が少ない走行経路ＲＴ１を優先的に生成するためのものである。
【００７３】
そして、仮の走行経路ＲＴ１を全通り生成しても、駐車可能条件が成立しなければ、更に、経路パターンＰＴ１〜ＰＴ１０を３つ組み合わせた仮の走行経路ＲＴ１を生成するというように、組み合わせる経路パターンＰＴ１〜ＰＴ１０の数が一つずつ増やされながら仮の走行経路ＲＴ１が繰り返し生成される。この仮の走行経路ＲＴ１の生成は、駐車可能条件が成立するか、又は、組み合わせる経路パターンＰＴ１〜ＰＴ１０の数が所定数に達するまで、繰り返される。
【００７４】
上述したように、別の仮の走行経路ＲＴ１の生成と、駐車可能条件の成立の判定とが繰り返される。図５（ａ）の例では、経路点Ｐ０〜Ｐ６までの走行経路が生成され、経路点Ｐ６において、駐車可能条件が成立した状態を示している。
【００７５】
この駐車可能条件は、２つの条件から構成されており、１つ目の条件は、仮の走行経路ＲＴ１の終端に対応する経路点Ｐから車両１を同一の旋回半径Ｒにより後退旋回させ、続けて車両１を後退直進させることで、車両１を目標とする駐車位置に停車させることが可能かという条件である。
【００７６】
ここで、図５（ｂ）を参照して、駐車可能条件が成立する経路点Ｐおよび車両方位θについて説明する。上述したとおり、駐車可能条件における１つ目の条件は、車両１を経路点Ｐから同一の旋回半径Ｒにより後退旋回させ、続けて車両１を後退直進させることで、車両１を目標とする駐車位置に停車させることが可能かという条件である。
【００７７】
図５（ｂ）は、駐車可能条件を説明するための模式図であり、経路点Ｐｖ０（ｘｖ０，ｙｖ０）は、駐車可能条件が成立しているかを判定する車両１の車両位置を示し、経路点ＰＶｎ（ｘｖｎ，ｙｖｎ）は、運転者により設定された駐車位置を示す。また、経路点Ｐｖ０における車両１の車両方位をθｖと示し、経路点Ｐｖｎにおける車両１の車両方位をθｐと示す。
【００７８】
経路点Ｐｖ０から経路点Ｐｖｎへ向けて引いた直線と、ｘ軸（図５（ａ）参照）とのなす角度をθとした場合、その角度θは、
θ＝ｔａｎ−１（（ｙｖ０−ｙｖｎ）／（ｘｖ０−ｘｖｎ））
により算出できる。よって、経路点Ｐｖ０から経路点Ｐｖｎまでのｘ軸（図５（ａ）参照）に平行な距離をＰｘとし、経路点Ｐｖ０から経路点Ｐｖｎまでのｙ軸（図５（ａ）参照）に平行な距離をＰｙとすると、
Ｐｘ＝｜（（ｘｖ０−ｘｖｎ）２＋（ｙｖ０−ｙｖｎ）２）１／２・ｃｏｓ（θ＋π／２−θｐ）｜
Ｐｙ＝｜（（ｘｖ０−ｘｖｎ）２＋（ｙｖ０−ｙｖｎ）２）１／２・ｓｉｎ（θ＋π／２−θｐ）｜
により算出できる。
【００７９】
また、車両１の旋回中心Ｋからｙ軸に向けて垂直に引いた直線と、車両１の旋回中心Ｋから車両１の経路点ＰＶ０に向けて引いた直線とのなす角度をθｖｐとした場合、その角度θｖｐは、
θｖｐ＝θｖ０−θｖｎ
により算出できる。よって、これらの式から、車両１の旋回半径Ｒｐを次の式で算出できる。
【００８０】
Ｒｐ＝Ｐｘ／（１−ｃｏｓ（θＶｐ））
なお、この旋回半径Ｒｐが車両１の最小旋回半径以上となる場合に、上述した駐車可能条件の１つ目の条件が成立する。つまり、この式が、駐車可能条件における１つ目の条件である。
【００８１】
そして、経路点Ｐｖ０から車両１の旋回中心Ｋまでのｙ軸に平行な距離をＰｒｙとした場合、距離Ｐｒｙは、
Ｐｒｙ＝Ｒｐ・ｓｉｎ（θｖｐ）
により算出できる。ここで、駐車スペースの入り口から経路点Ｐｖｎまでのｙ軸に平行な距離をＰＬとすると、
Ｐｙ−ＰＬ＞Ｐｒｙ
が成立している場合にのみ、車両１を後退直進させて駐車スペースに進入させることができる。つまり、この式が、駐車可能条件における２つ目の条件である。
【００８２】
走行制御装置１００は、仮の走行経路ＲＴ１の終端に対応する経路点Ｐにおいて、上述した駐車可能条件における２つの条件が成立していれば、仮の走行経路ＲＴ１をパターン走行部ＲＴ１とし、そして、後退旋回部ＲＴ２と、最終後退部ＲＴ３とを決定し、走行経路ＲＴ１〜ＲＴ３全体を生成する。
【００８３】
なお、後退旋回部ＲＴ２と、最終後退部ＲＴ３との接続位置に対応する経路点Ｐは、（ｘｖ０−Ｐｘ，ｙｖ０−Ｐｒｙ）となるので、後退旋回部ＲＴ２を示す２つの経路点Ｐは、経路点ＰＶ０と、経路点Ｐ（ｘｖ０−Ｐｘ，ｙｖ０−Ｐｒｙ）とになり、最終後退部ＲＴ３を示す２つの経路点Ｐは、経路点Ｐ（ｘｖ０−Ｐｘ，ｙｖ０−Ｐｒｙ）と、経路点Ｐｖｎとになる。
【００８４】
次に、図６を参照して、走行制御装置１００の詳細構成について説明する。図６は、走行制御装置１００の電気的構成を示したブロック図である。走行制御装置１００は、ＣＰＵ９１、フラッシュメモリ９２及びＲＡＭ９３を備え、それらがバスライン９４を介して入出力ポート９５に接続されている。また、入出力ポート９５には、車輪駆動装置３、操舵駆動装置５、ステアリングセンサ装置２１、ジャイロセンサ装置２２、車輪回転センサ２３、第１から第３までの各距離センサ２４ａ〜２４ｃ、自動駐車スイッチ２５及びその他の入出力装置９９などが接続されている。
【００８５】
ＣＰＵ９１は、バスライン９４によって接続された各部を制御する演算装置であり、フラッシュメモリ９２は、ＣＰＵ９１によって実行される制御プログラムや固定値データ等を記憶するための書き換え不能な不揮発性のメモリである。なお、後述する図１２のフローチャートに示す自動駐車処理、図１３のフローチャートに示す点経路第１生成処理、図１５のフローチャートに示す点経路第２生成処理、図１６のフローチャートに示すパターン走行部制御点生成処理、図１８のフローチャートに示す後退旋回部制御点生成処理、図２０のフローチャートに示す最終後退部制御点生成処理を実行する各プログラムは、フラッシュメモリ９２に格納されている。
【００８６】
また、フラッシュメモリ９２には、経路パターンメモリ９２ａと、シチュエーション判定テーブルメモリ９２ｂと、経路パターン優先順位テーブルメモリ９２ｃとが設けられている。経路パターンメモリ９２ａは、上述した１０種類の各経路パターンＰＴ１〜ＰＴ１０の形状や特性などを示すデータが格納されている。例えば、走行経路の長さや、走行経路を走行する場合の車両１の旋回半径Ｒや、車両１を前進させるものか後退させるものかや、車両１を直進させるものか旋回させるものかなどを示すデータが、１０種類の経路パターンＰＴ１〜ＰＴ１０毎に格納されている。
【００８７】
シチュエーション判定テーブルメモリ９２ｂは、シチュエーション判定テーブルが格納されているメモリである。シチュエーション判定テーブルは、仮の走行経路ＲＴ１の生成が開始される以前に、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するためのテーブルである。このシチュエーション判定テーブルは、走行制御装置１００において仮の走行経路ＲＴ１の生成が開始される以前に、ＣＰＵ９１により参照される。
【００８８】
ここで、図７および図８を参照して、シチュエーション判定テーブルについて説明する。尚、車両１の現在の車両位置を（ｘｖ、ｙｖ）とし、目標とする駐車位置のうち、ｘ軸上の最小値をｘ１、ｘ軸上の最大値をｘ２、ｙ軸上の最小値をｙ１、ｙ軸上の最大値をｙ２として説明する（図７（ｃ）参照）。
【００８９】
図７（ａ）は、シチュエーション判定テーブルの一例を示す模式図であり、図７（ｂ）は、シチュエーション判定テーブルの内容の一例を示す模式図であり、図７（ｃ）は、図７（ｂ）に示すシチュエーション判定テーブルの内容を説明するための模式図である。また、図８（ａ）は、シチュエーション判定テーブルの内容の一例を示す模式図であり、図８（ｂ）は、図８（ａ）に示すシチュエーション判定テーブルの内容を説明するための模式図である。
【００９０】
図７（ａ）に示すように、シチュエーション判定テーブルでは、車両１の車両位置（ｘｖ，ｙｖ）と、目標とする駐車位置によって決まるｘ１，ｘ２，ｙ１，ｙ２と、車両１の車両方位θｖとの３つの条件に応じて、１０の経路パターンＰＴ１〜ＰＴ１０の優先順位が設定されている。
【００９１】
例えば、目標とする駐車位置に対し左上のエリアに車両１が存在しており、即ち、「（ｘｖ≦ｘ１）および（ｙｖ≧ｙ１）」という条件を満たし、且つ、車両方位θｖが「０≦θｖ＜４５」という条件を満たす場合の優先順位としては、図７（ｂ）に示す優先順位が設定されている。
【００９２】
具体的には、１０の経路パターンＰＴ１〜ＰＴ１０のうち、経路パターンＰＴ７が優先順位１位に設定され、経路パターンＰＴ３が優先順位２位に設定されている。また、経路パターンＰＴ１が優先順位３位、経路パターンＰＴ４が優先順位４位、・・・と、以後同様に設定されている。
【００９３】
この優先順位は、走行経路ＲＴ１〜ＲＴ３全体を生成する場合に、距離の短い走行経路ＲＴ１〜ＲＴ３や、搭乗者が想定する可能性の高い走行経路ＲＴ１〜ＲＴ３を優先的に生成するためのものである。目標とする駐車位置に対し左上のエリアに車両１が存在しており、且つ、車両方位θｖが「０≦θｖ＜４５」という条件を満たす場合には、図７（ｃ）に示すように、駐車可能条件の成立する可能性が高くなるように、優先順位が設定される。
【００９４】
この条件の場合は、車両１を前方左旋回させる方が、車両１を他方向へ進行させるよりも、目標とする駐車位置に対して後退旋回が行い易くなると共に、車両方位θｖがより９０度に近づくので、駐車可能条件の成立する可能性が高くなる。また、車両１を前方直進や前方右旋回させる方が、車両１を他方向へ後退させるよりも、目標とする駐車位置に近づくので、走行経路ＲＴ１〜ＲＴ３が短くなる可能性が高い。また、車両１を前方左旋回させるという経路は、搭乗者が想定する可能性の高い経路である。
【００９５】
また、例えば、目標とする駐車位置に対し左上のエリアに車両１が存在しており、即ち、「（ｘｖ≦ｘ１）および（ｙｖ≧ｙ１）」という条件を満たし、且つ、車両方位θｖが「９０≦θｖ＜１３５」という条件を満たす場合の優先順位としては、図８（ａ）に示す優先順位が設定されている。
【００９６】
具体的には、１０の経路パターンＰＴ１〜ＰＴ１０のうち、経路パターンＰＴ４が優先順位１位に設定されており、経路パターンＰＴ１が優先順位２位に設定されている。また、経路パターンＰＴ３が優先順位３位、経路パターンＰＴ７が優先順位４位、・・・と、以後同様に設定されている。
【００９７】
この優先順位も、走行経路ＲＴ１〜ＲＴ３を生成する場合に、距離の短い走行経路ＲＴ１〜ＲＴ３や、搭乗者が想定する可能性の高い走行経路ＲＴ１〜ＲＴ３を優先的に生成させるためのものである。目標とする駐車位置に対し左上のエリアに車両１が存在しており、且つ、車両方位θｖが「９０≦θｖ＜１３５」の場合にも、図８（ｂ）に示すように、駐車可能条件の成立する可能性が高くなるように、優先順位が設定される。
【００９８】
この条件の場合は、車両１を前方に緩やかに（即ち、最小旋回半径の２倍で）右旋回させる方が、車両１を他方向へ進行させるよりも、目標とする駐車位置に対して後退旋回が行い易くなると共に、車両方位θｖがより９０度に近づくので、駐車可能条件の成立する可能性が高くなる。また、車両１を前方直進や前方左旋回や、前方にきつい角度で（即ち、最小旋回半径で）右旋回させる方が、車両１を他方向へ後退させるよりも、目標とする駐車位置に対して後退旋回が行い易い位置に車両１を移動させることができるので、切り返しを抑制でき、走行経路ＲＴ１〜ＲＴ３が長くなることを抑制できる。また、車両１を前方に緩やかに（即ち、最小旋回半径の２倍で）右旋回させるという経路は、搭乗者が想定する可能性の高い経路である。
【００９９】
以上、図７および図８を参照して、シチュエーション判定テーブルにおいて設定されている２つの優先順位の例について説明したが、これ以外の場合にも、車両１の車両位置（ｘｖ，ｙｖ）と、目標とする駐車位置によって決まるｘ１，ｘ２，ｙ１，ｙ２と、車両１の車両方位θｖとの３つ条件に応じて、１０の経路パターンＰＴ１〜ＰＴ１０の優先順位が予め設定されている。尚、その他の優先順位の説明については、同様な説明となるため省略する。
【０１００】
ここで、図６の説明に戻る。経路パターン優先順位テーブルメモリ９２ｃは、経路パターン優先順位テーブルが格納されているメモリである。上述したシチュエーション判定テーブルは、仮の走行経路ＲＴ１の生成が開始される以前に、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するためのテーブルであったが、経路パターン優先順位テーブルは、仮の走行経路ＲＴ１の生成中に、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するためのテーブルである。
【０１０１】
この経路パターン優先順位テーブルは、走行制御装置１００において経路パターンＰＴ１〜ＰＴ１０の組み合わせを生成する場合に、組み合わせる経路パターンＰＴ１〜ＰＴ１０の数が一つ増える度に、ＣＰＵ９１により参照される。
【０１０２】
ここで、図９を参照して、経路パターン優先順位テーブルについて説明する。図９は、経路パターン優先順位テーブルの内容の一例を示す模式図である。経路パターン優先順位テーブルでは、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０の種別毎に、１０経路パターンＰＴ１〜ＰＴ１０の優先順位が設定されている。尚、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０とは、経路パターンＰＴ１〜ＰＴ１０の組み合わせにおいて、今回増やす経路パターンＰＴ１〜ＰＴ１０の直前に並ぶ経路パターンＰＴ１〜ＰＴ１０のことである。
【０１０３】
これらの優先順位は、走行経路ＲＴ１を生成する場合に、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０に対して、車両１の操舵角δの変化が小さい経路パターンＰＴ１〜ＰＴ１０を優先的に組み合わせるためのものであり、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成するためのものである。車両１の操舵角δの変化が小さい経路パターンＰＴ１〜ＰＴ１０を優先的に組み合わせて、仮の走行経路ＲＴ１を生成することで、車両１がスムーズに走行できる走行経路ＲＴ１〜ＲＴ３を生成できる可能性を高めることができる。
【０１０４】
例えば、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０の種別が、経路パターンＰＴ１の場合の優先順位は、図９に示すテーブルの１段目に示すように、１０の経路パターンＰＴ１〜ＰＴ１０のうち、経路パターンＰＴ１が優先順位１位に設定されており、経路パターンＰＴ２が優先順位２位に設定されている。また、経路パターンＰＴ３が優先順位３位、経路パターンＰＴ４が優先順位４位、・・・と、以後同様に設定されている。
【０１０５】
上述したように（図３参照）、経路パターンＰＴ１は、車両１を前方直進させるための走行経路であるから、経路パターンＰＴ１に対し、車両１の操舵角δの変化が最も小さい走行経路としては、車両１を前方直進させる経路パターンＰＴ１と、車両１を後退直進させる経路パターンＰＴ２との２つが該当する。本実施形態では、車両１の操舵角δの変化が小さい経路パターンＰＴ１〜ＰＴ１０が複数存在する場合、車両１を前方へ走行させる経路パターンＰＴ１〜ＰＴ１０を優先するように、優先順位を設定している。
【０１０６】
よって、ここでは、経路パターンＰＴ１を優先順位１と設定し、経路パターンＰＴ２を優先順位２位と設定している。尚、車両１の操舵角δの変化が小さい経路パターンＰＴ１〜ＰＴ１０が複数存在する場合、車両１を前方へ走行させるものか、後退させるものかに関わらず、どの経路パターンＰＴ１〜ＰＴ１０を優先させるかは任意に決めれば良い。
【０１０７】
そして、経路パターンＰＴ１，ＰＴ２を除き、経路パターンＰＴ１に対して、車両１の操舵角δの変化が小さい走行経路としては、車両１を最小旋回半径の２倍で前方左旋回させる経路パターンＰＴ３と、車両１を最小旋回半径の２倍で前方右旋回させる経路パターンＰＴ４と、車両１を最小旋回半径の２倍で後退左旋回させる経路パターンＰＴ５と、車両１を最小旋回半径の２倍で後退左旋回させる経路パターンＰＴ６との４つが該当する。
【０１０８】
この４つの経路パターンＰＴ３〜ＰＴ６のうち、車両１を前方へ走行させるものは、経路パターンＰＴ３，４の２つ存在するが、本実施形態では、このように車両１を前方または後方へ走行させる経路パターンＰＴ１〜ＰＴ１０が複数存在する場合、左旋回するものを優先するように、優先順位を設定している。よって、ここでは、経路パターンＰＴ３を優先順位３位とし、経路パターンＰＴ４を優先順位４位とし、経路パターンＰＴ５を優先順位５位とし、経路パターンＰＴ６を優先順位６位としている。以後同様に、残りの経路パターンＰＴ７〜ＰＴ１０についても、優先順位が設定されている。
【０１０９】
尚、車両１を前方または後方へ走行させる経路パターンＰＴ１〜ＰＴ１０が複数存在する場合、車両１を左旋回させるものか、右旋回させるものかに関わらず、どの経路パターンＰＴ１〜ＰＴ１０を優先させるかは任意に決めれば良い。
【０１１０】
また、例えば、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０の種別が、経路パターンＰＴ３の場合の優先順位は、図９に示すテーブルの３段目に示すように、１０の経路パターンＰＴ１〜ＰＴ１０のうち、経路パターンＰＴ３が優先順位１位に設定されており、経路パターンＰＴ５が優先順位２位に設定されている。また、経路パターンＰＴ７が優先順位３位、経路パターンＰＴ９が優先順位４位、・・・と、以後同様に設定されている。尚、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０の種別が、他の種別である場合の説明については、同様な説明となるため省略する。
【０１１１】
ここで、図６の説明に戻る。ＲＡＭ９３は、書き換え可能な揮発性のメモリであり、ＣＰＵ９１によって実行される制御プログラムの実行時に各種のデータを一時的に記憶するためのメモリである。ＲＡＭ９３には、点経路パターンメモリ９３ａと、点経路メモリ９３ｂと、走行制御点メモリ９３ｃと、判定済み順列メモリ９３ｄとが設けられている。
【０１１２】
点経路パターンメモリ９３ａは、パターン走行部ＲＴ１を示す経路パターン番号「ＰＴ１〜ＰＴ１０」の組み合わせ（以後、経路パターン番号「ＰＴ１〜ＰＴ１０」の順列と称す）が記憶されるメモリである。点経路パターンメモリ９３ａは、後述する自動駐車処理（図１２参照）が実行された場合に、ＣＰＵ９１によりクリアされる。そして、現在の車両位置から目標とする駐車位置までの走行経路ＲＴ１〜ＲＴ３全体がＣＰＵ９１により生成される場合に、そのパターン走行部ＲＴ１を示す経路パターン番号「ＰＴ１〜ＰＴ１０」の順列が記憶される。
【０１１３】
この点経路パターンメモリ９３ａに記憶される経路パターン番号「ＰＴ１〜ＰＴ１０」の順列は、走行経路ＲＴ１〜ＲＴ３上の各経路点Ｐにおいて、車両１が前進しているか後退しているかの状態を取得する場合や、切り返しの有無の状態を取得する場合に参照される（図１６のＳ８９、図１８のＳ１１０、図２０のＳ１２９参照）。また、パターン走行部ＲＴ１における経路点Ｐの位置を算出する場合にも参照される（図４参照）。
【０１１４】
点経路メモリ９３ｂは、走行経路ＲＴ１〜ＲＴ３を示す各経路点Ｐの経路点情報が記憶されるメモリである。上述したように、経路点情報は、経路点Ｐにおける車両１の車両位置と、経路点Ｐにおける車両１の車両方位θにより構成されている。また、上述したように、走行経路ＲＴ１〜ＲＴ３のうち、パターン走行部ＲＴ１では、経路パターンＰＴ１〜ＰＴ１０に対応する走行経路の始端および終端を、それぞれ経路点Ｐとしている。また、後退旋回部ＲＴ２および最終後退部ＲＴ３では、各走行経路ＲＴ２，ＲＴ３の始端および終端を、経路点Ｐとしている。
【０１１５】
ＣＰＵ９１は、走行経路ＲＴ１〜ＲＴ３全体を生成した場合に、パターン走行部ＲＴ１における経路点Ｐの経路点情報と、後退旋回部ＲＴ２における経路点Ｐの経路点情報と、最終後退部ＲＴ３における経路点Ｐの経路点情報とをそれぞれ点経路メモリ９３ｂに記憶する（図１３のＳ５０、図１５の図７８参照）。この点経路メモリ９３ｂに記憶されている各経路点Ｐの経路点情報は、走行制御点Ｑを生成するために参照される。
【０１１６】
走行制御点メモリ９３ｃは、走行経路ＲＴ１〜ＲＴ３に対して生成される点である各走行制御点Ｑの車両設定情報が記憶されるメモリである。上述したように、走行制御点Ｑは、走行制御装置１００が車両１を走行経路ＲＴ１〜ＲＴ３に沿って自律走行させる場合に、進行方向などの車両１の走行状態を制御するための点である。
【０１１７】
本実施形態では、走行経路ＲＴ１〜ＲＴ３に対して走行制御点Ｑが生成される場合、現在の車両位置から目標とする駐車位置まで０．０５ｍ間隔で、走行経路ＲＴ１〜ＲＴ３上に仮想的に走行制御点Ｑが生成される（図１２のＳ１１，Ｓ１２，Ｓ１３参照）。なお、経路点Ｐ０（車両１の出発位置）を除く各経路点Ｐ上には、必ず走行制御点Ｑが生成される。そして、各走行制御点Ｑごとに、車両設定情報が生成されると共に、その走行制御点Ｑを識別するためのＩＤ番号が設定され、生成された走行制御点Ｑの車両設定情報と、設定された走行制御点ＱのＩＤ番号とが関連づけられて、この走行制御点メモリ９３ｃにそれぞれ記憶される。
【０１１８】
ここで、図１０を参照して、走行制御点メモリ９３ｃの内容の一例について説明する。図１０は、走行制御点メモリ９３ｃの内容の一例を示す模式図である。図１０に示すように、走行制御点メモリ９３ｃには、各走行制御点Ｑの車両設定情報を示すテーブルが記憶される。このテーブルは、各走行制御点Ｑに対応する車両設定情報が、その走行制御点Ｑに対応するＩＤ番号に関連づけられている状態を示している。また、このテーブルでは、各車両設定情報がＩＤ番号順に並べられている。
【０１１９】
各走行制御点Ｑの車両設定情報は、走行制御点Ｑにおける車両１の車両位置と、走行制御点Ｑにおける車両１の車両方位と、走行制御点Ｑにおける車両１の操舵角δと、走行制御点Ｑにおける進行方向フラグと、走行制御点Ｑにおける切り返し判定フラグとにより構成される。そして、これらの各走行制御点Ｑの車両設定情報には、それぞれＩＤ番号が関連づけられている。尚、テーブルにおけるＩＤ番号の最大値は、最大インデックス番号ＩＤｍａｘとして、ＲＡＭ９３の所定領域に記憶されている。
【０１２０】
車両位置と、車両方位と、操舵角δと、ＩＤ番号とについては上述したので、その説明を省略する。進行方向フラグは、走行制御点Ｑにおいて車両１が前進するか、後退するかを示すフラグであり、走行制御点Ｑにおいて車両１が前進する場合には「１」に設定される一方、車両１が後退する場合には「−１」に設定される。切り返し判定フラグは、走行制御点Ｑにおいて車両１が前進または後退を切り替えるかを示すフラグであり、走行制御点Ｑにおいて車両１が前進または後退を維持し走行する場合には「０」に設定される一方、車両１が前進を後退に切り替える場合や、車両１が後退を前進に切り替える場合には「１」に設定される。
【０１２１】
ＣＰＵ９１は、走行経路ＲＴ１〜ＲＴ３を車両１が自律走行している場合、所定間隔（例えば、５０ｍｓ）ごとに、車両１の現在の車両位置に最も近い走行制御点Ｑに基づいて車両１の走行状態を設定し、車両１が次に通過すべき走行制御点Ｑへ向かうように車両１を自律走行させる。
【０１２２】
ここで、図６の説明に戻る。判定済み順列メモリ９３ｄは、仮の走行経路ＲＴ１を生成するために作成される経路パターン番号「ＰＴ１〜ＰＴ１０」の順列を記憶するためのメモリである。判定済み判定メモリ９３ｄには、経路パターン番号「ＰＴ１〜ＰＴ１０」の順列が生成される度に、その生成された順列が、その生成順に記憶される。
【０１２３】
詳細については後述するが、本実施形態では、仮の走行経路ＲＴ１が生成される場合、まず、経路パターンＰＴ１〜ＰＴ１０が優先順位の高い順に一つずつ特定され、その特定された１個の経路パターンＰＴ１〜ＰＴ１０のパターン番号「ＰＴ１〜ＰＴ１０」で構成される順列（１個でも順列とみなす）が順番に生成され、その順列に対応する仮の走行経路ＲＴ１が順番に生成される。
【０１２４】
そして、仮の走行経路ＲＴ１が生成される度に、駐車可能条件が成立しているかが判定され（図９のＳ３４参照）、生成された何れの仮の走行経路ＲＴ１において、駐車可能条件が成立していなければ、次に、２個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される経路パターン番号「ＰＴ１〜ＰＴ１０」の順列が順番に生成され、その順列に対応する仮の走行経路ＲＴ１が順番に生成される。
【０１２５】
以後同様に、仮の走行経路ＲＴ１が生成される度に、駐車可能条件が成立しているかが判定され（図９のＳ３４参照）、生成された全ての仮の走行経路ＲＴ１において、駐車可能条件が成立しない場合は、更に、３個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される経路パターン番号「ＰＴ１〜ＰＴ１０」の順列を順番に生成するというように、組み合わせる経路パターン番号「ＰＴ１〜ＰＴ１０」の数を一つずつ増やしながら仮の走行経路ＲＴ１が順番に生成される。
【０１２６】
この判定済み順列メモリ９３ｄは、２個以上の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列を生成するために、ＣＰＵ９１により参照される。詳細について後述するが、ＣＰＵ９１は、ｎ個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列を生成する場合、判定済み順列メモリ９３ｄから、（ｎ−１）個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列を、記憶された順に一つずつ特定する。
【０１２７】
そして、順列が特定される度に、その特定された順列に、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を個別に追加して、１０通りの新たな順列を生成する。尚、本実施形態では、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を個別に追加する場合にも、経路パターンＰＴ１〜ＰＴ１０を優先順位の高い順に一つずつ特定し、その特定された１個の経路パターンＰＴ１〜ＰＴ１０のパターン番号「ＰＴ１〜ＰＴ１０」から順番に追加する。また、この判定済み順列メモリ９３ｄは、後述する自動駐車処理（図１２参照）が実行された場合に、ＣＰＵ９１によりクリアされる。
【０１２８】
次に、図１２〜図２１までのフローチャートと、模式図とを参照して、車両１に搭載された走行制御装置１００のＣＰＵ９１により実行される自動駐車処理について説明する。図１２は、走行制御装置１００により実行される自動駐車処理を示すフローチャートである。自動駐車処理は、車両１を現在位置から運転者により設定される駐車位置まで自律走行させて、その駐車位置に車両１を停車させるものであり、運転者により自動駐車スイッチ２５が押下された場合に実行される。
【０１２９】
自動駐車処理では、まず、ＲＡＭ９３の点経路パターンメモリ９３ａ、及び、判定済み順列メモリ９３ｄをクリアする（Ｓ１）。次に、運転者により設定される駐車位置を最終目的地として取得し、その最終目的地に車両１が駐車した場合の、左右の後輪２ＲＬ，２ＲＲの車軸上をｘ軸とし、車両１の前後軸上をｙ軸とし、ｘ軸およびｙ軸の交点を原点Ｏに決定する（Ｓ２）。例えば、車両１の車内に設けられているタッチパネル（図示せず）上に、車両１の周囲画像を表示し、運転者に駐車位置を入力するように報知する。そして、表示画面が運転者により触れられたら、その触れられた画面位置に対応する駐車位置を算出して、原点Ｏとする。
【０１３０】
次に、車両１の現在地点を出発地点として（Ｓ３）、点経路第１生成処理を実行する（Ｓ４）。ここで、図１３を参照して、車両１に搭載された走行制御装置１００のＣＰＵ９１により実行される点経路第１生成処理について説明する。図１３は、走行制御装置１００により実行される点経路第１生成処理を示すフローチャートである。
【０１３１】
点経路第１生成処理は、１０の経路パターンＰＴ１〜ＰＴ１０を一つずつ順番に特定し、その特定された１個の経路パターンＰＴ１〜ＰＴ１０だけで仮の走行経路ＲＴ１を生成するための処理である。また、生成した仮の走行経路ＲＴ１の終端において駐車可能条件が成立している場合に、出発地点から出発最終目的地までの走行経路ＲＴ１〜ＲＴ３全体を生成する。
【０１３２】
点経路第１生成処理では、変数ａに０を設定して、変数ａの初期設定を行う（Ｓ３１）。尚、変数ａには、パターン走行部ＲＴ１を構成する経路パターンＰＴ１〜ＰＴ１０の合計数が設定される。そして、出発地点において駐車可能条件が成立しているかを判定し（Ｓ３２）、Ｓ３２の判定が肯定される場合には（Ｓ３２：Ｙｅｓ）、Ｓ４８の処理へ移行する。一方、Ｓ３２の判定が否定される場合には（Ｓ３２：Ｎｏ）、変数ａに１を設定する（Ｓ３３）。
【０１３３】
次に、車両１の現在の車両位置（ｘｖ，ｙｖ）と、現在の車両方位θｖと、最終目的地によって決まる各位置ｘ１，ｘ２，ｙ１，ｙ２とを判定パラメータとして取得し（Ｓ３４）、その取得した判定パラメータと、シチュエーション判定テーブルメモリ９２ｂに格納されているシチュエーション判定テーブルとを比較する（Ｓ３５）。
【０１３４】
そして、Ｓ３５の処理による比較の結果、シチュエーション判定テーブルの中に、判定パラメータに対応する優先順位の設定があるかを判定する（Ｓ３６）。具体的には、シチュエーション判定テーブルにおいて、車両１の車両位置（ｘｖ，ｙｖ）と、目標とする駐車位置と、車両１の車両方位θｖとの３つの条件が満たされたマス目を特定し、そのマス目について、１０の経路パターンＰＴ１〜ＰＴ１０の優先順位が設定されているか否かを判定する。
【０１３５】
Ｓ３６の判定が肯定される場合には（Ｓ３６：Ｙｅｓ）、シチュエーション判定テーブルの中から、判定パラメータに対応する情報を取得し（Ｓ３７）、取得した情報に基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定して（Ｓ３８）、Ｓ４２の処理へ移行する。
【０１３６】
例えば、「（ｘｖ≦ｘ１）および（ｙｖ≧ｙ１）」という条件を満たしており、且つ、車両方位θｖが「０≦θｖ＜４５」という条件を満たす場合には、シチュエーション判定テーブル（図７（ａ）参照）の中から、図７（ｂ）に示す優先順位の情報が取得されて、１０の経路パターンＰＴ１〜ＰＴ１０にそれぞれ優先順位が設定される。
【０１３７】
一方、Ｓ３６の判定が否定される場合（Ｓ３６：Ｎｏ）、即ち、３つの条件が満たされるマス目が無い場合や、３つの条件を満たすマス目を特定できたものの、優先順位の設定が無い場合には、車両１の現在の操舵角δｖを取得する（Ｓ３９）。尚、ここでの車両１の現在の操舵角δｖとは、出発地点における車両１の操舵角δのことである。
【０１３８】
次に、Ｓ３９の処理で取得した車両１の操舵角δｖと、経路パターンＰＴ１〜ＰＴ１０に設定されている車両１の操舵角α１〜α１０との差分Δα１〜Δα１０を、経路パターンＰＴ１〜ＰＴ１０毎に算出し（Ｓ４０）、算出した差分Δα１〜Δα１０の小さいものから優先されるように、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定する（Ｓ４１）。
【０１３９】
ここで、図１４を参照して、１０の各経路パターンＰＴ１〜ＰＴ１０に設定されている車両１の操舵角α１〜α１０と、経路パターンＰＴ１〜ＰＴ１０の優先順位の設定方法とについて説明する。
【０１４０】
図１４は、車両１の現在の操舵角δｖに基づいて、１０の各経路パターンＰＴ１〜ＰＴ１０に優先順位を設定する場合の一例を説明するための模式図である。まず、１０の各経路パターンＰＴ１〜ＰＴ１０に設定されている操舵角α１〜α１０について説明する。
【０１４１】
上述したように、本実施形態では、経路パターンＰＴ１〜ＰＴ１０毎に、断片的な走行経路が設定されており、それぞれの断片的な走行経路においては、車両１が同一の旋回半径Ｒで走行するように経路が設定されている。車両１の操舵角δは、車両１の旋回半径Ｒに対し相対的に決まるので、経路パターンＰＴ１〜ＰＴ１０毎に、車両１を走行させるための操舵角α１〜α１０が一意に決まる。そこで、本実施形態では、１０の各経路パターンＰＴ１〜ＰＴ１０に対して、車両１を走行させるための操舵角α１〜α１０を予め設定している。
【０１４２】
例えば、図１４に示すように、経路パターンＰＴ１には、車両１を前方直進させるための操舵角としてα１が設定されており、経路パターンＰＴ２には、車両１を後退直進させるための操舵角としてα２が設定されている。
【０１４３】
同様に、経路パターンＰＴ３には、車両１の旋回半径Ｒを最小旋回半径の２倍とし、車両１を前方左旋回させるための操舵角としてα３が設定され、経路パターンＰＴ４には、車両１の旋回半径Ｒを最小旋回半径の２倍とし、車両１を前方右旋回させるための操舵角としてα４が設定されている。その他の経路パターンＰＴ４〜ＰＴ１０についても、操舵角α４〜α１０がそれぞれ設定されている。
【０１４４】
次に、経路パターンＰＴ１〜ＰＴ１０の優先順位の設定方法について説明する。経路パターンＰＴ１〜ＰＴ１０に優先順位を設定する場合には、まず、車両１の現在の操舵角δｖと、経路パターンＰＴ１〜ＰＴ１０に設定されている操舵角α１〜α１０との差分Δα１〜Δα１０を、経路パターンＰＴ１〜ＰＴ１０毎に算出する。
【０１４５】
具体的には、まず、車両１の現在の操舵角δｖと、経路パターンＰＴ１に設定されている操舵角α１との差分Δα１を算出する。続けて、車両１の現在の操舵角δｖと、経路パターンＰＴ２に設定されている操舵角α２との差分Δα２を算出し、以後同様に、他の経路パターンＰＴ３〜ＰＴ１０に設定されている操舵角α３〜α１０についても、差分Δα３〜Δα１０をそれぞれ算出する。
【０１４６】
そして、算出した差分Δα１〜Δα１０を、絶対値の小さい順に並べる。尚、絶対値が同一となる差分Δα１〜Δα１０が複数存在する場合には、車両１の現在の操舵角δｖと符号が同一のものを先に並べる。次に、１０の経路パターンＰＴ１〜ＰＴ１０を、絶対値の小さい順に並べた差分Δα１〜Δα１０と同じ並び順となるように並べる。例えば、Δα１の絶対値が最も小さい場合には、経路パターンＰＴ１を先頭とし、Δα５の絶対値が２番目に小さい場合には、経路パターンＰＴ５を２番目に並べる。
【０１４７】
これにより、１０の経路パターンＰＴ１〜ＰＴ１０を、車両１の現在の操舵角δｖに対して操舵角δの変化量が小さい順に並べることができる。本実施形態では、操舵角δの変化量が小さい順に並んだ経路パターンＰＴ１〜ＰＴ１０のうち、先頭に並ぶものを優先順位１位とし、２番目に並ぶものを優先順位２位とし、以下同様に、１番ずつ優先順位を低くしていき、１０の経路パターンＰＴ１〜ＰＴ１０に、１位〜１０位までの優先順位を設定している。
【０１４８】
詳細については後述するが、ここで優先順位が設定された後、Ｓ４２〜Ｓ４６の処理が繰り返し実行されると、車両１の現在の操舵角δｖに対して操舵角δの変化量が小さい順に、経路パターンＰＴ１〜ＰＴ１０が一つずつ特定される。そして、経路パターンＰＴ１〜ＰＴ１０が特定される度に、その１個の経路パターンＰＴ１〜ＰＴ１０で、仮の走行経路ＲＴ１が生成される。よって、車両１の現在の操舵角δｖに対して、操舵角δｖの変化量の小さい仮の走行経路ＲＴ１から優先的に生成できる。よって、車両１が走行開始時にスムーズに走行できる走行経路ＲＴ１を優先的に生成できるので、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０１４９】
ここで、図１３の説明に戻る。Ｓ３８の処理、又は、Ｓ４１の処理によって、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定されると、次に、１０の経路パターンＰＴ１〜ＰＴ１０を、優先順位の高い順に一つ特定し、その特定した経路パターンＰＴ１〜ＰＴ１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を取得する（Ｓ４２）。
【０１５０】
そして、その取得した経路パターン番号を、経路パターン番号により構成される一つの順列として、判定済み順列メモリ９３ｄに追加し（Ｓ４３）、次に、取得した経路パターン番号に対応する仮の走行経路ＲＴ１を生成し、その到着地点を取得する（Ｓ４４）。尚、上述したように、本実施形態では、仮の走行経路ＲＴ１が生成される場合、仮の走行経路ＲＴ１を構成する点のうち、２ｍ間隔の点である経路点Ｐの位置が、仮の走行経路ＲＴ１を示すデータとして生成される。
【０１５１】
次に、到着地点を示す経路点Ｐにおいて、駐車可能条件が成立しているかを判定し（Ｓ４５）、Ｓ４５の判定が否定される場合には（Ｓ４５：Ｎｏ）、経路パターンＰＴ１〜ＰＴ１０に優先順位を設定してから、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を全て取得したかを判定する（Ｓ４６）。Ｓ４６の判定が否定される場合には（Ｓ４６：Ｎｏ）、Ｓ４２の処理に戻る。
【０１５２】
例えば、Ｓ３７の処理において、シチュエーション判定テーブル（図７（ａ）参照）の中から、図７（ｂ）に示す優先順位の情報が取得され、Ｓ３８の処理おいて、１０の経路パターンＰＴ１〜ＰＴ１０にそれぞれ優先順位が設定されたとする。この場合に、Ｓ４２の処理が実行されると、優先順位が１位である経路パターンＰＴ７が特定され、その経路パターン番号「ＰＴ７」が取得される。
【０１５３】
その後、Ｓ４３の処理により、その経路パターン番号「ＰＴ７」が順列として判定済み順列メモリ９３ｄの先頭に記憶され、次に、Ｓ４４の処理により、経路パターン番号「ＰＴ７」に対応する仮の走行経路ＲＴ１が生成され、その仮の走行経路ＲＴ１の到着地点が取得される。
【０１５４】
すると、Ｓ４５の処理により、その到着地点において駐車可能条件が成立しているかが判定され、駐車可能条件が成立していない場合には、Ｓ４６の処理により、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を全て取得したかが判定される。ここでは、まだ、経路パターン番号「ＰＴ７」しか取得していないので、Ｓ４２の処理に戻り、Ｓ４２〜Ｓ４６の処理が繰り返される。
【０１５５】
ここで再度、Ｓ４２の処理が実行されると、今回は、優先順位が２位である経路パターンＰＴ３が特定され、その経路パターン番号「ＰＴ３」が取得される。そして、Ｓ４３の処理により、その経路パターン番号「ＰＴ３」が順列として判定済み順列メモリ９３ｄに追加される。即ち、判定済み順列メモリ９３ｄには、先頭から順番に「ＰＴ７」、「ＰＴ３」という順列が記憶される（図１１参照）。
【０１５６】
次に、Ｓ４４の処理により、経路パターン番号「ＰＴ３」に対応する仮の走行経路ＲＴ１が生成され、その仮の走行経路ＲＴ１の到着地点が取得される。すると、Ｓ４５の処理により、その到着地点において駐車可能条件が成立しているかが判定され、駐車可能条件が成立していない場合には、Ｓ４６の処理により、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を全て取得したかが判定される。ここでは、まだ、取得していない経路パターン番号があるので、Ｓ４２の処理に戻り、Ｓ４２〜Ｓ４６の処理が繰り返される。
【０１５７】
このＳ４２〜Ｓ４６の処理が繰り返されると、最終的には、判定済み順列メモリ９３ｄに、図７に示す優先順位と同様の順番で、先頭から「ＰＴ７」、「ＰＴ３」、「ＰＴ１」、・・・、「ＰＴ６」、「ＰＴ１０」という順列が記憶される（図１１参照）と共に、これらの経路パターン番号の順番に、その経路パターン番号に対応する仮の走行経路ＲＴ１が生成される。
【０１５８】
上述したように、図７に示す優先順位は、走行経路ＲＴ１〜ＲＴ３全体を生成する場合に、距離の短い走行経路ＲＴ１〜ＲＴ３や、搭乗者が想定する可能性の高い走行経路ＲＴ１〜ＲＴ３を優先的に生成するためのものである。よって、Ｓ４２〜Ｓ４６の処理を繰り返して、１個の経路パターンＰＴ１〜ＰＴ１０で、仮の走行経路ＲＴ１を生成する場合に、距離の短くなる可能性が高い仮の走行経路ＲＴ１や、搭乗者が想定する可能性の高い仮の走行経路ＲＴ１を優先的に生成できる。よって、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０１５９】
そして、Ｓ４６の判定が肯定される場合は（Ｓ４６：Ｙｅｓ）、１０の経路パターンＰＴ１〜ＰＴ１０を一つずつ順番に特定し、その特定された１個の経路パターンＰＴ１〜ＰＴ１０だけで仮の走行経路ＲＴ１を生成したが、何れの仮の走行経路ＲＴ１においても駐車可能条件が成立しなかった場合である。この場合は、点経路第１生成処理を終了し、自動駐車処理（図１２参照）に戻る。
【０１６０】
Ｓ４５の判定が肯定される場合には（Ｓ４５：Ｙｅｓ）、Ｓ４２の処理で取得した経路パターン番号「ＰＴ１〜ＰＴ１０」を、経路パターン番号により構成される一つの順列として、点経路パターンメモリ９３ａに記憶する（Ｓ４７）。尚、本実施形態では、Ｓ４５の処理において駐車可能条件が成立していると判定されると、駐車可能条件の成立している仮の走行経路ＲＴ１が、パターン走行部ＲＴ１に決定される。
【０１６１】
次に、図５（ｂ）で説明したように、後退旋回部ＲＴ２の経路点Ｐを決定し（Ｓ４８）、最終後退部ＲＴ３の経路点Ｐを決定する（Ｓ４９）。そして、一連の走行経路ＲＴ１〜ＲＴ３に対応する各経路点Ｐの経路点情報（車両位置および車両方位）を点経路メモリ９３ｂに記憶して（Ｓ５０）、この点経路生成処理を終了し、自動駐車処理（図１２参照）に戻る。
【０１６２】
以上の図１３に示す点経路第１生成処理により、シチュエーション判定テーブル、又は、車両１の現在の操舵角δｖに基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定できる。シチュエーション判定テーブルにより、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定された場合には、距離の短くなる可能性が高い仮の走行経路ＲＴ１や、搭乗者が想定する可能性の高い仮の走行経路ＲＴ１を優先的に生成できる。また、車両１の現在の操舵角δｖに基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定された場合には、車両１が走行開始時にスムーズに走行できる仮の走行経路ＲＴ１を優先的に生成できる。よって、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０１６３】
上述した点経路第１生成処理は、仮の走行経路ＲＴ１のうち、出発地点からの一区間分だけを生成するものである。この仮の走行経路ＲＴ１は、後述する点経路第２生成処理により、徐々に延長されていくため、最終的な走行経路ＲＴ１の形状は、仮の走行経路ＲＴ１のうち、出発地点からの一区間や、出発地点付近の区間の生成に用いられる経路パターンＰＴ１〜ＰＴ１０により概ね決まる。即ち、最終的な走行経路ＲＴ１の形状は、出発地点からの一区間や、出発地点付近の区間の生成に用いられる経路パターンＰＴ１〜ＰＴ１０の影響を大きく受ける。
【０１６４】
本実施形態では、シチュエーション判定テーブルや、車両１の現在の操舵角δｖを用いて、出発地点からの一区間の生成に用いられる経路パターンＰＴ１〜ＰＴ１０に優先順位を設定している。よって、この優先順位を適切に設定することで、仮の走行経路ＲＴ１を延長していく場合に、好適に延長できる可能性を高めることができ、好適な形状の仮の走行経路ＲＴ１を優先的に生成することができる。従って、より好適な形状の走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０１６５】
ここで、図１２の説明に戻る。点経路第１生成処理（Ｓ４）が終了したら、次に、Ｓ４の処理によって走行経路ＲＴ１〜ＲＴ３が生成されたかを判定する（Ｓ５）。Ｓ５の判定が肯定される場合には（Ｓ５：Ｙｅｓ）、Ｓ９の処理へ移行する。Ｓ５の判定が否定される場合は（Ｓ５：Ｎｏ）、１個の経路パターンＰＴ１〜ＰＴ１０だけで、走行経路ＲＴ１を生成できなかった場合である。この場合は、点経路第２生成処理を実行する（Ｓ６）。
【０１６６】
ここで、図１５を参照して、車両１に搭載された走行制御装置１００のＣＰＵ９１により実行される点経路第２生成処理について説明する。図１５は、走行制御装置１００により実行される点経路第２生成処理を示すフローチャートである。
【０１６７】
点経路第２生成処理は、経路パターン番号「ＰＴ１〜ＰＴ１０」を複数組み合わせて、経路パターン番号「ＰＴ１〜ＰＴ１０」の順列を生成し、その順列に対応する仮の走行経路ＲＴ１を生成するための処理である。また、生成した仮の走行経路ＲＴ１の終端において駐車可能条件が成立している場合に、出発地点から出発最終目的地までの走行経路ＲＴ１〜ＲＴ３全体を生成する。
【０１６８】
尚、点経路第２生成処理の開始時には、判定済み順列メモリ９３ｄに、図７（ｂ）に示す優先順位と同様の順番で、先頭から「ＰＴ７」、「ＰＴ３」、「ＰＴ１」、・・・、「ＰＴ６」、「ＰＴ１０」という順列（経路パターン番号）が記憶されているものとして説明する（図１１参照）。
【０１６９】
点経路第２生成処理では、まず、変数ａに２を設定し、変数ｍに６を設定して、変数ａ，ｍの初期設定を行う（Ｓ６１）。尚、変数ｍは、パターン走行部ＲＴ１を構成する経路パターンＰＴ１〜ＰＴ１０数の最大値を設定するものである。
【０１７０】
次に、判定済み順列メモリ９３ｄに記憶されている順列の中から、（ａ−１）個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列を、追加された順に一つ特定する（Ｓ６２）。そして、特定した順列における最後尾の経路パターン番号を取得して（Ｓ６３）、経路パターン優先順位テーブルから、Ｓ６３の処理で取得した経路パターン番号に対応する優先順位の情報を取得し（Ｓ６４）、その取得した優先順位の情報に基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定する（Ｓ６５）。
【０１７１】
例えば、点経路第２生成処理が実行開始されると、まず、変数ａ＝２に設定されるため、Ｓ６２の処理では、判定済み順列メモリ９３ｄに記憶されている順列の中から、１個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列が、追加された順に一つ特定される。よって、初回には、経路パターン番号「ＰＴ７」（経路パターン番号の順列とみなす）が特定される。
【０１７２】
そして、特定された順列は、経路パターン番号「ＰＴ７」のみで構成されているため、Ｓ６３の処理では、経路パターン番号「ＰＴ７」特定される。次に、Ｓ６４の処理が実行されると、経路パターン優先順位テーブル（図９参照）から、経路パターン番号「ＰＴ７」に対応する優先順位の情報が取得される。
【０１７３】
具体的には、経路パターン優先順位テーブル（図９参照）の７段目から、優先順位の情報として、優先順位１位が経路パターンＰＴ７、優先順位２位が経路パターンＰＴ９、優先順位３位が経路パターンＰＴ３、・・・、優先順位９位が経路パターンＰＴ８、優先順位１０位が経路パターンＰＴ１０という情報が取得される。
【０１７４】
そして、Ｓ６５の処理により、１０の経路パターンＰＴ１〜ＰＴ１０の各優先順位が、Ｓ６４の処理で取得した優先順位の情報と同一となるように、１０の経路パターンＰＴ１〜ＰＴ１０のそれぞれに優先順位が設定される。
【０１７５】
Ｓ６５の処理により優先順位が設定されると、次に、１０の経路パターンＰＴ１〜ＰＴ１０を、優先順位の高い順に一つ特定し、その特定した経路パターンＰＴ１〜ＰＴ１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を取得する（Ｓ６６）。そして、Ｓ６６の処理で取得した一の経路パターン番号を、Ｓ６２の処理で特定した順列の最後尾に組み合わせて、経路パターン番号の順列を新たに作成し（Ｓ６７）、その作成した順列を、判定済み順列メモリ９３ｄに追加する（Ｓ６８）。
【０１７６】
次に、Ｓ６７の処理で作成した順列に対応する仮の走行経路ＲＴ１を生成し、その到着地点を取得して（Ｓ６９）、その到着地点を示す経路点Ｐにおいて、駐車可能条件が成立しているかを判定する（Ｓ７０）。Ｓ７０の判定が否定される場合には（Ｓ７０：Ｎｏ）、経路パターンＰＴ１〜ＰＴ１０に優先順位を設定してから、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を全て取得したかを判定する（Ｓ７１）。Ｓ７１の判定が否定される場合には（Ｓ７１：Ｎｏ）、Ｓ６６の処理に戻る。
【０１７７】
上述したように、Ｓ６５の処理では、経路パターン優先順位テーブル（図９参照）の７段目と同様に、１０の経路パターンＰＴ１〜ＰＴ１０のそれぞれに優先順位が設定される。そのため、Ｓ６６の処理が実行されると、まず、優先順位が１位である経路パターンＰＴ７が特定され、その経路パターン番号「ＰＴ７」が取得される。
【０１７８】
その後、Ｓ６７の処理により、Ｓ６６の処理で取得した経路パターン番号「ＰＴ７」が、Ｓ６２の処理で特定した順列「ＰＴ７」の最後尾に組み合わされて、「ＰＴ７−ＰＴ７」という順列が新たに作成される。
【０１７９】
そして、Ｓ６８の処理により、その作成された順列が、判定済み順列メモリ９３ｄに追加され、次に、Ｓ６９の処理により、作成した順列「ＰＴ７−ＰＴ７」に対応する仮の走行経路ＲＴ１が生成され、その仮の走行経路ＲＴ１の到着地点が取得される。
【０１８０】
すると、Ｓ７０の処理により、その到着地点において駐車可能条件が成立しているかが判定され、駐車可能条件が成立していない場合には、Ｓ７０の処理により、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を全て取得したかが判定される。ここでは、まだ、経路パターン番号「ＰＴ７」しか取得していないので、Ｓ６６の処理に戻り、Ｓ６６〜Ｓ７１の処理が繰り返される。
【０１８１】
ここで再度、Ｓ６６の処理が実行されると、今回は、優先順位が２位である経路パターンＰＴ９が特定され、その経路パターン番号「ＰＴ９」が取得される。そして、Ｓ６７の処理により、Ｓ６６の処理で取得した経路パターン番号「ＰＴ９」が、Ｓ６２の処理で特定した順列「ＰＴ７」の最後尾に組み合わされて、「ＰＴ７−ＰＴ９」という順列が新たに作成される。
【０１８２】
そして、作成された順列「ＰＴ７−ＰＴ９」が、判定済み順列メモリ９３ｄに追加される。即ち、点経路第２生成処理が実行されると、判定済み順列メモリ９３ｄには、１番目に「ＰＴ７−ＰＴ７」という順列が、２番目に「ＰＴ７−ＰＴ９」という順列が追加される（図１１参照）。
【０１８３】
次に、Ｓ６９の処理により、作成された順列「ＰＴ７−ＰＴ９」に対応する仮の走行経路ＲＴ１が生成され、その仮の走行経路ＲＴ１の到着地点が取得される。すると、Ｓ７０の処理により、その到着地点において駐車可能条件が成立しているかが判定され、駐車可能条件が成立していない場合には、Ｓ７１の処理により、１０の経路パターン番号「ＰＴ１〜ＰＴ１０」を全て取得したかが判定される。ここでは、まだ、取得していない経路パターン番号があるので、Ｓ６６の処理に戻り、Ｓ６６〜Ｓ７１の処理が繰り返される。
【０１８４】
このＳ６６〜Ｓ７１の処理が繰り返されると、最終的には、判定済み順列メモリ９３ｄに、「ＰＴ７−ＰＴ７」、「ＰＴ７−ＰＴ３」、「ＰＴ７−ＰＴ３」、・・・、「ＰＴ７−ＰＴ８」、「ＰＴ７−ＰＴ１０」という順列が追加される（図１１参照）。
【０１８５】
尚、Ｓ６５の処理で設定された優先順位は、走行経路ＲＴ１を生成する場合に、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成するためのものである。よって、Ｓ６６〜Ｓ７１の処理を繰り返して、仮の走行経路ＲＴ１を生成する場合に、車両１の操舵角δの変化量が小さい仮の走行経路ＲＴ１を優先的に生成できるので、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成できる。よって、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０１８６】
Ｓ７１の判定が肯定される場合には（Ｓ７１：Ｙｅｓ）、（ａ−１）個の経路パターン番号で構成される順列を、判定済み順列メモリ９３ｄの中から全て取得したかを判定する（Ｓ７２）。Ｓ７２の判定が否定される場合には（Ｓ７２：Ｎｏ）、Ｓ６２の処理に戻り、Ｓ６２〜Ｓ７２の処理を繰り返す。
【０１８７】
ここで再度、Ｓ６２の処理が実行されると、今回は、判定済み順列メモリ９３ｄに記憶されている順列の中から、１個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列のうち、追加された順が次に早いものが一つ特定される。即ち、２回目には、経路パターン番号「ＰＴ３」（経路パターン番号の順列とみなす）が特定される。
【０１８８】
そして、特定された順列は、経路パターン番号「ＰＴ３」のみで構成されているため、Ｓ６３の処理では、経路パターン番号「ＰＴ３」特定される。次に、Ｓ６４の処理が実行されると、経路パターン優先順位テーブル（図９参照）から、経路パターン番号「ＰＴ３」に対応する優先順位の情報が取得される。
【０１８９】
具体的には、経路パターン優先順位テーブル（図９参照）の３段目から、優先順位の情報として、優先順位１位が経路パターンＰＴ３、優先順位２位が経路パターンＰＴ５、・・・、優先順位１０位が経路パターンＰＴ１０という情報が取得される。
【０１９０】
そして、Ｓ６５の処理により、１０の経路パターンＰＴ１〜ＰＴ１０の各優先順位が、Ｓ６４の処理で取得した優先順位の情報と同一となるように、１０の経路パターンＰＴ１〜ＰＴ１０のそれぞれに優先順位が設定される。そして、上述したように、Ｓ６６〜Ｓ７１の処理が繰り返される。
【０１９１】
ここで、Ｓ６６〜Ｓ７１の処理が繰り返されると、判定済み順列メモリ９３ｄに、「ＰＴ３−ＰＴ３」、「ＰＴ３−ＰＴ５」、・・・、「ＰＴ３−ＰＴ１０」という順列が追加される（図１１参照）。そして、以後同様に、Ｓ７２の判定が否定される間、Ｓ６２〜Ｓ７２の処理が繰り返される。
【０１９２】
Ｓ７２の判定が肯定される場合は（Ｓ７２：Ｙｅｓ）、ａ個の経路パターン番号で構成される順列を全て作成し、各順列に対応する仮の走行経路ＲＴ１を全て生成したが、何れの仮の走行経路ＲＴ１においても駐車可能条件が成立しなかった場合である。
【０１９３】
この場合は、変数ａの値が、変数ｍの値未満であるかを判定し（Ｓ７３）、Ｓ７３の判定が肯定される場合には（Ｓ７３：Ｙｅｓ）、変数ａに１を加算して（Ｓ７４）、Ｓ６２の処理に戻る。即ち、組み合わせる経路パターン番号の数を１増やして順列を生成し、仮の走行経路ＲＴ１を生成する。例えば、変数ａが２の場合には、変数ａ＝３と設定されて、Ｓ６２の処理に戻る。その結果、次は、３個の経路パターン番号で構成される順列が順番に生成されて、各順列に対応する仮の走行経路ＲＴ１が生成される。
【０１９４】
一方、Ｓ７３の判定が否定される場合は（Ｓ７３：Ｎｏ）、１個からｍ個までの経路パターン番号で構成される順列を全て作成し、各順列に対応する仮の走行経路ＲＴ１を全て生成したが、走行経路ＲＴ１〜ＲＴ３が見つからなかった場合である。この場合は、点経路第２生成処理を終了して、自動駐車処理（図１２参照）に戻る。
【０１９５】
Ｓ７０の判定が肯定される場合には（Ｓ７０：Ｙｅｓ）、Ｓ６７の処理で作成した順列を、点経路パターンメモリ９３ａに記憶する（Ｓ７５）。尚、本実施形態では、Ｓ７０の処理において駐車可能条件が成立していると判定されると、駐車可能条件の成立している仮の走行経路ＲＴ１が、パターン走行部ＲＴ１に決定される。
【０１９６】
次に、図５（ｂ）で説明したように、後退旋回部ＲＴ２の経路点Ｐを決定し（Ｓ７６）、最終後退部ＲＴ３の経路点Ｐを決定する（Ｓ７７）。そして、一連の走行経路ＲＴ１〜ＲＴ３に対応する各経路点Ｐの経路点情報（車両位置および車両方位）を点経路メモリ９３ｂに記憶して（Ｓ７８）、この点経路生成処理を終了し、自動駐車処理（図１２参照）に戻る。
【０１９７】
以上の図１５に示す点経路第２生成処理により、経路パターン優先順位テーブルに基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定できる。経路パターン優先順位テーブルにより、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定された場合には、車両１の操舵角δの変化量が小さい仮の走行経路ＲＴ１を優先的に生成できるので、車両１がスムーズに走行できる仮の走行経路ＲＴ１を優先的に生成できる。よって、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０１９８】
また、点経路第２生成処理では、判定済み順列メモリ９３ｄの中から、（ａ−１）個の経路パターン番号「ＰＴ１〜ＰＴ１０」で構成される順列を、追加された順に一つ特定し、その順列の最後尾に経路パターン番号「ＰＴ１〜ＰＴ１０」を追加して、新たな順列を生成している。
【０１９９】
上述したように、判定済み順列メモリ９３ｄには、経路パターン番号「ＰＴ１〜ＰＴ１０」の順列が、生成された順に追加されていく。本実施形態では、生成された順が早いものほど、優先度の高い順列であるので、判定済み順列メモリ９３ｄの中から、順列を取得する場合には、優先度の高い順に順列を取得できる。従って、仮の走行経路ＲＴ１を繰り返し生成する場合に、優先度の高い順に新たな順列を作成でき、優先すべきものから順に仮の走行経路ＲＴ１を生成できる。
【０２００】
また、上述したように、点経路第１生成処理（図１３参照）では、シチュエーション判定テーブルや、車両１の現在の操舵角δｖを用いて、仮の走行経路ＲＴ１のうち、出発地点からの一区間のみを生成している。一方、その後の区間については、上述した点経路第２生成処理により、経路パターン優先順位テーブルを用いて生成している。
【０２０１】
よって、仮の走行経路ＲＴ１が生成される場合に、シチュエーション判定テーブルと、経路パターン優先順位テーブルとが用いられると、距離の短くなる可能性が高い仮の走行経路ＲＴ１や、搭乗者が想定する可能性の高い仮の走行経路ＲＴ１が優先的に生成される。加えて、車両１がスムーズに走行できる仮の走行経路ＲＴ１が優先的に生成される。従って、距離の短い走行経路ＲＴ１や、搭乗者が想定する可能性の高い走行経路ＲＴ１であって、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成できる。故に、さらに好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２０２】
一方、仮の走行経路ＲＴ１が生成される場合に、車両１の現在の操舵角δと、経路パターン優先テーブルとが用いられると、車両１が走行開始時にスムーズに走行できる仮の走行経路ＲＴ１を優先的に生成できる。加えて、車両１がスムーズに走行できる仮の走行経路ＲＴ１を優先的に生成できる。従って、車両１が走行開始時にスムーズに走行でき、その後も、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成できる。故に、さらに好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２０３】
また、本実施形態では、点経路第１生成処理（図１３参照）においてのみ、即ち、出発地点からの一区間を生成する場合のみ、シチュエーション判定テーブルや、車両１の現在の操舵角δｖを用いている。これは、シチュエーション判定テーブルが、経路パターン優先順位テーブルよりも複雑に構成されているためであり、シチュエーション判定テーブルを参照して、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するよりも、経路パターン優先順位テーブルを参照して優先順位を設定した方が、処理が簡単だからである。同様に、車両１の現在の操舵角δｖを用いて演算を行い、その結果に基づいて１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するよりも、経路パターン優先順位テーブルを参照して優先順位を設定した方が、処理が簡単だからである。
【０２０４】
本実施形態では、仮の走行経路ＲＴ１を延長される場合、最大１０通りの方向へ延長されるので、仮の走行経路ＲＴ１が延長される回数が多くなるほど、分岐点の数が増え、更に、様々な方向へ向かって経路が延長されていく。その結果、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定する回数も多くなる。よって、仮の走行経路ＲＴ１を延長する場合に、毎回、シチュエーション判定テーブルや、車両１の現在の操舵角δｖを用いて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定すると、ＣＰＵ９１に負担が掛かるおそれがある。
【０２０５】
しかしながら、初回だけ用いることで、ＣＰＵ９１に掛かる制御的負担を抑制できる。また、上述したように、シチュエーション判定テーブルが用いられた場合には、距離の短くなる可能性が高い仮の走行経路ＲＴ１や、搭乗者が想定する可能性の高い仮の走行経路ＲＴ１を優先的に生成できる。よって、シチュエーション判定テーブルを、初回だけ用いることで、制御的負担を抑制しつつ、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２０６】
また、上述したように、仮の走行経路ＲＴ１を生成して、その生成した仮の走行経路ＲＴ１ついて駐車可能条件が成立しない場合、その駐車可能条件が成立しなかった仮の走行経路ＲＴ１を、以後、扱わないようにするのではなく、逆に、その駐車可能条件が成立しなかった仮の走行経路ＲＴ１を用いて、新たな仮の走行経路ＲＴ１を生成している。具体的には、仮の走行経路ＲＴ１の終端から１０通りの方向に走行経路を延長するように、１０通りの新たな仮の走行経路ＲＴ１を一つずつ順番に生成していく。
【０２０７】
これにより、経路パターンＰＴ１〜ＰＴ１０の種類が多くなくても、多種多様な仮の走行経路ＲＴ１を生成できると共に、生成する仮の走行経路ＲＴ１の数を増やすことができ、仮の走行経路ＲＴ１を生成した場合に、駐車可能条件が成立する可能性を高めることができる。よって、予め用意しておく経路パターンＰＴ１〜ＰＴ１０の数を抑制しつつ、走行経路ＲＴ１〜ＲＴ３が生成される可能性を向上させることができる。
【０２０８】
一方で、多種多様な仮の走行経路ＲＴ１を生成して、生成する仮の走行経路ＲＴ１の数を増やすと、車両１の搭乗者の意図に反する仮の走行経路ＲＴ１が生成される可能性も高くなる。例えば、切り返しの多い仮の走行経路ＲＴ１や、車両１の操舵角δの変化が多い仮の走行経路ＲＴ１や、走行距離の長い仮の走行経路ＲＴ１などが生成される可能性も高くなる。
【０２０９】
しかしながら、本実施形態では、上述したように、シチュエーション判定テーブルや、車両１の現在の操舵角δｖや、経路パターン優先順位テーブルを用いて、仮の走行経路ＲＴ１を生成するように構成している。よって、車両１の搭乗者の意図に反する仮の走行経路ＲＴ１が生成される可能性を抑制できる。
【０２１０】
即ち、仮の走行経路ＲＴ１が生成される場合に、シチュエーション判定テーブルと、経路パターン優先順位テーブルとが用いられると、多種多様な仮の走行経路ＲＴ１の中から、距離の短い走行経路ＲＴ１や、搭乗者が想定する可能性の高い走行経路ＲＴ１であって、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成できる。従って、予め用意しておく経路パターンＰＴ１〜ＰＴ１０の数を抑制しつつ、走行経路ＲＴ１〜ＲＴ３が生成される可能性を向上させることができる上、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２１１】
一方、仮の走行経路ＲＴ１が生成される場合に、車両１の現在の操舵角δと、経路パターン優先テーブルとが用いられると、多種多様な仮の走行経路ＲＴ１の中から、車両１が走行開始時にスムーズに走行でき、その後も、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成できる。よって、予め用意しておく経路パターンＰＴ１〜ＰＴ１０の数を抑制しつつ、走行経路ＲＴ１〜ＲＴ３が生成される可能性を向上させることができる上、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２１２】
ここで、図１２の説明に戻る。点経路第２生成処理（Ｓ６）が終了したら、次に、Ｓ６の処理によって走行経路ＲＴ１〜ＲＴ３が生成されたかを判定する（Ｓ７）。Ｓ７の判定が否定される場合は（Ｓ７：Ｎｏ）、最終目的地までの走行経路が見つからなかった場合なので、最終目的地までの走行経路ＲＴ１〜ＲＴ３が無いことを運転者に報知して（Ｓ８）、自動駐車処理を終了する。
【０２１３】
一方、Ｓ７の判定が肯定される場合には（Ｓ７：Ｙｅｓ）、変数である最大インデックス番号ＩＤｍａｘの初期設定を行う（Ｓ９）。そして、後述するＳ１１〜Ｓ１３の処理を実行して、Ｓ４またはＳ６の処理で生成した走行経路ＲＴ１〜ＲＴ３に対する走行制御点Ｑを生成する。
【０２１４】
具体的には、まず、変数ａの値が０より大きいかを判定し（Ｓ１０）、Ｓ１０の判定が肯定される場合は（Ｓ１０：Ｙｅｓ）、パターン走行部ＲＴ１が生成されている場合なので、パターン走行部制御点生成処理を実行して（Ｓ１１）、パターン走行部ＲＴ１に対する走行制御点Ｑを生成する。そして、Ｓ１２処理へ移行する。
【０２１５】
一方、Ｓ１０の判定が否定される場合は（Ｓ１０：Ｎｏ）、出発地点において駐車可能条件が成立した場合である。この場合は、パターン走行部ＲＴ１が存在しないので、Ｓ１１の処理をスキップして、Ｓ１２の処理へ移行する。Ｓ１２の処理では、後退旋回部制御点生成処理を実行して（Ｓ１２）、後退旋回部ＲＴ２に対する走行制御点Ｑを生成する。その後、最終後退部制御点生成処理を実行して（Ｓ１３）、最終後退部ＲＴ３に対する走行制御点Ｑを生成する。
【０２１６】
図２を参照して上述したように、本実施形態では、走行経路ＲＴ１〜ＲＴ３上のうち、各経路点Ｐに対応する位置だけでなく、各経路点Ｐ間にも仮想的に走行制御点Ｑを生成している。理想的には、各経路点Ｐ間に対応する位置にだけ仮想的に走行制御点Ｑを生成し、その走行制御点Ｑに基づいて車両１を自律走行させれば、車両１が走行経路ＲＴ１〜ＲＴ３上を走行できるが、実際には、路面の状況や、車両１の搭乗者数や荷重などの様々な外乱により、走行経路ＲＴ１〜ＲＴ３上から車両位置がズレてしまう場合がある。
【０２１７】
そこで、本実施形態では、各経路点Ｐに対応する位置に加え、各経路点Ｐ間にも仮想的に走行制御点Ｑを生成し、各走行制御点Ｑごとに、進行方向などの車両１の走行状態を補正できるようにしている。よって、走行制御装置１００が、車両１を自律走行させて走行経路ＲＴ１〜ＲＴ３上を走行させる場合に、走行経路ＲＴ１〜ＲＴ３上を車両１がスムーズに走行できるように、車両１の走行状態を制御できる。
【０２１８】
ここで、図１６〜図２１を参照して、パターン走行部制御点生成処理（Ｓ１１）、後退旋回部制御点生成処理（Ｓ１２）、最終後退部制御点生成処理（Ｓ１３）について説明する。まず、図１６を参照して、パターン走行部制御点生成処理（Ｓ１１）について説明する。図１６は、走行制御装置１００により実行されるパターン走行部制御点生成処理を示すフローチャートである。
【０２１９】
パターン走行部制御点生成処理は、Ｓ４またはＳ６の処理で生成された走行経路ＲＴ１〜ＲＴ３のうち、パターン走行部ＲＴ１に対する走行制御点Ｑを生成するための処理であり、隣接する経路点Ｐ間ごとに０．０５ｍ間隔で走行制御点Ｑを生成する。パターン走行部ＲＴ１では、隣接する経路点Ｐ間の走行距離ＣＬが全て２ｍとなるので、隣接する経路点Ｐ間には常に４１個の走行制御点Ｑが必要となるが、このパターン走行部制御点生成処理では、出発地点に近い側の経路点Ｐに重なる走行制御点は生成せずに、それ以外の４０個の走行制御点Ｑを生成する。
【０２２０】
より具体的には、隣接する２つの経路点のうち、出発地点に近い側の経路点Ｐを第１経路点Ｐとし、最終目的地に近い側の経路点Ｐを第２経路点Ｐとした場合、第１経路点Ｐ上には走行制御点Ｑを生成せず、第１経路点Ｐから０．０５ｍだけ第２経路点Ｐに近づいた位置に１番目の走行制御点Ｑを生成する。そして、順番に走行制御点Ｑを生成し、４０番目の走行制御点Ｑが第２経路点Ｐに重なるようにしている。
【０２２１】
パターン走行部制御点生成処理では、まず、変数ｊに０を設定し、変数ｎに４０を設定して、変数ｊ，ｎの初期設定を行う（Ｓ８１）。次に、出発地点からｊ番目の経路点Ｐを第１経路点Ｐとし、（ｊ＋１）番目の経路点Ｐを第２経路点Ｐとする（Ｓ８２）。例えば、図２に示す走行経路ＲＴ１では、経路点ＰがＰ０〜Ｐ６まで７個設けられている。ここで、変数ｊが０の場合には、経路点Ｐ０を第１経路点Ｐとし、経路点Ｐ１を第２経路点Ｐとする。
【０２２２】
次に、第１経路点Ｐの経路点情報である車両位置および車両方位を、ＲＡＭ９３の点経路メモリ９３ｂから取得し（Ｓ８３）、同様に、第２経路点Ｐの経路点情報である車両位置および車両方位を、点経路メモリ９３ｂから取得する（Ｓ８４）。
【０２２３】
そして、車両１が第１経路点Ｐから第２経路点Ｐへ向かうための車両１の操舵角δと、車両１の旋回中心Ｋと、車両１の旋回半径Ｒとをそれぞれ算出する（Ｓ８５）。Ｓ８５の処理では、点経路パターンメモリ９３ａ記憶されている経路パターン番号の順列に基づいて、操舵角δと、旋回中心Ｋと、旋回半径Ｒとをそれぞれ算出する。パターン走行部ＲＴ１は、経路パターンＰＴ１〜ＰＴ１０に対応する走行経路を繋ぎ合わせたものなので、走行距離ＣＬと、旋回半径Ｒとがそもそも決まっており、その結果、操舵角δと、旋回中心Ｋと、旋回半径Ｒとがそれぞれ一意に定まる。なお、車両１の旋回半径をＲとし、車両１における前輪２ＦＬ，２ＦＲの車軸と、車両１における後輪２ＲＬ，２ＲＲの車軸との軸間距離をホイールベースＷＬとした場合、車両１の操舵角δは、
δ＝ｔａｎ−１（ＷＬ／Ｒ）
により算出される。また、車両１が第１経路点Ｐから第２経路点Ｐへ移動した場合の車両方位の変化量Δθを算出する（Ｓ８６）。なお、車両方位の変化量Δθを算出する式については後述する。
【０２２４】
そして、変数ｉを１に設定して、変数ｉの初期設定を行う（Ｓ８７）。次に、第１経路点Ｐから第２経路点Ｐまでの経路上に設ける各走行制御点Ｑのうち、第１経路点Ｐからｉ番目の走行制御点Ｑの位置（車両位置）と、その車両方位とを算出する（Ｓ８８）。なお、１番目の走行制御点Ｑは、第１経路点Ｐから０．０５ｍだけ第２経路点Ｐに近づく走行制御点Ｑとなり、４０番目の走行制御点Ｑは、第２経路点Ｐに重なるようにしている。
【０２２５】
ここで、図１７を参照して、パターン走行部ＲＴ１に対して生成される走行制御点Ｑの位置と、その車両方位とについて説明する。図１７は、走行経路ＲＴ１〜ＲＴ３のうち、パターン走行部ＲＴ１に対して生成される走行制御点Ｑの一例を説明するための模式図であり、隣接している２つの経路点Ｐ間を図示したものである。ここでは、第１経路点をＰｖ０（ｘｖ０，ｙｖ０）と示し、第２経路点をＰｖｎ（ｘｖｎ，ｙｖｎ）と示している。
【０２２６】
パターン走行部ＲＴ１は、経路パターンＰＴ１〜ＰＴ１０に対応する走行経路に基づいて生成されるものなので、走行距離ＣＬと、旋回半径Ｒとがそもそも決まっている。よって、車両１が第１経路点Ｐｖ０から第２経路Ｐｖｎへ移動する場合の、旋回半径Ｒと、旋回中心Ｋ（ｘｋ，ｙｋ）とが予め定まる。また、第１経路点Ｐｖ０から第２経路Ｐｖｎまでの車両１の走行距離ＣＬは全て２ｍとなる。従って、第１経路点Ｐｖ０における車両方位θｖ０と、第２経路点Ｐｖｎにおける車両方位θｖｎとの変化量をΔθとした場合、その変化量Δθは、
Δθ＝ＣＬ／Ｒ
により算出される。
【０２２７】
図１６のＳ８６の処理では、この式により車両方位の変化量Δθを算出する。そして、第１経路点Ｐからｉ番目の走行制御点をＱ（ｘｖｉ，ｙｖｉ）とし、その車両方位をθｉとすると、
θｉ＝ｉ・Δθ／４０
ｘｖｉ＝ｘｋ＋Ｒ・ｃｏｓ（θｖ０−π／２＋θｉ）
ｙｖｉ＝ｙｋ＋Ｒ・ｓｉｎ（θｖ０−π／２＋θｉ）
により算出される。ここで、第１経路点Ｐから１番目の走行制御点Ｑは、第１経路点Ｐから０．０５ｍだけ第２経路点Ｐに近づく走行制御点Ｑとなり、４０番目の走行制御点Ｑは、第２経路点Ｐに重なるようにしている。
【０２２８】
以上の図１７を参照して説明した数式を用いることにより、パターン走行部ＲＴ１の各経路点Ｐ間において、４０個の走行制御点Ｑの位置と、その位置における車両１の車両方位θｉとを算出できるので、パターン走行部ＲＴ１に対応する各走行制御点Ｑを全て生成できる。
【０２２９】
本実施形態では、経路パターンＰＴ１〜ＰＴ１０の組み合わせに基づいて、２ｍ間隔で大まかに経路点Ｐを生成し走行経路ＲＴ１を生成しても、その後、走行経路ＲＴ１の各経路点Ｐ間に、０．０５ｍ間隔で仮想的に走行制御点Ｑを生成できる。また、詳細については後述するが、走行経路ＲＴ２，ＲＴ３についても、走行経路ＲＴ２，ＲＴ３の各経路点Ｐ間に、０．０５ｍ間隔で仮想的に走行制御点Ｑを生成できる。
【０２３０】
従って、経路パターンＰＴ１〜ＰＴ１０に対応する各走行経路の長さＣＬを短く（例えば、０．０５ｍなど）しておき、詳細に走行経路ＲＴ１を生成したり、経路パターンＰＴ１〜ＰＴ１０のパターンの種類を多数設けて記憶しておく必要が無いので、処理コストを抑制できる。
【０２３１】
ここで、図１６の説明に戻る。そして、第１経路点Ｐからｉ番目の走行制御点Ｑにおける操舵角δと、進行方向（前進または後退）と、切り返しの有無とを取得する（Ｓ８９）。Ｓ８９の処理において、操舵角δは、何番目の走行制御点Ｑかに関係なく、全て第１経路点Ｐと同一の操舵角δが取得される。また、進行方向は、何番目の走行制御点Ｑかに関係なく、全て同じ方向（前進または後退）を示す値が取得される。
【０２３２】
なお、進行方向は、第１経路点Ｐから第２経路点Ｐに向かう経路パターンＰＴ１〜ＲＴ１０に基づいて一意に決まり、点経路パターンメモリ９３ａの内容に基づいて取得される。より具体的には、第１経路点Ｐから第２経路点Ｐに向かう経路パターンＰＴ１〜ＰＴ１０が、車両１を前進させる経路パターンＰＴ１，ＰＴ３，ＰＴ４，ＰＴ７，ＰＴ８であれば、進行方向として前進を示す値が取得される。一方、車両１を後退させる経路パターンＰＴ２，ＰＴ５，ＰＴ６，ＰＴ９，ＰＴ１０であれば、進行方向として後退を示す値が取得される。
【０２３３】
また、切り返しの有無は、第２経路点Ｐに重なる走行制御点Ｑを除き、切り返しなしを示す値が取得される。そして、第２経路点Ｐと重なる走行制御点Ｑについては、切り返しの有無が、点経路パターンメモリ９３ａの内容に基づいて取得される。より具体的には、第１経路点Ｐから第２経路点Ｐへ向かう経路パターンＰＴ１〜ＰＴ１０と、第２経路点Ｐからその次の経路点Ｐに向かう経路パターンＰＴ１〜ＰＴ１０とが共に、車両１を前進させる経路パターンＰＴ１，ＰＴ３，ＰＴ４，ＰＴ７，ＰＴ８、又は、車両１を後退させる経路パターンＰＴ２，ＰＴ５，ＰＴ６，ＰＴ９，ＰＴ１０であれば、第２経路点Ｐに重なる走行制御点Ｑの切り返しの有無として、切り返しなしを示す値が取得される。
【０２３４】
一方、第１経路点Ｐから第２経路点Ｐへ向かう経路パターンＰＴ１〜ＰＴ１０と、第２経路点Ｐからその次の経路点Ｐに向かう経路パターンＰＴ１〜ＰＴ１０との一方が、車両１を前進させる経路パターンＰＴ１，ＰＴ３，ＰＴ４，ＰＴ７，ＰＴ８であり、他方が車両１を後退させる経路パターンＰＴ２，ＰＴ５，ＰＴ６，ＰＴ９，ＰＴ１０であれば、第２経路点Ｐに重なる走行制御点Ｑの切り返しの有無として、切り返しありを示す値が取得される。
【０２３５】
Ｓ８９の処理が終了したら、ｉ番目の走行制御点Ｑに対応する車両設定情報（車両位置、車両方位θ、操舵角δ、進行方向フラグ、切り返しフラグ）に、現在の最大インデックス番号ＩＤｍａｘを関連づけて、ＲＡＭ９３の走行制御点メモリ９３ｃに記憶する（Ｓ９０）。
【０２３６】
上述したように、最大インデックス番号ＩＤｍａｘは、図１２のＳ９の処理により１に初期設定され、その後、最終目的地に重なる走行制御点Ｑが生成されるまで、走行制御点Ｑが生成される度に１が加算される。よって、走行制御点Ｑを生成して、その走行制御点Ｑに対応する車両設定情報に、現在の最大インデックス番号ＩＤｍａｘを関連づける処理を繰り返すことで、各走行制御点Ｑの車両設定情報に、連続するＩＤ番号を１から順番に関連づけていくことができる。
【０２３７】
なお、Ｓ８９の処理において、進行方向として前進を示す値が取得されていれば、Ｓ９０の処理では、進行方向フラグが「１」に設定され、進行方向として後退を示す値が取得されていれば、進行方向フラグが「−１」に設定される。また、Ｓ８９の処理において、切り返しの有無として切り返しなしを示す値が取得されていれば、Ｓ９０の処理では、切り返しフラグが「０」に設定され、切り返しの有無として切り返しありを示す値が取得されていれば、切り返しフラグが「１」に設定される。
【０２３８】
また、Ｓ９０の処理において、走行制御点Ｑの車両設定情報を走行制御点メモリ９３ｃに記憶する場合には、他の走行制御点Ｑの車両設定情報を上書しないように、各走行制御点Ｑの車両設定情報をそれぞれ個別に記憶する（図１０参照）。
【０２３９】
Ｓ９０の処理が終了したら、次に、現在の最大インデックス番号ＩＤｍａｘに１を加算して、最大インデックス番号ＩＤｍａｘを更新する（Ｓ９１）。
【０２４０】
次に、変数ｉの値が、変数ｎの値未満であるかを判定し（Ｓ９２）、Ｓ９２の判定が肯定される場合には（Ｓ９２：Ｙｅｓ）、変数ｉに１を加算して（Ｓ９３）、Ｓ８８の処理に戻る。そして、第１経路点Ｐから第２経路点Ｐまでの経路上に、４０個の走行制御点Ｑを順番に生成する。
【０２４１】
一方、Ｓ９２の判定が否定される場合は（Ｓ９２：Ｎｏ）、第１経路点Ｐから第２経路点Ｐの間に、４０個の走行制御点Ｑを設定した場合なので、パターン走行部ＲＴ１の走行制御点Ｑを全て生成したかを判定する（Ｓ９４）。
【０２４２】
Ｓ９４の判定が否定される場合には（Ｓ９４：Ｎｏ）、変数ｊに１を加算して（Ｓ９５）、Ｓ８２の処理に戻り、次の経路点Ｐ間についても、４０個の走行制御点Ｑを生成する。Ｓ９４の判定が肯定される場合には（Ｓ９４：Ｙｅｓ）、パターン走行部制御点生成処理を終了して、自動駐車処理（図１２参照）に戻る。
【０２４３】
尚、Ｓ９０の処理が実行された場合に、パターン走行部ＲＴ１における最後の走行制御点Ｑの車両設定情報が走行制御点メモリ９３ｃに記憶されると、その後、Ｓ９１の処理が実行されて、最大インデックス番号ＩＤｍａｘが更新される。そして、Ｓ９２の判定が否定されてＳ９２：Ｎｏへ分岐し、更に、Ｓ９４の判定が否定されてＳ９４：Ｎｏへ分岐して、パターン走行部制御点生成処理が終了する。
【０２４４】
その結果、最大インデックス番号ＩＤｍａｘは、実在しない走行制御点ＱのＩＤ番号を示すことになるが、この最大インデックス番号ＩＤｍａｘは、後述する後退旋回部制御点生成処理が実行された場合に、後退旋回部ＲＴ２の最初の走行制御点Ｑの車両設定情報に関連づけられる。よって、走行制御点Ｑの車両設定情報に不連続となるＩＤ番号が関連づけられることはない。
【０２４５】
次に、図１８を参照して、後退旋回部制御点生成処理（Ｓ１２）について説明する。図１８は、走行制御装置１００により実行される後退旋回部制御点生成処理を示すフローチャートである。
【０２４６】
後退旋回部制御点生成処理は、Ｓ４またはＳ６の処理で生成された走行経路ＲＴ１〜ＲＴ３のうち、後退旋回部ＲＴ２に対する走行制御点Ｑを生成するための処理であり、後退旋回部ＲＴ２を示す２つの各経路点Ｐ間に、０．０５ｍ間隔で走行制御点Ｑを生成する。なお、後退旋回部ＲＴ２は、パターン走行部ＲＴ１のように走行距離ＣＬが一定とならないため、走行距離ＣＬに応じた数の走行制御点Ｑが、２つの経路点Ｐ間に生成される。
【０２４７】
尚、後退旋回部制御点生成処理でも、パターン走行部制御点生成処理（図１６参照）と同様に、隣接する２つの経路点のうち、出発地点に近い側の経路点Ｐを第１経路点Ｐとし、最終目的地に近い側の経路点Ｐを第２経路点Ｐとした場合、第１経路点Ｐ上には走行制御点Ｑを生成せず、第１経路点Ｐから０．０５ｍだけ第２経路点Ｐに近づいた位置に１番目の走行制御点Ｑを生成している。そして、順番に走行制御点Ｑを生成し、最後の走行制御点Ｑが第２経路点Ｐに重なるようにしている。
【０２４８】
後退旋回部制御点生成処理では、まず、走行経路ＲＴ１〜ＲＴ３を示す各経路点Ｐのうち、後退旋回部ＲＴ２を示す２つの各経路点Ｐを特定する（Ｓ１０１）。例えば、図２に示す走行経路ＲＴ１〜ＲＴ３であれば、経路点Ｐ６と、経路点Ｐ７とが特定される。
【０２４９】
次に、特定した２つの経路点Ｐのうち、走行経路ＲＴ１〜ＲＴ３上で出発地点に近い側の経路点Ｐを第１経路点Ｐとし、最終目的地に近い側の経路点Ｐを第２経路点Ｐとする（Ｓ１０２）。そして、第１経路点Ｐの経路点情報である車両位置および車両方位を、ＲＡＭ９３の点経路メモリ９３ｂから取得し（Ｓ１０３）、同様に、第２経路点Ｐの経路点情報である車両位置および車両方位を、点経路メモリ９３ｂから取得する（Ｓ１０４）。
【０２５０】
次に、車両１が第１経路点Ｐから第２経路点Ｐへ向かうための車両１の操舵角δと、車両１の旋回中心Ｋと、車両１の旋回半径Ｒとをそれぞれ算出する（Ｓ１０５）。なお、ここでの車両１の旋回中心Ｋと、車両１の旋回半径Ｒは、駐車可能条件が成立した場合に算出された旋回中心Ｋと、旋回半径Ｒｐとである。そして、車両１の旋回半径をＲとし、車両１のホイールベースをＷＬとした場合、車両１の操舵角δは、
δ＝ｔａｎ−１（ＷＬ／Ｒ）
により算出される。また、車両１が第１経路点Ｐから第２経路点Ｐへ移動した場合の車両方位の変化量Δθを算出する（Ｓ１０６）。なお、車両方位の変化量Δθを算出する式については後述する。
【０２５１】
そして、第１経路点Ｐから第２経路点Ｐの間に生成する走行制御点Ｑの数を算出し、変数ｎに代入する（Ｓ１０７）。なお、走行制御点Ｑの数を算出する数式についても後述する。
【０２５２】
次に、変数ｉを１に設定して、変数ｉの初期設定を行う（Ｓ１０８）。そして、第１経路点Ｐから第２経路点Ｐまでの走行経路に対して生成する各走行制御点Ｑのうち、第１経路点Ｐからｉ番目の走行制御点Ｑの位置（車両位置）と、その車両方位とを算出する（Ｓ１０９）。なお、１番目の走行制御点Ｑは、第１経路点Ｐから０．０５ｍだけ第２経路点Ｐに近づく走行制御点Ｑとなり、ｎ番目の走行制御点Ｑは、第２経路点Ｐに重なるようにしている。
【０２５３】
ここで、図１９を参照して、後退旋回部ＲＴ２に対して生成される走行制御点Ｑの位置と、その車両方位とについて説明する。図１９は、走行経路ＲＴ１〜ＲＴ３のうち、後退旋回部ＲＴ２に対して生成される走行制御点Ｑの一例を説明するための模式図であり、後退旋回部ＲＴ２を示す２つの経路点Ｐ間を図示したものである。ここでは、２つの経路点Ｐのうち、第１経路点をＰｖ０（ｘｖ０，ｙｖ０）と示し、第２経路点をＰｖｎ（０，ｙｖｎ）と示している。なお、第２経路点Ｐｖｎでは、車両１の前後軸がｙ軸と必ず重なるため、ｘ値が０になると共に車両方位がπ／２となる。
【０２５４】
後退旋回部ＲＴ２は、パターン走行部ＲＴ１に続く走行経路であって、パターン走行部ＲＴ１の終端から目標とする駐車位置に、車両１が同一の操舵角δで後退旋回するように走行経路が決定される（図１３のＳ４８、図１５のＳ７６参照）。よって、後退旋回部ＲＴ２が決定された場合には、その旋回中心Ｋ（ｘｋ，ｙｋ）と、旋回半径Ｒとが確定する。
【０２５５】
従って、第１経路点Ｐｖ０における車両方位θｖ０と、第２経路点Ｐｖｎにおける車両方位π／２との変化量をΔθとした場合、その変化量Δθは、
Δθ＝θｖ０−π／２
により算出される。図１８のＳ１０７の処理では、この式により車両方位の変化量Δθを算出する。そして、第１経路点Ｐｖ０から第２経路点Ｐｖｎまでの走行距離ＣＬは、
ＣＬ＝Ｒ・Δθ
により算出される。
【０２５６】
故に、第１経路点Ｐｖ０から第２経路点Ｐｖｎまでの間に、０．０５ｍ間隔で走行制御点Ｑを生成すると、その合計数ｎは、
ｎ＝Ｒ・Δθ／０．０５
となる。なお、合計数ｎが整数にならない場合は、少数点以下を切り上げて整数にする。図１８のＳ１０７の処理では、この式により算出される合計数ｎを、変数ｎに代入している。
【０２５７】
そして、第１経路点Ｐｖ０からｉ番目の走行制御点をＱ（ｘｖｉ，ｙｖｉ）とし、その車両方位をθｉとすると、
θｉ＝Δθ・（ｎ−ｉ）／ｎ
ｘｖｉ＝ｘｋ＋Ｒ・ｃｏｓ（θｉ）
ｙｖｉ＝ｙｋ＋Ｒ・ｓｉｎ（θｉ）
により算出される。ここで、第１経路点Ｐｖ０から１番目の走行制御点Ｑは、第１経路点Ｐｖ０から０．０５ｍだけ第２経路点Ｐに近づく走行制御点Ｑとなり、第１経路点Ｐｖ０からｎ番目の走行制御点Ｑは、第２経路点Ｐｖｎと重なるようにしている。
【０２５８】
以上の図１９を参照して説明した数式を用いることにより、後退旋回部ＲＴ２の経路点Ｐ間において、ｎ個の各走行制御点Ｑの位置と、その位置における車両１の車両方位θｉとを算出できるので、後退旋回部ＲＴ２に対応する各走行制御点Ｑを全て生成できる。
【０２５９】
ここで、図１８の説明に戻る。次に、第１経路点Ｐからｉ番目の走行制御点Ｑにおける操舵角δと、進行方向（前進または後退）と、切り返しの有無とを取得する（Ｓ１１０）。なお、Ｓ１１０の処理では、操舵角δは、何番目の走行制御点Ｑかに関係なく、全て第１経路点Ｐと同一の操舵角δが取得される。また、進行方向は、全て後退を示す値が取得される。また、切り返しの有無は、全て切り返しなしを示す値が取得される。
【０２６０】
Ｓ１１０の処理が終了したら、ｉ番目の走行制御点Ｑに対応する車両設定情報（車両位置、車両方位、操舵角δ、進行方向フラグ、切り返しフラグ）に、現在の最大インデックス番号ＩＤｍａｘを関連づけて、ＲＡＭ９３の走行制御点メモリ９３ｃに記憶する（Ｓ１１１）。
【０２６１】
上述したように、最大インデックス番号ＩＤｍａｘは、図１２のＳ９の処理により１に初期設定され、その後、最終目的地に重なる走行制御点Ｑが生成されるまで、走行制御点Ｑが生成される度に１が加算される。また、図１２のＳ１０の判定において、Ｓ１０の判定が肯定されていれば、上述したパターン走行部制御点生成処理（図１６参照）が実行された後である。よって、最初にＳ１１１の処理が実行される場合には、図１６のＳ９１の処理により、最大インデックス番号ＩＤｍａｘが、後退旋回部ＲＴ２の最初のＩＤ番号に更新されている。
【０２６２】
従って、走行制御点Ｑを生成して、その走行制御点Ｑに対応する車両設定情報に、現在の最大インデックス番号ＩＤｍａｘを関連づける処理を繰り返すことで、走行経路ＲＴ１〜ＲＴ２まで通して連続するＩＤを、各走行制御点Ｑの車両設定情報に順番に関連づけることができる。
【０２６３】
一方、図１２のＳ１０の処理において、Ｓ１０の判定が否定されていれば、上述したパターン走行部制御点生成処理（図１６参照）がスキップされるので、最大インデックス番号ＩＤｍａｘは１に初期設定された状態である。よって、走行制御点Ｑを生成して、その走行制御点Ｑに対応する車両設定情報に、現在の最大インデックス番号ＩＤｍａｘを関連づける処理を繰り返すことで、各走行制御点Ｑの車両設定情報に、連続するＩＤ番号を１から順番に関連づけることができる。
【０２６４】
なお、ここでは、進行方向フラグは全て「−１」に設定され、切り返しフラグは全てオフに設定される。また、走行制御点Ｑの車両設定情報を走行制御点メモリ９３ｃに記憶する場合には、他の走行制御点Ｑの車両設定情報を上書しないように、各走行制御点Ｑの車両設定情報をそれぞれ個別に記憶する。
【０２６５】
Ｓ１１１の処理が終了したら、次に、現在の最大インデックス番号ＩＤｍａｘに１を加算して、最大インデックス番号ＩＤｍａｘを更新する（Ｓ１１２）。次に、変数ｉの値が、変数ｎの値未満であるかを判定し（Ｓ１１３）、Ｓ１１３の判定が肯定される場合には（Ｓ１１３：Ｙｅｓ）、変数ｉに１を加算して（Ｓ１１４）、Ｓ１０９の処理に戻る。そして、第１経路点Ｐから第２経路点Ｐまでの経路上に、ｎ個の走行制御点Ｑを順番に生成する。一方、Ｓ１１３の判定が否定される場合は（Ｓ１１３：Ｎｏ）、ｎ個の走行制御点Ｑを全て生成した場合なので、後退旋回部制御点生成処理を終了して、自動駐車処理（図１２参照）に戻る。
【０２６６】
尚、Ｓ１１１の処理が実行された場合に、後退旋回部ＲＴ２における最後の走行制御点Ｑの車両設定情報が走行制御点メモリ９３ｃに記憶されると、その後、Ｓ１１２の処理が実行されて、最大インデックス番号ＩＤｍａｘが更新される。そして、Ｓ１１３の判定が否定されてＳ１１３：Ｎｏへ分岐して、パターン走行部制御点生成処理が終了する。
【０２６７】
その結果、最大インデックス番号ＩＤｍａｘは、実在しない走行制御点ＱのＩＤ番号を示すことになるが、この最大インデックス番号ＩＤｍａｘは、後述する最終後退部制御点生成処理が実行された場合に、最終後退部ＲＴ３の最初の走行制御点Ｑの車両設定情報に関連づけられる。よって、走行制御点Ｑの車両設定情報に不連続となるＩＤ番号が関連づけられることはない。
【０２６８】
次に、図２０を参照して、最終後退部制御点生成処理（Ｓ１３）について説明する。図２０は、走行制御装置１００により実行される最終後退部制御点生成処理を示すフローチャートである。
【０２６９】
最終後退部制御点生成処理は、Ｓ４またはＳ６の処理で生成された走行経路ＲＴ１〜ＲＴ３のうち、最終後退部ＲＴ３に対する走行制御点Ｑを生成するための処理であり、最終後退部ＲＴ３を示す２つの経路点Ｐ間に、０．０５ｍ間隔で走行制御点Ｑを生成する。なお、最終後退部ＲＴ３は、後退旋回部ＲＴ２と同様に走行距離ＣＬが一定とならないため、走行距離ＣＬに応じた数の走行制御点Ｑが、２つの経路点Ｐ間に生成される。
【０２７０】
尚、最終後退部制御点生成処理でも、パターン走行部制御点生成処理（図１６参照）と同様に、隣接する２つの経路点のうち、出発地点に近い側の経路点Ｐを第１経路点Ｐとし、最終目的地に近い側の経路点Ｐを第２経路点Ｐとした場合、第１経路点Ｐ上には走行制御点Ｑを生成せず、第１経路点Ｐから０．０５ｍだけ第２経路点Ｐに近づいた位置に１番目の走行制御点Ｑを生成している。そして、順番に走行制御点Ｑを生成し、最後の走行制御点Ｑが第２経路点Ｐに重なるようにしている。
【０２７１】
最終後退部制御点生成処理におけるＳ１２２〜Ｓ１２５の各処理は、上述した図１８の後退旋回部制御点生成処理におけるＳ１０２〜Ｓ１０５の各処理と同様な処理であり、最終後退部制御点生成処理におけるＳ１２７〜Ｓ１３０の各処理は、上述した図１８の後退旋回部制御点生成処理におけるＳ１０８〜Ｓ１１１の各処理と同様な処理である。
【０２７２】
また、最終後退部制御点生成処理におけるＳ１３１，Ｓ１３２の各処理は、上述した図１８の後退旋回部制御点生成処理におけるＳ１１３，Ｓ１１４の各処理と同様な処理である。よって、同様な処理についてはその詳細な説明を省略し、異なる部分（Ｓ１２１，Ｓ１２６，Ｓ１３３）についてのみ詳細に説明する。
【０２７３】
最終後退部制御点生成処理では、まず、走行経路ＲＴ１〜ＲＴ３を示す各経路点Ｐのうち、最終後退部ＲＴ３を示す２つの各経路点Ｐを特定する（Ｓ１２１）。例えば、図２に示す走行経路ＲＴ１〜ＲＴ３であれば、経路点Ｐ７と、経路点Ｐ８とが特定される。そして、Ｓ１２２〜Ｓ１２５の各処理を実行し、次に、第１経路点Ｐから第２経路点Ｐの間に生成する走行制御点Ｑの数を算出し、変数ｎに代入する（Ｓ１２６）。なお、走行制御点Ｑの数を算出する数式については後述する。
【０２７４】
そして、Ｓ１２７〜Ｓ１３０の各処理を実行する。なお、最終後退部ＲＴ３では、車両１の前後軸がｙ軸と必ず重なる状態で、車両１が後退直進するため、車両方位が常にπ／２となる。よって、Ｓ１２９の処理では、操舵角δは、何番目の走行制御点Ｑかに関係なく、全て０が取得される。また、進行方向は、全て後退を示す値が取得される。また、切り返しの有無は、全て切り返しなしを示す値が取得される。よって、Ｓ１３０の処理では、進行方向フラグは全て「−１」に設定され、切り返しフラグは全てオフに設定される。
【０２７５】
また、上述したように、最大インデックス番号ＩＤｍａｘは、図１２のＳ９の処理により１に初期設定され、その後、最終目的地に重なる走行制御点Ｑが生成されるまで、走行制御点Ｑが生成される度に１が加算される。最初にＳ１３０の処理が実行される場合は、図１６のＳ９１の処理や、図１８のＳ１１２の処理が実行された後なので、最大インデックス番号ＩＤｍａｘが、最終後退部ＲＴ３の最初のＩＤ番号に更新されている。
【０２７６】
よって、走行制御点Ｑを生成して、その走行制御点Ｑに対応する車両設定情報に、現在の最大インデックス番号ＩＤｍａｘを関連づける処理を繰り返すことで、走行経路ＲＴ１〜ＲＴ３まで通して連続するＩＤを、各走行制御点Ｑの車両設定情報に関連づけることができる。
【０２７７】
なお、Ｓ１３０の処理では、進行方向フラグは全て「−１」に設定され、切り返しフラグは全てオフに設定される。また、走行制御点Ｑの車両設定情報を走行制御点メモリ９３ｃに記憶する場合には、他の走行制御点Ｑの車両設定情報を上書しないように、各走行制御点Ｑの車両設定情報をそれぞれ個別に記憶する。
【０２７８】
Ｓ１３０の処理が終了したら、次に、Ｓ１３１の処理を実行する。Ｓ１３１の判定が肯定される場合には（Ｓ１３１：Ｙｅｓ）、Ｓ１３２の処理を実行する。そして、現在の最大インデックス番号ＩＤｍａｘに１を加算して、最大インデックス番号ＩＤｍａｘを更新する（Ｓ１３３）。その後、Ｓ１２８の処理に戻る。そして、第１経路点Ｐから第２経路点Ｐまでの経路上に、ｎ個の走行制御点Ｑを順番に生成する。一方、Ｓ１３１の判定が否定される場合は（Ｓ１３１：Ｎｏ）、ｎ個の走行制御点Ｑを全て生成した場合なので、最終後退部制御点生成処理（Ｓ１３）を終了して、自動駐車処理（図１８参照）に戻る。
【０２７９】
尚、最終後退部制御点生成処理では、Ｓ１３０の処理が実行されて、走行制御点Ｑの車両設定情報が走行制御点メモリ９３ｃに記憶された後、Ｓ１３１の判定が肯定された場合にだけ、Ｓ１３３の処理が実行され、最大インデックス番号ＩＤｍａｘが更新される。
【０２８０】
即ち、次に生成すべき走行制御点Ｑが存在する場合にだけ、最大インデックス番号ＩＤｍａｘが更新されるので、最終後退部ＲＴ３における最後の走行制御点Ｑが生成された後には、最大インデックス番号ＩＤｍａｘは更新されない。よって、最大インデックス番号ＩＤｍａｘには最後の走行制御点ＱのＩＤ番号が設定される。
【０２８１】
ここで、図２０を参照して、最終後退部ＲＴ３に対して生成される走行制御点Ｑの位置と、その車両方位とについて説明する。図２０は、走行経路ＲＴ１〜ＲＴ３のうち、最終後退部ＲＴ３に対して生成される走行制御点Ｑの一例を説明するための模式図であり、最終後退部ＲＴ３を示す２つの経路点Ｐ間を図示したものである。ここでは、２つの経路点Ｐのうち、走行経路ＲＴ１〜ＲＴ３上で出発地点に近い側の経路点Ｐを第１経路点Ｐｖ０（ｘｖ０，ｙｖ０）と示し、最終目的地に近い側の経路点Ｐを第２経路点Ｐｖｎ（ｘｖｎ，ｙｖｎ）と示している。
【０２８２】
なお、第１経路点Ｐｖ０および第２経路点Ｐｖｎでは共に、車両１の前後軸がｙ軸と必ず重なるため、ｘ値が０になり、車両方位がπ／２になり、操舵角δが０になる。
【０２８３】
最終後退部ＲＴ３は、後退旋回部ＲＴ２に続く走行経路であって、後退旋回部ＲＴ２の終端から目標とする駐車位置に、車両１を後退直進させて停車できるように走行経路が決定される（図１３のＳ４９、図１５のＳ７７参照）。よって、第１経路点Ｐｖ０（ｘｖ０，ｙｖ０）から第２経路点Ｐｖｎ（ｘｖｎ，ｙｖｎ）までの走行距離ＣＬは、
ＣＬ＝（（ｘｖ０−ｘｖｎ）２＋（ｙｖ０−ｙｖｎ）２）１／２
により算出される。なお、本実施形態では、ｘｖ０およびｘｖｎが共に０なので、「ＣＬ＝｜ｙｖ０−ｙｖｎ｜」として算出しても良い。
【０２８４】
従って、第１経路点Ｐｖ０から第２経路点Ｐｖｎまで間に、０．０５ｍ間隔で走行制御点Ｑを生成すると、その合計数ｎは、
ｎ＝ＣＬ／０．０５
となる。なお、合計数ｎが整数にならない場合は、少数点以下を切り上げて整数にする。図２０のＳ１２６の処理では、この式により算出される合計数ｎを、変数ｎに代入している。
【０２８５】
そして、第１経路点Ｐｖ０からｉ番目の走行制御点をＱ（ｘｖｉ，ｙｖｉ）とし、その車両方位をθｉとすると、
θｉ＝π／２
ｘｖｉ＝０
ｙｖｉ＝ｙｖ０−０．０５・ｎ
により算出される。ここで、第１経路点Ｐｖ０から１番目の走行制御点Ｑは、第１経路点Ｐから０．０５ｍだけ第２経路点に近づく走行制御点Ｑとなり、第１経路点Ｐｖ０からｎ番目の走行制御点Ｑは、第２経路点Ｐｖｎと重なるようにしている。
【０２８６】
以上の図２０を参照して説明した数式を用いることにより、最終後退部ＲＴ３の経路点Ｐ間において、ｎ個の各走行制御点Ｑの位置と、その位置における車両１の車両方位θｉとを算出できるので、最終後退部ＲＴ３に対応する各走行制御点Ｑを全て生成できる。
【０２８７】
ここで、図１２の説明に戻る。Ｓ１１〜Ｓ１３の処理が実行され、各走行経路ＲＴ１〜ＲＴ３に対する走行制御点Ｑが生成されたら、次に、運転者により設定された駐車位置に車両１を駐車させることが可能であることを、運転者に報知する（Ｓ１４）。
【０２８８】
そして、自律走行を開始して車両１を駐車位置に駐車させることが運転者により指示されたか、又は、自律走行による駐車を中止することが運転者により指示されたかを判定し（Ｓ１５）、自律走行による駐車を中止することが運転者により指示された場合には（Ｓ１５：中止）、自動駐車処理を終了する。
【０２８９】
一方、自律走行を開始して車両１を駐車位置に駐車させることが運転者により指示された場合には（Ｓ１５：開始）、出発地点に対応する走行制御点Ｑを現在地点として（Ｓ１６）、走行制御点メモリ９３ｃから現在地点の車両設定情報を取得する（Ｓ１７）。そして、車両１が次に通過する予定の走行制御点Ｑを目標地点とし（Ｓ１８）、走行制御点メモリ９３ｃから目標地点の車両設定情報を取得する（Ｓ１９）。
【０２９０】
次に、車両１に対して設定されている障害物判定領域Ｅ内に、障害物が有るかを判定する（Ｓ２０）。例えば、障害物判定領域Ｅは、矩形状の領域であって、車体１を囲むように設定されている。Ｓ２０の判定が肯定される場合は（Ｓ２０：Ｙｅｓ）、障害物に衝突する可能性があるので、車両１を停車させ（Ｓ２１）、障害物を発見したため自律走行を中止したことを、運転者に報知して（Ｓ２２）、自動駐車処理を終了する。
【０２９１】
Ｓ２０の判定が否定される場合には（Ｓ２０：Ｎｏ）、現在地点の車両設定情報に基づいて車両１を走行させ、車両１を目標地点まで移動させる（Ｓ２３）。例えば、Ｓ２３の処理では、ステアリングセンサ装置２１により検出される車両１の操舵角δが、車両設定情報の操舵角δと一致するように、操舵駆動装置５を制御し、ステアリングシャフト６１を回転させる。また、進行方向フラグが「１」であれば、車両１が前進するように車輪駆動装置３を制御し、進行方向フラグが「−１」であれば、車両１が後退するように車輪駆動装置３を制御する。
【０２９２】
そして、Ｓ２３の処理が終了したら、次に、最終目的地に到着したかを判定し（Ｓ２４）、Ｓ２４の判定が否定される場合には（Ｓ２４：Ｎｏ）、目標地点の車両設定情報を現在地点の車両設定情報として（Ｓ２５）、Ｓ１８の処理に戻る。そして、車両１を次の目標地点まで走行させる。Ｓ２４の判定が肯定される場合には（Ｓ２４：Ｙｅｓ）、車両１を停車させて、最終目的地に到着したことを運転者に報知し（Ｓ２６）、自動駐車処理を終了する。
【０２９３】
以上、実施の形態に基づき本発明を説明したが、本発明は上記実施の形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変形が可能であることは容易に推察できるものである。
【０２９４】
例えば、上記実施形態の点経路第１生成処理（図１３参照）では、車両１の現在の操舵角δｖを取得し、その取得した操舵角δｖと、経路パターンＰＴ１〜ＰＴ１０に設定されている車両１の操舵角α１〜α１０との差分Δα１〜Δα１０を、経路パターンＰＴ１〜ＰＴ１０毎に算出し、その算出した差分Δα１〜Δα１０を小さい順に並べ、その並び順に対応するように、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定している。これに代えて、車両１の現在の操舵角δｖから、１０の経路パターンＰＴ１〜ＰＴ１０の優先順位を決定するためのテーブルを予め作成しておき、車両１の現在の操舵角δｖを取得した場合に、そのテーブルに基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するように構成しても良い。本実施形態では、車両１の操舵角δが所定の範囲（例えば、約−π／６〜約π／６）で変化するので、例えば、その範囲を複数の区間に分割し、その分割した各区間ごとに、１０の経路パターンＰＴ１〜ＰＴ１０の優先順位を対応付けたテーブルを作成しておく。このように構成しておけば、車両１の現在の操舵角δｖを取得した場合に、予め作成しておくテーブルを参照すれば、取得した操舵角δｖに対応する優先順位の情報を取得でき、その情報に従って、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定できる。よって、差分Δα１〜Δα１０を算出して優先順位を設定する場合よりも、優先順位を簡単に設定できる。
【０２９５】
また、上記実施形態では、１０の各経路パターンＰＴ１〜ＰＴ１０に、操舵角α１〜α１０を設定しているが、操舵角α１〜α１０に代えて、ステアリング１３の角度β１〜β１０を設定しても良い。尚、「ステアリング１３の角度β１〜β１０」が、特許請求の範囲に記載の「ハンドル角」に対応する。このステアリング１３の角度β１〜β１０は、操舵角α１〜α１０に対し相対的に決まるので、経路パターンＰＴ１〜ＰＴ１０毎に、車両１を走行させるためのステアリング１３の角度β１〜β１０が一意に決まる。例えば、このように構成した場合、点経路第１生成処理（図１３参照）では、車両１の現在の操舵角δｖに代えて、車両１の現在のステアリング１３の角度を取得するように構成する。そして、その取得したステアリング１３の角度と、経路パターンＰＴ１〜ＰＴ１０に設定されている車両１の操舵角β１〜β１０との差分Δβ１〜Δβ１０を、経路パターンＰＴ１〜ＰＴ１０毎に算出し、その算出した差分Δβ１〜Δβ１０を小さい順に並べ、その並び順に対応するように、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定する。これにより、仮の走行経路ＲＴ１を生成する場合に、車両１の現在のステアリング１３の角度に対して、その角度の変化量が小さい仮の走行経路ＲＴ１から優先的に生成できる。よって、車両１が走行開始時にスムーズに走行できる走行経路ＲＴ１を優先的に生成できるので、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２９６】
また、上記実施形態の経路パターン優先順位テーブルでは、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０に対して、車両１の操舵角δの変化が小さい経路パターンＰＴ１〜ＰＴ１０を優先的に組み合わせることができるように、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定されているが、直近に並ぶ経路パターンＰＴ１〜ＰＴ１０に対して、車両１のステアリング１３の角度の変化が小さい経路パターンＰＴ１〜ＰＴ１０を優先的に組み合わせることができるように、優先順位を設定しても良い。このように構成することで、車両１のステアリング１３の角度の変化が小さい経路パターンＰＴ１〜ＰＴ１０を優先的に組み合わせて、仮の走行経路ＲＴ１を生成することができる。これにより、仮の走行経路ＲＴ１を生成する場合に、車両１のステアリング１３の角度の変化量が小さい仮の走行経路ＲＴ１を優先的に生成できる。よって、車両１がスムーズに走行できる走行経路ＲＴ１を優先的に生成できるので、無作為な走行経路ＲＴ１〜ＲＴ３ではなく、より好適な走行経路ＲＴ１〜ＲＴ３を優先的に生成できる。
【０２９７】
また、上記実施形態の点経路第２生成処理（図１５参照）では、経路パターン優先順位テーブルを参照し、そのテーブルから、Ｓ６３の処理で取得された経路パターン番号に対応する優先順位の情報を取得して、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定している。これに代えて、経路パターン優先順位テーブルは使わずに、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するように構成しても良い。例えば、Ｓ６３の処理で取得された経路パターン番号から、その番号に対応する経路パターンＰＴ１〜ＰＴ１０に設定されている操舵角α１〜α１０を取得する。そして、その取得した操舵角α１〜α１０と、経路パターンＰＴ１〜ＰＴ１０に設定されている操舵角α１〜α１０との差を、経路パターンＰＴ１〜ＰＴ１０毎に算出して、その算出した差分Δα１〜Δα１０を小さい順に並べ、その並び順に対応するように、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定しても良い。このように構成すれば、経路パターン優先順位テーブルをフラッシュメモリ９２に記憶しなくて良いので、記憶容量のより小さいフラッシュメモリ９２を利用できコストを抑制できる。尚、上述したように、１０の各経路パターンＰＴ１〜ＰＴ１０に、ステアリング１３の角度β１〜β１０を設定しておき、Ｓ６３の処理で取得されたパターン番号から、その番号に対応する経路パターンＰＴ１〜ＰＴ１０に設定されているステアリング１３の角度β１〜β１０を取得し、その取得したステアリング１３の角度β１〜β１０と、経路パターンＰＴ１〜ＰＴ１０に設定されている車両１のステアリング１３の角度β１〜β１０との差分Δβ１〜Δβ１０を、経路パターンＰＴ１〜ＰＴ１０毎に算出し、その算出した差分Δβ１〜Δβ１０を小さい順に並べ、その並び順に対応するように、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定しても良い。
【０２９８】
また、上記実施形態では、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が繰り返し設定されるが、１回目の優先順位が設定される場合にだけ、シチュエーション判定テーブルが参照される。そして、参照の結果、シチュエーション判定テーブルの中に、判定パラメータに対応する情報があれば、その情報に基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位が設定される。しかしながら、１回目だけでなく、他の回（毎回、又は、所定の回）についても、シチュエーション判定テーブルを参照するように構成しても良い。そして、参照の結果、シチュエーション判定テーブルの中に、判定パラメータに対応する情報があれば、その情報に基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定しても良い。尚、他の回において、シチュエーション判定テーブルの中に、判定パラメータに対応する情報がなければ、経路パターン優先順位テーブルを参照し、そのテーブルから、Ｓ６３の処理で取得された経路パターン番号に対応する優先順位の情報を取得し、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するように構成しても良い。
【０２９９】
また、上記実施形態のシチュエーション判定テーブルには、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定するための情報が格納されているが、優先順位を設定するための情報は、１回目の設定を行う分しか格納されていない。これに対して、１回目から所定の回までの各設定が行えるように、優先順位を設定するための情報を、複数回分格納しておいても良い。尚、仮の走行経路ＲＴ１は、出発地点を始点として延長されていくため、仮の走行経路ＲＴ１の生成開始時や生成開始初期に用いられる経路パターンＰＴ１〜ＰＴ１０により、最終的な走行経路ＲＴ１の概ねの形状が決まる。即ち、出発地点からの一区間や、出発地点付近の区間の生成に用いられる経路パターンＰＴ１〜ＰＴ１０の影響を大きく受ける。そのため、１回目や、２回目などの初期に行われる優先順位を適切に設定することで、仮の走行経路ＲＴ１を延長していく場合に、好適に延長できる可能性を高めることができ、好適な形状の走行経路ＲＴ１を生成できる可能性を高くできる。
【０３００】
また、上記実施形態の点経路第１生成処理（図１３参照）では、まず、シチュエーション判定テーブルを参照し、参照の結果、シチュエーション判定テーブルの中に、判定パラメータに対応する情報がなければ、次に、車両１の現在の操舵角δｖに基づいて、１０の経路パターンＰＴ１〜ＰＴ１０に優先順位を設定しているが、シチュエーション判定テーブルを参照するか否かは、任意に決めれば良い。
【０３０１】
また、上記実施形態のシチュエーション判定テーブルでは、車両１の車両位置（ｘｖ，ｙｖ）と、目標とする駐車位置によって決まるｘ１，ｘ２，ｙ１，ｙ２と、車両１の車両方位θｖとの３つの条件に応じて、１０の経路パターンＰＴ１〜ＰＴ１０の優先順位が設定されているが、条件は３つに限らず、１つや、４つなど任意の数で良い。また、条件は、車両位置や駐車位置や車両方位だけ限らず、ハンドル角や、路面状況や、障害物の位置などを条件としても良い。
【０３０２】
また、上記実施形態では、目標とする駐車位置に車両１を停車させる場合、最終的には車両１を後退直進させて、目標とする駐車位置に車両１を停車させるように走行経路ＲＴ１〜ＲＴ３を生成しているが、最終的に車両１を前進直進させて、目標とする駐車位置に車両１を停車させるように走行経路ＲＴ１〜ＲＴ３を生成しても良い。
【０３０３】
また、上記実施形態では、１０種類の経路パターンＰＴ１〜ＰＴ１０を設けているが、パターンの数は１０種類に限らず、減らしても良いし、増やしても良い。また、各経路パターンＰＴ１〜ＰＴ１０に対応する各走行経路の距離ＣＬを全て２ｍとしているが、数値は適宜設定すれば良い。また、経路パターンＰＴ１〜ＰＴ１０に対応する走行経路の形状も適宜設定すれば良い。
【０３０４】
また、上記実施形態では、現在位置から目標とする駐車位置まで０．０５ｍ間隔で、走行経路ＲＴ１〜ＲＴ３上に仮想的に走行制御点Ｑを生成しているが、走行制御点Ｑを設ける間隔は、０．０１ｍ間隔や、０．１ｍ間隔や、０．５ｍ間隔など適宜設定すれば良い。
【０３０５】
また、上記実施形態の走行制御装置１００は、現在位置から運転者により設定される駐車位置まで車両１を自律走行させて、その駐車位置に車両１を駐車させるように構成されているが、車両１の車両速度Ｖは運転者がアクセルペダル１１およびブレーキペダル１２により操作できるように構成し、走行制御装置１００は車両１のステアリング１３のみを制御するように構成しても良い。
【０３０６】
また、上記実施形態の走行制御装置１００は、現在位置から運転者により設定される駐車位置まで車両１を自律走行させて、その駐車位置に車両１を駐車させるように構成されているが、車両１の自律走行は行わず、現在位置から運転者により設定される駐車位置までの走行経路を運転者に報知するように構成しても良い。例えば、車両１内のモニタに、走行経路ＲＴ１〜ＲＴ３を表示しても良い。また、音声により運転者の運転操作を誘導して、車両１が走行経路ＲＴ１〜ＲＴ３上を走行するようにしても良い。
【０３０７】
また、上記実施形態では、目標とする駐車位置に車両１を駐車させた時の、左右の後輪２ＲＬ，２ＲＲの車軸上をｘ軸とし、車両１の前後軸上をｙ軸とし、ｘ軸およびｙ軸の交点を原点Ｏとした座標系を用いて、車両１の位置や、走行経路ＲＴ１〜ＲＴ３などの位置を算出しているが、車両１の現在位置における左右の後輪２ＦＬ，２ＦＲの車軸上をｘ軸とし、車両１の前後軸上をｙ軸とし、ｘ軸およびｙ軸の交点を原点Ｏとした座標系を用いても良い。また、任意にｘ軸およびｙ軸を設けて、ｘ軸およびｙ軸の交点を原点Ｏとした座標系を用いても良い。
【０３０８】
また、上記実施形態では、隣接する経路点Ｐ間ごとに０．０５ｍ間隔で走行制御点Ｑを生成するように構成しているが、任意の２つの経路点Ｐ間に、０．０５ｍ間隔で走行制御点Ｑを生成するように構成しても良い。例えば、走行経路上に３つ以上の経路点Ｐが順番に並んでいる場合には、その３つ以上の経路点Ｐのうち最初（出発点に最も近い側）の経路点Ｐと、その３つ以上の経路点のうち最後（最終目的地に最も近い側）の経路点Ｐとの間に、０．０５ｍ間隔で走行制御点Ｑを生成するように構成しても良い。
【０３０９】
また、上記実施形態では、現在位置から目標とする駐車位置までの車両１の走行経路ＲＴ１〜ＲＴ３を生成して、その走行経路ＲＴ１〜ＲＴ３に従って車両１を自律走行させ、目標とする駐車位置に車両１を停車させているが、単に、現在位置から目標とする位置まで車両１を自律走行させるように構成も良い。例えば、目標とする位置を遠方に設定し、自律走行により車両１を長距離走行させるように構成しても良い。
【０３１０】
また、上記実施形態では、経路点Ｐ０（出発地点）上に走行制御点Ｑを設けていないが、経路点Ｐ０上にも走行制御点Ｑを設けて、車両１を自律走行させる場合に参照するように構成して良い。
【０３１１】
また、上記実施形態は、車両１が４輪車である場合の実施形態であるが、本発明は、車輪の数に関係なく車両であれば適用できるし、ショベルカーなどの建設機械などにも適用できる。
＜その他＞
＜手段＞
技術的思想１記載の走行制御装置は、走行経路パターンの中から走行経路パターンを順番に選択する選択手段と、その選択手段により選択される走行経路パターンを選択された順序に用いて基準位置からの仮経路を生成する仮経路生成手段と、その仮経路生成手段により生成される仮経路を車両に走行させたと仮定した場合に、その車両が目標位置へ到着可能か否かを判定する判定手段と、その判定手段による到着不可能という判定が前記仮経路生成手段より生成される仮経路についてなされた場合に、その到着不可能な仮経路の終端を新たな基準位置として前記選択手段において走行経路パターンの選択が開始されるように制御する選択制御手段と、前記判定手段により到着可能と判定される場合に、最初の基準位置からその到着可能な仮経路までの一連の仮経路を用いて、前記車両を前記最初の基準位置から前記目標位置まで走行させるための走行経路を生成する走行経路生成手段とを備えていることを特徴とする。
技術的思想２記載の走行制御装置は、技術的思想１記載の走行制御装置において、前記選択制御手段の制御により前記走行経路パターンの選択が開始される以前に、その制御の対象とされる仮経路が何れの走行経路パターンに基づいて生成されたものかを特定する特定手段と、その特定手段により特定される走行経路パターンに基づいて、前記選択手段における走行経路パターンの選択順序を設定する設定手段とを備えている。
技術的思想３記載の走行制御装置は、技術的思想２記載の走行制御装置において、前記走行経路パターンは、前記車両が走行すべき経路と、その経路を前記車両が走行する場合の操舵角またはハンドル角とを示すものであり、前記設定手段は、前記走行経路パターンの中で、前記特定手段により特定される走行経路パターンの示す操舵角に対する操舵角の差、または、前記特定手段により特定される走行経路パターンの示すハンドル角に対するハンドル角の差が小さい順に走行経路パターンが並ぶ順序を、前記走行経路パターンの選択順序として設定する。
技術的思想４記載の走行制御装置は、技術的思想１から３のいずれかに記載の走行制御装置において、前記走行経路パターンは、前記車両が走行すべき経路と、その経路を前記車両が走行する場合の操舵角またはハンドル角とを示すものであり、前記車両の操舵角またはハンドル角を検出する検出手段を備え、前記選択手段は、前記仮経路生成手段において前記最初の基準位置からの仮経路が生成される場合、前記走行経路パターンの中から、前記検出手段により検出される操舵角に対する操舵角の差、または、前記検出手段により検出されるハンドル角に対するハンドル角の差が小さい順に、走行経路パターンを選択する。
＜効果＞
技術的思想１記載の走行制御装置によれば、走行経路パターンの中から、走行経路パターンが順番に選択手段により選択されると、その選択された走行経路パターンが選択された順序で仮経路生成手段により用いられて基準位置からの仮経路が生成され、その仮経路を車両に走行させたと仮定した場合にその車両が目標位置へ到着可能か否かが判定手段により判定される。判定手段による到着不可能という判定が仮経路生成手段より生成される仮経路についてなされると、選択制御手段によって、その到着不可能な仮経路の終端を新たな基準位置として選択手段において走行経路パターンの選択が開始されるように制御される。一方、判定手段により到着可能と判定されると、最初の基準位置からその到着可能な仮経路までの一連の仮経路が用いられて、車両を最初の基準位置から目標位置まで走行させるための走行経路が走行経路生成手段により生成される。よって、仮経路生成手段により生成された仮経路が判定手段により到着不可能と判定された場合に、その到着不可能な仮経路を扱わないようにするのではなく、その到着不可能な仮経理を用いて新たに仮経路の生成を試みることができる。従って、走行経路パターンの種類を多くしておかなくても、生成する仮経路の数を増やすことができ、仮経路が生成された場合に、判定手段により到着可能と判定される可能性を向上させることができる。故に、予め用意しておく走行経路パターンの数を抑制しつつ、車両を基準位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる。
技術的思想２記載の走行制御装置によれば、技術的思想１記載の走行制御装置の奏する効果に加え、次の効果を奏する。即ち、選択制御手段の制御に伴って走行経路パターンの選択が開始される以前に、その制御の対象とされる仮経路が何れの走行経路パターンに基づいて生成されたものかが特定手段により特定され、その特定された走行経路パターンに基づいて、選択手段における走行経路パターンの選択順序が設定手段により設定される。よって、設定手段による設定の後に、選択手段により走行経路パターンが選択される場合には、走行経路パターンの中から、選択制御手段の制御の対象になった仮経路に応じた順番で、走行経路パターンを選択できるので、その制御の対象になった仮経路の終端から新たな仮経路を生成する場合に、その制御の対象になった仮経路に対してより相応しい仮経路から順番に生成できる。ここで、新たな仮経路について、判定手段により到着可能と判定されると、最初の基準位置からその到着可能な仮経路までの一連の仮経路が用いられて走行経路が生成されるため、走行経路が生成される場合に、より相応しい仮経路が用いられる可能性を高めることができる。従って、予め用意しておく走行経路パターンの数を抑制しつつ、車両を基準位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる上、より好適な走行経路を生成できるという効果がある。
技術的思想３記載の走行制御装置によれば、技術的思想２記載の走行制御装置の奏する効果に加え、次の効果を奏する。即ち、走行経路パターンは、車両が走行すべき経路と、その経路を車両が走行する場合の操舵角またはハンドル角とを示すものであり、設定手段では、走行経路パターンの中で、特定手段により特定される走行経路パターンの示す操舵角に対する操舵角の差、または、特定手段により特定される走行経路パターンの示すハンドル角に対するハンドル角の差が小さい順に走行経路パターンが並ぶ順序が、走行経路パターンの選択順序として設定される。よって、設定手段による設定の後に、選択手段により走行経路パターンが選択される場合には、走行経路パターンの中で、車両の操舵角の変化量が小さいものを優先的に選択できる。従って、選択制御手段の制御の対象になった仮経路の終端から新たな仮経路を生成する場合に、車両の操舵角の変化量が小さい仮経路から優先的に生成できるので、走行経路が生成される場合に、車両の操舵角の変化量の小さい仮経路が優先的に用いられるようすることができる。故に、車両がスムーズに走行できる走行経路を優先的に生成できる。その結果、予め用意しておく走行経路パターンの数を抑制しつつ、車両を基準位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる上、より好適な走行経路を優先的に生成できるという効果がある。
技術的思想４記載の走行制御装置によれば、技術的思想１から３の何れかに記載の走行制御装置の奏する効果に加え、次の効果を奏する。即ち、走行経路パターンは、車両が走行すべき経路と、その経路を車両が走行する場合の操舵角またはハンドル角とを示すものである。そして、車両の操舵角またはハンドル角が検出手段により検出される。選択手段では、仮経路生成手段において最初の基準位置からの仮経路が生成される場合、走行経路パターンの中から、検出手段により検出される操舵角に対する操舵角の差、または、検出手段により検出されるハンドル角に対するハンドル角の差が小さい順に、走行経路パターンが選択される。よって、最初の基準位置からの仮経路を生成するための走行経路パターンが、選択手段により選択される場合には、走行経路パターンの中で、車両の操舵角の変化量が小さいものを優先的に選択できる。従って、最初の基準位置からの仮経路を生成する場合に、車両の操舵角の変化量が小さい仮経路から優先的に生成できるので、走行経路が生成される場合に、最初の基準位置において車両の操舵角の変化量の小さい仮経路が優先的に用いられるようにすることができる。故に、車両が走行開始時にスムーズに走行できる走行経路を優先的に生成できる。その結果、予め用意しておく走行経路パターンの数を抑制しつつ、車両を基準位置から目標位置まで走行させる走行経路を生成する可能性を向上させることができる上、より好適な走行経路をより優先的に生成できるという効果がある。
【符号の説明】
【０３１２】
１                              車両
２１                            ステアリングセンサ装置（検出手段）
１００                          走行制御装置
Ｓ６２，Ｓ６３                  特定手段
Ｓ６４，Ｓ６５                  設定手段
Ｓ６６，Ｓ７１                  選択手段
Ｓ６７，Ｓ６９                  仮経路生成手段
Ｓ７０                          判定手段
Ｓ７２：Ｎｏ                    選択制御手段
Ｓ７５〜Ｓ７８，Ｓ１１〜Ｓ１３  走行経路生成手段
ＰＴ１〜ＰＴ１０                経路パターン（走行経路パターン）
【図１】
0005531873.tif 000002
【図２】
0005531873.tif 000003
【図３】
0005531873.tif 000004
【図４】
0005531873.tif 000005
【図５】
0005531873.tif 000006
【図６】
0005531873.tif 000007
【図７】
0005531873.tif 000008
【図８】
0005531873.tif 000009
【図９】
0005531873.tif 000010
【図１０】
0005531873.tif 000011
【図１１】
0005531873.tif 000012
【図１２】
0005531873.tif 000013
【図１３】
0005531873.tif 000014
【図１４】
0005531873.tif 000015
【図１５】
0005531873.tif 000016
【図１６】
0005531873.tif 000017
【図１７】
0005531873.tif 000018
【図１８】
0005531873.tif 000019
【図１９】
0005531873.tif 000020
【図２０】
0005531873.tif 000021
【図２１】
0005531873.tif 000022