トップ :: B 処理操作 運輸 :: B25 手工具;可搬型動力工具;手工具用の柄;作業場設備;マニプレ−タ

【発明の名称】 ロボット装置及びロボット装置の制御方法
【発明者】 【氏名】服部 祐人

【氏名】中野 雄介

【氏名】松井 禮朗

【要約】 【課題】外部環境に応じた動作を実行するロボット装置において、外部環境の3次元データ中に存在する自己の身体の一部の像を識別可能とする。

【構成】ロボット1は、外部環境を視覚的に認識する視覚センサ101と、視覚センサ101による取得情報に基づいて、外部環境の3次元データを作成する環境復元部102と、3次元データの中に、ロボット1の身体の像が含まれるか否かを判定し、3次元データの中にロボット1の身体の像が含まれると判定された場合に、3次元データ中におけるロボット1の身体の像が占める領域を特定する身体推定部104とを備える。
【特許請求の範囲】
【請求項1】
外部環境に応じて動作を実行するロボット装置であって、
外部環境を視覚的に認識する視覚センサと、
前記視覚センサによる取得情報に基づいて、前記外部環境の3次元データを作成する3次元データ作成部と、
前記3次元データの中に、当該ロボット装置の身体の像が含まれるか否かを判定する判定部と、
前記判定部により前記3次元データの中に当該ロボット装置の身体の像が含まれると判定された場合に、前記3次元データ中における当該ロボット装置の身体の像が占める領域を特定する領域特定部と、
を備えるロボット装置。
【請求項2】
前記領域特定部による特定は、前記3次元データと当該ロボット装置の身体モデルとを照合することにより行う請求項1に記載のロボット装置。
【請求項3】
当該ロボット装置の身体の位置及び姿勢を算出する算出部をさらに備え、
前記領域特定部は、前記算出部により算出された位置及び姿勢に基づいて、前記身体モデルと照合される前記3次元データの領域を特定する請求項2に記載のロボット装置。
【請求項4】
前記領域特定部による特定結果と、前記3次元データとに基づいて前記ロボット装置の動作内容を決定する動作計画部を備える請求項1乃至3のいずれかに記載のロボット装置。
【請求項5】
前記ロボット装置の身体の像を前記3次元データから除去する補正部と、
前記補正部によって補正された3次元データに基づいて、前記ロボット装置の動作内容を決定する動作計画部とをさらに備える請求項1乃至3のいずれかに記載のロボット装置。
【請求項6】
外部環境に応じて動作を実行するロボット装置の制御方法であって、
外部環境の3次元データの中に、当該ロボット装置の身体の像が含まれるか否かを判定し、
前記3次元データの中に当該ロボット装置の身体の像が含まれると判定された場合に、前記3次元データ中における当該ロボット装置の身体の像が占める領域を特定し、
前記領域の特定結果と、前記3次元データとに基づいて前記ロボット装置の動作内容を決定することとした制御方法。
【請求項7】
外部環境に応じて動作を実行するロボット装置の制御方法であって、
外部環境の3次元データを取得し、
前記ロボット装置の身体の位置及び姿勢を算出し、
算出した前記ロボット装置の身体の位置及び姿勢に基づいて、前記3次元データから処理対象領域を選択し、
選択した前記処理対象領域と当該ロボット装置の身体モデルとの照合により、前記3次元データの中で前記ロボット装置の身体の像が含まれる身体領域を検出することとした制御方法。
【請求項8】
前記身体領域の検出結果に応じて前記3次元データを補正し、
補正後の3次元データに基づいて前記ロボット装置の動作内容を決定することとした請求項7に記載の制御方法。
【発明の詳細な説明】【技術分野】
【0001】
本発明は、物体把持等の外部環境に応じた動作を実行するロボット装置及びその制御方法に関する。
【背景技術】
【0002】
作業環境内に存在する物体を認識して把持動作を実行するロボット装置や、作業環境内を自律的に移動するロボット装置など、外部環境に応じた動作を実行するロボット装置が従来から提案されている。例えば、特許文献1には、ステレオカメラを用いて作業環境の3次元データを取得し、取得した3次元データによって環境内に存在する把持対象物体の位置及び姿勢を認識して、これに対する把持動作を実行するロボット装置が開示されている。
【特許文献1】特開2004−1122号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
従来から提案されている外部環境に応じた動作を実行するロボット装置は、自身が備えるステレオカメラ等の視覚センサによって取得した作業環境の3次元データに含まれている物体の像が、自己の身体の一部の像であるか、それとも作業環境内に存在している外部の物体の像であるかを識別できないという問題がある。
【0004】
この問題点の影響が顕著となるロボット装置の一例として、作業環境に存在する障害物を回避しつつ、腕部による把持対象物体の把持動作を行うロボット装置を想定する。当該ロボット装置が外部環境の3次元データに基づいて把持対象物体に対する腕部の移動経路を算出する際に、3次元データ中にロボット装置の身体の一部の像が含まれていると、本来であれば把持対象物体に対して直線的に腕部を移動できるにもかかわらず、障害物と認識してしまった身体の一部を回避する経路を生成してしまうために、最適な動作を実行できない可能性がある。また、把持を行う腕部を障害物と認識してしまうと、既に腕部と障害物とが衝突していることになり、腕部の移動経路を算出できないという弊害を生じる可能性がある。
【0005】
本発明は上述した問題点を考慮してなされたものであって、本発明の目的は、外部環境に応じた動作を実行するロボット装置において、外部環境の3次元データに含まれる自己の身体の像を識別可能とすることである。
【課題を解決するための手段】
【0006】
本発明の第1の態様にかかるロボット装置は、外部環境に応じて動作を実行するロボット装置であって、外部環境を視覚的に認識する視覚センサと、前記視覚センサによる取得情報に基づいて、前記外部環境の3次元データを作成する3次元データ作成部と、前記3次元データの中に、当該ロボット装置の身体の像が含まれるか否かを判定する判定部と、前記判定部により前記3次元データの中に当該ロボット装置の身体の像が含まれると判定された場合に、前記3次元データ中における当該ロボット装置の身体の像が占める領域を特定する領域特定部とを備える。このような構成により、外部環境の3次元データに含まれる自己の身体の像を識別することができる。なお、ここでの身体の像とは、身体の一部分の像を意味している。また、以下で説明する発明の実施の形態1にかかるロット装置が備える環境復元部が、前記3次元データ作成部に相当する。また、発明の実施の形態1における身体推定部が、前記判定部及び前記領域特定部に相当する。
【0007】
なお、前記領域特定部による特定は、前記3次元データと当該ロボット装置の身体モデルとを照合することにより行うとよい。
【0008】
また、前記第1の態様にかかるロボット装置は、当該ロボット装置を構成する各部の位置及び姿勢を算出する算出部をさらに備えることとし、前記領域特定部は、前記算出部により算出された位置及び姿勢に基づいて、前記身体モデルと照合される前記3次元データの領域を特定することが望ましい。このような構成により、3次元データと身体モデルとの照合を効率よく行うことができる。
【0009】
また、前記第1の態様にかかるロボット装置は、前記領域特定部による特定結果と、前記3次元データとに基づいて前記ロボット装置の動作内容を決定する動作計画部を備えることが望ましい。このような構成により、視覚センサによって取得した3次元データに自己の身体の像が含まれるか否かに応じてロボット装置の動作内容を変更するなど、ロボット装置の動作の多様性を向上できる。
【0010】
また、前記第1の態様にかかるロボット装置は、前記ロボット装置の身体の像を前記3次元データから除去する補正部と、前記補正部によって補正された3次元データに基づいて、前記ロボット装置の動作内容を決定する動作計画部とを備えてもよい。このような構成により、視覚センサによって取得した3次元データに自己の身体の像が含まれることによるロボット装置の誤動作を抑制することができる。
【0011】
本発明の第2の態様にかかる方法は、外部環境に応じて動作を実行するロボット装置の制御方法である。具体的には、まず、外部環境の3次元データの中に、当該ロボット装置の身体の像が含まれるか否かを判定する。次に、前記3次元データの中に当該ロボット装置の身体の像が含まれると判定された場合に、前記3次元データ中における当該ロボット装置の身体の像が占める領域を特定する。続いて、前記領域の検出結果と、前記3次元データとに基づいて前記ロボット装置の動作内容を決定する。このような方法により、外部環境の3次元データに含まれる自己の身体の像を識別し、外部環境の3次元データに自己の身体の像が含まれるか否かに応じてロボット装置の動作内容を変更するなど、ロボット装置の動作の多様性を向上できる。
【0012】
本発明の第3の態様にかかる方法は、外部環境に応じて動作を実行するロボット装置の制御方法である。具体的には、外部環境の3次元データを取得するとともに、前記ロボット装置の身体の位置及び姿勢を算出する。次に、算出した前記ロボット装置の身体の位置及び姿勢に基づいて前記3次元データから処理対象領域を選択し、選択した前記処理対象領域と当該ロボット装置の身体モデルとの照合により、前記3次元データの中で前記ロボット装置の身体の像が含まれる身体領域を検出するものである。このような方法により、外部環境の3次元データに含まれる自己の身体の像を識別することができる。
【発明の効果】
【0013】
本発明により、外部環境の3次元データに含まれる自己の身体の像を識別可能なロボット装置及びロボット装置の制御方法を提供することができる。
【発明を実施するための最良の形態】
【0014】
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。なお、以下に示す発明の実施の形態は、物体把持を行う腕部を備えたロボットに本発明を適用したものである。
【0015】
発明の実施の形態1.
本実施の形態にかかるロボット1の外観を図1に示す。ロボット1の頭部10には、外界の3次元の点群データ(以下、距離画像データと呼ぶ)を取得する視覚センサ101が設けられている。頭部10は、胴体部11に連結されている。また、胴体部11には、腕部12が連結されている。より詳細には、腕部12に含まれる上腕部121が胴体部11と肩関節機構(不図示)を介して連結され、上腕部121と前腕部123とが肘関節部122を介して連結され、前腕部123の先端に手部124が設けられている。さらに、胴体部11にはロボット1の移動機構である車輪131及び132が設けられている。
【0016】
本実施の形態にかかるロボット1は、視覚センサ101によって取得した距離画像データを用いて把持対象である物体50の位置及び姿勢を認識する。次に、ロボット1は、認識した物体50を把持可能な位置まで腕部12を移動させるための経路計画を実行して、腕部12による物体50の把持を行う。なお、腕部12の経路計画の実行時は、物体50と腕部12との間に障害物が存在するか否かを視覚センサ101によって取得した距離画像データに基づいて判定し、障害物を回避して物体50に到達する経路を決定する。このとき、視覚センサ101によって取得した距離画像データに、腕部12が撮像されている場合がある。この場合に、腕部12を障害物と認識してしまうと最適な経路計画を実行することができないため、ロボット1は、腕部12を障害物と認識しないための仕組みを備えている。
【0017】
以下では、ロボット1が行う物体50の把持動作について、特に、視覚センサ101によって取得した距離画像データに腕部12が撮像されている場合に、これを障害物と認識しないための仕組みについて、図2及び図3を用いて詳細に説明する。図2のブロック図は、物体50の把持を行うための処理に関係するロボット1の主要部の内部構成を示している。
【0018】
図2において、視覚センサ部101は、上述したように、ロボット1の外界の3次元点群データ(距離画像データ)を取得する。具体的には、レーザレンジファインダ等のアクティブ距離センサによって距離画像データを取得する。なお、CCDイメージセンサ又はCMOSイメージセンサ等の撮像素子を備えた複数のカメラを備え、これら複数のカメラによって撮影した画像データを用いて距離画像データを生成してもよい。具体的には、複数のカメラによって撮影した画像データから対応点を検出し、ステレオ視によって対応点の3次元位置を復元する。ここで、複数の撮影画像における対応点の探索は、複数の撮影画像に対する時空間微分の拘束式を用いた勾配法や相関法等の公知の手法を適用して行えばよい。
【0019】
環境復元部102は、視覚センサ101によって得た距離画像データの近傍点の間を連結することによって三角ポリゴンを生成し、ロボット1の外部環境をモデル化したポリゴンデータ(以下、環境データと呼ぶ)を生成する。ここで、環境データの基準座標系は、ロボット1に固定された座標系としてもよいし、ロボット1が存在する環境内に固定された座標系としてもよい。
【0020】
なお、広範囲にわたる環境データを生成する場合には、視覚センサ101、つまり頭部10を動かすことによって複数の異なる視点における距離画像データを取得し、複数視点での距離画像データを統合した後の距離画像データをもとに環境データを生成する。ここで、複数視点で得られた距離画像データの統合は、オドメトリ情報、具体的には、頭部10と胴体部11を連結する首関節の関節角センサ(不図示)の計測情報を収集し、視覚センサ101による距離画像データ取得時の首関節の角度に基づいて複数の距離画像データを位置合わせすることにより行う。または、複数の距離画像データから対応点を求めることによって、距離画像データ相互の位置合わせを行ってもよい。環境復元部102によって生成された環境データは、環境データ記憶部103に格納される。
【0021】
身体推定部104は、環境データ中の腕部12の像が含まれている領域を特定する処理を行う。以下では、身体推定部104の処理フローを図3のフローチャートを用いて説明する。
【0022】
ステップS101では、制御部107からロボット1のオドメトリ情報を入力する。ここで、オドメトリ情報とは、ロボット1を構成する頭部10、腕部12、車輪132及び133の位置、角度、速度、角速度等を検出するためにロボット1が備えているエンコーダ(不図示)や関節角センサ(不図示)等の内界センサの計測情報である。
【0023】
ステップS102では、ロボット1の身体モデルと、制御部107から入力したオドメトリ情報を利用して、ロボット1の位置及び姿勢を算出する。ここで、身体モデルとは、ロボット1の身体を幾何学的にモデル化したものであり、関節と、関節の間を繋ぐリンクとによって表現される。身体モデルは、ロボット1の身体と同じ自由度及び拘束条件を有する。
【0024】
ステップS103では、ステップS102において算出したロボット1の位置及び姿勢をもとに、視覚センサ101によって距離画像データを取得した際の視野内に、腕部12の像が存在しているか否かを判定する。当該判定は、身体モデルが構成する凸なポリゴン群と、視覚センサ101の画角がつくる四角錐形状のポリゴンの交差判定によって行うことができる。
【0025】
視野内にロボット1の身体の一部が存在すると判定した場合は、ロボット1の身体モデルと、環境復元部103が生成した環境データとのマッチングを行って、環境データの中で腕部12の像が含まれている領域を特定する(ステップS104)。具体的には、ロボット1が予め記憶している腕部12の三次元形状データと、環境データとをマッチングして、環境データの中で腕部12の像が含まれている領域を特定する。ここで、マッチングは、従来から知られている画像認識の手法を採用して行えばよい。
【0026】
なお、ステップS104の始めに、オドメトリ情報を用いて特定したロボット1の位置及び姿勢によって、環境データ中の腕部12の像が含まれる領域を大まかに特定し、これをマッチングの初期値とすることが望ましい。ステップS104の始めに初期値の設定を行わずに、環境データの全体を走査することも可能である。しかしながら、オドメトリ情報を用いて特定したロボット1の位置及び姿勢によって、身体モデルとマッチングされる環境データの領域を選択することによって、走査領域の減少による演算量の削減、及びマッチング処理の高速化が可能となる点で有効である。
【0027】
図2に戻って説明を続ける。補正部105は、身体推定部104の処理結果に応じて、環境データ記憶部103に格納された環境データを補正する。具体的には、後述する経路計画部106において腕部12が障害物として検出されないように、環境データ中で腕部12の像が含まれると判定された領域のデータを削除する。
【0028】
なお、補正部105による環境データの補正の目的は、環境データに含まれている腕部12に関する距離情報が、経路計画部106によって算出される腕部12の経路に影響を与えないように、腕部12の像を環境データから除去することである。このため、補正部105によるデータ補正の内容は、経路計画部106の処理に適したものにすればよく、例えば、環境データ中の腕部12の像が含まれると判定された領域のデータを削除してもよいし、腕部12の像が含まれていない周辺の距離データによって置換してもよいし、腕部12の像が含まれていない周辺の距離データによる補間によって代替の距離データを生成してもよい。
【0029】
経路計画部106は、補正部105による補正後の環境データと、ロボット1が予め記憶している物体50の三次元形状データとを照合することにより、物体50の位置及び姿勢を算出する。また、経路計画部106は、物体50とロボット1の間に存在する障害物の位置を、環境データを用いて算出する。さらに、経路計画部106は、算出した物体50の位置及び姿勢、並びに障害物の位置をもとに、障害物を回避して物体50を把持するための腕部12の移動経路を算出し、腕部12の動作情報を制御部107に出力する。
【0030】
制御部107は、頭部10、腕部12、車輪132及び133の位置、角度、速度、角速度等を検出するためにロボット1が備えているエンコーダ(不図示)や関節角センサ(不図示)等の内界センサの計測情報を収集し、頭部10、腕部12、車輪132及び133を駆動するための制御信号を、これらを駆動する駆動部に対して出力する。さらに、制御部107は、経路計画部106によって決定された腕部12の移動経路に従って腕部12を動作させるための制御信号をアーム駆動部108に出力する。アーム駆動部108は、腕部12のアクチュエータを動作させるための駆動回路である。
【0031】
上述したように、本実施の形態にかかるロボット1は、視覚センサ101による計測データを用いて生成された環境データに存在する腕部12の像を検出し、腕部12の像を環境データから除去することによって環境データを補正するものである。これにより、ロボット1が置かれた環境内に存在する障害物を回避して物体50を把持するための腕部12の移動経路を決定する場合に、ロボット1の身体の一部である腕部12を障害物と認識することによる誤動作を防止することができる。
【0032】
また、環境データ中での腕部12が存在する領域を単にオドメトリ情報のみによって特定すると、視覚センサ101による距離画像データの取得タイミングと、腕部12のオドメトリ情報の取得タイミングのズレ等に起因して、腕部12が存在する領域の特定誤差が増大する可能性がある。これに対して、本実施の形態にかかるロボット1は、オドメトリ情報を用いて特定したロボット1の位置及び姿勢によって、環境データ中の腕部12の像が含まれる領域を大まかに特定した後に、ロボット1の身体モデルと環境データとのマッチングを行って、環境データの中で腕部12の像が含まれている領域を特定している。このため、オドメトリ情報のみによる場合に比べて、環境データの中での腕部12の像が含まれている領域を詳細に特定することができる。
【0033】
その他の実施の形態.
発明の実施の形態1では、身体推定部104が、視覚センサ101によって取得した距離画像データをポリゴン化した環境データの中から、腕部12が存在する領域を検出する構成を説明した。しかしながら、身体推定部104は、視覚センサ101によって取得した点群データである距離画像データの中から腕部12が存在する領域を検出してもよい。
【0034】
また、発明の実施の形態1では、身体推定部104において、腕部12の像が環境データ中に含まれるか否かを検出することとしたが、腕部12に限らずロボット1の身体の他の部位を検出対象としてもよい。
【0035】
また、発明の実施の形態1では、障害物を回避して腕部12の移動経路を動作計画部106において決定することとしたが、障害物を検出した場合には把持動作を停止することとしてもよいし、警報音等によって外部に対して注意を促すこととしてもよい。つまり、障害物の検出に応じたその後の動作は任意である。
【0036】
また、発明の実施の形態1では、ロボット1が視覚センサ101を備え、環境データを自律的に取得することとしたが、ロボット1の外部に設けた距離センサ等によって距離画像データを取得し、通信手段を介して取得した距離画像データをロボット1に送信してもよい。
【0037】
また、発明の実施の形態1にかかるロボット1は、障害物を回避しながら物体50の把持動作を行うものとして説明した。しかしながら、本発明は、このような把持動作を行うロボットに限らず、視覚センサによって認識した外部環境に応じて動作を実行するロボットに対して広く適用可能である。
【0038】
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【0039】
【図1】発明の実施の形態1にかかるロボットの外観を示す図である。
【図2】発明の実施の形態1にかかるロボットの内部構成を示すブロック図である。
【図3】発明の実施の形態1にかかるロボットが行う身体推定処理を示すフローチャートである。
【符号の説明】
【0040】
1 ロボット
10 頭部
101 視覚センサ
102 環境復元部
103 環境データ記憶部
104 身体推定部
105 補正部
106 経路計画部
107 制御部
108 アーム駆動部
11 胴体部
12 腕部
121 上腕部
122 肘関節機構
123 前腕部
124 手部
50 物体
【出願人】 【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
【出願日】 平成18年6月27日(2006.6.27)
【代理人】 【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健


【公開番号】 特開2008−6519(P2008−6519A)
【公開日】 平成20年1月17日(2008.1.17)
【出願番号】 特願2006−177361(P2006−177361)