(57)【特許請求の範囲】
【請求項１】
複数の無線基地局のいずれか１つを介して移動体を操作するための移動体用無線通信装置であって、
前記複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ、
前記移動体の移動方向を向いた指向性を有する第２アンテナ、
前記複数の無線基地局のうち前記移動体の移動方向沿いに位置する無線基地局からの信号を前記第２アンテナによって検出する検出手段、
前記検出手段によって検出された信号に基づく情報を登録する登録手段、および
前記第１アンテナによる通信品質が閾値を下回った場合に、前記登録手段の登録情報に基づいて前記第１アンテナの通信相手を切替える切替え手段を備える、無線通信装置。
【請求項２】
前記第１アンテナは可変指向性である、請求項１記載の無線通信装置。
【請求項３】
前記第２アンテナは、前記移動体の移動方向沿いに位置する無線基地局から送信され環境で反射された微弱信号を捉える、請求項１記載の無線通信装置。
【請求項４】
前記登録手段は、前記検出手段によって検出された信号の送信元を識別する識別情報を登録する、請求項１記載の無線通信装置。
【請求項５】
前記検出手段よって検出された信号から当該信号の送信元への接続情報を抽出する抽出手段をさらに備え、
前記登録手段は、前記抽出手段によって抽出された接続情報をさらに登録する、請求項４記載の無線通信装置。
【請求項６】
前記登録手段は、前記検出手段によって検出された信号に基づく情報を登録する際に当該信号の検出時刻を添付し、
前記登録手段による登録情報のうち、添付された検出時刻からの経過時間が所定の期限を過ぎた登録情報を抹消する抹消手段をさらに備える、請求項１記載の無線通信装置。
【請求項７】
前記第１アンテナによる通信品質が閾値を下回っている状態で、前記登録手段による登録情報が存在しない場合には前記移動体の移動を強制的に停止させる一方、前記登録手段による登録情報が存在する場合には前記移動体の移動を容認する、停止制御手段をさらに備える、請求項１または６記載の無線通信装置。
【請求項８】
前記第１アンテナによる通信品質が閾値を下回っている状態の継続時間を計測する計測手段をさらに備え、
前記強制停止手段はさらに、前記計測手段の計測結果が所定の時間に達した時点で前記移動体の移動を強制的に停止させる、請求項７記載の無線通信装置。
【請求項９】
複数の無線基地局のいずれか１つを介して移動体を操作するための移動体用無線通信装置であって、前記複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ、および前記移動体の移動方向を向いた指向性を有する第２アンテナを備える、移動体用無線通信装置のプロセッサを、
前記複数の無線基地局のうち前記移動体自身の移動方向沿いに位置する無線基地局からの信号を前記第２アンテナによって検出する検出手段、
前記検出手段によって検出された信号に基づく情報を登録する登録手段、および
前記第１アンテナによる通信品質が閾値を下回った場合に、前記登録手段の登録情報に基づいて前記第１アンテナの通信相手を切替える切替え手段として機能させる、通信制御プログラム。
【請求項１０】
複数の無線基地局のいずれか１つを介して操作される移動体であって、
前記複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ、
前記移動体自身の移動方向を向いた指向性を有する第２アンテナ、
前記複数の無線基地局のうち前記移動体自身の移動方向沿いに位置する無線基地局からの信号を前記第２アンテナによって検出する検出手段、
前記検出手段によって検出された信号に基づく情報を登録する登録手段、および
前記第１アンテナによる通信品質が閾値を下回った場合に、前記登録手段の登録情報に基づいて前記第１アンテナの通信相手を切替える切替え手段を備える、移動体。
【請求項１１】
前記移動体自身を移動させる移動手段、および
前記第１アンテナによる通信品質が閾値を下回っている状態で、前記登録手段による登録情報が存在しない場合には前記移動手段を制御して前記移動体自身の移動を強制的に停止させる一方、前記登録手段による登録情報が存在する場合には前記移動体の移動を容認する、停止制御手段をさらに備える、請求項１０記載の移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、移動体操作用無線通信装置および通信制御プログラムならびに移動体に関し、特にたとえば、移動ロボット操作用無線通信装置および通信制御プログラムならびに移動ロボットに関する。
【背景技術】
【０００２】
一般に、ロボットや無人搬送機、電動カートなどの移動体を遠隔操作する場合、オペレータによって操作される遠隔操作装置と移動体との間で常に接続状態を維持していないと、安全な遠隔操作は困難となる。無線リンクを通じた遠隔操作では、一定以上の通信品質、すなわち低遅延かつ低エラー率で要求されたスルーレートを上回る常時接続を維持し続けることが求められる。
【０００３】
一方、移動体の移動範囲を広げるために、ネットワークに複数のアクセスポイント（ＡＰ）を設けて通信可能な範囲を拡張する方法が一般的にとられている。しかし、この方法では、移動によって現在通信を行なっているＡＰの通信可能領域を離れ、隣接する別のＡＰに再接続を行なうハンドオーバ時に、一時的に遅延やエラーが増加して常時接続を維持し続けることが困難になる状況がしばしば発生する。特に、入り組んだ構造となっている屋内を一定の速度で移動する場合、通常は受信信号強度を基にハンドオーバを行うため、ハンドオーバが終了しないうちに急激な受信状況の悪化が起こることで、元のＡＰとの接続が切れてしまう例が多い。
【０００４】
これを防ぐ方法としては、移動によりハンドオーバが必要となったときに備えて、周辺のＡＰの制御情報、たとえば接続に必要なパラメータや高速な再接続を可能にする送信タイミングなどの情報（隣接ＡＰへの接続情報）を、事前に移動体に通知しておく方法が従来から知られている。たとえば、特許文献１には、携帯電話システムにおいて、携帯電話に対し、現在接続中のＡＰ（基地局）から隣接ＡＰ（セル）の制御情報を送っておく方法が開示されている。
【特許文献１】特表２００２−５３３０３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、無線ＬＡＮなどの自律分散的なシステムでは一般に、隣接ＡＰの制御情報を一元的に収集、管理および通知する機能は実装されていない場合が多い。また、特許文献１のシステムでも、電波を通しにくい壁で仕切られた屋内環境や、屋外でも建物が林立する場所では、セルが複雑にオーバーラップしており、地理的な位置関係からだけでは、隣接セルを容易に特定することができない。また、セル間に十分なオーバーラップが存在しないこともある。
【０００６】
それゆえに、この発明の主たる目的は、新規な、移動体操作用無線通信装置および通信制御プログラムならびに移動体を提供することである。
【０００７】
この発明の他の目的は、簡単な構成で、ハンドオーバ時の通信途絶を極力抑えることができる、移動体操作用無線通信装置および通信制御プログラムならびに移動体を提供することである。
【課題を解決するための手段】
【０００８】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、本発明を何ら限定するものではない。
【０００９】
第１の発明は、複数の無線基地局のいずれか１つを介して遠隔操作される移動体のための移動体操作用無線通信装置であって、複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ、移動体の移動方向を向いた指向性を有する第２アンテナ、複数の無線基地局のうち移動体の移動方向沿いに位置する無線基地局からの信号を第２アンテナによって検出する検出手段、検出手段によって検出された信号に基づく情報を登録する登録手段、および、第１アンテナによる通信品質が閾値を下回った場合に、登録手段の登録情報に基づいて第１アンテナの通信相手を切替える切替え手段を備える。
【００１０】
第１の発明では、移動体操作用無線通信装置（１０Ａ）は、複数の無線基地局（２０２〜２０８）のいずれか１つを介して遠隔操作される移動体（１０）のための無線通信装置であり、複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ（１１８）、および移動体の移動方向を向いた指向性を有する第２アンテナ（１２０）を備える。このような移動体操作用無線通信装置（１０Ａ）では、たとえば通信制御プログラム（１４２）によってプロセッサ（８０）を検出手段（Ｓ７），登録手段（Ｓ９，Ｓ１５）および切替え手段（Ｓ３３）として機能させることができる。
【００１１】
検出手段は、複数の無線基地局のうち移動体の移動方向沿いに位置する無線基地局からの信号を第２アンテナによって検出し、登録手段は、検出手段によって検出された信号に基づく情報を登録する。切替え手段は、第１アンテナによる通信品質が閾値を下回った場合に（Ｓ１：ＮＯ）、登録手段の登録情報に基づいて、第１アンテナの通信相手を切替える。
【００１２】
第１の発明によれば、指向性の第２アンテナで移動方向沿いに位置する無線基地局からの信号を検出して、それに関する情報を登録しておき、第１アンテナの通信品質が閾値を下回った場合に、第１アンテナの通信相手を登録情報に基づいて切替えるので、簡単な構成で、ハンドオーバ時の通信途絶を極力抑えることができる。
【００１３】
第２の発明は、第１の発明に従属し、第１アンテナは可変指向性である。可変指向性のアンテナとしては、たとえばアレーアンテナがある。
【００１４】
第２の発明によれば、第１アンテナを可変指向性としたことで、任意の方向に位置する無線基地局との無線通信が行え、アンテナゲインによる受信信号強度の増加と、他の信号による干渉の抑圧効果により、通信可能領域が広がる。
【００１５】
第３の発明は、第１の発明に従属し、第２アンテナは、移動体の移動方向沿いに位置する無線基地局から送信され環境で反射された微弱信号を捉える。なお、第２アンテナで捉えられる微弱信号の強度では、隣接セルの登録情報を取得するなど通常の通信を行うことは困難であるが、その信号が有する変調方式，プリアンブル，スペクトルパターン，信号継続時間，信号強度変化パターンなどの特徴のいずれか、またはその組み合わせにより、セルの存在を確認することは可能である。
【００１６】
第３の発明によれば、環境で反射されてくる微弱信号を第２アンテナで捉えることで、移動方向沿いの、より遠方に存在する無線基地局を検出可能となるので、無線基地局の通信可能領域に十分なオーバーラップが存在しなくても、通信途絶を極力抑えることができる。
【００１７】
第４の発明は、第１の発明に従属し、登録手段は、検出手段によって検出された信号の送信元を識別する識別情報を登録する。
【００１８】
第４の発明によれば、登録した識別情報に基づいて、隣接する無線基地局への接続が可能となる。
【００１９】
第５の発明は、第４の発明に従属し、検出手段よって検出された信号から当該信号の送信元への接続情報を抽出する抽出手段（Ｓ１１）をさらに備え、登録手段は、抽出手段によって抽出された接続情報をさらに登録する。
【００２０】
なお、接続情報には、たとえば、その無線基地局が使用するチャネル（周波数）や伝送速度、さらには、高速接続を可能にする送信タイミングなどが記述される。
【００２１】
第５の発明によれば、さらに接続情報を参照することで、隣接する無線基地局への高速接続が可能となる。
【００２２】
第６の発明は、第１の発明に従属し、登録手段は、検出手段によって検出された信号に基づく情報を登録する際に当該信号の検出時刻を添付し（Ｓ９）、登録手段による登録情報のうち、添付された検出時刻からの経過時間が所定の期限を過ぎた登録情報を抹消する抹消手段（Ｓ１７，Ｓ１９）をさらに備える。
【００２３】
第６の発明では、検出から所定の期限を過ぎた信号に基づく登録情報を抹消するので、登録情報量の増大を抑制すると共に、古い登録情報に基づく不適切なオーバハンドを回避することができる。
【００２４】
第７の発明は、第１の発明に従属し、第１アンテナによる通信品質が閾値を下回っている状態で、登録手段による登録情報が存在しない場合には移動体の移動を強制的に停止させる一方、登録手段による登録情報が存在する場合には移動体の移動を容認する、停止制御手段をさらに備える。
【００２５】
第７の発明では、第１アンテナによる通信品質が閾値を下回っている状態（Ｓ１：ＮＯ）での移動体の移動は、停止制御手段（Ｓ４１）によって、登録手段による登録情報が存在しない場合には（Ｓ２９：ＮＯ）強制的に停止される一方、登録手段による登録情報が存在する場合には（Ｓ２９：ＹＥＳ）容認される。
【００２６】
第７の発明によれば、移動体が通信可能領域を逸脱したとき、移動先に無線基地局が存在するか否かで、移動体の移動を容認するか強制停止させるかを決めるので、回復の目途が立たない通信途絶であれば移動は強制停止され、一時的な通信途絶であれば移動が容認される結果となり、移動体の移動範囲を安全に広げることができる。
【００２７】
第８の発明は、第７の発明に従属し、第１アンテナによる通信品質が閾値を下回っている状態の継続時間を計測する計測手段をさらに備え、強制停止手段はさらに、計測手段の計測結果が所定の時間に達した時点で移動体の移動を強制的に停止させる。
【００２８】
第８の発明では、計測手段（Ｓ３，Ｓ２７）によって、第１アンテナによる通信品質が閾値を下回っている状態の継続時間が計測される。移動体の移動は、計測結果が所定の時間に達すると（Ｓ２５：ＮＯ）、停止制御手段によって強制的に停止される。
【００２９】
第８の発明によれば、第１アンテナによる通信品質が閾値を下回っている状態で移動が容認されたとしても、それは所定の時間内に限られるので、よりいっそう安全の確保を図ることができる。
【００３０】
なお、第１アンテナによる通信品質が閾値を下回っている状態での移動体の移動距離を計測し（その状態の継続時間および移動速度から移動距離を計算してもよい）、計測（計算）結果が所定の距離に達した時点で移動体の移動を強制的に停止させてもよい。
【００３１】
第９の発明は、複数の無線基地局（２０２〜２０８）のいずれか１つを介して移動体（１０）を操作するための移動体用無線通信装置（１０Ａ）であって、複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ（１１８）、および移動体の移動方向を向いた指向性を有する第２アンテナ（１２０）を備える、移動体用無線通信装置（１０Ａ）のプロセッサ（８０）を、複数の無線基地局のうち移動体自身の移動方向沿いに位置する無線基地局からの信号を第２アンテナによって検出する検出手段（Ｓ７）、検出手段によって検出された信号に基づく情報を登録する登録手段（Ｓ９，Ｓ１５）、および第１アンテナによる通信品質が閾値を下回った場合に（Ｓ１：ＮＯ）、登録手段の登録情報に基づいて第１アンテナの通信相手を切替える切替え手段（Ｓ３３）として機能させる、通信制御プログラム（１４２）である。
【００３２】
第１０の発明は、複数の無線基地局（２０２〜２０８）のいずれか１つを介して操作される移動体（１０）であって、複数の無線基地局のいずれか１つと無線通信を行うための第１アンテナ（１１８）、移動体自身の移動方向を向いた指向性を有する第２アンテナ（１２０）、複数の無線基地局のうち移動体自身の移動方向沿いに位置する無線基地局からの信号を第２アンテナによって検出する検出手段（Ｓ７）、検出手段によって検出された信号に基づく情報を登録する登録手段（Ｓ９，Ｓ１５）、および第１アンテナによる通信品質が閾値を下回った場合に（Ｓ１：ＮＯ）、登録手段の登録情報に基づいて第１アンテナの通信相手を切替える切替え手段（Ｓ３３）を備える。
【００３３】
第９および第１０の各発明でも、第１の発明と同様に、簡単な構成で、ハンドオーバ時の通信途絶を極力抑えることができる。
【００３４】
第１１の発明は、第１０の発明に従属し、移動体自身を移動させる移動手段（８６，Ｓ６１〜Ｓ７７）、および第１アンテナによる通信品質が閾値を下回っている状態で（Ｓ１：ＮＯ）、登録手段による登録情報が存在しない場合には（Ｓ２９：ＮＯ）移動手段を制御して移動体自身の移動を強制的に停止させる一方、登録手段による登録情報が存在する場合には（Ｓ２９：ＹＥＳ）移動体の移動を容認する、停止制御手段（Ｓ４１）をさらに備える。
【００３５】
第１１の発明でも、第７の発明と同様に、移動体の移動範囲を安全に広げることができる。
【発明の効果】
【００３６】
この発明によれば、簡単な構成で、ハンドオーバ時の通信途絶を極力抑えることができる、移動体操作用無線通信装置および通信制御プログラムならびに移動体が実現される。
【００３７】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００３８】
【図１】この発明の一実施例である移動ロボット遠隔操作システムの構成を示す図解図である。
【図２】移動ロボットの外観図を示す図解図である。
【図３】移動ロボットの電気的構成を示すブロック図である。
【図４】遠隔操作装置の電気的構成の一例を示すブロック図である。
【図５】サーバの電気的構成の一例を示すブロック図である。
【図６】移動ロボット遠隔操作システムが適用される環境、およびそこでのアンテナ１による通信可能領域の例を示す図解図である。
【図７】図６の環境で移動ロボットが位置Ｐ２にあるときのアンテナ２による信号検出範囲とアンテナ１による通信可能領域との関係を示す図解図である。
【図８】アンテナ２による信号検出範囲と、ＡＰ２０８から送信され環境で反射された反射信号の到達領域との関係を示す図解図であり（Ａ）は移動ロボットが位置Ｐ３にあるときの両者の関係を、（Ｂ）は移動ロボットが位置Ｐ４にあるときの両者の関係をそれぞれ示す。
【図９】移動ロボットのメモリマップを示す図解図である。
【図１０】メモリマップ内の主要な項目の詳細を示す図解図であり、（Ａ）はシステムパラメータを、（Ｂ）は切替え候補リストを、そして（Ｃ）は通信状況情報をそれぞれ示す。
【図１１】ロボットのＣＰＵ動作の一部を示すフロー図である。
【図１２】ロボットのＣＰＵ動作の他の一部を示すフロー図である。
【図１３】ロボットのＣＰＵ動作のその他の一部を示すフロー図である。
【図１４】遠隔操作装置のＣＰＵ動作の一部を示すフロー図である。
【図１５】サーバのＣＰＵ動作の一部を示すフロー図である。
【発明を実施するための形態】
【００３９】
図１を参照して、この発明の一実施例である移動ロボット遠隔操作システム（以下“遠隔操作システム”）１００は、たとえば博物館，アトラクション施設，イベント会場などに配置された移動ロボット１０を、別の場所たとえば研究室，監視センタなどから、ＬＡＮ，インターネットなどのネットワーク２００を介して遠隔操作するためのシステムである。
【００４０】
最初、概要を説明する。遠隔操作システム１００は、移動ロボット１０，遠隔操作装置１２およびサーバ１４を含む。ネットワーク２００には、複数たとえば４つのアクセスポイント（以下“ＡＰ”）２０２〜２０８が設けられており、移動ロボット１０は、ＡＰ２０２〜２０８のいずれか１つを介してネットワーク２００に接続される。言い換えると、移動ロボット１０は、移動に伴って接続先をＡＰ２０２→ＡＰ２０４→…のように順次切替えていくこと（いわゆる“ハンドオーバ”）によって、ネットワーク２００との接続を維持することができる。
【００４１】
一方、遠隔操作装置１２およびサーバ１４は、それぞれ専用のＡＰ（図示せず）を介してネットワーク２００に接続される。移動ロボット１０と各ＡＰ２０２〜２０８との間の接続は、たとえばＩＥＥＥ８０２．１１方式などの無線接続であるが、遠隔操作装置１２およびサーバ１４の各々とその専用ＡＰとの間の接続は、無線接続でも、ＬＡＮケーブルなどによる有線接続でもよい。
【００４２】
移動ロボット１０は、たとえば自律型のロボットであり、遠隔操作によってだけでなく、自身に備わる各種センサからのセンサ情報に基づいて自律的に、移動ないし行動することもできる。移動ロボット１０によるセンサ情報はまた、ネットワーク２００経由で遠隔操作装置１２に送信される。
【００４３】
サーバ１４には、複数たとえば２つのレーザレンジファインダ（以下“ＬＲＦ”）１４２および１４４が接続される。各ＬＲＦ１４２，１４４は、移動ロボット１０が移動できる場所（環境）に設置されて、自身から移動ロボット１０までの距離を計測し、距離データを出力する。サーバ１４は、各ＬＲＦ１４２，１４４からの距離データに基づいて、環境における移動ロボット１０の位置および移動方向を計算する。この計算結果を示す位置＆方向情報は、ネットワーク２００経由で移動ロボット１０および遠隔操作装置１２に送信される。
【００４４】
なお、ＬＲＦは一般に、レーザーを照射し、それが目標で反射して戻ってくるまでの時間に基づいて、当該目標までの距離を計測するものである。ＬＲＦ１４２，１４４は、たとえば、トランスミッタ（図示せず）から照射したレーザーを回転ミラー（図示せず）で反射させて、前方を扇状に一定角度（たとえば０．５度）ずつスキャンすることで、単に目標までの距離を計測するだけでなく、目標の表面に関する２次元距離情報（表面の形状を角度および距離の２変数で記述した情報）も生成することができる。ＬＲＦ１４２，１４４からの距離データには、このような２次元距離情報が含まれており、サーバ１４は、目標が移動ロボット１０であるか、他の物体ないし人体などであるかを識別することができる。
【００４５】
なお、環境に設置されて、移動ロボット１０までの距離を計測するセンサ（距離センサ）は、ＬＲＦに限らず、たとえば赤外線距離センサなどでもよい。
【００４６】
遠隔操作装置１２は、移動ロボット１０から得たセンサ情報およびサーバ１４から得た位置＆方向情報を表示するディスプレイ（３０：図４参照）と、オペレータによって操作される操作パネル（２８：図４参照）とを備える。オペレータは、ディスプレイ（３０）に表示されるセンサ情報および位置＆方向情報を通じて移動ロボット１０の動き（移動および／または行動）を監視し、必要に応じてその動きを制御するべく操作パネル（２８）を操作する。操作パネル（２８）の操作に基づく操作情報は、ネットワーク２００経由で移動ロボット１０に送信される。
【００４７】
移動ロボット１０では、自らのセンサ情報，サーバ１４からの位置＆方向情報および遠隔操作装置１２からの操作情報に基づいて動き制御情報が生成され、この動き制御情報に基づいて各種モータ（９２〜９８，１１０，３６ａおよび３６ｂ：図３参照）が駆動される。こうして、移動ロボット１０の自律的な／遠隔操作による動きが実現される。
【００４８】
なお、移動ロボット１０は、相互作用指向のロボットでもあり、人間のようなコミュニケーション対象との間で、身振り手振りのような身体動作あるいは音声による会話といったコミュニケーション行動を実行する機能も有している。
【００４９】
次に、各要素について詳しく説明する。図２はこの実施例の移動ロボット１０の外観を示す正面図である。図２を参照して、移動ロボット１０は台車３０を含み、台車３０の下面には右車輪３２ａおよび左車輪３２ｂ（特に区別しない場合には「車輪３２」と記す）ならびに１つの従輪３４が設けられる。右車輪３２ａおよび左車輪３２ｂは、右車輪モータ３６ａおよび左車輪モータ３６ｂ（図４参照）によってそれぞれ独立に駆動され、台車３０ひいては移動ロボット１０全体を前後左右の任意方向に動かすことができる。また、従輪３４は車輪３２を補助する補助輪である。
【００５０】
台車３０の上には、円柱形のセンサ取り付けパネル３８が設けられ、このセンサ取り付けパネル３８には、多数の赤外線距離センサ４０が取り付けられる。これらの赤外線距離センサ４０は、センサ取り付けパネル３８つまり移動ロボット１０自身と、その周囲の物体（人間や障害物など）との距離を測定するものである。
【００５１】
なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、小型のＬＲＦ、超音波距離センサまたはミリ波レーダなどを用いることもできるし、これらを適宜組み合わせて用いてもよい。
【００５２】
センサ取り付けパネル３８の上には、胴体４２が直立するように設けられる。また、胴体４２の前方中央上部（人の胸に相当する位置）には、上述した赤外線距離センサ４０がさらに設けられており、これによって前方の対象たとえば人間との距離を計測する。また、胴体４２には、その側面側上端部のほぼ中央から伸びる支柱４４が設けられ、支柱４４の上には、無指向性アンテナ１１８および指向性アンテナ１２０（それぞれ“アンテナ１”および“アンテナ２”と別称する場合がある）ならびに全方位カメラ４６が設けられる。
【００５３】
無指向性アンテナ１１８は、各ＡＰ２０２〜２０８と無線通信を行うためのアンテナであり、任意の方向からの無線信号を受信し、任意の方向に無線信号を送信する。指向性アンテナ１２０は、移動ロボット１０の移動方向を向いた指向性（たとえば２０〜３０度幅）を有し、その方向からの無線信号（たとえば５ＧＨｚないし２．４ＧＨｚ）、特に各ＡＰ２０２〜２０８から送信され環境で反射された微弱信号を検出ないし受信する。
【００５４】
なお、この実施例では、指向性アンテナ１２０は支柱４４に対して固定され、さらに支柱４４は胴体４２に対して固定されており、移動ロボット１０の移動方向は、胴体４２の正面方向、ひいては指向性アンテナ１２０の指向方向と常に一致する。しかし、移動ロボット１０は、胴体４２の正面方向とは異なる方向（たとえば背面方向）に移動可能であってもよく、この場合、アンテナ２用のモータ１２０ａを追加したり、指向性アンテナ１２０として、その指向性を電気的に変化させることが可能な可変指向性アンテナ（アレーアンテナなど）を用いたりすることによって、指向方向を移動方向と一致させる制御を行う必要がある。
【００５５】
全方位カメラ４６は、移動ロボット１０の周囲を撮影するものであり、後述する眼カメラ７０とは区別される。全方位カメラ４６としては、たとえばＣＣＤやＣＭＯＳのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ４０，指向性アンテナ１２０，無指向性アンテナ１１８および全方位カメラ４６の設置位置は、当該部位に限定されず適宜変更されてもよい。
【００５６】
胴体４２の両側面上端部（人の肩に相当する位置）には、それぞれ、肩関節４８Ｒおよび肩関節４８Ｌによって、上腕５０Ｒおよび上腕５０Ｌが設けられる。図示は省略するが、肩関節４８Ｒおよび肩関節４８Ｌは、それぞれ、直交する３軸の自由度を有する。すなわち、肩関節４８Ｒは、直交する３軸のそれぞれの軸廻りにおいて上腕５０Ｒの角度を制御できる。肩関節４８Ｒの或る軸（ヨー軸）は、上腕５０Ｒの長手方向（または軸）に平行な軸であり、他の２軸（ピッチ軸およびロール軸）は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節４８Ｌは、直交する３軸のそれぞれの軸廻りにおいて上腕５０Ｌの角度を制御できる。肩関節４８Ｌの或る軸（ヨー軸）は、上腕５０Ｌの長手方向（または軸）に平行な軸であり、他の２軸（ピッチ軸およびロール軸）は、その軸にそれぞれ異なる方向から直交する軸である。
【００５７】
また、上腕５０Ｒおよび上腕５０Ｌのそれぞれの先端には、肘関節５２Ｒおよび肘関節５２Ｌが設けられる。図示は省略するが、肘関節５２Ｒおよび肘関節５２Ｌは、それぞれ１軸の自由度を有し、この軸（ピッチ軸）の軸回りにおいて前腕５４Ｒおよび前腕５４Ｌの角度を制御できる。
【００５８】
前腕５４Ｒおよび前腕５４Ｌのそれぞれの先端には、人の手に相当する球体５６Ｒおよび球体５６Ｌがそれぞれ固定的に設けられる。ただし、指や掌の機能が必要な場合には、人間の手の形をした「手」を用いることも可能である。また、図示は省略するが、台車３０の前面、肩関節４８Ｒと肩関節４８Ｌとを含む肩に相当する部位、上腕５０Ｒ、上腕５０Ｌ、前腕５４Ｒ、前腕５４Ｌ、球体５６Ｒおよび球体５６Ｌには、それぞれ、接触センサ５８（図３で包括的に示す）が設けられる。台車３０の前面の接触センサ５８は、台車３０への人間や他の障害物の接触を検知する。したがって、移動ロボット１０は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪３２の駆動を停止して移動ロボット１０の移動を急停止させることができる。また、その他の接触センサ５８は、当該各部位に触れたかどうかを検知する。なお、接触センサ５８の設置位置は、当該部位に限定されず、適宜な位置（人の胸、腹、脇、背中および腰に相当する位置）に設けられてもよい。
【００５９】
胴体４２の中央上部（人の首に相当する位置）には首関節６０が設けられ、さらにその上には頭部６２が設けられる。図示は省略するが、首関節６０は、３軸の自由度を有し、３軸の各軸廻りに角度制御可能である。或る軸（ヨー軸）は移動ロボット１０の真上（鉛直上向き）に向かう軸であり、他の２軸（ピッチ軸、ロール軸）は、それぞれ、それと異なる方向で直交する軸である。
【００６０】
頭部６２には、人の口に相当する位置に、スピーカ６４が設けられる。スピーカ６４は、移動ロボット１０が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク６６Ｒおよびマイク６６Ｌが設けられる。以下、右のマイク６６Ｒと左のマイク６６Ｌとをまとめてマイク６６と言うことがある。マイク６６は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。さらに、人の目に相当する位置には、眼球部６８Ｒおよび眼球部６８Ｌが設けられる。眼球部６８Ｒおよび眼球部６８Ｌは、それぞれ眼カメラ７０Ｒおよび眼カメラ７０Ｌを含む。以下、右の眼球部６８Ｒと左の眼球部６８Ｌとをまとめて眼球部６８と言うことがある。また、右の眼カメラ７０Ｒと左の眼カメラ７０Ｌとをまとめて眼カメラ７０と言うことがある。
【００６１】
眼カメラ７０は、移動ロボット１０に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、眼カメラ７０は、上述した全方位カメラ４６と同様のカメラを用いることができる。たとえば、眼カメラ７０は、眼球部６８内に固定され、眼球部６８は、眼球支持部（図示せず）を介して頭部６２内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、２軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この２軸の一方は、頭部６２の上に向かう方向の軸（ヨー軸）であり、他方は、一方の軸に直交しかつ頭部６２の正面側（顔）が向く方向に直行する方向の軸（ピッチ軸）である。眼球支持部がこの２軸の各軸廻りに回転されることによって、眼球部６８ないし眼カメラ７０の先端（正面）側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ６４、マイク６６および眼カメラ７０の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。
【００６２】
このように、この実施例の移動ロボット１０は、車輪３２の独立２軸駆動、肩関節４８の３自由度（左右で６自由度）、肘関節５２の１自由度（左右で２自由度）、首関節６０の３自由度および眼球支持部の２自由度（左右で４自由度）の合計１７自由度を有する。
【００６３】
図３は移動ロボット１０の電気的な構成を示すブロック図である。図３を参照して、移動ロボット１０は、ＣＰＵ８０を含む。ＣＰＵ８０は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス８２を介して、メモリ８４、モータ制御ボード８６、センサ入力／出力ボード８８および音声入力／出力ボード９０に接続される。ＣＰＵ８０は、ＲＴＣ(Real Time Clock)８０ａを含んでおり、各センサからの信号ないしデータ（センサ情報）に対してＲＴＣに基づく時刻データを付加する。
【００６４】
メモリ８４は、図示は省略をするが、不揮発メモリ（保存領域）としてＳＳＤ(Solid State Drive)およびＲＯＭと、揮発メモリ（一時記憶領域）としてＲＡＭとを含む。ＳＳＤ，ＲＯＭつまり保存領域（１４０：図９参照）には、移動ロボット１０自身の動きや遠隔操作装置１２，サーバ１４との間の通信を制御するための各種の制御プログラム，システムパラメータなど（後述）が予め記憶される。ＲＡＭつまり一時記憶領域（１５０：図９参照）は、ワークメモリないしバッファメモリとして、送受信データを一時保持したり、制御プログラムによって参照される各種の情報や切替え候補リストなど（後述）を更新可能に記憶したりする。
【００６５】
モータ制御ボード８６は、たとえばＤＳＰで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、右眼球部６８Ｒの２軸のそれぞれの角度を制御する２つのモータ（図３では、まとめて「右眼球モータ９２」と示す。）の回転角度を制御する。同様に、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、左眼球部６８Ｌの２軸のそれぞれの角度を制御する２つのモータ（図３では、まとめて「左眼球モータ９４」と示す。）の回転角度を制御する。
【００６６】
また、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、肩関節４８Ｒの直交する３軸のそれぞれの角度を制御する３つのモータと肘関節５２Ｒの角度を制御する１つのモータとの計４つのモータ（図３では、まとめて「右腕モータ９６」と示す。）の回転角度を制御する。同様に、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、肩関節４８Ｌの直交する３軸のそれぞれの角度を制御する３つのモータと肘関節５２Ｌの角度を制御する１つのモータとの計４つのモータ（図３では、まとめて「左腕モータ９８」と示す。）の回転角度を制御する。
【００６７】
さらに、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、首関節６０の直交する３軸のそれぞれの角度を制御する３つのモータ（図３では、まとめて「頭部モータ１１０」と示す。）の回転角度を制御する。そして、モータ制御ボード８６は、ＣＰＵ８０からの制御データを受け、右車輪３２ａを駆動する右車輪モータ３６ａ、左車輪３２ｂを駆動する左車輪モータ３６ｂの回転角度を、それぞれ個別に制御する。なお、この実施例では、車輪モータ３６を除くモータは、制御を簡素化するためにステッピングモータ（すなわち、パルスモータ）を用いる。ただし、車輪モータ３６と同様に直流モータを用いるようにしてもよい。また、移動ロボット１０の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更されてもよい。たとえば、他の実施例では、エアアクチュエータなどが適用されてもよい。
【００６８】
センサ入力／出力ボード８８は、モータ制御ボード８６と同様に、ＤＳＰで構成され、各センサからの信号（センサ情報）を取り込んでＣＰＵ８０に与える。すなわち、赤外線距離センサ４０のそれぞれからの反射時間に関するデータがこのセンサ入力／出力ボード８８を通じてＣＰＵ８０に入力される。また、全方位カメラ４６からの映像信号が、必要に応じてセンサ入力／出力ボード８８で所定の処理を施してからＣＰＵ８０に入力される。眼カメラ７０からの映像信号も、同様に、ＣＰＵ８０に入力される。また、上述した複数の接触センサ５８（図３では、まとめて「接触センサ５８」と示す。）からの信号がセンサ入力／出力ボード８８を介してＣＰＵ８０に与えられる。
【００６９】
また、センサ入力／出力ボード８８には、右車輪３２ａの回転速度（車輪速）を検出する右車輪速センサ１１２ａ、左車輪３２ｂの回転速度を検出する左車輪速センサ１１２ｂがさらに接続される。そして、右車輪速センサ１１２ａおよび左車輪速センサ１１２ｂからのそれぞれから、一定時間における右車輪３２ａおよび左車輪３２ｂの回転数（車輪速）に関するデータが、センサ入力／出力ボート８８を通じて、ＣＰＵ８０に入力される。
【００７０】
音声入力／出力ボード９０も、他の入力／出力ボードと同様にＤＳＰで構成され、図３ではから与えられる音声合成データに従った音声または声がスピーカ６４から出力される。また、マイク６６からの音声入力が、音声入力／出力ボード９０を介してＣＰＵ８０に与えられる。
【００７１】
また、ＣＰＵ８０は、バス８２を介して通信ＬＡＮボード１１４に接続される。通信ＬＡＮボード１１４は、たとえばＤＳＰで構成され、ＣＰＵ８０から与えられた送信データを無線通信回路１１６に与え、無線通信回路１１６は送信データを、無指向性アンテナ１１８（アンテナ１）からネットワーク２００を介して外部コンピュータ（遠隔操作装置１２，サーバ１４）に送信する。また、通信ＬＡＮボード１１４は、無線通信回路１１６を介して無指向性アンテナ１１８でデータを受信し、受信したデータをＣＰＵ８０に与える。無指向性アンテナ１１８で受信される受信データには、遠隔操作装置１２からの操作情報および／またはサーバ１４からの位置＆方向情報が含まれる。
【００７２】
また、無線通信回路１１６は、ネットワーク２００へのアクセスポイント（ＡＰ）２０２〜２０８から送信される信号（たとえばビーコン信号）あるいはそれが環境で反射された微弱信号を指向性アンテナ１２０で検出ないし受信する。
【００７３】
図４は、遠隔操作装置１２の電気的な構成を示すブロック図である。図４を参照して、遠隔操作装置１２は、ＣＰＵ２０，メモリ２２，通信ＬＡＮボード２４，通信回路２６，操作パネル２８およびディスプレイ３０を備える。通信回路２６は、図示しない専用ＡＰを介してネットワーク２００に無線または有線で接続される。
【００７４】
操作パネル２８は、各種の操作ボタン，タッチパネルなどで構成され、オペレータが移動ロボット１０の動きを制御するべく行う操作を受け付けて、その操作データを出力する。ＣＰＵ２０は、ＲＴＣ２０ａを含んでおり、操作パネル２８により入力される操作データに対し、ＲＴＣ２０ａに基づく時刻データを付加し、これ（時刻付き操作データ）を送信データ（操作情報）としてメモリ２２に書き込む。ＣＰＵ２０はまた、メモリ４２に記憶された送信データを時刻データに従って読み出し、通信ＬＡＮボード２４に与える。通信ＬＡＮボード２４は、たとえばＤＳＰで構成され、ＣＰＵ２０から与えられた送信データを通信回路４６からネットワーク２００を通して移動ロボット１０に送信する。
【００７５】
通信ＬＡＮボード２４はまた、移動ロボット１０およびサーバ１４からネットワーク２００経由で送られてくるデータ（センサ情報および位置＆方向情報）を通信回路２６で受信し、その受信データをＣＰＵ２０に与える。ＣＰＵ２０は、与えられた受信データをメモリ２２に書き込みつつ、こうしてメモリ２２に記憶された受信データに基づいて、移動ロボット１０からのセンサ情報およびサーバ１４からの位置＆方向情報を視覚的に示す制御画面（図示せず）をディスプレイ３０に表示する。先述したようなオペレータによる操作は、こうしてディスプレイ３０に表示される制御画面を参照しながら行われる。
【００７６】
メモリ２２には、遠隔操作装置１２が以上のような動作を行うための制御プログラム（図１４参照：後述）が予め記憶される。
【００７７】
図５は、サーバ１４の電気的な構成を示すブロック図である。図５を参照して、サーバ１４は、ＣＰＵ４０，メモリ４２，通信ＬＡＮボード４４，通信回路４６およびセンサ入力／出力ボード４８を備える。通信回路４６は、図示しない専用ＡＰを介してネットワーク２００に無線または有線で接続される。センサ入力／出力ボード４８には、図１に示したＬＲＦ１４２および１４４が接続される。ＣＰＵ４０は、ＲＴＣ４０ａを含んでおり、ＬＲＦ１４２および１４４からセンサ入力／出力ボード４８を通して入力される距離データに対して、ＲＴＣ４０ａから得られる時刻データを付加し、これ（時刻付き距離データ）をメモリ４２に書き込む。ＣＰＵ４０はまた、こうしてメモリ４２に記憶された時刻付き距離データに基づいて、環境における移動ロボット１０の位置および移動方向を計算し、計算結果（位置＆方向情報）を送信データとして再びメモリ４２に書き込む。通信ＬＡＮボード４４は、たとえばＤＳＰで構成され、こうしてメモリ４２に記憶された送信データを通信回路４６からネットワーク２００を通して移動ロボット１０に送信する。
【００７８】
メモリ４２には、サーバ１４が以上のような動作を行うための制御プログラム（図１５参照：後述）が予め記憶される。
【００７９】
図６は、遠隔操作システム１００が適用される環境、およびその環境での無指向性アンテナ１１８（アンテナ１）による通信可能領域の例を示す図解図である。この環境は、たとえば博物館の１フロアであり、電波を通さない壁によって３つの部屋１〜３および通路に区分される。ＡＰ２０２は通路の入り口Ｅｎｔ側に、ＡＰ２０４〜２０８は部屋１〜３にそれぞれ配置される。ＬＲＦ１４２および１４４は、通路の適宜な位置に設置される。この環境での通信可能領域（ＡＰ２０２〜２０８の少なくとも１つからの信号が到達する領域）は、網掛けで示された領域であり、部屋１〜３の全部および通路の一部をカバーする。
【００８０】
通路では、ＡＰ２０２からの信号到達領域Ｅ１が、入り口Ｅｎｔ１から部屋１および２の間の壁Ｗ１の近くまで延びており、また、ＡＰ２０４〜２０８からの信号到達領域Ｅ２〜Ｅ４が、部屋１〜３から通路内に入り込んでいる。ＡＰ２０４からの信号到達領域Ｅ２の先端部分は、ＡＰ２０２からの信号の到達領域Ｅ１の先端部分とオーバーラップしており、ＡＰ２０６からの信号到達領域Ｅ３の先端部分は、ＡＰ２０４からの信号到達領域Ｅ２の先端部分と接している（つまりオーバーラップは殆どない）。そして、ＡＰ２０８からの信号到達領域Ｅ４の先端部分は、ＡＰ２０６からの信号到達領域Ｅ３の先端部分から遠く離れている。
【００８１】
いま、移動ロボット１０は、通路内を入り口Ｅｎｔから奥に向かって線Ｌに沿ってＰ１→Ｐ２→Ｐ３→Ｐ４→…のように移動しているとする。この場合、アンテナ１の通信相手は、移動ロボット１０の移動につれて、ＡＰ２０２→ＡＰ２０４→ＡＰ２０６→ＡＰ２０８のように順次切り替わる。具体的には、アンテナ１の通信相手は、位置Ｐ１〜Ｐ２の間ではＡＰ２０２であり、位置Ｐ１を過ぎた直後にＡＰ２０４に切替わる。そして、位置Ｐ２〜Ｐ３の中程で通信瞬断の後、さらにＡＰ２０６に切り替わる。この通信瞬断は、ＡＰ２０４からの信号到達領域Ｅ２とＡＰ２０６からの信号到達領域Ｅ３との間に、オーバーラップが殆どないために生じるもので、移動停止の要因となる。しかし、移動ロボット１０は、アンテナ２を利用することで、この種の通信瞬断を回避可能であり、仮に通信瞬断が生じたとしても、一時停止することもなく境界を通過する。
【００８２】
ここでのアンテナ２の具体的な利用方法について、図７により説明する。図７には、移動ロボット１０が位置Ｐ２にあるときの、アンテナ２による信号検出範囲と、アンテナ１による通信可能領域との関係が示される。図７に示されるように、アンテナ２による信号検出範囲は、位置Ｐ２から位置Ｐ３を超えて前方に延びており、ＡＰ２０６からの信号到達領域Ｅ３の先端部分と重なっている。このため、アンテナ２は、位置Ｐ２よりも手前で、ＡＰ２０６からの信号を受信することができる（または、その信号が環境で反射されて生じる微弱信号を検出することができる）。移動ロボット１０は、こうしてアンテナ２で受信した信号からＡＰ２０６への接続情報（図１０（Ｂ）参照：後述）を抽出することで、事前に次のＡＰ２０６を認識してそれへの接続情報を取得できるので、ＡＰ２０４からＡＰ２０６への高速なハンドオーバ（通信相手の切替え）が行える。また、仮に接続情報を取得できなかったとしても、直ぐ先に次のＡＰ２０６が存在することがわかるので、移動状態を維持することが可能となる。
【００８３】
図６に戻って、その後、位置Ｐ３を過ぎると、次のＡＰ２０８からの信号到達領域Ｅ４が遠く離れているため、信号到達領域Ｅ４に達するまでの間、通信途絶状態となる。しかし、移動ロボット１０は、このような通信途絶期間が生じても、アンテナ２を利用して移動状態を維持し続け、信号到達領域Ｅ４に入る。そして、位置Ｐ４を過ぎると、すなわち信号到達領域Ｅ４を出た時点で、移動を停止する。
【００８４】
ここでのアンテナ２の具体的な利用方法について、図８により説明する。図８には、アンテナ２による信号検出範囲と、ＡＰ２０８から送信され環境で反射された反射信号の到達領域との関係が示される。図８（Ａ）は移動ロボット１０が位置Ｐ３にあるときの両者の関係を、図８（Ｂ）は移動ロボット１０が位置Ｐ４にあるときの両者の関係をそれぞれ示す。
【００８５】
まず、図８（Ａ）を参照して、ＡＰ２０８から送信され環境で反射された反射信号の到達領域Ｅ４ｒ（以下“到達領域Ｅ４ｒ”）は、ＡＰ２０８からの信号到達領域Ｅ４のうち通路内に入り込んだ部分を含んで、移動ロボット１０の移動方向とは逆向きに（後方に）延びており、このため、位置Ｐ３の時点で、アンテナ２の信号検出範囲は、到達領域Ｅ４ｒの後端部分と重なっている。したがって、アンテナ２は、位置Ｐ３よりも手前で、ＡＰ２０８からの信号が環境で反射されて生じる微弱信号を検出することができる。移動ロボット１０は、こうしてアンテナ２で検出した微弱信号によって、移動方向に次のＡＰ２０８が存在することがわかるので、移動状態を維持することが可能となる。このとき、次のＡＰ２０８がどの程度先に存在するかを、微弱信号の強度から予測してもよい。
【００８６】
なお、通信途絶状態が所定時間以上継続した場合には、移動ロボット１０は、移動を停止する。
【００８７】
次に、図８（Ｂ）を参照して、位置Ｐ４の時点で、移動ロボット１０の移動方向には、次のＡＰはもはや存在しない。このため、アンテナ２の信号検出範囲は、次のＡＰからの信号ないしその反射信号の到達領域と重なることはない。移動ロボット１０は、ＡＰ２０８からの信号到達領域Ｅ４を出た時点で、アンテナ２によって新たなＡＰが検出されていないので、移動方向にＡＰは存在しないと判断して、移動を停止する。
【００８８】
以上のような動作を行うとき、移動ロボット１０のＣＰＵ８０は、メモリ８４に記憶された制御プログラムや情報に基づいて、図１１および図１２に示されるフローに従う通信制御処理と、図１３に示されるフローに従う動き制御処理とを並列的に実行する。遠隔操作装置１２およびサーバ１４は、図１４および図１５に示されるフローに従う制御処理をそれぞれ実行する。
【００８９】
図９には移動ロボット１０のメモリマップが、図１０にはメモリマップ内の主要な項目の詳細が、それぞれ示されている。図９を参照して、メモリ８４は保存領域１４０および一時記憶領域１５０を含み、保存領域１４０には通信制御プログラム１４２，動き制御プログラム１４４およびシステムパラメータ１４６などが記憶される。一時記憶領域１５０には、切替え候補リスト１５２，通信状況情報１５４，センサ情報１５６，位置＆方向情報１５８，操作情報１６０および動き制御情報１６２などが記憶される。
【００９０】
通信制御プログラム１４２は、移動ロボット１０が無指向性アンテナ１１８（アンテナ１）および指向性アンテナ１２０（アンテナ２）を利用してＡＰ２０２〜２０８を順次切替えながら遠隔操作装置１２およびサーバ１４と無線通信を行うための制御プログラムであり、図１１および図１２のフローに対応する。動き制御プログラム１４４は、移動ロボット１０が、自身によるセンサ情報，遠隔操作装置１２からの操作情報およびサーバ１４からの位置＆方向情報に基づいて、自身の動きを制御するための制御プログラムであり、図１３のフローに対応する。
【００９１】
システムパラメータ１４６は、遠隔操作システム１００に対して事前の設定操作により変更可能に設定されるパラメータであり、具体的には、図１０（Ａ）に示すように、“切替え候補の有効期限”および“移動容認時間”という２個のパラメータを含む。これらのパラメータの値は、それぞれたとえば６０秒および１０秒などのように記述される。
【００９２】
切替え候補リスト１５２は、アンテナ２で検出されたＡＰ（２０２，２０４，…）を切替え候補ＡＰ（以下“候補ＡＰ”）として登録するためのリストであり、具体的には、図１０（Ｂ）に示すように、当該候補ＡＰのＩＤ（識別情報），検出時刻，信号強度および接続情報などが登録される。ここで接続情報は、当該ＡＰで使用されるチャネル（周波数），伝送速度，および送信タイミングといった、当該ＡＰへの（特に速やかな）接続に必要な情報を含む。
【００９３】
通信状況情報１５４は、移動ロボット１０自身の通信状況を示す情報であり、具体的には、図１０（Ｃ）に示すように、“非通信状態の継続時間（Ｔ）”などが記述される。Ｔ＝０であれば、アンテナ１による通信品質が閾値以上（通信可能状態）であることがわかる。Ｔ＞０であれば、アンテナ１による通信品質が閾値未満（通信不能状態）であることがわかり、さらには、変数Ｔの値によって通信不能状態の継続時間もわかる。なお、アンテナ２の方向を可変とした場合には、その方向を示す値もここに記述される。
【００９４】
センサ情報１５６は、移動ロボット１０自身に備わる各種センサ（４０，４６，５８，７０，１１２ａおよび１１２ｂ）による検知結果を示す情報であり、たとえば、周辺に存在する対象物や壁面までの距離を示す距離情報、周辺を各種カメラで捉えた画像情報、対象物との接触情報、および左右の車輪の速度を示す車輪速情報などを含む。位置＆方向情報１５８は、サーバ１４から受信される情報であり、移動ロボット１０自身の位置および移動方向を示す。なお、遠隔操作システム１００からサーバ１４を省略し、移動ロボット１０自身によるセンサ情報に基づいて、位置＆方向情報１５８を計算するようにしてもよい。
【００９５】
操作情報１６０は、遠隔操作装置１２から受信される情報であり、遠隔操作装置１２により行われた操作内容（コマンド）を示す。動き制御情報１６２は、センサ情報１５６，位置＆方向情報１５８および操作情報１６０などに基づいて生成される情報であり、移動ロボット１０の動き（各種モータの動作）は、この動き制御情報１６２に基づいて制御される。
【００９６】
移動ロボット１０のＣＰＵ８０は、通信制御プログラム１４２に基づいて、図１１および図１２のフローに従う通信制御処理を実行する。まず図１１を参照して、ステップＳ１では、アンテナ１による通信品質（たとえば遅延時間，エラー率，スルーレートなど：以下同様）が閾値以上か否かを判別し、ＹＥＳであれば、ステップＳ３に移って、状態情報１５４の１項目である“非通信状態の継続時間（Ｔ）”をリセットする（Ｔ＝０）。また、もし可能であれば、ステップＳ５で、アンテナ１の接続相手（現ＡＰ）から隣接ＡＰのＩＤおよび接続情報を受信して、切替え候補リストに１５２に記録しておく（オプション）。そして、ステップＳ７に進み、アンテナ２で別のＡＰからの信号を検出したか否かを判別する。
【００９７】
なお、アンテナ２で検出された信号（以下“検出信号”）が現ＡＰからのものであるか別のＡＰからのものであるかは、検出信号に含まれる識別情報（各ＡＰに割り当てられたＩＤ）に基づいて判別できる。したがって、検出信号から有意の識別情報（ＡＰ用のＩＤ）を抽出できない場合や、たとえＡＰ用のＩＤを抽出できてもそれが現ＡＰと同じものである場合には、ステップＳ７でＮＯと判別され、ステップＳ１７（後述）に進む。
【００９８】
ステップＳ７でＹＥＳであれば、ステップＳ９に移って、検出信号の送信元を候補ＡＰとして登録する。具体的には、信号から抽出されたＩＤ，検出時刻および信号強度を切替え候補リスト１５２に記録する。次に、ステップＳ１１で、検出信から当該候補ＡＰへの接続情報を抽出する。そして、ステップＳ１３で、有意の接続情報を抽出できたか否かを判別し、ＮＯであればステップＳ１７に進む。
【００９９】
ステップＳ１３でＹＥＳであれば、その抽出した接続情報を切替え候補リスト１５２に追記する。そしてステップＳ１７に進む。したがって、切替え候補リスト１５２には、図１０（Ｂ）に示されるように、接続情報が既知の候補ＡＰと、接続情報が未知の候補ＡＰとが混在して登録され得る。
【０１００】
次に図１２を参照して、ステップＳ１７では、切替え候補リスト１５２を参照して、システムパラメータ１４６に記された有効期限（たとえば６０秒）を過ぎた候補ＡＰがあるか否かを判別する。ここでＮＯであればステップＳ２１に進む一方、ＹＥＳであれば、ステップＳ１９でそのような候補ＡＰを切替え候補リスト１５２から削除する。具体的には、各候補ＡＰの検出時刻を現在時刻と比較して、その差分がたとえば６０秒を超えている候補ＡＰを切替え候補リスト１５２から削除する。削除後、ステップＳ２１に進む。
【０１０１】
ステップＳ２１では、位置＆方向情報１５８（図９参照）の変化に注目して、移動ロボット１０の移動方向が設定値以上に変更されたか否かを判別し、ＮＯであればステップＳ１に戻る。なお、この設定値は、指向性アンテナの性能や周囲環境によるフェージング量などを考慮して事前に決定または動的に変更されるものであり、たとえば指向性アンテナの半値角の半分に設定される。ステップＳ２１でＹＥＳであれば、ステップＳ２３で切替え候補リスト１５２を初期化した後、ステップＳ１に戻る。
【０１０２】
したがって、アンテナ１で閾値以上の通信品質が得られている状態（図６では位置Ｐ１〜Ｐ２の間）では、上述したステップＳ１〜Ｓ２３からなるループが繰り返し実行され、これによって、切替え候補リスト１５２が最新の状態に保たれる。ステップＳ１の判別結果がＹＥＳからＮＯに変化する、すなわち通信品質が閾値を下回ると（図６ではＰ３，Ｐ４の各直後）、上記のループを抜けてステップＳ２５に移る。
【０１０３】
図１１に戻って、ステップＳ２５では、非通信状態の継続時間（変数Ｔ）が、システムパラメータ１４６に記された移動容認時間（たとえば５秒）以下であるか否かを判別し、ＮＯ（Ｔ＞５秒）であればステップＳ３９（後述）に進む。ステップＳ２５でＹＥＳ（Ｔ≦５秒）であれば、ステップＳ２７で変数Ｔをカウントアップした後、ステップＳ２９で切替え候補リスト１５２に候補ＡＰがあるか否かを判別する。ステップＳ２９でＮＯであればステップＳ３９に進む一方、ＹＥＳであれば切替え候補リスト１５２に存在する候補ＡＰの全てを試したか否かをステップＳ３１でさらに判別する。
【０１０４】
ステップＳ３１でＹＥＳであればステップＳ３９に進む一方、ＮＯであればステップＳ３３で、アンテナ１の接続相手を未試行の候補ＡＰに切替える。そしてステップＳ３５で、切替え後のアンテナ１による通信品質が閾値以上となったか否かを判別し、ここでもＮＯであれば、ステップＳ２５に戻って上記と同様の処理を繰り返す。なお、ステップＳ３５での閾値は、ステップＳ１での閾値と同じ値または相対的に大きい値を用いる。
【０１０５】
ステップＳ３５でＹＥＳであればステップＳ３７に移って、当該候補ＡＰつまりアンテナ１の新たな接続相手となった候補ＡＰを切替え候補リスト１５２から削除する。その後、ステップＳ３に戻って上記と同様の処理を繰り返す。
【０１０６】
したがって、アンテナ１で閾値以上の通信品質が得られない状態（図６では位置Ｐ３の直後からの通信途絶期間）では、上述したステップＳ２５〜Ｓ３５からなるループが繰り返し実行され、これによって、アンテナ１の接続相手の切替え候補リスト１５２に登録された候補ＡＰへの切替えが試みられる。移動容認時間内にいずれかの候補ＡＰへの切替えが成功して閾値以上の通信品質が得られると、先のステップＳ１〜Ｓ２３のループに戻る。切替え候補リスト１５２に１つも候補ＡＰが存在しない場合、または全ての候補ＡＰを試し終えた時点で閾値以上の通信品質が得られていない場合、もしくは移動容認時間が経過しても閾値以上の通信品質が得られなかった場合には、ステップＳ３９〜Ｓ４７を通じて、動き制御に割り込む形で停止制御が行われる。
【０１０７】
詳しくは、ステップＳ３９で、図１３に示す動き制御に割り込んで、左右の車輪モータ３６ａおよび３６ｂを強制停止させる。次に、ステップＳ４１で、通信可能領域からの逸脱を示す通知を遠隔操作装置１２に送信する。ただし、この通知は、現時点の通信品質によっては、遠隔操作装置１２に到達しない場合がある（ステップＳ４１は省略してもよい）。次に、引き続き左右の車輪モータ３６ａおよび３６ｂを制御して、ステップＳ４３で進行方向を（たとえば逆方向に）変更した後、ステップＳ４５で移動を再開させる。このとき、移動再開を示す通知を遠隔操作装置１２に送信してもよい。その後、ステップＳ２３で切り換え候補リスト１５２を初期化した後、ステップＳ１に戻って、上記と同様の処理を繰り返す。
【０１０８】
上記のような通信制御と並列的に、移動ロボット１０のＣＰＵ８０は、動き制御プログラム１４４に基づいて、図１３のフローに従う動き制御処理を実行する。図１３を参照して、まずステップＳ６１で、一時記憶領域１５０の初期化といった初期処理を実行する。次に、ステップＳ６３に進んで、各種センサ（４０，４６，５８，７０，１１２ａおよび１１２ｂ）からセンサ情報を取得し、ステップＳ６５で、一時記憶領域１５０に記憶されたセンサ情報１５６を更新する。更新後のセンサ情報１５６は、通信ＬＡＮボード１１４を介して、無線通信回路１１６により無指向性アンテナ１１８（アンテナ１）で遠隔操作装置１２に送信される。その後、ステップＳ６７に進む。
【０１０９】
ステップＳ６７では、サーバ１４から位置＆方向情報を受信したか否かを判別し、ＮＯであればステップＳ７１に進む。ステップＳ６７でＹＥＳであれば、ステップＳ６９で、一時記憶領域１５０記憶された位置＆方向情報１５８を更新した後、ステップＳ７１に進む。ステップＳ７１では、遠隔操作装置１２から操作情報を受信したか否かを判別し、ＮＯであればステップＳ７５に進む。ステップＳ７１でＹＥＳであれば、ステップＳ７３で、一時記憶領域１５０に記憶された操作情報１５６を更新した後、ステップＳ７５に進む。
【０１１０】
ステップＳ７５では、センサ情報１５６，位置＆方向情報１５８および操作情報１６０に基づいて動き制御情報１６２を生成し、そしてステップＳ７７で、この動き制御情報１６２に基づいて各種モータ（９２〜９８，１１０，３６ａおよび３６ｂ）を駆動する。その後、ステップＳ６３に戻って上記と同様の処理を繰り返す。これによって、移動ロボット１０の様々な動き、たとえば先述したような移動やコミュニケーション行動などが実現される。
【０１１１】
遠隔操作装置１２のＣＰＵ２０は、メモリ２２に記憶された制御プログラム（図示せず）に基づいて、図１３のフローに従う制御処理を実行する。図１３を参照して、まずステップＳ８１で、ディスプレイ３０に制御画面（図示せず）を初期表示し、次に、ステップＳ８３で、操作パネル２８への操作入力があったか否かを判別して、ＮＯであればステップＳ８７に進む。ステップＳ８３でＹＥＳであれば、ステップＳ８５で、その操作入力の内容を示す操作情報を、通信ＬＡＮボード２４を介して通信回路２６から移動ロボット１０に送信した後、ステップＳ８７に進む。ステップＳ８７では、通信ＬＡＮボード２４によって移動ロボット１０からのセンサ情報および／またはサーバ１４からの位置＆方向情報が受信されたか否かを判別し、ＮＯであればステップＳ８３に戻る。ステップＳ８７でＹＥＳであれば、ステップＳ８９でディスプレイ３０の制御画面を受信情報に基づいて更新した後、ステップＳ８３に戻る。そして、上記と同様の処理を繰り返す。
【０１１２】
これによって、ディスプレイ３０には、移動ロボット１０からのセンサ情報およびサーバ１４の位置＆方向情報を視覚的に示す制御画面が表示され、オペレータは、ディスプレイ３０の制御画面を見ながら、必要に応じて操作パネル２８を操作して、移動ロボット１０の遠隔制御を行うことができる。
【０１１３】
サーバ１４のＣＰＵ４０は、メモリ４２に記憶された制御プログラム（図示せず）に基づいて、図１４のフローに従う制御処理を実行する。図１４を参照して、まずステップＳ９１で、ＬＲＦ１４２および１４４から距離情報を取得する。取得した距離情報は、メモリ４２に書き込まれる。ステップＳ９３では、今回取得した距離情報をメモリ４２に記憶された前回の距離情報と比較して、変化があるか否かを判別し、ここでＮＯであればステップＳ９１に戻る。ステップＳ９３でＹＥＳであれば、ステップＳ９５に進んで、今回の距離情報および前回の距離情報に基づいて移動ロボット１０の位置および移動方向を計算する。そしてステップＳ９７で、計算結果を示す位置＆方向情報を、通信ＬＡＮボード４４を介して通信回路４６から移動ロボット１０および遠隔操作装置１２の各々に送信する。その後、ステップＳ９１に戻って上記と同様の処理を繰り返す。
【０１１４】
これにより、移動ロボット１０は、移動ロボット１０自身の位置および移動方向を知ることができるので、自律的な移動が行える。また、遠隔操作装置１２を操作するオペレータは、移動ロボット１０の位置および移動方向を知ることができるので、移動ロボット１０の遠隔操作が行える。なお、遠隔操作システム１００からサーバ１４を省略して、移動ロボット１０自身がセンサ情報１５６に基づいて位置および移動方向を計算してもよい。遠隔操作装置１２には、この計算結果（位置＆方向情報１５８）が送信される。
【０１１５】
以上から明らかなように、この実施例では、移動ロボット１０は、ＡＰ２０２〜２０８のいずれか１つを介して遠隔操作される。このような移動ロボット１０（あるいは移動ロボット操作用無線通信装置１０Ａ：図３参照）は、ＡＰ２０２〜２０８のいずれか１つと無線通信を行うための無指向性アンテナ１１８、移動ロボット１０の移動方向を向いた指向性を有する指向性アンテナ１２０、およびＣＰＵ８０を備える。ＣＰＵ８０は、ＡＰ２０２〜２０８のうち移動ロボット１０の移動方向沿いに位置するＡＰからの信号を指向性アンテナ１２０によって検出し（Ｓ７）、検出された信号に基づく情報を切替え候補リスト１５２に登録し（Ｓ９，Ｓ１５）、そして無指向性アンテナ１１８による通信品質が閾値を下回った場合に（Ｓ１：ＮＯ）、切替え候補リスト１５２の登録情報に基づいて無指向性アンテナ１１８の通信相手を切替える（Ｓ３３）。こうして、簡単な構成で、ハンドオーバ時の通信途絶を極力抑えることができる。
【０１１６】
また、無指向性アンテナ１２０による通信品質が閾値を下回っている状態で（Ｓ１：ＮＯ）、ＣＰＵ８０は、切替え候補リスト１５２に登録情報が存在しない場合には（Ｓ２９：ＮＯ）移動ロボット１０自身の移動を強制的に停止させる一方、登録情報が存在する場合には（Ｓ２９：ＹＥＳ）移動ロボット１０の移動を容認する（Ｓ４１）。したがって、移動ロボット１０が通信可能領域を逸脱したとき、移動先に無線基地局が存在するか否かで、その移動を容認するか強制停止させるかを決めるので、回復の目途が立たない通信途絶であれば移動は強制停止され、一時的な通信途絶であれば移動が容認される結果となり、移動ロボット１０の移動範囲を安全に広げることができる。
【０１１７】
なお、以上では、移動ロボット１０（移動ロボット操作用無線通信装置１０Ａ）について説明したが、この発明は、無人搬送機、電動カートなど様々な移動体（移動体操作用無線通信装置）に用いることができる。
【０１１８】
また、以上の説明では、電波を無指向性アンテナおよび指向性アンテナで検出したが、このよう組み合わせ以外に、電波と可変指向性アンテナ，指向性アンテナとの組み合わせや、電波と可変指向性アンテナ，可変指向性アンテナとの組み合わせも可能である。その他にも、可視光または赤外線と、フォトディテクタ，光検出器，受光器，光センサ，撮像素子（フォトダイオード，フォトトランジスタ，ＣＤＳ，ＣＣＤ）に光学レンズや曲面鏡で指向性を付与したものとを組み合わせてもよい。あるいは、テラヘルツ波と、ディテクタ，検出器，センサ，アンテナに誘電体レンズや曲面鏡で指向性の付与を行ったものとの組み合わせでの実施も可能である。
【符号の説明】
【０１１９】
１０  …移動ロボット
１２  …遠隔操作装置
１４  …サーバ
２０，４０，８０  …ＣＰＵ
２２，４２，８４  …メモリ
２４，４４，１１４  …通信ＬＡＮボード
２６，４６  …通信回路
１１６  …無線通信回路
１１８  …無指向性アンテナ（アンテナ１）
１２０  …指向性アンテナ（アンテナ２）
１４２，１４４  …ＬＲＦ（レーザレンジファインダ）
２００  …ネットワーク
２０２〜２０８  …ＡＰ（アクセスポイント）
【図１】
0005470516.tif 000002
【図２】
0005470516.tif 000003
【図３】
0005470516.tif 000004
【図４】
0005470516.tif 000005
【図５】
0005470516.tif 000006
【図６】
0005470516.tif 000007
【図７】
0005470516.tif 000008
【図８】
0005470516.tif 000009
【図９】
0005470516.tif 000010
【図１０】
0005470516.tif 000011
【図１１】
0005470516.tif 000012
【図１２】
0005470516.tif 000013
【図１３】
0005470516.tif 000014
【図１４】
0005470516.tif 000015
【図１５】
0005470516.tif 000016