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