(57)【要約】【課題】  周囲状況に応じたスムーズな追従を行う追従移動装置を提供する。【解決手段】  周囲状況検出部１０２からの周囲状況により、追従距離制御部１０３において先行移動体２０２との追従距離を設定し、移動制御部１０４により追従制御を行うことにより、周囲状況に応じて最適な距離を保った、スムーズな追従動作を実現することができる。【選択図】図１
2006134221.tif 000002
【特許請求の範囲】
【請求項１】
先行移動体を追従する追従移動装置において、
前記先行移動体を検出する先行移動体検出部と、
前記先行移動体検出部により検出された前記先行移動体との追従距離を可変に制御する追従距離制御部と、
を備えて、前記追従距離制御部により制御された前記追従距離に基づき前記先行移動体を追従することを特徴とする追従移動装置。
【請求項２】
周囲状況を検出する周囲状況検出部をさらに備えて、
前記追従距離制御部が、前記周囲状況検出部で検出された前記周囲状況に基づき前記先行移動体との前記距離を可変に制御することを特徴とする請求項１に記載の追従移動装置。
【請求項３】
前記周囲状況検出部で検出される前記周囲状況は、周囲の障害物の状況であることを特徴とする請求項２に記載の追従移動装置。
【請求項４】
前記追従距離制御部は、前記周囲の前記障害物との距離が前記追従距離より短い場合に、前記先行移動体との前記追従距離をより短くするように可変に制御することを特徴とする請求項３に記載の追従移動装置。
【請求項５】
前記追従距離制御部が、ユーザから指示された追従距離に基づき、前記先行移動体との前記追従距離を可変に制御することを特徴とする請求項１〜４のいずれか１つに記載の追従移動装置。
【請求項６】
前記ユーザから指示された前記追従距離は、前記先行移動体と前記追従移動装置の実際の距離に基づき指示された距離であることを特徴とする請求項５に記載の追従移動装置。
【請求項７】
前記追従距離制御部が、前記先行移動体の速度に基づいて、前記先行移動体との前記追従距離を可変に制御することを特徴とする請求項１〜６のいずれか１つに記載の追従移動装置。
【請求項８】
前記追従距離制御部が、前記先行移動体の速度の変化に基づいて、前記先行移動体との前記追従距離を可変に制御することを特徴とする請求項７に記載の追従移動装置。
【請求項９】
前記追従距離制御部が、前記追従移動装置が移動する空間の位置に応じて、前記先行移動体との前記追従距離を可変に制御することを特徴とする請求項１〜８のいずれか１つに記載の追従移動装置。
【請求項１０】
前記先行移動体を追従するように前記追従移動装置を移動させる駆動部をさらに備え、前記追従距離制御部により制御された前記追従距離に基づき前記先行移動体を追従するように、前記駆動部を駆動して前記先行移動体を追従することを特徴とする請求項１〜９のいずれか１つに記載の追従移動装置。
【請求項１１】
前記周囲状況検出部で検出される前記周囲状況は、前記追従移動装置が移動しようとする場所の状況又はその場所の近傍の状況であることを特徴とする請求項２に記載の追従移動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザなどの先行移動体を、適切な距離をおいて追従する追従移動装置に関する。
【背景技術】
【０００２】
従来の追従移動装置としては、先行移動体の方向と距離を検出し、先行移動体に一定の距離をおいて追従するものがあった（例えば、特許文献１）。図１９は、特許文献１に記載された従来の追従移動装置を示すものである。
【０００３】
図１９において、追従移動装置１９０１の追従センサ１９０２が、先行移動体１９０３の方向ΘＰ、距離ＬＰを計測する。追従移動装置１９０１は、方向ΘＰが０になるように−ΘＰの角度だけ回転を行い、先行移動体の方向を向く。また、障害物センサ１９０４は、周囲の障害物を検出する。
【０００４】
追従の動作は、予め与えられている先行移動体１９０３との保つべき距離（追従距離）ＬＤと、現在の距離ＬＰとを比較して、現在の距離ＬＰが一定の追従距離ＬＤより小さければ減速、現在の距離ＬＰが一定の追従距離ＬＤより大きければ加速、等しければ現在の速度を維持する制御を行うことにより、先行移動体１９０３との距離を一定に保つ。
【０００５】
以上のような方向と距離の制御を行うことにより、移動体１９０１は先行移動体１９０３の後ろを一定の追従距離ＬＤをおいて追従する。
【０００６】
追従の動作を、図１９を用いて説明する。図１９において、先行移動体１９０３が、点線で示した軌跡２００１を移動した場合、追従移動装置１９０１は実線で示す軌跡２００２を追従することになる。移動体１９０１は、その時刻での先行移動体１９０３への最短経路を動くスムーズな追従が行える。
【０００７】
次に従来の追従移動装置１９０１の障害物回避の動作について説明する。障害物センサ１９０４がセンサに反応する距離内に障害物を検出すると、追従動作に割り込みをかけ、予め決められている所定の回転を行い回避動作を行う。センサの範囲外に出れば回避の割り込みが無くなることにより、追従動作が開始される。
【０００８】
一方、先行移動体の軌跡を忠実にトレースして追従する従来知られている別の追従移動装置として、例えば非特許文献１に示されるものがある。追従移動装置は、先行移動体の通過した位置を一定距離間隔で履歴として記憶する。この通過履歴を順次読み込み、その点を通過するように追従移動装置の経路を決定する。また追従移動装置の現在位置と先行移動体の間に存在する通過履歴の数により、追従移動装置の速度を決定する。このようにして、追従移動装置は、先行移動体の通った軌跡とほぼ同じ経路上を、先行移動体との間隔を一定に保つように走行する。
【０００９】
【特許文献１】特開平７−３６５４１号公報（段落番号００３５、００３７を参照）
【非特許文献１】大矢晃久，  南雲陽介，  宗片匠：  “人間と共に移動する生活支援ロボット  −動作モードとインタラクション機能−”，  計測自動制御学会第３回システムインテグレーション部門講演会（ＳＩ２００２）講演論文集（Ｉ），  ｐｐ．１７１−１７２  （２００２，１２）  （図１を参照）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、図２０に示される従来の追従移動装置１９０１の動作は、周囲の障害物が少ない広い空間においては、先行移動体１９０３の進路変更に対して最短経路を通るスムーズな追従動作が可能であるが、逆に障害物が多くある空間においては、最短経路上に障害物が存在する時に、逆に多くの回避動作を必要とすることになる。
【００１１】
図２１、図２２を用いて、多くの障害物がある場合の従来の追従移動装置の動作について説明する。図２１で示すように、複数の障害物２１０１が存在する中を、先行移動体１９０３が軌跡２１０２に沿って移動した場合、追従移動装置１９０１は、障害物２１０１が無ければ、軌跡２１０３を通るように制御される。しかし、軌跡２１０３の上に障害物２１０１が存在するので、回避動作の割り込みがかかり、軌跡２１０３の通りには動けない。
【００１２】
そこで、図２２に示すように、障害物回避動作を行った場合の追従移動装置１９０１の実際に通る軌跡２２０１を実線で示す。このように、追従装置１９０１は、障害物が多い環境では、非常に方向転換の多いジグザクした軌跡を動くことになる。これは、方向転換や加減速のために、エネルギーを余計な消耗することになる。また、回りに人がいる場合、頻繁に方向を変える追従移動装置１９０１は、人の移動の妨げになる。
【００１３】
逆に、非特許文献１に示されるような、先行移動体の軌跡の上を通る制御を行う場合は、前記のような問題は生じない。しかし、一方、障害物の無い空間では、最短経路があるにも係らず、先行移動体の通った経路をなぞる遠回りの経路を通ることになる。また、先行移動体の通った経路は周囲には見えないので、時間をおいて突然向きを変える追従移動装置の動きは周りの人に予測しにくい動きとなってしまうことも考えられる。常に先行移動体の方向を向いて動作する特許文献１に示される制御の場合は、このようなことは少ない。
【００１４】
さらに、例えば先行移動体がユーザであり、ユーザが自分の後ろを荷物など載せた追従移動装置を追従させるなどの利用する場合において、ユーザの意図により追従移動装置の追従の距離を変化させたいという要望がある。例えば重要な荷物を追従移動装置に載せている場合は、荷物に何かあった場合に直ぐに知ることができ、素早く対処できるように、通常の距離より短めに追従させたいと考えることがある。また逆に、複数人で連れ立って歩いている場合などは、自分の直ぐ近くに追従移動装置があると、他の人の邪魔になるので、いつもより距離をおいて追従させたいと考えることがある。しかし、特許文献１、非特許文献１に示される従来の追従移動装置のどちらにおいても、追従距離は装置が予め決めた一定の値であるため、ユーザの要望により変化させることができない。
【００１５】
以上のように、従来の追従移動装置は、追従距離を予め決めた固定の値での制御を行うため、周囲の状況やユーザの意図等によって、追従距離を変化させることができないという課題があった。
【００１６】
本発明は、前記課題を解決するためになされ、その目的とするところは、周囲状況やユーザの意図に応じた追従距離を変化させることにより、障害物などの周囲状況に応じた動きや、ユーザの意図に応じた動きをする追従移動装置を提供することにある。
【課題を解決するための手段】
【００１７】
前記目的を達成するために、本発明は以下のように構成する。
【００１８】
本発明によれば、先行移動体を追従する追従移動装置において、
前記先行移動体を検出する先行移動体検出部と、
前記先行移動体検出部により検出された前記先行移動体との追従距離を可変に制御する追従距離制御部と、
を備えて、前記追従距離制御部により制御された前記追従距離に基づき前記先行移動体を追従することを特徴とする追従移動装置を提供する。
【発明の効果】
【００１９】
以上のように、本発明は、追従距離制御部において先行移動体との距離を制御して追従するという構成により、状況に応じて適した距離を保ってスムーズな追従動作を実現することができる。
【発明を実施するための最良の形態】
【００２０】
以下に、本発明にかかる実施の形態を図面に基づいて詳細に説明する前に、本発明の種々の態様について説明する。
【００２１】
本発明の第１態様によれば、先行移動体を追従する追従移動装置において、
前記先行移動体を検出する先行移動体検出部と、
前記先行移動体検出部により検出された前記先行移動体との追従距離を可変に制御する追従距離制御部と、
を備えて、前記追従距離制御部により制御された前記追従距離に基づき前記先行移動体を追従することを特徴とする追従移動装置を提供する。
【００２２】
本発明の第２態様によれば、周囲状況を検出する周囲状況検出部をさらに備えて、
前記追従距離制御部が、前記周囲状況検出部で検出された前記周囲状況に基づき前記先行移動体との前記距離を可変に制御することを特徴とする第１の態様に記載の追従移動装置を提供する。
【００２３】
本発明の第３態様によれば、前記周囲状況検出部で検出される前記周囲状況は、周囲の障害物の状況であることを特徴とする第２の態様に記載の追従移動装置を提供する。
【００２４】
本発明の第４態様によれば、前記追従距離制御部は、前記周囲の前記障害物との距離が前記追従距離より短い場合に、前記先行移動体との前記追従距離をより短くするように可変に制御することを特徴とする第３の態様に記載の追従移動装置を提供する。
【００２５】
本発明の第５態様によれば、前記追従距離制御部が、ユーザから指示された追従距離に基づき、前記先行移動体との前記追従距離を可変に制御することを特徴とする第１〜４のいずれか１つの態様に記載の追従移動装置を提供する。
【００２６】
本発明の第６態様によれば、前記ユーザから指示された前記追従距離は、前記先行移動体と前記追従移動装置の実際の距離に基づき指示された距離であることを特徴とする第５の態様に記載の追従移動装置を提供する。
【００２７】
本発明の第７態様によれば、前記追従距離制御部が、前記先行移動体の速度に基づいて、前記先行移動体との前記追従距離を可変に制御することを特徴とする第１〜６のいずれか１つの態様に記載の追従移動装置を提供する。
【００２８】
本発明の第８態様によれば、前記追従距離制御部が、前記先行移動体の速度の変化に基づいて、前記先行移動体との前記追従距離を可変に制御することを特徴とする第７の態様に記載の追従移動装置を提供する。
【００２９】
本発明の第９態様によれば、前記追従距離制御部が、前記追従移動装置が移動する空間の位置に応じて、前記先行移動体との前記追従距離を可変に制御することを特徴とする第１〜８のいずれか１つの態様に記載の追従移動装置を提供する。
【００３０】
本発明の第１０態様によれば、前記先行移動体を追従するように前記追従移動装置を移動させる駆動部をさらに備え、前記追従距離制御部により制御された前記追従距離に基づき前記先行移動体を追従するように、前記駆動部を駆動して前記先行移動体を追従することを特徴とする第１〜９のいずれか１つの態様に記載の追従移動装置を提供する。
【００３１】
本発明の第１１態様によれば、前記周囲状況検出部で検出される前記周囲状況は、前記追従移動装置が移動しようとする場所の状況又はその場所の近傍の状況であることを特徴とする第２の態様に記載の追従移動装置を提供する。
【００３２】
以下、本発明の実施形態を、図面を参照しながら説明する。
【００３３】
（第１実施形態）
図１は、本発明の第１実施形態における追従移動装置の構成を示すブロック図である。図１において、１０１は先行移動体２０２を計測する先行移動体検出部であり、１０２は二輪走行型のロボットなどの追従移動装置２０１の周囲の状況を検出する周囲状況検出部であり、１０３は追従移動装置２０１の先行移動体２０２への追従距離を制御する追従距離制御部であり、１０４は追従移動装置２０１の移動を制御する移動制御部であり、１０５は、追従移動装置２０１の移動を行う駆動部であり、移動制御部１０４からの目的とする進行方向及び速度等の情報により、回転制御部１０６左右のモータ１０７の回転数を制御し、左右の車輪の一例としての左右のタイヤ１０８を駆動することにより、目的の進行方向及び速度での追従移動装置２０１の移動を行う。１１０は、追従距離制御部１０３や移動制御部１０４の各種制御におけるパラメータの値を、ユーザなどの指示により設定し、変更するパラメータ設定部である。
【００３４】
先行移動体２０２としては、例えば追従移動装置２０１を利用するユーザ２０２Ａなどがある。この場合は、荷物を載せた追従移動装置２０１が自動的にユーザ２０２Ａの後を追従して荷物などを運搬するなどの用途が考えられる。あるいは先行移動体２０２として自動車を考えれば、人間が運転又は自動運転する自動車に、他の自動車が追従走行する用途なども考えられる（図示せず）。
【００３５】
以上のように大略構成された追従移動装置２０１について、以下、さらに、その構成、動作、作用を図２〜図１０を用いて詳細に説明する。
【００３６】
図２は本発明の第１実施形態における追従移動装置２０１の外観を示す斜視図である。ユーザの後を追従する場合を示しており、２０２Ａは先行移動体２０２としてのユーザを表している。
【００３７】
先行移動体２０２の一例であるユーザ２０２Ａは、その背後に、特定の波長の光を出す光源２０３を持っている。
【００３８】
先行移動体検出部１０１は、先行移動体２０２の背後に装備された特定の波長の光を出す光源２０３を検出し、かつ、一定の間隔で追従移動装置２０１の前端に支持柱２０１Ａを介して突出して配置された２台のカメラ２０４を備えている。この２台のカメラ２０４により、光源２０３をそれぞれ検出して、空間ステレオ計測により、光源２０３の方向及び距離を計測する。すなわち、カメラ２０４の画像中から光源２０３の位置を、光源２０３の波長を手がかりに抽出すれば、画像中での光源２０３の２次元位置が定まり、カメラ２０４のレンズ方向及び焦点距離などの情報から、カメラ２０４から光源２０３への向きを計算することができる。ただ、距離は１台のカメラ２０４では求まらないので、カメラ２０４から光源２０３の存在する方向を表す１本の直線が求まることから、三角測量の原理で、位置の違う２台のカメラ２０４で同様の直線を求めれば、その２つの直線の交点が光源２０３の位置となる。これにより、カメラ２０４の取り付けられている追従移動装置１０１からの光源２０３の方向及び距離を求めることができる。光源２０３の代わりに特定の波長を出す超音波の発信機を用い、発信機から出された超音波を受信する複数の超音波受信機を用いることにより、同様の計測をすることもできる。その場合は、超音波の到達する時間が距離を表すので、超音波の発信時刻と、各超音波受信器の受信時刻との時間差で距離が求まり、各超音波受信機から等距離の円の交点が、発信機の位置となる。
【００３９】
また、先行移動体２０２の形状、色などの特徴を画像処理で抽出することにより、先行移動体２０２に、光源２０３のような特別な装備を持たせずに、先行移動体２０２の方向及び距離を計測することもできる。例えば、先行移動体２０２がユーザつまり人間２０２Ａである場合について、図３を用いて説明する。最初に追従するユーザ２０２Ａの後ろ姿の画像をカメラ２０４で撮影して登録する。ユーザ２０２Ａの服装の色、模様などをメモリ（図示せず）に記憶しておく。動作時には、各カメラ２０４でユーザ２０２Ａの後ろ姿を撮影する。左右のカメラ２０４で撮影された画像が図３（Ａ）、図３（Ｂ）である。これらの画像から、頭部３０１と肩の部分３０２を、図３（Ｃ）、図３（Ｄ）に示すように、円３０３の形状と円弧３０４の形状とを認識処理によりそれぞれ抽出し、頭部３０１である円３０３の中心位置３０５の座標を各画像で求め、それらの位置から三角測量の原理でユーザ２０２Ａの方向及び距離を計算する。同じ人物を追従するには、登録されたユーザ２０２Ａの画像の肩より下の部分の、服装の色分布、輝度分布、エッジ位置などの情報により、画像中の追従対象が、同一人物と判断して追従する。あるいは、最初の登録した画像から、画像中でのユーザ２０２Ａの位置の変化が少ない、つまり短い時間間隔（例えば１秒以下）で撮影している場合などは、登録領域の動きベクトルを調べて、同じ動きをする動きベクトルを追従すべきユーザ２０２Ａの領域として検出する方法などがある。
【００４０】
以上のような方法により、先行移動体検出部１０１によって、図４に示すように追従移動装置２０１の回転中心から距離Ｌ、前後軸方向に向かって時計回りにΘの方向に、追従すべき先行移動体２０２が検出される。
【００４１】
次に、周囲状況検出部１０２の動作について説明する。図２において、追従移動装置２０１の前端の上面には、追従移動装置２０１の周囲の障害物（言い換えれば、追従移動装置２０１の移動に障害となる物体）を検出して周囲状況データを作成する周囲状況検出部１０２が装備されている。これは、追従移動装置２０１の前方の障害物を検出する場合であり、追従が前進のみで後進を行わない場合を考えている。さらに、追従移動装置２０１の後部、側面などにも、周囲状況検出部１０２を配置すれば、より広い範囲での検出をすることが可能となる。特に、追従移動装置２０１の後進などを行う場合は、全周囲の検出が必要となる。
【００４２】
周囲状況検出部１０２は、追従移動装置２０１の周囲の障害物の位置などの状況を検出して周囲状況データを作成して出力可能とする。図５、図６、図７を用いて、その検出の動作を説明する。図５の周囲状況検出部１０２の赤外線距離センサ５０１によって、放射状に等間隔に、周囲の障害物５０２までの距離を計測する。計測の原理は光飛行時間測定法と呼ばれるもので、赤外線距離センサで構成する障害物距離センサ５０１にある発光素子からレーザ光５０３を発射し、障害物５０２に反射して戻ってくる反射光を同じ障害物距離センサ５０１にある受光素子で受光し、発射してから受光するまでの時間を測定すれば、光の速度から障害物５０２までの距離を求めるものである。レーザ光５０３の方向をミラー、プリズムなどにより変化させ走査することにより、各方向に対する障害物５０２の距離を求めることが可能となる。
【００４３】
なお、障害物５０２の検出には、このレーザ光５０３の光飛行時間を測定する方法以外にも、超音波が障害物に反射して戻ってくるまでの時間を用いる方式や、複数のカメラを用いて画像処理により空間ステレオ法で検出する方法など、多くの方法がある。
【００４４】
図６に周囲状況検出部１０２で検出された周囲状況データを示す。レーザ光５０３の走査方向Ｓを、追従移動装置２０１の前後軸方向を０度として、−１１０度から＋１１０度まで１０度間隔で走査した時の、各走査方向Ｓに対する障害物までの距離Ｄの値の組となっている。走査距離で、反射光が返ってこない場合は、センサの走査限界の距離Ｄｍａｘ（１０．０ｍ）としている。この周囲状況データにより、どの方向に、どれ位の距離で障害物があるか、どの方向が空いているかなどの周囲の状況が判る。図７に、図６の周囲状況データをグラフ化したものを示す。
【００４５】
次に、パラメータ設定部１１０におけるユーザからのパラメータの設定について説明する。図２において、２０５はユーザ２０２Ａが追従移動装置２０１の動作の制御するリモコンであり、このリモコン２０５でパラメータ設定部１１０へパラメータを入力することができる。あるいは、パラメータの設定以外にも、緊急停止のためのボタンなどを装備し、緊急時に動作を停止するなどの指示を与えることができる。このリモコン２０５のストラップの後ろ部分に光源２０３を装備することにより、ユーザ２０２Ａがリモコン２０５を首に掛けて装着すれば、自然と光源２０３がユーザ２０２Ａの後ろに配置されることができる。
【００４６】
また、追従移動装置２０１を、空港やスーパーなどでの荷物運搬に貸し出す時は、不特定多数のユーザが利用するときに、リモコン２０５を追従移動装置２０１のキーとして利用することもできる。
【００４７】
追従移動装置２０１のパラメータ設定部１１０へのパラメータの入力手段としては、リモコン２０５以外にも、追従移動装置本体に装備されたインタフェース２０６を用いて、パラメータ設定部１１０へパラメータを入力するようにしてもよい。
【００４８】
駆動部１０５は、図１、図２に示すように２輪のモータ１０７とタイヤ１０８と２つのモータ１０７を駆動制御する回転制御部１０６、現在速度検出部１０９とより大略構成されている。回転制御部１０６でのモータ１０７の駆動制御に基づき、両方のタイヤ１０８を同じ速度で回転させることにより、まっすぐ前進し、左右のタイヤ１０８の回転数に差を設けることにより、左右に曲がりながら進むことが可能である。また左右のタイヤ１０８の回転を、反対方向に行うことにより、その場で回転することもできる。現在速度検出部１０９では、追従移動装置２０１の現在の移動速度Ｖを検出し、移動制御部１０４に出力する。現在の移動速度Ｖは、左右タイヤ１０８の回転量を現在速度検出部１０９の一例としてのロータリエンコーダなどで検出して求めることができる。タイヤ１０８のスリップなどにより回転数と実際の移動量とに差がでる場合もあるので、加速度センサで加速度を計算してその積分値を用いる方法や、撮像素子で床面のパターンを撮影して、その変化から移動量、速度を検出する方法などを用いれば、より正確な現在の移動速度を検出することができる。
【００４９】
なお、駆動部１０５は、先行移動体２０２を追従できるだけの走行性能を持った方向と速度を制御できるものであれば、２輪や４輪などの車輪方式だけでなく、脚歩行のロボットであっても良い。
【００５０】
追従距離制御部１０３は、周囲状況検出部１０２で検出されて入力される周囲の状況の情報（周囲状況データ）とパラメータ設定部１１０で設定されて入力されたパラメータの値とに基づき、追従移動装置２０１の先行移動体２０２への追従距離を制御する。この追従距離制御部１０３において、先行移動体２０２を追従するときに制御の目標とする追従距離Ｌｄを決定する動作について、図８を用いて説明する。図８は追従距離Ｌｄの決定の動作を説明するためのフローチャートである。
【００５１】
ステップＳ８０１では、予め決められた追従距離の初期値Ｌｄ０を設定する。これは平均的な状況で、望ましいと考えられる距離を設計時に初期値として予め追従距離制御部１０３に設定しておけばよい。あるいは使用に際して、ユーザがその状況で望ましいと考えられる距離を、パラメータ設定部１１０を用いて追従距離制御部１０３に与えても良い。その与え方の一例としては、先行移動体２０２がユーザ２０２Ａの場合、停止状態の追従移動装置２０１に対して、望ましいと考えられる追従距離Ｌｄが値Ｌｄ０だけ追従移動装置２０１から離れた位置から、動作開始の指示を、リモコン２０５などでユーザ２０２Ａが送るなどの方法が考えられる。このとき、追従距離制御部１０３は、この開始時に先行移動体２０２であるユーザ２０２Ａの距離Ｌを先行移動体検出部１０１で検出し、初期値Ｌｄ０として追従距離制御部１０３に記憶すればよい。
【００５２】
初期値Ｌｄ０の値としては、先行移動体２０２が人間の場合などは、人間同士が後を追って歩くときと同じ程度の１ｍから２ｍの値に設定することが多い。この設定された初期値Ｌｄ０により、追従距離ＬｄがＬｄ＝Ｌｄ０として動作を開始する。
【００５３】
同様に、ステップＳ８０１では、追従距離の最小値Ｌｄｍｉｎを追従距離制御部１０３に設定する。これは、追従時の先行移動体２０２であるユーザ２０２Ａに接近する限界の距離を設定することを意味する。例えば、追従距離の最小値Ｌｄｍｉｎには、先行移動体２０２であるユーザ２０２Ａが急に停止してもユーザ２０２Ａに追従移動装置２０１が衝突せずに停止できるように、現在の先行移動体２０２であるユーザ２０２Ａの速度あるいはユーザ２０２Ａの最高速度から停止までに最低限要する距離を基に安全率を見込んだ値に設定するなどが考えられる。あるいは先行移動体２０２がユーザ２０２Ａである場合などは、物理的制約や安全が確保される範囲内で、ユーザ２０２Ａの好みにより任意に設定することも可能である。より具体的な例として、追従移動装置２０１が人間を追従して、人間と同じ数ｍ／分の速度で動く場合は、例えば５０ｃｍ程度の値を追従距離の最小値Ｌｄｍｉｎとして設定する。
【００５４】
次に、ステップＳ８０２において、周囲状況検出部１０２から周囲状況データを追従距離制御部１０３に読み込み、その周囲状況データの中で障害物５０２までの距離Ｄの最小値Ｄｍｉｎを追従距離制御部１０３で求める。その後、追従距離制御部１０３において、仮の追従距離Ｌｄｔｍｐとして、予め与えられている距離調整係数ｆｓを最小値Ｄｍｉｎに掛けた値を設定する。例えば距離調整係数ｆｓを０．９とすると、仮の追従距離Ｌｄｔｍｐは（最小値Ｄｍｉｎ×０．９）となるので、周囲にある障害物５０２からの距離よりも先行移動体２０２からの距離が一番小さくなって先行移動体２０２が一番近くなり、先行移動体２０２に追従することになる。距離調整係数ｆｓをより小さくすれば、より先行移動体２０２へ近づくことになる。こうすることにより、周囲に障害物５０２が近接している混雑した状況になった場合は、周囲の障害物５０２より、先行移動体２０２へより近く接近して追従することになり、障害物５０２への回避動作を少なくしてスムーズな追従が可能となる。
【００５５】
なお、ここでは、検出対象の範囲内のある距離範囲以内に障害物があれば、混雑した状況と考えている。この距離範囲を設定するための距離としては、追従距離の初期値Ｌｄ０とすることができる。よって、混雑しない状況とは、検出対象の範囲内で障害物を全く検出しないというわけではなく、検出対象の範囲内のある距離範囲以内に障害物が無ければ、混雑していない状況であると判断することにしている。より正確には、前記混雑した状況とは、障害物が近接している混雑した状況とも言える。よって、例えば、１つの概念としては、ある距離以内に障害物５０２を周囲状況検出部１０２で検出すれば、混雑した状況と判断する一方、前記ある距離以内に全く障害物５０２を周囲状況検出部１０２で検出しないならば、混雑していない状況と判断する。また、より具体的な概念の例としては、先行移動体２０２を中心として左右に１１０度の角度の範囲内に追従距離の初期値Ｌｄ０より近い障害物５０２が周囲状況検出部１０２で検出されれば、混雑した状況と判断する。先行移動体２０２を中心として左右に１１０度の角度の範囲内に追従距離の初期値Ｌｄ０以内に全く障害物５０２を周囲状況検出部１０２で検出しないならば、混雑していない状況と判断する。この場合、想定した通常の追従において、混雑した状況では、先行移動体２０２より近接した障害物５０２があるということになる。あるいは混雑度を判定する距離として、現在の先行移動体２０２までの距離Ｌｄを考えると、混雑した状況とは、現在の状況において先行移動体２０２より近い障害物５０２があるということである。なお、図１２に、追従距離の初期値Ｌｄ０の範囲の領域１２０５を図示している。この領域１２０５に障害物１２０３が入った場合には、周囲が混雑していると考えることになる。詳しくは後述するが、追従移動装置２０１の出発位置１２０１より少し進みかつ図１２において領域１２０５の右上に障害物１２０３が入ってくる辺りから、位置１２０４の少し手前でかつ左右１１０°の角度の範囲の領域１２０５内から障害物１２０３が外に出るまでが、周囲が混雑している状況だと考える。
【００５６】
ステップＳ８０３においては、仮の追従距離Ｌｄｔｍｐが追従距離の初期値Ｌｄ０より大きいと追従距離制御部１０３により判断された場合は、周囲の障害物５０２が十分遠くにあると考えて、ステップＳ８０４で、追従距離制御部１０３により、追従距離Ｌｄをユーザ２０２Ａが一般的な状況で望んでいる追従距離の初期値Ｌｄ０に設定する。このステップＳ８０３及びＳ８０４により、障害物５０２で混雑した状況から混雑していない状況へ移ったと判断されたときには、追従距離の最初の初期値Ｌｄ０に再設定されることを意味する。
【００５７】
ステップＳ８０３において、仮の追従距離Ｌｄｔｍｐが追従距離の初期値Ｌｄ０より小さいと追従距離制御部１０３により判断された場合は、ステップＳ８０５により、仮の追従距離Ｌｄｔｍｐが追従距離の最小値Ｌｄｍｉｎより大きいか否かを判定する。
【００５８】
ステップＳ８０５において、仮の追従距離Ｌｄｔｍｐが追従距離の最小値Ｌｄｍｉｎより小さいと追従距離制御部１０３により判断された場合は、ステップＳ８０６において追従移動装置２０１の停止を移動制御部１０４に指示する。
【００５９】
追従距離が小さくなるのは、例えば先行移動体２０２が反転して、追従移動装置２０１へ真っ直ぐに近づいてきた場合などであり、この場合は前進、方向転換だけでは先行移動体２０２と一定の距離をとることができない。逆に、ユーザ２０２Ａなどが一部の荷物を取るなどするために追従移動装置２０１に近づきたい場合に、追従移動装置２０１が後進して追従距離を一定に保っていては、ユーザ２０２Ａなどは追従移動装置２０１に近づくことが出来なくなる。このため、前記したように追従移動装置２０１を停止させるように制御する。先行移動体２０２との距離が再度、追従移動装置２０１から離れていき、距離が最小値Ｌｄｍｉｎより大きくなったら、ステップＳ８０７，Ｓ８０４などでの追従が開始される。
【００６０】
ステップＳ８０５において、仮の追従距離Ｌｄｔｍｐが追従距離の最小値Ｌｄｍｉｎより大きいと追従距離制御部１０３により判断された場合は、ステップＳ８０７において追従距離制御部１０３により追従距離Ｌｄは仮の追従距離Ｌｄｔｍｐに設定する。
【００６１】
移動制御部１０４は、先行移動体検出部１０１から入力される先行移動体２０２の情報と、追従距離制御部１０３から入力される追従距離と、周囲状況検出部１０２で検出されて入力される周囲の状況の情報（周囲状況データ）と、パラメータ設定部１１０で設定されて入力されたパラメータの値とに基づき、回転制御部１０６を制御して追従移動装置２０１の移動を制御する。
【００６２】
次に、移動制御部１０４における動作について説明する。移動制御部１０４では、衝突する可能性のある障害物５０２の回避と、先行移動体２０２への追従の制御を行う。その制御を動作について、図９、図１０を用いて説明する。
【００６３】
図８は移動制御部１０４の全体の動作を説明するフローチャートである。
【００６４】
まず、ステップＳ９０１において先行移動体２０２への追従処理を行い、新しい進行方向と速度が出力される。
【００６５】
次に、ステップＳ９０２において、周囲状況検出部１０２からの周囲状況データを用いて新しい進行方向と速度で追従移動装置２０１が移動する場合、追従移動装置２０１が衝突する可能性のある障害物５０２があるか否かを移動制御部１０４で判定する。具体的には、追従移動装置２０１の周囲状況データを示す図６で、進行の角度で、一定の時間×速度分で求まる進行距離より近くに障害物があるかどうかで移動制御部１０４により判断できる。この一定の時間は、単に次の動作ステップの時間ではなく、障害物５０２に対する回避処理の時間、安全率なども考慮した時間である。障害物５０２が急な動きにより追従移動装置２０１に接近してきた場合などにも、それを周囲状況検出部１０２が検出して、移動制御部１０４に回避動作の指示を出し、実際に追従移動装置２０１が障害物５０２に対する回避動作を完了するまでのトータルな時間を考慮する必要がある。また、回避動作も行わずに追従移動装置２０１の移動を停止して障害物５０２を回避する場合、又は追従移動装置２０１の進行方向を変化させて障害物５０２を回避できる場合などあり、現在の速度、周囲状況から、その回避動作が完了するまでの時間も複数ある。それらの回避処理の時間の中で一番時間のかかるもの、あるいは現在の状況から選択される回避処理の時間などを基に、安全率を考慮した時間から、衝突の可能性のある距離である衝突回避限界Ｄｃｏｌを移動制御部１０４により設定し、衝突回避限界Ｄｃｏｌ以内の距離にある障害物５０２を移動制御部１０４により検出する。また周囲検出部１０２で求められる距離は、赤外線距離センサ５０１から障害物５０２までの距離であり、追従移動装置２０１の外形から障害物５０２までの距離ではない。よって、方向によっては、赤外線距離センサ５０１より障害物５０２に近いところに、追従移動装置２０１の外形がある場合がある。よって、図６の距離は、角度毎にその方向にある追従移動装置２０１の外形の最遠点と赤外線距離センサ５０１の位置との距離を引いて移動制御部１０４により補正する必要がある場合もある。図２、図５に示すように、赤外線距離センサ５０１が前方の端に位置している場合は、補正の必要がない場合もある。
【００６６】
衝突回避限界Ｄｃｏｌの値を設定するとき、例えば、現在の速度が分速３ｍであり、回避動作に３秒かかるとすると、１５ｃｍ以内の障害物は回避できないことになる。そこで、安全率を考慮して３０ｃｍを衝突回避限界Ｄｃｏｌとして移動制御部１０４により設定できる。
【００６７】
ステップＳ９０２で、障害物５０２への追従移動装置２０１の衝突可能性ありと移動制御部１０４により判断した場合は、ステップＳ９０３の衝突回避動作を移動制御部１０４により行い、一定距離だけ衝突回避動作を、移動制御部１０４により駆動部１０５の移動制御部１０４を制御して行う。この衝突回避動作においても、先行移動体検出部１０１による先行移動体２０２の検出、周囲状況検出部１０２による周囲状況の計測を行った上で回避動作を行う。回避動作が終了すれば、再度、ステップＳ９０１の追従処理を行う。
【００６８】
前記ループにより衝突可能性が無くなった場合、ステップＳ９０４において、移動制御部１０４により、ステップＳ９０１で出力された進行方向及び移動速度に基づいて駆動部１０５の移動制御部１０４を制御して、追従移動装置２０１による追従動作を行う。
【００６９】
ステップＳ９０５で追従終了の指示が移動制御部１０４に入るまで、移動制御部１０４はこの動作ループを継続する。スムーズな動作を行うためには、分速数ｍで動作している場合には、少なくとも１秒間に数回から数十回は、このループを廻した方が良い。
【００７０】
追従終了の指示は、リモコン２０５のボタン等で入力することで行う。あるいは追従移動装置２０１の本体に装備されたインタフェース２０６に入力しても良い。ただし、先行移動体がユーザ２０２Ａであった場合は、追従移動装置２０１に接近する必要がある。ユーザ２０２Ａが追従移動装置２０１に向かって振り返り、真っ直ぐに近づけば、追従移動装置２０１が停止するので追従移動装置２０１の本体のインタフェース２０６を操作できる。
【００７１】
次に、ステップＳ９０１での追従処理について、図１０の動作のフローチャートを用いて説明する。
【００７２】
まず、ステップＳ１００１において、先行移動体２０２までの距離Ｌ及び先行移動体２０２の位置する方向Θを先行移動体検出部１０１から移動制御部１０４に読み込み、設定された追従距離Ｌｄを追従距離制御部１０３から移動制御部１０４に読み込む。また、現在速度検出部１０９により検出された現在の移動速度Ｖを移動制御部１０４に入力する。なお、現在の移動速度Ｖは、図１、図１３の現在速度検出部１０９でそれぞれ検出可能である。図１５においては、移動情報検出部１５０１で現在の移動速度Ｖは検出可能であるが、内部的には回転制御部１０６にも入力して、その部分でのフィードバック制御をすることが可能である。
【００７３】
次いで、ステップＳ１００２において、先行移動体２０２の方向に追従移動装置２０１を向かせるため、追従移動装置２０１の進行方向をΘに移動制御部１０４により設定する。
【００７４】
次に、ステップＳ１００３において、先行移動体検出部１０１で検出された先行移動体２０２までの距離Ｌと、追従距離制御部１０３の追従距離Ｌｄとを移動制御部１０４により比較する。移動制御部１０４によりＬ＞Ｌｄと判断された場合（ステップＳ１００４）は、先行移動体２０２へ追いつくため、移動制御部１０４により、現在の移動速度Ｖを予め定めた割合ａ１だけ増加させる。例えば予め定めた割合ａ１を０．２とすると、新しい速度Ｖ×（１＋ａ１）はＶ×１．２となり、２０％速度が速くなる。逆に、移動制御部１０４によりＬ＜Ｌｄと判断された場合（ステップＳ１００６）は、近づきすぎているので、移動制御部１０４により、現在の移動速度Ｖを予め定めた割合ａ２だけ減少させる。予め定めた割合ａ２を０．１とすると、新しい速度Ｖ×（１−ａ２）はＶ×０．９となる。先行移動体２０２までの距離Ｌと追従距離Ｌｄが一致した場合（ステップＳ１００５）は、現在の速度Ｖを維持する。以上の比較は、厳密に数値として一致するという判断ではなく、加速、減速の振動を避けるため、予め定めた一定の差の範囲内に入っていれば、先行移動体２０２までの距離Ｌと追従距離Ｌｄは等しいと移動制御部１０４により判断するようにしてもよい。
【００７５】
最後に、ステップＳ１００７で求めた進行方向Θと速度Ｖを移動制御部１０４から移動制御部１０４に出力する。
【００７６】
次に、図９のステップＳ９０３の衝突回避動作について図１１を用いて説明する。図１１は、衝突回避の動作を説明した模式図である。
【００７７】
図１１の（Ａ）において、先行移動体２０２に追従して移動していた追従移動装置２０１の方向αに、衝突回避限界Ｄｃｏｌ以下の距離に障害物１１０１がステップＳ９０２で周囲状況検出部１０２により検出されたとする。
【００７８】
すると、移動制御部１０４の基に回転制御部１０６が左右のモータ１０７の駆動を制御して、図１１の（Ｂ）に示すように、αの方向とは反対側に予め設定されて一定角βだけ追従移動装置２０１が回転する（図１１の（Ｂ）では時計回りに一定角βだけ回転する）。この向きで、周囲の障害物（障害物１１０１や他の障害物）の位置を周囲状況検出部１０２により計測し、追従移動装置２０１の最小回転半径や外形の大きさなどから設計時に設定し、移動制御部１０４に予め記憶されている回避のための距離Ｍを前進する。前進後、その方向での衝突の可能性がないかを、ステップＳ９０２と同様の方法で判定する。再度、障害物との衝突の可能性がある場合は、さらに一定角βを加えた回転を追従移動装置２０１が行う（図１１の（Ｂ）では時計回りにさらに一定角βだけ回転する）。この結果、追従移動装置２０１は、最初の位置からは２β回転することになる。障害物との衝突の可能性が無くなれば、図１１の（Ｃ）のように、追従移動装置２０１が回避のための距離Ｍだけ２β回転した方向に前進する。もし全ての方向に障害物があり、追従移動装置２０１が３６０度以上回転しても衝突回避できない場合は、追従移動装置２０１は移動動作を停止して警告音などによりユーザに通知する。ここで、具体的な数値例としては、衝突回避限界Ｄｃｏｌを３０ｃｍ、一定角βを３０度、回避のための距離Ｍを６０ｃｍとする場合などがある。この数値例の場合、１２回、その場で追従移動装置２０１が回転をしても衝突が回避できそうにない場合は、エラーとなり追従移動装置２０１の移動動作を停止する。
【００７９】
図１１の（Ｃ）のように、エラー無く衝突回避動作が行え距離Ｍだけ追従移動装置２０１が進行した場合は、そこで再度、ステップＳ９０１において、先行移動体検出部１０１により先行移動体２０２の方向を検出し、再度追従の動作に移り、図１１の（Ｄ）のように先行移動体２０２の方向を向くことになる。先行移動体２０２を見失わないように、衝突回避動作ステップＳ９０３を行うときも、各時刻において（所定の時間毎に）先行移動体検出部１０１により先行移動体２０２の検出だけは続けておく方が望ましい。
【００８０】
第１実施形態の追従移動装置２０１の一連の動作の様子を図１２に示す。
【００８１】
スタート地点１２０１での追従移動装置２０１は、先行移動体２０２と追従距離の初期値Ｌｄ０をとって追従を開始する。このスタート地点１２０１での追従移動装置２０１の中心から左右１１０度の角度の範囲内で距離Ｌｄ０以下の扇形の近傍領域を１２０５で点線で示している。この領域１２０５に障害物１２０３が存在すれば、障害物１２０３が追従移動装置２０１に近接している混雑した領域と考えられる。なお、ここでは、このスタート地点１２０１付近では、領域１２０５に障害物１２０３が無い混雑していない状況としているが、もし、領域１２０５に障害物１２０３のある混雑した状況の場合には、以下の中間位置１２０２と同様に、追従距離Ｌｄで追従を開始する。
【００８２】
中間位置１２０２においては、周囲状況検出部１０２で検出される周囲の障害物１２０３の周囲状況データに基づいて、障害物１２０３で混雑した状況であると追従距離制御部１０３により判断して追従距離制御部１０３で追従距離の初期値Ｌｄ０より短い追従距離Ｌｄとなるように移動制御部１０４を制御することにより、追従距離を周囲の状況に合わせた短い追従距離Ｌｄに変更する。これによって中間位置１２０２の近傍領域１２０６内に障害物１２０３の存在する混雑した状況では、先行移動体２０２に近接して先行移動体２０２の軌跡２０２Ｇの近くを移動することになり、周囲の障害物１２０３との衝突及び衝突回避動作が少なくなる。
【００８３】
次に、近接領域１２０７に障害物１２０３のない混雑していない位置１２０４に追従移動装置２０１が移動した時には、再度、追従距離を追従距離の初期値Ｌｄ０に戻すことにより、先行移動体２０２への最短距離を通るスムーズな経路を通ることができる。
【００８４】
なお、第１実施形態において、周囲状況検出部１０２は、追従移動装置２０１に搭載されたものとして説明したが、それに限定されることなく、例えば追従移動装置２０１の移動する空間の天井などに取り付けられたカメラ（図示せず）を周囲状況検出部１０２の別の例として用いても良い。例えば、天井から下方向を見下ろした広角のカメラにより追従移動装置２０１と先行移動体２０２を含む広範囲の画像を撮影する。予め追従移動装置２０１と先行移動体２０２と障害物５０２の無い状況で床面などの背景画像を撮影しておけば、現在撮影された画像から背景画像を差分することにより、床面とは違う新たに現れた領域を抽出することができる。この抽出された領域は、追従移動装置２０１、先行移動体２０２、障害物１２０３のいずれかである。追従移動装置２０１及び先行移動体２０２は、それぞれの形状や色などの特徴が判っているので、それらの特徴を元に、抽出された領域から、追従移動装置２０１と、先行移動体２０２と、その他障害物５０２とをそれぞれ検出することができる。その場合、先行移動体２０２の位置も同時に計測でき、先行移動体検出部１０１と周囲状況検出部１０２を同一のカメラ映像を用いて処理することが可能となる。この場合は、追従移動装置２０１から見て、他の障害物の背後に隠れている障害物、及び先行移動体２０２も検出できるので、より多くの障害物を検出したり、先行移動体２０２を見失うことが少なくすることが可能となる。
【００８５】
また、なお第１実施形態において、周囲状況検出部１０２は、周囲状況データを検出するとしていたが、周囲の壁や障害物５０２などの位置、形状などの情報が周囲状況検出部１０２に予め与えられる場合もある。その場合は、検出を行わず、予め与えられ得た位置、形状などの情報を周囲状況検出部１０２で用いることも可能である。
【００８６】
前記第１実施形態によれば、追従移動装置２０１の周囲に障害物５０２が近い混雑した状況になった場合は、周囲の障害物５０２より、追従移動装置２０１が先行移動体２０２へより近く接近して追従することになり、周囲の障害物１２０３との衝突及び障害物５０２への回避動作を少なくしてスムーズな追従が可能となる。すなわち、追従距離制御部１０３において先行移動体２０２との距離を制御して追従するという構成により、状況に応じて適した距離を保ってスムーズな追従動作を実現することができる。
【００８７】
（第２実施形態）
本発明の第２実施形態にかかる追従移動装置について説明する。本実施形態では追従する先行移動体２０２として、主に追従移動装置２０１を利用するユーザ２０２Ａを対象とする。本実施形態は、このような場合にユーザ２０２Ａの意図により追従距離を可変にできる追従移動装置２０１に係るものである。
【００８８】
図１１の（Ａ）〜（Ｄ）は、本発明の第２実施形態における追従移動装置２０１を示すものである。図１１の（Ａ）〜（Ｄ）において、第１実施形態の構成と異なるところは、図１３に示すように、新たな追従距離の指示Ｌｄｕｓｒの値を入力、設定するパラメータ設定部１３０１と、パラメータ設定部１３０１により設定されたその新たな追従距離の指示Ｌｄｕｓｒの値に基づいて新たな追従動作をするように追従距離を制御してその追従距離を移動制御部１０４に出力する追従距離制御部１３０２を設けた点である。第１実施形態と同一の構成は同一の符号を記して説明を省略する。なお、この第２実施形態では、基本的には、単純化させるため、周囲の状況について自動的に検出するのではなく、全てユーザが指定するものであり、周囲が混雑してきたとユーザが思ったら、ユーザが指示を出して距離を入力するものである。よって、図１３に図示された周囲状況検出部１０２は後述する変形例のためのものである。
【００８９】
パラメータ設定部１３０１においては、ユーザからの追従距離の指示Ｌｄｕｓｒの値を読み取る。新たな追従距離の指示Ｌｄｕｓｒの値の入力の方法としては、例えばユーザがリモコン２０５などを持ち、そのキー、ダイアルなどで距離の値を指示してパラメータ設定部１３０１に入力することができ、直接距離の値を数値で入力する場合や、距離の増減を入力するなどの方法がある。
【００９０】
新たな追従距離の指示Ｌｄｕｓｒの値の別の入力の方法として、追従移動装置２０１の追従距離制御部１３０２に対して、近寄る、離れるの指示をリモコン２０５や、音声入力装置（図示せず）や、手振りの画像検出センサ（図示せず）などで伝えることにより、追従移動装置２０１を実際に動作させ、その追従距離を変化させ、望む距離になった位置で設定の指示を与えることで設定することもできる。この方法では実際の距離を見て判断できるので、数値で入力するより判りやすい。この場合、近づく、離れるの指示に対して、新たな追従距離の指示Ｌｄｕｓｒの値を一定の値だけ増減させて追従動作をさせることを繰り返すことにより、追従移動装置２０１をリモコン２０５で操作するように制御することが可能である。逆に追従移動装置２０１を停止させておき、ユーザが動くことで追従距離を変えて、望む追従距離になった時に、設定の指示を与える方法もある。
【００９１】
追従距離制御部１３０２においては、パラメータ設定部１３０１から入力された新たな追従距離の指示Ｌｄｕｓｒの値から追従距離Ｌｄを求める。この動作について、図１４を用いて説明する。図１４は追従距離制御部１３０２の動作を示したフローチャートである。
【００９２】
ステップＳ１４０１において、パラメータ設定部１３０１からの新たな追従距離の指示Ｌｄｕｓｒの値を追従距離制御部１３０に入力し、予め設定されている追従距離の最小値Ｌｄｍｉｎと、最大値Ｌｄｍａｘとをパラメータ設定部１３０１から追従距離制御部１３０に読み込む。追従距離の最小値Ｌｄｍｉｎとしては、追従時の先行移動体２０２に接近する限界の距離が設定されている。例えば先行移動体２０２が急に停止しても先行移動体２０２に衝突せずに追従移動装置２０１が停止できる距離を設定するなどが考えられる。追従距離の最大値Ｌｄｍａｘとしては、先行移動体２０２が追従移動装置２０１から離れた場合の追従の限界の距離が設定されている。例えば先行移動体検出部１０１の検出限界距離に一定の安全係数を掛けて検出限界距離よりも小さくした値などが考えられる。一例として、ユーザに追従する分速数ｍの追従移動装置２０１の場合、追従距離の最小値Ｌｄｍｉｎを５０ｃｍ、追従距離の最大値Ｌｄｍａｘを３ｍとして設定するなどが考えられる。あるいは追従距離の最小値Ｌｄｍｉｎ、追従距離の最大値Ｌｄｍａｘとも、先行移動体２０２がユーザ２０２Ａである場合などは、物理的制約や安全が確保される範囲内で、ユーザの好みにより設定することも可能である。
【００９３】
次いで、ステップＳ１４０２において、新たな追従距離の指示Ｌｄｕｓｒの値と追従距離の最小値Ｌｄｍｉｎとを比較するとともに、新たな追従距離の指示Ｌｄｕｓｒの値と追従距離の最大値Ｌｄｍａｘとを比較する。新たな追従距離の指示Ｌｄｕｓｒの値が追従距離の最小値Ｌｄｍｉｎ以下の場合は、ステップＳ１４０３において追従距離Ｌｄとして追従距離の最小値Ｌｄｍｉｎを設定し、新たな追従距離の指示Ｌｄｕｓｒの値が追従距離の最大値Ｌｄｍａｘ以上の場合は、ステップＳ１４０４において追従距離Ｌｄとして追従距離の最大値Ｌｄｍａｘを設定する。新たな追従距離の指示Ｌｄｕｓｒの値が追従距離の最小値Ｌｄｍｉｎと追従距離の最大値Ｌｄｍａｘの間にある場合には、ステップＳ１４０５において追従距離Ｌｄとして新たな追従距離の指示Ｌｄｕｓｒの値を設定する。これらのステップにより、ユーザが、追従距離の最大値と最小値の範囲外の値を無理に指示しても、そのような値は有効な入力とみなされないため、追従移動装置２０１が想定外の挙動をすることを防ぐことができる。
【００９４】
以上のように、第２実施形態の追従移動装置２０１では、パラメータ設定部１３０１によりユーザの追従距離の指示を追従距離制御部１３０２が読み取り、追従距離制御部１３０２において追従距離を制御することにより、ユーザの設定した追従距離でユーザを追従することが可能となり、追従移動装置２０１がユーザの望む追従距離で追従することができる。
【００９５】
また、ステップＳ１４０１で入力された新たな追従距離の指示Ｌｄｕｓｒの値を、本発明の第１実施形態における追従距離の初期値Ｌｄ０として、図８のステップＳ８０３からの処理を行うことにより、周囲に障害物がない場合は、何時でもユーザの望む距離に追従距離を変更することができ、周囲に障害物がある場合は周囲の状況に応じた追従制御を行うことが可能となる。なお、この変形例では、周囲の状況を考慮するため、図１３でも、図１と同様に周囲状況検出部１０２から追従距離制御部１３０２への情報出力が必要となるため、図１３に周囲状況検出部１０２を図示している。
【００９６】
（第３実施形態）
図１５は、本発明の第３実施形態における追従移動装置２０１を示すものである。図１５において、第１実施形態の構成と異なるところは、駆動部１０５において追従移動体の移動距離及び方向などを検出する移動情報検出部１５０１と、先行移動体２０２の速度を算出する先行移動体速度算出部１５０２と、新しい動作をする追従距離制御部１５０３と、を設けた点である。第１実施形態と同一の構成は同一の符号を記して説明を省略する。
【００９７】
移動情報検出部１５０１としては、簡単には、移動制御部１０４からの進行方向及び速度の指令を蓄積、積分することにより、出発時の原点からの移動の方向及び距離などを計算するもので構成することができる。しかし、モータ１０７やタイヤ１０８の回転を正確に積分しても、タイヤ１０８と床のスリップなどにより実際の移動距離及び方向とずれが生じる場合がある。そのようなずれを無くすためには、移動情報検出部１５０１としては、移動情報検出部１５０１自身がそれぞれのタイヤ１０８の回転角を検出するジャイロや、床面と接して負荷無しに回転するセンサにより実際の移動距離を計測するセンサなどを独自に搭載し、かつ、ジャイロやセンサからの出力情報を基により正確な移動距離及び方向を演算して求めるものでもよい。
【００９８】
先行移動体速度検出部１５０２において、先行移動体検出部１０１からの先行移動体２０２の距離及び方向が入力される。この距離及び方向は、追従移動装置２０１に対する相対的な位置及び方向であるので、移動情報検出部１５０１からの追従移動装置２０１自身が移動した方向及び距離などの移動情報を差し引くことにより、先行移動体２０２が床、壁などの周りの静止した空間に対して動いた絶対的な移動方向及び距離などを計算することができる。それらを複数時刻分、メモリ（図示せず）に記憶しておき、単位時間当たりの差分を先行移動体速度検出部１５０２で計算することにより、先行移動体２０２の速度を算出する。
【００９９】
追従距離制御部１５０３において、先行移動体速度検出部１５０２から入力される先行移動体２０２の速度に応じて追従距離を設定する。図１６を用いて動作を説明する。図１６は先行移動体２０２の速度と追従距離の変換テーブルの例であり、テーブルに従って、先行移動体２０２の速度に応じて異なる追従距離Ｌｄを設定する。先行移動体２０２の速度が速い場合は、追従する追従移動装置２０１の速度も速くなり、追従移動装置２０１の停止距離も長くなるため、追従距離も長く設定する。また、追従距離を長く設定すると、追従時に先行移動体２０２が曲がった場合など、最短経路を通って追従する割合が多くなるため、結果的に、速い速度で追従することになり有利となる。
【０１００】
なお、さらに、先行移動体速度検出部１５０２で速度の変化を算出することにより、先行移動体２０２の速度の変化に応じた追従距離の制御を行うこともできる。例えば、速度の変化が多い場合は、追従距離を一定にすると、追従移動装置２０１の速度も変化が激しくなるので、そのような先行移動体２０２の速度の変化が多い時は、一定の範囲の中で追従距離を速度に合わせて細かく変化させることにより、追従移動装置２０１の速度が一定のままで追従することが可能である。
【０１０１】
また、図１６の変換テーブルは１つに固定されるものではなく、複数の値の異なるテーブルを持ち、周囲の状況、ユーザの指示などにより切り替えて利用してもよい。また、ユーザの指示などを基に、テーブルの値を学習することも可能である。なお、この変形例では、周囲の状況を考慮するため、図１５でも、図１と同様に周囲状況検出部１０２から追従距離制御部１５０３への情報出力が必要となるため、図１５に周囲状況検出部１０２を図示している。
【０１０２】
以上のように、第３実施形態の追従移動装置２０１では、先行移動体２０２の速度を算出する先行移動体速度算出部１５０２と、先行移動体速度算出部１５０２で算出された先行移動体２０２の速度を基に追従距離を制御する追従距離制御部１５０３とを設けることにより、追従する先行移動体２０２の速度に応じて追従距離を制御することが可能となり、先行移動体２０２の速度に応じた追従距離の柔軟な制御が可能となる。例えば速度が速い場合は、停止距離、最短経路などを考慮して追従距離を大きくすることができる。
【０１０３】
（第４実施形態）
図１７は、本発明の第４実施形態における追従移動装置２０１を示すものである。図１７において、第１実施形態の構成と異なるところは、追従移動装置２０１が移動する空間の場所における情報を検出するエリア情報検出部１７０１を設けた点である。第１実施形態と同一の構成は同一の符号を記して説明を省略する。なお、周囲の状況を考慮するため、図１７でも、図１と同様に周囲状況検出部１０２から追従距離制御部１３０２へ情報が出力されている。
【０１０４】
エリア情報検出部１７０１において、追従移動装置２０１が移動する空間の特定の場所におけるエリア情報を検出し、追従距離Ｌｄを制御することで、より柔軟な制御が可能となる。
【０１０５】
実際の制御の例を図１８を用いて説明する。ユーザ２０２Ａがエレベータ１８０１の前で停止した場合、通常ならば追従移動装置２０１は、予め定められた追従距離で離れた位置１８０２の位置で停止することになる。しかし、周囲に他の人間１８０３が存在する場合、ユーザ２０２Ａがエレベータ１８０１に乗り込む時に、追従移動装置２０１が前記位置１８０２に位置していたのでは、他の人間１８０３が障害物となり、追従移動装置２０１がユーザ２０２Ａと一緒にエレベータ１８０１にスムーズに乗り込むことが難しくなる。
【０１０６】
この場合、エレベータ１８０１の近くに、その付近がエレベータ１８０１の前であるというエリア情報を流す発信機１８０４を設置しておき、エリア情報検出部１７０１が、このエリア情報を検出した場合、予め追従距離制御部１０３にエレベータ前の短い追従距離を設定しておき、先行移動体２０２の近くの短い追従距離だけ離れた位置１８０５まで追従移動装置２０１が近寄ることにより、追従移動装置２０１が先行移動体２０２と一緒にスムーズにエレベータ１８０１に乗り込むことが可能となる。
【０１０７】
エリア情報の発信機１８０４は、自ら電波を発信するものであっても良いし、無線タグなどの問い合わせの電波により反応を返すものであっても良い。場所も壁、床、天井など、そのエリア付近に近づいたエリア情報検出部に対して情報を発信できる場所にあればよい。
【０１０８】
あるいは、特別な発信機１８０４が無くても、エリア情報検出部がカメラなどを用いて、エレベータ付近の状況を画像認識して、エレベータ特有のマーカ、表示板、扉の形状を認識することにより、付近がエレベータ前であることを認識しても良い。又は、追従移動装置２０１自身が地図情報を予め持っておき、現在の自身の位置を元に、そこに記された情報から読み取っても良い。
【０１０９】
エレベータ以外にも、各種の入り口、ドアなどにおいて、同様の動作をすることが可能である。例えば、先行移動体２０２が店に立ち寄った場合、荷物預け入れカウンターに立ち寄った場合等に、盗難防止などのために、追従距離を短くするなどの制御が考えられる。
【０１１０】
また逆に、セキュリティゲートを通過する場合や、トイレなどに入る場合など、常に追従されては困る場合がある。その場合、エリア情報により、トイレであれば、追従距離を離す、あるいは移動制御部１０４で、エリア情報に指定されている位置で停止して、ユーザを待つなどの動作を行わせることも可能である。
【０１１１】
なお、以上の第１〜第４実施形態では、先行移動体検出部１０１として、先行移動体２０２の追従移動装置２０１からの相対的な方向と距離を検出するものとしたが、これに限定されることなく、先行移動体２０２の絶対的な位置を検出し一定時間毎に蓄積することで、先行移動体２０２の軌跡２０２Ｇを検出しても良い。ただし、軌跡２０２Ｇを検出する場合は移動制御部１０４では、先行移動体２０２の軌跡２０２Ｇの後をたどる制御を行うことが普通であり、第１実施形態における、障害物の少ない領域で最短経路を通るという効果は生じない。ただし、他の効果は同様に得られる。また、第２実施形態及び第３実施形態における効果は、先行移動体２０２の方向及び距離を検出する場合も、軌跡２０２Ｇを検出する場合も、同じ効果が得られる。
【０１１２】
なお、前記様々な実施形態のうちの任意の実施形態を適宜組み合わせることにより、それぞれの有する効果を奏するようにすることができる。
【産業上の利用可能性】
【０１１３】
本発明の追従移動装置は、障害物などの状況に応じた追従距離を保ってスムーズな追従が可能なので、多様で変化する環境下で人や先行車に追従する移動装置や、特に人込みで利用者を追従する荷物運搬などの移動装置等として有用である。
【図面の簡単な説明】
【０１１４】
【図１】本発明の第１実施形態における追従移動装置の構成を示すブロック図である。
【図２】本発明の第１実施形態における追従移動装置の外観と先行移動体の例であるユーザを示す斜視図である。
【図３】（Ａ）〜（Ｄ）はそれぞれ本発明の第１実施形態における先行移動体検出のための左右のカメラの画像を示す図及び左右のカメラの画像から頭部と肩の部分を抽出した図である。
【図４】本発明の第１実施形態における追従移動装置と先行移動体との関係を示す図である。
【図５】本発明の第１実施形態における追従移動装置の周囲状況検出部の動作を示す図である。
【図６】本発明の第１実施形態における追従移動装置の周囲状況データを示す図である。
【図７】本発明の第１実施形態における追従移動装置の周囲状況データを示すグラフである。
【図８】本発明の第１実施形態における追従移動装置の追従距離制御部の動作を示すフローチャートである。
【図９】本発明の第１実施形態における追従移動装置の移動制御部の動作を示すフローチャートである。
【図１０】本発明の第１実施形態における追従移動装置の移動制御部の動作を示すフローチャートである。
【図１１】（Ａ）〜（Ｄ）はそれぞれ本発明の第１実施形態における追従移動装置の衝突物回避の動作を示す図である。
【図１２】本発明の第１実施形態における追従移動装置の動作を示す図である。
【図１３】本発明の第２実施形態における追従移動装置の構成を示すブロック図である。
【図１４】本発明の第２実施形態における追従移動装置の追従距離制御部の動作を示すフローチャートである。
【図１５】本発明の第３実施形態における追従移動装置の構成を示すブロック図である。
【図１６】本発明の第３実施形態における先行移動体の速度と追従距離の関係を示す図である。
【図１７】本発明の第４実施形態における追従移動装置の構成を示すブロック図である。
【図１８】本発明の第４実施形態における追従移動装置の動作を示す図である。
【図１９】従来の追従移動装置の概略を示す図である。
【図２０】従来の追従移動装置の動作を示す図である。
【図２１】従来の追従移動装置の動作を示す図である。
【図２２】従来の追従移動装置の動作を示す図である。
【符号の説明】
【０１１５】
１０１  先行移動体検出部
１０２  周囲状況検出部
１０３  追従距離制御部
１０４  移動制御部
１０５  駆動部
１０６  回転制御部
１０７  モータ
１０８  タイヤ
１０９  現在速度検出部
１１０  パラメータ設定部
２０１  追従移動装置
２０２  先行移動体
２０２Ａ  ユーザ
２０２Ｇ  軌跡
２０３  光源
２０４  カメラ
２０５  リモコン
２０６  インタフェース
３０１  頭部
３０２  肩の部分
３０３  円
３０４  円弧
３０５  円の中心位置
５０１  赤外線距離センサ
５０２  障害物
５０３  レーザ光
１２０３  障害物
１３０１  パラメータ設定部
１３０２  追従距離制御部
１５０１  移動情報検出部
１５０２  先行移動体速度算出部
１５０３  追従距離制御部
１７０１  エリア情報検出部
１８０１  エレベータ
１８０２  位置
１８０３  他の人間
１８０４  発信機
１８０５  位置
【図１】
2006134221.tif 000003
【図２】
2006134221.tif 000004
【図３】
2006134221.tif 000005
【図４】
2006134221.tif 000006
【図５】
2006134221.tif 000007
【図６】
2006134221.tif 000008
【図７】
2006134221.tif 000009
【図８】
2006134221.tif 000010
【図９】
2006134221.tif 000011
【図１０】
2006134221.tif 000012
【図１１】
2006134221.tif 000013
【図１２】
2006134221.tif 000014
【図１３】
2006134221.tif 000015
【図１４】
2006134221.tif 000016
【図１５】
2006134221.tif 000017
【図１６】
2006134221.tif 000018
【図１７】
2006134221.tif 000019
【図１８】
2006134221.tif 000020
【図１９】
2006134221.tif 000021
【図２０】
2006134221.tif 000022
【図２１】
2006134221.tif 000023
【図２２】
2006134221.tif 000024