IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ パナソニックIPマネジメント株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-07-13
(45)【発行日】2023-07-24
(54)【発明の名称】移動体システム、および、制御方法
(51)【国際特許分類】
   G05D 1/02 20200101AFI20230714BHJP
   A47L 9/28 20060101ALI20230714BHJP
【FI】
G05D1/02 J
A47L9/28 E
【請求項の数】 9
(21)【出願番号】P 2019186407
(22)【出願日】2019-10-09
(65)【公開番号】P2020109618
(43)【公開日】2020-07-16
【審査請求日】2022-09-27
(31)【優先権主張番号】P 2018248454
(32)【優先日】2018-12-28
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】314012076
【氏名又は名称】パナソニックIPマネジメント株式会社
(74)【代理人】
【識別番号】100109210
【弁理士】
【氏名又は名称】新居 広守
(74)【代理人】
【識別番号】100137235
【弁理士】
【氏名又は名称】寺谷 英作
(74)【代理人】
【識別番号】100131417
【弁理士】
【氏名又は名称】道坂 伸一
(72)【発明者】
【氏名】ダーラリベラ・ファビオ
(72)【発明者】
【氏名】津坂 優子
【審査官】藤崎 詔夫
(56)【参考文献】
【文献】国際公開第2016/002186(WO,A1)
【文献】特開2008-063032(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
A47L 9/28
(57)【特許請求の範囲】
【請求項1】
空間を移動する少なくとも3つの移動体を備える移動体システムであって、
前記少なくとも3つの移動体のそれぞれは、
第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、
測距センサと、
当該移動体を移動させる移動部と、
前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、
前記少なくとも3つの移動体は、第一移動体、第二移動体、及び第三移動体を含み、
(i)前記少なくとも3つの移動体が前記第一エリア内で移動する際には、
前記第一移動体及び前記第二移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、
前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動し、
(ii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動する際には、
(a)前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(b)前記第三移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(c)前記第三移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する
移動体システム。
【請求項2】
(iii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動した後、前記第二エリアを移動する際には、
前記第一移動体及び第二移動体それぞれは、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止し、
前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動する
請求項1に記載の移動体システム。
【請求項3】
(iii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動した後、前記第二エリアを移動する際には、
前記第二移動体及び第三移動体それぞれは、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止し、
前記第一移動体は、前記第一移動体が有する前記測距センサによって計測された前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とに基づいて推定される前記第一移動体の位置を用いて移動する
請求項1に記載の移動体システム。
【請求項4】
前記空間は、前記第一エリア及び前記第二エリアを含む複数のエリアを有し、
前記複数のエリアのそれぞれは、平行四辺形の形状を有し、
前記平行四辺形の4つの頂点のうち、対向する2つの頂点は、当該エリア内の任意の位置から前記第一距離以内である2点それぞれを中心とした円である2つの円の2つの交点であり、
前記平行四辺形は、上記2つの円の重複領域に内接している
請求項1~3のいずれか1項に記載の移動体システム。
【請求項5】
前記空間は、前記第一エリア及び前記第二エリアを含む複数のエリアを有し、
前記複数のエリアのそれぞれにおいて、
前記当該エリア内の任意の位置から前記第一距離以内である2点は、当該エリアの端縁である辺上にある
請求項1~4のいずれか1項に記載の移動体システム。
【請求項6】
前記第二エリアは、固定面の上に配置されたカーペットが含まれる領域であり、前記第一エリアは、前記カーペットが位置していない前記固定面であり、
前記第二移動体及び前記第三移動体は、前記カーペットを前記固定面に押さえつける位置にしている
請求項2に記載の移動体システム。
【請求項7】
前記第一移動体は、前記第二移動体と前記第三移動体との間を結ぶ直線上を通過するように、前記第二エリアを移動する、
請求項6に記載の移動体システム。
【請求項8】
空間を移動する少なくとも4つの移動体を備える移動体システムであって、
前記少なくとも4つの移動体のそれぞれは、
第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、
測距センサと、
当該移動体を移動させる移動部と、
前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、
前記少なくとも4つの移動体は、第一移動体、第二移動体、第三移動体及び第四移動体を含み、
(i)前記少なくとも4つの移動体が前記第一エリア内で移動する際には、
前記第一移動体、前記第二移動体及び前記第三移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、
前記第四移動体は、前記第四移動体が有する前記測距センサによって計測された前記第四移動体から前記第一移動体までの距離と、前記第四移動体から前記第二移動体までの距離と、前記第四移動体から前記第三移動体までの距離と、に基づいて推定される前記第四移動体の位置を用いて移動し、
(ii)前記少なくとも4つの移動体が前記第一エリアから前記第二エリアに移動する際には、
(a)前記第四移動体は、前記第四移動体から前記第一移動体までの距離と、前記第四移動体から前記第二移動体までの距離と前記第四移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(b)前記第四移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離と前記第一移動体から前記第四移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(c)前記第四移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離と、前記第二移動体から前記第四移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(d)前記第四移動体が前記境界エリアに移動した後、前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離と、前記第三移動体から前記第四移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する
移動体システム。
【請求項9】
空間を移動する少なくとも3つの移動体を備える移動体システムの制御方法であって、
前記少なくとも3つの移動体のそれぞれは、
第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、
測距センサと、
当該移動体を移動させる移動部と、
前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、
前記少なくとも3つの移動体は、第一移動体、第二移動体、及び第三移動体を含み、
(i)前記少なくとも3つの移動体が前記第一エリア内で移動する際には、
前記第一移動体及び前記第二移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、
前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動し、
(ii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動する際には、
(a)前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(b)前記第三移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、
(c)前記第三移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する
制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動体システム、および、制御方法に関する。
【背景技術】
【0002】
従来、清掃面を自律的に走行し、清掃面上に存在するごみを吸引する自律走行型掃除機が開示されている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】国際公開第2016/002186号
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の自律走行型掃除機のような移動ロボット(mobile robot)は、移動経路の設定について改善の余地がある。
【0005】
そこで、本発明は、移動体がより適切な移動経路を移動し得る移動体システムを提供する。
【課題を解決するための手段】
【0006】
本発明の一態様に係る移動体システムは、空間を移動する少なくとも3つの移動体を備える移動体システムであって、前記少なくとも3つの移動体のそれぞれは、第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも3つの移動体は、第一移動体、第二移動体、及び第三移動体を含み、(i)前記少なくとも3つの移動体が前記第一エリア内で移動する際には、前記第一移動体及び前記第二移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動し、(ii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動する際には、(a)前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(b)前記第三移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(c)前記第三移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する。
【0007】
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【0008】
本発明の移動体システムにより、移動体がより適切な移動経路を移動することができる。
【図面の簡単な説明】
【0009】
図1図1は、実施の形態における移動体の外観を模式的に示す上面図である。
図2図2は、実施の形態における移動体の外観を模式的に示す側面図である。
図3図3は、実施の形態における移動体の内部構造を模式的に示す上面図である。
図4図4は、実施の形態における移動体の制御回路の機能構成を詳細に示すブロック図である。
図5図5は、実施の形態における移動体システムが移動し得る領域の一例と、その領域内に位置する移動体とを模式的に示す説明図である。
図6図6は、実施の形態における移動体システムが複数のエリアを巡回する際の処理を示すフロー図である。
図7図7は、実施の形態における移動体システムにより設定されるエリアの第一例を示す説明図である。
図8図8は、図7に示されるエリアの面積を示す説明図である。
図9図9は、実施の形態における移動体システムにより設定されるエリアの第二例を示す説明図である。
図10図10は、図9に示されるエリアの面積を示す説明図である。
図11図11は、実施の形態における移動体システムが設定する複数のエリアを示す説明図である。
図12図12は、実施の形態における移動体システムが複数のエリアに対応するグラフを作成する処理を示すフロー図である。
図13図13は、実施の形態における移動体システムが複数のエリアをノードに対応付けたグラフを示す説明図である。
図14図14は、実施の形態におけるグラフの修正の方法を示す第一の説明図である。
図15図15は、実施の形態におけるグラフの修正の方法を示す第二の説明図である。
図16図16は、実施の形態における移動体システムが複数のエリアを移動する移動経路の一例を示す説明図である。
図17図17は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の動作を示すフロー図である。
図18図18は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第一の説明図である。
図19図19は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第二の説明図である。
図20図20は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第三の説明図である。
図21図21は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第四の説明図である。
図22図22は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第五の説明図である。
図23図23は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第六の説明図である。
図24図24は、実施の形態における移動体システムが第一エリアから第二エリアに移動する際の移動体の位置を示す第七の説明図である。
図25図25は、実施の形態における移動体が実行する処理を示すフロー図である。
図26図26は、実施の形態における移動体が実行する、基準移動体の処理を示すフロー図である。
図27図27は、実施の形態における移動体が実行する、可動移動体の処理を示すフロー図である。
図28図28は、実施の形態における移動体が、2台の基準移動体の位置と、2台の基準移動体までの距離とを用いて自機の位置を推定する処理を示すフロー図である。
図29図29は、実施の形態における移動体が、2台の基準移動体の位置と、2台の基準移動体までの距離とを用いて自機の位置を推定するときの位置関係を示す説明図である。
図30図30は、実施の形態における基準移動体のタスクの一例を示す説明図である。
図31図31は、実施の形態における移動体の軌跡に基づいて視認され得るエリアの境界を示す説明図である。
図32図32は、実施の形態の変形例における移動体の一例を示す説明図である。
【発明を実施するための形態】
【0010】
本発明の一態様に係る移動体システムは、空間を移動する少なくとも3つの移動体を備える移動体システムであって、前記少なくとも3つの移動体のそれぞれは、第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも3つの移動体は、第一移動体、第二移動体、及び第三移動体を含み、(i)前記少なくとも3つの移動体が前記第一エリア内で移動する際には、前記第一移動体及び前記第二移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動し、(ii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動する際には、(a)前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(b)前記第三移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(c)前記第三移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する。
【0011】
例えば、(iii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動した後、前記第二エリアを移動する際には、前記第一移動体及び第二移動体それぞれは、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止し、前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動してもよい。
【0012】
例えば、(iii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動した後、前記第二エリアを移動する際には、前記第二移動体及び第三移動体それぞれは、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止し、前記第一移動体は、前記第一移動体が有する前記測距センサによって計測された前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とに基づいて推定される前記第一移動体の位置を用いて移動してもよい。
【0013】
例えば、前記空間は、前記第一エリア及び前記第二エリアを含む複数のエリアを有し、前記複数のエリアのそれぞれは、平行四辺形の形状を有し、前記平行四辺形の4つの頂点のうち、対向する2つの頂点は、当該エリア内の任意の位置から前記第一距離以内である2点それぞれを中心とした円である2つの円の2つの交点であり、前記平行四辺形は、上記2つの円の重複領域に内接していてもよい。
【0014】
例えば、前記複数のエリアのそれぞれにおいて、前記当該エリア内の任意の位置から前記第一距離以内である2点は、当該エリアの端縁である辺上にあってもよい。
【0015】
例えば、前記第二エリアは、固定面の上に配置されたカーペットが含まれる領域であり、前記第一エリアは、前記カーペットが位置していない前記固定面であり、前記第二移動体及び前記第三移動体は、前記カーペットを前記固定面に押さえつける位置にしていてもよい。
【0016】
例えば、前記第一移動体は、前記第二移動体と前記第三移動体との間を結ぶ直線上を通過するように、前記第二エリアを移動してもよい。
【0017】
また、本発明の一態様に係る移動体システムは、空間を移動する少なくとも4つの移動体を備える移動体システムであって、前記少なくとも4つの移動体のそれぞれは、第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも4つの移動体は、第一移動体、第二移動体、第三移動体及び第四移動体を含み、(i)前記少なくとも4つの移動体が前記第一エリア内で移動する際には、前記第一移動体、前記第二移動体及び前記第三移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、前記第四移動体は、前記第四移動体が有する前記測距センサによって計測された前記第四移動体から前記第一移動体までの距離と、前記第四移動体から前記第二移動体までの距離と、前記第四移動体から前記第三移動体までの距離と、に基づいて推定される前記第四移動体の位置を用いて移動し、(ii)前記少なくとも4つの移動体が前記第一エリアから前記第二エリアに移動する際には、(a)前記第四移動体は、前記第四移動体から前記第一移動体までの距離と、前記第四移動体から前記第二移動体までの距離と前記第四移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(b)前記第四移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離と前記第一移動体から前記第四移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(c)前記第四移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離と、前記第二移動体から前記第四移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(d)前記第四移動体が前記境界エリアに移動した後、前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離と、前記第三移動体から前記第四移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する。
【0018】
また、本発明の一態様に係る移動体システムの制御方法は、空間を移動する少なくとも3つの移動体を備える移動体システムの制御方法であって、前記少なくとも3つの移動体のそれぞれは、第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも3つの移動体は、第一移動体、第二移動体、及び第三移動体を含み、(i)前記少なくとも3つの移動体が前記第一エリア内で移動する際には、前記第一移動体及び前記第二移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動し、(ii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動する際には、(a)前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(b)前記第三移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(c)前記第三移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する。
【0019】
また、本発明の一態様に係る移動体システムは、面に沿って移動可能である少なくとも3つの移動体を備える移動体システムであって、前記少なくとも3つの移動体のそれぞれは、前記面上の第一エリアと、前記第一エリアと少なくとも一部が重複する第二エリアとの位置を示す地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも3つの移動体は、前記第一エリア内に位置しており、前記少なくとも3つの移動体のうちの2つの移動体のそれぞれは、前記制御部により、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止している基準移動体として機能し、前記少なくとも3つの移動体のうちの前記2つの移動体を除く移動体は、前記制御部により、当該移動体が有する前記測距センサによって計測された当該移動体から前記基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて前記第一エリア内で移動する可動移動体として機能し、前記少なくとも3つの移動体が第一エリアから前記第二エリアに移動する際には、(a)前記可動移動体は、前記制御部により、2つの前記基準移動体までの距離の計測を用いて前記第一エリアと前記第二エリアとの境界エリアに移動して一時的に停止し、(b)前記基準移動体は、前記制御部により、順次に、一時的に停止している前記可動移動体又は前記基準移動体の2つを用いて前記境界エリアに移動して一時的に停止し、(c)前記少なくとも3つの移動体のうちの2つの移動体それぞれは、前記制御部により、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止することで、新たな基準移動体として機能し、(d)前記少なくとも3つの移動体のうちの前記新たな基準移動体を除く移動体は、前記制御部により、当該移動体が有する前記測距センサによって計測された当該移動体から前記新たな基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて前記第二エリア内で移動する、新たな可動移動体として機能する。
【0020】
上記態様によれば、移動体システムは、面に沿って移動する場合に、可動移動体の周囲に壁などの物がない等の理由で自己位置推定ができない場合に、基準移動体を利用して自己位置推定をする。そして、移動体システムが第一エリアから第二エリアに移動するときには、3つの移動体が境界エリアに一旦移動し、その後に第二エリアに移動するようにすることで、可動移動体による自己位置推定ができなくなることを回避することができる。これにより、可動移動体が継続的に自己位置推定をしながら第一エリアから第二エリアに移動することができ、これを繰り返すことで複数のエリアを巡回することができる。このようにして、移動体がより適切な移動経路を移動することができる。ここで、基準移動体は第一移動体及び第二移動体に相当し、可動移動体は第三移動体に相当する。
【0021】
例えば、前記新たな可動移動体は、前記可動移動体とは異なってもよい。
【0022】
上記態様によれば、移動体システムにおいて可動移動体として機能する移動体が交代することができる。これにより、複数の移動体に亘る電力消費の均一化の効果があり、ひいては、移動体システム全体として長時間駆動できる効果がある。
【0023】
例えば、前記複数のエリアのそれぞれは、平行四辺形の形状を有し、前記平行四辺形の4つの頂点のうち、対向する2つの頂点は、当該エリア内の任意の位置から前記第一距離以内である2点それぞれを中心とした円である2つの円の2つの交点であり、前記平行四辺形は、上記2つの円の重複領域に内接していてもよい。
【0024】
上記態様によれば、平行四辺形の形状を有するエリアを用いて、移動体が移動し得る領域に、より容易に、複数のエリアを設定することができる。
【0025】
例えば、前記複数のエリアのそれぞれにおいて、前記当該エリア内の任意の位置から前記第一距離以内である2点は、当該エリアの端縁である辺上にあってもよい。
【0026】
上記態様によれば、移動体システムにおいて可動移動体が移動するときに、基準移動体が存在していることによって、可動移動体の移動を制限したり、移動の邪魔になってしまうことが回避され得る。
【0027】
例えば、前記複数のエリアのそれぞれにおいて、前記当該エリア内の任意の位置から前記第一距離以内である2点は、当該エリアの端縁である辺上にあってもよい。
【0028】
上記態様によれば、移動体システムは、可動移動体の移動によりカーペットがずれる等して可動移動体のタスクの実行の障害が生ずることを回避し得る。
【0029】
また、本発明の一態様に係る移動体システムは、空間内を移動可能である少なくとも4つの移動体を備える移動体システムであって、前記少なくとも4つの移動体のそれぞれは、前記空間内の第一エリアと、前記第一エリアと少なくとも一部が重複する第二エリアとの位置を示す地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも4つの移動体は、前記第一エリア内に位置しており、前記少なくとも4つの移動体のうちの3つの移動体のそれぞれは、前記制御部により、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止している基準移動体として機能し、前記少なくとも4つの移動体のうちの前記3つの移動体を除く移動体は、前記制御部により、当該移動体が有する前記測距センサによって計測された当該移動体から前記基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて前記第一エリア内で移動する可動移動体として機能し、前記少なくとも4つの移動体が第一エリアから前記第二エリアに移動する際には、(a)前記可動移動体は、前記制御部により、3つの前記基準移動体までの距離の計測を用いて前記第一エリアと前記第二エリアとの境界エリアに移動して一時的に停止し、(b)前記基準移動体は、前記制御部により、順次に、一時的に停止している前記可動移動体又は前記基準移動体の3つを用いて前記境界エリアに移動して一時的に停止し、(c)前記少なくとも4つの移動体のうちの3つの移動体それぞれは、前記制御部により、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止することで、新たな基準移動体として機能し、(d)前記少なくとも4つの移動体のうちの前記新たな基準移動体を除く移動体は、前記制御部により、当該移動体が有する前記測距センサによって計測された当該移動体から前記新たな基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて前記第二エリア内で移動する、新たな可動移動体として機能する。
【0030】
上記態様によれば、移動体システムは、空間内を移動する場合に、可動移動体の周囲に壁などの物がない等の理由で自己位置推定ができない場合に、基準移動体を利用して自己位置推定をする。そして、移動体システムが第一エリアから第二エリアに移動するときには、4つの移動体が一旦境界エリアに移動し、その後に第二エリアに移動するようにすることで、可動移動体による自己位置推定ができなくなることを回避することができる。そして、可動移動体が継続的に自己位置推定をしながら第一エリアから第二エリアに移動することができ、これを繰り返すことで複数のエリアを巡回することができる。このようにして、移動体がより適切な移動経路を移動することができる。
【0031】
また、本発明の一態様に係る制御方法は、面に沿って移動可能である少なくとも3つの移動体を備える移動体システムの制御方法であって、前記少なくとも3つの移動体のそれぞれは、前記面上の第一エリアと、前記第一エリアと少なくとも一部が重複する第二エリアとの位置を示す地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも3つの移動体は、前記第一エリア内に位置しており、前記少なくとも3つの移動体のうちの2つの移動体のそれぞれは、前記制御部により、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止している基準移動体として機能し、前記少なくとも3つの移動体のうちの前記2つの移動体を除く移動体は、前記制御部により、当該移動体が有する前記測距センサによって計測された当該移動体から前記基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて前記第一エリア内で移動する可動移動体として機能し、前記少なくとも3つの移動体が第一エリアから前記第二エリアに移動する際には、(a)前記可動移動体は、前記制御部により、2つの前記基準移動体までの距離の計測を用いて前記第一エリアと前記第二エリアとの境界エリアに移動して一時的に停止し、(b)前記基準移動体は、前記制御部により、順次に、一時的に停止している前記可動移動体又は前記基準移動体の2つを用いて前記境界エリアに移動して一時的に停止し、(c)前記少なくとも3つの移動体のうちの2つの移動体それぞれは、前記制御部により、前記第二エリア内の任意の位置から前記第一距離以内である位置に移動して一時的に停止することで、新たな基準移動体として機能し、(d)前記少なくとも3つの移動体のうちの前記新たな基準移動体を除く移動体は、前記制御部により、当該移動体が有する前記測距センサによって計測された当該移動体から前記新たな基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて前記第二エリア内で移動する、新たな可動移動体として機能する。
【0032】
上記態様によれば、上記移動体システムと同様の効果を奏する。
【0033】
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD-ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
【0034】
以下、実施の形態について、図面を参照しながら具体的に説明する。
【0035】
(実施の形態)
本実施の形態において、移動体がより適切な移動経路を移動することができる移動体システム1について説明する。移動体システム1は、所定のタスクを行う少なくとも3つの移動体10を備える。移動体10の一例は、面に沿って移動可能である掃除機であり、この場合、タスクは掃除である。
【0036】
なお、移動体10及びそのタスクは、掃除をする掃除機の他にも、各種センシングをする移動ロボット、物品を搬送する搬送ロボット、人とのコミュニケーションをするコミュニケーションロボットなどを含む。
【0037】
図1及び図2は、それぞれ本実施の形態における移動体10としての掃除機の外観を模式的に示す上面図及び側面図である。これらの図を参照しながら、移動体10の動作を説明する。なお、下記説明において、各図面中に示されるXYZ座標軸を用いた説明を行うこともある。またZ軸プラス方向を上方向ともいう。
【0038】
移動体10は、環境中において面9上を自律走行し、面9の掃除をする。移動体10は、自律的に自機の移動経路を決定し、決定した移動経路に沿って移動しながら面9上に存在するごみ等を吸引する。環境の一例は、住宅、オフィスビル、商業ビルを含む屋内空間である。タスクが実行される環境を総称して空間と表記しても良い。移動体10は、移動経路の決定に、SLAM技術(Simultaneous Localization and Mapping)による自己位置推定と地図作成とを利用することができる。
【0039】
例えば、移動体10は、壁4のような周囲の物との距離を光Lによって計測し、保有している地図と比較することで、地図上における自機の位置を推定し、また、地図の新たな部分を作成する。そして、推定した自機の位置に基づいて、保有している移動経路に沿って移動する制御をする。移動体10は、原則として矢印Aに示される方向に移動する。なお、「移動」の語は、「進行」又は「走行」とも表現され得る。また、矢印Aに示される方向は、移動方向、進行方向又は走行方向とも表現され得る。
【0040】
しかしながら、移動体10による自己位置推定が適切になされない場合がある。例えば、移動体10の周囲に図1に示される壁4のような周囲の物がない場合、または、周囲に何らかの物があってもその物が適切に光Lを反射しない場合には、図1に光Lとして示される光路の反射光が得られず、その結果、移動体10による自己位置推定が適切になされない。
【0041】
本実施の形態の移動体システム1は、上記のように自己位置推定が適切になされない場合であっても、複数の移動体による光の送受信を利用して自己位置推定を適切に行い得る。
【0042】
以降において、移動体10の詳細な構成及び処理について説明する。
【0043】
図3は、本実施の形態における移動体10としての掃除機の内部構造を模式的に示す上面図である。
【0044】
図3に示されるように、移動体10は、筐体11と、測距センサ12と、車輪15a及び15bと、モータ16a及び16bと、吸引部17と、ごみ箱18と、制御回路19と、電源20とを備える。
【0045】
筐体11は、移動体10の筐体であり、移動体10の外郭を規定する。筐体11は、上面視において略三角形の形状を有するが、どのような形状を採用してもよく、例えば、円形、四角形又は五角形等の形状を有してもよい。また、筐体11の寸法は、例えば、X軸方向及びY軸方向それぞれにおいて30cm程度、Z軸方向において10cm程度であるが、これに限定されない。
【0046】
測距センサ12は、移動体10の周囲に存在する物体と測距センサ12との離間距離を計測する。測距センサ12は、例えば光によって周囲の物体との距離を計測するレーザーレンジファインダ又はLiDAR(Light Detection and Ranging)装置により実現され得る。なお、以降では、測距センサ12がレーザーレンジファインダ又はLiDARで実現される場合を例として説明するが、これに限られず、超音波センサ、赤外線センサ又は電波センサであってもよい。
【0047】
測距センサ12は、筐体11の上面又は側面から露出して配置される。測距センサ12は、発光部と受光部とを有する。発光部は、XY平面に平行な方向に光線を出射し、受光部は、発光部から出射された光線を受ける受光部を有する。発光部及び受光部は、Z軸方向に平行な軸回りに旋回しながら光線の出射及び、光線の受光をすることで、移動体10の周囲に存在する物までの距離を測定する。旋回の速度は、例えば1秒間に5回転する速度である。また、測距センサ12による光の出射は、例えば、1回転の期間で360回行われる。測距センサ12は、所定の測定距離を有する。例えば、所定の測定距離の最大値を第一距離という。第一距離は、レーザーレンジファインダ又はLiDARの性能に依存する。第一距離の一例は、数m以上、数百m以下である。
【0048】
車輪15a及び15bは、移動体10を移動させる車輪である。車輪15a及び15bは、回転軸が筐体11に固定されており、車輪15a及び15bの回転により筐体11が移動する。車輪15a及び15bの回転は、それぞれモータ16a及び16bにより独立に制御される。車輪15a及び15bの材質は、ゴム又はナイロンなどである。なお、車輪15a及び15bを単に車輪15ともいう。
【0049】
モータ16a及び16bは、それぞれ独立に、車輪15a及び15bの回転を制御する。モータ16aは、制御回路19による制御の下で、車輪15aを回転又は停止させる。モータ16bは、制御回路19による制御の下で、車輪15bを回転又は停止させる。また、モータ16a及び16bの回転速度に差をつけることで移動体10の向きを変える、つまり方向転換をすることもできる。なお、モータ16a及び16bを単にモータ16ともいう。
【0050】
吸引部17は、面9上に存在するごみを吸引する。吸引部17は、筐体11の底面に配置される吸引口(不図示)を通じて、ごみを空気とともに吸い込む。また、吸い込んだごみをごみ箱18に排出する。吸引部17の幅、つまり、X軸方向の長さは、例えば15cm程度であるが、これに限定されない。吸引部17の吸引動作は、制御回路19により制御される。
【0051】
ごみ箱18は、吸引部17が空気とともに吸引したごみを、フィルタによって分離して格納する格納スペースである。
【0052】
制御回路19は、移動体10の各種機能を制御する。具体的には、制御回路19は、移動体10の移動経路の決定を行い、決定した移動経路に沿って移動体10が移動するようにモータ16a及び16bを制御する。制御回路19は、プロセッサ及びメモリを有し、プロセッサがメモリを用いてプログラムを実行することでその機能を実現し得る。
【0053】
制御回路19は、掃除のタスクを実行する際には、測距センサ12によって移動体10の周囲の物体との距離を取得し、SLAM技術に基づいて移動体10の移動経路を決定する。そして、モータ16a及び16bを制御することで、決定した移動経路に沿って移動体10を移動させながら、吸引部17によるごみの吸引を行う。
【0054】
電源20は、移動体10の各構成要素に電力を供給する電源装置である。電源20は、例えば、二次電池、より具体的にはリチウムイオン電池である。
【0055】
次に、制御回路19の機能及び処理についてさらに詳細に説明する。
【0056】
図4は、本実施の形態における移動体10の制御回路19の機能を詳細に示すブロック図である。
【0057】
図4に示されるように、制御回路19は、記憶部21と、制御部22とを備える。また、移動体10を移動させる機構である移動部23が図4に示されている。移動部23は、少なくとも車輪15及びモータ16に相当する。
【0058】
記憶部21は、移動体10が移動し得る空間を示す地図情報を記憶している。移動体10が面9上の掃除をする掃除機である場合、移動し得る空間は面9上の空間であり、移動体10の位置は2次元の座標系(X,Y)で示され得る。なお、地図情報を単に地図ともいう。また、地図情報には、上記空間に設定される複数のエリア(後述)の位置を示す情報が含まれている。
【0059】
制御部22は、移動部23による移動体10の移動を制御する。具体的には、制御部22は、測距センサ12が取得した距離情報に基づいて推定される移動体10の位置と、記憶部21が記憶している地図情報とを用いて、移動部23による移動体10の移動を制御する。制御部22は、移動部23による移動体10の移動を制御することで、移動体10を基準移動体として機能させたり、可動移動体として機能させたりする。ここで、基準移動体とは、所定の位置に一時的に停止して可動移動体による自己位置推定に用いられ得る移動体である。また、可動移動体とは、自機から基準移動体までの距離を測定することで自己位置推定をしながら移動し、所定のタスクを実行する移動体である。
【0060】
また、制御部22は、移動体10によるタスクの実行の制御を行う。移動体10が掃除機である場合には、制御部22は、タスクとして、所定の領域をくまなく移動しながら吸引部17を動作させてごみを吸引する動作を制御する。
【0061】
また、制御部22は、面9上の移動体10が移動し得る領域の地図に基づいて複数のエリアを設定する処理を行う。複数のエリアを設定する処理については後で説明する。
【0062】
移動体システム1は、複数のエリアを順に移動しながらタスクを実行する。複数のエリアのうち、互いに隣接する第一エリアから第二エリアに移動体システム1が移動する際の移動体の動作は以下のとおりである。
【0063】
当初、移動体システム1に含まれる少なくとも3つの移動体は、第一エリア内に位置している。このとき、少なくとも3つの移動体のうちの2つの移動体のそれぞれは、制御部22により、第一エリア内の任意の位置から測距センサ12による測距が可能である第一距離以内である位置に一時的に停止している基準移動体として機能している。また、少なくとも3つの移動体のうちの上記2つの移動体を除く移動体は、制御部22により、当該移動体が有する測距センサ12によって計測された当該移動体から基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて第一エリア内で移動する可動移動体として機能している。
【0064】
そして、少なくとも3つの移動体が第一エリアから第二エリアに移動する際には、以下のように動作する。
【0065】
(a)可動移動体は、制御部22により、2つの基準移動体までの距離の計測を用いて第一エリアと第二エリアとの境界エリアに移動して一時的に停止する。
【0066】
(b)基準移動体は、制御部22により、順次に、一時的に停止している可動移動体又は基準移動体の2つを用いて境界エリアに移動して一時的に停止する。
【0067】
(c)少なくとも3つの移動体のうちの2つの移動体それぞれは、制御部22により、第二エリア内の任意の位置から第一距離以内である位置に移動して一時的に停止することで、新たな基準移動体として機能する。
【0068】
(d)少なくとも3つの移動体のうちの新たな基準移動体を除く移動体は、制御部22により、当該移動体が有する測距センサ12によって計測された当該移動体から新たな基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて第二エリア内で移動する、新たな可動移動体として機能する。
【0069】
なお、基準移動体の機能と可動移動体の機能とは、動的に変更され得る。そのため、上記新たな可動移動体は、上記可動移動体とは異なる移動体となるように、移動体の機能が変更されてもよい。このようにすると、移動体ごとの電力消費が均一化され、移動体システム1全体として長時間駆動できる利点がある。なお、基準移動体は第一移動体及び第二移動体と表記され、可動移動体は第三移動体とも表記される。
【0070】
以降において、上記動作について、具体例に沿って詳しく説明する。
【0071】
図5は、本実施の形態における移動体システム1が移動し得る領域(移動可能領域ともいう)の一例である領域40と、その領域40内に位置する移動体とを模式的に示す説明図である。
【0072】
図5に示されるように領域40の外形は、上面視において矩形形状を有している。また、領域40に周囲を包囲された領域42は、移動体システム1が移動し得ない領域を示している。例えば、領域40は、比較的大きなホール又は倉庫などの空間に相当し、上記空間内において移動体10が侵入できないように壁で囲まれた部屋などが領域42に相当する。
【0073】
領域40において、移動体システム1に含まれる移動体10A、10B及び10C(移動体10A等ともいう)が移動しながらタスクを実行している。移動体10A等のそれぞれは、図1図4で説明した移動体10である。
【0074】
図6は、本実施の形態における移動体システム1が複数のエリアを巡回する際の処理を示すフロー図である。
【0075】
(ステップS100)
移動体システム1は、地図を取得する。具体的には、移動体システム1の移動体10A等それぞれの制御部22が、記憶部21に記憶されている地図を読み出すことで取得する。なお、制御部22は、移動体10A等の外部の機器から通信によって地図を取得してもよい。
【0076】
(ステップS101)
移動体システム1は、ステップS100で取得した地図に基づいて、移動体10A等の移動可能領域に複数のエリアを設定する。設定される複数のエリアは、隣接するエリアと一部が重複するように設定される。このように重複している領域を境界エリアと称する。なお、移動体システム1は、移動可能領域を分割することによって複数のエリアを設定してもよい。このとき、分割線は、当該分割線を辺とする2つのエリアの両方に属していることとする。よって、分割線は、上記2つのエリアの境界エリアに相当する。
【0077】
(ステップS102)
移動体システム1は、ステップS101で設定された複数のエリアに基づいて、各エリアをノードとしたグラフを作成する。このグラフに含まれる複数のノードは、複数のエリアに1対1に対応している。
【0078】
(ステップS103)
移動体システム1は、ステップS102で作成したグラフにおいて、すべてのノードを巡回する移動経路を特定する。
【0079】
(ステップS104)
移動体システム1は、ステップS103で特定した移動経路に従ってエリアを巡回しながらタスクを実行する。
【0080】
このようにして移動体システム1は、移動可能領域に設定された複数のエリアを巡回しながらタスクを実行する。以降において、移動体10A等の移動可能領域に設定される複数のエリアの例を2つ説明する。
【0081】
図7は、本実施の形態における移動体システム1により設定されるエリアの第一例であるエリア50を示す説明図である。図8は、図7に示されるエリア50の面積を示す説明図である。
【0082】
エリア50は、平行四辺形の形状を有している。この平行四辺形の4つの頂点のうち、対向する2つの頂点は、当該エリア内の任意の位置から測距センサ12による測距が可能である距離以内である2点それぞれを中心とした円である2つの円の2つの交点である。また、この平行四辺形は、上記2つの円の重複領域に内接している。
【0083】
図7には、平行四辺形であるエリア50とともに、エリア50内の任意の位置から測距センサ12による測距が可能である位置が点P及びQとして示されている。また、点Cは、エリア50の中心である。
【0084】
このとき、図7に示されるγ、h、w及びαは、それぞれ、以下の(式1)~(式4)により表される。ここで、測距センサ12による測距が可能である距離をrとし、d=||P-C||=||Q-C||、(ただしd<r/2)としている。
【0085】
【数1】
【数2】
【数3】
【数4】
【0086】
また、エリア50の面積は、以下の(式5)により表される。
【0087】
【数5】
【0088】
図8に示されるように、エリア50の面積は、d/rが大きいほど小さい。また、(式5)により、dが小さいほど、エリア50の面積が大きい。
【0089】
エリア50の面積が大きいほど、エリアの数がより少ない。そのため、移動体システム1がエリアごとにタスクを実行する場合には、各エリアの面積を大きくすることによって、タスクの実行に係る処理を少なくすることができ、処理負荷の軽減、及び、消費電力の低減の利点がある。よって、2台の移動体の間の距離として許容される距離、つまり、移動体同士が安全にすれちがいできる距離の最小値をdに設定することで、処理負荷の軽減、及び、消費電力の低減の効果を大きくすることができる。
【0090】
図9は、本実施の形態における移動体システム1により設定されるエリアの第二例であるエリア52を示す説明図である。図10は、図9に示されるエリア52の面積を示す説明図である。
【0091】
エリア52は、矩形の形状を有している。そして、当該エリア内の任意の位置から測距センサ12による測距が可能である距離以内である2点が矩形の端縁である辺上に設定されている。
【0092】
図9には、矩形であるエリア52とともに、エリア52内の任意の位置から測距センサ12による測距が可能である位置が、点P及びQとして示されている。また、点Cは、右側の辺の中点である。
【0093】
このとき、図9に示されるw及びhは、それぞれ、以下の(式6)及び(式7)により表される。
【0094】
【数6】
【数7】
【0095】
エリア52の面積は、エリア50と同様に、d/rが大きいほど小さい(図10参照)。よって、2台の移動体の間の距離として許容される距離の最小値をdに設定することで、処理負荷の軽減、及び、消費電力の低減の効果を大きくすることができる。
【0096】
図11は、本実施の形態における移動体システム1が設定する複数のエリアを示す説明図である。図11には、複数のエリアとして、48個のエリアA1、A2、・・・、A48が示されている。エリアA1等は、これらのエリアA1等により移動可能領域である領域40が覆われるように配置されている。
【0097】
図11に示されるエリアA1等のそれぞれは、図7に示される平行四辺形の形状を有するエリア50である。つまり、移動体システム1が、図5に示される移動可能領域を覆うように複数のエリア50を設定する(図6のステップS101)ことによって、図11のようにエリアA1等が設定される。
【0098】
なお、互いに隣接する2つエリアは、例えばエリアA1とエリアA2とのように直線で接する位置に配置される場合もあれば、エリアA24とエリアA25とのように幅を有する長尺形状の境界エリアを有する位置に配置される場合もある。また、例えばエリアA25及びA26のように当該エリアの一部に、移動体10A等が移動できない領域42を含むこともある。また、例えば、エリアA1及びA2のように当該エリアの一部に、移動可能領域の外側の領域を含むこともある。
【0099】
なお、エリアA1等は、それぞれ形状又は大きさが異なるものであってもよい。
【0100】
次に、設定されたエリアを移動体システム1が巡回するための移動経路を決定する処理を説明する。一般に、複数のエリアを巡回する移動経路は、各エリアをノードとして有するグラフにおいて巡回セールスマン問題の解を求めることで導かれる。巡回セールスマン問題の解は、周知の方法によって得られ得る。
【0101】
ただし、一般の巡回セールスマン問題の解法では、1つのエリアに一度だけ訪問することを条件として解が求められる。本実施の形態のように移動体が複数のエリアを巡回する移動経路を求める場合、1つのエリアに2度以上訪問することが許容される。そこで、各エリアをノードとして有するグラフに基づいて、各ノードが接続された完全グラフを用いて上記移動経路を求める方法を説明する。
【0102】
図12は、本実施の形態における移動体システム1がエリアに基づいてグラフを作成する処理を示すフロー図である。図13は、本実施の形態における移動体システム1が複数のエリアをノードに対応付けたグラフを示す説明図である。図14及び図15は、本実施の形態におけるグラフの修正の方法を示す説明図である。図16は、本実施の形態における移動体システム1が複数のエリアを移動する移動経路の一例を示す説明図である。
【0103】
図12に示される処理は、図6のステップS102及びS103に含まれる処理である。
【0104】
ステップS1021において、移動体システム1は、グラフGを取得する。図13に示されるように、グラフGは、図11に示されるエリアA1等をノードとするグラフである。また、互いに隣接する2つのエリアに対応する2つのノードが、グラフGにおいてエッジで結ばれている。
【0105】
ステップS1022において、移動体システム1は、グラフGと同じノードを有する完全グラフHを作成する。完全グラフHの任意の2つのノードを結ぶエッジのコストは、グラフGにおける上記2つのノード同士を結ぶ経路の最小コストに設定される。完全グラフHの生成方法を図14及び図15を参照しながら説明する。
【0106】
図14に示されるグラフGAは、5つのノードを有するグラフである。また、ノードを結ぶエッジのコストが、各エッジの近傍に示されている。グラフGAに基づいて生成される完全グラフHAを図15に示す。
【0107】
図15に示される完全グラフHAは、グラフGAと同じ5つのノードを有するグラフである。また、完全グラフHAの任意の2つのノードを結ぶエッジのコストは、グラフGにおける上記2つのノード同士を結ぶ経路の最小コストに設定されている。例えば、ノードN1からN5に至る経路のコストは、グラフGAにおけるノードN1とN4とを結ぶエッジのコストである3と、ノードN4とN5とを結ぶエッジのコストである1との和である4に設定されている。
【0108】
移動体システム1は、上記のようにグラフGAから完全グラフHAを得るために施した操作と同じ操作をグラフGに施すことによって、完全グラフHを得る。
【0109】
ステップS1031において、移動体システム1は、ステップS1022で作成した完全グラフHに対して、巡回セールスマン問題(TSP:Traveling Salesman Problem)の解を導出する。巡回セールスマン問題の解法は、既存のものを採用することができる。例えば、移動体10が掃除機であり、掃除のタスクを実行する場合には、エリアAiからエリアAjに移動するコストは、エリアAiからエリアAkに移動した後にエリアAkからエリアAjに移動するコストより小さいか等しい。このような場合には、周知のクリストフィードのアルゴリズム(Christofides algorithm)を採用し得る。
【0110】
ステップS1032において、ステップS1031で導出された解における完全グラフHのエッジを、対応するグラフGの経路に置き換える。これにより、図16に示される移動体システム1の移動経路を示すグラフG1が得られる。
【0111】
図17は、本実施の形態における移動体システム1が第一エリアから第二エリアに移動する際の移動体の動作を示すフロー図である。図18図24は、本実施の形態における移動体システム1が第一エリアから第二エリアに移動する際の移動体の位置を示す第一~第七の説明図である。なお、図18等において、エリアAiが第一エリアに相当し、エリアAjが第二エリアに相当し、エリアAiとエリアAjとの重複部分が境界エリアに相当する。
【0112】
図17は、図6のステップS104の詳細な処理を示すフロー図である。
【0113】
移動体システム1(つまり移動体10A、10B及び10C)は、当初、第一エリアであるエリアAiに位置しているとする。また、移動体10Aは点P1の位置で一時的に停止しており、移動体10Bは点Q1の位置で一時的に停止している。移動体10Cは、移動体10A及び10Bとの距離を計測することで自機の位置を推定しながらエリアAiの中で移動し、タスクを実行している(図18参照)。移動体10Cが、移動体10A及び10Bとの距離を計測することで自機の位置を推定する方法については後で説明する。
【0114】
(ステップS1041)
点Rに位置している移動体10Cが点Wに移動する。具体的には、移動体10Cは、一時的に停止している移動体10A及び10Bとの距離を計測することで自機の位置を推定しながら点Wに移動し、点Wで一時的に停止する(図19参照)。
【0115】
(ステップS1042)
点P1に位置している移動体10Aが点Uに移動する。具体的には、移動体10Aは、一時的に停止している移動体10B及び10Cとの距離を計測することで自機の位置を推定しながら点Uに移動し、点Uで一時的に停止する(図20参照)。
【0116】
(ステップS1043)
点Q1に位置している移動体10Bが点Vに移動する。具体的には、移動体10Bは、一時的に停止している移動体10A及び10Cとの距離を計測することで自機の位置を推定しながら点Vに移動し、点Vで一時的に停止する(図21参照)。
【0117】
(ステップS1044)
点Uに位置している移動体10Aが点P2に移動する。具体的には、移動体10Aは、一時的に停止している移動体10B及び10Cとの距離を計測することで自機の位置を推定しながら点P2に移動し、点P2で一時的に停止する(図22参照)。
【0118】
(ステップS1045)
点Vに位置している移動体10Bが点Q2に移動する。具体的には、移動体10Bは、一時的に停止している移動体10A及び10Cとの距離を計測することで自機の位置を推定しながら点Q2に移動し、点Q2で一時的に停止する(図23参照)。
【0119】
上記ステップS1045を終えると、移動体システム1(つまり移動体10A、10B及び10C)がすべて第二エリアであるエリアAjに位置している状態になっている。そして、移動体10Aが点P2の位置で一時的に停止しており、移動体10Bが点Q2の位置で一時的に停止している。移動体10Cは、移動体10A及び10Bとの距離を計測することで自機の位置を推定しながらエリアAjの中で移動し、タスクを実行している(図24参照)。
【0120】
図25は、本実施の形態における移動体10が実行する処理を示すフロー図である。
【0121】
(ステップS201)
移動体10は、タスクを開始する。
【0122】
(ステップS202)
移動体10は、タスクが終了したか否かを判定する。例えば、タスクが領域40の掃除である場合には、移動体システム1によって領域40内のすべての位置を、ごみを吸引しながら移動した場合に、タスクが終了したと判定する。タスクが終了したと判定した場合(ステップS202でYes)には、図25に示される一連の処理を終了し、そうでない場合(ステップS202でNo)には、ステップS202に進む。
【0123】
(ステップS203)
移動体10の制御部22は、自機が基準移動体であるか否かを判定する。自機が基準移動体であると判定した場合(ステップS203でYes)には、ステップS204に進み、そうでない場合(ステップS203でNo)には、ステップS205に進む。
【0124】
(ステップS204)
移動体10は、基準移動体の処理を実行する。基準移動体の処理の詳細は後で説明する。
【0125】
(ステップS205)
移動体10は、可動基準移動体の処理を実行する。可動移動体の処理の詳細は後で説明する。
【0126】
ステップS204又はS205を終えたら、移動体10は、ステップS202の処理を再び実行する。
【0127】
図26は、本実施の形態における移動体10が実行する、基準移動体の処理を示すフロー図である。図26に含まれる一連の処理は、図25のステップS204の処理を詳細に示すものである。
【0128】
(ステップS2041)
移動体10は、測距センサ12の受光部によって自機宛ての信号を受信したか否かを判定する。この信号は、例えば、他機の測距センサ12が送信する光信号であり、少なくとも送信元である移動体に固有のIDと、宛先である移動体(つまり当該光信号を受信する移動体)に固有のIDとを含む。自機宛ての信号を受信したと判定した場合(ステップS2041でYes)にはステップS2042に進み、そうでない場合(ステップS2041でNo)には、図26に示される一連の処理を終了する。
【0129】
(ステップS2042)
移動体10は、所定時間待機する。所定時間は、例えば、10msec~100msec程度である。
【0130】
(ステップS2043)
移動体10は、ステップS2041で受信した信号の応答として、応答信号を送信する。送信する応答信号は、少なくとも送信元である移動体10の固有のIDと、宛先である移動体(つまり当該応答信号を受信する移動体)に固有のIDとを含む。
【0131】
図26に示される一連の処理により、基準移動体は、可動移動体からの信号に対する応答信号を送信し、可動移動体による自己位置推定に寄与する。
【0132】
図27は、本実施の形態における移動体10が実行する、可動移動体の処理を示すフロー図である。
【0133】
(ステップS2051)
移動体10は、他機の位置を取得する必要があるか否かを判定する。移動体10は、例えば、自機が可動移動体であるときには、他機の位置を取得する必要があると判定する。移動体10は、他機の位置を取得する必要があると判定した場合(ステップS2051でYes)には、ステップS2052に進み、そうでない場合(ステップS2051でNo)には、図27に示される一連の処理を終了する。
【0134】
(ステップS2052)
移動体10は、他機が信号を送信しているか否かを判定する。他機が信号を送信していると判定した場合(ステップS2052でYes)には、その信号の送信終了まで待機(ステップS2061)した後に、再びステップS2052を実行する。一方、他機が信号を送信していないと判定した場合(ステップS2052でNo)には、ステップS2053に進む。
【0135】
(ステップS2053)
移動体10は、信号を送信する。送信する信号は、送信元である移動体10のIDを少なくとも含む。
【0136】
(ステップS2054)
移動体10は、タイマを開始させる。
【0137】
(ステップS2055)
移動体10は、測距センサ12の受光部が、何らかの信号を受信したか否かを判定する。何らかの信号を受信していないと判定した場合には、移動体10は、さらに、応答信号を受信するためのタイムアウト時間が経過したか否かを判定する。そして、何らかの信号を受信した場合、又は、タイムアウト時間が経過した場合には、ステップS2056に進み、そうでない場合には、ステップS2055を再び実行する。つまり、移動体は、測距センサ12の受光部が何らかの信号を受信するまでステップS2055で待機する。なお、タイムアウト時間は、予め定められた時間であり、例えば、基準移動体の待機時間の2倍などとすることができる。
【0138】
(ステップS2056)
移動体10は、ステップS2055で受信した信号が、ステップS2053で送信した信号に対する基準移動体による応答として正常な応答信号であるか否かを判定する。正常な応答信号であると判定した場合(ステップS2056でYes)には、ステップS2057に進み、そうでない場合(ステップS2056でNo)には、ランダム時間だけ待機(ステップS2065)した後に、ステップS2503に進む。
【0139】
(ステップS2057)
移動体10は、タイマを停止させ、ステップS2054でタイマを開始させてから、本ステップでタイマを停止させるまでの時間を計測する。
【0140】
(ステップS2058)
移動体10は、ステップS2057で計測した時間に基づいて、基準移動体までの距離を算出し、自機の位置を特定する。具体的には、ステップS2057で計測した時間には、測距センサ12の発光部が光を出射してから基準移動体に到達するまでの時間と、基準移動体の待機時間(図26のステップS2042参照)と、基準移動体が応答信号を含む光を出射してから測距センサ12の受光部に受光されるまでの時間とが含まれている。そこで、ステップS2057で計測した時間から基準移動体の待機時間を差し引いた上で2で割ることで、移動体10から基準移動体までの片道を光が進行するのに要した時間が得られ、これを用いて上記片道の距離が得られる。基準移動体までの距離の算出と自機の位置の特定との処理については後で詳しく説明する。
【0141】
(ステップS2059)
移動体10は、ステップS2058で算出した自機の位置を用いて、移動しながらタスクを実行する。
【0142】
図27に示される一連の処理により、可動移動体は、自機から基準移動体までの距離の計測を用いて自機の位置を特定しながら移動し、タスクを実行する。
【0143】
図28は、本実施の形態における移動体10A(自機ともいう)が、2台の基準移動体である移動体10B及び10C(他機ともいう)の位置と、2台の基準移動体である移動体10B及び10Cまでの距離とを用いて、自機の位置を推定する処理を示すフロー図である。図29は、本実施の形態における移動体10Aが、2台の基準移動体の位置と、2台の基準移動体までの距離とを用いて自機の位置を推定するときの位置関係を示す説明図である。
【0144】
ここで、移動体10Aは、図29の点Rに位置しているが、自機の現在の位置が不明である状態であるとする。移動体10B及び10Cは、基準移動体として機能しており、それぞれ、点P及び点Qに一時的に停止している。
【0145】
この状態で移動体10Aは、2台の基準移動体である移動体10B及び10Cの位置と、測距センサ12により取得できる2台の基準移動体である移動体10B及び10Cまでの距離とを用いて、以下の一連の処理により自機の位置を特定する。
【0146】
ステップS300において、移動体10Aは、2台の基準移動体である移動体10B及び10Cの位置であるP(Px,Py)及びQ(Qx,Qy)を取得する。なお、上記の移動体10B及び10Cの位置であるP(Px,Py)及びQ(Qx,Qy)は、例えば、移動体10A等同士の情報通信によって取得され得る。
【0147】
ステップS301において、移動体10Aは、測距センサ12による測距に基づいて、自機から、2台の基準移動体である移動体10B及び10Cそれぞれまでの距離p及びqを測定する。ここで、DxとDyは、式Dx=Qx-Px、Dy=Qy-Pyにより定義される。移動体10Aが距離p及びqを測定する処理については後で説明する。
【0148】
ステップS302において、移動体は、自機の位置の2つの候補であるR(Rx,Ry)及びR’(R’x,R’y)を以下の(式8)、(式9)、(式10)及び(式11)を用いて算出する。
【0149】
【数8】
【数9】
【数10】
【数11】
【0150】
ステップS303において、移動体10Aは、自機の位置の2つの候補であるR(Rx,Ry)及びR’(R’x,R’y)のいずれかに、自機の位置を特定する。自機の位置の特定方法は、さまざまな方法があり得る。例えば、移動体10Aは、前回の位置を記憶している場合には、直線PQに対して前回と同じ側の位置になるように特定することができる。前回の距離測定から比較的短い時間の間に直線PQを挟んで反対側の位置に移動する可能性が低いと考えられるからである。
【0151】
以上のようにして、移動体10Aは、2台の基準移動体である移動体10A及び10Bの位置と、測距センサ12により取得できる2台の基準移動体である移動体10A及び10Bまでの距離とを用いて、自機の位置を特定する。
【0152】
なお、タスクを実行するのは可動移動体だけでなく、基準移動体もタスクを実行し得る。図30は、本実施の形態における基準移動体のタスクの一例を示す説明図である。
【0153】
移動体が掃除機であり、掃除機によって掃除される面が、コンクリートなどの固定面の上に配置されたカーペットの面である場合、移動体が車輪によってカーペットの面の上を掃除しながら走行するとカーペットが固定面に対してずれることがある。固定面にはカーペットを含む。つまり、カーペットの上のカーペットであっても良い。
【0154】
そこで、図30の(a)~(d)に示されるように、可動移動体である移動体10Aが移動しながら掃除しているときに、基準移動体である移動体10B及び10Cは、カーペットの面を固定面に押さえつけるというタスクを実行する。このようにすると、移動体10Aがカーペットの面の上を掃除しながら走行するときにカーペットが固定面に対してずれることが抑制される効果がある。例えば、移動体10Aは、移動体10B及び移動体10Cを結ぶ直線上を通過する移動経路で移動する。移動体10Aは、カーペット上を往復運動する場合には、移動体10Aは、移動体10B及び移動体10Cを結ぶ直線上を通過する回数が多くなるように移動経路を設定することが望ましい。図30の一例では、移動体10Aが固定面からカーペット及びカーペットから固定面に移動する際に通過するカーペットの辺に対して、移動体10B及び移動体10Cは異なる辺でカーペットを固定するように位置する。例えば、移動体10B及び10Cは、平面視した場合に、少なくとも一部がカーペットの上に位置していれば良い。また、移動体10B及び10Cは、カーペットの4辺のいずれかの辺から所定の距離以内に位置することが望ましい。なお、カーペットの輪郭は4辺で規定されていなくても良く、カーペットの輪郭は4辺より多い数の辺で規定されている場合でも同様である。
【0155】
所定の距離の一例は、10cm~30cm、又は移動体の幅方向の大きさ以内である。また、移動体10B及び10Cは、カーペットの異なる辺を固定するように位置することが望ましい。例えば、図30において、移動体10B及び10Cは、カーペットの異なる辺に位置している。
【0156】
なお、エリアの境界は、実際に面上に描かれるものではないので、一般にはエリアの境界は視認されることがない。しかしながら、移動体が掃除機であり、移動体がエリアごとに順次に、当該エリアをくまなく掃除する場合には、移動体の軌跡を観察することでエリアの境界が視認され得る。
【0157】
図31は、本実施の形態における移動体の軌跡に基づいて視認され得るエリアの境界を示す説明図である。図31には、移動体10AがエリアAiをくまなく掃除するために移動した軌跡60が示されている。例えば移動している移動体10Aを動画で撮影することで軌跡60が得られれば、観測者が軌跡60を包囲する図形62を描くことによりエリアAiの近似的な形状を得ることができる。
【0158】
なお、本実施の形態では、移動体10AなどがLidarを備えることを前提としたが、移動体10Aなどは、かならずしもLidarを備えていなくてもよい。
【0159】
(実施の形態の変形例1)
図32は、実施の形態の変形例における移動体の一例を示す説明図である。
【0160】
図32に示される移動体10Dは、空間を移動可能である無人飛行体、いわゆるドローンである。
【0161】
移動体10Dは、移動部23として、例えば、モータ及びプロペラ等を備え、モータを回転動作させることで、移動体10Dが飛行動作を行う。なお、モータの代わりに、エンジンを採用することも可能である。
【0162】
移動体が3次元的に移動することができる場合、上記実施の形態におけるエリアは、3次元を有する空間である。また、地図情報は、3次元を有する地図情報である。
【0163】
そして、移動体が、自機の位置を推定するためには、少なくとも3つの基準移動体の位置、及び、3つの基準移動体と自機との距離が必要である。そのため本変形例における移動体システムは、3つの基準移動体を含む、少なくとも4つの移動体を備える。移動体システムの動作及び処理は、上記実施の形態におけるものと同様である。また、3つの基準移動体の位置、及び、3つの基準移動体と自機との距離から、自機の位置を推定する方法、つまり上記実施の形態における(式8)から(式11)に対応する、3つの基準位置を用いた方法は、公知の方法を採用し得るので詳細な説明は省略する。
【0164】
すなわち、本変形に係る移動体システムは、空間内を移動可能である少なくとも4つの移動体を備える。移動体システムに含まれる少なくとも4つの移動体は、第一エリア内に位置している。このとき、少なくとも4つの移動体のうちの3つの移動体のそれぞれは、制御部22により、第一エリア内の任意の位置から測距センサ12による測距が可能である第一距離以内である位置に一時的に停止している基準移動体として機能している。また、少なくとも4つの移動体のうちの上記3つの移動体を除く移動体は、制御部22により、当該移動体が有する測距センサ12によって計測された当該移動体から基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて第一エリア内で移動する可動移動体として機能している。
【0165】
そして、少なくとも4つの移動体が第一エリアから第二エリアに移動する際には、以下のように動作する。
【0166】
(a)可動移動体は、制御部22により、3つの基準移動体までの距離の計測を用いて第一エリアと第二エリアとの境界エリアに移動して一時的に停止する。
【0167】
(b)基準移動体は、制御部22により、順次に、一時的に停止している可動移動体又は基準移動体の3つを用いて境界エリアに移動して一時的に停止する。
【0168】
(c)少なくとも4つの移動体のうちの3つの移動体それぞれは、制御部22により、第二エリア内の任意の位置から第一距離以内である位置に移動して一時的に停止することで、新たな基準移動体として機能する。
【0169】
(d)少なくとも4つの移動体のうちの新たな基準移動体を除く移動体は、制御部22により、当該移動体が有する測距センサ12によって計測された当該移動体から新たな基準移動体それぞれまでの距離に基づいて推定される当該移動体の位置を用いて第二エリア内で移動する、新たな可動移動体として機能する。
【0170】
なお、基準移動体は第一移動体、第二移動体及び第三移動体と表記され、可動移動体は第四移動体とも表記される。
【0171】
これにより、空間内において移動体から測距可能な距離に壁などの物がない場合でも、移動体は、自己位置を推定により取得しながらタスクを実行することができる。
【0172】
(実施の形態の変形例2)
上記実施の形態では、制御回路19が制御部22を備える構成を説明したが(図4参照)、制御部22は、移動体10の外部に存在してもよい。その場合、制御回路19は、通信部を備え、その通信部が制御部22と通信によって制御信号の送受信を行い、上記実施の形態の制御部22と同じように移動体10の移動を制御する。なお、制御部22は、移動体10とネットワークを介して通信できる位置であれば、その位置は限定されず、ネットワーク上のサーバ、言い換えればいわゆるクラウドサーバ上に存在していてもよい。
【0173】
以上のように上記実施の形態及び上記変形例に係る移動体システムによれば、移動体システムは、面に沿って移動する場合に、可動移動体の周囲に壁などの物がない等の理由で自己位置推定ができない場合に、基準移動体を利用して自己位置推定をする。そして、移動体システムが第一エリアから第二エリアに移動するときには、3つの移動体が境界エリアに一旦移動し、その後に第二エリアに移動するようにすることで、可動移動体による自己位置推定ができなくなることを回避することができる。これにより、可動移動体が継続的に自己位置推定をしながら第一エリアから第二エリアに移動することができ、これを繰り返すことで複数のエリアを巡回することができる。このようにして、移動体がより適切な移動経路を移動することができる。
【0174】
また、移動体システムにおいて可動移動体として機能する移動体が交代することができる。これにより、複数の移動体に亘る電力消費の均一化の効果があり、ひいては、移動体システム全体として長時間駆動できる効果がある。
【0175】
また、平行四辺形の形状を有するエリアを用いて、移動体が移動し得る領域に、より容易に、複数のエリアを設定することができる。
【0176】
また、移動体システムにおいて可動移動体が移動するときに、基準移動体が存在していることによって、可動移動体の移動を制限したり、移動の邪魔になってしまったりすることが回避され得る。
【0177】
また、移動体システムは、可動移動体の移動によりカーペットがずれる等して可動移動体のタスクの実行の障害が生ずることを回避し得る。
【0178】
また、移動体システムは、空間内を移動する場合に、可動移動体の周囲に壁などの物がない等の理由で自己位置推定ができない場合に、基準移動体を利用して自己位置推定をする。そして、移動体システムが第一エリアから第二エリアに移動するときには、4つの移動体が一旦境界エリアに移動し、その後に第二エリアに移動するようにすることで、可動移動体による自己位置推定ができなくなることを回避することができる。そして、可動移動体が継続的に自己位置推定をしながら第一エリアから第二エリアに移動することができ、これを繰り返すことで複数のエリアを巡回することができる。このようにして、移動体がより適切な移動経路を移動することができる。
【0179】
なお、上記実施の形態及び変形例において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態及び変形例の移動体システムなどを実現するソフトウェアは、次のようなプログラムである。
【0180】
すなわち、このプログラムは、コンピュータに、空間を移動する少なくとも3つの移動体を備える移動体システムの制御方法であって、前記少なくとも3つの移動体のそれぞれは、第一エリアと、第二エリアと、前記第一エリアと前記第二エリアとが重複する境界エリアとを含む前記空間の地図情報を記憶している記憶部と、測距センサと、当該移動体を移動させる移動部と、前記測距センサが取得した距離情報に基づいて推定される当該移動体の位置と、前記記憶部が記憶している前記地図情報とを用いて、前記移動部による当該移動体の移動を制御する制御部とを備え、前記少なくとも3つの移動体は、第一移動体、第二移動体、及び第三移動体を含み、(i)前記少なくとも3つの移動体が前記第一エリア内で移動する際には、前記第一移動体及び前記第二移動体は、前記第一エリア内の任意の位置から前記測距センサによる測距が可能である第一距離以内である位置に一時的に停止し、前記第三移動体は、前記第三移動体が有する前記測距センサによって計測された前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とに基づいて推定される前記第三移動体の位置を用いて移動し、(ii)前記少なくとも3つの移動体が前記第一エリアから前記第二エリアに移動する際には、(a)前記第三移動体は、前記第三移動体から前記第一移動体までの距離と、前記第三移動体から前記第二移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(b)前記第三移動体が前記境界エリアに移動した後、前記第一移動体は、前記第一移動体から前記第二移動体までの距離と、前記第一移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止し、(c)前記第三移動体が前記境界エリアに移動した後、前記第二移動体は、前記第二移動体から前記第一移動体までの距離と、前記第二移動体から前記第三移動体までの距離とを用いて、前記境界エリアに移動して一時的に停止する制御方法を実行させる。
【0181】
以上、一つまたは複数の態様に係る移動体システムなどについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【0182】
本発明は、移動体がより適切な移動経路を移動する移動体システムに利用可能である。具体的には、掃除機、移動ロボット、搬送ロボット、コミュニケーションロボット、無人飛行体(ドローン)などに適用可能である。
【符号の説明】
【0183】
1 移動体システム
9 面
10、10A、10B、10C、10D 移動体
11 筐体
12 測距センサ
15、15a、15b 車輪
16、16a、16b モータ
17 吸引部
18 ごみ箱
19 制御回路
20 電源
21 記憶部
22 制御部
23 移動部
40、42 領域
50、52、A1、A2、・・・、A48、Ai、Aj エリア
60 軌跡
62 図形
G、G1、GA、H、HA グラフ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32