(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-19
(45)【発行日】2024-04-30
(54)【発明の名称】移動ロボットの案内のためにワイヤレス通信信号のマップを作成するための方法、システム、およびデバイス
(51)【国際特許分類】
G05D 1/243 20240101AFI20240422BHJP
G05D 1/43 20240101ALN20240422BHJP
【FI】
G05D1/243
G05D1/43
【外国語出願】
(21)【出願番号】P 2021198501
(22)【出願日】2021-12-07
(62)【分割の表示】P 2019560732の分割
【原出願日】2018-04-06
【審査請求日】2022-01-05
(32)【優先日】2017-05-05
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】313013863
【氏名又は名称】アイロボット・コーポレーション
(74)【代理人】
【識別番号】100188558
【氏名又は名称】飯田 雅人
(74)【代理人】
【識別番号】100154922
【氏名又は名称】崔 允辰
(72)【発明者】
【氏名】ポール・チャンバース
(72)【発明者】
【氏名】ジャスティン・エイチ・カーンズ
(72)【発明者】
【氏名】オルジェタ・タカ
(72)【発明者】
【氏名】マイケル・ジェイ・ドゥーリー
(72)【発明者】
【氏名】ニコライ・ロマノフ
(72)【発明者】
【氏名】ゲイリー・エリス・ホール
【審査官】大古 健一
(56)【参考文献】
【文献】特開2008-090575(JP,A)
【文献】米国特許出願公開第2015/0312774(US,A1)
【文献】特開2015-197341(JP,A)
【文献】特開2010-093520(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00 - 1/87
(57)【特許請求の範囲】
【請求項1】
受信機と、
ユーザインターフェースと、
前記受信機および前記ユーザインターフェースに結合されたプロセッサと、
前記プロセッサに結合されたメモリとを含み、前記メモリが、
少なくとも1つの移動ロボットの動作環境内での前記少なくとも1つの移動ロボットのナビゲーションに応じて、前記動作環境内で前記少なくとも1つの移動ロボットの位置特定センサーによって検出された位置特定データと、前記動作環境内で少なくとも1つの電子デバイスによって送信され、前記動作環境内で前記少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号の信号カバレッジデータとを、ユーザ端末の前記受信機によって受信する動作、
前記位置特定センサーによって検出された位置特定データを前記ワイヤレス通信信号の前記信号カバレッジデータと相互に関連付けることで、相互に関連付けされたマップを生成する動作、および
前記相互に関連付けされたマップを含むマップ情報の1つまたは複数の視覚的表現を前記ユーザ端末の前記ユーザインターフェースによって表示する動作
を含む動作を実行するために前記プロセッサによって実行可能であるコンピュータ可読プログラムコードを記憶する非一時的コンピュータ可読ストレージ媒体を含み、
前記位置特定データが、異なる時刻におよび/または異なる照明条件で前記少なくとも1つの移動ロボットに含まれる少なくとも1つのカメラによって検出された視覚的な位置特定データを含み、前記マップを生成する動作が、前記少なくとも1つの電子デバイス
の位置をアンカーポイントとして使用して前記異なる時刻におよび/または前記異なる照明条件で検出された前記視覚的な位置特定データから生成されたそれぞれの占有マップをマージすることを含む、ユーザ端末。
【請求項2】
前記1つまたは複数の視覚的表現が、
前記動作環境内で前記少なくとも1つの移動ロボットの前記位置特定センサーによって検出された障害物を含む前記動作環境の物理的特性を示す占有マップ、または
前記動作環境内のそれぞれの位置において前記少なくとも1つの移動ロボットの前記ワイヤレス受信機によって獲得された前記ワイヤレス通信信号のそれぞれの信号強度を含む前記動作環境の電気的特性を示す信号カバレッジマップを含む請求項1に記載のユーザ端末。
【請求項3】
前記信号カバレッジマップが、前記動作環境内の前記それぞれの位置において変化する色もしくは明るさのレベルによって前記ワイヤレス通信信号の前記それぞれの信号強度を示す二次元表現、または軸に対して相対的な前記動作環境内の前記それぞれの位置における前記ワイヤレス通信信号の前記それぞれの信号強度、および前記それぞれの位置の間の前記それぞれの信号強度の勾配の変化を示す三次元トポロジー表現を含む請求項2に記載のユーザ端末。
【請求項4】
前記占有マップが、前記動作環境内の前記少なくとも1つの電子デバイスの位置をさらに示す請求項2に記載のユーザ端末。
【請求項5】
前記占有マップが、前記少なくとも1つの電子デバイスから発せられた信号のグラフィカルな表現によって前記少なくとも1つの電子デバイスの前記位置を示す請求項4に記載のユーザ端末。
【請求項6】
前記動作が、
前記動作環境内の前記少なくとも1つの移動ロボットの現在位置の指示を受信する動作をさらに含み、
前記信号の前記グラフィカルな表現が、前記少なくとも1つの電子デバイスの前記位置との前記移動ロボットの前記現在位置の近さに基づいて変えられる請求項5に記載のユーザ端末。
【請求項7】
前記グラフィカルな表現が、色、明るさのレベル、および/または表示されるバンドもしくはリングの間の距離を変えられる請求項5に記載のユーザ端末。
【請求項8】
前記占有マップが、前記少なくとも1つの電子デバイスの種類、製造業者、および/またはモデルを含むアイデンティティをさらに示す請求項2に記載のユーザ端末。
【請求項9】
前記占有マップが、前記少なくとも1つの電子デバイスをモバイルまたは固定とさらに特定する請求項2に記載のユーザ端末。
【請求項10】
前記動作が、
前記少なくとも1つの移動ロボットの前記ワイヤレス受信機によって獲得された前記ワイヤレス通信信号に基づいて前記少なくとも1つの電子デバイスの位置変更のための前記動作環境内の1つまたは複数の提案される位置の指示を前記ユーザ端末の前記ユーザインターフェースによって表示する動作をさらに含む請求項1に記載のユーザ端末。
【請求項11】
前記動作が、
前記少なくとも1つの移動ロボットの前記ワイヤレス受信機によって獲得された前記ワイヤレス通信信号によって示される信号の干渉に基づいて前記少なくとも1つの電子デバイスによる通信のための1つまたは複数の提案される周波数またはチャネルの指示を前記ユーザ端末の前記ユーザインターフェースによって表示する動作をさらに含む請求項1に記載のユーザ端末。
【請求項12】
前記動作環境内の前記少なくとも1つの電子デバイスの位置が、前記ワイヤレス通信信号が前記少なくとも1つの電子デバイスから受信された最も最近の位置であり、前記動作が、
前記最も最近の位置の音声のおよび/または視覚的な指示を前記ユーザ端末の前記ユーザインターフェースによって提供する動作をさらに含む請求項4に記載のユーザ端末。
【請求項13】
前記マップ情報の前記1つまたは複数の視覚的表現が、前記ワイヤレス通信信号による信号カバレッジが弱いかまたはない前記動作環境内のエリアを示し、前記動作が、
前記信号カバレッジの改善のための提案を前記ユーザインターフェースによって表示する動作をさらに含む請求項1に記載のユーザ端末。
【請求項14】
ユーザ端末を動作させる方法であって、前記方法は、
前記ユーザ端末のプロセッサによって、
少なくとも1つの移動ロボットの動作環境内での前記少なくとも1つの移動ロボットのナビゲーションに応じて、前記動作環境内で前記少なくとも1つの移動ロボットの位置特定センサーによって検出された位置特定データと、前記動作環境内で少なくとも1つの電子デバイスによって送信され、前記動作環境内で前記少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号の信号カバレッジデータとを、前記ユーザ端末の受信機によって受信する動作である、受信する動作、
前記位置特定センサーによって検出された位置特定データを前記ワイヤレス通信信号の前記信号カバレッジデータと相互に関連付けることで、相互に関連付けされたマップを生成する動作、および
前記相互に関連付けされたマップを含むマップ情報の1つまたは複数の視覚的表現をユーザ端末のユーザインターフェースによって表示する動作
を含む動作を実行するステップを含み、
前記位置特定データが、異なる時刻におよび/または異なる照明条件で、前記少なくとも1つの移動ロボットに含まれる少なくとも1つのカメラによって検出された視覚的な位置特定データを含み、前記マップを生成する動作が、前記少なくとも1つの電子デバイス
の位置をアンカーポイントとして使用して前記異なる時刻におよび/または前記異なる照明条件で検出された前記視覚的な位置特定データから生成されたそれぞれの占有マップをマージすることを含む、方法。
【請求項15】
前記1つまたは複数の視覚的表現が、
前記動作環境内で前記少なくとも1つの移動ロボットの前記位置特定センサーによって検出された障害物を含む前記動作環境の物理的特性を示す占有マップ、または
前記動作環境内のそれぞれの位置において前記少なくとも1つの移動ロボットの前記ワイヤレス受信機によって獲得された前記ワイヤレス通信信号のそれぞれの信号強度を含む前記動作環境の電気的特性を示す信号カバレッジマップを含む請求項14に記載の方法。
【請求項16】
前記信号カバレッジマップが、前記動作環境内の前記それぞれの位置において変化する色もしくは明るさのレベルによって前記ワイヤレス通信信号の前記それぞれの信号強度を示す二次元表現、または軸に対して相対的な前記動作環境内の前記それぞれの位置における前記ワイヤレス通信信号の前記それぞれの信号強度、および前記それぞれの位置の間の前記それぞれの信号強度の勾配の変化を示す三次元トポロジー表現を含む請求項15に記載の方法。
【請求項17】
前記動作が、
前記少なくとも1つの移動ロボットの前記ワイヤレス受信機によって獲得された前記ワイヤレス通信信号に基づいて前記少なくとも1つの電子デバイスの位置変更のための前記動作環境内の1つまたは複数の提案される位置の指示を前記ユーザ端末の前記ユーザインターフェースによって表示する動作をさらに含む請求項14に記載の方法。
【請求項18】
前記動作が、
前記少なくとも1つの移動ロボットの前記ワイヤレス受信機によって獲得された前記ワイヤレス通信信号によって示される信号の干渉に基づいて前記少なくとも1つの電子デバイスによる通信のための1つまたは複数の提案される周波数またはチャネルの指示を前記ユーザ端末の前記ユーザインターフェースによって表示する動作をさらに含む請求項14に記載の方法。
【請求項19】
前記マップ情報の前記1つまたは複数の視覚的表現が、前記ワイヤレス通信信号による信号カバレッジが弱いかまたはない前記動作環境内のエリアを示し、前記動作が、
前記信号カバレッジを改善するためにワイヤレスルータの位置を変えるための提案、または、ユーザに対するワイヤレスルータデバイスの購入の提案を前記ユーザインターフェースによって表示する動作をさらに含む請求項14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、移動ロボット、ならびに移動ロボットを含むシステムおよび方法に関する。
【背景技術】
【0002】
(インターネットおよびリモートクライアントへのワイヤレス接続を含む)接続性が、しばらくの間、家庭用電化製品のために考えられてきた。用語「モノのインターネット」(IoT)は、すべての種類の家庭用製品が公衆インターネットに接続され得るという発想を表すようになった。接続されると、そのような製品は、サーバおよびクライアントデバイスに様々なデータをレポートすることができる。たとえば、「スマート」電球が、家庭用WLAN(ワイヤレスローカルエリアネットワーク)に接続される可能性がある。各電球は、マイクロプロセッサ、メモリ、ステータス、電力、およびワイヤレス接続を検出または解釈する何らかの手段を有する可能性がある。これらの構成要素を使用して、電球は、その電球のステータスをレポートすること、ポーリングされることなどが可能である。
【0003】
IoTデバイスが公衆インターネットに意味があるように接続するのに十分なだけのコンピューティングリソースまたは通信を通常含まない可能性があるという点で、IoTの概念は、概して、家庭用の接続性(たとえば、コネクテッドコンピュータ、ケーブルボックス(cable box)、メディアデバイスなど)とは異なると考えられる可能性がある。通常の冷蔵庫は、インターネットに接続しないが、IoTデバイスとしての同じデバイスは、計算、センサー、および通信ハードウェアと、リモートでおよびローカルでアドレス指定可能なエンティティになるのに十分なソフトウェアとを含み、期待されることは、このインターネット冷蔵庫が自身の様々な状態(電力消費など)をレポートし、リモートコマンドに応答する(内部温度を上げるまたは下げる)可能性があることである。
【0004】
家庭用移動ロボットも、IoTデバイスになる可能性がある。いくつかの点で、家庭用移動ロボットは、この仲間の中の異なる種と考えられる可能性がある。特に、家庭用移動ロボットの自律性は、家庭用移動ロボットを、予測不可能な変わり得る環境条件のなかで作動しないか、または任務を完遂するために数十もしくは数百のセンサー入力に基づいて自律的な判断を行わないその他の電化製品から分ける。たとえば、食器洗い機--たとえIoT食器洗い機であっても--は、その食器洗い機の中身については何も知らず、単純な詰まりまたはその他のセンサーによって潜在的に中断されるモーターおよびポンプを制御する単純なスクリプトに相当するものを実行する。対照的に、(iRobot(登録商標)Roomba(登録商標)ロボットなどの)掃除機ロボットは、その掃除機ロボットの任務中に様々な方法で自身の状態を検出する可能性があり、予測および計画活動に従事するだけでなく家庭の難しい状況から柔軟に逃れる可能性がある。したがって、家庭用移動ロボットの自律的な挙動をIoT接続性と統合することには困難が存在する可能性がある。
【先行技術文献】
【特許文献】
【0005】
【文献】米国特許第7,024,278号
【文献】米国公開特許出願第2007/0250212号
【発明の概要】
【課題を解決するための手段】
【0006】
本開示の一部の実施形態によれば、コンピューティングデバイスを動作させる方法が、コンピューティングデバイスのプロセッサによって動作を実行するステップを含む。動作は、動作環境内の移動ロボットのナビゲーションに応じて移動ロボットの少なくとも1つの位置特定センサーによって検出された位置特定データに基づく移動ロボットの動作環境に関する占有データ(occupancy data)を受信する動作、および動作環境内の移動ロボットのナビゲーションに応じて移動ロボットの少なくとも1つのワイヤレス受信機によって獲得されたワイヤレス通信信号に基づく動作環境に関する信号カバレッジデータを受信する動作を含む。ワイヤレス通信信号は、動作環境のローカルにある少なくとも1つの電子デバイスによって送信される。動作は、占有データと信号カバレッジデータとを相互に関連付けることによって動作環境内のそれぞれの位置におけるワイヤレス通信信号のカバレッジパターンを示すマップを生成する動作をさらに含む。
【0007】
一部の実施形態において、カバレッジパターンは、動作環境内のそれぞれの位置におけるワイヤレス通信信号のそれぞれの信号強度を示す可能性がある。動作は、カバレッジパターンに基づいて動作環境内の少なくとも1つの電子デバイスの位置を決定する動作をさらに含む可能性がある。
【0008】
一部の実施形態において、動作は、信号カバレッジデータによって示されるアドレス指定および/またはネットワークサービス情報に基づいて少なくとも1つの電子デバイスの種類、製造業者、および/またはモデルを特定する動作をさらに含む可能性がある。
【0009】
一部の実施形態において、少なくとも1つの位置特定センサーは、視覚的な位置特定センサーである可能性がある。動作は、少なくとも1つのモバイルデバイスの種類、製造業者、および/またはモデルに基づいて少なくとも1つのモバイルデバイスの位置における少なくとも1つのモバイルデバイスの配置を決定する動作、ならびに配置および位置を位置特定データ内の少なくとも1つのモバイルデバイスの画像と相互に関連付ける動作をさらに含む可能性がある。
【0010】
一部の実施形態において、位置特定データは、異なる時刻におよび/または異なる照明条件で少なくとも1つのカメラによって検出された視覚的な位置特定データを含む可能性があり、マップを生成する動作は、少なくとも1つの電子デバイスの位置をアンカーポイント(anchor point)として使用して異なる時刻におよび/または異なる照明条件で検出された視覚的な位置特定データから生成されたそれぞれの占有マップ(occupancy map)をマージすることを含む可能性がある。
【0011】
一部の実施形態においては、マップが動作環境内のそれぞれの位置におけるそれぞれの信号強度の集合を表す持続的なデータ構造を含むように、ワイヤレス通信信号が、時間の所定の継続時間にわたって獲得される可能性がある。
【0012】
一部の実施形態において、ワイヤレス通信信号は、1つもしくは複数の通信チャネルおよび/または1つもしくは複数の通信プロトコルを監視することに応じて移動ロボットの少なくとも1つのワイヤレス受信機によって獲得される可能性がある。
【0013】
一部の実施形態において、少なくとも1つの電子デバイスは、第1の電子デバイスである可能性があり、動作は、動作環境内の第2の電子デバイスにマップを送信する動作をさらに含む可能性がある。
【0014】
一部の実施形態において、移動ロボットは、動作環境内の第1の移動ロボットである可能性があり、第2の電子デバイスは、動作環境内の第2の移動ロボットである可能性があり、第2の移動ロボットは、視覚的な位置特定センサーを持たない可能性がある。
【0015】
一部の実施形態において、動作は、マップをコンピューティングデバイスの非一時的メモリに複数のマップのうちの1つとして記憶する動作、およびマップによって示されるそれぞれのカバレッジパターン内の非対称性に基づいてマップを動作環境の異なる高さのそれぞれのフロアに対応するものとして特定する動作をさらに含む可能性がある。
【0016】
一部の実施形態によれば、移動ロボットを動作させる方法が、移動ロボットのプロセッサによって動作を実行するステップを含む。動作は、動作環境内で移動ロボットをナビゲートするように駆動装置を動作させる動作、および動作環境内で移動ロボットをナビゲートするように駆動装置を動作させることに応じて、移動ロボットの少なくとも1つの位置特定センサーによって位置特定データを検出する動作を含む。動作は、動作環境内で移動ロボットをナビゲートするように駆動装置を動作させることに応じて、移動ロボットの少なくとも1つのワイヤレス受信機によってワイヤレス通信信号を獲得する動作であって、ワイヤレス通信信号が、動作環境のローカルにある少なくとも1つの電子デバイスによって送信される、獲得する動作、および少なくとも1つの位置特定センサーによって検出された位置特定データと少なくとも1つのワイヤレス受信機によって獲得されたワイヤレス通信信号との相互の関連付けに基づいて動作環境内の移動ロボットの位置を決定する動作をさらに含む。
【0017】
一部の実施形態において、動作は、動作環境内での移動ロボットの位置変更を検出する動作をさらに含む可能性がある。位置変更は、駆動装置を動作させることと無関係であり、駆動装置を動作させることの後に起こる可能性がある。移動ロボットの位置を決定する動作は、位置変更に応じて獲得されたワイヤレス通信信号のそれぞれの信号強度を、駆動装置を動作させることに応じて獲得されたワイヤレス通信信号のそれぞれの信号強度と比較することを含む可能性がある。
【0018】
一部の実施形態において、動作は、動作環境内のそれぞれの位置において少なくとも1つのワイヤレス受信機によって獲得されたワイヤレス通信信号のそれぞれの信号強度に基づいて動作環境内の少なくとも1つの電子デバイスの位置を決定する動作をさらに含む可能性があり、移動ロボットの位置を決定する動作は、動作環境内の少なくとも1つの電子デバイスの位置に対して相対的である可能性がある。
【0019】
一部の実施形態において、少なくとも1つの位置特定センサーは、カメラである可能性があり、位置特定データは、異なる時刻におよび/または異なる照明条件の下でカメラによって検出された視覚的な位置特定データである可能性がある。動作は、少なくとも1つの電子デバイスの位置をアンカーポイントとして使用して異なる時刻におよび/または異なる照明条件で検出された視覚的な位置特定データから生成されたそれぞれの占有マップをマージする動作をさらに含む可能性がある。
【0020】
一部の実施形態において、動作は、移動ロボットに関連するセンサーのアクティブ化に応じて動作環境内の少なくとも1つの電子デバイスの位置に移動ロボットをナビゲートするように駆動装置を動作させる動作、少なくとも1つの電子デバイスの位置に移動ロボットをナビゲートするように駆動装置を動作させることに応じて少なくとも1つの電子デバイスの位置において音声情報および/または視覚的情報を少なくとも1つの位置特定センサーによって取り込む動作、ならびに移動ロボットのワイヤレス送信機によって音声情報および/または視覚的情報をリモートデバイスに送信する動作をさらに含む可能性がある。
【0021】
一部の実施形態において、少なくとも1つの電子デバイスは、第1のデバイスおよび第2のデバイスである可能性がある。動作は、駆動装置を動作させることに応じて少なくとも1つのワイヤレス受信機によって第1のデバイスおよび第2のデバイスから獲得されたワイヤレス通信信号のそれぞれの信号強度に基づいて、第1のデバイスおよび第2のデバイスが互いのワイヤレス通信の範囲外にあることを特定する動作、ならびに移動ロボットのワイヤレス送信機によって、第1のデバイスおよび第2のデバイスのうちの1つについて検出された情報を第1のデバイスおよび第2のデバイスのうちの別の1つに送信する動作をさらに含む可能性がある。
【0022】
一部の実施形態において、情報は、第1のデバイスおよび第2のデバイスから獲得されたワイヤレス通信信号に基づいて第1のデバイスおよび第2のデバイスの干渉する通信を示す可能性がある。動作は、移動ロボットのワイヤレス送信機によって、第1のデバイスおよび第2のデバイスのうちの少なくとも1つの通信チャネルを変更するために第1のデバイスおよび第2のデバイスのうちの少なくとも1つに命令を送信する動作をさらに含む可能性がある。
【0023】
一部の実施形態において、少なくとも1つのワイヤレス受信機は、移動ロボットの伸縮式マスト(telescoping mast)もしくはその他のより高い見晴らしの良い地点に取り付けられるかまたは移動ロボットの伸縮式マストもしくはその他のより高い見晴らしの良い地点に結合される可能性があり、ワイヤレス通信信号を獲得する動作は、動作環境内のそれぞれの位置において少なくとも1つのワイヤレス受信機の高さを変えるように伸縮式マストまたはその他のより高い見晴らしの良い地点を動作させることに応じる可能性がある。
【0024】
一部の実施形態において、少なくとも1つの電子デバイスは、第1のデバイスおよび第2のデバイスである可能性がある。動作は、ワイヤレス受信機によって複数の通信プロトコルを監視する動作、ならびに監視することに応じて少なくとも1つのワイヤレス受信機によって第1のデバイスおよび第2のデバイスから獲得されたワイヤレス通信信号に基づいて、異なる通信プロトコルを使用して通信するように第1のデバイスおよび第2のデバイスが構成されることを特定する動作をさらに含む可能性がある。動作は、移動ロボットのワイヤレス送信機によって、第1のデバイスおよび第2のデバイスのうちの1つについて検出された情報を第1のデバイスおよび第2のデバイスのうちの別の1つに異なる通信プロトコルのそれぞれの通信プロトコルによって送信する動作をさらに含む可能性がある。
【0025】
一部の実施形態によれば、移動ロボットが、動作環境内で移動ロボットをナビゲートするように構成された駆動装置と、少なくとも1つの位置特定センサーと、少なくとも1つのワイヤレス受信機と、駆動装置、少なくとも1つの位置特定センサー、および少なくとも1つのワイヤレス受信機に結合されたプロセッサと、プロセッサに結合されたメモリとを含む。メモリは、動作環境内で移動ロボットをナビゲートするように駆動装置を動作させる動作、および駆動装置を動作させることに応じて、移動ロボットの少なくとも1つの位置特定センサーによって動作環境に関する位置特定データを検出する動作を含む動作を実行するためにプロセッサによって実行可能であるコンピュータ可読プログラムコードを記憶する非一時的コンピュータ可読ストレージ媒体を含む。動作は、駆動装置を動作させることに応じて、移動ロボットの少なくとも1つのワイヤレス受信機によってワイヤレス通信信号を獲得する動作であって、ワイヤレス通信信号が、動作環境のローカルにある少なくとも1つの電子デバイスによって送信される、獲得する動作、および少なくとも1つの位置特定センサーによって検出された位置特定データと少なくとも1つのワイヤレス受信機によって獲得されたワイヤレス通信信号との相互の関連付けに基づいて動作環境内の移動ロボットの位置を決定する動作をさらに含む。
【0026】
一部の実施形態によれば、ユーザ端末を動作させる方法が、ユーザ端末のプロセッサによって動作を実行するステップを含む。動作は、少なくとも1つの移動ロボットの動作環境内での少なくとも1つの移動ロボットのナビゲーションに応じて、動作環境内で少なくとも1つの移動ロボットの位置特定センサーによって検出された位置特定データと動作環境内で少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号との相互の関連付けに基づくマップ情報を、ユーザ端末の受信機によって受信する動作を含む。ワイヤレス通信信号は、動作環境のローカルにある少なくとも1つの電子デバイスによって送信される。動作は、マップ情報の1つまたは複数の視覚的表現をユーザ端末のユーザインターフェースによって表示する動作をさらに含む。
【0027】
一部の実施形態において、1つまたは複数の視覚的表現は、動作環境内で少なくとも1つの移動ロボットの位置特定センサーによって検出された障害物を含む動作環境の物理的特性を示す占有マップ、および/または動作環境内のそれぞれの位置において少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号のそれぞれの信号強度を含む動作環境の電気的特性を示す信号カバレッジマップを含む可能性がある。
【0028】
一部の実施形態において、信号カバレッジマップは、動作環境内のそれぞれの位置において変化する色および/もしくは明るさのレベルによってワイヤレス通信信号のそれぞれの信号強度を示す2次元表現、ならびに/または軸に対して相対的な動作環境内のそれぞれの位置におけるワイヤレス通信信号のそれぞれの信号強度、およびそれぞれの位置の間のそれぞれの信号強度の勾配の変化を示す3次元トポロジー表現(topological representation)である可能性がある。
【0029】
一部の実施形態において、占有マップは、動作環境内の少なくとも1つの電子デバイスの位置をさらに示す可能性がある。
【0030】
一部の実施形態において、占有マップは、少なくとも1つの電子デバイスから発せられた信号のグラフィカルな表現によって少なくとも1つの電子デバイスの位置をさらに示す可能性がある。
【0031】
一部の実施形態において、動作は、動作環境内の少なくとも1つの移動ロボットの現在位置の指示を受信する動作をさらに含む可能性がある。信号のグラフィカルな表現は、少なくとも1つの電子デバイスの位置との移動ロボットの現在位置の近さに基づいて変えられる可能性がある。
【0032】
一部の実施形態において、グラフィカルな表現は、色、明るさのレベル、および/または表示されるバンドもしくはリングの間の距離を変えられる可能性がある。
【0033】
一部の実施形態において、占有マップは、少なくとも1つの電子デバイスの種類、製造業者、および/またはモデルを含むアイデンティティ(identity)をさらに示す可能性がある。
【0034】
一部の実施形態において、占有マップは、少なくとも1つの電子デバイスをモバイルまたは固定とさらに特定する可能性がある。
【0035】
一部の実施形態において、動作は、少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号に基づいて少なくとも1つの電子デバイスの位置変更のための動作環境内の1つまたは複数の提案される位置の指示をユーザ端末のユーザインターフェースによって表示する動作をさらに含む可能性がある。
【0036】
一部の実施形態において、動作は、少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号によって示される信号の干渉に基づいて少なくとも1つの電子デバイスによる通信のための1つまたは複数の提案される周波数またはチャネルの指示をユーザ端末のユーザインターフェースによって表示する動作をさらに含む可能性がある。
【0037】
一部の実施形態において、動作環境内の少なくとも1つの電子デバイスの位置は、ワイヤレス通信信号が少なくとも1つの電子デバイスから受信された最も最近の位置である可能性があり、動作は、最も最近の位置の音声のおよび/または視覚的な指示をユーザ端末のユーザインターフェースによって提供する動作をさらに含む可能性がある。
【0038】
一部の実施形態において、マップ情報の1つまたは複数の視覚的表現は、ワイヤレス通信信号による信号カバレッジが弱いかまたはない動作環境内のエリアを示す可能性があり、動作は、信号カバレッジの改善のための提案をユーザインターフェースによって表示する動作をさらに含む可能性がある。
【0039】
一部の実施形態において、少なくとも1つの電子デバイスは、ワイヤレスルータデバイスである可能性があり、提案は、新しいワイヤレスルータデバイスの購入に関するインセンティブである可能性がある。
【0040】
一部の実施形態によれば、ユーザ端末が、受信機と、ユーザインターフェースと、受信機およびユーザインターフェースに結合されたプロセッサと、プロセッサに結合されたメモリとを含む。メモリは、少なくとも1つの移動ロボットの動作環境内での少なくとも1つの移動ロボットのナビゲーションに応じて、動作環境内で少なくとも1つの移動ロボットの位置特定センサーによって検出された位置特定データと動作環境内で少なくとも1つの移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号との相互の関連付けに基づくマップ情報を、ユーザ端末の受信機によって受信する動作を含む動作を実行するためにプロセッサによって実行可能であるコンピュータ可読プログラムコードを記憶する非一時的コンピュータ可読ストレージ媒体を含む。動作は、マップ情報の1つまたは複数の視覚的表現をユーザ端末のユーザインターフェースによって表示する動作をさらに含む。
【0041】
一部の実施形態によれば、ユーザ端末を動作させる方法が、ユーザ端末のプロセッサによって動作を実行するステップを含む。動作は、動作環境内でのナビゲーションに応じて移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号に基づいて移動ロボットの動作環境のそれぞれの位置にワイヤレスルータの信号カバレッジがないことを示す情報をユーザ端末の受信機によって受信する動作を含む。動作は、ワイヤレスルータの信号カバレッジがないことを示す情報に基づいてワイヤレスルータデバイスの購入に関するインセンティブをユーザ端末のユーザインターフェースによって表示する動作をさらに含む。
【0042】
上述の実施形態のいずれかのおよびすべての組合せを含む本開示のさらなる特徴、利点、および詳細は、以下の実施形態の図面および詳細な説明を読むことにより当業者に理解され、そのような説明は、本開示を例示するに過ぎない。
【図面の簡単な説明】
【0043】
【
図1A】本開示の実施形態によるシステムを表す概略図である。
【
図1B】本開示の実施形態による、内部にインストールされた
図1Aのシステムを含む動作環境を示す概略図である。
【
図2A】
図1Aのシステム内で動作するように構成される、本開示の実施形態による移動ロボットの上面斜視図である。
【
図2B】
図1Aのシステム内で動作するように構成される、本開示の実施形態による移動ロボットの下面斜視図である。
【
図2C】
図1Aのシステム内で動作するように構成される、本開示の実施形態による移動ロボットを表す概略図である。
【
図3】
図1Aのシステム内で動作するように構成される、本開示の実施形態によるリモートサーバを表す概略図である。
【
図4】
図1Aのシステム内で動作するように構成される、本開示の実施形態によるユーザ端末を表す概略図である。
【
図5A】動作環境内の様々な位置において本開示の実施形態による移動ロボットによって獲得されたワイヤレス通信信号のカバレッジパターンを示すグラフである。
【
図5B】動作環境内の様々な位置において本開示の実施形態による移動ロボットによって獲得されたワイヤレス通信信号のカバレッジパターンを示す地形グラフである。
【
図5C】動作環境内の様々な位置において本開示の実施形態による移動ロボットによって獲得されたワイヤレス通信信号のカバレッジパターンを示す地形グラフである。
【
図6A】動作環境内で本開示の実施形態による移動ロボットによって取得された信号カバレッジデータと占有データとの相互の関連付けを示すグラフである。
【
図6B】動作環境内で本開示の実施形態による移動ロボットによって取得された信号カバレッジデータと占有データとの相互の関連付けを示すグラフである。
【
図6C】動作環境内で本開示の実施形態による移動ロボットによって取得された信号カバレッジデータと占有データとの相互の関連付けを示すグラフである。
【
図7】本開示の実施形態による移動ロボットによって取得された信号カバレッジデータと占有データとの相互の関連付けに基づいてコネクテッドデバイスのそれぞれの位置および識別情報を示すデータ入りの間取り図である。
【
図8A】本開示の実施形態による移動ロボットによって取得された信号カバレッジデータと占有データとの相互の関連付けに基づいて2次元のカバレッジパターンを示す図である。
【
図8B】本開示の実施形態による移動ロボットによって取得された信号カバレッジデータと占有データとの相互の関連付けに基づいて3次元のカバレッジパターンを示す図である。
【
図9】本開示の実施形態によるコンピューティングデバイスの少なくとも1つのプロセッサによって実行される可能性がある動作を示す流れ図である。
【
図10】本開示の実施形態によるコンピューティングデバイスの少なくとも1つのプロセッサによって実行される可能性がある動作を示す流れ図である。
【
図11】本開示の実施形態によるコンピューティングデバイスの少なくとも1つのプロセッサによって実行される可能性がある動作を示す流れ図である。
【
図12A】本開示の実施形態によるデバイスのシステムを示す図である。
【
図12B】本開示の実施形態による関連する動作を示す図である。
【
図13】本開示の実施形態によるユーザ端末のユーザインターフェースおよび関連する動作を示す平面図である。
【
図14】本開示の実施形態によるユーザ端末のユーザインターフェースおよび関連する動作を示す平面図である。
【
図15】本開示の実施形態によるユーザ端末のユーザインターフェースおよび関連する動作を示す平面図である。
【
図16】本開示の実施形態によるユーザ端末のユーザインターフェースおよび関連する動作を示す平面図である。
【
図17】本開示の実施形態によるユーザ端末のユーザインターフェースおよび関連する動作を示す平面図である。
【発明を実施するための形態】
【0044】
本開示の実施形態は、移動ロボットの自律的な機能がその移動ロボットの独立した位置特定能力に基づいてIoT接続性との統合のための独自の利点を提供する可能性があるという認識から生まれる可能性がある。特に、動作環境をナビゲートしている間に(たとえば、家庭の動作環境内で清掃の任務または巡回の任務を実行する際に)、移動ロボットは、動作環境の1つまたは複数のエリアの隅々までワイヤレス通信の信号カバレッジデータを同時に、断続的に、または後で獲得するように構成される可能性がある。たとえば、移動ロボットは、IoT対応デバイスなどの複数の電子デバイスによって送信されるワイヤレス通信信号の複数のサンプルまたは読み取り値を獲得し、動作環境の隅々までワイヤレス通信信号が受信されるそれぞれの個々の電子デバイスに関する(トポロジーマップ(topological map)として表される可能性があるRSSIフィールドマップなどの)ワイヤレス通信信号の2次元または3次元表現を構築するために(たとえば、受信信号強度に基づいて)獲得されたワイヤレス通信信号の時間的および地理的平均を実行するように構成される可能性がある。そのような信号カバレッジマップは、磁気に基づくナビゲーションに影響を与える可能性がある歪みがない可能性がある。
【0045】
一部の実施形態において、動作環境の床面に沿った複数の2次元位置において取得されたワイヤレス通信信号の読み取り値は、家庭内のそれぞれの位置におけるワイヤレス通信の信号強度の2次元マップにデータを投入するために使用される可能性がある。2次元マップは、ネットワークエンティティがアクセス可能である非一時的コンピュータ可読メモリに記憶される可能性があり、ネットワークを介して移動ロボットと通信するヒューマンマシンインターフェースデバイス上に表示される可能性がある。そのようなヒューマンマシンインターフェースデバイスは、ディスプレイおよび/またはタッチスクリーンならびにワイヤレスネットワークインターフェース、プロセッサ、およびメモリを有するモバイルハンドセットスマートフォン、パーソナルコンピュータ、スマートウォッチ、モバイルタブレットを含むがこれらに限定されない。
【0046】
一部の実施形態において、家庭内の複数の2次元位置において取得されたワイヤレス通信信号の読み取り値は、家庭内のそれぞれの位置におけるワイヤレス通信の信号強度の3次元マップにデータを投入するために使用される可能性がある。たとえば、3次元マップは、x軸およびy軸が動作環境の間取り図に対応し、z軸が信号強度に対応するトポロジーマップである可能性があり、(変化の割合および変化の方向を含む)z方向の傾斜の変換は、x方向およびy方向のそれぞれの位置に関する一意の「シグネチャ」を提供する可能性がある。ワイヤレス通信信号の読み取り値は、複数の目的で使用される可能性がある。たとえば、ワイヤレス通信信号の読み取り値は、(たとえば、位置特定を改善するために)移動ロボットによって内部で使用される可能性があり、(たとえば、それぞれのデバイスの機能を改善するために)1つもしくは複数のその他の電子デバイスと共有される可能性があり、および/または(たとえば、ネットワーク機能を改善するために)ユーザ端末と共有される可能性がある。
【0047】
「移動ロボット」は、変わり得る環境条件をナビゲートし、複数のセンサー入力に基づいて自律的な判断を行うためのプロセッサ、メモリ、および駆動システムを含む任意のデバイスを指す可能性がある。本明細書において説明される移動ロボットは、(iRobot(登録商標) ROOMBA(登録商標)、BRAAVA(登録商標)、および/またはBRAAVA Jet(商標)掃除機などの)ロボット掃除機と、自律的な巡回ロボットとを含む可能性がある。一部のそのような自律的な巡回ロボットは、1つまたは複数のセンサー要素が取り付けられるかまたはその他の方法で動作可能なように関連付けられる伸縮式マストを含む可能性がある。
【0048】
「ワイヤレス通信信号」は、ネットワーク対応電子デバイス(「コネクテッドデバイス」とも呼ばれる)によって送信される任意の信号を指す可能性がある。そのような電子デバイスは、ワイヤレスパーソナル、ローカル、および/または広域ネットワークを介して通信するためのプロセッサ、メモリ、ならびにワイヤレス送信機および/または受信機を含む可能性があり、IoTデバイスを含む可能性があるがこれらに限定されない。ワイヤレス通信信号は、Wi-Fi信号、Bluetooth(登録商標)信号、ZigBee信号、および/もしくはZ-wave信号を含むがこれらに限定されない無線周波数信号、ならびに/または光信号を含む可能性がある。そのような電子デバイスは、公衆インターネットに意味があるように接続するのに十分なだけのコンピューティングリソースまたは通信を含む可能性がありまたは含まない可能性がある。
【0049】
図1A、
図1B、および
図2~
図4を参照すると、本開示の実施形態によるシステム100が、関連する生活構造物(living structure)10に設置される。構造物10は、一戸建て住宅(single-family home)、集合住宅(multi-family dwelling)(たとえば、一戸の重層型アパート(duplex)、アパート、コンドミニアムなど)、移動住宅、または商業用生活空間(たとえば、オフィスもしくはスタジオ)を含むがこれらに限定されない家または住居である可能性がある。構造物10は、(ゾーンA~Cとして示される)1つまたは複数の定義されたゾーンに(物理的に、空間的に、および/または機能的に)細分される可能性がある生活空間20または内部空間を定義する可能性があり、一部の実施形態において、ゾーンは、台所であるゾーンA、居間であるゾーンB、および寝室であるゾーンCなどの生活構造物10内の部屋に対応する可能性がある。定義されたゾーンA~Cは、壁によって分けられる可能性があり、または壁による分割なしに1つに混ざり合うオープンコンセプトエリアである可能性がある。構造物10は、窓30、ドア32、(消耗するランプ34Aを有する)照明器具34、TV36(またはその他の電子機器)、ならびに暖房、換気、および空調システム(HVAC)40を有する。人Pが、生活空間20を占有する可能性がある。
【0050】
図1Aおよび
図1Bを参照すると、システム100は、ネットワーク対応移動ロボット200、1つまたは複数のワイヤレスアクセスポイント(WAP)164、(IoTデバイスを含む)ネットワーク対応または「コネクテッド」電子デバイス120、122、124を相互に接続するローカルエリアプライベートネットワーク160を作るために異なるネットワーキング方法を相互に接続するゲートウェイおよび/またはハブ110、ネットワーク対応オートメーションコントローラデバイス126、127、128、やはりネットワーク対応オートメーションコントローラデバイスである可能性があるロボットドック140、ならびに複数のそのような機能を組み合わせる可能性がある製品などのノードを含む。プライベートネットワーク160は、生活構造物10によって囲まれた生活空間20のすべてまたはほとんどをまたはその辺りを十分にカバーするための組み合わされたワイヤレス範囲を有する1つまたは複数のワイヤレスアクセスポイント(WAP)164、ゲートウェイ、またはハブ110を含む。プライベートネットワーク160に接続されたネットワーク接続されたデバイスは、WANインターフェース170Aおよびその関連するWAN接続170Bを介して公衆ネットワーク170に到達するためにルータ/ファイアウォール162を通じてリモート管理サービス150と通信することができる。たとえば、リモート管理サービス150は、クラウドコンピューティングデバイスである可能性があり、公衆ネットワーク170は、インターネットである可能性があり、WANインターフェース170Aは、DSL、DOCSIS、またはセルラモデムである可能性があり、その関連するWAN接続170Bは、インターネットサービスプロバイダ(ISP)によって提供される可能性がある。ルータ162、WAP164、および/またはモデム170Aは、様々な構成で単一のデバイスに統合される可能性がある。ローカルユーザ端末142、400が、プライベートネットワーク160に(有線またはワイヤレスで)接続される可能性がある。たとえば、ローカルユーザ端末142、400は、PC、スマートフォン、またはタブレットコンピュータである可能性がある。リモートユーザ端末144、400は、公衆ネットワーク170を介してリモートサーバ150および/またはプライベートネットワーク160に接続される可能性がある。ハブ110、ロボット200、ローカルユーザ端末142、400、およびリモートユーザ端末144、400は、本明細書において説明されるようにノード110、200、140、142、144、400、および150の間の通信および制御を可能にする目標デバイス(たとえば、クライアントデバイス上のウェブブラウザを通じてローカルネットワークを介してUIを提示するウェブサーバ)において具現化される共通のネットワークサービスを通じてかまたは特別なクライアント(たとえば、ダウンロード可能なもしくは予めインストールされたアプリケーションソフトウェアアプリ)を介してかのどちらかでそれぞれアクセスされる可能性がある。本明細書において検討されるネットワークエンティティは、ネットワークに登録されるマシンおよび/またはコントローラであり、通信信号を送信および受信するための一意アドレスを割り振られ、同じネットワークまたは接続されたネットワーク上のその他のネットワークエンティティのマシンおよび/またはコントローラによって利用され得る可能性がある。
【0051】
一部の実施形態において、「同じネットワーク」は、公衆インターネットとプライベートネットワークとの間のネットワークアドレス変換(NAT)を提供するルーティングネットワークエンティティ162の裏側のプライベートIP(インターネットプロトコル)サブネット上の1組のプライベートアドレスを指す可能性がある。プライベートネットワークに接続された各ネットワークエンティティは、その他のアクティブなネットワークエンティティのネットワーク通信を観測することおよび/または応答を求めてプライベートネットワークの可能なIPサブネットをスキャンすることのどちらかによってその他のアクティブなネットワークエンティティのネットワークアドレスを推定することができる。いくつかのゲートウェイ/ハブが、どのデバイスがそのゲートウェイ/ハブに関連付けられているかおよび/またはそのゲートウェイ/ハブを通じて到達可能であるかを列挙することができるネットワークサービスを提供する。これらの技術は、それぞれのアクティブなデバイスのIPアドレスおよび/またはそれらのアクティブなデバイスのMAC(媒体アクセス制御)アドレスの一方または両方を生み出す。アドレス解決プロトコル(ARP)ネットワークサービスは、一方の種類のアドレスを他方の種類のアドレスにマッピングすることができる。一部の実施形態においては、本明細書においてより詳細に検討されるように、(移動ロボット200などの)ネットワークエンティティのプロセッサ上で実行されるルーチンが、(コネクテッドデバイス120、122、124、126、127、128などの)別のネットワークエンティティのネットワークアドレスを収集し、生活構造物10内の物理的な位置と相互に関連付けられる可能性があるそのネットワークエンティティの種類、製造業者、および/またはモデルを特定することができる。
【0052】
ロボットドック140は、電源を含むかまたは電源に接続され、移動ロボット200がロボットドック140に有効につながれるときに移動ロボット200のバッテリに充電するように動作可能な充電器を含む可能性がある。ドック140は、ロボット200からゴミを空にするように作動可能なモーター付きの容器を含む排出ステーションである可能性がある。一部の実施形態において、ドック140は、ロボット200からプライベートネットワーク160へのおよび/またはプライベートネットワーク160から移動ロボット200へのデータの送信を可能にするまたは容易にするためにプライベートネットワーク160に(有線またはワイヤレスで)接続される。したがって、ロボットドック140は、オートメーションコントローラデバイスと考えられる可能性がある。一部の実施形態において、ロボットドック140は、Bluetooth(登録商標)、近接場誘導(nearfield induction)、IR、および/または無線通信信号を含むがこれらに限定されないワイヤレス手段によって移動ロボット200と直接通信する。それぞれのコネクテッドデバイス120、122、124、126、127、128、140は、WAP164を介してハブ110および/またはプライベートネットワーク160と通信するための(Wi-Fiトランシーバなどの)ワイヤレストランシーバを含む可能性がある。特定のコネクテッドデバイス120、122、124、126、127、128、140が示されているが、より多くのまたはより少ないコネクテッドデバイスが、動作環境10に含まれる可能性があり、プライベートネットワーク160と通信する可能性がある。
【0053】
移動ロボット200は、任意の好適なロボットおよび関連するコンピューティングデバイスである可能性があり、本明細書において説明される構成要素、特徴、および機能のすべてが本開示の実施形態による移動ロボットにおいて必要とされるわけではないことは、理解されるであろう。
図2A~
図2Cを参照すると、例示的な移動ロボット200は、車台210、コントローラ220、メモリ222、バッテリ224、バッテリ充電器226、ヒューマンマシンインターフェース(HMI)228、駆動システム230、マップ作成/ナビゲーションシステム240、サービス動作システム242(本明細書においては「掃除システム」および「クリーニングヘッド」とも呼ばれる)、ワイヤレス通信システム250、IRエミッタ260、および環境センサー270A~H、(掃除動作によって収集されたゴミを溜めるための)ゴミ貯蔵容器242A、貯蔵容器レベルセンサー242B、(掃除動作によって収集されたゴミの特徴の密度を検出するための)汚れ抽出センサー242C、インジケータライト274A、オーディオトランスデューサ274B、および掃除モード選択スイッチまたはボタン274Cを含む。
【0054】
環境センサー270A~270Hは、
図2Aの上面斜視図に示されるように、移動ロボット200の上面に取り付けられたカメラ270Bを含む可能性がある。カメラ270Bは、ロボット200をナビゲートし、その他の運用上の用途のために画像を獲得するために使用され得る。一部の実施形態において、カメラ270Bは、視覚的同時位置特定およびマップ作成(VSLAM: visual simultaneous location and mapping)カメラであり、動作環境内の特徴および目標物を検出し、それらに基づいて占有マップを構築するために使用される。
【0055】
図2Bの下面斜視図に示されるように、移動ロボット200は、移動ロボット筐体106の外縁に取り付けられるかまたはそれ以外の方法で位置付けられるバンパー104、段差センサー(cliff sensor)195A~195D、縁ブラシ111をさらに含む可能性がある。筐体106は、バンパー104が取り付けられる四角い形の前方の部分を有するものとして
図2A~
図2Bに示されるが、その他の実施形態において、筐体は、丸みのある形または円形である可能性がある。キャスターホイール196が、移動ロボット200の下側に設けられる可能性がある。一部の実施形態において、キャスターホイール196は、クリーニングヘッド242がカンチレバー構成になるように、移動ロボット200の、クリーニングヘッド242と反対の端に位置付けられる可能性があり、それらの間に駆動ローラー/キャタピラ(track)232A、232Bがある。移動ロボット200は、下向きのまたは床を向いたカメラ197も含む可能性がある。一部の実施形態において、移動ロボット200は、概して、好適な修正を施された、米国特許第7,024,278号および米国公開特許出願第2007/0250212号に記載の1台のRoomba(登録商標)床掃除ロボットおよび/または複数台のRoomba(登録商標)床掃除ロボットの方法で構成されるかまたはそれらの床掃除ロボットの特徴を含む可能性があり、これらの特許文献の開示は、参照により本明細書に組み込まれる。その他の実施形態において、移動ロボット200は、概して、取り付けられたまたはそれ以外の方法で動作可能なように関連付けられたセンサー要素270A~Hおよび/またはワイヤレス通信回路もしくはシステム250に関連する1つまたは複数の要素を有する伸縮式マストを含む自律的な巡回ロボットとして構成される可能性がある。
【0056】
コントローラ220は、任意の好適に構成された1つのプロセッサまたは複数のプロセッサを含む可能性がある。プロセッサは、1箇所にまとめて置かれるかまたは1つもしくは複数のネットワークに分散される可能性がある(マイクロプロセッサおよび/またはデジタル信号プロセッサなどの)汎用および/または専用プロセッサなどの1つまたは複数のデータ処理回路を含む可能性がある。プロセッサは、実施形態のうちの1つまたは複数に関して上で説明されている動作および方法の一部またはすべてを実行するために、下でコンピュータ可読ストレージ媒体として説明されるメモリ222に記憶されたプログラムコードを実行するように構成される。メモリ222は、本開示の一部の実施形態によるロボットの動作を容易にするために使用されるソフトウェアおよびデータを含む1つまたは複数のメモリデバイスを表す。メモリ222は、以下の種類のデバイス、すなわち、キャッシュ、ROM、PROM、EPROM、EEPROM、フラッシュ、SRAM、およびDRAMを含む可能性があるがこれらに限定されない。したがって、プロセッサは、コントローラ200、メモリ222、掃除システム242、および駆動システム230と通信する。
【0057】
駆動システム230は、ロボット200を生活空間20中で能動的に制御可能なように移動させるための任意の好適なメカニズムまたはシステムを含む可能性がある。一部の実施形態によれば、駆動システム230は、1つのローラー、複数のローラー、1つのキャタピラ、または複数のキャタピラ232A、232Bと、動作環境10の床を横断してロボット200を運ぶためにコントローラ220によって操作可能な1つまたは複数の搭載された(つまり、移動ロボット200によって運ばれる)電気モーター234(本明細書においては集合的に「駆動装置」または「駆動システム」と呼ばれる)とを含む。
【0058】
サービス動作システム242は、一部の実施形態において任意である可能性があり、生活空間20内でサービス動作を実行するように動作可能である。一部の実施形態によれば、サービス動作システム242は、ロボット200が空間20内を移動するときに生活空間20の床面を掃除する床掃除システムを含む。一部の実施形態において、サービス動作システム242は、床に掃除機をかけるための吸い込みヘッドおよび搭載された真空発生装置を含む。一部の実施形態において、サービス動作システム242は、掃き掃除またはモップがけメカニズム、1つまたは複数の回転ブラシ、ローラー、静止したまたは発振および/もしくは振動する濡れ布巾または乾布巾、あるいは多層パッド組立体などの(しかしこれらに限定されない)エンドエフェクタを含む。
【0059】
ワイヤレス通信システム250は、動作環境10内でロボット200と様々なその他のコネクテッドデバイス120、122、124、126、127、128との間のワイヤレス通信を可能にするためのワイヤレス通信トランシーバまたはモジュール252および関連するアンテナ254と、移動ロボット200がノードを形成するプライベートネットワーク160を構成するWAP、ゲートウェイ、およびハブによってサービスを提供されるネットワークセグメントとを含む。たとえば、ワイヤレス通信トランシーバまたはモジュール252は、Wi-Fiモジュールである可能性がある。
【0060】
一部の実施形態において、ロボット200は、狭帯域または広帯域RF通信を使用してドック140とワイヤレスで直接通信する可能性がある。たとえば、ロボット200がWAP164に対応した送信機を備えていない場合、ロボット200は、ドック140と通信する可能性があり、そして今度は、ドック140が、ロボット200からプライベートネットワーク160およびその先の(リモート管理サーバ150などの)意図されるネットワークエンティティにデータを中継する可能性がある。一部の実施形態において、ドック140は、ロボット200からRF信号を受信し、変換し、リモート管理サーバ150またはプライベートネットワーク160内の別のデバイスに届けるためにそれらのRF信号をルータによってサポートされるフォーマットでルータ162に中継するネットワークブリッジデバイスを含む。一部の実施形態において、ドック140は、RF通信信号が移動ロボット200とドック140との間でノードからノードへと中継されるメッシュトポロジーを使用する低電力メッシュデータネットワークを含む。この場合、コネクテッドデバイス120、122、124、126、127、128、140および(もしあれば)範囲拡張器モジュール(図示せず)が、メッシュノードとして働く可能性がある。同様に、移動ロボット200は、ドック140と(ネットワーク対応センサーデバイス120、122、124、126、127、128、140および範囲拡張器などの)その他のノードとの間で信号を中継するためのノードとして働く可能性がある。
【0061】
リモート管理サーバ150は、任意の好適なコンピューティングデバイス、コンピュータサーバ、またはクラウドサービス、またはこれらの組合せである可能性があり、本明細書において説明される構成要素、特徴、および機能のすべてが本開示の実施形態によるリモートサーバにおいて必要とされるわけではないことは、理解されるであろう。
図3の例を参照すると、リモート管理サーバ150は、1つまたは複数のネットワークインターフェース330、プロセッサ回路(「プロセッサ」)310、およびプログラムコード322を含むメモリ320を含む。ネットワークインターフェース330は、1つまたは複数の有線および/またはワイヤレスネットワークを通じて任意の関連する利用可能なリソースサーバおよび/またはデータリポジトリと通信するように構成され得る。プロセッサ310は、1箇所にまとめて置かれるかまたは1つもしくは複数のネットワークに分散される可能性がある(マイクロプロセッサおよび/またはデジタル信号プロセッサなどの)汎用および/または専用プロセッサなどの1つまたは複数のデータ処理回路を含む可能性がある。プロセッサ310は、実施形態のうちの1つまたは複数に関して上で説明されている動作および方法の一部またはすべてを実行するために、下でコンピュータ可読ストレージ媒体として説明されるメモリ320に記憶されたプログラムコード322を実行するように構成される。メモリ320は、本開示の一部の実施形態によるロボットを管理するための動作を容易にするために使用されるソフトウェアおよびデータを含む1つまたは複数のメモリデバイスを表す。メモリ320は、以下の種類のデバイス、すなわち、キャッシュ、ROM、PROM、EPROM、EEPROM、フラッシュ、SRAM、およびDRAMを含む可能性があるがこれらに限定されない。したがって、
図3のリモートサーバ150は、本明細書において説明される一部の実施形態による移動ロボットによって取得された情報を管理および/または配信する際に使用される可能性があるハードウェア/ソフトウェアアーキテクチャを示す。しかし、本開示の実施形態がそのような構成に限定されず、本明細書において説明される動作を実行することができる任意の構成を包含するように意図されることは、理解されるであろう。したがって、リモート管理サーバ150は、
関連する方法およびテクノロジーの任意の適切な組合せを使用することによって稼働中の1つまたは複数のロボット200からデータを受信し、処理し、改良し、記憶し、それらのロボット200にデータを送信する能力を有するリモート管理サービスを提供する任意のデバイスまたはデバイスのネットワークをより広く表す可能性がある。リモート管理サービス150は、ユーザ端末142、144上で提示するための視覚化およびその他のリッチなUIインタラクションなどの、ロボット200と異なるニーズを有するその他のクライアントをサポートするための追加的な処理も提供する。一部の実施形態において、本明細書においてリモート管理サービス150に割り振られる機能は、ロボットのローカルですべてもしくは部分的に、または通信するロボットおよび/もしくはサーバのグループと協力/連携して実行される可能性もある。
【0062】
ユーザ端末142、144は、(デスクトップコンピュータ、ラップトップコンピュータ、および「スマートフォン」を含む)任意の好適な固定またはモバイルコンピューティングデバイスである可能性があり、本明細書において説明される構成要素、特徴、および機能のすべてが本開示の実施形態によるユーザ端末において必要とされるわけではないことは、理解されるであろう。
図4の例を参照すると、例示的なユーザ端末400が、複数の有線および/またはワイヤレス通信インターフェースを介して通信信号を送信および/または受信するように構成される。たとえば、一部の実施形態によるユーザ端末400のトランシーバ440は、セルラ通信モジュール、赤外線(IR)通信モジュール、全地球測位システム(GPS)モジュール、WLANモジュール、Bluetooth(登録商標)、Wi-Fi、ZigBee、および/もしくはZ-waveモジュールなどのワイヤレスパーソナルエリアネットワーク(WPAN)モジュール、ならびに/またはその他の種類の通信モジュールを含み得る。
【0063】
ユーザ端末400のユーザインターフェース410は、液晶ディスプレイ(LCD)および/または有機発光ダイオード(OLED)ディスプレイなどのディスプレイ408を含む。任意で、ユーザインターフェース410は、ユーザ端末400の筐体上にキーパッド402またはその他のユーザ入力メカニズムを含む可能性がある。一部の実施形態において、ディスプレイ408は、キーパッド402を置き換えるおよび/または補うタッチスクリーン能力を設けられる可能性がある。ユーザインターフェース410は、マイクロフォン406およびイヤホン/スピーカ404をさらに含む可能性がある。筐体は、イヤホン/スピーカ404がユーザの頭にくっつけて配置されるときにユーザの耳を音響的に密閉するように設計される可能性がある。
【0064】
キーパッド402、ディスプレイ408、マイクロフォン406、スピーカ404、およびカメラ424は、ユーザ端末400の動作を制御するように構成される可能性があるマイクロプロセッサまたはマイクロコントローラなどのプロセッサ427に結合される可能性がある。ユーザ端末400は、プロセッサ427に結合されたトランシーバ440およびメモリ428をさらに含む可能性がある。WLAN通信インターフェース、Bluetooth(登録商標)インターフェース、GPSインターフェース、デジタル信号プロセッサなどのその他の電子回路も、ユーザ端末400の電子回路に含まれる可能性がある。
【0065】
メモリ428は、プロセッサ427のためのプログラム命令422と、プロセッサ427によってアクセスおよび/または使用される可能性がある音声データ、映像データ、構成データ、および/またはその他のデータなどのデータとの両方を記憶するために使用される汎用メモリである可能性がある。メモリ428は、不揮発性読み出し/書き込みメモリ、読み出し専用メモリ、および/または揮発性読み出し/書き込みメモリを含む可能性がある。特に、メモリ428は、基本的なオペレーティングシステム命令が記憶される読み出し専用メモリ、構成情報、ディレクトリ情報、およびその他の情報などの再使用可能なデータが記憶される可能性がある不揮発性読み出し/書き込みメモリ、ならびに短期的命令および/または一時データが記憶される可能性がある揮発性読み出し/書き込みメモリを含む可能性がある。
【0066】
トランシーバ440は、アンテナアレー450A、450Bを介してリモートトランシーバに無線周波数信号を送信し、無線周波数信号を受信するために協力する送信機回路442、受信機回路444、およびモデム446を含む。ユーザ端末400とリモートトランシーバとの間で送信される無線周波数信号は、トラフィック信号と、別の関係者または送信先との通信を確立し、維持するために使用される制御信号(たとえば、着呼に関する呼び出し信号/メッセージ)との両方を含む可能性がある。より具体的には、トランシーバ440は、プロセッサ427と協力して、セルラ、(802.11を含む)WLAN、WiMAX(マイクロ波アクセスのための世界的相互運用性)、Wi-Fi、Bluetooth(登録商標)、ZigBee、および/またはZ-waveを含む(しかしこれらに限定されない)複数の無線アクセスおよび/またはワイヤレスネットワーキングテクノロジーによる通信のために構成される可能性がある。その他の無線アクセス技術および/または周波数帯域も、本開示による実施形態において使用され得る。
【0067】
再び
図2Cを参照すると、移動ロボット200は、(たとえば、レーザー距離測定器、ソナー、レーダー、三角測量、飛行時間(time-of-flight)、または位相差計算を使用して)壁および障害物の距離に基づくメトリックマップを構築し、ならびに/または空き空間(たとえば、通過可能なフロアの空間、またはオブジェクトもしくは固定物によって占有されていないフロアの空間)の占有マップを構築し、スキャンマッチング、ICP(反復最近点(iterative closest point))、および/またはRANSAC(ランダムサンプルコンセンサス(RANdom Sample consensus))などの技術を使用してマップ上のロボットの位置を測定することができる位置特定回路を含む可能性がある。追加的にまたは代替的に、移動ロボット200は、空き空間の占有マップ内の特徴、目標物、基準、および/またはビーコンのフィンガープリントを作成された特徴に基づくコンスタレーションまたはトポロジーマップ(fingerprinted, feature-based constellation or topological map)を(たとえば、カメラまたは点群を生成する3Dスキャナを、自然のまたは人工のキーポイント(keypoint)、特徴、および/または目標物を特定し、記憶し、認識するための特徴変換と一緒に使用して)構築し、VSLAM(視覚に基づく/視覚的同時位置特定およびマップ作成(vision-based/visual simultaneous localization and mapping))などの技術を使用してこの占有マップ上のロボットの位置を測定することができる位置特定回路を含む可能性がある。どちらの場合も、(ゾーン1、ゾーン2、ゾーン3として示される)一意の部屋またはエリアにリンクされた一意のアイデンティティが、エンドユーザによってネットワークエンティティのいずれかのユーザインターフェースを介して家庭の部屋の種類または一意の部屋ラベル(「居間」)に関連付けられる可能性がある。占有マップ(本明細書においては動作環境に関する「間取り図」とも呼ばれる)は、占有されているか、移動ロボット200によって通過可能であるか、またはまだ探索されていない表面位置にピクセル位置が対応するかどうかに対応する値をそれぞれが有する環境10内の複数の表面位置を(たとえば、ピクセルによって)定義するデータを含む可能性がある。位置特定回路は、動作環境10内で位置特定を実行するためにコントローラ220によって使用される可能性がある移動ロボット200のセンサー270A~270Hのうちの1つまたは複数からの入力によって定義される可能性がある。
【0068】
より具体的には、位置特定センサー270A~270Hのうちの1つまたは複数が、動作環境10内に置かれたオブジェクトからセンサー読み取り値を検出するように構成され、コントローラ220が、位置特定センサー270A~270Hによって検出された位置特定データに基づいて、観測されるオブジェクト(「オブジェクト」は観測可能な特徴を含む物理的なオブジェクトのみでなく、角、線、パターンなどの光学的にまたはその他の方法で検出可能な表面の特徴で形成された表面「オブジェクト」も含む)に対する移動ロボット200の現在の姿勢(「姿勢」は絶対的なまたは相対的な位置および任意で絶対的なまたは相対的な向きを含む)を決定するように構成される。オブジェクトに関する姿勢も、決定される可能性がある。移動ロボット200は、占有マップによって示されるように、ロボットの姿勢(または位置)を、部屋の中に配置されたまたは部屋の構成要素(壁、天井、証明、戸口、家具)上で観測可能な観測されるオブジェクトまたはそれらの姿勢に特に関連する部屋識別子と関連付けるようにさらに構成される可能性がある。
【0069】
さらに、
図2Cを参照すると、移動ロボットは、表面のそれぞれの位置において獲得されたまたはそうでなければ検出されたワイヤレス通信信号のカバレッジパターンおよび信号強度を定義するデータを含むデータを、信号カバレッジマップを構築し、改良するソフトウェアによって定義されたプロセスへの入力として収集するワイヤレス信号マップ作成回路または能力を含む可能性がある。信号カバレッジマップは、VSLAMなどの技術によって取得された占有マップと組み合わせてロボット200の位置を測定するために使用される可能性もある。より具体的には、動作環境10のナビゲーション中に(たとえば、掃除の任務にあたっている間に)、移動ロボット200のコントローラ220は、ワイヤレス通信回路250によって動作環境内のそれぞれの位置でワイヤレス通信信号を獲得するように構成される。ワイヤレス通信信号は、(コネクテッドデバイス120、122、124、126、127、128などの)環境10のローカルにある1つまたは複数のその他の電子デバイスによって送信される可能性がある。動作環境内で感知されたワイヤレス通信信号のカバレッジパターンは、視覚的同時位置特定およびマップ作成(VSLAM)技術を含むがこれらに限定されないその他の手段によって感知された間取り図と相互に関連付けられた、動作環境を包含するワイヤレス信号「地勢(terrain)」マップを提供するためにそれぞれの位置に関連付けられ、メモリ222に記憶される可能性がある。この「地勢」マップは、間取り図のそれぞれの位置における受信信号強度、信号対雑音比(SNR)、データスループット、および/またはマルチパス歪みを含む信号の特徴を表す可能性があり、3次元地形フォーマットで視覚的に表される可能性がある。受信されたワイヤレス通信および/またはその信号強度/SNR/データスループット/歪みの組合せは、動作環境内の一意の位置(もしくははっきりしない場合、小さな集合)を特定する可能性があり、ならびに/または感知されているRFの「地勢」がおそらく与えられないその他の手段によって推定された位置に関する潜在的な候補を破棄もしくは削除するために使用される可能性があり、それによって、コントローラ220は、位置特定および位置再特定がより少ない時間を必要とする可能性があるように、位置特定センサー270
A~270Hによって取得された占有データに基づくだけでなく、ワイヤレス通信回路250によって取得された信号カバレッジデータにも基づいて動作環境10内の移動ロボット200の位置を決定するように構成される。
【0070】
たとえば、移動ロボット200が拾い上げられ、動作環境内の「新しい」位置に動かされる場合、コントローラ220は、「地勢」マップによって示される新しい位置における受信信号強度、受信信号強度の勾配、および/または勾配の変化の方向に基づいて動作環境内の移動ロボット200の新しい位置を決定する可能性がある。コントローラ220は、信号強度の勾配が新しい位置において移動によって変化する方向のみに基づいてまたはそれと視覚的位置特定技術とを組み合わせて移動ロボット200の現在の姿勢をさらに決定および/または検証する可能性がある。
【0071】
一部の実施形態において、移動ロボット200のコントローラ220は、たとえば、動作環境10内のデバイス120、122、124、126、127、128のうちの1つまたは複数の位置に対して、占有データと信号カバレッジデータとの間の相互の関連付けに基づいて(現在の姿勢を含む)移動ロボット200の位置を決定するように構成される可能性がある。占有データと信号カバレッジデータとの相互の関連付けは、一部の実施形態において、移動ロボット200のコントローラ220自体によって実行される可能性がある。その他の実施形態において、移動ロボット200によって取得された占有データおよび信号カバレッジデータは、リモートサーバ150に送信される可能性があり、リモートサーバ150が、占有データと信号カバレッジデータとの相互の関連付けを実行する可能性があり、位置特定において使用するために移動ロボット200におよび移動ロボット200からデータを伝達する可能性がある。
【0072】
図5A、
図5B、および
図5Cを参照すると、動作環境内の電子デバイスのそれぞれの位置を決定するための、
図1Bに示された環境10などの動作環境内の1つまたは複数の電子デバイスのWi-Fiフィールド(Wi-Fi field)のマップを作成するために、移動ロボット200および/またはリモートサーバ150によって動作が実行される。移動ロボット200が主な任務、たとえば、掃除および/または巡回の任務で動作環境をナビゲートしている間に、
図5A~
図5Cに示されるWi-Fi信号を獲得するための動作が実行される可能性がある。特に、動作環境のナビゲーション中に、モバイル端末のワイヤレス通信回路250が、たとえば、シングルまたはマルチチャネルスキャンを使用して動作環境内の複数の位置における信号カバレッジを示すWi-Fi信号を獲得する可能性がある。移動ロボット200のコントローラ(および/または移動ロボット200と通信するリモートサーバ150)が、カバレッジパターンに基づいて動作環境内のそれぞれの位置におけるワイヤレス通信信号の(信号強度、信号対雑音比、データスループット、および/またはマルチパス歪みを含むがこれらに限定されない)それぞれの信号特性を決定する可能性があり、それぞれの信号特性に基づいて動作環境のローカルの電子デバイスのそれぞれの位置を決定する可能性がある。さらに、(本明細書において「主な任務」と呼ばれる可能性がある)環境の最初のナビゲーション中に収集されたデータの分析の後に、追加的な特殊な任務(または後続の主な任務の修正)が、導出された情報を改良するためのより多くのデータを取り込む(たとえば、最初に収集されたデータが曖昧であるまたは特に興味を引くと判定されるエリアのより密度の高い情報を取り込む)ためにスケジューリングされる可能性がある。Wi-Fiフィールドの決定された信号特性は、様々な形態で(たとえば、ユーザ端末142、144、400によって表示するために)視覚的に表される可能性がある。一部の実施形態において、それぞれの検出されたデバイスに関するWi-Fiフィールドの決定された信号特性は、(たとえば、位置決定のために)別々に視覚的に表示される可能性があるが、その他の実施形態において、決定された信号特性の視覚的表現は、(たとえば、干渉する障害物/構造物の検出のために)一括して視
覚的に表される可能性がある。
【0073】
たとえば、
図5Aは、(X軸およびY軸によって表される)動作環境内の様々な位置において移動ロボット200のワイヤレス通信回路250によって獲得されたWi-Fi信号のカバレッジパターン500aを示す2次元グラフであり、受信されたWi-Fi信号の信号の強さ(本明細書においては受信信号強度とも呼ばれる)が、(本明細書においては「ヒートマップ」とも呼ばれる)動作環境内の対応する位置における受信信号強度に従って変わる色および/または明るさのレベルによって表される。
図5Bおよび
図5Cは、(X軸およびY軸によって表される)同じ動作環境内の様々な位置において移動ロボット200のワイヤレス通信回路250によってそれぞれ獲得されたカバレッジパターン500bおよび500cを示す3次元トポロジーグラフ(topological graph)であり、動作環境内のそれぞれの位置における受信されたWi-Fi信号の信号の強さが、Z軸によって表される。
図5A~
図5Cのグラフは、Wi-Fi信号が送信された単一の電子デバイスに関する位置による信号の強さの変化を表す。したがって、(
図5Aの最も高い明るさ/強さまたは
図5Bおよび
図5Cの地形の中の最も高いピークによって示される)最も高い信号強度を有する位置は、Wi-Fi信号が送信される対応する電子デバイスの位置を示す。言い換えると、ピークは、信号の発出の点に対応する。同様のグラフが、動作環境内のその他の電子デバイスに関して生成される可能性がある。一部の実施形態においては、重ねられた地形内のそれぞれのピークが複数の電子デバイスのそれぞれの位置を示すように、複数のグラフが組み合わされるかまたは重ねられる可能性がある。
【0074】
さらに、
図5Bおよび
図5Cのカバレッジパターン500bおよび500cの地形に示された勾配の変化および勾配の方向は、動作環境内の関連する位置における信号強度の変化を示す。
図5Bおよび
図5Cのカバレッジパターン500bおよび500cの地形に示された勾配の角度(および/または勾配の変化の割合)は、移動ロボット200の姿勢を解決するのに役立つ可能性もある。たとえば、(信号を送信する電子デバイスの位置を示す)ピーク信号強度に対して信号強度の勾配が変化する方向および割合は、単独でかまたは(たとえば、カメラに基づく認識を使用する)視覚的位置特定技術と組み合わせてかのどちらかで、移動ロボット200がその移動ロボット200の姿勢をより迅速に決定することを可能にする可能性がある。
【0075】
受信信号強度のピークは、ピークがあるはずの場所を予測するために収集されたデータ内の周辺の勾配を伸ばすことによって、たとえネットワーク対応デバイスがマップを作成されたエリアの外にあるとしてもそのネットワーク対応デバイスの位置を特定するために、
図5Bおよび
図5Cのカバレッジパターン500bおよび500cの地形に示されたその勾配の変化および勾配の方向と一緒にやはり使用される可能性がある。これは、収集されたデータがマップを作成されたエリア内のネットワーク対応デバイスに関するはっきりした「ピーク」を示さない状況に対処する可能性がある。信号強度のそのような変化は、弱い信号カバレッジを有するまたは信号カバレッジのない動作環境の位置(「デッドスポット」)、および/または信号強度の変化に寄与するかまたは信号強度の変化の原因になる可能性がある動作環境内の構造物(「影(shadow)」)を特定するために使用される可能性もある。たとえば、
図5Bおよび
図5Cの地形500bおよび500cに示された動作環境の位置の間の勾配の急速な変化は、それらの位置またはその近くの信号送信に干渉している可能性がある1つまたは複数の構造物の存在を示す可能性がある。下でより詳細に説明されるさらなる実施形態においては、(Wi-Fiルータを異なる位置および/または配置/向きに移動させるなど)信号カバレッジを改善するための1つまたは複数の提言が、最大で動作環境の全面のトポロジーマップ500bおよび500cによって示される信号強度の変化の分析に基づいて与えられる可能性がある。
【0076】
動作環境内でワイヤレス通信信号が検出される各デバイスに関するそれぞれのカバレッジパターンを生成するために、複数の周波数/チャネルおよび/またはテクノロジーで動作が実行され得る。たとえば、移動ロボット200によって獲得されたWi-Fi信号データが、検出された信号強度によって示されるWi-Fiデバイスの位置を、異なる時間におよび/または異なる照明条件の下で取得されたVSLAMデータから生成されたそれぞれの占有マップをマージするためのアンカーポイントとして使用することによって持続的なマップを解決するために使用される可能性もある。
【0077】
図6A、
図6B、および
図6Cを参照すると、動作環境内のそれぞれの位置における各ネットワーク対応デバイスのワイヤレス通信信号のカバレッジパターンを示す複数のマップ605を生成するために、(
図1Bに示された環境10などの)動作環境内で移動ロボット200のナビゲーション中に検出されたワイヤレス通信フィールド(wireless communication field)に基づく信号カバレッジデータ500aを、動作環境内で移動ロボット200のナビゲーション中に位置特定センサー270A~270Hによって検出されたデータに基づく占有データ600と相互に関連付けるために、移動ロボット200および/またはリモートサーバ150によって動作が実行される。より具体的には、
図6Cのマップ605のそのような例は、
図6Bの占有または間取り図マップ600に直接相互に関連付けられ、重ねられるように
図6Aのワイヤレス通信信号のカバレッジパターン500aの信号強度を示す。
【0078】
図6Aのワイヤレス通信カバレッジパターン500aは、動作環境内の特定のデバイスまたはデバイスの種類に対応する。たとえば、移動ロボット200のワイヤレス通信回路250が、シングルチャネルまたはマルチチャネルスキャンに基づいて動作環境10内に置かれたおよび/または動作環境10内で送信する1つまたは複数のWi-Fiルータの存在を検出するように構成される可能性がある。さらに、移動ロボット200は、ワイヤレス通信カバレッジパターン500aを利用して信号カバレッジが弱いまたはない動作環境10のエリア(つまり、「デッドスポット」)を特定し、下でより詳細に説明される一部の実施形態において、カバレッジの改善のための提言を与える可能性がある。
【0079】
マルチチャネルスキャンは、
図1Bの例においてはWAP164によって提供される、動作環境10内の利用可能なワイヤレスネットワークアクセスポイントのリストを構築するために使用される可能性がある。一部の実施形態において、それぞれのマルチチャネルスキャンは、完了するまでにおよそ3秒を必要とする可能性がある。特に、一部のアクセスポイントは104ミリ秒(ms)~110ms毎にビーコンを送信する可能性があるので、ワイヤレス通信回路250は、104msよりも長く各チャネルのスキャンを実行すべきである。ワイヤレス通信回路250は、Wi-Fiチャネルを変更するためにおよそもう100ms~120ms必要とする可能性があり、2.4GHz帯域は、米国においては11チャネル(またはヨーロッパにおいては13チャネル、または日本においては14チャネル)を有し、その結果、約2990ms(13チャネルx (110ms + 120ms))を必要とする。環境10内を移動ロボット200が動く間、マルチチャネルスキャンからのサンプルは、まばらすぎて
図6Aに示されるカバレッジパターン500aを定義することができない可能性がある。したがって、移動ロボットは、マルチチャネルスキャンを実行するとき、0.25メートル毎程度で3秒余り一時停止する可能性がある。そのようなスキャンは、環境内のさらなる種類のコネクテッドデバイスに関してではなくアクセスポイントについてのみ情報を収集する可能性もある。その他の実施形態において、ロボット200は、任務の間に1チャネルのみを監視する可能性があるが、単一の任務を完了するためにかかる時間を延ばす代わりに各任務においてどのチャネルが監視されているかをローテーションさせ、したがって、拡張された期間にわたって情報を収集する可能性がある。
【0080】
シングルチャネルスキャンは、マルチチャネルスキャンと同様の方法で実行される可能性があるが、WAP164の特定のチャネルに関してのみ実行される可能性がある。たとえば、シングルチャネルスキャンは、特定のチャネルにロックされるかまたは特定のチャネルに関してのみ実行される可能性がある。したがって、シングルチャネルスキャンは、WAP164と同じチャネル上のすべてのアクセスポイントをレポートする可能性がある。シングルチャネルスキャンからのサンプルは、環境10内で移動ロボット200を移動させる間のカバレッジパターン500aを定義するのに十分なだけの密度である可能性があり、したがって、シングルチャネルスキャン中の移動ロボット200の一時停止は、必要でない可能性がある。
【0081】
移動ロボット200のワイヤレス通信回路250は、
図1Bの環境10内のコネクテッドデバイス120、122、124、126、127、128などの動作環境内の複数のコネクテッドデバイスの存在を検出するための「監視モード」で動作するように構成された1つまたは複数のチップセットをさらに含む可能性がある。一部の実施形態において、監視モードは、Wireshark(商標)などのPCAP対応ネットワークスニッフィングツールを使用してワイヤレス送信されたパケットを検査するために実装される可能性がある。たとえば、ワイヤレス通信回路250は、一部のイーサネット(登録商標)アダプタで利用可能な「プロミスキャスモード」と同様の方法で、このデバイス宛てではないデータパケットおよび通常はコンピュータへと通過させないリンクレベル管理パケットを含む受信されたすべてのパケットのヘッダ情報を受動的に検査するように構成される可能性がある。したがって、(比較的少ない頻度でデータパケットを送信するデバイスを含む)ワイヤレス通信回路250の範囲内のワイヤレス通信信号を送信するすべてのデバイスが、移動ロボット200に見える可能性がある。比較的多数のパケットのそのような密なサンプリングによって、監視モードは、移動ロボット200が動作環境10中を移動している間でさえも非常に密なデータの収集を可能にする可能性がある。加えて、リンクレベルパケットは、(送信デバイスの種類/モデルを特定するのに役立つ可能性がある)豊富な情報を含む可能性がある。一部の実施形態においては、情報のストリームが、ロボットの位置が模造ネットワークパケット(faked network packet)として挿入されるようにして、たとえば、パケットキャプチャ(PCAP)フォーマットを使用してマージされ、共通ファイルに記憶される可能性があり、コントローラ220による使用および/またはリモートサーバ150への送信のために移動ロボットのメモリ222に記憶される可能性がある。その他の実施形態において、取り込まれた情報は、別々のファイルに記憶される可能性があり、各エントリは、別々のストリームが後の処理中に必要に応じて相互に関連付けられ得るように、共通のタイムソースから、そのエントリが受信されるときにタイムスタンプを付けられる。
【0082】
ワイヤレス通信回路250によって動作環境をスキャンすることによって検出されたカバレッジパターンに応じて、移動ロボット200は、(単独でまたはリモートサーバ150と協力して)たとえば、デバイスを受動的にリスニングするかまたは能動的に探査することによって決定されたアドレス指定および/またはネットワークサービス情報に基づいてデバイスの種類、製造業者、および/またはモデルによってコネクテッドデバイス120、122、124、126、127、128のうちの1つまたは複数を特定するようにさらに構成される可能性がある。たとえば、移動ロボット200は、動作環境内の媒体アクセス制御(MAC)アドレスのリストを決定するためにワイヤレス通信回路250によって送信されたパケットを受動的にリスニングするように構成される可能性がある。そのようなハードウェア(MAC)アドレスは、慣習的にMACアドレスの(48のうちの)最初の24~36ビットが中心機関によって特定の製造業者に割り当てられる可能性があるので、デバイスの製造業者を示す可能性がある。アドレス解決プロトコル(ARP)が、MACアドレスをプライベートネットワーク160上のデバイスに関するIPアドレスに変換する(またはその逆の変換をする)ために使用される可能性がある。デバイスは、デバイスの種類/モデル(たとえば、壁に取り付けられたサーモスタット、セキュリティカメラ、もしくは煙検知器)を特定することによって示唆されるか、またはそれらのデバイスから獲得されたワイヤレス通信信号の信号強度/カバレッジパターンの変動(もしくは変動がないこと)を監視することによってヒューリスティックにかのどちらかで、モバイルまたは固定と特定される可能性もある。たとえば、移動ロボットが静止しているとき、受信信号強度の変動が、デバイスの動きを示す可能性がある。つまり、固定デバイスは、そのデバイスから受信されるワイヤレス信号強度/カバレッジパターンの一貫性に基づいてモバイルデバイスと区別され得る。
【0083】
さらに、移動ロボット200は、有線とワイヤレスとの両方のアクティブなデバイスを発見し、特定するためにワイヤレス通信回路250によってネットワークを能動的に探査するように構成される可能性がある。ネットワークサービスを探査することは、モデル/種類に関するあり得る候補を、MACアドレスによって示された製造業者から特定のモデルに絞り込むために使用され得る。たとえば、Nest(商標)ブランドのデバイスが、特に、Nest Thermostat(商標)、Nest Protect(商標)、またはNest Camera(商標)として特定され得る。コネクテッドデバイスによって提供されるネットワークサービスが、ユーザの観点から見て、デバイスについての配置または意図された用途の情報を示す可能性がある、ユーザによって割り振られた「フレンドリーな」(つまり、ユーザが理解することができる)名前を明らかにする可能性もある。たとえば、ユーザによって名前「Kitchen」を割り振られた照明デバイスは、証明デバイスが台所に置かれることを示す可能性がある。一部の実施形態において、これらのネットワークサービスは、デバイス自体がより簡単になり得るように、コネクテッドデバイスの代わりにゲートウェイ/ハブ自体によって提供される可能性がある。たとえば、1つのハブが、ZigBeeまたはZ-WaveなどのIoTデバイスを対象とするワイヤレスプロトコルを使用して実装された多くの電球および/または壁のスイッチを扱う可能性がある。
【0084】
さらに、移動ロボット200は、検出されたデバイスがその他のネットワークエンティティに提供するサービスをワイヤレス通信回路250によって能動的に探査することによってその検出されたデバイスの(検出された特性の一意の組合せを指す可能性がある)「フィンガープリント」を生成する(または改良する)ように構成される可能性がある。特定の実施形態は、製造業者、それらの製造業者の製品、および製品のバージョンを区別するための様々な技術を使用する可能性がある。これらは、見せられたサービスを特定するためのポートスキャン、(組み込まれたウェブサーバによって返されたHTMLコンテンツ、端末接続からの最初のログオンバナーなどの)受信された応答に対するパターンマッチング、およびより構造化された情報(たとえば、UPnPまたはmDNSなどのネットワーク「発見」プロトコルによってデバイスアドバータイズする属性)を抽出するための特定の発見されたサービスとのインタラクションを含む可能性がある(しかしこれらに限定されない)。デバイスは、(
図1Bのハブ110などの)ゲートウェイ/ハブが結合されるデバイスについてそれらのゲートウェイ/ハブによって保有される情報を要求することによって間接的に特定および/または列挙される可能性もある。たとえば、SmartThings(商標)ハブに結合されたデバイスが、単にハブに尋ねることによってPhilips Hue(商標)電球として特定される可能性がある。
【0085】
図7を参照すると、上のおよび/またはその他のデバイス特定技術に基づいて、移動ロボット200および/またはリモートサーバ150は、カバレッジデータ500aに基づいてそれぞれの特定されたデバイスの位置を自動的に(つまり、人が介在せずに)決定するように構成される可能性がある。特に、それぞれの特定されたデバイスに関するカバレッジデータ500aの最も高いそれぞれの受信信号強度に対応する占有マップ600上の位置が、(Nest Thermostat (商標)デバイスとして示される)コネクテッドデバイス120、(Arlo Q(商標)ネットワークカメラとして示される)コネクテッドデバイス122、(Roku(商標)セットトップデバイスとして示される)コネクテッドデバイス124、(Amazon Echo(商標)デバイスとして示される)コネクテッドデバイス126、(Google Home(商標)デバイスとして示される)コネクテッドデバイス128、(Apple MacBook(商標)として示される)コネクテッドデバイス142、(Apple iPhone(登録商標)として示される)コネクテッドデバイス144、および(Netgear(商標)ワイヤレスルータとして示される)コネクテッドデバイス162のそれぞれの位置を示す持続的なマップ705を自動的に生成するために移動ロボット200および/またはリモートサーバ150によって使用される可能性がある。さらに、デバイスの識別情報および動作環境内のそのデバイスの位置に基づいて、移動ロボット200および/またはリモートサーバ150は、デバイスのおそらくそうだと思われる配置および/または向きを決定するようにさらに構成される可能性がある。たとえば、(Nest(商標)、Ecobee(商標)、またはHoneywall(商標)サーモスタットデバイスなどの)サーモスタットデバイスが、その決定された位置の壁の目の高さにあるものと特定される可能性があり、(Wemo(商標)、TP-Link(商標)、D-Link(商標)、またはOrvibo(商標)スマートプラグなどの)スマートプラグが、その決定された位置のコンセントの高さにあるものと特定される可能性があり、(Lifx(商標)、TCP(商標)、またはFlux(商標)電球などの)電球が、決定された位置の天井から吊されているものと特定される可能性がある。
【0086】
それぞれの位置の特定されたデバイスのおそらくそうだと思われる配置を決定することに基づいて、移動ロボット200および/またはリモートサーバ150は、たとえば、環境のナビゲーション中に移動ロボット200によって検出された位置特定データ内で捕捉されたように、配置および位置を対応するデバイスの画像と相互に関連付けるように構成される可能性がある。たとえば、移動ロボット200は、カメラ270Bによって動作環境10内のそれぞれの位置において(画像または360°パノラマ画像などの)視覚的な位置特定データを取り込む可能性があり、視覚的な位置特定データをメモリ222に記憶する可能性がある。動作環境10内のコネクテッドデバイス120、122、124、126、128、142、144、および162の決定された位置ならびに決定された位置におけるそれらのコネクテッドデバイスのおそらくそうだと思われる配置は、それらのそれぞれの位置の撮影された画像の、コネクテッドデバイス120、122、124、126、128、142、144、および162の識別情報とのマッチングを可能にする可能性がある。したがって、各デバイスおよびそのおおよその位置を特定することは、本開示の実施形態によるマシンベースビジョン(machine-based vision)の正確性および/または実用性を高める可能性がある。
【0087】
図8Aおよび
図8Bは、本開示の実施形態による、「スマート」ホーム内のコネクテッド電子デバイスによって送信されたWi-Fiフィールドのマップ作成の特定の例を示す。
図8Aを参照すると、マップ800a1~800a6は、平屋の家のマップを作成された部分におけるWi-Fi信号の粗いサンプリングを示し、Wi-Fi信号の強さが、移動ロボットによって家のナビゲーション中に収集された位置特定データから得られた間取り図または占有マップに描かれる。
【0088】
6つの個々のマップ800a1~800a6は、家の中または近くに置かれた6つの異なるワイヤレスアクセスポイントから検出された信号パターンを示す。
図8Aおよび
図8Bの例において、家の幅は、水平方向におよそ60フィートである。これらの特定のプロット800a1~800a6に関して、移動ロボットは、その移動ロボットの位置特定センサーのうちの1つまたは複数を使用して家のセクションに関する最初のマップ作成を実行し、その後、おおよそ10平方フィート毎に1回マルチチャネルスキャンを行うようにして、その移動ロボットのワイヤレス通信回路を使用して家の中のそれぞれの位置においてマルチチャネルスキャンを実行した。各マルチチャネルスキャンは、完了するのに数秒かかり、位置のサブセットが、マップ上に描かれた。マップ800a1~800a6によって示される6つの異なるWi-Fiアクセスポイントのカバレッジパターンは、はっきりと異なり、アクセスポイントの各々の相対的な位置が、マップ800a1~800a6において相対的な明るさによって視覚的に表される。たとえば、マップ800a4は、マップ800a4のかなり右に配置されたセルラホットスポットを示す。明るいスポットおよび信号の不均等は、粗いサンプリング方法のアーチファクトである。対照的に、マップ800a6は、家のWi-Fiアクセスポイントに関する主なアクセスポイントからのWi-Fi信号を示す。信号は、全体的に強く、アクセスポイントは、マップ800a6の最も明るいエリアに一致する家の中心付近に配置される。
【0089】
図8Aに示される完全なマルチチャネルネットワークスキャンを実行することに加えて、シングルチャネルネットワークスキャンを実行して単一のチャネルおよび周波数に関してパケットを継続的に記録することによる、Wi-Fi信号強度を測定するための代替的なプロセスが
図8Bに示される。シングルチャネルスキャンは、上述の「監視モード」との組合せで、移動ロボットが移動し、家のマップを作成しながら継続的にリスニングをする可能性があるときにずっと多くの測定(マルチチャネルの手法よりも10倍から100倍多い)を行う。家の主なアクセスポイントに関するこの継続的な信号スキャンの例が、
図8Bの全面地形
図800bに示される。継続的な信号スキャンによって行われる増やされたサンプリングが、マップ800b内の滑らかな地勢によって示される。マップ800bは、グラフ上の最も高い点までの地形の勾配の変化に従うことによってアクセスポイントの位置を示す。同様に、マップ800bに示された地形の勾配の方向および高さの変化が、弱い信号カバレッジを有するまたは信号カバレッジのない動作環境の位置、および/または信号カバレッジの減少または消失に寄与する可能性がある動作環境内の構造物(たとえば、壁)を特定するために使用される可能性がある。また、一部の実施形態においては、複数の位置からの信号を継続的にスキャンし、取り込むことによって、信号の雑音成分が、削減される可能性があり、またはそうでなければ一定になる可能性がある。
【0090】
図9~
図11は、本開示の実施形態において説明されるワイヤレス通信信号のマップ作成技術による、コンピューティングデバイスの少なくとも1つのプロセッサによって実行される可能性がある動作を示す流れ図である。
図9~
図11の動作は、本明細書において説明されるメモリデバイス222、320、428などの非一時的コンピュータ可読媒体に記憶された実行可能なルーチンまたは命令を表す可能性があり、規定されたルーチンまたは命令を実施するために本明細書において説明されるプロセッサ220、310、および/または427などの1つまたは複数のプロセッサによって実行される可能性がある。
【0091】
特に、
図9の動作は、
図1Bのサーバ150、移動ロボット200、および/またはユーザ端末142の1つまたは複数のプロセッサによって実行される可能性がある。
図9を参照すると、移動ロボットの動作環境に関する占有データが、動作環境内の移動ロボットのナビゲーションに応じてブロック905において受信される。占有データは、たとえば、VSLAM技術を使用して動作環境のナビゲーション中に移動ロボットの少なくとも1つの位置特定センサーによって検出された位置特定データに基づく。一部の実施形態において、占有データは、動作環境内の複数の移動ロボットによって取得される位置特定データに基づく可能性がある。
【0092】
動作環境に関する信号カバレッジデータが、同様に動作環境内の移動ロボットのナビゲーションに応じてブロック910において受信される。信号カバレッジデータは、たとえば、動作環境のそれぞれの位置において1つまたは複数の通信周波数をスキャンすることによって移動ロボットの少なくとも1つのワイヤレス受信機によって獲得されたワイヤレス通信信号に基づく。ワイヤレス通信信号は、
図1Bのコネクテッドデバイス120、122、124、126、128、142、144、および162のうちの1つまたは複数などの、動作環境のローカルにある1つまたは複数のネットワーク対応電子デバイスによって送信される。
【0093】
動作環境内のそれぞれの位置におけるワイヤレス通信信号のカバレッジパターンを示すマップが、(ブロック905において受信された)占有マップと(ブロック910において受信された)信号カバレッジデータとを相互に関連付けることによってブロック915において生成される。カバレッジパターンは、動作環境内のそれぞれの位置におけるワイヤレス通信信号の(信号強度、信号対雑音比、データスループット、および/またはマルチパス歪みを含むがこれらに限定されない)それぞれの信号特性を示す。それによって、動作環境内の電子デバイスのそれぞれの位置は、カバレッジパターンに基づいて、たとえば、動作環境内のそれぞれの位置の信号強度のピークおよび/または信号強度の勾配/方向の変化に基づいて決定される可能性がある。マップは、移動ロボットが動作環境をナビゲートした時間の所定の期間にわたる1つまたは複数のネットワークに接続されたデバイスに関する受信信号強度の集合を表す持続的なマップをそのマップが定義する可能性があるように、環境中を1回または複数回その後ナビゲーションするときに移動ロボットによって取得された占有データおよび/または信号カバレッジデータに応じて更新される可能性がある。
【0094】
図10は、たとえば、本明細書において説明される移動ロボット200のプロセッサ220などの移動ロボットの少なくとも1つのプロセッサによって実行される可能性がある動作を示す流れ図である。上で検討されたように、プロセッサは、動作環境内で移動ロボットをナビゲートするように構成された駆動装置、少なくとも1つの位置特定センサーを含む位置特定回路、ワイヤレス通信回路、および実行可能なルーチンまたは命令を定義するコンピュータ可読プログラムコードを記憶するコンピュータ可読ストレージ媒体を含むメモリに結合される。ワイヤレス通信回路は、ローカルまたは広域ネットワークを介して1つまたは複数のリモートサーバおよび/またはユーザ端末に通信可能なように結合される可能性がある。プロセッサは、
図10の動作を実行するためにメモリに記憶されたルーチンを実行するように構成される。
【0095】
特に、
図10を参照すると、駆動装置が、動作環境内の位置に行くように移動ロボットをナビゲートするためにブロック1005において動作させられる。たとえば、動作環境は、家庭または家庭内の部屋を含む可能性がある。駆動装置は、(牛耕式の行(boustrophedon row)などの)カバレッジパターン、(壁および/または障害物に従うもしくは沿うパターンなどの)周囲およびエリア発見パターン、(ランダムな跳ね返りおよびその他のランダム化などの)系統的なエラー予防策、ならびに/または点から点へのまたはゾーンからゾーンへの経路の一連のうちの1つまたは複数を含むナビゲーションルーチンに基づいて動作させられる可能性がある。
【0096】
ブロック1010において、位置特定データが、動作環境内で移動ロボットをナビゲートするために駆動装置を動作させることに応じて移動ロボットの少なくとも1つの位置特定センサーによって検出される。位置特定データは、測距センサーからの距離測定値、障害物および近接センサーからの占有および障害物判定、ならびにカメラおよびその他のパターン/イメージ/基準観測センサーからの特徴および目標物判定を含む可能性がある。距離測定データは、たとえば、VSLAM技術を使用して動作環境の位置および/または移動ロボットの姿勢を表す2次元占有データを記録するための表面マップ作成ルーチンにおいて検出される可能性がある。
【0097】
ワイヤレス通信信号が、動作環境内で移動ロボットをナビゲートするために駆動装置を動作させることに応じてブロック1015において移動ロボットの少なくとも1つのワイヤレス受信機によって獲得される。ワイヤレス通信信号は、動作環境のローカルにある1つまたは複数のネットワーク対応電子デバイスによって送信される可能性がある。ワイヤレス通信信号は、動作環境のそれぞれの位置におけるワイヤレス通信信号の(カバレッジパターンおよびそれぞれの信号特性を含む)信号カバレッジデータを記録するために信号マップ作成ルーチンにおいて獲得される可能性がある。ワイヤレス通信信号は、動作環境内のそれぞれの位置においてシングルチャネルスキャン、マルチチャネルスキャン、および/またはネットワーク監視を使用して周期的に、非周期的に、または継続的に獲得される可能性がある。
【0098】
動作環境の移動ロボットの位置が、(ブロック1010において)位置特定センサーによって検出された位置特定データと(ブロック1015において)ワイヤレス受信機によって獲得されたワイヤレス通信信号との相互の関連付けに基づいてブロック1020において決定される。たとえば、動作環境内のネットワーク対応電子デバイスのうちの1つまたは複数のアイデンティティおよび位置が、それらのネットワーク対応電子デバイスから受信されたワイヤレス通信信号に基づいて決定される可能性があり、移動ロボットの位置が、電子デバイスの位置に対して相対的に決定される可能性がある。また、(たとえば、受信信号強度が位置特定データから占有情報に相互に関連付けられる3次元マップのトポロジーの変化の割合によって示される)動作環境内のそれぞれの位置における受信されたワイヤレス通信信号の信号強度の変化が、移動ロボットの位置を決定するためにさらに使用される可能性がある。つまり、移動ロボットの位置特定は、その移動ロボットの位置特定センサーによって取得された位置特定データに基づくだけでなく、その移動ロボットのワイヤレス受信機によって取得されたワイヤレス通信にも基づいて実行される。
【0099】
本明細書において説明される移動ロボットは、移動ロボットが環境中で移動ロボットをナビゲートするように独立して動作する位置特定回路を既に含むので、家庭またはその他の動作環境内の(Wi-Fiカバレッジなどの)ワイヤレス信号カバレッジのマップを作成するように独自に構成される可能性がある。したがって、断続的に、または表面マップ作成ルーチンの実行と同時に、移動ロボットは、動作環境の多くの異なる位置においてそれぞれのワイヤレス通信回路によって受信信号強度インジケーション(RSSI)などの受信信号特性の多くのサンプルを収集することができ、それらのサンプルは、動作環境における個々のデバイスの正確なワイヤレス信号フィールド(wireless signal field)を構築するためにデータの時間的および地理的平均とともに使用され得る。
【0100】
図11は、たとえば、本明細書において説明されるユーザ端末400のプロセッサ427などのユーザ端末の少なくとも1つのプロセッサによって実行される可能性がある動作を示す流れ図である。上で検討されたように、プロセッサは、受信機、ユーザインターフェース、および実行可能なルーチンまたは命令を定義するコンピュータ可読プログラムコードを記憶するコンピュータ可読ストレージ媒体を含むメモリに結合される。受信機は、ローカルまたは広域ネットワークを介して、移動ロボットおよび/または移動ロボットと通信するリモートサーバと通信可能なように結合される可能性がある。プロセッサは、
図11の動作を実行するためにメモリに記憶されたルーチンを実行するように構成される。
【0101】
特に、
図11を参照すると、動作環境内の移動ロボットのナビゲーションに応じて1つまたは複数の移動ロボットの位置特定センサーによって検出された位置特定データと移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号との相互の関連付けに基づくマップ情報が、ブロック1105においてユーザ端末の受信機によって受信される。ワイヤレス通信信号は、動作環境のローカルにある1つまたは複数のネットワーク対応電子デバイスによって送信される可能性がある。マップ情報は、移動ロボットのうちの1つもしくは複数から直接、または移動ロボットと通信するリモートサーバから受信される可能性がある。
【0102】
マップ情報の1つまたは複数の視覚的表現が、ブロック1110においてユーザ端末のユーザインターフェースによって表示される。特に、マップ情報は、人間のユーザまたはオペレータにとってより意味のある可能性があるフォーマットで表される可能性がある。たとえば、ブロック1110において表示される視覚的表現は、
図5A、
図5B、
図5C、
図6A、
図6B、
図6C、
図7、
図8A、および/または
図8Bを参照して上で示され、説明された視覚的表現のうちの1つまたは複数に対応する可能性がある。特定の実施形態において、視覚的表現は、(動作環境内で移動ロボットの位置特定センサーによって検出された障害物を含む)動作環境の物理的特性を示す占有マップ、および/または(動作環境内のそれぞれの位置において移動ロボットのワイヤレス受信機によって獲得されたワイヤレス通信信号のそれぞれの信号強度を含む)動作環境の電気的特性を示す信号カバレッジマップを含む可能性があり、それらのマップは、2次元または3次元表現で表示される可能性がある。それぞれの占有マップおよび/または信号カバレッジマップは、動作環境内でワイヤレス通信信号が受信されるそれぞれの検出された電子デバイスに関して生成され、表示される可能性がある。
【0103】
たとえば、信号カバレッジは、動作環境内のそれぞれの位置において変わる表示される色、明るさのレベル、および/またはバンド(band)もしくはリング(ring)の間の距離によってワイヤレス通信信号のそれぞれの信号強度を示す2次元表現(または「ヒートマップ」)として表示される可能性がある。信号カバレッジマップは、X軸およびY軸が占有グリッド(occupancy grid)によって定義される位置に対応し、Z軸が占有グリッドのそれぞれの位置における各デバイスのワイヤレス通信の信号強度およびそれぞれの位置の間の信号強度の勾配/方向を示す3次元トポロジー表現として表示される可能性もある。変化する色、明るさのレベル、および/またはバンド/リングの間の距離が、一部の実施形態においては、それぞれの信号強度の3次元トポロジー表現と組み合わせて使用される可能性がある。
【0104】
2D占有グリッドと3D信号強度トポロジーまたはヒートマップとの組合せが、相互に関連付けられるかまたは並んでかのどちらかでブロック1110において表示される可能性もある。動作環境内の複数の電子デバイスからのトポロジーによるワイヤレス通信の信号強度データ(topological wireless communication signal strength data)は、単一のマップへとさらに組み合わされ、それによって、同じマップ上で複数のデバイスの位置を示す可能性がある。したがって、動作環境内の複数のネットワーク対応デバイスに関する位置情報が、ローカルまたはリモートユーザ端末によって受信され、ローカルまたはリモートユーザ端末上で上述のまたはその他のユーザフレンドリーなフォーマットで表示される可能性がある。
【0105】
より広く、占有データを動作環境内の移動ロボットのナビゲーションによって取得された信号カバレッジデータと組み合わせることによって、(それぞれの位置において移動ロボットによって検出された位置特定データによって示される)動作環境のそれぞれの位置における物理的特性と、(それぞれの位置において移動ロボットによって獲得されたワイヤレス通信信号の信号強度によって示される)移動ロボットの動作環境のそれぞれの位置における(信号強度、カバレッジがないこと、および/または信号の干渉を含む)電気的特性とを示すために、マップが生成される可能性がある。本明細書において説明されるように、動作環境に関する占有データと信号カバレッジデータとの組合せが、動作環境内の移動ロボットおよび/またはその他のデバイスの動作または機能を向上させるため、ならびにそのような移動ロボットおよび/またはその他のデバイスについての情報をユーザに提示するために使用される可能性がある。そのような改善は、信号の強さの弱いスポットおよび間隙を特定すること、部屋の中の物の位置/識別情報を決定すること、移動ロボットのより速い位置特定/位置再特定、ユーザに対して注釈入りのマップを表示すること、マップを別のロボット/デバイスと共有すること、ならびに/またはその他のデバイスから受信されたパケットに基づくシステム診断を含む可能性があるがこれらに限定されない。
【0106】
移動ロボット、サーバ、および/またはユーザ端末による組み合わされた占有データおよび信号カバレッジデータの例示的な使用が、下で説明される。一部の例は(ワイヤレスルータデバイスなどの)特定の電子デバイスによって送信される(Wi-Fi信号などの)特定のワイヤレス通信信号に関連する可能性があるが、これらの例がいかなる特定のデバイスまたは通信規格/プロトコルにも限定されないことは、理解されるであろう。
【0107】
一部の実施形態において、本明細書において説明されるようにワイヤレス信号カバレッジに基づいてデバイスの位置のマップを作成するための動作は、同じ移動ロボットによってまたは複数のロボットによって、同じ動作環境の複数回のナビゲーションから取得された位置特定データから生成された占有マップの相互の関連付けまたはマージを可能にする。たとえば、1つまたは複数の移動ロボットによって取得された位置特定データは、異なる時刻におよび/または異なる照明条件で視覚に基づく位置特定センサーによって検出された視覚的な位置特定データを含む可能性があり、マップは、視覚的な位置特定データ内で異なる照明条件によって引き起こされる曖昧さを解決するために、少なくとも1つの電子デバイスに関して決定された位置をアンカーポイントとして使用して、異なる時刻および/または異なる照明条件で検出された視覚的な位置特定データから生成されたそれぞれの占有マップをマージすることによって生成される可能性がある。近接した/地理的に1箇所にまとめて置かれた動作環境からの異なるマップが、ワイヤレス信号強度のトポロジーマップを作成されたフィールド(topologically-mapped field)内の十分な重なりに基づいて1つに組み合わされるかまたは「継ぎ合わされる」可能性もある。
【0108】
一部の実施形態においては、占有グリッドとワイヤレス通信信号のマップとの間の相互の関連付けが、動作環境内の1つまたは複数のその他のデバイスに送信されるかまたはそうでなければそれらのその他のデバイスと共有される可能性がある。たとえば、そのようなその他のデバイスは、視覚的な位置特定能力のない移動ロボットを含む可能性がある。これらのあまり先進的でないロボットは、自己位置特定のためにより先進的な移動ロボットによって決定された占有グリッドを使用する可能性がある。たとえば、カメラまたはその他の撮像センサーデバイスを含む可能性がある自律的な掃除機ロボットが、動作環境をナビゲートし、視覚的同時位置特定およびマップ作成技術に基づいて動作環境に関する占有グリッドデータを生成する可能性がある。それによって、掃除機ロボットが、決定された占有グリッドデータを、クラウドコンピューティングデバイスに送信する、および/または床の位置に留められる床モップがけロボットなどのより少ない能力を有する別の移動ロボットに直接送信する可能性がある。加えて、より高い見晴らしの良い地点に取り付けられたカメラを有する自律的な巡回ロボットが、より高い見晴らしの良い地点上のまたはより高い見晴らしの良い地点に結合されたワイヤレス信号センサーをさらに含み、それによって、異なる高さでのワイヤレス通信信号の受信および異なる高さで受信された信号強度を示すマップ作成データの生成を可能にする可能性がある。一部の実施形態において、より高い見晴らしの良い地点は、伸縮式のまたはそれ以外の方法で延長可能なマストなどの機械的に作動させられる要素によって提供される可能性がある。したがって、この巡回ロボットは、より低い高さの移動ロボットのそれぞれのワイヤレスセンサー信号を収集することに制約されるそれらの移動ロボットによって取得不可能である可能性があるマップ作成データを生成する可能性がある。
【0109】
それぞれのカバレッジパターン内の非対称性が、動作環境の異なる高さのそれぞれのフロア(たとえば、同じ家庭および/または異なる家庭内の複数のフロア)に対応するものとしてマップを特定および/または区別するために使用される可能性がある。たとえば、(マルチユーザ多入力多出力(MU-MIMO)の実装のような)指向性アンテナおよび「ビームステアリング」技術の使用が、獲得されるWi-Fi信号の非対称性を高め、位置の曖昧さを減らす可能性がある。無指向性の(半球状の)放射パターンを有するデバイスは、半球の垂直方向の延長上のフロアで感知され、そのデバイスが送信する一意ネットワークアドレス(たとえば、MACアドレス)を参照することによってフロアのマップの間で相互に関連付けられる可能性がある。意図的に非無指向性の放射パターンまたは時間とともに予想されるように変化するパターンを有するさらなるデバイスが、測定されたRSSIの強度の組合せによって表される「フィンガープリント」が一意の位置をもたらすことを保証することができる。同様に技術が、(たとえば、上のフロアに向かって最も低い地点から上に垂直方向のビームを送信することによって)フロアを相互に関連付けるための少なくとも1つの指向性アンテナを含む移動ロボットによって使用されるかまたはその移動ロボットのドックに置かれることが可能である。ロボットは、(たとえば、精度の良い高い1つのアンテナパターンおよび水平方向の1つのアンテナパターンの2つのアンテナパターンに基づいて)検出された電子デバイスのそれぞれの高さまたは水平方向の位置を決定する可能性もある。
【0110】
さらに、一部のデバイスは、特に床の高さから観測されるときに固有の非対称なRF放射パターンを有する可能性がある。たとえば、その正面に金属環を含むサーモスタットデバイスは、デバイスの直下およびデバイスのすぐ前では低い信号強度で送信する可能性があり、一方、そのサーモスタットデバイスが取り付けられる壁の反対側の信号強度は、(壁の内部構造および取り付けブラケットがプラスチックである可能性があるので)ずっと高い可能性がある。本明細書において説明されるようにデバイスの特定の製造業者およびモデルを特定することに応じて、信号カバレッジデータは、その特定のモデルのRF放射パターンに関して訂正される可能性があり、したがって、より高い正確性でデバイスの位置を決定するために使用される可能性がある。たとえば、壁の特定の側のサーモスタットデバイスの位置が、決定される可能性がある。
【0111】
一部の実施形態において、ワイヤレス通信信号の信号カバレッジをVSLAM技術を使用して移動ロボットによって独立して決定された占有グリッドと相互に関連付けることは、移動ロボットによる位置特定の速度および/または正確性を改善する可能性がある。たとえば、移動ロボットが「さらわれる」(つまり、拾い上げられ、動作環境内の新しい位置に位置変更されるかまたは動かされる)場合、移動ロボットは、そのような位置変更を検出し、その移動ロボットの新しい位置において検出されたワイヤレス通信信号の、既に取得されたワイヤレス通信信号のマップのワイヤレス通信信号との比較に基づいてその移動ロボットの新しい位置を決定する可能性がある。特に、新しい位置における受信信号強度、受信信号強度の勾配、および/または(たとえば、信号カバレッジが占有グリッドと相互に関連付けられる3次元マップのトポロジーの変化の割合によって示される)新しい位置において信号強度の勾配が変化する方向に基づいて、移動ロボットは、その移動ロボットの新しい位置および/または新しい位置におけるその移動ロボットの現在の姿勢をより迅速に決定する可能性がある。ピーク信号強度に対して信号強度の勾配が変化する変化する角度、方向、および/または割合が、移動ロボットの現在の姿勢を決定する助けとなる可能性がある。そのような位置特定の速度および/または正確性は、環境のカメラに基づく認識などの視覚的な位置特定技術と組み合わせて実行されるとき、高められる可能性がある。つまり、動作環境に関する占有グリッドと相互に関連付けられた受信信号強度のトポロジー表現において、特定の信号強度および1つまたは複数の方向の信号強度の勾配の変化の割合が、動作環境内の移動ロボットの新しい位置を決定するためにその移動ロボットの姿勢と一緒に使用される可能性がある。位置再特定の速度および/または正確性の相対的な改善は、移動ロボットの位置特定センサーかまたはワイヤレス信号受信かのどちらかを選択的に無効化することによって示され得る。さらに、移動ロボットは、デバイスのそれぞれの位置の1つのワイヤレス通信信号マップまたは複数のワイヤレス通信信号マップによって示されるそれぞれの決まった位置のデバイスの一意のワイヤレスシグネチャに基づいて占有グリッドおよび/またはその中の移動ロボットの位置に関する不確実性を解決するように構成される可能性がある。
【0112】
一部の実施形態においては、駆動装置が、たとえば、「第1の応答者として」デバイスの位置におけるセンサーおよび/またはアラームのアクティブ化に応じて、動作環境内の位置が既に決定された電子デバイスの位置に移動ロボットを直接ナビゲートするように動作させられる可能性がある。電子デバイスの位置に到着すると、生の音声情報および/または視覚的情報が、移動ロボットによって記録され、および/または
図1Bのユーザ端末142、144などのリモートデバイスに送信される可能性がある。
【0113】
一部の実施形態においては、獲得されたワイヤレス通信信号のカバレッジパターンから決定された動作環境についての情報が、環境内で動作している1つまたは複数のその他のデバイスに送信され、共有可能な診断を可能にする可能性がある。たとえば、動作環境内のそれぞれの検出されたデバイスの送信カバレッジおよび位置は、2つのコネクテッドデバイスがそれぞれ特定のアクセスポイントと通信することができるが、他方の送信を「聞く」ことができない可能性がある(つまり、知らない可能性がある)ネットワーク構成を示す可能性がある。場合によっては、両方のデバイスが同じチャネルまたは周波数上で同時に送信しようと試みる可能性があり、したがって、アクセスポイントがどちらのデバイスからも有効な通信を受信しない可能性がある(「隠れ端末」問題として知られる)。本明細書において説明される一部の実施形態は、たとえデバイスが(外部アンテナのおかげで概してより高い送信電力およびより精度の良い受信を有する)同じアクセスポイントの範囲内にある可能性があるとしても、どのデバイスがどのその他のデバイスを「聞く」ことができないのかを検出するため相互に関連付けられたデータを使用する可能性があり、潜在的なまたは実際の干渉をさけるために異なるチャネルまたは通信周波数を変更するかまたは割り振るためにデバイスのうちの1つまたは複数に命令を送信する可能性がある。加えて、1つまたは複数の検出されたデバイスは、互いの通信範囲の外にある1つまたは複数のその他の検出されたデバイス、たとえば、動作環境内の異なるルータへのワイヤレス接続を有するデバイスの存在を知らされる可能性がある。したがって、本開示の実施形態による移動ロボットの動作は、それ以外の方法では互いに知らない可能性がある動作環境内のデバイスの間の隔たりを埋める可能性がある。
【0114】
一部の実施形態においては、獲得されたワイヤレス通信信号のカバレッジパターンから決定された動作環境についての情報が、記憶され、動作環境にその後追加されるデバイスに提供される可能性がある。たとえば、動作環境に新たに追加されるデバイスは、環境内のアクセスポイントのうちの1つにそのデバイスの存在を伝達する可能性があり、動作環境についての既に記憶された情報が、新たに追加されるデバイスのセットアップ動作を助けるためにダウンロードされるかまたはそうでなければ新たに追加されるデバイスと共有される可能性がある。つまり、移動ロボットによる動作環境の以前のナビゲーションが、その後追加されるデバイスが動作環境内で自動セットアップ動作を実行することを可能にする可能性がある。
【0115】
一部の実施形態においては、複数の通信プロトコルが、異なる通信プロトコルを使用して通信するように構成される可能性がある環境内の複数の電子デバイスを検出するために、たとえば、マルチプロトコルスキャンを使用して移動ロボットのワイヤレス受信機によって監視される可能性がある。したがって、動作環境および/または動作環境内で動作する複数の電子デバイスについての情報は、検出されたデバイスのうちの1つまたは複数のそれぞれの通信規格によってフォーマットされ、それらの検出されたデバイスと共有される可能性がある。したがって、互いに通信することができないデバイスが、動作環境内で互いの存在および/または動作を知らされる可能性がある。
【0116】
一部の実施形態において、ワイヤレス通信信号のマップが、なくしたユーザデバイスなどの特定のデバイスに関する信号強度情報(および動作環境内の対応する位置)を示す可能性がある。たとえば、動作環境内にスマートフォンを置き忘れたユーザが、(ラップトップまたはデスクトップコンピュータまたはタブレットコンピュータなどの)別のユーザ端末によって、なくしたユーザデバイスの最後の分かっている位置の要求を生成する可能性がある。それに応じて、ユーザ端末は、なくしたユーザデバイスからの最も最近記録されたワイヤレス通信信号のピーク信号強度に対応する動作環境内の位置の画像、位置が記された動作環境の平面図マップ、および/または位置の可聴式の説明を取り出し、表示する可能性がある。したがって、たとえなくしたデバイスが電力がないとしても、ワイヤレス通信信号のマップが、なくしたデバイスの位置を特定するために使用される可能性がある。
【0117】
一部の実施形態においては、獲得されたワイヤレス通信信号に基づいて、デバイスの製造業者が、MACアドレスから特定される可能性があり、デバイスのモデル/種類が、マルチプロトコルスキャンまたはその他のネットワーク探査/監視から特定される可能性がある。これは、(サーモスタットまたはワイヤレスアクセスポイントなどの)決まった位置の固定デバイスと(スマートフォンまたはタブレットなどの)モバイルデバイスとの間の特定および区別を可能にする可能性がある。追加的にまたは代替的に、これらのデバイスからブロードキャストされるワイヤレス信号は、登録されたアドレスによって示されるカスタマー定義(customer definition)を含む可能性がある。移動ロボットおよび/または移動ロボットに関連するクラウドコンピューティングデバイスは、ユーザ端末のユーザインターフェースによって表示するためにそのような識別情報を送信するかまたはそうでなければユーザ端末と共有する可能性がある。
【0118】
一部の実施形態において、それぞれの位置の獲得されたWi-Fi信号強度によって示される家庭に関するWi-Fiカバレッジデータが、家庭内の対応する電子デバイスに関する改善された位置付けまたは配置をユーザに知らせるために使用され得る。特に、Wi-Fiアクセスポイントに関して、Wi-Fi信号強度データは、家庭のどのエリアがアクセスポイントからの弱いWi-Fi信号カバレッジを有するかまたはWi-Fi信号カバレッジを持たないかを示すことができる。したがって、マップによって示される信号強度データに基づいて、Wi-Fiアクセスポイントの配置に関する1つまたは複数の提案が、Wi-Fi信号カバレッジを改善するためにリモートユーザデバイスに送信される可能性がある。同様に、(リピータの配置に関する提案を含む)弱いWi-Fi信号カバレッジを有するかまたはWi-Fi信号カバレッジを持たないエリアをカバーするために1つまたは複数のWi-Fiリピータを追加する提案が、それらのエリア内のWi-Fi信号カバレッジを増大させるためにリモートユーザデバイスに送信される可能性もある。加えて、複数のデバイスと動作環境との間の信号の干渉を検出することに応じて、移動ロボットおよび/またはその移動ロボットと通信するクラウドコンピューティングデバイスは、信号の干渉を減らすおよび/または解決する可能性があるデバイスの空間的な向きまたは配置に関する指示または提言を生成し、送信する可能性がある。
【0119】
図12Aは、本開示の一部の実施形態による、センサーに基づく位置特定とワイヤレス信号マップ作成とを組み合わせるためのデバイスのシステムを示す図である。システム1200は、本明細書において説明される、動作環境に関する信号カバレッジデータ500および占有データ600を取得する可能性がある移動ロボット200を含む可能性がある。信号カバレッジデータ500および占有データ600は、クラウドコンピューティングデバイスおよび/またはシステム1270に送信される可能性がある。一部の実施形態において、クラウドコンピューティングデバイスおよび/またはシステム1270は、本明細書において説明されるリモート管理サーバ150を含む可能性がある。クラウドコンピューティングデバイスおよび/またはシステム1270は、プロセッサ1210およびユーザデータストア1220を含む可能性がある。ユーザデータストア1220は、信号カバレッジデータ500、占有データ600、ならびに/またはそれらに関連するその他のデータ(たとえば、獲得されたワイヤレス通信信号および/もしくは検出された位置特定データ)を記憶する可能性がある。一部の実施形態は移動ロボット200が信号カバレッジデータ500と占有データ600との相互の関連付けを実行することを提供するが、一部の実施形態においては、相互の関連付けが、クラウドコンピューティングデバイスおよび/またはシステム1270によって実行される可能性がある。
【0120】
一部の実施形態においては、ユーザデバイス142、144、400がロボット200ならびに/またはクラウドコンピューティングデバイスおよび/もしくはシステム1270からメッセージおよび/またはデータを受信するように動作可能である可能性があるように、クラウドコンピューティングデバイスおよび/またはシステム1270が、移動ロボット200とユーザデバイス142、144、400との間の通信チャネルを提供する可能性がある。たとえば、ユーザデバイス142、144、400は、信号カバレッジデータ500、占有データ600、および/またはそれらの相互の関連付けに基づくデータの1つまたは複数の視覚的表現605を表示する可能性があり、表示されたデータをユーザが編集または変更することを可能にするユーザ入力を受信する可能性がある。
【0121】
図12Bは、本開示の一部の実施形態による、センサーに基づく位置特定とワイヤレス信号マップ作成とを組み合わせるためのデバイスの協力した動作をより詳細に示す図である。ブロックは、
図12Bの実施形態において任意で実行される可能性がある動作を示す破線を用いて示される。
【0122】
図12Bに示されるように、移動ロボット200が、ブロック1201において、ワイヤレス受信機250を使用してRFパケット取り込みによって動作環境のナビゲーション中にワイヤレス通信信号を獲得する。また、移動ロボット200は、ブロック1202において占有データ600に基づいて、および一部の実施形態においては(たとえば、位置が継続的にレポートされない場合)ブロック1204においてさらに補間に基づいて動作環境内のその移動ロボット200の場所または位置を決定する。占有データ600は、たとえば、位置特定センサーのうちの1つまたは複数によって動作環境のナビゲーション中に移動ロボット200によって同時にまたは既に取得された位置特定データに基づく可能性がある。
【0123】
ブロック1201におけるRFパケット取り込みに基づいて、移動ロボット200は、たとえば、受信されたパケットの送信者のうちの1つまたは複数に対応する一意ネットワークアドレスおよび/または受信信号強度を決定するためにブロック1203においてパケットヘッダの復号/抽出を実行する。たとえば、受信されたパケットの送信者は、パケットが送信されたコネクテッドデバイスを指す可能性がある。信号対雑音比、データスループット、および/またはマルチパス歪みを含むがこれらに限定されない追加的な情報も、受信されたパケットから決定される可能性がある。受信されたパケットから決定された情報は、本明細書において集合的に信号カバレッジデータと呼ばれる可能性がある。
【0124】
その結果、ブロック1205において、移動ロボット200は、ブロック1201および1203において決定された信号カバレッジデータをブロック1202(および任意で1204)において決定された占有データおよび位置付けと組み合わせてレコードのログにする。任意で、パケット取り込みおよび/または位置決定に関連する時間データも、たとえば、フィルタリングおよび/またはその他の相互に関連付ける動作のためのさらなるデータ点を提供するためにブロック1206において決定され、ブロック1205において(たとえば、タイムスタンプとして)ログに記録される可能性がある。
【0125】
信号カバレッジデータ、占有データ、位置付け、および(一部の実施形態においては)関連するタイムスタンプデータは、ブロック1207においてフィルタリングされ、平均され、および/または圧縮され、ブロック1208において(マップ605として示される)空間表現に変換される。空間表現605は、ブロック1207における信号カバレッジデータと占有データとの相互の関連付けに基づく動作環境内のそれぞれの位置における信号特性を示す可能性がある。送信者のデバイスの種類(たとえば、固定/モバイル、製造業者、モデルなど)が、ブロック1209aにおいて決定される可能性があり、データベース1220aに記憶される可能性がある。動作環境内の送信者のそれぞれの位置も、ブロック1209bにおいて決定され、マップ705に表される可能性がある。持続性および時間平均(persistence and temporal averaging)が、送信者の決定された種類および/または位置に基づいてブロック1211において実行される可能性もあり、その結果が、データベース1220bに記憶される可能性がある。相互に関連付ける動作1207、1208、1209a、1209b、および/または1211は、一部の実施形態において、信号カバレッジ、占有、および位置付けデータを受信するために移動ロボットに通信可能なように結合されるリモートサーバ150によって実行される可能性がある。しかし、相互に関連付ける動作1207、1208、1209a、1209b、および/または1211のうちの1つまたは複数が、移動ロボット200自体、ならびに/またはリモートサーバ150および/もしくはユーザ端末142、144、400を含む、移動ロボット200に通信可能なように結合される可能性がある1つもしくは複数のその他のコンピューティングデバイスによって実行される可能性があることは理解されるであろう。
【0126】
ユーザ端末142、144、400は、ブロック1207、1208、1209a、1209b、および/または1211において信号カバレッジデータと占有データとの相互の関連付けの結果として得られるデータを受信し、ブロック1212においてデータの1つまたは複数の視覚的表現を表示する。ユーザ端末142、144、400によって表示される可能性があるデータの例が、
図13~
図17のユーザインターフェースに示される。
【0127】
図13のユーザインターフェース1310を参照すると、2D占有グリッド600が、信号カバレッジデータ500の3Dトポロジー表現と並べて示される。信号カバレッジが強い、弱い、またはない動作環境内の位置の指示が、占有グリッド600上で矢印(「強いカバレッジ」、「弱いカバレッジ」、または「カバレッジなし」)によって示され、信号カバレッジデータ500の3Dトポロジー表現の勾配の変化からも目に見える。
【0128】
図14のユーザインターフェース1410を参照すると、2D占有グリッド600が、動作環境内の位置「X」の写真1440と並べて示される。位置またはエリア「X」および対応する写真1440は、たとえば、動作環境内で移動ロボットによって獲得されたワイヤレス通信信号に基づいて信号カバレッジを改善するためにワイヤレスルータの位置を変えるための動作環境内の提案される位置を示す(「デバイスをここに移動」)。
【0129】
図15のユーザインターフェース1510を参照すると、2D占有グリッド600が、信号カバレッジを改善するためのワイヤレスルータの位置付けのための動作環境内の提案される位置を、たとえば、動作環境内で移動ロボットによって獲得されたワイヤレス通信信号に基づいて動作環境内の1つまたは複数のその他のコネクテッドデバイスとの干渉を防止するためのワイヤレスルータの配置に関する推薦される高さを示す指示1550(「デバイスをこの高さに位置付ける」)と一緒に示す位置またはエリア「X」の写真1440と並べて示される。
【0130】
図16のユーザインターフェース1610を参照すると、新しいワイヤレスルータまたは範囲拡張器の購入のインセンティブ1640が2D占有グリッド600の上に表示される。インセンティブ1640は、動作環境内で移動ロボットによって獲得されたワイヤレス通信信号によって示される既存のワイヤレスルータに関する乏しい信号カバレッジ特性に基づいて表示される可能性がある。
【0131】
図17のユーザインターフェース1710を参照すると、2D占有グリッド600が、動作環境内の位置「X」の写真1740と並べて示される。位置「X」および対応する写真1740は、移動ロボットによって獲得されたワイヤレス通信信号に基づいてワイヤレス通信信号が受信された動作環境内のモバイル電子デバイスの最も最近の位置(「最後の分かっているデバイスの位置」)を示す。写真1740に示される図は、モバイル電子デバイスからの信号の最後のピークの発出の方向に向けられる。追加的にまたは代替的に、写真1740によって表される位置「X」の可聴式の説明(たとえば、「あなたの電話は最後にダイニングルームで検出されました」)が、ユーザインターフェース1710によって与えられる可能性がある。
【0132】
本開示の様々な実施形態の上の説明においては、本開示の態様が、任意の新しいおよび有用なプロセス、機械、製造物、もしくは組成物、またはそれらの任意の新しいおよび有用な改良を含むいくつかの特許を受けることができる部類または文脈のいずれかで本明細書において示され、説明される可能性がある。したがって、本開示の態様は、概してすべて「回路」、「モジュール」、「構成要素」、または「システム」と呼ばれる可能性があるすべてハードウェア、すべて(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)ソフトウェア、またはソフトウェアとハードウェアとを組み合わせる実装で実装される可能性がある。さらに、本開示の態様は、コンピュータ可読プログラムコードを具現化する1つまたは複数のコンピュータ可読媒体を含むコンピュータプログラム製品の形態をとる可能性がある。
【0133】
1つまたは複数のコンピュータ可読媒体の任意の組合せが、使用される可能性がある。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読ストレージ媒体である可能性がある。コンピュータ可読ストレージ媒体は、たとえば、電子、磁気、光学、電磁、または半導体システム、装置、またはデバイス、またはこれらの任意の好適な組合せであるがこれらに限定されない可能性がある。コンピュータ可読ストレージ媒体のより特定の例(非網羅的リスト)は、以下、すなわち、ハードディスクドライブ、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブル読み出し専用メモリ(EPROMもしくはフラッシュメモリ)、中継器を有する適切な光ファイバ、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、光学式ストレージデバイス、磁気式ストレージデバイス、またはこれらの任意の好適な組合せを含む。本明細書の文脈で、コンピュータ可読ストレージ媒体は、命令実行システム、装置、もしくはデバイスによってまたは命令実行システム、装置、もしくはデバイスに関連して使用するためのプログラムを含むかまたは記憶することができる任意の非一時的媒体である可能性がある。
【0134】
コンピュータ可読信号媒体は、たとえば、ベースバンドにまたは搬送波の一部としてコンピュータ可読情報が具現化された伝播データ信号を含む可能性がある。そのような伝播信号は、電磁、光、またはこれらの任意の好適な組合せを含むがこれらに限定されない様々な形態のうちのいずれかの形態をとる可能性がある。コンピュータ可読信号媒体は、コンピュータ可読ストレージ媒体ではなく、命令実行システム、装置、もしくはデバイスによってまたは命令実行システム、装置、もしくはデバイスに関連して使用するためのプログラムを伝達するか、伝播させるか、または運ぶことができる任意のコンピュータ可読媒体である可能性がある。(たとえば、プログラムコードとして)コンピュータ可読信号媒体上に具現化されたコンピュータ可読情報は、ワイヤレス、固定電話回線、光ファイバケーブル、RFなど、またはこれらの任意の好適な組合せを含むがこれらに限定されない任意の適切な媒体を使用して送信される可能性がある。
【0135】
本開示の態様に関する動作を実行するためのコンピュータプログラムコードは、1つまたは複数のプログラミング言語の任意の組合せで記述される可能性がある。プログラムコードは、本明細書において説明されたユーザ端末、移動ロボット、もしくはリモートサーバにおいてすべて実行されるか、またはそれぞれのうちの1つもしくは複数において部分的に実行される可能性がある。後者の筋書きにおいては、リモートサーバが、ローカルエリアネットワーク(LAN)もしくは広域ネットワーク(WAN)を含む任意の種類のネットワークを通じてユーザ端末および/もしくは移動ロボットに接続される可能性があり、あるいは接続が、(たとえば、インターネットサービスプロバイダを使用してインターネットを通じて)外部コンピュータにおよび/もしくはクラウドコンピューティング環境内で行われるか、またはサービスとしてのソフトウェア(SaaS)などのサービスとして提供される可能性がある。
【0136】
本開示の態様は、本開示の実施形態による方法、装置(システム)、およびコンピュータプログラム製品の流れ図および/またはブロック図を参照して本明細書において説明されている。流れ図および/またはブロック図の各ブロックならびに流れ図および/またはブロック図のブロックの組合せがコンピュータプログラム命令によって実行され得ることは、理解されるであろう。これらのコンピュータプログラム命令は、コンピュータまたはその他のプログラミング可能な命令実行装置のプロセッサによって実行される命令が流れ図および/またはブロック図の1つのブロックまたは複数のブロックにおいて規定された機能/行為を実施するためのメカニズムを生むように、マシンを生成するために多目的コンピュータ、専用コンピュータ、またはその他のプログラミング可能なデータ処理装置のプロセッサに与えられる可能性がある。
【0137】
これらのコンピュータプログラム命令は、コンピュータ可読媒体に記憶されるときに命令が、実行されるときにコンピュータに流れ図および/またはブロック図の1つのブロックまたは複数のブロックにおいて規定された機能/行為を実施させる命令を含む製品を生むように、特定の方法で機能するようにコンピュータ、その他のプログラミング可能なデータ処理装置、またはその他のデバイスに指示することができるコンピュータ可読媒体に記憶される可能性もある。コンピュータプログラム命令は、コンピュータまたはその他のプログラミング可能な装置において実行される命令が流れ図および/またはブロック図の1つのブロックまたは複数のブロックにおいて規定された機能/行為を実施するためのプロセスを提供するように、コンピュータによって実施されるプロセスを生成するようにコンピュータ、その他のプログラミング可能な装置、またはその他のデバイス上で一連の動作ステップを実行させるためにコンピュータ、その他のプログラミング可能な命令実行装置、またはその他のデバイスにロードされる可能性もある。
【0138】
本明細書で使用された用語は、特定の実施形態を説明することのみを目的としており、本発明の限定であるように意図されていないことを理解されたい。別途定義されない限り、本明細書において使用される(技術用語および科学用語を含む)すべての用語は、本開示が属する技術分野の当業者によって通常理解されるのと同じ意味を有する。よく使用される辞書において定義された用語などの用語が、本明細書および関連技術の文脈でのそれらの用語の意味にふさわしい意味を持つと解釈されるべきであり、本明細書において明示的にそのように定義されない限り非現実的なまたは過度に型通りの意味に解釈されないことはさらに理解されるであろう。
【0139】
図面の中の流れ図およびブロック図は、本開示の様々な態様によるシステム、方法、およびコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。これに関連して、流れ図またはブロック図の各ブロックは、規定された論理的機能を実装するための1つまたは複数の実行可能な命令を含むコードのモジュール、セグメント、または一部を表す可能性がある。一部の代替的な実装においては、ブロックに示された機能が図に示された順序から外れて行われる可能性があることにも留意されたい。たとえば、連続して示された2つのブロックが、実際には、実質的に同時に実行される可能性があり、またはブロックは、関連する機能に応じて逆順に実行されることがある可能性がある。ブロック図および/または流れ図の各ブロックならびにブロック図および/または流れ図のブロックの組合せは、規定された機能もしくは行為を実行する専用のハードウェアに基づくシステム、または専用のハードウェアとコンピュータ命令との組合せによって実装され得ることも留意される。
【0140】
以上は、本開示の実施形態を例示しており、本開示の限定と解釈されるべきでない。いくつかの例示的な実施形態が説明されたが、当業者は、本発明の教示および利点から実質的に逸脱することなく例示的な実施形態において多くの修正が可能であることを容易に理解するであろう。したがって、すべてのそのような修正は、本発明の範囲内に含まれるように意図される。したがって、上記の内容が本発明を例示しており、開示された特定の実施形態に限定されると解釈されるべきでなく、開示された実施形態およびその他の実施形態が本発明の範囲に含まれるように意図されることを理解されたい。
【符号の説明】
【0141】
10 生活構造物
20 生活空間
34 照明器具
34A 消耗するランプ
36 TV
40 暖房、換気、および空調システム(HVAC)
100 システム
104 バンパー
106 移動ロボット筐体
110 ゲートウェイおよび/またはハブ
111 縁ブラシ
120 ネットワーク対応または「コネクテッド」電子デバイス
122 ネットワーク対応または「コネクテッド」電子デバイス
124 ネットワーク対応または「コネクテッド」電子デバイス
126 ネットワーク対応オートメーションコントローラデバイス、コネクテッドデバイス
127 ネットワーク対応オートメーションコントローラデバイス、コネクテッドデバイス
128 ネットワーク対応オートメーションコントローラデバイス、コネクテッドデバイス
140 ロボットドック
142 ローカルユーザ端末、コネクテッドデバイス、ユーザデバイス
144 リモートユーザ端末、コネクテッドデバイス、ユーザデバイス
150 リモート管理サービス、リモート管理サーバ
160 ローカルエリアプライベートネットワーク
162 ルータ/ファイアウォール、コネクテッドデバイス
164 ワイヤレスアクセスポイント(WAP)
170 公衆ネットワーク
170A WANインターフェース、モデム
170B WAN接続
195A~195D 段差センサー
196 キャスターホイール
197 カメラ
200 ネットワーク対応移動ロボット
210 車台
220 コントローラ
222 メモリ
224 バッテリ
226 バッテリ充電器
228 ヒューマンマシンインターフェース(HMI)
230 駆動システム
232A 駆動ローラー/キャタピラ
232B 駆動ローラー/キャタピラ
234 電気モーター
240 マップ作成/ナビゲーションシステム
242 サービス動作システム、クリーニングヘッド、掃除システム
242A ゴミ貯蔵容器
242B 貯蔵容器レベルセンサー
242C 汚れ抽出センサー
250 ワイヤレス通信システム、ワイヤレス通信回路
252 ワイヤレス通信トランシーバまたはモジュール
254 関連するアンテナ
260 IRエミッタ
270A 環境センサー、位置特定センサー
270B 環境センサー、位置特定センサー、カメラ
270C~H 環境センサー、位置特定センサー
274A インジケータライト
274B オーディオトランスデューサ
274C 掃除モード選択スイッチまたはボタン
310 プロセッサ回路(「プロセッサ」)
320 メモリ
322 プログラムコード
330 ネットワークインターフェース
400 ローカルユーザ端末、リモートユーザ端末、ユーザデバイス
402 キーパッド
404 イヤホン/スピーカ
406 マイクロフォン
408 ディスプレイ
410 ユーザインターフェース
422 プログラム命令
424 カメラ
427 プロセッサ
428 メモリ
440 トランシーバ
442 送信機回路
444 受信機回路
446 モデム
450A アンテナアレー
450B アンテナアレー
500 信号カバレッジデータ
500a カバレッジパターン
500b カバレッジパターン、トポロジーマップ
500c カバレッジパターン、トポロジーマップ
600 占有データ、占有または間取り図マップ
605 マップ、視覚的表現、空間表現
705 マップ
800a1~800a6 マップ
800b マップ
1200 システム
1210 プロセッサ
1220 ユーザデータストア
1220a データベース
1220b データベース
1270 クラウドコンピューティングデバイスおよび/またはシステム
1310 ユーザインターフェース
1410 ユーザインターフェース
1440 写真
1510 ユーザインターフェース
1550 指示
1610 ユーザインターフェース
1640 インセンティブ
1710 ユーザインターフェース
1740 写真