JP2008264946A - 移動ロボット、及び床面形状データの補正方法 - Google Patents
移動ロボット、及び床面形状データの補正方法 Download PDFInfo
- Publication number
- JP2008264946A JP2008264946A JP2007112283A JP2007112283A JP2008264946A JP 2008264946 A JP2008264946 A JP 2008264946A JP 2007112283 A JP2007112283 A JP 2007112283A JP 2007112283 A JP2007112283 A JP 2007112283A JP 2008264946 A JP2008264946 A JP 2008264946A
- Authority
- JP
- Japan
- Prior art keywords
- data
- mobile robot
- shape data
- floor
- floor surface
- 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
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】床面における段差などの障害物を正確に認識することができる移動ロボット、及び床面形状データの補正方法を提供すること。
【解決手段】本発明にかかる移動ロボット100は、移動ロボット100が移動する床面の形状データを検出する床面形状検出センサ10と、床面形状検出センサ10により検出された床面形状データを補正するデータ補正部13とを備えた移動ロボット100であって、データ補正部13は、床面形状検出センサ10のセンシング領域の一部である基準領域における床面形状データが予め定められた基準値となるように、床面形状データの全体を補正するものである。
【選択図】図2
【解決手段】本発明にかかる移動ロボット100は、移動ロボット100が移動する床面の形状データを検出する床面形状検出センサ10と、床面形状検出センサ10により検出された床面形状データを補正するデータ補正部13とを備えた移動ロボット100であって、データ補正部13は、床面形状検出センサ10のセンシング領域の一部である基準領域における床面形状データが予め定められた基準値となるように、床面形状データの全体を補正するものである。
【選択図】図2
Description
本発明は移動ロボット、及び床面形状データの補正方法に関する。
自律移動ロボットは、自ら移動経路の環境を認識して、目的地へと移動する。このため、移動ロボットは、移動経路上に存在する段差などの障害物を検出する必要がある。特に、移動ロボットが歩行ロボットである場合には、安定して歩行するため、床面上の段差などの障害物を含んだ平面をより正確に検出することが重要となる。
従来、床面上の障害物を認識可能な歩行ロボットとして、例えば特許文献1記載の技術などが知られている。
特開2003−269937号公報
従来、床面上の障害物を認識可能な歩行ロボットとして、例えば特許文献1記載の技術などが知られている。
しかしながら、特許文献1記載の従来技術などでは、移動ロボット自身の振動や揺れによって、検出された床面形状データが歪む場合には、床面上の障害物を含む平面を正確に検出することができず、障害物を正確に認識できないという問題がある。
一方、移動ロボットが床面上の障害物を含む平面を検出する際に、検出された床面形状データについての歪みを、ロボットの移動量であるオドメトリに基づいて補正する手法が知られている。
しかし、オドメトリ自体の精度は、メカの剛性、足つきの良し悪しに依存する。メカの剛性については、重量や電装関係の取り回しなどから容易には改善することができない。また、足つきについても、移動ロボットは必ずしも理想的な環境を歩行するとは限られないため、不整地歩行などでは足つきが悪くなる。即ち、オドメトリ自体の精度向上をもって床面形状データの補正精度を向上させるには不十分なものである。
特に、段差などの障害物を含む平面を正確に検出するためには、床面形状データの高さ成分をより正確に検出する必要があるが、オドメトリに基づく補正方法では、高さ方向の歪みを正確に補正することが困難である。
また、例えばジャイロや加速度センサといった内界センサを用いることでオドメトリによる精度を補う手法も知られているが、床面形状データを目標とする精度で検出することはできず、不十分なものである。
一方、移動ロボットが床面上の障害物を含む平面を検出する際に、検出された床面形状データについての歪みを、ロボットの移動量であるオドメトリに基づいて補正する手法が知られている。
しかし、オドメトリ自体の精度は、メカの剛性、足つきの良し悪しに依存する。メカの剛性については、重量や電装関係の取り回しなどから容易には改善することができない。また、足つきについても、移動ロボットは必ずしも理想的な環境を歩行するとは限られないため、不整地歩行などでは足つきが悪くなる。即ち、オドメトリ自体の精度向上をもって床面形状データの補正精度を向上させるには不十分なものである。
特に、段差などの障害物を含む平面を正確に検出するためには、床面形状データの高さ成分をより正確に検出する必要があるが、オドメトリに基づく補正方法では、高さ方向の歪みを正確に補正することが困難である。
また、例えばジャイロや加速度センサといった内界センサを用いることでオドメトリによる精度を補う手法も知られているが、床面形状データを目標とする精度で検出することはできず、不十分なものである。
このように、床面形状データの歪みをオドメトリに基づく手法などで正確に補正することは困難であり、さらには、センサでは捕らえきれない振動なども影響するため、床面の形状を正確に検出することができない。
従って、床面の形状を正確に検出することができないため、段差などの障害物を含む平面を正確に検出することができず、障害物を正確に認識することができないという問題がある。
本発明は、かかる課題を解決するためになされたものであり、床面における段差などの障害物を正確に認識することができる移動ロボット、及び床面形状データの補正方法を提供することを目的とする。
従って、床面の形状を正確に検出することができないため、段差などの障害物を含む平面を正確に検出することができず、障害物を正確に認識することができないという問題がある。
本発明は、かかる課題を解決するためになされたものであり、床面における段差などの障害物を正確に認識することができる移動ロボット、及び床面形状データの補正方法を提供することを目的とする。
本発明にかかる移動ロボットは、移動ロボットが移動する床面の形状データを検出する床面形状検出センサと、前記床面形状検出センサにより検出された床面形状データを補正するデータ補正部とを備えた移動ロボットであって、前記データ補正部は、前記床面形状検出センサのセンシング領域の一部である基準領域における床面形状データが予め定められた基準値となるように、前記床面形状データの全体を補正するものである。
これにより、検出された床面形状データについて、センシング領域の一部である基準領域に基づいて、床面形状データの全体を容易に補正することができる。このため、移動の際に発生する移動ロボット自身の振動や揺れによる歪みを補正することができる。従って、床面の形状を正確に検出することができるため、段差などの障害物を含む平面を正確に検出することができる。即ち、床面における段差などの障害物を正確に認識することができる。
また、前記データ補正部は、前記基準領域における床面形状データが水平面を表すデータとなるように、前記床面形状データの全体を補正するようにしてもよい。
これにより、検出された床面形状データについて、高さ方向が水平となるように補正され、平面をより正確に検出することができる。
さらにまた、前記基準領域が、前記移動ロボット前方の近傍領域であるようにしてもよい。
このように、移動ロボット前方に基準領域を設けることで、移動ロボットの移動方向に存在する障害物を逐次正確に認識することができる。また、移動ロボットの近傍に基準領域を設けることで、床面形状データの密度が高い基準領域をより小さな領域を用いて設定することができる。このため、より精度の高い床面形状データを容易に取得することができ、障害物をより正確に認識することができる。
また、前記床面形状検出センサが、前記移動ロボットの鉛直軸を中心に揺動可能に取り付けられたレーザレンジファインダであり、前記データ補正部が、前記基準領域における床面形状データについて、前記レーザレンジファインダによるレーザ光の走査線毎に、当該走査線上に位置する複数の床面形状データに基づいて補正量を算出し、当該算出した補正量に基づいて前記床面形状データの全体を補正するようにしてもよい。
これにより、測定のバラツキを低減することができ、より精度の高い床面形状データを取得することができる。
さらにまた、前記移動ロボットが、移動手段としての2つの脚部を備え、2足歩行運動により移動を行うようにしてもよい。
このように、2足歩行型のロボットである場合においても、ピッチ方向の揺れによる歪みを効果的に補正することができる。
本発明にかかる床面形状データの補正方法は、床面の形状データを補正する床面形状データの補正方法であって、移動ロボットが移動する前記床面の形状データを検出し、当該検出対象となるセンシング領域の一部である基準領域における床面形状データが予め定められた基準値となるように、前記床面形状データの全体を補正するステップを備えるものである。
これにより、検出された床面形状データについて、センシング領域の一部である基準領域に基づいて、床面形状データの全体を容易に補正することができる。このため、移動の際に発生する移動ロボット自身の振動や揺れによる歪みを補正することができる。従って、床面の形状を正確に検出することができるため、段差などの障害物を含む平面を正確に検出することができる。即ち、床面における段差などの障害物を正確に認識することができる。
また、前記基準領域における床面形状データが水平面を表すデータとなるように、前記床面形状データの全体を補正するようにしてもよい。
これにより、検出された床面形状データについて、高さ方向が水平となるように補正され、平面をより正確に検出することができる。
さらにまた、前記基準領域が、前記移動ロボット前方の近傍領域であるようにしてもよい。
このように、移動ロボット前方に基準領域を設けることで、移動ロボットの移動方向に存在する障害物を逐次正確に認識することができる。また、移動ロボットの近傍に基準領域を設けることで、床面形状データの密度が高い基準領域をより小さな領域を用いて設定することができる。このため、より精度の高い床面形状データを容易に取得することができ、障害物をより正確に認識することができる。
また、前記基準領域における床面形状データについて、レーザ光の走査線毎に、当該走査線上に位置する複数の床面形状データに基づいて補正量を算出し、当該算出した補正量に基づいて前記床面形状データの全体を補正するようにしてもよい。
これにより、測定のバラツキを低減することができ、より精度の高い床面形状データを取得することができる。
さらにまた、前記移動ロボットが、移動手段としての2つの脚部を備え、2足歩行運動により移動を行うようにしてもよい。
このように、2足歩行型のロボットである場合においても、ピッチ方向の揺れによる歪みを効果的に補正することができる。
本発明によれば、床面における段差などの障害物を正確に認識することができる移動ロボット、及び床面形状データの補正方法を提供することを目的とする。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。尚、各図面において、同一要素には同一の符号を付しており、説明の明確化のため、必要に応じて重複説明を省略する。
発明の実施の形態1.
本実施の形態にかかる移動ロボットは、2つの脚リンクを有する脚式移動ロボットである。さらに、移動ロボットはデータ補正装置1を有する。データ補正装置1は、床面形状検出センサとしてのレーザレンジファインダにより得られる床面形状データを入力して、センサのセンシング領域内に設けられた基準領域に含まれる床面形状データが予め定められた基準値となるように、床面形状データの全体を補正する装置である。
移動ロボットは、データ補正装置1によって補正された床面形状データに基づいて、移動ロボットが歩行する歩行面の3次元情報を含む環境地図データを決定し、移動ロボットの2つの脚リンクそれぞれの先端に設けられた足平の着地位置を決定する。
さらに、移動ロボットは、決定された足平着地位置を実現するための動作データを生成し、生成された動作データをもとに移動ロボットの関節群をアクチュエータによって駆動することで歩行する。
本実施の形態にかかる移動ロボットは、2つの脚リンクを有する脚式移動ロボットである。さらに、移動ロボットはデータ補正装置1を有する。データ補正装置1は、床面形状検出センサとしてのレーザレンジファインダにより得られる床面形状データを入力して、センサのセンシング領域内に設けられた基準領域に含まれる床面形状データが予め定められた基準値となるように、床面形状データの全体を補正する装置である。
移動ロボットは、データ補正装置1によって補正された床面形状データに基づいて、移動ロボットが歩行する歩行面の3次元情報を含む環境地図データを決定し、移動ロボットの2つの脚リンクそれぞれの先端に設けられた足平の着地位置を決定する。
さらに、移動ロボットは、決定された足平着地位置を実現するための動作データを生成し、生成された動作データをもとに移動ロボットの関節群をアクチュエータによって駆動することで歩行する。
図1を用いて、本発明にかかる移動ロボット100の構成について説明する。図1は、移動ロボット100を側方(移動ロボット100の移動する方向を向いて左方向)から見た様子を概略的に表す概略図であり、移動ロボット100に搭乗者Pが搭乗している様子を表している。また、図1に示すように、床面形状検出センサとしてのレーザレンジファインダ10が移動ロボット100に取り付けられる。
尚、図1においては、説明の便宜上、移動体1が進行する向き(前後方向)をx軸、移動体1が進行する方向について水平方向に直交する向き(左右方向)をy軸、移動体の移動する平面から鉛直方向に延びる向き(上下方向)をz軸とし、これらの3軸からなる座標系を用いて説明する。すなわち、図1中において、前記x軸は紙面に向かって左右方向、y軸は紙面の奥行方法、z軸は紙面中の上下方向を示す。
尚、図1においては、説明の便宜上、移動体1が進行する向き(前後方向)をx軸、移動体1が進行する方向について水平方向に直交する向き(左右方向)をy軸、移動体の移動する平面から鉛直方向に延びる向き(上下方向)をz軸とし、これらの3軸からなる座標系を用いて説明する。すなわち、図1中において、前記x軸は紙面に向かって左右方向、y軸は紙面の奥行方法、z軸は紙面中の上下方向を示す。
図1に示すように、移動ロボット100は、搭乗者Pが搭乗する載置台(図示せず)を含む上体部101と、上体部101を支持する腰部(図示せず)を介して回動自在に固定される脚部104と、腰部に取り付けられたレーザレンジファインダ10とにより構成される。
脚部104は、右脚102及び左脚103により構成され、右脚102は、右膝関節102c、右足首関節102e、右足平102fを備え、同様に、左脚103は、左膝関節103c、左足首関節103e、左足平103fを備える。
図示しないモータからの駆動力が、同じく図示しないプーリ及びベルトを介して伝達されることで、各関節が所望の角度に駆動され、その結果、右脚102及び左脚103に所望の動きをさせることができる。
脚部104は、右脚102及び左脚103により構成され、右脚102は、右膝関節102c、右足首関節102e、右足平102fを備え、同様に、左脚103は、左膝関節103c、左足首関節103e、左足平103fを備える。
図示しないモータからの駆動力が、同じく図示しないプーリ及びベルトを介して伝達されることで、各関節が所望の角度に駆動され、その結果、右脚102及び左脚103に所望の動きをさせることができる。
移動ロボット100の上体部101には、腰部(図示せず)を介して移動ロボット100が歩行する床面の床面形状データを検出するレーザレンジファインダ10が設けられている。より具体的には、例えば図1においては、レーザレンジファインダ10を、水平方向から移動ロボット100の足元に向けて傾斜させて設置し、移動ロボット100の足元近傍を含む前方に向けて赤外線などのレーザ光を照射し、その反射光を受光させる。
このようにすると、移動ロボット100の足元近傍の床面形状データについて高い分解能を確保することができ、密度の高い足元近傍の床面形状データを取得することができる。
このようにすると、移動ロボット100の足元近傍の床面形状データについて高い分解能を確保することができ、密度の高い足元近傍の床面形状データを取得することができる。
レーザレンジファインダ10は、床面上の障害物を含む外部環境の距離画像データを取得する。尚、距離画像データとは、環境に存在する計測対象までの距離値を各画素の画素値として有する2次元データである。後述するように、距離画像データの座標変換を行うことにより、外界の3次元の点群データを生成することができる。
さらに、レーザレンジファインダ10は、移動ロボット100の腰部に備えられており、鉛直軸を中心に揺動可能な構成となっている。これにより、移動ロボット100の移動方向前方をスキャンすることができる。より具体的には、例えば図1においては、移動方向前方(ここではx軸方向)に向けて、レーザレンジファインダ10が移動ロボット100の鉛直軸(ここではz軸)を中心として左右に揺動可能に取り付けられている。
このようにすると、上面視では、レーザ光によるスキャン範囲を移動ロボット100の移動方向前方に向かって、左右に広がった扇形形状となるように構成することができ、移動に必要な領域のみを効率的にスキャンすることができる。
ここで、レーザレンジファインダ10が、2次元の距離画像データから3次元の点群データを生成する方法について説明する。
まず、レーザレンジファインダ10を左右に揺動せずに固定した場合に、レーザ光を床面に垂直に移動方向前方に向かって上下に照射することで、床面に垂直な平面上における障害物の距離画像データを取得する。そして、レーザレンジファインダ10を移動ロボット100の鉛直軸を中心に、移動方向前方に向かって左右に揺動しながらスキャンすることで、複数の異なる平面上における距離画像データを取得する。次いで、レーザレンジファインダ10を揺動可能に支持する関節の角度に基づいて複数の距離画像データを座標変換して位置合わせする。これにより、複数平面上で得られた距離画像データの統合を行うことができる。または、複数の距離画像データから対応点を求めることによって、距離画像データ相互の位置合わせを行ってもよい。
このようにして、前方の領域に含まれる3次元の距離画像データを簡便な構成によって容易に取得することができる。
このようにすると、上面視では、レーザ光によるスキャン範囲を移動ロボット100の移動方向前方に向かって、左右に広がった扇形形状となるように構成することができ、移動に必要な領域のみを効率的にスキャンすることができる。
ここで、レーザレンジファインダ10が、2次元の距離画像データから3次元の点群データを生成する方法について説明する。
まず、レーザレンジファインダ10を左右に揺動せずに固定した場合に、レーザ光を床面に垂直に移動方向前方に向かって上下に照射することで、床面に垂直な平面上における障害物の距離画像データを取得する。そして、レーザレンジファインダ10を移動ロボット100の鉛直軸を中心に、移動方向前方に向かって左右に揺動しながらスキャンすることで、複数の異なる平面上における距離画像データを取得する。次いで、レーザレンジファインダ10を揺動可能に支持する関節の角度に基づいて複数の距離画像データを座標変換して位置合わせする。これにより、複数平面上で得られた距離画像データの統合を行うことができる。または、複数の距離画像データから対応点を求めることによって、距離画像データ相互の位置合わせを行ってもよい。
このようにして、前方の領域に含まれる3次元の距離画像データを簡便な構成によって容易に取得することができる。
続いて以下では、本実施の形態にかかる移動ロボット100の制御系について説明する。移動ロボット100の制御系の構成を図2に示す。図2に示すように、データ補正装置1は、基準領域設定部12及びデータ補正部13を有する。
図2において、レーザレンジファインダ10は、上述したように、移動ロボット100の外部環境の距離画像データを取得する。より具体的には、例えば図3に示すように、移動ロボット100が移動方向(ここではx軸方向)へ移動する際に、レーザレンジファインダ10より移動方向前方に向けてレーザ光を照射することにより、移動方向前方の距離画像データを検出する。
尚、床面形状検出センサとして、レーザレンジファインダに代えてステレオカメラを用いてもよい。つまり、CCD(Charge Coupled Device)イメージセンサ又はCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を備えた複数のカメラを備え、これら複数のカメラによって撮影された画像の視差を利用して距離画像データを生成してもよい。より具体的には、複数のカメラによって撮影した画像データから対応点を検出し、ステレオ視によって対応点の3次元位置を復元する。ここで、複数の撮影画像における対応点の探索は、複数の撮影画像に対する時空間微分の拘束式を用いた勾配法や相関法等の公知の手法を適用して行えばよい。
尚、床面形状検出センサとして、レーザレンジファインダに代えてステレオカメラを用いてもよい。つまり、CCD(Charge Coupled Device)イメージセンサ又はCMOS(Complementary Metal Oxide Semiconductor)イメージセンサ等の撮像素子を備えた複数のカメラを備え、これら複数のカメラによって撮影された画像の視差を利用して距離画像データを生成してもよい。より具体的には、複数のカメラによって撮影した画像データから対応点を検出し、ステレオ視によって対応点の3次元位置を復元する。ここで、複数の撮影画像における対応点の探索は、複数の撮影画像に対する時空間微分の拘束式を用いた勾配法や相関法等の公知の手法を適用して行えばよい。
3次元位置データ生成部11は、距離画像データの座標変換を行って床面形状データとしての3次元位置データ群を生成する。尚、3次元位置データ群とは、距離画像データに含まれる多数の計測点の位置ベクトルを3次元直交座標系で表したデータの集合である。
例えば図4の画像は、移動ロボット100により生成される3次元位置データ群の一例を示している。尚、図4は、床面に平行なxy平面に3次元位置データ群がプロットされたものであり、プロットされた各点について高さ情報(z軸方向の位置情報)が存在する。
例えば図4の画像は、移動ロボット100により生成される3次元位置データ群の一例を示している。尚、図4は、床面に平行なxy平面に3次元位置データ群がプロットされたものであり、プロットされた各点について高さ情報(z軸方向の位置情報)が存在する。
また、3次元位置データ生成部11は、オドメトリを用いて、生成した3次元位置データの歪みを補正する。より具体的には、レーザレンジセンサ10によるスキャン中に、移動ロボット100が移動することによって発生する検出誤差を補正する。即ち、レーザレンジセンサ10によるスキャン中に移動ロボット100が移動するため、検出される3次元位置データは、移動ロボット100の移動量に応じた検出誤差を含む。オドメトリにより、各関節軸に設けられたエンコーダなどの出力に基づいて移動ロボット100の移動量を算出して、移動ロボット100が移動することによって発生する検出誤差を補正する。
さらにまた、3次元位置データ生成部11は、移動ロボット100の上体部101に設けられたジャイロ(図示せず)からの出力に基づいて、3次元位置データ群のピッチ方向の歪みを補正する。即ち、移動ロボット100の腰部に設けられたジャイロ(図示せず)の出力からピッチ方向の回転成分を検出し、3次元位置データのピッチ方向の検出誤差を補正する。
これにより、歩行ロボットにおいて3次元位置データに与える影響が大きいピッチ方向の検出誤差を補正することができる。
さらにまた、3次元位置データ生成部11は、移動ロボット100の上体部101に設けられたジャイロ(図示せず)からの出力に基づいて、3次元位置データ群のピッチ方向の歪みを補正する。即ち、移動ロボット100の腰部に設けられたジャイロ(図示せず)の出力からピッチ方向の回転成分を検出し、3次元位置データのピッチ方向の検出誤差を補正する。
これにより、歩行ロボットにおいて3次元位置データに与える影響が大きいピッチ方向の検出誤差を補正することができる。
基準領域設定部12は、レーザレンジファインダ10のセンシング領域内に基準領域を設定する。より具体的には、例えば、基準領域を、移動ロボット100足元前方の近傍領域として設定する。
このように、移動ロボット100前方の近傍に基準領域を設けることで、移動ロボットの移動方向に存在する障害物を逐次正確に認識することができる。また、移動ロボット100の足元の近傍領域に基準領域を設けることで、3次元位置データの密度が高い基準領域をより小さな領域を用いて設定することができる。このため、より精度の高い3次元位置データを容易に取得することができ、障害物をより正確に認識することができる。
尚、基準領域は移動ロボット100足元前方の近傍領域に限定されない。即ち、基準領域は、レーザレンジファインダ10のセンシング領域内であれば、足元前方の近傍領域に限定されず遠方の領域に設けてもよいし、移動ロボット100の外部環境における領域であればよい。
尚、基準領域は、例えば移動ロボット100が移動を禁止される禁止領域など、障害物を含む領域に対しては設定しないものとし、歪みが存在しない場合において、基準領域に含まれる3次元位置データが水平となる領域を基準領域として設定することが望ましい。即ち、基準領域は、水平となる床面などにおける領域に設定されることが好ましい。
また、移動ロボット100の足元前方の近傍領域を基準領域として設定した場合には、後述する歩行計画において、基準領域が水平となる床面における領域となるように歩行が計画されるようにしてもよい。
このように、移動ロボット100前方の近傍に基準領域を設けることで、移動ロボットの移動方向に存在する障害物を逐次正確に認識することができる。また、移動ロボット100の足元の近傍領域に基準領域を設けることで、3次元位置データの密度が高い基準領域をより小さな領域を用いて設定することができる。このため、より精度の高い3次元位置データを容易に取得することができ、障害物をより正確に認識することができる。
尚、基準領域は移動ロボット100足元前方の近傍領域に限定されない。即ち、基準領域は、レーザレンジファインダ10のセンシング領域内であれば、足元前方の近傍領域に限定されず遠方の領域に設けてもよいし、移動ロボット100の外部環境における領域であればよい。
尚、基準領域は、例えば移動ロボット100が移動を禁止される禁止領域など、障害物を含む領域に対しては設定しないものとし、歪みが存在しない場合において、基準領域に含まれる3次元位置データが水平となる領域を基準領域として設定することが望ましい。即ち、基準領域は、水平となる床面などにおける領域に設定されることが好ましい。
また、移動ロボット100の足元前方の近傍領域を基準領域として設定した場合には、後述する歩行計画において、基準領域が水平となる床面における領域となるように歩行が計画されるようにしてもよい。
データ補正部13は、基準領域における3次元位置データが予め定められた基準値となるように、3次元位置データ生成部11により生成された3次元位置データ群を補正する。尚、データ補正部13による3次元位置データ群の補正方法の詳細は後述する。
環境地図生成部14は、距離画像データから平面を検出し、複数の平面の集合としての環境地図を生成する。さらに具体的に述べると、本実施の形態の環境地図は、2次元平面(xy平面とする)を格子状に分割したグリッドデータとして生成される。環境地図の各グリッドに対応するデータとして、各グリッドのxy平面に垂直なz軸方向の高さ、各グリッドが属する平面を一意に識別可能な平面ID、及び、各グリッドが属する平面の法線ベクトルが保持される。環境地図生成部14は、ほぼ同じ高さの隣接するグリッドの集合を1つの平面と認識し、認識した1つの平面に対して一意な平面IDを付与する。
例えば、図5(a)に示す環境160を移動ロボット100が歩行する場合、床面に相当する平面P11及び障害物161の上面に相当する平面P12が環境地図生成部14により検出される。また、環境地図生成部14によって、平面P11が移動可能領域として認識され、平面P12が障害物領域として認識される。このとき、環境地図生成部14によって生成される環境地図200は、図5(b)に示すようになる。
図5(b)の環境地図200は、各グリッドのデータとして、各平面のそれぞれを一意に識別可能な平面ID、各グリッドのz軸方向の高さ、及び法線ベクトル(na,nb,nc)が保持される。
尚、隣接するグリッド間の平面IDの違い及びz軸方向の高さの違いによって右足平102f及び左足平103fの着地位置における路面の凹凸を検出するため、環境地図200を構成する各グリッドの面積は、右足平102f及び左足平103fの底面の面積より十分に小さくなるよう選択するとよい。
図5(b)の環境地図200は、各グリッドのデータとして、各平面のそれぞれを一意に識別可能な平面ID、各グリッドのz軸方向の高さ、及び法線ベクトル(na,nb,nc)が保持される。
尚、隣接するグリッド間の平面IDの違い及びz軸方向の高さの違いによって右足平102f及び左足平103fの着地位置における路面の凹凸を検出するため、環境地図200を構成する各グリッドの面積は、右足平102f及び左足平103fの底面の面積より十分に小さくなるよう選択するとよい。
さらに、図5(b)の環境地図200は、各グリッドのデータとして領域種別を示す情報、つまり移動可能領域であるか障害物領域であるかを示す識別情報が保持される。図5(b)の例では、床面P11に対応する領域R11が移動可能領域であり、障害物161に対応する領域R12(図5(b)の斜線領域)が障害物領域である。
歩行計画部15は、環境地図生成部14によって生成された環境地図を参照して目標位置を決定し、決定した目標位置に到達するための右足平102f及び左足平103fの着地位置を算出する。
動作生成部16は、歩行計画部16によって生成された右足平102f及び左足平103fの着地位置を実現するための動作データを生成する。ここで、動作データとは、移動ロボット100のZMP位置、重心位置、右足平102f及び左足平103fの位置及び姿勢、並びに、移動ロボット100の上体部101の位置及び姿勢を含む。
制御部17は、動作生成部16によって生成された動作データを入力し、逆運動学演算によって各関節の目標関節角度を算出する。さらに、制御部17は、算出した目標関節角度とエンコーダ19によって計測した現在の関節角度をもとに各関節を駆動するためのトルク制御値を算出する。制御部17によって算出されたトルク制御値に従って各関節を駆動するためのアクチュエータ18を動作させることにより、移動ロボット100の歩行が行われる。
続いて以下では、データ補正装置1による補正方法の詳細を図6及び7を用いて説明する。図6は、データ補正装置1による補正手順を示すフローチャートである。図7は、センシング領域内に設定する基準領域を説明するための図である。
図6に示すように、まず、ステップS101では、基準領域設定部12が、レーザレンジファインダ10のセンシング領域内に基準領域を設定する。例えば、図7(a)に示すように、床面に平行なxy平面において、基準領域に対応する範囲を指定することによって、3次元位置データ群に対して基準領域Sを設定する。ここでは、移動ロボット100が移動する白抜矢印D方向において、移動ロボット100の右足平102f及び左足平103fの前方近傍領域を基準領域Sとして設定する。尚、図7は、床面に平行なxy平面に3次元位置データ群がプロットされたものであり、プロットされた各点について高さ情報(z軸方向の位置情報)が存在する。
ステップS102では、データ補正部13が、3次元位置データ群から、基準領域Sに含まれる3次元位置データを抽出する。例えば、図7(b)は、図7(a)に示した基準領域Sに含まれる3次元位置データ群を示している。ここで、ラインL1乃至ラインL7は、レーザレンジファインダ10により照射されるレーザ光の走査線を模式的に示したものであり、各ライン上に複数の3次元位置データが存在する。
ステップS103では、データ補正部13が、ステップS102において抽出された3次元位置データについて、ライン毎に、ライン上に位置する複数の3次元位置データに基づいて補正量を算出し、算出した補正量に基づいて3次元位置データの全体を補正する。即ち、ステップS102において抽出された3次元位置データについて、ライン毎に、ライン上に位置する複数の3次元位置データについて、予め定められた基準値からの差を算出し、算出した差の平均値を補正量として、ライン上の他の3次元位置データの全体を補正する。例えば、図7(b)に示したラインL1上の3次元位置データについて、基準領域Sに含まれる3点の3次元位置データについて(破線Tによって囲まれる3次元位置データ参照)、基準領域Sにおける予め定められた基準値からの差の平均値を算出する。算出された平均値が、各ライン上の3次元位置データ群の高さ成分に対する補正量となる。
ステップS104では、データ補正部13が、ステップS103において算出された補正量に基づいて3次元位置データ群の各高さ成分を補正する。ここでは、ライン毎に、各ライン上の3次元位置データについて、ステップS103において算出されたライン毎の補正量分を3次元位置データの高さ成分から減算することによって、各ライン上の全ての3次元位置データの高さ成分を補正する。
尚、上述した3次元位置データ生成部11、基準領域設定部12、データ補正部13及び環境地図生成部14により実行される処理は、典型的なコンピュータシステムを用いて実現可能である。具体的には、一定の時間間隔で発生するタイマ割り込みに応じて、図6のフローチャートに示した処理をコンピュータシステムに行わせるためのプログラムをコンピュータシステムに実行させればよい。なお、図6のフローチャートに示した処理をコンピュータシステムに実行させるためのプログラムは、1のプログラムである必要はなく、処理内容により分割された複数のプログラムモジュールによって構成されてもよい。
続いて、本発明の実施の形態にかかるデータ補正装置1によって達成されるデータ補正原理とその効果を説明する。
まず、3次元位置データの歪みについて説明する。レーザレンジファインダ10により照射されるレーザ光によって、一本のライン上に位置する3次元位置データをスキャンするのに要する時間は、移動ロボット100が例えば一歩移動するために要する時間に比べて非常に短い。このため、移動ロボット100の移動に起因する3次元位置データの歪みについて、同一のライン上に位置する3次元位置データの歪みは一様に分布する。
そして、移動ロボット100が次のライン上の3次元位置データをスキャンするまでの間には、移動ロボット100が移動する。このため、移動ロボット100による移動の影響を受けて、異なる次のライン上の3次元位置データは前のライン上の3次元位置データとは独立した歪みを含む。即ち、3次元位置データの歪みはラインごとに独立したものとなる。
従って、ライン毎に3次元位置データの歪みを補正するための補正量を算出し、ライン毎に補正を実行する。
まず、3次元位置データの歪みについて説明する。レーザレンジファインダ10により照射されるレーザ光によって、一本のライン上に位置する3次元位置データをスキャンするのに要する時間は、移動ロボット100が例えば一歩移動するために要する時間に比べて非常に短い。このため、移動ロボット100の移動に起因する3次元位置データの歪みについて、同一のライン上に位置する3次元位置データの歪みは一様に分布する。
そして、移動ロボット100が次のライン上の3次元位置データをスキャンするまでの間には、移動ロボット100が移動する。このため、移動ロボット100による移動の影響を受けて、異なる次のライン上の3次元位置データは前のライン上の3次元位置データとは独立した歪みを含む。即ち、3次元位置データの歪みはラインごとに独立したものとなる。
従って、ライン毎に3次元位置データの歪みを補正するための補正量を算出し、ライン毎に補正を実行する。
次いで、3次元位置データの歪みを補正するための補正量について説明する。上記のステップS103において示したように、ライン毎に3次元位置データを補正するに際しては、ライン上の3次元位置データから例えば3点を抽出し、その高さ成分について、予め定められた基準値からの差の平均値を算出する。算出される平均値はライン上の全ての3次元位置データの高さ成分についての基準値からの差の平均値に十分近いものとなる。即ち、ライン上の全ての3次元位置データの歪みを補正するための補正量として、例えば3点の3次元位置データに基づいた、基準値からの差の平均値を使用することができる。具体的には、移動ロボット100の足元領域に設定した基準領域Sが水平となる床面であり、補正量を算出するためのライン上の3次元位置データをその基準領域から抽出する場合には、基準値からの差の平均値は、水平となる床面に対して3次元位置データが平均してどの程度歪んでいるのかを示す。
従って、移動ロボット100の足元近傍の3次元位置データのみに基づいて算出された補正量であっても、同一ライン上の3次元位置データであれば同じ補正量を使用して補正することができるため、移動ロボット100の遠方に位置する3次元位置データについても同様に補正することができる。即ち、移動ロボット100の足元近傍の水平な床面上に設定された基準領域に基づいて、その基準領域に含まれる3次元位置データが水平となるような補正量を算出することにより、全ての3次元位置データについても容易に補正することができる。
従って、移動ロボット100の足元近傍の3次元位置データのみに基づいて算出された補正量であっても、同一ライン上の3次元位置データであれば同じ補正量を使用して補正することができるため、移動ロボット100の遠方に位置する3次元位置データについても同様に補正することができる。即ち、移動ロボット100の足元近傍の水平な床面上に設定された基準領域に基づいて、その基準領域に含まれる3次元位置データが水平となるような補正量を算出することにより、全ての3次元位置データについても容易に補正することができる。
続いて、図8及び9を用いて本発明の実施の形態にかかるデータ補正装置1によって達成されるデータ補正の様子とその効果を説明する。
図8は、設定された基準領域に基づいて、3次元位置データ群の高さ成分を補正する様子を説明するための図である。
図8(a)は図7(a)と同じ図を示す。図8(b)及び(c)において、基準領域U1に含まれる3次元位置データ群のz方向についての高さ成分を破線部V1内に示し、移動ロボット100の移動方向遠方に位置する領域U2に含まれる3次元位置データ群のz方向についての高さ成分を破線部V2内にそれぞれ模式的に示す。
図8(b)は、高さ成分に歪みを含む補正処理実施前の状態を示す図である。図8(c)は、補正処理実施後の状態を模式的に示す図である。
図8(b)に示すように、破線部V1及びV2に含まれる3次元位置データの高さ成分は、それぞれ移動ロボット100の移動方向には依存せず、水平とはなっていない。図8(c)に示すように、基準領域U1に含まれる3次元位置データに基づいて算出する補正量によって、破線部V1に含まれる3次元位置データを水平となるように補正する。そして、同様にして破線部V2に含まれる3次元位置データを含む全ての3次元位置データの高さ成分についても水平となるように補正することができる。
図8は、設定された基準領域に基づいて、3次元位置データ群の高さ成分を補正する様子を説明するための図である。
図8(a)は図7(a)と同じ図を示す。図8(b)及び(c)において、基準領域U1に含まれる3次元位置データ群のz方向についての高さ成分を破線部V1内に示し、移動ロボット100の移動方向遠方に位置する領域U2に含まれる3次元位置データ群のz方向についての高さ成分を破線部V2内にそれぞれ模式的に示す。
図8(b)は、高さ成分に歪みを含む補正処理実施前の状態を示す図である。図8(c)は、補正処理実施後の状態を模式的に示す図である。
図8(b)に示すように、破線部V1及びV2に含まれる3次元位置データの高さ成分は、それぞれ移動ロボット100の移動方向には依存せず、水平とはなっていない。図8(c)に示すように、基準領域U1に含まれる3次元位置データに基づいて算出する補正量によって、破線部V1に含まれる3次元位置データを水平となるように補正する。そして、同様にして破線部V2に含まれる3次元位置データを含む全ての3次元位置データの高さ成分についても水平となるように補正することができる。
図9は、データ補正装置1によって3次元位置データ群の高さ成分が補正される効果を説明するための図である。
図9(a)は、床面に垂直なxz平面に3次元位置データ群がプロットされた正面図の一例であり、3次元位置データ群の高さ成分を示している。図9(a)に示すように、検出された3次元位置データ群の高さ成分は水平とならず、歪んだものとなっている。このため、このような歪みを含んだ3次元位置データ群に基づいては、正確に平面を検出することができない。
図9(b)は、図9(a)に示した3次元位置データ群に対して、移動ロボット100の移動量に基づくオドメトリによって補正を行った結果を示す図である。図9(b)に示すように、高さ方向の歪みによる高さ誤差は±9mmとなっており、所望の高さ誤差の範囲内で得ることができていない。
図9(c)は、図9(b)は示した3次元位置データ群に対して、更にデータ補正装置1によって補正を行った結果を示す図である。図9(c)に示すように、高さ方向の歪みによる高さ誤差は±5mmとなっており、所望の高さ誤差の範囲内で得ることができている。これにより、床面の形状を正確に検出することができるため、段差などの障害物を含む平面を正確に検出することができる。即ち、床面における段差などの障害物を正確に認識することができる。
図9(a)は、床面に垂直なxz平面に3次元位置データ群がプロットされた正面図の一例であり、3次元位置データ群の高さ成分を示している。図9(a)に示すように、検出された3次元位置データ群の高さ成分は水平とならず、歪んだものとなっている。このため、このような歪みを含んだ3次元位置データ群に基づいては、正確に平面を検出することができない。
図9(b)は、図9(a)に示した3次元位置データ群に対して、移動ロボット100の移動量に基づくオドメトリによって補正を行った結果を示す図である。図9(b)に示すように、高さ方向の歪みによる高さ誤差は±9mmとなっており、所望の高さ誤差の範囲内で得ることができていない。
図9(c)は、図9(b)は示した3次元位置データ群に対して、更にデータ補正装置1によって補正を行った結果を示す図である。図9(c)に示すように、高さ方向の歪みによる高さ誤差は±5mmとなっており、所望の高さ誤差の範囲内で得ることができている。これにより、床面の形状を正確に検出することができるため、段差などの障害物を含む平面を正確に検出することができる。即ち、床面における段差などの障害物を正確に認識することができる。
尚、上記の例ではオドメトリによる補正を行った後にデータ補正装置1による補正を行うものとしたがこれに限定されない。即ち、データ補正装置1による補正はオドメトリによる補正を行う前に行うように構成してもよい。
その他の実施の形態.
発明の実施の形態1は、脚式移動ロボットに本発明を適用した一例を示したが、車輪等のその他の移動手段を有する移動ロボットに対しても本発明を適用可能である。
発明の実施の形態1は、脚式移動ロボットに本発明を適用した一例を示したが、車輪等のその他の移動手段を有する移動ロボットに対しても本発明を適用可能である。
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
1 データ補正装置、
10 レーザレンジファインダ、11 3次元位置データ生成部、12 基準領域設定部、13 データ補正部、14 環境地図生成部、15 歩行計画部、16 動作生成部、
17 制御部、18 アクチュエータ、19 エンコーダ
100 移動ロボット、104 脚部、
102 右脚、102c 右膝関節、102e 右足首関節、102f 右足平、
103 左脚、103c 左膝関節、103e 左足首関節、103f 左足平、
160 環境、161 障害物、P11、12 床面、200 環境地図、
P 搭乗者、S 基準領域、R11、12 領域、U1、2 領域
10 レーザレンジファインダ、11 3次元位置データ生成部、12 基準領域設定部、13 データ補正部、14 環境地図生成部、15 歩行計画部、16 動作生成部、
17 制御部、18 アクチュエータ、19 エンコーダ
100 移動ロボット、104 脚部、
102 右脚、102c 右膝関節、102e 右足首関節、102f 右足平、
103 左脚、103c 左膝関節、103e 左足首関節、103f 左足平、
160 環境、161 障害物、P11、12 床面、200 環境地図、
P 搭乗者、S 基準領域、R11、12 領域、U1、2 領域
Claims (10)
- 移動ロボットが移動する床面の形状データを検出する床面形状検出センサと、
前記床面形状検出センサにより検出された床面形状データを補正するデータ補正部とを備えた移動ロボットであって、
前記データ補正部は、前記床面形状検出センサのセンシング領域の一部である基準領域における床面形状データが予め定められた基準値となるように、前記床面形状データの全体を補正する移動ロボット。 - 前記データ補正部は、前記基準領域における床面形状データが水平面を表すデータとなるように、前記床面形状データの全体を補正する
ことを特徴とする請求項1記載の移動ロボット。 - 前記基準領域が、前記移動ロボット前方の近傍領域である
ことを特徴とする請求項1又は2記載の移動ロボット。 - 前記床面形状検出センサが、前記移動ロボットの鉛直軸を中心に揺動可能に取り付けられたレーザレンジファインダであり、
前記データ補正部が、前記基準領域における床面形状データについて、前記レーザレンジファインダによるレーザ光の走査線毎に、当該走査線上に位置する複数の床面形状データに基づいて補正量を算出し、当該算出した補正量に基づいて前記床面形状データの全体を補正する
ことを特徴とする請求項1乃至3いずれか1項記載の移動ロボット。 - 前記移動ロボットが、移動手段としての2つの脚部を備え、2足歩行運動により移動を行う
ことを特徴とする請求項1乃至4記載の移動ロボット。 - 床面の形状データを補正する床面形状データの補正方法であって、
移動ロボットが移動する前記床面の形状データを検出し、当該検出対象となるセンシング領域の一部である基準領域における床面形状データが予め定められた基準値となるように、前記床面形状データの全体を補正するステップ
を備える床面形状データの補正方法。 - 前記基準領域における床面形状データが水平面を表すデータとなるように、前記床面形状データの全体を補正する
ことを特徴とする請求項6記載の床面形状データの補正方法。 - 前記基準領域が、前記移動ロボット前方の近傍領域である
ことを特徴とする請求項6又は7記載の床面形状データの補正方法。 - 前記基準領域における床面形状データについて、レーザ光の走査線毎に、当該走査線上に位置する複数の床面形状データに基づいて補正量を算出し、当該算出した補正量に基づいて前記床面形状データの全体を補正する
ことを特徴とする請求項7又は8記載の床面形状データの補正方法。 - 前記移動ロボットが、移動手段としての2つの脚部を備え、2足歩行運動により移動を行う
ことを特徴とする請求項6乃至9記載の床面形状データの補正方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007112283A JP2008264946A (ja) | 2007-04-20 | 2007-04-20 | 移動ロボット、及び床面形状データの補正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007112283A JP2008264946A (ja) | 2007-04-20 | 2007-04-20 | 移動ロボット、及び床面形状データの補正方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008264946A true JP2008264946A (ja) | 2008-11-06 |
Family
ID=40045175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007112283A Pending JP2008264946A (ja) | 2007-04-20 | 2007-04-20 | 移動ロボット、及び床面形状データの補正方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008264946A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101164336B1 (ko) | 2010-04-21 | 2012-07-09 | 고려대학교 산학협력단 | 이동 로봇의 기준면 높이 보정 방법 및 이를 이용한 고도 지도 작성 방법 |
JP2014197403A (ja) * | 2010-05-20 | 2014-10-16 | アイロボット コーポレイション | 自動推進式テレビ会議プラットホーム |
WO2019215997A1 (ja) * | 2018-05-10 | 2019-11-14 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム及び床面モデリングシステム |
-
2007
- 2007-04-20 JP JP2007112283A patent/JP2008264946A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101164336B1 (ko) | 2010-04-21 | 2012-07-09 | 고려대학교 산학협력단 | 이동 로봇의 기준면 높이 보정 방법 및 이를 이용한 고도 지도 작성 방법 |
JP2014197403A (ja) * | 2010-05-20 | 2014-10-16 | アイロボット コーポレイション | 自動推進式テレビ会議プラットホーム |
WO2019215997A1 (ja) * | 2018-05-10 | 2019-11-14 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム及び床面モデリングシステム |
JPWO2019215997A1 (ja) * | 2018-05-10 | 2021-05-20 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、プログラム及び床面モデリングシステム |
US11372475B2 (en) | 2018-05-10 | 2022-06-28 | Sony Corporation | Information processing apparatus, information processing method, and floor modeling system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5067215B2 (ja) | 移動ロボット及び環境地図生成方法 | |
JP2009136987A (ja) | 移動ロボット、及び床面形状データの補正方法 | |
JP4645601B2 (ja) | 環境地図の生成方法及び移動ロボット | |
JP6180087B2 (ja) | 情報処理装置及び情報処理方法 | |
JP5567908B2 (ja) | 3次元計測装置、その計測方法及びプログラム | |
JP5602392B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
US20130054025A1 (en) | Information processing apparatus, control method for information processing apparatus, and recording medium | |
US20130108116A1 (en) | Position/orientation measurement apparatus, measurement processing method thereof, and non-transitory computer-readable storage medium | |
US20080310705A1 (en) | Legged locomotion robot | |
CN106537185B (zh) | 借助于相交平面探测障碍物的装置和使用所述装置的探测方法 | |
JP2006252473A (ja) | 障害物検出装置、キャリブレーション装置、キャリブレーション方法およびキャリブレーションプログラム | |
JP4678007B2 (ja) | 環境地図生成方法、及び移動ロボット | |
JP4844459B2 (ja) | 平面検出方法、及び移動ロボット | |
Belter et al. | Precise self‐localization of a walking robot on rough terrain using parallel tracking and mapping | |
US20220214696A1 (en) | Simultaneous Localization and Mapping | |
JP6626338B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
JP2009174898A (ja) | 移動体および環境情報作成方法 | |
JP2015175664A (ja) | 地形判断装置、及び脚式移動ロボット | |
JP2010066595A (ja) | 環境地図生成装置及び環境地図生成方法 | |
JP2008264946A (ja) | 移動ロボット、及び床面形状データの補正方法 | |
JP2015007639A (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2020065701A1 (ja) | 情報処理装置および移動ロボット | |
JP4985420B2 (ja) | 床面検出システム、移動ロボット及び床面検出方法 | |
Galilea et al. | Calibration of a high-accuracy 3-D coordinate measurement sensor based on laser beam and CMOS camera | |
WO2020230390A1 (ja) | 位置姿勢推定装置及び位置姿勢推定方法 |