JP2020520008A - ロボットの動作制御のためのシステムおよび方法 - Google Patents

ロボットの動作制御のためのシステムおよび方法 Download PDF

Info

Publication number
JP2020520008A
JP2020520008A JP2019561845A JP2019561845A JP2020520008A JP 2020520008 A JP2020520008 A JP 2020520008A JP 2019561845 A JP2019561845 A JP 2019561845A JP 2019561845 A JP2019561845 A JP 2019561845A JP 2020520008 A JP2020520008 A JP 2020520008A
Authority
JP
Japan
Prior art keywords
robot
signal
sensor
value
actuator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2019561845A
Other languages
English (en)
Inventor
ボトンド スザットマリー
ボトンド スザットマリー
ミカ リチャート
ミカ リチャート
ジャン−バティスト パッソ
ジャン−バティスト パッソ
ジョン ブラック
ジョン ブラック
オリバー マーティン
オリバー マーティン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brain Corp
Original Assignee
Brain Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brain Corp filed Critical Brain Corp
Publication of JP2020520008A publication Critical patent/JP2020520008A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0077Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements using redundant signals or controls
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T7/00Brake-action initiating means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T7/00Brake-action initiating means
    • B60T7/12Brake-action initiating means for automatic initiation; for initiation not subject to will of driver or passenger
    • B60T7/22Brake-action initiating means for automatic initiation; for initiation not subject to will of driver or passenger initiated by contact of vehicle, e.g. bumper, with an external object, e.g. another vehicle, or by means of contactless obstacle detectors mounted on the vehicle
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/87Combinations of systems using electromagnetic waves other than radio waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T2201/00Particular use of vehicle brake systems; Special systems using also the brakes; Special software modules within the brake system controller
    • B60T2201/02Active or adaptive cruise control system; Distance control
    • B60T2201/022Collision avoidance systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9318Controlling the steering
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/93185Controlling the brakes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9319Controlling the accelerator
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9323Alternative operation using light waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/88Radar or analogous systems specially adapted for specific applications
    • G01S13/93Radar or analogous systems specially adapted for specific applications for anti-collision purposes
    • G01S13/931Radar or analogous systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • G01S2013/9324Alternative operation using ultrasonic waves

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Electromagnetism (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

デバイスの動作を制御するシステムは、少なくとも1つのプロセッサを備え、少なくとも1つのプロセッサは、デバイスの第1の領域で障害物を検出すると、センサからの第1の入力を受け取り、異なる第2の領域で物体を検出するとセンサからの異なる第2の入力を受け取るように構成され、かつセンサからの第1の入力を受け取ると少なくとも1つのアクチュエータに第1の信号を送信し、第1の信号が第1の値の強度を有し、センサから第2の入力を受け取ると第2の信号を送信し、第2の値が第1の値よりも大きいようにさらに構成されている。【選択図】図1B

Description

優先権
本出願は、同一表題の2017年5月9日に出願された共同所有および同時係属中の米国特許出願第62/503,762号に対する優先権の利益を主張し、それらの内容は参照によりその全体が本明細書に組み込まれる。
著作権
本特許文書の開示の一部には、著作権保護の対象となる資料が含まれている。著作権者は、特許商標庁の特許ファイルまたは記録に記載されているような本特許文書または本特許開示の、いかなる人物によるファクシミリ複製にも異論を唱えないが、それ以外の全ての著作権を留保する。
本出願は、概して、ロボット工学に関し、より具体的には、ロボットの制御システムの安全性のためのシステムおよび方法に関する。
ロボットは、タスクを自律的に実行するようにプログラムできる。現代のロボットには、ロボットのタスクを実行する際に一連の指示に従うことができるものがある。
ロボットの設計、製造、および運用における課題は、ロボットの安全性である。適切な安全対策が講じられていない場合、ロボットは、ロボットの近くにいる人および/または物体に危険をもたらす可能性がある。例えば、ロボット車両は人と衝突して、怪我および/または死亡を引き起こす可能性がある。産業用ロボットは、ギア、ブレード、アームなど、怪我および/または死亡を引き起こす可能性のある可動部品を備えていることがある。
現代のロボットは、安全性が保証されたコンポーネントおよび/または機器の特定のパフォーマンスレベルの安全性完全性評価を適所に実施することにより、これらの危険に関連するリスクを制御することができる。ただし、これらのアプローチは実装に費用がかかる可能性があり、および/またはロボットの機能/性能の不一致をもたらす可能性がある。したがって、当技術分野では、ロボットの制御システムの安全性のための改善されたシステムおよび方法のニーズが存在する。
上記のニーズは、例えばロボット経路計画を目的とした、特に、制御システムの安全性を実装するためのシステムおよび方法を提供する本開示によって満たされる。一部の実装態様では、ロボットは、グローバルに経路を再決定でき、これにより、ロボットがナビゲーションできないエリアおよび/またはナビゲーションが望ましくないエリアをナビゲーションするために、他のナビゲーション可能なエリアへの移動を可能にする。
本明細書に記載されている例示的な実装態様は、革新的な特徴を有しており、そのうちのどれも、それらの望ましい属性に対して不可欠ではなく、または単独でその責任を担うものではない。特許請求の範囲を限定することなく、いくつかの有利な特徴をここで要約する。
第1の態様では、ロボットに制御システムを実装する方法を開示する。例示的な一実施形態では、この方法は、ロボットに関連付けられたリスクを評価することと、リスクを軽減するためのシナリオを決定することと、安全機能を定義することと、ロボットの制御システムに診断ツールを実装することと、を含む。
第2の態様では、ロボットの安全制御のための方法を開示する。一実施形態では、この方法は、所定の診断基準を使用してロボットの制御システムを診断することと、診断が、所定の診断基準が満たされていないと判断した場合、ロボットの所定の停止を実行することと、を含む。
一変形形態では、所定の停止は、ロボットの完全なシャットダウンを含む。別の変形形態では、所定の停止は、ロボットのアクチュエータで利用可能な修正された電力を有した状態の制御停止を含む。さらに別の変形形態では、所定の停止は、ロボットのアクチュエータで利用可能な電力を有した制御停止を含む。さらに別の変形形態では、制御システムは、ステアリング、速度、センサ、およびデータ完全性の少なくとも1つを示します。
第3の態様では、ロボットを開示する。例示的な一実装態様では、このロボットは、ロボットの環境を示すデータを生成するように構成された1つ以上のセンサと、ロボットタスクを実行するように構成された1つ以上のアクチュエータと、1つ以上のセンサに対する診断を実行し、診断に基づいて1つ以上のアクチュエータを停止させるコントローラと、を備える。
一変形形態では、診断は、1つ以上のセンサによって生成されたデータの完全性を判定することを含む。
第4の態様では、製造方法を開示する。例示的な一実施形態では、この方法は、マシンプロセッサおよびアクチュエータを含むマシンを得ることと、モジュールプロセッサおよび1つ以上のセンサを含むモジュールをマシンに取り付けることと、モジュールプロセッサをマシンプロセッサとインターフェースすることと、モジュールプロセッサを構成して、1つ以上のセンサに対して診断を実行することと、を含み、診断が失敗すると、モジュールプロセッサが停止コマンドをマシンプロセッサに送信する。
第5の態様では、非一時的コンピュータ可読記憶装置を開示する。例示的な一実装態様では、非一時的コンピュータ可読記憶媒体は、そこに複数の命令を格納しており、命令は、ロボットを動作させるように処理装置によって実行可能である。この命令は、処理装置によって実行されると、所定の診断基準を使用してロボットの制御システムを診断することと、診断により、所定の診断基準が満たされていないと判断された場合、ロボットの所定の停止を実行することと、を処理装置に行わせるように構成される。
本開示のこれらおよび他の目的、特徴、および特性、ならびに構造の関連要素の操作方法および機能ならびに部品の組み合わせおよび製造の経済性は、それらの全てが本明細書の一部分を形成し、同様の参照番号が様々な図における対応する部分を示す、添付の図面を参照して下記の説明および添付の特許請求の範囲を考慮することにより、より明らかになるであろう。しかしながら、図面は、例示および説明の目的のみのためであり、本開示の限界の定義を意図するものではないことは、明白に理解されるべきである。本明細書および特許請求の範囲で使用されるように、「a」、「an」、および「the」の単数形は、文脈から明らかに別様であると認められない限り、複数の指示対象を含む。
開示された態様は、添付の図面と併せて以下で説明され、開示される態様を例示するために提供され、限定するために提供されるものではなく、同様の名称は同様の要素を示す。
本開示のいくつかの実装態様による、ロボットをナビゲートする例示的な方法のプロセスフロー図である。 本開示のいくつかの実装態様による、ロボットの周囲の様々なゾーンの特性を示す俯瞰図である。 本開示のいくつかの原理による、ロボットの機能ブロック図である。 図2Aに示されるようなロボットの少なくとも一部の実装態様の機能ブロック図であり、そこでは、ロボットが、本開示のいくつかの実装態様によるロボットモジュールが取り付けられたモバイルプラットフォームである。 本明細書に記載の制御モジュールを備えた床清掃機 本開示のいくつかの実装態様による、2つのLiDARセンサを備えるロボットの実施形態によって示される検知範囲の表示である。 本開示のいくつかの実装態様によるロボットの三角測量感知の実施形態の表示を示す。 本開示のいくつかの実装態様による、図2Aに示されるようなロボットの少なくとも一部の実装の機能ブロック図である。 本開示のいくつかの実装態様によるサブシステムCアーキテクチャの実装の機能ブロック図である。 本開示のいくつかの実装態様によるサブシステムDアーキテクチャの実装の機能ブロック図である。 本開示のいくつかの実装態様による、ネットワークに通信可能におよび/または動作可能に連結されたロボットを含むシステムの機能ブロック図である。
本明細書に開示された全ての図は、Brain Corporationの2017〜2018年に作成された著作権で保護されているものである。無断転用禁止。
本明細書に開示された新規なシステム、装置、および方法の様々な態様は、添付の図面を参照して以下でより完全に記載される。しかしながら、本開示は、多くの異なる形態で具現化することができ、本開示全体を通して提示される具体的な構造または機能に限定されると解釈されるべきではない。むしろ、これらの態様は、本開示が徹底的かつ完全であり、本開示の範囲を当業者に完全に伝えるように提供される。本明細書の教示に基づいて、当業者であれば、本開示の範囲が、本開示の任意の他の態様とは独立して実装されるか、またはそれと組み合わせられるかにかかわらず、本明細書に開示された新規のシステム、装置、および方法の任意の態様を包含することを意図していることを理解するであろう。例えば、本明細書に記載の任意の数の態様を使用して、装置を実装することができ、または方法を実施することができる。その上、本開の範囲は、本明細書に記載された開示の様々な態様に加えて、またはそれ以外の他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法を包含するように意図されている。本明細書に開示されるいかなる態様も、請求項の1つ以上の要素によって実装され得ることを理解されたい。
特定の態様が本明細書に記載されているが、これらの態様の多くの変形および置換が本開示の範囲内に含まれる。好ましい態様のいくつかの利益および利点が述べられているが、本開示の範囲は、特定の利益、用途、および/または目的に限定されることを意図しない。詳細な説明および図面は、限定ではなく本開示の単なる例示であり、本開示の範囲は、添付の特許請求の範囲およびその等価物によって定義される。
場合によっては、本開示のいくつかの実装態様は、ロボットモバイルプラットフォームなどのロボットに関する。本明細書で使用される場合、ロボットは、一連のアクションを自動的に実行するように構成された機械的および/または仮想的エンティティを含むことができる。場合によっては、ロボットは、コンピュータプログラムおよび/または電子回路によって案内および/または命令される機械であり得る。場合によっては、ロボットは、ナビゲーション用に構成された電子機械コンポーネントを含むことができ、ロボットは、ある場所から別の場所に移動することができる。このようなロボットは、自律的および/または半自律的自動車、床清掃機、ローバ、ドローン、飛行機、ボート、カート、路面列車、車椅子、産業機器、ストッキングマシン、モバイルプラットフォーム、個人用輸送デバイス(例えば、ホバーボード、SEGWAYS(登録商標)、車椅子など)、ストッキングマシン、トレーラムーバ、車両などを含むことができる。ロボットは、アイテム、人、動物、貨物、荷物、物体、手荷物、および/または望ましい物をある場所から別の場所に輸送するための任意の自律的および/または半自律的機械も含むことができる。ロボットは自律的および/または半自律的にナビゲーションおよび/または移動することができるモバイルシステムであるため、場合によっては、輸送に使用されるこのようなロボットは、ロボットモバイルプラットフォームを含むことができる。これらのロボットモバイルプラットフォームは、自律的および/もしくは半自律的車椅子、自転車、手こぎボート、スクーター、フォークリフト、路面列車、列車、カート、車両、タグボート、ならびに/または輸送に使用される任意の機械を含むことができる。
本明細書で言及されるように、床清掃機は、手動制御(例えば、駆動制御または遠隔制御)および/または自律(例えば、ユーザ制御をほとんどまたは全く用いない)床清掃機を含むことができる。例えば、床清掃機は、管理者、管理人、または他の人が操作する床洗浄機、および/または環境を自律的にナビゲートおよび/または清掃するロボット床洗浄機を含むことができる。同様に、床清掃機は、掃除機、スチーマー、バッファー、モップ、ポリッシャー、スイーパー、バニッシャーなども含むことができる。本明細書に記載されたシステムは、システムが人または物がその経路にある場合を検出して人または物にぶつからないように1つ以上の手順を開始することができるように、自律的にまたは人によって操作される床清掃機を制御するのに使用することができる。
場合によっては、ロボットには、1つ以上の移動の自由度を持つマシンを含めることもできる。これらのマシンは、環境をトラバースすることはできない(例えば、マシンを一場所に固定することができる)が、マシンは、作動する可動部品を持つことができる。いくつかの例には、ロボットアーム、工作機械、および/または他のロボット機械が含まれます。
特定の例が、床清掃機もしくはモバイルプラットフォーム、またはロボット床清掃機もしくはロボットモバイルプラットフォームに関して本明細書に説明される。そのような例は、例示用にのみ使用され、本明細書で説明される原理は、ロボット一般に容易に適用され得る。
場合によっては、ロボットは、1つ以上のタスクを実行するように自動化された電気器具、機械、および/または機器を含むことができる。例えば、それらが自律的に動作することができるように、モジュールを電気器具、機械、および/または機器に取り付けることができる。そのような取り付けは、エンドユーザによって、および/または製造プロセスの一部として行うことができる。いくつかの実装態様では、モジュールは、電気器具、機械、および/または機器の自律運動を駆動するモータを含むことができる。場合によっては、モジュールは、既存のコントローラ、アクチュエータ、ユニット、ならびに/または電気器具、機械、および/もしくは機器のコンポーネントに制御信号を送信することによってなど、少なくとも部分的にスプーフィングに基づいて、電気器具、機械、および/または機器を動作させる。モジュールは、データを受信および生成するためのセンサおよび/またはプロセッサを含むことができる。モジュールは、センサデータを処理し、制御信号を送信し、かつ/または既存のコントローラ、ユニット、および/もしくは電気器具、機械、および/もしくは機器のコンポーネントを他の方法で制御するために、プロセッサ、アクチュエータ、および/または本明細書に記載されるコンポーネントのいずれかを含むこともできる。そのような電気器具、機械、および/または機器は、自動車、床清掃機、ローバ、ドローン、飛行機、ボート、カート、路面列車、車椅子、産業機器、ストッキングマシン、モバイルプラットフォーム、個人用輸送デバイス、ストッキングマシン、トレーラムーバ、車両、および/または任意の種類の機械を含むことができる。
本開示のシステムおよび方法の様々な実装態様および変形形態の詳細な説明がここで提供される。本明細書で論じる多くの例はロボット式床清掃機に言及している可能性があるが、本明細書に含まれる説明されるシステムおよび方法は任意の種類のロボットに適用可能であることが理解されよう。本明細書に記載される技術の無数の他の例示的な実装態様または使用は、本開示の内容を考慮すれば、当業者であれば容易に想到するであろう。
有利なことに、本開示のシステムおよび方法は、少なくとも、(i)ロボットが複雑な環境で動作できるようにする、(ii)ロボットに高い安全性を提供する、(iii)ロボットの費用対効果の高い構築を可能にする、(iv)ロボットリソースの計算効率の高い管理を提供する、および(v)既製の部品からロボットの構築を可能にする。他の利点は、本開示の内容を考慮すれば、当業者は容易に認識することができる。
例えば、いくつかの実装態様では、ロボットがインシデント(incident)の直接の原因になる可能性がある。このような場合、ロボットは、人または物に直接ぶつかるなどして、直接インシデントを引き起こす可能性がある。直接的な原因であるのとは対照的に、間接的な場合、ロボットは、潜在的な危険につながる可能性のあるイベントおよび/または一連のイベントをトリガーできる(例えば、床に水または他の要素を残す)。有利なことに、本開示のシステムおよび方法は、ロボットがインシデントの直接的な原因になることを防ぐことができる。
場合によっては、本開示のシステムおよび方法は、ロボットの特定の機能を監視および/または診断することを可能にする。そのような機能の潜在的な複雑化および/または欠点が発生した場合、診断が、ロボットの停止など、ロボットの安全性をサポートする適切なアクションにつながる可能性がある。
図1Aは、本開示のいくつかの実装態様による、ロボットをナビゲートする例示的な方法100のプロセスフロー図である。ブロック102は、ロボットに関連付けられたリスクを評価することを含む。例えば、リスクとして、ロボットモバイルプラットフォームと人、子供、アイテム、および/またはその他の物との衝突が挙げられる。この点で、リスクは、相対的な場所に少なくとも部分的に基づいて変化する可能性がある。例示として、図1Bは、本開示のいくつかの実装態様による、ロボット200の周囲の様々なゾーンの特性を示す俯瞰図である。図示されているように、ロボット200に関連付けられた形状は、丸みを帯びた長方形に近い。ロボットの任意の形状など、他の形状が考えられる。形状には、関連する長さ、幅、高さなどがある。例えば、限定されないが、典型的な乗用商業用清掃機は、約1.3〜1.5m(長さ)×約0.8〜1m(幅)×約1.2〜1.5m(高さ)の寸法、約400〜600kgの操作荷重、1〜2メートル/秒の最大速度、および約0.8〜4メートルの停止距離を含み得る。歩行型の自走式床清掃機は、一般に小さく、約0.8〜2メートル/秒で移動し得る。場合によっては、描かれた形状は、ロボット200の実際のサイズおよび/または形状と正確に整合しない近似フットプリントであり得る。ロボット200は、ロボットモバイルプラットフォームの場合のように、動作方向を持つことができる。例えば、インジケータ120は、ロボット200が前方、後方、および/または旋回などの複数の方向に移動できることを示すことができる。前方、後方、左、右、上、下、ロー、ピッチ、ヨー、および/またはこれらの任意の組み合わせなど、ロボットの任意の動作方向も考えられる。
エリア122Aは、ロボット200のクリティカルリスクゾーンを表すことができる。例えば、エリア122Aは、ゾーンに存在するあらゆる物(例えば、人、子供、アイテム、および/または他の物)がロボット200と物理的に接触するゾーンとすることができる。図示されるように、エリア122Aは、インジケータ120によって示されるなど、移動方向に対して相対的であり得る。場合によっては、ロボット200は、実質的に移動方向に向かって移動しているため、接触ゾーン内の物がロボット200にぶつかる可能性があり、それによりロボット200の移動による力および/または衝撃の損傷が増加する(例えば、ロボット200が動かずに物がロボット200に衝突した場合の状況)。
同様に、エリア122Bは、ロボット200の高リスクゾーンを表すことができる。何かが高リスクゾーンにある場合、ロボット200は、その物がロボット200と衝突する可能性のあるエリア122Aに入る前に操縦するのに十分な時間を持たない可能性がある。
エリア122Cは、中リスクゾーンおよび/または警告ゾーンを表すことができる。何かが領域122Cにある場合、ロボット200は、エリア122Cにある物と衝突することなく、限られた機動性を有し得る。したがって、ロボット200は、そのようなリスクに対処するために特定の行動を起こすことができる。
他のエリアも考えられ、各エリアは、異なるリスクに関連付けられ得る。例えば、エリア122A〜122Nの任意の数があり得、ここで、Nは、評価されるリスクエリアの数に基づく任意の所定の数である。例えば、他のエリアは、低リスクゾーン、非リスクゾーン、後方リスクゾーン、側方リスクゾーン、損傷ゾーン、限定スペースゾーン、停止ゾーン、接触ゾーン、および/または特定のレベルおよび/またはリスクのタイプに関連付けられた任意のゾーンのうちの1つ以上を含めることができる。
図1Aに戻ると、ブロック104は、リスクを軽減するためのシナリオを決定することを含む。例えば、何かが特定のエリアにある場合、ロボット200は、特定のアクションを実行できる。このようなアクションとして、アクチュエータを停止させること、旋回させること、作動させること、アクチュエータを停止させること、ある方向への移動および/または移動させること、ロボットタスクを実行することまたは実行しないこと、および/またはロボット200が実行できるその他のアクションの1つ以上が挙げられる。場合によっては、状況に応じて異なるタイプの停止を使用できる。これらの停止には、異なる名前やカテゴリを与えることができる。例えば、停止の最初のカテゴリには、ロボット200の完全なシャットダウンを含めることができる。停止の第2のカテゴリには、ロボット200を停止するためにアクチュエータ(例えば、破損)に電力が加えられる電動破損を含めることができる。停止の第3のカテゴリには、ロボット200の動作を減速させるなど、ロボット200の1つ以上のアクチュエータへの電力を修正することを含むことができる。
第1の例として、ロボット200は、特定のエリア(例えば、エリア122A)で何かを検出することに応答して停止することができる。場合によっては、停止することは、ブレーキなどのナビゲーションの停止を含むことができる。場合によっては、停止することは、ロボット200の追加機能を停止すること、例えば、ロボットタスクに関連付けられたアクチュエータを停止することを含むことができる。例示として、ロボット200が床清掃機である場合、ロボット200は、その中に配置されたブラシ、掃除機、および/または液体ポンプを作動させることができる。これらのブラシ、掃除機、および/または液体ポンプにより、ロボット200に床を清掃させることを可能にする。エリア122A(または、任意の他の所定のエリア)に何かがあると、ロボット200は、これらの追加機能をオフにすることができる。さらに、場合によっては、ロボット200は、エリア122A(または任意の他の所定のエリア)で何かを検出したことに応答して、実質的に完全なシャットダウン(例えば、電源オフ)を実行することができる。本開示で使用される場合に、停止することは、前述の停止機能のいずれかを含むことができる。このようなアクションは、衝突による損傷を最小限に抑えるために実行し得る。いくつかの実装態様では、ロボット200は、シャットダウンする代わりに、さらなる損傷を防ぐためにロボット200が以前に移動していた方向とは反対方向に移動することができる(例えば、ステアリングアクチュエータおよび/または推進アクチュエータを作動させることによって)。
別の例として、特定の領域(例えば、エリア122B)で何かを検出することに応答して、ロボット200は、そのような検出に応答して他のアクションを実行することができる。例えば、ロボット200は、ロボット200がエリア122Bで何か(例えば、人、物体、障害物など)を検出したときに停止するように構成することができる。場合によっては、ロボット200の停止により、エリアのリスク特性を十分に低減することができる。例えば、停止することにより、ロボット200は、動的物体がその場から外れるのを待機し、ロボット200がエリア122B内にある物をどのようにナビゲーションするかをさらに評価し、および/または支援を求めることができる。
別の例として、特定のエリア(例えば、エリア122C)で何かを検出することに応答して、ロボット200は、そのような検出に応答して他のアクションを実行することができる。例えば、ロボット200は、ロボット200がエリア122Cで何か(例えば、人、物体、障害物など)を検出したときに減速するように構成することができる。例示として、ロボット200は、減速し、それに応じて調整される場合、エリア122C内の物を避けるのに十分な反応時間を有することができる。これにより、検出された物がエリア122Bまたはエリア122Aに入るのを防ぐことができる。
図1Aに戻ると、ブロック106は、安全機能を定義することを含む。安全機能は、知覚能力および/またはナビゲーション能力の欠点などのロボット200の潜在的な欠点を認識して、ロボット200での動作に所定の挙動および/または環境修正を割り当てることを含むことができる。例えば、安全機能として、ロボット200の対面、現場監視、および/またはシャドーイングを挙げることができる。人は、停止ボタンまたはリモートコントローラなどのロボット200の制御を有することができ、人がロボット200の挙動を変更できるようにする。停止ボタンは、少なくとも部分的に、本開示で説明される停止の少なくとも1つを引き起こすことができる。
別の例として、安全機能として、動作中のロボット200の環境の閉鎖および/または制限を挙げることができる。例えば、ロボット200が床清掃機を含む場合、ロボット200の自律動作は、環境が顧客、労働者などの人々のサブセットの立ち入りを禁止している場合に制限することができる。場合によっては、店舗、モール、カフェテリアなどを含む小売スペース、または倉庫において、これは夜間および/または営業時間外に発生し得る。空港、駅、バスターミナル、高速道路サービスプラザ、またはその他の輸送施設などの他の例では、環境が人々の立ち入りを完全に禁止していない場合があるが、ロボット200の自律動作をオフピーク時間に制限してもよい。いくつかの実装態様では、環境の一部が制限されている、および/またはロボットの動作中のアクセスが制限されているなど、環境の一部を制御することができる。場合によっては、施設の作業員は、停止ボタンまたはリモートコントローラなどを介してロボット200を制御することができる。停止ボタンは、少なくとも部分的に、本開示で説明される停止の少なくとも1つを引き起こすことができる。
別の例として、安全機能は、環境の限定を含むことができる。例示として、施設のセクションは、ロボット200が動作している間、特定の活動(例えば、作業、歩行、徒歩の往来など)を禁止することができる。別の例として、施設のセクションでは、付き添いのいない子供などの特定のタイプの人々を禁止することができる。
別の例として、安全機能は、一般公開の環境を含む環境での作業に対する一般的な開放性を含めることができる。
図1Aに戻ると、ブロック108は、制御システムに診断ツールを実装することを含む。場合によっては、ロボット200のコントローラによって実行されるなど、センサの出力で診断を実行できる。場合によっては、センサ自体によって診断を出力できる。例えば、ロボット200の制御システムは、物体(例えば、人または他の障害物)を検出および回避するために実装することができる。制御システムは、ロボット200の周囲のエリアで何かが検出された場合、所定の停止を実行するように構成することができる。例えば、エリア122A、122B、および122Cのうちの1つ以上で何かが検出された場合、ロボット200は停止を実行することができる。例えば、エリア122Aは、物体がロボット200と接触している、または非常にすぐに接触することになるクリティカルゾーンとすることができる。したがって、ロボット200は、そのような状況で所定のタイプの停止を実行することができる。例えば、停止は、ロボット200のシャットダウン、または本開示で説明される別のタイプの停止とすることができる。別の例として、ロボット200は、物体が他のエリア(例えば、エリア122Bおよび122C)で検出されると、所定のタイプの停止を実行することができる。そのような停止は、本開示で説明される任意の他の停止とすることができる。この例では、この制御システムの診断は、物体および/または物体の位置、向き、および/または姿勢(例えば、ロボット200に対する)を検出するように構成されたセンサ(例えば、図2Aを参照して後述するセンサユニット212のセンサ)などによるそれぞれのエリア(例えば、ゾーン)内の物体の検出を含むことができる。
別の例として、制御システムは、所定の高さよりも大きい垂直落下などの崖または落下を検出および回避するように構成することができる。例えば、ロボット200がそのような垂直落下から落下する場合、ロボット200、環境、人、および/または物体に対する損傷の傾向に少なくとも部分的に基づいて、高さを事前決定することができる。例えば、大型の機械の場合、このような垂直落下は、5、6、7、8、9、10、またはそれ以上のセンチメートル程度になり得る。小型のロボットの場合、落下が大きいほど損傷が少なくなり得る。したがって、所定の高さは、マシンのサイズ、マシンの重量、マシンの形状、マシンの材料、マシンの特定の特徴(例えば、鋭利な物体)、および/または少なくとも部分的にロボットの安全性の考慮を示す経験的証拠などの1つ以上の要因から決定することができる。ここで、制御システムは、停止(例えば、本開示に説明される任意の停止)および/または回避操縦とすることができる。回避操縦は、旋回および/または移動方向の変更を含むことができる。場合によっては、動作方向に垂直落下が存在する場合、ロボット200によって停止および/または回避操縦を実行することができる。この場合、診断は、センサなどによる垂直落下の検出を含めることができる。そのようなセンサは、図2Aを参照して後述するセンサユニット212のセンサとすることができる。場合によっては、センサは、ロボット200の周囲の空間までの距離を検出できる。空間が増加する場合、それは、勾配、崖、下り階段、落下、および/または任意の垂直変化の少なくとも一部を示すことができる。場合によっては、急激な垂直落下は、損傷の増加を引き起こすことがあるため、問題になる可能性がある。ただし、場合によっては、垂直勾配が損傷を引き起こす可能性もある。
別の例として、制御システムは、ステアリングの異常を検出するように構成できる。制御システムがステアリングの不正確さを検出すると、所定の停止をトリガーできる。診断は、ロボット200のステアリングの特性を検出するために、図2Aを参照して後述するセンサユニット212のセンサなどの1つ以上のセンサからのデータを含むことができる。場合によっては、測定の違いを検出するために複数のセンサを使用できるが、これはステアリングの不正確さの少なくとも一部を示す場合がある。場合によっては、様々なタイプのデータを比較して、位置決めとマッピングに関連するセンサデータ、ジャイロスコープ、加速度計など、ステアリングの不正確さを検出できる。
別の例として、制御システムは、1つ以上の高レベルおよび低レベルアーキテクチャ(例えば、コントローラ、ソフトウェア、システム、センサなど)間の通信のために構成できる。診断は、高レベルコントローラから低レベルコントローラへ受信したモータコマンドのステータスの検出を含むことができる。例えば、このようなステータス検出は、センサの取得と更新されたモータコマンドの到達との間の遅延を検出できる。遅延が所定の最大しきい値を超えると、診断が失敗する可能性があり、ロボット200の所定の停止を実施できる。例えば、所定の最大遅延しきい値は、センサの解像度、センサの感度、ロボット200の機能の重要性、環境の危険、ロボット200の速度、ロボット200が機能しているときの典型的な遅延の経験的な決定、および/またはその他の要因から決定される時間量とすることができる。例えば、そのような所定の最大遅延しきい値は、100、200、300、400、500、600、またはそれ以上のミリ秒とすることができる。
別の例として、制御システムは、本開示で説明される任意の所定の停止を実行することなどにより、ロボット200の停止のために構成することできる。診断を使用して、ロボット200が停止、オフ、および/または電力が失われたときにブレーキが掛かっていることを検出できる。したがって、制御システムは、診断が停止コマンド(例えば、オペレータから(例えば、ユーザインターフェースユニット218を介して)、遠隔制御(例えば、緊急停止コマンドなどの停止ボタン)、またはロボット200のコントローラ)を検出および/または受信すると、停止するように構成できる。別の例として、制御システムは、診断がロボット200の電力を失ったことを検出したときに停止するように構成することができる。
別の例として、人の検出および/または回避のために制御システムを構成できる。例えば、制御システムは、人がいつ周囲にいるか、および/またはロボット200に対するそのような人の位置、向き、および/または姿勢を識別することができる。場合によっては、制御システムは、ロボット200が人の周囲で操縦できるようにする方向コマンドを発行できる。場合によっては、制御システムは、ロボット200の所定の停止を実施できる。診断は、ロボット200の周囲のエリア(例えば、ゾーン)内のロボットなどの物体を検出するように構成されたセンサユニット212のセンサなどのセンサを含むことができる。診断は、ロボット200のセンサの遅延、エラー、および/または問題を検出することもでき、これは、ロボット200の所定の停止をもたらす。
図2Aは、本開示のいくつかの動作原理による、ロボット200の機能ブロック図である。図2Aに例示されるように、ロボット200は、コントローラ204、メモリ202、ユーザインターフェースユニット218、センサユニット212、アクチュエータユニット220、および通信ユニット222、ならびに他のコンポーネントおよびサブコンポーネント(例えば、それらのいくつかは例示されなくてもよい)を含むことができる。図2Aには特定の実装が例示されているが、本開示の内容を考慮すれば当業者には容易に明らかになるであろうように、アーキテクチャは特定の実装において変更され得ることが理解される。本明細書で使用される場合、ロボット200は、本開示に記載される任意のロボットの少なくとも一部を表すことができる。ロボット200は、方法100などの、本開示で説明されるシステムおよび方法のうちの1つ以上をインスタンス化し得る。
コントローラ204は、ロボット200によって実行される様々な動作を制御することができる。コントローラ204は、1つ以上のプロセッサ(例えば、マイクロプロセッサ)および他の周辺機器を含むことができる。本明細書で使用される場合、プロセッサ、マイクロプロセッサ、および/またはデジタルプロセッサは、限定することなく、デジタル信号プロセッサ(「DSP」)、縮小命令セットコンピュータ(「RISC」)、汎用(「CISC」)プロセッサ、マイクロプロセッサ、ゲートアレイ(例えば、フィールドプログラマブルゲートアレイ(「FPGA」))、プログラマブルロジックデバイス(「PLD」)、再構成可能コンピュータファブリック(「RCF」)、アレイプロセッサ、セキュアマイクロプロセッサ、専用プロセッサ(例えば、ニューロモルフィック(neuromorphic)プロセッサ)、および特定用途向け集積回路(「ASIC」)などの、任意の種類のデジタル処理デバイスを含むことができる。そのようなデジタルプロセッサは、単一の一元的な集積回路ダイに含まれてもよく、または複数のコンポーネントにわたって分散されてもよい。
コントローラ204は、メモリ202と操作可能におよび/または通信可能に結合されてもよい。メモリ202は、読み取り専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、不揮発性ランダムアクセスメモリ(「NVRAM」)、プログラマブル読み取り専用メモリ(「PROM」)、電気的消去可能プログラマブル読み取り専用メモリ(「EEPROM」)、ダイナミックランダムアクセスメモリ(「DRAM」)、モバイルDRAM、シンクロナスDRAM(「SDRAM」)、ダブルデータレートSDRAM(「DDR/2SDRAM」)、拡張データ出力(「EDO」)RAM、高速ページモードRAM(「FPM」)、マイクロコントローラ(例えば、STM)、低遅延DRAM(「RLDRAM」)、スタティックRAM(「SRAM」)、フラッシュメモリ(例えば、NAND/NOR)、メモリスタメモリ、擬似スタティックRAM(「PSRAM」)などを含むが、これらに限定されない、デジタルデータを格納するように構成された任意のタイプの集積回路または他の記憶デバイスを含むことができる。メモリ202は、コントローラ204に命令およびデータを提供することができる。例えば、メモリ202は、ロボット200を操作するために処理装置(例えば、コントローラ204)によって実行可能な、複数の命令を上に格納させた非一時的なコンピュータ可読記憶装置および/または媒体であってもよい。場合によっては、命令は、処理装置によって実行されたときに、処理装置に本開示に記載される様々な方法、特徴、および/または機能を実行させるように構成され得る。したがって、コントローラ204は、メモリ202内に格納されたプログラム命令に基づいて論理演算および/または算術演算を実行することができる。場合によっては、メモリ202の命令および/またはデータは、一部がロボット200内にローカルに位置し、一部がロボット200から遠隔に位置する(例えば、クラウド、サーバ、ネットワークなど)ハードウェアの組み合わせに格納できる。
いくつかの実装態様では、センサユニット212は、ロボット200内および/またはロボット200の周りの特性を検出することができるシステムおよび/または方法を含むことができる。センサユニット212は、複数のセンサおよび/またはセンサの組み合わせを含むことができる。センサユニット212は、ロボット200の内部もしくは外部にあり、かつ/または部分的に内部および/もしくは部分的に外部のコンポーネントを有するセンサを含むことができる。場合によっては、センサユニット212は、ソナー、光検出および測距(「LIDAR」)センサ、レーダ、レーザ、カメラ(ビデオカメラ(赤青緑(「RBG」)カメラ、赤外線カメラ、三次元(「3D」)カメラ、サーマルカメラなど)を含む)、飛行時間(「TOF」)カメラ、構造化光カメラ、アンテナ、動き検出器、マイクロフォン、ならびに/または当技術分野で知られている他の任意のセンサなどの、1つ以上の外受容センサを含むことができる。いくつかの実装態様では、センサユニット212は、生の測定値(例えば、電流、電圧、抵抗、ゲートロジックなど)、および/または変換された測定値(例えば、距離、角度、障害物内の検出点など)を収集することができる。場合によっては、測定値は、集約および/または要約することができる。センサユニット212は、少なくとも部分的には測定値に基づいてデータを生成することができる。そのようなデータは、マトリックス、アレイ、待ち行列、リスト、アレイ、スタック、バッグなどのデータ構造に格納することができる。いくつかの実装態様では、センサデータのデータ構造は、画像と呼ぶことができる。
いくつかの実装態様では、センサユニット212は、ロボット200の内部特性を測定することができるセンサを含むことができる。例えば、センサユニット212は、温度、動力レベル、ステータス、および/またはロボット200の任意の特性を測定することができる。場合によっては、センサユニット212は、ロボット200の走行距離測定を決定するように構成することができる。例えば、センサユニット212は、加速度計、慣性測定ユニット(「IMU」)、走行距離計、ジャイロスコープ、スピードメータ、カメラ(例えば、視覚的走行距離測定を使用する)、時計/タイマなどのセンサを含むことができる、固有受容センサを含むことができる。センサユニット212は、車輪の回転および/または速度を測定するように構成されたホイールエンコーダ、ステアリングコラムの角度を決定するように構成されたステアリングエンコーダなど、ロボット200の特性を感知するように構成されたエンコーダを含むことができる。走行距離測定は、ロボット200の自律ナビゲーションおよび/または自律アクションを容易にする。この走行距離測定は、初期の場所に対するロボット200の位置を含むことができる(例えば、位置は、ロボットの場所、変位、および/または向きを含み、本明細書で使用される姿勢という用語と互換的である場合がある)。そのようなデータは、マトリックス、アレイ、待ち行列、リスト、アレイ、スタック、バッグなどのデータ構造に格納することができる。いくつかの実装態様では、センサデータのデータ構造は、画像と呼ぶことができる。場合によっては、センサユニット212のセンサは、安全性評価されるものおよび/または安全性評価されないものとすることができる。本開示のシステムおよび方法の利点は、たとえセンサが安全性評価されないものであっても、ロボットの安全な操作を可能にすることができることである。ロボット200を較正および/またはセットアップするために、環境内および/または製造/組立中などに基準物体を使用することができる。
いくつかの実装態様では、コントローラ204は、ロボット200をマップ内で位置特定するようにセンサデータをセンサユニット212から受信することができるマッピングおよび/または位置特定ユニットを含むことができる。いくつかの実装態様では、マッピングおよび位置特定ユニットは、ロボット200がそれ自体をマップの座標内および/または場所(例えば、初期化場所、終了場所、ビーコン、基準点など)に対して位置特定することを可能にする場所特定システムおよび方法を含むことができる。マッピングおよび/または位置特定ユニットはまた、グラフおよび/またはマップを生成することなどによって、ロボット200によって取得された測定値を処理することができる。
いくつかの実装態様では、ロボット200は、学習プロセスを通じてルートをマッピングおよび学習することができる。例えば、オペレータは、環境内のルートに沿ってロボット200を操作することにより、ロボット200に環境内でどこを移動するかを教えることができる。センサユニット212からのセンサデータの組み合わせにより、ロボット200は、ロボット200の相対的な姿勢および環境内のアイテムの姿勢を判定することができる。このようにして、ロボット200は、ロボット200が環境内のどこにいるか、ロボット200がどこを移動したかを判定することができる。ロボット200は、その後、ロボット200がどこを移動したかを思い出し、実質的に同様の方法で移動することができる(ただし、その後の移動では、特定の障害物を回避する可能性がある)。ロボットは、ネットワーク302(図3を参照して説明される)などを介して、そのような経験を互いに共有することができる。いくつかの実装態様では、マッピングおよび位置特定ユニットは、限定されるものではないが、経路を受信および/または決定することと、経路の調整を行うことと、アクチュエータコマンドを決定することと、を含む、方法100を実行するために使用され得る。
いくつかの実装態様では、ユーザインターフェースユニット218は、ユーザがロボット200と対話できるように構成することができる。例えば、ユーザインターフェース218は、タッチパネル、ボタン、キーパッド/キーボード、ポート(例えば、汎用シリアルバス(「USB」)、デジタルビジュアルインターフェース(「DVI」)、Display Port、E−Sata、Firewire、PS/2、シリアル、VGA、SCSI、オーディオポート、高品位マルチメディアインターフェース(「HDMI」)、パーソナルコンピュータメモリカード国際協会(「PCMCIA」)ポート、メモリカードポート(例えば、セキュアデジタル(「SD」)およびminiSD)、および/もしくはコンピュータ読取可能媒体用のポート)、マウス、ローラーボール、コンソール、バイブレーションフィードバック、オーディオトランスデューサ、ならびに/または、無線で結合されているか有線で結合されているかにかかわらず、ユーザがデータおよび/もしくはコマンドを入力および/もしくは受信するための任意のインターフェースを含むことができる。ユーザは、音声コマンドまたはジェスチャーを介して対話できる。ユーザインターフェースユニット218は、限定することなく、液晶ディスプレイ(「LCD」)、発光ダイオード(「LED」)ディスプレイ、LED LCDディスプレイ、面内スイッチング(「IPS」)ディスプレイ、陰極線管、プラズマディスプレイ、高精細(「HD」)パネル、4Kディスプレイ、網膜ディスプレイ、有機LEDディスプレイ、タッチスクリーン、表面、キャンバス、ならびに/または視覚的表現のための当技術分野で既知の任意のディスプレイ、テレビ、モニタ、パネル、および/もしくはデバイスを含むことができる。いくつかの実装態様では、ユーザインターフェースユニット218は、ロボット200の本体上に配置することができる。いくつかの実装態様では、ユーザインターフェースユニット218は、ロボット200の本体から離れて配置することができるが、(例えば、送信機、受信機、および/もしくはトランシーバを含む通信ユニットを介して)ロボット200と直接、または(例えば、ネットワーク、サーバ、および/もしくはクラウドを通じて)間接的に通信可能に結合することができる。いくつかの実装態様では、ユーザインターフェースユニット218は、例えば搭乗者またはロボットの周辺の人に情報を提供するために、ロボットの近位に位置する表面(例えば床)上に画像の1つ以上の投影を含むことができる。情報は、前方、左、右、後方、斜め、および/または他の方向への動きの表示など、ロボットの将来の動きの方向であり得る。場合によっては、そのような情報は矢印、色、記号などを利用できる。
いくつかの実装態様では、通信ユニット222は、1つ以上の受信機、送信機、および/またはトランシーバを含むことができる。通信ユニット222は、BLUETOOTH(登録商標)、ZIGBEE(登録商標)、Wi−Fi、誘導ワイヤレスデータ伝送、無線周波数、無線伝送、無線周波数識別(「RFID」)、近距離通信(「NFC」)、赤外線、ネットワークインターフェース、3G(3GPP/3GPP2)などの携帯電話技術、高速ダウンリンクパケットアクセス(「HSDPA」)、高速アップリンクパケットアクセス(「HSUPA」)、時分割多重アクセス(「TDMA」)、符号分割多元接続(「CDMA」)(例えば、IS−95A、広帯域符号分割多元接続(「WCDMA」)など)、周波数ホッピングスペクトラム拡散(「FHSS」)、直接シーケンス拡散スペクトル「DSSS」)、移動体通信用のグローバルシステム(「GSM」)、パーソナルエリアネットワーク(「PAN」)(例えば、PAN/802.15)、マイクロ波アクセスの世界的な相互運用性(「WiMAX」)、802.20、ロングタームエボリューション(「LTE」)(例えば、LTE/LTE−A)、時分割LTE(「TD−LTE」)、グローバル移動体通信システム(「GSM」)、狭帯域/周波数分割多元接続(「FDMA」)、直交周波数分割多重(「OFDM」)、アナログセルラ、セルラデジタルパケットデータ(「CDPD」)、衛星システム、ミリ波またはマイクロ波システム、音響、および赤外線(例えば、赤外線データ結合(「IrDA」))、のような送信プロトコル、ならびに/またはワイヤレスデータ伝送の任意の他の形式を送信/受信するように構成することができる。
本明細書において使用される際、ネットワークインターフェースは、限定するわけではないが、ファイヤワイヤ(FireWire)(例えば、FW400、FW800、FWS800T、FWS1600、FWS3200など)、ユニバーサルシリアルバス(「USB」)(例えば、USB1.X、USB2.0、USB3.0、USB Type−Cなど)、イーサネット(例えば、10/100、10/100/1000(ギガビットイーサネット)、10−Gig−Eなど)、同軸ケーブルマルチメディア協会(「MoCA」)、コアックスシーズ(Coaxsys)(例えば、TVNET(商標))、無線周波数チューナー(例えば、インバンド(in−band)またはOOB、ケーブルモデムなど)、Wi−Fi(802.11)、WiMAX(例えば、WiMAX(802.16))、PAN(例えば、PAN/802.15)、セルラ(例えば、3G、LTE/LTE−A/TD−LTE/TD−LTE、GSMなど)、IrDAファミリなどを含む、コンポーネント、ネットワーク、またはプロセスとの任意の信号、データ、もしくはソフトウェアインターフェースを含むことができる。本明細書において使用される際、Wi−Fiは、IEEE 802.11規格、IEEE 802.11規格の変形、IEEE 802.11規格に関連する規格(例えば、802.11a/b/g/n/ac/ad/af/ah/ai/aj/aq/ax/ay)、および/または他の無線規格のうちの1つ以上を含むことができる。
通信ユニット222はまた、信号線および接地を有する任意のケーブルなどの、有線接続を介した伝送プロトコルを利用して信号を送信/受信するように構成することができる。例えば、そのようなケーブルは、イーサネットケーブル、同軸ケーブル、ユニバーサルシリアルバス(「USB」)、FireWire、および/または当技術分野で既知の任意の接続を含むことができる。そのようなプロトコルは、コンピュータ、スマートフォン、タブレット、データ取り込みシステム、移動体通信ネットワーク、クラウド、サーバなどの外部システムと通信するために通信ユニット222によって使用することができる。通信ユニット222は、数字、文字、英数字、および/または記号を含む信号を送信および受信するように構成することができる。場合によっては、128ビットもしくは256ビットキーなどのアルゴリズムおよび/またはAdvanced Encryption Standard(「AES」)、RSA、Data Encryption Standard(「DES」)、Triple DESなどの規格に準拠する他の暗号化アルゴリズムを使用して、信号を暗号化することができる。通信ユニット222は、ステータス、コマンド、および他のデータ/情報を送信および受信するように構成することができる。例えば、通信ユニット222は、ユーザがロボット200を制御することを可能にするためにユーザオペレータと通信することができる。通信ユニット222は、ロボット200がデータ、ステータス、コマンド、および他の通信をサーバに送信することを可能にするために、サーバ/ネットワーク(例えば、ネットワーク)と通信することができる。サーバはまた、ロボット200を遠隔的に監視および/または制御するために使用することができるコンピュータ(複数可)および/またはデバイス(複数可)に通信可能に結合することができる。通信ユニット222はまた、ロボット200用のサーバから更新(例えば、ファームウェアまたはデータ更新)、データ、ステータス、コマンド、および/または他の通信を受信し得る。
アクチュエータ220は、場合によってはタスクを実行するために、作動させるために使用される任意のシステムを含むことができる。例えば、アクチュエータ220は、駆動される磁石システム、モータ/エンジン(例えば、電気モータ、燃焼エンジン、蒸気エンジン、および/もしくは当技術分野で既知の任意のタイプのモータ/エンジン)、ソレノイド/ラチェット(ratchet)システム、圧電システム(例えば、インチワーム(inchworm)モータ)、磁歪素子、ジェスティキュレーション(gesticulation)、ならびに/または当技術分野で既知の任意のアクチュエータを含むことができる。いくつかの実装態様において、アクチュエータユニット220は、推進を動力化するなど、ロボット200の動きを可能にするシステムを含むことができる。例えば、動力推進は、ロボット200を前方もしくは後方に移動させることができ、かつ/または少なくとも部分的にロボット200を旋回させる(例えば、左、右、および/もしくは他の任意の方向)のに使用することができる。例示として、アクチュエータ220は、ロボット200が移動しているか停止しているかを制御し、および/またはロボット200がある場所から別の場所にナビゲーションすることを可能にする。
図2Aに関して説明したユニットのうちの1つ以上(メモリ202、コントローラ204、センサユニット212、ユーザインターフェースユニット218、アクチュエータユニット220、通信ユニット222、および/または他のユニットを含む)は、統合システムなどにおいてロボット200に統合することができる。しかしながら、いくつかの実装では、これらのユニットのうちの1つ以上は、取り付け可能なモジュールの一部であり得る。このモジュールは、既存の装置がロボットとして挙動するが依然として人により操作できるように、自動化するために既存の装置に取り付けることができる。そのような場合、ユニットは、オペレータが危険を回避するのを支援するための追加レベルの安全として機能し得る。あるいは、既存の装置は、本明細書で記載されるユニットによって制御され、自律的に動作するように構成することができる。したがって、ロボット200に関して本開示で記載されている特徴は、既存の装置に取り付けることができ、および/または統合システムにおいてロボット200に統合することができるモジュール内でインスタンス化することができる。さらに、場合によっては、当業者であれば、本開示の内容から、本開示で説明される特徴の少なくとも一部もクラウド、ネットワーク、および/またはサーバなどで遠隔で実行できることを理解するであろう。
図2Bは、図2Aに示されるようなロボット200の少なくとも一部の実装態様の機能ブロック図であり、そこでは、ロボット200が、本開示のいくつかの実装態様によるロボットモジュール252が取り付けられたモバイルプラットフォームである。モジュール252は、コントローラ204を含むことができ、センサユニット212のセンサであり得るセンサ212Aおよび212Bなどのロボット200のセンサに通信可能および/または動作可能に結合され得る。さらに、コントローラ204Aなどのコントローラ204と実質的に同様の追加のコントローラがあり得、これは、モータドライブ、エンコーダ、ボタン、バンパー、ホーン、および/または任意の他の要素など、ロボット200の様々な部分に通信可能および/または動作可能に結合され得る。
モジュール252は、コントローラ204と実質的に同様であるが、モバイルプラットフォームの様々な要素を制御することができる車両コントローラ250に通信可能および/または動作可能に結合され得る。この車両コントローラ250は、ロボット200が基づくモバイルプラットフォームの非自律バージョンに存在し得る。したがって、モジュール252は、そのモバイルプラットフォームに取り付けられ、車両コントローラ250に通信可能および/または動作可能に結合され、および/またはロボット200を形成することができる。例えば、車両コントローラ250は、モバイルプラットフォームの様々なコンポーネントに通信可能および/または動作可能に結合され得る。このようなコンポーネントとして、1つ以上の溶液ポンプ、水タンク、ホーン、ビーコン、非常停止、ユーザインターフェース(ダッシュボードなど)、モビリティコントロール(例えば、ブレーキペダル、ガスペダル、キー、ステアリングホイールなど)が挙げられる。したがって、車両コントローラ250によって制御される少なくともいくつかの機能は、コントローラ204および/またはコントローラ204Aによって制御され得る。
図2Cは、本明細書に説明されるような制御モジュール252および関連ユニットを備えた乗用床清掃機の表示を示す。制御モジュール252に関連付けられたセンサは、慣性運動ユニット212A(図示せず)、3Dカメラ212B〜3D、2Dカメラ212B〜2D、およびLiDAR212Cを含む。特に、センサは、以下でより詳細に説明するように環境を感知できるように、制御モジュール252から離れた床清掃機に配置されてもよい。開始/一時停止ボタン254は、制御モジュール252をオン、オフ、および/または一時停止することができる。制御モジュール252はまた、ロボットを駆動するモータアンプモジュール256も制御する。挿入図に示されているのは、ダッシュボードの表示であり、ダッシュボードには、タッチスクリーンモジュール218と車両インターフェースボード258が搭載されており、オペレータが制御モジュールと対話してプログラムできるようになっている。
図2Cはまた、エンコーダ260、非常停止262、車両コントローラ250、およびダッシュボード上の車両制御パネルを含む、相手先ブランド製造会社(OEM)によって設置された床清掃機の特徴も示している。これらの特徴は、制御モジュール252が有効になっていないときに床清掃機を制御するために使用できる。制御モジュールを有効にすると、これらの特徴のうちの1つ以上を制御し得る。例えば、車両コントローラ250によって制御される少なくともいくつかの機能は、コントローラ204および/またはコントローラ204Aによって制御され得る。特に、床清掃機ロボットが運転者なしで自律的に動作する場合、ロボット200が動くことを可能にするために、いくつかの非常停止262が制御モジュールによってオーバーライドされる必要がある場合がある。
2つの2次元LiDARを使用して、ロボットの前にいる人または他の物体を検出する。1つのLiDARは、ロボットの前面下部近くの地面に平行に取り付けられ、もう1つのLiDARは、ロボットを見下ろす前面上部に取り付けられる。LiDARの取り付けは、ロボットのサイズ、速度、停止距離などの要因に依存する。例えば、下側LiDARは、約18cmなどの約20cm未満の高さで地面に平行に取り付けられ、他方の(上側)LiDARは、最高速度で視野が停止距離をわずかに超えて地面と交差するように見下ろすロボットの前面上部エリア(約45〜60°傾斜、または約50°傾斜など)に取り付けられる。例えば、0.8mがロボットの停止距離である場合、上側LiDARは、ロボットの前面から0.9mの方向に向けられる。下側LiDARは、ロボットの真正面に向けられてもよい。LiDARは、図2D〜2Fに示すように、ロボットの前面と側面に重複する検知範囲を提供する。上側(傾斜した/斜めになった)LIDARは、地面(床)を「基準ターゲット」として使用する。2つのLiDARの指向ベクトル(破線)は、ロボットの停止距離(両方向矢印)よりもわずかに長い距離(10〜20%長いなど)で交差することが望ましく、ロボットの停止距離の範囲を冗長して決定する三角測量を提供する。図2Fに示すように、人または物体がロボットの経路内にある場合、両方のLiDARは視覚障害物を感知し、人がロボットの停止距離に近づくと三角測量が中断される。制御モジュール252は、以下により詳細に説明するように、人を回避するために1つ以上の手順を開始する。任意選択的に、追加のLiDARをロボットの背面に配置して、ロボットが逆方向に動作しているときに測距を提供してもよい(図示せず)。
図2Gは、センサと制御モジュール252との動作上の接続性の概略図を示す。LiDARは、イーサネット経由でSTMマイクロコントローラ(図2Bおよび2FのMCU)に直接接続してもよい。診断/テストは、MCUに実装されている。LiDAR診断が失敗すると、MCUは、モータドライバに停止コマンドを送信する。LiDARには、SICKまたはHokoyoから入手可能な物など、任意の市販のLIDARを含めることができる。一実装態様では、SICK TiM 5xx LiDARを使用してもよい。イーサネットによってCPUおよび/またはMCUにカメラを接続してもよく、感知情報を制御モジュールに追加してもよい。
図2Hに模式的に示しているように、サブシステムCアーキテクチャ(EN 62061のような)で所望のフォールトトレランスが実現される:Psensor’s dangerous failure=λTiM X(1−DC)、式中、DCは、センサの危険検出障害率(λD detected)とTiM LiDARの合計危険障害率(λD total):DC=λD detected/λD totalとの間の比率である。
図21に示すように、危険検出用の冗長アーキテクチャ(EN 62061のようなサブシステムD)は、BCコントローラ(複数可)への入力を提供する2つのLiDAR(下側平行の物および上側斜めの物)を含んで、ロボットの保護エリア内の人または物体の存在を検出する。人検出ロジックはクロスチェックされる。各LiDAR/入力について、診断カバレッジ(BCコントローラに実装)により、所望の信頼性が確保される。
LiDARのセンサ障害形態としては、例えば次の物が挙げられる。
LiDARがデータを送信しておらず、ホストコントローラがデータを遅延して受信している。
LiDARのソフトウェア/ファームウェアが、同じデータを繰り返し送信し続けている。
LiDARTiM 5xxの測距データが破損している(センサの誤動作など)。
LiDARからホストコントローラへの伝送でデータが破損している。
ロボット上でLiDARの位置がずれている。
LiDARが、視野内の人の有効な測距データを生成/報告していない。
診断は、表1にまとめられているように、センサの障害を検出し、センサが正しく動作していることを検証するように設計されている。
図2Cに示すように、1つのLiDARは高さ20cm未満で地面に平行に取り付けられており、もう一方のLiDARは、ロボットの前面上部エリアに角度を付けて(例えば、約50°の傾斜で)取り付けられている。下側の平行なLiDARと上側の傾斜したLiDARとの両方を使用して、ロボットの前方の障害物や人を検出できる。信頼性の高い、または安全性が重要な物体検出のために、制御システムは確実に動作し、障害物を検出する能力を備えている必要がある。LiDARは、反射率が10%の物体に対して最大8mの検出範囲の仕様を有してもよい。ただし、提案された構成では、制御システムは、物体および/または人が覆われている材料の反射特性に関係なく、物体および/または人を検出し、ロボットを停止させることができる。例えば、反射率1.8%の布を着た人がロボットの動作方向に立っている場合、制御システムはその人を検出し、ロボットを安全に停止させる。
これは、上側LiDARがロボットの経路にいる人または物体ではなく地面(床)を感知しているからである。制御システムは、冗長性、2つのLiDAR、および地面を基準ターゲットとして使用する。上側LiDARは、ロボットの前方の地面を狙って感知し、LiDARが地面を感知していない場合はロボットを停止させるように構成されている。上側LiDARは、事前に設定された/事前に構成された地面の輪郭を検出するように構成されている。例えば、LiDARはその前方に平らな地面を感知することを予想している。コントローラは、上側LiDARが地面を基準として使用することで予想した範囲よりも短い範囲を感知した場合に、非予想範囲(non−expected range)がその経路内の人または物体などの障害物を示していると判断するように構成されている。コントローラは、上側LiDARが地面を基準として使用することで予想した範囲よりも長い範囲を感知した場合に、予想外の範囲がその経路内の階段などの垂直方向の隙間または窪みを示していると判断するように構成されている。地面の感知は、カメラセンサを監視し、予想した地面の視覚画像と比較することによって強化してもよい。上側LiDARの値を読み取る制御システムは、地面が見えない場合、すなわち地面の輪郭の事前に設定された値を読み取っていない場合に、ロボットを停止させるように構成されている。この、地面の基準値を読み取らない事態は、ロボットの前方に目に見える障害物または人が存在する場合、
および/または
垂直方向の隙間、例えば下り階段、ドッキングゲート;などが存在する場合、および/または
LiDARが認識/検出できない物体/人物ロボットの前方に存在する場合に発生する可能性がある。
これらの全ての場合において、LiDARはロボットの前方の地面を認識/検出することに失敗し、それにより制御システムはロボットを停止させる。
追加の冗長性のために、制御システムは、図2Fに示す三角測量の破断部を示すように、下側LiDAR(地面に平行に取り付けられたもの)と上側LiDAR(地面を見るために傾斜した/斜めに取り付けられたもの)からの測距データの不一致を検出するように構成できる。制御システムは、LiDARからの測距データに矛盾がある場合に、ロボットを停止させるように構成できる。
いくつかの実装態様では、ロボット200は、ネットワークに通信可能に結合することができる。図3は、本開示のいくつかの実装態様による、ネットワーク302と通信可能におよび/または操作可能に結合されたロボット200を含むシステム300の機能ブロック図である。ネットワーク302は、限定された、もしくは定義された期間、または無期限もしくは未定義の期間にわたって、仮想マシン、プロセス、または他のリソースをインスタンス化するために呼び出すことができる、ハードウェア、ソフトウェア、サービス、および/またはリソースの集合を含むことができる。ネットワーク302は、インターネットにアクセスできるデバイスおよび/またはサーバを含む、複数のデバイス、システム、および/またはサーバと通信可能におよび/または操作可能に結合することができる。アクセスポイント304Aおよび304Bなどのアクセスポイントのうちの1つ以上は、コンピュータ、モバイルデバイス、タブレット、スマートフォン、携帯電話、携帯情報端末、ファブレット、電子書籍リーダー、スマートウォッチ、セットトップボックス、インターネットストリーミングデバイス、ゲーム機、スマート家電、ならびに/またはインターネットおよび/もしくは任意のネットワークプロトコルにアクセスできる任意のデバイスを含むがこれらに限定されない、デバイス、システム、および/またはサーバであり得る。2つのアクセスポイントが例示されているが、所望に応じてより多くのまたはより少ないアクセスポイントがあってもよい。
本明細書で使用される場合、ネットワーク302は操作することができる、すなわち、ネットワーク302は、情報を受信、処理、および/または送信することができる、内蔵コンピュータを有することができる。これらのコンピュータは、自律的におよび/または1人以上の人間のオペレータによる制御下で、動作することができる。同様に、ネットワーク302は、ネットワーク302を操作するために同様に使用することができる、アクセスポイント(例えば、アクセスポイント304Aおよび304B)を有することができる。アクセスポイントは、情報を受信、処理、および/または送信することができる、コンピュータおよび/または人間のオペレータを有することができる。したがって、本明細書におけるネットワーク302の動作への言及は、人間のオペレータおよび/またはコンピュータのオペレータに適用することができる。
いくつかの実装態様では、ロボット200と実質的に同様の1つ以上のロボットは、ネットワーク302と通信可能におよび/または操作可能に結合することができる。これらのロボットのそれぞれは、ステータス、コマンド、および/または動作データをネットワーク302に通信することができる。ネットワーク302はまた、ステータス、コマンド、および/または動作データを、ロボットのうちの1つ以上に格納し、および/または通信することができる。場合によっては、ネットワーク302は、ロボット200および/または他のロボットからのマップ、センサデータ、および他の情報を格納することができる。次いで、ネットワーク302は、接続された複数のロボットの経験を互いに共有することができる。さらに、情報の集約により、ネットワーク302は、機械学習アルゴリズムを実行して、ロボットの性能を改善することができる。
当業者であれば、本開示の内容から、本開示の一部がロボット200、ネットワーク302、ならびに/またはアクセスポイント304Aおよび/もしくは304Bによって実行され得ることを理解するであろう。特定の例は、ロボット200、ネットワーク302、ならびに/またはアクセスポイント304Aおよび/もしくは304Bのうちの1つまたは複数を参照して説明され得るが、例の特徴は、実質的に同様の結果を達成するようにロボット200、ネットワーク302、ならびに/またはアクセスポイント304Aおよび/もしくは304Bの間に分散することができることが理解されるであろう。
いくつかの実装態様では、制御システムは、安全性が評価されていない(例えば、EN ISO 13849−1および/またはEN 62061などの規格で概説されているパフォーマンスレベルに準拠していない)センサおよび/またはコントローラを使用できる。しかしながら、本開示のシステムおよび方法を通じて、テストおよび診断を通じて、そのようなセンサから受信したデータ、およびコントローラ(複数可)間の通信および/または高レベルのアーキテクチャは、安全性評価されたものと実質的に同様に実行できる。場合によっては、ロボット200の動作の安全性に影響を与える可能性のあるシナリオ(テストおよび/または診断の失敗など)では、ロボット200を停止させることができる。有利なことに、これにより、ロボット200が既製の部品および/またはより新しい、より良い技術を使用できるようになる。
さらに、他の実装態様では、パフォーマンスレベルまたは安全性完全性レベル(Safety Integrity Level)は、安全性完全性レベル2を含むEN 62061に基づいている。このような実装態様には、ロボットデバイスの前方にいる人を検出し、デバイスが一連のアクションを決定および実行して、ロボットの現在のまたは保留中の動作方向で人にぶつからないようにすることが含まれる。場合によっては、デバイスは、デバイスが逆方向に動いているときにデバイスの後方にいる人を検出し、ぶつかることを避けるようにも構成されている。
診断は、目的の安全性完全性レベルを達成するために、本明細書で説明するコントローラで実施される。本明細書では、ロボットの経路内の人または物体を含む診断エラーが検出された場合にロボットを停止させるように構成されたコントローラおよびシステムの態様を開示する。
例示として、制御システムは、人、障害物、および/または崖を検出して回避するように構成できる。システムは、ロボット200の周囲のエリア(例えば、エリア122A〜122C)に障害物が存在する場合、所定の停止を発行することができる。例示として、ロボット200は、カテゴリ0の停止を実行することができ、これはロボット200のアクチュエータへの電力の即時の除去を含むことができる。そのような停止には、アクチュエータへの電力を再び有効にするためのオペレータの注意が含まれてもよい。そのようなカテゴリ0の停止は、ロボット200が動いている間にエリア122Aで障害物が検出された場合、および/またはセンサユニット212の1つ以上のセンサからのデータが破損した場合に実行できる。別の例として、ロボット200は、カテゴリ1の停止を実行することができ、これは、ロボット200のアクチュエータに利用可能な電力による制御された停止と、ロボットの停止時にそのような電力の除去を含むことができる。そのようなカテゴリ1の停止は、エリア122A内の障害物の検出に応答して、および/またはセンサユニット212のセンサからのデータが破損した場合に実行することができる。場合によっては、そのようなセンサデータには、ロボット200がナビゲーションのために頼ることができるLiDARデータおよび/または深度カメラデータを含めることができる。場合によっては、コントローラは、センサデータを高レベルアーキテクチャに中継できる。場合によっては、カテゴリストップ1は、他のアクチュエータ/システムへの電力が除去されたときに、ロボット200の特定のアクチュエータ/システムへの電力を保持できる。別の例として、カテゴリ2の停止は、ロボット200のアクチュエータで利用可能な修正された電力による制御された停止を含むことができる。そのようなカテゴリ2の停止は、センサユニット212のセンサからのデータが破損している場合、および/または高レベルアーキテクチャからのモータコマンドが破損および/または遅延している場合に使用することができる。有利なことに、そのようなシステムおよび診断は、人々の障害物および/または崖の周りのロボット200の安全な動作を可能にすることができる。
例えば、いくつかの実装態様では、制御システムは、データ取得のために構成されたセンサユニット212のセンサを含むことができる。センサは、バスの利用および/または通信ユニット222の通信などにより、センサデータの通信のための送信プロトコル(例えば、伝送制御プロトコル/インターネットプロトコル)を使用することができる。ロボットコントローラ(例えば、コントローラ204および/または204A)は、センサデータのステータスなどのセンサデータの診断を実行することができる。場合によっては、センサ自体で診断を実行できる。診断またはテストの結果、検出された問題(ロボット200で見つかった問題など)が発生しない場合、ロボットコントローラは高レベルのモータコマンドを処理/中継することができる。このようなセンサデータが破損したり、所定の最大遅延しきい値内で遅延したりした場合、コントローラは、カテゴリ0またはカテゴリ1の停止を発行できる。停止コマンドは、ロボット200の関連するアクチュエータを制御して停止を実行するコントローラに対して発行できる。有利なことに、そのようなシステムおよび診断により、ロボット200のナビゲーションで重要となり得るセンサの問題(および/または障害)の可能性の兆候がある場合、ロボット200を停止させることができる。
別の例として、ロボット200のロボットコントローラが、ロボット200が動いており、障害物がエリア122Aにあることを検出した場合、コントローラは、カテゴリ0またはカテゴリ1の停止を発行する必要があると判断できる。次いで、そのロボットコントローラは、ロボット200の関連するアクチュエータを制御して停止を実行するコントローラに停止コマンドを発行することができる。有利なことに、そのようなシステムおよび診断により、衝突を悪化させる前にロボット200を停止させることができる。
別の例として、ロボット200のロボットコントローラは、ロボット200の速度および/または角度に少なくとも部分的に基づいて、ロボット200の動作の速度および/または方向を導き出すことができる。場合によっては、ロボット200は、物体が検出された場合にロボット200が停止すべきエリア(例えば、エリア122B)を導き出すことができる。物体が検出されると、ロボット200は、カテゴリ0またはカテゴリ1の停止を発行する必要があると判断できる。次いで、そのロボットコントローラは、ロボット200の関連するアクチュエータを制御して停止を実行するコントローラに停止コマンドを発行することができる。有利なことに、そのようなシステムおよび診断により、ロボット200が動作の速度および方向を正確に決定できない場合にロボット200が損傷する可能性がある、制御の問題(および/または障害)の兆候がある場合にロボット200を停止させることができる。
別の例として、ロボット200のロボットコントローラは、センサデータを高レベルアーキテクチャに中継することができる。データは、高レベルアーキテクチャで使用してモータコマンドを生成でき、モータコマンドは、アクチュエータを制御するために(コントローラなどによって)利用できる。モータコマンドが破損していることが検出された場合、ロボット200の関連するアクチュエータを制御して停止を実行するコントローラに対し、カテゴリ0またはカテゴリ1の停止を発行することができる。有利なことに、そのようなシステムおよび診断により、不正確な動きをもたらし得るモータコマンドの問題がある場合、ロボット200を停止させることができる。場合によっては、そのような不正確な動きにより、ロボット200が衝突する可能性がある。
いくつかの実装態様では、動作方向を計算するように構成された冗長および/または独立したセンサを使用して、ステアリングの安全性を実現できる。診断ツールは、信頼性の高い動作を提供するか、そうでない場合はロボット200を停止させることができる。場合によっては、制御システムは、ロボット200のエリア(例えば、エリア122Aおよび/または停止エリア)を動的に変更するための動作方向情報を出力することができる。場合によっては、診断には、ロボット200が極限まで旋回(例えば、ステアリングホイールを両極端に旋回させる)してステアリングの較正を検証するという、ロボットコントローラのテスト(例えば、製造中または使用中での)を含めることができる。これらの極限には、事前定義された範囲を含めることができる。診断には、動作コマンドの異常の検出、(a)ステアリング位置(例えば、ステアリングコラムのエンコーダ)、(b)速度、および/または(c)IMU(例えば、ジャイロスコープ)からの角速度の比較、予想したステアリング位置と測定したステアリング位置との比較、および/または2つのIMU(例えば、ジャイロスコープ)など、同じ属性を測定する複数のセンサによって読み取られた値を比較すること、を含めることができる。例えば、角速度比較が不一致(例えば、距離および/または時間の所定のしきい値を超える不一致)を示す場合、ロボットコントローラは所定の停止を発行することができる。別の例として、予想したステアリング位置と測定したステアリング位置との比較が、所定のしきい値を超える不一致を見出した場合、ロボットコントローラは所定の停止を実行することができる。同様に、複数のセンサによって読み取られた値の比較で不一致が見つかった場合、ロボットコントローラは所定の停止を実行することができる。有利なことに、そのようなシステムおよび診断により、不正確な動きをもたらし得る操縦の問題がある場合、ロボット200を停止させることができる。場合によっては、そのような不正確な動きにより、ロボット200が衝突する可能性がある。
いくつかの実装態様では、実行時診断を使用して速度(移動速度など)の安全を実行できる。例えば、制御システムは、最大速度を強制し、ロボット200の自律動作中に手動制御を無効にし、および/またはロボット200が自律運転しているときの後方への動きを防ぐことができる。最大速度の設定には、較正/構成を含めることができる。この較正/構成には、ホイールエンコーダ(複数可)からの読み取り値に関する現在の速度コントローラ(および/またはエンコーダ)の製造ラインの較正の終了(および/または別の時点での較正/構成)を含めることができる。この較正/構成は、最大速度に対応する最大電流引き込みおよび/または送信電圧を識別するなどして、最大速度の設定を可能にする。診断には、ロボットコントローラを介したモータ(例えば、トラクションモータ)からの電流引き込みの読み取り、ホイールエンコーダデータの読み取り、コントローラから最大速度以下が発行されていることの確認、および/またはホイールエンコーダデータの最大電流引き込み(および/または電圧レベル)の測定(例えば、そのような電流引き込みおよび/または電圧レベルは、較正/構成に基づいて所定のしきい値を下回る)のうちの1つ以上を含めることができる。ロボットコントローラを介したモータからの電流引き込みが最大速度に関連付けられた電流引き込みを超える場合、ロボット200は、最大速度を超えたと判断できる。ホイールエンコーダデータが、ロボット200が最大速度に関連付けられた測定値(例えば、電圧、電流、速度値)よりも速く動いていることを示す場合、ロボット200は、最大速度を超えたと判断できる。コントローラから発行された確認速度が最大速度よりも大きい場合、ロボット200は、最大速度を超えたと判断できる。ホイールエンコーダデータの最大値電流引き込み(および/または電圧レベル)が最大速度に関連付けられた値を超える場合、ロボット200は、最大速度を超えたと判断できる。ロボット200が最大速度を超えていることをロボット200が検出するいくつかの場合において、ロボット200が最大速度を超えなくなるまでロボット200はマシンを減速させることができる。ロボット200が最大速度を超えていることをロボット200が検出するいくつかの場合において、ロボット200は、カテゴリ0またはカテゴリ1またはカテゴリ2の停止などの停止を発行することができる。ロボット200が所定の周波数で最大速度を超えるなど、ロボット200が速度の変動を検出するいくつかの場合(例えば、ロボット200が減速して速度を上げる場合)において、ロボット200は、カテゴリ0またはカテゴリ1またはカテゴリ2の停止などの停止を発行できる。有利なことに、そのようなシステムおよび診断は、ロボット200の速度が速すぎる(ロボット200の主導でおよび/または丘を下る結果して)になってしまう可能性のある速度の問題がある場合に、ロボット200が停止することを可能にする。場合によっては、そのような速度の問題により、衝突が発生したり、および/またはロボット200が衝突した場合により多くの損傷を与えたりする可能性がある。
別の例として、診断を使用して、センサ(複数可)とコントローラ(複数可)間および/またはコントローラ(複数可)間の通信の信頼できる動作を行うことができる。例えば、このような診断では、データの健全性および/または許容可能な遅延を監視できる。有利なことに、このようなデータの健全性および/または許容可能な遅延を確認することにより、ロボットシステムが同期され、ロボット200が期待どおりに動作することを保証できる。診断は、コントローラレベルで実装されて、シーケンス、タイムスタンプ、チェックサムなどのプロセスを含む、高レベルの健全性を確認する。このような診断は、センサデータの取得から更新されたモータコマンドの(例えば、高レベルからのコントローラからの)到達までの最大許容遅延を実装することができる。例えば、センサ時間は、起動時にホスト(例えば、高レベル)時間と同期できる。高レベルの時間とコントローラ(複数可)の時間も同期できる。センサからのデータパッケージには、各フレームのタイムスタンプおよび/またはframe_idおよび/またはチェックサムを含めることができる。センサからのデータを監視する診断には、デルタタイムスタンプ(例えば、frame_t−frame_t−1<所定のデルタ時間しきい値)、frame_idの増加の識別、チェックサムの確認、予想データの参照、データ変更の参照、および/または参照データの標準偏差が予想範囲内にあるかどうかの計算、のうちの1つ以上を含めることができる。
場合によっては、ロボット200は、データ(例えば、角度、速度など)、タイムスタンプ、チェックサム、および/またはID/シーケンス情報を含む高レベルのモータコマンドを生成することができる。タイムスタンプを取得することは、センサ(例えば、LiDAR、サイドカメラ、および/またはセンサユニット212からの任意の他のカメラ)からの最新データのタイムスタンプを記録することなどにより、センサからタイムスタンプ付きデータを取得することを含むことができる。このようなタイムスタンプは、モータコマンドの送信に使用できる。したがって、診断により、コントローラの時間(例えば、現在の時間)とモータコマンドを実行する時間との差を測定できる。この差が事前定義された時間差しきい値よりも小さい場合、ロボット200は、モータコマンドを実行できる。そうでない場合、ロボット200は、カテゴリ0、カテゴリ1、またはカテゴリ2の停止を実行することができる。有利なことに、このような診断により、ロボットシステムが同期され、ロボット200が期待どおりに動作していることを保証できる。
モータコマンドを受信するコントローラからの診断は、タイムスタンプが正しいかどうか(例えば、タイムスタンプが増加していること)、デルタタイムスタンプが所定のしきい値内にあるかどうか、および/またはチェックサムなどのデータパッケージの健全性を評価することを含むことができる。これらの条件のいずれかが当てはまらない場合、カテゴリ0、カテゴリ1、またはカテゴリ2の停止を実行するようにロボット200を構成することができる。
別の例として、制御システムは、センサの機能を含むことができる。これらのセンサは、センサユニット212のセンサを含む高レベルセンサおよび/または低レベルセンサとすることができる。例えば、センサには、関連するフォールトトレランスを有し得る。例示として、センサには関連する検出障害率がある。センサの障害形態として、データを送信しないことおよび/またはホストが遅延してデータを受信したこと、センサ上のソフトウェア/ファームウェアが破損したこと(例えば、センサの誤動作など)、データがセンサからホストコントローラへの送信で破損したこと、ロボット200上のセンサの位置がずれていること(例えば、衝撃の結果として)、および/またはセンサが有効なデータを生成/報告していないこと(例えば、センサの視野内で有効なデータを報告していない)、のうちの1つ以上を挙げることができる。有利なことに、そのような診断は、ロボット200が動作に依存しているデータをセンサが確実に提供することを保証できる。
この例では、特定の診断を実行できる。例えば、センサは、ロボット200の周囲の地面、およびその視野の小さな部分でロボット200の筐体を見ているように、ロボット200に取り付けることができる。ロボット200の筐体に対応する視野の領域は、ターゲットエリアと称することができる。ターゲットエリアで読み取られた距離と強度の値は、ターゲットデータと称することができる。ターゲットエリアとターゲットデータは、較正中にホストコンピュータに保存できる(例えば、製造終了較正プロセスの一部として)。較正(例えば、製造/較正プロセスの一部として)では、センサ設定、およびそのような設定の検証を適用できる。
起動時(および/または自律動作ごとに少なくとも1回)、その時間に、センサをホストコントローラに登録できる。例えば、センサデータパッケージでタイムスタンプを送信できる。センサデータのタイムスタンプは、センサで生成され、ホストコントローラに送信できる(例えば、データタイムスタンプはホストコントローラのドライバによって生成されない)。センサ内部の自己診断の一部としてエラーコードを生成できる。これらのエラーコードは、ホストコントローラに送信できる。保護したいロボットの周囲の視野の領域は、保護エリアと称することができる。
さらに、自律動作の前に少なくとも1回は、マシンの正しい動作を検証できる。例えば、オペレータはロボット200の周囲を歩いて、センサがそのオペレータを読み取っている/認識していることを検証することができる。この歩き回りは、オペレータがセンサの視野内にいるように実行することができる。場合によっては、オペレータは事前定義されたパターンで歩くことができる(例えば、ロボットを周回する)。有利なことに、事前定義されたパターンにより、複数のセンサがオペレータを読み取り、その機能を検証することができる。有利なことに、事前定義されたパターンは、ロボット200が較正するための既知のベースラインを提供することができる。
自律動作中に定期的に、センサのアプリケーション/設定を確認できる。現在の設定を所望のセンサ設定と照合するなどして、センサの構成/設定を検証できる。センサのエミッタがオンのときにセンサデータ値が予想どおりに変化すると、センサがオフになったり、および/または露光時間が短くなったりすることがある(例えば、通常の設定と比較して)。場合によっては、センサのエミッタをオフおよびオンにして、センサによって収集されたデータ値が予想どおりに変化することを検証できる。
制御ループの各フレームおよび/または各サイクルで、タイムスタンプおよび/またはチェックサムを確認できる。例えば、診断では、センサタイムスタンプが増加していること、現在と以前のセンサタイムスタンプの差が所定のしきい値を下回っていること、最後に受信したセンサデータがしきい値を下回ってからの経過時間(例えば、センサデータが希望どおりに到達した頻度)、および/またはセンサデータの完全性/チェックサム、のうちの1つ以上を確認することができる。
各フレームでは、センサデータの破損を確認すことができる。例えば、診断では、センサからのセンサデータパッケージ内の1つ以上のエラーコードを検索することができ、ターゲットエリアで読み取られた値はターゲットデータに一致し、および/またはターゲットデータの分散は小さいがゼロではない。
各フレームで、追加のヒューリスティックを確認できる。例えば、診断では、経時的なデータの完全性、空間的なデータの完全性、フレーム間のデータの許容可能な変更のアサート、センサが保護エリアに測距データを提供していることのアサート(例えば、反射物体がセンサに表示され得る)、および/またはセンサの位置がずれていないことのアサート(例えば、地面(例えば、較正)とターゲットエリアを使用することによって)、のうちの1つ以上を確認することができる。
本明細書で使用されるように、コンピュータおよび/またはコンピューティングデバイスは、これらに限定されないが、パーソナルコンピュータ(「PC」)およびミニコンピュータデスクトップ、ラップトップ、もしくはそれ以外、メインフレームコンピュータ、ワークステーション、サーバ、携帯情報端末(「PDA」)携帯型コンピュータ、埋め込み式コンピュータ、プログラマブルロジックデバイス、パーソナルコミュニケータ、タブレットコンピュータ、モバイルデバイス、ポータブルナビゲーションエイド、J2ME搭載デバイス、携帯電話、スマートフォン、パーソナル統合通信またはエンターテインメントデバイス、および/または、一組の命令を実行し、入力してくるデータ信号を処理することが可能である、任意の他のデバイスを含むことができる。
本明細書で使用される場合、コンピュータプログラムおよび/またはソフトウェアは、機能を実行する任意のシーケンスまたは人間もしくは機械認識可能なステップを含むことができる。そのようなコンピュータプログラムおよび/またはソフトウェアは、例えば、C/C++、C#、Fortran、COBOL、MATLAB(商標)、PASCAL、GO、RUST、SCALA、Python、アセンブリ言語、マークアップ言語(例えば、HTML、SGML、XML、VoXML)などを含む任意のプログラミング言語または環境、ならびにCommon Object Request Broker Architecture(「CORBA」)、JAVA(商標)(J2ME、Java Beansなどを含む)、バイナリランタイム環境(例えば、「BREW」)などのオブジェクト指向環境によって提供することができる。
本明細書で使用される場合、接続、リンク、および/またはワイヤレスリンクは、エンティティ間の情報交換を可能にする、(物理的か論理的/仮想的かにかかわらず)任意の2つ以上のエンティティ間の因果関係を含むことができる。
本開示のある特定の態様は、方法のステップの特定のシーケンスに関して記載されているが、これらの記載は、本開示のより広範な方法の単なる例示であり、特定の用途によって要求されるように変更され得ることが認識されるであろう。ある特定の状況下では、ある特定のステップが不要または任意選択になることがあり得る。さらに、開示された実装態様にある特定のステップもしくは機能が追加されてもよく、または2つ以上のステップの実行順序は並べ換えることができる。そのような変形は全て、本明細書に開示および特許請求されている開示内に包含されると見なされる。
上記の詳細な説明は、様々な実装態様に適用される本開示の新規な特徴を示し、説明し、指摘したが、例示されたデバイスまたはプロセスの形態および詳細における様々な省略、置換、および変更が、本開示から逸脱することなく当業者によりなされ得ることが理解されるであろう。前述の説明は、現在考えられる、本開示を実施する最良の形態に関するものである。この説明は、決して限定することを意味するものではなく、むしろ本開示の一般原理の例示として解釈されるべきである。本開示の範囲は、特許請求の範囲を参照して判断されるべきである。
本開示を図面および前述の説明において詳細に例示および記載してきたが、そのような例示および説明は説明的または例示的であり、限定的ではないと見なされるべきである。本開示は、開示された実施形態に限定されない。開示された実施形態および/または実装態様に対する変形は、図面、本開示および添付の特許請求の範囲の検討から、特許請求された開示を実施する際に当業者によって理解され、達成され得る。
本開示のある特定の特徴または態様を説明するときに特定の術語を使用することは、その術語が関連付けられている本開示の特徴または態様の任意の具体的な特性を含むように限定されるように、その術語が本明細書において再定義されていることを含意すると解釈されるべきではない。本出願で使用される用語および表現、ならびにとりわけ添付の特許請求の範囲中のその変形は、特に明記しない限り、限定ではなく非限定的なものとして解釈されるべきである。前述の例として、「含む(including)」という用語は、「限定することなく含む(including,without limitation)」、「含むがこれに限定されない(including but not limited to)」などを意味すると読まれるべきであり、本明細書で使用される「含む(comprising)」という用語は、「含む(including)」、「含有する(containing)」、または「によって特徴付けられる(characterized by)」と同義であり、包括的かつ開放式であり、追加の列挙されていない要素または方法ステップを排除するものではなく、「有する(having)」という用語は、「少なくとも有する(having at least)」と解釈されるべきであり、「など(such as)」という用語は「限定することなく、〜など(such as,without limitation)」と解釈されるべきであり、「含む(includes)」という用語は、「含むがこれに限定されない(includes but is not limited to)」と解釈されるべきであり、「例(example)」という用語は、考察における項目の例示的な例を提供するために使用され、それらの網羅的または限定的なリストではなく、「例として、しかし限定することなく(example,but without limitation)」として解釈されるべきであり、「既知の」、「普通の(normal)」、「標準的な(standard)」などの形容詞および同様の意味の用語は、記載された項目を所与の期間または所与の時点で利用可能な物品に限定すると解釈されるべきではないが、代わりに、現在または将来の任意の時点で利用可能または既知となる可能性がある既知の、普通の、または標準的な技術を包含すると読まれるべきであり、「好ましくは(preferably)」、「好ましい(preferred)」、「所望の(desired)」、または「望ましい(desirable)」などの用語の使用、および同様の意味の語句は、ある特定の特徴が本開示の構造または機能にとってクリティカル、不可欠、またはそれどころか重要であることを含意すると理解されるべきではないが、代わりに、単に特定の実施形態において利用されてもされなくてもよい代替または追加の特徴を強調することを意図したものとして理解されるべきである。同様に、接続詞「および(and)」によってリンクされた項目の群は、それらの項目のうちのひとつひとつがその群内に存在することを必要とするものとして読まれるべきではなく、むしろ特に明記しない限り「および/または(and/or)」として読まれるべきである。同様に、接続詞「または(or)」によってリンクされた項目の群は、そのグループ間の相互排他性を必要とするものとして読まれるべきではなく、むしろ特に明記しない限り「および/または(and/or)」として読まれるべきである。「約(about)」または「およそ(approximate)」などの用語は同義語であり、その用語によって修飾された値がそれに関連する理解された範囲を有することを示すために使用され、その範囲は±20%、±15%、±10%、±5%、または±1%、であり得る。「実質的に(substantially)」という用語は、結果(例えば、測定値)が目標値に近いことを示すために使用され、近いとは、例えば、結果がその値の80%以内、その値の90%以内、その値の95%以内、またはその値の99%以内であることを意味し得る。また、本明細書で使用される場合、「定義された(defined)」または「決定された(determined)」は、「事前に定義された(predefined)」もしくは「事前に決定された(predetermined)」および/または他の方法で決定された値、条件、しきい値、測定値などを含み得る。

Claims (20)

  1. デバイスの動作を制御するためのシステムであって、
    コンピュータ可読命令を格納させたメモリと、
    少なくとも1つのプロセッサであって、
    前記デバイスの第1の領域で障害物が検出されると、センサから第1の入力を受け取ることと、
    前記デバイスの異なる第2の領域で前記物体が検出されると、前記センサから異なる第2の入力を受け取ることと、
    前記センサから前記第1の入力を受け取ると、少なくとも1つのアクチュエータに第1の信号を送信することであって、前記第1の信号が第1の値の強度を有する、送信することと、
    前記センサから前記第2の入力を受け取ると、前記少なくとも1つのアクチュエータに異なる第2の信号を送信することであって、前記第2の信号が異なる第2の値の強度を有し、前記第2の値が前記第1の値より大きい、送信することと、を行うように前記コンピュータ可読命令を実行するように構成されている、少なくとも1つのプロセッサと、を備えるシステム。
  2. 前記第1の信号が、前記第1の値がゼロの値に対応するように、前記少なくとも1つのアクチュエータからの電力の除去に対応する、請求項1に記載のシステム。
  3. 前記第2の信号が、前記第2の値がゼロより大きい値に対応するように、前記少なくとも1つのアクチュエーションで利用可能な電力に対応する、請求項1に記載のシステム。
  4. 前記第2の領域が、前記デバイスの中心からの第1の距離であり、前記第1の領域が、前記デバイスの前記中心からの第2の距離であり、前記第1のダンスが、前記第2の距離より大きい、請求項1に記載のシステム。
  5. 前記少なくとも1つのプロセッサが、
    所定の期間の後、前記センサによる前記障害物の検出を決定することと、
    検出された前記障害物が前記所定の期間の後に前記第1の領域にある場合、第3の信号を前記少なくとも1つのアクチュエータに送信することと、
    検出された前記障害物が前記所定の期間の後に前記第2の領域にある場合、異なる第4の信号を前記少なくとも1つのアクチュエータに送信することと、を行うように構成されている、請求項1に記載のシステム。
  6. 前記第3の信号が、前記第3の信号が前記第1の値の強度を有するように、前記第1の信号に対応し、
    前記第4の信号が、前記障害物を回避するために前記デバイスの方向を変更するように構成されている、請求項5に記載のシステム。
  7. 前記少なくとも1つのプロセッサが、
    前記少なくとも1つのアクチュエータに関連付けられた少なくとも1つのモータによって引き出される電流または電圧に基づいて、経路に沿った前記デバイスの速度を決定することと、
    前記デバイスの速度が所望のしきい値よりも大きい場合、前記少なくとも1つのアクチュエータに前記第1の信号または前記第2の信号を送信することと、を行うように前記コンピュータ可読命令を実行するようにさらに構成されている、請求項1に記載のシステム。
  8. コンピュータ可読命令を格納させた非一時的コンピュータ可読媒体であって、前記コンピュータ可読命令が、少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、
    前記デバイスの第1の領域で障害物を検出すると、センサから第1の入力を受け取ることと、
    前記デバイスの異なる第2の領域で前記物体が検出されると、前記センサから異なる第2の入力を受け取ることと、
    前記センサから前記第1の入力を受け取ると、少なくとも1つのアクチュエータに第1の信号を送信することであって、前記第1の信号が第1の値の強度を有する、送信することと、
    前記センサから前記第2の入力を受け取ると、前記少なくとも1つのアクチュエータに異なる第2の信号を送信することであって、前記第2の信号が異なる第2の値の強度を有し、前記第2の値が前記第1の値より大きい、送信することと、を行うようにさせる、非一時的なコンピュータ可読媒体。
  9. 前記第1の信号が、前記第1の値がゼロの値に対応するように、前記少なくとも1つのアクチュエータからの電力の除去に対応する、請求項8に記載の非一時的コンピュータ可読媒体。
  10. 前記第2の信号が、前記第2の値がゼロより大きい値に対応するように、前記少なくとも1つのアクチュエーションで利用可能な電力に対応する、請求項8に記載の非一時的コンピュータ可読媒体。
  11. 前記第2の領域が、前記デバイスの中心からの第1の距離であり、前記第1の領域が、前記デバイスの中心からの第2の距離であり、前記第1の距離が、前記第2の距離より大きい、請求項8に記載の非一時的コンピュータ可読媒体。
  12. 前記少なくとも1つのプロセッサが、
    所定の期間の後、前記センサによる前記障害物の検出を決定することと、
    検出された前記障害物が前記所定の期間の後に前記第1の領域にある場合、第3の信号を前記少なくとも1つのアクチュエータに送信することと、
    検出された前記障害物が前記所定の期間の後に前記第2の領域にある場合、異なる第4の信号を前記少なくとも1つのアクチュエータに送信することと、を行うように構成されている、請求項8に記載の非一時的コンピュータ可読媒体。
  13. 前記第3の信号が、前記第3の信号が前記第1の値の強度を有するように、前記第1の信号に対応し、
    前記第4の信号が、前記障害物を回避するために前記デバイスの方向を変更するように構成されている、請求項12に記載の非一時的コンピュータ可読媒体。
  14. 前記少なくとも1つのプロセッサが、
    前記少なくとも1つのアクチュエータに関連付けられた少なくとも1つのモータによって引き出される電流または電圧に基づいて、経路に沿った前記デバイスの速度を決定することと、
    前記デバイスの速度が所望のしきい値よりも大きい場合、前記少なくとも1つのアクチュエータに前記第1の信号または前記第2の信号を送信することと、を行うように前記コンピュータ可読命令を実行するようにさらに構成されている、請求項8に記載の非一時的コンピュータ可読媒体。
  15. デバイスの動作を制御する方法であって、
    前記デバイスの第1の領域で障害物を検出すると、センサから第1の入力を受け取ることと、
    前記デバイスの異なる第2の領域で前記物体が検出されると、前記センサから異なる第2の入力を受け取ることと、
    前記センサから前記第1の入力を受け取ると、少なくとも1つのアクチュエータに第1の信号を送信することであって、前記第1の信号が第1の値の強度を有する、送信することと、
    前記センサから前記第2の入力を受け取ると、前記少なくとも1つのアクチュエータに異なる第2の信号を送信することであって、前記第2の信号が異なる第2の値の強度を有し、前記第2の値が前記第1の値より大きい、送信することと、を含む方法。
  16. 前記第1の信号が、前記第1の値がゼロの値に対応するように、前記少なくとも1つのアクチュエータからの電力の除去に対応する、請求項15に記載の方法。
  17. 前記第2の信号が、前記第2の値がゼロより大きい値に対応するように、前記少なくとも1つのアクチュエーションで利用可能な電力に対応する、請求項15に記載の方法。
  18. 前記第2の領域が、前記デバイスの中心からの第1の距離であり、前記第1の領域が、前記デバイスの中心からの第2の距離であり、前記第1のダンスが、前記第2の距離より大きい、請求項15に記載の方法。
  19. 所定の期間の後、前記センサによる前記障害物の検出を決定することと、
    検出された前記障害物が前記所定の期間の後に前記第1の領域にある場合、第3の信号を前記少なくとも1つのアクチュエータに送信することと、
    検出された前記障害物が前記所定の期間の後に前記第2の領域にある場合、異なる第4の信号を前記少なくとも1つのアクチュエータに送信することと、をさらに含む、請求項15に記載の方法。
  20. 前記第3の信号が、前記第3の信号が前記第1の値の強度を有するように、前記第1の信号に対応し、
    前記第4の信号が、前記障害物を回避するために前記デバイスの方向を変更するように構成されている、請求項19に記載の方法。
JP2019561845A 2017-05-09 2018-05-09 ロボットの動作制御のためのシステムおよび方法 Pending JP2020520008A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762503762P 2017-05-09 2017-05-09
US62/503,762 2017-05-09
PCT/US2018/031895 WO2018208984A1 (en) 2017-05-09 2018-05-09 System and method for motion control of robots

Publications (1)

Publication Number Publication Date
JP2020520008A true JP2020520008A (ja) 2020-07-02

Family

ID=62455843

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019561845A Pending JP2020520008A (ja) 2017-05-09 2018-05-09 ロボットの動作制御のためのシステムおよび方法

Country Status (7)

Country Link
US (1) US20200073401A1 (ja)
EP (1) EP3622364B1 (ja)
JP (1) JP2020520008A (ja)
KR (1) KR102514740B1 (ja)
CN (1) CN110998471A (ja)
CA (1) CA3063206A1 (ja)
WO (1) WO2018208984A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024116843A1 (ja) * 2022-11-29 2024-06-06 パナソニックIpマネジメント株式会社 移動体、移動体の制御方法、およびプログラム

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406312B (zh) * 2016-10-14 2017-12-26 平安科技(深圳)有限公司 导览机器人及其移动区域标定方法
CN107490129B (zh) * 2017-08-02 2020-10-20 青岛海尔空调电子有限公司 一种设备控制的方法及装置
US20190204845A1 (en) * 2017-12-29 2019-07-04 Waymo Llc Sensor integration for large autonomous vehicles
US11890747B2 (en) * 2018-09-26 2024-02-06 Disney Enterprises, Inc. Interactive autonomous robot configured with in-character safety response protocols
US11334080B2 (en) * 2018-09-27 2022-05-17 Taiwan Semiconductor Manufacturing Co., Ltd. Systems and methods for raised floor automated sensor vehicles
CN109800901A (zh) * 2018-12-07 2019-05-24 纳恩博(北京)科技有限公司 滑板车的调度方法、装置、存储介质及电子装置
CN109976347B (zh) * 2019-04-11 2023-10-13 中南大学 一种基于快速扩展随机树和势场法的视觉伺服路径规划方法
KR102356752B1 (ko) * 2019-04-16 2022-01-28 주식회사 유진로봇 모바일 로봇의 초기화 진단 방법 및 시스템
EP4007977A4 (en) * 2019-08-01 2023-05-03 Telefonaktiebolaget Lm Ericsson (Publ) PROCEDURES FOR RISK MANAGEMENT FOR AUTONOMOUS DEVICES AND ASSOCIATED NODES
KR102592639B1 (ko) * 2019-11-14 2023-10-23 한국전자통신연구원 시간을 분할하여 교대 작업하는 로봇 및 그 로봇들 간의 작업 교대 방법
KR20210067432A (ko) * 2019-11-29 2021-06-08 엘지전자 주식회사 로봇의 비상 정지의 수행
US11320829B2 (en) * 2020-01-31 2022-05-03 Ekin Teknoloj: Sanayi Ve Ticaret Anonim Sirketi Battery powered artificial intelligence autonomous patrol vehicle
CN111331619B (zh) * 2020-04-26 2023-08-25 珠海格力电器股份有限公司 机器人的安全控制设备及机器人的控制方法、机器人
WO2021226298A2 (en) * 2020-05-06 2021-11-11 Brain Corporation Systems and methods for enhancing performance and mapping of robots using modular devices
CN111537968B (zh) * 2020-05-12 2022-03-01 江铃汽车股份有限公司 角雷达标定方法及系统
CN112099494B (zh) * 2020-09-02 2021-09-07 西安交通大学 一种面向全地形车及其自动检测楼梯与攀爬方法
CA3197379A1 (en) * 2020-11-11 2022-05-19 Joe Cronin Unmanned vehicle control, communication and safety system and method
WO2022183096A1 (en) * 2021-02-26 2022-09-01 Brain Corporation Systems, apparatuses, and methods for online calibration of range sensors for robots
US20230023551A1 (en) * 2021-07-20 2023-01-26 Murata Machinery, Ltd. Autonomous traveling body
US20230054838A1 (en) * 2021-08-23 2023-02-23 Verizon Patent And Licensing Inc. Methods and Systems for Location-Based Audio Messaging
CN113709735B (zh) * 2021-08-24 2022-10-25 北京计算机技术及应用研究所 一种无人机群抗风险的密码安全分级防护方法
CN114545891B (zh) * 2021-11-29 2023-09-05 中车大连机车车辆有限公司 机车无线重联同步控制系统、总控系统及总控方法
CN114371696B (zh) * 2021-12-06 2024-02-27 深圳市普渡科技有限公司 移动设备、控制方法、机器人及存储介质
CN114509064A (zh) * 2022-02-11 2022-05-17 上海思岚科技有限公司 一种自主扩展传感器数据处理的方法、接口及设备
WO2023160765A1 (en) * 2022-02-24 2023-08-31 Agrirobot Aps An obstacle detection system for an autonomous agricultural work vehicle
US20230309775A1 (en) * 2022-03-30 2023-10-05 Bissell Inc. Pooling mitigation for autonomous wet cleaning robot

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020143461A1 (en) * 2000-05-15 2002-10-03 Burns Ray L. Permission system for controlling interaction between autonomous vehicles in mining operation
JP2005198891A (ja) * 2004-01-16 2005-07-28 Mitsubishi Electric Corp 遠隔制御装置
JP2006092253A (ja) * 2004-09-24 2006-04-06 Matsushita Electric Works Ltd 自律移動装置
JP2012128616A (ja) * 2010-12-15 2012-07-05 Panasonic Corp 移動車両の制御システム
JP2012226675A (ja) * 2011-04-22 2012-11-15 Hitachi Industrial Equipment Systems Co Ltd 移動体
JP2015170284A (ja) * 2014-03-10 2015-09-28 株式会社日立製作所 フォークリフト型無人搬送車、その制御方法および制御装置
JP2016511670A (ja) * 2013-11-12 2016-04-21 アイロボット コーポレイション 自律式表面清掃ロボット
JP2016151897A (ja) * 2015-02-17 2016-08-22 株式会社安川電機 移動体制御装置および移動体制御方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09266871A (ja) * 1996-04-03 1997-10-14 Fuji Heavy Ind Ltd 清掃ロボットの制御方法
US8364366B2 (en) * 2005-06-24 2013-01-29 Deere & Company System and method for providing a safety zone associated with a vehicle
WO2007008940A2 (en) * 2005-07-11 2007-01-18 Brooks Automation, Inc. Intelligent condition-monitoring and dault diagnostic system
JP5112666B2 (ja) * 2006-09-11 2013-01-09 株式会社日立製作所 移動装置
EP3410248B1 (en) * 2008-12-04 2021-05-05 Crown Equipment Corporation Multiple zone sensing for materials handling vehicles
DE102009019088A1 (de) * 2009-04-20 2010-11-11 Pilz Gmbh & Co. Kg Sicherheitssteuerung zum Steuern einer automatisierten Anlage und Verfahren zum Erstellen eines Anwenderprogramms für eine Sicherheitssteuerung
FI122157B (fi) * 2010-05-10 2011-09-15 Sandvik Mining & Constr Oy Menetelmä ja laitteisto kaivosajoneuvon turvajärjestelyitä varten
JP5560979B2 (ja) * 2010-07-13 2014-07-30 村田機械株式会社 自律移動体
US8761990B2 (en) * 2011-03-30 2014-06-24 Microsoft Corporation Semi-autonomous mobile device driving with obstacle avoidance
US8958911B2 (en) * 2012-02-29 2015-02-17 Irobot Corporation Mobile robot
CN104428107B (zh) * 2012-07-10 2016-06-29 西门子公司 机器人布置和用于控制机器人的方法
CN105404298B (zh) * 2012-09-21 2018-10-16 艾罗伯特公司 移动机器人上的接近度感测
US9256944B2 (en) * 2014-05-19 2016-02-09 Rockwell Automation Technologies, Inc. Integration of optical area monitoring with industrial machine control
KR102326479B1 (ko) * 2015-04-16 2021-11-16 삼성전자주식회사 청소 로봇 및 그 제어 방법
US10081106B2 (en) * 2015-11-24 2018-09-25 X Development Llc Safety system for integrated human/robotic environments
US20170241791A1 (en) * 2016-02-24 2017-08-24 Allstate Insurance Company Risk Maps

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020143461A1 (en) * 2000-05-15 2002-10-03 Burns Ray L. Permission system for controlling interaction between autonomous vehicles in mining operation
JP2005198891A (ja) * 2004-01-16 2005-07-28 Mitsubishi Electric Corp 遠隔制御装置
JP2006092253A (ja) * 2004-09-24 2006-04-06 Matsushita Electric Works Ltd 自律移動装置
JP2012128616A (ja) * 2010-12-15 2012-07-05 Panasonic Corp 移動車両の制御システム
JP2012226675A (ja) * 2011-04-22 2012-11-15 Hitachi Industrial Equipment Systems Co Ltd 移動体
JP2016511670A (ja) * 2013-11-12 2016-04-21 アイロボット コーポレイション 自律式表面清掃ロボット
JP2015170284A (ja) * 2014-03-10 2015-09-28 株式会社日立製作所 フォークリフト型無人搬送車、その制御方法および制御装置
JP2016151897A (ja) * 2015-02-17 2016-08-22 株式会社安川電機 移動体制御装置および移動体制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024116843A1 (ja) * 2022-11-29 2024-06-06 パナソニックIpマネジメント株式会社 移動体、移動体の制御方法、およびプログラム

Also Published As

Publication number Publication date
CA3063206A1 (en) 2018-11-15
CN110998471A (zh) 2020-04-10
US20200073401A1 (en) 2020-03-05
KR102514740B1 (ko) 2023-03-28
EP3622364A1 (en) 2020-03-18
WO2018208984A1 (en) 2018-11-15
EP3622364B1 (en) 2023-07-05
KR20200006088A (ko) 2020-01-17

Similar Documents

Publication Publication Date Title
JP2020520008A (ja) ロボットの動作制御のためのシステムおよび方法
US11602841B2 (en) Systems and methods for remote operating and/or monitoring of a robot
US11180353B2 (en) Pallet tracking during engagement and disengagement
EP3577530B1 (en) Systems and methods for assisting a robotic apparatus
EP3602223B1 (en) System and method for robotic path planning
US20210132615A1 (en) Systems and methods for optimizing route planning for tight turns for robotic apparatuses
US20200041385A1 (en) Automated robotic test system for automated driving systems
JP2020514858A (ja) 自律移動ロボットおよび自律移動ロボットの制御方法
US20210271262A1 (en) Autonomous Mobile Robot And Method For Controlling An Autonomous Mobile Robot
JPWO2019026761A1 (ja) 移動体およびコンピュータプログラム
TW201629660A (zh) 自主輔助及導向車輛
US11951629B2 (en) Systems, apparatuses, and methods for cost evaluation and motion planning for robotic devices
US20210232149A1 (en) Systems and methods for persistent mapping of environmental parameters using a centralized cloud server and a robotic network
US11886198B2 (en) Systems and methods for detecting blind spots for robots
US20190265698A1 (en) Systems and methods for tele-present recovery of self-driving vehicles
US20210247493A1 (en) Non-destructive kit mounting system for driverless industrial vehicles
US20240001554A1 (en) Systems and methods for distance based robotic timeouts
US20230004170A1 (en) Modular control system and method for controlling automated guided vehicle
WO2023192272A1 (en) A hybrid, context-aware localization system for ground vehicles
Jahnke et al. Environment mapping enabling safety and usability of an electronic tow bar

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210427

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220425

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221107

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230605