JP2011027598A - 環境認識装置及びそれを備えた移動体 - Google Patents
環境認識装置及びそれを備えた移動体 Download PDFInfo
- Publication number
- JP2011027598A JP2011027598A JP2009174671A JP2009174671A JP2011027598A JP 2011027598 A JP2011027598 A JP 2011027598A JP 2009174671 A JP2009174671 A JP 2009174671A JP 2009174671 A JP2009174671 A JP 2009174671A JP 2011027598 A JP2011027598 A JP 2011027598A
- Authority
- JP
- Japan
- Prior art keywords
- moving body
- sensor
- measurement
- distance
- distance measurement
- 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
- 238000005259 measurement Methods 0.000 claims description 332
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000001514 detection method Methods 0.000 claims description 8
- 230000036544 posture Effects 0.000 description 47
- 238000000034 method Methods 0.000 description 43
- 238000012545 processing Methods 0.000 description 8
- 239000011159 matrix material Substances 0.000 description 7
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000001678 irradiating effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
【課題】移動体の移動可能領域を適切に検出する。
【解決手段】移動体は、構造物までの距離を計測する距離計測センサ38と、距離計測センサの3次元位置を計測するセンサ位置計測装置18a,18bを備えている。制御装置20は、距離計測センサ38の計測結果とセンサ位置計測装置18a,18bの計測結果を用いて、計測された構造物の3次元位置を算出する。そして、算出された構造物の3次元位置と尤度マップを用いて、その算出された3次元位置に対応するマップ上の計測点における構造物の情報と尤度をマップに登録又は更新すると共に、その計測点の近傍の非計測点における構造物の情報と尤度をマップに登録又は更新する。
【選択図】図2
【解決手段】移動体は、構造物までの距離を計測する距離計測センサ38と、距離計測センサの3次元位置を計測するセンサ位置計測装置18a,18bを備えている。制御装置20は、距離計測センサ38の計測結果とセンサ位置計測装置18a,18bの計測結果を用いて、計測された構造物の3次元位置を算出する。そして、算出された構造物の3次元位置と尤度マップを用いて、その算出された3次元位置に対応するマップ上の計測点における構造物の情報と尤度をマップに登録又は更新すると共に、その計測点の近傍の非計測点における構造物の情報と尤度をマップに登録又は更新する。
【選択図】図2
Description
本発明は、移動体が移動する移動領域内にある構造物(例えば、床面、障害物等)の3次元構造を認識するための技術に関する。
特許文献1には、移動体が移動する移動領域内にある障害物を認識する技術が開示されている。この技術では、距離計測センサが移動体に装備される。距離計測センサは、移動体の走行方向前方の床面に向けてレーザ光を照射し、そのレーザ光の反射光を検出する。レーザ光を照射してから反射光を検出するまでの時間によって、距離計測センサから反射物までの距離を計測する。そして、計測された距離から、レーザ光を照射した方向の床面に障害物があるか否かを検出している。
特許文献1の技術では、距離計測センサで計測されていない領域(非計測点)については、その領域にある構造物を認識できない。このため、距離計測センサで計測されていない領域を通過可能領域と判定するようプログラムした場合、その領域に障害物があると、移動体と障害物とが衝突してしまうこととなる。一方、距離計測センサで計測されていない領域を通過不可能領域と判定するようプログラムした場合、その領域に障害物がなく通過可能な領域であっても、その領域を移動体が通過できないこととなってしまう。
本発明は、上記した実情に鑑みてなされたものであり、距離計測センサで計測された計測点の構造物からその計測点近傍の非計測点の構造物を推定することで、移動体の移動可能領域を適切に検出することが可能となる技術を提供する。
本発明の環境認識装置は、移動体が移動する移動領域内にある構造物の3次元構造を認識する。この環境認識装置は、距離計測センサと、センサ位置計測装置と、尤度マップと、構造物マップと、位置算出手段と、マップ更新手段を備えている。距離計測センサは、移動体に取付けられており、構造物までの距離を計測する。センサ位置計測装置は、距離計測センサの3次元位置を計測する。尤度マップは、距離計測センサで計測された計測点における構造物の情報から、その計測点の近傍の非計測点における構造物を推定するための尤度分布を記憶する。構造物マップは、移動領域内の各点における構造物の情報及びその尤度を記憶する。位置算出手段は、距離計測センサの計測結果及び計測方向とセンサ位置計測装置の計測結果を用いて、距離計測センサで計測された構造物の3次元位置を算出する。マップ更新手段は、位置算出手段で算出された構造物の3次元位置と記憶されている尤度マップを用いて、その算出された3次元位置に対応する構造物マップ上の対応点における構造物の情報と尤度を更新又は登録すると共に、その対応点の近傍の近傍点における構造物の情報と尤度を更新又は登録する。
この環境認識装置では、距離計測センサで構造物までの距離を計測し、センサ位置計測装置で距離計測センサの3次元位置を計測する。移動体への距離計測センサの取付け位置及び取付け角度等から距離計測センサの計測方向は分かるため、前記の各計測値と距離計測時における距離計測センサの計測方向から、計測された構造物の3次元位置が算出される。
この環境認識装置では、計測点の構造物の情報から、その計測点近傍の非計測点の構造物を推定するための尤度マップが設定されており、また、移動領域内の各点における構造物の情報とその尤度を記憶する構造物マップを備えている。このため、距離計測センサで計測された構造物の3次元位置が算出されると、その情報と尤度マップを用いて、計測した点の構造物の情報とその尤度を構造物マップに更新又は登録し、さらに、その計測した点の近傍の点の構造物の情報とその尤度を構造物マップに更新又は登録する。従って、非計測点についても構造物の情報とその尤度が記憶されることとなるため、移動体の移動可能領域を適切に検出することが可能となる。
この環境認識装置では、計測点の構造物の情報から、その計測点近傍の非計測点の構造物を推定するための尤度マップが設定されており、また、移動領域内の各点における構造物の情報とその尤度を記憶する構造物マップを備えている。このため、距離計測センサで計測された構造物の3次元位置が算出されると、その情報と尤度マップを用いて、計測した点の構造物の情報とその尤度を構造物マップに更新又は登録し、さらに、その計測した点の近傍の点の構造物の情報とその尤度を構造物マップに更新又は登録する。従って、非計測点についても構造物の情報とその尤度が記憶されることとなるため、移動体の移動可能領域を適切に検出することが可能となる。
上記の環境認識装置においては、センサ位置計測装置は、移動体の位置を計測する移動体位置計測センサと、移動体の姿勢を計測する移動体姿勢計測センサを有することができる。この場合に、位置算出手段は、移動体位置計測センサの検出結果と移動体姿勢計測センサの検出結果を用いて、距離計測時における距離計測センサの3次元位置及び計測方向を特定し、これら特定された「距離計測センサの3次元位置及び計測方向」と「距離計測センサで計測された構造物までの距離」とから構造物の3次元位置を算出することができる。このような構成によると、距離計測センサの3次元位置及び計測方向が正確に特定できるため、より正確に構造物の3次元位置を算出することができる。
また、上記の環境認識装置は、構造物マップに記憶されている各点の構造物の情報と尤度に基づいて、移動体の移動可能領域を検出する移動可能領域検出手段をさらに備えていることが好ましい。このような構成によると、構造物の情報とその尤度を記憶する構造物マップに基づいて移動体の移動可能領域を検出するため、移動体の移動経路として適切な移動経路を選択することができる。
移動可能領域検出手段が移動可能領域を検出するアルゴリズムとしては、種々のものを採用することができる。例えば、移動可能領域検出手段は、構造物マップに記憶されている構造物の情報から障害物がないと判断され、かつ、尤度が所定の閾値以上となる領域を、移動可能領域として検出することができる。このような構成によると、障害物がなく、かつ、尤度の高い領域が移動可能領域とされるため、移動体が障害物に衝突する可能性が低められ、安全に移動することができる。
また、上記の環境認識装置では、予め設定された既知のキャリブレーション面を利用して、距離計測センサの移動体への取付け位置及び取付け方向をキャリブレーションすることができる。このような環境認識装置としては、例えば、キャリブレーション面データと、キャリブレーション手段を備えることができる。キャリブレーション面データは、予め設定されたキャリブレーション面内の各点における絶対位置(絶対座標系の位置)を記憶する。キャリブレーション手段は、キャリブレーションデータを用いて、距離計測センサの移動体への取付け位置及び取付け姿勢をキャリブレーションする。そして、キャリブレーション手段は、キャリブレーション面内の複数の点のそれぞれについて得られた(1)距離計測センサにより計測される計測距離と(2)距離計測時の移動体の絶対位置及び絶対姿勢(絶対座標系における位置と姿勢)とさらに用いて、距離計測センサの移動体への取付け位置及び取付け姿勢をキャリブレーションする。
このような構成によると、キャリブレーション面内の複数の点を計測した計測結果を用いてキャリブレーションを行うため、精度よくキャリブレーションを行うことができる。また、単独のターゲット(点)ではなく面をターゲットとするため、距離計測センサによってターゲットを容易に計測することができる。
このような構成によると、キャリブレーション面内の複数の点を計測した計測結果を用いてキャリブレーションを行うため、精度よくキャリブレーションを行うことができる。また、単独のターゲット(点)ではなく面をターゲットとするため、距離計測センサによってターゲットを容易に計測することができる。
なお、キャリブレーション手段は、距離計測センサによりキャリブレーション面を1次元的又は2次元的にスキャンすることで得られた複数の計測点の計測距離と、それらの計測点を計測した時の移動体の絶対位置及び絶対姿勢とを用いてキャリブレーションを行うことが好ましい。ここで、2次元的にスキャンするとは、距離計測センサにより距離計測が行われる点群がキャリブレーション面内で直線状に位置するように計測を行うことを意味する。また、3次元的にスキャンするとは、距離計測センサにより距離計測が行われる点群がキャリブレーション面内で平面状に位置するように計測を行うことを意味する。このような構成によると、距離計測を行う計測点の数を容易に増やすことができる。
また、キャリブレーション面は、互いに交差する複数の平面を有していることが好ましい。複数の面をキャリブレーションに利用することで、キャリブレーションを精度よく行うことができる。
また、前記のセンサ位置計測装置は、移動体の位置を計測する移動体位置計測センサと、移動体の姿勢を計測する移動体姿勢計測センサを有することができる。この場合に、キャリブレーション手段は、移動体位置計測センサの出力と移動体姿勢計測センサの出力を用いて、距離計測時の移動体の絶対位置及び絶対姿勢を取得することができる。
このような構成によると、移動体の位置制御及び/又は姿勢制御に用いることができる移動体位置計測センサと移動体姿勢計測センサを利用して「距離計測時の移動体の絶対位置及び絶対姿勢」を取得する。このため、「距離計測時の移動体の絶対位置及び絶対姿勢」を取得するためだけに、別途計測装置を設ける必要はない。
このような構成によると、移動体の位置制御及び/又は姿勢制御に用いることができる移動体位置計測センサと移動体姿勢計測センサを利用して「距離計測時の移動体の絶対位置及び絶対姿勢」を取得する。このため、「距離計測時の移動体の絶対位置及び絶対姿勢」を取得するためだけに、別途計測装置を設ける必要はない。
また、本発明の移動体は、上述した環境認識装置のいずれかが装備されている。このような環境認識装置を装備することで、移動体は自律的に適切な経路を選択して移動することができる。
下記に詳細に説明する実施例の主要な特徴を最初に列記する。
(形態1)距離計測センサは、2次元スキャン型の距離計測センサである。
(形態2)移動領域の2次元マップを備える。この2次元マップは、マップ内の各点について高さ情報と尤度を記憶する。
(形態1)距離計測センサは、2次元スキャン型の距離計測センサである。
(形態2)移動領域の2次元マップを備える。この2次元マップは、マップ内の各点について高さ情報と尤度を記憶する。
(第1実施例) 本発明の一実施例に係る移動体について、図面を参照しながら説明する。図1,2に示すように、移動体10は、4つの車輪12a,12b,14a,14bと、これら4つの車輪12a,12b,14a,14bによって支持される車体40を備えている。
前輪14a,14bは、キャスタ輪であり、車体40に取付けられている。後輪12aは、モータ16aと接続されており、モータ16aによって駆動される。後輪12bは、モータ16bと接続されており、モータ16bによって駆動される。すなわち、後輪12a、12bはそれぞれ独立して駆動される。後輪12a,12bを駆動することで、移動体10は床面Fを走行する。また、後輪12aの回転駆動量と後輪12bの回転駆動量を変えることで、移動体10はその進行方向を変える。
車体40には、車輪12a、12bを駆動するモータ16a、16bと、車体40の姿勢(ロール角,ピッチ角,ヨー角)を検出する3軸のジャイロセンサ36と、進行方向の床面Fまでの距離を計測する距離計測センサ38と、モータ16a、16bに制御指令値を出力する制御装置20が備えられている。
モータ16a、16bは、制御装置20と電気的に接続されている。モータ16a、16bは、制御装置20から入力される制御指令値にしたがって、後輪12a、12bを駆動する。モータ16aにはエンコーダ18aが設けられている。エンコーダ18aは、制御装置20と電気的に接続されている。エンコーダ18aは、モータ16aの回転角速度(すなわち、後輪12aの回転角速度)を検出する。エンコーダ18aが検出した後輪12aの回転角速度は、制御装置20に入力される。また、モータ16bにもエンコーダ18bが設けられている。エンコーダ18bは、後輪12bの回転角速度を検出する。エンコーダ18bが検出した後車12bの回転角速度も、制御装置20に入力される。
ジャイロセンサ36は、車体40の内部に配設されている。ジャイロセンサ36は制御装置20と電気的に接続されている。ジャイロセンサ36は、車体40の姿勢(ロール角,ピッチ角,ヨー角)を検出する。検出した車体40の姿勢(ロール角,ピッチ角,ヨー角)は、制御装置20に入力される。
距離計測センサ38は、2次元スキャン型の距離計測センサである。距離計測センサ38は、照射したレーザ光の反射光を検出し、レーザ光を照射してから反射光を検出するまでの時間で距離を計測する。レーザ光を照射する面S(以下、計測面Sという)は一定とされる一方で、レーザ光を照射する方向は、設定された角度範囲内を一定の角速度で変化する。従って、距離計測センサ38は、計測面S内の設定された角度範囲を所定の角度間隔で距離計測を行うこととなる。このため、距離計測センサ38からの距離が近いと計測点間の間隔は短く(計測密度が高く)、距離計測センサ38からの距離が遠くなると計測点間の間隔は長くなる(計測密度が低くなる)。このような距離計測センサ38としては、例えば、SICK社製のLMS200を用いることができる。
なお、本実施例では、距離計測センサ38に2次元スキャン型の距離計測センサを用いたが、距離計測センサ28にはその他の公知の距離計測センサ(例えば、3次元スキャン型の距離計測センサ)を用いることができる。また、距離計測方式も、レーザ光に限られず、公知の種々の方式(例えば、電磁波等)を用いることができる。
なお、本実施例では、距離計測センサ38に2次元スキャン型の距離計測センサを用いたが、距離計測センサ28にはその他の公知の距離計測センサ(例えば、3次元スキャン型の距離計測センサ)を用いることができる。また、距離計測方式も、レーザ光に限られず、公知の種々の方式(例えば、電磁波等)を用いることができる。
上述した距離計測センサ38は、車体40の進行方向前側の端部で、かつ、左側面の近傍に設置されている。また、距離計測センサ38の設置角度は、ロール軸(X軸)周りに所定角度(例えば、30°)だけ傾けられると共に、ピッチ軸(Y軸)周りに所定角度(例えば、30°)だけ傾けられている。このため、移動体10の進行方向前方で計測面Sと床面Fとが交差し(図1参照)、移動体10の進行方向前方の車幅の範囲の全域が距離計測センサ38で計測されることとなる。すなわち、本実施例では、距離計測センサ38によって、移動体10の進行方向前方の床面の3次元構造が計測される。
制御装置20は、CPU,ROM,RAMを備えたマイクロプロセッサによって構成されている。制御装置20は、車体40内に配されている。制御装置20は、モータ16a、16bと、エンコーダ18a、18bと、ジャイロセンサ36と、距離計測センサ38に電気的に接続されている。図3は制御装置20の機能を示すブロック図である。図3に示すように、制御装置20は、センサ位置算出部22、構造物位置算出部23、マップ登録更新部24、移動可能領域検出部26、移動経路決定部28、尤度マップ記憶部29、構造物マップ記憶部30、目標位置記憶部32、モータ駆動部34を備えている。
構造物マップ記憶部30は、移動体10が移動する移動領域の2次元マップを記憶する。この2次元マップには、移動領域内の各点[グローバル座標系の点(x,y)]における構造物(例えば、床面F)の高さμとその尤度(尤もらしさ)σが記憶されている。例えば、移動領域内の点(x1,y1)に高さμ1の構造物が尤度(確率)σ1で存在する場合、2次元マップの座標(x1,y1)には(μ1,σ1)が記憶される(図4参照)。本実施例では、3次元マップに代えて2次元マップに高さ情報μを記憶することで、マップ記憶部30に要求されるメモリ容量を少なくしている。なお、構造物マップを作成する領域は予め決められていてもよいし、距離計測センサ38で計測する点が増加するのに応じて適宜拡張していくようにしてもよい。
尤度マップ記憶部29は、距離計測センサ38で計測される計測点における構造物の情報(高さμ)から、その計測点の近傍の非計測点における構造物の情報(高さ)を推定するための尤度分布を記憶する。図5に尤度マップの一例を示している。図5に示すように、尤度マップは、計測点P1から非計測点P’1,P’’1までの距離に応じて尤度σが設定されている。具体的には、計測点P1には尤度σ1(=1.0)が設定され、計測点P1に隣接する非計測点P’1には尤度σ’1(<σ1)が設定され、非計測点P’1にさらに隣接する非計測点P’’1には尤度σ’’1(<σ’1)が設定される。すなわち、計測点P1の高さがμである場合、非計測点P’1の高さがμである尤度(確率)はσ’1となり、非計測点P’’1の高さがμである尤度(確率)はσ’’1となる。
目標位置記憶部32は、移動体10が移動する目的地(xf,yf)[グローバル座標系の点(xf,yf)]を記憶する。目的地(xf,yf)は、外部装置(例えば、遠隔操縦装置等)を用いて制御装置20に入力される。外部装置から入力された目的地(xf,yf)は、目標位置記憶部32に記憶される。
センサ位置算出部22は、エンコーダ18a,18bの出力とジャイロセンサ36の出力から、距離計測時における距離計測センサ38の3次元位置[(x、y、z);グローバル座標系]を算出する。すなわち、エンコーダ18a,18bの出力を積分すると、移動体10の移動距離(Δx,Δy)を算出することができる。また、移動体10の基準点の初期位置(xs,ys)は既知である。このため、移動体10の移動距離(Δx,Δy)を算出すれば、移動体10の基準点の位置(xs+Δx,ys+Δy)を算出することができる。また、移動体10の基準点と距離計測センサ38の幾何学的関係は既知であり、車体40の姿勢(ロール角,ピッチ角,ヨー角)はジャイロセンサ36により検出されている。このため、センサ位置算出部22は、エンコーダ18a,18bの出力から移動体10(基準点)の2次元位置(xs+Δx,ys+Δy)を算出し、その算出された2次元位置(xs+Δx,ys+Δy)とジャイロセンサ36の出力より、移動体10の3次元位置及び姿勢を算出し、算出した移動体の現在の位置及び姿勢、並びに、距離計測センサ38の位置姿勢関係(幾何学的に既知)から距離計測センサ38の3次元位置(x,y,z)を算出する。なお、車体40に対する距離計測センサ38の取付け位置及び取付け角度は一定である。このため、センサ位置算出部22は、ジャイロセンサ36で検出された車体40の姿勢から、距離計測時における距離計測センサ38の距離計測方向をさらに算出する。
構造物位置算出部23は、センサ位置算出部22で算出された距離計測センサ38の3次元位置(x,y,z)及び距離計測方向と、距離計測センサ38で計測された構造物(床面等)までの距離から、構造物の3次元位置[(x0,y0,z0);グローバル座標系(絶対座標系)]を算出する。すなわち、距離計測センサ38の距離計測方向と距離計測センサ38から構造物までの距離が分かると、距離計測センサ38に対する構造物の相対位置を算出できる。このため、距離計測センサ38の3次元位置が分かると、構造物の3次元位置(x0,y0,z0)を算出できる。従って、構造物位置算出部23は、センサ位置算出部22の算出結果と距離計測センサ38の計測距離から、構造物の3次元位置(x0,y0,z0)を算出する。
マップ登録更新部24は、構造物位置算出部23で算出された構造物の3次元位置(x0,y0,z0)から、構造物マップ記憶部30に記憶されている2次元マップを更新する。すなわち、構造物の3次元位置(x0,y0,z0)が算出されると、2次元マップ上の点(x0,y0)(すなわち、計測点)の構造物の高さが算出されたこととなる。このため、マップ登録更新部24は、まず、尤度マップ記憶部29に記憶されている尤度分布(図5参照)を用いて、計測点(x0,y0)と、その計測点の近傍の非計測点における構造物の高さと尤度を特定する。具体的には、計測点(x0,y0)における高さと尤度を(z0,σ1)とし、計測点に隣接する非計測点(x0+1,y0),(x0−1,y0),(x0,y0+1),(x0,y0−1)における高さと尤度を(z0,σ1’)とし、さらにその外側の非計測点(x0+2,y0),(x0+1,y0+1),(x0+1,y0−1),(x0,y0+2),(x0,y0−2),(x0−1,y0+1),(x0−1,y0−1),(x0−2,y0)における高さと尤度を(z0,σ1’’)とする。
計測点と非計測点における高さと尤度が特定されると、次に、マップ登録更新部24は、その特定された高さと尤度を2次元マップに記憶する。この際、構造物マップ記憶部30に記憶される2次元マップの該当する座標に高さと尤度が記憶されていない場合、上述した手順で特定した高さと尤度をそのまま登録する。すなわち、計測点については(z0,σ1)が登録され、計測点に隣接する非計測点については(z0,σ1’)が登録され、さらにその外側の非計測点については(z0,σ1’’)が登録される。一方、構造物マップ記憶部30に記憶される2次元マップの該当する座標に既に高さと尤度が記憶されている場合、次の式でその点の高さと尤度を更新する。なお、下記の式において、μ1,σ1は2次元マップに記憶されている高さと尤度であり、μ2とσ2は計測された高さと尤度であり、μ3,σ3は新しく登録される高さと尤度である。
図6を用いて具体的に説明する。図6において、時刻t1の計測によって計測点Pt1の高さが算出され、時刻t2の計測によって計測点Pt2の高さが算出されたものとする。この場合、時刻t1の計測によって計測点Pt1とその近傍の非計測点P’t1,P’’t1,P’’t1t2の高さと尤度が登録される。次いで、時刻t2の計測によって、計測点Pt2とその近傍の非計測点P’t2,P’’t2,P’’t1t2の高さと尤度が計算される。ここで、非計測点P’’t1t2については、既に時刻t1の計測によって高さと尤度が記憶されている。このため、非計測点P’’t1t2については、上記の式で高さと尤度を計算する。一方、計測点Pt2とその近傍の非計測点P’t2,P’’t2については、2次元マップに高さと尤度が記憶されていないため、計算された高さと尤度をそのまま記憶する。
移動可能領域検出部26は、構造物マップ記憶部30に記憶されている2次元マップから、移動体10が移動することができる領域を検出する。具体的には、2次元マップに記憶されている高さ情報μが所定の閾値範囲内の領域(すなわち、床面Fの凹凸が小さい領域)であり、かつ、尤度が所定の閾値以上の領域(すなわち、計測がある程度行われた領域)を、移動可能領域として検出する。なお、移動可能領域か否かを判断する基準は、移動体10の床面Fの走行速度に応じて適宜変更することができる。
移動経路決定部28は、移動可能領域検出部26で検出された移動可能領域と、目標位置記憶部32に記憶されている目的地(xf,yf)とから、移動体10の移動経路を決定する。例えば、現在位置と目的地とを結ぶ直線上に移動可能領域があれば、現在位置と目的地を結ぶ直線を移動経路とする。一方、現在位置と目的地とを結ぶ直線上に移動可能領域がなければ、現在位置と目的地とを結ぶ迂回経路を探索する。迂回経路を探索するアルゴリズムには、公知の種々の方法を採ることができる。
モータ駆動部34は、移動経路決定部28で決定された経路上を移動体10が移動するようにモータ16a、16bの駆動量を決定し、その駆動量でモータ16a、16bを駆動する。
次に、上述のように構成される制御装置20によって行われる処理について説明する。図7は制御装置20の処理手順を示すフローチャートである。図7に示すように、制御装置20は、まず、エンコーダ18a、18bとジャイロセンサ36と距離計測センサ38を動作させてマップ更新登録処理を行う(S10)。
図8はマップ更新登録処理の処理手順を示すフローチャートである。図8に示すように、制御装置20は、まず、距離計測センサ38により距離計測を行う(S22)。距離計測センサ38で計測された距離は制御装置20に入力される。また、距離計測時における距離計測センサ38の距離計測角度(レーザ光を出射した角度θ(図2))も制御装置20に入力される。
次に、制御装置20は、ジャイロセンサ36により車体40の姿勢を計測し(S24)、エンコーダ16a,16bの出力から車体40(基準点)のグローバル座標系(絶対座標系)の位置を算出(計測)する(S26)。これらの処理によって、ステップS22で距離計測を行った時の車体40の姿勢(グローバル座標系の姿勢)と車体40(基準点)の座標(グローバル座標系の座標値)が得られる。
次に、制御装置20は、ステップS24で得られた車体40の姿勢と、ステップS26で得られた車体40(基準点)の座標から、距離計測センサ38の3次元位置(グローバル座標系の座標値)を算出する(S28)。すなわち、車体40に対する距離計測センサ38の取付け位置及び取付け角度は既知であるため、ステップS24とS26の計測結果から距離計測センサ38の3次元位置及び計測方向を求めることができる。
ステップS30に進むと、制御装置20は、ステップS22で得られた距離計測センサ38から構造物(床面等)までの距離及び距離計測角度(相対座標系)と、ステップS28で算出された距離計測センサ38の3次元位置(絶対座標系)及び姿勢(絶対座標系)から、距離計測センサ38で計測された構造物の3次元位置(グローバル座標系)を算出する。この際、ステップS24で検出された車体40の姿勢より、距離計測センサ38の計測角度(相対座標系)が補正され、補正された距離計測角度が用いられる。これによって、計測された構造物の3次元位置が精度良く算出される。
次に、ステップS30で算出された構造物の3次元位置と、尤度マップ記憶部29に記憶されている尤度マップを用いて、構造物マップ記憶部30に記憶されている2次元マップを更新及び/又は登録する(S32)。これによって、構造物マップ記憶部30の対応する点及びその近傍の点に高さ情報μと尤度σが格納される。ステップS32が終わると、マップ更新登録処理を終了し、図7のステップS12に戻る。
次に、制御装置20は、ジャイロセンサ36により車体40の姿勢を計測し(S24)、エンコーダ16a,16bの出力から車体40(基準点)のグローバル座標系(絶対座標系)の位置を算出(計測)する(S26)。これらの処理によって、ステップS22で距離計測を行った時の車体40の姿勢(グローバル座標系の姿勢)と車体40(基準点)の座標(グローバル座標系の座標値)が得られる。
次に、制御装置20は、ステップS24で得られた車体40の姿勢と、ステップS26で得られた車体40(基準点)の座標から、距離計測センサ38の3次元位置(グローバル座標系の座標値)を算出する(S28)。すなわち、車体40に対する距離計測センサ38の取付け位置及び取付け角度は既知であるため、ステップS24とS26の計測結果から距離計測センサ38の3次元位置及び計測方向を求めることができる。
ステップS30に進むと、制御装置20は、ステップS22で得られた距離計測センサ38から構造物(床面等)までの距離及び距離計測角度(相対座標系)と、ステップS28で算出された距離計測センサ38の3次元位置(絶対座標系)及び姿勢(絶対座標系)から、距離計測センサ38で計測された構造物の3次元位置(グローバル座標系)を算出する。この際、ステップS24で検出された車体40の姿勢より、距離計測センサ38の計測角度(相対座標系)が補正され、補正された距離計測角度が用いられる。これによって、計測された構造物の3次元位置が精度良く算出される。
次に、ステップS30で算出された構造物の3次元位置と、尤度マップ記憶部29に記憶されている尤度マップを用いて、構造物マップ記憶部30に記憶されている2次元マップを更新及び/又は登録する(S32)。これによって、構造物マップ記憶部30の対応する点及びその近傍の点に高さ情報μと尤度σが格納される。ステップS32が終わると、マップ更新登録処理を終了し、図7のステップS12に戻る。
図7のステップS12に戻ると、制御装置20は、構造物マップ記憶部30に記憶されている2次元マップから移動経路が存在するか否かを判定する(S12)。すなわち、制御装置20は、まず、構造物マップ記憶部30に記憶されている2次元マップの各点のうち、高さが所定の閾値範囲内となり、かつ、尤度が所定の閾値より大きくなる領域を、移動可能領域として検出する。次に、移動体10の現在位置と目標位置記憶部32に記憶されている目標位置を結び、その結んだ直線上に移動可能領域が存在する場合は、その直線上の経路を移動経路として選択する。直線上の経路に移動可能領域が存在しない場合は、迂回経路が存在するか否かを探索する。迂回経路が存在する場合は迂回経路を選択し、迂回経路が見つけられない場合は移動経路が存在しないと判断する。
移動経路が存在しない場合(ステップS12でNO)、制御装置20は、距離計測センサ38によって距離計測する測定領域を変更し(S20)、ステップS10のマップ更新登録処理を再び行う。すなわち、構造物マップ記憶部30に記憶されている2次元マップのうち尤度の低い領域は十分な計測が行われていない。このため、モータ16a,16bを駆動して車体40の向きを変更し、尤度の低い領域を再計測する。これによって制御装置20は、尤度の低い領域に移動経路が存在するか否かを確認する。
移動経路がある場合(ステップS12でYES)、制御装置20は、モータ16a,16bを駆動してステップS12で選択した移動経路を移動する(S14)。次いで、制御装置20は、移動体10が目標位置(目的地)に到着したか否かを判定する(S18)。目標位置に到着している場合(ステップS18でYES)は、そのまま処理を終了する。目標位置に到着していない場合(ステップS18でNO)は、ステップS10に戻ってステップS10からの処理を繰り返す。これによって、移動体10は、自律的に移動経路を選択し、目標位置まで移動することができる。
上述した説明から明らかなように、本実施例の移動体10では、尤度マップ記憶部29に記憶されている尤度分布によって、計測点の構造物(床面)の情報(高さμ)から、その計測点近傍の非計測点の構造物(床面)の情報(高さμ)を推定する。このため、非計測点における構造物(床面)を予測して移動経路を決定することができる。例えば、非計測点であっても、その非計測点の周囲に多くの計測点がある場合は、その非計測点の尤度は高くなっている。このため、その非計測点の予測される高さμが所定の閾値範囲内であれば、その非計測点は通過可能領域として検出され、この領域を通過することができる。一方、計測密度が低く尤度の低い領域(非計測点)は通過可能領域として検出されない。このため、移動体10が検出されていない障害物と衝突してしまうといった事態を避けることができる。
また、本実施例では、距離計測センサ38として2次元スキャン型の距離計測センサを用いている。2次元スキャン型の距離計測センサは、計測対象が遠くなるほど、計測点間の間隔が長くなる。本実施例では、計測点の構造物の情報から計測点間の構造物の情報を推定するため、計測対象を遠くに設定して計測点間の間隔を長くすることができる。このため、移動体10の移動速度を高めることができる。
また、本実施例では、距離計測センサ38として2次元スキャン型の距離計測センサを用いている。2次元スキャン型の距離計測センサは、計測対象が遠くなるほど、計測点間の間隔が長くなる。本実施例では、計測点の構造物の情報から計測点間の構造物の情報を推定するため、計測対象を遠くに設定して計測点間の間隔を長くすることができる。このため、移動体10の移動速度を高めることができる。
なお、上述した実施例では、距離計測センサ38の計測面Sが一定であったが、計測面SをZ軸方向に揺動可能な構成とすることができる。計測面SをZ軸方向に揺動させることで、移動体10を停止した状態のまま、移動体10に近い床面から遠い床面までを計測することができる。これによって、移動体10の移動経路をより適切に選択することができる。
図9〜12は、距離計測センサ38をZ軸方向に揺動させたときに得られる構造物マップの一例を示している。図9は距離計測センサ38によって計測した床面の状況を模式的に示している。図9に示すように、床面には複数の凹所Hが形成されている。図10は、尤度を用いてマップを更新することなく得られた、高さ方向の情報のみを持つ構造物マップ(いわゆる、2次元エレベーションマップ)を示している。図11は、尤度を用いてマップを更新することで得られたマップの尤度(σ)を示している。図12は、尤度を用いてマップを更新することで得られた構造物マップから移動可能領域を検出した状態を示している。図12に示すように、床面のうち凹所Hが形成された領域と、尤度の低い領域(移動体10の右前方)が移動不可能領域となっている。
このように距離計測センサ38をZ軸方向に揺動させると、移動体10から離れた位置の床面まで計測することができる。このため、移動体10から離れた床面の障害物の状況を加味して移動経路を選択できるので、より適切な移動経路を選択することができる。
図9〜12は、距離計測センサ38をZ軸方向に揺動させたときに得られる構造物マップの一例を示している。図9は距離計測センサ38によって計測した床面の状況を模式的に示している。図9に示すように、床面には複数の凹所Hが形成されている。図10は、尤度を用いてマップを更新することなく得られた、高さ方向の情報のみを持つ構造物マップ(いわゆる、2次元エレベーションマップ)を示している。図11は、尤度を用いてマップを更新することで得られたマップの尤度(σ)を示している。図12は、尤度を用いてマップを更新することで得られた構造物マップから移動可能領域を検出した状態を示している。図12に示すように、床面のうち凹所Hが形成された領域と、尤度の低い領域(移動体10の右前方)が移動不可能領域となっている。
このように距離計測センサ38をZ軸方向に揺動させると、移動体10から離れた位置の床面まで計測することができる。このため、移動体10から離れた床面の障害物の状況を加味して移動経路を選択できるので、より適切な移動経路を選択することができる。
また、上述した実施例では、車体40の左前端部の1箇所にのみ距離計測センサ38を設置したが、移動体10には複数の距離計測センサを設置することができる。例えば、図13に示すように、車体40の左右の前端部にそれぞれ距離計測センサ42a,42bを設置するようにしてもよい。図13に示すように、距離計測センサ42a,42bは、ロール軸(X軸)及びピッチ軸(Y軸)周りに傾けられ、移動体の進行方向前方を密に計測できるようになっている。このように複数の距離計測センサを装備することで、床面の状況をより正確に観測することができる。
また、上述した実施例では、尤度を用いた構造物マップのみから移動可能領域を検出したが、本発明はこのような実施例には限られない。例えば、尤度マップを用いていない2次元エレベーションマップ(高さ方向の情報のみを持つ構造物マップ)と、尤度マップを用いた構造物マップ(高さ情報μと尤度σを持つ構造物マップ)の両者を用いて、移動可能領域を検出するようにしてもよい。例えば、2次元エレベーションマップから障害物(床面の突起や凹所等)がある領域を検出し、その領域を移動不可能領域とする。また、尤度マップが用いられた構造物マップから尤度の低い領域を検出し、その領域を移動不可能領域とする。その後、上記2つのマップで移動不可能領域として検出されていない領域を、移動可能領域として検出する。尤度を用いていない2次元エレベーションマップは、計測点のみの情報から作成されているため、床面の障害物(凹所や突起等)を正確に反映したものとなっている。このため、2次元エレベーションマップを用いることで、観測されている障害物(凹所や突起等)を確実に回避することができる。また、尤度の高い領域が移動不可能領域として検出されるため、観測されていない障害物に衝突してしまうことを回避することができる。
また、上述した実施例では、移動体10の位置と姿勢を計測することで、距離計測センサ38の3次元位置を特定したが、本発明はこのような例に限らない。例えば、距離計測センサ自体にGPSセンサを取付け、距離計測センサの位置を直接計測するようにしてもよい。また、移動体10が移動する領域が屋内環境等で床面の傾斜の影響が無視でき、また、移動体の移動速度による影響が無視できるようであれば、移動体10の姿勢を計測するジャイロセンサを省略することができる。
また、上述した実施例では、移動体10が自律的に移動経路を選択し、その選択した移動経路を移動するものであったが、本発明は、操作者が操作する移動体(例えば、パワーアシスト型の移動車両)にも適用することができる。このような半自律的な移動体に本発明の技術を適用することで、適切な経路選択をアシストすることができる。
また、上述した実施例では、2次元マップを用いたが、3次元マップを用いることもできる。この場合には、尤度マップは3次元で与えられる。
(第2実施例) 次に、本願の第2実施例の移動体について説明する。第2実施例の移動体は、構造物の計測精度を向上するために、距離計測センサの取付け位置及び取付け姿勢をキャリブレーションする機能を備えていることを特徴としている。
既に説明したように、この移動体では、距離計測センサで計測された構造物までの距離と、距離計測時の移動体の位置及び姿勢と、移動体に対する距離計測センサの取付け位置及び取付け姿勢を用いて、距離計測センサで計測された構造物の絶対位置を算出する。このため、構造物の絶対位置を精度よく算出するためには、距離計測センサの取付け位置及び取付け姿勢を正確に取得する必要がある。特に、距離計測センサで床面の状態を計測しようとすると、移動体に対して距離計測センサが斜めに取付けられる。このため、距離計測センサの取付け姿勢の変化が、構造物の絶対位置算出精度に大きな影響を与える。
既に説明したように、この移動体では、距離計測センサで計測された構造物までの距離と、距離計測時の移動体の位置及び姿勢と、移動体に対する距離計測センサの取付け位置及び取付け姿勢を用いて、距離計測センサで計測された構造物の絶対位置を算出する。このため、構造物の絶対位置を精度よく算出するためには、距離計測センサの取付け位置及び取付け姿勢を正確に取得する必要がある。特に、距離計測センサで床面の状態を計測しようとすると、移動体に対して距離計測センサが斜めに取付けられる。このため、距離計測センサの取付け姿勢の変化が、構造物の絶対位置算出精度に大きな影響を与える。
ここで、移動体及び距離計測センサの設計値と、移動体に取付ける際の加工精度や組付け精度だけを用いて、距離計測センサの取付け位置及び取付け姿勢を決定すると、構造物の絶対位置を精度よく算出できない。一方、距離計測センサの取付け位置及び取付け姿勢をキャリブレーションにより決定しようとすると、従来の技術では、キャリブレーションのためだけに専用の装置を製作しなければならなかった。
本願の第2実施例は、上記の課題を解決することができるキャリブレーション方法を提供する。このキャリブレーション方法は、移動体に取付けられた距離計測センサの取付け位置及び取付け姿勢のキャリブレーションを行う方法に関する。この方法では、位置決め工程と距離計測工程と回転角計測工程を有している。位置決め工程では、絶対位置が既知のキャリブレーション面に対して予め設定された位置関係となる基準軸に移動体を位置決めする。距離計測工程では、基準軸に対して位置決めされた移動体を基準軸周りに回転させながら距離計測センサでキャリブレーション面までの距離を計測する。回転角計測工程では、距離計測工程において距離を計測した時の移動体の基準軸周りの回転角を計測する。そして、キャリブレーション面内の複数の点について、距離計測工程と回転角計測工程とを行うことで得られた計測結果から、距離計測センサの移動体への取付け位置及び取付け姿勢をキャリブレーションする。
この方法では、絶対位置が既知の基準軸に移動体を位置決めし、その位置から絶対位置が既知のキャリブレーション面までの距離を計測する。このため、計測された「キャリブレーション面までの距離」と「距離計測時の移動体の基準軸周りの回転角」とを用いて、距離計測センサの取付け位置及び取付け姿勢のキャリブレーションを行うことができる。また、キャリブレーション面内の複数の点について計測された結果に基づいてキャリブレーションを行うため、精度よくキャリブレーションを行うことができる。また、移動体を基準軸周りに回転させながらキャリブレーション面までの距離を計測するため、簡易な方法でキャリブレーション面内の多くの点を計測することができる。さらに、単独のターゲット(点)ではなく面をターゲットとするため、距離計測センサによってターゲット(キャリブレーション面)を容易に計測することができる。
この方法では、絶対位置が既知の基準軸に移動体を位置決めし、その位置から絶対位置が既知のキャリブレーション面までの距離を計測する。このため、計測された「キャリブレーション面までの距離」と「距離計測時の移動体の基準軸周りの回転角」とを用いて、距離計測センサの取付け位置及び取付け姿勢のキャリブレーションを行うことができる。また、キャリブレーション面内の複数の点について計測された結果に基づいてキャリブレーションを行うため、精度よくキャリブレーションを行うことができる。また、移動体を基準軸周りに回転させながらキャリブレーション面までの距離を計測するため、簡易な方法でキャリブレーション面内の多くの点を計測することができる。さらに、単独のターゲット(点)ではなく面をターゲットとするため、距離計測センサによってターゲット(キャリブレーション面)を容易に計測することができる。
なお、上記の回転角計測工程では、移動体の姿勢を計測する移動体姿勢計測センサによって、移動体の基準軸周りの回転角を計測することができる。
また、上記のキャリブレーション面は、互いに交差する複数の平面を有していることが好ましい。この場合、それら複数の平面のなす角が180°未満となる側を計測することが好ましい(すなわち、凹となる側の平面を計測することが好ましい)。凹となる側の平面に対して距離計測を行うことで、多くの点を計測することができる。
以下、図面を参照して第2実施例の移動体を詳細に説明する。第2実施例の移動体は、距離計測センサの取付け位置及び取付け姿勢をキャリブレーションする機能を備えている点で第1実施例と相違し、その他の構成(ハードウェア構成及びソフトウェア構成)については第1実施例の移動体10と同一である。このため、以下の説明では、第1実施例と同一の部分については同一の符号を用いて、その説明を省略する。図14は本実施例のキャリブレーションの手順を示すフローチャートであり、図15はキャリブレーションを実施している時の移動体10の様子を示す図である。
図14に示すように、制御装置20は、まず、モータ16a,16bにより車輪12a,12bを駆動して、キャリブレーション面Wx,Wy,Fに対して予め設定された所定の位置及び姿勢となるように移動体10を位置決めする(S40)。これによって、移動体10は、キャリブレーション面Wx,Wy,Fの近傍の予め設定された位置に予め設定された姿勢で位置決めされる(図15に示す状態)。図15に示すように、キャリブレーションに使用する面(キャリブレーション面)は、x方向に伸びる壁面Wxと、y方向に伸びる壁面Wyと、床面Fによって構成されている。本実施例では、壁面Wxと壁面Wyと床面Fのそれぞれは90°の角度で交差し、壁面Wxと壁面Wyと床面Fの凹となる側の面がキャリブレーションに使用される。なお、壁面Wxと壁面Wyと床面Fの絶対位置(グローバル座標系(絶対座標系Ca)の形状情報)は既知であり、それらの値はキャリブレーションデータとして制御装置20内に格納されている。また、移動体10を位置決めする絶対位置及び絶対姿勢(絶対座標系Caの位置及び姿勢)も、制御装置20内に格納されている。
次に、制御装置20は、距離計測センサ38を作動させて、移動体10からキャリブレーション面Wx,Wy,Fまでの距離の計測を開始する(S42)。既に説明したように、距離計測センサ38は2次元スキャン型の距離計測センサである。このため、レーザ光を照射する計測面Sが一定となる一方で、レーザ光を照射する方向は設定された角度範囲内を一定の角速度で変化する。従って、距離計測センサ38は、キャリブレーション面Wx,Wy,Fと計測面Sとの交線L上の点PL11,PL12,PL13・・の距離を計測することとなる。
なお、距離計測センサ38は、キャリブレーション面Wx,Wy,Fの凹側の面を計測するため、キャリブレーション面Wx,Wy,Fの凸側の面を計測する場合と比較して、隣接する計測点PL11,PL12,PL13・・間の距離が短くなる(すなわち、計測密度が高くなる)。このため、距離計測センサ38は、キャリブレーション面のWx,Wy,Fの多くの点を計測することができる。
また、距離計測センサ38は、車体40に対して、ロール軸(X軸)周りに所定角度(例えば、30°)だけ傾けられると共に、ピッチ軸(Y軸)周りに所定角度(例えば、30°)だけ傾けて取付けられている。このため、計測点PL11,PL12,PL13・・を結んだ直線(すなわち、走査線)L1,L2・・は、図15に示すように、壁面Wx,Wy,Fを斜めに伸びることとなる。このため、計測点を結ぶ直線Lは、複数の面Wx,Wy,Fに跨る場合が生じる。ただし、図15では、計測点を結ぶ直線Lは複数の壁面Wx,Wy,Fには跨っていない。
なお、距離計測センサ38は、キャリブレーション面Wx,Wy,Fの凹側の面を計測するため、キャリブレーション面Wx,Wy,Fの凸側の面を計測する場合と比較して、隣接する計測点PL11,PL12,PL13・・間の距離が短くなる(すなわち、計測密度が高くなる)。このため、距離計測センサ38は、キャリブレーション面のWx,Wy,Fの多くの点を計測することができる。
また、距離計測センサ38は、車体40に対して、ロール軸(X軸)周りに所定角度(例えば、30°)だけ傾けられると共に、ピッチ軸(Y軸)周りに所定角度(例えば、30°)だけ傾けて取付けられている。このため、計測点PL11,PL12,PL13・・を結んだ直線(すなわち、走査線)L1,L2・・は、図15に示すように、壁面Wx,Wy,Fを斜めに伸びることとなる。このため、計測点を結ぶ直線Lは、複数の面Wx,Wy,Fに跨る場合が生じる。ただし、図15では、計測点を結ぶ直線Lは複数の壁面Wx,Wy,Fには跨っていない。
次に、制御装置20は、モータ16a,16bを駆動して、移動体10をステップS40で位置決めした位置で自転させる(S44)。すなわち、移動体10では、前輪14a,14bにキャスタ輪が用いられている。このため、右後輪12bと左後輪12aを逆方向に等角速度で駆動することで、移動体10はステップS40で位置決めした位置で自転することとなる。この場合、移動体10は、右後輪12bと床面Fとの接触点と、左後輪12aと床面Fとの接触点とを結ぶ線分の中点を通る「床面Fに垂直な軸線(基準軸)」の周りに回転することとなる。
次に、制御装置20は、距離計測センサ38から出力される1走査線分の計測結果を取込む(ステップS46)。なお、距離計測センサ38が1走査線分の計測を行うのに要する時間は短いため、ステップS46で計測される計測点群はキャリブレーション面Wx,Wy,F上を直線状に位置するとみなすことができる。
次に、制御装置20は、ステップS46の計測を行っている時の移動体10の軸線(基準軸)周りの回転角を計測する(S48)。具体的には、ステップS46の計測を行っているときのエンコーダ18a,18bの出力を取込む。エンコーダ18a,18bの出力から後輪12a,12bの回転駆動量を求めることができるため、これによって移動体10の軸線周りの回転角を算出することができる。なお、上述したように、距離計測センサ38が1走査線分の計測を行うのに要する時間は短いため、本実施例では、1走査線分の距離計測に対して1つの回転角のみが計測される。ただし、計測点毎に移動体10の軸線周りの回転角を計測してもよいことはいうまでもない。
次いで、制御装置20は、移動体10が軸線(基準軸)周りに所定角度だけ回転したか否かを判断する(S50)。移動体10が基準軸周りに所定角度だけ回転していないときは(ステップS50でNO)、ステップS46に戻って、ステップS46からの処理を繰り返す。これによって、制御装置20には、移動体10の軸線周りの複数の回転角のそれぞれについて、1走査線分の距離計測結果が格納されることとなる。すなわち、図15の走査線L1に対して計測点PL11,PL12,PL13・・の距離計測結果と基準軸周りの回転角が格納され、走査線L2に対して計測点PL21,PL22,PL23・・の距離計測結果と基準軸周りの回転角が格納され、以下、同様に各走査線について計測点群の距離計測結果と基準軸周りの回転角が格納される。これによって、距離計測センサ38は、キャリブレーション面Wx,Wy,Fを3次元的にスキャンすることとなる。
移動体10が基準軸周りに所定角度だけ回転しているときは(ステップS50でYES)、距離計測センサ38による距離計測を停止すると共に、モータ16a,16bの駆動を停止する。次いで、ステップS46で取込んだ距離計測結果と、ステップS48で取込んだ基準軸周りの回転角とを用いて、距離計測センサ38の車体40への取付け位置及び取付け姿勢のキャリブレーションを実施する。
すなわち、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置は、移動体10の基準位置(基準軸の位置)と、この基準位置から距離計測センサ38までの距離及び方向と、距離計測センサから各計測点までの距離及び計測方向によって算出することができる。ここで、移動体10の基準位置は既知である。このため、距離計測センサ38の取付け位置及び取付け姿勢を仮決定すれば、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置を算出することができる。具体的には、床面Fの傾斜角は移動体10のジャイロセンサ36で計測できるため、移動体10の基準位置(基準軸の位置(既知))の絶対座標と、ジャイロセンサ36で計測された床面Fの傾きと、仮決定した距離計測センサ38の取付け位置及び取付け姿勢とから、距離計測センサ38の絶対位置及び絶対姿勢を算出する。次いで、算出した距離計測センサ38の絶対位置及び絶対姿勢と、距離計測センサで計測した距離から、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置を算出する。このように算出されたキャリブレーション面Wx,Wy,Fの各計測点の絶対位置は、既知のキャリブレーション面Wx,Wy,Fの上に位置しなければならない。このため、上記のように算出されるキャリブレーション面Wx,Wy,Fの各計測点の絶対位置が、既知のキャリブレーション面Wx,Wy,F上に位置するように、距離計測センサ38の取付け位置及び取付け姿勢を修正する。これによって、距離計測センサ38の取付け位置及び取付け姿勢がキャリブレーションされることとなる。上記のキャリブレーションを行う際には、例えば、次の式を用いることができる。
すなわち、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置は、移動体10の基準位置(基準軸の位置)と、この基準位置から距離計測センサ38までの距離及び方向と、距離計測センサから各計測点までの距離及び計測方向によって算出することができる。ここで、移動体10の基準位置は既知である。このため、距離計測センサ38の取付け位置及び取付け姿勢を仮決定すれば、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置を算出することができる。具体的には、床面Fの傾斜角は移動体10のジャイロセンサ36で計測できるため、移動体10の基準位置(基準軸の位置(既知))の絶対座標と、ジャイロセンサ36で計測された床面Fの傾きと、仮決定した距離計測センサ38の取付け位置及び取付け姿勢とから、距離計測センサ38の絶対位置及び絶対姿勢を算出する。次いで、算出した距離計測センサ38の絶対位置及び絶対姿勢と、距離計測センサで計測した距離から、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置を算出する。このように算出されたキャリブレーション面Wx,Wy,Fの各計測点の絶対位置は、既知のキャリブレーション面Wx,Wy,Fの上に位置しなければならない。このため、上記のように算出されるキャリブレーション面Wx,Wy,Fの各計測点の絶対位置が、既知のキャリブレーション面Wx,Wy,F上に位置するように、距離計測センサ38の取付け位置及び取付け姿勢を修正する。これによって、距離計測センサ38の取付け位置及び取付け姿勢がキャリブレーションされることとなる。上記のキャリブレーションを行う際には、例えば、次の式を用いることができる。
ここで、worldPijは、キャリブレーション面Wx,Wy,Fの各計測点の絶対位置である。worldTrobotは、移動体10を基準とする座標系を絶対座標系に変換するための行列である。すなわち、床面Fの傾きや移動体10の基準軸周りの回転角を用いて、移動体10を基準とする座標系を絶対座標系に変換する。robotTsensorは、距離計測センサ38を基準とする座標系を、移動体10を基準とする座標系に変換するための行列である。キャリブレーションにより推定する、移動体10に対する距離計測センサ38の取付け位置及び姿勢はrobotTsensor内に格納される。なお、キャリブレーション前においては、robotTsensorは設計値等に基づいて仮決定された誤差を有する行列である。ΔTは、距離計測センサ38の取付け位置及び取付け姿勢の誤差を表す行列であり、robotTsensorが正しいか否かを評価するための評価行列である。sensorPijは、距離計測センサ38で計測された計測結果からなる行列である。上記の式によって算出されるworldPijが既知のキャリブレーション面Wx,Wy,F上の点となるように、robotTsensorを最適化する。具体的には、初期値として与えられたrobotTsensorを用いてΔTを最小二乗法で求める。次いで、robotTsensorを更新し、更新したrobotTsensorを用いてΔTを最小二乗法で求める。以下、このような計算を繰り返すことでrobotTsensorが収束する。そして、収束したrobotTsensorがキャリブレーション後の変換行列となる。すなわち、キャリブレーションされた距離計測センサ38の取付け位置及び取付け姿勢が取得される。
上述した説明から明らかなように、第2実施例の移動体10では、距離計測センサ38の取付け位置及び取付け姿勢がキャリブレーションされるため、距離計測センサ38で計測された構造物の絶対位置を精度よく算出することができる。
また、第2実施例のキャリブレーション方法では、距離計測センサ38で距離計測するターゲットとして平面Wx,Wy,Fを用いる。このため、単独のポイント(点)をターゲットとする場合と比較して、距離計測センサ38によってターゲットまでの距離を容易に計測することができる。特に、移動体10では、距離計測センサ38が車体40に対して傾けて取付けられている。このため、単独のポイントをターゲットとした場合、移動体10に対してターゲットをどのような位置に配置すればよいかが即座に決定できないことがある。しかしながら、本実施例では、ターゲットとして平面Wx,Wy,Fを用いるため、このような問題が生じない。
また、本実施例では、ターゲットとして用いる複数の平面Wx,Wy,Fの凹となる側の面(例えば、部屋の角部)を距離計測センサ38で計測する。このため、凸となる側の面を計測する場合と比較して、距離計測センサ38の計測方向が計測対象となる壁面に対して垂直に近い角度となり、また、隣接する計測点の間隔も略等間隔となる。このため、キャリブレーションに用いることができる精度の高い計測結果を多く取得することができる。また、オクルージョンも発生し難くなる。
また、本実施例では、ターゲットとして用いる複数の平面Wx,Wy,Fの凹となる側の面(例えば、部屋の角部)を距離計測センサ38で計測する。このため、凸となる側の面を計測する場合と比較して、距離計測センサ38の計測方向が計測対象となる壁面に対して垂直に近い角度となり、また、隣接する計測点の間隔も略等間隔となる。このため、キャリブレーションに用いることができる精度の高い計測結果を多く取得することができる。また、オクルージョンも発生し難くなる。
また、本実施例のキャリブレーション方法では、移動体10を回転させながら距離計測センサ38でキャリブレーション面Wx,Wy,Fまでの距離を計測する。このため、数多くの計測点を簡易な方法により取得することができる。また、数多くの計測結果を用いてキャリブレーションを実施するため、キャリブレーションを精度よく実施することができる。
さらに、本実施例のキャリブレーション方法では、移動体10の軸周りの回転角や床面Fの傾きを、エンコーダ18a,18b及びジャイロセンサ(慣性センサ)36の出力を用いて算出する。このため、これらを計測するための計測装置を別途必要としない。
なお、上述した第2実施例では、距離計測センサ38によりキャリブレーション面Wx,Wy,Fまでの距離を計測する際に、移動体10がモータ16a,16bを駆動することで自ら回転した。しかしながら、本願のキャリブレーション方法は、このような実施形態に限られない。
例えば、図16に示すように、床面Fに設けられたターンテーブル60上に移動体10を固定し、ターンテーブル60を回転することで移動体10を回転させるようにしてもよい。ターンテーブル60の回転はモータを駆動することで行うこともできるし、作業者が人力で回転させることもできる。ターンテーブル60を用いることで、移動体10の基準位置70をより正確に特定することができ、キャリブレーションを精度よく行うことができる。
なお、ターンテーブル60を用いる場合には、移動体10の軸周りの回転角及び移動体10の傾き(ターンテーブル60の傾き)を、移動体10に設けられた慣性センサ(ジャイロセンサ36)により計測することができる。このため、これらを計測するための専用の計測装置を不要とすることができる。
また、ターンテーブル60を用いる場合には、ターンテーブル60の回転軸(図示しない)と移動体10の車軸が交差するように、移動体10をターンテーブル60に固定することができる。これによって、ターンテーブル60に移動体10を容易に固定することができる。
例えば、図16に示すように、床面Fに設けられたターンテーブル60上に移動体10を固定し、ターンテーブル60を回転することで移動体10を回転させるようにしてもよい。ターンテーブル60の回転はモータを駆動することで行うこともできるし、作業者が人力で回転させることもできる。ターンテーブル60を用いることで、移動体10の基準位置70をより正確に特定することができ、キャリブレーションを精度よく行うことができる。
なお、ターンテーブル60を用いる場合には、移動体10の軸周りの回転角及び移動体10の傾き(ターンテーブル60の傾き)を、移動体10に設けられた慣性センサ(ジャイロセンサ36)により計測することができる。このため、これらを計測するための専用の計測装置を不要とすることができる。
また、ターンテーブル60を用いる場合には、ターンテーブル60の回転軸(図示しない)と移動体10の車軸が交差するように、移動体10をターンテーブル60に固定することができる。これによって、ターンテーブル60に移動体10を容易に固定することができる。
なお、上述した各実施例のキャリブレーション方法においては、距離計測センサ38で計測した計測点のうち、キャリブレーション面Wx,Wy,Fのうちの2つの壁面が交差する辺の近傍の領域を計測したものについては、キャリブレーションに用いないことが好ましい。例えば、図16に示す壁面Wxについては、領域A内の計測点のみをキャリブレーションに用い、それ以外の領域(壁面Wxと床面Fとが交差する辺の近傍)の点はキャリブレーションに用いない。2つの壁面が交差する近傍の領域を計測した計測点は、2つの壁面のうちどちらの壁面を計測したものか判定し難く、また、誤差が含まれ易い。このため、これらの領域を計測した計測結果をキャリブレーションに用いないことで、キャリブレーションを精度よく行うことができる。
以上、本実施例のキャリブレーション方法について詳細に説明したが、本実施例のキャリブレーション方法は、距離計測センサを搭載する種々の装置に用いることができる。このため、第1実施例に開示した「尤度を利用して構造物の3次元構造を構築する機能」を搭載していない移動体にも適用することができる。
また、上述した実施例は、2次元スキャン型の距離計測センサ38の取付け位置及び取付け姿勢のキャリブレーションを行う例であったが、本実施例のキャリブレーション方法は3次元スキャン型の距離計測センサの取付け位置及び取付け姿勢をキャリブレーションする場合にも適用することができる。
また、上述した実施例は、2次元スキャン型の距離計測センサ38の取付け位置及び取付け姿勢のキャリブレーションを行う例であったが、本実施例のキャリブレーション方法は3次元スキャン型の距離計測センサの取付け位置及び取付け姿勢をキャリブレーションする場合にも適用することができる。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例をさまざまに変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
10:移動体
12a,12b,14a,14b:車輪
16:モータ
18:エンコーダ
20:制御装置
36:ジャイロセンサ
38:距離計測センサ
12a,12b,14a,14b:車輪
16:モータ
18:エンコーダ
20:制御装置
36:ジャイロセンサ
38:距離計測センサ
Claims (9)
- 移動体が移動する移動領域内にある構造物の3次元構造を認識する環境認識装置であって、
移動体に取付けられており、構造物までの距離を計測する距離計測センサと、
距離計測センサの3次元位置を計測するセンサ位置計測装置と、
距離計測センサで計測された計測点における構造物の情報から、その計測点の近傍の非計測点における構造物を推定するための尤度を記憶する尤度マップと、
移動領域内の各点における構造物の情報及びその尤度を記憶するための構造物マップと、
距離計測センサの計測結果及び計測方向とセンサ位置計測装置の計測結果を用いて、距離計測センサで計測された構造物の3次元位置を算出する位置算出手段と、
位置算出手段で算出された構造物の3次元位置と記憶されている尤度マップを用いて、その算出された3次元位置に対応する構造物マップ上の対応点における構造物の情報と尤度を更新又は登録すると共に、その対応点の近傍の近傍点における構造物の情報と尤度を更新又は登録するマップ更新手段と、
を備えている環境認識装置。 - 前記センサ位置計測装置は、移動体の位置を計測する移動体位置計測センサと、移動体の姿勢を計測する移動体姿勢計測センサを有しており、
前記位置算出手段は、移動体位置計測センサの検出結果と移動体姿勢計測センサの検出結果を用いて、距離計測時における距離計測センサの3次元位置及び計測方向を特定し、これら特定された距離計測センサの3次元位置及び計測方向と距離計測センサで計測された構造物までの距離から構造物の3次元位置を算出することを特徴とする請求項1に記載の環境認識装置。 - 構造物マップに記憶されている各点の構造物の情報と尤度に基づいて、移動体の移動可能領域を検出する移動可能領域検出手段をさらに備えていることを特徴とする請求項1又は2に記載の環境認識装置。
- 移動可能領域検出手段は、構造物マップに記憶されている構造物の情報から障害物がないと判断され、かつ、尤度が所定の閾値以上となる領域を、移動可能領域として検出することを特徴とする請求項3に記載の環境認識装置。
- 予め設定されたキャリブレーション面内の各点における絶対位置を記憶するキャリブレーション面データと、
そのキャリブレーションデータを用いて、距離計測センサの移動体への取付け位置及び取付け姿勢をキャリブレーションするキャリブレーション手段をさらに有しており、
前記キャリブレーション手段は、キャリブレーション面内の複数の点のそれぞれについて得られた(1)距離計測センサにより計測される計測距離と(2)距離計測時の移動体の絶対位置及び絶対姿勢とさらに用いて、距離計測センサの移動体への取付け位置及び取付け姿勢をキャリブレーションすることを特徴とする請求項4に記載の環境認識装置。 - 前記キャリブレーション手段は、距離計測センサによりキャリブレーション面を2次元的又は3次元的にスキャンすることで得られた複数の計測点の計測距離と、それらの計測点を計測した時の移動体の絶対位置及び絶対姿勢とを用いてキャリブレーションを行うことを特徴とする請求項5に記載の環境認識装置。
- 前記キャリブレーション面が、互いに交差する複数の平面を有していることを特徴とする請求項5又は6に記載の環境認識装置。
- 前記センサ位置計測装置は、移動体の位置を計測する移動体位置計測センサと、移動体の姿勢を計測する移動体姿勢計測センサを有しており、
キャリブレーション手段は、移動体位置計測センサの出力と移動体姿勢計測センサの出力を用いて、距離計測時の移動体の絶対位置及び絶対姿勢を取得することを特徴とする請求項5〜7のいずれか一項に記載の環境認識装置。 - 請求項1〜8のいずれか一項に記載の環境認識装置を備えていることを特徴とする移動体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009174671A JP2011027598A (ja) | 2009-07-27 | 2009-07-27 | 環境認識装置及びそれを備えた移動体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009174671A JP2011027598A (ja) | 2009-07-27 | 2009-07-27 | 環境認識装置及びそれを備えた移動体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011027598A true JP2011027598A (ja) | 2011-02-10 |
Family
ID=43636512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009174671A Pending JP2011027598A (ja) | 2009-07-27 | 2009-07-27 | 環境認識装置及びそれを備えた移動体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011027598A (ja) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015049192A (ja) * | 2013-09-03 | 2015-03-16 | 日立Geニュークリア・エナジー株式会社 | 水中移動体の位置検知装置 |
JP2015086590A (ja) * | 2013-10-31 | 2015-05-07 | 三菱電機株式会社 | 路面標示用塗装装置 |
KR20170002824A (ko) * | 2015-06-30 | 2017-01-09 | 삼성중공업 주식회사 | 이동체의 위치 및 자세 측정 장치 |
JP2018017826A (ja) * | 2016-07-26 | 2018-02-01 | 株式会社豊田中央研究所 | 自律移動体と環境地図更新装置 |
JP2018039310A (ja) * | 2016-09-06 | 2018-03-15 | 新明和工業株式会社 | 旅客搭乗橋 |
JP2018128422A (ja) * | 2017-02-10 | 2018-08-16 | オリエンタル白石株式会社 | 地形測定機 |
JP2018142316A (ja) * | 2017-02-28 | 2018-09-13 | トヨタ自動車株式会社 | 可観測性グリッドベースの自律的環境探索 |
JP2018151985A (ja) * | 2017-03-14 | 2018-09-27 | トヨタ自動車株式会社 | 自律移動体 |
JP2020057271A (ja) * | 2018-10-03 | 2020-04-09 | 株式会社Ihi | 走行制御装置 |
JP2021004028A (ja) * | 2015-03-25 | 2021-01-14 | ウェイモ エルエルシー | 複数の光検出及び測距装置(lidar)付きの車両 |
JP2021009634A (ja) * | 2019-07-03 | 2021-01-28 | 株式会社ダイヘン | 移動体 |
CN113167903A (zh) * | 2018-12-12 | 2021-07-23 | 日立安斯泰莫株式会社 | 外界识别装置 |
CN113391321A (zh) * | 2020-03-12 | 2021-09-14 | 日立乐金光科技株式会社 | 测距装置和测距方法 |
-
2009
- 2009-07-27 JP JP2009174671A patent/JP2011027598A/ja active Pending
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015049192A (ja) * | 2013-09-03 | 2015-03-16 | 日立Geニュークリア・エナジー株式会社 | 水中移動体の位置検知装置 |
JP2015086590A (ja) * | 2013-10-31 | 2015-05-07 | 三菱電機株式会社 | 路面標示用塗装装置 |
JP7204709B2 (ja) | 2015-03-25 | 2023-01-16 | ウェイモ エルエルシー | 複数の光検出及び測距装置(lidar)付きの車両 |
JP2021004028A (ja) * | 2015-03-25 | 2021-01-14 | ウェイモ エルエルシー | 複数の光検出及び測距装置(lidar)付きの車両 |
KR101702519B1 (ko) * | 2015-06-30 | 2017-02-06 | 삼성중공업(주) | 이동체의 위치 및 자세 측정 장치 |
KR20170002824A (ko) * | 2015-06-30 | 2017-01-09 | 삼성중공업 주식회사 | 이동체의 위치 및 자세 측정 장치 |
JP2018017826A (ja) * | 2016-07-26 | 2018-02-01 | 株式会社豊田中央研究所 | 自律移動体と環境地図更新装置 |
JP2018039310A (ja) * | 2016-09-06 | 2018-03-15 | 新明和工業株式会社 | 旅客搭乗橋 |
JP2018128422A (ja) * | 2017-02-10 | 2018-08-16 | オリエンタル白石株式会社 | 地形測定機 |
JP2018142316A (ja) * | 2017-02-28 | 2018-09-13 | トヨタ自動車株式会社 | 可観測性グリッドベースの自律的環境探索 |
JP2018151985A (ja) * | 2017-03-14 | 2018-09-27 | トヨタ自動車株式会社 | 自律移動体 |
JP2020057271A (ja) * | 2018-10-03 | 2020-04-09 | 株式会社Ihi | 走行制御装置 |
CN113167903A (zh) * | 2018-12-12 | 2021-07-23 | 日立安斯泰莫株式会社 | 外界识别装置 |
CN113167903B (zh) * | 2018-12-12 | 2024-05-17 | 日立安斯泰莫株式会社 | 外界识别装置 |
JP2021009634A (ja) * | 2019-07-03 | 2021-01-28 | 株式会社ダイヘン | 移動体 |
JP7284011B2 (ja) | 2019-07-03 | 2023-05-30 | 株式会社ダイヘン | 移動体 |
CN113391321A (zh) * | 2020-03-12 | 2021-09-14 | 日立乐金光科技株式会社 | 测距装置和测距方法 |
JP2021143952A (ja) * | 2020-03-12 | 2021-09-24 | 株式会社日立エルジーデータストレージ | 測距装置及び測距方法 |
JP7286573B2 (ja) | 2020-03-12 | 2023-06-05 | 株式会社日立エルジーデータストレージ | 測距装置及び測距方法 |
CN113391321B (zh) * | 2020-03-12 | 2024-01-30 | 日立乐金光科技株式会社 | 测距装置和测距方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2011027598A (ja) | 環境認識装置及びそれを備えた移動体 | |
US9134339B2 (en) | Directed registration of three-dimensional scan measurements using a sensor unit | |
US9239580B2 (en) | Autonomous mobile robot, self position estimation method, environmental map generation method, environmental map generation apparatus, and data structure for environmental map | |
US9182763B2 (en) | Apparatus and method for generating three-dimensional map using structured light | |
US10175049B2 (en) | Target recognition and localization methods using a laser sensor for wheeled mobile robots | |
JP5278283B2 (ja) | 自律移動装置及びその制御方法 | |
KR100772912B1 (ko) | 절대 방위각을 이용한 로봇 및 이를 이용한 맵 작성 방법 | |
US20100049391A1 (en) | Autonomous moving apparatus | |
JP5310285B2 (ja) | 自己位置推定装置及び自己位置推定方法 | |
JP7120723B2 (ja) | レーザスキャナシステム | |
KR102564663B1 (ko) | 무인 반송 차량의 위치 인식 장치 및 방법 | |
JP4944840B2 (ja) | 誘導システム及び誘導方法 | |
JP2009050936A (ja) | 干渉判定装置および脚車輪型ロボット | |
JP5763986B2 (ja) | 移動体および移動体の制御方法 | |
US20230166728A1 (en) | Traveling body and non-transitory recording medium | |
JP5895682B2 (ja) | 障害物検出装置及びそれを備えた移動体 | |
JP7300413B2 (ja) | 制御装置、移動体、移動制御システム、制御方法及びプログラム | |
JP2019113934A (ja) | 移動体 | |
JP6539958B2 (ja) | 搬送車 | |
JP7257431B2 (ja) | 移動体の制御方法、移動体及びプログラム | |
JP7482811B2 (ja) | 移動体の制御方法、移動体及びプログラム | |
JP7284011B2 (ja) | 移動体 | |
JP7543244B2 (ja) | 位置検出装置及び位置検出方法 | |
JP7283341B2 (ja) | 走行制御システム | |
JP2019200701A (ja) | 自律移動体 |