(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-26
(45)【発行日】2023-10-04
(54)【発明の名称】移動ロボット及びその制御方法
(51)【国際特許分類】
G05D 1/02 20200101AFI20230927BHJP
G01C 21/26 20060101ALI20230927BHJP
G01C 21/34 20060101ALI20230927BHJP
G09B 29/00 20060101ALI20230927BHJP
A47L 9/28 20060101ALI20230927BHJP
【FI】
G05D1/02 J
G01C21/26 A
G01C21/34
G09B29/00 Z
A47L9/28 E
(21)【出願番号】P 2022500059
(86)(22)【出願日】2020-07-03
(86)【国際出願番号】 KR2020008724
(87)【国際公開番号】W WO2021006556
(87)【国際公開日】2021-01-14
【審査請求日】2022-03-02
(31)【優先権主張番号】10-2019-0081459
(32)【優先日】2019-07-05
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】502032105
【氏名又は名称】エルジー エレクトロニクス インコーポレイティド
【氏名又は名称原語表記】LG ELECTRONICS INC.
【住所又は居所原語表記】128, Yeoui-daero, Yeongdeungpo-gu, 07336 Seoul,Republic of Korea
(74)【代理人】
【識別番号】100099759
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100165191
【氏名又は名称】河合 章
(74)【代理人】
【識別番号】100114018
【氏名又は名称】南山 知広
(74)【代理人】
【識別番号】100159259
【氏名又は名称】竹本 実
(72)【発明者】
【氏名】チェ チウン
【審査官】今井 貞雄
(56)【参考文献】
【文献】米国特許出願公開第2011/0137461(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/02
A47L 9/28
(57)【特許請求の範囲】
【請求項1】
移動ロボット
がマップ
を生成
するための方法であって、
前記移動ロボットのセンサによりセンサデータを収集するステップと、
前記センサデータに基づいてマップを生成するステップと、
前記マップ内の領域
の間を
区別し、前記領域
の間の少なくとも1つの境界線を識別するために、前記マップのイメージ処理を行うステップと、
前記少なくとも1つの境界線の
うち、特定の境界線を選択するステップと、
前記特定の境界線
への経路
を決定するステップと、
前記経路に沿って移動しながら
前記センサと異質な前記移動ロボットのセンサによって収集された追加的なセンサデータに基づいて前記マップをアップデートするステップと、
を含む
、方法。
【請求項2】
イメージ処理を行うことにより
区別される前記マップ内の
前記領域は、空いた空間である第1の領域、前記センサにより障害物が探知された第2の領域、及び前記センサにより探知されなかった第3の領域を含む
、請求項1に記載
の方法。
【請求項3】
前記マップのイメージ処理を行うステップは、
前記第1の領域に第1の色相を、前記第2の領域に第2の色相を、前記第3の領域に第3の色相を指定
するステップであって、前記第1の領域の前記第1の色相と前記第3の領域の前記第3の色相との間の差は、前記第2の領域の前記第2の色相と前記第1の色相及び前記第3の色相との間の差より大き
い、ステップと、
前記第1の領域と前記第3の領域との間
の少なくとも1つの線分を前記少なくとも1つの境界線として識別する
ステップと、を含む
、請求項2に記載
の方法。
【請求項4】
前記少なくとも1つの線分を前記少なくとも1つの境界線として識別するステップは、前記移動ロボットの幅より長い長さを有する
前記マップ内の線分の部分集合を前記少なくとも1つの線分として選択するステップを含む
、請求項3に記載
の方法。
【請求項5】
前記特定の境界線を選択するステップは、最大のコスト値を有する
前記少なくとも1つの境界線
の1つを前記特定の境界線として選択するステップを含み、
前記コスト値は、前記移動ロボットが前記
少なくとも1つの境界線の
1つに移動しながら取得した環境に関する情報である第1情報
、及び前記移動ロボットから前記1つの境界線までの距離に関する情報である第2情報に基づいて計算される
、請求項1に記載
の方法。
【請求項6】
前記コスト値は、前記第1情報及び前記第2情報に関する加重値関
数により決定され
、
加重値は、ユーザの入
力に応じて変化する
、請求項5に記載
の方法。
【請求項7】
前記特定の境界線の中心点を識別することに基づいて前記特定の境界線
への前記経路を計画
するステップと、
前記移動ロボットの現在位置から前記特定の境界線の
前記中心点までの
前記経路を決定するステップ
と、をさらに含む
、請求項1に記載
の方法。
【請求項8】
前記経路を決定するステップは、
ウェーブを生成
するステップと、
前記ウェーブが到達する空間内でのみ
前記経路を生成するステップ
と、を含む
、請求項7に記載
の方法。
【請求項9】
前記ウェーブが到達しない空間と連関した
前記マップの部分
において、前記イメージ処
理が行われない
、請求項8に記載
の方法。
【請求項10】
前記経路に沿って移動しながら前
記マップをアップデートするステップは、前記特定の境界線から予め設定された距離を移動して
前記追加的なセンサデータを収集するステップを含む
、請求項1に記載
の方法。
【請求項11】
前記特定の境界線から
前記予め設定された距離を移動するとき、前記境界線は、前記アップデートされたマップを介して認識される
、請求項10に記載
の方法。
【請求項12】
前記アップデートされたマップ
内で追加的な境界線が決定されない場合、前記マップ
の生成を完了し、前記アップデートされたマップを格納する
、請求項1に記載
の方法。
【請求項13】
自動
的にマップを生成するための移動ロボットであって、
前記移動ロボットと少なくとも1つの外部物体との間の距離に関するセンサデータを生成するように構成されたセンサと、
前記移動ロボットの本体を移動させるように構成された駆動ホイールと、
前記センサデータに基づいてマップを生成するように構成された
制御部と、
を備え、
前記
制御部は、
前記マップを空いた空間である第1の領域、障害物が探知された第2の領域、及び前記センサにより探知されなかった第3の領域に区分し、
前記第1の領域と前記第3の領域との間に少なくとも1つの境界線を生成するためのイメージ処理を行い、
前記少なくとも1つの境界線のうち、特定の境界線を選択し、
最適
な境界線への経路を決定し、
前記最適
な境界線への
前記経路に沿って移動しながら
前記センサと異質な前記移動ロボットのセンサによって収集されたセンサデータに基づいて
前記マップをアップデートする
、移動ロボット。
【請求項14】
前記制御部は、前記最適
な境界線を選択するとき、
さらに、
前記少なくとも1つの境界線の1つに走行しながらセンシングされた第1情報
、及び前記少なくとも1つの境界線の
前記1つまでの距離である第2情報に基づいて
、前記少なくとも1つの境界線に対するそれぞれのコスト値を決定し、
前記コスト値
の最も高い
ものを有する
前記少なくとも1つの境界線
の1つを
、前記最適
な境界線として選択する
、請求項13に記載の移動ロボット。
【請求項15】
前記コスト値は、前記第1情報及び前記第2情報に関する加重値関数により決定され
、
加重値は、前記移動ロボットが受信したユーザの入力に
応じて変化し、
前記
制御部は、
前記ユーザ
の入力に基づいて前記コスト値を計算する
、請求項14に記載の移動ロボット。
【請求項16】
前記センサは、
LiDAR(light detection and rangin
g)センサである
、請求項13に記載の移動ロボット。
【請求項17】
前記
制御部は、
さらに、前記
LiDARセンサにより生成されたウェーブが到達する空間内でのみ
前記経路を決定する
、請求項16に記載の移動ロボット。
【請求項18】
前記
制御部は、前記最適
な境界線までの
前記経路を決定するとき、
さらに、
前記最適
な境界線の中心点を識別し、
前記移動ロボットの現在位置から前記最適
な境界線の
前記中心点までの
前記経路を決定する
、請求項13に記載の移動ロボット。
【請求項19】
前記
制御部は、前記イメージ処理を行うとき、
さらに、
前記第1の領域に第1の色相を、前記第2の領域に第2の色相を、前記第3の領域に第3の色相を指定し、前記第1の領域の前記第1の色相と前記第3の領域の前記第3の色相との間の差は、前記第2の領域の前記第2の色相と前記第1の色相及び前記第3の色相との間の差より大きく、
前記第1の領域と前記第3の領域との間
の少なくとも1つの線分を
前記少なくとも1つの境界線として識別する
、請求項13に記載の移動ロボット。
【請求項20】
前記
制御部は、前記少なくとも1つの線分を
前記少なくとも1つの境界線として識別するとき、
さらに、前記移動ロボットの幅より長い長さを有する
前記マップ内の線分の部分集合を前記少なくとも1つの線分として選択する
、請求項13に記載の移動ロボット。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動ロボット及びその制御方法に関し、より詳細には、移動ロボットが自動にマップ(map)を生成する技術に関する。
【背景技術】
【0002】
ロボットは、産業用として開発されて、工場自動化の一部分を担ってきた。近年、ロボットを応用した分野がさらに拡大されて、医療用ロボット、宇宙航空ロボットなどが開発され、一般家庭で使用できる家庭用ロボットも作られている。このようなロボットの中で、自力で走行が可能なものを移動ロボットという。
【0003】
家庭で使用される移動ロボットの代表的な例は、ロボット真空掃除機であって、ロボット真空掃除機は、一定領域を自ら走行しつつ、周辺の埃または異物を吸入することで、当該領域を掃除する機器である。
【0004】
移動ロボットは、自ら移動が可能であって、移動が自由であり、走行中、障害物などを避けるための複数のセンサが備えられて、障害物を避けて走行することができる。
【0005】
掃除など、設定された作業を行うためには、走行区域のマップ(Map)を正確に生成し、走行区域内のある位置に移動するために、マップ上で移動ロボットの現在位置を正確に認識できなければならない。
【0006】
移動ロボットの現在位置認識のために、移動ロボットの連続的な移動中、自分の直前位置での走行情報(移動方向及び移動速度に関する情報または連続的に撮影される底写真などの比較等)に基づいて現在位置を持続的に認識する様々な方法が研究されてきた。また、移動ロボットが自らマップを生成し、学習する様々な方法に対する研究が進まれている。
【0007】
先行文献(韓国公開特許公報第10-2010-0031878号、公開日付2010.3.25.)は、特徴点地図及び障害物地図を正確に生成するための地図構成装置及び方法に関する発明である。上記文献には、移動ロボットが未知の環境を探索するときに取得される画像から抽出される特徴点の位置の不確実度に基づく経路を生成し、生成された経路によって走行する技術が開示されている。特徴点の不確実度に基づく経路は、移動ロボットの特徴点地図の正確性を高めるか、自己位置認識の正確度を高めるために生成される。
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特徴点を抽出して探索経路を生成するのにおいて、特徴が少ない特定環境の不確実度は、当該領域の探索可否と関係なしに高いことができ、同じ領域を探索し続ける可能性があるという問題点がある。
【0009】
また、既存のグリッドマップを活用した探索走行の場合、不確実性の高い地点を特徴点として利用することにより、探索した空の(empty)領域と未探索領域との間の境界を正確に抽出できないという問題点がある。
【0010】
上記参照文献は、追加的であるか、代案的な詳細事項、特徴、及び/又は技術的背景を適宜教示するために、適切な所に参照として本明細書に統合された。
【先行技術文献】
【特許文献】
【0011】
【文献】韓国公開特許公報第10-2010-0031878号、公開日付2010.3.25.[課題を解決するための手段]
【0012】
上記問題点を解決するために、本発明の目的は、イメージ処理により、マップの複雑性と関係なく、探索した空の(empty)領域と未探索領域との間の境界を速かに探し出す技術を提供することにある。
【0013】
本発明の目的は、特徴点の不確実性を利用するものではなく、未探索領域と探索された空の領域との間の境界線を探し、複数の境界線の中で最適の境界線(NBV:Next Best View)を探して経路計画(Path-planning)を行うことにより、効率的にマップを生成する移動ロボット技術を提供することにある。
【0014】
本発明の目的は、移動ロボットのマップ生成過程でライダーセンサ、超音波センサ、バンパー、3次元センサなどを用いて障害物の確率情報を含める占有グリッドマップ(occupancy grid map)を生成することにある。
【0015】
本発明の課題は、以上で言及した課題に制限されず、言及されていないさらに他の課題は、下記の記載から当業者に明確に理解され得るであろう。
【0016】
上記または他の目的を達成するために、本発明の一側面による移動ロボットは、ライダーセンサを介しての外部の地形及び物体との距離などに関するライダーデータを生成するセンサ部、本体を移動させる走行部、及び前記ライダーデータ基盤にセル単位のグリッドマップを生成する制御部を備える。
【0017】
上記または他の目的を達成するために、本発明の一側面による移動ロボットは、グリッドマップを第1の領域、第2の領域、及び第3の領域に区分し、第1の領域と第3の領域との間の境界線を生成するイメージ処理をし、境界線を認識し、境界線が1つ以上であれば、最適の境界線を選択し、最適の境界線まで経路計画を行い、生成された経路に沿って移動しながら前記グリッドマップをアップデートする制御部を備える。
【0018】
上記または他の目的を達成するために、本発明の一側面による移動ロボットは、前記各領域の色相を異なるように表すものの、第1の領域の色相と第3の領域の色相との差を最も大きく表し、第1の領域と第3の領域との間に線分を表示するイメージ処理を介して境界線を生成する制御部を備える。
【0019】
上記または他の目的を達成するために、本発明の一側面による移動ロボットは、複数の境界線のうち、いずれか1つの境界線周囲で取得できる環境情報である第1情報及び現在移動ロボットの位置から前記いずれか1つの境界線までの距離情報である第2情報を介して計算したコスト値に基づいて、コスト値が最大であるいずれか1つの境界線を最適の境界線として選択する制御部を備える。
【0020】
上記または他の目的を達成するために、本発明の一側面による移動ロボットは、ライダーセンサとともに異種のセンサを活用して取得した異種データを相互補完的に用いて環境変化に強靭なマップを生成し、マップ上位置を正確に認識することができる。
【図面の簡単な説明】
【0021】
本発明の実施形態等が以下の図面を参照して詳細に説明されるであろうし、図面において類似した参照番号は、類似した要素を表す。
【0022】
【
図1a】本発明の実施形態に係る移動ロボット及び移動ロボットを充電させる充電スタンドの外観を示した図である。
【
図1b】本発明の実施形態に係る移動ロボット及び移動ロボットを充電させる充電スタンドの外観を示した図である。
【
図1c】本発明の実施形態に係る移動ロボット及び移動ロボットを充電させる充電スタンドの外観を示した図である。
【
図1d】本発明の実施形態に係る移動ロボット及び移動ロボットを充電させる充電スタンドの外観を示した図である。
【
図2】本発明の実施形態に係る移動ロボットの他の形態を示した図である。
【
図3】本発明の実施形態に係る移動ロボットの主な構成間の制御関係を示したブロック図である。
【
図4a】本発明の実施形態に係るグリッドマップ(gird map)を示した図である。
【
図4b】本発明の実施形態に係るグリッドマップ(gird map)を示した図である。
【
図5】本発明の実施形態に係る移動ロボットのマップ生成方法のフローチャートである。
【
図6】本発明の実施形態に係るグリッドマップに対するイメージ処理ステップを詳細に示す図である。
【
図7】本発明の実施形態に係るグリッドマップに対するイメージ処理ステップを詳細に示す図である。
【
図8】本発明の実施形態に係るグリッドウェーブ発生ステップを理解するのに役に立つ図である。
【
図9a】本発明の実施形態に係るマップ生成過程を示す図である。
【
図9b】本発明の実施形態に係るマップ生成過程を示す図である。
【
図9c】本発明の実施形態に係るマップ生成過程を示す図である。
【
図9d】本発明の実施形態に係るマップ生成過程を示す図である。
【
図9e】本発明の実施形態に係るマップ生成過程を示す図である。
【
図9f】本発明の実施形態に係るマップ生成過程を示す図である。
【発明を実施するための形態】
【0023】
以下では、添付した図面を参照して本発明の実施形態を詳細に説明する。しかしながら、本発明がこのような実施形態に限定されるものではなく、様々な形態に変形され得ることは、もちろんである。
【0024】
一方、以下の説明において使用される構成要素に対する接尾辞「モジュール」及び「部」は、単に本明細書の作成の容易さだけが考慮されて付与されるものであって、それ自体に特に重要な意味または役割を付与するものではない。したがって、前記「モジュール」及び「部」は、互いに混用されて使用されることもできる。
【0025】
また、本明細書において、様々な要素を説明するために、第1、第2などの用語が利用され得るが、このような要素等は、このような用語により制限されない。このような用語は、1つの要素を他の要素から区別するためにのみ利用される。
【0026】
本発明の一実施形態に係る移動ロボット100は、車輪などを利用して自ら移動が可能なロボットを意味し、家庭ヘルパーロボット及びロボット掃除機などになることができる。以下では、図面を参照して、移動ロボットのうち、掃除機能を有するロボット掃除機を例に挙げて説明するが、本発明は、これに限定されない。
【0027】
図1a~
図1dは、本発明の実施形態に係る移動ロボット及び移動ロボットを充電させる充電スタンドの外観を示した図である。
【0028】
図1aは、本発明の一実施形態に係る移動ロボット及び移動ロボットを充電させる充電スタンドを示した斜視図である。
図1bは、
図1aに示された移動ロボットの上面部を示した図であり、
図1cは、
図1aに示された移動ロボットの正面部を示した図であり、
図1dは、
図1aに示された移動ロボットの底面部を示した図である。
【0029】
図2は、本発明の実施形態に係る移動ロボットの他の形態を示した図である。
【0030】
図2に示すように、移動ロボット100は、
図1aのような形態を有することができ、
図2のような形態を有することもできる。移動ロボット100は、図示されていない他の形態を有することもできる。
【0031】
図3は、本発明の実施形態に係る移動ロボットの主な構成間の制御関係を示したブロック図である。
【0032】
図1及び
図3に示すように、移動ロボット100は、本体110を移動させる走行部360を備える。走行部360は、本体110を移動させる少なくとも1つのホイールユニット136を備える。走行部360は、ホイールユニット136に連結されて駆動輪を回転させる駆動モータを備える。例えば、ホイールユニット136は、本体110の左、右側に各々備えられることができ、以下、各々左輪136(L)と右輪136(R)という。
【0033】
左輪136(L)と右輪136(R)とは、1つの駆動モータにより駆動されることができるが、必要に応じて左輪136(L)を駆動させる左輪駆動モータと右輪136(R)を駆動させる右輪駆動モータとが各々備えられることもできる。左輪136(L)と右輪136(R)との回転速度に差をつけて左側または右側に本体110の走行方向を切り換えることができる。
【0034】
本体110の底面部には、空気の吸入がなされる吸入口150hが形成され得るし、本体110内には、吸入口150hを介して空気が吸入され得るように吸入力を提供する吸入ユニット330と、吸入口150hを介して空気とともに吸入された埃を集塵するごみ箱が備えられ得る。
【0035】
本体110は、移動ロボット100を構成する各種部品が収容される空間を形成するケース111を備えることができる。ケース111には、前記ごみ箱の挿入と脱去のための開口部が形成され得るし、開口部を開閉するごみ箱カバー112がケース111に対して回転可能に備えられることができる。
【0036】
前記移動ロボット100には、例えば、吸入口150hを介して露出される刷毛を有するロール型のメインブラシ154と、本体110の底面部前方側に位置し、放射状に延長された複数個の羽根からなる刷毛を有する補助ブラシ155とが備えられ得る。これらのブラシ154、155の回転により走行区域内の底から埃が分離され、このように底から分離された埃は、吸入口150hを介して吸入されてごみ箱に集まる。
【0037】
バッテリ138は、駆動モータだけでなく、移動ロボット100の作動全般に必要な電源を供給する。バッテリ138が放電されるとき、移動ロボット100は、充電のために充電スタンド200に復帰する走行を行うことができ、このような復帰走行中、移動ロボット100は、自ら充電スタンド200の位置を探知できる。
【0038】
充電スタンド200は、例えば、所定の復帰信号を送出する信号送出部を備えることができる。復帰信号は、超音波信号または赤外線信号であることができるが、必ずしもこれに限定されるものではない。
【0039】
移動ロボット100は、復帰信号を受信する信号感知部を備えることができる。充電スタンド200は、信号送出部を介して赤外線信号を送出し、信号感知部は、赤外線信号を感知する赤外線センサを備えることができる。移動ロボット100は、充電スタンド200から送出された赤外線信号に応じて充電スタンド200の位置に移動して充電スタンド200とドッキング(docking)する。このようなドッキングにより、移動ロボット100の充電端子133と充電スタンド200の充電端子210との間に充電がなされる。
【0040】
移動ロボット100は、移動ロボット100の内/外部の情報を感知するセンサ部370を備えることができる。
【0041】
例えば、センサ部370は、走行区域に対する各種情報を感知する1つ以上のセンサ171、175、走行区域に対する画像情報を取得する画像取得部320を備えることができる。実施形態によって、画像取得部320は、センサ部370外部に別に備えられることができる。
【0042】
移動ロボット100は、センサ部370が感知した情報を介して、走行区域をマッピング(Mapping)することができる。例えば、移動ロボット100は、画像取得部320が取得した走行区域の天井画像に基づいてビジョン(vision)基盤の位置認識及びマップ生成を行うことができる。また、移動ロボット100は、レーザを用いるライダー(Light Detection And Ranging:LiDAR)センサ175基盤の位置認識及びマップ生成を行うことができる。
【0043】
さらに望ましくは、本発明に係る移動ロボット100は、カメラを用いるビジョン基盤の位置認識とレーザを用いるライダー基盤の位置認識技術を効果的に融合して照度変化、物品位置変更など、環境変化に強靭な位置認識及びマップ生成を行うことができる。
【0044】
一方、画像取得部320は、走行区域を撮影するものであって、本体110外部の画像を取得する1つ以上のカメラセンサを備えることができる。
【0045】
また、画像取得部320は、カメラモジュールを備えることができる。前記カメラモジュールは、デジタルカメラを備えることができる。デジタルカメラは、少なくとも1つの光学レンズと、光学レンズを通過した光により結像する複数個の光ダイオード(photodiode、例えば、pixel)を備えて構成されたイメージセンサ(例えば、CMOS image sensor)と、光ダイオードから出力された信号に基づいて画像を構成するデジタル信号処理器(DSP:Digital Signal Processor)とを備えることができる。デジタル信号処理器は、静止画はもちろんであり、静止画で構成されたフレームからなる動画を生成することも可能である。
【0046】
本実施形態において画像取得部320は、本体110前方の画像を取得するように備えられる前面カメラセンサ120aと本体110の上面部に備えられて、走行区域内の天井に対する画像を取得する上部カメラセンサ120bとを備えるが、画像取得部320の位置と撮影範囲が必ずしもこれに限定されるべきものではない。
【0047】
例えば、移動ロボット100は、走行区域内の天井に対する画像を取得する上部カメラセンサ120bのみ備えて、ビジョン(vision)基盤の位置認識及び走行を行うことができる。
【0048】
または、本発明の一実施形態に係る移動ロボット100の画像取得部320は、本体110の一面に対して傾斜するように配置されて、前方と上方とを共に撮影するように構成されたカメラセンサを備えることができる。すなわち、1つのカメラセンサで前方と上方とを共に撮影することができる。この場合に、制御部350は、カメラが撮影して取得した画像から前方画像と上方画像とを画角を基準に分離することができる。分離された前方画像は、前面カメラセンサ120aで取得された画像とともに、ビジョン(vision)基盤の事物認識に使用されることができる。また、分離された上方画像は、上部カメラセンサ120bで取得された画像とともに、ビジョン(vision)基盤の位置認識及び走行に使用されることができる。
【0049】
本発明に係る移動ロボット100は、周辺のイメージをイメージ基盤の予め格納された情報と比較するか、取得されるイメージを比較して現在位置を認識するビジョンスラムを行うことができる。
【0050】
一方、画像取得部320は、前面カメラセンサ120a及び/又は上部カメラセンサ120bを複数個備えることも可能である。または、画像取得部320は、前方と上方とを共に撮影するように構成されたカメラセンサを複数個備えることも可能である。
【0051】
本実施形態の場合、移動ロボットの一部部位(ex、前方、後方、底面)にカメラが設けられており、掃除の際に撮像画像を持続的に取得することができる。このようなカメラは、撮影効率のために、各部位別に複数個が設けられ得る。カメラにより撮像された画像は、当該空間に存在する埃、髪の毛、底などのような物質の種類認識、掃除可否、または掃除時点を確認するのに使用することができる。
【0052】
前面カメラセンサ120aは、移動ロボット100の走行方向前面に存在する障害物または掃除領域の状況を撮影できる。
【0053】
本発明の一実施形態によれば、前記画像取得部320は、本体110周辺を連続的に撮影して複数の画像を取得でき、取得された複数の画像は、格納部305に格納されることができる。
【0054】
移動ロボット100は、複数の画像を利用して障害物認識の正確性を高めるか、複数の画像のうち1つ以上の画像を選択して、効果的なデータを使用することにより障害物認識の正確性を高めることができる。
【0055】
センサ部370は、本体110外部の物体との距離を測定する距離測定センサを備えることができる。距離測定センサは、本体110外部の地形に関する情報を取得するライダーセンサ175を備えることができる。以下、ライダーセンサ175を基準に本発明は理解されることができる。
【0056】
ライダーセンサ175は、レーザを出力してレーザを反射させたオブジェクトの距離、位置方向、材質などの情報を提供し、走行区域の地形情報を取得できる。移動ロボット100は、ライダーセンサ175で360度の地形(Geometry)情報を得ることができる。
【0057】
本発明の一実施形態に係る移動ロボット100は、ライダーセンサ175がセンシングしたオブジェクトの距離と位置、方向などのライダーデータを認識してマップを生成できる。前記マップは、ライダーデータに基づいてセル単位のグリッドマップであることができる。
【0058】
本発明の一実施形態に係る移動ロボット100は、外部から反射されて受信されるレーザの時間差または信号強度など、レーザ受信パターンを分析して走行区域の地形情報を取得できる。また、移動ロボット100は、ライダーセンサ175を介して取得した地形情報を利用してマップを生成できる。
【0059】
例えば、本発明に係る移動ロボット100は、ライダーセンサ175を介して現在位置で取得された周辺地形情報をライダーセンサ基盤の予め格納された地形情報と比較するか、取得される地形情報を比較して現在位置を認識するライダースラムを行うことができる。
【0060】
さらに望ましくは、本発明に係る移動ロボット100は、カメラを用いるビジョン基盤の位置認識と、レーザを用いるライダー基盤の位置認識技術を効果的に融合して照度変化、物品位置変更など、環境変化に強靭な位置認識及びマップ生成を行うことができる。
【0061】
一方、センサ部370は、移動ロボットの動作、状態と関連した各種データをセンシングするセンサ171、172、179を備えることができる。
【0062】
例えば、前記センサ部370は、前方の障害物を感知する障害物感知センサ171を備えることができる。また、前記センサ部370は、走行区域内の底に断崖の存在を感知する断崖感知センサ172と、底の画像を取得する下部カメラセンサ179とをさらに備えることができる。
【0063】
図1aと
図1cに示すように、前記障害物感知センサ171は、移動ロボット100の外周面に一定間隔に設けられる複数のセンサを備えることができる。
【0064】
前記障害物感知センサ171は、赤外線センサ、超音波センサ、RGBDセンサ、バンパーセンサ、RFセンサ、地磁気センサ、PSD(Position Sensitive Device)センサなどを備えることができる。
【0065】
一方、前記障害物感知センサ171に含まれるセンサの位置と種類は、移動ロボットの機種によって変わることができ、前記障害物感知センサ171は、より様々なセンサを備えることができる。
【0066】
前記障害物感知センサ171は、室内の壁や障害物との距離を感知するセンサであって、本発明は、その種類に限定されないが、以下では、超音波センサを例示して説明する。
【0067】
前記障害物感知センサ171は、移動ロボットの走行(移動)方向に存在する物体、特に、障害物を感知して障害物情報を制御部350に伝達する。すなわち、前記障害物感知センサ171は、移動ロボットの移動経路、前方や側面に存在する突出物、家内の什器、家具、壁面、壁の角などを感知して、その情報を制御ユニットに伝達することができる。
【0068】
このとき、制御部350は、超音波センサを介して受信された少なくとも2つ以上の信号に基づいて障害物の位置を感知し、感知された障害物の位置によって移動ロボット100の動きを制御できる。
【0069】
実施形態によっては、ケースの外側面に備えられる障害物感知センサ131は、発信部と受信部とを備えて構成されることができる。
【0070】
例えば、超音波センサは、少なくとも1つ以上の発信部及び少なくとも2つ以上の受信部が互いに交わるように備えられることができる。これにより、様々な角度で信号を放射し、障害物に反射された信号を様々な角度で受信することができる。
【0071】
実施形態によっては、障害物感知センサ171から受信された信号は、増幅、フィルタリングなどの信号処理過程を経ることができ、その後、障害物までの距離及び方向が算出され得る。
【0072】
図3に示すように、画像取得部320は、走行区域を撮影するものであって、カメラモジュールを備えることができる。カメラは、移動ロボット100の走行方向前面に存在する障害物または掃除領域の状況を撮影できる。
【0073】
本発明の一実施形態によれば、前記画像取得部320は、本体110周辺を連続的に撮影して複数の画像を取得でき、取得された複数の画像は、格納部305に格納されることができる。
【0074】
移動ロボット100は、複数の画像を利用して空間認識、位置認識、障害物認識の正確性を高めるか、複数の画像のうち1つ以上の画像を選択して効果的なデータを使用することにより、空間認識、位置認識、障害物認識の正確性を高めることができる。
【0075】
また、移動ロボット100は、移動ロボットの動作、状態と関連した各種データをセンシングするセンサを備えるセンサ部370を備えることができる。
【0076】
例えば、前記センサ部370は、前方の障害物を感知する障害物感知センサを備えることができる。また、前記センサ部370は、走行区域内の底に断崖の存在を感知する断崖感知センサと、底の画像を取得する下部カメラセンサとをさらに備えることができる。
【0077】
前記障害物感知センサは、様々な種類のセンサで構成されることができる。例えば、ライダーセンサ、超音波センサ、RGBDセンサ、及びバンパーセンサを備えることができる。この場合、ライダーセンサを優先してセンサデータを取得しながら、ライダーセンサで感知できない近距離障害物情報やガラスなどの障害物情報をバンパーセンサや超音波センサを介して感知することができる。
【0078】
一方、前記障害物感知センサに含まれるセンサの位置と種類は、移動ロボットの機種によって変わることができ、前記障害物感知センサは、より様々なセンサを備えることができる。
【0079】
一方、前記センサ部370は、本体110の駆動による移動ロボット100の走行動作を感知し、動作情報を出力する走行感知センサをさらに備えることができる。走行感知センサでは、ジャイロセンサ(Gyro Sensor)、ホイールセンサ(Wheel Sensor)、加速度センサ(Acceleration Sensor)などを使用することができる。
【0080】
ジャイロセンサは、移動ロボット100が運転モードによって動くとき、回転方向を感知し、回転角を検出する。ジャイロセンサは、移動ロボット100の角速度を検出して、角速度に比例する電圧値を出力する。制御部350は、ジャイロセンサから出力される電圧値を用いて回転方向及び回転角を算出する。
【0081】
ホイールセンサは、ホイールユニット136に連結されて、車輪の回転数を感知する。ここで、ホイールセンサは、エンコーダ(Encoder)であることができる。
【0082】
制御部350は、回転数を用いて左、右側車輪の回転速度を演算できる。また、制御部350は、左、右側車輪の回転数差を利用して回転角を演算できる。
【0083】
加速度センサは、移動ロボット100の速度変化、例えば、出発、停止、方向転換、物体との衝突などによる移動ロボット100の変化を感知する。
【0084】
また、加速度センサは、制御部350に内蔵されて、移動ロボット100の速度変化を感知できる。
【0085】
制御部350は、走行感知センサから出力された動作情報に基づいて移動ロボット100の位置変化を算出できる。このような位置は、画像情報を利用した絶対位置に対応して相対位置となる。移動ロボットは、このような相対位置認識を介して画像情報と障害物情報とを利用した位置認識の性能を向上させることができる。
【0086】
一方、移動ロボット100は、充電可能なバッテリを備えて、移動ロボット内に電源を供給する電源供給部を備えることができる。
【0087】
前記電源供給部は、移動ロボット100の各構成要素に駆動電源と動作電源を供給し、電源残量が足りないと、充電スタンド200から電源を供給されて充電されることができる。
【0088】
移動ロボット100は、バッテリの充電状態を感知し、感知結果を制御部350に送信するバッテリ感知部をさらに備えることができる。バッテリは、バッテリ感知部と連結されて、バッテリ残量及び充電状態が制御部350に伝達される。バッテリ残量は、出力部380のディスプレイ382に表示されることができる。
【0089】
また、移動ロボット100は、オン/オフ(On/Off)または各種命令を入力できる入力部325を備える。入力部325は、ボタンやダイヤル、タッチスクリーンなどを備えることができる。入力部325は、ユーザの音声指示を受信するためのマイクを備えることができる。入力部325を介して移動ロボット100の作動全般に必要な各種制御命令を受信することができる。
【0090】
本実施形態によれば、移動ロボット100は、入力部を介して環境情報の第1情報及び距離情報の第2情報に関する加重値に対するユーザの入力を受けることができる。制御部350は、加重値に対する入力信号を受けてコスト値を計算することができる。コスト値及び加重値に関する詳細な説明を、以下、
図7を介して分かることができる。
【0091】
また、移動ロボット100は、出力部380を備えて、予約情報、バッテリ状態、動作モード、動作状態、エラー状態などをイメージで表示するか、音響で出力することができる。
【0092】
出力部380は、オーディオ信号を出力する音響出力部381を備えることができる。音響出力部381は、制御部350の制御によって警告音、動作モード、動作状態、エラー状態などの報知メッセージなどを音響で出力することができる。音響出力部381は、制御部350からの電気信号をオーディオ信号に変換して出力することができる。このために、スピーカなどを備えることができる。
【0093】
また、出力部380は、予約情報、バッテリ状態、動作モード、動作状態、エラー状態などをイメージで表示するディスプレイ382をさらに備えることができる。
【0094】
図3に示すように、移動ロボット100は、現在位置を認識するなど、各種情報を処理し、判断する制御部350、及び各種データを格納する格納部305を備える。また、移動ロボット100は、外部端末機とデータを送受信する通信部390をさらに備えることができる。
【0095】
外部端末機は、移動ロボット100を制御するためのアプリケーションを備え、アプリケーションの実行を介して移動ロボット100が掃除する走行区域に対するマップを表示し、マップ上に特定領域を掃除するように領域を指定できる。外部端末機は、マップ設定のためのアプリケーション(application)が搭載されたリモコン、PDA、ラップトップ(laptop)、スマートフォン、タブレットなどを例に挙げることができる。
【0096】
外部端末機は、移動ロボット100と通信して、マップとともに移動ロボットの現在位置を表示でき、複数の領域に関する情報が表示され得る。また、外部端末機は、移動ロボットの走行によってその位置を更新して表示する。
【0097】
制御部350は、移動ロボット100を構成する画像取得部320、入力部325、走行部360、吸入ユニット330などを制御して、移動ロボット100の動作全般を制御する。
【0098】
制御部350は、入力部325のマイクを介して受信されるユーザの音声入力信号を処理し、音声認識過程を行うことができる。実施形態によって、移動ロボット100は、制御部350内部または外部に音声認識を行う音声認識モジュールを備えることができる。
【0099】
実施形態によって、簡単な音声認識は、移動ロボット100自身が行い、自然語処理など、高次元の音声認識はサーバで行われることができる。
【0100】
格納部305は、移動ロボット100の制御に必要な各種情報を記録するものであって、揮発性または不揮発性記録媒体を含むことができる。記録媒体は、マイクロプロセッサ(micro processor)により読み取られることができるデータを格納したものであって、HDD(Hard Disk Drive)、SSD(Solid State Disk)、SDD(Silicon Disk Drive)、ROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ格納装置などを含むことができる。
【0101】
また、格納部305には、走行区域に対するマップ(Map)が格納され得る。マップは、移動ロボット100と有線または無線通信を介して情報を交換できる外部端末機、サーバなどにより入力されたものであることができ、移動ロボット100が自ら学習をして生成したものであることもできる。
【0102】
マップには、走行区域内の部屋等の位置が表示され得る。また、移動ロボット100の現在位置がマップ上に表示されることができ、マップ上での移動ロボット100の現在の位置は、走行過程で更新されることができる。外部端末機は、格納部305に格納されたマップと同じマップを格納する。
【0103】
前記格納部305は、掃除履歴情報を格納することができる。このような掃除履歴情報は、掃除を行う度に生成されることができる。
【0104】
前記格納部305に格納される走行区域に対するマップ(Map)は、走行区域の所定情報を所定形式で格納したデータであって、掃除中、走行に使用されるナビゲーションマップ(Navigation map)、位置認識に使用されるSLAM(Simultaneous localization and mapping)マップ、障害物などにぶつかると、当該情報を格納して学習掃除の際に使用する学習マップ、全域位置認識に使用される全域位置マップ、認識された障害物に関する情報が記録される障害物認識マップなどであることができる。
【0105】
制御部350は、走行制御モジュール351、地図生成モジュール352、位置認識モジュール353、及び障害物認識モジュール354を備えることができる。
【0106】
図1~
図3に示すように、走行制御モジュール351は、移動ロボット100の走行を制御するものであって、走行設定によって走行部360の駆動を制御する。また、走行制御モジュール351は、走行部360の動作に基づいて移動ロボット100の走行経路を認識できる。例えば、走行制御モジュール351は、ホイールユニット136の回転速度に基づいて移動ロボット100の現在または過去の移動速度、走行した距離などを認識でき、このように認識された移動ロボット100の走行情報に基づいて、マップ上で移動ロボット100の位置が更新され得る。
【0107】
地図生成モジュール352は、走行区域のマップを生成できる。地図生成モジュール352は、画像取得部320を介して取得した画像を処理してマップを作成することができる。すなわち、掃除領域と対応する掃除マップを作成することができる。
【0108】
また、地図生成モジュール352は、各位置で画像取得部320を介して取得した画像を処理してマップと連係させて全域位置を認識できる。
【0109】
位置認識モジュール353は、現在位置を推定して認識する。位置認識モジュール353は、画像取得部320の画像情報を利用して地図生成モジュール352と連係して位置を認識することで、移動ロボット100の位置が急に変更される場合にも現在位置を推定して認識することができる。
【0110】
また、位置認識モジュール353は、現在位置する領域の属性を認識できる、すなわち、位置認識モジュール353は、空間を認識できる。
【0111】
移動ロボット100は、位置認識モジュール353を介して連続的な走行中に位置認識が可能であり、かつ、位置認識モジュール353なしに地図生成モジュール352及び障害物認識モジュール354を介してマップを学習し、現在位置などを推定できる。
【0112】
地図生成モジュール352は、マップを生成し、画像取得部320を介してマップを生成できる。地図生成モジュール352は、センサ部370を介してマップを生成できる。地図生成モジュール352は、ライダーセンサを介して取得したライダーデータに基づいてマップを生成できる。前記マップは、セルを基盤とするグリッドマップであることができる。
【0113】
制御部350は、マップが生成されれば、領域を区分することができる。領域を区分することは、ライダーデータに基づいて第1の領域、第2の領域、及び第3の領域に区分することができる。領域の数は、これに限定されない。
【0114】
第1の領域は、ライダーセンサでセンシングした結果、空いた空間である領域であることができる。すなわち、探索された空いた空間の領域であることができる。第2の領域は、ライダーセンサでセンシングした結果、障害物が存在する領域であることができる。すなわち、探索された障害物が存在する領域であることができる。第3の領域は、ライダーセンサでセンシングしなかった領域であることができる。すなわち、未探索領域であることができる。
【0115】
制御部350は、各領域を色相を介して区分するイメージ処理をすることができる。前記イメージ処理は、各領域に存在するセルに色相を表示することであることができる。この場合、グレースケール(Grey scale)を使用することができる。
【0116】
制御部350は、第1の領域の色相と第3の領域の色相との差を最も大きくすることができる。グレースケールの場合、第1の領域と第3の領域との明度差を最も大きくすることができる。例えば、第1の領域は、白色、第2の領域は、灰色、第3の領域は、黒色で表示することができる。
【0117】
制御部350は、第1の領域と第3の領域とを区分する境界線を表示できる。第1の領域と第3の領域との間を線分を介して区分することができる。言い換えれば、制御部350は、第1の領域と第3の領域との間に線分を表示するイメージ処理をすることができる。制御部350は、第1の領域と第3の領域との間に線分を境界線として認識することができる。
【0118】
制御部350は、境界線を認識し、境界線の個数が1つ以上の場合、最適の境界線を選択できる。最適の境界線を選択する方法コスト関数を利用できるが、これに関する詳細な説明は、以下、
図7を参照できる。
【0119】
制御部350は、選択された最適の境界線まで経路を計画(Path-planning)できる。この場合、グリッドウェーブを発生して移動ロボット100が位置する空間が存在するか否かを優先的に確認することができる。制御部350は、グリッドウェーブが至る空間内でのみ経路を生成できる。経路計画(Path-planning)は、経路生成を含むことができる。
【0120】
移動ロボット100が位置する空間が存在しない場合にも、経路を生成すれば、必要ない空間までの移動を繰り返すようになり、マップ生成において非効率的なためである。
【0121】
制御部350は、グリッドウェーブを介して移動ロボット100が位置する空間が存在すると判断すれば、経路を生成し、前記経路に沿って移動しながらライダーセンサを介して本体110外部の地形をセンシングすることができる。制御部350は、センシングしたライダーデータに基づいてグリッドマップをアップデートすることができる。
【0122】
制御部350は、移動ロボット100第1の領域と第3の領域相違の境界線に到達してセンサを介してグリッドマップをアップデートした場合、アップデートされたグリッドマップを介して他の境界線を認識し、前記境界線へと移動することができる。この場合、最適の境界線を計算する過程を経ることができる。
【0123】
制御部350は、それ以上境界線が存在しないと判断すれば、マップ生成を完了することができる。
【0124】
制御部350は、マップ生成が完了すれば、生成されたマップを通信部390を介して外部端末機、サーバなどに送信することができる。また、制御部350は、前述したように、外部端末機、サーバなどからマップが受信されれば、格納部305に格納することができる。
【0125】
このとき、マップは、掃除領域を複数の領域に区分され、複数の領域を連結する連結通路が含み、領域内の障害物に関する情報を含むことができる。
【0126】
制御部350は、掃除命令が入力されれば、マップ上の位置と移動ロボットの現在位置とが一致するか否かを判断する。掃除命令は、リモコン、入力部325、または外部端末機から入力されることができる。
【0127】
制御部350は、現在位置がマップ上の位置と一致しない場合、または現在位置を確認できない場合、現在位置を認識して移動ロボット100の現在位置を復旧した後、現在位置に基づいて指定領域へと移動するように走行部360を制御できる。
【0128】
現在位置がマップ上の位置と一致しない場合、または現在位置を確認できない場合、位置認識モジュール353は、画像取得部320から入力される取得画像を分析してマップに基づいて現在位置を推定できる。また、障害物認識モジュール354または地図生成モジュール352も、同じ方式で現在位置を認識できる。
【0129】
位置を認識して移動ロボット100の現在位置を復旧した後、走行制御モジュール351は、現在位置から指定領域に走行経路を算出し、走行部360を制御して指定領域へと移動する。
【0130】
サーバから掃除パターン情報を受信する場合、走行制御モジュール351は、受信した掃除パターン情報に応じて、全体走行区域を複数の領域に分け、1つ以上の領域を指定領域として設定することができる。
【0131】
また、走行制御モジュール351は、受信した掃除パターン情報に応じて走行経路を算出し、走行経路に沿って走行し、掃除を行うことができる。
【0132】
制御部350は、設定された指定領域に対する掃除が完了すれば、掃除記録を格納部305に格納することができる。
【0133】
また、制御部350は、通信部390を介して移動ロボット100の動作状態または掃除状態を所定周期で外部端末機、サーバに送信することができる。
【0134】
それにより、外部端末機は、受信されるデータに基づいて、実行中であるアプリケーションの画面上にマップとともに移動ロボットの位置を表示し、また、掃除状態に関する情報を出力する。
【0135】
本発明の実施形態に係る移動ロボット100は、一方向に障害物や壁面が感知されるまでに移動する途中、障害物認識モジュール354が障害物を認識すれば、認識された障害物の属性によって直進、回転など、走行パターンを決定することができる。
【0136】
一方、制御部350は、認識された障害物の属性に基づいて他のパターンで回避走行を行うように制御することができる。制御部350は、非危険障害物(一般障害物)、危険障害物、移動可能な障害物など、障害物の属性によって他のパターンで回避走行するように制御することができる。
【0137】
例えば、制御部350は、危険障害物は、より長い距離の安全距離を確保した状態で迂回して回避するように制御することができる。
【0138】
また、制御部350は、移動可能な障害物の場合に、所定待機時間後にも障害物が移動しなければ、一般障害物に対応する回避走行または危険障害物に対応する回避走行を行うように制御することができる。または、制御部350は、移動可能な障害物に対応する回避走行パターンが別に設定された場合には、これにより走行するように制御することができる。
【0139】
本発明の実施形態に係る移動ロボット100は、マシンラーニング(machine learning)基盤の障害物認識及び回避を行うことができる。
【0140】
前記制御部350は、入力画像でマシンラーニング(machine learning)により予め学習された障害物を認識する障害物認識モジュール354と、前記認識された障害物の属性に基づいて、前記走行部360の駆動を制御する走行制御モジュール351とを備えることができる。
【0141】
一方、
図3では、複数のモジュール351、352、353、354が制御部350内に別に備えられる例を図示したが、本発明は、これに限定されない。
【0142】
例えば、位置認識モジュール353と障害物認識モジュール354とは、1つの認識として統合されて、1つの認識モジュール355で構成されることができる。この場合に、マシンラーニングなどの学習技法を利用して認識器を学習させ、学習された認識器は、以後に入力されるデータを分類して領域、事物などの属性を認識できる。
【0143】
実施形態によって、地図生成モジュール352、位置認識モジュール353、及び障害物認識モジュール354が1つの統合モジュールで構成されることもできる。
【0144】
以下では、位置認識モジュール353と障害物認識モジュール354とは、1つの認識器として統合されて、1つの認識モジュール355で構成される実施形態を中心に説明するが、位置認識モジュール353と障害物認識モジュール354とがそれぞれ備えられる場合にも同じ方式で動作することができる。
【0145】
本発明の実施形態に係る移動ロボット100は、マシンラーニングにより事物、空間の属性が学習された認識モジュール355を備えることができる。
【0146】
マシンラーニングは、コンピュータに人が直接ロジック(Logic)を指示しなくても、データを介してコンピュータが学習をし、これを介してコンピュータに自ら問題を解決させることを意味する。
【0147】
ディープラーニング(Deep Learning)は、人工知能(artificial intelligence)を構成するための人工神経網(Artificial Neural Networks:ANN)に基づいてコンピュータに人の考え方を教える方法であって、人が教えなくても、コンピュータが自ら人のように学習できる人工知能技術である。
【0148】
前記人工神経網(ANN)は、ソフトウェア形態で実現されるか、チップ(chip)など、ハードウェア形態で実現されることができる。
【0149】
認識モジュール355は、空間の属性、障害物など、事物の属性が学習されたソフトウェアまたはハードウェア形態の人工神経網(ANN)を含むことができる。
【0150】
例えば、認識モジュール355は、ディープラーニング(Deep Learning)にて学習されたCNN(Convolutional Neural Network)、RNN(Recurrent Neural Network)、DBN(Deep Belief Network)など、深層神経網(Deep Neural Network:DNN)を含むことができる。
【0151】
認識モジュール355は、前記深層神経網(DNN)に含まれたノード間の加重値(weight)に基づいて入力される画像データに含まれる空間、事物の属性を判別できる。
【0152】
一方、前記走行制御モジュール351は、前記認識された空間、障害物の属性に基づいて前記走行部360の駆動を制御できる。
【0153】
一方、認識モジュール355は、マシンラーニング(machine learning)により予め学習されたデータに基づいて前記選択された特定時点画像に含まれる空間、障害物の属性を認識できる。
【0154】
一方、格納部305には、空間、事物属性判別のための入力データ、前記深層神経網(DNN)を学習するためのデータが格納され得る。
【0155】
格納部305には、画像取得部320が取得した原本画像と所定領域が抽出された抽出画像とが格納され得る。
【0156】
また、実施形態によっては、格納部305には、前記深層神経網(DNN)構造をなすウェイト(weight)、バイアス(bias)などが格納され得る。
【0157】
または、実施形態によっては、前記深層神経網構造をなすウェイト(weight)、バイアス(bias)などは、認識モジュール355のエンベデッドメモリ(embedded memory)に格納されることができる。
【0158】
一方、前記認識モジュール355は、前記画像取得部320が画像を取得するか、画像の一部領域を抽出する度に所定画像をトレーニング(training)データとして使用して学習過程を行うか、所定個数以上の画像が取得された後、学習過程を行うことができる。
【0159】
または、移動ロボット100は、通信部390を介して前記所定サーバからマシンラーニングと関連したデータを受信することができる。
【0160】
この場合に、移動ロボット100は、前記所定サーバから受信されたマシンラーニングと関連したデータに基づいて認識モジュール355をアップデート(update)することができる。
【0161】
図4a~4bは、本発明の実施形態に係るグリッドマップ(gird map)を示した図である。
【0162】
移動ロボット100が自律的に移動しながら任務を果たすためには、周辺環境に対する認識が必須でありうる。移動ロボット100の周辺環境認識は、マップ(map)を介してなされることができる。このようなマップには、周辺空間を同じ大きさの格子またはセル(以下、セル)で表現し、各セルに物体の有無を表示したグリッドマップ(grid map)が代表的である。移動ロボット100は、距離測定センサを用いて周辺環境に対するグリッドマップを生成できる。
【0163】
図4a~4bに示すように、移動ロボット100が周辺環境に対するグリッドマップ400を生成するための代表的な方法として、その場でロボットが回転しながら距離情報を取得し、取得された距離情報を利用してグリッドマップ400を生成できる。
【0164】
グリッドマップ400は、所定の空間を同じ大きさのセルに分け、各セルに物体の存在有無を表示した地図になることができる。例えば、白色セルは、物体がない領域を、灰色セルは、物体がある領域を表すことができる。したがって、灰色セルを連結した線は、ある空間の境界線(壁、障害物等)を表すことができる。セルの色相は、イメージ処理過程を介して変わることができる。
【0165】
セルの大きさは、異なるように設定することができる。例えば、移動ロボット100の長さと幅が共に50cmであれば、セルの横と縦の長さを25cmに設定することができる。この場合、移動ロボット100は、2by2セルが空いた空間の領域であるときに位置することができる。セルの横と縦の長さを10cmに設定することができる。この場合、移動ロボット100は、5by5セルが空いた空間の領域であるときに位置することができる。
【0166】
本発明の実施形態によれば、
図4aに示すように、ロボット100は、周辺に対する地図を生成し、生成された地図に基づいて特定の任務を果たす移動ロボット(例えば、掃除ロボット)になることができる。移動ロボット100には、距離測定センサが備えられ得る。測定センサは、周辺物体までの距離を測定し、測定された距離を利用して地図を生成するか、障害物から脱出することができる。
【0167】
図4bに示すように、グリッドマップ400の生成とは、距離情報に基づいて周辺物体の特定地点を灰色セル403、404で示すものであることができる。移動ロボット100がライダーセンサでセンシングしたA(401)地点及びB(402)地点は、グリッドマップ400でA’(403)セル及びB’(404)セルで表現されることができる。
【0168】
灰色セルを連結した線は、ある空間の壁または障害物などの境界線を表すことができる。
【0169】
図5は、本発明の実施形態に係る移動ロボットのマップ生成方法のフローチャートである。
【0170】
図5に示すように、移動ロボット100は、距離測定センサを介して外部の物体との距離に関するセンサデータを受信するステップ(S100)と、前記センサデータに基づいてセル単位のグリッドマップを生成するステップ(S200)と、前記グリッドマップで領域を区分し、前記領域間に境界線を生成するイメージ処理ステップ(S300)と、1つ以上の境界線が存在するか判断するステップ(S400)と、1つ以上の前記境界線が存在すれば、最適の境界線を選択するステップ(S500)と、前記最適の境界線まで経路を計画するステップ(S600)と、前記計画された経路に沿って移動しながら前記グリッドマップをアップデートするステップ(S700)とを介して自動にマップを生成できる。
【0171】
移動ロボット100は、1つ以上の境界線が存在するか判断するステップ(S400)で1つ以上の前記境界線が存在しなければ、マップ生成を完了(S800)し、格納部305に前記完了したマップを格納することができる。
【0172】
センサデータ受信ステップ(S100)は、制御部350が距離測定センサのうち、ライダーセンサ175を介してセンシングしたライダーデータを受信する過程であることができる。ライダーセンサ175は、レーザを出力してレーザを反射させたオブジェクトの距離、位置方向、材質などの情報を提供し、走行区域の地形情報を取得できる。
【0173】
本発明の一実施形態に係るライダーデータは、ライダーセンサ175がセンシングした障害物等の距離と位置、方向などの情報を意味することができる。
【0174】
グリッドマップ生成ステップ(S200)は、ライダーデータを認識してマップを生成できる。前記マップは、ライダーデータに基づいてセル単位のグリッドマップであることができる。セル単位のグリッドマップを生成する過程は、
図4a~
図4bを介して理解することができる。
【0175】
グリッドマップに対するイメージ処理ステップ(S300)は、グリッドマップの領域を区分するステップ(S301)、区分された領域に対して色相を介してイメージ処理をするステップ(S302)、及び第1の領域と第3の領域との間に線分を表示するイメージ処理ステップ(S303)を含むことができる。以下、詳細な説明は、
図7を参考することができる。
【0176】
本発明の実施形態によれば、グリッドマップに対するイメージ処理ステップ(S300)を介してグリッドマップは、第1の領域701、第2の領域702、及び第3の領域703に区分され、第1の領域701は、白色、第2の領域702は、灰色、第3の領域703は、黒色でイメージ処理され、制御部350は、第1の領域と第3の領域との間に線分710、720、730が境界線として認識することができる。
【0177】
1つ以上の境界線が存在するか判断するステップ(S400)は、線分710、720、730を介して認識された境界線の個数を判断できる。すなわち、イメージ処理された線分710、720、730の個数を判断するものであることができる。
【0178】
境界線が1つ以上存在しなければ、制御部350は、マップ生成を完了(S800)し、格納部305に格納することができる。
【0179】
境界線が1つ以上存在する場合、その中で最適の境界線を選択するステップ(S500)に移ることができる。最適の境界線は、NBV(Next Best View)と呼ばれることができる。
【0180】
最適の境界線選択ステップ(S500)は、コスト関数(Cost function)を利用できる。コスト関数は、R(f)で表現され、以下、数式1により計算されることができる。
【0181】
【0182】
数式1を参照すれば、I(f)は、情報コスト(Information Cost)であり、いずれか1つの境界線へと移動して得ることができる境界線周囲の環境情報(以下、第1情報)に関する関数である。
【0183】
I(f)は、境界線の長さ及び第3の領域のセルの個数、または割合により計算されることができる。境界線の長さ(l)が長ければ、大きい空間である可能性が大きく、コスト値は大きくなることができる。一定半径内の第3の領域のセルの個数(u)が多ければ、未探索領域割合が大きく、コスト値は大きくなることができる。
【0184】
すなわち、I(f)は、1つ以上の境界線のうち、いずれか1つの境界線へと移動したとき、前記いずれか1つの境界線周囲の空間が広いか、未探索領域の割合が大きくて、優先的に探索する必要性があるかを決定する環境情報に関する関数であることができる。
【0185】
I(f)は、境界線の長さ(l)及び一定半径内の第3の領域のセルの個数(u)に対する加重値関数(weight function)であることができる。
【0186】
【0187】
N(f)は、ナビゲーションコスト(Navigation Cost)であり、現在移動ロボット100の位置からいずれか1つの境界線の中心点までの距離情報(第2情報)に関する関数である。現在移動ロボット100の位置からいずれか1つの境界線の中心点までの距離が近いほど、N(f)の値は大きくなることができる。
【0188】
N(f)が大きいほど、コスト値が大きければ、現在移動ロボット100の位置で近い地点からマップ生成することができる。ユーザの観点では、N(f)が一定水準以上大きいことが有利でありうる。しかし、N(f)があまり大きくなると、狭い空間まで隅々探索をする可能性が高いので、効率的なマップ生成のために、I(f)と加重値をかけて計算することができる。
【0189】
aは、I(f)とN(f)の加重値を意味する。言い換えれば、コスト関数は、前記第1情報及び前記第2情報に関する加重値関数(weight function)であり、前記コスト値は、前記第1情報及び前記第2情報に関する加重値関数(weight function)により決定されることができる。加重値は、ユーザの入力信号により選択されることができる。
【0190】
ユーザは、大きい空間中心に速いマップ生成のために、I(f)に加重値をかけることができ、近い空間中心に隅々のマップ生成のために、N(f)に加重値をかけることができる。このような原理は、マップ生成だけでなく、掃除を行う過程でも適用されることができる。
【0191】
Hは、履歴利得(Hysteresis Gain)であり、センシング範囲によって境界線がどこに位置していているかによる利得を意味する。ライダーセンサ175のセンシング半径は、11mであることができる。
【0192】
境界線が現在移動ロボット100位置基準にセンシング範囲内にあれば、H>1であり、センシング範囲外にあれば、H=1である。Hは、ロボットの進行方向にある境界線を選択できるようにして、方向をあちこち変える非効率的な走行を防止できるようにすることができる。
【0193】
図7に示すように、最適の境界線選択ステップ(S500)を介して複数の境界線のうち、コスト値の最も大きい1つの境界線を選択できる。第1の線分710、第2の線分720、及び第3の線分730の各々は、図示していないが、第1の境界線711、第2の境界線721、及び第3の境界線731と認識されることができる。
【0194】
第1の境界線711の長さが最も長く、第3の境界線731の長さが最も短いことができる。
【0195】
最適の境界線は、コスト関数を介して複数の境界線のうち、コスト値の最も大きい第1の境界線711として選択されることができる。N(f)値の加重値を大きくかけないならば、第1の境界線711の長さが最も長くて、I(f)値が大きいためである。
【0196】
経路計画ステップ(S600)は、最適の境界線(NBV)までの経路を計画するステップであることができる。前記経路は、最適の境界線(NBV)の中心点を設定し、現在位置から前記中心点までの経路を意味することができる。経路計画は、経路生成を含むことができる。
【0197】
最適の境界線(NBV)の中心点は、前記境界線の長さを二等分する地点であることができる。制御部350は、境界線の長さを二等分する地点を中心点として設定し、現在移動ロボット100の位置から前記中心点までの経路を生成できる。
【0198】
図8は、本発明の実施形態に係るグリッドウェーブ発生ステップを理解するのに役に立つ図である。
【0199】
図8に示すように、経路を生成するステップは、グリッドウェーブ801を発生して、前記移動ロボット100が位置する空間が存在するか否かを優先的に確認するウェーブ発生ステップをさらに含むことができる。例えば、前記移動ロボットは、サウンド、電磁気放射(例えば、LIDARセンサからの放出)、またはその他、ウェーブを放出し、前記ウェーブの反射が受信されるか、受信されない領域を探知できる。
【0200】
制御部350は、グリッドウェーブが至らない空間(例えば、反射が受信される領域)は前記移動ロボットが位置できない空間と判断し、前記グリッドウェーブが至る空間(例えば、反射が受信される領域)内でのみ経路を生成できる。
【0201】
例えば、障害物802、803によってウェーブが切れて第1の空間804にグリッドウェーブ801が至らないことができる。すると、第1の空間内での経路生成はなされないことができる。
【0202】
制御部350は、グリッドウェーブが至らない空間は、前記移動ロボットが位置できない空間と判断し、グリッドウェーブが至らない空間にある第1の領域601と第3の領域603との間に線分を表示するイメージ処理ステップ(S303)を経ないことができる。すなわち、制御部350は、グリッドウェーブが至らない空間で境界線を認識できないことができる。
【0203】
グリッドマップアップデートステップ(S700)は、計画された経路に沿って移動しながら前記グリッドマップをアップデートするステップであることができる。最適の境界線(NBV)の中心点までの計画された経路に沿って移動するが、予め設定された距離前まで移動することができる。例えば、最適の境界線(NBV)の中心点前の1mまでのみ移動することができる。
【0204】
ライダーセンサ175は、11mのセンシング半径を有することができる。したがって、最適の境界線(NBV)の中心点の終端まで行くことは不要な作業であることができる。予め設定された距離前までのみ移動して移動時間を減らし、効率的なマップ生成を行うことができる。
【0205】
移動ロボット100は、最適の境界線(NBV)から予め設定された距離前まで移動しながらセンシングした前記ライダーデータに基づいて前記グリッドマップをアップデートすることができる。
【0206】
移動ロボット100は、アップデートされたグリッドマップを再度イメージ処理し、境界線を認識し、最適の境界線を選択して経路計画及びマップアップデートする過程を繰り返すことができる。
【0207】
移動ロボット100は、アップデートされたマップで1つ以上の境界線が認識されないと判断されれば、マップ生成を完了(S800)し、アップデートされたマップを格納部305に格納することができる。
【0208】
図6~
図7は、本発明の実施形態に係るグリッドマップに対するイメージ処理ステップ(S300)を詳細に示す図である。
【0209】
図6に示すように、グリッドマップに対するイメージ処理ステップ(S300)は、グリッドマップの領域を区分するステップ(S301)、区分された領域に対して色相を介してイメージ処理をするステップ(S302)、及び第1の領域と第3の領域との間に線分を介してイメージ処理するステップ(S303)を含むことができる。
【0210】
グリッドマップの領域を区分するステップ(S301)は、グリッドマップ生成ステップ(S200)で生成されたグリッドマップを複数の領域に区分することができる。センサ部370がセンシングした結果、空いた空間であれば、第1の領域701、センサ部370がセンシングした結果、障害物が存在する空間であれば、第2の領域702、センサ部370がセンシングしていない未探索空間であれば、第3の領域703に区分することができる。前記領域は、より様々であることができる。
【0211】
区分された領域に対して色相を介してイメージ処理をするステップ(S302)は、各領域別の色相を異なるように表示するものであることができる。前記イメージ処理は、各領域に存在するセルに色相を表示するものであることができる。この場合、第1の領域701と第3の領域703との色相差は、他の領域の色相差より大きいことができる。明度差を介してのイメージ処理も含むことができる。
【0212】
例えば、グレースケール(Grey scale)を介して各領域を区分できる。
図7に示すように、第1の領域701は、白色、第2の領域702は、灰色、第3の領域703は、黒色で表示すれば、第1の領域701と第3の領域703との明度差が他の領域の明度差より大きいことができる。
【0213】
第1の領域701と第3の領域703との間に線分710、720、730を介してイメージ処理するステップ(S303)は、第1の領域701と第3の領域703との間を区分する線分を描く過程であることができる。
【0214】
図7に示すように、白色処理された第1の領域701と黒色処理された第3の領域703との間に合計3個の境界が生じ、境界に線分710、720、730を表示するイメージ処理ステップ(S303)を経ることができる。制御部350は、前記線分710、720、730を各々第1の境界線711、第2の境界線721、及び第3の境界線731と認識することができる。
【0215】
線分を表示するイメージ処理ステップ(S303)は、境界線の長さと前記移動ロボット100の幅とを比較するステップをさらに含むことができる。境界線の長さが移動ロボット100の幅より短ければ、当該境界線は、線分を表示するイメージ処理ステップ(S303)を省略することができる。
【0216】
移動ロボット100の幅より長さが長い境界線だけを抽出して、前記線分を表示するイメージ処理を行うことができる。これにより、移動ロボット100が移動できる空間だけを目標と設定して効率的なマップ生成を行うことができるという効果がある。
【0217】
線分を表示するイメージ処理ステップ(S303)は、グリッドウェーブを発生して移動ロボット100が位置する空間が存在するか否かを確認するウェーブ発生ステップをさらに含むことができる。
【0218】
制御部350は、グリッドウェーブが至らない空間を前記移動ロボットが位置できない空間と判断し、前記グリッドウェーブが至らない空間の境界線は、線分を表示するイメージ処理ステップ(S303)を経ないことができる。これにより、移動ロボット100が移動できる空間だけを探索しながら効率的なマップ生成を行うことができるという効果がある。
【0219】
図9a~
図9fは、本発明の実施形態に係るマップ生成過程を示す図である。
【0220】
図9aから
図9b、
図9c、
図9d、
図9e、及び
図9fは、時間の流れによって探索された空いた空間である第1の領域901、探索された障害物が存在する空間である第2の領域902、及び未探索された空間である第3の領域903が変化される様子を分かることができる。
【0221】
第1の領域901は、白色、第2の領域902は、灰色、第3の領域903は、黒色で表示されることができ、第1の領域901と第3の領域903との間の線分(F1、F2、F3)は、境界線と認識されることができる。
【0222】
図9aは、移動ロボット100が探索を始める直前のステップを示すことができる。センシングを始める前であるから、黒色の第3の領域903のみ存在することができる。
【0223】
図9bは、移動ロボット100が探索を始めたステップを示すことができる。ライダーセンサの場合、センシング半径が11mであることができる。ライダーセンサを介して生成したグリッドマップをイメージ処理すれば、白色の第1の領域901、灰色の第2の領域902、黒色の第3の領域903のように区域が区分され得る。
【0224】
また、グリッドマップをイメージ処理する過程を介して、第1の境界線F1、第2の境界線F2、第3の境界線F3を認識できる。最適の境界線(NBV)は、コスト値の最も高い境界線であることができる。例えば、境界線の長さが最も長い第1の境界線F1が最適の境界線として選択されることができる。
【0225】
次に、制御部350は、第1の境界線F1の中心点まで経路計画を立てることができる。この場合、グリッドウェーブを介して優先的に移動ロボット100が位置できる空間が存在するか判断することができる。
【0226】
図9cは、移動ロボット100が計画された経路に沿って移動しながらセンシングしたデータに基づいてグリッドマップをアップデートしたステップを示すことができる。アップデートされたグリッドマップをイメージ処理すれば、白色の第1の領域901、灰色の第2の領域902、黒色の第3の領域903のように区域が区分され得る。
【0227】
また、グリッドマップをイメージ処理する過程を介して、第1の境界線F1、第2の境界線F2、第3の境界線F3を認識できる。この場合、第1の領域901と第3の領域903との間の移動ロボット100の幅より狭い第4の境界F4が存在しうる。制御部350は、第4の境界F4に線分を表示するイメージ処理ステップ(S303)を省略することができる。したがって、第4の境界F4は、境界線として認識されないことができる。
【0228】
最適の境界線(NBV)は、コスト値の最も高い境界線であることができる。例えば、境界線の長さが最も長い第1の境界線F1が最適の境界線として選択されることができる。
【0229】
次に、制御部350は、第1の境界線F1の中心点まで経路計画を立てることができる。この場合、グリッドウェーブを介して優先的に移動ロボット100が位置できる空間が存在するか判断することができる。
【0230】
図9dは、移動ロボット100が計画された経路に沿って移動しながらセンシングしたデータに基づいてグリッドマップをアップデートしたステップを示すことができる。アップデートされたグリッドマップをイメージ処理すれば、白色の第1の領域901、灰色の第2の領域902、黒色の第3の領域903のように区域が区分され得る。
【0231】
また、グリッドマップをイメージ処理する過程を介して、第2の境界線F2、第3の境界線F3を認識できる。最適の境界線(NBV)は、コスト値の最も高い境界線であることができる。例えば、境界線の長さが最も長い第2の境界線F2が最適の境界線として選択されることができる。
【0232】
ライダーセンサのセンシング半径は、11mであることができる。したがって、第2の境界線F2の中心点に経路計画を介して移動しながら第3の境界線F3の位置までライダーデータを収集できる。つまり、移動ロボット100は、ライダーセンサを介して第3の境界線F3の位置まで行かずにグリッドマップを生成でき、効率的なマップ生成を行うことができる。
【0233】
次に、制御部350は、第2の境界線F2の中心点まで経路計画を立てることができる。この場合、グリッドウェーブを介して優先的に移動ロボット100が位置できる空間が存在するか判断することができる。
【0234】
図9eは、移動ロボット100が計画された経路に沿って移動しながらセンシングしたデータに基づいてグリッドマップをアップデートしたステップを示すことができる。アップデートされたグリッドマップをイメージ処理すれば、白色の第1の領域901、灰色の第2の領域902、黒色の第3の領域903のように区域が区分され得る。
【0235】
また、グリッドマップをイメージ処理する過程を介して、第2の境界線F2を認識できる。境界線の1つであるから、当該境界線は、最適の境界線(NBV)であることができる。次に、制御部350は、第2の境界線F2の中心点まで経路計画を立てることができる。この場合、グリッドウェーブを介して優先的に移動ロボット100が位置できる空間が存在するか判断することができる。
【0236】
図9fは、移動ロボット100が計画された経路に沿って移動しながらセンシングしたデータに基づいてグリッドマップ生成を完了したステップを示すことができる。
【0237】
グリッドマップをイメージ処理すれば、白色の第1の領域901、灰色の第2の領域902、黒色の第3の領域903のように区域が区分され得る。この場合、第1の領域901と第3の領域903との間の境界線がそれ以上存在しないことができる。制御部350は、マップ生成を完了し、アップグレードされたグリッドマップを格納部305に格納することができる。
【0238】
本発明に係る移動ロボットは、上記したように説明された実施形態等の構成と方法が限定されるように適用され得るものでなく、前記実施形態等は、様々な変形がなされ得るように各実施形態等の全部または一部が選択的に組み合わせられて構成されることもできる。
【0239】
同様に、特定の順序で図面で動作を描写しているが、これは、望ましい結果を得るために、図示されたその特定の順序や順次的な順序どおりにそのような動作を行うべきであるとか、全ての図示された動作が行われるべきであるものと理解されてはならない。特定の場合、マルチタスキングと並列プロセシングが有利でありうる。
【0240】
一方、本発明の実施形態に係る移動ロボットの制御方法は、プロセッサが読み取り可能な記録媒体にプロセッサが読み取り可能なコードとして実現することが可能である。プロセッサが読み取り可能な記録媒体は、プロセッサにより読み取り可能なデータが格納されるあらゆる種類の記録装置を含む。また、インターネットを介しての送信などのようなキャリアウェーブの形態で実現されることも含む。また、プロセッサが読み取り可能な記録媒体は、ネットワークで連結されたコンピュータシステムに分散されて、分散方式でプロセッサが読み取り可能なコードが格納され、実行されることができる。
【0241】
また、以上では、本発明の望ましい実施形態について図示し、説明したが、本発明は、上述した特定の実施形態に限定されず、請求の範囲で請求する本発明の要旨を逸脱することなく、当該発明の属する技術分野における通常の知識を有する者により様々な変形実施が可能であることはもちろんであり、このような変形実施等は、本発明の技術的思想や展望から個別的に理解されてはならないであろう。
【0242】
本発明によれば、次のような1つまたはそれ以上の効果を得ることができる。
【0243】
第1に、イメージ処理を介しての境界線を認識することで、いつも同一かつ正確な結果が抽出されるという効果がある。
【0244】
第2に、マップをイメージ化してアルゴリズムを適用するので、いかなるセンサを介して作られたマップであろうとも、マップの種類に関係なく、全て適用可能であるという効果がある。
【0245】
第3に、イメージ処理を介して探した境界線が、ロボットが実際に到達できる境界線であるか経路計画を介して判断することで、虚数の境界線を削除して効率的に実質的な全体環境の地図を作ることができるという効果がある。
【0246】
第4に、最適の境界線を選択するとき、ユーザに加重値を選択させて、ユーザ便宜性が増加するという効果がある。
【0247】
本発明の効果は、以上で言及した効果に制限されず、言及されていないさらに他の効果は、請求の範囲の記載から当業者に明確に理解され得るであろう。
【0248】
本発明は、イメージ処理を介してグリッドマップの複雑度に関係なく、探索された空の領域と未探索領域との間の境界線を速かに発見するための技術を提供する。
【0249】
本発明は、さらに特徴点の不確実度を使用するよりは、未探索された領域と探索された空の領域との間の境界線を探索し、複数の境界線のうち、最適の境界線(次の最善のビュー(next best view:NBV))を探索し、経路計画を行うことにより、マップを効率的に生成するための移動ロボット技術を提供する。
【0250】
本発明の目的は、移動ロボットのマップ生成過程でライダー(light detection and ranging:LiDAR))センサ、超音波センサ、バンパー、3次元センサなどを用いて障害物の確率情報を含める占有グリッドマップ(occupancy grid map)を生成することにある。
【0251】
本発明の課題は、以上で言及した課題に制限されず、言及されていないさらに他の課題は、下記の記載から当業者に明確に理解され得るであろう。
【0252】
一側面において、移動ロボットが提供される。前記移動ロボットは、ライダーセンサを介して外部の幾何学的形態、物体間の距離などに関するライダーデータを生成するように構成されたセンサ部と、本体を移動させるように構成された駆動部と、前記ライダーデータに基づいてセル単位のグリッドマップを生成するように構成された制御部とを備える。
【0253】
さらに他の側面において、移動ロボットが提供される。前記移動ロボットは、グリッドマップを第1の領域、第2の領域、及び第3の領域に区分し、前記第1の領域と前記第3の領域との間に少なくとも1つの境界線を生成するためのイメージ処理を行い、境界線を識別し、1つ以上の境界線が存在する場合、最適の境界線を選択し、前記最適の境界線への経路計画を行い、生成された経路に沿って移動しながら前記グリッドマップをアップデートするように構成された制御機を備える。
【0254】
さらに他の側面において、移動ロボットが提供される。前記移動ロボットは、各領域の色相を異なるように表すものの、前記第1の領域の色相と前記第3の領域の色相との差を最も大きく表し、前記第1の領域と前記第3の領域との間に線分を表示するイメージ処理を介して前記境界線を生成するように構成された制御機を備える。
【0255】
さらに他の側面において、移動ロボットが提供される。前記移動ロボットは、複数の境界線のうち1つの近所から取得された環境情報である第1情報及び移動ロボットの現在位置から境界線のうち、いずれか1つまでの距離情報である第2情報を介して計算されたコスト値に基づいて、コスト値が最大である境界線を最適の境界線として選択するように構成された制御機を備える。
【0256】
さらに他の側面において、移動ロボットが提供される。前記移動ロボットは、ライダーセンサとともに異種センサを活用して取得された異種データを使用して補完することにより、環境で変化し、マップ上での位置を正確に識別するように強靭なマップを生成できる。
【0257】
他の実施形態等の詳細事項は、詳細な説明及び図面に含まれる。
【0258】
ある要素またはレイヤがさらに他の要素またはレイヤ「上」にあることと記述される場合に、前記要素またはレイヤは、さらに他の要素またはレイヤの真上または中間にある要素またはレイヤの上にあることと理解されるべきである。それに対し、ある要素またはレイヤがさらに他の要素またはレイヤの「真上」にあることと記述される場合には、中間の要素またはレイヤが存在しない。本明細書において使用されるにあたり、用語「及び/又は」は、関連して列挙された1つまたはそれ以上の項目のいかなる全ての組み合わせも含む。
【0259】
本明細書において、第1、第2、第3などの用語が様々な要素、構成品、領域、レイヤ、及び/又は部分を記述するために使用され得るが、このような要素、構成品、領域、レイヤ、及び/又は部分がこのような用語に限定されてはならない。このような用語は、1つの要素、構成品、領域、レイヤ、または部分を他の要素、構成品、領域、レイヤ、または部分から区分するための用途にのみ使用される。したがって、第1要素、構成品、領域、レイヤ、または部分は、本発明の思想から逸脱しないながら、第2要素、構成品、領域、レイヤ、または部分と称することができる。
【0260】
「下部」、「上部」などのように、空間的な関係に関する用語は、本明細書において1つの要素または特徴が図面内でさらに他の要素(等)または特徴(等)と有する関係を説明するための技術の便宜のために使用されることができる。このような空間的な関係に関する用語は、図面で描写された配置と合わせて使用されるか、作動される装置の互いに異なる配置を含む意図で使用されたことを理解すべきであろう。例えば、図示された装置がひっくり返される場合、他の要素または特徴に対して「下部」と記述された要素は、これらの他の要素または特徴に対して「上部」に配置されるであろう。したがって、例示的用語「下部」は、上と下の両方向を含むことができる。このような装置は、他の方式で配置されることができ(90度回転されるか、他の方向に)、本明細書において使用された空間的な関係に関する用語は、これにより解釈されなければならない。
【0261】
本明細書において使用された用語は、特定の実施形態を説明するための目的を有するだけであり、本発明を制限する意図を有するものではない。本明細書において使用される「1つ」及び「前記」などの用語は、文脈上、そうでないことが明確な場合を除いては、複数の形態も含むように意図されたものである。「含む」及び/又は「備える」のような用語は、本明細書において使用されるとき、記述された特徴、整数、ステップ、作動要素、及び/又は構成品の存在を規定するが、1つまたはそれ以上の特徴、整数、ステップ、作動要素、構成品、及び/又はこれらの群の存在または追加を排除するものではないということも理解されるべきである。
【0262】
本発明の実施形態等が、本明細書において理想的な実施形態等の概略的例示である断面(及び中間構造)の例示を参照して記述された。これにより、例えば、製造技術及び/又は公差により例示された形状から変化が期待され得る。したがって、本発明の実施形態等は、本明細書において例示された領域の特定の形状に限定されることと推論されてはならず、例えば、製造技術によって発生する形状での変化を含むことと解釈されなければならない。
【0263】
本明細書において使用するために定義されたあらゆる用語(技術的用語と科学的用語を含む)は、本発明に属する分野における通常の知識を有した者が通常的に理解することと同じ意味を有する。通常的に使用される辞書に定義されるような用語は、さらに、関連した技術分野の文脈で有する意味と一貫した意味を有することと理解されるべきであり、本明細書において明示的に定義されない限り、理想的であるか、過度に形式的な意味と解釈されてはならない。
【0264】
本明細書において「一実施形態」、「1つの実施形態」、「例示的実施形態」などと記述されたことは、当該実施形態と関連して記述された特定の特徴、構造、または特性が本発明の少なくとも1つの実施形態に含まれるということを意味する。このような文句が本明細書内の種々の所で表れることが必ずしも同じ実施形態を参照することではない。また、特定の特徴、構造、または特性がある実施形態と関連して記述される場合に、これは、当業者の理解範囲内でこのような特徴、構造、または特性が実施形態の他のものなどと連関して記述される旨と理解されるべきである。
【0265】
実施形態等が本発明に対する複数の例示的実施形態を参照して記述されたが、他の多数の修正と実施形態等が本発明の分野における通常の知識を有する者により容易に考案されることができ、これらは、全て本発明の原理の思想と範囲内にあることと理解されるべきである。とりわけ、本発明、図面、及び添付された請求項等の範囲内で発明対象の構成部品及び/又は配置に対する変更と修正がなされ得る。構成部品及び/又は配置に対する上記変更と修正に加えて、代案的な使用も当業者に自明であろう。