(57)【特許請求の範囲】
【請求項１】
全領域を少なくとも２つのセクタに区分して掃除を行うロボット掃除機において、
前記少なくとも２つのセクタで周辺の物体を感知して感知データを出力する少なくとも１つの物体感知ユニットと、
前記感知データに基づいて前記少なくとも２つのセクタに関してそれぞれ地域地図を作成し、前記少なくとも２つのセクタそれぞれの位置及び前記少なくとも２つのセクタ間の位置関係を示す位相地図を作成し、前記それぞれの地域地図及び前記位相地図に基づいて前記全領域に関する全域地図を作成する制御ユニットと、
を含むことを特徴とするロボット掃除機。
【請求項２】
前記制御ユニットは、
所定の周期や特定の時点で感知し、所定数以上蓄積された前記感知データから少なくとも１つの特徴線を抽出する特徴線抽出モジュールと、
前記特徴線を用いて前記地域地図を作成する地域地図作成モジュールと、
を含むことを特徴とする請求項１に記載のロボット掃除機。
【請求項３】
前記地域地図作成モジュールは、
前記特徴線同士が垂直であると仮定して補正量を演算し、前記演算された補正量に基づいて前記セクタの方向を補正し、前記補正されたセクタに基づいて前記地域地図を作成することを特徴とする請求項２に記載のロボット掃除機。
【請求項４】
前記制御ユニットは、
前記感知データ及び前記特徴線を用いて位置を認識する位置認識モジュールをさらに含むことを特徴とする請求項２に記載のロボット掃除機。
【請求項５】
前記制御ユニットは、
前記セクタの各位置及びそれに応じた前記セクタ間の位置関係を示す位相地図を作成し、前記位相地図に基づいて前記全域地図を作成する全域地図作成モジュールをさらに含むことを特徴とする請求項２〜４のいずれか一項に記載のロボット掃除機。
【請求項６】
前記全域地図作成モジュールは、
２つのセクタの特徴線を整合し、前記整合の結果に基づいて２つのセクタが重複するか否かを判断することを特徴とする請求項５に記載のロボット掃除機。
【請求項７】
前記全域地図作成モジュールは、重複する２つのセクタ間の誤差を利用して前記位相地図を補正し、前記補正された位相地図を利用して前記全域地図を作成することを特徴とする請求項６に記載のロボット掃除機。
【請求項８】
全領域を複数のセクタに区分する段階と、
前記複数のセクタで周辺の物体を感知する段階と、
前記感知の結果により得られた感知データに基づいて前記複数のセクタに関してそれぞれ地域地図を作成する段階と、
前記複数のセクタそれぞれの位置及び前記複数のセクタ間の位置関係を示す位相地図を作成し、前記それぞれの地域地図及び前記位相地図に基づいて前記全領域に関する全域地図を作成する段階と、
を含むことを特徴とするロボット掃除機の制御方法。
【請求項９】
所定の周期や特定の時点で感知し、所定数以上蓄積された前記感知データに基づいて少なくとも１つの特徴線を抽出する段階をさらに含み、
前記地域地図を作成する段階は、前記特徴線を用いて前記地域地図を作成することを特徴とする請求項８に記載のロボット掃除機の制御方法。
【請求項１０】
前記地域地図を作成する段階は、
前記特徴線同士が垂直であると仮定して補正量を演算し、前記演算された補正量に基づいて前記セクタの方向を補正する過程と、
前記補正されたセクタに基づいて前記地域地図を作成する過程と
を含むことを特徴とする請求項９に記載のロボット掃除機の制御方法。
【請求項１１】
前記特徴線を抽出する段階は、
前記感知の結果に基づいた感知データを累積する過程と、
前記感知データから前記特徴線を抽出する過程と、
前記感知データを前記特徴線に対応するクラスタに分離する過程と、
前記クラスタから前記特徴線の長さ、分散、誤差などのパラメータを抽出し、前記パラメータに基づいて前記特徴線の信頼度を演算する過程と
を含むことを特徴とする請求項９に記載のロボット掃除機の制御方法。
【請求項１２】
前記地域地図を作成する段階は、
新たに各セクタの外郭を移動しながら物体を感知した結果に基づく新規の感知データから特徴線を新たに抽出する過程と、
前記新たに抽出した特徴線と既に抽出した特徴線との類似度を判断する過程と、
前記類似度に基づいて、前記感知データの重要度を更新する過程と、
を含むことを特徴とする請求項９に記載のロボット掃除機の制御方法。
【請求項１３】
前記地域地図を作成する段階は、
前記類似度の判断の結果、２つの特徴線が類似すれば、２つの特徴線を併合する過程とをさらに含むことを特徴とする請求項１２に記載のロボット掃除機の制御方法。
【請求項１４】
前記感知の結果と前記特徴線を用いて位置を補正する段階をさらに含むことを特徴とする請求項９に記載のロボット掃除機の制御方法。
【請求項１５】
前記位置を補正する段階は、
各セクタの外郭を移動しながら物体を感知した結果に基づく感知データから抽出した特徴線の有効性を判断する過程と、
前記判断の結果、有効であれば、前記感知データの重要度を更新する過程と、
前記更新された感知データを用いて前記位置を補正する過程と
を含むことを特徴とする請求項１４に記載のロボット掃除機の制御方法。
【請求項１６】
前記全域地図を作成する段階は、
前記地域地図の各位置及びそれに応じた前記地域地図間の位置関係を利用して位相地図を作成する過程を含み、
前記位相地図を利用して前記全域地図を作成することを特徴とする請求項８〜１５のいずれか一項に記載のロボット掃除機の制御方法。
【請求項１７】
前記全域地図を作成する段階は、
２つのセクタの特徴線を整合する過程と、
前記整合の結果に基づいて２つのセクタが重複するか否かを判断する過程と、
重複する２つのセクタ間の誤差を利用して位相地図を補正する過程と
をさらに含み、
前記補正された位相地図を利用して前記全域地図を作成することを特徴とする請求項１６に記載のロボット掃除機の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、安価な距離感知センサを用いて全域地図を作成し、自己位置を認識するロボット掃除機及びその制御方法に関する。
【背景技術】
【０００２】
一般に、ロボットは、産業用に開発されて工場自動化の一部分を担当してきた。近年、ロボットを応用した分野がさらに拡大しており、医療用ロボット、宇宙航空ロボットなどが開発され、一般家庭で使用できる家庭用ロボットも製作されている。
【０００３】
家庭用ロボットの代表的な例がロボット掃除機であって、所定の領域を自走しながら周辺の塵埃や異物を吸入して掃除する家電機器の一種である。一般に、このようなロボット掃除機は、充電可能なバッテリを備え、走行中に障害物を避けるための障害物センサを備えることにより、自走しながら掃除を行う。
【０００４】
ロボット掃除機が自走しながら全領域を掃除するためには、掃除地図を作成し、作成された掃除地図内で掃除済み領域や掃除すべき領域などの掃除領域を判断しなければならない。ロボット掃除機の領域判断能力は、一般的にロボット掃除機の位置認識性能により決定される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、全領域を複数のセクタに区分し、安価なセンサにより物体を感知して地域地図を作成し、当該地域地図に基づいて掃除を行うロボット掃除機及びその制御方法を提供することを目的とする。
【０００６】
本発明は、安価なセンサにより感知された感知データを用いて地域地図を作成し、移動方向を補正し、位置を認識するロボット掃除機及びその制御方法を提供することを他の目的とする。
【０００７】
本発明は、複数のセクタに関する地域地図の位置及び地域地図間の関係を利用して全領域に関する全域地図を作成し、これを利用して位置を認識するロボット掃除機及びその制御方法を提供することをさらに他の目的とする。
【課題を解決するための手段】
【０００８】
本発明の一実施形態によるロボット掃除機は、全領域を少なくとも１つのセクタに区分して掃除を行うロボット掃除機であって、前記セクタで周辺の物体を感知して感知データを出力する少なくとも１つの物体感知ユニットと、前記感知データを用いて前記セクタに関してそれぞれ地域地図を作成し、前記セクタ間の位置関係に基づいて前記全領域に関する全域地図を作成する制御ユニットとを含む。
【０００９】
本発明の一実施形態によるロボット掃除機の制御方法は、全領域を複数のセクタに区分する段階と、前記セクタで周辺の物体を感知する段階と、前記感知の結果に基づいて前記セクタに関する地域地図を作成する段階と、前記地域地図の位置関係に基づいて前記全領域に関する全域地図を作成する段階とを含む。
【００１０】
本発明の一実施形態による記憶媒体は、全領域を複数のセクタに区分する段階と、前記セクタで周辺の物体を感知する段階と、前記感知の結果に基づいて少なくとも１つの特徴線を抽出する段階と、前記特徴線を用いて前記セクタに関する地域地図を作成する段階と、前記地域地図の位置関係に基づいて前記全領域に関する全域地図を作成する段階とを行うアルゴリズムを含む。
【発明の効果】
【００１１】
本発明の実施形態によれば、全領域を複数のセクタに区分し、安価なセンサにより物体を感知して各セクタに関する地域地図を作成することができる。本発明においては、前記地域地図に基づいて掃除を行うことにより、ロボット掃除機の製造コストを安価に維持しつつ、掃除の精度を高めることができる。
【００１２】
本発明の実施形態によれば、安価なセンサにより感知された感知データを用いて地域地図を作成し、移動方向を補正し、位置を認識することができる。このようにすることにより、本発明においては、未掃除領域を減少させて掃除効率を向上させ、システムの安定性を高めることができる。
【００１３】
本発明の実施形態によれば、複数のセクタに関する地域地図の位置及び地域地図間の関係を利用して全領域に関する全域地図を作成し、これを利用して位置を認識することができる。このようにすることにより、本発明においては、全領域をもれなく掃除することができ、未掃除領域への移動を容易にすることができ、従って、掃除効率を向上させ、ユーザの利便性及びシステムの安定性を高めることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態によるロボット掃除機の構成を概略的に示すブロック図である。
【図２】本発明の他の実施形態によるロボット掃除機の構成を概略的に示すブロック図である。
【図３】本発明の実施形態によるロボット掃除機の外観の一例を概略的に示す斜視図である。
【図４】図３に示すロボット掃除機の物体感知ユニットにより物体を感知する動作を説明するための図である。
【図５】本発明の一実施形態によるロボット掃除機の制御方法を概略的に示すフローチャートである。
【図６】本発明の他の実施形態によるロボット掃除機の制御方法を概略的に示すフローチャートである。
【図７】本発明のさらに他の実施形態によるロボット掃除機の制御方法を概略的に示すフローチャートである。
【図８】本発明のさらに他の実施形態によるロボット掃除機の制御方法を概略的に示すフローチャートである。
【図９】本発明の実施形態により全領域を少なくとも１つのセクタに区分して地域地図の作成を開始する動作を説明するための図である。
【図１０】本発明の実施形態により特徴線を抽出する動作を説明するための図である。
【図１１】本発明の実施形態により特徴線を抽出する動作を説明するための図である。
【図１２】本発明の実施形態により特徴線を用いて地域地図を作成する動作を説明するための図である。
【図１３】本発明の実施形態により地域地図を補正する動作を説明するための図である。
【図１４】本発明の実施形態により地域地図を補正する動作を説明するための図である。
【図１５】本発明の実施形態により地域地図を補正する動作を説明するための図である。
【図１６】本発明の実施形態により地域地図を補正する動作を説明するための図である。
【図１７】本発明の実施形態によりロボット掃除機の位置を認識して補正する動作を説明するための図である。
【図１８】本発明の実施形態により全域地図を作成する動作を説明するための図である。
【図１９】本発明の実施形態により全域地図を作成する動作を説明するための図である。
【図２０】本発明の実施形態により全域地図を作成する動作を説明するための図である。
【発明を実施するための形態】
【００１５】
以下、本発明の好ましい実施形態について添付図面を参照して詳細に説明する。
【００１６】
本発明の一実施形態によるロボット掃除機は、全領域を少なくとも１つのセクタに区分して掃除を行うロボット掃除機である。図１に示すように、本発明の一実施形態によるロボット掃除機は、少なくとも１つの物体感知ユニット１００と、制御ユニット２００とを含む。少なくとも１つの物体感知ユニット１００は、セクタで周辺の物体を感知して感知データを出力する。制御ユニット２００は、感知データを用いてセクタに関してそれぞれ地域地図を作成し、セクタ間の位置関係に基づいて全領域に関する全域地図を作成する。
【００１７】
制御ユニット２００は、全領域を少なくとも１つのセクタに区分し、セクタに関する地域地図を作成する。制御ユニット２００は、全領域を一定の大きさを有する少なくとも１つのセクタに区分し、地域地図の作成のための初期化作業を行う。次に、制御ユニット２００は、ロボット掃除機をセクタの外郭に沿って移動させる。物体感知ユニット１００は、ロボット掃除機が外郭に沿って移動する間物体を感知する。ここで、物体とは、壁面や障害物などである。物体感知ユニット１００としては、カメラやレーザセンサなどの高価なセンサよりは、赤外線センサや超音波センサなどの安価なセンサを使用することが好ましい。制御ユニット２００は、物体感知ユニット１００が感知した感知データを用いて地域地図を完成する。また、制御ユニット２００は、セクタ間の位相関係を利用して全域地図を作成する。つまり、制御ユニット２００は、セクタの位置と、セクタ間の位置、すなわち位相関係を利用して位相地図を作成し、位相地図を利用して全域地図を作成する。
【００１８】
図１に示すように、制御ユニット２００は、感知データから少なくとも１つの特徴線を抽出する特徴線抽出モジュール２１０と、特徴線を用いて地域地図を作成する地域地図作成モジュール２２０とを含む。
【００１９】
特徴線抽出モジュール２１０は、例えば図１０及び図１１に示すように、所定の周期や特定の時点で物体感知ユニット１００が感知した感知データを累積する。次に、特徴線抽出モジュール２１０は、感知データが所定数以上蓄積されると、特徴線、すなわち線分状の特徴点を抽出する。このとき、特徴線抽出モジュール２１０は、中間時点でのロボット掃除機の位置を特徴線の中心位置に設定する。特徴線抽出モジュール２１０は、特徴線の中心位置を基準に座標変換などを行うことにより、感知データを所定の座標系に変換する。次に、特徴線抽出モジュール２１０は、距離を利用して特徴線をクラスタに分ける。次に、特徴線抽出モジュール２１０は、各クラスタに対して特徴線の長さ、分散、誤差などのパラメータを抽出し、信頼度を演算する。特徴線は、物体感知ユニット１００が物体を感知する際に、物体の位置又はロボット掃除機の位置を利用して抽出することができる。
【００２０】
地域地図作成モジュール２２０は、例えば図１２に示すように、ロボット掃除機がセクタの外郭に沿って移動する際に特徴線抽出モジュール２１０が感知データから抽出した特徴線を比較する。次に、地域地図作成モジュール２２０は、比較の結果に基づいて特徴線を更新し、更新された特徴線を用いて地域地図を作成する。ここで、ロボット掃除機は、連続的にセクタの外郭を移動しながら物体を感知する。
【００２１】
また、ロボット掃除機は、感知データから特徴線を抽出し、特徴線を比較して類似の特徴線を併合する。ロボット掃除機は、同一の特徴線を再び抽出するまでこれを繰り返す。地域地図作成モジュール２２０は、前述の過程により地域地図を作成する。
【００２２】
地域地図作成モジュール２２０は、例えば図１３〜図１６に示すように、特徴線を用いてセクタの方向を補正し、補正されたセクタに基づいて地域地図を作成する。ここで、セクタの方向の補正は、一般的にセクタが形成される環境、すなわち全領域でセクタを構成する壁面が垂直であると仮定して行われる。
【００２３】
図１に示すように、制御ユニット２００は、感知データ及び特徴線を用いて位置を認識する位置認識モジュール２３０をさらに含む。
【００２４】
位置認識モジュール２３０は、まず、物体感知ユニット１００が感知した感知データから物体の位置又はロボット掃除機の位置を認識する。また、位置認識モジュール２３０は、感知データから抽出された特徴線に基づいて、物体の位置又はロボット掃除機の位置を検証する。このようにすることにより、位置認識モジュール２３０は、ロボット掃除機の位置を精密に認識する。ロボット掃除機は、セクタを構成する壁面が垂直であると仮定してセクタを補正する。また、ロボット掃除機は、補正したセクタに関する地域地図を利用してセクタを掃除する。ロボット掃除機の掃除中に、位置認識モジュール２３０は、図１７に示すように、感知データと当該感知データから抽出された特徴線を用いて認識された位置を補正する。
【００２５】
図１に示すように、制御ユニット２００は、全域地図作成モジュール２４０をさらに含む。全域地図作成モジュール２４０は、セクタの各位置及びそれに応じたセクタ間の位置関係を示す位相地図を作成する。また、全域地図作成モジュール２４０は、位相地図に基づいて全域地図を作成する。ここで、全域地図作成モジュール２４０は、２つのセクタの特徴線を整合し、その整合の結果に基づいて２つのセクタが重複するか否かを判断する。また、全域地図作成モジュール２４０は、重複する２つのセクタ間の誤差を利用して位相地図を補正し、補正された位相地図を利用して全域地図を作成する。
【００２６】
全域地図作成モジュール２４０は、現在のセクタとの重複が多いセクタを選択し、現在のセクタの特徴線と選択されたセクタの特徴線を比較することにより、特徴線間の位置誤差を演算する。全域地図作成モジュール２４０は、このような過程を繰り返してセクタが重複するか否かを判断する。このようにすることにより、全域地図作成モジュール２４０は、セクタ間の位相関係を利用して作成された位相地図上で閉ループが形成されているか否かを判断する。閉ループが形成された場合、全域地図作成モジュール２４０は、重複したセクタ間の位置誤差を低減して位相地図全体を補正する。これにより、全域地図作成モジュール２４０は、全領域に関する全域地図を作成する。
【００２７】
本発明の他の実施形態によるロボット掃除機は、全領域を少なくとも１つのセクタに区分して掃除を行うロボット掃除機である。図２及び図３に示すように、本発明の他の実施形態によるロボット掃除機は、少なくとも１つの物体感知ユニット１００と、電源ユニット４００と、駆動ユニット５００と、入力ユニット６００と、制御ユニット２００と、保存ユニット３００と、出力ユニット７００とを含む。少なくとも１つの物体感知ユニット１００は、セクタで周辺の物体を感知して感知データを出力する。制御ユニット２００は、感知データを用いてセクタに関してそれぞれ地域地図を作成し、セクタ間の位置関係に基づいて全領域に関する全域地図を作成する。
【００２８】
電源ユニット４００は、充電可能な電源供給手段（例えば、バッテリなど）を備えて、ロボット掃除機の走行及び掃除のための動作電源を供給し、電源供給手段の残量が不足すると充電台から充電電流の供給を受けて充電する。
【００２９】
駆動ユニット５００は、車輪５１０を駆動してロボット掃除機を走行させる。つまり、駆動ユニット５００は、複数の主車輪と少なくとも１つの補助車輪とを含む複数の車輪５１０を回転させる所定のホイールモータを駆動することにより、ロボット掃除機を走行させる。ロボット掃除機は、車輪５１０に連結されてロボット掃除機の移動距離を感知する距離感知ユニット５２０をさらに含んでもよい。
【００３０】
ユーザなどは、入力ユニット６００により、ロボット掃除機に直接制御命令を入力することができる。また、ユーザなどは、入力ユニット６００により、保存ユニット３００に保存されている物体情報、領域、セクタに関する情報、地域地図、位相地図、全域地図に関する情報を出力させる命令を入力することができる。入力ユニット６００は、少なくとも１つの入力ボタンを備えて、直接制御命令の入力を受ける。入力ボタンは、確認ボタン、設定ボタン、再設定ボタン、削除ボタン、掃除スタートボタン、掃除ストップボタンの少なくとも１つのボタンを含む。例えば、確認ボタンは、物体、障害物、ロボット掃除機の位置などの位置情報、掃除領域、複数のセクタ、地域地図、位相地図、全域地図を確認する命令を入力するのに使用される。設定ボタンは、設定する命令を入力するためのものである。
【００３１】
保存ユニット３００は、全領域に関する情報、セクタに関する情報、物体情報の少なくとも１つの情報を保存する。保存ユニット３００は、現在の移動時、以前の移動時、又は掃除実行時に感知した感知データを保存する。保存ユニット３００は、不揮発性メモリ（Non-Volatile Memory; NVM, NVRAM）であることが好ましい。ここで、不揮発性メモリは、電源が供給されなくても保存された情報を保持し続ける記憶装置である。不揮発性メモリは、ＲＯＭ、フラッシュメモリ、磁気記憶装置（例えば、ハードディスク、ディスケットドライブ、磁気テープ）、光ディスクドライブ、磁気ＲＡＭ、ＰＲＡＭなどを含む。保存ユニット３００は、抽出した特徴線、作成した地域地図、位相地図、全域地図などを保存する。また、保存ユニット３００は、全領域、複数のセクタを保存する。さらに、保存ユニット３００は、掃除領域内でのロボット掃除機の移動記録を保存することもできる。
【００３２】
出力ユニット７００は、保存ユニット３００に保存されている情報を出力する。出力ユニット７００は、物体情報、ロボット掃除機の位置、複数のセクタを含む掃除領域、地域地図、全域地図の少なくとも１つの情報を出力する。出力ユニット７００は、ロボット掃除機を構成する各ユニットの現在の状態や現在の掃除状態などの状態情報をさらに表示することができる。出力ユニット７００は、発光ダイオード（Light Emitting Diode; LED）、液晶表示装置（Liquid Crystal Display; LCD）、プラズマディスプレイ（Plasma Display Panel; PDP）、有機発光ダイオード（Organic Light Emitting Diode; OLED）のうち、いずれか１つの素子で形成してもよい。ここで、入力ユニット６００と出力ユニット７００は、入力と出力のどちらも可能なタッチスクリーンタイプにしてもよい。
【００３３】
ロボット掃除機は、掃除ユニット（図示せず）をさらに含んでもよい。掃除ユニットは、空気を吸入する所定の吸入モータと、塵埃を凝集する手段とを備えて、周辺の塵埃や異物を吸入する。
【００３４】
ロボット掃除機は、ＰＳＤセンサもしくは超音波センサを用いて、又はこれらを共に用いて、物体、障害物の位置を感知することにより相対的な位置を認識する。一般的に、ＰＳＤセンサと超音波センサの感知距離は約３０ｃｍである。図４に示す物体感知ユニット１００は、ＰＳＤ（Position Sensitive Detector）センサＡと、超音波センサ発信部Ｂ、Ｃと、超音波センサ受信部Ｄ、Ｅとを含む。図４においては、物体感知ユニット１００としてＰＳＤセンサと超音波センサが配置されたロボット掃除機を示すが、他のタイプの距離センサ、例えば赤外線センサを使用してもよい。また、物体感知ユニット１００においてセンサの数や位置などは適宜変更可能である。
【００３５】
図５に示すように、本発明の一実施形態によるロボット掃除機の制御方法は、全領域を複数のセクタに区分するステップ（Ｓ１００）と、セクタで周辺の物体を感知するステップ（Ｓ２００）と、感知の結果に基づいてセクタに関する地域地図を作成するステップ（Ｓ４００）と、地域地図の位置関係に基づいて全領域に関する全域地図を作成するステップ（Ｓ５００）とを含む。
【００３６】
ロボット掃除機の制御方法は、感知の結果に基づいて少なくとも１つの特徴線を抽出するステップ（Ｓ３００）をさらに含む。この場合、地域地図を作成するステップ（Ｓ４００）では、特徴線を用いて地域地図を作成する。
【００３７】
ロボット掃除機は、位置誤差が継続して累積されないように、全領域を長方形の少なくとも１つの小領域、すなわちセクタに区分し（Ｓ１００）、各セクタに対して順次掃除を行う。このとき、ロボット掃除機は、各セクタに関して作成する地域地図を初期化し、各セクタの外郭に沿って走行又は掃除しながら物体感知ユニットにより物体、障害物を感知する（Ｓ２００）。ロボット掃除機は、その感知データから特徴線、すなわち線分状の特徴点を抽出する（Ｓ３００）。ロボット掃除機は、特徴線に対してフィルタリングを行う。次に、ロボット掃除機は、例えばＲＢＰＦ（Rao-Blackwellised Particle Filtering）、位置認識及びマッピングアルゴリズム、例えばＳＬＡＭ（Simultaneous Localization And Mapping）を用いて、各セクタに関する地域地図を作成する（Ｓ４００）。また、ロボット掃除機は、家庭環境で抽出可能な主要線分が互いに垂直であると仮定して、各セクタの方向（方位）を補正する。すなわち、図６に示すように、地域地図を作成するステップ（Ｓ４００）は、特徴線を用いてセクタの方向を補正するステップ（Ｓ４３１のＹＥＳ）と、補正されたセクタに基づいて地域地図を作成するステップ（Ｓ４３２）とを含む。図８に示すように、ロボット掃除機は、各セクタの掃除（Ｓ６００）中に、周辺の物体を感知し（Ｓ６１０）、特徴線を抽出する（Ｓ６２０）。ロボット掃除機は、現在抽出した特徴線と以前に作成したセクタの環境に基づいた環境地図、すなわち地域地図を利用して位置を補正する（Ｓ７００）。ロボット掃除機は、隣接する地域地図同士を位相地図（topological map）の形態で連結する。また、ロボット掃除機は、位相地図のノードを地域地図（セクタ）と定義し、エッジを２つの地域地図間の相対的位置関係（セクタ間の位置関係）と定義し、位相関係を利用して全域地図を作成する（Ｓ５００）。ロボット掃除機は、以前に掃除したセクタ又は以前に作成した地域地図上のセクタに再び入った場合、閉ループが形成されているか否かを判断する。次に、ロボット掃除機は、判断の結果に応じて位相地図を補正し、これにより全域地図を作成する（Ｓ５００）。
【００３８】
図９を参照すると、ロボット掃除機は、全領域を所定の大きさ以下の領域、すなわちセクタに分けて各セクタを掃除する。各セクタの原点は、セクタ初期化時点のロボット掃除機の位置となり、地域座標系のｘ軸の方向は当該時点でのロボット掃除機の方向となる。ロボット掃除機は、任意の１つのセクタを掃除した後、壁面に接近して次のセクタのスタート位置に移動する。また、ロボット掃除機は、新たな領域が現れると新たなセクタを初期化する。このとき、ロボット掃除機は、位相地図を拡張するが、新たなセクタを位相地図のノードとして登録し、以前のセクタの原点と現在のセクタの原点との位置関係をエッジとして設定する。また、ロボット掃除機は、新たなセクタを生成する時点でのロボット掃除機の位置の共分散をエッジの共分散とする。図９において、直交する矢印は各地域地図の座標系、ａ１〜ａ４は地域地図の範囲、ａ５は新たに追加された地域地図の範囲をそれぞれ示す。
【００３９】
図６に示すように、特徴線を抽出するステップ（Ｓ３００）は、感知の結果に基づいた感知データを累積するステップ（Ｓ３１０）と、感知データから特徴線を抽出するステップ（Ｓ３２０）と、感知データを特徴線に対応するクラスタに分離するステップ（Ｓ３３０）と、クラスタから特徴線の長さ及び信頼度を演算するステップ（Ｓ３４０）とを含む。
【００４０】
ロボット掃除機は、安価な物体感知ユニットを少数しか備えないため、一度に感知できる感知データに限界があるので、正確な特徴線を直ちに抽出することは難しい。従って、図１０に示すように、ロボット掃除機は、複数の時点で感知した感知データを累積し、感知データが所定数以上蓄積されると（Ｓ３１０）、特徴線を抽出する（Ｓ３２０）。このとき、ロボット掃除機は、中間時点でのロボット掃除機の位置を特徴線の中心位置に設定し、全ての感知データを中心位置を基準に座標変換して、図１１に示すように地域座標系上に示す。また、ロボット掃除機は、感知データを極座標系に変換して角度で整列し、距離を利用してクラスタに分ける（Ｓ３３０）。ここで、ロボット掃除機は、各クラスタに対してパラメータを抽出するが、パラメータは、特徴線の長さ、分散、誤差などである。ロボット掃除機は、これを用いて線分の信頼度を演算する（Ｓ３４０）。図１０及び図１１において、ｂはロボット掃除機の位置、ｃは感知された物体の位置、ｄは抽出された特徴線の中心位置、ｅ１、ｅ２は特徴線をそれぞれ示す。
【００４１】
図６に示すように、地域地図を作成するステップ（Ｓ４００）は、各セクタの外郭を移動しながら物体を感知した結果に基づく感知データから抽出した特徴線の有効性を判断するステップ（Ｓ４１１）と、判断の結果、有効であれば、感知データの重要度を更新するステップ（Ｓ４１２）とを含む。
【００４２】
また、地域地図を作成するステップ（Ｓ４００）は、感知データから新たに抽出した特徴線と既に抽出した特徴線との類似度を判断するステップ（Ｓ４２１）と、判断の結果、２つの特徴線が類似すれば、２つの特徴線を併合するステップ（Ｓ４２２）とをさらに含む。
【００４３】
地域地図を作成するステップ（Ｓ４００）において、セクタの方向を補正するステップ（Ｓ４３１のＹＥＳ）は、特徴線同士が垂直であると仮定して補正量を演算し、その演算された補正量に基づいてセクタの方向を補正する。
【００４４】
図１２に示すように、ロボット掃除機は、まず、各セクタのスタート位置で全ての特徴点の位置を初期化し、セクタの外郭を走行又は掃除しながら特徴点の位置をサンプリングする。ここで、特徴点ｂの位置は、ロボット掃除機の位置でもよく、感知された物体の位置でもよい。
【００４５】
以下、物体を感知する時点でのロボット掃除機の位置を特徴点の位置として説明する。ロボット掃除機は、ステップＳ３００のように新たに抽出した特徴線をマッピングし、新たに抽出した特徴線が以前に抽出した特徴線に類似するか否かを判断し（Ｓ４２１）、類似すれば特徴線を併合する（Ｓ４２２）。また、ロボット掃除機は、新たに抽出した特徴線が以前に作成された地域地図上の特徴線中に存在するか否かを判断する。ロボット掃除機は、その確率を用いて特徴線内の特徴点の重要度を更新し、その更新された重要度に基づいて特徴点を再びサンプリングする（Ｓ４１１、Ｓ４１２）。ロボット掃除機は、初期に抽出した特徴線が再び抽出されるまで、動作を繰り返し行う。実際には、ロボット掃除機の移動に応じて特徴点は少しずつ異なる位置を有し、従って、抽出される特徴線が異なる。最も一貫性のある特徴線を構成する特徴点が最も高い重要度を有し、それら特徴点を用いて特徴線を抽出し、地域地図を作成する。また、ロボット掃除機は、自己位置を最も高い重要度を有する特徴点に補正する。図１２において、ｂは特徴点の位置、ｆは移動経路、ｇは特徴点の位置によるガウス分布（gaussian distribution）、ｈは特徴線をそれぞれ示す。
【００４６】
図８に示すように、ロボット掃除機の制御方法は、感知の結果と特徴線を用いて位置を補正するステップ（Ｓ７００）をさらに含む。ここで、位置を補正するステップ（Ｓ７００）では、各セクタの外郭を移動しながら物体を感知した結果に基づく感知データから抽出した特徴線の有効性を判断する。また、位置を補正するステップ（Ｓ７００）では、判断の結果、有効であれば、感知データの重要度を更新し、更新された感知データを用いて位置を補正する。ロボット掃除機は、壁面が垂直であると仮定して地域地図を補正し、その後、セクタ内部の掃除を行うが、このとき、自己位置を随時補正する。ロボット掃除機は、特徴点の位置をサンプリングし、新たに抽出した特徴線が以前に作成された地域地図上の特徴線中に存在するか否かを判断する。ロボット掃除機は、その確率を用いて特徴線内の特徴点の重要度を更新し、その更新された重要度に基づいて特徴点を再びサンプリングする。最も一貫性のある特徴線を構成する特徴点が最も高い重要度を有し、それら特徴点を用いてロボット掃除機の位置を補正する。図１７に示すように、補正を行わない場合は、ロボット掃除機の位置誤差が累積される。しかし、ロボット掃除機は、動作を行うことにより、位置を精密に認識することができる。図１７において、ｈは特徴線、ｅはセンサにより感知された移動経路、ｆは動作により認識した移動経路、ｉは現在のセクタの範囲をそれぞれ示す。
【００４７】
図１３〜図１６を参照すると、ロボット掃除機は、地域地図を作成した後、家庭環境での主要特徴線が互いに垂直であると仮定してセクタの補正量を計算し、それに応じてセクタの方向を補正する。ロボット掃除機は、所定以上の信頼度を有する特徴線を選択し、各特徴線を垂直又は水平にするための最小補正量を演算する。ロボット掃除機は、類似の補正量を有する特徴線をグループ化する。ロボット掃除機は、信頼度を利用して各グループの特徴線の補正量に所定の加重値を乗算し、これらを合算することにより、各グループの特徴線の補正量を決定する。次に、ロボット掃除機は、各グループに含まれる特徴線の数と、対比グループの補正量を利用して、各グループの補正が適切であるかの信頼度を計算する。ここで、ロボット掃除機は、信頼度が最も高いグループの補正量をセクタの補正量に設定する。ロボット掃除機は、所定以上の信頼度を有する場合、セクタの基準点の方向を補正し（図１３及び図１４を参照）、以前のセクタを共に補正する（図１５及び図１６を参照）。ここで、ａはセクタ、ｘは座標系、ｅは特徴線をそれぞれ示す。
【００４８】
図７に示すように、全域地図を作成するステップ（Ｓ５００）は、地域地図の各位置及びそれに応じた地域地図間の位置関係を利用して位相地図を作成するステップ（Ｓ５１０）を含む。全域地図を作成するステップ（Ｓ５００）では、位相地図を利用して全域地図を作成する。
【００４９】
ここで、全域地図を作成するステップ（Ｓ５００）は、２つのセクタの特徴線を整合するステップ（Ｓ５２０）と、整合の結果に基づいて２つのセクタが重複するか否かを判断するステップ（Ｓ５３０）と、重複する２つのセクタ間の誤差を利用して位相地図を補正するステップ（Ｓ５４０）とをさらに含む。全域地図を作成するステップ（Ｓ５００）では、補正された位相地図を利用して全域地図を作成する。
【００５０】
図１８及び図１９を参照すると、ロボット掃除機は、以前に掃除を行ったセクタのうち、現在のセクタとの重複が多いセクタを選択する。次に、ロボット掃除機は、現在のセクタの特徴線と選択されたセクタの特徴線を比較し、同一であると認識された特徴線を用いて位置誤差を演算する。セクタとセクタとの間には位置の不確実性が存在する。従って、ロボット掃除機が走行や掃除を継続して行うほど不確実性は大きくなるので、２つのセクタ間の重複を計算する際には、２つのセクタ間の不確実性を考慮してセクタを拡張した後に比較する。ロボット掃除機は、特徴線同士を比較する上でも、セクタ間の不確実性を考慮する。もし、現在のセクタの特徴線と選択されたセクタの特徴線が同一でないと判断されれば、ロボット掃除機は、その次に重複が多いセクタを選択し、現在のセクタの特徴線と次に選択されたセクタの特徴線を比較する。もし、現在のセクタの特徴線と選択されたセクタの特徴線が同一であると判断されれば、ロボット掃除機は、２つのセクタが重複すると認識し、特徴線を利用して現在のセクタの位置誤差を計算する。図１８及び図１９において、ａはセクタの範囲、ｇはガウス分布、Ｐはロボット掃除機の位置、ｅは特徴線をそれぞれ示す。
【００５１】
図２０を参照すると、ロボット掃除機は、２つのセクタが重複すると認識された場合、すなわち閉ループが感知された場合、重複すると認識されたセクタ間の位置誤差を低減するために位相地図を補正する。ロボット掃除機は、補正が終了すると、補正された位相地図を利用して全域地図を作成する。ロボット掃除機は、位相地図の補正にＭａｈａｌａｎｏｂｉｓ距離最小化（Mahalanobis distance minimization）などのアルゴリズムを用いる。また、ロボット掃除機は、全域地図を作成する際に、同一であると認識された隣接する特徴線を併合することもできる。図２０において、ｐは特徴点、すなわちロボット掃除機の位置、ａ５’は同一であると判断されたセクタをそれぞれ示す。
【００５２】
以上のように、本発明の実施形態によるロボット掃除機及びその制御方法においては、全領域を複数のセクタに区分し、安価な物体感知ユニットにより感知した感知データを用いて、各セクタに関する地域地図を作成し、掃除を行う。また、本発明の実施形態によるロボット掃除機及びその制御方法においては、複数のセクタに関する地域地図の位置及び地域地図間の位相関係を利用して全領域に関する全域地図を作成し、これを利用して自己位置を認識することにより、全領域をもれなく掃除することができ、未掃除領域への移動を容易にすることができる。
【符号の説明】
【００５３】
１００    物体感知ユニット
２００    制御ユニット
２１０    特徴線抽出モジュール
２２０    地域地図作成モジュール
２３０    位置認識モジュール
２４０    全域地図作成モジュール
【図１】
0005385353.tif 000002
【図２】
0005385353.tif 000003
【図３】
0005385353.tif 000004
【図４】
0005385353.tif 000005
【図５】
0005385353.tif 000006
【図６】
0005385353.tif 000007
【図７】
0005385353.tif 000008
【図８】
0005385353.tif 000009
【図９】
0005385353.tif 000010
【図１０】
0005385353.tif 000011
【図１１】
0005385353.tif 000012
【図１２】
0005385353.tif 000013
【図１３】
0005385353.tif 000014
【図１４】
0005385353.tif 000015
【図１５】
0005385353.tif 000016
【図１６】
0005385353.tif 000017
【図１７】
0005385353.tif 000018
【図１８】
0005385353.tif 000019
【図１９】
0005385353.tif 000020
【図２０】
0005385353.tif 000021