(57)【要約】  ロボットの遠隔操作および／または監視のためのシステムおよび方法が開示されている。いくつかの例示的な実装形態では、ロボットは、遠隔ネットワークに通信可能に結合することができる。遠隔ネットワークは、ロボットと、信号を送信および受信することができる。いくつかの例示的な実装形態では、遠隔ネットワークは、ロボットからセンサデータを受信することができ、遠隔ネットワークがロボットの状況を判断することを可能にする。このようにして、遠隔ネットワークは、支援要求に応答することができ、またロボットに動作コマンドを提供することができる。【選択図】図８
2020502636.tif 000002
【特許請求の範囲】
【請求項１】
遠隔ネットワークであって、
センサデータおよびロボットからの支援に対する要求を受信するように構成された通信ユニットと、
プロセッサであって、
前記受信されたセンサデータ内の関心対象の事象を識別することと、
前記受信されたセンサデータに少なくとも部分的に基づいて、状況を決定することと、前記通信ユニットを使用して、前記決定された状況に少なくとも部分的に基づいて、支援に対する前記要求に対処するための命令を、前記ロボットに送信することと、を行うように構成されたプロセッサと、を備える、遠隔ネットワーク。
【請求項２】
前記センサデータは、（１）前記関心対象の事象前の開始時間および（２）前記関心対象の事象後の終了時間を有するデータウィンドウを含み、前記状況の前記決定は、前記データウィンドウに少なくとも部分的に基づく、請求項１に記載の遠隔ネットワーク。
【請求項３】
前記状況を表示するように、かつユーザからの支援に対する前記要求に対処するための前記命令を受信するように構成されたユーザインターフェースをさらに備える、請求項１に記載の遠隔ネットワーク。
【請求項４】
前記状況の前記決定は、格納されたセンサデータのライブラリに対して実行される機械学習をさらに含む、請求項１に記載の遠隔ネットワーク。
【請求項５】
前記遠隔ネットワークは、前記通信ユニットを介して複数のロボットに通信可能に結合されている、請求項１に記載の遠隔ネットワーク。
【請求項６】
ロボットシステムであって、
ロボットであって、
環境についてのセンサデータを生成するように構成された１つ以上のセンサと、
前記センサデータおよび支援に対する要求を送信するように構成されたロボット通信ユニットと、を備える、ロボットと、
遠隔ネットワークであって、
前記センサデータおよび前記ロボットからの支援に対する前記要求を受信するように構成された遠隔ネットワーク通信ユニットと、
プロセッサであって、
前記受信されたセンサデータ内の関心対象の事象を識別することであって、前記関心対象の事象は、第１の時間に発生する、識別することと、
前記第１の時間前の開始時間および前記第１の時間後の終了時間を有する時間ウィンドウを決定することと、
前記決定された時間ウィンドウに対する前記センサデータに少なくとも部分的に基づいて、状況を決定することと、
前記遠隔ネットワーク通信ユニットを使用して、前記決定された状況に少なくとも部分的に基づいて、支援に対する前記要求に対処するための命令を、前記ロボット通信ユニットに送信することと、を行うように構成されたプロセッサと、を備える、遠隔ネットワークと、を備える、ロボットシステム。
【請求項７】
前記ロボットの前記１つ以上のセンサは、前記環境についてのマップ関連データを生成するようにさらに構成され、
前記遠隔ネットワーク通信ユニットは、前記ロボットから前記マップ関連データを受信するように構成され、
前記遠隔ネットワークは、前記マップ関連データに少なくとも部分的に基づいて、前記環境のマップを生成するように構成されたマップ処理ユニットをさらに備え、
前記遠隔ネットワーク通信ユニットは、前記マップ処理ユニットによって生成された前記マップを、自律的ナビゲーションのために前記ロボットに送信するようにさらに構成される、請求項６に記載のシステム。
【請求項８】
前記ロボットは、床掃除機を備える、請求項６に記載のシステム。
【請求項９】
支援に対する前記要求に対処するための前記命令は、前記ロボットを作動させるように構成されたアクチュエータ命令を含む、請求項６に記載のシステム。
【請求項１０】
前記遠隔ネットワークは、ユーザ入力を受信するように構成されたユーザインターフェースをさらに備え、支援に対する前記要求に対処するための前記命令は、前記ユーザ入力に少なくとも部分的に基づいて生成される、請求項６に記載のシステム。
【請求項１１】
前記ロボットは、自律的に前記環境をナビゲートするように構成され、前記センサデータ内の前記関心対象の事象は、前記ロボットのルートに沿った障害物を含む、請求項６に記載のシステム。
【請求項１２】
前記遠隔ネットワークに通信可能に結合された第２のロボット通信ユニットを有する第２のロボットをさらに備える、請求項６に記載のシステム。
【請求項１３】
前記遠隔ネットワークは、前記ロボットの使用法を追跡するようにさらに構成される、請求項６に記載のシステム。
【請求項１４】
ロボットであって、
環境についてのセンサデータを生成するように構成された１つ以上のセンサと、
タスクを実行するように構成されたアクチュエータと、プロセッサであって、
前記生成されたセンサデータに少なくとも部分的に基づいて、前記環境における障害物を検出することと、
前記ロボットが前記タスクを実行することができないと決定し、前記決定に応答して、前記アクチュエータが前記タスクを実行することを防止することと、
前記決定に応答して、遠隔ネットワークに、前記センサデータおよび支援に対する要求を送信することと、
支援に対する前記要求に応答して、前記タスクを実行するために前記遠隔ネットワークから命令を受信することと、
前記遠隔ネットワークから受信された前記命令に少なくとも部分的に基づいて、前記タスクを実行することと、を行うように構成されたプロセッサと、を備える、ロボット。
【請求項１５】
前記ロボットは、床掃除機を備え、前記タスクは、床を掃除することを含む、請求項１４に記載のロボット。
【請求項１６】
前記プロセッサは、（１）前記障害物の検出前の開始時間および（２）前記障害物の検出後の終了時間を有する時間ウィンドウを決定することと、前記決定された時間ウィンドウに対応する前記センサデータを送信することと、を行うようにさらに構成される、請求項１４に記載のロボット。
【請求項１７】
前記プロセッサは、前記遠隔ネットワークからマップを受信することと、前記受信されたマップに少なくとも部分的に基づいて前記タスクを実行することと、を行うようにさらに構成される、請求項１４に記載のロボット。
【請求項１８】
前記生成されたセンサデータに少なくとも部分的に基づいて、マップを生成するように構成されたマッピングおよび位置特定ユニットをさらに備える、請求項１４に記載のロボット。
【請求項１９】
前記プロセッサは、前記マップを前記遠隔ネットワークに送信することと、前記遠隔ネットワークから修正されたマップを受信することと、を行うようにさらに構成され、前記送信されたマップは、１つ以上のエラーを有し、前記受信された修正されたマップは、もはや前記１つ以上のエラーを有しない、請求項１８に記載のロボット。
【請求項２０】
前記１つ以上のセンサ、前記アクチュエータ、および前記プロセッサは、取り付け可能なモジュールを備える、請求項１４に記載のロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
優先権
本願は、２０１６年１１月２８日に出願された同一名称の共有および同時継続中の米国特許出願第１５／３６２，５４４号に対する優先権の利益を主張するものであり、その内容は参照によりその全体が本明細書に組み込まれる。
【０００２】
著作権
本特許文書の開示の一部には、著作権保護の対象となる資料が含まれている。著作権者は、特許商標庁の特許ファイルまたは記録に記載されているような本特許文書または本特許開示の、いかなる人物によるファクシミリ複製にも異論を唱えないが、それ以外のすべての著作権を留保する。
【０００３】
背景
本出願は、概して、ロボット工学に関し、より具体的には、ロボットの遠隔操作および／または監視のためのシステムおよび方法に関する。
【背景技術】
【０００４】
場合によっては、ロボットは、オペレータ制御をほとんどまたは全く伴わずに、自律的に動作することができる。しかしながら、これらのロボットは、自律的に動作するが、ロボットは、人間の支援が必要とされる事態に陥ることがある。例えば、自律型ロボットが動けなくなり、人的支援が必要になることがある。別の例として、ロボットは、最適なレベルで動作していない、および／または、そのプロトコルに対して人間が調整する必要があるかもしれない。別の例として、ロボットは、特定のタスクを実行するように、および／または特定の調整を行うように構成されていない場合があり、かつロボットに対する追加の入力および／または制御が必要である場合がある。
【０００５】
現代的なロボットは、接続性および遠隔監視をほとんど伴わない制御された環境で頻繁に動作する。したがって、オペレータは、現場でこれらのロボットを支援し、これは、場合によっては、これらのロボットに不必要な停止時間を生じさせる。この現代的なシナリオはまた、ロボットを支援するために、これらのロボットを見張る、および／またはそれらを他のタスクから逸らすために、人々がその場にいることがしばしば要求されるので、維持することが高価になる可能性もある。したがって、ロボットの操作および／または監視のための改良されたシステムおよび方法が必要とされている。
【発明の概要】
【０００６】
前述の必要性は、とりわけ、自律的ナビゲーションにおける動的ルート計画のための装置および方法を提供する本開示によって満たされる。本明細書に記載されている例示的な実装形態は、革新的な特色を有しており、そのうちの１つのものが、それらの望ましい属性に対して不可欠であるのではなく、または単独でその責任を担うものではない。特許請求の範囲を限定することなく、いくつかの有利な特色をここで要約する。
【０００７】
第１の態様において、ロボットシステムが開示される。例示的な一実装形態では、ロボットシステムは、環境についてのセンサデータを生成するように構成された１つ以上のセンサと、センサデータおよび支援に対する要求を送信するように構成されたロボット通信ユニットとを備える、ロボットを含む。ロボットシステムは、センサデータおよびロボットからの支援に対する要求を受信するように構成された遠隔ネットワーク通信ユニットと、受信されたセンサデータ内の関心対象の事象を識別することであって、関心対象の事象は、第１の時間に発生する、ことと、第１の時間前の開始時間および第１の時間後の終了時間を有する時間ウィンドウを決定することと、決定された時間ウィンドウに対するセンサデータに少なくとも部分的に基づいて、状況を決定することと、遠隔ネットワーク通信ユニットを使用して、決定された状況に少なくとも部分的に基づいて、支援に対する要求に対処するための命令を、ロボット通信ユニットに送信することと、を行うように構成されたプロセッサと、を備える、遠隔ネットワークも含む。
【０００８】
一変形形態では、ロボットの１つ以上のセンサは、環境についてのマップ関連データを生成するようにさらに構成され、遠隔ネットワーク通信ユニットは、ロボットからマップ関連データを受信するように構成され、遠隔ネットワークは、マップ関連データの少なくとも部分的に基づいて、環境のマップを生成するように構成されたマップ処理ユニットをさらに備え、遠隔ネットワーク通信ユニットは、マップ処理ユニットによって生成されたマップを、自律的ナビゲーションのためにロボットに送信するようにさらに構成される。
【０００９】
別の変形形態では、ロボットは床掃除機である。別の変形形態では、支援に対する要求に対処するための命令は、ロボットを作動させるように構成されたアクチュエータ命令を含む。別の変形形態では、遠隔ネットワークは、ユーザ入力を受信するように構成されたユーザインターフェースをさらに備え、支援に対する要求に対処するための命令は、ユーザ入力の少なくとも部分的に基づいて生成される。別の変形形態では、ロボットは、自律的に環境をナビゲートするように構成され、センサデータ内の関心対象の事象は、ロボットのルートに沿った障害物を含む。
【００１０】
別の変形形態では、ロボットシステム第２のロボットは、遠隔ネットワークに通信可能に結合された第２のロボット通信ユニットを有する。別の変形形態では、遠隔ネットワークは、ロボットの使用法を追跡するようにさらに構成される。別の変形形態では、１つ以上のセンサは、光検出および測距センサを含む。
【００１１】
第２の態様において、ロボットが開示される。例示的な一実装形態では、ロボットは、環境についてのセンサデータを生成するように構成された１つ以上のセンサと、タスクを実行するように構成されたアクチュエータと、生成されたセンサデータに少なくとも部分的に基づいて、環境における障害物を検出することと、ロボットがタスクを実行することができないと決定し、決定に応答して、アクチュエータがタスクを実行することを防止することと、決定に応答して、遠隔ネットワークに、センサデータおよび支援に対する要求を送信することと、支援に対する要求に応答して、タスクを実行するために遠隔ネットワークから命令を受信することと、遠隔ネットワークから受信された命令に少なくとも部分的に基づいて、タスクを実行することと、を行うように構成されたプロセッサと、を含む。
【００１２】
一変形形態では、ロボットは、床掃除機であり、タスクは、床を掃除することを含む。別の変形形態では、プロセッサは、（１）障害物の検出前の開始時間および（２）障害物の検出後の終了時間を有する時間ウィンドウを決定することと、決定された時間ウィンドウに対応するセンサデータを送信することと、を行うようにさらに構成される。
【００１３】
別の変形形態では、プロセッサは、遠隔ネットワークからマップを受信することと、受信されたマップに少なくとも部分的に基づいてタスクを実行することと、を行うようにさらに構成される。
【００１４】
別の変形形態では、ロボットは、生成されたセンサデータに少なくとも部分的に基づいて、マップを生成するように構成されたマッピングおよび位置特定ユニットをさらに備える。
【００１５】
別の変形形態では、プロセッサは、マップを遠隔ネットワークに送信することと、遠隔ネットワークから修正されたマップを受信することと、を行うようにさらに構成され、送信されたマップは、１つ以上のエラーを有し、修正されたマップは、もはや１つ以上のエラーを有しない。
【００１６】
別の変形形態では、１つ以上のセンサ、アクチュエータ、およびプロセッサは、取り付け可能なモジュールを備える。
【００１７】
第３の態様では、遠隔ネットワークが開示されている。例示的な一実装形態では、遠隔ネットワークは、センサデータおよびロボットからの支援に対する要求を受信するように構成された通信ユニットと、受信されたセンサデータ内の関心対象の事象を識別することと、受信されたセンサデータに少なくとも部分的に基づいて、状況を決定することと、通信ユニットを使用して、決定された状況に少なくとも部分的に基づいて、支援に対する要求に対処するための命令を、ロボットに送信することと、を行うように構成されたプロセッサと、を備える。
【００１８】
一変形形態では、センサデータは、（１）関心対象の事象前の開始時間および（２）関心対象の事象後の終了時間を有するデータウィンドウを含み、状況の決定は、データウィンドウに少なくとも部分的に基づく。
【００１９】
別の変形形態では、遠隔ネットワークは、状況を表示するように、かつユーザからの支援に対する要求に対処するための前記命令を受信するように構成されたユーザインターフェースをさらに備える。
【００２０】
別の変形形態では、状況の決定は、格納されたセンサデータのライブラリに対して実行される機械学習をさらに含む。
【００２１】
別の変形形態では、遠隔ネットワークは、通信ユニットを介して複数のロボットに通信可能に結合されている。
【００２２】
第４の態様では、遠隔ネットワークの操作方法が開示されている。例示的な一実装形態では、方法は、センサデータ内の関心対象の事象を識別することであって、関心対象の事象は、第１の時間に発生する、識別することと、第１の時間前の開始時間および第１の時間後の終了時間を有する時間ウィンドウを決定することと、ウィンドウ中に生成されたセンサデータに少なくとも部分的に基づいて、状況を決定することと、状況に少なくとも部分的に基づいて、支援に対する要求に対処するための命令を、ロボットに送信することと、を含む。
【００２３】
第５の態様では、ロボットの操作方法が開示されている。例示的な一実装形態では、この方法は、センサデータに少なくとも部分的に基づいて、環境における障害物を検出することおよびロボットがタスクを実行できないと決定することと、ロボットのアクチュエータがタスクを実行するのを防止することと、遠隔ネットワークに、センサデータおよび支援に対する要求を送信することと、タスクを実行するために遠隔ネットワークから命令を受信することと、遠隔ネットワークからの命令に少なくとも部分的に基づいて、タスクを実行することと、を含む。
【００２４】
第６の態様では、非一時的コンピュータ可読格納媒体が開示されている。例示的な一実装形態では、非一時的なコンピュータ可読格納媒体は、複数の命令をそこに格納し、これらの命令は、遠隔ネットワークを操作するための処理装置によって実行可能である。処理装置によって実行されたときに、命令は、処理装置に、センサデータ内の関心対象の事象を識別することであって、関心対象の事象は、第１の時間に発生する、を識別することと、第１の時間前の開始時間および第１の時間後の終了時間を有する時間ウィンドウを決定することと、ウィンドウ中に生成されたセンサデータに少なくとも部分的に基づいて、状況を決定することと、状況に少なくとも部分的に基づいて、支援に対する要求に対処するための命令を、ロボットに送信することと、を実行させるように構成される。
【００２５】
いくつかの実装形態では、非一時的なコンピュータ可読格納媒体は、複数の命令をそこに格納し、これらの命令は、ロボットを操作するための処理装置によって実行可能である。処理装置によって実行されたときに、命令は、処理装置に、センサデータに少なくとも部分的に基づいて、環境における障害物を検出することおよびロボットがタスクを実行することができないと決定することと、ロボットのアクチュエータがタスクを実行することを防止することと、遠隔ネットワークに、センサデータおよび支援に対する要求を送信することと、タスクを実行するために遠隔ネットワークから命令を受信することと、遠隔ネットワークからの命令に少なくとも部分的に基づいて、タスクを実行することと、を実行させるように構成される。
【００２６】
本開示のこれらおよび他の目的、特色、および特性、ならびに構造の関連要素の操作方法および機能ならびに部品の組み合わせおよび製造の経済性は、それらのすべてが本明細書の一部分を形成し、同様の参照番号は様々な図における対応する部分を示す、添付の図面を参照して下記の説明および添付の特許請求の範囲を考慮することにより、より明らかになるであろう。しかしながら、図面は、例示および説明の目的のみのためであり、本開示の限界の画定を意図するものではないことは、明白に理解されるべきである。本明細書および特許請求の範囲で使用されているように、「ａ」、「ａｎ」、および「ｔｈｅ」の単数形は、文脈上他に明確に指示されない限り、複数の指示対象を含む。
【図面の簡単な説明】
【００２７】
開示された態様は、添付の図面と併せて以下で説明され、開示される態様を例示するために提供され、限定するために提供されるものではなく、同様の名称は同様の要素を示す。
【００２８】
【図１Ａ】本開示のいくつかの実装形態による、ロボットの操作のための例示的な方法のプロセスフロー図である。
【図１Ｂ】本開示のいくつかの実装形態による、支援を受けるロボットの操作のための例示的な方法のプロセスフロー図である。
【図２】本開示のいくつかの原理による、ロボットの機能ブロック図である。
【図３Ａ】本開示のいくつかの実装形態による、遠隔ネットワークと通信可能におよび／または操作可能に結合された複数のロボットを含むシステムの機能ブロック図である。
【図３Ｂ】本開示のいくつかの実装形態による、ゲートウェイを介して遠隔ネットワークと通信可能におよび／または操作可能に結合されたロボットを含むシステムの機能ブロック図である。
【図４】本開示のいくつかの実装形態による、ロボットと遠隔ネットワークとの間を行き来することができる信号を例示する信号表である。
【図５Ａ】本開示のいくつかの実装形態による、ロボットが環境内を移動するときにロボットによって生成される上面マップおよびルートである。
【図５Ｂ】本開示のいくつかの原理による、ロボットの周囲および移動ルートを正確には反映していないマップである。
【図６】本開示のいくつかの実装形態による、ウィンドウにおいて取得されたセンサデータのタイミング図である。
【図７Ａ】本開示のいくつかの実装形態による、環境マップ上にオーバーレイされたルートを含むマップを含む。
【図７Ｂ】本開示のいくつかの実装形態による、ロボットの使用法を要約する報告ページを含む。
【図８】本開示のいくつかの実装形態による、遠隔ネットワークの操作のための例示的な方法のプロセスフロー図である。
【図９】本開示のいくつかの実装形態による、ロボットの操作のための例示的な方法のプロセスフロー図である。
【００２９】
本明細書で開示のすべての図は、Ｂｒａｉｎ  Ｃｏｒｐｏｒａｔｉｏｎが著作権（２０１７）を有する。無断転用を禁止する。
【発明を実施するための形態】
【００３０】
本明細書に開示された新規なシステム、装置、および方法の様々な態様は、添付の図面を参照して以下でより完全に記載される。しかしながら、本開示は、多くの異なる形態で具現化することができ、本開示を通して提示される具体的な構造または機能に限定されると解釈されるべきではない。むしろ、これらの態様は、本開示が徹底的かつ完全であり、本開示の範囲を当業者に完全に伝えるように提供される。本明細書の教示に基づいて、当業者は、本開示の範囲が、本開示の任意の他の態様とは独立して実装されるか、またはそれと組み合わせられるかにかかわらず、本明細書に開示された新規のシステム、装置、および方法の任意の態様を包含することを意図していることを理解するはずである。例えば、本明細書に記載の任意の数の態様を使用して、装置を実装することができ、または方法を実施することができる。加えて、本開示の範囲は、本明細書に記載された開示の様々な態様に加えて、またはそれ以外の他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法を包含するように意図されている。本明細書に開示されるいかなる態様も、特許請求項の１つ以上の要素によって実装され得ることを理解されたい。
【００３１】
特定の態様が本明細書に記載されているが、これらの態様の多くの変形および置換が本開示の範囲内に含まれる。好ましい態様のいくつかの利益および利点が述べられているが、本開示の範囲は、特定の利益、用途、および／または目的に限定されることを意図しない。詳細な説明および図面は、限定ではなく本開示の単なる例示であり、開示の範囲は、添付の特許請求の範囲およびその均等物によって定義される。
【００３２】
本開示は、ロボットの改善された遠隔操作および／または監視を提供する。本明細書で使用されるように、ロボットは、複雑な一連の動作を自動的に成し遂げるように構成された機械的または仮想的エンティティを含むことができる。場合によっては、ロボットは、コンピュータプログラムまたは電子回路によって案内および／または命令される機械であることができる。場合によっては、ロボットは、ナビゲーション用に構成された電子機械コンポーネントを含むことができ、ロボットがある場所から別の場所に移動できる。そのようなナビゲーションロボットは、自律走行および／または自動運転車、床掃除機、探査車（ｒｏｖｅｒ）、ドローン、飛行機、ボート、カートなどを含むことができる。
【００３３】
場合によっては、ロボットは、１つ以上のタスクを実行するように自動化された、電気器具、機械、および／または機器を含むことができる。例えば、モジュールは、それらが自律的に動作することを可能にするために、電気器具、機械、および／または機器に取り付けることができる。いくつかの実装形態では、モジュールは、電気器具、機械、および／または機器の自律運動を駆動するモーターを含むことができる。場合によっては、モジュールは、少なくとも一部はなりすましに基づいて、電気器具、機械、および／または機器を動作させる。モジュールは、データを受信し、かつ生成するためのセンサおよび／またはプロセッサを含むことができる。そのような電気器具、機械、および／または機器は、フォークリフト、タグボート、ボート、飛行機、産業機器、床掃除機、家電製品などを含むことができる。
【００３４】
本明細書で言及されるように、床掃除機は、手動制御（例えば、駆動または遠隔制御）および／または自律した（例えば、ユーザ制御をほとんどまたは全く用いない）床掃除機を含むことができる。例えば、床掃除機は、管理者、管理人、または他の人が操作する床掃除機、および／または環境を自律的にナビゲートおよび／または掃除するロボット床掃除機を含むことができる。同様に、床掃除機はまた、真空掃除機、蒸気掃除機、バッフィングマシン、モップ、ポリッシャー、スイーパー、バニッシャーなどを含むことができる。
【００３５】
本開示のシステムおよび方法の様々な実装形態および変形形態の詳細な説明は、ここで提供される。本明細書で考察された多くの実施例は、ロボット式床掃除機の状況におけるものであるが、本明細書に含まれて記載されているシステムおよび方法は、他のロボットでも使用できることが理解されよう。本明細書に記載された技術の無数の他の例示的な実装形態または使用形態は、本開示の内容が与えられれば、当業者によって容易に想定されるであろう。
【００３６】
有利には、本開示のシステムおよび方法は、少なくとも（ｉ）ロボットへ／からのデータ転送を可能にすること、（ｉｉ）ロボットの最適化を可能にすること、（ｉｉｉ）遠隔ロボット支援を可能にすること、（ｉｖ）予期しない事情下であっても、ロボットが環境内で安全に動作できるようにすること、（ｖ）複数のロボットの制御を可能にすること、（ｖｉ）ロボットの状態、メンテナンス、および／または性能の遠隔監視を可能にすること、（ｖｉｉ）ロボットデータのためのデータセキュリティを提供すること、（ｖｉｉｉ）ロボットマッピングおよび／または性能のレビューを可能にすること、（ｉｘ）ロボットおよび／またはロボットデータの計算上効率的な管理を提供すること、を含む。他の利点は、本開示の内容を与えられた当業者によって容易に認識することができる。
【００３７】
例えば、ロボットは、環境をナビゲートし、データを収集し、および／または行動を実行することができる。例示として、ロボットは、環境内を移動するときに床を掃除する床掃除機であり得る。ロボットは、データを収集および／または生成することができる。例えば、ロボットは、図２を参照して本開示において後で記載されるように、ロボットの環境を感知するセンサを有することができる。これらのセンサは、環境に関するデータを生成できる。ロボットは、オン／オフ時間、速度、状態、ソフトウェアバージョン、動作（例えば、掃除などの行動／動作の実行）、メンテナンスなど、ロボットの性能を監視するセンサを有することもできる。これらのセンサは、ロボットに関するデータを生成することができる。ロボットはまた、ロボットの環境および／またはロボットが自律的に環境をナビゲートすることを可能にするルートに関する情報を含むマップ関連データ（例えば、マップ作成および／または位置特定に関連する、および／またはそれに使用できるデータ）を生成することができる。
【００３８】
これらの事態では、本開示のシステムおよび方法は、ロボットによって収集および／または生成されたデータを外部レビューするのに望ましい可能性がある。この外部レビューは、ロボットのエラーや誤動作がレビューされ、潜在的に発見および解決されることを可能にする。例えば、遠隔オペレータ（例えば、ユーザおよび／またはコンピュータ）は、データをレビューしてロボットのあらゆる必要性を評価し、および／またはロボットの性能を向上させることができる。遠隔モニタは、マップをレビューし、および／またはそれらの正確性を評価することができる。マップが不正確である場合、マップ修正および／または他の手順は、遠隔で実行することができる。有利なことに、遠隔モニタは、ロボットにさらなる安全性および／または精度の層を提供し、所望に応じてエラーを捕捉および／または修正することができる。
【００３９】
別の実施例として、遠隔オペレータは、ロボットが動けなくなったときに（例えば、空間の外へおよび／または通過してナビゲートすることができない）それに命令を与えることができる。遠隔オペレータは、動的にロボットのルートを変更することができる。有利なことに、本開示の実装形態に従ってロボットとの遠隔監視および／または対話を有することは、ロボットがより困難な環境をナビゲートすることを可能にすることができる。これは、起こり得るすべての事態を処理するようにプログラムされていないかもしれないロボットの配備を可能にすることができる。例えば、環境および／または行動を学習するように構成されたロボットは、最初は環境および／または行動を知らないかもしれない。遠隔オペレータは、環境および／または行動を十分に学習するまでロボットを支援することができる。別の実施例として、ロボットは、ロボットのプログラミングによって対処されていない事態（例えば、特別な場合、熟考されていないシナリオ、および／または説明されていないシナリオ）に遭遇することができる。遠隔オペレータは、それからロボットに解決策を提供することができる。場合によっては、プログラミングソリューションを後でロボットにロードして、遠隔オペレータからの支援が不要になることもある。
【００４０】
他の実施例として、ロボットは、様々なパラメータおよび許容誤差を伴って構成することができる。停止するロボットは故障している、という人々（例えば、ユーザ、観察者など）による認識が存在し得る。したがって、ロボットの停止時間を回避するために、プログラマがロボットの限界を押し広げる傾向がある。本開示のシステムおよび方法は、より多くの事態でロボットを停止させることによって、プログラマが安全側にエラーを起こすことを可能にすることができる。遠隔オペレータは、ロボットを迅速に支援することができるので、停止時間を実質的に最小限に抑えることができる。そのような場合、ロボットの観察者による支援の出現は、実質的に最小限に抑えることができ、実質的にシームレスな自律性の出現を生み出す。この自律性の見通しは、人々に安心感を与えることができ、ロボットに対する彼らの信頼をさらに高める。
【００４１】
別の実施例として、ロボット性能は、しばしば評価するのが難しい。人々は、ある期間ロボットを観察するかもしれないが、その時にはロボットがその仕事を正しく行っていると仮定するかもしれない。確かに、時間をかけ過ぎたロボットの観察は、手動のオペレータの時間を他のタスクに再割り当てすることによる潜在的な節約が妨げられる可能性がある。本開示のシステムおよび方法は、ロボットの性能の少なくとも一部を示すことができる報告を可能にする。ロボットの性能についての知識があれば、オペレータは、ロボットの性能を向上させること、および／またはロボットの有用性を評価することができる。
【００４２】
別の実施例として、本開示のシステムおよび方法は、ロボットの監視および／または操作のための費用対効果の高い解決策を提供する。監視および制御は、潜在的にロボットのコストおよび諸経費を増大させる可能性があるが、１つの遠隔ネットワークは、複数のロボットを操作および／または監視することができ、それによって共有リソースが可能になる。このようにして、コストを、複数のロボットにわたって分配することができ、任意の１つを監視および／または操作するコストを削減する。さらに、遠隔ネットワークは、効率性およびコスト共有のための追加の機会を提供することができる。遠隔ネットワークは、個々のロボットよりも高度で高価なハードウェアを実装できる。各ロボットに高度なハードウェアを搭載する代わりに、ハードウェアは、遠隔ネットワークにおけるロボット間で共有することができる。次いで、遠隔ネットワークは、より高価なおよび／またはよりハードウェア集約的な計算（例えば、機械学習、画像処理、および／または他の方法など）に使用することができる。有利なことに、遠隔ネットワークのハードウェアは、絶えずアップグレードすることができるが、それらのロボットが配備された後に個々のロボットのハードウェアをアップグレードすることは困難であり得る。
【００４３】
図１Ａは、本開示のいくつかの実装形態による、ロボットの操作のための例示的な方法１００のプロセスフロー図である。ブロック１０２は、データを収集することを含む。例えば、ロボットは、図２を参照して記載されるように、センサユニット２１２のセンサなど、そのセンサを通してデータを収集することができる。このデータは、センサからの生データを含むことができる。このデータは、加えてまたは代替として、状態、動作時間、報告などを含む、データから引き出された集約および／または結論を含むこともできる。場合によっては、データは、ロボットが移動するためのマップおよび／またはルートを含むこともできる。マップは、物体、障害物、および／またはロボットの周囲における他の特色など、ロボットの環境におけるマップを含むことができる。ルートは、環境においてロボットが移動する経路を含むことができる。ロボットが環境において移動する経路など、ルートは、予想することができる。ロボットが以前に移動した経路のように、ルートはまた、回顧的になることができる。ルートはまた、ロボットの現在位置および／または姿勢を含むことができる。
【００４４】
場合によっては、そのようなデータは、図２を参照して記載されるように、メモリ２０２内など、ロボットにおける特定の場所に格納することができる。このデータは、一時的におよび／または所望に応じて長期間にわたって格納することができる。
【００４５】
ブロック１０４は、データの少なくとも一部を遠隔ネットワークにアップロードすることを含む。そのようなアップロードは、既定の時間間隔でおよび／または要求に応じて起こり得る。例えば、ロボットは、データを遠隔ネットワークにプッシュすることができる。ロボットは、スケジュール、事象（例えば、特定の種類のデータの収集）に少なくとも部分的に基づいて、および／またはロボットのユーザインターフェース上で開始されたときに、そのようなデータ転送を開始することができる。別の実施例として、遠隔ネットワークは、ロボットからデータをプルすることができる。遠隔ネットワークは、スケジュール、事象（例えば、特定の種類のデータの収集）の少なくとも部分的に基づいて、および／または遠隔ネットワークのユーザインターフェース上で開始されたときに、そのようなデータ転送を開始することができる。
【００４６】
ブロック１０６は、遠隔ネットワークにおいて収集されたデータを処理することを含む。本開示においてさらに記載されるように、そのようなデータ処理は、データを集約すること、報告を生成すること、エラー修正すること、データに応答することなどを含むことができる。
【００４７】
図１Ｂは、本開示のいくつかの実装形態による、支援を受けるロボットの操作のための例示的な方法１５０のプロセスフロー図である。ブロック１５２は、自律的に動作することを含む。自律的な動作は、自律的なナビゲーション、および／または、ユーザ制御をほとんどまたは全く伴わずに、ロボットによる任意の行動の任意の実行を含むことができる。
【００４８】
ブロック１５４は、支援に対する理由を決定することを含む。例えば、自律的動作の過程において、ロボットは、支援が所望される事態でそれ自身を見つけることができる。例えば、ロボットの経路は、ロボットのプログラミングに従ってロボットが移動する経路を持たないように妨害される可能性がある。そしてロボットは、その経路をクリアにするための支援（例えば、人に障害物を動かさせること）が望ましいと判断することができる。別の実施例として、ロボットは故障する可能性がある（例えば、床掃除機の場合には、ブラシが破損する可能性があり、タンクが破裂する、水漏れ等）。したがって、ロボットは、自律的に実行することになっていたタスクを進めることができない可能性があり、問題を解決するための支援が望ましいと判断することができる。別の実施例として、ロボットは、流体、ベルト、パッド、ゴム雑巾、ブラシ、電池、消耗品などのメンテナンスなどのメンテナンス問題を抱えている可能性がある。したがって、ロボットは、メンテナンスが望ましいと判断することができる。
【００４９】
別の実施例として、ロボットは、支援が望ましいとロボットが判断する既定のシナリオに近づくことができる。例示として、ロボットは、所定の占有領域を有することができる。占有領域は、ロボットがナビゲートするときに環境におけるロボットと物体との間のスペース量であり得る、既定の量のクリアランスを提供することができる（例えば、ロボットの幅が２１インチである場合、クリアランススペースを作るためにクリアランスは２５インチであり得る）。通路が占有領域より小さい場合、ロボットは支援が望ましいと判断することができる。他のシナリオは事前定義できる。別の例示として、ロボットのセンサにおいて物体が障害物として見え、その後消える場合、ロボットは支援が望ましいと判断するようにプログラムすることができる。そのようなシナリオは、周囲に人、子供、および／または動物がいるかどうかの不確実性を生み出す可能性があり、ロボットは、ロボットがどのように進むべきかを知るために支援が望ましいと判断することができる。別の実施例として、ロボットはエラー（例えば、既知または未知の原因）を有し、支援が望ましいと判断することができる。
【００５０】
ブロック１５４で支援に対する理由を決定した後、ロボットは支援要求を送信することができる。ブロック１５６は、遠隔ネットワークに支援要求を送信することを含む。そのような支援要求は、状態、データ、警告、コマンド、および／または他の信号を含むことができる。本開示で説明するように、支援要求は、図２に例示する通信ユニット２２２を使用して送信することができる。
【００５１】
支援要求は、遠隔ネットワークによって受信されおよび／または処理される（例えばコンピュータおよび／または人によって）ことができる。その後、遠隔ネットワークはロボットに命令を送り返すことができる。ブロック１５８は、遠隔ネットワークから命令を受信することを含む。これらの命令は、（例えば、オペレータからの）支援を待つ、停止する、進む、および／またはロボットおよび／またはオペレータによる任意のさらなる行動を含むことができる。
【００５２】
図２は、本開示のいくつかの原理による、ロボット２００の機能ブロック図である。図２に例示されるように、ロボット２００は、コントローラ２０４、メモリ２０２、ユーザインターフェースユニット２１８、マッピングおよび位置特定ユニット２２４、センサユニット２１２、および通信ユニット２２２、ならびに他のコンポーネントおよびサブコンポーネント（例えば、それらのいくつかは例示されていない）を含むことができる。特定の実装形態が図２に例示されているが、本開示の内容が与えられれば当業者には容易に明らかであるように、アーキテクチャは特定の実装形態において変更され得ることが理解できる。本明細書で使用されるように、ロボット２００は、本開示に記載される任意のロボット（例えば、ロボット２００Ａ〜２００Ｃ）の少なくとも一部を代表することができる。ロボット２００に関して説明された任意の機能、システム、および／または方法は、ロボット２００Ａ〜２００Ｃのうちの任意の１つ（および／またはこの開示に記載された任意の他のロボット）と実質的に同様に適用できる。
【００５３】
コントローラ２０４は、ロボット２００によって行われる様々な操作を制御することができる。コントローラ２０４は、１つ以上のプロセッサ（例えば、マイクロプロセッサ）および他の周辺機器を含むことができる。本明細書で使用されるように、プロセッサ、マイクロプロセッサ、および／またはデジタルプロセッサは、限定することなく、デジタル信号プロセッサ（「ＤＳＰ」）、縮小命令セットコンピュータ（「ＲＩＳＣ」）、汎用（「ＣＩＳＣ」）プロセッサ、マイクロプロセッサ、ゲートアレイ（例えば、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」））、プログラマブルロジックデバイス（「ＰＬＤ」）、再構成可能コンピュータファブリック（「ＲＣＦ」）、アレイプロセッサ、セキュアマイクロプロセッサ、専用プロセッサ（例えば、ニューロモルフィック（ｎｅｕｒｏｍｏｒｐｈｉｃ）プロセッサ）、および特定用途向け集積回路（「ＡＳＩＣ」）、のような任意のデジタル処理デバイスの種類を含むことができる。そのようなデジタルプロセッサは、単一の一体型集積回路ダイに含まれてもよく、または複数のコンポーネントにわたって分散されてもよい。
【００５４】
コントローラ２０４は、メモリ２０２と操作可能におよび／または通信可能に結合されてもよい。メモリ２０２は、読み取り専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、不揮発性ランダムアクセスメモリ（「ＮＶＲＡＭ」）、プログラマブル読み取り専用メモリ（「ＰＲＯＭ」）、電気的消去可能プログラマブル読み取り専用メモリ（「ＥＥＰＲＯＭ」）、ダイナミックランダムアクセスメモリ（「ＤＲＡＭ」）、モバイルＤＲＡＭ、シンクロナスＤＲＡＭ（「ＳＤＲＡＭ」）、ダブルデータレートＳＤＲＡＭ（「ＤＤＲ／２ＳＤＲＡＭ」）、拡張データ出力ＲＡＭ（「ＥＤＯ」）、高速ページモードＲＡＭ（「ＦＰＭ」）、低遅延ＤＲＡＭ（「ＲＬＤＲＡＭ」）、スタティックＲＡＭ（「ＳＲＡＭ」）、フラッシュメモリ（例えば、ＮＡＮＤ／ＮＯＲ）、メモリスタメモリ、擬似スタティックＲＡＭ（「ＰＳＲＡＭ」）などを含むが、これらに限定されない、デジタルデータを格納するのに適合した任意の種類の集積回路または他の格納デバイスを含み得る。メモリ２０２は、コントローラ２０４に命令およびデータを提供することができる。例えば、メモリ２０２は、ロボット２００を操作させるために処理装置（例えば、コントローラ２０４）によって実行可能な、複数の命令が格納された非一時的なコンピュータ可読格納媒体であってもよい。場合によっては、命令は、処理装置によって実行されたときに、処理装置に本開示に記載の様々な方法、特色、および／または機能を行わせるように構成することができる。したがって、コントローラ２０４は、メモリ２０２内に格納されたプログラム命令に基づいて論理演算および算術演算を行うことができる。
【００５５】
いくつかの実装形態では、センサユニット２１２は、ロボット２００内および／またはロボット２００の周囲の特性を検出することができるシステムおよび／または方法を備えることができる。センサユニット２１２は、複数のセンサおよび／またはセンサの組み合わせを含むことができる。センサユニット２１２は、ロボット２００の内部または外部にあり、および／または部分的に内部および／または部分的に外部のコンポーネントを有するセンサを含むことができる。場合によっては、センサユニット２１２は、ソナー、光検出および測距（「ＬＩＤＡＲ」）センサ、レーダ、レーザ、カメラ（ビデオカメラ、赤外線カメラ、３Ｄカメラ、サーマルカメラなどを含む）、飛行時間（「ＴＯＦ」）カメラ、アンテナ、マイクロフォン、および／または当技術分野で知られている他の任意のセンサなどの１つ以上の外来センサを含むことができる。いくつかの実装形態では、センサユニット２１２は、生の測定値（例えば、電流、電圧、抵抗、ゲートロジックなど）および／または変換された測定値（例えば、距離、角度、障害物内の検出点など）を収集することができる。場合によっては、測定値は、集約および／または要約することができる。センサユニット２１２は、少なくとも部分的には測定値に基づいてデータを生成することができる。そのようなデータは、マトリックス、アレイなどのデータ構造に格納することができる。いくつかの実装形態では、センサデータのデータ構造は、画像と呼ばれ得る。
【００５６】
いくつかの実装形態では、センサユニット２１２は、ロボット２００の内部特性を測定することができるセンサを含むことができる。例えば、センサユニット２１２は、温度、電力レベル、状態、および／またはロボット２００の他の任意の特性を測定することができる。場合によっては、センサユニット２１２は、ロボット２００の走行距離測定を決定するように構成することができる。例えば、センサユニット２１２は、加速度計、慣性測定ユニット（「ＩＭＵ」）、走行距離計、ジャイロスコープ、スピードメータ、カメラ（例えば、視覚的走行距離測定を使用する）、時計／タイマなどのセンサを含むことができる、固有受容センサを含むことができる。走行距離測定は、ロボット２００の自律的なナビゲーションおよび／または他の自律的な行動を容易にすることができる。この走行距離測定は、初期の場所に対するロボット２００の位置（例えば、位置は、ロボットの場所、変位および／または向きを含むことができ、時には本明細書で使用される姿勢という用語と交換可能であり得る）を含むことができる。そのようなデータは、マトリックス、アレイなどのデータ構造に格納することができる。データ構造は、待ち行列、リスト、アレイ、スタック、バッグなどを含むことができる。いくつかの実装形態では、センサデータのデータ構造は、画像と呼ぶことができる。
【００５７】
マッピングおよび位置特定ユニット２２４は、センサユニット２１２からセンサデータを受信して、ロボット２００をマップに位置特定することができる。いくつかの実装形態では、マッピングおよび位置特定ユニット２２４は、ロボット２００がそれ自体をマップの座標内および／または場所（例えば、初期化場所、終了場所、ビーコン、基準点など）に対して位置特定することを可能にする場所特定システムおよび方法を含むことができる。マッピングおよび位置特定ユニット２２４はまた、グラフおよび／またはマップを生成することなどによって、ロボット２００によって取得された測定値を処理することもできる。
【００５８】
いくつかの実装形態において、ユーザインターフェースユニット２１８は、ユーザがロボット２００と対話できるように構成することができる。例えば、ユーザインターフェース２１８は、タッチパネル、ボタン、キーパッド／キーボード、ポート（例えば、汎用シリアルバス（「ＵＳＢ」）、デジタルビジュアルインターフェース（「ＤＶＩ」）、ディスプレイポート、イーサーター（Ｅ−Ｓａｔａ）、ファイヤワイヤ（Ｆｉｒｅｗｉｒｅ）、ピーエス２（ＰＳ／２）、シリアル（Ｓｅｒｉａｌ）、ブイジーエイ（ＶＧＡ）、スカジー（ＳＣＳＩ）、オーディオポート、高品位マルチメディアインターフェース（「ＨＤＭＩ」）、パーソナルコンピュータメモリカード国際協会（「ＰＣＭＣＩＡ」）ポート、メモリカードポート（例えば、セキュアデジタル（「ＳＤ」）およびミニＳＤ）、および／またはコンピュータ読取可能媒体用のポート）、マウス、ローラーボール、コンソール、バイブレータ、オーディオトランスデューサ、および／または、ワイヤレスデバイスで、またはワイヤを通じて結合されているかどうかにかかわらず、ユーザがデータおよび／またはコマンドを入力および／または受信するための任意のインターフェースを含むことができる。ユーザインターフェースユニット２１８は、限定することなく、液晶ディスプレイ（「ＬＣＤ」）、発光ダイオード（「ＬＥＤ」）ディスプレイ、ＬＥＤ・ＬＣＤディスプレイ、面内スイッチング（「ＩＰＳ」）ディスプレイ、陰極線管、プラズマディスプレイ、高精細（「ＨＤ」）パネル、４Ｋディスプレイ、網膜ディスプレイ、有機ＬＥＤディスプレイ、タッチスクリーン、表面、キャンバス、ならびに／または視覚的表現のための当該技術分野で既知の任意のディスプレイ、テレビ、モニタ、パネル、および／もしくはデバイスを含むことができる。いくつかの実装形態では、ユーザインターフェースユニット２１８は、ロボット２００の本体上に位置付けすることができる。いくつかの実装形態において、ユーザインターフェースユニット２１８は、ロボット２００の本体から離れて位置付けすることができるが、（例えば、送信機、受信機、および／もしくはトランシーバを含む通信ユニットを介して）ロボット２００と直接、または（ネットワーク、サーバ、および／もしくはクラウドを通じて）間接的に通信可能に結合することができる。
【００５９】
いくつかの実装形態では、通信ユニット２２２は、１つ以上の受信機、送信機、および／またはトランシーバを含むことができる。通信ユニット２２２は、ブルートゥース（ＢＬＵＥＴＯＯＴＨ（登録商標））、ジグビー（ＺＩＧＢＥＥ（登録商標））、ワイファイ（Ｗｉ−Ｆｉ）、誘導ワイヤレスデータ伝送、無線周波数、無線伝送、無線周波数識別（「ＲＦＩＤ」）、近距離通信（「ＮＦＣ」）、赤外線、ネットワークインターフェース、３Ｇ（３ＧＰＰ／３ＧＰＰ２）などの携帯電話技術、高速ダウンリンクパケットアクセス（「ＨＳＤＰＡ」）、高速アップリンクパケットアクセス（「ＨＳＵＰＡ」）、時分割多重アクセス（「ＴＤＭＡ」）、符号分割多元接続（「ＣＤＭＡ」）（例えば、ＩＳ−９５Ａ、広帯域符号分割多元接続（「ＷＣＤＭＡ」）など）、周波数ホッピングスペクトラム拡散（「ＦＨＳＳ」）、直接シーケンス拡散スペクトル「ＤＳＳＳ」）、移動体通信用のグローバルシステム（「ＧＳＭ」）、パーソナルエリアネットワーク（「ＰＡＮ」）（例えば、ＰＡＮ／８０２．１５）、マイクロ波アクセス（「ＷｉＭＡＸ」）の世界的な相互運用性、８０２．２０、ロングタームエボリューション（「ＬＴＥ」）（例えば、ＬＴＥ／ＬＴＥ−Ａ）、時分割ＬＴＥ（「ＴＤ−ＬＴＥ」）、グローバル移動体通信システム（「ＧＳＭ」）、狭帯域／周波数分割多元接続（「ＦＤＭＡ」）、直交周波数分割多重（「ＯＦＤＭ」）、アナログセルラ、セルラデジタルパケットデータ（「ＣＤＰＤ」）、衛星システム、ミリ波またはマイクロ波システム、音響、および赤外線（例えば、赤外線通信協会（「ＩｒＤＡ」））、のような送信プロトコル、ならびに／またはワイヤレスデータ伝送の任意の他の形式を送受信するように構成することができる。
【００６０】
本明細書で使用されるとき、ネットワークインターフェースは、限定することなく、ファイヤワイヤ（ＦｉｒｅＷｉｒｅ）（例えば、ＦＷ４００、ＦＷ８００、ＦＷＳ８００Ｔ、ＦＷＳ１６００、ＦＷＳ３２００など）、ユニバーサルシリアルバス（「ＵＳＢ」）（例えば、ＵＳＢ１．Ｘ、ＵＳＢ２．０、ＵＳＢ３．０、ＵＳＢ  Ｔｙｐｅ−Ｃなど）、イーサネット（例えば、１０／１００、１０／１００／１０００（ギガビットイーサネット）、１０−Ｇｉｇ−Ｅなど）、同軸同盟技術によるマルチメディア（「ＭｏＣＡ」）、コアックスシーズ（Ｃｏａｘｓｙｓ）（例えば、ＴＶＮＥＴＴＭ）、無線周波数チューナー（例えば、インバンド（ｉｎ−ｂａｎｄ）またはＯＯＢ、ケーブルモデムなど）、Ｗｉ−Ｆｉ（８０２．１１）、ＷｉＭＡＸ（例えば、ＷｉＭＡＸ（８０２．１６））、ＰＡＮ（例えば、ＰＡＮ／８０２．１５）、セルラ（例えば、３Ｇ、ＬＴＥ／ＬＴＥ−Ａ／ＴＤ−ＬＴＥ／ＴＤ−ＬＴＥ、ＧＳＭなど）、ＩｒＤＡファミリなどのそれらを含む、コンポーネント、ネットワーク、またはプロセスとの任意の信号、データ、またはソフトウェアインターフェースを含むことができる。本明細書で使用されるとき、ワイファイ（Ｗｉ−Ｆｉ）は、１つ以上のＩＥＥＥ規格８０２．１１、ＩＥＥＥ規格８０２．１１の変形、ＩＥＥＥ規格８０２．１１に関連する規格（例えば、８０２．１１ａ／ｂ／ｇ／ｎ／ａｃ／ａｄ／ａｆ／ah/ａｉ／ａｊ／ａｑ／ａｘ／ａｙ）、および／または他の無線規格を含むことができる。
【００６１】
通信ユニット２２２はまた、信号線および接地を有する任意のケーブルなどの、有線接続を介して伝送プロトコルを利用して送信／受信するように構成することができる。例えば、そのようなケーブルは、イーサネット（登録商標）ケーブル、同軸ケーブル、ユニバーサルシリアルバス（「ＵＳＢ」）、ファイヤワイヤ（ＦｉｒｅＷｉｒｅ）、および／または当該技術分野で既知の任意の接続を含むことができる。そのようなプロトコルは、コンピュータ、スマートフォン、タブレット、データキャプチャシステム、移動体通信ネットワーク、クラウド、サーバなどの外部システムと通信するために通信ユニット２２２によって使用することができる。通信ユニット２２２は、数字、文字、英数字、および／または記号を含む信号を送信および受信するように構成することができる。場合によっては、１２８ビットまたは２５６ビットキーなどのアルゴリズムおよび／またはＡｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ（「ＡＥＳ」）、ＲＳＡ、Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ（「ＤＥＳ」）、Ｔｒｉｐｌｅ  ＤＥＳなどの規格に準拠する他の暗号化アルゴリズムを使用して、信号を暗号化することができる。通信ユニット２２２は、状態、コマンド、および他のデータ／情報を送信および受信するように構成することができる。例えば、通信ユニット２２２は、ユーザがロボット２００を制御することを可能にするためにユーザオペレータと通信することができる。通信ユニット２２２は、ロボット２００がデータ、状態、コマンド、および他の通信をサーバに送信することを可能にするために、サーバ／ネットワーク（例えば、遠隔ネットワーク）と通信することができる。サーバはまた、ロボット２００を遠隔で監視および／または制御するために使用することができる、コンピュータおよび／またはデバイスと通信可能に結合することができる。通信ユニット２２２はまた、ロボット２００用のサーバから更新（例えば、ファームウェアまたはデータ更新）、データ、状態、コマンド、および他の通信を受信することができる。
【００６２】
アクチュエータ２２０は、場合によってはタスクを実行するために、作動させるために使用される任意のシステムを含むことができる。例えば、アクチュエータ２２０は、駆動される磁石システム、モーター／エンジン（例えば、電気モーター、燃焼エンジン、蒸気エンジン、および／または当該技術分野で既知の任意の種類のモーター／エンジン）、ソレノイド／ラチェット（ｒａｔｃｈｅｔ）システム、圧電システム（例えば、インチワーム（ｉｎｃｈｗｏｒｍ）モーター）、磁歪素子、ジェスティキュレーション（ｇｅｓｔｉｃｕｌａｔｉｏｎ）、および／または当該技術分野で既知の任意のアクチュエータを含むことができる。いくつかの実装形態において、アクチュエータ２２０は、推進を動力化するなど、ロボット２００の移動を可能にするシステムを含むことができる。例えば、電動推進は、ロボット２００を前方または後方に動かすことができ、および／または少なくとも部分的に（例えば、左、右、および／または他の任意の方向に）ロボット２００を回転させるのに使用することができる。例示として、アクチュエータ２２０は、ロボット２００が移動しているか停止しているかを制御し、および／またはロボット２００がある場所から別の場所にナビゲートすることを可能にする。アクチュエータ２２０はまた、水のオン／オフ、ブラシのオン／オフ、水の噴霧、真空のオン／オフ、真空ホース位置の移動、付属物（ロボットアーム、脚、手、足など）、および／またはその他の操作など、ロボット２００の他の器具を作動させるように構成することができる。
【００６３】
図２に関して記載した１つ以上のユニット（メモリ２０２、コントローラ２０４、センサユニット２１２、ユーザインターフェースユニット２１８、アクチュエータユニット２２０、通信ユニット２２２、マッピングおよび位置特定ユニット２２４、および／または他のユニットを含む）は、統合システムなどにおいてロボット２００に統合することができる。しかしながら、いくつかの実装形態では、これらのユニットのうちの１つ以上は、取り付け可能なモジュールの一部であり得る。このモジュールは、それがロボットとして挙動するように自動化するために既存の装置に取り付けることができる。したがって、ロボット２００に関して本開示で記載されている特色は、既存の装置に取り付けることができ、および／または統合システムにおいてロボット２００に統合することができるモジュール内でインスタンス化することができる。
【００６４】
いくつかの実装形態では、ロボット２００は、遠隔ネットワークに通信可能に結合することができる。図３Ａは、本開示のいくつかの実装形態による、遠隔ネットワーク３０２と通信可能におよび／または操作可能に結合された複数のロボット２００Ａおよび２００Ｂを含むシステム３００の機能ブロック図である。リモートネットワーク３０２は、限定された、もしくは定義された期間、または無期限もしくは未定義期間にわたって、仮想マシン、プロセス、または他のリソースをインスタンス化するために呼び出すことができる、ハードウェア、ソフトウェア、サービス、および／またはリソースの集合を備えることができる。遠隔ネットワーク３０２は、インターネットにアクセスするデバイスおよび／またはサーバを含む、複数のデバイス、システム、および／またはサーバと通信可能におよび／または操作可能に結合することができる。アクセスポイント３０４Ａおよび３０４Ｂなどの１つ以上のアクセスポイントは、コンピュータ、モバイルデバイス、タブレット、スマートフォン、携帯電話、携帯情報端末、ファブレット、電子書籍リーダー、スマートウォッチ、セットトップボックス、インターネットストリーミングデバイス、ゲーム機、スマート家電、および／または、インターネットおよび／または任意のネットワークプロトコルにアクセスできる任意のデバイスを含むが、これらに限定されない、デバイス、システム、および／またはサーバであることができる。２つのアクセスポイントが例示されているが、所望に応じてより多くのまたはより少ないアクセスポイントがあり得る。
【００６５】
本明細書で使用されているように、遠隔ネットワーク３０２は、操作することができる。遠隔ネットワーク３０２は、情報を受信、処理、および／または送信することができる、内蔵コンピュータを有することができる。これらのコンピュータは、自律的におよび／または人間のオペレータによる制御下で動作することができる。同様に、遠隔ネットワーク３０２は、遠隔ネットワーク３０２を操作するために同様に使用することができる、アクセスポイント（例えば、アクセスポイント３０４Ａおよび３０４Ｂ）を有することができる。アクセスポイントは、情報を受信、処理、および／または送信することができる、コンピュータおよび／または人間のオペレータを有することができる。したがって、本明細書における遠隔ネットワーク３０２の動作への言及は、人間のオペレータおよび／またはコンピュータのオペレータに適用することができる。
【００６６】
いくつかの実装形態では、ロボット２００と実質的に同様の１つ以上のロボットは、遠隔ネットワーク３０２と通信可能におよび／または操作可能に結合することができる。例えば、ロボット２００Ａおよびロボット２００Ｂは、通信ユニット２２２と実質的に同様の通信ユニットを使用して遠隔ネットワーク３０２と通信可能に結合されているように例示されている。ロボット２００Ａおよび２００Ｂのそれぞれは、状態、コマンド、および動作データを遠隔ネットワーク３０２に通信することができる。遠隔ネットワーク３０２はまた、状態、コマンド、および／または動作データを、ロボット２００Ａおよび２００Ｂのうちの１つ以上に格納し、および／または通信することができる。
【００６７】
図３Ｂは、本開示のいくつかの実装形態による、ゲートウェイ３０６を介して遠隔ネットワーク３０２と通信可能におよび／または操作可能に結合されたロボット２００Ｃを含むシステム３５０の機能ブロック図である。ロボット２００Ｃは、ロボット２００と実質的に同様のものとすることができる。いくつかの実装形態では、ロボット２００Ｃは、インターネットおよび／または本開示に記載の任意の通信プロトコルを介して直接遠隔ネットワーク３０２と通信することができる。しかしながら、いくつかの実装形態では、ロボット２００Ｃは、携帯電話塔、ルータ、サーバ、インターネットプロトコル（「ＩＰ」）ゲートウェイ、電話局、および／または通信をルーティングするための任意の他のハードウェアのような、中間スイッチおよび／またはゲートウェイを通じて、遠隔ネットワーク３０２と通信することができる。例示として、塔３０８は、携帯電話塔である。ロボット２００Ｃは、セルラーデータを介して塔３０８と通信することができ、そしてそれは、ゲートウェイ３０６を介して遠隔ネットワーク３０２にデータを渡すことができる。
【００６８】
いくつかの実装形態では、遠隔ネットワーク３０２は、メモリを含むことができる。メモリは、ＲＯＭ、ＲＡＭ、ＮＶＲＡＭ、ＰＲＯＭ、ＥＥＰＲＯＭ、ＤＲＡＭ、モバイルＤＲＡＭ、ＳＤＲＡＭ、ＤＤＲ／２  ＳＤＲＡＭ、ＥＤＯ  ＲＡＭ、ＦＰＭ、ＲＬＤＲＡＭ、スタティックＲＡＭ  ＳＲＡＭ、フラッシュメモリ（例えば、ＮＡＮＤ／ＮＯＲ）、メモリレジスタメモリ、ＰＳＲＡＭなどを含むが、これらに限定されない、デジタルデータを格納するように構成された任意の種類の集積回路または他の格納デバイスを含むことができる。メモリは、遠隔ネットワーク３０２のコントローラに命令およびデータを提供することができる。例えば、メモリは、リモートネットワーク３０２を操作させるために処理装置によって実行可能な、複数の命令が格納された非一時的なコンピュータ可読格納媒体であってもよい。場合によっては、命令は、処理装置によって実行されたときに、処理装置に本開示に記載の様々な方法、特色、および／または機能を行わせるように構成することができる。したがって、遠隔ネットワーク３０２のコントローラは、メモリ内に格納されているプログラム命令に基づいて論理および／または算術演算を実行することができる。
【００６９】
遠隔ネットワーク３０２のコントローラは、遠隔ネットワーク３０２によって実行される様々な動作を制御することができる。コントローラは、１つ以上のプロセッサ（例えば、マイクロプロセッサ）および他の周辺機器を含むことができる。そのようなデジタルプロセッサは、単一の一体型集積回路ダイに含まれてもよく、または複数のコンポーネントにわたって分散されてもよい。
【００７０】
いくつかの実装形態では、遠隔ネットワーク３０２は、検索可能なデータベースをメモリに格納することができる。遠隔ネットワーク３０２はまた、ロボット、例えばロボット２００、ロボット２００Ａ、ロボット２００Ｂ、ロボット２００Ｃ、および／または任意の他のロボットの状態を示す状態情報をメモリに格納することができる。例えば、状態情報は、消費電力、任意のおよび／または各ロボット２００のモジュールの使用法、ロボット２００にどのような動作モジュールおよび／またはコンポーネントが存在するか、ロボット２００の製造およびバージョン、および／またはロボット２００のソフトウェア、ロボット２００の場所（例えば、建物内のアドレスおよび／または場所）、ロボット２００の動作モジュールおよび他のコンポーネントの履歴情報（例えば使用履歴）、動作モジュールおよびコンポーネントの健康状態（例えば、機能性、異常性、非機能性、修理の必要性など）、エラー診断、ソフトウェアのバージョンおよび更新、ロボット２００（および／またはロボット２００のユーザ）と遠隔ネットワークとの間の通信、センサデータ、通信、および／またはロボット２００に関する任意の関連情報、を含むことができる。
【００７１】
遠隔ネットワーク３０２は、ロボット２００から状態更新を受信することができ、それを使用して格納された状態情報を更新することができる。この状態情報は、データベース、テーブル、フォーム、アレイ、マトリックス、および／または任意のデータ構造もしくは形式の、形式で格納することができる。場合によっては、ロボット２００は、状態更新を遠隔ネットワーク３０２に送信することができる。そのような更新は、情報が更新されるロボット２００において事象が発生したときに起こり得る。ロボット２００はまた、毎秒、分、時、日、週、年、または望ましい任意の時間単位などの、定期的な更新を送信することもできる。遠隔ネットワーク３０２はまた、状態更新を受信するために、状態照会信号をロボット２００に送信することができる。アクセスポイント３０４Ａおよび３０４Ｂを使用している、あるいはロボット２００におけるユーザなどのユーザもまた、少なくとも部分的にロボット２００に対して、状態更新を遠隔ネットワーク３０２に送信させることができる。いくつかの実施形態では、アクセスポイント３０４Ａおよび３０４Ｂ、および／またはロボット２００は、遠隔ネットワーク３０２に格納されている情報にアクセスすることができ、それはユーザインターフェースで見ることができる。
【００７２】
キャリブレーションプロトコルは、ロボット２００（例えば、コントローラまたはユーザインターフェースによって）、遠隔ネットワーク３０２、１つ以上のアクセスポイント３０４Ａおよび３０４Ｂ、および／または任意のユーザインターフェースによって開始することができる。キャリブレーションプロトコルは、ロボット２００のセンサ、セキュリティデバイス、トランシーバ、トラッカ、カメラ、電力コントローラ、ユーザインターフェース、および／または任意の動作モジュールおよび／またはコンポーネントの読み取り値および／または出力を調整することを含むことができる。場合によっては、１つ以上の動作モジュールおよび／またはコンポーネントは、同じパラメータを読み取ることができる。例えば、温度計およびサーマルカメラは、温度を読み取ることができる。そのような場合、複数の動作モジュールおよび／またはコンポーネントによる測定値を比較することができる。例えば、現在の読み取り値および／またはメモリに格納された過去の読み取り値を比較して、何らかの違いがあるかどうかを確かめることができる。それらに相違がある場合、遠隔ネットワーク３０２、ロボット２００、および／またはアクセスポイント３０４Ａおよび／または３０４Ｂから、警告を送信することができる。動作モジュールおよび／またはコンポーネントは、既知の測定値（例えば、ユーザ／オペレータ、遠隔ネットワーク３０２、アクセスポイント３０４Ａおよび／または３０４Ｂによって、および／またはロボット２００によって保持される）を使用して再キャリブレーションすることができる。場合によっては、ユーザは、ロボット２００のところに物理的に行って、既知の測定値をもたらし、かつ／またはキャリブレーションシーケンスを実行することができる。他の場合では、ロボット２００は、制御シーケンスおよび／または制御測定値／ユニットの形式の既知の測定値をすでに有する。キャリブレーションシーケンスは、既知の測定値を測定すること、次いで、そのような読み取り値が既知の測定値と一致しない場合に既知の測定値を反映するように、１つ以上のセンサによる読み取り値を調整することを含むことができる。
【００７３】
アクセスポイント（例えば、アクセスポイント３０４Ａおよび３０４Ｂ）は、ブルートゥース（Ｂｌｕｅｔｏｏｔｈ）、ジグビー（ｚｉｇｂｅｅ）、ワイファイ（Ｗｉ−Ｆｉ）、誘導無線データ送信、無線周波数、ＲＦＩＤ、ＮＦＣ、ＧＳＭ、赤外線、および／または任意の他の形態の無線データ送信などの通信プロトコルを通じて遠隔ネットワーク３０２と通信することができる。アクセスポイントはまた、信号線および接地を含むケーブル（例えば、同軸ケーブル、ＵＳＢ、イーサネット（Ｅｔｈｅｒｎｅｔ）ケーブル、ファイヤワイヤ（ｆｉｒｅｗｉｒｅ）、マイクロＵＳＢ、および／または当技術分野で知られている他のケーブル）などの有線接続を通じて遠隔ネットワーク３０２と通信することができる。アクセスポイントは、本開示に記載されている任意の情報またはコマンドを受信および／または送信することができる。有利には、アクセスポイントに遠隔ネットワーク３０２と直接通信させることは、アクセスポイントがネットワークなしで通信することを可能にすることができる。しかしながら、場合によっては、アクセスポイントは、携帯電話塔、ルータ、サーバ、ＩＰゲートウェイ、電話局、および／またはルーティング通信用の他のハードウェアなどの中間スイッチおよび／またはゲートウェイを介して通信することができる。例えば、そのような中間スイッチおよび／またはゲートウェイは、塔３０８および／またはゲートウェイ３０６と実質的に同様であり得る。
【００７４】
場合によっては、遠隔ネットワーク３０２は、ユーザインターフェースユニットを有することができる。ユーザインターフェースユニットは、ユーザによる評価のために情報を表示することができる。そのような情報は、データ、状態、通信、前述に基づく結論、および／または所望の他の任意の情報を含むことができる。ユーザインターフェースユニットは、タッチパネル、ボタン、キーパッド／キーボード、ポート（例えば、汎用シリアルバス（ＵＳＢ）、デジタルビジュアルインターフェース（ＤＶＩ）、ディスプレイポート、イーサーター（Ｅ−Ｓａｔａ）、ファイヤワイヤ（Ｆｉｒｅｗｉｒｅ）、ピーエス２（ＰＳ／２）、シリアル（Ｓｅｒｉａｌ）、ブイジーエイ（ＶＧＡ）、スカジー（ＳＣＳＩ）、オーディオポート、高品位マルチメディアインターフェース（ＨＤＭＩ）、パーソナルコンピュータメモリカード国際協会（ＰＣＭＣＩＡ）ポート、メモリカードポート（例えば、セキュアデジタル（ＳＤおよびミニＳＤ）、および／またはコンピュータ読取可能媒体用のポート）、マウス、ローラーボール、コンソール、バイブレータ、オーディオトランスデューサ、および／または、ワイヤレスでまたはワイヤを通じて結合されているかどうかにかかわらず、ユーザがデータおよび／またはコマンドを入力および／または受信するための任意のインターフェース、を含むことができる。ユーザインターフェースユニットは、限定することなく、液晶ディスプレイ（ＬＣＤ）、発光ダイオード（ＬＥＤ）ディスプレイ、ＬＥＤ・ＬＣＤディスプレイ、面内スイッチングＩＰＳディスプレイ、陰極線管、プラズマディスプレイ、高精細（ＨＤ）パネル、４Ｋディスプレイ、網膜ディスプレイ、有機ＬＥＤディスプレイ、タッチスクリーン、表面、キャンバス、ならびに／または視覚的表現のための当該技術分野で既知の任意のディスプレイ、テレビ、モニタ、パネル、および／もしくはデバイス、などのディスプレイを含むことができる。いくつかの実装形態では、ユーザインターフェースユニットは、遠隔ネットワーク３０２のコンピュータのハードウェア上の画面など、遠隔ネットワーク内に位置付けすることができる。いくつかの実装形態において、ユーザインターフェースユニットは、遠隔ネットワーク３０２と（例えば、送信機、受信機、および／またはトランシーバを含む通信ユニットを介して）直接的にまたは間接的に（ネットワーク、サーバ、および／またはクラウドを通じて）通信可能に結合することができる。例えば、ユーザインターフェースユニットは、アクセスポイント（例えば、アクセスポイント３０４Ａおよび／または３０４Ｂ）上にあり得る。本明細書で使用されるとき、遠隔ネットワーク３０２のユーザオペレータは、遠隔ネットワーク３０２を操作するためにユーザインターフェースユニットを利用することができる。
【００７５】
いくつかの実装形態では、ロボットは、ロボットに関連付けられたトランシーバによって使用される伝送プロトコルを通じて互いに通信することができる。そのような通信は、複数のロボットが協調することを可能にし得る。そのような通信は、ネットワーク（例えば、遠隔ネットワーク３０２）および／またはピアツーピアを介してもよい。これらの通信は、ロボットが互いに協調することを可能にし得る（例えば、タスクの異なる部分をカバーすること、および／または衝突／干渉を回避すること）。
【００７６】
人が複数のロボットを有するいくつかの実装形態では、遠隔ネットワーク３０２は、それらのロボットのうちの１つ以上を調整することができる。有利には、人は、一緒に、別々に、グループで、および／または所望の任意の区分で、ロボットを見、監視し、および／または制御することができる。場合によっては、遠隔ネットワーク３０２は、見ること、監視、および／または操作のために、各ロボットを別々にユーザに提示することができる。いくつかの実装形態では、遠隔ネットワーク３０２は、複数のロボットを単一のユニットとして提示し、それらが協調して挙動するようにロボットの活動を調整することができる。
【００７７】
図４は、本開示のいくつかの実装形態による、ロボット２００と遠隔ネットワーク３０２との間を行き来することができる信号を例示する信号表である。例えば、信号４０４Ａは、ロボット２００が遠隔ネットワーク３０２と通信することを許可されていることを確認するために使用することができる認証信号とすることができる。信号４０４Ａは、ロボット２００と遠隔ネットワーク３０２との間のハンドシェイク手順などの認証手順を初期化することができ、遠隔ネットワーク３０２は信号４０４Ｂを送信し、これは認証信号でもあり得る。いくつかの実装形態では、信号４０４Ａおよび４０４Ｂは、ソフトウェアバージョン、一意のＩＤ、ハードウェアバージョン、および／またはロボット２００に関する他の情報などの識別情報を含むことができる。信号４０４Ａおよび４０４Ｂはまた、タイミング情報、暗号化キー、公開／秘密キー、認証情報、広告パラメータ、アドレス、製造／モデル、名称、アクセスプロファイル、および／またはペアリングのための任意の他の関連情報などのペアリング情報を含み得る。
【００７８】
信号４０６Ａは、ロボット２００から遠隔ネットワーク３０２に送信された通信信号を含むことができる。信号４０６Ａは、コマンド、質問、要求、制御信号、状態、警告、データ／情報、マップなどを含むことができる。例示として、コマンドは、接続、起動、情報のプッシュ／プル、コマンドの発行、認証などのアクションを実行するようにリモートネットワーク３０２に指示するリモートネットワーク３０２へのコマンドを含むことができる。別の例示として、質問および要求は、リモートネットワーク３０２に関する情報（状態情報など）、他のロボットに関する情報、更新、推定時間（例えば、情報の配信、支援、空き時間など）、およびロボット２００によって所望される他の情報など、リモートネットワーク３０２からの情報に対する要求を含むことができる。別の例示として、ロボット２００は、遠隔アクセスおよび／または遠隔ネットワーク３０２の管理を含む制御信号を送信することができる。
【００７９】
別の例示として、ロボット２００は、環境内を移動するときに状態情報を送信することができる。そのような状態情報は、ロボット２００が電源オン／オフされていること、運転中であること、停止されていること、支援を所望していること、エラーがあること、および／またはロボット２００が存在し得る状態を含み得る。別の例示として、警告は、標準的な通信よりも重要なロボット２００に関する情報を含むことができる。例えば、警告は、少なくとも部分的には、ロボット２００が支援、保守、点検、更新、修理などを所望するというメッセージを含むことができる。遠隔ネットワーク３０２は、要求された情報および他のコマンド、質問、要求、制御信号、状態、警告、データ／情報、マップなどを含むことができる信号４０６Ｂを伴う信号４０６Ａに応答することができる。
【００８０】
同様に、信号４０８Ａは、遠隔ネットワーク３０２からロボット２００に送信された通信信号を含むことができる。信号４０８Ａは、コマンド、質問、要求、制御信号、状態、警告、データ／情報、マップなどを含むことができる。例示として、コマンドは、移動すること（例えば、前進、左、右、後、上、下、および／または上記の任意の組み合わせ）、状態をプッシュ／プルすることを要求すること、データをプッシュ／プルすることを要求すること、リモートネットワーク３０２へ／から情報を送信すること、停止すること、などのタスクを実行するようロボット２００に指示することを含むことができる。ロボット２００は、要求された情報および／または他のコマンド、質問、要求、制御信号、状態、警告、データ／情報、マップなどを含むことができる、信号４０８Ｂを伴う信号４０８Ａに応答することができる。
【００８１】
信号４１０Ａは、ロボット２００によって生成されたおよび／またはロボット２００に格納されたマップ関連データを含むことができる。信号４１０Ａは、ロボット２００から遠隔ネットワーク３０２へ送信することができる。いくつかの実装形態では、マップ関連データは、ロボット２００が環境内を移動したときにロボット２００によって作成された実際のマップを含むことができる。いくつかの実装形態では、マップは、ルートを含むことができる。ルートは、マップと同時に作成することも、別々に作成することもできる。いくつかの実装形態では、マップ関連データは、実際のマップではなく、むしろセンサデータ、グラフ、バブル（ｂｕｂｂｌｅｓ）、姿勢、確率、および／またはマップを構築するために使用され得るおよび／またはマップに関連する他のデータを含み得る。
【００８２】
例示として、図５Ａは、本開示のいくつかの実装形態による、ロボット２００が環境内を移動するときにロボット２００によって生成される上面マップ５００およびルート５２２である。いくつかの実装形態では、マップ５００の生成は、マッピングおよび位置特定ユニット２２４によって実行され得る。マップ５００は、ピクセルを含むことができ、各ピクセルは環境のマップされた領域に対応する。マップ５００内のピクセル数は、マップ５００の解像度に基づいて決定することができる。マップ５００は、環境とレイアウトが実質的に類似していてもよく、マップ５００内の各ピクセルは環境における場所に近似することができる。各ピクセルは領域を表すことができ、その領域は均一でも不均一でもよい。例えば、ピクセルは、１つの面積ユニット、ｎ×ｍまたはｎ×ｎ面積ユニット（ここで、ｎおよびｍは数を表す）、または不均一な面積ユニットを表すことができる。
【００８３】
マッピングは、センサユニット２１２のセンサによって少なくとも部分的に取得されたデータを、環境の少なくとも一部を表す二次元（「２Ｄ」）、三次元（「３Ｄ」）、および／または四次元（「４Ｄ」）のマップに組み入れることによって実行することができる。例えば、マップ５００は、ロボット２００によって検出された障害物および／または物体を少なくとも部分的に表す描写を含むことができる。マップ５００はまた、ユーザの制御下にある間にロボット２００が学習したルートなどの実証されたルートを記録することができる。例えば、マッピングされたルート５２２は、初期化場所、終了場所、および／または他の任意の場所（例えば、場所、変位、および向きのうちの１つ以上を含む）などの、基準に対するロボット２００の相対位置、向き、および／または姿勢に少なくとも部分的に基づく座標（例えば、２Ｄマップのｘとｙ、または３Ｄマップのｘ、ｙ、ｚ）を含むことができる。例えば、姿勢は、（ｘ、ｙ、シータ）座標を持つことができる。本明細書で使用されているように、位置という用語は、その通常の慣習的な意味を有する。例えば、場合によっては、位置は、物体、ロボット２００などの変位、座標などに関する場所を含むことができる。場合によっては、位置は、物体、ロボット２００などの向きも含むことができる。したがって、場合によっては、位置および姿勢という用語は、場所、変位、および向きのうちの１つ以上を含むように交換可能に使用することができる。デモンストレーションプロセスを通じて作成されたマップ５００は、ロボット２００が１つ以上のデモンストレーション／トレーニングにおいて感知した環境の一部および／または実質的に全体の環境を記録することができる。このため、マップ５００をグローバルマップと呼ぶ人もいる。場合によっては、マップ５００は、デモンストレーション／トレーニングの後にマップ５００が実質的に更新されないことがあるという点で静的であり得る。いくつかの実装形態では、マップ５００およびマッピングされたルート５２２はまた、（例えば、ユーザがコンピュータおよび／または遠隔ネットワーク３０２を使用して）別々に生成され、ロボット２００にアップロードされることもできる。
【００８４】
いくつかの実装形態では、マップ５００のユニット（ピクセル、ボクセル、および／または任意の他のユニット）は、１つ以上の状態を有することができ、状態はそのユニットによって表される環境における位置／場所の特性の少なくとも一部を示すことができる。例えば、マップ５００のユニットは、二値であり得、第１のユニット状態（例えば、ピクセル値）は、少なくとも部分的にはっきりした（例えば、ナビゲート可能な）場所を示すことができ、第２のユニット状態は、少なくとも部分的にブロックされた場所（例えば、ナビゲーション可能ではない）を示すことができる。例示として、ゼロ（０）のユニット値は、少なくとも部分的にはっきりした場所を示すことができ、かつ、(１)のユニット値は、少なくとも部分的にブロックされた場所を示すことができる。
【００８５】
いくつかの実装形態では、前述の二値状態の代わりにまたはそれに加えて、マップ５００のユニットは、未知の場所（例えば、情報のない位置／場所）の少なくとも一部を示すユニット状態、移動すべきではない位置／場所の少なくとも一部を示すユニット状態、ナビゲーション可能なルートの一部であることを少なくとも部分的に示すユニット状態、ロボット２００が走行した領域の少なくとも一部を示すユニット状態、ロボット２００が走行していない領域の少なくとも一部を示すユニット状態、物体の少なくとも一部を示すユニット状態、少なくとも部分的に静止水を示すユニット状態、および／またはマップ５００上の位置／場所の他の分類、などのうち１つ以上の他のユニット状態を有することができる。いくつかの実装形態では、ユニットの状態、および／またはユニットに関連付けられたデータは、床掃除用のブラシの可動、ゴム雑巾の移動（例えば、上、下、左、右、前、後への移動）、水のオン／オフ、水の噴霧、真空のオン／オフ、真空ホース位置の移動、腕の振り回し、リフトの上げ下げ、カメラおよび／またはセンサユニット２１２の任意のセンサの回転、および／またはロボット２００による他の任意の動作、のような、動作および／または動作固有のタスクの少なくとも一部を示すことができる。
【００８６】
マップ５００のユニットはまた、単一の値またはユニット状態よりも多くを格納することができる。例えば、マップ５００の各ユニットは、ベクトルおよび／またはマトリックスに格納された値などの複数の値を格納することができる。これらの値は、位置がルート５２２に沿った点（例えば、ピクセル、ボクセルなどのユニット）で測定されたときのロボット２００の位置／姿勢（例えば、場所および／または向きを含む）の少なくとも一部を示す値を含み得る。これらの値はまた、ロボット２００が位置／場所、および／またはロボット２００によって実行され得る他の行動／行動特有のタスクを掃除することができるかどうかを含むことができる。
【００８７】
ロボット２００は、ルート５２２としてマップ５００に反映され得るルートに沿って移動することができる。各場所でロボット２００がルートに沿って移動すると、ロボット２００は、場合によっては初期化場所（例えば、初期化場所２２２）、物体（例えば、ホームロケータおよび／または初期化した物体）、および／または別の基準点に対するその位置および／または向きを決定することができる。これらのマッピングおよび位置特定機能は、マッピングおよび位置特定ユニット２２４によって実行することができる。
【００８８】
例えば、ロボット２００は、走行距離測定を使用して初期化場所（または別の基準点）からの距離を測定または概算することができ、ロボット２００は、初期化場所で開始してからのロボット２００の動きを追跡するためにセンサユニット２１２（例えば、ホイールエンコーダ（例えば、ロータリーエンコーダ）、視覚的走行距離測定、慣性測定ユニット（「ＩＭＵ」）（加速度計、磁力計、角速度センサを含む）など）の固有受容センサを使用できる。例示的な実施例として、１つ以上の固有受容センサは、少なくとも部分的にロボット２００の車輪の回転に基づいて、距離を測定および／または推定する車輪エンコーダであり得る。別の例示的な実施例として、視覚的走行距離計を使用して、カメラによって撮影された連続的な画像を通して、ロボット２００の移動距離および／または向きを測定または推定することができる。視覚的走行距離計は、（例えば、Ｌｕｃａｓ−Ｋａｎａｄｅ法または他の方法を使用して）オプティカルフローフィールドを構築し、および／またはＫａｌｍａｎフィルタまたは投影を使用することなどによってカメラの動きを推定することができる。別の非限定的な実施例として、ＩＭＵは、ロボット２００の位置および／または向きを測定および／または推定するために使用することができる。
【００８９】
ルートの一部である各場所は、マップ５００内のルート５２２上のユニット（例えば、ピクセル、ボクセルなど）に対応することができ、ルート５２２のユニット状態は、そのユニットがナビゲート可能なルートの一部であることを示す。ロボット２００が移動すると、ロボット２００はまた、１つ以上のセンサユニット２１２を使用して、物体に対するロボット２００の位置および／または向きを測定することができる。これらの測定は、ノードとして表される離散的な時間および／または場所で行うことができる。ロボット２００はまた、その環境を検出するためにセンサユニット２１２の１つ以上のセンサを使用してスキャンを行うことができる。このようにして、ロボット２００は、棚または壁などの物体に対するロボット２００の位置および／または向きを検出および／または測定することができる。
【００９０】
ロボット２００が物体を検出する場合、ロボット２００は、センサユニット２１２のセンサを使用して、ロボット２００に対する複数の方向におけるそれらの物体の位置および／または向きを検出および／または測定することができる。同時に、ロボット２００は、センサユニット２１２を使用してロボット２００の位置および／または向きを推定することができる。ロボット２００が環境内を移動するにつれて、異なる物体がセンサユニット２１２のセンサの範囲内に入る可能性がある。例えば、センサは、ロボット２００の前面に位置付けすることができ、かつ既定の範囲を有することができる。例えば、ロボット２００は、前方の既定の範囲までの物体を検出することができる。同様に、他のセンサはそれぞれ範囲を有し、それらの範囲内の物体を検出することができる。これらのセンサは、前面、背面、左側面、右側面、側面面、底面面、上面面、および／またはこれらの任意の組み合わせに位置付けすることができる。
【００９１】
場合によっては、センサユニット２１２は特定の領域を感知しないことがある。例えば、物体は、ある領域を感知するためのロボット２００の利用可能性を妨げる可能性があり、あるいはその領域は死角（例えば、センサの測定範囲によってカバーされない場所）に現れる可能性がある。
【００９２】
例示されるように、ルート５２２は、通路間の経路を通る水平方向に例示されるトラバースを含む、通路のトラバースおよび他の動きを含む。マップ５００に例示されるように、ロボット２００は、通路をトラバースしている間に床を掃除し、通路の床上を複数回運転することができる。
【００９３】
場合によっては、マップ５００は、真の現実を表す完全で正確なマップであり得る。しかしながら、単にセンサユニット２１２によって収集されたデータをマップ上にプロットすることによって、地上調査と実質的に同様のマップを作成することは簡単ではない。センサユニット２１２のセンサは、ノイズ、測定ドリフトなどを有する可能性がある。その結果、センサユニット２１２のセンサは、環境における特色を必ずしも明確に識別するとは限らない。センサユニット２１２のセンサはまた、ロボット２００の位置および／または姿勢を常に明白に識別するわけではない。
【００９４】
センサユニット２１２による識別は、明白ではないかもしれないので、ロボット２００はその位置および／または環境の特色の位置を確率的に決定することができる。マッピング中にロボット２００が環境を通って移動すると、ロボット２００はセンサユニット２１２からのセンサデータを記録することができる。いくつかの実装形態では、ロボット２００は、環境を通って移動する一方で、内部ロボットコマンド（例えば、前進、左、右、後退、回転など）を記録することもできる。センサユニット２１２からのセンサデータはまた、相対位置を決定するために、スキャンマッチングなどを通じてそれ自体または他のデータと比較され得る。その結果、いくつかの実装形態では、ロボット２００は（例えば、マッピングおよび位置特定ユニット２２４を使用して）、少なくともセンサデータ、スキャンマッチング、および内部ロボットコマンドを与えられたマップの事後確率分布関数を構築できる。他の要因も考えられる。
【００９５】
測定値のあいまいさのために、ロボット２００は、修正されなければ、ロボット２００の周囲および／または移動ルートを反映しないマップを生成することができる。例えば、図５Ｂは、本開示のいくつかの原理による、ロボット２００の周囲および移動ルートを正確には反映していないマップ５５０である。ノイズ、センサドリフト、および／または他の要因のために、マップ５５０は歪んで見える。その結果、ルート５５２は、いたるところを通るように見える。ルート５５２周辺のマッピングされた環境は、地面の真実を反映していない特色を伴って、それ自体に広がるおよび／または重なり合うように見える。比較すると、マップ５５０は、マップ５００に修正することができ、マップ５５０は、実際にはマップ５００と同じ環境およびルートのマップであり、しかしながら、マップ５５０は歪んでおり、マップ５００は現実をより正確に反映している。観察され得るように（そしてマップ５００に例示されるように）、環境は、実際にはマップ５５０に示される特色ではなく一連の通路を含む。
【００９６】
図４に戻ると、遠隔ネットワーク３０２は、マップ関連データに対してエラー訂正を実行することもできる。いくつかの実装形態では、マップ関連データは、格納および分析のために遠隔ネットワーク３０２に送信することができる。例えば、遠隔ネットワーク３０２は、グラフを最適化し、ロボット２００が移動した環境をよりよく反映するマップを構築することができる。そのようなエラー訂正は、遠隔ネットワーク３０２のコンピュータによって実行することができる。場合によっては、コンピュータでエラーを訂正できない場合、人がマップ関連のデータを表示して手動で修正することができる。例示として、ロボット２００は、マップ５５０を生成する、および／またはマップ５５０であるマップ関連データを遠隔ネットワーク３０２に送信することができる。次いで、遠隔ネットワーク３０２は、マップ修正のためのシステムおよび方法を実行し、マップ５００を生成および／または戻すことができる。
【００９７】
遠隔ネットワーク３０２によって（例えば、遠隔ネットワーク３０２のマップ処理ユニットによって）実施されるマップ修正のためのシステムおよび方法の例示として、場合によっては、マップ関連データは、完成したマップではなく、むしろマップを作成するためのデータおよび／または情報を含むことができる。例えば、ロボット２００が移動するときに環境のスキャンをとることができる。これらのスキャンは、例えば、ＬＩＤＡＲおよび／またはセンサユニット２１２の任意のセンサによって行われ得る。別の実施例として、マップ関連データは、ロボット２００によって行われた測定値の少なくとも一部を示すノードを含むグラフなどのグラフを含むことができる。グラフは、最適化することも（例えば、ノードの位置決めにおける潜在的な誤差が実質的に最小になるようにノードが位置決めされるように構成されている）、最適化しないことも（例えば、それらの位置決めにおける潜在的なエラーが実質的に最小化されるようにノードを位置決めするための動作を実行することなく）できる。前述のように、マップ関連データは、エラーを含む可能性がある。例えば、マップ関連データは、測定誤差および／またはその構造における他の不正確さのために位置ずれしたマップを含むことができる。同様に、他のマップ関連データも誤っている可能性がある。遠隔ネットワーク３０２は、信号４１０Ａを受信してマップ関連データを格納することができる。遠隔ネットワーク３０２はまた、信号４１０Ａで受信したマップ関連データを処理することができる。例えば、遠隔ネットワーク３０２は、同時位置確認およびマッピング（「ＳＬＡＭ」）、拡張現実、スケール不変特色変換（「ＳＩＦＴ」）、ならびに／または当技術分野で知られている他の任意のマッピングシステムおよび方法を使用することなどによってデータからマップを生成することができる。
【００９８】
いくつかの実装形態では、遠隔ネットワーク３０２は、センサユニット２１２の複数のセンサからのデータを比較することに少なくとも部分的に基づいてデータの訂正を実行することができる。例えば、ロボット２００は、環境の特色および／またはロボット２００の走行距離を検出する複数のセンサを有することができる。場合によっては、センサユニット２１２のセンサ間の不一致は、少なくとも部分的にエラーを示している可能性がある。特定のセンサが他のセンサよりも信頼性が高いと判断される場合がある場合には、そのセンサを少なくとも部分的に使用して他のセンサのデータを訂正することができる。場合によっては、複数のセンサを使用してセンサデータを訂正するために、複数の測定、再帰的エラー訂正、および／または他の既知のアルゴリズムを用いて、複数のセンサをスパース（ｓｐａｒｓｅ）エラー訂正で使用することができる。
【００９９】
いくつかの実装形態では、遠隔ネットワーク３０２は、環境のマップ（例えば、ロボット２００によって送信されたおよび／またはユーザによってアップロードされたマップ）を受信することができる。次に、遠隔ネットワーク３０２は、環境上のルートを決定することができる。例えば、コンピュータおよび／またはユーザは、遠隔ネットワーク３０２によって受信された環境のマップ上にルートを描くことができる。コンピュータは、様々な技術を用いてルートを描くことができる。例えば、コンピュータは、塗りつぶしを使用することができ、コンピュータは、ロボットが移動することができる空き領域（例えば、遮られていない領域）が移動されるべきであると想定する。例えば、ロボット２００が床掃除機である場合、ロボット２００ができるだけ多くの床を掃除することが望ましいと仮定することができる。場合によっては、塗りつぶしは、特定のスペースおよび／またはマップの一部に向けることができる。別の実施例として、コンピュータは、ロボット２００がタスクを完了するための移動を実質的に最小化および／または減少させる最適ルートを計算することができる。例えば、ロボット２００が第１の地点から第２の地点まで移動することが所望される場合、コンピュータは、移動距離を実質的に最小化すること、使用される電池エネルギーおよび／または他の消耗品を実質的に最小限に抑えること、（例えば、物体を回避するなど）望まれる可能性がある物体および潜在的な支援の数を実質的に最小限に抑えること、第１の地点から第２の地点へ移動する時間および／または資源に影響を及ぼし得る他の考慮事項、のうちの１つ以上に基づいて経路を決定することができる。
【０１００】
遠隔ネットワーク３０２はまた、コンピュータおよび／またはユーザを使用して、マップのユニット状態（例えば、ピクセル状態、ボクセル状態など）を追加、変更、および／または変更することができる。例えば、遠隔ネットワーク３０２（例えば、遠隔ネットワーク３０２を操作する人間および／またはコンピュータ）は、マップ内の１つ以上のユニットにユニット状態を割り当てることができ、それによって、ロボット２００がマップに従ってナビゲートするときのロボット２００の挙動を変える（および／または定義する）。有利なことに、これにより、ロボット２００の挙動を所望に応じて変えることができる。例えば、遠隔ネットワーク３０２のコンピュータは、ロボット２００がマップの特定の領域に入ったときにロボット２００が動けなくなったと判断することができる。遠隔ネットワーク３０２は、ロボット２００のナビゲーションの過去の出来事（例えば、ロボット２００が動けなくなった過去の出来事）に少なくとも部分的に基づいて、および／またはある領域の測定に少なくとも部分的に基づいて、この決定を行うことができる。したがって、遠隔ネットワーク３０２のコンピュータおよび／または人間のオペレータは、ロボット２００が領域に入らないようにマップのユニット状態を変更することができる。別の実施例として、遠隔ネットワーク３０２のコンピュータおよび／または人間のオペレータは、ロボット２００の挙動を変更および／または修正することを決定することができる。例示として、ロボット２００が床掃除機である場合、ロボット２００の所望の掃除領域は変わり得る。例えば、ロボット２００は、同じルートに沿っても、ある日はある領域を掃除することができ、ある日は別の領域を掃除することができる。すべての領域の掃除は、時間がかかり過ぎおよび／またはリソースが多過ぎる可能性がある。したがって、遠隔ネットワーク３０２のコンピュータおよび／または人間のオペレータは、掃除することが所望される所望の領域を掃除し、他の領域は掃除しないように、掃除したい所望の領域と相関するようにマップのユニット状態を変更することができる。
【０１０１】
いくつかの実装形態では、遠隔ネットワーク３０２は、マップ関連データのライブラリを格納することができる。いくつかの実装形態では、このライブラリは、ロボット２００、他のロボットによって収集され、および／または任意のデバイスによって遠隔ネットワーク３０２（例えば、アクセスポイントおよび／または他のデバイス）にアップロードされた様々なマップ関連データを含むことができる。場合によっては、ライブラリ内のマップ関連データは、様々な環境からのものである可能性がある。場合によっては、ライブラリ内のマップ関連データは、様々な条件下で取得することができる。例えば、マップ関連データは、異なる照明条件、角度、大きさ、距離、明瞭度（例えば、ぼやけている、妨げられている／隠されている、部分的にフレームから外れているなど）、色、周囲などで取得することができる。ライブラリ内のマップ関連データは、センサ（例えば、センサユニット２１２のセンサ）によって取得され、および／または（例えば、仮想世界において）ライブラリを生成／シミュレートするように構成されたコンピュータプログラムなどによって自動的に生成することができる。様々な照明条件、角度、サイズ、距離、明瞭度（例えば、ぼやけている、遮られている、隠れている、部分的にフレームから外れているなど）、色、周囲環境などから関連データをマッピングする。ライブラリはまた、エラーを説明するための変更および／または訂正など、マップ関連データに対してユーザおよび／またはコンピュータによって行われた変更および／または訂正を格納することもできる。さらに、ライブラリは、変更が行われた事態、および誤っていると見なされた事態を記録することができる。このようにして、ライブラリは、遠隔ネットワーク３０２および／またはロボット２００がマッピングを改善するために、機械学習と共に使用することができる。
【０１０２】
例えば、既知の機械学習方法は、遠隔ネットワーク３０２上で（例えば、遠隔ネットワーク３０２のコントローラおよび／またはコンピュータ上で）実行することができる。機械学習方法は、人間のオペレータおよび／またはコンピュータがデータに変更を加えた事態を相関させることができる。場合によっては、機械学習方法は、それらの変更をエラーの訂正と見なし、実質的に同様のエラー（および／または事象）が発生したときに同様の訂正を行うことができる。
【０１０３】
その結果、遠隔ネットワーク３０２は、信号４１０Ｂをロボット２００に送信することができる。信号４１０Ｂは、１つ以上のマップを含むことができる。マップは、ロボット２００が移動することができる環境および／またはルートのマップを含むことができる。場合によっては、マップは、ユーザおよび／またはコンピュータによる追加（例えば、ユニットの変更（例えば、ピクセル、ボクセルなどの状態の変更）、ルート、修正など）を含むことができる。そしてロボット２００は、これらのマップを用いてナビゲートすることができる。
【０１０４】
ロボット２００は、センサデータを含むことができる、信号４１２Ａを送信することができる。センサデータは、センサユニット２１２の１つ以上のセンサによって取得された任意のデータを含むことができる。そのようなセンサデータは、環境をナビゲートしたときに、ロボット２００によって収集されたおよび／またはロボット２００によって格納されたデータを含むことができる。そのようなセンサデータは、少なくとも部分的に、マップおよび／または環境のルートを生成する際に使用することができるマップ関連データを含むことができる。
【０１０５】
いくつかの実装形態では、信号４１２Ａおよび／または信号４１２Ｂは、図３Ｂを参照して説明したキャリブレーションのためのシステムおよび方法などのキャリブレーションに使用することができる。例えば、信号４１２Ａは、測定値、構成、および／またはセンサユニット２１２の１つ以上のセンサからの任意のデータを含むことができる。遠隔ネットワーク３０２は、信号４１２Ａを受信し、かつキャリブレーションの調整を決定することができる。信号４１２Ｂは、センサを再キャリブレーションするための命令を含むことができる。場合によっては、信号４１２Ｂは、センサユニット２１２の１つ以上のセンサを再キャリブレーションするように、ロボット２００に指示するリセット信号および／または再キャリブレーション信号とすることができる。
【０１０６】
場合によっては、センサデータは、場所固有のものとすることができ、センサデータはマップ上の特定の場所に関連付けられる。いくつかの実装形態では、センサデータは、ロボット２００が環境をナビゲートするときに、ロボット２００の座標および／または相対位置（例えば姿勢）と共にロボット２００によって送信することができる。有利なことに、遠隔ネットワーク３０２は、センサデータが送信されているときに、ロボット２００の場所を知ることができる。
【０１０７】
他の実施例として、センサデータは時間固有であり得る。例示として、ロボット２００は、関心対象の事象を有することができる。そのような関心対象の事象は、実施例として、停止、衝突、近衝突、異常、失敗、エラー、および／またはロボット２００のオペレータによって探索されることが所望される任意の事象を含むことができる。例えば、オペレータは、ロボット２００による衝突およびそれらを引き起こした原因に関心がある可能性がある。オペレータは、ロボット２００の任意の部分によるシステム障害および／またはエラー、ならびにそれがなぜ起こったのかに関心がある可能性がある。オペレータは、ロボット２００が特定のシナリオでどのように挙動するかに関心があり得る。
【０１０８】
センサデータは、既定の関心対象の事象の発生に基づいて、タイムスタンプおよび／またはインデックス付けすることができる。有利には、ロボット２００は、特定の時間および／または指標に関するセンサデータを遠隔ネットワーク３０２に送信することができる。そのような特定の時間および／または指標は、ロボット２００によって（例えば、ロボット２００および／またはロボット２００のオペレータによって）および／または遠隔ネットワーク３０２（例えばコンピュータおよび／またはオペレータ）によって選択することができる。例えば、遠隔ネットワーク３０２は、センサデータ４１２Ａとしてセンサデータを送信するように信号４０８Ａで要求を送信することができる。
【０１０９】
場合によっては、特定の時間および／または指標は、関心対象の事象の周囲のウィンドウ内にセンサデータを含むことができる。ウィンドウのそのようなサイズ（例えば、時間）は、（例えば、パラメータとして）事前設定することができ、および／または要求に基づいて（例えば、オペレータおよび／または遠隔ネットワーク３０２によって）決定することができる。このセンサデータは、関心対象の事象におけるロボット２００の状態および／または環境に関する診断および分析を可能にすることができる。例えば、センサユニット２１２のカメラは、事象の周囲のウィンドウ内で画像を撮ることができる。次に、関心対象の事象の前に、ロボット２００の周囲の特性を決定するために画像をレビューすることができる。同様に、固有受容センサおよび／または外部受容センサを含むセンサユニット２１２の他のセンサは、関心対象の事象を取り巻く追加の状況を提供することができる。
【０１１０】
例示として、図６は、本開示のいくつかの実装形態による、ウィンドウにおいて取り込まれたセンサデータのタイミング図６００である。タイムライン６０８は、少なくとも時間の一部を示すことができる。場合によっては、タイムライン６０８は、現地時間および／または世界時間に基づくなど、少なくとも部分的に時間を表すことができる。場合によっては、タイムライン６０８は少なくとも部分的に相対時間を表すことができる。場合によっては、タイムライン６０８は、ミリ秒、秒、分、時間、および／または任意の標準的な単位で単位を有することができる。場合によっては、タイムライン６０８は、標準単位を持たない既定の時間間隔内の単位を有することができる。いくつかの場合では、時間間隔は均一（例えば、実質的に同じ）であり得るが、いくつかの場合では、時間間隔は均一ではない（例えば、実質的に同じではない）。いくつかの場合において、システムは、同期システムにおけるように、少なくとも部分的にタイムライン６０８に基づいて動作し得る。しかしながら、場合によっては、システムは、非同期システムの場合のように、少なくとも部分的にタイムライン６０８に基づいて動作しないかもしれない。
【０１１１】
時間６１４は、関心対象の事象の時間ｔｅを表すことができる。線６０２は、ロボット２００の第１のセンサ（例えばセンサユニット２１２のセンサ）によって収集されたデータを示すことができる。例示のように、線６０２は、少なくとも部分的に連続信号および／またはアナログ信号を表す。
【０１１２】
線６０４は、ロボット２００の第２のセンサ（例えば、センサユニット２１２のセンサ）によって収集されたデータを示すことができる。例示のように、線６０４は、離散化信号および／またはデジタル信号の少なくとも一部を表している。場合によっては、線６０４は、定期的におよび／または所望に応じて測定値を取得するセンサ（例えば、関心対象の事象の場合にデータを取得するように構成されたセンサユニット２１２のセンサ）を示すことができる。例示として、センサユニット２１２のセンサは、加速度計と通信可能におよび／または操作可能に結合することができ、それは閾値を超える加速度の変化がある場合にそのセンサにデータを収集させる。線６０４は、波形６１０Ａおよび６１０Ｂを例示する。波形６１０Ａおよび６１０Ｂのそれぞれは、第２のセンサによるデータの収集の少なくとも一部を示すことができる。
【０１１３】
第１のセンサおよび第２のセンサ、ならびに対応する線６０２および６０４は例示的なセンサの例示である。センサユニット２１２を参照して記載したように、ロボット２００の複数のセンサがあってもよく、それらのそれぞれは、状況を判断するのに関連するおよび／または所望されるデータを収集することができる。したがって、データを収集する任意の数のセンサがあり得、そのうちの少なくともいくつかはそれ自身のデータラインを有する。
【０１１４】
関心対象の事象を囲むウィンドウは、関心対象の事象の時間（例えば、時間６１４）の前後のセンサデータを提供することができる。例えば、時間６１２Ａは、第１の時間であり得る。時間６１２Ａは、ウィンドウを開くことができる。時間６１２Ｂは、ウィンドウの終わりであり得る。時間６１２Ａと時間６１２Ｂとの間の時間ウィンドウ内にとられたセンサユニット２１２の１つ以上のセンサによって収集されたデータは、次に信号４１２Ａとして送信することができ、関心対象の事象に対する状況を潜在的に提供する。
【０１１５】
例示のように、時間６１２Ａは、波形６１０Ａの前に現れ、時間６１２Ｂは、６１０Ｂの後に現れる。しかしながら、これは必ずしもそうとは限らない。例えば、いくつかの実装形態では、ウィンドウは、事前定義することができる。例えば、時間６１２Ｂと時間６１４（および／または時間６１２Ｂと時間６１２Ａ）との間の時間は、既定の時間量であり得る。同様に、時間６１２Ａと時間６１４（および／または時間６１２Ａと時間６１２Ｂの間）との間の時間は、既定され得る。いくつかの実装形態では、これらの既定の時間量は、データ収集とは無関係であり得、事象（例えば、センサデータの取得）によって駆動されるのではなくタイミングに少なくとも部分的に基づいてウィンドウを決定する。既定の時間は、少なくとも部分的に、関心対象の事象が発生するのに予想される時間、状況を与えると予想される予想時間、状況を与えるのに効果的な経験的に測定された時間、および／または関心対象の事象に状況を与えることを可能にするであろう他の任意の有用な時間量、のうちの１つ以上に基づくことができる。有利なことに、既定の時間を有することは、計算を単純化し、かつデータ転送の速度を増加させることができる。多くの場合、情報がほとんど、あるいはまったくない事態の分析を進めることは困難である可能性があるため、すべての状況を収集する場合と収集しない場合がある。その後、追加のデータは、所望に応じて収集することができる。
【０１１６】
しかしながら、いくつかの実装形態では、（ａ）時間６１２Ｂと時間６１４との間、および（ｂ）時間６１２Ａと時間６１４との間の時間は、動的であり得る。例えば、時間６１２Ａおよび／または６１２Ｂは、センサデータの取得などの出来事（例えば、事象）に合図することができる。例えば、時間６１２Ａは、波形６１２Ａの立ち上がりエッジなどの測定値に合図することができる。同様に、時間６１２Ｂは、センサデータの取得などの出来事（例えば、事象）に合図することができる。例えば、時間６１２Ｂは、波形６１０Ｂの立ち下がりエッジなどの測定値に合図することができる。
【０１１７】
場合によっては、センサユニット２１２のセンサを使用して、時間６１２Ａおよび／または時間６１２Ｂに合図することもできる（これは、時間６１４での関心対象の事象の発生の少なくとも一部を示すこともできる）。例えば、時間６１２Ａおよび／または６１２Ｂは、少なくとも部分的に方向および／または速度の変化を示すことができる加速度計によって合図され得る。有利には、そのような変化は、オペレータが関心を持っている事情における変化の少なくとも一部を示すことができる。別の実施例として、時間６１２Ａおよび／または６１２Ｂは、カメラによって撮られた視覚的なしるしによって合図され得る。例えば、時間６１２Ａおよび／または６１２Ｂは、事前定義されたように、および／または機械学習を通じて学習されたように、関心対象の事象に関連付けられるように視覚的合図に合図され得る。例示として、時間６１２Ａおよび／または６１２Ｂは、突然の動き、動きの終わり、既定の色（例えば、見えているカメラの視野内の赤いストップサインおよび／もしくは他の何らかのプロンプト）、人（例えば、大人および／もしくは子供）、障害物、ロボット２００への動き、ロボット２００から離れる動き、あらかじめ定義されたジェスチャ（例えば、手の形／動き）、検出された漏出および／もしくは漏洩、ならびに／または関心対象の事象に関連付けることができる任意の視覚的な出来事、に合図されることができる。別の実施例として、時間６１２Ａおよび／または６１２Ｂは、衝突、人間／ロボットによる言葉／音、誤動作（スパッタリング、張り付け、引きずりなど）、および／または任意の音声の手がかりなど、センサユニット２１２のマイクロフォンによって拾われる音によって合図されることができる。いくつかの場合において、センサユニット２１２の複数のセンサは、上記の任意の組み合わせ、ならびに／または機械学習による関心対象の事象に既定されているおよび／もしくは関連付けられている任意の組み合わせなど、時間６１２Ａおよび／または６１２Ｂに合図することができる。
【０１１８】
信号４１２Ａがロボット２００によって遠隔ネットワーク３０２に送信されると、遠隔ネットワーク３０２のコンピュータおよび／またはユーザは、センサデータを分析することができる。センサデータは、単一の信号４１２Ａ、または信号４１２Ａと実質的に同様の、および／または信号４１２Ａに含まれる複数の信号で受信することができる。次いで、遠隔ネットワーク３０２は、センサデータに対する応答を含むことができる信号４１２Ｂを送信することができる。
【０１１９】
データの分析は、ロボット２００の構成に対する調整を決定することを含むことができる。例えば、遠隔ネットワーク３０２は、ロボット２００がセンサデータによって提示されたシナリオにおいて異なるように挙動することができると決定し、ロボット２００をその事情において所望される方法で挙動するように再プログラムすることができる。場合によっては、遠隔ネットワーク３０２は、機械学習のために、上述のマップ関連データを含むライブラリなどのライブラリ内のセンサデータを使用することができる。このようにして、遠隔ネットワーク３０２は、望ましい挙動を決定するために、ロボット２００および／または他のロボットによる経験を集約することができる。場合によっては、信号４１２Ｂは、ロボット２００の挙動を修正するための命令および／または更新を含むことができる。センサデータは、図５Ａおよび５Ｂを参照して記載したように、マップを修正するのにも役立つことができる。
【０１２０】
場合によっては、方法１５０を参照して記載したように、ロボット２００は停止して支援を要求することができる。そのような場合、遠隔ネットワーク３０２は、命令を提供するためにロボット２００からセンサデータを通して状況情報を受信することができる。そのような場合、関心対象の事象は、ロボット２００の停止および支援の欲求であり得る。場合によっては、ロボット２００は、現在の状況を遠隔ネットワーク３０２に提供するためにセンサデータを送信し続けて、ロボット２００により良く指示することを可能にすることができる。有利には、センサデータにより、遠隔ネットワーク３０２は、遠隔にいる間にロボット２００に何が起こったか、および／または起こっているのかを判定することができる。
【０１２１】
例えば、アシストコールは、関心対象の事象であり得、アシストコールの周囲のウィンドウ内のデータ（例えば、図６の時間６１２Ａと６１２Ｂの間の時間）が送信され得る。このデータは、状況を提供し、遠隔ネットワーク３０２のコンピュータおよび／またはユーザがロボット２００に対する行動を決定し、それに応じてロボット２００に指示することを可能にすることができる。例えば、ロボット２００のカメラからの視覚画像を送信することができ、それにより、遠隔ネットワーク３０２のコンピュータおよび／またはユーザは、カメラの視野を見て、ロボット２００がなぜ支援を求めているのかを判断することができる。このようにして、遠隔ネットワーク３０２のコンピュータおよび／またはユーザは、事態に対処するためにロボット２００が何をすることができるかを決定することができる。同様に、センサユニット２１２の他の任意のセンサも同様に支援に使用することができる。
【０１２２】
場合によっては、信号４１４は、ソフトウェア更新などの更新を含むことができる。場合によっては、そのような更新は、マッピングおよび位置特定ソフトウェア、ファームウェア、マップ、センサファームウェア、追加特色、パッチ、セキュリティ更新などを含むことができる。有利には、これにより、改善および／または変更が行われるにつれてロボット２００はその機能を改善できる。人は、ロボット２００を更新するために現場にいる必要はないであろう。代わりに、更新は、遠隔ネットワーク３０２によって遠隔的にプッシュされ、および／またはロボット２００によってプルされることができる。
【０１２３】
いくつかの実装形態では、ロボット２００は、遠隔ネットワーク３０２から信号をプルのみするように構成される。例えば、ロボット２００がプル用に構成されている場合、遠隔ネットワーク３０２からロボット２００への信号は、ロボット２００がそのようなデータをプルした場合にのみデータをロボット２００に転送することができる。有利には、プルのみの構成を有することは、ロボット２００への遠隔アクセスが制限されるというさらなる安全性を可能にすることができる。これにより、ロボット２００のハッキングおよび／または他の妨害行為を防止することができる。
【０１２４】
ロボット２００から遠隔ネットワーク３０２によって受信された信号（例えば、信号４０６Ａ、４０８Ｂ、４１０Ａ、４１２Ａなど）を通して、遠隔ネットワーク３０２はロボット２００を監視することができる。例えば、遠隔ネットワーク３０２のコンピュータおよび／またはユーザは、実質的にリアルタイムでおよび／または後でロボット２００を見ることができる。この見ることは、ロボット２００の進捗（例えば、そのタスクにおける有効性）、任意の所望の支援、ルートロボット２００が移動しているおよび／もしくは移動したこと、状態、ならびに／またはロボット２００の他の任意の態様を監視することを含むことができる。
【０１２５】
いくつかの実装形態では、遠隔ネットワーク３０２は、ロボット２００にコマンドを提供することができる。これらのコマンドは、命令（例えば、作動、移動など）を含むことができるので、遠隔ネットワーク３０２は、ロボット２００を遠隔制御および／または操作することができる。データ転送速度に応じて、遠隔制御は、実質的にリアルタイムであり得るか、または（例えば、待ち時間および／またはデータ転送時間に基づいて）遅延され得る。
【０１２６】
遠隔ネットワーク３０２は、報告の形で要約情報を提供することができる。信号４１６は、ロボット２００に送信された報告を含むことができる。場合によっては、報告はまた、追加的または代替的に（例えば、電子メール、郵便、手渡し、ファイル転送、メッセージングなどを使用して）オペレータに送信することができる。いくつかの実装形態では、そのような報告は、ロボット２００によっても生成することができる（例えば、前述の報告の生成は、遠隔ネットワーク３０２に加えておよび／またはその代わりに、ロボット２００によって実行することができる）が、報告の生成のために遠隔ネットワーク３０２を使用することの利点は、複数のロボットからデータを蓄積する、人がロボット２００の現場に行かなくても人間の操作を利用する、より高度なハードウェアを実装する、および／または他の利点、であるとすることができる。
【０１２７】
報告は、ルートに関する要約情報を含むことができる。例示として、図７Ａは、本開示のいくつかの実装形態による、環境マップ７０２上にオーバーレイされたルート７０４を備えるマップ７００を含む。ロボット２００によって生成されたマップは、ロボット２００が空間をナビゲートすることを可能にするのに有益であり得るが、場合によっては、これらのマップは、人々にとって読みにくくなり、および／または視覚的には魅力的ではなくなる。例えば、ロボット２００は、少なくとも部分的にセンサユニット２１２の１つ以上のセンサからのデータに基づいて、本開示に記載されているようにマップを生成することができる。このマップは、ロボット２００が環境を移動するたびに生成することができ、ロボット２００がどこを移動したかを決定することを可能にする。センサデータは、環境の要素を正確に測定しない可能性があり（例えば、要素はセンサの視野から遮られる可能性がある）、および／またはセンサからの情報は、人間がそれらを通常見ることができる方法から環境の要素を歪める可能性がある。したがって、遠隔ネットワーク３０２は、環境マップ７０２として見るためによりアクセス可能なアップロードされたマップを利用することができる。例えば、環境マップ７０２は、手動で作成されたマップ、コンピュータで作成されたマップ、および／または環境の視覚画像から作成されたマップなど、ユーザによってアップロードすることができる。次いで、ルート７０４は、ユーザによって（例えば手動で）および／またはコンピュータ（例えば、遠隔ネットワーク３０２および／またはロボット２００の）によってなど、環境マップ７０２上に重ね合わせることができる。例えば、コンピュータは、センサデータおよび／またはアップロードされたマップに少なくとも部分的に基づいて、ロボット２００によって生成されたマップを比較するように構成することができる。遠隔ネットワーク３０２は、様々な技術を使用することによってマップを相互に関連付けることができる。例えば、遠隔ネットワーク３０２は、ピクセルごとおよび／または領域ごとに比較を行うことができる。場合によっては、比較を容易にするために、比較の前に、サイズ変更および／または様々な画像処理技術（例えば、エラー訂正、フィルタリング、コントラストおよび／または彩度の調整、色の変更、ノイズリダクション、サイズ変更、アップスケーリング、ダウンスケーリング、および／または任意の画像処理アルゴリズムおよび／または方法）の実行など、マップを前処理することができる。
【０１２８】
他の技術は、ロボット２００によって生成されたマップを、センサデータおよび／または他のアップロードされたマップに少なくとも部分的に基づいて、アップロードされたマップと相関させるために利用することができる。例えば、当技術分野における、比較器および／または既知の比較方法および／またはアルゴリズムを利用することができる。場合によっては、マップを比較してそれらを相関させるために、視覚システムおよび機械学習は、機械によって利用することができる。このようにして、遠隔ネットワーク３０２は、遠隔ネットワーク３０２（および／またはユーザ）が複数のマップにわたって決定するしるしに基づいて、マップを互いに関連付けることを学ぶことができる。
【０１２９】
有利なことに、マップ７００と実質的に同様のマップは、ロボット２００のユーザおよび／またはオペレータがロボット２００の性能を監査することを可能にすることができる。ユーザおよび／またはオペレータは、ロボット２００がどこを移動したかを見て、ロボット２００の有効性を評価することができる。例えば、床掃除機の場合、ロボット２００が移動した場所が、ロボット２００が掃除した領域の少なくとも一部を示すことができる場合、マップ７００は、ロボット２００が掃除した場所の記録を提供することができる。これは、さらなる計画（例えば、日ごと、週ごと、月ごと、および／もしくは他の任意の期間ベースで）、ならびに／または作業フローに対する評価、最適化、および／もしくは調整を可能にし得る。
【０１３０】
有利なことに、本開示に記載されるようにアップロードされたマップ上にマップを重ね合わせることは、ロボット２００のマッピングおよび／または位置特定に少なくとも部分的に基づいて、正確なデータがマッピングされることを可能にし得る。これは、ロボット２００が経験したことの、より正確なさらなる文書化を可能にし得る。
【０１３１】
報告は、他のデータも含むことができる。そのような他のデータは、ロボット２００と遠隔ネットワーク３０２との間で送信されたセンサデータおよび他の通信の少なくとも部分的に基づく要約データとすることができる。例えば、報告は、電源オン／オフ時間、異なるモード（例えば、ロボット２００が有する２つの動作モードである、手動モードまたは自律モード）での動作、メンテナンス、低電力モード、高電力モード、効率、清掃距離および／または面積、掃除時間、動作時間、アシストコール、実行アシスト、データ使用量などを含むことができる。例えば、図７Ｂは、本開示のいくつかの実装形態によるロボット２００の使用法を要約した報告ページ７５０を含む。
【０１３２】
例示のように、ページ７５０は、セクション７５２、７５４、および７５６を有する。セクション７５２は、セッション要約を含むことができる。例えば、セッション要約は、既定のカテゴリーおよび／またはデータの種類に関する要約データを含むことができる。例示として、電源オン時間については、開始時間、終了時間、および合計期間を含む、自律モード時間、および手動トレーニング時間を要約することができる。
【０１３３】
セクション７５４は、合計使用量内訳を含むことができる。セクション７５４は、既定のカテゴリーおよび／またはデータの種類についての合計時間使用量などの、セクション７５２からの要約データを含むことができる。
【０１３４】
セクション７５６は、追加の要約データを含むことができる。例えば、セクション７５６は、既定のカテゴリーおよび／またはデータの種類についての要約データを含むことができる。例示として、セクション７５６は、多数の支援を含む。緊急支援は、ロボット２００が支援を所望した際にロボット２００が遭遇した緊急事態を含むことができる。例えば、緊急支援は、捕らえられること、衝突および／または衝突に近いこと、混乱、位置不特定および／または迷子になること、人々（例えば、子供および／または人々）の存在、轢くことおよび／または潜在的に轢くこと（例えば、ロボット２００がトラバースすべきでない地面および／または領域の物体を轢くこと）、嫌がらせ（例えば、人々および／または動物による）、人々による不正行為（例えば、ソフトウェアおよび／またはハードウェアに対する不正な改変）、動物および／もしくは動物との相互作用、機械的またはソフトウェアの故障、消耗品の交換、漏れなどを含むことができる。緊急支援が要求される場所は、オペレータ（例えば、ユーザもしくはコンピュータ）、ロボット２００、および／または遠隔ネットワーク３０２によって既定することができる。他の支援も同様にあり得る。例えば、別のカテゴリーの支援は、非緊急支援であり得、これは、場合によっては緊急支援よりも緊急性が低くなり得る。例えば、非緊急支援は、障害物（例えば、ロボット２００は通過できないが、待たなければならない）、軽微な干渉などを含むことができる。場合によっては、緊急支援に関する上記の例のいくつかは、ロボット２００およびロボット２００のナビゲーションにどれほどの危険性があるかに依存して、非緊急支援に格下げされ得る。他の支援カテゴリーが考えられ、ユーザにとって所望のおよび／または便利なものとして定義することができる。
【０１３５】
図８は、本開示のいくつかの実装形態による、遠隔ネットワークの操作するための例示的な方法８００のプロセスフロー図である。ブロック８０２は、センサデータ内の関心対象の事象を識別することを含み、関心対象の事象は第１の時間に発生する。ブロック８０４は、第１の時間前の開始時間および第１の時間後の終了時間を有する時間ウィンドウを決定することを含む。ブロック８０６は、ウィンドウの間に生成されたセンサデータに少なくとも部分的に基づいて状況を決定することを含む。ブロック８０８は、状況に少なくとも部分的に基づいて、支援の要求に対処するための命令をロボットに送信することを含む。
【０１３６】
図９は、本開示のいくつかの実装形態による、ロボットの操作のための例示的な方法９００のプロセスフロー図である。ブロック９０２は、センサデータに少なくとも部分的に基づいて環境における障害物を検出することおよび、ロボットがタスクを実行することができないと決定することを含む。ブロック９０４は、ロボットのアクチュエータがタスクを実行するのを防止することを含む。ブロック９０６は、センサデータおよび支援要求を遠隔ネットワークに送信することを含む。ブロック９０８は、タスクを実行するために遠隔ネットワークから命令を受信することを含む。ブロック９１０は、遠隔ネットワークからの命令に少なくとも部分的に基づいてタスクを実行することを含む。
【０１３７】
本明細書で使用されるように、コンピュータおよび／またはコンピューティングデバイスは、これらに限定されないが、パーソナルコンピュータ（「ＰＣ」）およびミニコンピュータデスクトップ、ラップトップ、もしくはそれ以外、メインフレームコンピュータ、ワークステーション、サーバ、携帯情報端末（「ＰＤＡ」）、携帯型コンピュータ、埋め込み式コンピュータ、プログラマブルロジックデバイス、パーソナルコミュニケータ、タブレットコンピュータ、モバイルデバイス、ポータブルナビゲーションエイド、Ｊ２ＭＥ搭載デバイス、携帯電話、スマートフォン、パーソナル統合通信またはエンターテインメントデバイス、および／または、一組の命令を実行し、入力してくるデータ信号を処理することが可能である、任意の他のデバイスを含むことができる。
【０１３８】
本明細書で使用されるように、コンピュータプログラムおよび／またはソフトウェアは、機能を行う任意のシーケンスまたは人間もしくは機械認識ステップを含むことができる。このようなコンピュータプログラムおよび／またはソフトウェアは、例えば、Ｃ／Ｃ＋＋、Ｃ＃、Ｆｏｒｔｒａｎ、ＣＯＢＯＬ、ＭＡＴＬＡＢ（商標）、ＰＡＳＣＡＬ、Ｐｙｔｈｏｎ、アセンブリ言語、マークアップ言語（例えば、ＨＴＭＬ、ＳＧＭＬ、ＸＭＬ、ＶｏＸＭＬ）などを含む任意のプログラム言語または環境はもちろん、コモンオブジェクトリクエストブローカーアーキテクチャ（「ＣＯＲＢＡ」）、ＪＡＶＡ（商標）（Ｊ２ＭＥ，ジャバビーンズ（Ｊａｖａ  Ｂｅａｎｓ）などを含む）、バイナリランタイム環境（例えば、「ＢＲＥＷ」）などのオブジェクト指向環境によって提供することができる。
【０１３９】
本明細書で使用されるように、接続、リンク、および／またはワイヤレスは、エンティティ間の情報交換を可能にする、任意の２つ以上のエンティティ間の（物理的または論理的／仮想的）因果関係を含むことができる。
【０１４０】
本開示のある特定の態様は、方法の具体的な一連のステップに関して記載されているが、これらの記載は、本開示のより広範な方法の単なる例示であり、特定の用途によって要求されるように変更され得ることが認識されるであろう。特定のステップは、特定の事情下では不要またはオプションになることがあり得る。さらに、開示された実装形態にある特定のステップまたは機能が追加されてもよく、または２つ以上のステップの実行順序は並べ換えることができる。そのような変形はすべて、本明細書に開示および特許請求されている開示の範囲内に包含されると見なされる。
【０１４１】
上記の詳細な記載は、様々な実装形態に適用される本開示の新規な特色を示し、記載し、指摘したが、例示されたデバイスまたはプロセスの形態および詳細における様々な省略、置換、および変更が、本開示から逸脱することなくなされ得ることは当業者により理解される。前述の記載は、本開示を実施することについて現在企図されている最良の様式である。この記載は、決して限定することを意味するものではなく、むしろ本開示の一般原則の例示として解釈されるべきである。本開示の範囲は、特許請求の範囲を参照して判断されるべきである。
【０１４２】
本開示を図面および前述の記載において詳細に例示および記載してきたが、そのような例示および記載は、説明的または例示的であり、限定的ではないと見なされるべきである。本開示は、開示された実施形態に限定されない。開示された実施形態および／または実装形態に対する変形は、図面、本開示および添付の特許請求の範囲の検討から、特許請求された開示を実施する際に当業者によって理解され達成され得る。
【０１４３】
本開示のある特定の特色または態様を説明するときに特定の用語を使用することは、その用語が関連付けられている、本開示の特色または態様の任意の具体的な特徴を含むよう限定されるように、その用語が本明細書において再定義されていることを意味すると解釈されるべきではない。本出願において使用される用語および句、ならびにその変形は、とりわけ添付の特許請求の範囲において、他に明示的に述べられていない限り、限定とは対照的に無制限として解釈されるべきである。前述の例として、「含む（ｉｎｃｌｕｄｉｎｇ）」という用語は、「限定することなく含む」、「含むがこれに限定されない」などを意味すると読まれるべきであり、本明細書で使用される「含む（ｃｏｍｐｒｉｓｉｎｇ）」という用語は、「含む（ｉｎｃｌｕｄｉｎｇ）」、「含む（ｃｏｎｔａｉｎｉｎｇ）」、または「によって特徴付けられる（ｃｈａｒａｃｔｅｒｉｚｅｄ  ｂｙ）」と同義であり、包括的またはオープンエンドであって、追加の列挙されていない要素または方法ステップを排除するものではなく、「有する（ｈａｖｉｎｇ）」という用語は「少なくとも有する（ｈａｖｉｎｇ  ａｔ  ｌｅａｓｔ）」と解釈されるべきであり、「など（ｓｕｃｈ  ａｓ）」という用語は「限定されることなく、〜など（ｓｕｃｈ  ａｓ，ｗｉｔｈｏｕｔ  ｌｉｍｉｔａｔｉｏｎ）」と解釈されるべきであり、「含む（ｉｎｃｌｕｄｅｓ）」という用語は、「含むがこれに限定されない（ｉｎｃｌｕｄｅｓ  ｂｕｔ  ｉｓ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」と解釈されるべきであり、「実施例（ｅｘａｍｐｌｅ）」という用語は、考察における項目の例示的な例を提供するために使用され、それらの網羅的または限定的なリストではなく、「実施例として、しかし限定することなく（ｅｘａｍｐｌｅ，ｂｕｔ  ｗｉｔｈｏｕｔ  ｌｉｍｉｔａｔｉｏｎ）」として解釈されるべきであり、「知られている」、「普通の（ｎｏｒｍａｌ）」、「標準的な（ｓｔａｎｄａｒｄ）」などの形容詞および同様の意味の用語は、記載された項目を所与の期間または所与の時点で利用可能な物品に限定すると解釈されるべきではないが、代わりに、現在または将来いつでも利用可能または既知の可能性がある既知、通常、または標準のテクノロジを網羅するように読まれるべきであり、かつ、「好ましくは（ｐｒｅｆｅｒａｂｌｙ）」、「好ましい（ｐｒｅｆｅｒｒｅｄ）」、「所望の（ｄｅｓｉｒｅｄ）」、または「望ましい（ｄｅｓｉｒａｂｌｅ）」などの用語の使用、および類似の意味の単語は、ある特定の特色が本開示の構造または機能にとって重要、必須、またはさらに重要であることを意味すると理解すべきではないが、代わりに、単に特定の実施形態において利用されてもされなくてもよい代替または追加の特色を強調することを意図したものとして理解すべきである。同様に、接続詞「および（ａｎｄ）」にリンクされた項目の群は、それらの項目の各々および、ひとつひとつがその群内に存在することを要求するものとして読まれるべきではなく、特に明記しない限り「および／または」として読まれるべきである。同様に、接続詞「または（ｏｒ）」にリンクされた項目の群は、そのグループ間の相互排他性を必要とするものとして読まれるべ���ではなく、別段の明記がない限り、「および／または」として読まれるべきである。「約（ａｂｏｕｔ）」または「およそ（ａｐｐｒｏｘｉｍａｔｅ）」などの用語は同義語であり、その用語によって修飾された値がそれに関連する理解された範囲を有することを示すために使用され、その範囲は±２０％、±１５％、±１０％、±５％、または±１％、であり得る。「実質的に（ｓｕｂｓｔａｎｔｉａｌｌｙ）」という用語は、結果（例えば、測定値）が目標値に近いことを示すために使用され、ここでは、結果は、その値の８０％以内、その値の９０％以内、その値の９５％以内、またはその値の９９％以内である。また、本明細書で使用されるとき、「定義された（ｄｅｆｉｎｅｄ）」または「判定された（ｄｅｔｅｒｍｉｎｅｄ）」は、「事前定義された（ｐｒｅｄｅｆｉｎｅｄ）」または「既定の（ｐｒｅｄｅｔｅｒｍｉｎｅｄ）」および／または他の方法で決定された値、条件、閾値、測定値などを含み得る。
【図１Ａ】
2020502636.tif 000003
【図１Ｂ】
2020502636.tif 000004
【図２】
2020502636.tif 000005
【図３Ａ】
2020502636.tif 000006
【図３Ｂ】
2020502636.tif 000007
【図４】
2020502636.tif 000008
【図５Ａ】
2020502636.tif 000009
【図５Ｂ】
2020502636.tif 000010
【図６】
2020502636.tif 000011
【図７Ａ】
2020502636.tif 000012
【図７Ｂ】
2020502636.tif 000013
【図８】
2020502636.tif 000014
【図９】
2020502636.tif 000015
【国際調査報告】
2020502636.tif 000016
2020502636.tif 000017
2020502636.tif 000018