JP4211701B2 - ロボットハンドの把持制御装置 - Google Patents

ロボットハンドの把持制御装置 Download PDF

Info

Publication number
JP4211701B2
JP4211701B2 JP2004213451A JP2004213451A JP4211701B2 JP 4211701 B2 JP4211701 B2 JP 4211701B2 JP 2004213451 A JP2004213451 A JP 2004213451A JP 2004213451 A JP2004213451 A JP 2004213451A JP 4211701 B2 JP4211701 B2 JP 4211701B2
Authority
JP
Japan
Prior art keywords
gripping
finger
link
joint
robot hand
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.)
Expired - Fee Related
Application number
JP2004213451A
Other languages
English (en)
Other versions
JP2006026875A (ja
Inventor
豊 平野
栄強 劉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2004213451A priority Critical patent/JP4211701B2/ja
Publication of JP2006026875A publication Critical patent/JP2006026875A/ja
Application granted granted Critical
Publication of JP4211701B2 publication Critical patent/JP4211701B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、関節を介して接続された複数のリンク部材を備える指部材を複数有するロボットハンドの把持制御を行うロボットハンドの把持制御装置に関する。
ロボットハンドを用いた物体の把持についての先行技術として、従来、特開2003−245883号公報に開示されたロボットの制御方法がある。このロボットの制御方法は、ロボットハンドを用いて物体の把持を行う際に、非接触時には各関節を所定速度で強く握り締め、指リンクが物体に接触した際には、接触した指リンクの根元側リンクに作用する接触力が目標接触力となるように力制御するというものである。
また、他の先行技術として、特開2003−94367号公報に開示された手先視覚付ロボットハンドがある。この手先視覚付ロボットハンドは、撮像したワークの形状および位置からワークを把持するための把持位置データを生成し、この把持位置データに基づいて、ロボットハンドの把持位置を変更し、ロボットハンドが自律して最適な把持位置でワークを把持可能としたというものである。
特開2003−245883号公報 特開2003−94367号公報
しかし、上記特許文献1に開示されたロボットの制御方法では、把持姿勢の予測をすることなく物体を把持している。このため、指リンクの位置によっては物体と指リンクとの接触点が少なくなってしまい、不安定な状態での把持となるおそれがある。また、接触力を用いているため、軽い物体や不安定な物体では先に物体に接触した指リンクが物体を動かしたり、倒したり、損傷したりするおそれがあった。
また、上記特許文献2に開示された手先視覚付ロボットハンドは、撮像したワークの形状および位置に基づいてロボットハンドの把持位置を決定してワークを把持するものである。ところが、ロボットハンドによってワークを把持するための具体的な方法については開示されておらず、確実にワークを把持することができるとは言えないものであった。
そこで、本発明の課題は、指部材によって物体を倒したり、損傷したりする危険性が低く、物体を確実に把持することができるロボットハンドの把持制御装置を提供することにある。
上記課題を解決した本発明に係るロボットハンドの把持制御装置は、関節を介して接続された複数のリンク部材を備える複数の指部材と、複数の指部材が取り付けられたハンド部材と、を有し、複数の指部材における各関節の角度を制御して、把持対象物体を把持するロボットハンドの把持制御装置において、関節の少なくとも一部は、接続するリンク部材を連動させる連動関節であり、把持対象物体の形状を認識する物体形状認識手段と、認識した把持対象物体の形状に基づいて、把持対象物体に指部材が備える複数のリンク部材が、把持対象物体の形状または把持対象物体の重量に応じて定められ、安定した把持を行うために必要な所定数以上の接触点を持って接触するか否かを判断し、所定数以上の接触点をもって接触すると判断した場合、リンク部材の各接触点における関節角度をそれぞれ求め、求めた関節角度に応じて、指部材の把持姿勢を算出し、所定数未満の接触点をもって接触すると判断した場合、把持姿勢算出に用いるハンド部材の把持対象物体に対する位置を変更する把持姿勢算出手段と、を備えるものである。
ここで、所定数は、モデル形状とロボットの拘束条件から幾何学的に求められる最大接触点である態様とすることができる。
本発明に係るロボットハンドの把持制御装置においては、認識した把持対象物体の形状に基づいて、把持対象物体に指部材が備える複数のリンク部材が接触する際の関節角度をそれぞれ求め、求めた関節角度に応じて、指部材の把持姿勢を算出している。このため、指部材が把持対象物体を把持するために適した形状として、把持対象物体を把持することができる。したがって、指部材によって把持対象物体を倒したり、損傷したりする危険性を低くすることができるとともに、把持対象物体を確実に把持することができる。
また、関節の少なくとも一部は、接続するリンク部材を連動させる連動関節とされている。関節が連動関節であると、把持対象物体と指部材との接触点が、リンク部材の自由度よりも少なくなってしまい、絶対的にリンク部材の数と把持対象物体との接触点の数を確保するのが困難となる。
これに対して、本発明に係るロボットハンドの把持制御装置は、把持姿勢算出手段において、算出される指部材の前記把持対象物体に対する接触点が、所定数に満たないときに、ハンド部材の位置を変更するようにしている。このため、所定数、例えばリンク部材と同数の接触点が得られないときに、把持対象物体に対するハンド部材の位置を変更することにより、所定数の接触点をもって、指部材によって把持対象部材を把持することができる。
なお、本発明にいう所定数としては、モデル形状とロボットの拘束条件から幾何学的に求められる最大接触点数とするのが望ましい。このように、最大接触点数で把持することにより、最も安定した把持状態とすることができる。
ここで、把持姿勢算出手段は、予め定義された複数のモデル形状と、モデル形状に対するロボットハンドの拘束条件から定めた接触条件を記憶しており、認識した前記把持対象物体の形状に対して複数のモデル形状のいずれかを割り当て、割り当てたモデル形状に対応する接触条件を満たす把持姿勢を算出する態様とすることができる。
把持対象物体の形状が任意形状である場合、一般に、任意形状に対する把持姿勢を一義的に定義するのは困難である。そこで、本発明では、実際に想定され定義された物体形状をモデル化したモデル形状の1つに認識した物体を割り当て、ロボットハンドの拘束条件と物体モデルの形状から導き出した接触条件を満たす関節角度を算出することで、把持姿勢を決定する。このように、任意形状でなく、モデル化されたモデル形状であれば、ロボットハンドの拘束条件から接触点数や接触位置(方法)を幾何学的に算出することができ、安定した把持を行う接触条件を定めることができる。このような接触条件を定めることによって、安定した把持姿勢を算出することができる。また、モデル形状とロボットハンドの拘束条件とから幾何学的に求めた所定数以上の接触点における接触条件を用いることで、接触点数の多い安定した把持姿勢を算出することができる。
なお、本発明にいうモデル形状としては、直方体、円柱、球などの形状やコップの取っ手などとして用いられるリング形状などを例示することができる。さらには、これらの形状のほか、ロボットが把持する可能性を有する物体の形状をおおまかに分類したものとすることができる。
また、接触条件は、モデル形状と、ロボットハンドの拘束条件とから、把持対象物体と指部材とが所定数以上の接触点数を有する場合における物体に対する指部材の位置を幾何学的に求めた条件である態様とすることもできる。
さらに、把持対象物体の位置を認識する物***置認識手段と、ハンド部材の位置を制御するハンド部材位置制御手段と、を備え、認識した把持対象物体の位置と、ハンド部材の位置との相対的な位置関係に基づいて、ハンド部材位置を制御する態様とすることもできる。
指部材が取り付けられたハンド部材の位置を制御するハンド部材位置制御手段が設けられており、ハンド部材の位置を制御することにより、指部材による把持対象物体の把持をより確実に行うことができる。また、指部材と把持対象物体とが最大数の接触点を有するように制御するにあたり、把持対象物体の位置と、ハンド部材との相対的な位置関係に基づいて、両者の接触点がより多くなるように、ロボットハンドを制御することができる。したがって、把持対象物体をさらに確実に把持することができる。
また、関節角度制御手段は、指部材が把持対象物体に対する接触点でそれぞれ同時に接触するように各関節を制御する態様とすることができる。
このように、指部材が把持対象物体に対する接触点でそれぞれ同時に接触することにより、最先に到達した指部材によって、把持対象物体を倒したり、傷つけたりするといった事態を防止することができる。
さらに、リンク部材に設けられ、把持対象物体を把持する際のリンク部材の把持力を検出する把持力検出手段を備え、関節角度制御手段は、把持力検出手段によって検出された把持力が、所定のしきい値を超えたときに、各関節の制御を終了する態様とすることもできる。
このように、把持力検出手段で検出された把持力が所定のしきい値を超えたときに、各関節の制御を終了することにより、確実な把持力を持ってロボットハンドの指で把持対象物体を把持することができる。
本発明に係るロボットハンドの把持制御装置によれば、指部材によって物体を倒したり、損傷したりする危険性が低く、物体を確実に把持することができる。
以下、図面を参照して、本発明の好適な実施形態について説明する。図1は本発明の実施形態に係るロボットハンドの把持制御装置のブロック構成図、図2は、ロボットハンドの側面図、図3は、ロボットハンドの正面図である。
図1に示すように、本実施形態に係るロボットハンドの把持制御装置(以下「把持制御装置」という)は、ロボットハンド1、画像認識装置2、把持姿勢算出装置3、および制御装置4を備えている。
ロボットハンド1は、図2および図3に示すように、親指に相当する第一指11、人差し指に相当する第二指12、中指に相当する第三指13、および薬指に相当する第四指14を備えている。また、第一指11には、第一指第一関節11A、第一指第二関節11B、および第一指第三関節11Cが設けられており、第二指12には、第二指第一関節12A、第二指第二関節12B、および第二指第三関節12Cが設けられている。さらに、第三指13には、第三指第一関節13A、第三指第二関節13B、および第三指第三関節13Cが設けられており、第四指14には、第四指第一関節14A、第四指第二関節14B、および第四指第三関節14Cが設けられている。
第二指12における付け根部分には、第二指12を揺動させる第二指揺動関節12Gが設けられている。揺動関節12Gは、掌部16に直交する水平軸周りに第二指12を揺動可能としている。また、第三指13および第四指14におけるそれぞれの付け根部分には、第三指13および第四指14を揺動させる第三指揺動関節13Gおよび第四指揺動関節14Gが設けられている。揺動関節13G,14Gは、第三指13および第四指14を掌部16に直交する水平軸周りにそれぞれ揺動させる。これらの各関節11A〜11C,12A〜12C,13A〜13C,14A〜14Cおよび揺動関節12G〜14Gには、図1に示すモータドライバ7に接続された図示しないモータが設けられている。
また、第一指11における第一指第一関節11Aと第一指第二関節11Bとの間には、第一指第一リンク11Dが設けられ、第一指第二関節11Bと第一指第三関節との間には、第一指第二リンク11Eが設けられ、第一指第三関節11Cの先端には、第一指第三リンク11Fが設けられている。第二指12における第二指第一関節12Aと第二指第二関節12Bとの間には、第二指第一リンク12Dが設けられ、第二指第二関節12Bと第二指第三関節との間には、第二指第二リンク12Eが設けられ、第二指第三関節12Cの先端には、第二指第三リンク12Fが設けられている。
さらに、第三指13における第三指第一関節13Aと第三指第二関節13Bとの間には、第三指第一リンク13Dが設けられ、第三指第二関節13Bと第三指第三関節との間には、第三指第二リンク13Eが設けられ、第三指第三関節13Cの先端には、第三指第三リンク13Fが設けられている。第四指14における第四指第一関節14Aと第四指第二関節14Bとの間には、第四指第一リンク14Dが設けられ、第四指第二関節14Bと第四指第三関節との間には、第四指第二リンク14Eが設けられ、第四指第三関節14Cの先端には、第四指第三リンク14Fが設けられている。さらに、第二指揺動関節12Gと、第二指第一関節12Aとの間には、第二指揺動リンク12Hが設けられている。同様に、第三指揺動関節13Gと、第三指第一関節13Aとの間、および第四指揺動関節14Gと、第四指第一関節14Aとの間には、それぞれ図示しない第三指揺動リンクおよび第四指揺動リンクが設けられている。
また、ロボットハンド1は、本発明のハンド部材である第一掌部15および第二掌部16を有している。第一掌部15には、第一指11が取り付けられており、第一指11を水平軸周りに回転可能に支持している。また、第一掌部15は、鉛直軸周りに回転可能とされており、第一掌部15とともに第一指11が鉛直軸周りに回転可能とされている。第二掌部16には、第二指12〜第四指14が取り付けられており、第二指12〜第四指14を鉛直軸周りに回転可能に支持している。また、第一指11〜第四指14の各リンク11D〜11F,12D〜12F,13D〜13F,14D〜14Fには、それぞれ緩衝パッド(柔軟肉)17が取り付けられている。
このように、第一指11は自由度4とされており、他の第二指12〜第四指14は自由度が4とされ、ロボットハンド1の全体として16の自由度を有している。また、ロボットハンド1で物体を把持する際には、第一指11と第三指13とが対向する状態となるように、第一指11が前側に回り込む。こうして、図4に模式的に示すように、第一指11と第三指13とで、把持対象物体Mを把持する。
図1に示す画像認識装置2は、撮像手段となるカメラと、カメラで撮影された画像を処理する画像処理部とを有している。カメラで撮像された画像を画像処理部で画像処理することにより、画像中に映される把持の対象となる物体(以下「把持対象物体」という)の位置、形状、およびサイズを認識する。画像認識装置2は、認識した把持対象部物体の位置、形状、およびサイズを把持姿勢算出手段である把持姿勢算出装置3に出力する。
本実施形態では、画像認識装置2が、物体形状認識装置および物***置認識装置として機能している。画像認識装置2は、ともにカメラで撮像された画像を画像処理部で画像処理し、画像中に映し出される把持対象物体の形状とサイズ、および位置を認識する。
把持姿勢算出装置3は、画像認識装置2から出力された把持対象物体の形状に基づいて、ロボットハンドによって物体を把持するために好適なロボットハンドの把持姿勢を目標関節角として算出する。把持姿勢算出装置3は、把持対象物体のモデル形状に対応した把持計算方法を記憶している。
把持姿勢算出装置3は、モデル形状として、円柱、球、および直方体の形状について、これらのモデル形状がロボットハンドの拘束条件から定めた接触条件を、把持対象物体の形状がこれらのモデル形状であるときの把持計算方法として記憶している。具体的な把持計算方法については、後に説明する。把持姿勢算出装置3は、算出したロボットハンドの把持姿勢(目標関節角)を制御装置4に出力する。
制御装置4には、把持姿勢算出装置3、エンコーダ・ポテンショメータ5、触覚センサ6、およびモータドライバ7が接続されている。エンコーダ・ポテンショメータ5は、ロボットハンド1における第一指11〜第四指14の位置を検出しており、検出した第一指11〜第四指14の各リンクの関節角を制御装置4に出力している。また、触覚センサ6は、図2に示す第一指11〜第四指14の第三関節11C〜14Cに取り付けられた緩衝パッド17に埋め込まれた三軸力覚センサである。触覚センサ6は、ロボットハンド1が物体を把持した際の触覚を把持反力で検出しており、検出した把持反力を制御装置4に出力している。
制御装置4は、エンコーダ・ポテンショメータ5から出力された第一指11〜第四指14の各リンクの関節角と、把持姿勢算出装置3から出力された目標関節角に基づいて、フィードバック制御を行っている。このフィードバック制御により、ロボットハンド1の各関節に設けられたモータを駆動するモータドライバ7に角度指令を出力している。また、制御装置4は、触覚センサ6から出力された把持反力に基づいて、ロボットハンド1の把持位置の誤差を修正するように、モータドライバ7に角度指令または速度指令を出力している。
以上の構成を有する本実施形態に係るロボットハンドの把持制御装置における制御の手順について説明する。図5は、本実施形態に係るロボットハンドの把持制御装置の制御手順を示すフローチャートである。
図5に示すように、ロボットハンドの把持制御を行う際には、まず把持対象物体の位置および形状を認識する(S1)。把持対象物体の位置および形状を認識する際には、画像認識装置2によって把持対象物体を撮影するとともに、所定の画像処理を施して、把持対象物体の位置および形状を認識する。
把持対象物体の位置および形状を認識したら、把持姿勢算出装置3において、把持計算方法を選択する(S2)。把持計算方法は、把持対象物体が円柱、球、直方体のいずれかによって異なり、ここでは、把持対象物体に応じた計算方法を選択する。把持計算方法を選択したら、連動関節があるか否かを判断する(S3)。ここで、連動関節があると判断した場合には、ステップS5に進んで相対位置の設定を行うが、本実施形態に係るロボットハンド1には、連動関節が設けられていないことから、そのまま目標関節角の算出を行う(S4)。連動関節を有する例については第二の実施形態において説明する。
目標関節角の算出は、各指11〜14が、把持対象物体に対して最大数の接触点を有するようにして行われる。この目標関節角は、把持対象物体の形状を、円柱、球、直方体のいずれかのモデル形状に割り当て、モデル形状とロボットハンド1との拘束条件から定められる接触条件を満たすように算出される。この目標関節角を求めることにより、ロボットハンド1の把持姿勢が決定される。
ロボットハンドの拘束条件は、モデル形状との関係で決められ、たとえばモデル形状とロボットハンド1との接触点数が最も多くなることが条件とされる。このモデル形状とロボットハンドの拘束条件と対応する接触条件が定められている。ここで、把持対象物体がそれぞれのモデル形状に割り当てられる形状である場合について説明する。
把持対象物体の形状が円柱である場合、主に第一指11および第三指13の把持力によって把持対象物体を把持する。円柱からなる把持対象物体を把持するにあたり、各指が、把持対象物体に最大接触点数を持って接触する際に最も安定した把持状態となる。したがって、原則的には、各指が、把持対象物体に最大接触点数を持って接触することがここでの拘束条件となり、最大接触点数が接触条件となる。但し、円柱の径がロボットハンド1に対して著しく小さい場合などには、最大接触点数よりも少ない接触点数で把持することが拘束条件となり、この接触点数が接触条件となることもある。
把持対象物体を把持する際の最大の接触点数は、通常、各指におけるそれぞれのリンクの数に相当する。この把持対象物の把持方法について、ロボットハンドの指を一般化して説明する。第三指13に対応する指として、n個のリンクを有する上指を用い、第一指11に対応する指として、3個のリンクを有する下指を用いて説明する。上記ロボットハンド1の第三指13が上指21に相当する場合には、上指21におけるnは3となる。このように、2本の指で把持対象物体としての円柱を把持する状態の横断平面の概略図を図6に示す。
上指21は、第一リンク23A〜第nリンク23Nを有しており、掌部25と第一リンク23Aとは第一関節24Aで接続され、第二リンク23B〜第nリンク23Nは、互いに隣接するリンク同士が第二関節24B〜第n関節24Nで接続されている。また、下指22は、第一リンク26A〜第三リンク26Cを有しており、掌部25と第一リンク26Aとは第一関節27Aで接続されている。第一リンク26Aと第二リンク26Bとは第二関節27Bで接続され、第二リンク26Bと第三リンク26Cとは、第三関節27Cで接続されている。
2本の指21,22で把持対象物体Mを把持する際、図6に示すように、上指21では、第一リンク23A、第二リンク23B、・・・、第nリンク23Nがそれぞれ把持対象物体Mに当接する。また、下指22では、第一リンク26A〜第三リンク26Cが把持対象物体Mに当接する。
このように、指21,22のすべてのリンクが把持対象物体Mに当接するとして、上指21の付け根を座標原点(x,y)とするx−y座標系を設定する。また、把持対象物体Mにおける底面の中心の座標を(x,y)とする。上指21および下指22で把持対象物体Mを把持する際、最も安定した把持パターンとなるのは、この横断平面で上指21および下指22のすべてのリンクが把持対象物体Mに接触する状態である。ここでは、把持対象物体Mの底面の中心座標が与えられていることから、この中心座標を利用して、上指21および下指22における各リンクの目標関節角を算出する。
いま、把持対象物体Mの底面の半径をRとする。把持対象物体における底面の中心座標(x,y)は、画像認識の結果によって得ることができる。
また、上指21は、n個のリンクから構成され、各リンクを接続する関節が独立して動くアクチュエータ(モータ)を有するリンク系である。ここで、i番目のリンクが円柱に接触する幾何条件は、下記(3)式で表すことができる。
(円柱中心cから第一iリンクの中心線までの距離)=R+t ・・・(3)
ここで、tは、リンクiの中心線から接触側の外縁までの距離である、
次に、第一リンク23Aが円柱に接触するときのY軸に対する第一リンク23Aの角度(目標関節角)θを求める。目標関節角θを求めるための式として、点−直線距離の計算式に基づいて、下記(4)式が成り立つ。なお、第nリンクの目標関節角θnは、第n関節のなす角度であり、第nリンクと第(n−1)リンクとがなす角度である。
(x−x)cosθ−(y−y)sinθ=R1 ・・・(4)
ここで、R1=R+t1
また、第二リンク23Bに対して、同様の方法で下記(5)式が導出される。
(x−x)cos(θ+θ)−(y−y)sin(θ+θ)=R2 ・・・(5)
ここで、(x,y)は、第二関節24Bの回転中心座標で、下記(6)式および(7)式で算出される。
=x+Lsinθ ・・・(6)
=y+Lcosθ ・・・(7)
ここで、L1は、第一リンクの長さ
同様に、第nリンクの中心までの距離は、下記(8)式によって求めることができる。
(x−xn−1)cos(θ+θ+・・・+θ)−(y−yn−1)sin(θ+θ+・・・+θ)=Rn ・・・(8)
ここで、(xn−1,yn−1)は、第n関節の回転中心座標で、下記(9)式および(10)式を用いて求めることができる。
n−1=xn−2+Ln−1sin(θ+θ+・・・+θn−1) ・・・(9)
n−1=yn−2+Ln−1cos(θ+θ+・・・+θn−1) ・・・(10)
ここで、Ln−1は、第Ln−1リンクの長さ
上記(4)式を変形すると、下記(11)式となる。この下記(11)式から、目標関節角θを求めることができる。但し、目標関節角θは、(11)式における2つの解のうち、小さい方の値とする。
Figure 0004211701
同様に、上記(5)式を変形すると、下記(12)式となる。この下記(12)式から、第一リンク23Aに対する第二リンク23Bの角度である目標関節角θを求めることができる。
Figure 0004211701
さらに、同様に上記(8)式を変形すると、下記(13)式となる。この下記(13)式から、第nリンクの目標関節角θを求めることができる。
Figure 0004211701
こうして、上指21の各リンク23A〜23Nに対する目標関節角θ〜θの算出を行う。ここで求められた目標関節角θ〜θとなるように、各リンク13D〜13Fにおけるモータをモータドライバ7で駆動させることにより、円柱である把持対象物体を把持するために好適な把持形状となるように、第三指13を制御することができる。
上指21の各リンク23A〜23Nに対する目標関節角θ〜θの算出を行ったら、同様の方法によって下指22の各リンク26A〜26Cに対する目標関節角の算出を行う。このようにして、ロボットハンドの各指の把持形状を、円柱である把持対象物体を把持するために好適な形状とすることができる。
次に、把持対象物体の形状が球である場合の目標関節角の算出について説明する。把持対象物体が球体である場合には、第一指11〜第四指14の4本の指で包み込みを行って把持する態様とするのが好適となる。ここでは、図2に示すロボットハンドを用いた例について説明する。
球体を包み込みで把持する場合、第一指11と第三指13とにおける各リンクの目標関節角の計算は、把持対象物体が円柱である場合と同様であるので、その詳細については説明を省略する。ここでは、第二指12および第四指14の目標関節角を算出する手順を、図7を参照して具体的に説明する。図7は、把持対象物体としての球を把持する状態の概略を示す正面図である。
第二指12および第四指14についても、各指に設けられたリンクの数だけ、把持対象物体と接触するときに、最も安定した把持状態とすることができる。したがって、原則的には、各指のりンクの数の接触点を有する状態が球に対するロボットハンド1の拘束条件となり、この接触点の数が接触条件となる。但し、球がロボットハンド1よりも著しく小さい場合などには、接触点が各指のリンクの数よりも少なくなることもある。
図7に示すように、第二指12と第三指13との間が角度θであるとすると、第二指12における各リンクの目標関節角は、次のように計算される。まず、第二指12の中心線を通って、掌に垂直な平面を平面Pと定義する。また、球からなる把持対象物体Mの断面積が最大となるように、掌と平行な面で球を切断した際の球の切断面に現れる円を第一円C1とし、平面Pと球表面の交線を第二円C2とする。包み込みの姿勢では、第二指12の各リンクは第二円C2に接触する。
また、第二円C2の半径と中心Eの座標は、次のようにして求められる。まず、XZ平面上において、第一円C1と第二指12の中心線との交点は、下記(14)式および(15)式に示す方程式の解として求めることができる。
(x−x+(z−z=R ・・・(14)
x−xH0=tanθ(z−z) ・・・(15)
但し、H点は第二指12の根元関節の中心点である。
上記(15)式を(14)式に代入して整理することにより、下記(16)式を得ることができる。
Az+Bz+C=0 ・・・(16)
ここで、A=tanθ+1
B=2(S・tanθ−z
C=−tanθH0+xH0−x
したがって、第一円C1と第二指12の中心線との交点の座標(x1,2、z1,2)は、下記(17)式および(18)式に示す座標となる。
Figure 0004211701
また、第一円C1の半径rは下記(19)式のように求めることができる。さらに、第二円C2の中心点Eの座標(x,y,z)は、下記(20)式〜(22)式によって表すことができる。
r=[(x−x+(z−z1/2/2 ・・・(19)
=(x+x)/2 ・・・(20)
=y ・・・(21)
=(z+z)/2 ・・・(22)
これらの条件の下、平面Pで円柱と同じ方法により、第二指第一リンク12Dが第二円C2に接触する条件を求めると、この条件は、下記(23)式のように導出される。
Sx・cosθH1+Sy・sinθH1=RH1 ・・・(23)
ここで、Sx=y−yH0
Sy=(xH0−x)sinθ+(xH0−z)cosθ
上記(23)式から、下記(24)式を導出し、(24)式によって第二指第一リンク12Dの目標関節角θH1を算出する。
Figure 0004211701
同様に、(23)式から、下記(25)式を導出し、(25)式によって第二指第二リンク12Eの目標関節角θH2を算出し、さらには、第二指第三リンク12Fの目標関節角θH3を算出する。なお、指がさらに多数のリンクを有し、第Nリンクまである場合には、下記(26)式によって、第Nリンクの目標関節角θHnを算出する。
Figure 0004211701
こうして、第二指12の各リンク12D〜12Fに対する目標関節角θH1〜θH3の算出を行う。ここで求められた目標関節角θH1〜θH3となるように、各リンク12D〜12Fにおけるモータをモータドライバ7で駆動させることにより、円柱である把持対象物体を把持するために好適な把持形状となるように、第二指12を制御することができる。
第二指12の各リンク12D〜12Fに対する目標関節角θH1〜θH3の算出を行ったら、同様の方法によって第四指14の各リンク14D〜14Fに対する目標関節角の算出を行う。このようにして、ロボットハンドの各指の把持形状を、球からなる把持対象物体を把持するために好適な形状とすることができる。
続いて、把持対象物体の形状が直方体である場合の目標関節角の算出について説明する。ここでも、上指がN個のリンクを有する一般的なロボットハンドについて説明する。図2に示すロボットハンド1では、上指21には第二指12〜第四指14が対応し、そのときのリンクの数nは3である。また、下指22には第一指11が対応する。
把持対象物体が直方体である場合には、ロボットハンドで把持した際の最も安定した把持姿勢は、図8に示すように、第一リンク以外のリンクがすべて把持対象物体Mに接触している状態である。したがって、各指と把持対象物体Mとの接触点数は、リンクの総数から1を減じた数の接触点を持って把持するのが、拘束条件となり、この接触点の数が接触条件となる。但し、直方体がロボットハンド1に対して著しく大きい場合などには、リンクの総数からさらに多くの数を減じた数の接触点を持って把持するのが拘束条件となる。
図8に示すように、把持対象物体Mと上指21における第nリンクとの距離tn(n=2,3,…)がすべて等しいと仮定すると、第二リンク23Bおよび第三リンク23Cは、水平な姿勢をとることになる。したがって、第二リンク23Bと第三リンク23Cとの間の角度(第三リンク23Cの目標関節角)は0となる。
また、第一リンク23Aの目標関節角θは、下記(27)式から導出される(28)式を用いて算出される。
Figure 0004211701
この結果、第二リンク23Bの目標関節角θは、第一リンク23Aの目標関節角θを用いて下記(29)式によって求められる。また、第nリンク23Nの目標関節角θは0となる。
θ2=π/−θ ・・・(29)
こうして、上指21の各リンク23A〜23Nに対する目標関節角θ〜θの算出を行う。ここで求められた目標関節角θ〜θとなるように、各リンク23A〜23Nにおけるモータをモータドライバ7で駆動させることにより、円柱である把持対象物体を把持するために好適な把持形状となるように、上指21を制御することができる。
上指21の各リンク23A〜23Nに対する目標関節角θ〜θの算出を行ったら、同様の方法によって下指22の各リンクに対する目標関節角の算出を同様の方法によって行う。このようにして、ロボットハンドの各指の把持形状を、直方体からなる把持対象物体を把持するために好適な形状とすることができる。
このように、本実施形態に係るロボットハンドの把持制御装置によれば、把持対象物体の位置および形状を認識し、認識した把持対象物体の形状に基づいて、把持対象物体に指部材が備える複数のリンク部材が接触する際の関節角度をそれぞれ求めている。そして、求めた関節角度に応じて、指部材の把持姿勢を算出している。したがって、指部材が把持対象物体を把持するために適した形状として、把持対象物体を把持することができ、もって指部材によって把持対象物体を倒したり、損傷したりする危険性を低くすることができるとともに、把持対象物体を確実に把持することができる。
また、把持姿勢の算出を行う際に、把持対象物体に直方体や円柱などのモデル形状を割り当て、このモデル形状に対応する接触条件を満たす把持姿勢を算出している。このため、ロボットハンドの拘束条件から接触点数や接触位置を幾何学的に算出することができ、安定した把持を行う接触条件を定めることができる。
次に、本発明の第二の実施形態について説明する。本実施形態では、ロボットハンドとして、連動関節を有するものを用いている。ここで、連動関節を有するロボットハンドについて説明する。図9は、連動関節を有するロボットハンドの側面図である。
図9に示すように連動関節を有するロボットハンド10は、第二指12〜第四指14の関節のうち、第二関節と第三関節とが連動関節30となっている。その他の点については、図2に示すロボットハンド1と同様の構成を有している。連動関節30は、第二関節12B〜14Bと第三関節12C〜14Cとの間に、リンク部材31が設けられている。
また、第二関節12B〜14Bには、モータが設けられているが、第三関節12C〜14Cには、モータが設けられていない。そして、第二関節12B〜14Bに設けられたモータが回転駆動することにより、第二関節12B〜14Bが回転する。また、第二関節12B〜14Bが回転することにより、その回転がリンク部材31を介して第三関節12C〜14Cに伝達される。こうして、第三関節12C〜14Cも第二関節12B〜14Bとともに回転するようになっている。したがって、ロボットハンド10における第二指12〜第四指14では、第二関節12B〜14Bの関節角度と、第三関節12C〜12Dの関節角度とは同一となる。
本実施形態に係るロボットハンド10は、連動関節が設けられていることにより、第二指12〜第四指14の自由度がそれぞれ3となっている。このため、ロボットハンド10としての自由度は、第一の実施形態に係るロボットハンド1の自由度より少ない13となっている。
次に、本実施形態に係る把持制御装置における制御の手順について説明する。図10は、図1におけるステップS5の制御手順を示すフローチャートである。
本実施形態に係るロボットハンド10においては、図1に示すように、上記第一の実施形態と同様、まず把持対象物体の位置および形状を認識し(S1)、把持姿勢算出装置3において、把持計算方法を選択する(S2)。次に、把持計算方法を選択したら、連動関節があるか否かを判断する(S3)。その結果、連動関節がないと判断したら、上記第一の実施形態と同様に、目標関節角の算出を行う(S4)。一方、連動関節があると判断したときには、把持対象物体とロボットハンド10との相対的な位置関係の設定が行われる(S5)。両者の位置関係の設定は、次のようにして行われる。
図10に示すように、両者の位置関係の設定を行う際に、まず、把持対象物体とロボットハンド10との相対位置の初期値を設定する(S6)。両者の相対位置の初期値は、画像認識装置2で認識された把持対象物体の位置と、画像認識装置におけるカメラとロボットハンドの相対的な位置関係から求められる。
把持対象物体とロボットハンド10との相対位置の初期値を設定したら、両者の相対位置に基づいて、目標関節角が算出可能であるか否かの判断を行う(S7)。目標関節角の算出が可能であるか否かは、指12の把持対象物体に対する接触点が、所定数、たとえばリンク部材と同数以上となるような目標関節角を求めることができるか否かによって判断される。
その判断を行った結果(S8)、目標関節角の算出が可能であると判断したならば、図1のステップS4に進んで目標関節角を算出する(S4)。一方、目標関節角の算出が不可能であると判断したら、把持対象物体Mに対する掌部15,16、すなわちロボットハンド10の相対位置の初期値を変更する(S9)。このステップS7からS9までの処理について、図11を参照して説明する。この処理についても、連動関節を有しない場合と同様、把持対象物体の形状が円柱、球、直方体の場合でそれぞれ異なる。
まず、把持対象物体の形状が円柱体である場合について説明する。図11は、把持対象物体の形状が円柱である場合に、目標関節角を設定する手順を示すフローチャートである。また、図11に示すフローチャートの説明について、図12を参照して説明する。図12は、連動関節を有する指(第二指に相当)が円柱体からなる把持対象物体を把持する状態を示す横断面図である。
図12に示すように、たとえば第二指12に相当する指41が円柱体からなる把持対象物体Mに接触する場合を用いて説明する。指41は、第一リンク42、第二リンク43、および第三リンク44を備えている。また、第一リンク42は、掌45に取り付けられ、第一リンク42と掌45との間には第一関節46が設けられている。さらに、第一リンク42と第二リンク43との間には、第二関節47が設けられ、第二リンク43と第三リンク44との間には、第三関節48が設けられている。このうちの第二関節47および第三関節48が連動関節となっている。
指に連動関節が設けられている場合、リンク系の自由度はリンクの数に対して1つ減る。このため、ロボットハンドと把持対象物体との位置関係いかんでは、指における全リンクが把持対象物体に接触するという条件を満たさないことがある。そこで、図12に示すように、目標関節角の算出可能判断を行う際には、最初に、第一リンク42の軸に対する角度である第一リンク42の目標関節角θ1を算出する(S11)。いま、第二関節47と第三関節48とは連動関節であることから、第三リンク44の目標関節角θは、第二リンク43の目標関節角θに対して、下記(30)式の関係を有する。
θ=γθ ・・・(30)
但し、γ>0
したがって、表示される平面内では自由度数が2であるので、任意な物***置に対して、指41が3箇所で接触することは一般的に不可能である。そこで、三箇所で接触する条件を満たすために、適宜関節角とハンド座標系における円柱中心位置を設定する。
第一リンク42と第二リンク43とが、それぞれ円柱である把持対象物体に接触する条件は、上記(4)式および(5)式で表される。また、第三リンク44が円柱に接触する条件は、下記(31)式で表すことができる。
(x−x)cos[θ+(1+γ)θ]−(y−y)sin[θ(1+γ)θ]=R3 ・・・(31)
上記(4)式、(5)式、および(31)式に含まれる未知数は、θ、θ、x、yの4つである。このため、この3式の連立方程式を解いたとしても、解の数は無数にある。ところで、第一リンク42の目標関節角θは、把持対象物体の大きさに依存している。把持対象物体の大きさが大きいほど、第一リンク42の目標関節角θは小さくなる。このため、第一リンク42の目標関節角θは、下記(32)式で求めることができる。
θ=a−b・R ・・・(32)
ここで、a,bは、正の定数
上記(32)式を上記(4)式、(5)式、および(31)式と連立させることにより、4つの式から4つの解を求めるため、唯一解が存在することになるため、そのままyを求めることもできる。ところが、複雑な三角関数が含まれることから、解析的な解を求めるのは困難である。そこで、数値的な算出方法をとることができる。
そのため、yを探索変数として、ある初期値から出発して、(4)式からxを計算し、さらに、(5)式から、第二リンク43が第一リンク42に対してなす角度である第二リンク43の目標関節角θを求める。そのために、まずyの初期値を設定する(S12)。yの初期値の大きさは、ハンドの大きさから適宜設定することができるが、たとえば100mm程度とすることができる。
の初期値を決定したら、第二リンクの目標関節角θを算出する(S13)。第二リンク43の目標関節角θを算出するにあたり、まず、(4)式を整理し、下記(33)式でxcを再計算する。
=x+[(y−y)sinθ+R]/cosθ ・・・(33)
次に、(5)式を整理して下記(34)式とする。
Acosα+Bsinα=C ・・・(34)
ここで、A=x−x、B=−(y−y)、C=R2、α=θ+θ
上記(34)式を解くと、下記(35)式となる。
Figure 0004211701
また、θは、下記(36)式で求めることができる。
θ=α−θ ・・・(36)
こうして、第二リンク43の目標関節角θを求めたら、θ,θ,x,yを(31)式を変形して得られる下記(37)式に代入して、点C(x,y)から第三リンク44までの距離dを求める(S14)。
d=|(x−c)cos[θ+(1+γ)θ]−(y−y)sin[θ+(1+γ)θ] ・・・(37)
上記(37)式で求めた距離dが、R3と等しければ、安定な把持条件が満たされ、θ、x、yは(4)式、(5)式、および(31)式を満たす解となる。そこで、上記(37)式で求めた距離dと、上記(31)式で求めたR3とを下記(38)式によって比較する(S15)。
|d−R3|<ε ・・・(38)
ここで、εは所定の許容誤差である。
その結果、上記(38)式が成り立つ場合には、その時点で計算を終了し、x、y、およびθを解として決定する。また、第一リンク42の目標関節角θは、(32)式で求めた値を用い、第三リンク44の目標関節角θは、(30)式で自動的に決定される。そして、他の指の姿勢を算出する(S16)。ここでは、第二指の把持姿勢についての説明を例としているが、他の第三指13、および第四指14でも同様にして把持姿勢を算出することができる。また、第一指11については、連動関節を有していないので、上記した連動関節を有しない場合の姿勢の算出方法により、その姿勢を算出することができる。そうして、すべての指の姿勢も算出し、得られた把持対象物体の中心位置C(x,y)および目標関節角θ,θを設定する。
一方、上記(38)式が成り立たない場合には、下記(39)式に示すように、yを初期値から次のように変更し、繰り返して計算を行う。
(i+1)=y (i)+Δy ・・・(39)
ここで、Δy=k(R3−d)
kは、k>0の調整ゲインである。
このように、把持対象物体の初期位置を設定してロボットハンドが安定した状態で把持可能であるか否かを判断し、可能である場合には、そのときの目標関節角を設定する。また、不可能である場合には、把持対象物体のハンド座標系での相対位置の初期位置を調整することにより、安定した状態で把持可能となるようにする。実際には、把持対象物体の絶対位置は、画像認識によって得られているので、ハンド座標系での物体中心に相対位置が上記の値となるように、絶対空間内におけるハンド座標系原点の位置を、アームを動かすことによって調整する。したがって、ロボットハンドによって把持対象物体を安定した状態で把持することができる。
次に、連動関節を備える指を有するロボットハンドで把持する把持対象物体の形状が球である場合について説明する。図13は、把持対象物体の形状が球である場合に、目標関節角を設定する手順を示すフローチャートである。
球体を包み込みで把持する場合、第一指11と第三指13の姿勢計算は、円柱体の場合と同様である。したがって、ここでは、第二指12および第四指14の把持姿勢について図14を参照して説明する。
第三指13の姿勢を計算した時点で、把持対象物体Mの中心Eはすでに定められている。このため、2自由度のリンク系からなる第二指12は、通常、最大2箇所で接触可能となる。そこで、第二指12における第二リンク12Eおよび第三リンク12Fが接触する条件を算出する。
そのため、まず、第二指12の中心線を通って、掌に垂直な平面で把持対象物体を切断したときに現れる円の中心Eの半径と座標とを算出する(S21)。この円の半径は、上記(19)式のよって算出することができ、円の中心Eの座標(x,y,z)は、それぞれ上記(20)式〜(22)式によって算出することができる。
次に、第一リンク12Dの目標関節角θH1および第二リンク12Eの目標関節角θH2の初期値を設定する(S22)。これらの初期値としては、予め設定しておいた値を用いることができる。
次に、把持対象物体と第二リンク12Eとの間の隙間e1、および把持対象物体と第三リンク12Fとの間の隙間e2とを算出する(S23)。いま、把持対象物体Mの中心Eから第二リンク12Eの中心線までの距離d1は、下記(40)式によって算出することができる。
d1=Ux・cos(θH1+θH2)+Uy・sin(θH1+θH2) ・・・(40)
ここで、Ux=y−yH1
Uy=(xH1−x)sinθ+(zH1−z)cosθ
また、第三リンク12Fの中心線までの距離d2は、下記(41)式によって算出される。
d2=Vx・cos[θH1+(1+γ)θH2]+Vy・sin[θH1+(1+γ)θH2] ・・・(41)
ここで、Vx=y−yH2
Vy=(xH2−x)sinθ+(zH2−z)cosθ
したがって、第二リンク12Eと把持対象物体との間の隙間e1および第三リンクと把持対象物体との隙間e2は、それぞれ下記(42)式および(43)式によって求めることができる。
e1=d1−r−t ・・・(42)
e2=d2−r−t ・・・(43)
ここで、tは、第二リンクの幅の1/2、tは、第三リンクの幅の1/2である。
この隙間e1とe2とが同時に0となることにより、第二リンク12Eと第三リンク12Fとが同時に把持対象物体に接触することになる。そこで、下記(44)式および(45)式が成り立つか否かを判断する(S24)。
|e1|<ε ・・・(44)
|e2|<ε ・・・(45)
その結果、上記(44)式および(45)式の両方が成り立つ場合には、このときの目標関節角θH1,θH2をそれぞれ第一リンク12Dおよび第二リンク12Eの目標関節角に設定する。一方、上記(44)式および(45)式の一方または両方が成り立たない場合には、下記(46)式および(47)式によってθH1およびθH2を更新する(S25)。
θH1(k+1)=θH1(k)+α・e1 ・・・(46)
θH2(k+1)=θH2(k)+β・e2 ・・・(47)
それから、再びステップS23に戻って上記(42)式および(43)式によってe1およびe2を算出する。その後、ステップS24で上記(44)式および(45)式が成り立つと判断されるまで、同様の工程を繰り返す。このようにして、目標関節角θH1,θH2を決定することができる。
続いて、連動関節を備える指を有するロボットハンドで把持する把持対象物体の形状が直方体である場合について説明する。把持物体が直方体である場合は、図15に示すように、直方体である把持対象物体Mを把持する際には、ロボットハンドと把持対象物体Mの大きさの関係などによっては、第二指12の第一リンク12Dは、直方体の把持面には接触できない。
また、第二指12は、3リンク系であることから、最大2箇所で把持対象物体Mに対して接触可能である。これらのことから、第二指12における第二リンク12Eおよび第三リンク12Fの2点が接触する条件で、第一リンク12Dの目標関節角θおよび第二リンク12Eの目標関節角θを決定することができる。
いま、第二リンク12Eの接触側の境界曲線をC1,指先部の形状曲線をC2とする。現在の第一リンク12Dの目標関節角θおよび第二リンク12Eの目標関節角θで運動解析を行い、境界曲線C1および形状曲線C2上の各点の座標を計算し、境界曲線C1上の一番下方の点を探す。その点から、把持対象物体Mの上方表面までの垂直距離を隙間e1と定義する。同じように、形状曲線C2と把持対象物体Mとの垂直距離を隙間e2と定義する。
隙間e1,e2が同時に0になれば、包み込み把持状態となる。また、隙間e1,e2が0でなければ、上記(46)式および(47)式でそれぞれ第一リンク12Dの目標関節角θおよび第二リンク12Eの目標関節角θを調整して再計算する。計算のアルゴリズムは、把持対象物体の形状が球体の場合と同様である。このようにして、目標関節角を決定することができる。
このように、本実施形態に係るロボットハンドの把持制御装置では、指が連動関節を有する場合および連動関節を有しない場合のいずれにおいても、把持対象物体の形状に応じて目標関節角を設定することによって指の把持姿勢を算出し、把持対象物体を把持するようにしている。
上記特許文献2に開示されたロボットハンドでは、ロボットハンドで把持対象物体を把持するために、適切な把持位置を算出するものではある。ところが、ハンドを正確な把持位置に到達させたとしても、指の各能動関節を協調的に動作させなければ、必ずしも安定した包み込み把持をすることができるとは限らない。
これに対して、本実施形態に係るロボットハンドの把持制御装置では、最多把持接触点を持つ包み込み把持の条件を導出した上で、事前に各指の各関節の目標位置を算出するようにしている。このため、ロボットハンドによって把持対象物体を確実に把持することができる。
また、ロボットハンドの各指の各目標関節角を算出し、各指の把持姿勢を決定した後は、図1に示す制御装置4によって、モータドライバ7を一斉に作動させ、各指における関節を同時に動かして把持対象物体を把持する態様とするのが好適である。上記特許文献2に開示されたロボットハンドでは、把持対象物体を把持する際、各関節の目標角度と動作経路を事前に知ることができない。このため、手先感覚による把持対象物体と指との間の相対位置を実時間で計測したり、またはセンサによって接触有無を検知したりして、指の運動をフィードバックして制御することが必要となる。したがって、各情報のフィードバックと実時間で経路探しに時間がかかり、高速での把持ができず、作業効率が低いものである。
これに対して、本実施形態に係るロボットハンドの把持制御装置では、ロボットハンドで把持動作を行う前に、安定な包み込み把持となるために必要な各指の目標姿勢をあらかじめ計算し、把持動作の際にすべての関節が一斉に動き出すようにしている。このため、実時間での経路探しおよび視覚情報のフィードバックが不要となるので、高速把持を可能とし、もって作業効率の向上を図ることができる。
さらに、本実施形態に係るロボットハンドの把持制御方法では、物体のサイズが把持可能の範囲にあれば、任意のサイズに対応することができる。しかも、本実施形態では、物体形状を円柱、球、直方体の3種類に分けてそれぞれの包み込み把持の目標計算を行っている。このため、三次元物体の包み込み把持を確実に行うことができる。
しかも、本実施形態に係るロボットハンドの把持制御方法では、各指が同時に把持対象物体の表面に到着するようにしている。このため、先に把持対象物体に到達した指が把持対象物体に到達して把持対象物体を動かしたり、倒したり、損傷したりといった事態を防止することができる。
また、上記実施形態において、連動関節を有する指と連動関節を有しない指とを例に挙げて説明したが、連動関節を有する指を用いた場合には、連動関節を有しない指を用いた場合と比較して、連動化によってアクチュエータの個数を削減することができるというメリットがある。また、アクチュエータの個数の削減に伴い、全体としての制御を簡素化することができるとともに、連動関節の体格を小さくすることができる。
さらに、各指の緩衝パッド17に埋め込まれた触覚センサ6を用いて、把持位置の誤差補償を行うことができる。以下、この誤差補償について説明する。図16は、誤差補償を含めたロボットハンドの把持制御装置の制御手順を示すフローチャートである。
図16に示すように、画像認識装置2では、物体の位置および形状を確認し(S31)、把持姿勢算出装置3に出力する。把持姿勢算出装置3では、画像認識装置2から出力された物体の位置および形状に基づいて、計算方法を選択し(S32)、ロボットハンドの各指における各リンクの目標関節角の初期値を設定する(S33)。
続いて、把持対象物体と指との隙間を算出し(S34)、隙間が所定の許容誤差未満であるか否かを判断する(S35)。その結果、隙間<εでない場合には、把持対象物体の初期位置または対象となるリンクの目標関節角θを調整し(S36)、ステップS34に戻る工程を繰り返す。一方、ステップS35で隙間<εである場合には、ステップS37に進む。ここまでの工程は、上記の制御手順で示したものと同様にして進めることができる。
次に、ステップS35で隙間<εであると判断したら、把持姿勢算出装置3は、各指における各リンクの目標関節角に基づいて、各指の目標姿勢を算出し(S37)、制御装置4に出力する。制御装置4では、把持姿勢算出装置3から出力された把持姿勢に基づいて、モータドライバ7を介して各指のモータを制御し、把持対象物体を把持する(S38)。
このように、各指によって把持対象物体を把持するとともに、触覚センサ6では、各指の接触点における把持力を監視し(S39)、監視した把持力を制御装置4に出力する。制御装置4は、指が把持対象物体を把持する際の好適な把持力をリミット値として記憶している。制御装置4では、触覚センサ6から出力された把持力と、記憶した把持力とを比較し、把持力がリミット値未満であるか否かを判断する(S40)。
その結果、把持力がリミット値未満であると判断したときには、ステップS38に戻り、さらに指の関節を作動させる制御を行い、把持位置の誤差を修正する。また、この把持位置の誤差の修正を行う際、このとき、指をゆっくり作動させて把持力を徐々に大きくしていき、所定の把持力となった時点で指の動作を停止させる。こうすることにより、適切な把持力で把持対象物体を把持することができる。
逆に、ステップS39において、把持力がリミット値に達していると判断した場合には、指によって把持対象物体を確実に把持した状態となっている。したがって、この状態となったときに、指の動作を停止させて制御を終了する。
このように、触覚センサを用いて把持位置の誤差を修正することにより、把持ロバスト性の高い把持制御を行うことができる。
以上、本発明の好適な実施形態について説明したが、本発明は上記各実施形態に限定されるものではないた。たとえば、上記実施形態では、モデル形状として、直方体、円柱、球を設定しているが、たとえばコップの取っ手となるリングなど、ロボットが把持する可能性が比較的高いものを大まかに分類して設定することができる。
また、上記実施形態において、モデル形状に対応する接触点の所定数として、モデル形状ごとの最大数に設定しているが、最大数の接触点に設定することが必須ではなく、たとえば、モデル形状ごとに、安定して把持するのに必要な接触点数を予め記憶しておき、その接触点数の接触点を所定数の接触点とすることもできる。あるいは、把持対象物体を認識した結果から把持重量を予測し、予測した重量の基づいて、安定した把持に必要な接触点数を算出し、この接触点数の接触点を、所定数の接触点とすることもできる。但し、所定数の接触点としてはモデル形状とロボットハンドの拘束条件から幾何学的に求められる最大の接触点数の接触点を、所定数の接触点とするのが最も好ましくなる。
さらに、上記実施形態では、物体形状認識装置と物***置認識装置として、画像処理装置を用いているが、これに限定されず、種々のものを用いることができる。たとえば、物体形状認識装置としては、物体に光を投射し、その反射光から形状を推定するものなどを用いることができる。また、物***置認識装置としては、たとえば物体の形状を画像から認識し、物体の位置を超音波などで検出するものを用いることもできる。
ロボットハンドの把持制御装置のブロック構成図である。 ロボットハンドの側面図である。 ロボットハンドの正面図である。 2本の指で円柱を把持する状態を示す平面図である。 ロボットハンドの把持制御装置の制御手順を示すフローチャートである。 2本の指で円柱を把持する状態の横断平面を概略的に示す図である。 球を把持する状態の概略を示す正面図である。 直方体を把持する状態の概略を示す側面図である。 連動関節を有するロボットハンドの側面図である。 図5におけるフローチャートのステップS5の工程を示すフローチャートである。 把持対象物体の形状が円柱である場合に、目標関節角を設定する手順を示すフローチャートである。 連動関節を有する指が円柱体を把持する状態の概略を示す横断面図である。 把持対象物体の形状が球である場合に、目標関節角を設定する手順を示すフローチャートである。 連動関節を有する指が球体を把持する状態の概略を示す横断面図である。 連動関節を有する指が直方体を把持する状態の概略を示す横断面図である。 誤差補償を含めたロボットハンドの把持制御装置の制御手順を示すフローチャートである。
符号の説明
1,10…ロボットハンド、2…画像認識装置、3…把持姿勢算出装置、4…制御装置、5…エンコーダ・ポテンショメータ、6…触覚センサ、7…モータドライバ、11…第一指、12…第二指、13…第三指、14…第四指、15…第一掌部、16…第二掌部、17…緩衝パッド、30…連動関節、31…リンク部材、M…把持対象物体。

Claims (7)

  1. 関節を介して接続された複数のリンク部材を備える複数の指部材と、前記複数の指部材が取り付けられたハンド部材と、を有し、前記複数の指部材における各関節の角度を制御して、把持対象物体を把持するロボットハンドの把持制御装置において、
    前記関節の少なくとも一部は、接続するリンク部材を連動させる連動関節であり、
    前記把持対象物体の形状を認識する物体形状認識手段と、
    認識した前記把持対象物体の形状に基づいて、前記把持対象物体に前記指部材が備える複数のリンク部材が、前記把持対象物体の形状または前記把持対象物体の重量に応じて定められ、安定した把持を行うために必要な所定数以上の接触点を持って接触するか否かを判断し、前記所定数以上の接触点をもって接触すると判断した場合、前記リンク部材の前記各接触点における関節角度をそれぞれ求め、求めた関節角度に応じて、前記指部材の把持姿勢を算出し、前記所定数未満の接触点をもって接触すると判断した場合、前記把持姿勢算出に用いる前記ハンド部材の前記把持対象物体に対する位置を変更する把持姿勢算出手段と、
    を備えることを特徴とするロボットハンドの把持制御装置。
  2. 前記所定数は、モデル形状とロボットの拘束条件から幾何学的に求められる最大接触点である請求項1に記載のロボットハンドの把持制御装置。
  3. 前記把持姿勢算出手段は、予め定義された複数のモデル形状と、前記モデル形状に対するロボットハンドの拘束条件から定めた接触条件を記憶しており、
    認識した前記把持対象物体の形状に対して前記複数のモデル形状のいずれかを割り当て、割り当てたモデル形状に対応する接触条件を満たす把持姿勢を算出する請求項1または請求項2に記載のロボットハンドの把持姿勢制御装置。
  4. 前記接触条件は、前記モデル形状と、前記ロボットハンドの拘束条件とから、前記把持対象物体と前記指部材とが所定数以上の接触点数を有する場合における前記物体に対する指部材の位置を幾何学的に求めた条件である請求項3に記載のロボットハンドの把持制御装置。
  5. 前記把持対象物体の位置を認識する物***置認識手段と、
    前記ハンド部材の位置を制御するハンド部材位置制御手段と、
    を備え、
    認識した把持対象物体の位置と、前記ハンド部材の位置との相対的な位置関係に基づいて、ハンド部材位置を制御する請求項1〜請求項4のうちのいずれか1項に記載のロボットハンドの把持制御装置。
  6. 前記関節角度制御手段は、前記指部材が前記把持対象物体に対する接触点でそれぞれ同時に接触するように前記各関節を制御する請求項1〜請求項5のうちのいずれか1項に記載のロボットハンドの把持制御装置。
  7. 前記リンク部材に設けられ、前記把持対象物体を把持する際の前記リンク部材の把持力を検出する把持力検出手段を備え、
    前記関節角度制御手段は、前記把持力検出手段によって検出された把持力が、所定のしきい値を超えたときに、前記各関節の制御を終了する請求項1〜請求項6のうちのいずれか1項に記載のロボットハンドの把持制御装置。
JP2004213451A 2004-07-21 2004-07-21 ロボットハンドの把持制御装置 Expired - Fee Related JP4211701B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004213451A JP4211701B2 (ja) 2004-07-21 2004-07-21 ロボットハンドの把持制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004213451A JP4211701B2 (ja) 2004-07-21 2004-07-21 ロボットハンドの把持制御装置

Publications (2)

Publication Number Publication Date
JP2006026875A JP2006026875A (ja) 2006-02-02
JP4211701B2 true JP4211701B2 (ja) 2009-01-21

Family

ID=35893803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004213451A Expired - Fee Related JP4211701B2 (ja) 2004-07-21 2004-07-21 ロボットハンドの把持制御装置

Country Status (1)

Country Link
JP (1) JP4211701B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103963057A (zh) * 2013-01-30 2014-08-06 精工爱普生株式会社 机器人控制方法、机器人控制装置、机器人及机器人***

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4956964B2 (ja) * 2005-11-04 2012-06-20 トヨタ自動車株式会社 ロボットハンドの把持制御装置
JP2007260877A (ja) * 2006-03-29 2007-10-11 Univ Waseda マニピュレータの形状制御システム及び形状制御装置
JP4918004B2 (ja) * 2006-11-24 2012-04-18 パナソニック株式会社 多指ロボットハンド
WO2008062625A1 (fr) * 2006-11-24 2008-05-29 Panasonic Corporation Main de robot à doigts multiples
JP5286947B2 (ja) * 2008-06-03 2013-09-11 株式会社安川電機 ロボット用ハンドおよびそれを備えたロボット
JP5281377B2 (ja) * 2008-12-04 2013-09-04 トヨタ自動車株式会社 ロボット装置
JP5458274B2 (ja) 2009-02-09 2014-04-02 本田技研工業株式会社 把持位置計算装置及び把持位置計算方法
KR102015307B1 (ko) * 2010-12-28 2019-08-28 삼성전자주식회사 로봇 및 그 제어 방법
US9067319B2 (en) 2011-08-11 2015-06-30 GM Global Technology Operations LLC Fast grasp contact computation for a serial robot
JP2015136769A (ja) * 2014-01-23 2015-07-30 財團法人精密機械研究發展中心 エンドエフェクタの制御方法
CN104921850B (zh) * 2015-06-23 2017-01-18 山东科技大学 一种助残机械手抓及配套工具的使用方法
US11185978B2 (en) * 2019-01-08 2021-11-30 Honda Motor Co., Ltd. Depth perception modeling for grasping objects
WO2022085408A1 (ja) * 2020-10-19 2022-04-28 三菱電機株式会社 ロボット制御装置およびロボット制御方法
JP2022156794A (ja) * 2021-03-31 2022-10-14 本田技研工業株式会社 把持位置決定装置、把持位置決定システム、把持位置決定方法、およびプログラム
CN115510727B (zh) * 2022-11-15 2023-03-24 佛山科学技术学院 一种抓取机构稳定抓持力阈值计算及其控制方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6257004A (ja) * 1985-09-05 1987-03-12 Fanuc Ltd ロボツト用視覚センサ
JPS63256383A (ja) * 1987-04-13 1988-10-24 富士通株式会社 ロボツトの制御方法
JPH0673828B2 (ja) * 1989-12-22 1994-09-21 三菱重工業株式会社 人間形ロボット指機構の制御方法
JPH0630861B2 (ja) * 1990-06-14 1994-04-27 工業技術院長 指マニピュレータ
JP2838582B2 (ja) * 1990-07-09 1998-12-16 トヨタ自動車株式会社 ロボットハンドの把持制御方法
JPH04343691A (ja) * 1991-05-17 1992-11-30 Sanyo Electric Co Ltd ロボットハンドの制御方法
JPH0970786A (ja) * 1995-09-06 1997-03-18 Ricoh Co Ltd 把持ハンド
JP2003094367A (ja) * 2001-09-21 2003-04-03 Ricoh Co Ltd 手先視覚付ロボットハンド
JP2004188533A (ja) * 2002-12-10 2004-07-08 Toyota Motor Corp 対象物の取扱い推定方法および取扱い推定装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103963057A (zh) * 2013-01-30 2014-08-06 精工爱普生株式会社 机器人控制方法、机器人控制装置、机器人及机器人***
CN103963057B (zh) * 2013-01-30 2017-08-01 精工爱普生株式会社 机器人控制方法、机器人控制装置、机器人及机器人***

Also Published As

Publication number Publication date
JP2006026875A (ja) 2006-02-02

Similar Documents

Publication Publication Date Title
JP4211701B2 (ja) ロボットハンドの把持制御装置
US10894324B2 (en) Information processing apparatus, measuring apparatus, system, interference determination method, and article manufacturing method
JP5505138B2 (ja) ロボット装置およびロボット装置による把持方法
US9193072B2 (en) Robot and control method thereof
KR101308373B1 (ko) 로봇 제어방법
JP4565229B2 (ja) ロボット
US9014854B2 (en) Robot and control method thereof
JP4001105B2 (ja) ロボットによる任意形状物体の把持方法
US20210394362A1 (en) Information processing device, control method, and program
US8483876B2 (en) Controller of mobile robot
US9193070B2 (en) Robot, control system for controlling motion of a controlled object, and recording medium for control program for controlling motion of a controlled object
JP4591043B2 (ja) ロボットによる任意形状物体の把持方法
JP4956964B2 (ja) ロボットハンドの把持制御装置
JP2006341372A (ja) ロボットの制御方法
JP2005007486A (ja) ロボットハンドの把持制御装置
JP4640499B2 (ja) 把持制御装置
JP4137601B2 (ja) ロボットハンドの制御方法、ロボットハンド
JP4715296B2 (ja) ロボットハンドの持ち替え把持制御方法。
JP2007098550A (ja) ロボットハンドの把持制御装置
JP2005335010A (ja) 把持制御装置
JPH1133952A (ja) ロボットの制御方法、ロボットおよび把持物体の位置、姿勢修正方法
JP5456557B2 (ja) ロボット、制御システムおよび制御プログラム
CN110877335A (zh) 一种基于混合滤波器自适应无标记机械臂轨迹跟踪方法
WO2023100667A1 (ja) 把持装置及び把持方法
JP7259487B2 (ja) 制御方法およびロボットシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070410

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080603

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080729

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081007

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081020

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131107

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees