JP2010238217A - 移動ロボットの自己位置同定方法及び移動ロボット - Google Patents
移動ロボットの自己位置同定方法及び移動ロボット Download PDFInfo
- Publication number
- JP2010238217A JP2010238217A JP2009240756A JP2009240756A JP2010238217A JP 2010238217 A JP2010238217 A JP 2010238217A JP 2009240756 A JP2009240756 A JP 2009240756A JP 2009240756 A JP2009240756 A JP 2009240756A JP 2010238217 A JP2010238217 A JP 2010238217A
- Authority
- JP
- Japan
- Prior art keywords
- voting
- model data
- data
- mobile robot
- points
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000005259 measurement Methods 0.000 claims description 85
- 238000012545 processing Methods 0.000 claims description 7
- 238000012935 Averaging Methods 0.000 claims description 3
- 238000013500 data storage Methods 0.000 claims description 2
- 230000007613 environmental effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 5
- 238000000691 measurement method Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
【課題】より高速で精度良く環境における位置・姿勢を求めることができるようにした移動ロボットの自己位置同定方法及び移動ロボットを提供する。
【解決手段】モデルデータとシーンデータとのマッチングを行って環境に対する位置関係を求める自己位置同定方法において、前記モデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、前記回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求めるという手順で処理する。
【選択図】図2
【解決手段】モデルデータとシーンデータとのマッチングを行って環境に対する位置関係を求める自己位置同定方法において、前記モデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、前記回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求めるという手順で処理する。
【選択図】図2
Description
本発明は、オフィス、工場等の施設内において、環境情報を計測して移動する移動ロボットの自己位置同定方法及び移動ロボットに関する。
主に車輪などの駆動機構を有する移動ロボットは、移動面とのすべりなどによりエンコーダ等の内界センサを使って自己位置を求め制御を行っても目標位置からの位置誤差が大きくなる。そのため、レーザセンサ、超音波センサなどの外界センサを用いて、環境との位置関係を求めて自己位置同定し、目標位置とのずれを補正している。環境との位置関係は、例えば、予め登録されたモデルデータ(地図データ)と外界センサのシーンデータとのマッチングによって求められる。従来のマッチングはモデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、回転モデルデータとシーンデータから1点ずつ取り出した組合せについて位置情報の偏差をとって投票し、さらには、回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、モデルデータに対する相対位置・姿勢を求めている(例えば、特許文献1参照)。
しかしながら従来の技術では、外界センサから取得したモデルデータとシーンデータとの位置偏差を単純に投票しているので、センサの誤差により、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生し、ある一部分の一致度を重視してその位置を最大値と取るなど、環境における自身の相対位置及び姿勢の検出精度に限界があり、移動ロボットの走行位置制御の精度も低下するという課題があった。
また、従来のマッチングでは、要求される処理速度に応じてデータの一部を用いてマッチングを行うこともできるが、データの選択によっては重要でない部分を多く選択したり、また、モデルデータの選択によっては対応するシーンが隠れてマッチングが取れない場合が発生する。そのため、精度が低下したり、ロバスト性(ノイズや外乱等に対する安定性(頑健性))が低下するという課題もあった。
また、従来のマッチングでは、外界センサに二次元レーザレンジファインダを用いた場合など、外界センサの計測方法(極座標系での距離計測)に依存した測定点密度の違いが生じてマッチング時に誤認識するという課題もあった。
本発明はこのような課題に鑑みてなされたものであり、より高速で精度良く環境における位置・姿勢を求めることができるようにした移動ロボットの自己位置同定方法及び移動ロボットを提供することを目的とする。
また、従来のマッチングでは、外界センサに二次元レーザレンジファインダを用いた場合など、外界センサの計測方法(極座標系での距離計測)に依存した測定点密度の違いが生じてマッチング時に誤認識するという課題もあった。
本発明はこのような課題に鑑みてなされたものであり、より高速で精度良く環境における位置・姿勢を求めることができるようにした移動ロボットの自己位置同定方法及び移動ロボットを提供することを目的とする。
上記課題を解決するため、本発明は、次のようにしたのである。
請求項1にかかる移動ロボットの自己位置同定方法は、モデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求めるという手順をとったのである。
請求項1にかかる移動ロボットの自己位置同定方法は、モデルデータを所定の回転角度だけ回転して回転モデルデータを作成し、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転角度の値を変えながら投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求めるという手順をとったのである。
請求項2にかかる移動ロボットの自己位置同定方法は、前記投票処理では、モデルデータとシーンデータのいずれかにおいて、センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにするという手順をとったのである。
請求項3にかかる移動ロボットの自己位置同定方法は、モデルデータ内でマッチングをとりたい領域を複数指定し、指定された各領域に対してのみマッチング行い、各指定領域のマッチング結果に対し平均を取るという手順をとったのである。
請求項3にかかる移動ロボットの自己位置同定方法は、モデルデータ内でマッチングをとりたい領域を複数指定し、指定された各領域に対してのみマッチング行い、各指定領域のマッチング結果に対し平均を取るという手順をとったのである。
請求項4にかかる移動ロボットの自己位置同定方法は、各指定領域のマッチング結果に対し重み付き平均を取るという手順をとったのである。
請求項5にかかる移動ロボットの自己位置同定方法は、前記投票処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて投票の重みを決定するという手順をとったのである。
請求項6にかかる移動ロボットの自己位置同定方法は、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを投票に用いるという手順をとったのである。
請求項5にかかる移動ロボットの自己位置同定方法は、前記投票処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて投票の重みを決定するという手順をとったのである。
請求項6にかかる移動ロボットの自己位置同定方法は、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを投票に用いるという手順をとったのである。
また、請求項7にかかる移動ロボットは、環境内を移動するための駆動機構と、前記駆動機構を駆動するモータと、前記モータの回転量を計測するエンコーダと、移動を制御する制御装置と、前記環境の状況を計測して得られた複数の点の位置情報を含むであるシーンデータを前記制御装置に入力する環境認識センサと、を有し、前記制御装置は、予め登録された前記環境内の地図情報を表わす複数の点の位置情報を有するモデルデータを記憶するモデルデータ記憶部と、前記モデルデータの情報を予め設定された所定の角度毎に回転させた回転モデルデータを作成する回転モデルデータ作成部と、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて、位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転モデルデータの回転角度の値を変えながら投票を行って頻度が最も多いときの偏差と回転角度を求める投票部と、前記投票部から、前記環境においての自身の位置・姿勢を取得する自己位置出力部と、を有して構成されている。
また、請求項8にかかる移動ロボットは、前記環境認識センサは、自身を中心とした前記平面上の扇状の計測範囲を所定の所定の角度毎に走査して、周囲の物体までの距離を計測する二次元スキャン型距離センサであり、前記投票部は、前記モデルデータと前記シーンデータのいずれかにおいて、前記二次元スキャン型距離センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにするものである。
また、請求項9にかかる移動ロボットは、前記制御装置は前記モデルデータの位置情報の内、投票を実行したい領域を指定するマッチング領域指定部を有し、前記回転モデルデータ作成部および前記投票部では、前記マッチング領域指定部で指定された各領域に対してのみ処理を実行し、前記指定された領域に対するマッチング結果に対し平均を取るように構成されている。
また、請求項9にかかる移動ロボットは、前記制御装置は前記モデルデータの位置情報の内、投票を実行したい領域を指定するマッチング領域指定部を有し、前記回転モデルデータ作成部および前記投票部では、前記マッチング領域指定部で指定された各領域に対してのみ処理を実行し、前記指定された領域に対するマッチング結果に対し平均を取るように構成されている。
また、請求項10にかかる移動ロボットは、前記各指定領域のマッチング結果に対する平均処理は、重み付き平均であることを特徴としている。
また、請求項11にかかる移動ロボットは、前記投票処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて投票の重みを決定することを特徴としている。
また、請求項12にかかる移動ロボットは、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを投票に用いることを特徴としている。
また、請求項13にかかる移動ロボットの自己位置同定方法は、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間することを特徴としている。
また、請求項14にかかる移動ロボットは、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間することを特徴としている。
また、請求項11にかかる移動ロボットは、前記投票処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて投票の重みを決定することを特徴としている。
また、請求項12にかかる移動ロボットは、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを投票に用いることを特徴としている。
また、請求項13にかかる移動ロボットの自己位置同定方法は、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間することを特徴としている。
また、請求項14にかかる移動ロボットは、モデルデータおよびシーンデータのそれぞれにおいて、データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間することを特徴としている。
請求項1、2、5に記載の発明によると、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができる。
また、請求項3、4に記載の発明によると、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項6に記載の発明によると、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項3、4に記載の発明によると、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項6に記載の発明によると、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
請求項7、8、11に記載の発明によると、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができる。
また、請求項9、10に記載の発明によると、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項12に記載の発明によると、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項13、14に記載の発明によると、センサから得られた測定点のデータを補間して投票することにより、モデルデータおよびシーンデータにおいて、センサの計測方法に依存した測定点密度の違いが生じても、誤認識なく相対位置・姿勢を求めることができる。
また、請求項9、10に記載の発明によると、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項12に記載の発明によると、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができる。
また、請求項13、14に記載の発明によると、センサから得られた測定点のデータを補間して投票することにより、モデルデータおよびシーンデータにおいて、センサの計測方法に依存した測定点密度の違いが生じても、誤認識なく相対位置・姿勢を求めることができる。
以下、本発明の方法の具体的な実施形態について、図に基づいて説明する。
[第1実施形態]
[第1実施形態]
図1(a)および(b)に示すように移動ロボット1は、移動ロボット制御装置2、モータ3、エンコーダ4、駆動機構5、環境認識センサ6から構成されている。
移動ロボット1は、面上の走行環境(以下、環境)を自律移動するものであり、ここで環境とは、壁、障害物など、移動ロボット1の周囲にある物体や、移動ロボット1が移動できる空間を意味する。
移動ロボット1は、面上の走行環境(以下、環境)を自律移動するものであり、ここで環境とは、壁、障害物など、移動ロボット1の周囲にある物体や、移動ロボット1が移動できる空間を意味する。
移動ロボット制御装置(制御装置)2は、環境認識センサ6およびエンコーダ5からの情報を取り込んで環境における自己の位置を計算し、前記自己位置を使って指令生成およびサーボ制御を行ってモータ3の駆動制御を行う。モータ3は、駆動機構5を駆動する。エンコーダ4は、モータ3の回転量を計測し、内界センサ情報を生成する。また、内界センサ情報は、エンコーダだけでなくジャイロセンサ等の方位センサを移動ロボット1に組み込んで適用するようにしても良い。
駆動機構5は、前記モータ3の出力軸に接続された車輪あるいは操舵軸を複数組有し移動ロボット1を駆動する。環境認識センサ6は、例えば二次元レーザレンジファインダのような二次元スキャン型距離センサであり、そのレーザ光線が、左右に傾いていない平面(スキャン平面)内において、センサ取付位置を中心にして扇状にスキャンされ、壁などの周囲物体までの距離を計測する。本発明は移動ロボット制御装置2において、環境との位置関係を求めて自己位置を計算するのに実施される処理である。
図2は移動ロボット1においてマッチングする処理手順を示すフローチャートである。この図を用いて本発明の方法を順を追って説明する。また、以下の説明では、移動ロボット1と環境認識センサ6の原点は同じとする。
ステップ1で、予め登録されたモデルデータを所定の回転角度だけ回転して回転モデルデータを作成する。
ステップ1で、予め登録されたモデルデータを所定の回転角度だけ回転して回転モデルデータを作成する。
モデルデータは、教示位置において環境認識センサ6で計測したデータであって、移動ロボット1が存在する環境においての壁、障害物、移動空間等の位置情報を含んでいる。
回転モデルデータはモデルデータの点の座標1(xi ,yi )i=l,...,pを使って、座標1を0度から359度まで1度間隔で回転させた座標2を計算する。この座標2は、
(xr,i ,yr,i )i=l,...,p r=0,1,2,...,359
で表し、rが回転角度である。
即ち、「モデルデータ」とはp個の点の座標情報を含むものであり、「回転モデルデータ」とは1度から359度まで1度毎に回転させた359通りのp個の点である。
回転モデルデータはモデルデータの点の座標1(xi ,yi )i=l,...,pを使って、座標1を0度から359度まで1度間隔で回転させた座標2を計算する。この座標2は、
(xr,i ,yr,i )i=l,...,p r=0,1,2,...,359
で表し、rが回転角度である。
即ち、「モデルデータ」とはp個の点の座標情報を含むものであり、「回転モデルデータ」とは1度から359度まで1度毎に回転させた359通りのp個の点である。
ステップ2から5で、シーンデータから求められた各点の座標3(Xj ,Yj )j=1,...,qを使って、rを0から359まで、iをlからpまで、更に、jをlからqまで変えて投票処理を繰り返す。
ステップ2では、二次元の投票空間V(dx,dy)を初期化する。投票空間V(dx,dy)は、初期値は全て0であり、添え字dx,dyの値が偏差を表す。
ステップ3では、各回転角度rのときのiとjの繰り返しにより、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて、位置情報の偏差dxrij,dyrijを計算する。
ステップ2では、二次元の投票空間V(dx,dy)を初期化する。投票空間V(dx,dy)は、初期値は全て0であり、添え字dx,dyの値が偏差を表す。
ステップ3では、各回転角度rのときのiとjの繰り返しにより、前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて、位置情報の偏差dxrij,dyrijを計算する。
ステップ4で、前記偏差の頻度を投票点およびその周りに重み付けをして投票する。まずは、環境認識センサ6の測定距離誤差を考慮して投票テーブルを決定する。投票テーブルは、偏差を投票点として投票点とその周りの点にカウント加算値(頻度の加算得点)を定義したデータテーブルである。
図3は、投票テーブル決定の様子を示す説明図である。例えば、測定距離誤差が1000mmまでは10mm、1000mm以降は距離の1%の二次元レーザレンジファインダを用いて、投票間隔が10mmの投票空間に投票する場合を考える。
図3は、投票テーブル決定の様子を示す説明図である。例えば、測定距離誤差が1000mmまでは10mm、1000mm以降は距離の1%の二次元レーザレンジファインダを用いて、投票間隔が10mmの投票空間に投票する場合を考える。
図3の点1(xi1,yi1)のように、モデルデータのある1点が測定距離1000mm地点にある場合は、測定距離誤差10mmのため、投票点の隣接点にも投票できるように3行3列の投票テーブル1を用いる。投票テーブル1は、投票点を+10、隣接点+5としている。一方、図3の点2(xi2,yi2)のように、モデルデータのある1点が測定距離2000mm地点にある場合は、測定距離誤差20mmのため、投票点の隣接点および隣接点の隣接点にも投票できるように5行5列の投票テーブル2を用いる。投票テーブル2は、投票点を+10、隣接点+6、隣接点の隣接点を+3としている。
このように、モデルデータにおいて、環境認識センサ6(即ち、移動ロボット1)から近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにする。ただし、処理時間に応じて投票幅に制限をかけるようにする。次に、ステップ3で求められた偏差dxrij,dyrijと、モデルデータの各点の位置関係に基づいた投票テーブルを用いて、投票空間V(dx,dy)に投票する。
図4は、投票の様子を示す説明図である。図4では、偏差dxrij,dyrijが10,10で、投票テーブル1を用いた場合を示しており、投票空間V(dx,dy)の10,10の位置を投票点としてその周りに投票テーブル1に従った投票を行う。その結果、投票点でカウント値が80から90に、その周りでカウント値が0から5に増加する。この重み付きの投票により、投票空間V(dx,dy)のカウント値を増やすことで、投票空間上での頻度を求めていく。この例では、モデルデータの計測値を元に投票テーブルを決定するものであるが、処理時間などに応じ、シーンデータを考慮した投票テーブルを用いるようにしてもよい。
ステップ5で、投票の最大値Vmaxを求める。Vmaxは初期値を0とし(ステップ1後実施)、更新された投票空間V(dx,dy)における投票の最大値と前回のVmaxを比較し、大きい方を最大値として更新する。更新後は、Vmaxおよび、投票が最大となるときのr、dx、dyを保存しておく。
ステップ6で、ステップ2から5を反復計算した結果求められた、投票最大時のr、dx、dyを取得する。この値が前記モデルデータに対する相対位置・姿勢になる。
ステップ5で、投票の最大値Vmaxを求める。Vmaxは初期値を0とし(ステップ1後実施)、更新された投票空間V(dx,dy)における投票の最大値と前回のVmaxを比較し、大きい方を最大値として更新する。更新後は、Vmaxおよび、投票が最大となるときのr、dx、dyを保存しておく。
ステップ6で、ステップ2から5を反復計算した結果求められた、投票最大時のr、dx、dyを取得する。この値が前記モデルデータに対する相対位置・姿勢になる。
このように、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、モデルデータ全体との一致度が評価でき、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができるのである。
[第2実施形態]
[第2実施形態]
次に本発明の第2の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図5は第2の実施形態にかかる領域指定の様子を示す説明図である。なお、本実施形態は上述の第1実施形態と同様の部分については説明を省略する。
図5のように、モデルデータ内でマッチングをとりたい領域を指定領域1、指定領域2のように複数指定し、指定された各領域に対して第1実施形態同様のマッチング行う。その後、各領域の結果に対し重み付き平均をとることで最終的な相対位置・姿勢を求めるようにする。
すなわち、指定領域1の結果を(r1’,dx1’,dy1’)、重みをw1’(0≦w1’≦1)、指定領域2の結果を(r2’,dx2’,dy2’)、重みをw2’(0≦w2’≦1)とすると、次式(1)〜(3)により重み付き平均をとることで最終的な相対位置・姿勢(r,dx,dy)を求める。
ただし、w1’+w2’=1となるようにw1’、w2’を定める。なお、上記は指定領域が2つの場合を例に示したが、それ以外の場合にも拡張できるのは勿論である。
このように、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、高速かつ誤認識なく相対位置・姿勢を求めることができる。
[第3実施形態]
図5のように、モデルデータ内でマッチングをとりたい領域を指定領域1、指定領域2のように複数指定し、指定された各領域に対して第1実施形態同様のマッチング行う。その後、各領域の結果に対し重み付き平均をとることで最終的な相対位置・姿勢を求めるようにする。
すなわち、指定領域1の結果を(r1’,dx1’,dy1’)、重みをw1’(0≦w1’≦1)、指定領域2の結果を(r2’,dx2’,dy2’)、重みをw2’(0≦w2’≦1)とすると、次式(1)〜(3)により重み付き平均をとることで最終的な相対位置・姿勢(r,dx,dy)を求める。
ただし、w1’+w2’=1となるようにw1’、w2’を定める。なお、上記は指定領域が2つの場合を例に示したが、それ以外の場合にも拡張できるのは勿論である。
このように、領域を限定し、センサの誤差を考慮した重み付けのマッチングを行い、マッチング結果に対して重み付き平均をとることにより、高速かつ誤認識なく相対位置・姿勢を求めることができる。
[第3実施形態]
次に本発明の第3の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図6は第3の実施形態にかかる重み付きデータを示す説明図である。なお、本実施形態は上述の第1,2実施形態と同様の部分については説明を省略する。
図6では、モデルデータまたはシーンデータの極座標系での計測値(Rp,θp)と計測の誤差に応じた重みwpがセットとなったデータ列が示されている。なお、データ列は直交座標系での値に変換したものでも良い。このような形態のデータ列を用いて偏差の頻度を投票する場合、例えばモデルデータの重みをwpmi(i=l,...,p)、シーンデータの重みをwpsj(j=l,...,p)とすると、投票の際に使用するの重みwpvi,jは次式のように2つの重みの積になる。
この重みを用いて第1実施形態と同様に投票テーブルを作成して投票を行い、頻度が最も多いときの偏差と回転角度によって、モデルデータに対する相対位置・姿勢を求めるようにする。
このように、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、モデルデータ全体との一致度が評価でき、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができるのである。
[第4実施形態]
図6では、モデルデータまたはシーンデータの極座標系での計測値(Rp,θp)と計測の誤差に応じた重みwpがセットとなったデータ列が示されている。なお、データ列は直交座標系での値に変換したものでも良い。このような形態のデータ列を用いて偏差の頻度を投票する場合、例えばモデルデータの重みをwpmi(i=l,...,p)、シーンデータの重みをwpsj(j=l,...,p)とすると、投票の際に使用するの重みwpvi,jは次式のように2つの重みの積になる。
この重みを用いて第1実施形態と同様に投票テーブルを作成して投票を行い、頻度が最も多いときの偏差と回転角度によって、モデルデータに対する相対位置・姿勢を求めるようにする。
このように、重み付きの投票幅を持たせてセンサの誤差を考慮することにより、モデルデータおよびシーンデータにおいて、拡大・縮小誤差が発生しても、モデルデータ全体との一致度が評価でき、一部分の一致度を重視することなく最大値を取るので、誤認識なく相対位置・姿勢を求めることができるのである。
[第4実施形態]
次に本発明の第4の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図7(a)(b)はいずれも第4の実施形態にかかる極座標系による特徴抽出の様子を示す説明図である。なお、本実施形態は上述の第1〜3実施形態と同様の部分については説明を省略する。
図7(a)では、モデルデータまたはシーンデータの測定点を直交座標系のグラフで表したものである。これを極座標系に変換すると、図7(b)のグラフで表される。図7(b)のグラフにおいて、隣接する測定点間の距離(Rp)を評価して、連続した測定点の集まりである測定点群に分割する。すなわち、隣接測定点間の距離が大きい場合、その隣接測定点間で測定対象が不連続になっているものとして、測定点の列を分解して測定点群とする。ただしθpに対するRpの値がない場合は無条件に分割する。
図7(a)では、モデルデータまたはシーンデータの測定点を直交座標系のグラフで表したものである。これを極座標系に変換すると、図7(b)のグラフで表される。図7(b)のグラフにおいて、隣接する測定点間の距離(Rp)を評価して、連続した測定点の集まりである測定点群に分割する。すなわち、隣接測定点間の距離が大きい場合、その隣接測定点間で測定対象が不連続になっているものとして、測定点の列を分解して測定点群とする。ただしθpに対するRpの値がない場合は無条件に分割する。
その結果、図7のような場合、測定点群1と測定点群2に分割される。各測定点群において、距離Rpが極大または極小となる点を求める。なお、極大点または極小点を求める前に、θp−Rpグラフにおいて、移動平均やメディアンフィルタ等のフィルタをかけても良い。さらにある測定点群について隣接した測定点群が存在する場合、図7(b)のように前記測定点群の端点についても求める。そして、各測定点群において、前記極大点、極小点、端点を特徴点とし、予め与えられた投票使用範囲パラメータによって、特徴点周辺のデータのみを使って、第1実施形態同様に投票を行い、モデルデータに対する相対位置・姿勢を求めるようにする。
このように、特徴点周辺のデータのみを投票に用いることにより、部分的なデータを使ってマッチングしても、高速かつ誤認識なく相対位置・姿勢を求めることができるのである。
[第5実施形態]
[第5実施形態]
次に本発明の第5の実施形態にかかる移動ロボットの自己位置同定方法について説明する。図8(a)(b)はいずれも第5の実施形態にかかる測定点補間の様子を示す説明図である。なお、本実施形態は上述の第1〜4実施形態と同様の部分については説明を省略する。
図8(a)では、モデルデータまたはシーンデータの測定点を直交座標系のグラフで表したものであり、測定点群Aおよび測定点群Bは同じ形の物体を二次元レーザレンジファインダで測定した結果である。レーザーレンジファインダはレーザーを扇状に照射するためレーザーレンジファインダ近くに物体がある場合は測定点が密に、遠くにあれば測定点が疎となったデータが計測される。このため測定点群Aの方が測定点群Bより移動ロボットに近いため、測定点の密度が密になっている。これを図8(b)のように補間し、測定点の位置関係による密度の違いが生じにくいように、投票に使用する測定点のデータを等間隔に生成し直す。
次に、この測定点データの補間方法について、図9に示すフローチャートを用いて説明する。まずステップ11で、隣接する測定点間の距離lnを求める。次にステップ12で、隣接する測定点間の距離lnか予め与えられた範囲内に入るかを次式に判定する。
ただし、lmin、lmaxは予め与えられた設定値であり、lminは、必要以上に補間しないように設けた距離の下限値で、lmaxは、直線的に補間するのを許すための距離の上限値である。ステップ13で、式(5)の判定により、距離lnがlminとlmaxの間に入れば、隣接する測定点間を線分で結ぶ。ステップ14で、前記線分を含んだ一辺が投票間隔の格子を生成する。格子の生成は、例えば図10のように測定点sから測定点gに結んだ線分の場合、xsからx1の区間では、y’s(測定点sのYR座標)とy’1(境界点1のYR座標)の位置により格子1、2が生成され、x1からx2の区間では、y’1とy’2(境界点2のYR座標)の位置により格子3、4、5が生成され、x2からxgの区間では、y’2とy’g(測定点gのYR座標)の位置により格子6、7が生成され、最終的には7個の格子が生成される。このようにして測定点間を結んだ線分を含む格子を生成する。最後にステップ15で、格子の中心を新たな測定点として更新する。
このように、センサから得られた測定点のデータを補間することにより、モデルデータおよびシーンデータにおいて、センサの計測方法に依存した測定点密度の違いが生じても、投票により誤認識なく相対位置・姿勢を求めることができるのである。
センサの誤差を考慮したマッチングを行うため、画像距離センサなどのセンサを用いて予め登録された対象物に対する補正量を計測してロボットアームを作業させるといった用途にも適用できる。
センサの誤差を考慮したマッチングを行うため、画像距離センサなどのセンサを用いて予め登録された対象物に対する補正量を計測してロボットアームを作業させるといった用途にも適用できる。
以上、本発明の実施の形態について説明したが、本発明にかかる移動ロボットや移動ロボットの自己位置同定方法が上述の実施形態のものに限定されるものではなく、適宜変更して適用可能である。
1 移動ロボット
2 移動ロボット制御装置
3 モータ
4 エンコーダ
5 駆動機構
6 環境認識センサ
2 移動ロボット制御装置
3 モータ
4 エンコーダ
5 駆動機構
6 環境認識センサ
Claims (14)
- 環境認識センサを備えた移動ロボットにて、予め登録されたモデルデータと前記環境認識センサで計測したシーンデータとのマッチングを行って環境に対する位置関係を求める自己位置同定方法において、
前記モデルデータを所定の回転角度だけ回転して回転モデルデータを作成する処理と、
前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて、位置情報の偏差をとる処理と、
前記偏差の頻度を投票点およびその周りに重み付けをして投票する処理と、
前記回転角度の値を変えながら前記投票を行って、頻度が最も多いときの偏差と回転角度によって、前記モデルデータに対する相対位置・姿勢を求める処理を実行することを特徴とする移動ロボットの自己位置同定方法。 - 前記投票する処理では、モデルデータとシーンデータのいずれかにおいて、センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにする
ことを特徴とする請求項1記載の移動ロボットの自己位置同定方法。 - モデルデータ内でマッチングをとりたい領域を複数指定し、指定された各領域に対してのみマッチング行い、各指定領域のマッチング結果に対し平均を取る
ことを特徴とする請求項1又は2記載の移動ロボットの自己位置同定方法。 - 各指定領域のマッチング結果に対する平均処理は、重み付き平均である
ことを特徴とする請求項3記載の移動ロボットの自己位置同定方法。 - 前記投票する処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて前記投票の重みを決定する
ことを特徴とする請求項1〜4のいずれか1項に記載の移動ロボットの自己位置同定方法。 - モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを前記投票に用いる
ことを特徴とする請求項1〜5のいずれか1項に記載の移動ロボットの自己位置同定方法。 - 環境内を移動するための駆動機構と、
前記駆動機構を駆動するモータと、
前記モータの回転量を計測するエンコーダと、
移動を制御する制御装置と、
前記環境の状況を計測して得られた複数の点の位置情報を含むシーンデータを前記制御装置に入力する環境認識センサと、を有し、
前記制御装置は、
予め登録された前記環境内の地図情報を表わす複数の点の位置情報を有するモデルデータを記憶するモデルデータ記憶部と、
前記モデルデータの情報を予め設定された所定の角度毎に回転させた回転モデルデータを作成する回転モデルデータ作成部と、
前記回転モデルデータと前記シーンデータから1点ずつ取り出した組合せについて、位置情報の偏差をとり、前記偏差の頻度を投票点およびその周りに重み付けをして投票し、さらに前記回転モデルデータの回転角度の値を変えながら前記投票を行って頻度が最も多いときの偏差と回転角度を求める投票部と、
前記投票部から、前記環境においての自身の位置・姿勢を取得する自己位置出力部と、を有して構成されている
ことを特徴とする、移動ロボット。 - 前記環境認識センサは、自身を中心とした前記平面上の扇状の計測範囲を所定の所定の角度毎に走査して、周囲の物体までの距離を計測する二次元スキャン型距離センサであり、
前記投票部は、前記モデルデータと前記シーンデータのいずれかにおいて、前記二次元スキャン型距離センサから近いところは投票幅を狭くして重み付けを急にし、遠いところは投票幅を広くして重み付けを緩やかにする
ことを特徴とする請求項7記載の移動ロボット。 - 前記制御装置は
前記モデルデータの位置情報の内、前記の投票を実行したい領域を指定するマッチング領域指定部を有し、
前記回転モデルデータ作成部および前記投票部では、前記マッチング領域指定部で指定された各領域に対してのみ処理を実行し、前記指定された領域に対するマッチング結果に対し平均を取る
ことを特徴とする請求項7又は8記載の移動ロボット。 - 前記各指定領域のマッチング結果に対する平均処理は、重み付き平均である
ことを特徴とする請求項9記載の移動ロボット。 - 前記投票する処理では、モデルデータおよびシーンデータに付随する計測の誤差に応じた重みの積に応じて前記投票の重みを決定する
ことを特徴とする請求項7〜10のいずれか1項に記載の移動ロボット。 - モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において極座標系での極大点、極小点、および他測定点群に隣接する端点を特徴点として求め、前記特徴点周辺のデータのみを前記投票に用いる
ことを特徴とする請求項7〜11のいずれか1項に記載の移動ロボット。 - モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間する
ことを特徴とする請求項1〜6のいずれか1項に記載の移動ロボットの自己位置同定方法。 - モデルデータおよびシーンデータのそれぞれにおいて、
データを測定点群に分割し、各測定点群において測定点間の距離が予め与えられた範囲内にあれば、測定点間を補間する
ことを特徴とする請求項7〜12のいずれか1項に記載の移動ロボット。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009240756A JP2010238217A (ja) | 2009-03-09 | 2009-10-19 | 移動ロボットの自己位置同定方法及び移動ロボット |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009054851 | 2009-03-09 | ||
JP2009240756A JP2010238217A (ja) | 2009-03-09 | 2009-10-19 | 移動ロボットの自己位置同定方法及び移動ロボット |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010238217A true JP2010238217A (ja) | 2010-10-21 |
Family
ID=43092436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009240756A Pending JP2010238217A (ja) | 2009-03-09 | 2009-10-19 | 移動ロボットの自己位置同定方法及び移動ロボット |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010238217A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012086029A1 (ja) * | 2010-12-22 | 2012-06-28 | 株式会社日立製作所 | 自律移動システム |
JP2013012128A (ja) * | 2011-06-30 | 2013-01-17 | Hitachi Industrial Equipment Systems Co Ltd | 移動体および移動体の制御方法 |
US9304001B2 (en) | 2013-07-03 | 2016-04-05 | Samsung Electronics Co., Ltd | Position recognition methods of autonomous mobile robots |
CN109154817A (zh) * | 2016-05-30 | 2019-01-04 | 株式会社久保田 | 自动行驶作业车辆 |
-
2009
- 2009-10-19 JP JP2009240756A patent/JP2010238217A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012086029A1 (ja) * | 2010-12-22 | 2012-06-28 | 株式会社日立製作所 | 自律移動システム |
JP2013012128A (ja) * | 2011-06-30 | 2013-01-17 | Hitachi Industrial Equipment Systems Co Ltd | 移動体および移動体の制御方法 |
US9304001B2 (en) | 2013-07-03 | 2016-04-05 | Samsung Electronics Co., Ltd | Position recognition methods of autonomous mobile robots |
CN109154817A (zh) * | 2016-05-30 | 2019-01-04 | 株式会社久保田 | 自动行驶作业车辆 |
CN109154817B (zh) * | 2016-05-30 | 2021-09-24 | 株式会社久保田 | 自动行驶作业车辆 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5480667B2 (ja) | 位置姿勢計測装置、位置姿勢計測方法、プログラム | |
CN110189366B (zh) | 一种激光粗配准方法、装置、移动终端及存储介质 | |
JP5018458B2 (ja) | 座標補正方法、座標補正プログラム、及び自律移動ロボット | |
JP6506279B2 (ja) | 地図生成システム及び地図生成方法 | |
EP3447532A2 (en) | Hybrid sensor with camera and lidar, and moving object | |
JP2008250906A (ja) | 移動ロボット、自己位置補正方法および自己位置補正プログラム | |
CN106339001A (zh) | 地图生成方法、移动机器人以及地图生成系统 | |
CN110749895B (zh) | 一种基于激光雷达点云数据的定位方法 | |
Kuramachi et al. | G-ICP SLAM: An odometry-free 3D mapping system with robust 6DoF pose estimation | |
CN111522022B (zh) | 基于激光雷达的机器人进行动态目标检测方法 | |
JP2017211825A (ja) | 自己位置推定装置、及び、自己位置推定方法 | |
CN108415413A (zh) | 一种基于圆形有用域的智能叉车局部避障路径规划方法 | |
JP2020024618A (ja) | 移動経路取得方法、及び、移動経路取得装置 | |
TW202036030A (zh) | 資訊處理裝置以及移動機器人 | |
Kim et al. | Autonomous mobile robot localization and mapping for unknown construction environments | |
JP2017211265A (ja) | 測量装置、移動体、測量方法及びプログラム | |
JP2010238217A (ja) | 移動ロボットの自己位置同定方法及び移動ロボット | |
CN114115263A (zh) | 用于agv的自主建图方法、装置、移动机器人及介质 | |
JP2010112836A (ja) | 自己位置同定装置および該自己位置同定装置を備えた移動ロボット | |
JP2008250905A (ja) | 移動ロボット、自己位置補正方法および自己位置補正プログラム | |
Donoso-Aguirre et al. | Mobile robot localization using the Hausdorff distance | |
Hoang et al. | Development of an EKF-based localization algorithm using compass sensor and LRF | |
CN109765569B (zh) | 一种基于激光雷达实现虚拟航迹推算传感器的方法 | |
CN118603087A (zh) | 一种融合激光雷达和视觉特征码的移动机器人定位方法 | |
CN117308982A (zh) | 一种核电站水下清洁机器人的定位方法及装置 |