JP2018101444A - 自律式移動ロボット - Google Patents

自律式移動ロボット Download PDF

Info

Publication number
JP2018101444A
JP2018101444A JP2018046460A JP2018046460A JP2018101444A JP 2018101444 A JP2018101444 A JP 2018101444A JP 2018046460 A JP2018046460 A JP 2018046460A JP 2018046460 A JP2018046460 A JP 2018046460A JP 2018101444 A JP2018101444 A JP 2018101444A
Authority
JP
Japan
Prior art keywords
robot
behavior
sensor
drive
command
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.)
Granted
Application number
JP2018046460A
Other languages
English (en)
Other versions
JP6656726B2 (ja
Inventor
マーク シュニットマン
Schnittman Mark
マーク シュニットマン
トーマス ダブリュ ブッシュマン
W Bushman Thomas
トーマス ダブリュ ブッシュマン
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.)
iRobot Corp
Original Assignee
iRobot 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 iRobot Corp filed Critical iRobot Corp
Publication of JP2018101444A publication Critical patent/JP2018101444A/ja
Application granted granted Critical
Publication of JP6656726B2 publication Critical patent/JP6656726B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0227Control of position or course in two dimensions specially adapted to land vehicles using mechanical sensing means, e.g. for sensing treated area
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/01Mobile robot
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/46Sensing device
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/49Protective device

Abstract

【課題】自律式移動ロボットを提供する。
【解決手段】自律式移動ロボット(100)は、ロボット本体(110)、駆動システム(120)、センサシステム(500)、及びコントローラ(120)を含む。駆動システムは、ロボット本体を支持し、かつ床面(10)にわたってロボットを操縦する。センサシステムは、ロボットの姿勢を測定するための慣性測定ユニット(510d)を含み、かつロボットの姿勢に関する情報を有するデータを含むセンサ信号を発令する。挙動システム(210a)は、センサシステムからセンサ信号を受信し、かつ挙動(300)を実行する。また、挙動システムは、抗停滞挙動(300a)を実行して拘束状態を評価すると共に、抗傾斜挙動(310b)を実行して傾斜状態を評価する。
【選択図】図1

Description

本発明の開示は、自律式移動ロボット停滞検知に関する。
真空掃除機は、一般的に空気ポンプを用いて典型的には床面から、並びに任意的に他の表面からも塵埃を持ち上げるために部分的な真空を生成する。真空掃除機は、典型的には、後の処分のために集塵袋又はサイクロンのいずれかに塵埃を集める。家庭と共に産業に使用される真空掃除機は、小型バッテリ作動手持ち式デバイス、家事中心の真空掃除機、空にする前に数百リットルの塵埃を処理することができる巨大な据え置き型産業用電気機器、並びに大量流出物の回収又は汚染土壌の除去のための自走式バキュームトラックのような様々なサイズ及びモデルで存在する。
自律式ロボット真空掃除機は、一般的に、通常の作動条件下では床を掃除しながら居住空間と普通の障害物をナビゲートする。自律式ロボット真空掃除機は、一般的に、壁、家具、又は段差のような障害物を回避することを可能にするセンサを有する。ロボット真空掃除機は、障害物に衝突すると、その駆動方向を変えることができる(例えば、向きを変えるか又は後退する)。ロボット真空掃除機はまた、床面に並外れて汚れた場所を検知した状態で、駆動方向又は駆動パターンを変えることができる。
本発明の開示の一態様は、ロボット本体、駆動システム、センサシステム、及びコントローラを有する自律式移動ロボットを提供する。ロボット本体は、前方駆動方向を定める。駆動システムは、ロボット本体を支持し、床面にわたってロボットを操縦するように構成される。センサシステムは、ホイール符号器(encoder)とロボットの姿勢を測定するための慣性測定ユニットとを含み、かつセンサ信号を発令する。センサ信号は、ロボットの姿勢を示している。コントローラは、駆動システム及びセンサシステムと通信し、かつ挙動システムを実行するコンピュータプロセッサを有する。挙動システムは、センサシステムからのセンサ信号を受信し、センサ信号に基づいて少なくとも1つの挙動を実行する。挙動システムは、任意的に、ロボットが拘束されていることを示すセンサ信号に応答して抗停滞挙動(anti-stasis behavior)を実行し、拘束状態を評価する。これに加えて、挙動システムは、任意的に、ロボットが重力方向に対して傾斜していることを示すセンサ信号に応答して抗傾斜挙動を実行し、傾斜状態を評価する。一部の例では、挙動システムは、任意的に、ロボットが障害物の下に割り込んでいることを示すセンサ信号に応答して抗割り込み挙動を実行する。
本発明の開示の実施は、以下の任意的な特徴のうちの1又は2以上を含むことができる。一部の実施では、制御システムは、コンピュータプロセッサ上で実行し、かつロボットのリソースに指令を発令する制御調停システムを有する。制御システムは、蛇行角を有する蛇行指令の実行を引き起こすことができる。蛇行指令は、互いに対して蛇行角だけの角度を成して交互に左右駆動方向へ駆動する駆動指令を含む。これに加えて、ロボットが第1蛇行角を有する第1蛇行指令を実行していないことを示すセンサ信号をコントローラが受信した場合に、コントローラは、第1蛇行角を超える第2蛇行角を有する第2蛇行指令の実行を引き起こす。これに加えて、慣性測定ユニット及び/又はホイール符号器の信号がロボットの動きを示す許容範囲にない場合に、コントローラは、駆動システムに対して抗停滞指令を発令する。
一部の例では、拘束状態には、ロボットが物体に対して割り込む位置に入るか又は居ることが含まれる。これに加えて、センサ信号は、ロボットの物体との接触を示す衝突信号と、駆動システムのホイールがロボット本体から離れる動きを示すホイール落下信号とを含むことができる。
一部の実施では、抗停滞挙動は、ロボットを障害から後退させるか又はロボットの拘束を受けている側からロボットを方向転換させる駆動指令の実行を引き起こす(例えば、旋回状態において)。これに加えて、抗停滞挙動は、ロボットを正確な軌道で駆動する駆動指令の実行を引き起こす。
一部の実施では、挙動システムは、ロボットが重力方向に対して少なくとも閾値期間にわたって傾斜している時に、上述の傾斜挙動を実行する。抗傾斜挙動は、ロボットが重力方向及び前方駆動方向に対してピッチアップしている時に、前方駆動指令の実行を引き起こすことができる。更に、抗傾斜挙動は、ロボットが重力方向及び前方駆動方向に対してピッチダウンしている時に、逆駆動指令の実行を引き起こすことができる。
一部の実施では、挙動システムは、ロボットが重力方向に対して閾値角よりも大きい角度で傾斜している時に、抗傾斜挙動を実行する。抗傾斜挙動は、ロボットが重力方向及び前方駆動方向に対してピッチアップしている時に前方駆動指令の実行を引き起こし、ロボットが重力方向及び前方駆動方向に対してピッチダウンしている時に逆駆動指令の実行を引き起こすことができる。一部の実施では、センサシステムは、障害物検知/障害物回避(ODOA)センサ、通信センサ、ナビゲーションセンサ、近接センサ、接触センサ、カメラ、ソナー、レーダー、LIDAR、又はLADARのうちの少なくとも1つを含むことができる。
一部の実施では、自律式移動ロボットは、駆動システムの駆動ホイール前方のロボット底面に配置された機械式スイッチを更に含む。機械式スイッチは、障害物又は物体との接触で作動する。挙動システムは、機械式スイッチが作動してセンサシステムが動かないロボットを検知すると、抗停滞挙動を実行することができる。
一部の例では、自律式移動ロボットは、床面を掃除するか又は処理するための掃除システムを更に含む。挙動システムは、機械式スイッチが作動してセンサシステムが運動を検知すると、抗吸込み挙動(anti-ingestion behavior)を実行することができる。抗吸込み挙動は、掃除挙動を停止させるための掃除停止指令の発令と、蛇行角を有する蛇行指令の発令とを引き起こす。蛇行指令は、互いに対して蛇行角だけの角度を成して交互に左右駆動方向へ駆動する駆動指令を含む。これに加えて又はこれに代えて、挙動システムは、ロボットのホイールが失速閾値未満の失速速度で失速していることを示すセンサシステムからの信号をコントローラが受信すると、ホイール−ジャム挙動を実行することができる。ホイール−ジャム挙動は、ロボットの失速したホイールを解除するための蛇行指令の発令を引き起こす。ロボットは、横方向軸線Xに平行に延びて床面に接触するようにロボット本体に回転可能に支持された従動ローラブラシを更に含むことができる。従動ローラブラシは、X軸周りを第1の方向に回転する。抗吸込み挙動は、第1の方向とは反対の第2の方向に受動的に回転するようにローラブラシに付勢を引き起こし、例えば、ロボットが後退するか又は立ち去る際に巻き付いたコードがローラブラシからほどけることが可能になる。
本発明の開示の別の態様は、自律式移動ロボットのための制御システムを提供する。制御システムは、制御調停システム、駆動システム、センサシステム、及びコントローラを有する。制御調停システムは、コンピュータプロセッサ上で実行し、ロボットのリソースに指令を発令する。駆動システムは、左右の駆動ホイールを有する。これに加えて、駆動システムは、ロボット本体を支持し、床面にわたってロボットを操縦するように構成される。センサシステムは、両駆動ホイールの回転を追跡するホイール符号器とロボットの姿勢を測定する慣性測定ユニットとを有する。センサシステムは、ロボットの姿勢を示すセンサ信号を発令する。コントローラは、駆動システム及びセンサシステムと通信状態にある。これに加えて、コントローラは、挙動システムを実行するコンピュータプロセッサを有する。挙動システムは、センサシステムからのセンサ信号を受信し、センサ信号に基づいて少なくとも1つの挙動を実行する。挙動システムは、任意的に、ロボットが拘束されていることを示すセンサ信号に応答して抗停滞挙動を実行して拘束状態を評価し、ロボットが重力方向に対して傾斜していることを示すセンサ信号に応答して抗傾斜挙動を実行して傾斜状態を評価する。
本発明の開示の別の態様は、自律式移動ロボットを作動させる方法を提供する。本方法は、コンピュータプロセッサでセンサシステムからのセンサ信号を受信する段階を含む。センサ信号は、ロボットの慣性測定値又は角度方位を含む。本方法はまた、コンピュータプロセッサ上で挙動システムを実行する段階を含む。挙動システムは、センサシステムからのセンサ信号を受信し、センサ信号に基づいて少なくとも1つの挙動を実行する。挙動システムは、ロボットが拘束されていることを示すセンサ信号に応答して抗停滞挙動を実行し、拘束状態を評価する。これに加えて、挙動システムは、ロボットが重力方向に対して傾斜していることを示すセンサ信号に応答して抗傾斜挙動を実行して、傾斜状態を評価する。
一部の実施では、抗停滞挙動は、蛇行角を有する蛇行指令の発令を含む。蛇行指令は、互いに対して蛇行角だけの角度を成して交互に左右駆動方向へ駆動する駆動指令を含む。本方法は、コンピュータプロセッサでセンサシステムから第2センサ信号を受信する段階を更に含むことができる。第2センサ信号が、第1蛇行角を有する第1蛇行指令を実行した後にロボット100が停滞していることを示す場合に、抗停滞挙動は、第1蛇行角を超える第2蛇行角を有する第2蛇行指令を発令し、センサシステムはロボットの慣性姿勢及びホイールの回転に対するセンサをモニタする。センサ信号が許容範囲にない場合に、ロボットは抗停滞挙動を実行する。
一部の例では、本方法は、ロボットが重力方向に対して少なくとも閾値期間にわたって傾斜している時に抗傾斜挙動を実行する段階を含む。本方法は、ロボットが重力方向及び前方駆動方向に対してピッチアップしている時に前方駆動指令を実行する段階と、ロボットが重力方向及び前方駆動方向に対してピッチダウンしている時に逆駆動指令を実行する段階とを含むことができる。
一部の例では、本方法は、ロボットが重力方向に対して閾値角よりも大きい角度で傾斜している時に抗傾斜挙動を実行する段階を含む。本方法は、ロボットが重力方向及び前方駆動方向に対してピッチアップしている時に前方駆動指令を実行する段階と、ロボットが重力方向及び前方駆動方向に対してピッチダウンしている時に逆駆動指令を実行する段階とを含むことができる。
一部の実施では、本方法は、駆動システムの駆動ホイール前方でロボットの底面に配置された機械式スイッチを作動させる段階を更に含む。これに加えて、本方法は、機械式スイッチが作動してセンサシステムが動かないロボットを検知した場合に抗停滞挙動300aを実行する段階を含むことができる。
一部の実施では、本方法は、掃除システムを用いて床面を掃除するか又は処理する段階を含む。本方法は、機械式スイッチが作動してセンサシステムが運動を検知した場合に抗吸込み挙動を実行する段階を含むことができる。抗吸込み挙動は、掃除挙動を停止させるための掃除停止指令の発令と、蛇行角を有する蛇行指令の発令とを引き起こす。蛇行指令は、互いに対して蛇行角だけの角度を成して交互に左右駆動方向へ駆動する駆動指令を含む。一部の例では、本方法は、ロボットのホイールが失速閾値未満の失速速度で失速していることを示すセンサシステムからの信号をコントローラが受信するとホイール−ジャム挙動を実行する段階を含む。ホイール−ジャム挙動は、ロボットの失速したホイールを解除する蛇行指令の発令を引き起こす。
本発明の開示の1又は2以上の実施の詳細は、添付図面及び以下の説明において明らかにされる。他の態様、特徴、及び利点は、本明細書及び図面、並びに請求項から明らかになるであろう。
様々な図面における同様の参照符号は同様の要素を示している。
例示的な自律移動式ロボットの斜視図である。 図1に示す例示的な自律式移動ロボットの側面図である。 図1に示す例示的な自律式移動ロボットの底面図である。 自律式掃除のための移動ロボットの例示的なシステム構成を示す図である。 自律式掃除のための移動ロボットの例示的な挙動システムを示す図である 例示的な自律式移動ロボットの抗停滞挙動の流れ図である。 停滞状態脱出挙動を実行する例示的な自律式ロボットの斜視図である。 割り込んだ状態にある例示的な自律式ロボットの側面図である。 Z軸周りに蛇行する例示的な自律式ロボットの斜視図である。 Z軸周りに蛇行する例示的な自律式ロボットの斜視図である。 例示的な自律式移動ロボットの抗停滞挙動の流れ図である。 2つの異なる床面を横断する時の例示的な自律式ロボットの正面図である。 ある区域を進む時の例示的な自律式ロボットの上面図である。 例示的な自律式移動ロボットの抗傾斜挙動の流れ図である。 例示的な自律式移動ロボットの抗傾斜挙動の流れ図である。 例示的な自律式掃除のための移動ロボットの斜視図である。 例示的な自律式掃除のための移動ロボットの正面図である。 例示的な自律式移動ロボットの抗吸込み挙動の流れ図である。 例示的な自律式移動ロボットのホイール−ジャム挙動の流れ図である。 自律式移動ロボットを作動させるための例示的な作動配置の概略図である。
移動可能に支持される自律式ロボットは、床面をナビゲートすることができる。一部の例では、自律式ロボットは、表面を横断しながら表面を掃除することができる。ロボットは、デブリを撹拌させること、及び/又は表面の上に負圧(例えば、部分真空)を加えることにより表面からデブリを持ち上げること、並びに表面からデブリを集めることにより、表面からデブリを除去することができる。
図1−3を参照すると、一部の実施では、ロボット100は、例えば、x、y、及びθ成分を有する駆動指令に基づいて、床面10にわたってロボット100を操縦可能な駆動システム120により支持される本体を有する。ロボット本体110は、前方部分112及び後方部分114を有する。駆動システム120は、左及び右の駆動ホイールモジュール120a、120bを有する。ホイールモジュール120a、120bは、本体110によって定められる横断X軸線に沿って実質的に対向し、それぞれのホイール124a、124bを駆動するそれぞれの駆動モータ122a、122bを有する。駆動モータ122a、122bは、本体110に解除可能に接続することができ(例えば、ファスナ又は工具不要接続を通して)、駆動モータ122a、122bは、任意的に、実質的にそれぞれのホイール124a、124bの上に位置付けられる。ホイールモジュール120a、120bは、本体110に解除可能に取り付けられ、それぞれのバネによって掃除面10と係合するように強制することができる。一部の例では、ホイールモジュール120a、120bは、ホイール符号器121a、121bを含み、それらは、ホイール124a、124bの回転運動をホイール124a、124bの回転及び/又は位置を示すアナログ又はデジタル信号へ変換する。一部の例では、ホイール124a、124bは、それぞれ、ホイールモジュール120a、120bに解除可能に接続される。ホイール124a、124bは、下方付勢のサスペンションシステムを有することができ、それによって滑りやすい床(例えば、硬材、濡れた床)にわたってホイールモジュール120a、120bの牽引力が改善する。ロボット100は、ロボット本体110の前方部分112を支持するために配置されたキャスターホイール126を有することができる。ロボット本体110は、ロボット100のあらゆる電気構成要素に対する電源102(例えば、バッテリ)を担持する。
ロボット100は、本体110によって定められる互いに直交する3つの軸線、すなわち、横断X軸線、前後軸線Y、及び中心垂直軸線Zに対する移動の様々な組合せにより掃除面にわたって移動することができる。前後軸線Yに沿った前方への駆動方向は、F(以下「前方」として言及する場合もある)で示され、前後軸線Yに沿った後方への駆動方向は、A(以下「後方」として言及する場合もある)で示される。横断X軸線は、ホイールモジュール120a、120bの中心点によって定められる軸線に実質的に沿ってロボット100の右側Rと左側Lの間を延びている。
ロボット100は、X軸線の周りで傾斜することができる。ロボット100が南側位置に傾斜すると、ロボット100は後方部分114に向けて傾斜し(以下「ピッチアップ」として言及する場合もある)、ロボット100が北側位置に傾斜すると、ロボット100前方部分112に向けて傾斜する(以下「ピッチダウン」として言及する場合もある)。これに加えて、ロボット100はY軸線の周りに傾斜する。ロボット100は、Y軸線の東に傾斜する(以下「右ロール」として言及する場合もある)、又はロボット100がY軸線の西に傾斜する(以下「左ロール」として言及する場合もある)ことができる。従って、ロボット100のX軸線の周りの傾斜の変化はピッチ角の変化であり、及びロボット100のY軸周りの傾斜の変化はロール角の変化である。これに加えて、ロボット100は、右、すなわち、東側位置に、又は左、すなわち、西側位置のいずれにも傾斜することができる。一部の例において、ロボット100は、北東、北西、南東、及び南西のような傾斜位置を有するX軸線及びY軸線の周りに傾斜する。ロボット100が床面10を横断している時に、ロボット100は、Z軸線の周りで左転回又は右転回(以下「ヨー方向の変化」として言及する場合もある)することができる。ヨー方向の変化により、ロボット100は、移動しながら左転回又は右転回を生じる。従って、ロボット100は、ピッチ角、ロール角、又はヨー角のうちの1又は2以上の変化を同時に有することができる。
本体110の前方部分112はバンパー130を担持することができ、バンパーは、例えば、ホイールモジュール120a、120bが掃除ルーチン中に掃除面にわたってロボット100を推進させる時に、ロボット100の駆動経路における1又は2以上の事象を(例えば、1又は2以上のセンサを通して)検知する。ロボット100は、事象に応答してロボット100を操縦する(例えば、障害物18から離す)ためにホイールモジュール120a、120bを制御することにより、バンパー130によって検知された事象(例えば、障害物18、段差、及び/又は壁面20)に応答することができる。一部のセンサは、バンパー130上に配置されるとして本明細書では説明するが、これらのセンサは、これに加えて又はその代わりに、ロボットの底面116を含むがこれに限定することなく、ロボット100上の様々な異なる位置のいずれかに配置することができる(例えば、機械式スイッチ530)。
ロボット100は、床面10を掃除するか又は処理するための掃除システム160を有することができる。掃除システム160は、乾式掃除システム160a及び/又は湿式掃除システム160bを含むことができる。乾式掃除システム160aは、床表面10に接触するように横断X軸線に平行に延びてロボット本体110により回転可能に支持される従動ローラブラシ162(例えば、剛毛及び/又は叩きフラップを有した)を含むことができる。従動ローラブラシ162は、デブリを床面10から撹拌させて、撹拌させたデブリを収集容器163に投げ込む又は案内する。掃除システム160はまた、デブリを掃除システム160の掃除帯状領域に移動するために、床面10に対してある角度の回転軸を有するサイドブラシ164を有するこができる。湿式掃除システム160bは、横断X軸線に沿って延びて床面上に洗浄液を分注する流体アプリケータ166を有することができる。乾式及び/又は湿式掃除システム160a,160bは、掃除面をガス引きする1又は2以上のスキージーバキューム168(例えば、空気ポンプを通してその間に部分的な真空を加える離間したブレード)を有することができる。
本体110の最上部に配置されたユーザインタフェース140は、1又は2以上のユーザ指令を受信し、及び/又はロボット100のステータスを表示する。ユーザインタフェース140は、ロボット100によって担持されるロボットコントローラ150と通信し、ユーザインタフェース140が受信する1又は2以上の指令が、ロボット100による掃除ルーチンの実行を開始することができるようにする。ロボットコントローラ150は、非一時的メモリ154(例えば、ハードディスク、フラッシュメモリ、ランダムアクセスメモリ)と通信状態にあるコンピュータプロセッサ152(例えば、中央演算処理装置)を含む。
ロボットコントローラ150(制御システム210を実行する)は、壁に追従するような操縦、床を磨き洗浄するような操縦、又は障害物18(例えば、椅子18a、テーブル18b、ソファー18cなど)が検知された時の進行方向変更のような作動をロボット100に取らせる挙動300を実行することができる。ロボットコントローラ150は、各ホイールモジュール120a、120bの回転速度及び方向を独立して制御することにより、掃除面にわたってあらゆる方向でロボット100を操縦することができる。例えば、ロボットコントローラ150は、ロボット100を前方F及び逆(後方)A方向に操縦し、又はロボット100を右R又は左L方向に向けることができる。
図4及び5を参照すると、信頼性のあるロバストな自律移動を達成するために、ロボット100は、複数の異なるタイプのセンサ510を有するセンサシステム500を有することができ、これらセンサを互いに連携して用いて、ロボット100がその環境において行うべき作動について知的判断を下すことを可能にするに足るロボット環境の認識を作り出すことができる。センサシステム500は、ロボット本体110によって担持される1又は2以上のタイプのセンサ510を有することができ、これらのセンサは、障害物検知/障害物回避(ODOA)センサ、通信センサ、ナビゲーションセンサなどを含むことができる。例えば、これらのセンサ510は、以下に限定されないが、近接センサ、接触センサ、カメラ(例えば、ボリューメトリック点群画像処理、3次元(3D)画像処理、又は深度図センサ、可視光カメラ及び/又は赤外線カメラ)、ソナー、レーダー、LIDAR(光検知及び測距、これは散乱光の特性を測定して遠方目標の距離及び/又は他の情報を求める光学的遠隔測定を必要とする場合がある)、LADAR(レーザ検知及び測距)などを含むことができる。一部の実施では、センサシステム500は、測距ソナーセンサ、近接段差検知器、接触センサ、レーザスキャナ、及び/又は撮像ソナーを含む。
一部の例では、センサシステム500は、ロボット100の加速度及びロボット100全体の重心CGRに対するロボット100の向きを測定しモニタするためにコントローラ150と通信状態にある慣性測定ユニット(IMU)510dを有する。IMU510dは、空間におけるロボット100の相対的な向きを測定するために1又は2以上のジャイロスコープ(以下、「ジャイロ」)及び1又は2以上の直線加速度計を有する。コントローラ150は、IMU510dからのフィードバックにおいて、正常な妨げのない作動に対応する閾値信号からのあらゆる偏差をモニタすることができる。例えば、ロボット100が直立位置から縦揺れを始める場合に、ロボット100は、乗り上げている、重心が高い、旋回している、割り込んでいるか又は他の妨げを受けている可能性があり、又は誰かが急に重い積載荷重を加えた可能性がある。これらの例では、ロボット100の安全な作動を確保するために、緊急措置(以下に限定されないが、回避操縦、再較正、及び/又は音声的/視覚的警告の発令を含む)を取ることが必要な場合がある。
停滞から加速する時には、コントローラ150は、ロボットの転倒を防止するために、全体の重心CGRからの慣性モーメントを考慮することができる。コントローラ150は、現在の慣性モーメントを含むロボットの姿勢モデルを用いることができる。積載荷重を支えている場合に、コントローラ150は、全体の重心CGRへの負荷影響を評価し、ロボットの慣性モーメントの動きをモニタすることができる。これが不可能な場合に、コントローラ150は、実験的に安全限界を決定するために、駆動システム120に試験トルク指令を適用して、IMU510d用いてロボット100の実際の直線及び角加速度を測定することができる。
IMU510dは、相対値に基づいてロボット100のピッチ角、ロール角、ヨー角を測定し、かつモニタすることができる。一部の実施では、更に、ある時間にわたって一定の移動によりIMU510dをドリフトさせることができる。コントローラ150は、リセット指令を実行し、IMU510dを再較正してゼロにリセットする。IMU510dを再較正する前に、コントローラ150は、ロボット100が傾斜しているか否かを決定して、ロボット100が平面上にある場合にのみリセット指令を発令する。
一部の実施では、ロボット100が障害物18に衝突せず、又は階段から落ちることなく床面10をナビゲートすることができ、並びに掃除のために比較的汚れた床領域を知能的に認識することができるように構成されたナビゲーションシステム600をロボット100は含む。これに加えて、ナビゲーションシステム600は、床面10にわたって決定論的パターン及び擬似ランダムパターンでロボット100を操縦することができる。ナビゲーションシステム600は、ロボットコントローラ150上に格納され、及び/又はその上で実行される挙動ベースシステムとすることができる。ナビゲーションシステム600は、センサシステム500と通信して、駆動システム120に対して駆動指令を決定して発令することができる。ナビゲーションシステム600は、ロボット挙動300に影響を与え、並びにそれを構成し、従って、ロボット100が体系的な事前計画的な動きで機能することを可能にする。一部の例では、ナビゲーションシステム600は、センサシステム500からデータを受信し、ロボット100が進むべき望ましい経路を計画する。
一部の実施では、コントローラ150(例えば、1又は2以上のコンピュータプロセッサ152を有するデバイスであって、そのコンピュータプロセッサはその上で実行可能な指令を格納することができる非一時的メモリ154と通信状態にある)は、互いに通信状態にある挙動システム210aと制御調停システム210bとを含む制御システム210を実行する。制御調停システム210bは、ロボットアプリケーション220を制御システム210に対して動的に追加及び削除することを可能にし、各アプリケーション220がいずれかの他のアプリケーション220について知ることを必要とせずにロボット100を制御可能にすることを容易にする。言い換えれば、制御調停システム210bは、アプリケーション220とロボット100のリソース240の間の簡単な優先制御機構を提供する。
アプリケーション220は、メモリに格納され、又はロボット100と通信して、(例えば、プロセッサ上で)並行して実行され、同時にロボット100を制御することができる。アプリケーション220は、挙動システム210aの挙動300にアクセス可能である。独立して配備されたアプリケーション220は、実行時に動的に組み合わされて、ロボットリソース240(例えば、駆動システム120及び/又は掃除システム160、160a、160b)を共有する。実行時にアプリケーション220間でロボットリソース240を動的に共有するために、低水準ポリシーが実施される。このポリシーは、どのアプリケーション220が当該アプリケーション220により必要とされるロボットリソース240を支配するか(例えば、アプリケーション220間の優先度階層)を決定する。アプリケーション220は、動的に開始し及び停止し、互いに完全に独立して実行することができる。制御システム210はまた、共に組み合わせて互いに補助することができる複合的な挙動300を可能にする。
制御調停システム210bは、制御アービター260と通信する1又は2以上のアプリケーション220を含むことができる。制御調停システム210bは、アプリケーション220のために制御調停システム210bに対するインタフェースを提供する構成要素を含むことができる。このような構成要素は、認証、分散リソース制御アービター、指令バッファの複雑さを解消してまとめ、アプリケーション220の優先順位付けを調整するなどを行うことができる。制御アービター260は、あらゆるアプリケーション220から指令を受信し、アプリケーションの優先度に基づいて単一指令を生成し、これを関連するリソース240に通知する。制御アービター260は、その関連するリソース240から状態フィードバックを受信し、これをアプリケーション220にまで送り返すことができる。ロボットリソース240は、1又は2以上のハードウエアコントローラを有した機能モジュール(例えば、アクチュエータ、駆動システム、及びこれらの群)のネットワークとすることができる。制御アービター260の指令は、特定の作動を実行するリソース240に独特のものである。コントローラ150上で実行可能な力学モデル230は、現在のロボットの状態を評価するために、ロボット100の重心(CG)、慣性モーメント、及び様々な部分の慣性の外積を計算するように構成される。
一部の実施では、挙動300は、センサシステム500のような複数のソースからの検知フィードバックを先験的限界及び情報を用いてロボット100の許容作動に関する評価フィードバックに結合させる階層的状態完全評価機能を提供する接続構成要素である。挙動300は、アプリケーション220にプラグ可能である(例えば、アプリケーション220の内部又は外部にある)ので、アプリケーション220又は制御システム210の他のいずれかの部分を修正することなく削除及び追加することができる。各挙動300は、独立したポリシーである。挙動300をより強力にするために、複数の挙動300の出力を別の挙動の入力に取り付けて、複雑な組合せ機能を有することができるようにすることができる。挙動300は、ロボット100の全体的認識の管理可能部分を実施することを目的とする。
図示の例では、挙動システム210aは、センサ510によって検知された障害物18に基づいて、応答的ロボット作動(例えば、方向転換、Uターン、障害物18前での停止など)を決定するための障害物検知/障害物回避(ODOA)挙動300fを含む。別の挙動300には、検知した壁面20に隣接して(例えば、壁面20に向けて及び壁面から離れて駆動する蛇行パターンで)駆動するための壁面追従挙動300gを含めることができる。別の挙動300には、汚れ捜索挙動300h(そこでは、センサが床面10上の汚れスポットを検知し、ロボット100は掃除するスポットに向けて向きを変える)、スポット掃除挙動300e(例えば、ロボット100は特定スポットを掃除するためにコーンロウパターンを辿る)、段差挙動300j(例えば、ロボット100は段差を検知して段差から落ちるのを回避する)、抗停滞挙動300a、抗傾斜挙動300b、抗吸込み挙動300c、及びホイール−ジャム挙動300dを含めることができる。
一部の例では、挙動システム210aは、ロボット100のステータスを検知する状態挙動310を含み、ロボット100がそのバキューム168に吸い込んだ物体を克服するのを補助するために、又はロボット100が割り込み、傾斜し、乗り上げかけているか又は旋回している時に(例えば、一方のホイールは回っているが、他方のホイールが引っ掛かっている時に)、脱出挙動300iを起こすことができる。一部の例では、状態挙動310は、抗停滞挙動300a、抗傾斜挙動300b、及び抗吸込み挙動300cを含む。
図6Aを参照すると、ロボット100の抗停滞挙動300aを実行する流れ図650が示されている。ロボット100がブロック652で駆動指令を実行/発令するコントローラ150によって床面10を進む時に、ロボット100は、ブロック654で、ロボット100の姿勢を決定するIMU510dからの信号を定期的に受信する。コントローラ150は、判断ブロック656で、受信されたIMU信号に基づいてロボット100が移動しているか又は立ち往生している及び傾斜しているか否かを決定して、どの挙動300を実行すべきかを決定する。ロボット100が駆動指令の後にも動かない場合に、コントローラ150は、ブロック658で抗停滞挙動300aを実行して、ロボット100を解除しようと試みる。ロボット100は静止していない(すなわち、動いている)が傾斜している時に、コントローラ150は、抗傾斜挙動300bを実行してロボット100をその正常面に戻す。一部の例では、センサ信号は、ロボット100が重力方向に対して傾斜していることを指示する。挙動システム210aは、拘束状態を評価するために抗傾斜挙動300bを実行することができる。
ロボット100は、ホイール124a、124bが移動することなく回転しているか又はロボット100が割り込んでいるなどのホイール124a、124bの状態を検知するために複数のパラメータを(例えば、同時又は連続的に)モニタする。これらのモニタされるパラメータは、1)指令された駆動速度、2)符号器のホイール回転速度、及び3)IMU(ジャイロ)の回転速度を含む。例えば、コントローラ150がロボット100に対して前方駆動方向Fに進むように指令を発令したか否か、並びにロボット100が実際に前方駆動方向Fに進んでいるか否かをロボット100は検知する。ロボット100は、ブロック654で、ジャイロ及びホイール符号器をモニタして124a、124bのいずれのホイールが回転していないのかを決定する。ロボット100は、3つのモニタされるパラメータ(指令速度、符号器速度、及びロボット100の向きに関するジャイロの変化速度)が許容範囲内であるか否かを決定する。ロボット100が速く向きを変えるほど、ロボット100は3つのモニタパラメータ間の変動に対して許容範囲を大きくする。許容範囲値はまた、ジャイロ及びホイール符号器121a、121bの較正、並びにロボットの形状がホイール124a、124bの方向転換及び滑りに耐えるか否かに依存する。
例えば、ロボット100が旋回している場合に、片方のホイール124a又は124bは、引っ掛かっている可能性がある。コントローラ150がロボット100に対して前方駆動方向Fに進むように指令を発令したか否か、並びにロボット100が実際に前方駆動方向Fに進んでいるか否かをロボット100のセンサシステムは決定する。ロボット100がコントローラ150に指令されたように前方駆動方向Fに移動していない場合に、ロボット100は、ホイール124a、124bの内いずれのホイールが回転していないかを決定し、ホイール符号器121a、121b及びIMU510dのジャイロの回転速度をモニタしながら、定められた速度で反時計回りに向きを変える。判断ブロック656で、ロボット100は、指令された回転速度(コントローラ150から受信した)、符号器回転速度、及びIMU回転速度を比較して、ロボット100の実際の動きがコントローラ150によって発令された指令と一致していることを確認する。3つのパラメータ値が指令された動きとの一致に関してパラメータの許容範囲閾値内にない場合に、ロボット100は停滞を検知する。従って、ロボットは、判断ブロック656で符号器変化速度及びIMU変化速度が指令された駆動速度と比較して許容変化速度内にあるか否かを決定する。符号器変化速度及びIMU変化速度が指令された駆動速度と比較して許容変化速度内にある場合に、ロボット100は、ブロック658で、ロボット100の拘束された側から円弧状に離れさせることにより、抗停滞挙動300aを実行する。しかし、変更の符号器変化速度及びIMU変化速度が指令された駆動速度と比較して許容変化速度内にない場合に、ロボットは、ブロック652で、床面10をロボットに進ませる駆動指令を発令し続ける。判断ブロック660は、ロボット100がブロック652で駆動指令を発令し続ける必要の有無を決定する。一部の実施では、拘束状態から脱出するために、ロボット100は、障害から後退し、動かないホイール(拘束を受けている側)から90度向きを変え、かつ前方駆動方向Fに進み、システム全体へ影響する注意不足を防止するために約−135度から+135度の間の軌道を前方に動く。図6Bに示すように、円弧状の移動600a、600bは、いずれの方向にも同じ半径を有するが、進む距離は、円弧状移動600a、600bの軌道に沿う様々なランダムに選択される点605a−605jでの円弧状移動600a、600bの停止により変化する。ランダムに延びる円弧軌道600a、600bを進むことにより、ロボット100は、カバレッジを最大化し、直ちにまた障害物18に遭遇する可能性を最小にする。
一部の実施では、バンパー130が障害物18に遭遇している一方でロボット100が図6Cに示すように床面10と突出部620の間に割り込んだ状態に入っていることを示してホイールモジュール120a、120bが下降している及び/又は圧力センサを押しているということを検知するために、追加のセンサ510を用いることができる。コントローラ150は、割り込みに対する圧縮センサ及び/又はホイール下降センサをモニタし、抗停滞指令を発令してキャビネットの突出部620のような割り込み状態からロボット100を後退させる。ロボット100は、結果として割り込みの初期段階を検知し、ロボット100が完全に割り込んで脱出不能になる前に脱出挙動を実行する。抗停滞脱出挙動300aは、ロボット100が完全に割り込んで動けなくなる前に、障害からロボット100を後退させる段階、又はロボット100の拘束を受けている側からロボット100を方向転換する段階を含む。一部の例では、挙動システム210aは、ロボットが障害物の下に割り込んでいることを示すセンサ信号に応答して、抗割り込み挙動を実行する。抗割り込み挙動は、駆動システム120に対してフルパワーの逆駆動指令を発令する段階を含むことができる。これに加えて、逆駆動指令は、ロボット100の拘束側R、Lから向きを変える段階を必要とする場合がある。
図7A及び7Bを参照すると、一部の実施では、コントローラ150は、「立ち往生−検査−急転回」ルーチンを実行してロボット100が乗り上げたか否かを決定する。「立ち往生−検査−急転回」ルーチンは、少なくとも2つの反対方向への連続する「蛇行」又は方向転換を実行する。図7Aは円形のバンパー130を有するロボット100を示すが、一方、図7Bは正方形のバンパー130を有するロボット100を示している。ロボット100が実質的に前後軸線Yに沿って移動する時に、ロボット100が中心垂直軸Zの周りを後方に及び前方に回転するように、ロボット100は交互に繰り返される右及び左の方向転換を行うことができる(以降、蛇行運動として言及する)。ロボット100の蛇行軌道は、非常に小さい円弧である。一部の例では、ロボット100は、10cmの前方F駆動ドライブにわたって約5度から10度だけ向きを変える。ロボット100は、定期的に蛇行運動を行って乗り上げによって生じる停滞を検査することができる。ロボット100が最初に蛇行運動を行う時に、コントローラ150は、回転中に3つのパラメータ、指令された駆動速度、符号器ホイール回転速度、及びIMU(ジャイロ)回転速度をモニタする。蛇行運動中、3つの測定を一緒に追跡しなければならない。3つのパラメータが特定期間にわたってそのパラメータの許容閾値内を辿っていない場合に、コントローラ150は、ロボット100が(コントローラ150により)指令された最初の蛇行運動を実行しなかったことを示す信号を受信する。ロボット100は、その状態を「乗り上げの疑い」に変更して、最初の蛇行角度θよりも大きい第2蛇行角度θ(例えば、より明白な円弧角)を実行する。
コントローラ150は、ロボット100が「乗り上げの疑い」状態で前方方向Fに進んでいる時には、増加した蛇行に関してIMU510d及びホイール符号器121a、121bをモニタする。IMU510d及びホイール符号器121a、121bのセンサ信号が、ロボット100が第2の蛇行運動(それは最初の蛇行運動よりも大きい)を実行していることを確認しない場合に、ロボット100は、指令通りに第2の蛇行運動を実行しなかったことになり、乗り上げていることになる。その時にはロボット100は、脱出挙動300i、例えば、一部の実施では円弧に沿ったランダム選択の長さに関して円弧軌道を示して進む段階を伴うスピン−イン−プレースを開始することができる。
一部の実施では、蛇行運動は、ロボット100が前方駆動方向Fに移動している間、3つの方向転換から構成される。第1の方向転換は、ロボット100の向きを前方進行軌道から角度dθだけ変える。第2の方向転換は、ロボット100の向きを角度−2dθだけ変え、第3方向転換は、dθの方向転換でロボット100を元の経路に再び合わせる。蛇行運動により、ロボット100を掃除作動中のスクラバーとして作動可能にすることができる。これに加えて、乗り上げ状態の検知に関して上述したように、ロボットコントローラ150は、蛇行運動を用いてロボット停滞を検知することができる。これに加えて又はこれに代えて、ロボットコントローラ150は、ロボット100を操縦してほぼ適切に回転させることができ、ロボット100が、例えば、コーナから又は障害物18から巧みに脱出することができるようにする。ロボットコントローラ150は、掃除面10を進みながら、実質的にランダムな(例えば、擬似ランダム)経路上にロボット100を向けることができる。ロボットコントローラ150は、ロボット100の周りに配置された1又は2以上のセンサ510(例えば、隆起、近接、壁面、停滞、及び段差センサ)に応答することができる。ロボットコントローラ150は、センサ510から受信した信号に応答して、ホイールモジュール120a、120bを向け直すことができ、掃除表面を処理しながら、ロボット100に障害物18や散らかった物を回避させる。ロボット100が作動中に立ち往生した又は引っ掛かった場合に、ロボットコントローラ150は、一連の脱出挙動300iを通してホイールモジュール120a、120bに指令を発令することができるので、ロボット100は脱出して通常の作動(例えば、掃除作動)を再開することができる。
図8を更に参照すると、抗停滞挙動300aの流れ図800は、ロボット100が乗り上げて動かなくなっているか否かを決定する。抗停滞挙動300aは、ロボット100をIMU501dにより検知可能な方法で進ませる。乗り上げは、ロボット100が十分に高い障害物18(例えば、絨毯10b、ランプの土台)の上に突進して、ロボット100のホイール124a、124bがロボット100を駆動するに十分な牽引力を持たない(少なくとも1つのホイールは床面10に触れていない)場合に起こる。図7A及び7Bに戻って参照すると、抗停滞挙動300aは、駆動システム120にロボット100の経路をその直線的な経路から蛇行角θに変えるように指示して、ロボット100の経路を湾曲した経路62に変え、その後に元の直線的な経路60に戻る。図8に示すように、抗停滞挙動300aは、ブロック802で蛇行角θを設定し、ブロック804でロボットの経路を変えるために駆動システム120に蛇行角θを有する駆動指令を発令し、かつブロック806でIMU510dの信号及び符号器121a、121bの信号を受信する。一部の例では、蛇行運動は、ロボット100が前方駆動方向Fに動いている間に、3つの方向転換を含む。第1の方向転換は、ロボット100の向きを前方進行軌道から角度dθだけ変える。第2の方向転換は、ロボット100の向きを角度−2dθだけ変え、第3方向転換は、dθの方向転換でロボット100を元の経路に再び合わせる。蛇行運動は、ロボット100の進行方向を変え、従って、IMU510dはその運動を検知する。蛇行運動が行われると、IMU510dはその運動を検知して、センサシステム500は制御システム210が受信するセンサ信号を発令する。制御システム210は、受信したセンサ信号を発令された抗停滞挙動300aに対して予期される応答と比較する。ロボット100が最初に蛇行する時に、コントローラ150は、指令された駆動速度、符号器のホイール回転速度、及びIMU(ジャイロ)の回転速度をモニタする。蛇行運動の間、3つの測定は合わせて行うべきである。従って、コントローラ150は、判断ブロック808で符号器変化速度及びIMU変化速度が指令された駆動速度と比較して許容変化速度内にあるか否かを決定する。この3つのパラメータが特定期間にわたってそのパラメータの許容閾値内を辿っている(例えば、判断ブロック808が「イエス」である)場合に、コントローラ150はブロック820でロボット100が停滞状態にないことを示す信号を受信し、ロボット100はブロック822で経路を進み続けることができる。この3つのパラメータが特定期間にわたってそのパラメータの許容閾値内を辿っていない(例えば、判断ブロック808が「ノー」である)場合に、コントローラ150は、ロボット100が指令通りに最初の蛇行運動を実行しなかったことを示す信号を受信する。ロボット100は、その状態を「乗り上げの疑い」に変更し、最初の蛇行角度θよりも大きい第2蛇行角度θ(例えば、より明白な円弧角)を有するブロック810で第2蛇行を実行して、ロボット100が停滞状態にあることを確認する。コントローラ150は、指令された進行速度、符号器のホイール回転速度、及びIMU(ジャイロ)の回転速度をモニタして、その3つの値が判断ブロック812でパラメータ許容範囲又は閾値内でない場合(例えば、判断ブロック812は「ノー」である)には、ロボット100は、後退する、ロボット100の拘束を受けた側から方向転換する、及び円弧軌道又はランダムな範囲を移動するなどの抗停滞挙動300aを実行する。しかし、この3つのパラメータが判断ブロック812でそのパラメータの許容範囲又は閾値内にある(例えば、判断ブロック812が「イエス」である)場合に、コントローラ150は、ブロック816でロボット100が停滞状態にないことを検知し、ロボット100はブロック818で経路を進み続けることができる。
上述のように、一部の実施では、コントローラ150は、ロボット100の運動を検知するIMU510dからのセンサ信号を受信するまで、従って、ロボット100を停滞位置から解除するまで、抗停滞挙動300aを実行することができる。一部の例では、角度θは予め設定されている。制御システム210は、ロボット挙動300とロボットが傾斜する頻度とをモニタして、結果として角度を増減させることによって角度θを調整する。
一部の実施では、ロボット100が、北、南、東、西、北東、北西、南東、南西の位置のうちの1方向に閾値角を超えて(例えば、15度を超えて)、かつ閾値期間を超えて(例えば、3秒を超えて)傾斜する場合に、抗傾斜挙動300bをトリガすることができる。閾値期間は、0.1〜10秒とすることができる。
一部の例の中で、図9A、10A、及び11Aを参照すると、ロボット100は第1表面10a(例えば、硬い表面)から第2表面10b(例えば、絨毯)へ、又はその逆に移動し、そこでは各床面10は他方の床面10とは異なる高さを有する。IMUからの信号を用いて、ロボット100の背景挙動300は、ロボット100の傾斜及びロールをモニタして、ロボット100が所定時間(傾斜期間閾値)、例えば、2分の1秒を超えて床面から離れないようにする。この傾斜期間閾値は、駆動の最初に4分の1秒の閾値で始まり、駆動の終わりに近づく時に増加し、例えば、1秒まで増加する。ロボット100が立ち往生することなくその任務(掃除駆動)を終える場合に、傾斜期間閾値は、次の駆動ではより高い値で始まる。例えば、傾斜期間閾値は1秒で始まり、そこに留まる。ロボット100が駆動中に立ち往生した(すなわち、停滞状況に遭遇した)場合に、傾斜期間閾値は、次の駆動ではより低い値、例えば、8分の1秒で始まり、ロボット100が停滞状況なしに前進する時に駆動全体を通して増加する。別の実施では、ロボット100を時限式に発進させる(すなわち、無人で計画的な)場合に、ロボット100の傾斜期間閾値はより高い値で始まることができ、ユーザのボタン押しによりロボット100を駆動に送り出す場合に、傾斜期間閾値はより低い値で始まることができる。
このような状況では、コントローラ150は、ロボット100に平面10へ復帰させる脱出挙動300iを発令するために、(例えば、高くした出入口の敷居で)ロボット100が傾斜しているか否かを決定する。ロボット100が特定期間(すなわち、傾斜期間閾値)の間、閾値角αTを超えて傾斜(ピッチ又はロール)していることをIMU510dが検知すると、抗傾斜挙動300bをトリガさせることができる。閾値角αTはプログラマブルにすることができる。一部の実施では、コントローラ150は、ロボットの性能をモニタして、その性能に基づいて閾値角αTを調整する。同様に、上述のように、傾斜期間閾値もロボット100の性能に基づいて調整可能にすることができる。
図10Aの流れ図を参照すると、一部の例では、コントローラ150は、ブロック1001でIMU510dから信号を受信し、判断ブロック1002で、受信した信号はロボット100が傾斜していることを示すか否かを決定する。ロボット100が傾斜していない(例えば、判断ブロック1004は「ノー」である)場合に、ロボット100は、ブロック1006でその意図する活動を続ける(例えば、ロボット活動を再開する)。しかし、ロボット100が傾斜している(例えば、判断ブロック1004は「イエス」である)場合に、コントローラ150は、判断ブロック1008で傾斜角αが閾値傾斜角度αTを超えるか否かを決定する。傾斜角αが閾値傾斜角度αTを超える(例えば、判断ブロック1008が「イエス」である)場合に、コントローラ150は、ブロック1012で脱出挙動300iを実行して、ロボット100をその傾斜状況から解除し、平面での活動を再開させる。しかし、傾斜角αが閾値傾斜角度αT未満の(例えば、判断ブロック1008が「ノー」である)場合に、コントローラ150は、判断ブロック1010で、ロボット100が閾値期間を超える時間にわたって傾斜し続けているか否かを決定する。ロボット100が閾値期間より短い時間にわたって傾斜し続けている(例えば、判断ブロック1010は「ノー」である)場合に、ロボット100は、ブロック1014でその活動を再開する。しかし。ロボット100が閾値期間Tより長い時間にわたって傾斜し続けている(例えば、判断ブロック1010は「イエス」である)場合に、コントローラ150は、ブロック1012で脱出挙動300iを実行して、ロボット100をその傾斜状況から解除する。従って、コントローラ150は、以下の条件の下でロボットが傾斜しているか否かを決定する。
α<αT、かつt<T;傾斜なし (1)
α<αT、かつt>T;ロボット傾斜あり (2)
ロボット100は、X軸及びY軸周りの組合せ傾斜で傾斜することができ、すなわち、ロボット100はピッチ及びロールを行うことができる。閾値傾斜角αTは、X軸及びY軸周りの各傾斜のベクトル和である。従って、ロボット100がピッチしているだけの場合に、閾値傾斜角αTはピッチ角に等しい。同様に、ロボット100がロールしているだけの場合に、閾値傾斜角αTはロール角に等しい。
図9Aに示すように、ロボット100は硬い床10a(例えば、タイルや硬材)と絨毯10bとの間を移動することができ、一部の事例では、絨毯10bと硬い床10a間の移行は滑らかな移行でなく、硬い床10aから絨毯10bへの移動の場合は上昇であり、又は絨毯10bから硬い床10aへの移動の場合は下降である。従って、ロボット100は、北位置(すなわち、ピッチダウン)又は南位置(すなわち、ピッチアップ)の傾斜を受ける可能性が最も高く、ロボット100は、短時間で傾斜位置から移行することができる。この場合に、その短時間が、抗傾斜挙動300bを発令を決定するために制御システム210を使用する閾値期間(すなわち、傾斜期間閾値)未満であるために、制御システム210は、抗傾斜挙動300bを実行することができない。
図9A及び10Bを参照すると、一部の実施では、ロボット100は、掃除ロボット100である。図10Bの流れ図1050に示すように、コントローラ150は、ブロック1052でIMU510dから信号を受信し、ブロック1054で、受信した信号はロボット100が傾斜していることを示すか否かを決定する。ロボット100が傾斜していない(例えば、判断ブロック1054は「ノー」である)場合に、ロボット100はブロック1082でその掃除活動を続ける。しかし、ロボット100が傾斜している(例えば、判断ブロック1054が「イエス」である)場合に、コントローラ150は、判断ブロック1056で傾斜角αが閾値傾斜角度αTを超えるか否かを決定する。傾斜角αが閾値傾斜角度αTを超える(例えば、判断ブロック1056が「イエス」である)場合に、コントローラ150は、ブロック1060で脱出挙動300iを実行して、ロボット100をその傾斜状況から解除し、その後にブロック1080で平面での活動を再開させる。しかし、傾斜角αが閾値傾斜角度αT未満の(例えば、判断ブロック1056が「ノー」である)場合に、コントローラ150は、判断ブロック1058で、ロボット100が閾値期間を超える時間にわたって傾斜し続けているか否かを決定する。ロボット100が閾値期間より短い時間にわたって傾斜し続けている(例えば、判断ブロック1058が「ノー」である)場合に、ロボット100はブロック1082でその掃除活動を再開する。しかし。ロボット100が閾値期間(すなわち、傾斜期間閾値)を超える時間にわたって傾斜し続けている(例えば、判断ブロック1010が「イエス」である)場合に、コントローラ150は、ブロック1060で脱出挙動300iを実行して、ロボット100をその傾斜状況から解除する。脱出挙動300iは、ブロック1062でロボット100のブラシ162及びバキューム168を停止する段階を含むことができ、ロボット100がピッチアップしている(すなわち、南に傾斜している)場合に、ロボット100はブロック1066で、自身を傾斜させた障害物18から後退する。判断ブロック1068でロボット100がピッチダウンしている(すなわち、北に傾斜している)場合に、ブロック1070でロボット100は前進する。ロボット100が片側(すなわち、左又は右)にロールしている(例えば、判断ブロック1064、1068が「ノー」である)状況では、ロボット100は、ブロック1072でロール角が閾値ロール角度(例えば、1〜5度)又は代わりに閾値傾斜角度αT以内になるまで、障害物18から向きを変え、その後にロボット100は前進し掃除を再開する。ロボット100は閾値傾斜角度αTを超えて傾斜しているが、抗傾斜挙動300bを実行すべき閾値期間未満の場合に、ロボット100は、間に凸凹の分かれ目を有する2つの異なる表面から移行しており、従って潜在的な停滞に遭遇してない可能性がある。
一部の例では、ロボット100は、例えば、壁面20に固定されたひも又はコード18e(図11A)(例えば、ブラインドのひも、ドレープのひも、カーテンのひも、シェードのひもなど)を吸い込んだ場合に、掃除をしながら傾斜する。ロボット100がひも18eを吸い込んだ場合に、ひもは従動ローラブラシ162に巻き付いて、ロボット100を傾斜させる。IMU510dは、ロボット100の傾斜を検知して、その結果、抗傾斜挙動300bをトリガすることができる。コントローラ150は、ローラブラシ162(例えば、ローラブラシ)を駆動するモータ122a、122bに僅かに逆付勢を設定する抗タッセル挙動300kを実行することができ、従動ローラブラシ162は逆方向に積極的に回転する(これはひも18を再び絡ませる場合がある)のではなく、ロボット100が吸い込んだひも18eから後退する際に従動ローラブラシ162の逆回転を補助するようにする。ロボット100はまた、バキューム168を停止して傾斜状況を生じた位置から離れようと試み、ロボット100がひも18eをほどいて脱出することができるようになる。
図9Bを参照すると、一部の実施では、制御システム210は、例えば、非一時的メモリ154に経由ポイントを格納することにより、ロボット100の駆動経路610を記録する。制御システム210は、ある時間(例えば、0.5秒、1秒、2秒など)の間、駆動経路610の履歴を保持することができる。一部の例では、抗傾斜挙動300bが実行された状態で、ロボット100は、それ以前に記録された経路612を辿って安全な領域へ行き、再び立ち往生することを回避する。一部の例では、コントローラ150は、ロボットリソース240に対する、時間的に最後に記録された経由ポイントで始まる格納された経由ポイントを辿る指令の発令を生じる遡及的進行挙動300mを実行する。遡及的進行挙動300mは、様々な以前通過した座標を相互に接続する復路に沿って、自律式移動ロボット100を操縦して戻す。一部の例では、停滞状態の回避又は抗傾斜挙動300bの後で、ロボット100は、傾斜を引き起こした障害物18から定められた距離になって初めてこの最後の実行操縦を試みる。
図11A−12を参照すると、一部の実施では、挙動システム210aは抗吸込み挙動300cを含み、抗吸込み挙動300cは、ロボット100が大きい物体12(例えば、靴下、スカーフ)を拾い上げないようにする。図3に戻って参照すると、一部の実施では、ロボット100は、駆動ホイール124a、124bの前方でロボット100の前方底面部分116上に配置された機械式スイッチ530を有する。機械式スイッチ530は、ロボット100が拾い上げるべきではない物体12、18を検知する。スイッチ530は、互いに隣接して配置することができ、又はある距離だけ(等距離的に)引き離すことができる。機械式スイッチ530は、本体110により定められる横断X軸線に沿って実質的に対向させることができる。ロボット100は、床面10からロボット100の底面116までのクリアランス距離Cを有する。機械式スイッチ530は、ロボット100の底面116から距離CMを有する。CTは、ロボット100が機械式スイッチ530を作動させることなく進行することができるクリアランス距離閾値である。
C=CM+CT (3)
T=C−CM (4)
ロボット100が閾値高さCTを超える高さC0を有する障害物18を横切ると、物体12はスイッチ又は複数のスイッチ530を物理的に作動させることができる。しかし、障害物18が閾値高さCT未満の高さC0を有する場合に、物体12はスイッチ又は複数のスイッチ530を物理的に作動させない。
例えば、物体12との接触は回路の閉鎖を生じ、スイッチ530を作動させる。閾値期間を超える時間にわたってスイッチ530が同時に作動すると、挙動システム210aは、抗吸込み挙動300cを実行することができる。閾値期間は、調整可能及び/又は可変とすることができる。抗吸込み挙動300cはバキューム168を停止させ、及び/又はローラブラシ162に逆付勢を掛けることができる(例えば、逆方向に積極的に回転させて、ローラブラシ162に巻き付いたコードが、ロボットが後退する際にほどけることが可能になるように)。これに加えて又はこれに代えて、ロボット100は、特定期間(例えば、0.5秒、0.6秒など)の間、そのZ軸周りを小角移動することによって蛇行する。その場合に、コントローラ150は、ローラブラシ162の回転を停止させる指令を発令して、別の時間(例えば、1.8秒)の間、ロボット100が蛇行するように指令する。その後に、ロボット100は挙動300を再開する。
図12の流れ図1200を参照すると、一部の例では、機械式スイッチ530は、ロボット100が拾い上げる必要がある大きいデブリ片によってブロック1202で作動する。このような場合に、コントローラ150は、デブリ検知器510aが作動したか否かを決定する。もしそうであれば、コントローラ150は、ローラブラシ162を作動させてデブリ14を拾い上げる。しかし、デブリ検知器510aが作動しなかった場合に、コントローラ150は判断ブロック1204で、IMU510d及び/又はホイール符号器121a、121bが慣性モーメントの変化を検知したか否かを決定する。IMU510d及び/又はホイール符号器121a、121bが運動を検知した(例えば、判断ブロック1204が「イエス」である)場合に、ロボット100は、自身が停滞状態にあるか否かを決定し、もしそうならば、図8A及び8Bに関して上述したように、ブロック1220で抗停止挙動310aを実行する。IMU510d及び/又はホイール符号器121a、121bが運動を検知しなかった(例えば、判断ブロック1204が「ノー」である)場合に、挙動システム210aは、ブロック1220で抗吸込み挙動300cを実行する。抗吸込み挙動300cは、ロボットを停止させる段階(ブロック1208)、ブラシを逆回転させる段階(ブロック1210)、ロボットを蛇行させる段階(ブロック1212)、ブラシを停止させる段階(ブロック1214)、及び/又は、ブラシ停止後にブロック1218で掃除を再開する前にロボットを蛇行させる段階(ブロック1216)を含むことができる。その結果、ロボット100が傾斜しているというIMU510dによる指示は、抗吸込み挙動に優先する。一部の例では、機械式スイッチ530が閾値期間にわたって作動すると、コントローラ150は、抗吸込み挙動300cを開始する。
図13の流れ図1300を参照すると、一部の実施では、挙動システム210aは、ホイール−ジャム挙動300dを含む。挙動システム210aは、ホイールモジュール120a、120bのホイール124a、124bがホイール124a、124bに嵌まり込んだ物体12のために動かなくなると、ホイール−ジャム挙動300dを実行する。コントローラ150はブロック1302で、ホイール124a、124bが閾値を超える比率で失速しているというセンサシステム500からの信号を受信する。挙動システム210aは、脱出挙動300iを実行してロボット100の活動を再開することができる。例えば、コントローラ150は、ブロック1304で蛇行角を有する指令を発令し、ブロック1304でIMU510d及びホイール符号器121a、121bから信号を受信して、判断ブロック1308でロボット100が蛇行しているか否かを決定することができる。コントローラ150がロボット100は蛇行している(例えば、判断ブロック1308が「イエス」である)場合に、コントローラ150は、ブロック1310でロボット100に非停滞と決定することができる。しかし、コントローラ150がロボット100は蛇行していない(例えば、判断ブロック1308が「ノー」である)場合に、コントローラ150は、ブロック1312でロボット100に停滞と決定し、ブロック1314で脱出挙動300iを実行することができる。一部の例では、挙動システム210aは、物体18d(例えば、靴下)が取り除かれてホイール124a、124bがもはや失速しなくなるまで、右及び左のホイール124a、124bに対して交互に逆駆動指令を発令させる蛇行挙動300lを実行する。
図14は、自律式移動ロボット100を作動させる方法1400のための作動の例示的配置を与える。方法1400は、センサシステム500からセンサ信号を受信する段階1410を含む。センサ信号は、慣性測定値又は角度方向を含む。方法1400は、コンピュータプロセッサ152上で挙動システム210aを実行する段階1420を更に含む。挙動システム210aは、センサシステム500からのセンサ信号を受信し、センサ信号に基づいて少なくとも1つの挙動300を実行する。センサ信号が、ロボット100が静止していることを示す場合1430に、挙動システム210aは、抗停滞挙動300aを実行して停滞状態(例えば、割り込み、乗り上げ、又は旋回)を評価し、センサ信号が、ロボット100が接地面10(例えば、床面)に対して傾斜していることを示す場合に、挙動システム210aは、抗傾斜挙動300bを実行して拘束状態を評価する。
一部の実施では、抗停滞挙動300aは、蛇行角θを有する蛇行指令の発令を含む。蛇行指令は、互いに対して蛇行角θだけの角度を成して交互に左右駆動方向へ駆動する駆動指令を含む。方法1400は、コンピュータプロセッサ152でセンサシステム500から第2センサ信号を受信する段階を更に含む。第2センサ信号が、第1蛇行角θを有する第1蛇行指令を実行した後にロボット100が停滞していることを示す場合に、抗停滞挙動300aは、第1蛇行角を超える第2蛇行角を有する第2蛇行指令を発令する。
一部の例では、方法1400は、ロボット100が重力方向に対して少なくとも閾値期間Tにわたって傾斜している時に抗傾斜挙動300bを実行する段階を含む。方法1400は、ロボット100が重力方向及び前方駆動方向Fに対してピッチアップしている時に前方駆動指令を実行する段階と、ロボット100が重力方向及び前方駆動方向Fに対してピッチダウンしている時に逆駆動指令を実行する段階とを含むことができる。
一部の例では、方法1400は、ロボット100が重力方向に対して閾値角αTよりも大きい角度で傾斜している時に抗傾斜挙動300bを実行する段階を含む。方法1400は、ロボット100が重力方向及び前方駆動方向Fに対してピッチアップしている時に前方駆動指令を実行する段階と、ロボット100が重力方向及び前方駆動方向Fに対してピッチダウンしている時に逆駆動指令を実行する段階とを含むことができる。
一部の実施では、方法1400は、駆動システム120a、120bの駆動ホイール124a、124b前方のロボット100の底面116に配置された機械式スイッチ530を作動させる段階を更に含む。機械式スイッチ530は、障害物18が機械式スイッチ530に接触する時に起動する。これに加えて、方法1400は、機械式スイッチ530が作動してセンサシステム500が停滞したロボット100を検知した場合に抗停滞挙動300aを実行する段階を含むことができる。図11Bに戻って参照すると、機械式スイッチ530は、ロボット100の底面116から距離CMを有する。CTは、ロボット100が機械式スイッチ530を作動させることなく進行することができるクリアランス距離閾値である(図3及び4参照)ロボット100が、閾値高さCTを超える高さC0を有する障害物18を横切ると、物体12はスイッチ又は複数のスイッチ530を物理的に作動させることができる。しかし、障害物18が閾値高さCT未満の高さC0を有する場合に、物体12はスイッチ又は複数のスイッチ530を物理的に作動させない。
一部の実施では、方法1400は、掃除システム160を用いて床面10を掃除するか又は処理する段階を含む。方法1400は、機械式スイッチ530が作動してセンサシステム500が運動を検知した場合に抗吸込み挙動300cを実行する段階を含むことができる。抗吸込み挙動300cは、掃除挙動(例えば、スポット掃除挙動300e、汚れ捜索挙動300h)を停止させるための掃除停止指令の発令を引き起こし、蛇行角θを有する蛇行指令を発令する。蛇行指令は、互いに対して蛇行角θだけの角度を成して交互に左右駆動方向へ駆動する駆動指令を含む。蛇行指令により、ロボット100はホイール124a、124bの失速を引き起こす物体18d(例えば、靴下)を解除することができる。一部の例では、方法1400は、ロボット100のホイール124a、124bが失速閾値未満の失速速度で失速していることを示すセンサシステム500からの信号をコントローラ150が受信するとホイール−ジャム挙動300dを実行する段階を含み、ホイール−ジャム挙動300dは、ロボット100の失速したホイール124a、124bを解除する蛇行指令の発令を引き起こす。
本明細書に説明したシステム及び技術の様々な実施は、デジタル電子回路及び/又は光学回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウエア、ファームウエア、ソフトウエア、及び/又はその組合せで達成することができる。これらの様々な実施は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能及び/又は逐次解釈実行可能な1又は2以上のコンピュータプログラムにおける実装を含むことができるが、そのプログラマブルプロセッサは、専用又は汎用とすることができ、ストレージシステム、少なくとも1つの入力デバイス、及び少なくとも1つの出力デバイスとの間でデータ及び指令を受信、並びに送信するように接続されている。
これらのコンピュータプログラム(プログラム、ソフトウエア、ソフトウエアアプリケーション、又はコードとしても公知)は、プログラマブルプロセッサのための機械指令を含み、高レベル手続き型及び/又はオブジェクト指向プログラミング言語、及び/又はアセンブリ言語/機械語で実装することができる。本明細書に用いる「機械可読媒体」及び「コンピュータ可読媒体」とは、機械指令及び/又はデータをプログラマブルプロセッサに提供するのに使用されるあらゆるコンピュータプログラム製品、非一時的コンピュータ可読媒体、装置、及び/又はデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理部デバイス(PLD))を指し、機械可読信号として機械指令を受信する機械可読媒体を含む。用語「機械可読信号」とは、機械指令及び/又はデータをプログラマブルプロセッサに提供するのに使用されるあらゆる信号を指す。
本明細書に説明した主題及び機能的作動の実施は、デジタル電子回路又はコンピュータソフトウエア、ファームウエア、又はハードウエアに実施することができ、かつ本明細書に開示された構成及びこれらの構成均等物又はこれらの1又は2以上の組合せを含む。これに加えて、本明細書に説明した主題は、1又は2以上のコンピュータプログラム製品、すなわち、データ処理装置によって実行するために又はデータ処理装置の作動を制御するためにコンピュータ可読媒体上に符号化されたコンピュータプログラム指令の1又は2以上のモジュールとして実装することができる。コンピュータ可読媒体は、機械可読ストレージデバイス、機械可読ストレージ基板、メモリデバイス、機械可読伝播信号を発生させる構成物、又はこれらの1又は2以上の組合せとすることができる。用語「データ処理装置」、「コンピュータデバイス」、及び「コンピュータプロセッサ」は、データを処理するあらゆる装置、デバイス、及び機械を包含し、例えば、プログラマブルプロセッサ、コンピュータ、又は複数のプロセッサ又は複数のコンピュータを含む。装置は、ハードウエアに加えて、対象のコンピュータプログラムに対する実行環境を生成するコード、例えば、プロセッサファームウエア、プロトコルスタック、データベース管理システム、オペレーティングシステム、又はこれらの1又は2以上の組合せを構成するコードを含むことができる。伝播信号は、人工的に生成される信号、例えば、好ましい受信装置に送信する情報を符号化するのに生成される機械生成電気信号、光信号、又は電磁信号である。
同様に、図面において作動を特定の順序に示しているが、これは、このような作動を図示の特定順序で又は順次実行すること、又は望ましい結果を得るために例示の全作動を実行することを要求するものであると解釈すべきではない。特定の状況では、マルチタスク及び並列処理を有利とすることができる。これに加えて、上述の実施形態における様々なシステム構成要素の分離は、全ての実施形態においてこのような分離を必要とすると解釈すべきでなく、また、説明したプログラム構成要素及びシステムは、一般的に、単一ソフトウエア製品に統合することができ、又は複数のソフトウエア製品にパッケージ化することができる。
多くの実施形態を説明した。それでも尚、本発明の開示の精神及び範囲から逸脱することなく様々な修正を行うことができる点を理解しなければならない。従って、他の実施形態も特許請求の範囲にある。例えば、特許請求の範囲に列挙するアクションは、異なる順序で実行可能であり、依然として望ましい結果を達成することができる。
100 自律式移動ロボット
110 ロボット本体
140 ユーザインタフェース
164 サイドブラシ
500 センサシステム

Claims (22)

  1. 自律式移動ロボット(100)であって、
    前方駆動方向(F)を定めるロボット本体(110)と、
    前記ロボット本体(110)を支持し、かつ床面(10)にわたって前記ロボット(100)を操縦するように構成された駆動システム(120)と、
    ホイール符号器(121a、121b)とロボット(100)の姿勢を測定するための慣性測定ユニット(510d)とを含み、ロボット(100)の該姿勢を示すセンサ(510)信号を発するセンサシステム(500)と、
    前記駆動システム(120)及び前記センサシステム(500)と通信し、挙動システム(210a)を実行するコンピュータプロセッサ(152)を有するコントローラ(150)であって、該挙動システム(210a)が、該センサシステム(500)から前記センサ(510)信号を受信し、かつ該センサ(510)信号に基づいて少なくとも1つの挙動(300)を実行する前記コントローラ(150)と、
    を含み、
    前記挙動システム(210a)は、前記ロボット(100)が拘束されていることを示すセンサ(510)信号に応答して抗停滞挙動(300a)を実行して、拘束の状態を評価し、
    前記挙動システム(210a)は、前記ロボット(100)が重力の方向に対して傾斜していることを示すセンサ(510)信号に応答して抗傾斜挙動(300b)を実行して、傾斜の状態を評価する、
    ことを特徴とするロボット(100)。
  2. 前記駆動システム(120)は、前記センサシステム(500)と共に、第1蛇行角(θ)を有する第1蛇行指令を実行することによって前記拘束状態を評価し、該第1蛇行指令は、該第1蛇行角(θ)だけ互いに対して傾斜した交替する左及び右駆動方向に駆動する駆動指令を含む、ことを特徴とする請求項1に記載のロボット(100)。
  3. 前記コントローラ(150)が、前記ロボット(100)が指令通りに蛇行駆動運動を示していないことを表す少なくとも1つの信号を前記慣性測定ユニット(510d)又は前記ホイール符号器(121a、121b)から受信すると、前記ロボット(100)は、前記第1蛇行角(θ)よりも大きい第2蛇行角(θ)を有する第2蛇行指令を実行する、ことを特徴とする請求項2に記載のロボット(100)。
  4. 前記慣性測定ユニット(510d)及び/又は前記ホイール符号器(121a、121b)の信号が、ロボット(100)移動を指し示すための許容範囲にない場合に、前記コントローラ(150)は、前記駆動システム(120)に抗停滞指令を発する、ことを特徴とする請求項3に記載のロボット(100)。
  5. 前記拘束状態は、前記ロボット(100)が、物体(12)に対して挟まり込む位置に入るか又は居ることを含む、ことを特徴とする請求項1に記載のロボット(100)。
  6. 前記センサ(510)信号は、
    前記ロボット(100)の前記物体(12)との接触を示す衝突信号と、
    前記ロボット本体(110)から離れる前記駆動システム(120)のホイール(124a、124b)の移動を示すホイール落下信号と、
    を含む、
    ことを特徴とする請求項5に記載のロボット(100)。
  7. 前記抗停滞挙動(300a)は、前記ロボット(100)を障害から離して後退させるか又は前記ロボット(100)が拘束を受けている側から離して前記ロボット(100)の向きを変える駆動指令の実行を引き起こす、ことを特徴とする請求項1に記載のロボット(100)。
  8. 前記抗停滞挙動(300a)は、前記ロボット(100)を円弧軌道(600a、600b)に駆動する駆動指令の実行を更に引き起こす、ことを特徴とする請求項7に記載のロボット(100)。
  9. 前記挙動システム(210a)は、前記ロボット(100)が少なくとも閾値期間にわたって前記重力の方向に対して傾斜している時に前記抗傾斜挙動(300b)を実行する、ことを特徴とする請求項1に記載のロボット(100)。
  10. 前記抗傾斜挙動(300b)は、前記ロボット(100)が前記重力の方向及び前記前方駆動方向(F)に対してピッチアップしている時に前方駆動指令の実行を引き起こし、かつ前記ロボット(100)が該重力の方向及び該前方駆動方向(F)に対してピッチダウンしている時に逆駆動指令の実行を引き起こす、ことを特徴とする請求項9に記載のロボット(100)。
  11. 前記挙動システム(210a)は、前記ロボット(100)が閾値角(αT)よりも大きい角度で前記重力の方向に対して傾斜している時に前記抗傾斜挙動(300b)を実行する、ことを特徴とする請求項1に記載のロボット(100)。
  12. 前記抗傾斜挙動(300b)は、前記ロボット(100)が前記重力の方向及び前記前方駆動方向(F)に対してピッチアップしている時に前方駆動指令の実行を引き起こし、かつロボット(100)が該重力の方向及び該前方駆動方向(F)に対してピッチダウンしている時に逆指令の実行を引き起こす、ことを特徴とする請求項11に記載のロボット(100)。
  13. 前記駆動システム(120)の駆動ホイール(124a、124b)の前方の前記ロボット(100)の底面(116)上に配置された機械式スイッチ(530)を更に含み、 前記機械式スイッチ(530)は、障害物(18)が該機械式スイッチ(530)に接触する時に起動される、
    ことを特徴とする請求項1に記載のロボット(100)。
  14. 前記挙動システム(210a)は、前記機械式スイッチ(530)が起動された時に前記停滞挙動(300、300m)を実行して、停滞の状態を評価する、ことを特徴とする請求項13に記載のロボット(100)。
  15. 前記床面(10)を掃除するか又は処理するための掃除システム(160)を更に含む、ことを特徴とする請求項14に記載のロボット(100)。
  16. 前記挙動システム(210a)は、前記機械式スイッチ(530)が起動され、かつ前記センサシステム(500)が運動を検知した時に、抗吸込み挙動(300c)を実行し、該抗吸込み挙動(300c)は、掃除挙動(300e)を停止させるための掃除停止指令の発令と蛇行角(θ)を有する蛇行指令の発令とを引き起こし、該蛇行指令は、前記蛇行角(θ)だけ互いに対して傾斜した交互する左及び右駆動方向に駆動する駆動指令を含む、ことを特徴とする請求項15に記載のロボット(100)。
  17. 前記挙動システム(210a)は、前記コントローラ(150)が、前記ロボット(100)の前記ホイール(124a、124b)が失速閾値速度未満の失速速度で失速していることを示す前記センサシステム(500)からの信号を受信した時に、ホイール−ジャム挙動(300d)を実行し、該ホイール−ジャム挙動(300d)は、前記ロボット(100)の失速したホイール(124a、124b)を解除するための前記蛇行指令の発令を引き起こす、ことを特徴とする請求項16に記載のロボット(100)。
  18. 床表面(10)に接触するように横断X軸線に平行に延びて前記ロボット本体(110)によって回転可能に支持された従動ローラブラシ(162)を更に含み、該従動ローラブラシ(162)は、該X軸線の周りを第1の方向に回転し、
    前記抗吸込み挙動(300c)は、前記第1の方向とは反対の第2の方向に受動的に回転するように前記ローラブラシ(162)の付勢を引き起こす、
    ことを特徴とする請求項17に記載のロボット(100)。
  19. 前記センサシステム(500)は、障害物検知障害物回避センサ(150)、通信センサ(150)、ナビゲーションセンサ(150)、近接センサ(150)、接触センサ(150)、カメラ(150)、ソナー(150)、レーダー(150)、LIDAR(150)、又はLADAR(150)のうちの少なくとも1つを含む、ことを特徴とする請求項1に記載のロボット(100)。
  20. 自律式移動ロボット(100)のための制御システム(210)であって、
    コンピュータプロセッサ(152)上で実行され、かつ前記ロボット(100)のリソース(240)に指令を発する制御調停システム(210b)と、
    左及び右駆動ホイール(124a、124b)を含む駆動システム(120)であって、ロボット本体(110)を支持し、かつ床面(10)にわたって前記ロボット(100)を操縦するように構成された前記駆動システム(120)と、
    両方の駆動ホイール(124a、124b)の回転を追跡するホイール符号器(121a、121b)と前記ロボット(100)の姿勢を測定する慣性測定ユニット(510d)とを含み、該ロボット(100)の該姿勢を示すセンサ(510)信号を発するセンサシステム(500)と、
    前記駆動システム(120)及び前記センサシステム(500)と通信し、挙動システム(210a)を実行するコンピュータプロセッサ(152)を有するコントローラ(150)であって、該挙動システム(210a)が、該センサシステム(500)からの前記センサ(510)信号を受信し、かつ該センサ(510)信号に基づいて少なくとも1つの挙動(300)を実行する前記コントローラ(150)と、
    を含み、
    前記挙動システム(210a)は、前記ロボット(100)が拘束されていることを示すセンサ(510)信号に応答して抗停滞挙動(300a)を実行して、拘束の状態を評価し、
    前記挙動システム(210a)は、前記ロボット(100)が重力の方向に対して傾斜していることを示すセンサ(510)信号に応答して抗傾斜挙動(300b)を実行して、傾斜の状態を評価する、
    ことを特徴とする制御システム(210)。
  21. 前記コントローラ(150)が、前記ロボット(100)が指令通りの蛇行駆動運動を示していないことを表す少なくとも1つの信号を前記慣性測定ユニット(510d)又は前記ホイール符号器(121a、121b)から受信すると、該ロボット(100)は、第1蛇行角(θ)よりも大きい第2蛇行角(θ)を有する第2蛇行指令を実行する、ことを特徴とする請求項20に記載の制御システム(210)。
  22. 自律式移動ロボット(100)を作動させる方法(1400)であって、
    コンピュータプロセッサ(152)において、走行距離計測信号と前記ロボット(100)の姿勢を示す慣性測定信号とを含むセンサ(510)信号を該ロボット(100)のセンサシステム(500)から受信する段階と、
    挙動システム(210a)を前記コンピュータプロセッサ(152)上で実行する段階と、
    を含み、
    前記挙動システム(210a)は、前記センサシステム(500)から前記センサ(510)信号を受信して、前記ロボット(100)が拘束されていることを示すセンサ(510)信号に応答して拘束の状態を評価する抗停滞挙動(300a)と、前記ロボット(100)が重力の方向に対して傾斜していることを示すセンサ(510)信号に応答して傾斜の状態を評価する抗傾斜挙動(300b)とを実行する、
    ことを特徴とする方法(1400)。
JP2018046460A 2014-01-10 2018-03-14 自律式移動ロボット Expired - Fee Related JP6656726B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201461925776P 2014-01-10 2014-01-10
US61/925,776 2014-01-10

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016545969A Division JP6309637B2 (ja) 2014-01-10 2014-12-30 自律式移動ロボット

Publications (2)

Publication Number Publication Date
JP2018101444A true JP2018101444A (ja) 2018-06-28
JP6656726B2 JP6656726B2 (ja) 2020-03-04

Family

ID=53520555

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016545969A Expired - Fee Related JP6309637B2 (ja) 2014-01-10 2014-12-30 自律式移動ロボット
JP2018046460A Expired - Fee Related JP6656726B2 (ja) 2014-01-10 2018-03-14 自律式移動ロボット

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016545969A Expired - Fee Related JP6309637B2 (ja) 2014-01-10 2014-12-30 自律式移動ロボット

Country Status (5)

Country Link
US (2) US9457471B2 (ja)
EP (1) EP3091887A4 (ja)
JP (2) JP6309637B2 (ja)
CN (2) CN105899112B (ja)
WO (1) WO2015105712A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109164810A (zh) * 2018-09-28 2019-01-08 昆明理工大学 一种基于蚁群-聚类算法的机器人自适应动态路径规划方法

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2013284446B2 (en) 2012-06-27 2017-07-13 Pentair Water Pool And Spa, Inc. Pool cleaner with laser range finder system and method
US9939529B2 (en) 2012-08-27 2018-04-10 Aktiebolaget Electrolux Robot positioning system
CN105101854A (zh) 2013-04-15 2015-11-25 伊莱克斯公司 机器人真空吸尘器
WO2014169944A1 (en) 2013-04-15 2014-10-23 Aktiebolaget Electrolux Robotic vacuum cleaner with protruding sidebrush
KR102083188B1 (ko) 2013-07-29 2020-03-02 삼성전자주식회사 청소 로봇 및 그 제어 방법
KR102393550B1 (ko) 2013-12-19 2022-05-04 에이비 엘렉트로룩스 청소 영역의 우선순위를 정하는 방법
CN105829985B (zh) 2013-12-19 2020-04-07 伊莱克斯公司 具有周边记录功能的机器人清洁设备
CN105849660B (zh) 2013-12-19 2020-05-08 伊莱克斯公司 机器人清扫装置
JP6494118B2 (ja) 2013-12-19 2019-04-03 アクチエボラゲット エレクトロルックス 障害物の乗り上げの検出に伴うロボット掃除機の制御方法、並びに、当該方法を有するロボット掃除機、プログラム、及びコンピュータ製品
WO2015090399A1 (en) 2013-12-19 2015-06-25 Aktiebolaget Electrolux Robotic cleaning device and method for landmark recognition
US10045675B2 (en) 2013-12-19 2018-08-14 Aktiebolaget Electrolux Robotic vacuum cleaner with side brush moving in spiral pattern
EP3082541B1 (en) 2013-12-19 2018-04-04 Aktiebolaget Electrolux Adaptive speed control of rotating side brush
EP3082539B1 (en) 2013-12-20 2019-02-20 Aktiebolaget Electrolux Dust container
CN105899112B (zh) * 2014-01-10 2018-07-06 艾罗伯特公司 自主移动机器人
WO2016005012A1 (en) 2014-07-10 2016-01-14 Aktiebolaget Electrolux Method for detecting a measurement error in a robotic cleaning device
TWI561199B (en) * 2014-08-11 2016-12-11 Wistron Corp Interference system and computer system thereof for robot cleaner
JP2016042285A (ja) * 2014-08-18 2016-03-31 株式会社東芝 自律型移動体
JP6453583B2 (ja) * 2014-08-20 2019-01-16 東芝ライフスタイル株式会社 電気掃除機
WO2016037635A1 (en) 2014-09-08 2016-03-17 Aktiebolaget Electrolux Robotic vacuum cleaner
WO2016037636A1 (en) 2014-09-08 2016-03-17 Aktiebolaget Electrolux Robotic vacuum cleaner
WO2016091291A1 (en) 2014-12-10 2016-06-16 Aktiebolaget Electrolux Using laser sensor for floor type detection
CN107072454A (zh) 2014-12-12 2017-08-18 伊莱克斯公司 侧刷和机器人吸尘器
JP6532530B2 (ja) 2014-12-16 2019-06-19 アクチエボラゲット エレクトロルックス ロボット掃除機の掃除方法
CN107003669B (zh) 2014-12-16 2023-01-31 伊莱克斯公司 用于机器人清洁设备的基于经验的路标
KR102314637B1 (ko) * 2015-03-23 2021-10-18 엘지전자 주식회사 로봇 청소기 및 이를 구비하는 로봇 청소 시스템
US11099554B2 (en) 2015-04-17 2021-08-24 Aktiebolaget Electrolux Robotic cleaning device and a method of controlling the robotic cleaning device
KR101649665B1 (ko) * 2015-04-29 2016-08-30 엘지전자 주식회사 이동 로봇 및 그 제어방법
GB2538779B (en) 2015-05-28 2017-08-30 Dyson Technology Ltd A method of controlling a mobile robot
JP6634223B2 (ja) * 2015-06-15 2020-01-22 シャープ株式会社 自走式電子機器および前記自走式電子機器の走行方法
JP6476077B2 (ja) * 2015-06-18 2019-02-27 シャープ株式会社 自走式電子機器および前記自走式電子機器の走行方法
WO2017036532A1 (en) 2015-09-03 2017-03-09 Aktiebolaget Electrolux System of robotic cleaning devices
US20170090456A1 (en) * 2015-09-25 2017-03-30 Multimedia Image Solution Limited Autonomous cleaning robot
JP6703820B2 (ja) * 2015-11-11 2020-06-03 シャープ株式会社 自走式電子機器
JP7036531B2 (ja) 2016-01-08 2022-03-15 東芝ライフスタイル株式会社 自律走行体
JP6715020B2 (ja) * 2016-02-10 2020-07-01 シャープ株式会社 走行装置
CN108324196B (zh) * 2016-03-01 2020-10-13 常州信息职业技术学院 扫地机器人的工作方法
CN108603935A (zh) 2016-03-15 2018-09-28 伊莱克斯公司 机器人清洁设备以及机器人清洁设备进行陡壁检测的方法
CN109068908B (zh) 2016-05-11 2021-05-11 伊莱克斯公司 机器人清洁设备
CN105945956A (zh) * 2016-05-13 2016-09-21 深圳市华科安测信息技术有限公司 医用机器人控制系统及方法
US9896170B1 (en) * 2016-08-12 2018-02-20 Surveillance International, Inc. Man overboard detection system
US10602899B1 (en) 2016-10-05 2020-03-31 AI Incorporated Brush with pressure sensor
US10278558B1 (en) 2016-10-05 2019-05-07 Al Incorporated Brush with pressure sensor
US10524627B1 (en) 2016-10-05 2020-01-07 Al Incorporated Method for automatically removing obstructions from robotic floor-cleaning devices
US10732127B2 (en) * 2016-10-26 2020-08-04 Pixart Imaging Inc. Dirtiness level determining system and surface cleaning machine
CN106444461A (zh) * 2016-11-28 2017-02-22 广州艾想电子科技有限公司 一种通过运动信息控制关联设备的系统和方法
TWI634403B (zh) * 2017-01-26 2018-09-01 好樣科技有限公司 自動清潔機及其控制方法
DE102017105724A1 (de) * 2017-03-16 2018-09-20 Vorwerk & Co. Interholding Gmbh Verfahren zum Betrieb eines sich selbsttätig fortbewegenden Bodenbearbeitungsgerätes
SE541866C2 (en) * 2017-04-18 2020-01-02 Husqvarna Ab Method for detecting lifting of a self-propelled robotic tool and a self-propelled robotic tool
CN107121985A (zh) * 2017-04-27 2017-09-01 苏州欸欸智能科技有限公司 一种水下智能机器人的雷达避障系统
CN107116574B (zh) * 2017-05-27 2020-05-22 芜湖星途机器人科技有限公司 防滚动的机器人躯干
JP7243967B2 (ja) 2017-06-02 2023-03-22 アクチエボラゲット エレクトロルックス ロボット清掃デバイスの前方の表面のレベル差を検出する方法
AU2018320867A1 (en) 2017-08-22 2020-03-12 Pentair Water Pool And Spa, Inc. Algorithm for a pool cleaner
JP6989210B2 (ja) 2017-09-26 2022-01-05 アクチエボラゲット エレクトロルックス ロボット清掃デバイスの移動の制御
US11586211B2 (en) * 2017-10-25 2023-02-21 Lg Electronics Inc. AI mobile robot for learning obstacle and method of controlling the same
KR101932358B1 (ko) * 2017-11-14 2018-12-24 엘지전자 주식회사 로터 위치 감지 센서를 구비하는 다기통 로터리 엔진
CN108008728B (zh) * 2017-12-12 2020-01-17 深圳市银星智能科技股份有限公司 清洁机器人以及基于清洁机器人的最短路径规划方法
DE102017130954A1 (de) * 2017-12-21 2019-06-27 Enway Gmbh Reinigungsvorrichtung und Verfahren zum Betreiben einer Reinigungsvorrichtung
CN108245081A (zh) * 2018-02-05 2018-07-06 苏州木山云智能科技有限公司 一种智能扫地机器人的控制方法
CN108013834A (zh) * 2018-02-05 2018-05-11 苏州木山云智能科技有限公司 一种自动扫地机器人
USD879852S1 (en) * 2018-03-15 2020-03-31 Beijing Geekplus Technology Co., Ltd. Mobile robot
EP4345566A2 (en) * 2018-03-26 2024-04-03 Jabil Inc. Apparatus, system, and method of using depth assessment for autonomous robot navigation
CN108498015A (zh) * 2018-04-25 2018-09-07 芜湖乐锐思信息咨询有限公司 基于人工智能的智能家居式地面清洁装置
CN108681325B (zh) * 2018-05-14 2021-02-23 珠海市一微半导体有限公司 机器人基于加速计的仰角检测方法和被卡检测及脱卡方法
JP7037249B2 (ja) * 2018-05-22 2022-03-16 日立グローバルライフソリューションズ株式会社 自律走行型掃除機
USD929478S1 (en) 2018-06-15 2021-08-31 Mobile Industrial Robots A/S Mobile robot having an illuminated region
USD907677S1 (en) * 2018-06-15 2021-01-12 Mobile Industrial Robots A/S Mobile robot
CN108897320B (zh) * 2018-06-26 2020-11-24 清华大学 一种自驱动行走机器人及其控制方法
GB2576494B (en) * 2018-08-06 2022-03-23 Dyson Technology Ltd A mobile robot and method of controlling thereof
CN110849366A (zh) * 2018-08-20 2020-02-28 广州弘度信息科技有限公司 一种基于视觉和激光雷达融合的导航方法及系统
USD899475S1 (en) * 2018-10-31 2020-10-20 Hangzhou Hikrobot Technology Co., Ltd Automatic guided transport vehicle
WO2020103802A1 (zh) * 2018-11-19 2020-05-28 北京石头世纪科技股份有限公司 万向轮组件以及具有其的智能清洁设备
US11398309B2 (en) * 2018-11-27 2022-07-26 Alarm.Com Incorporated Automated surface sterilization techniques
CN109711684A (zh) * 2018-12-14 2019-05-03 蒋波 建筑装修装饰行业材料搬运机器人租赁服务运营系统
CN109839930B (zh) * 2019-01-16 2021-09-24 江苏理工学院 一种避障装置、系统及方法
TWI723330B (zh) * 2019-01-21 2021-04-01 瑞軒科技股份有限公司 機器人以及機器人控制方法
CN109772841B (zh) * 2019-01-23 2021-09-03 合肥仁洁智能科技有限公司 一种光伏组件清扫机器人及其越障控制方法和装置
US11327483B2 (en) * 2019-09-30 2022-05-10 Irobot Corporation Image capture devices for autonomous mobile robots and related systems and methods
KR20210047434A (ko) * 2019-10-21 2021-04-30 엘지전자 주식회사 로봇 청소기 및 그의 동작 방법
CN110908388B (zh) * 2019-12-17 2023-08-11 小狗电器互联网科技(北京)股份有限公司 一种机器人被困检测方法以及机器人
CN111002346B (zh) * 2019-12-17 2021-05-14 小狗电器互联网科技(北京)股份有限公司 一种机器人被困检测方法以及机器人
CN111197987A (zh) 2020-02-26 2020-05-26 深圳市银星智能科技股份有限公司 一种困境识别方法、装置以及计算机存储介质
CN111466835A (zh) * 2020-03-31 2020-07-31 深圳市银星智能科技股份有限公司 清洁机器人
CN111702738B (zh) * 2020-06-27 2021-10-08 上海工程技术大学 一种气化设备内部的检修机器人
US11656628B2 (en) 2020-09-15 2023-05-23 Irobot Corporation Learned escape behaviors of a mobile robot
CN112731923B (zh) * 2020-12-17 2023-10-03 武汉万集光电技术有限公司 一种集群机器人协同定位系统及方法
CN112549010B (zh) * 2020-12-22 2022-11-08 南昌大学 基于改进Serpenoid曲线的多关节蛇形机器人自适应轨迹跟踪控制器设计方法
US11508089B2 (en) * 2021-03-05 2022-11-22 Black Sesame Technologies Inc. LiDAR assisted wheel encoder to camera calibration
US20230024435A1 (en) * 2021-07-22 2023-01-26 Kar-Han Tan Autonomous mobile robot
KR102569251B1 (ko) * 2022-12-29 2023-08-24 주식회사 클로봇 목적지까지 이동하는 이동 로봇 장치 및 그의 동작 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4967328A (ja) * 1972-10-31 1974-06-29
JP2005211360A (ja) * 2004-01-30 2005-08-11 Funai Electric Co Ltd 自走式掃除機
JP2006155274A (ja) * 2004-11-30 2006-06-15 Hitachi Home & Life Solutions Inc 自走式掃除機
EP1912104A2 (en) * 2006-10-09 2008-04-16 Samsung Electronics Co., Ltd. Obstruction-determining apparatus for preventing mobile robot from becoming obstructed and boundary-estimation method and medium using the obstruction-determining apparatus
JP2008529752A (ja) * 2005-02-18 2008-08-07 アイロボット コーポレーション 湿式および乾式清掃用の自律的表面清掃ロボット
US20090281661A1 (en) * 2008-04-24 2009-11-12 Evolution Robotics Application of localization, positioning & navigation systems for robotic enabled mobile products

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6532404B2 (en) 1997-11-27 2003-03-11 Colens Andre Mobile robots and their control system
US6389329B1 (en) 1997-11-27 2002-05-14 Andre Colens Mobile robots and their control system
DE60011266T2 (de) 1999-06-17 2005-01-20 Solar And Robotics S.A. Automatische vorrichtung zum sammeln von gegenständen
US6374155B1 (en) * 1999-11-24 2002-04-16 Personal Robotics, Inc. Autonomous multi-platform robot system
US6594844B2 (en) 2000-01-24 2003-07-22 Irobot Corporation Robot obstacle detection system
US7155308B2 (en) 2000-01-24 2006-12-26 Irobot Corporation Robot obstacle detection system
US7571511B2 (en) 2002-01-03 2009-08-11 Irobot Corporation Autonomous floor-cleaning robot
US6883201B2 (en) * 2002-01-03 2005-04-26 Irobot Corporation Autonomous floor-cleaning robot
US6690134B1 (en) 2001-01-24 2004-02-10 Irobot Corporation Method and system for robot localization and confinement
WO2002096184A1 (fr) 2001-05-28 2002-12-05 Solar & Robotics Sa Amelioration a une tondeuse robotique
ATE510247T1 (de) 2001-06-12 2011-06-15 Irobot Corp Verfahren und system zur multimodalen bedeckung für einen autonomen roboter
US7429843B2 (en) 2001-06-12 2008-09-30 Irobot Corporation Method and system for multi-mode coverage for an autonomous robot
US8670866B2 (en) * 2005-02-18 2014-03-11 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
US7389156B2 (en) 2005-02-18 2008-06-17 Irobot Corporation Autonomous surface cleaning robot for wet and dry cleaning
EP2270620B1 (en) * 2005-12-02 2014-10-01 iRobot Corporation Autonomous Coverage robot
KR101300492B1 (ko) * 2005-12-02 2013-09-02 아이로보트 코퍼레이션 커버리지 로봇 이동성
WO2008013568A2 (en) 2005-12-30 2008-01-31 Irobot Corporation Autonomous mobile robot
US8577538B2 (en) * 2006-07-14 2013-11-05 Irobot Corporation Method and system for controlling a remote vehicle
EP3067771B1 (en) * 2006-03-17 2017-11-08 iRobot Corporation Robot confinement
US8326469B2 (en) * 2006-07-14 2012-12-04 Irobot Corporation Autonomous behaviors for a remote vehicle
US8095238B2 (en) * 2006-11-29 2012-01-10 Irobot Corporation Robot development platform
KR101081927B1 (ko) * 2010-05-15 2011-11-09 주식회사 일심글로발 유리창 청소 장치 및 그의 이동 제어 방법
US8918213B2 (en) * 2010-05-20 2014-12-23 Irobot Corporation Mobile human interface robot
CN102486648B (zh) * 2010-12-03 2013-08-21 北京理工大学 一种自主移动机器人平台
KR101566207B1 (ko) * 2011-06-28 2015-11-13 삼성전자 주식회사 로봇 청소기 및 그 제어방법
KR101931362B1 (ko) * 2011-08-22 2018-12-24 삼성전자주식회사 로봇청소기 및 그 제어방법
US9596971B2 (en) * 2011-10-21 2017-03-21 Samsung Electronics Co., Ltd. Robot cleaner and control method for the same
CN105899112B (zh) * 2014-01-10 2018-07-06 艾罗伯特公司 自主移动机器人

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4967328A (ja) * 1972-10-31 1974-06-29
JP2005211360A (ja) * 2004-01-30 2005-08-11 Funai Electric Co Ltd 自走式掃除機
JP2006155274A (ja) * 2004-11-30 2006-06-15 Hitachi Home & Life Solutions Inc 自走式掃除機
JP2008529752A (ja) * 2005-02-18 2008-08-07 アイロボット コーポレーション 湿式および乾式清掃用の自律的表面清掃ロボット
EP1912104A2 (en) * 2006-10-09 2008-04-16 Samsung Electronics Co., Ltd. Obstruction-determining apparatus for preventing mobile robot from becoming obstructed and boundary-estimation method and medium using the obstruction-determining apparatus
US20090281661A1 (en) * 2008-04-24 2009-11-12 Evolution Robotics Application of localization, positioning & navigation systems for robotic enabled mobile products

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109164810A (zh) * 2018-09-28 2019-01-08 昆明理工大学 一种基于蚁群-聚类算法的机器人自适应动态路径规划方法

Also Published As

Publication number Publication date
WO2015105712A1 (en) 2015-07-16
JP2017508196A (ja) 2017-03-23
CN108814422A (zh) 2018-11-16
US9457471B2 (en) 2016-10-04
CN105899112A (zh) 2016-08-24
JP6309637B2 (ja) 2018-04-11
CN105899112B (zh) 2018-07-06
EP3091887A1 (en) 2016-11-16
CN108814422B (zh) 2022-04-01
JP6656726B2 (ja) 2020-03-04
US10124490B2 (en) 2018-11-13
EP3091887A4 (en) 2017-09-13
US20170080570A1 (en) 2017-03-23
US20150197012A1 (en) 2015-07-16

Similar Documents

Publication Publication Date Title
JP6309637B2 (ja) 自律式移動ロボット
US9278690B2 (en) Autonomous mobile robot
JP6250617B2 (ja) 移動式ロボットの近接センサ、近接検知方法及び移動式ロボット
US10893788B1 (en) Mobile floor-cleaning robot with floor-type detection
JP7123810B2 (ja) 清掃ロボット及び障害物の乗越え方法
KR20190096364A (ko) 환경에 기초하여 작동 속도를 변경하는 로봇 청소 장치
JP2009095361A (ja) 自走式掃除機とその制御方法
AU2016225774B2 (en) Proximity sensing on mobile robots
AU2015201973A1 (en) Proximity sensing on mobile robots

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180314

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190121

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190618

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20190830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190910

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190902

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200131

R150 Certificate of patent or registration of utility model

Ref document number: 6656726

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees