(57)【要約】【課題】車両が前後方向に追従走行する場合に、効率よく、安全に追従できるようにする。【解決手段】通常の前後方向の追従制御においては、追従車両の走行ベクトルを基準に追従目標点を定める方法（制御方法１）と、先行車両の走行ベクトルを基準に追従目標点を定める方法（制御方法２）がある。制御方法１では、旋回時に先行車両の軌跡の内側を走行するため、旋回の内側に存在する障害物を回避するのが困難である。制御方法２では、旋回半径が小さくなると、追従車両は、旋回初期に旋回逆側に操舵するなど、安定性が低下し、その際に旋回の外側に存在する障害物を回避するのが困難である。そこで、制御方法１と制御方法２を用いた新たな制御方法を実現すると共に、制御方法１と制御方法２の中間の状態も含めて、その状態を動的に変更することで、複雑な演算を行なうことなく、その時点で最良の追従走行を行なう。【選択図】図２
2010079689.tif 000002
【特許請求の範囲】
【請求項１】
先行車両の後方に追従基準点を設定する追従基準点設定手段と、
前記設定した追従基準点を用いて移動目標点を設定する移動目標点設定手段と、
前記設定した移動目標点に向けて走行する走行制御手段と、
前記先行車両から前記追従基準点までの距離を変化させる変化手段と、
を具備したことを特徴とする車両。
【請求項２】
進行方向に対して所定幅の範囲に存在する障害物を検出する障害物検出手段を具備し、
前記変化手段は、前記障害物検出手段で、車両の旋回方向に障害物を検出した場合には前記距離を延長し、旋回方向と逆の方向に障害物を検出した場合には前記距離を短縮することを特徴とする請求項１に記載の車両。
【請求項３】
前記障害物検出手段が障害物を検出した場合に、前記変化手段によって前記追従基準点の距離を変化させることで、前記所定幅の範囲に前記障害物が検出されない追従基準点を探索する探索手段を具備したことを特徴とする請求項２に記載の車両。
【請求項４】
前記探索手段によって、前記所定幅の範囲に前記障害物が検出されない追従基準点が探索されなかった場合に車両の走行を停止する車両停止手段
を具備したことを特徴とする請求項３に記載の車両。
【請求項５】
前記車両停止手段で車両の走行を停止した後に、前記先行車両に至る直線経路を検出する直線経路検出手段を具備し、
前記検出した直線経路上から所定幅の範囲に障害物が検出されない場合に、前記先行車両に対する走行を再開することを特徴とする請求項４に記載の車両。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、追従車両制御装置に係り、例えば、他車両や自車両からの指令に基づいて、他の車両に追従して走行する追従走行に関する。
【背景技術】
【０００２】
車両が走行する場合、先行する車両（以下、先行する車両を先行車両とし、追従する車両を追従車両とする）に追従しながらオートクルーズする車両について提案されている。
例えば、特許文献１では、先行車両に追従して予め設定された追従車間距離設定値を保ちながら定速走行を行う車間距離制御型定速走行装置を備えた車両が提案されている。
また特許文献２では、先行車両に対する追従走行を行わせるとともに、車車間通信を利用して自車両と先行車両との交錯可能性を判断し、該交錯可能性が所定値以上となったときに上記追従走行を中止する技術について提案されている。
【特許文献１】特開平１０−６７２５４号
【特許文献２】特開２００７−１２６１４６号
【０００３】
ところで、特許文献１、特許文献２では、先行車両に対して追従車両が後方を走行する場合の「縦追従走行」については記載されているが、先行車両が旋回する場合に、追従車両を如何に効率よく追従させるかについては記載されていない。
先行車両に旋回を含めて追従制御する場合、従来は、次の２つの制御方法があった。
以下、これの制御方法について図１０の各図を用いて説明する。
【０００４】
（１）第１の制御方法
これは、追従車両の走行ベクトルを基準とするものである。
図１０（ａ）は、第１の制御方法で、先行車両８０が直進している場合を示している。
図に示したように、第１の制御方法では、追従車両１は、追従車両１の走行ベクトル（図中の追従車両代表点５を起点とする矢線）の方向に辺を有し、先行車両８０の先行車両代表点２と、追従車両１の追従車両代表点５を対角とする矩形を設定すると共に、当該矩形の辺上で、先行車両代表点２から車間距離ｄの位置に目標点４を設定する。
そして、追従車両１は、目標点４に向けて移動するように走行を制御する。このため、追従車両代表点５が目標点４から外れると、追従車両１は、目標点４に戻るように制御されるため、追従車両１は、先行車両８０の後方ｄの位置を追従走行する。
【０００５】
図１０（ｂ）は、第１の制御方法で、先行車両８０が旋回する場合を示している。
図に示したように、第１の制御方法を用いて旋回する場合、追従車両１は、追従車両の走行ベクトル（図中の追従車両代表点５を起点する矢線）を基準に目標点４を設定する。
このため、第１の制御方法では、追従車両１は、旋回時に先行車両８０の軌跡より内側を走行することになる。
【０００６】
（２）第２の制御方法
これは、先行車両の走行ベクトルを基準とするものである。
図１０（ｃ）は、第２の制御方法で、先行車両８０が直進している場合を示している。
図に示したように、第２の制御方法では、追従車両１は、先行車両８０の先行車両の走行ベクトル（図中の先行車両代表点２を起点とする矢線）を後方に車間距離ｄだけ延長した箇所に目標点４を設定する。
そして、追従車両１は、目標点４に向けて移動するように走行を制御する。このため、追従車両代表点５が目標点４から外れると、追従車両１は、目標点４に戻るように制御されるため、追従車両１は、先行車両８０の後方ｄの位置を追従走行する。
【０００７】
図１０（ｄ）は、第２の制御方法で、先行車両８０が旋回する場合を示している。
図に示したように、第２の制御方法を用いて旋回する場合、追従車両２は、先行車両８０の走行ベクトルを基準に目標点４を設定する。
このため、第２の制御方法では、追従車両１は、旋回時に先行車両８０の軌跡より外側を走行する場合がある。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
第１の制御方法では、追従車両の走行ベクトルを基準に目標点４を決定するため、走行距離が短くなるのでエネルギー消費が先行車両８０より少ないと共に計算が単純であるという利点があるものの、旋回の内側に障害物がある場合に、これを回避することが困難であるという問題があった。
また、第２の制御方法では、先行車両８０の走行ベクトルを基準に目標点４を決定するため、旋回時に追従車両１は必ず先行車両８０の後ろに位置するという利点があるものの、旋回の外側に障害物がある場合、先行車両８０の走行軌跡が外に膨らむため、障害物を回避するのが困難であるという問題があった。
更に、両制御方法とも、高速道路など、旋回半径が大きい場合、追従車両１は、先行車両８０に良好に追従できるが、旋回半径が小さい場合、追従車両１の走行軌跡が不安定となる場合がある。
この問題点は、小型の車両で旋回能力の高い車両、例えば、特許文献１で提案されている倒立振り子車両（１軸２輪車両等）では特に顕著となる。
【０００９】
そこで本発明は、車両が前後方向に追従走行する場合に、効率よく、安全に追従できるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
請求項１に記載の発明では、先行車両の後方に追従基準点を設定する追従基準点設定手段と、前記設定した追従基準点を用いて移動目標点を設定する移動目標点設定手段と、前記設定した移動目標点に向けて走行する走行制御手段と、前記先行車両から前記追従基準点までの距離を変化させる変化手段と、を具備したことを特徴とする車両を提供する。
請求項２に記載の発明では、進行方向に対して所定幅の範囲に存在する障害物を検出する障害物検出手段を具備し、前記変化手段は、前記障害物検出手段で、車両の旋回方向に障害物を検出した場合には前記距離を延長し、旋回方向と逆の方向に障害物を検出した場合には前記距離を短縮することを特徴とする請求項１に記載の車両を提供する。
請求項３に記載の発明では、前記障害物検出手段が障害物を検出した場合に、前記変化手段によって前記追従基準点の距離を変化させることで、前記所定幅の範囲に前記障害物が検出されない追従基準点を探索する探索手段を具備したことを特徴とする請求項２に記載の車両を提供する。
請求項４に記載の発明では、前記探索手段によって、前記所定幅の範囲に前記障害物が検出されない追従基準点が探索されなかった場合に車両の走行を停止する車両停止手段
を具備したことを特徴とする請求項３に記載の車両を提供する。
請求項５に記載の発明では、前記車両停止手段で車両の走行を停止した後に、前記先行車両に至る直線経路を検出する直線経路検出手段を具備し、前記検出した直線経路上から所定幅の範囲に障害物が検出されない場合に、前記先行車両に対する走行を再開することを特徴とする請求項４に記載の車両を提供する。
【発明の効果】
【００１１】
本発明によれば、先行車両の後方に仮想ジョイントを設け、これを基準に追従する車両の目標点を設定することにより、効率よく、安全に追従することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の車両における好適な実施の形態について、図１から図９を参照して詳細に説明する。
（１）実施形態の概要
従来例で説明したように、通常の前後方向の追従制御においては、追従車両（制御対象車両）の走行ベクトルを基準に追従目標点を定める方法（第１の制御方法）と、先行車両（制御対象車両の前方車両）の走行ベクトルを基準に追従目標点を定める方法（第２の制御方法）がある。
第１の制御方法では、第２の制御方法に比べて追従車両の走行は安定しており、エネルギー効率もよいが、旋回時に先行車両の軌跡の内側を走行するため、旋回の内側に存在する障害物を回避するのが困難である。
第２の制御方法では、先行車両の旋回半径が大きい場合、追従車両は良好に追従できるが、旋回半径が小さくなると、追従車両は、旋回初期に旋回逆側に操舵するなど、安定性が低下し、その際に旋回の外側に存在する障害物を回避するのが困難である。
そこで、本実施の形態では、第１の制御方法と第２の制御方法を用いた新たな制御方法を実現すると共に、第１の制御方法と第２の制御方法の中間の状態も含めて、その状態を動的に変更することで、複雑な演算を行うことなく、その時点で最良の追従走行を行なう。
【００１３】
（２）実施形態の詳細
本実施形態の車両は、通常の４輪車両に対しても適用が可能であるが、小型の車両で横方向の旋回自由度が高い車両に適用した場合に特に有効である。
そのため本実施形態では、特に小半径で旋回することが可能な倒立振り子車両（１軸２輪車両等）に適用した場合を例に説明することとする。なお、先行車両も倒立振り子車両を対象として説明するが、それ以外の４輪車両等であってもよい。
【００１４】
倒立振り子車両は、搭乗部の姿勢を感知し、その姿勢に応じて、駆動輪の駆動方向で前後方向のバランスを保持するように姿勢制御を行いながら走行するものである。その姿勢制御の方法としては、例えば、米国特許第６，３０２，２３０号明細書、特開昭６３−３５０８２号公報、特開２００４−１２９４３５公報、特開２００４−２７６７２７公報で開示された各種制御方法が使用可能である。
【００１５】
図１は、本実施形態の車両（追従車両）の追従制御に関連する構成を表したものである。
図１に示されるように、車両は、ＥＣＵ（エレクトロニック・コントロール・ユニット）１０と、レーザレーダ２０、車速センサ３０、ヨーレートセンサ４０、無線通信装置５０、駆動モータ６０ａ、６０ｂを備えている。
なお、図示しないが、駆動モータ６０ａ、６０ｂ等に駆動用の電力を供給し、また、主制御装置ＥＣＵ１０に制御用の低電圧の電源を供給する、バッテリも備えている。
【００１６】
ＥＣＵ１０は、各種演算を行うＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、図示しない各種プログラムやデータが格納されたＲＯＭ、作業領域として使用されるＲＡＭ、外部記憶装置、インターフェイス部等を備えたコンピュータシステムで構成されている。
倒立振り子車両に適用されている本実施形態においては、その姿勢を保持する姿勢制御プログラム、操縦装置からの各種指示信号に基づいて走行を制御する走行制御プログラム、本実施形態における先行車両８０に対する追従走行を行うための追従走行プログラム等の各種プログラムがＲＯＭに格納されており、ＥＣＵ１０は、これら各種プログラムを実行することで対応する処理を行う。
【００１７】
また、ＥＣＵ１０は、先行車両相対位置検出部１１、追従制御部１２、車両制御部１３を備えており、先行車両８０が旋回する場合を含め、先行車両８０に対する追従制御を行うようになっている。
【００１８】
先行車両相対位置検出部１１は、レーザレーダ２０で測定された先行車両８０の位置と距離に基づいて、先行車両８０の相対位置及び向きを検出し、追従制御部１２に供給する。
なお、先行車両８０から通信で車速及びヨーレートの情報を受信してもよい。
また、先行車両８０から位置座標データを受信してデッドレコニングを行う場合には、自車両の絶対位置を検出するためにＧＰＳ等の現在位置検出装置を備えるようにしてもよい。
【００１９】
追従制御部１２は、本実施形態における追従走行として、直進走行及び旋回時における制御指令値（前後方向指令値、左右方向指令値）を車両制御部１３に供給する。
追従制御部１２は、車速センサ３０から車速、ヨーレートセンサ４０からヨーレートを取得する。また、無線通信装置５０で受信した先行車両８０の目標指令値を取得する。無線通信装置５０は、先行車両８０や他の車両（追従車両を含む）との間で車車間通信によりデータの送受信を行うようになっている。
追従制御部１２は、フィードバック制御とフィードフォワード制御による、前後方向の制御回路と左右方向の制御回路を備えている。
追従制御部１２は、先行車両相対位置検出部１１、車速センサ３０、ヨーレートセンサ４０、無線通信装置５０からの各入力に基づいて、前後方向の制御回路による前後制御指令値（目標速度、又は目標加速度）と、左右方向の制御回路による左右制御指令値（目標回転角速度）を車両制御部１３に供給する。
【００２０】
車両制御部１３は駆動モータ６０ａ、６０ｂを制御する。
即ち、車両制御部１３は、追従制御部１２から供給される目標速度（又は目標加速度）となるように、駆動モータ６０ａ、６０ｂを制御する。具体的には、車両制御部１３は、駆動モータ６０ａ、６０ｂ用の速度（又は加速度、トルク）−電流マップを備えており、この速度−電流マップに従って、追従制御部１２から供給される目標速度（又は目標加速度）に対応する電流を駆動モータ６０ａ、６０ｂに対して出力するように電流制御を行う。
【００２１】
また、車両制御部１３は、追従制御部１２から供給される目標回転角速度（左右制御指令値）で車両が旋回するように、両駆動モータ６０ａ、６０ｂに対して異なる電流を出力して両駆動モータ６０ａ、６０ｂを差動させる。
【００２２】
なお、本実施の形態では、倒立振り子車両を対象に説明しているが、それ以外の車両、例えば、４輪車両等にも適用が可能であり、その場合には、車両１は操舵モータを備える。そして、車両制御部１３は、追従制御部１２から供給される目標回転角速度ｕに対応する送舵角となるように操舵モータを制御する。
【００２３】
図２の各図は、本実施の形態による追従制御の概念を説明するための図である。
図２（ａ）に示したように、追従車両１は、先行車両８０の後方に、仮想ジョイント３を設定する。
仮想ジョイント３は、先行車両代表点２から先行車両８０の走行ベクトル（図中の先行車両代表点２を起点とする矢線）の逆方向で距離ｄ１の点とする。
先行車両代表点２は、先行車両８０の位置を代表する点であり、例えば、先行車両８０の形状などから定義される。
仮想ジョイント３は、第２の制御方法における目標点に該当する点であり、追従車両１が目標点４を設定するための基準点となる。
仮想ジョイント３は、追従車両１が先行車両８０を追従する際の追従基準点として機能しており、そのため、追従車両１は、先行車両の後方に追従基準点を設定する追従基準点設定手段を備えている。
【００２４】
更に、追従車両１は、仮想ジョイント３と追従車両代表点５を対角とし、追従車両１の走行ベクトル（図中の追従車両代表点５を起点とする矢線）の方向を辺とする矩形を設定し、追従車両１の進行方向と平行な辺のうち、追従車両代表点５に対して先行車両代表点２が位置する方の辺上に目標点４を設定する。仮想ジョイント３と目標点４の距離はｄ２とする。
追従車両代表点５は、追従車両１の位置を代表する点であり、例えば、追従車両１の形状などから定義される。
追従車両１は、図２（ａ）に示したように、追従車両代表点５と目標点４が一致しない場合には、目標点４と追従車両代表点５が一致するように（追従車両代表点５が目標点４に収束するように）追従車両１を目標点４に向けて移動する。
ここで、目標点４は、追従車両１を移動させる移動目評点として機能し、追従車両１は、目標点４に向けて走行するため、追従車両１は、追従基準点を用いて移動目標点を設定する移動目標点設定手段と、当該設定した移動目標点に向けて走行する走行制御手段を備えている。
【００２５】
図２（ｂ）は、追従車両１を目標点４に向けて移動したところを示しており、点線は移動前の追従車両１を表しており、実線は移動後の追従車両１を表している。実線で示した追従車両１では、追従車両代表点５と目標点４が一致している。
このように、追従車両１は、追従車両代表点５が目標点４から外れると、これを目標点４の位置に復帰させるように走行をフィードバック制御し、先行車両８０と追従車両１は、あたかも、先行車両８０側の仮想リンク（先行車両代表点２と仮想ジョイント３を結ぶ線分）と追従車両１側の仮想リンク（目標点４と仮想ジョイント３を結ぶ線分）が仮想ジョイント３で連結されたように走行する。
【００２６】
以上のように、追従車両１は、先行車両８０の走行ベクトルから先行車両８０側の仮想リンクを算出し、追従車両１の走行ベクトルから追従車両１側の仮想リンクを算出し、これら仮想的なリンクに従って先行車両８０に追従する。
更に、追従車両１は、計算によってｄ１の長さを可変とし、仮想ジョイント３の位置を調整することにより、より細やかな追従制御を行う。
例えば、先行車両８０が旋回する側に障害物が存在する場合には、仮想ジョイント３の位置を延長すればこれを回避することが可能となり、旋回の外側に障害物が存在する場合には、仮想ジョイント３の位置を短縮すればこれを回避することが可能となる。
以下では、先行車両８０と追従車両１の間の追従距離Ｌをｄ１＋ｄ２で規定する。
本実施の形態では、０≦ｄ１≦Ｌの範囲でｄ１を可変とするが、例えば、０≦ｄ１＜Ｌ／２など、他の制限を課してもよい。
このように、追従車両１は、先行車両８０から追従基準点（仮想ジョイント３）までの距離を変化させる変化手段を備えている。
【００２７】
図３の各図は、仮想ジョイント３の位置を調整する例を説明するための図である。
これらの図は、追従車両代表点５が目標点４に収束した後を示しており、目標点４と追従車両代表点５が一致している。
【００２８】
通常、追従車両１は、図３（ａ）に示したように、ｄ１＝０で追従走行する。これは、先に説明した制御方式１と同様である。
そして、先行車両８０が旋回する場合、追従車両１は、旋回方向に存在する障害物と接触しないようにｄ１を延長するフィードバック制御を行い、これと並行して、旋回方向の逆の方向に存在する障害物と接触しないようにｄ１を短縮するフィードバック制御を行う。
【００２９】
まず、旋回方向の側に障害物が存在する場合の制御について説明する。
今、図３（ａ）に示したように、先行車両８０が障害物１００の先を右方向に旋回するものとする。
この場合、追従車両１は、旋回方向（先行車両８０の進行方向）側の障害物１００までの横距離ｄＲを測定する。ｄＲは、追従車両１の進行方向に対して垂直な方向の距離であり、追従車両１の走行ベクトルを含む線分と障害物１００までの距離である。
ｄＲの測定は、レーザレーダ２０を用いて行われる。
【００３０】
ｄＲを測定すると、追従車両１は、ｄＲとｗ／２＋αの大小関係を判断する。ここで、ｗは追従車両１の車幅を表し、αは追従車両１と障害物との間の余裕距離を表している。
ｄＲ＜ｗ／２＋αの場合、追従車両１がこのまま直進すると、障害物１００に接触する可能性があるため（計算上は、障害物１００からαだけ離れた位置を通過する）、追従車両１は、図３（ｂ）に示したように、ｄＲ≧ｗ／２＋αとなるまでｄ１を徐々に延長し、仮想ジョイント３の位置を先行車両８０の後方に延ばす。
以上の処理は、ｄ１を制御対象、ｄＲを観測対象とするフィードバック制御である。
【００３１】
ところで、追従車両１は、ｄ１＋ｄ２＝Ｌ（一定）となるようにｄ１を制御し、このためｄ１≦Ｌである。
そこで、ｄ１＝Ｌとしても条件式ｄＲ≧ｗ／２＋αが満たされない場合、追従車両１は、障害物１００を回避できないと判断し、走行を停止して、その旨を先行車両８０に通知する。
なお、以上の処理では、Ｌを一定として、ｄ１を延長した分だけｄ２を短縮するように構成したが、これは一例であって、Ｌを可変とし、ｄ２を一定のままｄ１を延長するように構成してもよいし、あるいは、ｄ１を延長すると共にｄ２も延長するように構成してもよい。
【００３２】
追従車両１は、先行車両８０の旋回方向の障害物１００について以上の処理を行うのと並行して、旋回方向の逆の側に存在する障害物に対して以下のような処理を行う。
図４に示したように、追従車両１は、旋回の外側に存在する障害物１０１についてもｄＲと同様に障害物１０１までの横距離ｄＬを測定する。
そして、追従車両１は、ｄＬ＜ｗ／２＋αの場合、ｄＬ≧ｗ／２＋αとなるまでｄ１を徐々に短縮し、仮想ジョイント３の位置を先行車両８０の方へ移動する。
そして、ｄ１＝０としても条件式ｄＬ≧ｗ／２＋αが満たされない場合、追従車両１は、障害物１０１を回避できないと判断して走行を停止し、その旨を先行車両８０に通知する。
以上の処理は、ｄ１を制御対象、ｄＬを観測対象とするフィードバック制御である。
【００３３】
以上の処理によって、条件式ｄ（Ｒ・Ｌ）≧ｗ／２＋αを満たすｄ１が探索できた場合、追従車両１は、障害物１００と障害物１０１の何れとも接触しないで先行車両８０に追従・旋回することができる。ここで、ｄ（Ｒ・Ｌ）は、ｄＲ、又はｄＬを意味する。
そして、追従車両１は、旋回しながら上記の処理を繰り返し、旋回方向に障害物がない場合には、ｄ１を０に戻していく。そして、ｄ１＝０に戻ったら、追従車両１は、通常の追従走行を行う。
【００３４】
また、条件式ｄ（Ｒ・Ｌ）≧ｗ／２＋αを満たすｄ１を探索できずに停止した場合、追従車両１は、ｄ１＝０の条件で目標点４から前方の障害物の監視を続け、障害物の移動又は先行車の位置の変化により追従が可能になった場合は、先行車両８０に通知し、追従を再開する。これは、後述する直結ルート（追従車両１から先行車両８０に至る直線経路）の探索により行うことができる。
また、ｄ（Ｒ・Ｌ）≧ｗ／２＋αを満たすｄ１を探索できなかった場合、障害物１００と障害物１０１の中間を走行するように追従車両１を構成することもできる。
【００３５】
このように、追従車両１は、レーザレーダ２０を用いて前方のｗ／２＋αの範囲に障害物が存在する場合にこれを検出するため、進行方向の所定幅の範囲に存在する障害物を検出する障害物検出手段を備えている。
本実施の形態では、所定幅の範囲を、追従車両１を含み追従車両１の走行ベクトルの方向に伸びる前方の所定幅の領域としたが、この他に、例えば、目標点４（移動目標点）と仮想ジョイント３（追従基準点）を結ぶ線分から所定幅の範囲とするなど、他の形態も可能である。
【００３６】
また、追従車両１は、追従車両１の旋回方向に障害物を検出した場合には先行車両代表点２と仮想ジョイント３の距離を延長し、旋回方向と逆の方向に障害物を検出した場合には当該距離を短縮する。
そして、追従車両１は、障害物を検出した場合に、障害物の監視領域である所定幅の範囲に障害物が検出されなくなるような先行車両８０から追従基準点までの距離（先行車両代表点２から仮想ジョイント３までの距離ｄ１）を探索する探索手段を備えている。
更に、追従車両１は、先行車両８０から追従基準点までの距離（障害物が検出されなくなるｄ１）が探索されなかった場合に車両の走行を停止する車両停止手段を備えている。
加えて、追従車両１は、停止した後、前記先行車両に至る直線経路（直結ルート）を検出する直線経路検出手段を備え、検出した直線経路上から所定幅の範囲に障害物が検出されない場合に、先行車両８０に対する走行を再開する。
【００３７】
以上の追従制御により、次のような効果を得ることができる。
まず、周辺に障害物がない場合、先行車両８０の経路にかかわらず、追従車両１はその時点で最適な経路を走行するため（制御方式１の効果）、使用するエネルギーを最小とすることができる。
また、周辺に障害物がある場合でも、先行車両８０の経路をたどることなく、最小コストで障害物との接触を回避しながら、先行車両８０に追従することができる。
更に、フィードバック制御でｄ１を調整することにより、障害物との接触の可能性の大きさにあわせて追従車両１の走行を調整することができる。
【００３８】
次に、図５のフローチャートを用いて、追従車両１が行う追従処理の手順について説明する。
以下の処理は、ＥＣＵ１０のＣＰＵが所定のプログラムに従って、計算などの情報処理や、車両各部の制御を行うものである。
【００３９】
追従車両１は、先行車両８０との通信、あるいは、レーザレーダ２０からの検出値などを用いて、先行車両８０の旋回を検知すると、Ｗ＝ｗ／２＋αとして、変数Ｗを設定し（ステップ５）、ｄ１＝０、ｄ２＝Ｌとして、変数ｄ１、ｄ２を設定する（ステップ１０）。
次に、追従車両１は、目標点４を算出し、目標点４に収束する追従制御を行う（ステップ１５）。
【００４０】
次に、追従車両１は、レーザレーダ２０を駆動して前方の障害物を探索し、レーザレーダ２０の値を解析してｄＲ、ｄＬを検出する（ステップ２０）。
次に、追従車両１は、先行車両８０が何れの方向に旋回するか判断し、旋回方向の障害物の横距離ｄ（Ｒ・Ｌ）（右旋回ならｄＲ、左旋回ならｄＬ）がｄ（Ｒ・Ｌ）＞Ｗを満たしているか否か判断する（ステップ２５）。
ｄ（Ｒ・Ｌ）＞Ｗを満たしている場合（ステップ２５；Ｙ）、追従車両１は、フラグｅをｅ＝０に設定し（ステップ３０）、旋回方向と逆方向の障害物の横距離ｄ（Ｌ・Ｒ）（右旋回ならｄＬ、左旋回ならｄＲ）がｄ（Ｌ・Ｒ）＞Ｗを満たしているか否かを判断する（ステップ３５）。フラグｅは、旋回方向の障害物について処理の有無を表すフラグであり、処理した場合は１、処理していない場合は０となる。そして、追従車両１は、ステップ３５に移行する。ステップ３５については後述する。
【００４１】
一方、ステップ２５で、ｄ（Ｒ・Ｌ）＞Ｗでなかった場合（ステップ２５；Ｎ）、旋回方向の障害物に接触する可能性があるため、追従車両１は、フラグｅをｅ＝１に設定し（ステップ５５）、ｄ１＝ｄ１＋ｂとして、ｄ１をｂだけ延長すると共に、ｄ２＝Ｌ−ｄ１として、追従距離Ｌを一定に保つ（ステップ６０）。ｂは、ｄ１を徐々に延長・短縮する際の長さである。
そして、追従車両１は、ｄ１≦Ｌ、即ち、ｄ１を繰り返し延長した結果Ｌに達したか否かを確認する（ステップ６５）。
【００４２】
ｄ１≦Ｌを満たさない場合（ステップ６５；Ｎ）、即ち、ｄ１＝Ｌの場合、これ以上ｄ１を延長して旋回方向の障害物との接触を回避することは困難であるため、追従車両１は、走行を停止してその旨を先行車両８０に通知する（ステップ７０）。
そして、追従車両１は、その場に停車して旋回し、先行車両８０に至る直結ルートを探索する（ステップ７５）。
【００４３】
直結ルートが探索できた場合（ステップ８０；Ｙ）、追従車両１は、先行車両８０に対する追従走行を再開し、その旨を先行車両８０に通知して、ステップ５に戻る。
直結ルートが探索でなかった場合（ステップ８０；Ｎ）、追従車両１は、ステップ７５を繰り返す。
一方、ステップ６５でｄ１≦Ｌであった場合（ステップ６５；Ｙ）、旋回方向の障害物との接触は回避できるため、追従車両１は、ステップ３５に移行して、旋回方向と逆方向に存在する障害物に対する確認を行う（ステップ３５）。
【００４４】
追従車両１は、ステップ３５において、ｄ（Ｌ・Ｒ）＞Ｗを満たしているか否かを判断し、ｄ（Ｌ・Ｒ）＞Ｗを満たしている場合（ステップ３５；Ｙ）、ｅ＝０であるか否かを判断する（ステップ９０）。
ｅ＝０でない場合（ステップ９０；Ｎ）、追従車両１は、ステップ１５に戻り、ｅ＝０の場合（ステップ９０；Ｙ）、追従車両１は、更にｄ１＞であるか否かを判断する（ステップ９３）。
ｄ１＞０でない場合（ステップ９０；Ｎ）、追従車両１は、ステップ１５に戻り、ｄ１＞０の場合（ステップ９０；Ｙ）、追従車両１は、ｄ１をｄ１−ｂとし、ｄ２をＬ−ｄ１とする（ステップ９７）。
このように、ステップ９０でｅ＝０であるか否かを判断するのは、ｅ＝０でもｄ１が正の場合があり、ｄ１が正の場合、ｄ１を０に戻すようにフィードバック制御するためである。
このような場合は、例えば、障害物を避けきった直後、反対に障害物がない場合に生じることがある。
また、旋回方向の障害物をよけきれるぎりぎりの場合には、追従車両１は、ステップ２５においてＹとＮを制御周期ごとに繰り返すことになる。
【００４５】
ステップ３５で、ｄ（Ｌ・Ｒ）＞Ｗを満たしていない場合（ステップ３５；Ｎ）、追従車両１は、フラグｅがｅ＝０であるか否かを確認する（ステップ４０）。
ｅ＝０でない場合（ステップ４０；Ｎ）、即ち、ｅ＝１である場合、追従車両１は、ステップ５５〜６５を行って、障害物との接触を回避する最小のｄ１を設定しているため、これ以上ｄ１を短縮することはできない。そのため、この場合には、追従車両１は、処理をステップ７０に移行し、走行停止（ステップ７０）、直結ルートの探索（ステップ７５）などを行う。
【００４６】
一方、フラグｅがｅ＝０である場合（ステップ４０；Ｙ）、ｄ１を短縮できる可能性がある。
そこで、追従車両１は、ｄ１がｄ１＞０を満たしているか否かを判断する（ステップ４５）。
ｄ１＞０でない場合（ステップ４５；Ｎ）、即ち、ｄ１＝０である場合、ｄ１を短縮することはできないため、追従車両１は、ステップ７０の処理に移行する。
一方、ｄ１＞０である場合、ｄ１を短縮できる余地があるため、追従車両１は、ｄ１＝ｄ１−ｂとして、ｄ１をｂだけ短縮すると共に、ｄ２＝Ｌ−ｄ１として、追従距離Ｌを一定に保ち（ステップ５０）、ステップ１５の追従制御に戻る。
【００４７】
上で用いたｂは適当に設定することができるが、本実施の形態では、一例として次のようにしてｂを設定した。
例えば、追従車両１の進行方向に対して右側に存在する障害物に対しては、まず、ｄＲの時間微分の絶対値を計算する。これは、Δｄ＝（｜ｄＲ（ｎ）−ｄＲ（ｎ−１）｜）／Δｔによって近似的に計算することができる。ここで、ΔｔはｄＲ（ｎ）のサンプリング周期である。
また、Δｔは一定であるため、Δｄ＝（｜ｄＲ（ｎ）−ｄＲ（ｎ−１）｜）を時間微分として用いてもよい。
【００４８】
次に、追従車両１は、このΔｄを用いて、ｂ＝Δｄ／ｓｉｎ（θ）＋βによりｂを算出する。
ここで、θは、追従車両１の走行ベクトルと障害物の成す相対角（即ち、追従車両１の走行ベクトルと追従車両１から見た障害物の存在する方向の成す角度）であり、βは適当な定数である。
追従車両１は、ｄＬに関しても同様にしてｂを計算する。
このようにｂを定義すると、追従車両１と障害物の横距離の変化率が小さい場合でも最低βのフィードバックゲインを確保することができる。
そして、障害物と接触する可能性が大きい場合には、ｂを大きく設定し、可能性が小さい場合にはｂを小さく設定することができる。
【００４９】
図６は、ステップ１５（図５）の追従制御の手順を説明するためのフローチャートである。
まず、追従車両１は、例えば、先行車両８０から先行車両代表点２の位置を送信してもらったり、あるいは、レーザレーダ２０の検出値を解析するなどして、追従車両１に対する先行車両８０の相対位置（先行車両代表点２の相対位置）を検出する（ステップ１００）。
【００５０】
次に、追従車両１は、先行車両８０の相対角、即ち、先行車両８０の走行ベクトルと追従車両１の走行ベクトルの成す角度を取得する（ステップ１０５）。
これは、例えば、レーザレーダ２０によって先行車両８０を検知してこれを解析することにより検出したり、あるいは、先行車両８０から走行ベクトルを通知してもらうなどして得ることができる。
【００５１】
次に、追従車両１は、先行車両代表点２から、先行車両８０の走行ベクトルと逆方向の距離ｄ１の位置に仮想ジョイント３を設定し、仮想ジョイント３と追従車両代表点５を対角とする矩形を設定し、矩形状の返上で仮想ジョイント３から距離ｄ２の位置に存在する目標点４の座標値を算出する（ステップ１１０）。
次に、追従車両１は、算出した目標点４に追従車両代表点５が一致するように追従車両１を移動させることにより、目標点収束制御を行う（ステップ１１５）。
【００５２】
図７は、ステップ７５（図５）の直結ルート探索処理の手順を説明するためのフローチャートである。
まず、追従車両１は、走行を停止した後、ｄ１をｄ１＝０に設定し、ｄ２をｄ２＝Ｌに設定する（ステップ１５０）。これは、通常での追従走行と同じパラメーター設定である。
次に、追従車両１は、停車しているその場で自転するように旋回して先行車両８０を、例えば、デッドレコニングなどを用いて追尾する（ステップ１５５）。
ここで、デッドレコニングを用いるのは、レーザレーダ２０では障害物が存在すると追尾できない可能性があるからである。
【００５３】
そして、追従車両１から先行車両８０に至る直線経路上に、レーザレーダ２０によって障害物が検出された場合（ステップ１６０；Ｙ）、追従車両１は、先行車両８０に至る直結ルートはないと判断し（ステップ１６５）、障害物が検出されなかった場合（ステップ１６０；Ｎ）、追従車両１は、直結ルートがあると判断する（ステップ１７０）。
【００５４】
図８は、追従車両１が前方をレーザレーダ２０で監視する方法を説明するための図である。
追従車両１は、レーザレーダ２０からレーザビームを水平方向にスキャンすることにより、幅２Ｗ＋γ（γは定数）の前方監視エリアを監視する。
追従車両１は、先行車両代表点２の相対位置を、デッドレコニング、及びレーザレーダ２０によるパターン認識により特定することができる。先行車両８０との通信により、先行車両８０の現在位置や走行ベクトルなどを通知してもらい、これらを利用してもよい。
【００５５】
また、追従車両１は、先行車両８０の相対角、先行車両８０までの距離、及び既知の先行車両８０の外形により、先行車両８０を認識し、先行車両８０以外の物体、即ち、障害物１００や障害物１０１を障害物であると認識することができる。
そして、追従車両１は、障害物１００の相対角ｒ（θｂ）と障害物１００までの距離からｄＲを計算することができ、同様に、障害物１０１とのｄＬを計算することができる。
【００５６】
図９は、追従車両１が直結ルートをレーザレーダ２０で探索する方法を説明するための図である。
レーザレーダ２０は、車両前方の、進行方向に向かって右端に設置されている。
θｍをレーザレーダ２０でスキャンしているレーザビームの照射角とし、θｍの方向に存在する障害物までの距離をｒ（θｍ）とする。
図９では、一例として、レーザビームの照射角がθｍ＝θａ、θｍ＝θｂの場合を図示している。
追従車両１は、直結ルート探索時には、幅Ｗｃの前方エリアを監視する。
そして、ｒ（θｍ）ｃｏｓ（θｍ）＞Ｗｃである場合、θｍの方向に存在する物体は監視エリアＷｃの外側に存在するため、直結ルート上に存在する物体までの距離ｄ（θｍ）はｄ（θｍ）＝∞、即ち、障害物は存在しないと見なすことができる。
【００５７】
一方、ｒ（θｍ）ｃｏｓ（θｍ）≦Ｗｃである場合、物体までの距離は、ｄ（θｍ）＝ｒ（θｍ）ｓｉｎ（θｍ）となる。
ここで、ｄ（θｍ）の最小値をＤ＝ｍｉｎ（ｄ（θｍ））とおき、レーザレーダ２０で計測した前方の物体までの距離をＤ＿ＬＲＦとすると、Ｄ＿ＬＲＦ＝Ｄ＋ｄＲ＋ｄＦとなる。
ここで、ｄＲは、先行車両８０の車両対角線の１／２である。先行車両８０の相対角θｒｅｌにかかわらず、最も追従車両１に接近する可能性のある値を使用した。また、ｄＦは追従車両代表点５から追従車両１の前端までの距離である。
【００５８】
一方、先行車両認識での前後方向車間距離をＤ＿ＬＬとすると、追従車両１は、Ｄ＿ＬＬ＞Ｄ＿ＬＲＦの場合、障害物１０１があると判断し、Ｄ＿ＬＬ≦Ｄ＿ＬＲＦの場合、障害物１０１がないと判断する。
そして、追従車両１は、θｄｉｒ＝０となるようにその場における旋回のフィードバック制御を行い、θｄｉｒ＝０で、Ｄ＿ＬＬ≦Ｄ＿ＬＲＦの場合、直結ルートがあると判断する。
【００５９】
以上に述べたように、追従車両１は、通常は（即ち、障害物が存在しない場合など）、第１の制御方法により先行車両８０に追従し、走行に要するエネルギーを節約することができ、必要に応じて仮想ジョイント３を先行車両８０の後方に移動させることにより、障害物を回避し、安定した走行を行うことができる。
【図面の簡単な説明】
【００６０】
【図１】本実施の形態の車両の追従制御に関連する構成を示した図である。
【図２】本実施の形態による追従制御を説明するための図である。
【図３】仮想ジョイントの位置を調整する例を説明するための図である。
【図４】旋回の外側に障害物が存在する場合を説明するための図である。
【図５】追従処理の手順を説明するためのフローチャートである。
【図６】追従制御の手順を説明するためのフローチャートである。
【図７】直結ルート探索処理の手順を説明するためのフローチャートである。
【図８】追従車両が前方を監視する方法を説明するための図である。
【図９】追従車両が探索する方法を説明するための図である。
【図１０】従来例を説明するための図である。
【符号の説明】
【００６１】
１  追従車両
２  先行車両代表点
３  仮想ジョイント
４  目標点
５  追従車両代表点
１０  ＥＣＵ
１１  先行車両相対位置検出部
１２  追従制御部
１３  車両制御部
２０  レーザレーダ
３０  車速センサ
４０  ヨーレートセンサ
５０  無線通信装置
６０ａ  駆動モータａ
６０ｂ  駆動モータｂ
８０  先行車両
１００  障害物
１０１  障害物
【図１】
2010079689.tif 000003
【図２】
2010079689.tif 000004
【図３】
2010079689.tif 000005
【図４】
2010079689.tif 000006
【図５】
2010079689.tif 000007
【図６】
2010079689.tif 000008
【図７】
2010079689.tif 000009
【図８】
2010079689.tif 000010
【図９】
2010079689.tif 000011
【図１０】
2010079689.tif 000012