JP2004033340A - Robot vacuum cleaner and robot vacuum cleaner control program - Google Patents

Robot vacuum cleaner and robot vacuum cleaner control program Download PDF

Info

Publication number
JP2004033340A
JP2004033340A JP2002191835A JP2002191835A JP2004033340A JP 2004033340 A JP2004033340 A JP 2004033340A JP 2002191835 A JP2002191835 A JP 2002191835A JP 2002191835 A JP2002191835 A JP 2002191835A JP 2004033340 A JP2004033340 A JP 2004033340A
Authority
JP
Japan
Prior art keywords
obstacle
data
cleaning
room map
map data
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
JP2002191835A
Other languages
Japanese (ja)
Other versions
JP4157731B2 (en
Inventor
Yasuhiro Asa
朝 康博
Kazuaki Iwamura
岩村 一昭
Junichi Makioka
牧岡 淳一
Ikuo Takeuchi
竹内 郁雄
Taiji Tajima
田島 泰治
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.)
Hitachi Appliances Inc
Original Assignee
Hitachi Home and Life Solutions Inc
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 Hitachi Home and Life Solutions Inc filed Critical Hitachi Home and Life Solutions Inc
Priority to JP2002191835A priority Critical patent/JP4157731B2/en
Publication of JP2004033340A publication Critical patent/JP2004033340A/en
Application granted granted Critical
Publication of JP4157731B2 publication Critical patent/JP4157731B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Electric Suction Cleaners (AREA)
  • Electric Vacuum Cleaner (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a robot vacuum cleaner and its control program, which restructure a proper cleaning route to restart cleaning when encountering an obstacle. <P>SOLUTION: The robot vacuum cleaner and the robot vacuum cleaner control program includes an obstacle detection sensor for detecting the obstacle, a room map data stored with obstacles in a room, attribute data stored with attribute of the obstacles, and cleaning route data stored with a cleaning route, to detect the presence/absence of the obstacle during cleaning. In the case of presence of an obstacle, the robot vacuum cleaner determines whether the obstacle at the present position is stored in the room map data or not, and in the case of absence of stored data, the detected obstacle is determined as an unknown obstacle to recognize the form of the unknown obstacle and estimate a form corresponding to the recognized form based on the room map data and the attribute data. When the form can be estimated, the obstacle of the estimated form is stored in the room map data to reconstruct the cleaning route data, and when the form cannot be estimated, the unknown obstacle is determined as a new obstacle to be stored in the room map and reconstruct the cleaning route data. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、部屋地図データを基に自動生成した掃除ルートデータに従って掃除作業を行なう自走式のロボット掃除機に関する。
【0002】
【従来の技術】
種々の障害物がある空間を移動するロボットでは、障害物に遭遇したときにどのように対処するかが重要なポイントとなる。障害物遭遇時対処の方法として、障害物に関する記憶データを用いることが一般的である。
【0003】
特開2001−129787号公報に開示されている例では、ロボットが障害物の画像データを保持している。ロボットは、移動経路上に障害物があると該障害物をイメージセンサで取込み、予め登録された障害物であるかどうかを比較判断する。ここで、登録済み障害物であると判断すると、障害物に対応した回避プログラムに従って回避動作を行なう。また、未知障害物であると判断すると、ロボットは周囲に人がいるかどうか判断し、人の存在を確認すると音声や身振りで手助けを求める。
【0004】
また、特開平9−222852号公報に開示されている例では、部屋地図データが空間的知識である認知地図として表現され、構成要素の定義情報とその構成要素の確率情報が記憶される。そして、この認知地図を用いて経路生成が行なわれる。ロボットが移動経路上にて認知地図と異なる障害物に遭遇すると、該当する構成要素(経路)の確率情報が変更される。これにより、次回の移動経路生成の際、この変更した情報が活用される。
【0005】
障害物を検知するためにロボットに備えられるセンサとして、上記のイメージセンサの他、超音波センサが用いられる。超音波センサによって移動ロボットと周辺障害物との距離が測定され、部屋地図生成処理やロボット位置推定処理が行なわれる(例えば、米国文献「IEEEジャーナル・オブ・ロボティックス・アンド・オートメーション(IEEE Journal of Robotics and Automation)」(1988年発行)第RA−3巻第249頁〜第265頁参照)。
【0006】
なお、予め走行経路を決めておくための地図の記憶方法の例が特開平8−16241号公報に開示されている。この例では、部屋の各領域に対して、作業車全体が走行可能の部分、作業車の作業部のみを挿入することが可能な部分、走行も挿入も不可能の部分という属性が与られ、属性を持った各領域が部屋地図に登録される。この属性付き部屋地図を用いて掃除ルートが計画される。
【0007】
【発明が解決しようとする課題】
障害物遭遇時の対処法に関して、上記の特開2001−129787号公報の例では、画像データが平面的情報源であるため、障害物の幾何学構造を推測することが困難であり、また記憶している障害物画像データと全く同じ環境で、移動中のロボットが障害物を撮像することは難しい。従って、同一障害物であるにもかかわらず、異なる障害物であると誤認識を起こす可能性がある。また、データ更新や学習の処理が行なわれないため、次回の移動時も同じように誤認識を起こす可能性がある。
【0008】
また、特開平9−222852号公報の例では、認知地図情報と異なる障害物に遭遇した場合に、動的な地図更新が行なわれるものの、その更新内容は該当経路の信頼度を示す確率情報を変更するというものであり、実際の地図・経路の形状変更は行なわれない。そのため、移動しながらリアルタイムに経路再構築を行なうことができず、未知の障害物があった場合、作業を完了することができない。更に、認知地図では障害物の形状が記憶されないため、障害物周りを精密に掃除することが困難である。
【0009】
単に移動するだけではなく、移動しながら掃除を行なうロボットでは、障害物に対して精密に形状を把握することが求められる。そのための障害物検出センサとして、イメージセンサを用いる場合は、上述のように画像データが平面的情報源になるため形状把握が不十分となる。また、超音波センサを用いる場合は、障害物までの距離測定はある程度可能であるが、超音波に広がりがあるため、形状把握に十分な精度が得られない。また、超音波センサのような比較的高価なセンサを用いると、ロボットの製作コストが高くなることが避けられない。一般家庭向けのロボット掃除機を対象とした場合、できるだけ低コストで製作することが望ましい。
【0010】
なお、特開平8−16241号公報の例では、部屋地図内の領域の属性に依存して掃除ルートが生成されるが、やはり動的なデータ更新が行なわれないため、障害物の移動といった環境変化が起こった場合には、掃除作業を完了することができない。
【0011】
本発明の第1の目的は、障害物に遭遇したときに適確に掃除ルートを再構築して掃除を再開するロボット掃除機及びその動作を制御するためのロボット掃除機制御プログラムを提供することにある。
【0012】
本発明の第2の目的は、精度良く部屋地図を動的に更新する低コストのロボット掃除機及びその動作を制御するためのロボット掃除機制御プログラムを提供することにある。
【0013】
本発明の第3の目的は、障害物を適確にかつ高速に認識して掃除を行なうロボット掃除機及びその動作を制御するためのロボット掃除機制御プログラムを提供することにある。
【0014】
【課題を解決するための手段】
上記第1の目的は、障害物の有無の検知とその形状の認識を行なう障害物検出センサと、部屋に在る障害物を登録して成る部屋地図を記憶した部屋地図データと、部屋地図データに登録された障害物の属性(存在履歴や掃除方法等)を記憶した属性データと、部屋地図データに基づいて作成される掃除の経路を掃除ルートとして記憶した掃除ルートデータとを備えておき、掃除ルートに従って掃除を行なっているときに障害物検出センサを使って障害物の有無を検知し、障害物有りを検知した場合にその位置に部屋地図データ上で障害物が登録されているか否かを判断し、障害物が登録されていない場合に検知した障害物を未知障害物と判断し、障害物検出センサを使って未知障害物の形状を認識し、認識した形状と一致する形状を部屋地図データ及び属性データを参照して推定することができた場合は、推定した形状の障害物を部屋地図データに登録して掃除ルートデータを再構築し、認識した形状と一致する形状を推定することができなった場合は、未知障害物を新たに出現した障害物と判断して部屋地図データに登録し、掃除ルートデータを再構築することによって達成される。
【0015】
そのような手段を採用することにより、ロボット掃除機が障害物に遭遇したときに、障害物の既知又は新規出現の別が明確に区別され、それぞれに応じて部屋地図が障害物遭遇の都度更新される。そのため、未知の障害物に遭遇しても適確に掃除ルートを再構築することが可能となり、再構築された掃除ルートに従って掃除を再開することができる。
【0016】
上記第2の目的は、記憶手段に記憶する経路データに基づいて走行するロボットに対して、赤外線センサと触覚センサからの情報を取得し、該情報を用いて上記経路上の障害物の有無を検出し、該障害物の形状を上記触覚センサからの情報を用いて認識し、該検出の結果と該認識の結果を用いて上記経路データを作成する地図作成方法を実行させることにより達成される。
【0017】
赤外線センサと触覚センサ触覚を用いることによって、障害物の形状を精度よく把握することが可能であり、従って、精度良く掃除の経路データを作成し、それに基づいて部屋地図を作成することができる。更に、赤外線センサ及び触覚センサはいずれも安価なセンサ素子を用いて構成することが可能であり、低コストのロボット掃除機を実現することができる。
【0018】
上記第3の目的は、センサと、障害物のデータと、掃除の経路を掃除ルートとして記憶した掃除ルートデータとを少なくとも備えておき、該掃除ルートに従って掃除を行なっているときに該センサからの情報を取得し、該情報と該障害物のデータを用いて該掃除ルートを再構築し、掃除ルートが再構築された場合には、該再構築された掃除ルートに従って掃除を続けることにより達成される。
【0019】
障害物に固有な属性(存在履歴や掃除方法等)である障害物のデータが予め記録され、それを掃除ルートの再構築に反映させるので、障害物を適確にかつ高速に認識して掃除を行なうことが可能になる。
【0020】
【発明の実施の形態】
以下、本発明に係るロボット掃除機及びその動作を制御するためのロボット掃除機制御プログラムを図面に示した発明の実施の形態を参照して更に詳細に説明する。
【0021】
本発明のロボット掃除機制御プログラムを用いるロボット掃除機のシステム構成例を図1に示す。ロボット掃除機は、固定の知能処理ユニット200と掃除を行なうロボットユニット100からなる。知能処理ユニット200とロボットユニット100は、無線通信モジュール225及び無線通信モジュール150を介して無線で接続され、双方向無線通信が形成される。知能処理ユニット200は、ロボットユニット100に無線で動作コマンドを送り、ロボットユニット100は、知能処理ユニット200に無線でセンサデータを送る。
【0022】
知能処理ユニット200において、ロボット掃除機制御プログラム235を基に動作するCPU(中央処理装置)221、CPU221が処理中に用いるメモリ500、無線通信モジュール225並びにロボット掃除機制御プログラム235及びデータベース400を格納している記憶装置222が内部バス224に接続される。内部バス224に接続されるこれらの各ユニットによりコンピュータが形成される。データベース400は、部屋地図データ401、属性データ402及び掃除ルートデータ403からなる。
【0023】
これらの各データについては後でも述べるが、部屋地図データ401は、掃除対象の部屋にある障害物(戸棚、テーブル、椅子、壁、柱など)がどこにどのように配置されているかを示すデータであり、これらは、掃除の開始点を起点にした、縦横座標の座標値で表される。従って、その座標値から、障害物が配置されている位置、障害物の形状、向きを知ることができる。
【0024】
属性データ402は、各障害物の持つ属性、即ち障害物のタイプ(壁か一般障害物か、一般障害物なら固定物か又は日々位置が変化する物か、等)、障害物のID(識別番号)、掃除方法(障害物の周辺のみ掃除か、障害物の内部を掃除する精密掃除か)、履歴領域数(障害物が過去に存在していた領域の数)などを表す障害物のデータであり、掃除ルートデータ403は、部屋地図データ401及び属性データ402から定められる掃除の経路を上記座標値によって表すデータである。
【0025】
ロボットユニット100において、無線通信モジュール150に制御部300が接続され、制御部300に駆動部160及びセンサデータ取得部110が接続される。駆動部160は、車輪のモーターを駆動する移動ロボット駆動部120と、掃除を行なう吸込み部を駆動する掃除機構駆動部130からなる。センサデータ取得部110は、障害物の接近及び障害物の形状を検出する障害物検出センサ115と、車輪の回転の数を計測する車輪用エンコーダ128からなる。
【0026】
制御部300は、知能処理ユニット200から動作コマンドを受信して駆動部160の動きを制御する。制御部300は、また、知能処理ユニット200から動作コマンドを受信してセンサデータ取得部110からのセンサデータを知能処理ユニット200に送信する。
【0027】
上記コンピュータは、データベース400の各データとロボットユニット100から送信されたセンサデータを用いてロボットユニット100の動作を決定し、動作コマンドをロボットユニット100へ送信する。このようにして、ロボット掃除機制御プログラム235に従った処理が実行される。
【0028】
なお、上記では、ロボット掃除機が知能処理ユニット200とロボットユニット100に分離している場合を示したが、知能処理ユニット200をロボットユニット100に搭載して一体化することが可能であり、その場合には、無線通信モジュール225及び無線通信モジュール150が省略され、制御部300が直接内部バス224に接続される。
【0029】
図2は、ロボットユニット100の構成を示した上面図である。図2において、ロボットユニット100の本体101は、左駆動車輪121、右駆動車輪122及び補助輪123を備える独立駆動輪型の移動ロボットであり、それぞれの車輪速度を調整することにより任意の方向へ移動することが可能である。両車輪121,122にはそれぞれロータリーエンコーダ126,127が設置されており、両車輪の回転の数を測定することが可能である。車輪121,122及びそれらを駆動するそれぞれのモーター(図2では図示せず)によって移動ロボット駆動部120が構成される(図1)。
【0030】
ロボットユニット本体101の周囲には、赤外線センサ111,112,113が設置されており、前方、側面、後方の比較的近い障害物の存在を検知することが可能である。また、知能処理ユニット200との無線通信を実現する無線通信モジュール150が設置されている。図示していないが、制御部300が無線通信モジュール150に隣接して設置される。
【0031】
更に、ロボットユニット本体101には、左右へ水平移動可能なアーム部131とアーム部131の先端部を中心軸として回転可能な吸込み部132が備えられ、これらによって掃除機構が構成される。吸込み部132には、塵を溜めるための集塵ユニット136と、吸込みによる吸引動作を行なうための吸引用モーター135と、触覚センサ114とが備えられている。触覚センサ114は、物に触れたことを検知する。
【0032】
掃除機構であるアーム部131と吸込み部132は、ロボットユニット本体101とは独立に動作することが可能であり、ロボットユニット本体101から取り外すことができる。従って、形状・動作の異なる幾つかの掃除機構を用意しておき、掃除環境の状態に合わせて掃除機構を切り替えて作業を行なうことができる。
【0033】
赤外線センサ111,112,113及び触覚センサ114によって障害物検出センサ115が構成され、ロータリーエンコーダ126,127によって車輪用エンコーダ128が構成される(図1)。なお、赤外線センサ111,112,113は、発光ダイオードとフォトダイオードを組み合わせ、発光ダイオードから放射される赤外線の障害物からの反射光をフォトダイオードで検出する形式の構造で実現され、触覚センサ114は、圧電素子又は小型のマイクロスイッチを利用して実現される。これらの素子は、いずれも非常に安価であり、障害物検出センサ115を低コストで実現することができる。
【0034】
図3は、ロボットユニット100における制御部300と、センサデータ取得部110並びに移動ロボット駆動部120及び掃除機構駆動部130との関係を示したブロック図である。
【0035】
制御部300は、知能処理ユニット200から送信された動作コマンドが駆動コマンドである場合、それを基に移動ロボット駆動部120及び掃除機構駆動部130を動作させる為の制御信号を生成し、定期的にその制御信号を移動ロボット駆動部120及び掃除機構駆動部130へ送信する。この制御信号によって、移動ロボット駆動部120における車輪121,122を駆動するそれぞれ左車輪用モーター124、右車輪用モーター125の回転が制御され、更に、掃除機構駆動部130が制御される。掃除機構駆動部130は、吸引用モーター135、アーム部131を動かすためのアーム部スライド用モーター134及び吸込み部132に取り付けられた回転機構を動作させるための吸込み部回転用モーター133を有し、これらモーターの回転がそれぞれ制御される。
【0036】
また、制御部300は、定期的にセンサデータ取得部110からデータを取得する。制御部300は、知能処理ユニット200から送信された動作コマンドがセンサデータ送信要求コマンドである場合、無線通信モジュール150を用いて知能処理ユニット200へセンサデータを送信する。
【0037】
図4は、制御部300の処理内容をフロー図で示したものである。先ず、無線通信モジュール150にて受信した動作コマンドをステップ301にて解析する。次にステップ302に進み、解析した動作コマンドが駆動コマンドである場合は、ステップ308へ進む。一方、解析した動作コマンドがセンサデータ送信要求コマンドである場合は、ステップ303へ進み、ロボットユニット100が保存している最新センサデータを知能処理ユニット200へ無線通信モジュール150を介して送信する。また、ステップ308では、駆動コマンドの内容に基づいて、駆動対象モーターの設定、速度設定、移動距離の設定を行なう。
【0038】
この制御部300は、10ミリ秒間隔で定期的に割込み処理304を実行し、モーターの駆動及びセンサデータの取得を行なう。割込み処理実行時間に達すると、ステップ305において、ステップ308にて設定した値を基に車輪・アーム・吸込み部の各駆動モーターの制御信号を生成し、駆動部160の各駆動モーターへ伝える。次に、ステップ306へ進み、センサデータ取得部110から障害物検出及び車輪の回転の数のデータをセンサデータとして取得する。取得したセンサデータは、最新センサデータとしてメモリ307に記憶される。つまり、メモリ307の最新センサデータは割込み処理を行なう毎に更新される。
【0039】
次に、知能処理ユニット200の上記コンピュータがロボット掃除機制御プログラム235に従って実行する処理の内容を説明する。本発明では、掃除中のロボット掃除機は、部屋の状況が部屋地図データ401に示されている状況と相違していることを検知したときに、その場で部屋地図データ401を更新し、掃除ルートデータ403を再構築する。即ち、相違がある度に部屋地図データ401が更新され及び掃除ルートデータ403が最構築される。相違があるのは、障害物を部屋の離れた所に移してしまった場合や部屋にはなかった新しい障害物を部屋に持ち込んだ場合などである。
【0040】
部屋地図データ401のその都度の更新及び掃除ルートデータ403のその都度の最構築は、部屋地図データ401及び掃除ルートデータ403をメモリ500に複写したそれぞれ、後で図6にて示すテンポラリ部屋地図データ501及びテンポラリ掃除ルートデータ502に対して行ない、掃除が終了したときに、テンポラリ部屋地図データ501及びテンポラリ掃除ルートデータ502を部屋地図データ401及び掃除ルートデータ403に上書きして更新を行なう。次回の掃除は、この更新した部屋地図データ401及び掃除ルートデータ403を使って行なわれる。
【0041】
図5は、知能処理ユニット200の上記コンピュータによる処理手順をフロー図で示したものである。ロボット掃除機の移動中の場所にテンポラリ部屋地図データ501上で障害物が登録されているとき、又は、移動中に障害物に遭遇したとき、先ずステップ201にて、ロボットユニット100のセンサデータ取得部110からのセンサデータを解析する。具体的には、ロボットユニット101の現在位置を車輪用エンコーダ128からのデータによって算出すると共に、触覚センサ114が障害物に触れたか否かを検知する。なお、赤外線センサ111〜113は、近くにある障害物の存在を大雑把に捕らえて障害物に近づいていることを検知することが可能であり、触覚センサ114が障害物に触れることを前以て予知することができる。
【0042】
次に、ステップ202でテンポラリ部屋地図データ501とセンサデータ解析結果を比較し、相違を先ず障害物の有無で判断する。障害物有無の判断は、上述のように触覚センサ114からのデータによって行なわれる。障害物があったときにステップ203に進み、続いて相違を触覚センサ114が障害物に触れた位置にテンポラリ部屋地図データ501上で障害物が登録されているか否かを判断する。障害物が登録されていれば相違がないとしてステップ211に進み、テンポラリ掃除ルートデータ502に従って掃除を行なう。続いて、ステップ212で、部屋の掃除が全て終了していない場合、ステップ201に戻り、処理を続ける。
【0043】
ステップ202において、現在位置に障害物がない場合は、ステップ204に進み、障害物は移動しているとしてテンポラリ部屋地図データ501上で登録されている障害物を除去する。ステップ208で、障害物を除去することによってテンポラリ部屋地図データ501を更新し、続いてステップ210で、更新したテンポラリ部屋地図データ501を基に掃除ルートを再構築する。次いで、ステップ211で、再構築したテンポラリ掃除ルートデータ502に従って掃除を行なう。
【0044】
ステップ203において、触覚センサ114が障害物に触れた位置にテンポラリ部屋地図データ501上で障害物が登録されていない場合は、触覚センサ114が触れた障害物を未知障害物として、ステップ205に進み、触覚センサ114を使って未知障害物の形状認識を行なう。
【0045】
続いてステップ206で、未知障害物の認識した形状と少なくとも一部が一致する形状の障害物がテンポラリ部屋地図データ501に有るか否かを探る。一致する形状の障害物が有る場合は、ステップ207に進み、属性データ402を用いて全体が一致する形状を推定し、ステップ208で、推定した形状の障害物をテンポラリ部屋地図データ501に登録する。それによってテンポラリ部屋地図データ501が更新される。
【0046】
ステップ206において一致する形状の障害物がない場合は、ステップ209に進み、未知障害物を新たに出現した障害物とし、未知障害物の形状全体又は未知障害物が存在する領域を把握して、新出現の障害物の属性データを属性データ402に加える。ステップ208で、形状又は領域を把握した新出現の障害物をテンポラリ部屋地図データ501に登録してテンポラリ部屋地図データ501を更新する。
【0047】
ステップ212で掃除が全て終了したとき、ステップ213で属性データ402を更新し(例えば、固定物としていた障害物が動かされていた場合、属性を位置変化する障害物に変更する等)、処理を終了する。
【0048】
以上により、本発明においては、テンポラリ部屋地図データ501及びテンポラリ掃除ルートデータ502を掃除の途中で動的に更新することにより、部屋内部の状況が変わっても掃除を完成させることができる。
【0049】
以上のステップ202〜208の全体によって実現される機能は▲1▼障害物形状推定機能となり、ステップ213によって実現される機能は▲2▼属性データ学習機能となり、更にステップ210によって実現される機能は▲3▼掃除ルート再構築機能となり、加えてステップ209,208によって実現される機能は▲4▼未登録データの新規登録機能となる。以下に、それぞれの詳細を説明する。
【0050】
図6に▲1▼障害物形状推定機能による処理内容のフロー図を示す。センサデータとテンポラリ部屋地図データ501との間に相違が生じる状況としては、前述のように次の2つがある。1つは、未知障害物に遭遇したとしたとき、そしてもう1つはテンポラリ部屋地図データに存在する障害物が無くなったときである。
【0051】
2つの要因のうち、どちらが起きたのかについて、ステップ601にてセンサデータ解析結果を用いて確認し、登録障害物が無くなったのならばステップ605へ進み、属性データ402から該当障害物を探索し、テンポラリ部屋地図データ501から該当障害物の形状を削除する。それによって、同時にテンポラリ部屋地図データ501が更新される。そして、▲3▼掃除ルート再構築機能へ処理を移す。
【0052】
一方、ステップ601において、データ相違の要因が未知障害物との遭遇によるものならばステップ602へ進み、吸込み部132に設置した触覚センサ114により未知障害物の形状認識を行ない、認識した形状をテンポラリ部屋地図データ501に書き込む。そして、ステップ603において、部屋地図データ401及び短期記憶属性データ900を参照し、未知障害物の形状と少なくとも一部が一致する形状データを探索する。
【0053】
ここで、短期記憶属性データ900とは、以前に部屋地図データ401及び属性データ402上に存在していたが、消滅してしまった障害物の形状データ及び属性データであり、これらデータは、一定期間だけ記憶装置222に保持される。
【0054】
部屋地図データ401或いは短期記憶属性データ900の中に未知障害物の形状と少なくとも一部が一致する形状データが存在しない場合は、この未知障害物を新たに出現した物体であるとし、▲4▼未登録データの新規登録へ処理を移す。
【0055】
一方、未知障害物の形状と少なくとも一部が一致する形状が存在した場合は、形状の一部が一致する障害物の数を確認し、複数存在する場合はステップ607において、それぞれの属性データから存在履歴・知識といった形状以外の情報を参照することで優先順位をつけ、一致する形状を1つに絞り込む。このように、一致する形状が1つに絞れたならば、ステップ608へ進み、属性データ402或いは短期記憶属性データ900から先ほどの形状が一致した障害物の情報を読み出し、全体形状を推定する。そして、ステップ609により、推定結果に基づいてテンポラリ部屋地図データ501を更新し、▲3▼掃除ルート再構築機能へ処理を移す。
【0056】
次に、▲4▼未登録データの新規登録について説明する。図7に処理内容を示す。ステップ1001にて、該当障害物の形状の全体を把握することができているか、把握は一部のみかを判断する。形状全体を把握の場合は、属性データの障害物TYPEを固定障害物、そして他の項目は無効として属性データ402に登録し、▲3▼掃除ルート再構築機能へ処理を移す。
【0057】
一方、形状の把握が一部のみである場合は、ステップ1003へ進み、把握できている一部の形状範囲から矩形領域を形成し、それを障害物としてテンポラリ部屋地図データ501へ登録する。そして、属性データの障害物TYPEを固定障害物、そして他の項目は無効として属性データ402に新規登録し、▲3▼掃除ルート再構築機能へ処理を移す。
【0058】
次に、▲3▼掃除ルート再構築機能について説明する。図8に処理内容を示す。障害物形状推定機能での処理の結果、部屋地図データ401に存在する障害物が無くなったと推定した場合、ステップ702にて、テンポラリ部屋地図データ501の未掃引領域に対してルートを再構築し、テンポラリ掃除ルートデータ502へ書き込む。この様子を図9に示す。
【0059】
図9aは部屋地図データ401において、座標値で表した障害物414,415、掃除ルートデータ403及び掃引済領域411を示している。今、図9aの障害物414,415が無くなった場合、テンポラリ部屋地図データ501は図9bのように障害物414,415が無い状態に更新され、未掃引領域に対して掃除ルート512が再構築される。以降、この再構築ルート512に従ってロボット掃除機は作業を行なうこととなる。
【0060】
一方、障害物形状推定機能での処理の結果、未知障害物が検知され、その全体形状が推定された場合の処理について説明する。先ず、ステップ703にて、テンポラリ部屋地図データの未掃引領域について領域分割を行なう。
【0061】
図10に領域分割の処理内容を示す。先ずステップ1101にて、部屋地図データ401の水平及び垂直方向の頂点から垂線を下ろし領域分割を行なう。次にステップ1102にて、辺を共有する領域を統合することで矩形領域を形成し、最大面積となる領域のみを選択する。このステップ1102の処理を未選択領域がなくなるまで行なうことで領域分割を実現する。
【0062】
このようにして領域分割を行なった後、ステップ704へ進み、各領域毎に直線ルートを作成する。これらの直線ルートを統合することで掃除ルートを生成し、これをテンポラリ掃除ルートデータ502へ書き込む。
【0063】
ステップ703、及びステップ704の模式図を図11に示す。図11aは、部屋地図データ401において、座標値で表した障害物416,417、掃除ルートデータ403及び掃引済領域411を示している。掃除経路上に未知障害物を検知し、その全体形状を既知の障害物416,417の形状と推定した場合、未知障害物を検知した位置に障害物416,417が移動したとし、テンポラリ部屋地図データ501を図11bのように障害物416,417が移動した状態に更新する。そして、未掃引領域に対して水平・垂直方向の頂点から垂線を下ろし、領域分割を行なう。更に、図11cに示すように隣接領域を統合し矩形領域を形成させていく。そして、各領域毎に直線ルート418を作成し(図11d)、これらを統合して掃除ルート512を再構築する(図11e)。
【0064】
なお、図示していないが、未知障害物の形状が登録されている障害物の形状と一致せず、未知障害物が新たに出現した障害物であると判断された場合は、図11bで障害物416,417は移動せずそのまま置かれる。従って、その場合は、図11eの掃除ルート512とは異なる掃除ルートが再構築される。
【0065】
続いて、ステップ705にて、該当障害物の属性データに精密掃除を必要とする掃除方法が登録されている場合は、ステップ706へ進み精密掃除を必要とする掃除方法をテンポラリ掃除ルートデータ502と統合する。図12に精密掃除を必要とする掃除方法について示し、また図13にテンポラリ掃除ルートデータ502との統合方法を示す。ステップ705にて、該当障害物の属性データに精密掃除を必要とする掃除方法が登録されていない場合は、掃除ルート512をテンポラリ掃除ルートデータ502に書き込む。
【0066】
本実施形態で示すロボット掃除機の吸込み部132は、ロボットユニット本体101とは独立に動作することが可能なため、ロボットユニット本体101が通れない領域にも入り込むことができる。属性データ402に登録されている掃除方法とは、この吸込み部132によって障害物内部を掃除する方法のことである。
【0067】
例えば図12aのように、ロボットユニット本体101が通れない領域(障害物内部)420を持つ障害物419において(障害物419を外側に包む凸包形状421が形成される)、吸込み部132が挿入できるライン(吸込み挿入ライン)422を求め、図12bのようにロボット掃除機が吸込み部132を挿入する位置・方向を示す点423(ロボット位置・方向指示点)を算出する。これらの点から吸込み部132を挿入し掃除を行なう。属性データ402に登録している掃除方法とは、このロボット位置・方向指示点423である。
【0068】
また、掃除方法は図13aに示すように、ロボット位置・方向指示点423に最も近い掃除ルート403と接続され、図13bのように作業中のロボット掃除機が接続点に到達すると、ロボット位置・方向指示点423に従って方向転換を行ない吸込み部132により障害物419内部の掃除を行なう。
【0069】
次に、▲2▼属性データ学習機能の処理内容を説明する。図14に処理内容のフロー図を示す。▲2▼属性データ学習機能は掃除作業が終了する毎に実行される。先ず、部屋地図データ401とテンポラリ部屋地図データ501の相違比較を行ない、前回作成した部屋地図データ401中の障害物に対して、移動した障害物や消滅した障害物の確認を行なう(ステップ801)。
【0070】
この障害物確認を行なう際には、障害物の特徴を考慮する必要がある。例えば、椅子やテーブルの足は、複数の要素(障害物)で1つの障害物を構成している。この特徴を属性データ402が管理していなければ正確な障害物確認を行なうことはできない。このように、複数の要素から成る1つの障害物の探索を行なう為に障害物のグループ化を行なう(ステップ802)。図15にその具体例を示す。
【0071】
図15において、図15aは前回の掃除作業で生成された部屋地図データ401、図15bは今回の掃除作業で生成されたテンポラリ部屋地図データ501を示している。これら2つのデータの一致を取ったとき、図15bのグループ424に示す5つの障害物は図15aのデータと不一致な障害物である為、図15aの障害物が移動したもの、或いは新たに出現した障害物であることが分かる。
【0072】
ここで先ず、このグループ424で1つの障害物を構成していると仮定する。そして、このグループ424の相対座標値を保ったまま平行移動、回転移動を施し、図15aのデータに一致する障害物がないか探索を行なう。
【0073】
続いて、図15cのように、グループ424を更に分割し、グループ425、グループ426でそれぞれ1つの障害物を構成していると仮定し、図15aのデータから探索する。このグループ分け作業を障害物の組み合わせの許す限り行なう。そして、図15aのデータと一致し、かつグループ中の要素数が最も多い障害物を選択することで、複数の要素からなる1つの障害物を見つけ出すことができる(ステップ803)。
【0074】
また、壁も特徴的な障害物の1つである。壁は壁際の障害物が移動する度にその形状が変化する。従って、壁と壁際の障害物とを正確に区別しなければ、正確な障害物確認を行なうことができない。このような壁形状の探索方法を図16に示す。
【0075】
図16において、図16aは前回の掃除作業で生成された部屋地図データ401中の壁形状データ427、図16bは今回の掃除作業で生成されたテンポラリ部屋地図データ501中の壁形状データ428を示している。これら2つのデータを統合し、最大面積となる形状を壁形状とする。この壁形状と図16bのテンポラリ部屋地図データ501中の壁形状データとの差分から求まる形状を障害物とすることで、図16cのように壁429と障害物430とを区別することができる(ステップ803)。
【0076】
このような障害物の特徴を考慮した上で、障害物の▲2▼属性データ学習機能が実行される。障害物探索を終えたならばステップ804へ進み、ステップ801、802、803の障害物探索の結果、テンポラリ部屋地図データ501にはなく部屋地図データ401にのみ存在する障害物があった場合は、これを消滅した障害物とし、この障害物の属性データを短期記憶属性データ900へ移動する(ステップ805)。また、部屋地図データ401にはなくテンポラリ部屋地図データ501にのみ存在する障害物があった場合、この障害物は新たに出現した障害物であり、▲4▼未登録データの新規登録にて既にその属性データは属性データ402に登録されている。
【0077】
ステップ804に該当しない障害物に対しては、ステップ806へ進み、障害物の絞り込みを行なう。つまり、ステップ801、802、803の障害物探索の結果、テンポラリ部屋地図データ501中の1つの障害物が部屋地図データ401中の複数の障害物と一致してしまった場合は、ステップ807へ進み、それら複数の障害物に対応する属性データ402により各障害物の存在履歴や知識を調査することで一致する障害物を1つに絞り込む。こうして1つの障害物を探索できたならば、探索した障害物の移動した位置、その移動位置から割り出される知識データを属性データ402に登録する。このようにして、属性データ402の更新を行なうことで、次回以降の掃引作業ではより正確な障害物推定と動的地図更新が可能となる。
【0078】
属性データ402の具体例を図17、障害物TYPEの例を分類して図18に示す。図17は、障害物TYPEがそれぞれ壁、固定障害物(タンス)、日々位置変化障害物(椅子の足)である3つの障害物の属性データ402を示す図である。属性データ402は、ID、統合ID、障害物TYPE、履歴領域数、履歴領域形状データ、掃除方法、知識データの各項目から構成される。
【0079】
各項目は次のように説明される。
ID:部屋地図データに記憶されている各障害物と対応づけるための番号
統合ID:複数の要素(障害物)からなる1つの障害物(例:椅子の足など)に関して、これらの要素に対応づけられた各ID番号
障害物TYPE:障害物のタイプを示す。(図18参照)
履歴領域数、履歴領域形状データ:部屋地図データ内において、この障害物が過去に存在していた領域の数と形状座標値をまとめたもの
掃除方法:障害物内部を掃除する際のロボット位置・方向指示点を記憶
知識データ:障害物特有の知識・条件を記述したもの。
【0080】
図17において、壁はID1、固定障害物(タンス)はID2、日々位置変化障害物は椅子の足ID3,4,5,6を統合したID7である。
【0081】
また、▲2▼属性データ学習機能の具体例を図19,20に示す。図19は部屋地図データ401の更新例、図20は属性データ402の更新例を示している。図20,21に示すように、1回目の掃除では全ての障害物(ID1の壁、ID2,3の障害物、ID4の障害物)を固定障害物とする。2回目の掃除では、先に説明した障害物のグループ化を用いた探索により、障害物がどのように変化(移動、消滅)したかを解析し、データ更新を行なう。
【0082】
ここでは、ID2,3の障害物を1つの障害物と判断し、ID5を割り当てている。また、ID2,3,4の障害物は位置が変化していることから、障害物TYPEが日々位置変化障害物となり、以前に障害物が存在していた領域6,7(図19の斜線部分)を履歴領域として記憶する。
【0083】
そして、掃除方法については、1回目の掃除では障害物がグループ化されていないため障害物内部が存在せず、掃除方法は無効であるが、2回目の掃除でのID4,5の障害物は内部を含んでいるため、掃除方法であるロボット位置・方向指示点が算出され、属性データ402に登録される。更に、障害物の状態から判断される知識データが記憶される。
【0084】
このように、初回のデータ更新では、全ての障害物を単独の固定障害物としている為、データ更新に時間を要するが、データ更新回数を重ね属性データ402が構築されてくると、更新時間が短縮される。
【0085】
以上、本実施形態により、掃除中に部屋地図を更新し、掃除ルートを再構築することが可能となり、状況が変化した部屋の掃除を完成させることが可能となった。また、障害物の検出に赤外線センサ及び触覚センサを採用したので、障害物の形状を精度良く認識することができ、部屋地図の更新及び掃除ルートの再構築を高精度に行なうことが可能となった。更に、障害物毎に属性データを備えるようにしたので、障害物の形状認識を高精度にかつ高速に行なうことが可能となった。
【0086】
【発明の効果】
本発明によれば、掃除中に障害物に遭遇したときに、動的に部屋地図を更新しつつ掃除ルートを再構築することが可能になるので、環境の変化に対して即時に対応して清掃を行なうロボット掃除機を実現することができる。また、赤外線センサ及び触覚センサを備えることによって障害物の形状認識を高精度にかつ高速に行なうことが可能となり、精密な清掃作業を実現することができる。更に、ロボット掃除機を低コスト化することができる。
【図面の簡単な説明】
【図1】本発明に係るロボット掃除機の発明の実施の形態を説明するためのシステム構成図。
【図2】図1に示したロボット掃除機のロボットユニットを説明するための上面図。
【図3】図2に示したロボットユニットの制御部とセンサ系・駆動系の関係を説明するための構成図。
【図4】図2に示したロボットユニットの処理内容を説明するためのフロー図。
【図5】本発明のロボット掃除機制御プログラムに従ってコンピュータが実行する処理内容を説明するためのフロー図。
【図6】図5に示した処理内容における障害物形状推定機能を説明するためのフロー図。
【図7】図5に示した処理内容における未登録データの新規登録処理を説明するためのフロー図。
【図8】図5に示した処理内容における掃除ルート再構築機能を説明するためのフロー図。
【図9】掃除ルート再構築の例を説明するための図。
【図10】掃除ルートを再構築する場合の領域分割を説明するためのフロー図。
【図11】掃除ルート再構築の別の例を説明するための図。
【図12】障害物内部の掃除方法の例を説明するための図。
【図13】属性データ(掃除方法)を統合した掃除ルートの例を説明するための図。
【図14】図5に示した処理内容における属性データ学習機能を説明するためのフロー図。
【図15】障害物探索におけるグループ化の例を説明するめの図。
【図16】壁と障害物を識別する方法の例を説明するための図。
【図17】属性データの例を説明するための図。
【図18】障害物TYPEの分類例を説明するための図。
【図19】部屋地図データにおける障害物属性学習機能の例を説明するための図。
【図20】属性データにおける障害物属性学習機能の例を説明するための図。
【符号の説明】
100…ロボットユニット、101…ロボットユニット本体、110…センサデータ取得部、111〜113…赤外線センサ、114…触覚センサ、126,127…エンコーダ、131…アーム部、132…吸込み部、150,225…無線通信モジュール、160…駆動部、200…知能処理ユニット、221…CPU、222…記憶装置、224…内部バス、235…ロボット掃除機制御プログラム、300…制御部、400…データベース、401…部屋地図データ、402…属性データ、403…掃除ルートデータ、500…メモリ。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a self-propelled robot cleaner that performs a cleaning operation in accordance with cleaning route data automatically generated based on room map data.
[0002]
[Prior art]
In a robot moving in a space having various obstacles, how to deal with the obstacle when it encounters the obstacle is an important point. As a method of coping with an obstacle encounter, it is common to use stored data on the obstacle.
[0003]
In the example disclosed in Japanese Patent Application Laid-Open No. 2001-129787, a robot holds image data of an obstacle. If there is an obstacle on the moving route, the robot captures the obstacle using an image sensor and determines whether or not the obstacle is a previously registered obstacle. Here, if it is determined that the obstacle is a registered obstacle, an avoidance operation is performed according to an avoidance program corresponding to the obstacle. If the robot determines that it is an unknown obstacle, the robot determines whether or not there is a person around the robot. When confirming the presence of the person, the robot requests assistance by voice or gesture.
[0004]
In the example disclosed in Japanese Patent Application Laid-Open No. Hei 9-222852, room map data is represented as a cognitive map that is spatial knowledge, and component definition information and probability information of the component are stored. Then, a route is generated using this cognitive map. When the robot encounters an obstacle different from the cognitive map on the moving route, the probability information of the corresponding component (route) is changed. As a result, the changed information is used at the time of the next movement route generation.
[0005]
As a sensor provided in the robot to detect an obstacle, an ultrasonic sensor is used in addition to the image sensor described above. The distance between the mobile robot and the surrounding obstacle is measured by an ultrasonic sensor, and a room map generation process and a robot position estimation process are performed (for example, see the US document "IEEE Journal of Robotics and Automation (IEEE Journal)". of Robotics and Automation) "(issued in 1988), RA-3, pp. 249-265.
[0006]
An example of a map storage method for determining a travel route in advance is disclosed in Japanese Patent Application Laid-Open No. H8-16241. In this example, attributes are given to each area of the room, such as a part where the entire work vehicle can travel, a part where only the working part of the work vehicle can be inserted, and a part where travel and insertion are impossible. Each area having the attribute is registered in the room map. A cleaning route is planned using the room map with attributes.
[0007]
[Problems to be solved by the invention]
Regarding the measures to be taken when an obstacle is encountered, in the example of Japanese Patent Application Laid-Open No. 2001-129787, since the image data is a planar information source, it is difficult to estimate the geometric structure of the obstacle and to store the information. It is difficult for a moving robot to capture an image of an obstacle in exactly the same environment as the obstacle image data being moved. Therefore, there is a possibility that an erroneous recognition may be made that the obstacles are different even though they are the same obstacle. Further, since the data update and the learning process are not performed, there is a possibility that the erroneous recognition may be caused in the same manner at the time of the next movement.
[0008]
Further, in the example of Japanese Patent Application Laid-Open No. 9-222852, when an obstacle different from the cognitive map information is encountered, a dynamic map update is performed, but the update content includes probability information indicating the reliability of the corresponding route. It does not change the actual shape of the map / route. Therefore, the route cannot be reconstructed in real time while moving, and if there is an unknown obstacle, the operation cannot be completed. Further, since the shape of the obstacle is not stored in the cognitive map, it is difficult to precisely clean around the obstacle.
[0009]
In a robot that not only moves but also cleans while moving, it is required to precisely grasp the shape of an obstacle. When an image sensor is used as an obstacle detection sensor for this purpose, the image data becomes a planar information source as described above, so that the shape grasp becomes insufficient. When an ultrasonic sensor is used, the distance to an obstacle can be measured to some extent, but the ultrasonic waves have a spread, so that sufficient accuracy cannot be obtained for grasping the shape. In addition, if a relatively expensive sensor such as an ultrasonic sensor is used, it is inevitable that the manufacturing cost of the robot increases. When a robot cleaner for a general household is targeted, it is desirable to manufacture the robot cleaner at the lowest possible cost.
[0010]
In the example of JP-A-8-16241, the cleaning route is generated depending on the attribute of the area in the room map. However, since the dynamic data update is not performed, the environment such as the movement of an obstacle is also considered. If a change occurs, the cleaning operation cannot be completed.
[0011]
A first object of the present invention is to provide a robot cleaner for reconstructing a cleaning route and restarting cleaning properly when an obstacle is encountered, and a robot cleaner control program for controlling the operation of the robot cleaner. It is in.
[0012]
A second object of the present invention is to provide a low-cost robot cleaner that dynamically updates a room map with high accuracy and a robot cleaner control program for controlling the operation thereof.
[0013]
It is a third object of the present invention to provide a robot cleaner for accurately and quickly recognizing an obstacle and performing cleaning, and a robot cleaner control program for controlling the operation of the robot cleaner.
[0014]
[Means for Solving the Problems]
The first object is to provide an obstacle detection sensor for detecting the presence / absence of an obstacle and recognizing its shape, room map data storing a room map in which obstacles in a room are registered, and room map data. And attribute data storing the attributes (existence history, cleaning method, etc.) of the obstacle registered in the storage device, and cleaning route data storing the cleaning route created based on the room map data as the cleaning route, Uses an obstacle detection sensor to detect the presence or absence of an obstacle during cleaning according to the cleaning route, and if an obstacle is detected, whether or not an obstacle is registered at that position on the room map data If an obstacle is not registered, the detected obstacle is determined as an unknown obstacle, the shape of the unknown obstacle is recognized using the obstacle detection sensor, and the shape that matches the recognized shape is set in the room. map If it can be estimated by referring to the data and attribute data, the obstacle having the estimated shape is registered in the room map data, the cleaning route data is reconstructed, and a shape that matches the recognized shape is estimated. If this is not possible, this is achieved by determining the unknown obstacle as a newly appearing obstacle, registering it in the room map data, and reconstructing the cleaning route data.
[0015]
By adopting such means, when the robot cleaner encounters an obstacle, the known or new appearance of the obstacle is clearly distinguished, and the room map is updated accordingly each time an obstacle is encountered. Is done. Therefore, even if an unknown obstacle is encountered, the cleaning route can be properly reconstructed, and the cleaning can be restarted according to the reconstructed cleaning route.
[0016]
The second object is to obtain information from an infrared sensor and a tactile sensor for a robot traveling based on route data stored in a storage unit, and use the information to determine the presence or absence of an obstacle on the route. This is achieved by detecting and recognizing the shape of the obstacle using information from the tactile sensor, and executing the map creating method of creating the route data using the result of the detection and the result of the recognition. .
[0017]
By using the infrared sensor and the tactile sensor tactile sense, it is possible to accurately grasp the shape of the obstacle, and therefore, it is possible to create cleaning route data with high accuracy and create a room map based on the data. Furthermore, both the infrared sensor and the tactile sensor can be configured using inexpensive sensor elements, and a low-cost robot cleaner can be realized.
[0018]
The third object is to provide at least a sensor, obstacle data, and cleaning route data in which a cleaning route is stored as a cleaning route. This is achieved by obtaining information, reconstructing the cleaning route using the information and the data of the obstacle, and, if the cleaning route is reconstructed, continuing cleaning according to the reconstructed cleaning route. You.
[0019]
Obstacle data, which is an attribute unique to the obstacle (existence history, cleaning method, etc.), is recorded in advance and reflected in the reconstruction of the cleaning route, so that the obstacle can be accurately and quickly recognized and cleaned. Can be performed.
[0020]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a robot cleaner according to the present invention and a robot cleaner control program for controlling the operation thereof will be described in more detail with reference to the embodiments of the invention illustrated in the drawings.
[0021]
FIG. 1 shows a system configuration example of a robot cleaner using the robot cleaner control program of the present invention. The robot cleaner includes a fixed intelligent processing unit 200 and a robot unit 100 for cleaning. The intelligent processing unit 200 and the robot unit 100 are wirelessly connected via the wireless communication module 225 and the wireless communication module 150 to form two-way wireless communication. The intelligent processing unit 200 wirelessly sends an operation command to the robot unit 100, and the robot unit 100 wirelessly sends sensor data to the intelligent processing unit 200.
[0022]
In the intelligent processing unit 200, a CPU (Central Processing Unit) 221 that operates based on the robot cleaner control program 235, a memory 500 used by the CPU 221 during processing, a wireless communication module 225, a robot cleaner control program 235, and a database 400 are stored. Storage device 222 is connected to the internal bus 224. Each of these units connected to the internal bus 224 forms a computer. The database 400 includes room map data 401, attribute data 402, and cleaning route data 403.
[0023]
Although these data will be described later, the room map data 401 is data indicating where and how obstacles (door cabinets, tables, chairs, walls, columns, etc.) in the room to be cleaned are arranged. Yes, these are represented by vertical and horizontal coordinate values starting from the cleaning start point. Therefore, the position where the obstacle is arranged, the shape and the direction of the obstacle can be known from the coordinate values.
[0024]
The attribute data 402 includes attributes of each obstacle, that is, the type of the obstacle (whether a wall or a general obstacle, a fixed obstacle if a general obstacle, or an object whose position changes every day, etc.), an ID of the obstacle (identification No.), obstacle data indicating the cleaning method (cleaning only around the obstacle or precision cleaning for cleaning the inside of the obstacle), the number of history areas (the number of areas where the obstacle existed in the past), etc. The cleaning route data 403 is data representing the cleaning route determined from the room map data 401 and the attribute data 402 by the coordinate values.
[0025]
In the robot unit 100, the control unit 300 is connected to the wireless communication module 150, and the driving unit 160 and the sensor data acquisition unit 110 are connected to the control unit 300. The driving unit 160 includes a mobile robot driving unit 120 that drives a wheel motor and a cleaning mechanism driving unit 130 that drives a suction unit that performs cleaning. The sensor data acquisition unit 110 includes an obstacle detection sensor 115 that detects the approach of an obstacle and the shape of the obstacle, and a wheel encoder 128 that measures the number of rotations of the wheel.
[0026]
The control unit 300 receives the operation command from the intelligent processing unit 200 and controls the operation of the driving unit 160. The control unit 300 also receives an operation command from the intelligent processing unit 200 and transmits sensor data from the sensor data acquisition unit 110 to the intelligent processing unit 200.
[0027]
The computer determines the operation of the robot unit 100 using each data of the database 400 and the sensor data transmitted from the robot unit 100, and transmits an operation command to the robot unit 100. In this way, the processing according to the robot cleaner control program 235 is executed.
[0028]
In addition, although the case where the robot cleaner is separated into the intelligent processing unit 200 and the robot unit 100 has been described above, the intelligent processing unit 200 can be mounted on the robot unit 100 and integrated therewith. In this case, the wireless communication module 225 and the wireless communication module 150 are omitted, and the control unit 300 is directly connected to the internal bus 224.
[0029]
FIG. 2 is a top view showing the configuration of the robot unit 100. In FIG. 2, a main body 101 of the robot unit 100 is an independent drive wheel type mobile robot including a left drive wheel 121, a right drive wheel 122, and an auxiliary wheel 123, and adjusts the wheel speed to any direction. It is possible to move. Rotary encoders 126 and 127 are installed on both wheels 121 and 122, respectively, so that the number of rotations of both wheels can be measured. The mobile robot driving unit 120 is configured by the wheels 121 and 122 and the respective motors (not shown in FIG. 2) for driving the wheels 121 and 122 (FIG. 1).
[0030]
Infrared sensors 111, 112, and 113 are provided around the robot unit main body 101, and can detect the presence of relatively near obstacles in front, side, and rear. Further, a wireless communication module 150 for realizing wireless communication with the intelligent processing unit 200 is provided. Although not shown, the control unit 300 is installed adjacent to the wireless communication module 150.
[0031]
Further, the robot unit main body 101 is provided with an arm 131 that can move horizontally to the left and right, and a suction unit 132 that can rotate about the distal end of the arm 131 as a central axis, and these constitute a cleaning mechanism. The suction section 132 includes a dust collection unit 136 for storing dust, a suction motor 135 for performing a suction operation by suction, and a tactile sensor 114. The tactile sensor 114 detects that an object has been touched.
[0032]
The arm section 131 and the suction section 132, which are cleaning mechanisms, can operate independently of the robot unit main body 101, and can be removed from the robot unit main body 101. Therefore, it is possible to prepare several cleaning mechanisms having different shapes and operations, and perform the operation by switching the cleaning mechanisms according to the state of the cleaning environment.
[0033]
The obstacle detection sensor 115 is constituted by the infrared sensors 111, 112, 113 and the tactile sensor 114, and the wheel encoder 128 is constituted by the rotary encoders 126, 127 (FIG. 1). The infrared sensors 111, 112, and 113 are realized by a structure in which a light emitting diode and a photodiode are combined, and infrared light reflected from an obstacle, which is emitted from the light emitting diode, is detected by the photodiode. , A piezoelectric element or a small microswitch. All of these elements are very inexpensive, and the obstacle detection sensor 115 can be realized at low cost.
[0034]
FIG. 3 is a block diagram showing a relationship between the control unit 300 in the robot unit 100, the sensor data acquisition unit 110, the mobile robot driving unit 120, and the cleaning mechanism driving unit 130.
[0035]
When the operation command transmitted from the intelligent processing unit 200 is a driving command, the control unit 300 generates a control signal for operating the mobile robot driving unit 120 and the cleaning mechanism driving unit 130 based on the driving command, and periodically generates the control signal. Then, the control signal is transmitted to the mobile robot driving unit 120 and the cleaning mechanism driving unit 130. The control signal controls the rotation of the left wheel motor 124 and the right wheel motor 125 for driving the wheels 121 and 122 in the mobile robot drive unit 120, and further controls the cleaning mechanism drive unit 130. The cleaning mechanism drive unit 130 includes a suction motor 135, an arm slide motor 134 for moving the arm 131, and a suction unit rotation motor 133 for operating a rotation mechanism attached to the suction unit 132, The rotation of each of these motors is controlled.
[0036]
The control unit 300 periodically acquires data from the sensor data acquisition unit 110. When the operation command transmitted from the intelligent processing unit 200 is a sensor data transmission request command, the control unit 300 transmits the sensor data to the intelligent processing unit 200 using the wireless communication module 150.
[0037]
FIG. 4 is a flowchart showing the processing contents of the control unit 300. First, the operation command received by the wireless communication module 150 is analyzed in step 301. Next, the process proceeds to step 302, and if the analyzed operation command is a drive command, the process proceeds to step 308. On the other hand, if the analyzed operation command is a sensor data transmission request command, the process proceeds to step 303 and the latest sensor data stored in the robot unit 100 is transmitted to the intelligent processing unit 200 via the wireless communication module 150. In step 308, the setting of the motor to be driven, the setting of the speed, and the setting of the moving distance are performed based on the contents of the driving command.
[0038]
The control unit 300 periodically executes the interrupt processing 304 at 10-millisecond intervals to drive the motor and acquire sensor data. When the interrupt processing execution time has been reached, in step 305, control signals for the respective drive motors of the wheels, arms, and suction units are generated based on the values set in step 308, and transmitted to the respective drive motors of the drive unit 160. Next, the process proceeds to step 306, where data on the number of obstacle detections and wheel rotations is acquired from the sensor data acquisition unit 110 as sensor data. The acquired sensor data is stored in the memory 307 as the latest sensor data. That is, the latest sensor data in the memory 307 is updated every time the interrupt processing is performed.
[0039]
Next, the contents of processing executed by the computer of the intelligent processing unit 200 according to the robot cleaner control program 235 will be described. In the present invention, when the robot cleaner during cleaning detects that the situation of the room is different from the situation shown in the room map data 401, the robot cleaner updates the room map data 401 on the spot and performs cleaning. The route data 403 is reconstructed. That is, each time there is a difference, the room map data 401 is updated and the cleaning route data 403 is reconstructed. There are differences when an obstacle is moved away from the room or when a new obstacle that is not in the room is brought into the room.
[0040]
The respective updating of the room map data 401 and the respective rebuilding of the cleaning route data 403 are performed by copying the room map data 401 and the cleaning route data 403 into the memory 500, respectively. 501 and the temporary cleaning route data 502, and when cleaning is completed, the temporary room map data 501 and the temporary cleaning route data 502 are updated by overwriting the room map data 401 and the cleaning route data 403. The next cleaning is performed using the updated room map data 401 and the cleaning route data 403.
[0041]
FIG. 5 is a flowchart showing a processing procedure by the computer of the intelligent processing unit 200. When an obstacle is registered on the temporary room map data 501 at the place where the robot cleaner is moving, or when an obstacle is encountered while moving, first, at step 201, sensor data acquisition of the robot unit 100 is performed. The sensor data from the unit 110 is analyzed. Specifically, the current position of the robot unit 101 is calculated based on data from the wheel encoder 128, and it is detected whether the tactile sensor 114 has touched an obstacle. In addition, the infrared sensors 111 to 113 can roughly detect the presence of a nearby obstacle and detect that the obstacle is approaching the obstacle, and in advance, the touch sensor 114 touches the obstacle. I can foresee.
[0042]
Next, in step 202, the temporary room map data 501 is compared with the sensor data analysis result, and the difference is first determined by the presence or absence of an obstacle. The determination of the presence or absence of the obstacle is performed based on the data from the tactile sensor 114 as described above. When there is an obstacle, the process proceeds to step 203, and it is determined whether or not an obstacle is registered on the temporary room map data 501 at a position where the tactile sensor 114 touches the obstacle. If an obstacle has been registered, it is determined that there is no difference, the process proceeds to step 211, and cleaning is performed according to the temporary cleaning route data 502. Subsequently, in step 212, if all the cleaning of the room has not been completed, the process returns to step 201 to continue the processing.
[0043]
In step 202, if there is no obstacle at the current position, the process proceeds to step 204, and the obstacle registered as being moving on the temporary room map data 501 is removed. In step 208, the temporary room map data 501 is updated by removing the obstacle, and subsequently, in step 210, the cleaning route is reconstructed based on the updated temporary room map data 501. Next, in step 211, cleaning is performed according to the reconstructed temporary cleaning route data 502.
[0044]
In step 203, if no obstacle is registered on the temporary room map data 501 at the position where the tactile sensor 114 touched the obstacle, the obstacle touched by the tactile sensor 114 is regarded as an unknown obstacle, and the process proceeds to step 205. , The shape of the unknown obstacle is recognized using the tactile sensor 114.
[0045]
Subsequently, in step 206, it is determined whether or not the temporary room map data 501 has an obstacle whose shape at least partially matches the recognized shape of the unknown obstacle. If there is an obstacle having a matching shape, the process proceeds to step 207, in which the entire shape is estimated using the attribute data 402, and in step 208, the obstacle having the estimated shape is registered in the temporary room map data 501. . Thereby, the temporary room map data 501 is updated.
[0046]
If there is no obstacle having the matching shape in Step 206, the process proceeds to Step 209, where the unknown obstacle is set as a newly appearing obstacle, and the entire shape of the unknown obstacle or the area where the unknown obstacle exists is grasped. The attribute data of the newly appearing obstacle is added to the attribute data 402. In step 208, a newly appearing obstacle whose shape or region is grasped is registered in the temporary room map data 501, and the temporary room map data 501 is updated.
[0047]
When all cleaning is completed in step 212, the attribute data 402 is updated in step 213 (for example, when an obstacle that has been fixed is moved, the attribute is changed to an obstacle whose position changes, etc.), and processing is performed. finish.
[0048]
As described above, in the present invention, the temporary room map data 501 and the temporary cleaning route data 502 are dynamically updated during the cleaning, so that the cleaning can be completed even when the situation inside the room changes.
[0049]
The function realized by the above steps 202 to 208 as a whole is (1) an obstacle shape estimation function, the function realized by step 213 is (2) an attribute data learning function, and the function realized by step 210 is {Circle around (3)} becomes a cleaning route reconstruction function, and in addition, the function realized by steps 209 and 208 becomes [4] a new registration function of unregistered data. The details of each will be described below.
[0050]
FIG. 6 is a flowchart showing the processing performed by the (1) obstacle shape estimation function. As described above, there are two situations where a difference occurs between the sensor data and the temporary room map data 501. One is when an unknown obstacle is encountered, and the other is when there is no obstacle present in the temporary room map data.
[0051]
Which of the two factors has occurred is checked in step 601 using the sensor data analysis result, and if there is no registered obstacle, the process proceeds to step 605 to search for the corresponding obstacle from the attribute data 402. Then, the shape of the obstacle is deleted from the temporary room map data 501. Thereby, the temporary room map data 501 is updated at the same time. Then, the processing is shifted to (3) the cleaning route reconstruction function.
[0052]
On the other hand, if it is determined in step 601 that the factor of the data difference is an encounter with an unknown obstacle, the process proceeds to step 602, where the shape of the unknown obstacle is recognized by the tactile sensor 114 installed in the suction unit 132, and the recognized shape is temporarily stored. Write to the room map data 501. Then, in step 603, by referring to the room map data 401 and the short-term storage attribute data 900, shape data that at least partially matches the shape of the unknown obstacle is searched.
[0053]
Here, the short-term memory attribute data 900 is shape data and attribute data of an obstacle that previously existed on the room map data 401 and the attribute data 402 but has disappeared. It is held in the storage device 222 only for a period.
[0054]
If there is no shape data that at least partially matches the shape of the unknown obstacle in the room map data 401 or the short-term memory attribute data 900, the unknown obstacle is regarded as a newly appearing object, and (4) Move the process to new registration of unregistered data.
[0055]
On the other hand, if there is a shape that at least partially matches the shape of the unknown obstacle, the number of obstacles that partially match the shape is checked. -Priorities are set by referring to information other than shapes such as knowledge, and matching shapes are narrowed down to one. As described above, if the number of matching shapes is reduced to one, the process proceeds to step 608, where information on the obstacle whose shape matches the above is read from the attribute data 402 or the short-term memory attribute data 900, and the overall shape is estimated. Then, in step 609, the temporary room map data 501 is updated based on the estimation result, and the processing shifts to (3) the cleaning route reconstruction function.
[0056]
Next, (4) new registration of unregistered data will be described. FIG. 7 shows the processing contents. In step 1001, it is determined whether the entire shape of the obstacle has been grasped or not. When the entire shape is to be grasped, the obstacle TYPE of the attribute data is registered as a fixed obstacle, and the other items are registered as invalid in the attribute data 402, and (3) the processing shifts to the cleaning route reconstruction function.
[0057]
On the other hand, if the shape is only partially grasped, the process proceeds to step 1003, where a rectangular area is formed from the partially grasped shape range, and this is registered in the temporary room map data 501 as an obstacle. Then, the obstacle TYPE of the attribute data is newly registered in the attribute data 402 as a fixed obstacle, and the other items are invalidated, and the processing shifts to the (3) cleaning route reconstruction function.
[0058]
Next, (3) the cleaning route reconstruction function will be described. FIG. 8 shows the processing contents. When it is estimated that the obstacle existing in the room map data 401 has disappeared as a result of the processing by the obstacle shape estimation function, in step 702, a route is reconstructed for the unswept area of the temporary room map data 501, The temporary cleaning route data 502 is written. This is shown in FIG.
[0059]
FIG. 9A shows obstacles 414 and 415, cleaning route data 403, and a swept area 411 represented by coordinate values in the room map data 401. If the obstacles 414 and 415 in FIG. 9A disappear, the temporary room map data 501 is updated to a state without the obstacles 414 and 415 as shown in FIG. 9B, and the cleaning route 512 is reconstructed for the unswept area. Is done. Thereafter, the robot cleaner performs work according to the restructuring route 512.
[0060]
On the other hand, a process in the case where an unknown obstacle is detected as a result of the process in the obstacle shape estimation function and the entire shape thereof is estimated will be described. First, in step 703, area division is performed on the unswept area of the temporary room map data.
[0061]
FIG. 10 shows the processing contents of the area division. First, in step 1101, a vertical line is dropped from the horizontal and vertical vertices of the room map data 401 to perform region division. Next, in step 1102, a rectangular region is formed by integrating regions sharing sides, and only the region having the maximum area is selected. By performing the processing in step 1102 until there is no unselected area, area division is realized.
[0062]
After the area is divided in this manner, the process proceeds to step 704, where a straight route is created for each area. A cleaning route is generated by integrating these straight routes, and is written to the temporary cleaning route data 502.
[0063]
FIG. 11 is a schematic diagram of steps 703 and 704. FIG. 11 a shows obstacles 416 and 417, cleaning route data 403, and a swept area 411 represented by coordinate values in the room map data 401. If an unknown obstacle is detected on the cleaning path and its overall shape is estimated to be the shape of the known obstacle 416, 417, it is assumed that the obstacle 416, 417 has moved to the position where the unknown obstacle was detected, and a temporary room map is displayed. The data 501 is updated so that the obstacles 416 and 417 have moved as shown in FIG. 11B. Then, a perpendicular line is drawn down from the vertex in the horizontal and vertical directions to the unswept area to divide the area. Further, as shown in FIG. 11c, adjacent areas are integrated to form a rectangular area. Then, a straight route 418 is created for each area (FIG. 11D), and these are integrated to reconstruct the cleaning route 512 (FIG. 11E).
[0064]
Although not shown, if the shape of the unknown obstacle does not match the shape of the registered obstacle, and it is determined that the unknown obstacle is a newly appearing obstacle, the obstacle shown in FIG. Objects 416 and 417 are left as they are without moving. Therefore, in that case, a cleaning route different from the cleaning route 512 of FIG. 11e is reconstructed.
[0065]
Subsequently, in step 705, if a cleaning method that requires precision cleaning is registered in the attribute data of the obstacle, the process proceeds to step 706, where the cleaning method that requires precision cleaning is registered with the temporary cleaning route data 502. Integrate. FIG. 12 shows a cleaning method that requires precision cleaning, and FIG. 13 shows a method of integrating with the temporary cleaning route data 502. In step 705, when the cleaning method requiring the precise cleaning is not registered in the attribute data of the obstacle, the cleaning route 512 is written in the temporary cleaning route data 502.
[0066]
The suction part 132 of the robot cleaner shown in the present embodiment can operate independently of the robot unit main body 101, so that it can enter a region where the robot unit main body 101 cannot pass. The cleaning method registered in the attribute data 402 is a method of cleaning the inside of an obstacle by the suction unit 132.
[0067]
For example, as shown in FIG. 12A, in an obstacle 419 having a region (inside an obstacle) 420 through which the robot unit main body 101 cannot pass (a convex hull shape 421 wrapping the obstacle 419 on the outside is formed), the suction part 132 is inserted. A possible line (suction insertion line) 422 is obtained, and a point 423 (robot position / direction indicating point) indicating the position / direction at which the robot cleaner inserts the suction unit 132 is calculated as shown in FIG. 12B. From these points, the suction part 132 is inserted for cleaning. The cleaning method registered in the attribute data 402 is the robot position / direction indication point 423.
[0068]
Further, as shown in FIG. 13A, the cleaning method is connected to the cleaning route 403 closest to the robot position / direction indication point 423, and when the working robot cleaner reaches the connection point as shown in FIG. The direction is changed according to the direction indication point 423, and the inside of the obstacle 419 is cleaned by the suction unit 132.
[0069]
Next, (2) the processing contents of the attribute data learning function will be described. FIG. 14 shows a flowchart of the processing contents. {Circle around (2)} The attribute data learning function is executed every time the cleaning operation is completed. First, the difference between the room map data 401 and the temporary room map data 501 is compared, and the obstacle in the room map data 401 created last time is checked for a moved obstacle or an obstacle that has disappeared (step 801). .
[0070]
When performing this obstacle confirmation, it is necessary to consider the characteristics of the obstacle. For example, a chair or a table leg constitutes one obstacle by a plurality of elements (obstacles). Unless this feature is managed by the attribute data 402, accurate obstacle confirmation cannot be performed. In this manner, obstacles are grouped in order to search for one obstacle composed of a plurality of elements (step 802). FIG. 15 shows a specific example.
[0071]
In FIG. 15, FIG. 15A shows room map data 401 generated in the previous cleaning operation, and FIG. 15B shows temporary room map data 501 generated in the current cleaning operation. When these two data are coincident, the five obstacles shown in the group 424 in FIG. 15B are inconsistent with the data in FIG. 15A, so that the obstacle in FIG. It can be seen that the obstacle is an obstacle.
[0072]
Here, it is first assumed that the group 424 forms one obstacle. Then, parallel movement and rotational movement are performed while maintaining the relative coordinate value of the group 424, and a search is made for an obstacle that matches the data of FIG. 15A.
[0073]
Subsequently, as shown in FIG. 15C, the group 424 is further divided, and it is assumed that the group 425 and the group 426 each constitute one obstacle, and a search is performed from the data of FIG. 15A. This grouping work is performed as long as the combination of obstacles permits. Then, by selecting an obstacle that matches the data in FIG. 15A and has the largest number of elements in the group, one obstacle including a plurality of elements can be found (step 803).
[0074]
In addition, a wall is one of the characteristic obstacles. The shape of the wall changes each time an obstacle near the wall moves. Therefore, unless the wall and the obstacle near the wall are accurately distinguished, accurate obstacle confirmation cannot be performed. FIG. 16 shows a method of searching for such a wall shape.
[0075]
16, FIG. 16a shows wall shape data 427 in the room map data 401 generated in the previous cleaning operation, and FIG. 16b shows wall shape data 428 in the temporary room map data 501 generated in the current cleaning operation. ing. By integrating these two data, the shape having the maximum area is defined as the wall shape. By using the shape obtained from the difference between the wall shape and the wall shape data in the temporary room map data 501 in FIG. 16B as an obstacle, the wall 429 and the obstacle 430 can be distinguished as shown in FIG. 16C ( Step 803).
[0076]
The obstacle (2) attribute data learning function is executed in consideration of such characteristics of the obstacle. When the obstacle search is completed, the process proceeds to step 804. As a result of the obstacle search in steps 801, 802, and 803, if there is an obstacle that does not exist in the temporary room map data 501 but exists only in the room map data 401, This is regarded as a lost obstacle, and the attribute data of this obstacle is moved to the short-term storage attribute data 900 (step 805). If there is an obstacle that exists only in the temporary room map data 501 but not in the room map data 401, this obstacle is a newly appearing obstacle, and (4) has already been registered by new registration of unregistered data. The attribute data is registered in the attribute data 402.
[0077]
For an obstacle that does not correspond to step 804, the process proceeds to step 806 to narrow down the obstacle. That is, as a result of the obstacle search in steps 801, 802, and 803, if one obstacle in the temporary room map data 501 matches a plurality of obstacles in the room map data 401, the process proceeds to step 807. By examining the existence history and knowledge of each obstacle based on the attribute data 402 corresponding to the plurality of obstacles, matching obstacles are narrowed down to one. If one obstacle can be searched in this way, the position where the searched obstacle has moved and the knowledge data calculated from the moved position are registered in the attribute data 402. By updating the attribute data 402 in this manner, more accurate obstacle estimation and dynamic map updating can be performed in the next and subsequent sweeping operations.
[0078]
FIG. 17 shows a specific example of the attribute data 402, and FIG. 18 shows a classification of the example of the obstacle TYPE. FIG. 17 is a diagram showing attribute data 402 of three obstacles, each of which is a wall, a fixed obstacle (cance), and a daily position changing obstacle (foot of a chair). The attribute data 402 includes items of ID, integrated ID, obstacle type, number of history areas, history area shape data, cleaning method, and knowledge data.
[0079]
Each item is described as follows.
ID: Number for associating with each obstacle stored in the room map data
Integrated ID: With respect to one obstacle (eg, chair legs, etc.) composed of a plurality of elements (obstacles), respective ID numbers associated with these elements
Obstacle TYPE: Indicates the type of obstacle. (See FIG. 18)
Number of history areas, history area shape data: Summarizes the number and shape coordinate values of areas where this obstacle existed in the past in room map data
Cleaning method: Memorize the robot position and direction indication points when cleaning the inside of obstacles
Knowledge data: Describes knowledge and conditions specific to obstacles.
[0080]
In FIG. 17, the wall is ID1, the fixed obstacle (dance) is ID2, and the daily position changing obstacle is ID7, which is an integration of chair legs ID3, 4, 5, and 6.
[0081]
19 and 20 show specific examples of the (2) attribute data learning function. 19 shows an example of updating the room map data 401, and FIG. 20 shows an example of updating the attribute data 402. As shown in FIGS. 20 and 21, in the first cleaning, all obstacles (walls of ID1, obstacles of ID2 and 3, and obstacles of ID4) are fixed obstacles. In the second cleaning, the data is updated by analyzing how the obstacle has changed (moved or disappeared) by searching using the grouping of obstacles described above.
[0082]
Here, the obstacles of ID2 and ID3 are determined as one obstacle, and ID5 is assigned. Further, since the positions of the obstacles with IDs 2, 3, and 4 are changing, the obstacle TYPE is a position change obstacle every day, and the areas 6, 7 where the obstacles existed before (the shaded portions in FIG. 19). ) Is stored as a history area.
[0083]
As for the cleaning method, the obstacles are not grouped in the first cleaning, so that the inside of the obstacle does not exist, and the cleaning method is invalid. Since the inside is included, the robot position / direction indicating point, which is the cleaning method, is calculated and registered in the attribute data 402. Further, knowledge data determined from the state of the obstacle is stored.
[0084]
As described above, in the first data update, all obstacles are set as a single fixed obstacle, and thus it takes time to update the data. However, if the attribute data 402 is constructed by repeating the number of data updates, the update time becomes longer. Be shortened.
[0085]
As described above, according to the present embodiment, the room map can be updated during cleaning, and the cleaning route can be reconstructed. Thus, it is possible to complete the cleaning of the room whose situation has changed. In addition, since an infrared sensor and a tactile sensor are used to detect obstacles, the shape of obstacles can be recognized with high accuracy, and room maps can be updated and cleaning routes can be reconstructed with high accuracy. Was. Furthermore, since the attribute data is provided for each obstacle, it is possible to perform the shape recognition of the obstacle with high accuracy and at high speed.
[0086]
【The invention's effect】
According to the present invention, when an obstacle is encountered during cleaning, it is possible to reconstruct the cleaning route while dynamically updating the room map, so that it can immediately respond to environmental changes. A robot cleaner for cleaning can be realized. Further, by providing the infrared sensor and the tactile sensor, it is possible to perform the shape recognition of the obstacle with high accuracy and at high speed, and to realize a precise cleaning operation. Further, the cost of the robot cleaner can be reduced.
[Brief description of the drawings]
FIG. 1 is a system configuration diagram for describing an embodiment of a robot cleaner according to the present invention.
FIG. 2 is a top view for explaining a robot unit of the robot cleaner shown in FIG. 1;
FIG. 3 is a configuration diagram for explaining a relationship between a control unit of the robot unit shown in FIG. 2 and a sensor system / drive system.
FIG. 4 is a flowchart for explaining processing contents of the robot unit shown in FIG. 2;
FIG. 5 is a flowchart for explaining processing executed by a computer according to the robot cleaner control program of the present invention.
FIG. 6 is a flowchart for explaining an obstacle shape estimation function in the processing content shown in FIG. 5;
FIG. 7 is a flowchart for explaining a new registration process of unregistered data in the processing contents shown in FIG. 5;
FIG. 8 is a flowchart for explaining a cleaning route reconstruction function in the processing contents shown in FIG. 5;
FIG. 9 is a diagram for explaining an example of cleaning route reconstruction.
FIG. 10 is a flowchart for explaining area division when a cleaning route is reconstructed.
FIG. 11 is a view for explaining another example of the cleaning route reconstruction.
FIG. 12 is a diagram for explaining an example of a method of cleaning the inside of an obstacle.
FIG. 13 is a view for explaining an example of a cleaning route integrating attribute data (cleaning method).
FIG. 14 is a flowchart for explaining an attribute data learning function in the processing contents shown in FIG. 5;
FIG. 15 is a diagram for explaining an example of grouping in obstacle search.
FIG. 16 is a view for explaining an example of a method for identifying a wall and an obstacle.
FIG. 17 is a diagram illustrating an example of attribute data.
FIG. 18 is a diagram for describing an example of classification of obstacles TYPE.
FIG. 19 is a diagram for explaining an example of an obstacle attribute learning function in room map data.
FIG. 20 is a view for explaining an example of an obstacle attribute learning function in attribute data.
[Explanation of symbols]
Reference Signs List 100 robot unit, 101 robot unit main body, 110 sensor data acquisition unit, 111 to 113 infrared sensor, 114 tactile sensor, 126, 127 encoder, 131 arm unit, 132 suction unit, 150, 225 Wireless communication module, 160: drive unit, 200: intelligent processing unit, 221: CPU, 222: storage device, 224: internal bus, 235: robot cleaner control program, 300: control unit, 400: database, 401: room map Data, 402: attribute data, 403: cleaning route data, 500: memory.

Claims (10)

コンピュータによってロボット掃除機の動作を制御するための制御プログラムであって、
該ロボット掃除機は、障害物の有無の検知と該障害物の形状の認識を行なう障害物検出センサと、部屋に在る障害物を登録して成る部屋地図を記憶した部屋地図データと、該部屋地図データに登録された障害物の属性を記憶した属性データと、該部屋地図データに基づいて作成される掃除の経路を掃除ルートとして記憶した掃除ルートデータとを備えており、
該制御プログラムは、該コンピュータに、
該掃除ルートに従って掃除を行なっているときに該障害物検出センサを使って障害物の有無を検知する手順と、
障害物有りを検知した場合にその位置に該部屋地図データ上で障害物が登録されているか否かを判断する手順と、
障害物が登録されていない場合に、検知した障害物を未知障害物と判断する手順と、
障害物検出センサを使って該未知障害物の形状を認識する手順と、
認識した形状と一致する形状を該部屋地図データ及び該属性データを参照して推定する手順と、
形状を推定することができた場合は、推定した形状の障害物を部屋地図データに登録して掃除ルートデータを再構築する手順と、
形状を推定することができなかった場合は、該未知障害物を新たに出現した障害物と判断して部屋地図データに登録し、掃除ルートデータを再構築する手順とを実行させることを特徴とするロボット掃除機制御プログラム。
A control program for controlling the operation of the robot cleaner by a computer,
The robot cleaner includes an obstacle detection sensor that detects the presence or absence of an obstacle and recognizes the shape of the obstacle, room map data that stores a room map in which obstacles in a room are registered, Attribute data that stores the attribute of the obstacle registered in the room map data, and cleaning route data that stores a cleaning path created based on the room map data as a cleaning route,
The control program causes the computer to:
A procedure for detecting the presence or absence of an obstacle using the obstacle detection sensor while performing cleaning according to the cleaning route;
When detecting the presence of an obstacle, a procedure of determining whether or not an obstacle is registered at the position on the room map data,
A procedure for determining the detected obstacle as an unknown obstacle if no obstacle is registered;
Recognizing the shape of the unknown obstacle using an obstacle detection sensor;
Estimating a shape that matches the recognized shape with reference to the room map data and the attribute data,
If the shape can be estimated, register the obstacle having the estimated shape in the room map data and reconstruct the cleaning route data,
And determining the unknown obstacle as a newly appearing obstacle, registering the unknown obstacle in the room map data, and reconstructing the cleaning route data when the shape cannot be estimated. Robot vacuum cleaner control program.
前記障害物検出センサは、赤外線センサと触覚センサとからなることを特徴とする請求項1に記載のロボット掃除機制御プログラム。2. The computer-readable storage medium according to claim 1, wherein the obstacle detection sensor includes an infrared sensor and a tactile sensor. 前記部屋地図データ及び前記掃除ルートデータは、それぞれテンポラリ部屋地図データ及びテンポラリ掃除ルートデータを有しており、
推定した形状の障害物を部屋地図データに登録して掃除ルートデータを再構築する前記手順は、推定した形状の障害物を該テンポラリ部屋地図データに登録して該テンポラリ掃除ルートデータを再構築し、掃除終了時に該テンポラリ部屋地図データ及び該テンポラリ掃除ルートデータをそれぞれ該部屋地図データ及び該掃除ルートデータに上書きする手順であり、
該未知障害物を新たに出現した障害物と判断して部屋地図データに登録し、掃除ルートデータを再構築する前記手順は、該未知障害物を新たに出現した障害物と判断し、該新出現の障害物を該テンポラリ部屋地図データに登録して該テンポラリ掃除ルートデータを再登録し、掃除終了時に該テンポラリ部屋地図データ及び該テンポラリ掃除ルートデータをそれぞれ該部屋地図データ及び該掃除ルートデータに上書きする手順であることを特徴とする請求項1に記載のロボット掃除機制御プログラム。
The room map data and the cleaning route data have temporary room map data and temporary cleaning route data, respectively.
The above procedure of registering the obstacle of the estimated shape in the room map data and reconstructing the cleaning route data includes registering the obstacle of the estimated shape in the temporary room map data and reconstructing the temporary cleaning route data. A step of overwriting the temporary room map data and the temporary cleaning route data with the room map data and the cleaning route data at the end of cleaning, respectively.
The procedure of determining the unknown obstacle as a newly appearing obstacle, registering the unknown obstacle in the room map data, and reconstructing the cleaning route data includes determining the unknown obstacle as a newly appearing obstacle, and The appearing obstacle is registered in the temporary room map data and the temporary cleaning route data is re-registered. At the end of cleaning, the temporary room map data and the temporary cleaning route data are stored in the room map data and the cleaning route data, respectively. The program according to claim 1, wherein the program is an overwriting procedure.
上書き前の前記部屋地図データと、掃除終了時の前記テンポラリ部屋地図データとの相違比較を行なうことによって前記属性データを学習及び更新する手順を更に備えていることを特徴とする請求項3に記載のロボット掃除機制御プログラム。The method according to claim 3, further comprising a step of learning and updating the attribute data by comparing a difference between the room map data before overwriting and the temporary room map data at the end of cleaning. Robot vacuum cleaner control program. 前記推定した形状の障害物を部屋地図データに登録して掃除ルートデータを再構築する手順において、前記属性データに記憶されている障害物の掃除方法を用いることを特徴とする請求項1に記載のロボット掃除機制御プログラム。The method according to claim 1, wherein in the step of registering the obstacle having the estimated shape in the room map data and reconstructing the cleaning route data, a method of cleaning the obstacle stored in the attribute data is used. Robot vacuum cleaner control program. 記憶手段に記憶する経路データに基づいて走行するロボットに地図作成を実行させるためのプログラムであって、
上記地図作成方法は、
赤外線センサと触覚センサからの情報を取得する手順と、
該情報を用いて上記経路上の障害物の有無を検出する手順と、
該障害物の形状を上記触覚センサからの情報を用いて認識する手順と、
該検出の結果と該認識の結果を用いて上記経路データを作成する手順とを有することを特徴とするプログラム。
A program for causing a traveling robot to create a map based on the route data stored in the storage means,
The above map creation method
A procedure for obtaining information from the infrared sensor and the tactile sensor;
A procedure for detecting the presence or absence of an obstacle on the route using the information;
A procedure for recognizing the shape of the obstacle using information from the tactile sensor;
A program having a procedure for creating the route data using a result of the detection and a result of the recognition.
コンピュータによってロボット掃除機の動作を制御するための制御プログラムであって、
該ロボット掃除機は、センサと、障害物のデータと、掃除の経路を掃除ルートとして記憶した掃除ルートデータとを少なくとも備えており、
該制御プログラムは、該コンピュータに、
該掃除ルートに従って掃除を行なっているときに該センサからの情報を取得する手順と、
該情報と該障害物のデータを用いて該掃除ルートを再構築する手順と、
掃除ルートが再構築された場合には、該再構築された掃除ルートに従って掃除を続ける手順とを実行させることを特徴とするロボット掃除機制御プログラム。
A control program for controlling the operation of the robot cleaner by a computer,
The robot cleaner has at least a sensor, data of an obstacle, and cleaning route data storing a cleaning path as a cleaning route,
The control program causes the computer to:
A procedure for acquiring information from the sensor when performing cleaning according to the cleaning route;
Reconstructing the cleaning route using the information and the obstacle data;
When the cleaning route is reconstructed, a procedure for continuing the cleaning in accordance with the reconstructed cleaning route.
障害物の有無の検知と該障害物の形状の認識を行なう障害物検出センサと、
部屋に在る障害物を登録して成る部屋地図を記憶した部屋地図データ、該部屋地図データに登録された障害物の属性を記憶した属性データ、及び該部屋地図データに基づいて作成される掃除の経路を掃除ルートとして記憶した掃除ルートデータを格納する記憶装置と、
掃除の制御を行なう処理装置とを備え、
該処理装置は、
該掃除ルートに従って掃除を行なっているときに該障害物検出センサを使って障害物の有無を検知し、
障害物有りを検知した場合にその位置に該部屋地図データ上で障害物が登録されているか否かを判断し、
障害物が登録されていない場合に、検知した障害物を未知障害物と判断し、
障害物検出センサを使って該未知障害物の形状を認識し、
認識した形状と一致する形状を該部屋地図データ及び該属性データを参照して推定し、
形状を推定することができた場合は、推定した形状の障害物を部屋地図データに登録して掃除ルートデータを再構築し、
形状を推定することができなかった場合は、該未知障害物を新たに出現した障害物と判断して部屋地図データに登録し、掃除ルートデータを再構築することを特徴とするロボット掃除機。
An obstacle detection sensor that detects the presence or absence of an obstacle and recognizes the shape of the obstacle;
Room map data storing a room map formed by registering obstacles in a room, attribute data storing attributes of obstacles registered in the room map data, and cleaning created based on the room map data A storage device for storing cleaning route data storing the route of the cleaning route as a cleaning route;
A processing unit for controlling cleaning,
The processing device comprises:
When performing cleaning according to the cleaning route, the presence or absence of an obstacle is detected using the obstacle detection sensor,
When detecting the presence of an obstacle, it is determined whether or not an obstacle is registered at the position on the room map data,
If no obstacle is registered, the detected obstacle is determined as an unknown obstacle,
Recognize the shape of the unknown obstacle using an obstacle detection sensor,
Estimating a shape that matches the recognized shape with reference to the room map data and the attribute data,
If the shape can be estimated, register the obstacle of the estimated shape in the room map data and reconstruct the cleaning route data,
When the shape cannot be estimated, the unknown obstacle is determined as a newly appearing obstacle, registered in the room map data, and the cleaning route data is reconstructed.
前記障害物検出センサは、赤外線センサと触覚センサとからなることを特徴とする請求項8に記載のロボット掃除機。The robot cleaner according to claim 8, wherein the obstacle detection sensor includes an infrared sensor and a tactile sensor. 前記赤外線センサは、移動するための車輪を有するロボットユニットに備えられ、前記触覚センサは、掃除作業を行なう吸込み部に備えられていることを特徴とする請求項9に記載のロボット掃除機。The robot cleaner according to claim 9, wherein the infrared sensor is provided in a robot unit having wheels for moving, and the tactile sensor is provided in a suction unit for performing a cleaning operation.
JP2002191835A 2002-07-01 2002-07-01 Robot cleaner and robot cleaner control program Expired - Lifetime JP4157731B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002191835A JP4157731B2 (en) 2002-07-01 2002-07-01 Robot cleaner and robot cleaner control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002191835A JP4157731B2 (en) 2002-07-01 2002-07-01 Robot cleaner and robot cleaner control program

Publications (2)

Publication Number Publication Date
JP2004033340A true JP2004033340A (en) 2004-02-05
JP4157731B2 JP4157731B2 (en) 2008-10-01

Family

ID=31701290

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002191835A Expired - Lifetime JP4157731B2 (en) 2002-07-01 2002-07-01 Robot cleaner and robot cleaner control program

Country Status (1)

Country Link
JP (1) JP4157731B2 (en)

Cited By (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005312893A (en) * 2004-03-30 2005-11-10 Nec Corp Cleaner control device, cleaner, robot and cleaner control method
JP2008129614A (en) * 2006-11-16 2008-06-05 Toyota Motor Corp Mobile object system
KR100844015B1 (en) 2007-05-31 2008-07-04 포항공과대학교 산학협력단 Non-Conflict Effective Fusion Method of Distance Measuring Sensor Data
JP2008305255A (en) * 2007-06-08 2008-12-18 Panasonic Electric Works Co Ltd Map information generation unit, and autonomous moving unit having the same
JP2009169845A (en) * 2008-01-18 2009-07-30 Toyota Motor Corp Autonomous mobile robot and map update method
US7571026B2 (en) 2006-12-20 2009-08-04 Honda Motor Co., Ltd. Mobile apparatus, and control method thereof, control program and supervisory system therefor
JP2010511957A (en) * 2006-12-08 2010-04-15 韓國電子通信研究院 Apparatus and method for creating an environment map for a moving body capable of quickly adapting to surrounding environmental changes and creating an environment map
JP2010134499A (en) * 2008-12-02 2010-06-17 Mitsubishi Electric Corp Remote place image display device, remote control apparatus, vehicle control apparatus, remote control system, remote control method, remote control program, vehicle control program, remote place image display method, and remote place image display program
CN101970187A (en) * 2008-01-28 2011-02-09 塞格瑞德公司 Methods for repurposing temporal-spatial information collected by service robots
KR20110053759A (en) * 2009-11-16 2011-05-24 엘지전자 주식회사 Robot cleaner and controlling method of the same
JP2011210121A (en) * 2010-03-30 2011-10-20 Fuji Soft Inc Program for robot and program for information-processing device
JP2012089174A (en) * 2012-02-08 2012-05-10 Fuji Soft Inc Robot and program of information processor
CN102541056A (en) * 2010-12-16 2012-07-04 莱克电气股份有限公司 Obstacle processing method for robot
US8306738B2 (en) 2008-09-16 2012-11-06 Samsung Electronics Co., Ltd. Apparatus and method for building map
JP2013510377A (en) * 2009-11-06 2013-03-21 エボリューション ロボティックス インコーポレイテッド Method and system for completely covering a surface with an autonomous robot
JP2014131292A (en) * 2005-12-02 2014-07-10 Irobot Corp Robot system
US8838268B2 (en) 2008-01-28 2014-09-16 Seegrid Corporation Service robot and method of operating same
US8892256B2 (en) 2008-01-28 2014-11-18 Seegrid Corporation Methods for real-time and near real-time interactions with robots that service a facility
JP2015009109A (en) * 2013-07-02 2015-01-19 佐古 曜一郎 Self-propelled vacuum cleaner
JP2016066206A (en) * 2014-09-24 2016-04-28 株式会社クボタ Automatic travel vehicle
US9519289B2 (en) 2014-11-26 2016-12-13 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
JP2017146742A (en) * 2016-02-16 2017-08-24 東芝ライフスタイル株式会社 Autonomous travelling body
JP2017144301A (en) * 2017-06-01 2017-08-24 將洋 鈴木 Self-travel type vacuum cleaner and self-travel type vacuum cleaner program
US9744670B2 (en) 2014-11-26 2017-08-29 Irobot Corporation Systems and methods for use of optical odometry sensors in a mobile robot
US9751210B2 (en) 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection
JP2018077685A (en) * 2016-11-09 2018-05-17 東芝ライフスタイル株式会社 Autonomous traveling body
KR20180087768A (en) * 2017-01-25 2018-08-02 엘지전자 주식회사 Method of identifying enterable region of robot and robot implementing thereof
JP2018196824A (en) * 2018-09-25 2018-12-13 みこらった株式会社 Vacuum cleaner and program for vacuum cleaner
JP2018196622A (en) * 2017-05-24 2018-12-13 株式会社東芝 Electronic apparatus, method, and program
WO2019049655A1 (en) * 2017-09-07 2019-03-14 パナソニックIpマネジメント株式会社 Autonomous travel-type cleaner and method for updating cumulative floor area probability
EP3460614A4 (en) * 2016-05-19 2019-08-21 Ecovacs Robotics Co., Ltd. Combined robot and cruising path generation method therefor
JP2019528487A (en) * 2017-04-25 2019-10-10 北京小米移動軟件有限公司Beijing Xiaomi Mobile Software Co.,Ltd. Method and apparatus for drawing room layout diagram
GB2576494A (en) * 2018-08-06 2020-02-26 Dyson Technology Ltd A mobile robot and method of controlling thereof
CN111012254A (en) * 2019-12-30 2020-04-17 北京太坦科技有限公司 Intelligent floor sweeping robot
CN111150330A (en) * 2019-12-30 2020-05-15 北京太坦科技有限公司 Cleaning control method
CN111486846A (en) * 2020-04-27 2020-08-04 小狗电器互联网科技(北京)股份有限公司 Method for sweeping preferential area by sweeping robot
JP2020138046A (en) * 2018-11-08 2020-09-03 將洋 鈴木 Self-propelled vacuum cleaning device, program for self-propelled vacuum cleaning device, and cleaning system
CN111693045A (en) * 2019-03-13 2020-09-22 北京奇虎科技有限公司 Sweeping route generation method and device of sweeper
WO2021132954A1 (en) * 2019-12-27 2021-07-01 Samsung Electronics Co., Ltd. Electronic apparatus and method of controlling thereof
WO2021176863A1 (en) * 2020-03-06 2021-09-10 パナソニックIpマネジメント株式会社 Object image display device, object image display system, and object image display program
JP2021168158A (en) * 2013-01-18 2021-10-21 アイロボット・コーポレーション Mobile robot, method, and system
CN114869175A (en) * 2022-05-26 2022-08-09 美智纵横科技有限责任公司 Cleaning obstacle avoidance method and device, electronic equipment and storage medium
WO2022181901A1 (en) * 2021-02-25 2022-09-01 엘지전자 주식회사 Intelligent map generation method and mobile robot therefor
CN114983279A (en) * 2022-06-24 2022-09-02 珠海格力电器股份有限公司 Control method and device of sweeping robot, sweeping robot and storage medium
US11648685B2 (en) 2013-01-18 2023-05-16 Irobot Corporation Mobile robot providing environmental mapping for household environmental control
RU2819023C1 (en) * 2020-08-26 2024-05-08 Бейдзин Роборок Инновейшн Текнолоджи Ко., Лтд Method and apparatus for detecting obstacles, self-propelled robot and data storage medium

Cited By (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4555035B2 (en) * 2004-03-30 2010-09-29 日本電気株式会社 Vacuum cleaner control device, vacuum cleaner, robot, and vacuum cleaner control method
JP2005312893A (en) * 2004-03-30 2005-11-10 Nec Corp Cleaner control device, cleaner, robot and cleaner control method
JP2014131292A (en) * 2005-12-02 2014-07-10 Irobot Corp Robot system
JP2008129614A (en) * 2006-11-16 2008-06-05 Toyota Motor Corp Mobile object system
JP2010511957A (en) * 2006-12-08 2010-04-15 韓國電子通信研究院 Apparatus and method for creating an environment map for a moving body capable of quickly adapting to surrounding environmental changes and creating an environment map
US7571026B2 (en) 2006-12-20 2009-08-04 Honda Motor Co., Ltd. Mobile apparatus, and control method thereof, control program and supervisory system therefor
KR100844015B1 (en) 2007-05-31 2008-07-04 포항공과대학교 산학협력단 Non-Conflict Effective Fusion Method of Distance Measuring Sensor Data
JP2008305255A (en) * 2007-06-08 2008-12-18 Panasonic Electric Works Co Ltd Map information generation unit, and autonomous moving unit having the same
JP2009169845A (en) * 2008-01-18 2009-07-30 Toyota Motor Corp Autonomous mobile robot and map update method
CN101970187A (en) * 2008-01-28 2011-02-09 塞格瑞德公司 Methods for repurposing temporal-spatial information collected by service robots
JP2011517350A (en) * 2008-01-28 2011-06-02 シーグリッド コーポレーション Method for repurposing spatio-temporal information collected by service robots
US8892256B2 (en) 2008-01-28 2014-11-18 Seegrid Corporation Methods for real-time and near real-time interactions with robots that service a facility
US8838268B2 (en) 2008-01-28 2014-09-16 Seegrid Corporation Service robot and method of operating same
US8306738B2 (en) 2008-09-16 2012-11-06 Samsung Electronics Co., Ltd. Apparatus and method for building map
JP2010134499A (en) * 2008-12-02 2010-06-17 Mitsubishi Electric Corp Remote place image display device, remote control apparatus, vehicle control apparatus, remote control system, remote control method, remote control program, vehicle control program, remote place image display method, and remote place image display program
US9188983B2 (en) 2009-11-06 2015-11-17 Irobot Corporation Methods and systems for complete coverage of a surface by an autonomous robot
US10583562B2 (en) 2009-11-06 2020-03-10 Irobot Corporation Methods and systems for complete coverage of a surface by an autonomous robot
JP2013510377A (en) * 2009-11-06 2013-03-21 エボリューション ロボティックス インコーポレイテッド Method and system for completely covering a surface with an autonomous robot
US11052540B2 (en) 2009-11-06 2021-07-06 Irobot Corporation Methods and systems for complete coverage of a surface by an autonomous robot
US9895808B2 (en) 2009-11-06 2018-02-20 Irobot Corporation Methods and systems for complete coverage of a surface by an autonomous robot
KR101641232B1 (en) 2009-11-16 2016-07-20 엘지전자 주식회사 Robot cleaner and controlling method of the same
KR20110053759A (en) * 2009-11-16 2011-05-24 엘지전자 주식회사 Robot cleaner and controlling method of the same
JP2011210121A (en) * 2010-03-30 2011-10-20 Fuji Soft Inc Program for robot and program for information-processing device
CN102541056A (en) * 2010-12-16 2012-07-04 莱克电气股份有限公司 Obstacle processing method for robot
JP2012089174A (en) * 2012-02-08 2012-05-10 Fuji Soft Inc Robot and program of information processor
US11648685B2 (en) 2013-01-18 2023-05-16 Irobot Corporation Mobile robot providing environmental mapping for household environmental control
JP2021168158A (en) * 2013-01-18 2021-10-21 アイロボット・コーポレーション Mobile robot, method, and system
JP2015009109A (en) * 2013-07-02 2015-01-19 佐古 曜一郎 Self-propelled vacuum cleaner
JP2016066206A (en) * 2014-09-24 2016-04-28 株式会社クボタ Automatic travel vehicle
US9519289B2 (en) 2014-11-26 2016-12-13 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
US10705535B2 (en) 2014-11-26 2020-07-07 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
US10611023B2 (en) 2014-11-26 2020-04-07 Irobot Corporation Systems and methods for performing occlusion detection
US9751210B2 (en) 2014-11-26 2017-09-05 Irobot Corporation Systems and methods for performing occlusion detection
US10222805B2 (en) 2014-11-26 2019-03-05 Irobot Corporation Systems and methods for performing simultaneous localization and mapping using machine vision systems
US9744670B2 (en) 2014-11-26 2017-08-29 Irobot Corporation Systems and methods for use of optical odometry sensors in a mobile robot
US10391630B2 (en) 2014-11-26 2019-08-27 Irobot Corporation Systems and methods for performing occlusion detection
JP2017146742A (en) * 2016-02-16 2017-08-24 東芝ライフスタイル株式会社 Autonomous travelling body
EP3460614A4 (en) * 2016-05-19 2019-08-21 Ecovacs Robotics Co., Ltd. Combined robot and cruising path generation method therefor
US11014236B2 (en) 2016-05-19 2021-05-25 Ecovacs Robotics Co., Ltd. Combined robot and cruise path generating method thereof
GB2570239A (en) * 2016-11-09 2019-07-17 Toshiba Lifestyle Products & Services Corp Autonomous traveling body
JP2018077685A (en) * 2016-11-09 2018-05-17 東芝ライフスタイル株式会社 Autonomous traveling body
CN109891348A (en) * 2016-11-09 2019-06-14 东芝生活电器株式会社 Autonomous body
US11221629B2 (en) 2016-11-09 2022-01-11 Toshiba Lifestyle Products & Services Corporation Autonomous traveler and travel control method thereof
CN109891348B (en) * 2016-11-09 2022-04-29 东芝生活电器株式会社 Autonomous walking body
WO2018087951A1 (en) * 2016-11-09 2018-05-17 東芝ライフスタイル株式会社 Autonomous traveling body
KR102012548B1 (en) * 2017-01-25 2019-08-20 엘지전자 주식회사 Method of identifying enterable region of robot and robot implementing thereof
KR20180087768A (en) * 2017-01-25 2018-08-02 엘지전자 주식회사 Method of identifying enterable region of robot and robot implementing thereof
JP2019528487A (en) * 2017-04-25 2019-10-10 北京小米移動軟件有限公司Beijing Xiaomi Mobile Software Co.,Ltd. Method and apparatus for drawing room layout diagram
US10747232B2 (en) 2017-04-25 2020-08-18 Beijing Xiaomi Mobile Software Co., Ltd. Method and device for drawing room layout
JP2018196622A (en) * 2017-05-24 2018-12-13 株式会社東芝 Electronic apparatus, method, and program
JP2017144301A (en) * 2017-06-01 2017-08-24 將洋 鈴木 Self-travel type vacuum cleaner and self-travel type vacuum cleaner program
WO2019049655A1 (en) * 2017-09-07 2019-03-14 パナソニックIpマネジメント株式会社 Autonomous travel-type cleaner and method for updating cumulative floor area probability
GB2576494B (en) * 2018-08-06 2022-03-23 Dyson Technology Ltd A mobile robot and method of controlling thereof
GB2576494A (en) * 2018-08-06 2020-02-26 Dyson Technology Ltd A mobile robot and method of controlling thereof
JP2018196824A (en) * 2018-09-25 2018-12-13 みこらった株式会社 Vacuum cleaner and program for vacuum cleaner
JP2020138046A (en) * 2018-11-08 2020-09-03 將洋 鈴木 Self-propelled vacuum cleaning device, program for self-propelled vacuum cleaning device, and cleaning system
CN111693045A (en) * 2019-03-13 2020-09-22 北京奇虎科技有限公司 Sweeping route generation method and device of sweeper
US11874668B2 (en) 2019-12-27 2024-01-16 Samsung Electronics Co., Ltd. Electronic apparatus and method of controlling thereof
WO2021132954A1 (en) * 2019-12-27 2021-07-01 Samsung Electronics Co., Ltd. Electronic apparatus and method of controlling thereof
CN111012254A (en) * 2019-12-30 2020-04-17 北京太坦科技有限公司 Intelligent floor sweeping robot
CN111150330A (en) * 2019-12-30 2020-05-15 北京太坦科技有限公司 Cleaning control method
JP2021140583A (en) * 2020-03-06 2021-09-16 パナソニックIpマネジメント株式会社 Object image display device, object image display system, and object image display program
WO2021176863A1 (en) * 2020-03-06 2021-09-10 パナソニックIpマネジメント株式会社 Object image display device, object image display system, and object image display program
JP7281716B2 (en) 2020-03-06 2023-05-26 パナソニックIpマネジメント株式会社 Object image display device, object image display system, and object image display program
CN111486846B (en) * 2020-04-27 2021-12-31 小狗电器互联网科技(北京)股份有限公司 Method for sweeping preferential area by sweeping robot
CN111486846A (en) * 2020-04-27 2020-08-04 小狗电器互联网科技(北京)股份有限公司 Method for sweeping preferential area by sweeping robot
RU2819023C1 (en) * 2020-08-26 2024-05-08 Бейдзин Роборок Инновейшн Текнолоджи Ко., Лтд Method and apparatus for detecting obstacles, self-propelled robot and data storage medium
WO2022181901A1 (en) * 2021-02-25 2022-09-01 엘지전자 주식회사 Intelligent map generation method and mobile robot therefor
CN114869175A (en) * 2022-05-26 2022-08-09 美智纵横科技有限责任公司 Cleaning obstacle avoidance method and device, electronic equipment and storage medium
CN114983279A (en) * 2022-06-24 2022-09-02 珠海格力电器股份有限公司 Control method and device of sweeping robot, sweeping robot and storage medium

Also Published As

Publication number Publication date
JP4157731B2 (en) 2008-10-01

Similar Documents

Publication Publication Date Title
JP4157731B2 (en) Robot cleaner and robot cleaner control program
JP6054425B2 (en) How to perform self-location estimation automatically
CN106200633B (en) Locating and mapping using physical features
JP3955569B2 (en) Autonomous machine
KR100877072B1 (en) Method and apparatus of building map for a mobile robot and cleaning simultaneously
JP4846686B2 (en) Autonomous machine, autonomous machine control method, and program for controlling autonomous machine
CN105813526B (en) Robot cleaning device and method for landmark recognition
US20220074762A1 (en) Exploration Of A Robot Deployment Area By An Autonomous Mobile Robot
US9244461B2 (en) Autonomous mobile device
US8463018B2 (en) Method, medium and apparatus classifying and collecting area feature information according to a robot&#39;s moving path, and a robot controlled by the area features
EP2888603B1 (en) Robot positioning system
US20170131721A1 (en) Robot cleaner and method for controlling the same
KR101750340B1 (en) Robot cleaner and controlling method of the same
KR101813922B1 (en) Robot cleaner and controlling method of the same
EP3711647A1 (en) Self-propelled vacuum cleaner
JP2019525342A (en) How to control an autonomous mobile robot
CN108196555A (en) The control method that autonomous mobile robot is walked along side
KR20120036207A (en) Moving robot and map-building method thereof
JPWO2020041817A5 (en)
CN111031878B (en) Autonomous traveling vacuum cleaner and cumulative floor probability updating method
WO2020059292A1 (en) Autonomous traveling cleaner
WO2023089886A1 (en) Traveling map creating device, autonomous robot, method for creating traveling map, and program
CN114305202B (en) Self-walking device and control method thereof
CN113509102A (en) Vacuum cleaner system and vacuum cleaner
TW432266B (en) Improvements in or relating to floor cleaning devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050311

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20060911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080327

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: 20080617

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080714

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110718

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4157731

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110718

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120718

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130718

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term