JP2023153555A - 撮像装置の位置推定方法 - Google Patents
撮像装置の位置推定方法 Download PDFInfo
- Publication number
- JP2023153555A JP2023153555A JP2022062899A JP2022062899A JP2023153555A JP 2023153555 A JP2023153555 A JP 2023153555A JP 2022062899 A JP2022062899 A JP 2022062899A JP 2022062899 A JP2022062899 A JP 2022062899A JP 2023153555 A JP2023153555 A JP 2023153555A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- imaging device
- plane
- camera
- image
- 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
- 238000003384 imaging method Methods 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims abstract description 18
- 239000011159 matrix material Substances 0.000 description 19
- 239000012636 effector Substances 0.000 description 10
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】ロボットのTCPに対する撮像装置の位置を確実に推定することができる撮像装置の位置推定方法を提供する。【解決手段】本発明にかかる撮像装置の位置推定方法は、カメラ110によってキャリブレーションプレート114を撮像して第1画像を取得し、第1画像からキャリブレーションプレート基準の座標軸を生成し、座標軸で規定されるxy平面、yz平面、xz平面の3つの座標平面内でロボットアーム106の関節を微小な角度でそれぞれ回動させ、カメラによってキャリブレーションプレートを再び撮像して第2画像を取得し、第1画像および第2画像からロボットアームの回動前後でのキャリブレーションプレートに対するカメラの移動分を求め、カメラの移動分と回動した角度とに基づいて、3つの座標平面内でのTCPからカメラまでの距離をそれぞれ算出し、3つの座標平面で取得した距離を三次元座標に変換し、TCPに対するカメラの位置を推定する。【選択図】図1
Description
本発明は、ロボットのTCPに対する撮像装置の位置を推定する撮像装置の位置推定方法に関する。
一例として工場等の生産現場では、ロボットアームを有するロボットが用いられている。ロボットアームは、その各関節に設けられたアクチュエータである電動モータを有する。電動モータは、駆動信号によって駆動され、ロボットアームの目標とする動作を実現する。また、ロボットアームの先端には、例えば把持対象物であるワークを把持するフィンガなどのエンドエフェクタが装着されている。
また、ロボットに、カメラなどの撮像装置が取り付けられる場合が有る。ロボットは、撮像装置によってエンドエフェクタおよびワークを撮像して画像を取得し、この画像に基づいて各種動作を制御することで、エンドエフェクタに精密な動作を実行させることができる。
このため、ロボットでは、フランジ(ロボット先端)の座標中心とされるツールセンターポイント(TCP)に対する撮像装置の位置を把握した上で、各種動作を制御する必要がある。以下では、ロボットのTCP(ロボット先端座標中心)に対する撮像装置の位置を推定することを、キャリブレーション(校正)という。
特許文献1には、複数のアームを含む可動部を有するロボットと、ロボットを動作制御する制御部を有する制御装置とを備えたロボットシステムが記載されている。またアームに、撮像部が設けられている。
このロボットシステムにおいて、制御部は、まず、可動部を駆動して撮像部の姿勢を変更せずに撮像部を少なくとも2つの箇所に(三次元方向に)移動させる。つぎに制御部は、少なくとも2つの箇所の撮像部の座標系での座標と、少なくとも2つの箇所のロボット座標系での座標とに基づいて、撮像部の座標系とロボット座標系との変換係数を算出する。
そして制御部は、撮像部が設けられたアームに対する撮像部のオフセットを算出することにより、可動部に対する撮像部の取付位置を求める。このように特許文献1のロボットシステムは、カメラ座標系とロボット座標系との変換係数を算出した上で、ロボット先端に対する撮像装置の取付位置を推定している。
特許文献2は、ロボットモーション用のビジョンシステムの自動ハンドアイ校正について記載している。自動ハンドアイ校正では、ロボットを回動させる前後で校正プレート(キャリブレーションプレート)の位置を計測し、このキャリブレーションプレートの位置に基づいて、ロボットに取り付けられた撮像装置の位置を推定している。
特許文献1、2の技術では、ロボットのアームの回動前後で撮像装置の位置の三次元情報を取得し、ロボットのアームの回動を示す3行3列の回転行列の逆行列を解くことで、ロボット先端座標中心のTCPに対する撮像装置の位置を推定しているため、計算が複雑化していた。また撮像装置の移動方向によっては、例えばX軸周りにのみ回動したり、Y軸周りにのみ回動したり、Z軸周りにのみ回動したりした場合には、逆行列を計算できず、撮像装置の位置を推定することができない。
本発明は、このような課題に鑑み、ロボット先端座標中心のTCPに対する撮像装置の位置を確実に推定することができる撮像装置の位置推定方法を提供することを目的としている。
上記課題を解決するために、本発明にかかる撮像装置の位置推定方法の代表的な構成は、ロボットに取り付けられた撮像装置のロボットのTCPに対する位置を推定する撮像装置の位置推定方法であって、撮像装置によってキャリブレーションプレートを撮像して第1画像を取得し、第1画像からキャリブレーションプレート基準の座標軸を生成し、座標軸で規定されるxy平面、yz平面、xz平面の3つの座標平面内でロボットの関節を微小な角度でそれぞれ回動させ、ロボットの関節を回動させた後、撮像装置によってキャリブレーションプレートを再び撮像して第2画像を取得し、第1画像および第2画像からロボットの関節の回動前後でのキャリブレーションプレートに対する撮像装置の移動分を求め、撮像装置の移動分と回動した角度とに基づいて、3つの座標平面内でのTCPから撮像装置までの距離をそれぞれ算出し、3つの座標平面において取得した距離を三次元座標に変換し、TCPに対する撮像装置の位置を推定することを特徴とする。
上記構成では、キャリブレーションプレートを撮像して取得した第1画像からキャリブレーションプレート基準の座標軸を生成し、この座標軸で規定されるxy平面、yz平面、xz平面の3つの座標平面内でロボットの関節を微小な角度でそれぞれ回動させている。このため、3つの座標平面内での回動は、2行2列の回転行列でそれぞれ示すことができ、さらに回動した角度が微小であるため、三角関数を近似した回転行列を用いることができる。
また、ロボットの関節の回動前後でのキャリブレーションプレートに対する撮像装置の移動分は、ロボットの関節を回動させる前に取得した第1画像と、ロボットの関節を回動させた後に取得した第2画像とから求められる。このため、撮像装置の移動分と、回転行列とに基づいて、3つの座標平面内でのTCPから撮像装置までの距離を算出することができる。すなわち、三次元座標における距離を、xy平面、yz平面、zx平面の3つの座標平面に分解して算出を行う。ここで、回転行列は、近似した2行2列の回転行列であるから、逆行列を確実に解くことができるため、3つの座標平面において上記の距離を確実に取得することができる。
さらに、3つの座標平面内での上記の距離の例えば平均を取ることにより、この距離を、三次元座標に変換することができる。このようにして、ロボットのTCPに対する撮像装置の位置を確実に推定することができる。
本発明によれば、ロボットのTCPに対する撮像装置の位置を確実に推定することができる撮像装置の位置推定方法を提供することができる。
以下に添付図面を参照しながら、本発明の好適な実施形態について詳細に説明する。かかる実施形態に示す寸法、材料、その他具体的な数値などは、発明の理解を容易とするための例示に過ぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
図1は、本発明の実施形態における撮像装置の位置推定方法が適用されるロボットシステム100を説明する図である。ロボットシステム100は、例えば工場などの生産現場で用いられるシステムであって、ロボット102と、ロボット制御装置104とを備える。ロボット102は、ロボットアーム106を有する。ロボットアーム106の先端には、エンドエフェクタ108が装着されている。エンドエフェクタ108は、例えば把持対象物である所定のワークを把持するフィンガなどである。
ロボットアーム106は、ロボット制御装置104により動作制御され、その各関節に設けられたアクチュエータである電動モータを駆動することにより、エンドエフェクタ108を所定の位置に移動させることができる。エンドエフェクタ108は、ロボットアーム106によってワークに接近するように移動し、ワークを把持することができる。また、図中に示すツールセンターポイント(TCP)は、フランジ(ロボット先端)中心とされる。
ロボット102には、撮像装置であるカメラ110が取り付けられている。ロボット102は、カメラ110によってエンドエフェクタ108およびワークを撮像して画像を取得し、この画像に基づいて各種動作を制御することで、エンドエフェクタ108に精密な動作を実行させることができる。このため、ロボットシステム100では、ロボット102のTCPに対するカメラ110の位置(取付位置)を把握した上で、各種動作を制御する必要がある。
そこでロボットシステム100は、位置推定装置112をさらに備え、ロボットアーム106を回動させ、その回動前後で、カメラ110によってキャリブレーションプレート114を撮像する構成を採用した。以下、具体的に説明する。
図2は、図1の位置推定装置112およびロボット制御装置104の機能を示すブロック図である。図3は、図1の位置推定装置112が適用されたロボットシステム100の動作を示すフローチャートである。図4は、図3のフローチャートに示す処理を説明する図である。
ロボットシステム100では、まず、位置推定装置112のカメラ制御部116がカメラ110の内部パラメータの初期値を設定する(ステップS100)。なお内部パラメータとは、例えば画素数、セルサイズ、焦点距離のスペック値などである。
つぎに、カメラ制御部116は、カメラ110によってキャリブレーションプレート114を初期位置で撮像する(ステップS102)。ステップS102において、カメラ制御部116は、ロボット制御装置104のアーム移動部118にロボットアーム106を制御する動作指令を出力して、ロボットアーム106を移動させる。これにより、ロボット制御装置104で定義された図4(a)に示すフランジ座標軸(ロボット先端座標軸A)を補正し、キャリブレーションプレート114基準の座標軸と平行な座標軸Bを生成して、ロボット102を初期位置とする。また、図4(a)の座標軸Bを含む画像は、ステップS102で取得された初期位置での第1画像120である。
このようにしてステップS102では、第1画像120からキャリブレーションプレート114基準の固定された座標軸Bを生成し、この座標軸Bによってxy平面、yz平面、xz平面の3つの座標平面(図4(b)参照)が規定される。
続いて、カメラ制御部116は、アーム移動部118によって、キャリブレーションプレート114基準の座標平面内でロボットアーム106を回動させた後、カメラ110によってキャリブレーションプレート114を撮像する(ステップS104)。
具体的には、キャリブレーションプレート114と平行な軸周りにロボットアーム106の関節を微小な回転角(角度)で回動させることにより、ロボット102のTCPを回動させて(円弧軌跡で移動させて)、キャリブレーションプレート114を撮像する。ここで、ステップS104で取得される画像は、第1画像120の初期位置から、微小な回転角で回動した後の回動位置(微小回動位置)での第2画像となる。
つぎに、位置推定装置112は、キャリブレーションプレート114基準の座標平面内でのTCPからカメラ110までの距離を算出する(ステップS106)。具体的には、位置推定装置112の座標値算出部122は、第1画像120および第2画像からロボットアーム106の関節の回動前後でのキャリブレーションプレート114に対するカメラ110の移動分(移動距離)を求める。さらに座標変換部124は、以下の式(1)、式(2)、式(3)のいずれかを用いて、カメラ110の移動分とロボットアーム106の関節が回動した角度とに基づいて、座標平面内でのTCPからカメラ110までの距離を算出する
ここで、式(1)のa1、b1は、ロボットアーム106の関節の回動前後での、xy平面内のキャリブレーションプレート114に対するカメラ110の移動分であって、第1画像120と第2画像を比較することで得られる値である。dx1、dy1は、未知数であって、xy平面内のTCPからカメラ110までの距離である。θ1は、xy平面内の例えば1°~5°程度の微小な回転角である。
式(1)に示すように、xy平面内での回動は、2行2列の回転行列で示すことができ、さらに回転角が微小であるため、cosθ1を「1」、sinθ1を「θ1」に近似した回転行列を用いることができる。そして、この近似した2行2列の回転行列の逆行列は、確実に解くことができる。これにより、xy平面内のTCPからカメラ110までの距離dx1、dy1を確実に取得することができる。
続いて位置推定装置112では、座標値算出部122および座標変換部124によって、キャリブレーションプレート114基準の3つ座標平面であるxy平面、yz平面、zx平面でのTCPからカメラ110までの距離が算出されていない場合(ステップS108、No)、再びステップS104に戻り、ステップS106を繰り返して、xy平面だけでなく、上記の式(2)、式(3)を用いて、yz平面、zx平面でのTCPからカメラ110までの距離を算出する。
また、式(2)のb2、c1は、ロボットアーム106の関節の回動前後での、yz平面内のキャリブレーションプレート114に対するカメラ110の移動分であって、第1画像120と第2画像を比較することで得られる値である。dy2、dz1は、未知数であって、yz平面内のTCPからカメラ110までの距離である。θ2は、yz平面内の例えば1°~5°程度の微小な回転角である。
式(2)に示すように、yz平面内での回動は、2行2列の回転行列で示すことができ、さらに回転角が微小であるため、cosθ2を「1」、sinθ2を「θ2」に近似した回転行列を用いることができる。そして、この近似した2行2列の回転行列の逆行列は、確実に解くことができる。これにより、yz平面内のTCPからカメラ110までの距離dy2、dz1を確実に取得することができる。
さらに、式(3)のc2、a2は、ロボットアーム106の関節の回動前後での、zx平面内のキャリブレーションプレート114に対するカメラ110の移動分であって、第1画像120と第2画像を比較することで得られる値である。dz2、dx2は、未知数であって、zx平面内のTCPからカメラ110までの距離である。θ3は、zx平面内の例えば1°~5°程度の微小な回転角である。
式(3)に示すように、zx平面内での回動は、2行2列の回転行列で示すことができ、さらに回転角が微小であるため、cosθ3を「1」、sinθ3を「θ3」に近似した回転行列を用いることができる。そして、この近似した2行2列の回転行列の逆行列は、確実に解くことができる。これにより、zx平面内のTCPからカメラ110までの距離dz2、dx2を確実に取得することができる。
すなわち座標値算出部122および座標変換部124は、三次元座標における距離を、xy平面、yz平面、zx平面の3つの座標平面に分解して算出することができる。このため、仮にカメラ110が例えばX軸周りにのみ回動したり、Y軸周りにのみ回動したり、Z軸周りにのみ回動したりした場合であっても、回転行列の逆行列を計算できるため、xy平面、yz平面、zx平面でのTCPからカメラ110までの距離を確実に取得することができる。
続いて、座標値算出部122および座標変換部124によって、キャリブレーションプレート114基準の3つ座標平面であるxy平面、yz平面、zx平面でのTCPからカメラ110までの距離が算出されると(ステップS108、Yes)、ステップS110の処理を行う。
ステップS110では、位置推定装置112のプレート位置算出部128が、3つ座標平面であるxy平面、yz平面、zx平面で取得したTCPからカメラ110までの距離(dx1,dy1)、(dy2,dz1)、(dz2,dx2)を、三次元座標に変換することにより、TCPに対するカメラ110の位置を推定する。
具体的には、プレート位置算出部128は、図4(b)に示すxy平面、yz平面、zx平面での二次元情報である(dx1,dy1)、(dy2,dz1)、(dz2,dx2)の例えば平均を取って、TCPに対するカメラ110の三次元座標での位置(x,y,z)を、((dx1+dx2)/2,(dy1+dy2)/2,(dz1+dz2)/2)として推定することができる。
つぎに、位置推定装置112は、キャリブレーション部130がステップS110で推定されたTCPに対するカメラ110の三次元座標での位置に基づいて、キャリブレーション位置を計算し(ステップS112)、処理を終了する。
このように位置推定装置112が適用されたロボットシステム100によれば、三次元空間内での回動を、xy平面、yz平面、zx平面の3つの座標平面内での回動に分解することにより、近似した2行2列の回転行列を用いて、3つの座標平面内でのTCPからカメラ110までの距離をそれぞれ算出することができる。そして、3つ座標平面で取得したTCPからカメラ110までの距離の平均を取ることにより、この距離を、三次元座標に変換して、TCPに対するカメラ110の位置を確実に推定することができる。
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
本発明は、ロボットのTCPに対する撮像装置の位置を推定する撮像装置の位置推定方法として利用することができる。
100…ロボットシステム、102…ロボット、104…ロボット制御装置、106…ロボットアーム、108…エンドエフェクタ、110…カメラ、112…位置推定装置、114…キャリブレーションプレート、116…カメラ制御部、118…アーム移動部、120…第1画像、122…座標値算出部、124…座標変換部、126…推定値算出部、128…プレート位置算出部、130…キャリブレーション部
Claims (1)
- ロボットに取り付けられた撮像装置の前記ロボットのTCPに対する位置を推定する撮像装置の位置推定方法であって、
前記撮像装置によってキャリブレーションプレートを撮像して第1画像を取得し、
前記第1画像から前記キャリブレーションプレート基準の座標軸を生成し、該座標軸で規定されるxy平面、yz平面、xz平面の3つの座標平面内で前記ロボットの関節を微小な角度でそれぞれ回動させ、
前記ロボットの関節を回動させた後、前記撮像装置によって前記キャリブレーションプレートを再び撮像して第2画像を取得し、
前記第1画像および前記第2画像から前記ロボットの前記関節の回動前後での前記キャリブレーションプレートに対する前記撮像装置の移動分を求め、該撮像装置の移動分と回動した前記角度とに基づいて、前記3つの座標平面内での前記TCPから前記撮像装置までの距離をそれぞれ算出し、
前記3つの座標平面において取得した前記距離を三次元座標に変換し、前記TCPに対する前記撮像装置の位置を推定することを特徴とする撮像装置の位置推定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022062899A JP2023153555A (ja) | 2022-04-05 | 2022-04-05 | 撮像装置の位置推定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022062899A JP2023153555A (ja) | 2022-04-05 | 2022-04-05 | 撮像装置の位置推定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023153555A true JP2023153555A (ja) | 2023-10-18 |
Family
ID=88349730
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022062899A Pending JP2023153555A (ja) | 2022-04-05 | 2022-04-05 | 撮像装置の位置推定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2023153555A (ja) |
-
2022
- 2022-04-05 JP JP2022062899A patent/JP2023153555A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6966582B2 (ja) | ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法 | |
CN110355754B (zh) | 机器人手眼系统、控制方法、设备及存储介质 | |
CN107225569B (zh) | 定位装置 | |
JP6429473B2 (ja) | ロボットシステム、ロボットシステムの校正方法、プログラム、およびコンピュータ読み取り可能な記録媒体 | |
US9884425B2 (en) | Robot, robot control device, and robotic system | |
CN108994876B (zh) | 示教位置修正装置和示教位置修正方法 | |
US20140288710A1 (en) | Robot system and calibration method | |
JP7035657B2 (ja) | ロボットの制御装置、ロボット、ロボットシステム、並びに、カメラの校正方法 | |
JP2019014030A (ja) | ロボットの制御装置、ロボット、ロボットシステム、並びに、カメラの校正方法 | |
JP2015042437A (ja) | ロボットシステム及びロボットシステムの校正方法 | |
JP2011011321A (ja) | ロボットシステム及びロボットシステムのキャリブレーション方法 | |
JP5450242B2 (ja) | マニピュレータのキャリブレーション方法及びロボット制御システム | |
CN111801198A (zh) | 一种手眼标定方法、系统及计算机存储介质 | |
CN113319848B (zh) | 机器人的控制方法以及机器人系统 | |
EP4101604A1 (en) | System and method for improving accuracy of 3d eye-to-hand coordination of a robotic system | |
US20220395981A1 (en) | System and method for improving accuracy of 3d eye-to-hand coordination of a robotic system | |
KR20070122271A (ko) | 로봇 자세 제어 시스템 및 로봇 자세 제어 방법 | |
US20230123629A1 (en) | 3d computer-vision system with variable spatial resolution | |
CN115135466A (zh) | 毛刺去除装置和控制系统 | |
JP2023153555A (ja) | 撮像装置の位置推定方法 | |
US11759955B2 (en) | Calibration method | |
JPH06187021A (ja) | 視覚付きロボットの座標補正方法 | |
JP2016203282A (ja) | エンドエフェクタの姿勢変更機構を備えたロボット | |
JP6578671B2 (ja) | ロボット、ロボットの制御方法、及びロボットの制御装置 | |
JPH0727408B2 (ja) | 固定3次元視覚併用ロボットハンドリング装置 |