(57)【要約】      （修正有）【課題】移動可能空間外に移動しないように追従移動することにより、第三者に対する安全性を確保する。【解決手段】飛行空間内において移動物体Ｍと所定の離間距離を保って追従飛行する自律飛行ロボットにおいて、移動物体位置と自己位置とを推定し、移動物体位置から離間距離だけ離れた周囲の位置に複数の移動候補位置Ｐｃを設定し、各移動候補位置を評価した結果からそのうちの一つを移動目標位置に設定し、自己位置から前記移動目標位置へ移動するよう制御する。評価に際し、自己位置が移動可能空間内に位置しているとき、移動可能空間内の領域であって障害物の近傍にない移動候補位置についてのみ前記評価を行う。【選択図】図７
2014123306.tif 000002
【特許請求の範囲】
【請求項１】
飛行空間内において移動物体と所定の離間距離を保って追従飛行する自律飛行ロボットにおいて、
前記飛行空間における移動可能空間及び該飛行空間内にある障害物を表した飛行空間マップを記憶した記憶部と、
前記移動物体の移動物体位置と自律飛行ロボットの自己位置とを推定する処理を行う位置推定手段と、
前記移動物体位置から前記離間距離だけ離れた周囲の位置に複数の移動候補位置を設定する移動候補位置設定手段と、
前記各移動候補位置を評価した結果から該移動候補位置のうちの一つを移動目標位置に設定する処理を行う移動目標位置設定手段と、
前記自己位置から前記移動目標位置へ移動するよう制御する処理を行う移動制御手段と、を有し、前記各処理を逐次繰り返すことによって追従移動するものであって、
前記移動目標位置設定手段は、
前記飛行空間マップ及び前記自己位置から該自己位置が前記移動可能空間内に位置しているとき、前記移動可能空間内の領域であって前記障害物の近傍にない前記移動候補位置についてのみ前記評価を行うことを特徴とする自律飛行ロボット。
【請求項２】
前記移動目標位置設定手段は、前記自己位置が前記移動可能空間外に位置しているとき、前記移動候補位置に関わらず、該移動可能空間内における前記障害物の存在しない領域内の位置であって該自己位置から最も近い位置である復帰位置に前記移動目標位置を設定する請求項１に記載の自律飛行ロボット。
【請求項３】
前記移動目標位置設定手段は、前記復帰位置であって所定高度の位置である緊急着陸位置に前記移動目標位置を設定し、
前記移動制御手段は、前記自己位置が前記移動目標位置設定手段にて設定した前記緊急着陸位置にあるとき飛行高度を徐々に下げる着陸制御を行う請求項２に記載の自律飛行ロボット。
【請求項４】
前記移動目標位置設定手段は、前記位置推定手段にて水平面上における前記自己位置を推定できないとき、前記移動目標位置を設定する処理をスキップするスキップ制御を行い、
前記移動制御手段は、前記移動目標位置設定手段にて前記スキップ制御が行われたとき、飛行高度を徐々に下げる着陸制御を行う請求項１から請求項３の何れか一項に記載の自律飛行ロボット。
【請求項５】
外部装置との間で通信を行う通信部を更に有し、
前記移動制御手段は、前記通信部にて前記外部装置と通信できなくなったとき、飛行高度を徐々に下げる着陸制御を行う請求項１から請求項４の何れか一項に記載の自律飛行ロボット。
【請求項６】
前記飛行制御手段にて前記着陸制御が行われたとき、音又は光によって周囲に警報を出す報知部を更に有する請求項１から請求項５の何れか一項に記載の自律飛行ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、侵入者等の移動物体に所定の距離を保ちつつ追従飛行する自律飛行ロボットに関し、特に、所定の移動可能空間外の位置に移動しないように追従飛行する自律飛行ロボットに関する。
【背景技術】
【０００２】
従来、追従対象に対して自律的に追従しながら移動する自律移動ロボットが提案されている。例えば、特許文献１には、測距センサによる距離データ及びカメラ画像に基づいて追従対象を認識し、当該追従対象との間の相対距離を算出して、相対位置の変化に応じて追従対象に対して追従移動するよう移動制御する自律移動ロボットが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−１２６８０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術では、自律移動ロボットが追従移動可能な範囲を考慮していない。そのため、上記の従来技術の自律移動ロボットは、追従対象を認識している限り、当該追従対象に対して追従移動し続ける。ところで、自律移動ロボットを公共空間に移動させた場合、通行人や通行車両などの第三者に対して危険を及ぼす可能性があるため、通常、自律移動ロボットの移動を利用者の居住する敷地内等の限定された移動可能空間内に限定することを考慮する必要がある。特に、自律移動ロボットが空間内を自由に移動する自律飛行ロボットであるとき、墜落時や接触時等に第三者に及ぼす被害が大きいため、安全対策へのニーズが高かった。そこで、本発明は、自律飛行ロボットが所定の移動可能空間外に移動しないように、追従対象に対して追従移動することを目的とする。
【課題を解決するための手段】
【０００５】
かかる課題を解決するために、飛行空間内において移動物体と所定の離間距離を保って追従飛行する自律飛行ロボットにおいて、前記飛行空間における移動可能空間及び該飛行空間内にある障害物を表した飛行空間マップを記憶した記憶部と、前記移動物体の移動物体位置と自律飛行ロボットの自己位置とを推定する処理を行う位置推定手段と、前記移動物体位置から前記離間距離だけ離れた周囲の位置に複数の移動候補位置を設定する移動候補位置設定手段と、前記各移動候補位置を評価した結果から該移動候補位置のうちの一つを移動目標位置に設定する処理を行う移動目標位置設定手段と、前記自己位置から前記移動目標位置へ移動するよう制御する処理を行う移動制御手段と、を有し、前記各処理を逐次繰り返すことによって追従移動するものであって、前記移動目標位置設定手段は、前記飛行空間マップ及び前記自己位置から該自己位置が前記移動可能空間内に位置しているとき、前記移動可能空間内の領域であって前記障害物の近傍にない前記移動候補位置についてのみ前記評価を行うことを特徴とする自律飛行ロボットを提供する。
【０００６】
かかる構成により、本発明の移動目標位置設定手段は、自己位置が移動可能空間内に位置しているとき、移動物体位置から所定の離間距離だけ離れた周囲の位置に設置された複数の移動候補位置において、移動可能空間内の位置であって障害物の近傍の領域（障害物及び障害物に近接する領域）にない移動候補位置を評価し、評価結果からその中の一つを移動目標位置に設定する。すなわち、移動可能空間の外、及び障害物の近傍に位置する移動候補位置は評価対象とならないため、当該移動候補位置が移動目標位置として設定されることはない。したがって、自律飛行ロボットは、移動可能空間の外や障害物の近傍の位置に向かって移動しないように移動物体に対して所定の離間距離を保って追従移動することができる。これにより、敷地外などの移動可能空間外に存在する第三者にできるだけ接触しないようにすることができ、第三者に対する安全性を確保することができる。
【０００７】
また、本発明の好ましい態様として、前記移動目標位置設定手段は、前記自己位置が前記移動可能空間外に位置しているとき、前記移動候補位置に関わらず、該移動可能空間内における前記障害物の存在しない領域内の位置であって該自己位置から最も近い位置である復帰位置に前記移動目標位置を設定するものとする。
【０００８】
かかる構成により、本発明の移動目標位置設定手段は、自己位置が移動可能空間外に位置しているとき、移動候補位置設定手段にて設定された移動候補位置を評価することなく、自己位置から最も近い移動可能空間内の障害物の存在しない位置（復帰位置）を移動目標位置に設定する。これにより、自律飛行ロボットは、突風等の突発的な外乱などにより、移動可能空間の外に流されてしまった場合であっても、最短の距離で移動可能空間内に戻るよう移動制御するため、敷地外などの移動可能空間外に存在する第三者に対する安全性を確保することができる。
【０００９】
また、本発明の好ましい態様として、前記移動目標位置設定手段は、前記復帰位置であって所定高度の位置である緊急着陸位置に前記移動目標位置を設定し、前記移動制御手段は前記自己位置が前記移動目標位置設定手段にて設定した前記緊急着陸位置にあるとき飛行高度を徐々に下げる着陸制御を行うものとする。
【００１０】
かかる構成により、前記移動目標位置設定手段は、例えば、自己位置から最も近い移動可能空間内の障害物の存在しない位置（復帰位置）であって、早期に着陸可能な低い位置（緊急着陸位置）に移動目標位置を設定する。これにより、突風等の突発的な外乱などにより、移動可能空間の外に流されてしまった場合であって、更に継続的な強風により安定的な飛行が困難な場合であっても、早期に安全な位置（敷地内等の移動可能空間）に向かって着陸するよう移動制御でき、敷地外などの移動可能空間外に存在する第三者に対する安全性を確保することができる。
【００１１】
また、本発明の好ましい態様として、前記移動目標位置設定手段は、前記位置推定手段にて水平面上における前記自己位置を推定できないとき、前記移動目標位置を設定する処理をスキップするスキップ制御を行い、前記移動制御手段は、前記移動目標位置設定手段にて前記スキップ制御が行われたとき、飛行高度を徐々に下げる着陸制御を行うものとする。
【００１２】
かかる構成により、本発明の位置推定手段にて水平面上における前記自己位置を推定できないとき、移動目標位置を設定せずに、その場にて着陸するよう移動制御される。すなわち、自己位置が推定できないような状況下では自己位置が推定できるまで移動しようとするのではなく、速やかに着陸する。これにより、自律飛行ロボットが移動可能空間から離れて移動不可空間の先に勝手に飛行していくことを防止することができる。
【００１３】
また、本発明の好ましい態様として、外部装置との間で通信を行う通信部を更に有し、前記移動制御手段は前記通信部にて前記外部装置と通信できなくなったとき飛行高度を徐々に下げる着陸制御を行うものとする。
【００１４】
かかる構成により、外部装置との通信ができなくなるような異常状態においては着陸するように移動制御して、自律飛行を継続しないようにすることにより、第三者に対する安全性を保つことができる。
【００１５】
また、本発明の好ましい態様として、前記飛行制御手段にて前記着陸制御が行われたとき、音又は光によって周囲に警報を出す報知部を更に有するものとする。
【００１６】
かかる構成により、対処に駆けつけた警備員等が自律飛行ロボットの着陸場所を早期に発見することができ、異常状態を早期に検知することができる。
【発明の効果】
【００１７】
上記のように、本発明の自律飛行ロボットは、自律飛行ロボットが所定の移動可能空間外に移動しないように追従移動することにより、第三者に対する安全性を確保することができる。
【図面の簡単な説明】
【００１８】
【図１】自律飛行ロボットの概観図
【図２】自律飛行ロボットの機能ブロック図
【図３】経路探索手段の機能ブロック図
【図４】移動候補位置の設定についての説明図
【図５】移動目標位置設定処理のフローチャート
【図６】移動目標位置の設定についての説明図
【図７】緊急着陸位置の設定についての説明図
【図８】移動経路の生成におけるグラフ構造の説明図
【図９】ローカル目標算出の説明図
【発明を実施するための形態】
【００１９】
以下、移動物体である侵入者の画像を撮像して所定の相対距離を保ちながら追従飛行し、特に、侵入者が攻撃や捕獲等を意図して接近してきた場合であっても適切に回避するよう飛行可能な自律移動ロボット（以下、「自律飛行ロボット」という）についての実施形態について添付した図面を参照しながら詳細に説明する。なお、本発明の自律飛行ロボットは、自動車等の人物以外の様々な移動物体についても同様に適用することができる。
【００２０】
図１に本実施形態で利用する自律飛行ロボット１の概観図を表す。また、図２に本実施形態で利用する自律飛行ロボット１の機能ブロック図を表す。図１に表すように、本実施形態で利用する自律飛行ロボット１は、符号２ａ〜２ｄに示す４枚のロータ２（プロペラ）が一平面上に存在し、各ロータ２が図示しないバッテリ（二次電池）により駆動するモータ６によって回転することによって飛行するクアッドロータ型の小型無人ヘリコプタである。一般的に、シングルロータ型のヘリコプタでは、メインロータによって発生する反トルクをテールロータが生み出すモーメントで相殺することによって方位角を保っている。一方、本実施形態で利用する自律飛行ロボット１のようなクアッドロータ型のヘリコプタでは、前後・左右で異なる方向に回転するロータ２を用いることで反トルクの相殺を行っている。そして、例えば、機体をヨー方向に回転させたいときは、符号ｆａ〜ｆｄの矢印で示すように前後のロータ２ａ、２ｃと左右ロータ２ｄ、２ｂの回転数に差を与える。このように、各ロータ２の回転数を制御することにより、様々な機体の移動や姿勢の調節を行うことができる。
【００２１】
撮像部３は、例えばレンズなどの光学系および所定画素（例えば６４０×４８０画素）のＣＣＤやＣＭＯＳなどの２次元アレイ素子を有する二次元イメージセンサで構成され、飛行空間の撮像画像を所定の時間間隔で取得するいわゆるカラーカメラである。本実施形態では、撮像部３は、その光軸が自律飛行ロボット１の正面方向を撮像するよう筐体部分に設置され、かつ、水平面（ＸＹ平面）から予め定めた俯角θにより斜め下方の空間を撮像するよう設置されている。取得した撮像画像は後述する制御部７に出力され、制御部７により記憶部８に記憶されたり、後述する通信部９を介して図示しない外部装置に送信されたりする。
通信部９は外部装置との間で、例えば無線ＬＡＮや携帯電話回線等により無線通信するための通信モジュールである。本実施形態では、撮像部３によって取得した撮像画像を図示しない警備センタに設置されたＰＣに送信することにより、警備員等が遠隔から侵入者を監視することを可能にする。
【００２２】
距離検出センサ４は、自律飛行ロボット１の周囲に存在する障害物と距離検出センサ４との間の距離を検出し、センサ検出範囲内に存在する障害物の相対的な位置を取得するセンサである。本実施形態では、距離検出センサ４としてレーザスキャナを備えている。レーザスキャナは、一定の角度サンプル間隔の角度毎に二次元スキャンすることによって、地面（又は床面）から一定の高さの水平面における周囲に存在する物体（障害物）との距離情報を極座標値として取得することができるものである。ここで、レーザスキャナにおける二次元スキャンとは、予め設定された検知エリアを走査するように、放射状にレーザ光である探査信号を送信し、検知エリア内の物体に反射して戻ってきた探査信号を受信して、送信と受信の時間差から物体までの距離を算出し、その探査信号を送信した方向と算出した距離を求めることをいう。本実施形態では、角度サンプル間隔を０．２５°、検出角度範囲を３６０°、センサ検出範囲を３０ｍとして自律飛行ロボットの周囲の障害物との距離を測定可能なレーザセンサを用いている。なお、レーザスキャナから照射されるレーザの一部をミラー５で地面方向に反射させて計測された距離情報を利用して飛行高度を推測することにも利用している。
【００２３】
記憶部８は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）等の情報記憶装置である。記憶部８は、各種プログラムや各種データを記憶し、制御部との間でこれらの情報を入出力する。各種データには、本発明の「飛行空間マップ」に対応する２Ｄポイント情報８１及びボクセル情報８２、離間距離８３の他、制御部７の各処理に用いられる設定値、閾値等の各種パラメータ８４や、各センサ等からの出力値、撮像画像等が含まれる。
【００２４】
２Ｄポイント情報８１は、後述する位置推定手段７１にて自律飛行ロボットの現在の飛行位置（以下、「自己位置」という）を推定するために利用する情報であり、グローバル座標と呼ばれる水平面における二次元の絶対座標上に表され、飛行空間における建造物等の障害物の外形を表す点集合の座標情報である。本実施形態では、飛行高度毎に設定された複数の点集合を２Ｄポイント情報として予め記憶部８に記憶していることとし、自律飛行ロボットの飛行高度によって対応する飛行高度の点集合を記憶部８から読み出して利用するものとする。
【００２５】
ボクセル情報８２は、飛行空間をボクセル空間として複数のボクセルに分割して飛行空間の障害物の構造等を表した情報であり、予め管理者等によって設定され記憶部８に記憶される情報である。本実施形態では、飛行空間を所定の大きさ（例えば１５ｃｍ×１５ｃｍ）に分割し、建造物等の障害物に位置するボクセルを「占有ボクセル」と定義して、自律飛行ロボット１が移動できない空間とした。そして、占有ボクセルの近くに存在する空間に位置するボクセルを「近接ボクセル」、それ以外の自由に飛行可能なエリアに位置するボクセルを「自由ボクセル」として定義した。そして、各ボクセルには、後述する移動経路生成手段にて移動経路を生成する際に利用できるよう、占有度を示すボクセルコスト値を持たせた。占有ボクセルのボクセルコスト値は最大値をとり、距離が大きくなるほどボクセルコスト値が小さくなるように、（ボクセルコスト値）＝ｅｘｐ｛−λ・（占有ボクセルからの距離）｝の計算式からボクセルコスト値を算出した。ここでλは実験によって求めたパラメータである。そして、予め定めた閾値以上のボクセルコスト値を有するボクセルを「近接ボクセル」とした。また、ボクセルコスト値が当該閾値よりも小さいボクセルを「自由ボクセル」とし、自由ボクセルとみなされたボクセルのボクセルコスト値を０と再設定した。なお、自律飛行ロボット１が飛行空間における予め定めた移動可能空間の外に出ないようにするため、移動可能空間の外部の空間（移動不可空間）に位置するボクセルを占有ボクセルと設定した。さらに、障害物の場合と同様に移動不可空間（占有ボクセル）の近くに存在する空間に位置するボクセルについても「近接ボクセル」と設定し、ボクセルコスト値も同様に算出しいる。
【００２６】
離間距離８３は、移動物体を追従飛行するにあたって、自律飛行ロボット１と移動物体との水平面における維持すべき相対距離であり、自律飛行ロボット１の管理者等によって予め設定される値である。自律飛行ロボット１を用いて所定の移動物体を監視する場合、移動物体に近づき、より詳細な撮像画像を取得できる必要がある。しかし、侵入者などの敵対する移動物体から攻撃を受けないようにするためには一定距離以上離間する必要がある。そのため、本実施形態の自律飛行ロボット１は、移動物体の詳細な撮像画像を取得でき、かつ、当該移動物体から攻撃を受け難い距離に離間距離８３を予め定めておき、当該離間距離を保ちつつ追従飛行するようにする。本実施形態では離間距離８３を３ｍとして設定されているものとする。
【００２７】
制御部７は、ＣＰＵ等を備えたコンピュータで構成され、位置推定処理（自己位置推定処理、移動物体位置推定処理）、速度推定処理、経路探索処理、経路追従制御処理を行う一連の処理として、位置推定手段７１、速度推定手段７２、経路探索手段７３、飛行制御手段７４を含んでいる。
【００２８】
位置推定手段７１は、距離検出センサ４及び撮像部３の出力に基づいて、飛行空間における自律飛行ロボット１の現在位置（自己位置）を推定する自己位置推定処理と、移動物体の現在位置（以下、「移動物体位置」という）とを推定する移動物体位置推定処理とを行う。
【００２９】
自己位置推定処理では、距離検出センサ４の出力と記憶部８に記憶された２Ｄポイント情報８１とを用いて、自己位置として、水平面（ＸＹ平面）における位置ｘ，ｙと、飛行高度ｚと、Ｚ軸に対する回転角であるヨー角ψとを推定する処理を行う。
【００３０】
自己位置推定処理では、まず、レーザスキャナから照射されるレーザの一部をミラー５で地面方向に反射させて計測された距離情報を利用して、自己位置の飛行高度ｚを算出する。レーザスキャナによって計測された距離情報は、地面には建造物以外の物体（例えば荷物や乗り物など）が存在するため、必ずしも地面までの距離として正確に計測されるとは限らない。したがって、本実施形態では、これらの建造物以外の障害物の影響を受け難いようレーザスキャナによって計測された距離情報に対して拡張カルマンフィルタを適用することにより飛行高度を推定する。
【００３１】
次に、自己位置推定処理では、自己位置のｘ，ｙ，ヨー角ψを推定する。自己位置のｘ，ｙ，ヨー角ψを推定にあたり、まず、記憶部に記憶された２Ｄポイント情報８１から飛行高度ｚに対応した飛行空間の二次元地図としての点集合を読み出す。そして、求めた点集合とレーザスキャナの出力とを用いて、ＩＣＰ（Ｉｔｅｒａｔｉｖｅ  Ｃｌｏｓｅｓｔ  Ｐｏｉｎｔ）アルゴリズムを利用した既知のスキャンマッチングにより自己位置のｘ，ｙ，ヨー角ψを推定する。ＩＣＰアルゴリズムは、２つの点集合Ａ，Ｂにおいてユークリッド距離が最小となる組合せを求めることによりマッチング処理するものである。すなわち、２Ｄポイント情報８１の点集合と、自律飛行ロボット１に搭載されているレーザスキャナから取得したスキャンデータである入力点集合とをマッチングさせ位置誤差を修正することによって、グローバル座標における自己位置のｘ，ｙ，ヨー角ψを推定することができる。
【００３２】
移動物体位置推定処理では、撮像部３の出力である撮像画像を画像処理して、移動物体位置を推定する処理を行う。移動物体位置推定処理では、まず、撮像画像の各フレームを画像処理して移動物体の画像領域を抽出する処理を行う。本実施形態では、既知の従来技術（例えば、特開２００６−１４６５５１号公報を参照）であるオプティカルフロー法を用いて移動物体の画像領域を抽出する。しかし、これに限らず、既知の従来技術であるブースティング学習（例えば、Ｈａａｒ−ｌｉｋｅ特徴を用いているＡｄａＢｏｏｓｔベース識別器による顔検出手法）による識別器を用いて、移動物体である人物領域が含まれるか否かを識別し、人物領域として識別された当該画像領域を抽出してもよい。また、上記の各技術を組み合わせて用いてもよい。次に、移動物体位置推定処理では、当該抽出された移動物体の画像領域の位置に基づいて移動物体と自律飛行ロボット１との距離を推定する。具体的には、抽出した移動物体の画像領域の頭頂部の（撮像画像における）ｙ座標位置と距離との対応表を予め飛行高度毎に作成しておき、現在の飛行高度及び移動物体の頭頂部のｙ座標位置を当該対応表に照らし合わせて移動体との距離を推定する。しかし、これに限らず、抽出した移動物体の頭部の大きさから距離を算出してもよい。すなわち、頭部の大きさと距離との対応表を予め作成しておき、抽出された移動物体の頭部の大きさを当該対応表に照らし合わせて移動物体との距離を推定してもよい。なお、撮像画像から抽出した移動物体の画像領域は、時間的に画像追跡されていることとする。
【００３３】
なお、位置推定手段７１は、移動物体位置推定処理にて移動物体位置が算出すると、当該移動物体位置に基づいてボクセル情報８２を更新する処理を行う。具体的には、記憶部８のボクセル情報８２に基づいたボクセル空間に、算出された移動物体位置を中心として監視対象の移動物体として予め定めた移動物体の大きさと略同じ大きさの円柱モデル（例えば、監視対象の移動物体を侵入者であるとしたとき、底面の半径０．３ｍ、高さ１．７ｍの円柱モデル）を配置し、当該円柱モデルと干渉するボクセルを占有ボクセルとして設定することによりボクセル情報８２を更新する。後述するように、自律飛行ロボット１は、占有ボクセルには移動しないように飛行制御されるが、上記のように移動物体位置に基づいてボクセル情報８２を更新することにより、自律飛行ロボット１と移動物体との接触を回避することができる。
【００３４】
速度推定手段７２は、後述する飛行制御手段７４における経路追従制御で利用するため、自律飛行ロボット１の現在の飛行速度（ｖx，ｖy，ｖz，ｖyaw）を推定する処理を行う。本実施形態では、位置推定手段７１にて推定した自己位置（ｘ，ｙ，ｚ，ｙａｗ）の時間変化から飛行速度を求めた。この際、測定誤差等の影響を考慮して拡張カルマンフィルタを利用して飛行速度を推定した。
【００３５】
経路探索手段７３は、位置推定手段７１で算出した自己位置及び移動物体位置と、記憶部８に記憶された各種情報とを用いて自律飛行ロボット１の移動経路を算出する処理を行う。図３に経路探索手段７３の機能ブロック図を表す。経路探索手段７３は、図３に表すように、移動候補位置を設定する移動候補位置設定手段７３１と、複数の移動候補位置を評価してその中から一つの移動目標位置を設定する移動目標位置設定手段７３２と、自己位置から移動目標位置に至る移動経路を生成する移動経路生成手段７３３とにより構成される。以下、経路探索手段７３を構成する各手段における処理の詳細について説明する。
【００３６】
移動候補位置設定手段７３１は、移動物体位置から離間距離８３だけ離れた周囲の位置に複数の移動候補位置を設定する処理を行う。本実施形態では、移動候補位置を、移動物体Ｍを中心とし記憶部８に記憶された離間距離８３（＝Ｌ）を半径とした円状の位置で、かつ、管理者等により予め定めた目標飛行高度（例えば２ｍ）の領域に、それぞれ等間隔になるように設定する。図４は移動候補位置の設定についての説明図であり、ボクセルで表示した飛行空間の一部を真上から見下ろしたときの図である。同図において、符号Ｂｏで表した黒塗りされたボクセルは占有ボクセルであり、符号Ｂｎで表した平行斜線（ハッチング）で塗られたボクセルは近接ボクセルであり、符号Ｂｆで表した白色のボクセルは自由ボクセルである。図４に表すように、移動物体Ｍの重心位置Ｍｇを中心として半径Ｌの円周上に複数個の移動候補位置Ｐｃを等間隔に設置する。本実施形態では、移動物体Ｍの周囲の位置に５°おきに７２個の移動候補位置Ｐｃを設置することとする。なお、図４の右側を占める占有ボクセルは自律飛行ロボット１の移動不可空間であり、現実世界の空間においては、敷地（移動可能空間）外の公共空間（例えば公道等）に相当する空間である。なお、図４では、飛行空間を真上から見下ろしているため２次元的にボクセル空間が表現されているものの、実際は３次元的にボクセル空間が表現されているものとする。
【００３７】
移動候補位置設定手段７３１にて移動候補位置Ｐｃの設定を終えると、移動目標位置設定手段７３２は設定された複数の移動候補位置Ｐｃを評価し、その中の一つを移動目標位置として設定する移動目標位置設定処理を行う。図５は、移動目標位置設定処理を示すフローチャートであり、以下、同図を用いて移動目標位置設定処理の詳細について説明する。
【００３８】
移動目標位置設定処理では、まず、位置推定手段７１における自己位置推定処理にて自己位置が推定できているか否かを判定する（ＳＴ１０）。前述したように本実施形態における自己位置推定処理では、距離検出センサ４（レーザスキャナ）の出力である入力点集合と２Ｄポイント情報８１の点集合とのマッチングによって自己位置を推定しているが、このマッチングの際に、２つの点集合間のユークリッド距離に応じたスコアを求め（点集合間の距離が大きくなるほど低スコアとなるように求める）、当該スコアが予め定めた閾値よりも小さいとき自己位置が推定できないとみなす。なお、本実施形態では、スコアによって自己位置が推定できているか否かを判定しているが、これに限らない。例えば、２Ｄポイント情報８１の点集合と大きく位置が異なる入力点集合の点を「外れ値」としてマッチング処理から除外しているが、この外れ値の数が予め定めた閾値以上であるとき自己位置が推定できないとみなす方法を用いてもよい。
【００３９】
ＳＴ１０にて、自己位置が推定できていると判定されたとき（ＳＴ１０−Ｙｅｓ）、推定された自己位置が移動可能空間内に位置しているか否かを判定する（ＳＴ１１）。本実施形態では、推定された自己位置が占有ボクセルの位置にあるとき、自己位置が移動可能空間内に位置していないと判定する。すなわち、本実施形態では、占有ボクセルは障害物又は移動不可空間の何れかの空間を表しているため、当該占有ボクセルの位置に自己位置が位置しているということは障害物以外の空間である移動不可空間であるとみなしている。
【００４０】
ＳＴ１１にて、推定された自己位置が移動可能空間内に位置していると判定されたとき（ＳＴ１１−Ｙｅｓ）、評価対象の移動候補位置を設定する処理を行う（ＳＴ１２）。本実施形態では、障害物の近傍に位置する移動候補位置Ｐｃを評価対象から除外することにより、評価対象の移動候補位置Ｐｃを設定する。すなわち、自律飛行ロボット１が障害物に接触することを防止するため障害物と干渉する位置にある移動候補位置Ｐｃを除外し、また、障害物に接近するのも接触の危険性が増すことから障害物の近くに存在する移動候補位置Ｐｃを除外する処理を行う。図６は移動目標位置の設定についての説明図であり、図４と同じようにボクセルで表示した飛行空間の一部を真上から見下ろしたときの図である。図６に表すように、自由ボクセルＢｆ以外のボクセル（占有ボクセルＢｏ、近接ボクセルＢｎ）と干渉する位置にある移動候補位置Ｐｃが移動目標位置として設定されないよう、以下で説明する評価の対象から除外する。図６に表した移動候補位置Ｐｃは、図４で表した移動候補位置Ｐｃから占有ボクセルＢｏ又は近接ボクセルＢｎと干渉している移動候補位置Ｐｃを除外した後のものであり、評価対象として設定された移動候補位置Ｐｃである。なお、自己位置が移動可能空間内に位置している場合、近接ボクセルＢｎは移動目標位置に設定できないものの移動経路とすることはできるものとし、占有ボクセルＢｏは移動目標位置に設定することができないだけでなく移動経路とすることもできないものとする。一方、自己位置が移動可能空間外（移動不可空間内）に位置している場合、近接ボクセルＢｎは移動目標位置に設定できて移動経路とすることもできるものとし、移動不可空間における占有ボクセルＢｏは移動経路とすることができるものとする。
【００４１】
続いて、移動目標位置設定処理では、評価対象から除外されていない各移動候補位置Ｐｃを評価して移動目標位置を設定する処理を行う（ＳＴ１３）。本実施形態では、評価対象となっている各移動候補位置Ｐｃの評価値を求め、当該評価値が最も大きい移動候補位置を移動目標位置として設定するように評価する。この際、まず、自律飛行ロボット１の現在位置から各移動候補位置までの距離が小さいほど評価値が大きくなるようにする。また、前回設定した移動目標位置からの移動候補位置までの距離が小さいほど評価値が大きくなるようにする。本実施形態における評価値Ｖを求める具体的な評価式を数１で表す。
【数１】
2014123306.tif 000003
ここで、ｒ＝（ｘ，ｙ，ｚ）は自律飛行ロボット１の現在の自己位置、Ｐprev＝（ｘprev，ｙprev，ｚprev）は前回設定した移動目標位置を示し、α、β、σは距離に応じて減衰する値を調整するためのパラメータである。
【００４２】
続いて、移動目標位置設定処理では、評価値Ｖが最大となる移動候補位置Ｐｃを移動目標位置Ｐｏとして設定する（ＳＴ１４）。図６の例では、点線で囲んだ移動候補位置Ｐｃが移動目標位置Ｐｏとして設定されたことを表している。このように、移動目標位置Ｐｏが設定されると、後述するように設定された移動目標位置Ｐｏに向かうように移動経路が生成され、自律飛行ロボット１は当該移動目標位置Ｐｏに向かって移動していくこととなる。
【００４３】
ＳＴ１０にて、自己位置が推定できていない判定されたとき（ＳＴ１０−Ｎｏ）、移動候補位置Ｐｃを設定する処理をスキップするスキップ制御が行われる（ＳＴ１５）。
【００４４】
ＳＴ１１にて、推定された自己位置が移動可能空間内に位置していないと判定されたとき（ＳＴ１１−Ｎｏ）、緊急着陸位置を算出し（ＳＴ１６）、算出した緊急着陸位置に移動目標位置Ｐｏを設定する（ＳＴ１７）。具体的には、まず、移動可能空間内の障害物の存在しない位置（占有ボクセル以外の領域）であって、自己位置からの距離が最も小さい位置（自己位置から最も近い位置）を復帰位置として設定する。そして、水平面内の位置が当該復帰位置であって、高度が予め記憶部８に設定した着陸体勢高度である位置を緊急着陸位置として算出する。そして、当該緊急着陸位置を移動目標位置Ｐｏとして設定する。例えば、図７に表すように、自律飛行ロボット１の自己位置が占有ボクセルＢｏの位置にあるため、ＳＴ１１にて自己位置が移動可能空間内に位置していない（すなわち、移動不可空間内に位置している）と判定される。そして、ＳＴ１６にて、移動目標位置設定手段７３２は、自己位置から水平距離で最も近い移動可能空間内の位置であって、予め定めた着陸体勢高度（例えば３０ｃｍ）の位置に緊急着陸位置を設定する。そして、ＳＴ１７にて、移動候補位置Ｐｃに関わらず、当該緊急着陸位置が移動目標位置Ｐｏに設定される。
【００４５】
移動経路生成手段は、記憶部に記憶されたボクセル情報と、移動目標位置設定手段にて算出した移動目標位置と、位置推定手段にて算出した自己位置とを用いて自律飛行ロボットの移動経路を算出する移動経路生成処理を行う。具体的には、経路生成処理では、まず、記憶部からボクセル情報８２を読出し、分割した移動可能な空間である自由ボクセルＢｆ及び近接ボクセルＢｎの各ボクセルの中心をノードとし、当該ノードに隣接するノード間を連結した線分をエッジとしてグラフ構造を生成する。図８はグラフ構造を説明する図であり、飛行空間における移動可能なボクセル（自由ボクセルＢｆ又は近接ボクセルＢｎ）の一部（２７個）を切り欠いたものである。図８において符号Ｂで表す個々の立方体は自由ボクセルＢｆ又は近接ボクセルＢｎを表すものである。また、これらのボクセルＢの中心にある黒又はハッチングにて塗りつぶした球はノードであり、ノード間を連結する点線で表示する線分はエッジである。このようにボクセル情報８２に基づいて全ての移動可能なボクセルについてグラフ構造を生成した後、自律飛行ロボット１が存在しているボクセルのノードから移動目標位置Ｐｏが存在しているボクセルのノードまでの移動経路を生成する。移動経路の生成方法については、さまざまな経路生成方法が適用可能であるが、本実施形態ではＡ＊（エースター）経路探索法を用いて移動経路を探索する。この際、ボクセル情報８２として記憶されたボクセルコストをＡ＊経路探索法における移動コストとして利用する。経路探索手段７３で生成された生成された移動経路のデータは、経由点（ｘ，ｙ，ｚ）の集合データであり、この情報は記憶部８に一時的に記憶される。なお、前述の移動目標位置設定処理のＳＴ１６にて、緊急着陸位置が移動目標位置設定手段７３２として設定された場合、移動経路生成手段７３３は、ボクセルの移動コストに関わらず自己位置から当該移動目標位置Ｐｏに至る直線を移動経路として記憶部８に一時的に記憶することとする。
【００４６】
飛行制御手段７４は、経路探索手段７３にて算出した移動経路情報と位置推定手段７１にて推定した自己位置と速度推定手段７２で推定した飛行速度とを用いて、各時刻での飛行制御値である速度指令値を求め、当該速度指令値に基づいてモータ６を制御し、ロータ２の回転数を制御することにより、自律飛行ロボット１が経路探索手段７３で算出した移動経路に沿って飛行させる経路追従制御処理を行う。なお、本発明における「移動制御手段」は、本実施形態における移動経路生成手段７３３及び飛行制御手段７４に対応する。
【００４７】
経路追従制御処理では、まず、各時刻での自律飛行ロボットが目標とすべき直近の位置（以下、「ローカル目標」と呼ぶ）を算出する処理を行う。図９はローカル目標の算出を説明する図である。ローカル目標の算出にあたり、飛行制御手段７４は、経路探索手段７３で生成された移動経路を記憶部８から読出し、自律飛行ロボットが現在時刻で目指している経由点Ｗｐ１と前回通過済みである経由点Ｗｐ０との２点間を繋げた直線Ｗを求める。そして、飛行制御手段は、求めた直線Ｗと自律飛行ロボット１の自己位置を中心とした球Ｓとの交点Ｌｐ’、Ｌｐを算出し、目指している経由点Ｗｐ１に近い交点Ｌｐをローカル目標として求める。このように、各時刻においてローカル目標を目指して自律飛行ロボット１が移動するよう飛行制御することで、常にローカル目標も移動経路上を移動目標位置Ｐｏに向かって移動していき、自律飛行ロボット１は移動経路に沿って飛行していくことになる。
【００４８】
次に、経路追従制御処理では、算出したローカル目標に向かって飛行するようＸ、Ｙ、Ｚ、ヨー角ψの各方向毎に速度指令値ｕx，ｕy，ｕz，ｕψを算出する処理を行う。この際、現在の自己位置とローカル目標の位置との差異が小さくなるような速度指令値を求める。具体的には、ＸＹＺ軸方向の速度指令値ｕ＝（ｕx，ｕy，ｕz）は、位置推定手段で求めた自己位置ｒ＝（ｘ，ｙ，ｚ）と速度推定手段で推定した速度ｖ＝（ｖx，ｖy，ｖz）とを利用し、ＰＩＤ制御により求める。ＸＹＺ軸方向の各速度指令値をｕ＝（ｕx，ｕy，ｕz）、ローカル目標をｒ’＝（ｘ，ｙ，ｚ）としたとき、速度指令値は、ｕ＝Ｋp（ｒ’−ｒ）＋Ｋd・ｖ＋Ｋi・ｅの式で算出される。ここで、Ｋp、Ｋd、ＫiはそれぞれＰＩＤ制御のゲインのことであり、ｅ＝（ｅx，ｅy，ｅz）は誤差の積分値である。一方、ヨー角方向の速度指令値ｕψは、ψ'を目標角度、ψを位置推定手段７１にて推定した自律飛行ロボット１の姿勢（角度）、ｖyawを速度推定手段７２で推定した角速度とすると、ｕψ＝Ｋp（ψ’−ψ）＋Ｋd・ｖψの式のようなＰＤ制御により求める。なお、本実施形態では、目標角度ψ'を移動物体Ｍの方向、すなわち、移動物体位置の方向を向く角度とした。
【００４９】
なお、移動目標位置設定処理のＳＴ１５にてスキップ制御がなされたとき、または、ＳＴ１７にて緊急着陸位置が移動目標位置Ｐｏに設定されて当該緊急着陸位置に自己位置が位置しているとき、飛行制御手段７４は着陸制御を行う。着陸制御では、飛行制御手段７４は、自律飛行ロボット１の飛行高度を徐々に下げる制御を行う。なお、飛行制御手段７４により着陸制御が開始された以降においては、上述した位置推定処理（自己位置推定処理、移動物体位置推定処理）、速度推定処理、経路探索処理、経路追従制御処理が行われることなく、自律飛行ロボット１が地上に着陸するまで飛行高度を下げるようロータ２の回転数が制御される。
【００５０】
このように、制御部７は、上述した位置推定手段７１、速度推定手段７２、経路探索手段７３、飛行制御手段７４における各処理を逐次繰り返す。これにより、本実施形態の自律飛行ロボット１は、移動物体Ｍから離間距離だけ離れた位置に対して移動目標位置Ｐｏを逐次更新し、その都度移動経路についても逐次更新していくことによって、当該移動物体と所定の離間距離８３を保ちつつ追従飛行することができる。この際、移動目標位置Ｐｏを移動不可空間には設定しないことにより、移動可能空間内においてのみ追従飛行することができ、例えば敷地外にいる第三者に対する安全性を保つことができる。また、突風等の突発的な外乱などにより、自律飛行ロボット１が意図せずに移動不可空間に移動してしまった場合も、最短の距離で移動可能空間内に着陸するよう移動することにより、強風時などの飛行が不安定となり易い状況下においても、敷地外の第三者に対する安全性を保つことができる。さらに、自己位置が推定できなくなってしまった場合であっても、その場で着陸するよう飛行高度を制御することにより、自律飛行ロボット１が移動可能空間から離れて移動不可空間の先に勝手に飛行していくことを防止することができる。
【００５１】
ところで、本発明は、上記実施形態に限定されるものではなく、特許請求の範囲に記載した技術的思想の範囲内で、更に種々の異なる実施形態で実施されてもよいものである。また、実施形態に記載した効果は、これに限定されるものではない。
【００５２】
上記実施形態では、移動目標位置設定手段７３２にて自己位置が移動可能空間内に位置していないと判定されたとき（ＳＴ１１−Ｎｏ）、復帰位置でかつ着陸体勢高度である緊急着陸位置を算出し（ＳＴ１６）、当該緊急着陸位置に移動目標位置Ｐｏを設定し（ＳＴ１７）、飛行制御手段７４にて当該緊急着陸位置である移動目標位置Ｐｏに自己位置が位置しているとき着陸制御を行っている。しかし、これに限らず、自己位置が移動可能空間内に位置していないと判定されたとき（ＳＴ１１−Ｎｏ）、復帰位置（移動可能空間内の障害物の存在しない位置であって、自己位置からの最も近い位置）を移動目標位置Ｐｏと設定してもよい。すなわち、自己位置が移動不可空間に位置しているとき、自律飛行ロボット１は移動可能空間内の復帰位置を目指して移動し、当該復帰位置に移動後は着陸せずに通常通り、移動物体位置から離間距離８３だけ離れた位置で追従移動するように移動制御する。これにより、突風等の突発的な外乱などにより、自律飛行ロボット１が意図せずに移動不可空間に移動してしまった場合も、最短の距離で移動可能空間内に移動して追従飛行を継続することができる。また、これらの実施形態に限らず、移動目標位置設定手段７３２にて自己位置が移動可能空間内に位置していないと判定されたとき（ＳＴ１１−Ｎｏ）、緊急着陸位置や復帰位置に移動しようとせずに、当該自己位置から着陸制御を行ってもよい。これにより、移動の制御ができないような強風下においても第三者に対する安全性をできるだけ保つことができる。さらにこれらの実施形態に限らず、飛行制御手段７４は、通信部９にて外部装置との間で通信ができなくなったことを検知したとき、そのときの自己位置又は予め定めた所定の着陸位置において着陸制御を行ってもよい。このように、外部装置との通信ができなくなるような異常状態においては着陸するように移動制御して、自律飛行を継続しないようにすることにより、第三者に対する安全性を保つことができる。
【００５３】
さらに、ブザーやランプなどの報知部を備えて、緊急時等に着陸制御が行われたときに音や光によって周囲に対して警報を発してもよい。これにより、対処に駆けつけた警備員等が着陸場所を早期に発見することができ、異常状態を早期に検知することができる。
【００５４】
上記実施形態では、飛行制御手段７４にて速度指令値を算出するために、速度推定手段７２にて自己速度を算出している。しかし、これに限らず、速度推定手段７２を省略して自己速度を算出せずに速度指令値を算出してもよい。この場合、移動物体Ｍへの追従性能が劣るもの簡易的な処理で追従飛行することが可能となる。また、上記実施形態では、速度推定手段７２にて自己位置に基づいて自己速度を算出している。しかし、これに限らず、ＩＭＵ（Ｉｎｅｒｔｉａｌ  Ｍｅａｓｕｒｅｍｅｎｔ  Ｕｎｉｔ：慣性計測ユニット）などのセンサを利用したり、自律飛行ロボット１の真下方向を撮像するカメラを設置し、カメラからの撮像画像に基づいて既知のオプティカルフロー法を用いて自己速度を算出してもよい。
【００５５】
上記実施形態では、距離検出センサ４としてレーザスキャナを用いて当該レーザセンサの出力から位置推定手段７１にて自己位置を推定している。しかし、これに限らず、レーザスキャナの代わりとしてＧＰＳ、ジャイロセンサ、電子コンパス、気圧センサ等の他のセンサを用いて既知の従来技術により自己位置を推定してもよい。
【００５６】
上記実施形態では、撮像部３で取得した撮像画像を画像解析することにより、移動物体位置を推定している。しかし、これに限らず、撮像部３に別途距離画像センサを搭載して、当該距離画像センサから取得した距離画像を用いて、既知の移動物体抽出技術により移動物体を抽出して、抽出した移動物体と自律飛行ロボット１との距離値から移動物体位置を推定してもよい。また、距離検出センサ４として搭載したレーザスキャナを用いて移動物体位置を推定してもよい。また、別途地面や壁面等に設置した固定型のレーザスキャナを用いて移動物体位置を検知し、通信部９を介して自律飛行ロボット１に対して移動物体位置を通知してもよい。
【００５７】
上記実施形態では、制御部７において位置推定処理（自己位置推定処理、移動物体位置推定処理）、速度推定処理、経路探索処理、経路追従制御処理の一連の処理を行っている。しかし、これに限らず、図示しない制御用のＰＣを用意し、当該ＰＣにこれらの一連の処理を実施させてもよい。すなわち、自律飛行ロボット１は、距離検出センサ４のレーザスキャナの出力及び撮像部３で取得した撮像画像を通信部９を介して無線通信により当該ＰＣに送信する。そして、ＰＣは、位置推定処理、速度推定処理、経路探索処理、経路追従制御処理を実施し、経路追従制御処理にて求めた速度指令値を無線通信により自律飛行ロボット１に送信する。そして、自律飛行ロボット１は、通信部９を介して受信した速度指令値に基づいてモータ６の回転数を制御することにより、目的の位置に飛行する。このように、上記の一連の処理を外部ＰＣを用いて分担することにより、自律飛行ロボット１のＣＰＵ処理負荷を低減することができ、ひいてはバッテリの消耗も抑えることができる。
【符号の説明】
【００５８】
１・・・自律飛行ロボット
２・・・ロータ
３・・・撮像部
４・・・距離検出センサ
５・・・ミラー
６・・・モータ
７・・・制御部
８・・・記憶部
８１・・・２Ｄポイント情報
８２・・・ボクセル情報
８３・・・離間距離
８４・・・各種パラメータ
７１・・・位置推定手段
７２・・・速度推定手段
７３・・・経路探索手段
７３１・・・移動候補位置設定手段
７３２・・・移動目標位置設定手段
７３３・・・移動経路生成手段
７４・・・飛行制御手段
９・・・通信部
Ｍ・・・移動物体
Ｍｇ・・・移動物体の重心
Ｂｏ・・・占有ボクセル
Ｂｎ・・・近接ボクセル
Ｂｆ・・・自由ボクセル
Ｐｃ・・・移動候補位置
Ｐｏ・・・移動目標位置
【図１】
2014123306.tif 000004
【図２】
2014123306.tif 000005
【図３】
2014123306.tif 000006
【図４】
2014123306.tif 000007
【図５】
2014123306.tif 000008
【図６】
2014123306.tif 000009
【図７】
2014123306.tif 000010
【図８】
2014123306.tif 000011
【図９】
2014123306.tif 000012