(57)【特許請求の範囲】
【請求項１】
走行距離計、ジャイロスコープ、およびカメラを含む移動ロボットの地図作成方法であって、
Ｓ１：前記移動ロボットの作業エリアにデカルト座標系を確立し、
Ｓ２：前記移動ロボットは前記作業エリアで弓形のルートで走行し、
Ｓ３：前記移動ロボットの点Ｐｉでのキーフレーム画像を取得し、この画像と前記点Ｐｉの座標を保存し、
Ｓ４：前記移動ロボットの点Ｐ'ｉでの画像を取得し、ここで、前記点Ｐ'ｉの横座標または縦座標は前記点Ｐｉと同じであり、
Ｓ５：ＯＲＢアルゴリズムに従って、前記点Ｐｉと前記点Ｐ'ｉで取得された画像に対して特徴抽出とマッチングを実行し、
Ｓ６：前記マッチングの結果に応じて、前記移動ロボットの前記点Ｐ'ｉでの座標、前記走行距離計、および／または前記ジャイロスコープのデータを修正して保存し、
Ｓ７：前記作業エリア内の地図作成が完了するまで、前記ステップＳ３〜Ｓ６を繰り返す、
ステップを含み、
ここで、前記ステップＳ６は、前記点Ｐｉと前記点Ｐ'ｉで取得された画像のピクセルオフセットによって、実際の物理的オフセットと角度オフセットを逆算出し、結果を前記移動ロボットにフィードバックし、前記移動ロボットがこの結果に従って前記点Ｐ'ｉの座標および前記走行距離計と前記ジャイロスコープのデータを修正することを含む、
移動ロボットの地図作成方法。
【請求項２】
前記ステップＳ２は、
Ｓ２０１：前記移動ロボットは、Ｘ軸の正方向に沿って直進し、
Ｓ２０２：前記移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップ２０３に進み、そうでなければステップＳ２０６に進み、
Ｓ２０３：前記移動ロボットは前記障害物に沿ってＹ軸の正方向に走行し、
Ｓ２０４：前記移動ロボットのＹ軸上の座標量の変化が閾値Ｍよりも大きいかどうかを判断し、そうであればステップＳ２０８に進み、そうでなければステップＳ２０５に進み、
Ｓ２０５：前記移動ロボットのＹ軸座標が前記ステップＳ２０１におけるＹ軸座標と同じであるかどうかを判断し、そうであれば前記ステップＳ２０１に戻り、そうでなければ前記ステップＳ２０３に戻り、
Ｓ２０６：前記移動ロボットの直進距離が閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２０７に進み、そうでなければ前記ステップＳ２０１に戻り、
Ｓ２０７：前記移動ロボットは、Ｙ軸の正方向に前記閾値Ｍの距離を直線的に平行移動すると、ステップＳ２０８に進み、
Ｓ２０８：前記移動ロボットは、Ｘ軸の負方向に沿って直進し、
Ｓ２０９：前記移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップＳ２１０に進み、そうでなければステップＳ２１３に進み、
Ｓ２１０：前記移動ロボットは前記障害物に沿ってＹ軸の正方向に走行し、
Ｓ２１１：前記移動ロボットのＹ軸上の座標量の変化が前記閾値Ｍよりも大きいかどうかを判断し、そうであれば前記ステップＳ２０１に戻り、そうでなければステップＳ２１２に進み、
Ｓ２１２：前記移動ロボットのＹ軸座標が前記ステップＳ２０８におけるＹ軸座標と同じであるかどうかを判断し、そうであれば前記ステップＳ２０８に戻り、そうでなければステップ前記Ｓ２１０に戻り、
Ｓ２１３：前記移動ロボットの直進距離が前記閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２１４に進み、そうでなければ前記ステップＳ２０８に戻り、
Ｓ２１４：前記移動ロボットがＹ軸の正方向に前記閾値Ｍの距離を直線的に平行移動すると、前記ステップＳ２０１に戻る、
サブステップを含む、請求項１に記載の移動ロボットの地図作成方法。
【請求項３】
前記移動ロボットはカバレッジ型移動ロボットであり、前記閾値Ｍの範囲は０．２ｍ〜０．３ｍであり、前記閾値Ｎの範囲は６ｍ〜８ｍである、請求項２に記載の移動ロボットの地図作成方法。
【請求項４】
前記ステップＳ３において、前記移動ロボットは、所定距離ごとに、前記キーフレーム画像とその対応する前記点Ｐｉの座標を保存する、請求項１〜３のいずれか一項に記載の移動ロボットの地図作成方法。
【請求項５】
隣接する前記キーフレーム画像を収集する前記点Ｐｉ間の最小距離は０．６ｍである、請求項１〜４のいずれか一項に記載の移動ロボットの地図作成方法。
【請求項６】
Ｘ座標またはＹ座標が同じである前記点Ｐｉと前記点Ｐ'ｉとの距離は０．３ｍ〜０．６ｍである、請求項１〜５のいずれか一項に記載の移動ロボットの地図作成方法。
【請求項７】
前記画像は、前記移動ロボットの作業環境の天井画像または地面画像である、請求項１〜６のいずれか一項に記載の移動ロボットの地図作成方法。
【請求項８】
請求項１〜７のいずれか一項に記載の方法によって作成された地図に基づく移動ロボットの経路計画方法であって、
Ｓ'１：前記移動ロボットは初期位置から前記点Ｐｉまたは前記点Ｐ'ｉに移動し、
Ｓ'２：前記点Ｐｉまたは前記点Ｐ'ｉで前記走行距離計または／および前記ジャイロスコープのデータを修正し、
Ｓ'３：最終目標点に到着するまで、前記ステップＳ'１〜Ｓ'２を繰り返す、
ステップを含む、移動ロボットの経路計画方法。
【請求項９】
前記ステップＳ'１は、
Ｓ'１１：前記移動ロボットの前記初期位置の座標と前記最終目標点の座標を取得し、
Ｓ'１２：前記初期位置の座標と前記最終目標点の座標によって形成される矩形エリアにおいて前記点Ｐｉまたは前記点Ｐ'ｉがあるかどうかを判断し、そうであればステップＳ'１３に進み、そうでなければステップＳ'１４に進み、
Ｓ'１３：前記移動ロボットが前記矩形エリア内の前記初期位置に最も近い前記点Ｐｉまたは前記点Ｐ'ｉに到着すると、ステップＳ'１５に進み、
Ｓ'１４：前記移動ロボットが前記作業エリア内の前記初期位置に最も近い前記点Ｐｉまたは前記点Ｐ'ｉに到着すると、ステップＳ'１５に進み、
Ｓ'１５：現在位置の座標と前記最終目標点の座標によって形成される矩形エリアにおいて前記点Ｐｉまたは前記点Ｐ'ｉがあるかどうかを判断し、そうであれば前記ステップＳ'１３に戻り、そうでなければ前記最終目標点に移動する、
サブステップを含む、請求項８に記載の移動ロボットの経路計画方法。
【請求項１０】
前記ステップＳ'２は、
Ｓ'２１：前記移動ロボットの前記点Ｐｉまたは前記点Ｐ'ｉでの画像を取得し、
Ｓ'２２：前記ＯＲＢアルゴリズムに従って前記画像に対して特徴抽出を実行し、前記点Ｐｉまたは前記点Ｐ'ｉでの保存された画像と、特徴マッチングを実行し、
Ｓ'２３：前記マッチングの結果に応じて、前記移動ロボットの前記点Ｐｉまたは前記点Ｐ'ｉでの前記走行距離計または／および前記ジャイロスコープのデータを修正する、
サブステップを含む、請求項８または９に記載の移動ロボットの経路計画方法。
【請求項１１】
前記最終目標点は、前記移動ロボットの未通過エリア、充電スタンド位置、および前記移動ロボットの開始出発点を含む、請求項８または９に記載の移動ロボットの経路計画方法。
【請求項１２】
走行距離計、ジャイロスコープ、およびカメラを含む移動ロボットの地図作成方法であって、
Ｓ１：前記移動ロボットの作業エリアにデカルト座標系を確立し、
Ｓ２：前記移動ロボットは前記作業エリアで弓形のルートで走行し、
Ｓ３：前記移動ロボットの点Ｐｉでのキーフレーム画像を取得し、この画像と前記点Ｐｉの座標を保存し、
Ｓ４：前記移動ロボットの点Ｐ'ｉでの画像を取得し、ここで、前記点Ｐ'ｉの横座標または縦座標は前記点Ｐｉと同じであり、
Ｓ５：ＯＲＢアルゴリズムに従って、前記点Ｐｉと前記点Ｐ'ｉで取得された画像に対して特徴抽出とマッチングを実行し、
Ｓ６：前記マッチングの結果に応じて、前記移動ロボットの前記点Ｐ'ｉでの座標、前記走行距離計、および／または前記ジャイロスコープのデータを修正して保存し、
Ｓ７：前記作業エリア内の地図作成が完了するまで、前記ステップＳ３〜Ｓ６を繰り返す、
ステップを含み、
ここで、前記ステップＳ２は、
Ｓ２０１：前記移動ロボットは、Ｘ軸の正方向に沿って直進し、
Ｓ２０２：前記移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップ２０３に進み、そうでなければステップＳ２０６に進み、
Ｓ２０３：前記移動ロボットは前記障害物に沿ってＹ軸の正方向に走行し、
Ｓ２０４：前記移動ロボットのＹ軸上の座標量の変化が閾値Ｍよりも大きいかどうかを判断し、そうであればステップＳ２０８に進み、そうでなければステップＳ２０５に進み、
Ｓ２０５：前記移動ロボットのＹ軸座標が前記ステップＳ２０１におけるＹ軸座標と同じであるかどうかを判断し、そうであれば前記ステップＳ２０１に戻り、そうでなければ前記ステップＳ２０３に戻り、
Ｓ２０６：前記移動ロボットの直進距離が閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２０７に進み、そうでなければ前記ステップＳ２０１に戻り、
Ｓ２０７：前記移動ロボットは、Ｙ軸の正方向に前記閾値Ｍの距離を直線的に平行移動すると、ステップＳ２０８に進み、
Ｓ２０８：前記移動ロボットは、Ｘ軸の負方向に沿って直進し、
Ｓ２０９：前記移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップＳ２１０に進み、そうでなければステップＳ２１３に進み、
Ｓ２１０：前記移動ロボットは前記障害物に沿ってＹ軸の正方向に走行し、
Ｓ２１１：前記移動ロボットのＹ軸上の座標量の変化が前記閾値Ｍよりも大きいかどうかを判断し、そうであれば前記ステップＳ２０１に戻り、そうでなければステップＳ２１２に進み、
Ｓ２１２：前記移動ロボットのＹ軸座標が前記ステップＳ２０８におけるＹ軸座標と同じであるかどうかを判断し、そうであれば前記ステップＳ２０８に戻り、そうでなければ前記ステップＳ２１０に戻り、
Ｓ２１３：前記移動ロボットの直進距離が前記閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２１４に進み、そうでなければ前記ステップＳ２０８に戻り、
Ｓ２１４：前記移動ロボットがＹ軸の正方向に前記閾値Ｍの距離を直線的に平行移動すると、前記ステップＳ２０１に戻る、
サブステップを含み、
前記移動ロボットはカバレッジ型移動ロボットであり、前記閾値Ｍの範囲は０．２ｍ〜０．３ｍであり、前記閾値Ｎの範囲は６ｍ〜８ｍであり、
前記ステップＳ３において、前記移動ロボットは、所定の間隔ごとに、前記キーフレーム画像とその対応する前記点Ｐｉの座標を保存し、
前記画像は、前記移動ロボットの作業環境の天井画像または地面画像であり、
ここで、前記ステップＳ６は、前記点Ｐｉと前記点Ｐ'ｉで取得された画像のピクセルオフセットによって、実際の物理的オフセットと角度オフセットを逆算出し、結果を前記移動ロボットにフィードバックし、前記移動ロボットがこの結果に従って前記点Ｐ'ｉの座標および前記走行距離計と前記ジャイロスコープのデータを修正することを含む、移動ロボットの地図作成方法。
【請求項１３】
請求項１２に記載の方法によって作成された地図に基づく移動ロボットの経路計画方法であって、
Ｓ'１：前記移動ロボットは初期位置から前記点Ｐｉまたは前記点Ｐ'ｉに移動し、
Ｓ'２：前記点Ｐｉまたは前記点Ｐ'ｉで前記走行距離計または／および前記ジャイロスコープのデータを修正し、
Ｓ'３：最終目標点に到着するまで、前記ステップＳ'１〜Ｓ'２を繰り返す、
ステップを含み、
前記Ｓ'１は、
Ｓ'１１：前記移動ロボットの前記初期位置の座標と前記最終目標点の座標を取得し、
Ｓ'１２：前記初期位置の座標と前記最終目標点の座標によって形成される矩形エリアにおいて前記点Ｐｉまたは前記点Ｐ'ｉがあるかどうかを判断し、そうであればステップＳ'１３に進み、そうでなければステップＳ'１４に進み、
Ｓ'１３：前記移動ロボットは、前記矩形エリア内の前記初期位置に最も近い前記点Ｐｉまたは前記点Ｐ'ｉに到着すると、ステップＳ'１５に進み、
Ｓ'１４：前記移動ロボットは、前記作業エリア内の前記初期位置に最も近い前記点Ｐｉまたは前記点Ｐ'ｉに到着すると、ステップＳ'１５に進み、
Ｓ'１５：現在位置の座標と前記最終目標点の座標によって形成される矩形エリアにおいて前記点Ｐｉまたは前記点Ｐ'ｉがあるかどうかを判断し、そうであれば前記ステップＳ'１３に戻り、そうでなければ前記最終目標点に移動する、
サブステップを含み、
前記最終目標点は、前記移動ロボットの未通過エリア、充電スタンドの位置、および前記移動ロボットの開始出発点を含む、移動ロボットの経路計画方法。
【請求項１４】
請求項１２に記載の方法によって作成された地図に基づく移動ロボットの経路計画方法であって、
Ｓ'１：前記移動ロボットは初期位置から前記点Ｐｉまたは前記点Ｐ'ｉに移動し、
Ｓ'２：前記点Ｐｉまたは前記点Ｐ'ｉで前記走行距離計または／および前記ジャイロスコープのデータを修正し、
Ｓ'３：最終目標点に到着するまで、前記ステップＳ'１〜Ｓ'２を繰り返す、
ステップを含み、
前記ステップＳ'２は、
Ｓ'２１：前記移動ロボットの前記点Ｐｉまたは前記点Ｐ'ｉでの画像を取得し、
Ｓ'２２：前記ＯＲＢアルゴリズムに従って前記画像に対して特徴抽出を実行し、前記点Ｐｉまたは前記点Ｐ'ｉでの保存された画像と、特徴マッチングを実行し、
Ｓ'２３：前記マッチングの結果に応じて、前記移動ロボットの前記点Ｐｉまたは前記点Ｐ'ｉでの前記走行距離計または／および前記ジャイロスコープのデータを修正する、
サブステップを含む、移動ロボットの経路計画方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動ロボットの分野に関し、特に慣性ナビゲーションシステムに基づく移動ロボットの地図作成および経路計画に関する。
【背景技術】
【０００２】
現在、市販のサービスロボットは、無人の条件下で特定のエリアで特定のタスクを自動的に実行することができるため、人々に利便性をもたらし、市場の見通しがよい。
【０００３】
サービスロボットの代表として、掃除ロボットは現在急速に発展しており、市場の需要が膨大である。ほとんどの既存の掃除ロボットは、慣性ナビゲーションシステムに基づいて、位置決め、地図作成、およびナビゲーションを行う。ただし、慣性ナビゲーションシステムの部材（ジャイロスコープと走行距離計）のエラーが作業時間の経過とともに累積することにより、大きなエラーが発生するので、掃除ロボットの位置決めが不正確になり、地図情報と実際の差が大きくなり、経路計画が実行不能となるなどの欠陥が存在する恐れがある。
【０００４】
また、掃除ロボットの作業環境の複雑さ、走行機構とタスクとの間の摩擦係数の変化、および走行機構のスリップ（またはトラッピング）に起因する誤差も、慣性ナビゲーションシステムの精度に影響を与える。
【発明の概要】
【０００５】
本発明の目的の１つは、背景技術の欠陥を克服するために、移動ロボットの地図作成方法を提供することである。具体的には、以下の通りである。
【０００６】
移動ロボットの地図作成方法であって、上記移動ロボットは、走行距離計、ジャイロスコープ、およびカメラを含む。上記方法は、以下のステップを含む：Ｓ１：移動ロボットの作業エリアにデカルト座標系を確立する；Ｓ２：移動ロボットは作業エリアで弓形に走行する；Ｓ３：移動ロボットの点Ｐｉでのキーフレーム画像を取得し、この画像と点Ｐｉの座標を保存する；Ｓ４：移動ロボットの点Ｐ'ｉでの画像を取得する；ここで、点Ｐ'ｉの横座標または縦座標は点Ｐｉと同じである；Ｓ５：ＯＲＢアルゴリズムに従って、点Ｐｉと点Ｐ'ｉで取得された画像に対して特徴抽出とマッチングを実行する；Ｓ６：マッチング結果に応じて、移動ロボットの点Ｐ'ｉでの座標、走行距離計、および／またはジャイロスコープのデータを修正して保存する；Ｓ７：作業エリア内の地図作成が完了するまで、ステップＳ３〜Ｓ６を繰り返す。
【０００７】
本発明の好ましい実施形態では、上記ステップＳ２は以下のサブステップを含む：Ｓ２０１：移動ロボットは、Ｘ軸の正方向に沿って直進する；Ｓ２０２：移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップ２０３に進み、そうでなければステップＳ２０６に進む；Ｓ２０３：移動ロボットは障害物に沿ってＹ軸の正方向に走行する；Ｓ２０４：Ｙ軸上の移動ロボットの座標量の変化が閾値Ｍよりも大きいかどうかを判断し、そうであればステップＳ２０８に進み、そうでなければステップＳ２０５に進む；Ｓ２０５：移動ロボットのＹ軸座標がステップＳ２０１と同じであるかどうかを判断し、そうであればステップＳ２０１に戻り、そうでなければステップＳ２０３に戻る；Ｓ２０６：移動ロボットの直進距離が閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２０７に進み、そうでなければステップＳ２０１に戻る；Ｓ２０７：移動ロボットは、Ｙ軸の正方向にＭを直線的に平行移動して、ステップＳ２０８に進む；Ｓ２０８：移動ロボットは、Ｘ軸の負方向に沿って直進する；Ｓ２０９：移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップＳ２１０に進み、そうでなければステップＳ２１３に進む；Ｓ２１０：移動ロボットは障害物に沿ってＹ軸の正方向に走行する；Ｓ２１１：Ｙ軸上の移動ロボットの座標量の変化が閾値Ｍよりも大きいかどうかを判断し、そうであればステップＳ２０１に戻り、そうでなければステップＳ２１２に進む；Ｓ２１２：移動ロボットのＹ軸座標がステップＳ２０８と同じであるかどうかを判断し、そうであればステップＳ２０８に戻り、そうでなければステップＳ２１０に戻る；Ｓ２１３：移動ロボットの直進距離が閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２１４に進み、そうでなければステップＳ２０８に戻る；Ｓ２１４：移動ロボットはＹ軸の正方向にＭを直線的に平行移動し、ステップＳ２０１に戻る。
【０００８】
さらに、本発明の具体的な実施例では、移動ロボットはカバレッジ型移動ロボットであり、Ｍの範囲は０．２ｍ〜０．３ｍであり、Ｎの範囲は６ｍ〜８ｍである。
【０００９】
さらに、本発明の好ましい実施形態では、上記ステップＳ３において、移動ロボットは、所定距離ごとに、キーフレーム画像とその対応する点Ｐｉの座標を保存する。
【００１０】
さらに、隣接する前記キーフレーム画像の収集点Ｐｉ間の最小距離は０．６ｍである。
【００１１】
さらに、上記Ｘ座標またはＹ座標が同じである点Ｐｉと点Ｐ'ｉとの距離は０．３ｍ〜０．６ｍである。
【００１２】
さらに、好ましくは、上記画像は移動ロボットの作業環境の天井画像または地面画像である。
【００１３】
本発明のもう一つの目的の１つは、背景技術の欠陥を克服するために、移動ロボットの経路計画方法を提供することである。具体的には、以下の通りである。
【００１４】
上記移動ロボットの地図作成方法によって作成された地図に基づく移動ロボットの経路計画方法であって、以下のステップを含む：Ｓ'１：移動ロボットは初期位置から点Ｐｉまたは点Ｐ'ｉに移動する；Ｓ'２：点Ｐｉまたは点Ｐ'ｉでの走行距離計または／およびジャイロスコープのデータを修正する；Ｓ'３：最終目標点に到着するまで、ステップＳ'１〜Ｓ'２を繰り返す。
【００１５】
さらに、本発明の具体的な実施例では、上記ステップＳ'１は以下のサブステップを含む：Ｓ'１１：移動ロボットの初期位置の座標と最終目標点の座標を取得する；Ｓ'１２：初期位置の座標と最終目標点の座標によって形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがあるかどうかを判断し、そうであればステップＳ'１３に進み、そうでなければステップＳ'１４に進む；Ｓ'１３：移動ロボットが矩形エリア内の初期位置に最も近い点Ｐｉまたは点Ｐ'ｉに到着すると、ステップＳ'１５に進む；Ｓ'１４：移動ロボットが作業エリア内の初期位置に最も近い点Ｐｉまたは点Ｐ'ｉに到着すると、ステップＳ'１５に進む；Ｓ'１５：現在位置の座標と最終目標点の座標によって形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがあるかどうかを判断し、そうであればステップＳ'１３に戻り、そうでなければ最終目標点に移動する。
【００１６】
さらに、本発明の具体的な実施例では、上記ステップＳ'２は以下のサブステップを含む：Ｓ'２１：移動ロボットの点Ｐｉまたは点Ｐ'ｉでの画像を取得する；Ｓ'２２：ＯＲＢアルゴリズムに従って画像に対して特徴抽出を実行し、点Ｐｉまたは点Ｐ'ｉでの保存された画像と、特徴マッチングを実行する；Ｓ'２３：マッチング結果に応じて、移動ロボットの点Ｐｉまたは点Ｐ'ｉでの走行距離計または／およびジャイロスコープのデータを修正する。
【００１７】
さらに、上記最終目標点は、移動ロボットの未通過エリア、充電スタンド位置、および移動ロボットの開始出発点を含む。
［技術効果］
【００１８】
従来技術と比べれば、本発明の技術的解決手段は以下の有益な効果を有する：
【００１９】
本発明は、画像マッチング技術（ＯＲＢアルゴリズム）に従って、地図作成過程における移動ロボットの座標と走行距離計および／またはジャイロスコープのデータを修正することによって、座標および角度の累積誤差を低減し、地図の精度を向上させる。
【図面の簡単な説明】
【００２０】
本発明の実施例に係る技術的解決手段をより明確に説明するために、実施例で使用される図面を以下に簡単に説明するが、以下の説明内容における図面は本発明の実施形態のいくつかの実施例であり、当業者は、創造的な努力なしに、これらの図面に基づいて他の図面を取得することもできる。
【図１】本発明に係る移動ロボットの地図作成方法の全体的なフローチャートである。
【図２】図１のステップＳ２の改善解決手段のフローチャートである。
【図３】本発明に係る移動ロボットの経路計画方法のフローチャートである。
【図４】図３のステップＳ'１の改善解決手段のフローチャートである。
【図５】図３のステップＳ'２の改善解決手段のフローチャートである。
【図６】本発明の実施例１に係る地図作成の概略図である。
【図７】図７は、図６の地図に基づく移動ロボットの経路計画図である。
【図８】本発明の実施例２に係る地図作成の概略図である。
【図９】図８の地図に基づく移動ロボットの経路計画図である。
【発明を実施するための形態】
【００２１】
本発明の実施例における技術的解決手段は、本発明の実施例における図面を参照して以下に明確かつ完全に説明される。説明された実施例は、本発明の実施例の一部にすぎず、すべての実施例ではないことは明らかである。当業者により本発明の実施例に基づいて創造的な努力なしに得られるすべての他の実施例も、本発明の範囲内に属する。
【００２２】
本発明に係る移動ロボットは、走行距離計、ジャイロスコープ、およびカメラを含む慣性ナビゲーションシステムに基づいている。ここで、走行距離計は移動ロボットの走行距離を取得するために使用され、ジャイロスコープは移動ロボットの走行角度を取得するために使用され、カメラは環境の画像情報を取得するために移動ロボットの下部または上部に設置される。
【００２３】
本発明における移動ロボットは、特に、屋内環境で動作するセキュリティパトロールロボットまたは掃除ロボット、特定の芝生エリアで動作する草刈りロボット、およびプールを清掃する清掃ロボットなど、指定された閉鎖エリアで動作するカバレッジ型ロボットである。
【００２４】
また、移動ロボットは、電源モジュール、走行モジュール、センサーモジュール、制御モジュール、記憶モジュール、および機能モジュールをさらに含む。電源モジュールは、動作中に移動ロボットに電力を供給するための充電式バッテリーである。走行モジュールは、作業エリア内で移動ロボットを移動させるための駆動モーターと走行輪を含む。センサーモジュールは、作業エリアの環境情報を受信して制御モジュールにフィードバックするために使用される。制御モジュールは、センサーモジュールによってフィードバックされた情報に従って移動ロボットの動きを制御するために使用される。記憶モジュールは、移動ロボットの制御プログラムと外部から取得されたセンサー情報を格納するために使用される。機能モジュールは、掃除ロボットの掃除モジュールや草刈りロボットの回転カッターホルダーなど、移動ロボットの特定機能を指す。
【００２５】
図１に示すように、本発明に係る移動ロボットによる地図作成のフローチャートである。
【００２６】
Ｓ１：移動ロボットの作業エリアにおいてデカルト座標系を確立する。
【００２７】
つまり、移動ロボットの作業エリアに横座標（Ｘ）と縦座標（Ｙ）で構成される直交座標系を確立して、開始作業点、作業エリアの一角、または充電スタンドを優先的に原点として使用する。
【００２８】
Ｓ２：移動ロボットは、作業エリアで弓形に走行する。
【００２９】
つまり、移動ロボットは、最初に障害物または作業エリアの境界に到達するまで、または所定の距離を走行するまで、特定の方向に沿って直進し、次にその方向に垂直な方向に沿って所定の距離を直進してから逆方向に走行し、作業エリアのカバレッジが完了するまで上記の過程を繰り返す。
【００３０】
図２に示すように、このステップの改善解決手段では、移動ロボットが作業を開始する位置を原点とし、移動ロボットが移動し始める方向をＸ軸の正方向とし、移動ロボットの移動方向に垂直な左側をＹ軸の正方向として、直交座標系を確立する。そして、下記の手順に従って作業エリアで弓形走行を完成させる：Ｓ２０１：移動ロボットはＸ軸の正方向に沿って直進する；Ｓ２０２：移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップ２０３に進み、そうでなければステップＳ２０６に進む；Ｓ２０３：移動ロボットは障害物に沿ってＹ軸の正方向に走行する。注意すべきことは、障害物に沿ってＹ軸の正方向に走行することは、障害物に遭遇したときに移動ロボットがＹ軸の正方向（すなわち、Ｙ軸の座標が増加する方向）に沿って走行することを意味する。障害物が湾曲または凸状構造である場合、移動ロボットは、障害物に沿って一定時間で走行した後、Ｙ軸の負方向（すなわち、Ｙ軸の座標が減少する方向）に沿って走行することがある；Ｓ２０４：移動ロボットのＹ軸上の座標量の変化が閾値Ｍより大きいかどうかを判断し、そうであればステップＳ２０８に進み、そうでなければステップＳ２０５に進む；Ｓ２０５：移動ロボットのＹ軸座標がステップＳ２０１と同じであるかどうかを判断し、そうであればステップＳ２０１に戻り、そうでなければステップＳ２０３に戻る；Ｓ２０６：移動ロボットの直進距離が閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２０７に進み、そうでなければステップＳ２０１に戻る；Ｓ２０７：移動ロボットはＹ軸の正方向にＭを直進した後にステップＳ２０８に進む；Ｓ２０８：移動ロボットはＸ軸の負方向に沿って直進する；Ｓ２０９：移動ロボットが障害物に遭遇したかどうかを判断し、そうであればステップＳ２１０に進み、そうでなければステップＳ２１３に進む；Ｓ２１０：移動ロボットは、Ｙ軸の正方向に障害物に沿って走行する；Ｓ２１１：移動ロボットのＹ軸上の座標量の変化が閾値Ｍより大きいかどうかを判断し、そうであればステップＳ２０１に戻り、そうでなければステップＳ２１２に進む；Ｓ２１２：移動ロボットのＹ軸座標がステップＳ２０８と同じであるかどうかを判断し、そうであればステップＳ２０８に戻り、そうでなければステップＳ２１０に戻る；Ｓ２１３：移動ロボットの直進距離が閾値Ｎよりも大きいかどうかを判断し、そうであればステップＳ２１４に進み、そうでなければステップＳ２０８に戻る；Ｓ２１４：移動ロボットはＹ軸の正方向にＭを直進した後にステップＳ２０１に戻る。
【００３１】
Ｓ３：移動ロボットの点Ｐｉでのキーフレーム画像を取得し、この画像と点Ｐｉの座標を保存する。
【００３２】
移動ロボットは動き始め、走行過程中においてカメラで天井または地面の画像を連続して撮影して特徴マッチングを実行する。たとえば、点Ｐｉ（ｉは正の整数）で明らかな特徴を持つキーフレーム画像を選出し、このキーフレーム画像を保存してデカルト座標系での点Ｐｉの座標を記憶する。この時点で、移動ロボットが動き始めたばかりなので、走行距離計とジャイロスコープのデータが正確であるため、走行距離計とジャイロスコープから読み出された点Ｐｉの座標を直接保存することができる。その後、移動ロボットは走行し続け、カメラで天井または地面の画像を連続して撮影して、特徴マッチングを実行する。明らかな特徴を持つキーフレームが再度選出された場合、このキーフレームが位置する点の座標と記憶されていたキーフレーム画像の座標Ｐｉとの距離（Ｘ軸またはＹ軸方向を含む）が所定値（０．６ｍなど）よりも大きいかどうかを判断し、そうであればこの点のキーフレーム画像および対応する座標を保存し、そうでなければこの点の保存を破棄する（保存されたキーフレームが多すぎると、頻繁にキャリブレーションを行う必要があるため、移動ロボットの作業効率に影響を与えてしまうから）。同様に、作業エリア内のキーフレーム画像および画像取得点Ｐｉの座標を保存する。
【００３３】
Ｓ４：移動ロボットの点Ｐ'ｉでの画像を取得する。ここで、点Ｐ'ｉの横座標または縦座標は点Ｐｉと同じである。
【００３４】
移動ロボットは弓形に沿って移動するため、障害物、作業エリアの境界に遭遇した後、または所定の距離を走行した後、一定の距離を平行移動し、次に逆方向に移動し、点Ｐｉの横座標または縦座標が同じ点Ｐ'ｉを通過し、移動ロボットの点Ｐ'ｉでの画像を取得する。好ましくは、点Ｐ'ｉと点Ｐｉとの間の距離は、移動ロボットの作業効率とマッチング精度のバランスをとるために、０．３ｍ〜０．６ｍなどの特定の範囲内にある。ここで、点Ｐ'ｉと点Ｐｉの横座標または縦座標が同じであることによって、２枚の画像を特定の角度でマッチングさせることができ、マッチング効率を向上させ、ミスマッチングを減らすことができる。
【００３５】
Ｓ５：ＯＲＢアルゴリズムに従って、点Ｐｉと点Ｐ'ｉで取得された画像の特徴を抽出してマッチングする。
【００３６】
ＯＲＢアルゴリズムに従って、点Ｐｉと点Ｐ'ｉで取得された画像の特徴を抽出して、２枚の画像から抽出された特徴をマッチングする。
【００３７】
Ｓ６：マッチング結果に応じて、移動ロボットの点Ｐ'ｉでの座標、走行距離計、および／またはジャイロスコープのデータを修正して保存する。
【００３８】
点Ｐｉと点Ｐ'ｉで取得された画像のピクセルオフセットによって実際の物理的オフセットと角度オフセットを逆算出し、結果を移動ロボットにフィードバックする。移動ロボットは、この結果に応じて、点Ｐ'ｉの座標、走行距離計、およびジャイロスコープの計測データを修正する。
【００３９】
Ｓ７：作業エリア内の地図作成が完了するまで、ステップＳ３〜Ｓ６を繰り返す。
【００４０】
図３に示すように、本発明に係る方法による移動ロボットの経路計画方法のフローチャートである。移動ロボットの経路計画方法は、上記地図作成方法によって作成された地図に基づく。
【００４１】
Ｓ'１：移動ロボットは、初期位置から点Ｐｉまたは点Ｐ'ｉに移動する。
【００４２】
図４に示すように、本発明に係る方法の一実施例では、上記ステップＳ'１は以下のサブステップを含む：Ｓ'１１：移動ロボットの初期位置の座標および最終目標点の座標を取得する；Ｓ'１２：初期位置の座標と最終目標点の座標によって形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがあるかどうかを判断し、そうであればステップＳ'１３に進み、そうでなければステップＳ'１４に進む；ステップＳ'１３：移動ロボットが矩形エリアにおける初期位置に最も近い点Ｐｉまたは点Ｐ'ｉに到着すると、ステップＳ'１５に進む；Ｓ'１４：移動ロボットが作業エリアにおける初期位置に最も近い点Ｐｉまたは点Ｐ'ｉに到着すると、ステップＳ'１５に進む；Ｓ'１５：現在の位置の座標と最終目標点の座標で形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがあるかどうかを判断し、そうであればステップＳ'１３に戻り、そうでなければ最終目標点に移動する。
【００４３】
Ｓ'２：点Ｐｉまたは点Ｐ'ｉでの走行距離計または／およびジャイロスコープのデータを修正する。
【００４４】
図５に示すように、本発明の一実施例では、上記ステップＳ'２は以下のサブステップを含む：Ｓ'２１：移動ロボットの点Ｐｉまたは点Ｐ'ｉでの画像を取得する；Ｓ'２２：ＯＲＢアルゴリズムに従って画像の特徴を抽出して、点Ｐｉまたは点Ｐ'ｉに保存された画像の特徴と、マッチングを実行する；Ｓ'２３：マッチング結果に応じて、移動ロボットの点Ｐｉまたは点Ｐ'ｉでの走行距離計または／およびジャイロスコープのデータを修正する。
【００４５】
Ｓ'３：最終目標点に到着するまで、ステップＳ'１〜Ｓ'２を繰り返す。
【００４６】
上記のように、移動ロボットは、最終目標点に到着するまでに、点Ｐｉまたは点Ｐ'ｉでの走行距離計およびジャイロスコープのデータを少なくとも一回修正した。これによって、走行距離計およびジャイロスコープの累積誤差をある程度除去し、移動ロボットが最終目標点まで移動する成功率を向上させた。この方法の最終目標点は、移動ロボットが通過していないエリア、充電スタンドの位置、および移動ロボットの開始作業点を含む。
【００４７】
以下、特定の実施例と合わせて説明する。
【００４８】
実施例１
【００４９】
本実施例における移動ロボットは、掃除ロボットを例に説明する。図６および図７は、それぞれ、障害物なしの矩形空間における掃除ロボットによる地図作成の概略図および経路計画の概略図である。
【００５０】
図６に示すように、掃除ロボットの開始作業点Ａ１を原点とし、掃除ロボットの前進方向をＸ軸の正方向とし、掃除ロボットの左側に垂直な方向をＹ軸の正方向としてデカルト座標系を確立する。掃除ロボットは、順に点Ｐ１と点Ｐ２に前進し、明らかな特徴を持つキーフレーム画像を選出し、この画像および点Ｐ１と点Ｐ２の座標を保存する（点Ｐ１と点Ｐ２の座標は、走行距離計とジャイロスコープにより直接取得される。掃除ロボットの走行が開始したばかりなので、走行距離計とジャイロスコープのデータは正確である）。ここで、点Ｐ１と点Ｐ２との横座標間の距離は、所定値（たとえば、０．６ｍ）よりも大きい。
【００５１】
掃除ロボットが点Ｐ'に到着すると、明らかな特徴をもつキーフレーム画像も選出される。このとき、点Ｐ'と保存された点Ｐ２との距離が０．６ｍ未満であるので、点Ｐ'でのキーフレーム画像および点Ｐ'の座標への保存を破棄する。
【００５２】
掃除ロボットは、引き続き移動し、点Ｐ３でキーフレーム画像と点Ｐ３の座標を保存し、点ａに移動して作業エリアの境界に到達し、Ｙ軸の正方向に沿って所定の距離Ｍを走行して点ｂに到着し（Ｍは、掃除ロボットの本体の幅であり、本実施例では０．２５ｍである。）、次にＸ軸の負方向に沿って走行し、順に点Ｐ３、点Ｐ２、および点Ｐ１の横座標Ｘと同じ点を通過する。これらの点（ｂ−ｃ直線上）と対応する点（Ａ１−ａ直線上）との距離が所定値（本実施例では０．４ｍ）より小さいため、関連する点の座標または画像を保存および修正する必要はない（画像の保存および修正は頻繁にしすぎると、掃除ロボットの作業効率に影響を与える）。
【００５３】
掃除ロボットは、引き続き点ｃに移動して作業エリアの境界に到達し、Ｙ軸の正方向に沿って所定の距離Ｍを走行して点ｄに到着し、次にＸ軸の正方向に沿って走行し、順に点Ｐ１、点Ｐ２、および点Ｐ３の横座標Ｘと同じ点を通過する。このとき、掃除ロボットが２つのＭ（つまり、所定値０．４ｍよりも大きい０．５ｍ）を平行移動していたため、掃除ロボットは対応する点（点Ｐ'１、点Ｐ'２、点Ｐ'３）の画像を取得し、その横座標Ｘと同じ点（点Ｐ１、点Ｐ２、点Ｐ３）のそれぞれで保存されたキーフレーム画像と、ＯＲＢアルゴリズムに従って特徴抽出およびマッチングを行う。その後、マッチング結果に応じて、点Ｐ'１、点Ｐ'２、および点Ｐ'３の座標および点Ｐ'１、点Ｐ'２、点Ｐ'３での走行距離計および／またはジャイロスコープのデータを修正する。注意すべきことは、効率を向上させるために、掃除ロボットが同じ直線に沿って走行している時、ある点の座標と走行距離計および／またはジャイロスコープのデータが成功裏に修正される限り、直線上の他の点を修正する必要はない。つまり、点Ｐ'１での修正が成功すれば、点Ｐ'２、点Ｐ'３での修正を行う必要はなく、点Ｐ'２での修正が成功すれば、点Ｐ'３での修正を行う必要はない。
【００５４】
次に、掃除ロボットは、引き続きＸ軸の正方向に沿って作業エリアの境界まで移動し、順に明らかな特徴をもつキーフレーム画像とその対応する点（Ｐ４、Ｐ５、Ｐ６、Ｐ７）を選出して保存し、対応する点（Ｐ'４、Ｐ'５、Ｐ'６、Ｐ'７）での座標への修正および走行距離計とジャイロスコープのデータへの修正を行う。
【００５５】
矩形エリア内の地図作成が完了するまで、そのようにする。
【００５６】
図７に示すように、掃除ロボットが点Ａ２に到着すると、矩形エリアの地図作成が完了する。この時点で、掃除ロボットは、帰ろうとする最終目標点を探索し始める。本実施例では掃除ロボットの開始作業点Ａ１である。点Ａ１、点Ａ２の座標によって形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがないため、掃除ロボットは、点Ｐ'７に移動し、点Ｐ'７での走行距離計または／およびジャイロスコープのデータを修正する。続いて、掃除ロボットは、点Ｐ'７から最終目標点Ａ１に移動する。点Ｐ'７と点Ａ１の座標で形成される矩形エリア（破線で形成される矩形の枠）において点Ｐ７があるため、掃除ロボットは、点Ｐ７に移動して、点Ｐ７での走行距離計または／およびジャイロスコープのデータを修正する。その後、掃除ロボットは点Ｐ７から最終目標点Ａ１まで移動する。点Ｐ７と点Ａ１の座標によって形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがないため、掃除ロボットは点Ｐ７から最終目標点Ａ１に直接移動する。その走行経路は図の矢印で示されているとおりである。
【００５７】
実施例２
【００５８】
本実施例の移動ロボットを、掃除ロボットを例に説明する。図８および図９は、それぞれ、矩形の障害物Ｂ１および楕円形の障害物Ｂ２を含む矩形の作業エリアにおける掃除ロボットによる地図作成の概略図および経路計画の概略図である。
【００５９】
図８に示すように、掃除ロボットの開始作業点Ａ１を原点とし、掃除ロボットの前進方向をＸ軸の正方向とし、掃除ロボットの左側に垂直な方向をＹ軸の正方向としてデカルト座標系を確立する。掃除ロボットは、順に点Ｐ１と点Ｐ２に前進し、明らかな特徴を持つキーフレーム画像を選出し、この画像および点Ｐ１と点Ｐ２の座標を保存する（点Ｐ１と点Ｐ２の座標は、走行距離計とジャイロスコープにより直接取得される。掃除ロボットの走行が開始したばかりなので、走行距離計とジャイロスコープのデータは正確である）。ここで、点Ｐ１と点Ｐ２との横座標間の距離は、所定値（たとえば、０．６ｍ）よりも大きい。
【００６０】
掃除ロボットが点ａに到着すると、障害物Ｂ１に遭遇し、Ｙ軸の正方向に沿って所定の距離Ｍ（本実施例では０．２５ｍ）を走行して点ｂに到着し、次にＸ軸の逆方向に沿って走行し、順に点Ｐ２と点Ｐ１の横座標Ｘと同じ点を通過する。これらの点（ｂ−ｃ直線上）と対応する点（Ａ１−ａ直線上）との距離が所定値（本実施例では０．４ｍ）より小さいため、関連する点の座標または画像を保存および修正する必要はない（画像の保存および修正は頻繁にしすぎると、掃除ロボットの作業効率に影響を与える）。
【００６１】
掃除ロボットは、引き続き点ｃに移動して作業エリアの境界に到達し、Ｙ軸の正方向に沿って所定の距離Ｍを走行して点ｄに到着し、次にＸ軸の正方向に沿って走行し、順に点Ｐ１と点Ｐ２の横座標Ｘと同じ点を通過する。この時、掃除ロボットが２つのＭ（つまり、所定値０．４ｍよりも大きい０．５ｍ）を平行移動していたため、掃除ロボットは対応する点（点Ｐ'１、点Ｐ'２）の画像を取得し、その横座標Ｘと同じ点（点Ｐ１、点Ｐ２）のそれぞれでの保存されたキーフレーム画像と、ＯＲＢアルゴリズムに従って特徴抽出およびマッチングを行う。その後、マッチング結果に応じて、点Ｐ'１と点Ｐ'２の座標および点Ｐ'１と点Ｐ'２での走行距離計および／またはジャイロスコープのデータを修正する。掃除ロボットは、点ｅに到着すると、障害物Ｂ１に再度遭遇し、障害物Ｂ１を迂回して点ｆに移動する。点ｅと点ｆとのＹ軸上の変化量がＭ（０．２５ｍ）よりも小さいため、掃除ロボットは、Ｘ軸の負方向に変向して走行することなく、障害物Ｂ１に沿って移動し続けて点ｈに到着する。その時点で、点ｈの縦座標と点ｄの座標が同一であるため、掃除ロボットは、障害物Ｂ１に沿う移動を停止し、Ｘ軸の正方向に沿って移動することになる。掃除ロボットは、点ｉに到着すると、点ｄと点ｉとの距離が６ｍ（本実施例ではＮが６ｍ）に達するので、Ｙ軸の正方向に沿って距離Ｍを走行し、点ｊに到着すると、Ｘ軸の負方向に沿って移動することになる。
【００６２】
このようにして、点Ａ２までは、実施例１の方式に従って経過エリアの地図作成を行う。その後、掃除ロボットは、未経過エリアに移動し、上記のような方式に従って地図作成を行い、すべての作業エリア内の地図作成が完了するまでに終了する。
【００６３】
本実施例と実施例１との相違点は以下の通りである：
【００６４】
１．掃除ロボットは、Ｘ軸方向に所定の距離を走行した後、Ｙ軸の正方向に沿って距離Ｍを自動的に平行移動し、Ｘ軸に沿って逆方向に走行する。
【００６５】
２．掃除ロボットは、所定の距離を走行した後、キーフレーム画像である点Ｐｉの画像と対応する座標を保存する。つまり、隣接する点Ｐｉの横座標における間隔は同じである。
【００６６】
図９に示すように、掃除ロボットが点Ａ２に到着すると、矩形エリアの部分的な地図作成が完了し、この時点で、掃除ロボットは、帰ろうとする最終目標点を探索し始める。本実施例では、掃除ロボットにより覆われていないエリアの点Ａ３である。点Ａ２と点Ａ３の座標で形成される矩形エリア（図の点線枠）において点Ｐ８、Ｐ９、Ｐ１０、Ｐ１１、Ｐ１２が含まれているため、掃除ロボットは、点Ａ２に最も近い点Ｐ１２に移動し、点Ｐ１２での走行距離計または／およびジャイロスコープのデータを修正する。
【００６７】
このようにして、掃除ロボットは、順に点Ｐ１１、点Ｐ１０、点Ｐ９、点Ｐ８を通過して、走行距離計または／およびジャイロスコープのデータを修正する。掃除ロボットは、点Ｐ８に到着すると、点Ｐ８と最終目標点Ａ３によって形成される矩形エリアにおいて点Ｐｉまたは点Ｐ'ｉがないため、点Ｐ８から最終目標点Ａ３に直接移動し、その走行経路は図の矢印に示されている通りである。
【００６８】
上記で開示されたのは、本発明の好ましい実施例に過ぎず、本発明の範囲を限定しない。そのため、本発明の特許請求の範囲に従って行われる同等の変更は、依然として本発明の範囲内に属する。
【図１】
0006915209.tif 000002
【図２】
0006915209.tif 000003
【図３】
0006915209.tif 000004
【図４】
0006915209.tif 000005
【図５】
0006915209.tif 000006
【図６】
0006915209.tif 000007
【図７】
0006915209.tif 000008
【図８】
0006915209.tif 000009
【図９】
0006915209.tif 000010