(57)【要約】      （修正有）【課題】単一のシステムで制御されていなくても、あるいは、互いにコミュニケーションを取らなくても、先行する自律移動体を適切に追い越して、与えられたタスクを効率よく実行することのできる自律移動体を提供する。【解決手段】与えられたタスクを実行するために、計画された移動経路に沿って移動する自律移動体１００であって、他のタスクが与えられた他の自律移動体とその動作状況とを認識する外界センサ１３１、１３２と、外界センサによって当該他の自律移動体が当該移動経路を移動していることを認識した場合に、当該他の自律移動体を追い越すか否かを判断する追越判断部と、追越判断部の判断に基づいて移動ユニットを制御する移動制御部とを備える自律移動体。【選択図】図１
2019219733.tif 000002
【特許請求の範囲】
【請求項１】
与えられたタスクを実行するために、計画された移動経路に沿って移動する自律移動体であって、
他のタスクが与えられた他の自律移動体とその動作状況とを認識する外界センサと、
前記外界センサによって前記他の自律移動体が前記移動経路を移動していることを認識した場合に、前記他の自律移動体を追い越すか否かを判断する追越判断部と、
前記追越判断部の判断に基づいて移動ユニットを制御する移動制御部と
を備える自律移動体。
【請求項２】
前記追越判断部は、前記他の自律移動体が自機を追い越した後に前記移動経路を移動していると認識した場合は、前記他の自律移動体を追い越さないと判断する請求項１に記載の自律移動体。
【請求項３】
前記追越判断部は、前記他の自律移動体が、自機と同種の自律移動体でないと認識した場合は、前記他の自律移動体を追い越さないと判断する請求項１または２に記載の自律移動体。
【請求項４】
前記追越判断部は、前記動作状況から前記他の自律移動体が実行する前記他のタスクを認識できる場合は、自機に与えられたタスクとの比較に基づいて前記他の自律移動体を追い越すか否かを判断する請求項１から３のいずれか１項に記載の自律移動体。
【請求項５】
前記移動制御部は、前記追越判断部が前記他の自律移動体を追い越さないと判断した場合には、前記他の自律移動体と前記移動経路を共有する間は、前記他の自律移動体に追従するように前記移動ユニットを制御する請求項１から４のいずれか１項に記載の自律移動体。
【請求項６】
前記外界センサは、前記移動制御部が前記他の自律移動体を追い越すように前記移動ユニットを制御している間は、前記他の自律移動体に対する追越状況を認識し、
前記移動制御部は、前記追越状況に基づいて追越制御を継続するか断念するかを判断して前記移動ユニットを制御する請求項１から５のいずれか１項に記載の自律移動体。
【請求項７】
前記移動制御部は、前記追越制御を断念すると判断した場合には、前記他の自律移動体と前記移動経路を共有する間は、前記他の自律移動体に追従するように前記移動ユニットを制御する請求項６に記載の自律移動体。
【請求項８】
前記他の自律移動体を追い越す場合にその旨を外界に呈示する呈示部を備える請求項１から７のいずれか１項に記載の自律移動体。
【請求項９】
前記他の自律移動体と相互通信を行う通信装置を備え、
前記移動制御部は、前記相互通信が確立されている間は、前記追越判断部の判断によらず、前記相互通信の通信結果に基づいて前記移動ユニットを制御する請求項１から８のいずれか１項に記載の自律移動体。
【請求項１０】
与えられたタスクを実行するために、計画された移動経路に沿って移動する自律移動体の制御プログラムであって、
外界センサを用いて他のタスクが与えられた他の自律移動体とその動作状況とを認識する認識ステップと、
前記認識ステップによって前記他の自律移動体が前記移動経路を移動していることを認識した場合に、前記他の自律移動体を追い越すか否かを判断する追越判断ステップと、
前記追越判断ステップの判断に基づいて移動ユニットを制御する移動制御ステップと
をコンピュータに実行させる制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律移動体、および自律移動体の制御プログラムに関する。
【背景技術】
【０００２】
特定の環境下で複数の自律型移動ロボットが与えられたタスクをそれぞれ実行する技術が知られるようになってきた。例えば、特許文献１には複数の掃除ロボットが互いに異なる経路を移動しながら掃除を実行する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−１７４３７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特定の環境下で自律移動する複数の自律移動体が、例えば統括サーバにより単一のシステムで制御されている場合や、共通のフォーマットに則った通信手段により互いにコミュニケーションを取り合える場合であれば、それぞれが円滑な自律移動を行い得る。しかし、近年では互いに独立した自律移動体が特定の環境下で別個のタスクを実行する状況も増えてきている。このような状況においては、自律移動体同士で互いに協調して移動経路を調整することが難しく、円滑な自律移動が妨げられる。特に、２つの自律移動体が一つの移動経路を同じ方向に異なる速度で移動するような場合に、一方が他方の移動を妨げることになり、タスクの作業効率を著しく低下させてしまう場合があった。
【０００５】
本発明は、このような問題を解決するためになされたものであり、単一のシステムで制御されていなくても、あるいは、互いにコミュニケーションを取らなくても、先行する自律移動体を適切に追い越して、与えられたタスクを効率よく実行することのできる自律移動体およびその制御プログラムを提供するものである。
【課題を解決するための手段】
【０００６】
本発明の第１の態様における自律移動体は、与えられたタスクを実行するために、計画された移動経路に沿って移動する自律移動体であって、他のタスクが与えられた他の自律移動体とその動作状況とを認識する外界センサと、外界センサによって当該他の自律移動体が当該移動経路を移動していることを認識した場合に、当該他の自律移動体を追い越すか否かを判断する追越判断部と、追越判断部の判断に基づいて移動ユニットを制御する移動制御部とを備える。
【０００７】
このように外界センサで他の自律移動体とその動作状況を認識し、他の自律移動体と同じ移動経路を移動している場合に、当該他の自律移動体を追い越すか否かを判断しているので、単一のシステムで制御されていなくても、あるいは、互いにコミュニケーションを取らなくても、当該他の自律移動体を状況に応じて適切に追い越し、与えられたタスクを効率よく実行することができる。
【０００８】
上記の自律移動体において、追越判断部は、他の自律移動体が自機を追い越した後に移動経路を移動していると認識した場合は、他の自律移動体を追い越さないと判断しても良い。このように判断することにより、それぞれの自律移動体が追い越しあうという動作を防ぐことができる。また、追越判断部は、他の自律移動体が、自機と同種の自律移動体でないと認識した場合は、他の自律移動体を追い越さないと判断しても良い。他の自律移動体がどのような自律移動体であるか判断できない場合は、外界センサによって取得される外観情報に基づいて動作状況を正確に把握することが難しいことがある。他の自律移動体が同種の自律移動体でない場合に追越動作を行わないことで、より高い安全性を確保できる。
【０００９】
また、上記の自律移動体において、追越判断部は、動作状況から他の自律移動体が実行する他のタスクを認識できる場合は、自機に与えられたタスクとの比較に基づいて他の自律移動体を追い越すか否かを判断しても良い。例えば、他の自律移動体のタスクが急を要するものである場合は、他の自律移動体の移動を優先させることができる。このような判断を行うことにより、たとえ同じシステムの下で制御されていなくても、他の自律移動体と擬似的な協調動作を行うことができる。
【００１０】
また、上記の自律移動体において、移動制御部は、追越判断部が他の自律移動体を追い越さないと判断した場合には、他の自律移動体と移動経路を共有する間は、他の自律移動体に追従するように移動ユニットを制御することができる。追い越さない場合であっても他の自律移動体に追従すれば、自機のタスク実行に与える影響を抑制することができる。また、自律移動体が移動する環境において、２つの自律移動体が占有する作業空間を抑制することもできる。
【００１１】
また、上記の自律移動体において、外界センサは、移動制御部が他の自律移動体を追い越すように移動ユニットを制御している間は、他の自律移動体に対する追越状況を認識し、移動制御部は、追越状況に基づいて追越制御を継続するか断念するかを判断して移動ユニットを制御しても良い。さらに移動制御部は、追越制御を断念すると判断した場合には、他の自律移動体と移動経路を共有する間は、他の自律移動体に追従するように移動ユニットを制御しても良い。例えば、追越経路上に障害物を追越動作が完了する前に発見した場合においては、追越しを断念して移動の安全を確保することが好ましく、また、その場合に他の自律移動体の後方に付くことにより、目的地への移動も確実に行うことができる。
【００１２】
また、上記の自律移動体において、他の自律移動体を追い越す場合にその旨を外界に呈示する呈示部を備えると良い。呈示部の呈示により他の自律移動体が追越動作を認識すれば、当該他の自律移動体がそれに応じた移動動作を行ってくれることを期待できる。例えば移動速度を低下させたり、再度の追越しを行わなかったりといった移動動作を期待できる。
【００１３】
また、上記の自律移動体は、他の自律移動体と相互通信を行う通信装置を備え、移動制御部は、相互通信が確立されている間は、追越判断部の判断によらず、相互通信の通信結果に基づいて移動ユニットを制御しても良い。相互通信が可能であれば、通信を利用したコミュニケーションにより他の自律移動体と協調動作を行えば良い。互いにコミュニケーションを行ってそれぞれの移動動作を確定する方がより安全である。一方で、通信が確立されていない場合でも、自律移動体は、追越判断部の判断によって追越動作を安定的に行うことができる。
【００１４】
本発明の第２の態様における自律移動体の制御プログラムは、与えられたタスクを実行するために、計画された移動経路に沿って移動する自律移動体の制御プログラムであって、外界センサを用いて他のタスクが与えられた他の自律移動体とその動作状況とを認識する認識ステップと、認識ステップによって当該他の自律移動体が当該移動経路を移動していることを認識した場合に、当該他の自律移動体を追い越すか否かを判断する追越判断ステップと、追越判断ステップの判断に基づいて移動ユニットを制御する移動制御ステップと
をコンピュータに実行させる。
【００１５】
このように外界センサで他の自律移動体とその動作状況を認識し、他の自律移動体と同じ移動経路を移動している場合に、当該他の自律移動体を追い越すか否かを判断しているので、単一のシステムで制御されていなくても、あるいは、互いにコミュニケーションを取らなくても、当該他の自律移動体を状況に応じて適切に追い越し、与えられたタスクを効率よく実行することができる。
【発明の効果】
【００１６】
本発明により、単一のシステムで制御されていなくても、あるいは、互いにコミュニケーションを取らなくても、先行する自律移動体を適切に追い越して、与えられたタスクを効率よく実行することのできる自律移動体およびその制御プログラムを提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態に係る移動ロボットの外観斜視図である。
【図２】移動ロボットの制御ブロック図である。
【図３】一例における追越判断の状況を説明する図である。
【図４】追越動作中の状況を説明する図である。
【図５】移動ロボットの移動に関する処理フローを示すフロー図である。
【図６】他の例における追越判断の状況を説明する図である。
【図７】更に他の例における追越判断の状況を説明する図である。
【図８】他の例における追越動作中の状況を説明する図である。
【図９】追越動作を断念する状況を説明する図である。
【発明を実施するための形態】
【００１８】
以下、発明の実施の形態を通じて本発明を説明するが、特許請求の範囲に係る発明を以下の実施形態に限定するものではない。また、実施形態で説明する構成の全てが課題を解決するための手段として必須であるとは限らない。
【００１９】
図１は、本実施形態に係る移動ロボット１００の外観斜視図である。移動ロボット１００は、自律移動体の一例である。移動ロボット１００は、大きく分けて台車部１１０と本体部１２０によって構成される。
【００２０】
台車部１１０は、円筒形状の筐体内に、それぞれが走行面に接地する２つの駆動輪１１１と１つのキャスター１１２とを支持している。２つの駆動輪１１１は、互いに回転軸芯が一致するように配設されている。それぞれの駆動輪１１１は、不図示のモータによって独立して回転駆動される。駆動輪１１１は、移動ロボットを移動させるための移動ユニットの一例である。キャスター１１２は、従動輪であり、台車部１１０から鉛直方向に延びる旋回軸が車輪の回転軸から離れて車輪を軸支するように設けられており、台車部１１０の移動方向に倣うように追従する。
【００２１】
移動ロボット１００は、例えば、２つの駆動輪１１１が同じ方向に同じ回転速度で回転されれば直進し、逆方向に同じ回転速度で回転されれば台車部１１０の２つの駆動輪１１１のほぼ中央を通る鉛直軸周りに旋回する。すなわち、移動ロボット１００は、２つの駆動輪１１１の回転方向、回転速度がそれぞれ制御されることにより、任意の方向へ並進、旋回することができる。
【００２２】
台車部１１０は、上面の周縁部にレーザスキャナ１３２を備える。レーザスキャナ１３２は、水平面内の一定の範囲をステップ角ごとにスキャンして、それぞれの方向に障害物が存在するか否かを出力する。さらに、障害物が存在する場合には、その障害物までの距離を出力する。
【００２３】
本体部１２０は、主に、台車部１１０の上面に搭載された胴部１２１、胴部１２１の上面に載置された頭部１２２、胴部１２１の側面に支持されたアーム１２３、アーム１２３の先端部に設置されたハンド１２４、およびＬＥＤバー１４２を備える。アーム１２３とハンド１２４は、不図示のモータを介して駆動され、様々な物体を制御された姿勢で把持する。図は、搬送物の一例として容器を把持している様子を示す。胴部１２１は、不図示のモータの駆動力により、台車部１１０に対して鉛直軸周りに回転することができる。したがって、移動ロボット１００は、把持部が搬送物を把持して特定方向を向く姿勢を保ったまま任意の方向へ移動することもできる。
【００２４】
ＬＥＤバー１４２は、複数のＬＥＤおよび導光材を有する発光装置であり、ＬＥＤのそれぞれが鉛直軸に対して放射方向へ発光するように、胴部１２１の上部の円環状の外周部に設置されている。ＬＥＤバー１４２は、発光色や点滅周期を変化させることができ、そのパターンにより移動ロボット１００の動作状況やタスクに関する情報を周囲に呈示することができる。また、胴部１２１には、コントロールユニット１９０が設けられている。コントロールユニット１９０は、後述の制御部とメモリ等を含む。
【００２５】
頭部１２２は、主に、ステレオカメラ１３１および表示パネル１４１を備える。ステレオカメラ１３１は、同じ画角を有する２つのカメラユニットが互いに離間して配置された構成を有し、それぞれのカメラユニットで撮像された画像を画像データとして出力する。
【００２６】
表示パネル１４１は、例えば液晶パネルであり、キャラクターの顔をイラストで表示したり、移動ロボット１００に関する情報をテキストやアイコンで呈示したりする。表示パネル１４１にキャラクターの顔を表示すれば、表示パネル１４１が擬似的な顔部であるかの印象を周囲の観察者に与えることができる。また、表示パネル１４１は、表示面にタッチパネルを有し、ユーザからの指示入力を受け付けることができる。
【００２７】
頭部１２２は、不図示のモータの駆動力により、胴部１２１に対して鉛直軸周りに回転することができる。したがって、ステレオカメラ１３１は、任意の方向の対象物を撮影することができ、また、表示パネル１４１は、任意の方向へ向けて表示内容を呈示することができる。なお、以降の説明においては、図示するように、移動ロボット１００が移動する移動平面をｘｙ平面、移動平面に対する鉛直軸方向をｚ軸と定める。
【００２８】
図２は、移動ロボット１００の制御ブロック図である。制御部２００は、例えばＣＰＵであり、本体部１２０のコントロールユニット１９０に格納されている。台車駆動ユニット２１０は、駆動輪１１１を駆動するための駆動回路やモータを含む。制御部２００は、台車駆動ユニット２１０へ駆動信号を送ることにより、駆動輪１１１の回転制御を実行する。また、制御部２００は、台車駆動ユニット２１０からエンコーダ等のフィードバック信号を受け取って、台車の移動方向を把握する。台車駆動ユニット２１０は、制御部２００と協働して、移動制御部としての機能を担う。
【００２９】
上体駆動ユニット２２０は、アーム１２３およびハンド１２４を含む把持部、胴部１２１および頭部１２２を駆動するための駆動回路やモータを含む。制御部２００は、上体駆動ユニット２２０へ駆動信号を送ることにより、把持制御や、胴部１２１および頭部１２２の回転制御を実行する。また、制御部２００は、上体駆動ユニット２２０からエンコーダ等のフィードバック信号を受け取って、把持部の状態や胴部１２１および頭部１２２の向きを把握する。
【００３０】
センサユニット１３０は、他の移動ロボットや障害物、周囲に存在する人物、把持している搬送対象物などを検出する各種センサを含み、台車部１１０および本体部１２０に分散して配置されている。ステレオカメラ１３１およびレーザスキャナ１３２は、センサユニット１３０を構成する要素である。制御部２００は、センサユニット２３０に制御信号を送ることにより、各種センサを駆動してその出力信号や出力データを取得する。制御部２００は、これらの出力信号や出力データを解析して、他の移動ロボット１００やその動作状況などを認識する。すなわち、センサユニット１３０は、制御部２００と協働して、他の自律移動体やその動作状況などを認識する外界センサとしての機能を担う。
【００３１】
メモリ２５０は、不揮発性の記憶媒体であり、例えばソリッドステートドライブが用いられる。メモリ２５０は、移動ロボット１００を制御するための制御プログラムの他にも、制御に用いられる様々なパラメータ値、関数、ルックアップテーブル、比較画像データ等を記憶している。メモリ２５０は、移動ロボット１００が自律移動する環境を表現する環境地図を格納していても良い。
【００３２】
ユーザＩＦ２６０は、ユーザが移動ロボット１００へ指示を入力する入力部であり、表示パネル１４１に重畳されたタッチパネルはその一部である。また、物理的なスイッチに限らず、マイクを用いた音声入力や、ステレオカメラ１３１を用いたジェスチャー入力などをユーザＩＦ２６０として組み込んでも良い。
【００３３】
呈示ユニット１４０は、ユーザや周囲に存在する人物、他の移動ロボットなどに移動ロボット１００の動作状況やタスクに関する情報を周囲に直接的または間接的に呈示するユニットであり、台車部１１０および本体部１２０に分散して配置されている。表示パネル１４１およびＬＥＤバー１４２は、呈示ユニット１４０を構成する要素である。呈示ユニット１４０は、他にもスピーカや振動子などを含んでも良い。制御部２００は、呈示ユニット１４０に制御信号を送ることにより、それぞれの要素を動作させる。
【００３４】
制御部２００は、制御に関わる様々な演算を実行する機能演算部としての役割も担う。追越判断部２０１は、移動ロボット１００が移動しようとする移動経路上を他の自律移動体が先行して移動していることを外界センサによって認識した場合に、当該他の自律移動体を追い越すか否かを判断する。具体的な判断手法については後に詳述する。
【００３５】
近時、複数の移動ロボットを自律移動させて、さまざまなタスクを同時並行的に実行させたいという要望が高まっている。例えば工場などの管理された環境下で複数の移動ロボットにそれぞれ別個のタスクを実行させる場合には、それらの移動ロボットを統括的に管理するサーバを設置して、サーバがそれぞれの移動ロボットの移動やタスクの実行を制御するようにシステムを構築できる。サーバで統括的な管理を行わなくても、共存する人間が制限されているような管理された環境においては、共通のフォーマットに則った通信手段により互いにコミュニケーションを取り合える移動ロボットのみを利用することもできる。この場合は、それぞれの移動ロボットが通信手段によって互いにコミュニケーションを取り合い、移動経路やタスクの実行を調整し合うことができる。
【００３６】
しかし、複数の移動ロボットに別々のタスクを実行させたい環境は、年々拡がりを見せている。例えば、空港であったり、ショッピングモールであったり、テーマパークであったりする。このような多くの人が集う環境においては、移動ロボットに要求されるタスクもさまざまであり、単一のシステムで管理される移動ロボットのみでこれらのタスクを全て賄うことが困難になってきた。また、困難なだけでなく、例えば、荷物を運搬する移動ロボットと清掃を行う移動ロボットとを単一のシステムで管理することに合理性はあまり認められない。そこで、単一のシステムや共通の通信手段で括られる群に属さずとも、他の移動ロボットと干渉せず、与えられたタスクを円滑に実行する移動ロボットが望まれるようになってきている。本実施形態における移動ロボット１００は、このような要望に応えるものである。
【００３７】
上述のように、移動ロボット１００は、他の移動ロボットとコミュニケーションを取るための通信装置を備えていない。また、複数の移動ロボットを統括的に管理するサーバから指令を受ける通信装置も備えていない。このような移動ロボット１００においては、与えられたタスクを円滑かつ着実に実行するために、自機が移動しようとする移動経路上を先行して移動する他の自律移動体が存在する場合に、どのように動作するかがひとつの重要なポイントとなる。このような場合における移動ロボット１００の動作を、具体例を用いて説明する。
【００３８】
図３は、一例における追越判断の状況を説明する図である。ここで、移動ロボット１０１は、搬送物９０１を運搬するタスクを与えられた他の移動ロボットであり、上述の移動ロボット１００と同様の構成を備えるものとする。また、移動ロボット１０２は、搬送物９０２を搬送するタスクを与えられた自機であり、やはり上述の移動ロボット１００と同様の構成を備えるものとする。移動ロボット１０１と移動ロボット１０２は、独立してそれぞれのタスクを実行しており、通信手段を用いて互いにコミュニケーションを取り合うことはない。
【００３９】
他の移動ロボットである移動ロボット１０１は、ｘ軸方向へ移動している。自機である移動ロボット１０２も、同一ライン上を移動しており、先行する移動ロボット１０１に後方から接近しつつある。すなわち、移動ロボット１０１が計画した移動経路と移動ロボット１０２が計画した移動経路とが偶発的に重なってしまい、しかも低速で移動する移動ロボット１０１が、高速で移動する移動ロボット１０２よりも先行している状況である。
【００４０】
自機である移動ロボット１０２は、ステレオカメラ１３１やレーザスキャナ１３２で外界の状況を観察しながら自律移動している。制御部２００は、自律移動中に、ステレオカメラ１３１が捉えた画像を画像解析することにより前方に移動ロボット１０１を認識すると、続いてその動作状況を確認する。確認すべき動作状況は、予め複数の項目として設定されており、制御部２００は、センサユニット１３０の出力を利用して、移動ロボット１０１の動作状況を確認する。制御部２００は、確認すべき動作状況の一つとしてまず、移動ロボット１０１の移動方向とその速度を確認する。
【００４１】
制御部２００は、ステレオカメラ１３１から画像データを連続的に取得することにより、その差分から、移動ロボット１０１の移動方向とその速度を演算する。あるいは、レーザスキャナ１３２の出力を連続的に取得することにより、移動ロボット１０１の移動方向とその速度を演算しても良い。制御部２００は、認識した移動ロボット１０１の形状や色などに応じて、いずれのセンサに基づいて移動ロボット１０１の移動方向とその速度を演算するかを選択しても良い。
【００４２】
自機（移動ロボット１０２）が計画している移動経路上を移動ロボット１０１が先行して自機よりも低速で同じ方向に進んでいると制御部２００が認識した場合は、続いて、追越判断部２０１が、移動ロボット１０１を追い越すか否かを判断する。ここで、「同じ方向に進んでいる」とは、少なくとも自機が計画経路をそのまま進むことを想定した場合に、移動ロボット１０１との接触を避けるために一定時間に亘って自機の移動が制約される場合を含むものであり、それぞれの計画経路が厳密に一致していなくても良い。
【００４３】
追越判断部２０１は、追い越すか否かの判断を、確認した移動ロボット１０１の動作状況を踏まえて行う。例えば、移動ロボット１０１のＬＥＤバー１４２が追越しを許容する発光パターンで発光していることを認識した場合は、追い越すことを前提に他の動作状況を確認する。また、移動ロボット１０１が搬送する搬送物９０１が進行方向に対して側方に大きくせり出していることを認識した場合には、追越しを断念する。
【００４４】
追越判断部２０１は、移動ロボット１０１の動作状況を確認して追越可能と判断したら、次に、追越経路を生成できるか否かを判断する。追越経路は、移動ロボット１０１の移動を避けて、その側方を迂回する経路である。壁などの障害物が迫っていて追越経路を生成できない場合には、追越しを断念する。追越しを断念する場合には、制御部２００は、速度を落とし、当初の移動経路に沿って移動ロボット１０１に追従するように、台車駆動ユニット２１０を制御する。
【００４５】
追越判断部２０１が、移動ロボット１０１の動作状況から追越可能と判断し、追越経路の生成に成功して追越動作を実行すると判断したら、制御部２００は、自機が追越経路に沿って移動するように、台車駆動ユニット２１０を制御する。図４は、追越動作中の状況を説明する図である。
【００４６】
制御部２００は、追越動作中には、表示パネル１４１に追越動作中であることを周囲に示すアイコンや文字を表示させる。このとき、周囲の人や移動ロボットが認識しやすいように、上体駆動ユニット２２０に制御信号を送って頭部１２２を回転させても良い。また、制御部２００は、追越動作中を表す発光パターンでＬＥＤバー１４２を発光させる。
【００４７】
移動ロボット１０２のこのような呈示により、追い越される側の移動ロボット１０１は、移動ロボット１０２と同種の移動ロボットであれば、コミュニケーションを取るための通信装置を互いに備えていなくても、追い越されることを認識できる。すなわち、移動ロボット１０２の表示パネル１４１の表示やＬＥＤバー１４２の発光パターンをステレオカメラ１３１で捉えることにより、移動ロボット１０２の追越動作を認識できる。移動ロボット１０１は、追い越されることを認識した場合に、速度を低下させるなどの移動制御を行っても良い。
【００４８】
次に、移動ロボット１００の移動に関する処理フローについて説明する。図５は、移動ロボット１００の移動に関する処理フローを示すフロー図である。フローは、タスクが与えられて開始し、目的地に到着して終了するまでを表す。
【００４９】
制御部２００は、ステップＳ１０１で、タスクを実行するために必要な移動の移動経路を計画する。移動経路の計画は、例えば、メモリ２５０に格納された環境地図を参照して行う。例えば搬送物を搬送するタスクであれば、搬送先はユーザによって指定されるので、制御部２００は、環境地図を参照して現在地から搬送先までの移動経路を計画する。現在地は、例えば、センサユニット１３０として搭載するＧＰＳユニットの出力により認識される。
【００５０】
制御部２００は、ステップＳ１０２で、計画に沿って自機が移動するように、台車駆動ユニット２１０を制御する。制御部２００は、移動中はセンサユニット１３０からの出力信号や出力データを継続的に取得して、障害物や接近する移動体が存在しないかを監視する。障害物を発見した場合には、回避する経路を生成して当該障害物を回避する。制御部２００は、ステップＳ１０３で、接近する移動体が存在するか否かを確認し、存在しなければステップＳ１１４へ進む。存在すればステップＳ１０４へ進む。
【００５１】
制御部２００は、ステップＳ１０４で、発見した移動体が自律移動体であるか否かを判断する。自律移動体でないと判断したら、発見した対象が人である場合を含め、当該対象の移動を優先させるべく、ステップＳ１０５で自機の移動を停止させる。そして、ステップＳ１０６で当該対象である移動体が退去したと判断できるまで、停止状態を維持して待機する。移動体が退去したと判断できたら、ステップＳ１１４へ進む。
【００５２】
制御部２００は、ステップＳ１０４で、発見した移動体が自律移動体であると判断したら、ステップＳ１０７へ進み、当該自律移動体の動作状況を確認する。制御部２００は、動作状況を確認した結果から、ステップＳ１０８で、当該自律移動体が自機と同じ方向へ移動しているか否かを判断する。同じ方向への移動でないと判断した場合は、ステップＳ１０９へ進む。制御部２００は、ステップＳ１０９で、当該自律移動体と衝突する可能性を演算し、その結果、衝突する可能性があると判断した場合には、ステップＳ１１０へ進み、回避動作を実行する。回避動作は、当該自律移動体の動作に合わせて、自機が停止する場合も含む。ステップＳ１１０で回避動作が完了したら、あるいは、ステップＳ１０９で衝突する可能性がないと判断した場合には、ステップＳ１１４へ進む。
【００５３】
制御部２００は、ステップＳ１０８で、当該自律移動体が自機と同じ方向へ移動していると判断した場合には、ステップＳ１１１へ進む。追越判断部２０１は、ステップＳ１１１で、当該自律移動体を追い越すか否かを、図３を用いて説明したように判断する。追越動作を行わないと判断した場合には、ステップＳ１１２へ進み、当該自律移動体に追従し、ステップＳ１１４へ進む。追越動作を行うと判断した場合には、ステップＳ１１３へ進み、図４を用いて説明したように追越動作を実行し、ステップＳ１１４へ進む。
【００５４】
制御部２００は、ステップＳ１１４で、目的地に到着したか否かを確認する。目的地に到着していない場合には、ステップＳ１０２へ戻り、移動制御を継続する。目的地に到着した場合には、一連の移動制御を終了する。
【００５５】
ここで、ステップＳ１１１の判断は、さまざまな条件を考慮することが可能である。追越判断部２０１は、例えば、当該自律移動体が自機を追い越した後に同じ移動経路を先行するものであると認識した場合には、当該自律移動体を追い越さないと判断する。追越動作を行ってしまうと、さらに当該自律移動体が自機を追い越そうとすることも想定される。したがって、一度追い越された移動体に対しては追越動作を行わないことにより、互いに追い越しあうことを防ぐ。追越動作を避ける状況について、さらにいくつかの例を説明する。
【００５６】
図６は、他の例における追越判断の状況を説明する図である。図６の状況は、先行する他の移動ロボット１０３が、自機である移動ロボット１０２とは異種の自律移動体である点で図３の状況と異なる。移動ロボット１０３は、移動ロボット１０２とは異なる性質を有し、その性質に応じたタスクが与えられている。もちろん、移動ロボット１０３にタスクを与えるユーザは、移動ロボット１０２のユーザとは異なる場合もある。
【００５７】
このような状況において、制御部２００が、ステップＳ１０４で移動ロボット１０３が自機と同種の自律移動体でないと認識し、その後ステップＳ１１１まで進んだ場合は、追越判断部２０１は、移動ロボット１０３を追い越さないと判断する。対象が他種の自律移動体である場合には、センサユニット１３０から取得される外観情報に基づいて動作状況を正確に把握することが難しいことがあるので、このように追越動作を行わないことで高い安全性を確保できる。ただし、他種の自律移動体であっても、その外観情報から動作状況を正確に把握することができる場合には、追越判断部２０１は、当該他種の自律移動体を追い越すと判断しても良い。
【００５８】
図７は、更に他の例における追越判断の状況を説明する図である。図７の状況は、先行する他の移動ロボット１０４が、自機である移動ロボット１０２のタスクに比べて、緊急度の高いタスクを実行している点で図３の状況と異なる。
【００５９】
移動ロボット１０２が先行する移動ロボット１０４の動作状況を確認する段階において、移動ロボット１０２の制御部２００は、移動ロボット１０４のタスクに関する情報を認識できる場合がある。図示するように、移動ロボット１０４は、与えられたタスクが例えば所定の棚から救命器具を取ってくるような救急タスクである場合に、表示パネル１４１に救急を示すアイコンを表示し、ＬＥＤバー１４２で救急を表すパターン光を発光する。さらには、頭部１２２を回転させる。
【００６０】
自機である移動ロボット１０２の制御部２００は、このような表示や発光を認識し、移動ロボット１０４が救急タスクを実行していることを認識する。そして、追越判断部２０１は、自機のタスクである搬送物の通常搬送と比較して、救急タスクの優先度が高いことを確認し、追越動作を行わないと判断する。タスクの優先度は、例えばメモリ２５０にルックアップテーブルとして予め格納されており、追越判断部２０１は、そのテーブルを参照して優先度の高低を確認する。
【００６１】
移動ロボット１０２の制御部２００は、追越判断部２０１が追越動作を行わないと判断した場合に、移動ロボット１０４と移動経路を共有する間は、移動ロボット１０４に追従するように台車駆動ユニット２１０を制御する。例えば、図示するように、時刻Ｔ＝ｔ１で追越しをしないと判断して追従を開始すると、時刻Ｔ＝ｔ２で移動ロボット１０４が計画経路から逸れていったと判断するまで、追従を継続する。
【００６２】
なお、自機のタスクの方が移動ロボット１０４のタスクよりも優先度が高い場合には、他の動作状況が許容する限り、追越動作を実行する。このような判断および移動制御を行うことにより、たとえそれぞれの移動ロボットが同じシステムの下で制御されていなくても、また、コミュニケーションを取るための通信装置を互いに備えていなくても、これらの移動ロボットは、擬似的な協調動作を行うことができる。
【００６３】
次に、追越動作の例外処理について説明する。図８は、他の例における追越動作中の状況を説明する図であり、図９は、追越動作を断念する状況を説明する図である。
【００６４】
図８は、図４と同様に自機である移動ロボット１０２が先行する移動ロボット１０１を追い越す様子を表しているが、追越経路上に障害物９１０が存在する様子を表している点で図４と異なる。
【００６５】
制御部２００は、追越し中もセンサユニット１３０からの出力信号や出力データを継続的に取得し、移動ロボット１０１に対する追越状況や周囲の環境を認識する。そして、追越動作が完了する前に、例えばレーザスキャナ１３２が追越経路上に障害物９１０を検出した場合には、追越制御を断念する。制御部２００は、追越制御を断念すると、図９に示すように、移動ロボット１０１の移動状況をステレオカメラ１３１やレーザスキャナ１３２で確認し、その後を追従するように台車駆動ユニット２１０を制御する。そして、移動経路を共有する間は、移動ロボット１０１に追従する。追越し経路上に障害物９１０を発見した場合においては、追越しを断念して移動の安全を確保することが好ましく、また、その場合に移動ロボット１０１の後方に付くことにより、目的地への移動も確実に行うことができる。
【００６６】
なお、追越動作を断念した場合は、制御部２００は、表示パネル１４１にその旨を示すアイコンを表示しても良い。移動ロボット１０１は、移動ロボット１０２の追越動作断念を認識した場合に、追越しに備えて低下させていた移動速度を元に戻すなどの制御を行っても良い。また、制御部２００は、追越経路上に障害物を発見した場合に限らず、追越動作を妨げる何れかの状況を認識した場合に、追越動作を断念する。例えば、計画した追越経路を走行しても先行する移動ロボット１０１を追い越しきれない場合には、追越動作を断念する。
【００６７】
以上、移動ロボット１００により本実施形態を説明したが、本実施形態を実施し得る移動ロボットは、通信装置を備えないものに限らない。例えば、一つの群に属する複数の移動ロボットは、通信装置を使ってコミュニケーションを取ってそれぞれの移動を互いに調整し、群に属さない他の移動ロボットを認識した場合に、上記の制御を行うようにしても良い。あるいは、他の移動ロボットと相互通信が確立されている間は、追越判断部２０１の判断によらず当該相互通信の通信結果に基づいて移動制御を行い、相互通信が確立されていない場合に、追越判断部２０１の判断で移動制御を行うようにしても良い。他の移動ロボットと通信装置を介してコミュニケーションを取る場合は、サーバを介しても良い。その場合、サーバが主体的にコミュニケーションを制御しても構わない。
【符号の説明】
【００６８】
１００、１０１、１０２、１０３、１０４  移動ロボット、１１０  台車部、１１１  駆動輪、１１２  キャスター、１２０  本体部、１２１  胴部、１２２  頭部、１２３  アーム、１２４  ハンド、１３０  センサユニット、１３１  ステレオカメラ、１３２  レーザスキャナ、１４０  呈示ユニット、１４１  表示パネル、１４２  ＬＥＤバー、１９０  コントロールユニット、２００  制御部、２０１  追越判断部、２１０  台車駆動ユニット、２２０  上体駆動ユニット、２５０  メモリ、２６０  ユーザＩＦ、９０１、９０２  搬送物、９１０  障害物
【図１】
2019219733.tif 000003
【図２】
2019219733.tif 000004
【図３】
2019219733.tif 000005
【図４】
2019219733.tif 000006
【図５】
2019219733.tif 000007
【図６】
2019219733.tif 000008
【図７】
2019219733.tif 000009
【図８】
2019219733.tif 000010
【図９】
2019219733.tif 000011