(57)【要約】      （修正有）【課題】対象者が急激な方向転換をした場合にも、大きな随行遅れを生じることなく、対象者に随行移動できる移動体を提供すること。【解決手段】ユーザＨの速度がオン速度閾値以下であり、ユーザＨの向きＤｕと移動体１の向きＤｒとの偏差がオン角度閾値以上である場合、又はユーザＨの速度がオン速度閾値以下であり、ユーザＨのｔ秒後の予測向きＤｕｅと移動体１の向きＤｒとの偏差がオン角度閾値以上である場合は、移動体１の進行方向を後退に設定する。即ちユーザＨが急激な方向転換をした場合は、移動体１は後退しながらユーザＨの右前方を随行する。これにより、移動体１が前進による随行を維持するため、移動体１の向きＤｒを大きく変化させながら走行する必要がない。従って、ユーザＨが急激な方向転換をした場合でも、移動体１は大きな随行遅れを生じることなく、ユーザＨと随行移動できる。【選択図】図６
2020166708.tif 000002
【特許請求の範囲】
【請求項１】
対象者に随行して移動する移動体において、
当該移動体を移動させる移動手段と、前記対象者を検出する検出手段と、その検出手段による検出結果に基づいて前記対象者に対する当該移動体の移動目標を算出する移動目標手段と、その移動目標手段により算出された移動目標へ当該移動体が移動するように前記移動手段を制御する移動制御手段とを備え、更に、
前記検出手段による検出結果に基づいて前記対象者に関する情報を算出する対象者情報手段と、
前記検出手段による検出結果に基づいて当該移動体に関する情報を算出する移動体情報手段と、を備え、
前記移動制御手段は、前記対象者情報手段により算出された前記対象者の移動速度が所定の速度閾値以下であり、且つ前記対象者情報手段により算出された前記対象者の角度と前記移動体情報手段により算出された当該移動体の角度との偏差が第１閾値以上である場合に、前記対象者に対する当該移動体の進行方向を反転させるものであることを特徴とする移動体。
【請求項２】
対象者に随行して移動する移動体において、
当該移動体を移動させる移動手段と、前記対象者を検出する検出手段と、その検出手段による検出結果に基づいて前記対象者に対する当該移動体の移動目標を算出する移動目標手段と、その移動目標手段により算出された移動目標へ当該移動体が移動するように前記移動手段を制御する移動制御手段とを備え、更に、
前記検出手段による検出結果に基づいて前記対象者に関する情報を算出する対象者情報手段と、
前記検出手段による検出結果に基づいて当該移動体に関する情報を算出する移動体情報手段と、を備え、
前記移動制御手段は、前記対象者情報手段により算出された前記対象者の移動速度が所定の速度閾値以下であり、且つ前記対象者情報手段により算出された前記対象者のｔ秒後の予測角度と前記移動体情報手段により算出された当該移動体の角度との偏差が第２閾値以上である場合に、前記対象者に対する当該移動体の進行方向を反転させるものであることを特徴とする移動体。
【請求項３】
前記移動制御手段は、前記対象者情報手段により算出された前記対象者のｔ秒後の予測角度と前記移動体情報手段により算出された当該移動体の角度との偏差が第３閾値以上であって、且つ前記対象者情報手段により算出された前記対象者のｔ秒後の予測位置と前記移動体情報手段により算出された当該移動体の位置との偏差が所定の距離閾値以下である場合に、前記対象者に対する当該移動体の進行方向を初期状態にするものであることを特徴とする請求項１又は２に記載の移動体。
【請求項４】
前記移動目標手段は、前記対象者を原点とした座標系であって前記対象者の向きをＹ軸方向とした場合に、当該移動体が第１又は第４象限に位置する場合には前記対象者の右前方に前記移動目標を設定し、当該移動体が第２又は第３象限に位置する場合には前記対象者の左前方に前記移動目標を設定し、その設定された移動目標を算出するものであることを特徴とする請求項１から３のいずれかに記載の移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動体に関し、特に、対象者が急激な方向転換をした場合にも、大きな随行遅れを生じることなく、対象者に随行移動できる移動体に関するものである。
【背景技術】
【０００２】
特許文献１には、先導者１４の左側やや後方において追従して移動する車椅子（移動体）１０が開示されている。先導者１４の向き、移動方向、移動速度等の情報は、先導者１４が所持する携帯端末１６から車椅子１０の制御装置へ送信され、車椅子１０は、それらの情報に基づいて移動制御される。
【０００３】
例えば、先導者１４が前方に移動すると、制御装置は、先導者１４と車椅子１０の間の相対位置を保つように、先導者１４の左側のやや後方まで車椅子１０を移動させる。その後、先導者１４が右前方に移動すると、制御装置は、先導者１４の向きを基準とした相対座標系における先導者１４との間の相対位置を保つように、先導者１４の左側のやや後方まで車椅子１０を移動させるとともに、先導者１４の向きに合わせて車椅子１０の向きを回転させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１８−１５１９３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、車椅子１０の制御装置は、先導者１４の現在位置からの総移動距離が所定値に到達するまで待ってから、それまでの期間に算出した先導者１４の移動方向及び向きに基づいて、先導者１４の移動方向等を推定する。先導者１４の移動方向等の傾向が安定していれば、先導者１４の移動方向等を確定し、安定していなければ、安定するまで更に待ってから先導者１４の移動方向等を確定した後、車椅子１０を移動させる。よって、大きな追従遅れが生じてしまう。特に、先導者１４がクィックターンやＵターン等の急激な方向転換をした場合には、追従遅れは一層大きくなってしまうという問題点があった。
【０００６】
本発明は、上述した問題点を解決するためになされたものであり、対象者が急激な方向転換をした場合にも、大きな随行遅れを生じることなく、対象者に随行移動できる移動体を提供することを目的としている。
【課題を解決するための手段】
【０００７】
この目的を達成するために本発明の移動体は、対象者に随行して移動するものであり、当該移動体を移動させる移動手段と、前記対象者を検出する検出手段と、その検出手段による検出結果に基づいて前記対象者に対する当該移動体の移動目標を算出する移動目標手段と、その移動目標手段により算出された移動目標へ当該移動体が移動するように前記移動手段を制御する移動制御手段とを備え、更に、前記検出手段による検出結果に基づいて前記対象者に関する情報を算出する対象者情報手段と、前記検出手段による検出結果に基づいて当該移動体に関する情報を算出する移動体情報手段と、を備え、前記移動制御手段は、前記対象者情報手段により算出された前記対象者の移動速度が所定の速度閾値以下であり、且つ前記対象者情報手段により算出された前記対象者の角度と前記移動体情報手段により算出された当該移動体の角度との偏差が第１閾値以上である場合に、前記対象者に対する当該移動体の進行方向を反転させるものである。
【０００８】
また前記移動制御手段は、前記対象者情報手段により算出された前記対象者の移動速度が所定の速度閾値以下であり、且つ前記対象者情報手段により算出された前記対象者のｔ秒後の予測角度と前記移動体情報手段により算出された当該移動体の角度との偏差が第２閾値以上である場合に、前記対象者に対する当該移動体の進行方向を反転させるものである。
【発明の効果】
【０００９】
本発明の移動体によれば、検出手段による随行対象者の検出結果に基づいて、移動目標手段により対象者に対する当該移動体の移動目標を算出する。この移動目標へ当該移動体が移動するように、移動制御手段によって移動手段が制御され、当該移動体が移動する。これにより当該移動体は対象者に随行して移動する。
【００１０】
ここで、移動制御手段は、対象者の移動速度が所定の速度閾値以下であり、且つ対象者の角度と当該移動体の角度との偏差が第１閾値以上である場合に、又は、対象者の移動速度が所定の速度閾値以下であり、且つ対象者のｔ秒後の予測角度と当該移動体の角度との偏差が第２閾値以上である場合に、対象者に対する当該移動体の進行方向を反転させる。即ち、対象者がクイックターンやＵターン等により急激な方向転換をした場合には当該移動体は進行方向を反転させて対象者の随行を行う。よって、かかる場合にも、大きな随行遅れを生じることなく、対象者に随行移動できるという効果がある。
【図面の簡単な説明】
【００１１】
【図１】（ａ）は、移動体の側面図であり、（ｂ）は、その上面図である。
【図２】移動体の電気的構成を示すブロック図である。
【図３】メイン処理のフローチャートである。
【図４】進行方向反転フラグ設定処理のフローチャートである。
【図５】（ａ）は、移動体が前進してユーザに随行している場合を表す図であり、（ｂ）は、ユーザが急激な方向転換をした直後を表す図であり、（ｃ）は、ユーザの急激な方向転換の前後でのユーザ及び移動体の一連の動作を表す図である。
【図６】（ａ）は、移動体が後退しながらユーザに随行する場合を表す図であり、（ｂ）は、移動体の進行方向を後退から前進に変更しながらユーザに随行する場合を表す図である。
【図７】第２実施形態における、メイン処理のフローチャートである。
【図８】第２実施形態における、ユーザの急激な方向転換の前後でのユーザ及び移動体の一連の動作を表す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。まず、図１を参照して、本実施形態における移動体１の構成を説明する。図１（ａ）は、移動体１の側面図であり、図１（ｂ）は、その上面図である。移動体１は、ユーザＨ（対象者）の右前方にて、ユーザＨに対し適切な位置に移動して、ユーザＨに随行できる装置として機能する。
【００１３】
図１（ａ）に示す通り、移動体１は、主に略円柱状の外装２と、車輪３と、取付部材４と、測距センサ５と、ＬＣＤ６とを有する。車輪３は、外装２の下部における左右一対に対向して設けられる車輪である。各車輪３にはモータ（図示せず）が接続され、後述する駆動部１５（図２参照）からの制御信号に基づいてモータを駆動させることで、移動体１が移動する。左右のモータを、同じ出力で正転および逆転させることで移動体１の前方移動および後方移動を行い、また、モータを差動させることで、移動体１の移動方向の変更を行う。
【００１４】
取付部材４は、外装２の上面における端部に立設される棒状の部材である。測距センサ５はその取付部材４に配設され、レーザ光を全方位（３６０度）に対して照射することで、測距センサ５と物体との距離を検出（測距）する装置である。測距センサ５は、検出されたユーザＨとの距離を、その角度に対応付けて検出する。また、測距センサ５は上下方向に移動可能に構成され、予め測距センサ５からのレーザ光がユーザＨの肩周辺に照射されるよう、測距センサ５の上下方向の位置が適宜設定される。以下、測距センサ５から検出される距離および角度のことを「測距データ」と称す。ＬＣＤ６は、移動体１の情報等を表示するディスプレイであり、取付部材４の上部に配設される。
【００１５】
図１（ｂ）に示す通り、移動体１は測距センサ５から取得される測距データＭＰを、ユーザＨの位置Ｐｕを原点（０，０）、ユーザＨの向きＤｕの方向をｙｕ軸とし、そのｙｕ軸に直交する方向をｘｕ軸とした「ユーザ座標系」と、移動体１の位置Ｐｒを原点（０，０）、移動体１の向きＤｒの方向をｙｒ軸とし、そのｙｒ軸に直交する方向をｘｒ軸とした「移動体座標系」とに基づいて処理することで、移動体１の移動制御が行われる。
【００１６】
本実施形態では、移動体１において取付部材４やＬＣＤ６が配設される側を前側とし、移動体１を前方向に進行させることを「前進」とする。一方で、取付部材４やＬＣＤ６が配設される側と対向する側を後側とし、移動体１をかかる方向に進行させることを「後退」とする。
【００１７】
図１（ｂ）のように、ユーザＨが略直進している場合においては、移動体１はユーザＨの右前方を前進する。これによって、ＬＣＤ６とユーザＨとが対向するので、ユーザＨは随行する移動体１のＬＣＤ６の表示を確認しながら移動できる。
【００１８】
ここで、ユーザＨがクイックターン、Ｕターン等による急激な方向転換を行う。この場合に、移動体１の位置ＰｒはユーザＨの位置Ｐｕよりも後方に位置することとなる。これによって移動体１は、前進しながらユーザＨの右前方へ随行するため、移動体１は、向きＰｒを大きく変化させながら（例えば回転しながら）ユーザＨを追いかけることとなるので、移動体１はユーザＨに対して随行が遅れてしまう。
【００１９】
そこで本実施形態では、ユーザＨが急激な方向転換をした場合等、ユーザＨの向きＰｕと移動体１の向きＰｒとの偏差が大きくなった場合に、移動体１の進行方向を前進から後退に切り替える。これにより、移動体１は向きＰｒを大きく変化させる必要がないので、ユーザＨに対する大きな随行遅れを生じさせることなく、ユーザＨに随行できる。
【００２０】
次に、図２を参照して、移動体１の電気的構成について説明する。図２は、移動体１の電気的構成を示すブロック図である。移動体１は、ＣＰＵ１０と、フラッシュＲＯＭ１１と、ＲＡＭ１２とを有し、これらはバスライン１３を介して入出力ポート１４にそれぞれ接続されている。入出力ポート１４には、更に、測距センサ５と、ＬＣＤ６と、駆動部１５とが接続されている。
【００２１】
ＣＰＵ１０は、バスライン１３により接続された各部を制御する演算装置である。フラッシュＲＯＭ１１は、ＣＰＵ１０により実行されるプログラムや固定値データ等を格納した書き換え可能な不揮発性の記憶装置であり、制御プログラム１１ａが記憶される。ＣＰＵ１０によって制御プログラム１１ａが実行されると、図３のメイン処理が実行される。
【００２２】
ＲＡＭ１２は、ＣＰＵ１０が制御プログラム１１ａの実行時に各種のワークデータやフラグ等を書き換え可能に記憶するためのメモリであり、測距センサ５から取得された測距データＭＰが記憶される測距データメモリ１２ａと、ユーザＨの位置Ｐｕが記憶されるユーザ位置メモリ１２ｂと、ユーザＨの向きＤｕが記憶されるユーザ向きメモリ１２ｃと、ユーザＨの速度Ｖｕが記憶されるユーザ速度メモリ１２ｄと、ｔ秒後（例えば５秒後）のユーザＨの位置と推定される予測位置Ｐｕｅが記憶されるユーザ予測位置メモリ１２ｅと、ｔ秒後のユーザＨの向きと推定される予測向きＤｕｅが記憶されるユーザ予測向きメモリ１２ｆと、移動体１の位置Ｐｒが記憶される移動体位置メモリ１２ｇと、移動体１の向きＤｒが記憶される移動体向きメモリ１２ｈと、進行方向反転フラグ１２ｉとがそれぞれ設けられる。
【００２３】
進行方向反転フラグ１２ｉには、移動体１の進行方向が後退であるか否かを保持するフラグである、進行方向反転フラグが記憶される。移動体１を後退させる場合は、進行方向反転フラグ１２ｉにオンが設定され、移動体１を前進させる場合は、進行方向反転フラグ１２ｉにオフが設定される。
【００２４】
駆動部１５は、移動体１を移動動作させるための装置であり、車輪３（図１参照）および車輪３の駆動源となるモータ（図示せず）等から構成される。ＣＰＵ１０から制御信号が駆動部１５へ入力されると、入力された制御信号に基づいてモータが回転し、該モータの回転が動力となって車輪３が駆動し、移動体１を動作させる。
【００２５】
次に、図３を参照して、移動体１のＣＰＵ１０で実行されるメイン処理を説明する。図３は、移動体１のメイン処理のフローチャートである。メイン処理は移動体１の電源投入直後に実行される。なお、メイン処理の実行開始直後であって後述のＳ１の処理の前に、進行方向反転フラグ１２ｉへ初期値としてオフを設定する。これによって、メイン処理の実行開始直後は、移動体１はユーザＨの右前方側を前進する。
【００２６】
メイン処理は、まず測距センサ５から取得した測距データＭＰを測距データメモリ１２ａへ保存する（Ｓ１）。Ｓ１の処理の後、測距データメモリ１２ａの測距データＭＰに基づいて、ユーザＨの位置Ｐｕ、向きＤｕ及び速度Ｖｕを算出し、それぞれユーザ位置メモリ１２ｂ、ユーザ向きメモリ１２ｃ及びユーザ速度メモリ１２ｄに保存する（Ｓ２）。測距データＭＰは、移動体１を基準とした値であるので、ユーザＨの位置Ｐｕ、向きＤｕ及び速度Ｖｕは、移動体座標系に基づいて算出される。
【００２７】
Ｓ２の処理の後、ユーザ位置メモリ１２ｂ及びユーザ向きメモリ１２ｃに記憶される、移動体座標系によるユーザＨの位置Ｐｕ及び向きＤｕを座標変換することで、ユーザ座標系における移動体１の位置Ｐｒ及び移動体１の向きＤｒを算出し、それぞれ移動体位置メモリ１２ｇ及び移動体向きメモリ１２ｈに保存する（Ｓ３）。
【００２８】
Ｓ３の処理の後、ユーザＨが現状の速度Ｖｕ及び向きＤｕを維持した場合の、ｔ秒後（例えば５秒後）のユーザＨの位置Ｐｕ及び向きＤｕを推定し、ユーザ予測位置メモリ１２ｅ及びユーザ予測向きメモリ１２ｆに保存する（Ｓ４）。
【００２９】
Ｓ４の処理の後、図４で後述する、進行方向反転フラグ設定処理（Ｓ５）を実行し、進行方向反転フラグ１２ｉを設定する。Ｓ５の進行方向反転フラグ設定処理の後、進行方向反転フラグ１２ｉの状態を確認する（Ｓ６）。Ｓ６の処理において、進行方向反転フラグ１２ｉにオンが設定されている場合は（Ｓ６：オン）、移動体１の進行方向として後退を設定し（Ｓ７）、進行方向反転フラグ１２ｉにオフが設定されている場合は（Ｓ６：オフ）、移動体１の進行方向として前進を設定する（Ｓ８）。
【００３０】
Ｓ７，Ｓ８の処理の後、設定された移動体１の進行方向および移動目標Ｔ（図１（ｂ））に基づいて駆動部１５を動作させ（Ｓ９）、移動体１を走行させる。Ｓ９の処理の後は、Ｓ１の処理を繰り返す。
【００３１】
ここで図４〜図６を参照して、進行方向反転フラグ設定処理を説明する。図４は、進行方向反転フラグ設定処理のフローチャートである。進行方向反転フラグ設定処理はまず、ユーザ速度メモリ１２ｄの速度Ｖｕが、オン速度閾値（速度閾値）以下であるかを確認する（Ｓ２０）。オン速度閾値としては、０．１５ｍ／ｓが例示される。
【００３２】
Ｓ２０の処理において、ユーザ速度メモリ１２ｄの速度Ｖｕがオン速度閾値以下である場合は（Ｓ２０：Ｙｅｓ）、更にユーザ向きメモリ１２ｃの向きＤｕと、移動体向きメモリ１２ｈの向きＤｒとの偏差がオン角度閾値（第１閾値）以上であるかを確認する（Ｓ２１）。オン角度閾値としては、１２０°が例示される。
【００３３】
Ｓ２１の処理において、ユーザ向きメモリ１２ｃの向きＤｕと、移動体向きメモリ１２ｈの向きＤｒとの偏差がオン角度閾値以上である場合は（Ｓ２１：Ｙｅｓ）、進行方向反転フラグ１２ｉを切り替える（Ｓ２２）。即ち進行方向反転フラグ１２ｉがオンの場合にＳ２２の処理が実行されれば、進行方向反転フラグ１２ｉをオフに設定し、進行方向反転フラグ１２ｉがオフの場合にＳ２２の処理が実行されれば、進行方向反転フラグ１２ｉをオンに設定する。
【００３４】
Ｓ２１の処理において、ユーザ向きメモリ１２ｃの向きＤｕと、移動体向きメモリ１２ｈの向きＤｒとの偏差がオン角度閾値より小さい場合は（Ｓ２１：Ｎｏ）、ユーザ予測向きメモリ１２ｆの予測向きＤｕｅと、移動体向きメモリ１２ｈの向きＤｒとの偏差がオン角度閾値（第２閾値）以上かを確認する（Ｓ２３）。
【００３５】
Ｓ２３の処理において、予測向きＤｕｅと、向きＤｒとの偏差がオン角度閾値以上の場合は（Ｓ２３：Ｙｅｓ）、上記したＳ２２の処理を行い、ユーザ予測向きメモリ１２ｆのユーザＨの向きと、移動体向きメモリ１２ｈの向きＤｒとの偏差がオン角度閾値より小さい場合は（Ｓ２３：Ｎｏ）、Ｓ２２の処理をスキップする。また、Ｓ２０の処理において、ユーザ速度メモリ１２ｄの速度Ｖｕがオン速度閾値より大きい場合は（Ｓ２０：Ｎｏ）、Ｓ２１〜Ｓ２３の処理をスキップする。
【００３６】
かかるＳ２０〜Ｓ２３の処理による、進行方向反転フラグ１２ｉの切り替え処理について、ユーザＨが急激な方向転換をした場合を例に、図５を用いて説明する。
【００３７】
図５（ａ）は、移動体１が前進してユーザＨに随行している場合を表す図であり、図５（ｂ）は、ユーザＨが急激な方向転換をした直後を表す図であり、図５（ｃ）は、ユーザＨの急激な方向転換の前後でのユーザＨ及び移動体１の一連の動作を表す図である。
【００３８】
図５（ａ）においては、移動体１は、ユーザＨの右前方にて前進しながら随行している。その後、図５（ｂ）に示すように、ユーザＨは時計回りに急激な方向転換を行い、ユーザＨの向きＤｒを急激に１８０°転換する。かかる急激な方向転換によって、ユーザＨの向きＤｕが急に前後反転するので、ユーザＨの速度Ｖｕは瞬間的に急減速する。このとき、図４のＳ２０の処理において、ユーザの速度Ｖｕがオフ速度閾値以下であると判断される（Ｓ２０：Ｙｅｓ）。
【００３９】
加えてかかる場合は、ユーザＨの向きＤｕと移動体１の向きＤｒとの偏差も大きくなるので、図４のＳ２１の処理において、ユーザＨの向きＤｕと移動体１の向きＤｒとの偏差がオン角度閾値以上であると判断される（Ｓ２１：Ｙｅｓ）。従って、Ｓ２０及びＳ２１の判断処理によって、ユーザＨが急激な方向転換をしたかが判断される。
【００４０】
そして、ユーザＨが急激な方向転換をしたと判断された場合は、進行方向反転フラグ１２ｉを切り替える（図４のＳ２２）。図５（ａ）の状態では、進行方向反転フラグ１２ｉにオフが設定されていたので、図４のＳ２２の処理によって進行方向反転フラグ１２ｉにオンが設定される。
【００４１】
これによって、図５（ｃ）に示すように、ユーザＨが急激な方向転換をした場合に、移動体１の進行方向がそのまま後退に切り替わる（即ち進行方向が反転する）ので、移動体１は前進しながらユーザＨの右前方側を随行するために、移動体１の向きＤｒを大きく変化させながら走行する必要がない。従って、ユーザＨが急激な方向転換をした場合でも、移動体１は大きな随行遅れを生じることなく、ユーザＨと随行移動することができる。
【００４２】
また、図４のＳ２３の処理において、予測向きＤｕｅと、移動体１の向きＤｒとの偏差がオン角度閾値以上である場合も、進行方向反転フラグ１２ｉを切り替える（Ｓ２２）。予測向きＤｕｅは、ｔ秒後におけるユーザＨの向きＤｕであるので、現在のユーザＨの向きＤｕと移動体１の向きＤｒとの偏差がオフ角度閾値より小さくても（Ｓ２１：Ｎｏ）、推定されるｔ秒後の予測向きＤｕｅと移動体１の向きＤｒとの偏差がオフ角度閾値以上である場合は、やがてユーザＨは急激な方向転換すると推定できる。この場合に（Ｓ２３：Ｙｅｓ）、進行方向反転フラグ１２ｉを切り替えることで、移動体１を後退させるタイミングを早めることができるので、移動体１とユーザＨとの随行遅れを、より抑制できる。
【００４３】
ところで、図４のＳ２２の処理では、進行方向反転フラグ１２ｉを切り替えるので、進行方向反転フラグ１２ｉがオンの場合でＳ２２の処理が実行されると、進行方向反転フラグ１２ｉがオフに再設定される。これは、ユーザＨが急激な方向転換を繰り返した場合に、これに合わせて移動体１の進行方向を切り替えるためである。
【００４４】
具体的には、ユーザＨが急激な方向転換することで、進行方向反転フラグ１２ｉがオンになり、移動体１は後退する。この状態で再度ユーザＨが急激な方向転換すると、ユーザＨの向きＤｕは最初に方向転換した状態に戻る。この状態で移動体１の進行方向を後退のまま維持してしまうと、移動体１を後退させてユーザＨに随行させるために、移動体１は回転しなければならず、これによって、随行遅れが生じてしまう。
【００４５】
そこで、Ｓ２２の処理で進行方向反転フラグ１２ｉを切り替えることで、ユーザＨが急激な方向転換を繰り返しても、それに応じて移動体１の進行方向を切り換えることができるので、移動体１は大きな随行遅れを生じることなく、ユーザＨと随行移動することができる。
【００４６】
図４に戻る。Ｓ２０，Ｓ２２，Ｓ２３の処理の後、進行方向反転フラグ１２ｉがオンかどうかを確認する（Ｓ２４）。Ｓ２４の処理において、進行方向反転フラグ１２ｉがオンである場合は（Ｓ２４：Ｙｅｓ）、ユーザ予測位置メモリ１２ｅの予測向きＤｕｅと、移動体向きメモリ１２ｈの向きＤｒとの偏差がオフ角度閾値（第３閾値）の範囲内かを確認する（Ｓ２５）。オフ角度閾値には、上記したオン角度閾値よりも小さな角度の範囲が予め設定され、「６０°以上９０°以下」が例示される。
【００４７】
Ｓ２５の処理において、予測向きＤｕｅと、移動体１の向きＤｒとの偏差がオフ角度閾値の範囲内である場合は（Ｓ２５：Ｙｅｓ）、更にユーザ予測位置メモリ１２ｅの予測位置Ｐｕｅと、移動体位置メモリ１２ｇの位置Ｐｒとの偏差がオフ距離閾値（距離閾値）以下であるかを確認する（Ｓ２６）。オフ距離閾値としては、０．５ｍが例示される。
【００４８】
Ｓ２６の処理において、予測位置Ｐｕｅと、位置Ｐｒとの偏差がオフ距離閾値以下である場合は（Ｓ２６）、進行方向反転フラグ１２ｉをオフに設定する（Ｓ２７）。
【００４９】
Ｓ２４の処理において、進行方向反転フラグ１２ｉがオフの場合は（Ｓ２４：Ｎｏ）、Ｓ２５〜Ｓ２７の処理をスキップする。また、Ｓ２５の処理で移動体向きメモリ１２ｈの向きＤｒとの偏差がオフ角度閾値の範囲外である場合は（Ｓ２５：Ｎｏ）、Ｓ２６，Ｓ２７の処理をスキップし、Ｓ２６の処理で予測位置Ｐｕｅと移動体１の位置Ｐｒとの距離偏差ｄがオフ距離閾値以下である場合は（Ｓ２６：Ｎｏ）、Ｓ２７の処理をスキップする。
【００５０】
Ｓ２４〜Ｓ２７の処理の後は、進行方向反転フラグ設定処理を終了し、図３のメイン処理に戻る。
【００５１】
ここで、Ｓ２４〜Ｓ２７の処理による進行方向反転フラグ１２ｉのオフについて、図６を参照して説明する。図６（ａ）は、移動体１が後退しながらユーザＨに随行する場合を表す図であり、図６（ｂ）は、移動体１の進行方向を後退から前進に変更しながらユーザＨに随行する場合を表す図である。
【００５２】
図６（ａ）においては、ユーザＨが急激な旋回をすることで、移動体１が進行方向を後退に切り替え、その後、後退しながらユーザＨの右前方を随行している。ここで歩行中のユーザＨは、上記した図５（ｃ）のような急激な方向転換ほどではないが、図６（ｂ）に示すような旋回動作をする場合がある。図６（ａ）の状態のまま、移動体１を後退させながら旋回動作中のユーザＨに随行させると、移動体１はユーザＨに合わせた旋回状の大回りな走行を行う。一方で、移動体１の進行方向を後退から前進に切り替えるように、向きＤｒを変化させながら旋回動作中のユーザＨに随行させると、移動体１は図６（ｃ）に示すような小回りな走行を行う。これによって、移動体１の走行距離が小さくなるので、向きＤｒを変化させながら走行させても、上記した移動体１を後退させながら旋回状の大回りな走行を行う場合と比較しても、ユーザＨとの随行遅れを最小限にできる。
【００５３】
そこで、図４のＳ２４〜Ｓ２７の処理では、ユーザＨの旋回動作中の期間を利用して、移動体１の進行方向を後退から通常時の前進に切り替えている。
【００５４】
具体的には、まず図４のＳ２５の処理によって、ｔ秒後のユーザＨの予測向きＤｕｅと移動体１の向きＤｒとの偏差が、オフ角度閾値の範囲内かを確認する。オフ角度閾値には、上記したＳ２１，Ｓ２３の処理におけるオン角度閾値よりも、小さな角度の範囲が設定されているので、ユーザＨが急激な方向転換をしている場合や、直進している場合はオン角度閾値の範囲内に含まれない。これにより、ユーザＨが旋回動作をしている場合の角度関係を、正確に検出できる。
【００５５】
また、Ｓ２５の処理において、現在のユーザＨの向きＤｕではなく、ｔ秒後のユーザＨの予測向きＤｕｅを用いて判断しているのは、現在の向きＤｕに基づいて移動体１との角度関係を判断すると、移動体１の進行方向を後退から前進に切り替える余裕が生じない虞があるからである。よって、Ｓ２５の処理において予測向きＤｕｅを用いることで、移動体１の進行方向を後退から前進に切り替え可能かどうかを、より確実に判断できる。
【００５６】
Ｓ２５の処理の後に、Ｓ２６の処理によって、ユーザＨの予測位置Ｐｕｅと、移動体１の位置Ｐｒとの距離偏差ｄがオフ距離閾値以下であるかを確認する。これは、ユーザＨが旋回動作をする場合は、ユーザＨが移動体１に一時的に接近するからである。よって、距離偏差ｄがオフ距離閾値以下であるかを確認することで、ユーザＨの旋回動作時の移動体１への接近を検出できる。かかる場合も、現在のユーザＨの位置Ｐｕではなく、ｔ秒後のユーザＨの予測向きＤｕｅを用いることで、移動体１の進行方向を後退から前進に切り替え可能かどうかを、より確実に判断できる。
【００５７】
そして、Ｓ２５：Ｙｅｓ且つＳ２６：Ｙｅｓである場合は、ユーザＨが旋回動作中であると判断できるので、進行方向反転フラグ１２ｉのオフにする（Ｓ２７）。これによって、ユーザＨの旋回動作中に、移動体１の進行方向を後退から前進に切り替える。これにより、移動体１の進行方向を、ユーザＨがＬＣＤ６を視認しやすい前進に切り替えることができると共に、移動体１の向きＤｒを変化させることによる、随行遅れを最小限に抑制できる。
【００５８】
次に、本発明の第２実施形態を、図７，図８を参照して説明する。上述した第１実施形態では、移動体１をユーザＨの右前方を随行した。かかる場合に図５（ｃ）のように、ユーザＨが急激な方向転換をすることで、進行方向が前進から後退に切り替わった場合に、ユーザＨの右前方を随行しようすると、ユーザＨの前方を横切るように走行する。これによって、移動体１は随行遅れを生じたり、移動体１がユーザＨの身体の近くや目の前を通過することで、ユーザＨに対して違和感を抱かせる虞がある。
【００５９】
これに対して第２実施形態では、ユーザＨに対する移動体１の左右方向の位置に応じて、移動体１がユーザＨに随行する位置、即ち移動目標ＴをユーザＨの右前方または左前方に変化させる。上述した第１実施形態と同一の部分については、同一の符号を付し、その説明は省略する。
【００６０】
図７は、第２実施形態におけるメイン処理のフローチャートである。Ｓ７，Ｓ８の処理の後、移動体１の位置Ｐｒが、ユーザＨの位置Ｐｕの右側に位置しているかを確認する（Ｓ３０）。
【００６１】
移動体１の位置ＰｒがユーザＨの位置Ｐｕよりも右側に位置している場合、即ち移動体１がユーザ座標系（図１（ｂ）参照）における第１象限または第４象限に位置している場合は（Ｓ３０：Ｙｅｓ）、移動体１の移動目標Ｔを、ユーザＨの右前方に設定する（Ｓ３１）。一方で、移動体１の位置ＰｒがユーザＨの位置Ｐｕよりも左側に位置している場合、即ち移動体１がユーザ座標系における第２象限または第３象限に位置している場合は（Ｓ３０：Ｎｏ）、移動体１の移動目標Ｔを、ユーザＨの左前方に設定する（Ｓ３２）。
【００６２】
Ｓ３１，Ｓ３２の処理の後、上記したＳ７，Ｓ８の処理で設定された移動体１の進行方向、およびＳ３１，Ｓ３２の処理で設定された移動目標Ｔに基づいて駆動部１５を動作させて（Ｓ９）、移動体１を走行させる。
【００６３】
かかる移動体１における移動目標Ｔの切り替えについて、図８を参照して説明する。図８は、第２実施形態における、ユーザＨが急激な方向転換の前後でのユーザ及び移動体の一連の動作を表す図である。図８において、ユーザＨが急激な方向転換をする前は、移動体１はユーザＨよりも右側に位置しているので、図７のＳ３１の処理によって、移動体１の移動目標ＴがユーザＨの右前方に設定される。これにより、移動体１はユーザＨの右前方側を前進しながら随行する。
【００６４】
その後、ユーザＨが時計回りに急激な方向転換をすることで、移動体１はユーザＨの左側に位置するようになる。これに伴って、図７のＳ３２の処理によって、移動体１の移動目標ＴがユーザＨの左前方に設定され、移動体１はユーザＨの左前方側を後退しながら随行する。
【００６５】
よって、移動体１が、ユーザＨよりも右側に位置する場合は、ユーザＨの右前方を随行し、ユーザＨよりも左側に位置する場合は、ユーザＨの左前方を随行することで、ユーザＨが急激に方向転換する等、ユーザＨと移動体１との左右方向の位置関係が急激に入れ替わっても、移動体１がユーザＨを横切るといった走行を抑制できる。これにより、移動体１の随行遅れを更に抑制できると共に、移動体１がユーザＨの目の前を通過することがないので、ユーザＨに対して違和感を抱かせることなくユーザＨと随行できる。
【００６６】
以上、実施形態に基づき本発明を説明したが、本発明は上述した実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変更が可能であることは容易に推察できるものである。
【００６７】
上記実施形態では、図４のＳ２２の処理における進行方向反転フラグ１２ｉの切り替えを、Ｓ２１の処理による移動体１の向きＤｒとユーザＨの向きＤｕとの偏差による条件、またはＳ２３の処理による移動体１の向きＤｒとユーザＨの予測向きＤｕｅとの偏差による条件のいずれかを満たす場合に実行した。しかし、進行方向反転フラグ１２ｉを切り替る条件は、必ずしもこれに限られるものではなく、Ｓ２１の処理による条件のみでも良いし、Ｓ２３の処理による条件のみでも良い。
【００６８】
上記実施形態では、図４のＳ２１において、移動体１の向きＤｒとユーザＨの向きＤｕとの偏差をオン角度閾値と比較し、図４のＳ２３の処理において、移動体１の向きＤｒとユーザＨの予測向きＤｕｅとの偏差もオン角度閾値と比較した。即ち特許請求の範囲における第１閾値と第２閾値とを同じ値とした。しかし、必ずしもこれに限られるものではなく、Ｓ２１の処理における閾値（第１閾値）と、Ｓ２３の処理における閾値（第２閾値）とを、異なる値に設定しても良い。
【００６９】
上記実施形態では、図４のＳ２５の処理において、予測向きＤｕｅと移動体１の向きＤｒとの偏差が、オフ角度閾値の範囲内かどうかを判断した。しかし、必ずしもこれに限られるものではなく、オフ角度閾値をオン角度閾値よりも小さな値（例えば６０°）に設定し、予測向きＤｕｅと移動体１の向きＤｒとの偏差が、オフ角度閾値以上かどうか判断しても良い。
【００７０】
上記第１実施形態では、移動体１はユーザＨの右前方を随行し、第２実施形態ではユーザＨと移動体１との左右方向の位置関係によって、右前方または左前方を随行した。しかし、移動体１が随行する位置は、必ずしもこれに限られるものではなく、第１実施形態においてはユーザＨの左前方を随行しても良い。また、第１及び２実施形態では、ユーザＨの後方を随行しても良い。
【００７１】
上記実施形態では、ユーザＨの位置Ｐｕ、速度Ｖｕ及び向きＤｕを測距センサ５の測距データに基づいて算出した。しかし、必ずしもこれに限られるものではなく、測距センサ５の代わりにカメラを搭載し、該カメラで取得した画像に基づいて、ユーザＨの位置Ｐｕ、速度Ｖｕ及び向きＤｕを算出しても良い。
【符号の説明】
【００７２】
１              移動体
Ｈ              ユーザ（対象者）
３              車輪（移動手段の一部）
５              測距センサ（検出手段）
１５            駆動部（移動手段の一部）
Ｄｒ            向き（移動体の角度）
Ｄｕ            向き（対象者の角度）
Ｖｕ            速度（対象者の移動速度）
Ｄｕｅ          予測向き（予測角度）
Ｐｕｅ          予測位置
Ｓ２            対象者情報手段
Ｓ３            移動体情報手段
Ｓ５〜Ｓ９      移動制御手段
Ｓ３０〜Ｓ３２  移動目標手段
【図１】
2020166708.tif 000003
【図２】
2020166708.tif 000004
【図３】
2020166708.tif 000005
【図４】
2020166708.tif 000006
【図５】
2020166708.tif 000007
【図６】
2020166708.tif 000008
【図７】
2020166708.tif 000009
【図８】
2020166708.tif 000010