JP4265088B2 - ロボット装置及びその制御方法 - Google Patents
ロボット装置及びその制御方法 Download PDFInfo
- Publication number
- JP4265088B2 JP4265088B2 JP2000208915A JP2000208915A JP4265088B2 JP 4265088 B2 JP4265088 B2 JP 4265088B2 JP 2000208915 A JP2000208915 A JP 2000208915A JP 2000208915 A JP2000208915 A JP 2000208915A JP 4265088 B2 JP4265088 B2 JP 4265088B2
- Authority
- JP
- Japan
- Prior art keywords
- gripping mechanism
- coordinates
- gripping
- hand position
- robot
- 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
Links
Images
Description
【発明の属する技術分野】
本発明は、ロボット装置及びその制御方法に係り、特に、運動中の物体を把持するロボット装置及びその制御方法に関する。
【0002】
【従来の技術】
ロボットを利用して対象物に作業(例えば物体の把持)を行う場合、対象物の位置、姿勢などの情報をセンサにより取得して、そのセンサ情報をもとに作業する例が数多く実用化されている。このような装置構成としては、大別して、一般的に次の2つの方式がある。
【0003】
例えば特開平8−63214号公報に記載されているように、コンベア上を搬送される対象物を固定されたカメラで撮像し、得られた画像から対象物の位置、姿勢を検出してその情報をロボットに送信するものがある。このロボットは、対象物の位置情報から把持などの作業を行っている。
【0004】
また、ロボットの手先にカメラなどのセンサを取り付け、前述のようにカメラからの画像から対象の位置姿勢を検出して、その情報に基づいて移動する対象物に追従して把持などの作業を行うものもある。
【0005】
【発明が解決しようとする課題】
しかし、前者のようにロボットと別に設置したカメラを用いて対象物の把持などの作業を実現する場合、ロボットとカメラの設置位置を予め正確に求めておく作業が必要になる。また、カメラの焦点距離やレンズひずみ係数などを予め算出しておくカメラキャリブレーションを行う必要がある。
【0006】
加えて、特開平8−63214号公報などにおける例では、一般的にカメラの光軸がコンベア平面に垂直に、さらに画面中のx軸あるいはy軸がコンベアの搬送方向に平行になるように設置しておく必要がある。また、対象物がベルトコンベアなどで動いているため、カメラからの画像により検出した対象物の位置姿勢情報に加えてコンベアの速度情報などを別の手段(例えばコンベアのエンコーダ)により検出し、両者の情報に基づいてロボットへの指令値を生成する必要がある。さらに、カメラとロボットの設置位置情報、対象物の位置情報、コンベアの速度情報からロボットが対象物を把持する際の軌道を生成しなければならない。したがって、教示作業、軌道生成のための処理手順が非常に煩雑になるなどの問題がある。
【0007】
このような問題は、従来技術におけるロボットの手先にカメラを設置した後者の例についても同じことがいえる。つまり、カメラからの画像から検出した対象物の位置姿勢情報に基づいてロボットの手先に取り付けたグリッパなどで対象物を把持する場合、カメラから得られた対象物の位置姿勢情報をロボットの基準座標系からみた位置姿勢情報に変換する必要があり、ロボット手先とカメラとの位置関係を予め精密に求めておく、いわゆるハンドアイキャリブレーションが必要となる。特に、ロボット手先にカメラなどのセンサを設置した場合、作業中の誤作動などによりロボット手先とカメラ位置関係が変化することが頻繁にあり、その場合はキャリブレーション作業を再度行う必要がある。また、前者の例と同様に対象物が動いている場合、ロボット基準座標からみた対象物の位置姿勢情報は刻々と変化するため、把持を行うための軌道生成が非常に複雑となる。
【0008】
さらに、従来では、前者及び後者の方法とも、構成装置(コンベアの設置状況や搬送速度、あるいはカメラとロボットの設置位置関係)や把持すべき対象物の形状が変わらなくても、使用するロボット及びセンサが変わる毎に、前述の高精度なキャリブレーション、煩雑な教示作業を行う必要があった。
【0009】
本発明は、上述した問題点を解消するために提案されたものであり、煩雑な教授作業やキャリブレーションを行う手間を省き、対象物に容易に所定の作業を行わせることができるロボット装置及びその制御方法を提供することを目的とする。
【0010】
【課題を解決するための手段】
請求項1記載の発明は、対象物を把持する把持機構を有し、前記把持機構が移動可能に構成された把持手段と、前記把持手段の把持機構と共に移動可能に固定され、対象物を撮像する撮像手段と、前記撮像手段が撮像した対象物の画像から1以上の特徴量の座標を抽出する特徴量抽出手段と、前記把持機構に前記対象物を把持させたときの把持機構の位置を第1の手先位置として記憶し、前記対象物を開放させて前記撮像手段が対象物を撮像することができる範囲内において前記把持機構を移動させたときの前記把持機構の位置を第2の手先位置として記憶し、前記第2の手先位置において前記撮像手段が撮像して前記特徴量抽出手段が抽出した前記対象物の各特徴量の座標を記憶する記憶手段と、前記第2の手先位置から前記1の手先位置まで移動するための移動行列を算出する算出手段と、前記特徴量抽出手段によって抽出される運動中の対象物の各特徴量の座標が、前記記憶手段に記憶されている各特徴量の座標に一致するように前記把持手段を移動させることで、前記運動中の対象物に前記把持機構を追従させる制御をする追従制御手段と、前記把持機構が運動中の対象物に追従している際に、前記算出手段が算出した移動行列に基づいて前記把持機構を前記運動中の対象物に近付け、前記対象物を把持させるように前記把持手段を制御する把持制御手段と、を備えたものである。
【0011】
請求項1記載のロボット装置は、当該ロボット装置に対して相対的に運動する対象物を把持するものである。したがって、前記ロボット装置が固定され前記対象物が運動する場合に限らず、前記ロボット装置が運動し前記対象物が固定されている場合や、前記ロボット装置と前記対象物がそれぞれ異なる速度で運動している場合も適用することができる。さらに、前記対象物は、前記ロボット装置に対して相対的に等速直線運動、等速円運動、等加速度直線運動していてもよいが、相対的に静止していてもよい。
【0012】
最初に、オペレータは、教示作業として、次の2つのことを行う必要がある。第1に、把持機構を第1の手先位置に移動させ、ここで対象物を把持させる。第2に、把持機構から対象物をリリースさせ、撮像手段が対象物を撮像することができる範囲内において把持機構を第2の手先位置まで移動させる。このような教示作業を行い、第1及び第2の手先位置を記憶手段に記憶させる。さらに、第2の手先位置において、撮像手段が撮像した画像から抽出される1以上の特徴量の座標も記憶手段に記憶させる。撮像手段は、把持機構のセンサとなるものであり、把持手段と共に移動するように固定されている。また、第2の手先位置から第1の手先位置まで移動するための移動行列が算出される。
【0013】
このような教示作業が完了すると、運動中の対象物を把持する把持作業を行うことができる。把持機構は、運動中の対象物の各特徴量の座標が、前記記憶手段に記憶されている各特徴量の座標に一致するように移動される。すなわち、把持機構が運動中の対象物を追従するように、いわゆるビジュアルサーボが行われる。このときの対象物と把持機構の相対的な位置関係は、教示作業時の対象物と把持機構の相対的な位置関係と同じである。前記把持機構が運動中の対象物に追従すると、前記算出手段が算出した第1の移動行列に基づいて前記把持機構を前記運動中の対象物に近付け、そして前記対象物を把持させる。
【0014】
ビジュアルサーボを行っている場合では、運動中の対象物に把持機構が完全に追従していることが望ましい。しかし、運動中の対象物に所定距離を隔てながら把持機構が追従することがある。このような場合は、請求項2に記載されるような再教示作業が行われるのが好ましい。具体的には、前記記憶手段は、前記追従制御手段によって前記把持機構が前記運動中の対象物に対して所定距離を隔てながら追従している際に、前記特徴量抽出手段が抽出した前記対象物の各特徴量の座標を新たに記憶し、前記追従制御手段が新たに記憶された各特徴量の座標を用いて、前記第2の手先位置から前記把持機構を対象物に完全に追従させたときの前記把持機構の位置を新たな第2の手先位置として記憶すればよい。
【0015】
請求項3記載の発明は、移動可能に構成された把持機構で対象物を把持するロボット装置の制御方法であり、前記把持機構に前記対象物を把持させたときの把持機構の位置を第1の手先位置として記憶し、前記対象物を開放させて、対象物を撮像することができる範囲内において前記把持機構を移動させたときの前記把持機構の位置を第2の手先位置として記憶し、前記第2の手先位置において前記対象物を撮像し、前記撮像した対象物の画像から1以上の特徴量の座標を抽出し、前記抽出した各特徴量の座標を記憶し、前記第2の手先位置から前記1の手先位置まで移動するための移動行列を算出し、前記把持機構と共に移動可能に固定された状態で、運動中の対象物を撮像し、前記撮像した運動中の対象物の画像から1以上の特徴量の座標を抽出し、前記抽出された運動中の対象物の各特徴量の座標が、前記記憶されている各特徴量の座標に一致するように前記把持機構を移動させることで、前記運動中の対象物に前記把持機構を追従させ、前記把持機構が運動中の対象物に追従している際に、前記算出した移動行列に基づいて前記把持機構を前記運動中の対象物に近付け、前記把持機構に前記対象物を把持させるものである。
【0016】
この発明は、請求項1に記載されたロボット装置を制御するための方法であり、オペレータは、教示作業として上述した2つのことを行うだけでよい。すなわち、オペレータが2つの簡単な教示作業を行うだけで、運動している対象物に把持機構を追従させて、その対象物を把持することができる。
【0017】
ビジュアルサーボを行っている場合では、運動中の対象物に把持機構が完全に追従していることが望ましい。しかし、運動中の対象物に所定距離を隔てながら把持機構が追従することがある。このような場合は、請求項4に記載されるような再教示作業が行われるのが好ましい。具体的には、前記運動中の対象物に前記把持機構を追従させ、前記把持機構が前記運動中の対象物に対して所定距離を隔てながら追従している際に、前記把持機構と共に移動可能に固定された状態で、運動中の対象物を撮像し、前記撮像した運動中の対象物の画像から1以上の特徴量の座標を抽出し、前記抽出した前記対象物の各特徴量の座標を新たに記憶し、前記新たに記憶された各特徴量の座標を用いて、前記第2の手先位置から対象物に前記把持機構が完全に追従するように前記把持機構を移動させ、完全に追従した際に、前記把持機構の位置を新たな第2の手先位置として記憶すればよい。
【0018】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【0019】
(第1の実施の形態)
図1に示すように、本実施の形態に係るロボット装置は、固定された状態で、コンベア10で搬送されている対象物11を把持するものである。なお、本発明は、このような実施の形態に限定されるものではなく、対象物11がロボット装置に対して相対的に運動していれば適用することができる。すなわち、ロボット装置が運動し対象物11が静止している場合や、ロボット装置と対象物11が異なる速度で運動している場合であってもよい。さらに、第2及び第3の実施の形態でも同様である。
【0020】
ロボット装置は、対象物11を撮像するCCDカメラ1と、CCDカメラ1が撮像した画像から特徴量を抽出するセンサコントローラ2と、対象物11を把持するグリッパ3と、グリッパ3を3次元方向に移動させるロボットアーム4と、座標変換や軌道生成等を行い、図示しないサーボ回路、アンプなどを有し、グリッパ3やロボットアーム4の動作を制御するロボットコントローラ5とを備えている。
【0021】
CCDカメラ1は、ロボットアーム4の先端であるグリッパ3の近傍に固着されている。ロボットコントローラ5は、センサコントローラ2で得られた画像特徴量Fiに基づいて、誤差ベクトルE(t)や速度指令値ベクトルV(t)を算出し、これらの値に従ってロボットアーム4の移動や、グリッパ3による対象物11の把持を制御する。なお、コンベア10は、対象物11を一定の速度で搬送する。
【0022】
このような構成のロボット装置は、搬送されている対象物11を実際に把持する前に、対象物11を把持するための教示作業が行われる。
【0023】
(教示作業)
最初に、オペレータは、ロボット装置に対象物11を把持させてロボット手先位置Pを教示する。なお、グリッパ3などの把持機構及び対象物11の形状によって、把持すべき位置が制限される場合がある。また、後の処理(例えば、対象物11に他の部品を組み付けたり、部品箱に投入すること)のために、把持すべき位置を予め規定しておくこともある。
【0024】
ここでは、対象物11は、例えば図2に示すように、7角柱状に形成され、7つの側面111〜117を備えている。対象物11の上面118には、図示しない部品を取り付けるための6つの組み付け穴(例えばねじ穴)が形成されている。なお、対象物11の下面119には、このような組み付け穴は形成されていない。対象物11の把持される部分は、把持されたときの安定性を考慮して、7つの側面のうち相対する側面111,115、または側面113,116であることが好ましい。なお、本実施の形態では上記の形状の対象物11を用いたが、本発明はこの形状に限定されるものではなく、対象物11は他の形状であってもよい。そして、教示作業は、具体的には図3に示すステップST1からステップST6の処理に従って行われる。
【0025】
ステップST1において、オペレータは、図示しないティーチングペンダントなどを用いてグリッパ3が対象物11の側面111,115または側面113,116を把持するようにして、ステップST2に移行する。
【0026】
ステップST2において、ロボットコントローラ5は、図4に示すようにグリッパ3が対象物11を把持した状態で、ロボット基準座標系におけるグリッパ3の位置、すなわちロボット手先位置Pdを記憶して、ステップST3に移行する。ここにいう「位置」は、姿勢を含む6自由度のパラメータで表される。以下同様に、姿勢を含む6自由度のパラメータを「位置」という。
【0027】
ステップST3において、ロボットコントローラ5は、グリッパ3が把持した対象物11をリリースさせ、そして、任意の位置にグリッパ3を移動させ、ステップST4に移行する。
【0028】
グリッパ3が移動する位置は、CCDカメラ1の視野範囲内であることを要する。すなわち、CCDカメラ1で撮像した画像から対象物11の特徴量が抽出されるような位置である。具体的には、対象物11がCCDカメラ1の視野内に収まっていない位置や、CCDカメラ1が対象物11を真横から撮像する位置などではなく、抽出すべき特徴量が好適に画像から得られるような位置である。
【0029】
ステップST4において、ロボットコントローラ5は、図5に示すように現在のロボット基準座標系でのグリッパ3の位置、すなわちロボット手先位置Psを記憶し、ステップST5に移行する。
【0030】
ここで、ロボット手先位置PsからPdに変換するための位置姿勢変換行列をPOとすると、以下の式が成り立つ。
【0031】
Ps・PO=Pd
∴PO=Ps-1・Pd
ロボットコントローラ5は、このとき位置姿勢変換行列POを算出し、これを記憶する。なお、ロボットコントローラ5は、後述する把持作業の際に、位置姿勢変換行列POを算出してもよい。
【0032】
ステップST5において、CCDカメラ1は、ロボット手先位置Psにおいて対象物11を撮像し、この画像をセンサコントローラ2に供給する。センサコントローラ2は、CCDカメラ1からの画像に基づいて画像特徴量を抽出して、ステップST6に移行する。ここで、CCDカメラ1は、例えば図6に示すような対象物11の画像を得る。
【0033】
ステップST6において、センサコントローラ2は、対象物11の上面118に加工されている6つの組み付け穴を画像特徴量Fi(i=1〜6)として抽出し、各画像特徴量Fiの中心位置の座標値(Xi,Yi)記憶して、教示作業の処理を終了する。
【0034】
なお、画像中の組み付け穴の中心位置の計測方法としては、二値化画像処理やエッジ処理などの公知の手法を用いればよい。また、ここでは組み付け穴の中心位置を画像特徴量Fiとしたが、線分端点、コーナ、二値化画像の孤立領域の面積重心など、他の画像特徴量を用いてもよい。さらに、教示時は、オペレータが画像特徴量Fiをマウスやキーボード等の図示しない入力手段により人為的に定義してもよい。
【0035】
(把持作業)
ロボット装置は、教示作業が終了すると、その作業の際に記憶した画像特徴量Fiの座標や、ロボット手先位置Pd,Psを用いて、搬送中の対象物11を把持する。この把持作業では、図7に示すステップST11からステップST18までの処理が実行される。
【0036】
ステップST11において、CCDカメラ1は、図8に示すように、対象物11の搬送領域、すなわちコンベア10上を撮像し、ステップST12に移行する。
【0037】
ステップST12において、センサコントローラ2は、対象物11を検出したかを判定する。対象物11を検出し、その画像から特徴量を抽出するためには、対象物11全体がCCDカメラ1の視野の範囲内に入ることが必要である。ここでは、対象物11の検出のために画像の輝度が用いられる。例えば、対象物11がコンベア10の上流にあってCCDカメラ1の視野範囲内にないときは、CCDカメラ1で得られる画像の輝度はほとんど変化しない。一方、対象物11がコンベアにより搬送されCCDカメラ1の視野範囲内に入ると、その輝度は変化する。そこで、センサコントローラ2は、画像中の適当な位置に図示しないウィンドウを設け、そのウィンドウ内の輝度が所定の閾値以上の場合は対象物11が視野範囲内にあると判定し、輝度が所定の閾値未満の場合はその視野の範囲内にないと判定する。そして、センサコントローラ2が対象物11を検出したときはステップST13に移行し、検出しなかったときはステップST11に戻る。
【0038】
ステップST13において、センサコントローラ2は、CCDカメラ1が撮像した画像から時刻Tにおける画像特徴量fi(t)(i=1,2・・・)を抽出して、ステップST14に移行する。ここで、図9は、把持作業の実行時において撮像した画像を示す図である。把持作業時には、時刻tに撮像された画像から画像特徴量fi(t)を抽出する必要がある。しかし、何らかの原因で本来抽出すべきでない例えば画像特徴量f3(t)が抽出されることがある。そこで、特徴量f1(t)〜f7(t)が、図6に示すF1〜F6のいずれに対応しているのかを求める対応点探索を行う必要がある。
【0039】
この対応点探索は、さまざまな方法が提案され、例えば”ロボットビジョン”(谷内田正彦著、昭晃堂、1990)に記載されている動的計画法や最大派閥法など、いわゆる照合法により行うことができる。なお、一旦、f1〜f7の中からF1〜F6に対応するものが得られれば、次の画像特徴量は容易に求めることができる。
【0040】
具体的には、ステップST13からステップST16までの繰り返し処理のサイクルタイムをΔtとすると、時刻tの次の時刻(t+Δt)における画像特徴量fi(t+Δt)は先の画像中での画像特徴量fi(t)の近傍から抽出すればよい。これにより、特徴量抽出の安定性が増し、かつ、計算処理の負担を軽減することができる。
【0041】
ステップST14において、センサコントローラ2は、時刻tにおける誤差ベクトルE(t)が十分小さいか、具体的には||E(t)||<εの判定基準を満たすかを判定し、十分小さいときはステップST17に移行し、十分小さくないときはステップST15に移行する。
【0042】
ここでは、現在のCCDカメラ1の画像から抽出された画像特徴量fi(t)と上述したステップST6で記憶された画像特徴量Fiとに基づいて、誤差ベクトルE(t)を求める。
【0043】
本発明では、文献B.Espiauら、A New Approach to Visual Servoing in Robotics,IEEE Trans.Robotics and Automation,8(3),313-326,1992や、文献F.Bensalhaら、Real Time Visual Tracking using the Generalized Likelihood Ratio Test,Int.Conf.Automation,Robotics and Computer Vision,1379-1383,1994に記載されている手法に基づいて、誤差ベクトルE(t)と、後述する速度指令値ベクトルV(t)とを算出する。
【0044】
教示時の画像特徴量Fi=(Xi,Yi)および時刻tで撮像した画像から得られた画像特徴量fi(t)=(Xi(t),Yi(t))を用いて、特徴量偏差ベクトルe(t)を以下の式(1)で求める。
【0045】
【数1】
【0046】
(xi,yi)および(xi(t),yi(t))は、画素値で表される(Xi,Yi)および(Xi(t),Yi(t))を、それぞれカメラ座標系での値に変換したものである。また、Nは画像特徴量の個数を表す。
【0047】
上記特徴量偏差ベクトルe(t)を用いて誤差ベクトルE(t)は、式(2)で表される。
【0048】
【数2】
【0049】
ここで、LT+は、画像特徴量F,F(t)から求められる画像ヤコビアンLTの疑似逆行列である。
【0050】
また、センサコントローラ2は、||E(t)||<εの判定基準を満たしたときに、運動する対象物11に追従したと判定する。εは、オペレータによって予め与えられるスカラー量である。あるいは、
E=(E1 E2 E3 E4 E5 E6 )T
と表せば、式(3)に示す判定基準を用いてもよい。
【0051】
【数3】
【0052】
ステップST15において、ロボットコントローラ5は、速度指令値ベクトルV(t)を算出し、ステップST16に移行する。なお、速度指令値ベクトルVは、ロボット手先位置Pの並進速度(tx,ty,tz)および回転速度(ωx,ωy,ωz)を含んだものであり、
V=(tx ty tz ωx ωy ωz)T
と表される。そして、時刻(t+Δt)における速度指令値ベクトルV(t+Δt)は、式(4)から求められる。
【0053】
【数4】
【0054】
なお、λは速度ゲインである。式(4)の右辺の最右項は、対象物11の運動速度の推定値であり、式(5)から求められる。
【0055】
【数5】
【0056】
ロボットコントローラ5は、以上のようにして、誤差ベクトルE(t)及び速度指令値ベクトルV(t)を算出する。
【0057】
ステップST16において、ロボットコントローラ5は、算出された速度指令値ベクトルV(t)に基づいて、軌道生成、関節角速度・角加速度を生成し、これらに従ってロボットアーム4を制御し、ステップST13に戻る。
【0058】
ステップST14でE(t)が十分に小さいと判定したときのステップST17において、ロボットコントローラ5は、グリッパ3が対象物11に追従したと判定して、対象物11に対してアプローチを開始する。なお、以下の説明では、図7に示すフローチャートの処理を行うことによってグリッパ3を対象物に追従させることをビジュアルサーボという。
【0059】
ここで、ステップST14に移行した時刻を時刻t1とすると、例えば図10に示すように、速度指令値ベクトルはVactual(t1)、ロボット手先位置の位置ベクトルはP(t1)となる。
【0060】
時刻t1においては、ロボット手先位置Pは対象物11に追従しているため、そのときの速度指令値ベクトルVactual(t1)は対象物11の速度ベクトルに等しい。したがって、ロボットコントローラ5は、手先位置P(t1)からPO分だけ移動するための速度パターンに、上述した速度指令値ベクトルVactual(t1)を重畳させた速度パターンを生成する。なお、POは、教示作業で示した位置姿勢変換行列である。また、PO分だけ移動するための速度パターンは、例えば台形速度パターンなど従来の手法により算出することができる。
【0061】
また、ロボットコントローラ5は、PO分相対移動するのに時間TOを要するとして、以下の式に従ってPaを算出する。
【0062】
Pa=P(t1)+PO+Vactual(t1)・TO
そして、ロボットコントローラ5は、算出したPaに基づいてロボットアーム4を制御する。これにより、図11に示すように、手先位置P(t1)から対象物11を把持すべき位置Paにロボット手先(グリッパ3)を移動させることができる。このようなアプローチが終了すると、ステップST18に移行する。
【0063】
ステップST18において、ロボットコントローラ5は、対象物11をグリッパ3で把持して、処理を終了する。
【0064】
以上のように、ロボット装置は、教示作業時におけるロボット手先位置Ps,Pdを記憶し、ビジュアルサーボによって搬送中の対象物11に追従し、そしてロボット手先位置Ps,Pdを用いて対象物11の把持作業を行うことができる。これにより、ロボット装置は、搬送中の対象物11の姿勢位置に拘束されることなく、また、コンベア10を止めることなく、搬送中の対象物11を容易に把持することができる。
【0065】
また、上記ロボット装置は、その設置位置、CCDカメラ1、グリッパ3及び対象物11相互間の位置関係を予め求めておく作業が不要なので、例えばCCDカメラ1の設置条件が変化した場合であっても、上述したような単純な教示作業のみで、搬送中の対象物11を把持することができる。さらに、同じ作業を異なるロボット装置、CCDカメラ1、グリッパ3で実現しようとした場合や、把持すべき対象物11が異なる場合であっても、同様に、単純な教示作業のみでよい。
【0066】
これにより、オペレータは、従来の教示作業、プログラミングにおける負荷を大幅に軽減することができる。さらに、CCDカメラ1、グリッパ3及び対象物11に変更が生じても、柔軟に対応することができる。
【0067】
なお、上述した実施の形態では、ロボット装置は、コンベア10によって搬送されている対象物11を把持することを例に挙げて説明したが、静止している対象物11を把持する場合も同様にすることができる。なお、教示作業は、上述した説明と同様である。
【0068】
把持作業では、図7に示すステップST14において、誤差ベクトルE(t)が十分に小さくなったときは、速度指令値ベクトルV(t)はゼロになり、同様に、実際のロボット手先位置の速度Vactual(t1)もゼロになる。
【0069】
したがって、ステップST17において、ロボットコントローラ5は、現在のロボット手先位置P(t1)と、教示時における位置の変化分POのみを用いて対象物11を把持することができる。すなわち、把持すべき位置Paは、以下の式により求められる。
【0070】
Pa=P(t1)+PO
そして、ロボットコントローラ5は、算出したPaに基づいてロボットアーム4を制御し、グリッパ3により静止している対象物11の把持を行うことができる。
【0071】
(第2の実施の形態)
つぎに、本発明の第2の実施の形態について説明する。なお、第1の実施の形態と同じ部位には同じ符号を付し、また、重複する説明についてはその記載を省略する。
【0072】
第1の実施の形態では、搬送中の対象物とロボット手先位置Pとの相対的な位置関係が、教示作業時のそれらの相対的な位置関係とほぼ同じになる完全追従状態について説明した。これに対して、第2の実施の形態では、完全追従状態でない場合にロボット装置が対象物を把持することについて説明する。
【0073】
ここで、追従状態とは、相対位置関係を一定に保った状態と定義する。例えば、対象物が速度V0で運動している場合では、ロボット手先位置Pが速度V0で運動している状態である。次に、追従状態として、「完全追従状態」と「不完全追従状態」の2つを定義する。
【0074】
「完全追従状態」とは、ロボット手先位置Pと対象物との相対的な位置関係が一定値POのままで一定時間継続している状態、すなわち教示作業時のそれらの相対的な位置関係と同じになっている状態をいう。「不完全追従状態」とは、ロボット手先位置Pと対象物との相対的な位置関係が一定値P’0(≠PO)のままで一定時間継続している状態、すなわちロボット手先位置Pと対象物との間で相対的な位置の変化はないが、教示作業時の相対的な位置関係と異なる状態をいう。これらの2つの状態について、画像誤差、ロボット手先位置P、ロボット手先位置Pの速度、ロボット手先位置Pの加速度の状態を表1に示す。
【0075】
【表1】
【0076】
「完全追従状態」では、ロボット手先位置Pと対象物の相対的な位置関係はPOであり、しかも、ロボット手先位置Pは対象物と同じ速度で移動する。このため接近動作は、追従運動Vを維持しつつ、接近移動POの移動を行うことで、把持作業を行うことができる。
【0077】
一方、「不完全追従状態」でも、ロボット手先位置Pは対象物と同じ速度で移動している。ただし、ロボット手先位置Pと対象物との相対的な位置関係P’0は、教示作業時の位置関係POとは異なる。例えば図12(A)に示すように、追従開始時の対象物11の初期画像は、目標画像に一致していない。なお、このときは、早く追従状態になるようにするため、ロボット手先位置Psの速度は、図13に示すように、大きくなっている。図12(B)に示すように、追従状態の対象物11の画像は、目標画像に対して所定のずれを維持した状態になっている。このときのロボット手先位置Psの速度は、図13に示すように、Vactual(t1)になっている。
【0078】
そこで、相対位置関係P’0を教示することができれば、図12(C)に示すように、「完全追従状態」と全く同一の効果を得ることができる。なお、「不完全追従状態」における位置関係P’0は、対象物の運動速度の変化やビジュアルサーボのゲインの変更等で変化する可能があり、その度に再教示が必要である。本実施の形態では、「不完全追従状態」にも対応することができるように、再教示作業が行われる。
【0079】
(再教示作業及び把持作業)
再教示作業では、最初に、ビジュアルサーボを用いて、対象物の追従が行われる。そして、ロボットコントローラ5は、このとき対象物の画像特徴量F’iを抽出して、各画像特徴量F’iの座標を記憶する。なお、画像特徴量F’iの抽出処理は、図3に示すステップST6の処理と同様である。
【0080】
つぎに、図3に示すステップST1からステップST3までの処理が行われ、グリッパ3は任意の位置(ロボット手先位置Ps)に移動させられる。ロボットコントローラ5は、さらに、画像特徴量Fi’を用いてビジュアルサーボを行い、追従状態に到達したグリッパ3の位置をロボット手先位置P’sとする。そして、ロボットコントローラ5は、追従状態における位置姿勢変換行列P’O(=P’S -1Pd)を算出し、この位置姿勢変換行列P’Oを記憶する。
【0081】
把持作業では、第1の実施の形態と同様に、図7に示すステップST11からステップST18までの処理を行う。このとき、第1の実施の形態で求めた画像特徴量Fi及び位置姿勢変換POに代えて、画像特徴量F’i及び位置姿勢変換業列P’Oを用いればよい。
【0082】
以上のように、第2の実施の形態に係るロボット装置によれば、ロボット手先位置Pが対象物11に完全に追従していなくても、複雑な調整をすることなく上述した簡単な教示作業を行うだけで、対象物11を把持することができるようになる。
【0083】
(第3の実施の形態)
第1及び第2の実施の形態では、一例として静止運動、等速直線運動の場合を示したが、本発明を用いれば等加速度直線運動あるいは等速円運動まで拡大することができる。そして、この把持作業でも、第1の実施の形態と同様に、図7に示すステップST11からステップST17までの処理が行われる。
【0084】
具体的には、等加速度直線運動の場合、ロボットコントローラ5は、誤差ベクトルE(t)が十分に小さくなった時刻t1において、ロボット手先位置Pは対象物11に対して相対的にPOあるいはP’Oの位置に制御されたと判定し、この時刻t1でのVactual(t1)と、手先加速度accactual(t1)から生成される速度成分Vestimate(t)と、POあるいはP’Oより生成される速度指令値とを重ね合わせた速度指令値を生成し、時刻t1でのロボット手先位置P(t1)から対象物11に接近し、グリッパ3により対象物11の把持を行う。
【0085】
すなわち、ロボットコントローラ5は、図14に示すように、追従状態になったときのロボット手先位置PsからPO分だけグリッパ3を移動するように制御する。なお、ロボットコントローラ5は、このときPO分相対移動するのに時間T’Oを要するとして、以下の式に従ってPaを算出する。
【0086】
【数6】
【0087】
なお、上述した実施の形態では、対象物を把持する場合を例に挙げて説明したが、本発明はこれに限定されるものではない。例えば、対象物11に部品の取り付け等を行う場合であっても同様にして適用することができる。
【0088】
【発明の効果】
本発明に係るロボット装置及びその制御方法によれば、オペレータは、教示作業として、次の2つのことを行うだけでよい。第1に、把持機構を第1の手先位置に移動させ、ここで対象物を把持させる。第2に、把持機構から対象物をリリースさせ、撮像範囲内において把持機構を第2の手先位置まで移動させる。このとき記憶される第1及び第2の手先位置や、第2の手先位置における対象物の特徴量の座標は、対象物を追従してこれを把持するために用いられる。すなわち、オペレータは簡単な教示作業を行うだけで、ロボット装置に運動中の対象物を把持させることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るロボット装置の構成を示す図である。
【図2】ロボット装置によって把持される対象物の外観斜視図である。
【図3】ロボット装置の教示作業における処理内容を示すフローチャートである。
【図4】教示作業において、対象物を把持した状態のロボット手先位置Pdを示す概略的な構成を示す図である。
【図5】教示作業において、対象物をリリースしたときのロボット手先位置Psを示す概略的な構成を示す図である。
【図6】教示作業におけるカメラの撮像画像を示す図である。
【図7】ロボット装置の把持作業における処理内容を示すフローチャートである。
【図8】把持作業において、カメラが対象物を搬送するコンベア上を撮像していることを説明するための図である。
【図9】把持作業におけるカメラの撮像画像を示す図である。
【図10】時刻t1におけるロボット手先位置P(t1)及び速度指令値ベクトルVactual(t1)を説明するための図である。
【図11】対象物を把持するときの状態を説明する図である。
【図12】第2の実施の形態に係るロボット装置において初期状態、追従状態、再教示時の対象物の画像を示す図である。
【図13】ロボット手先位置Pの速度指令値ベクトルV(t)を説明する図である。
【図14】本発明の第3の実施の形態に係るロボット装置が搬送中の対象物を把持した状態を説明する図である。
【符号の説明】
1 カメラ
2 センサコントローラ
3 グリッパ
4 ロボットアーム
5 ロボットコントローラ
Claims (4)
- 相対的に運動する対象物を把持するロボット装置において、
前記対象物を把持する把持機構を有し、前記把持機構が移動可能に構成された把持手段と、
前記把持手段の把持機構と共に移動可能に固定され、対象物を撮像する撮像手段と、
前記撮像手段が撮像した対象物の画像から1以上の特徴量の座標を抽出する特徴量抽出手段と、
前記把持機構に前記対象物を把持させたときの把持機構の位置を第1の手先位置として記憶し、前記対象物を開放させて前記撮像手段が対象物を撮像することができる範囲内において前記把持機構を移動させたときの前記把持機構の位置を第2の手先位置として記憶し、前記第2の手先位置において前記撮像手段が撮像して前記特徴量抽出手段が抽出した前記対象物の各特徴量の座標を記憶する記憶手段と、
前記第2の手先位置から前記1の手先位置まで移動するための移動行列を算出する算出手段と、
前記特徴量抽出手段によって抽出される運動中の対象物の各特徴量の座標が、前記記憶手段に記憶されている各特徴量の座標に一致するように前記把持手段を移動させることで、前記運動中の対象物に前記把持機構を追従させる制御をする追従制御手段と、
前記把持機構が運動中の対象物に追従している際に、前記算出手段が算出した移動行列に基づいて前記把持機構を前記運動中の対象物に近付け、前記対象物を把持させるように前記把持手段を制御する把持制御手段と、
を備えたロボット装置。 - 前記記憶手段は、
前記追従制御手段によって前記把持機構が前記運動中の対象物に対して所定距離を隔てながら追従している際に、前記特徴量抽出手段が抽出した前記対象物の各特徴量の座標を新たに記憶し、
前記追従制御手段が新たに記憶された各特徴量の座標を用いて、前記第2の手先位置から前記把持機構を対象物に完全に追従させたときの前記把持機構の位置を新たな第2の手先位置として記憶する請求項1記載のロボット装置。 - 移動可能に構成された把持機構で相対的に運動する対象物を把持するロボット装置の制御方法において、
前記把持機構に前記対象物を把持させたときの把持機構の位置を第1の手先位置として記憶し、
前記対象物を開放させて、対象物を撮像することができる範囲内において前記把持機構を移動させたときの前記把持機構の位置を第2の手先位置として記憶し、
前記第2の手先位置において前記対象物を撮像し、
前記撮像した対象物の画像から1以上の特徴量の座標を抽出し、
前記抽出した各特徴量の座標を記憶し、
前記第2の手先位置から前記1の手先位置まで移動するための移動行列を算出し、
前記把持機構と共に移動可能に固定された状態で、運動中の対象物を撮像し、
前記撮像した運動中の対象物の画像から1以上の特徴量の座標を抽出し、
前記抽出された運動中の対象物の各特徴量の座標が、前記記憶されている各特徴量の座標に一致するように前記把持機構を移動させることで、前記運動中の対象物に前記把持機構を追従させ、
前記把持機構が運動中の対象物に追従している際に、前記算出した移動行列に基づいて前記把持機構を前記運動中の対象物に近付け、前記把持機構に前記対象物を把持させるロボット装置の制御方法。 - 前記運動中の対象物に前記把持機構を追従させ、
前記把持機構が前記運動中の対象物に対して所定距離を隔てながら追従している際に、前記把持機構と共に移動可能に固定された状態で、運動中の対象物を撮像し、
前記撮像した運動中の対象物の画像から1以上の特徴量の座標を抽出し、
前記抽出した前記対象物の各特徴量の座標を新たに記憶し、
前記新たに記憶された各特徴量の座標を用いて、前記第2の手先位置から対象物に前記把持機構が完全に追従するように前記把持機構を移動させ、
完全に追従した際に、前記把持機構の位置を新たな第2の手先位置として記憶する請求項3記載のロボット装置の制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000208915A JP4265088B2 (ja) | 2000-07-10 | 2000-07-10 | ロボット装置及びその制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000208915A JP4265088B2 (ja) | 2000-07-10 | 2000-07-10 | ロボット装置及びその制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002018754A JP2002018754A (ja) | 2002-01-22 |
JP4265088B2 true JP4265088B2 (ja) | 2009-05-20 |
Family
ID=18705412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000208915A Expired - Fee Related JP4265088B2 (ja) | 2000-07-10 | 2000-07-10 | ロボット装置及びその制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4265088B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104354167A (zh) * | 2014-08-29 | 2015-02-18 | 广东正业科技股份有限公司 | 一种机器人手眼标定方法及装置 |
DE102015001527A1 (de) | 2014-02-13 | 2015-08-13 | Fanuc Corporation | Robotersystem, das visuelle Rückmeldung verwendet |
US9108321B2 (en) | 2011-05-12 | 2015-08-18 | Ihi Corporation | Motion prediction control device and method |
DE102017118276A1 (de) | 2016-08-17 | 2018-02-22 | Fanuc Corporation | Robotersteuerungsvorrichtung |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6261095A (ja) * | 1985-09-11 | 1987-03-17 | カシオ計算機株式会社 | 波形エディット装置 |
JP2005515910A (ja) | 2002-01-31 | 2005-06-02 | ブレインテック カナダ インコーポレイテッド | シングルカメラ3dビジョンガイドロボティクスの方法および装置 |
JP4257570B2 (ja) * | 2002-07-17 | 2009-04-22 | 株式会社安川電機 | 搬送用ロボットのティーチング装置および搬送用ロボットのティーチング方法 |
DE10242710A1 (de) * | 2002-09-13 | 2004-04-08 | Daimlerchrysler Ag | Verfahren zum Herstellen eines Verbindungsbereiches auf einem Werkstück |
GB2415944A (en) * | 2004-07-03 | 2006-01-11 | Koorosh Khodabandehloo | Apparatus fro moving products using camera and flat gripper |
WO2008036354A1 (en) | 2006-09-19 | 2008-03-27 | Braintech Canada, Inc. | System and method of determining object pose |
US8559699B2 (en) | 2008-10-10 | 2013-10-15 | Roboticvisiontech Llc | Methods and apparatus to facilitate operations in image based systems |
JP2010131711A (ja) * | 2008-12-05 | 2010-06-17 | Honda Motor Co Ltd | ロボットアームの制御方法 |
JP5509859B2 (ja) * | 2010-01-13 | 2014-06-04 | 株式会社Ihi | ロボット制御装置及び方法 |
JP2013158851A (ja) * | 2012-02-01 | 2013-08-19 | Seiko Epson Corp | ヤコビ行列情報生成装置、ヤコビ行列情報生成方法、ヤコビ行列情報生成プログラム、ロボット制御装置、ロボット制御方法、ロボット制御プログラムおよびロボットシステム |
JP2014140942A (ja) * | 2013-01-25 | 2014-08-07 | Seiko Epson Corp | ロボット制御システム、ロボット、ロボット制御方法及びプログラム |
JP6326765B2 (ja) * | 2013-11-06 | 2018-05-23 | セイコーエプソン株式会社 | 教示装置、ロボット、ロボットシステム、方法、及びプログラム |
JP2015100868A (ja) * | 2013-11-22 | 2015-06-04 | セイコーエプソン株式会社 | ロボットシステム |
WO2015129473A1 (ja) | 2014-02-28 | 2015-09-03 | ソニー株式会社 | ロボットアーム装置、キャリブレーション方法及びプログラム |
US10691097B2 (en) * | 2014-05-09 | 2020-06-23 | The Boeing Company | Path repeatable machining for full sized determinant assembly |
JP6042860B2 (ja) * | 2014-12-02 | 2016-12-14 | ファナック株式会社 | ロボットを用いて物品を移送する物品移送装置及び物品移送方法 |
CN106938463A (zh) * | 2017-05-02 | 2017-07-11 | 上海贝特威自动化科技有限公司 | 一种大型板料定位抓取的方法 |
JP7145851B2 (ja) | 2017-06-13 | 2022-10-03 | 川崎重工業株式会社 | 作業システム |
JP6506356B2 (ja) * | 2017-07-26 | 2019-04-24 | ファナック株式会社 | 物品搬送システム及び搬送システム制御装置 |
CN107363837A (zh) * | 2017-09-08 | 2017-11-21 | 桂林加宏汽车修理有限公司 | 一种机械手控制系统及控制机械手捕获物体的方法 |
JP6748126B2 (ja) | 2018-02-08 | 2020-08-26 | ファナック株式会社 | 作業ロボットシステム |
US11833681B2 (en) | 2018-08-24 | 2023-12-05 | Nvidia Corporation | Robotic control system |
DE102019122790B4 (de) * | 2018-08-24 | 2021-03-25 | Nvidia Corp. | Robotersteuerungssystem |
CN111300490A (zh) * | 2018-12-12 | 2020-06-19 | 成都蒸汽巨人机器人科技有限公司 | 一种基于深度视觉传感器的机器人轨迹生成系统及方法 |
JP7368156B2 (ja) | 2019-09-26 | 2023-10-24 | ファナック株式会社 | ロボット制御システム |
CN110801239B (zh) * | 2019-11-20 | 2022-06-17 | 上海交通大学 | 一种上肢多关节等速训练测试装置 |
CN113716323A (zh) * | 2021-08-17 | 2021-11-30 | 成都新气象科技实业股份有限公司 | 一种容器智能搬运方法 |
-
2000
- 2000-07-10 JP JP2000208915A patent/JP4265088B2/ja not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9108321B2 (en) | 2011-05-12 | 2015-08-18 | Ihi Corporation | Motion prediction control device and method |
DE102015001527A1 (de) | 2014-02-13 | 2015-08-13 | Fanuc Corporation | Robotersystem, das visuelle Rückmeldung verwendet |
US9517563B2 (en) | 2014-02-13 | 2016-12-13 | Fanuc Corporation | Robot system using visual feedback |
DE102015001527B4 (de) | 2014-02-13 | 2019-02-28 | Fanuc Corporation | Robotersystem, das visuelle Rückmeldung verwendet |
CN104354167A (zh) * | 2014-08-29 | 2015-02-18 | 广东正业科技股份有限公司 | 一种机器人手眼标定方法及装置 |
CN104354167B (zh) * | 2014-08-29 | 2016-04-06 | 广东正业科技股份有限公司 | 一种机器人手眼标定方法及装置 |
DE102017118276A1 (de) | 2016-08-17 | 2018-02-22 | Fanuc Corporation | Robotersteuerungsvorrichtung |
US10507583B2 (en) | 2016-08-17 | 2019-12-17 | Fanuc Corporation | Robot control device |
DE102017118276B4 (de) * | 2016-08-17 | 2020-10-08 | Fanuc Corporation | Robotersteuerungsvorrichtung |
Also Published As
Publication number | Publication date |
---|---|
JP2002018754A (ja) | 2002-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4265088B2 (ja) | ロボット装置及びその制御方法 | |
CN110238849B (zh) | 机器人手眼标定方法及装置 | |
JP6484213B2 (ja) | 複数のロボットを含むロボットシステム、ロボット制御装置、及びロボット制御方法 | |
CN101402199B (zh) | 基于视觉的手眼式低伺服精度机器人抓取移动目标的方法 | |
CN111905983B (zh) | 基于视觉跟随的点胶轨迹修正方法、装置、系统及介质 | |
CN112894823B (zh) | 一种基于视觉伺服的机器人高精度装配方法 | |
JP7306937B2 (ja) | ロボットに支持された部材の位置を調整するロボット装置の制御装置 | |
CN110666805A (zh) | 一种基于主动视觉的工业机器人分拣方法 | |
CN114670189B (zh) | 存储介质、以及生成机器人的控制程序的方法及系统 | |
JP2678002B2 (ja) | 視覚付きロボットの座標系較正方法 | |
Luo et al. | Robotic conveyor tracking with dynamic object fetching for industrial automation | |
JP2016203282A (ja) | エンドエフェクタの姿勢変更機構を備えたロボット | |
Shaw et al. | Automatic classification of moving objects on an unknown speed production line with an eye-in-hand robot manipulator | |
JP5223683B2 (ja) | ワーク保持位置姿勢計測システムおよびワーク搬送システム | |
US20230381969A1 (en) | Calibration Method And Robot System | |
Tao et al. | An RBF-PD Control Method for Robot Grasping of Moving Object | |
CN115556102B (zh) | 一种基于视觉识别的机器人分拣规划方法及规划设备 | |
CN116100562B (zh) | 多机器人协同上下料的视觉引导方法及系统 | |
WO2023013739A1 (ja) | ロボット制御装置、ロボット制御システム、及びロボット制御方法 | |
US11759957B2 (en) | System and method for member articulation | |
CN117103276A (zh) | 一种机器人精确抓取方法及其系统 | |
WO2023013698A1 (ja) | ロボット制御装置、ロボット制御システム、及びロボット制御方法 | |
Sun et al. | Motion-reproduction system adaptable to position fluctuation of picking objects based on image information | |
Tian et al. | Non-cooperative Target Localization and Grasp Based on Visual Closed Loop | |
JP2023059837A (ja) | 人間のデモンストレーションによるロボットプログラム作成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070601 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090116 |
|
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: 20090127 |
|
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: 20090209 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120227 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130227 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130227 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |