JP2016117124A - Assembly device, robot hand position correcting method, and robot hand position correction program - Google Patents
Assembly device, robot hand position correcting method, and robot hand position correction program Download PDFInfo
- Publication number
- JP2016117124A JP2016117124A JP2014258002A JP2014258002A JP2016117124A JP 2016117124 A JP2016117124 A JP 2016117124A JP 2014258002 A JP2014258002 A JP 2014258002A JP 2014258002 A JP2014258002 A JP 2014258002A JP 2016117124 A JP2016117124 A JP 2016117124A
- Authority
- JP
- Japan
- Prior art keywords
- robot hand
- projector
- image sensor
- 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.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本件は、組立装置、ロボットハンド位置修正方法、およびロボットハンド位置修正プログラムに関する。 The present invention relates to an assembling apparatus, a robot hand position correcting method, and a robot hand position correcting program.
労働人口の減少や国内生産回帰に対応するため、ロボットによる組立需要が増加している。組立作業には位置決め精度が要求されている。そこで、レーザビームなどを用いてロボットハンド先端の位置を検出し、ロボットハンドの位置を補正する技術などが開示されている(例えば、特許文献1参照)。 In order to respond to the declining labor force and the return to domestic production, assembly demand for robots is increasing. Positioning accuracy is required for assembly work. Therefore, a technique for detecting the position of the tip of the robot hand using a laser beam or the like and correcting the position of the robot hand has been disclosed (for example, see Patent Document 1).
しかしながら、上記技術では、ロボットハンドの広い移動空間において位置補正を行うことは困難である。 However, with the above technique, it is difficult to perform position correction in a wide movement space of the robot hand.
本件は上記課題に鑑みなされたものであり、ロボットハンドの移動空間において位置補正を行うことができる組立装置、ロボットハンド位置修正方法、およびロボットハンド位置修正プログラムを提供することを目的とする。 The present invention has been made in view of the above problems, and an object thereof is to provide an assembling apparatus, a robot hand position correcting method, and a robot hand position correcting program that can perform position correction in the movement space of the robot hand.
1つの態様では、組立装置は、ロボットハンドのハンド部に設けられた第1撮像素子と、前記第1撮像素子に基準パターンを投影するプロジェクタと、前記第1撮像素子から得られた画像情報内の前記基準パターンの情報を基に、前記ロボットハンドの位置修正を行う修正部と、を備える。 In one aspect, the assembling apparatus includes a first image sensor provided in a hand portion of a robot hand, a projector that projects a reference pattern on the first image sensor, and an image information obtained from the first image sensor. A correction unit that corrects the position of the robot hand based on the reference pattern information.
ロボットハンドの移動空間において位置補正を行うことができる。 Position correction can be performed in the movement space of the robot hand.
実施例の説明に先立って、ロボットハンドの絶対位置精度について説明する。絶対位置精度とは、ロボットハンドの位置を指定する指令値に対するロボットハンドの実際の位置の精度のことである。 Prior to the description of the embodiment, the absolute position accuracy of the robot hand will be described. The absolute position accuracy is the accuracy of the actual position of the robot hand with respect to a command value that specifies the position of the robot hand.
図1は、指令値と実測値との関係を表す図である。図1で例示するように、10mm間隔でロボットハンドを移動させる指令値が入力されるものとする。ロボットハンドが指令値に応じて移動すると、誤差が生じることがある。特に、2以上の関節を有する多関節(多軸)ロボットの場合には、図1で例示するように、実測値において1〜3mm程度の誤差が生じることがある。このような場合、0.1mm程度の精度が要求される基板のコネクタ挿入等に、多関節ロボットを適用するのは困難である。 FIG. 1 is a diagram illustrating a relationship between a command value and an actual measurement value. As illustrated in FIG. 1, a command value for moving the robot hand at intervals of 10 mm is input. If the robot hand moves according to the command value, an error may occur. In particular, in the case of a multi-joint (multi-axis) robot having two or more joints, an error of about 1 to 3 mm may occur in an actual measurement value as illustrated in FIG. In such a case, it is difficult to apply an articulated robot to the insertion of a connector on a board that requires an accuracy of about 0.1 mm.
基板に部品を挿入する場合、以下の処理が行われることが多い。まず、基板上の画像処理マークから基板の設置位置(設置時のズレ量)が求められる。次に、あらかじめ登録された部品の挿入位置座標と基板設置位置とのズレ量からロボットハンドの目標位置が算出され、挿入動作が行われる。 When a component is inserted into a board, the following processing is often performed. First, the installation position of the substrate (amount of deviation at the time of installation) is obtained from the image processing mark on the substrate. Next, the target position of the robot hand is calculated from the amount of deviation between the component insertion position coordinates registered in advance and the board installation position, and the insertion operation is performed.
例えば、基板の左上からx=100mm、y=100mmの位置にコネクタを挿入する場合について説明する。図2(a)で例示するように、コネクタには複数の端子が備わっているため、±0.1mm以内の精度が必要とされる場合が多い。この場合、1〜3mmの誤差が生じると、コネクタを挿入できなくなるおそれがある。例えば、図2(b)で例示するように、x軸方向およびy軸方向で1〜2mmの位置ズレが生じると、コネクタを基板に挿入できなくなる。 For example, a case where a connector is inserted at a position of x = 100 mm and y = 100 mm from the upper left of the board will be described. As illustrated in FIG. 2A, since the connector includes a plurality of terminals, accuracy within ± 0.1 mm is often required. In this case, if an error of 1 to 3 mm occurs, the connector may not be inserted. For example, as illustrated in FIG. 2B, when a positional shift of 1 to 2 mm occurs in the x-axis direction and the y-axis direction, the connector cannot be inserted into the board.
この問題を解決するため、図3(a)で例示するように、変位センサ101を用いて、ロボットハンドのハンド部102の位置を検出し、補正する場合が考えられる。しかしながら、この場合、変位センサ101の測定範囲外ではハンド部102の先端位置を検出できなくなるという問題が生じる。すなわち、ロボットハンドの広い移動空間全域において位置を補正することが困難である。
In order to solve this problem, as illustrated in FIG. 3A, the position of the
次に、図3(b)で例示するように、画像処理用のカメラ103をハンド部102に搭載し、画像処理によりハンド部102の位置を補正する場合が考えられる。しかしながら、この場合、カメラ103でハンド部102の位置を確認してから作業位置までハンド部102を移動させるため、移動時に誤差が生じるおそれがある。
Next, as illustrated in FIG. 3B, a case where the
次に、図3(a)で例示するように、外部に設置したカメラ104から得られた画像に対する処理によってハンド部102の位置を算出する場合が考えられる。しかしながら、ハンド部102の可動領域と重ならないように、測定対象から離れた位置にカメラ104が設置される。この場合、カメラ104の測定分解能の低下をまねく。
Next, as illustrated in FIG. 3A, a case where the position of the
以上のように、ロボットハンドの位置を修正することは困難である。そこで、以下の実施例では、ロボットハンドの移動空間において位置補正を行うことができる組立装置、ロボットハンド位置修正方法、およびロボットハンド位置修正プログラムについて説明する。 As described above, it is difficult to correct the position of the robot hand. Therefore, in the following embodiments, an assembly apparatus, a robot hand position correction method, and a robot hand position correction program that can perform position correction in the movement space of the robot hand will be described.
図4は、実施例1に係る組立装置100の概略図である。図4で例示するように、組立装置100は、作業台10、ロボットハンド20、ロボットコントローラ30、プロジェクタ40、カメラ50a,50b、コントローラ60などを備える。
FIG. 4 is a schematic diagram of the assembling
作業台10には、組立作業対象の基板11、基板11への実装部品を収納または供給するトレイ12、基準位置または振動抑制のための基準を提供するリファレンス撮像素子13などが配置されている。リファレンス撮像素子13は、例えばCCD(Charge Coupled Device)カメラである。
On the work table 10, a
ロボットハンド20は、1以上の関節を有するロボットであり、例えば垂直多関節(多軸)ロボットである。例えば、ロボットハンド20は、トレイ12から実装部品を取り出し、基板11への取り付けなどの組立作業を行う。ロボットハンド20のハンド部21先端近傍には、撮像素子22が配置されている。撮像素子22は、例えばCCDカメラであり、センサ面が後述するプロジェクタ40の照射面(フォーカスの面)と平行になるようにプロジェクタ40と対向して配置されている。ロボットコントローラ30は、ロボットハンド20の動作を制御する。ロボットコントローラ30は、例えば、自身に格納されたプログラムの指示に従って、実装部品の把持、挿入などの動作をロボットハンド20に指示する。この指示の中に、ロボットハンド20の位置を指定する指令値が含まれる。
The
プロジェクタ40は、組立装置100の天井部に配置されている。プロジェクタ40は、下方の作業台10を向いており、基板11、リファレンス撮像素子13、および撮像素子22に対する照射によって投影を行う。カメラ50a,50bは、作業台10上における基板11の設置位置を認識するためのカメラである。コントローラ60は、組立装置100の各部の動作を制御する。また、コントローラ60は、組立装置100の各部の検出結果に応じて処理を行う。
The
図5は、基板11および実装部品14を例示する図である。図5で例示するように、基板11は、例えばサーバ用のプリント基板であり、DIMMメモリ用のソケット15を備えている。以下、一例として、組立装置100が実装部品14をソケット15に挿入する作業について説明する。なお、図5の画像処理マークA,Bについては後述する。
FIG. 5 is a diagram illustrating the
図6は、組立装置100の座標系について例示する図である。一例として、ロボットハンド20の基板11上の作業面における稼動範囲は、500mm×500mmであるとする。図6で例示するように、組立装置100には、プロジェクタ40のプロジェクタ座標系Pprj、ロボットハンド20のロボット座標系Prbt、およびハンド部21のハンド座標系Phndが存在する。本システムで利用する座標系はすべてプロジェクタ座標へ変換される。以降その方法について記載する。組立装置100においては、例えば射影行列を用いて、ロボット座標系Prbtおよびハンド座標系Phndをプロジェクタ座標系Pprjに変換する。これらの射影行列は、ロボットハンド20による作業前に取得しておくことが好ましい。射影行列の具体的な算出手法については後述する。なお、各作業の前にロボットハンド20がハンド部21を移動させる際には、撮像素子22の位置はロボット座標系Prbtで表される。各作業においては、撮像素子22の位置はハンド座標系Phndで表される。
FIG. 6 is a diagram illustrating the coordinate system of the assembling
また、作業台10には、基板11が設置されることになる。基板11の設置の際に目標位置から基板11の実際の位置がずれることがある。そこで、組立装置100は、カメラ50aのカメラ座標系Pcam1およびカメラ50bのカメラ座標系Pcam2を用いて、基板11上の座標系をプロジェクタ座標系Pprjに変換する射影行列を算出する。この射影行列は、作業台10上に基板11が設置されてからロボットハンド20が作業を行うまでの間に取得される。射影行列の具体的な算出手法については後述する。
In addition, the
まず、ロボット座標系Prbtをプロジェクタ座標系Pprjに変換する射影行列の算出手法について説明する。図7(a)は、プロジェクタ40と撮像素子22との配置関係を表す図である。ロボットコントローラ30は、作業開始時において、プロジェクタ40の照射範囲内で撮像素子22のセンサ面がプロジェクタ40の焦点深度における照射面(フォーカスの面)と一致してプロジェクタ40と対向するようにハンド部21を制御する。なお、焦点深度の設定手法については、後述する。
First, a projection matrix calculation method for converting the robot coordinate system Prbt to the projector coordinate system Pprj will be described. FIG. 7A is a diagram illustrating an arrangement relationship between the
図7(b)は、プロジェクタ座標系Pprjを例示する図である。一例として、プロジェクタ40の解像度が640ピクセル×480ピクセルであるとする。また、照射面における照射範囲が800mm×600mmであるとする。この場合、照射面において、X軸は800mm/640ピクセル=1.25mm/ピクセルであり、Y軸は640mm/480ピクセル=1.25m/ピクセルである。
FIG. 7B is a diagram illustrating a projector coordinate system Pprj. As an example, it is assumed that the resolution of the
図7(c)は、プロジェクタ40がパターンを照射しない場合における撮像素子22の撮像画像を例示する図である。図7(c)で例示するように、撮像画像には、格子状のピクセル境界が現れる。プロジェクタ40は、例えば、X軸に平行な線とY軸に平行な線とを含む交差パターン(基準パターン)を照射し、当該パターンの交点を照射面において指定する。
FIG. 7C is a diagram illustrating a captured image of the
図7(d)は、上記交点が撮像素子22のセンサ面に位置する場合の撮像画像を例示する図である。図7(d)で例示するように、各線が太線として認識される。ロボットハンド20の位置がロボットハンド20への指令値と一致していれば、上記交点は撮像素子22の撮像画像において指令値に対応する点に位置することになる。ロボットハンド20の位置が指令値からずれていれば、撮像画像において上記交点が指定値に対応する点からずれることになる。このずれ量を補正することによって、高い精度でロボットハンド20の位置補正を行うことができる。
FIG. 7D is a diagram illustrating a captured image when the intersection point is located on the sensor surface of the
図8(a)〜図8(c)は、撮像画像における上記交点の検出について説明するための図である。図8(a)は、撮像素子22の撮像結果を例示する図である。太線は、Y軸方向に延びる線を表している。例えば、プロジェクション処理などにより、図8(b)および図8(c)で例示するX軸方向およびY軸方向の輝度のヒストグラムから当該線を検出することができる。X軸方向およびY軸方向の線を検出することによって、交点を検出することができる。
FIG. 8A to FIG. 8C are diagrams for explaining the detection of the intersection point in the captured image. FIG. 8A is a diagram illustrating an imaging result of the
図9(a)〜図9(d)は、プロジェクタ40の焦点深度変化への対応について説明する図である。図9(a)は、プロジェクタ40のピクセル境界を表している。格子状の細線同士の間隔が、1ピクセルの寸法(ピッチ寸法)に相当する。撮像素子22が被照射面よりも作業台10側にシフトすると、図9(b)で例示するように、ピッチ寸法が広がることになる。以上のことから、図9(c)で例示するように、プロジェクタ40の焦点深度に応じてピッチ寸法が変化することになる。なお、図9(d)は、撮像素子22の撮像結果を例示する。
FIGS. 9A to 9D are diagrams for explaining the response of the
たとえば、撮像素子の仕様が、サイズ:1/2、有効画素数:768×494、ピクセルサイズ:8.4μm×9.8μmであるとする。この場合において、画像処理により得られたピッチ寸法が119ピクセル×102ピクセルであれば、(8.9×119,9.8×102)=(999.6μm,999.6μm)となる。このような対応関係を用いることによって、焦点深度が変化しても、撮像素子22の撮像画像における位置とロボットハンド20の実際の位置とを対応させることができる。
For example, it is assumed that the specifications of the image sensor are size: 1/2, number of effective pixels: 768 × 494, and pixel size: 8.4 μm × 9.8 μm. In this case, if the pitch size obtained by image processing is 119 pixels × 102 pixels, (8.9 × 119, 9.8 × 102) = (999.6 μm, 999.6 μm). By using such a correspondence relationship, the position in the captured image of the
図10(a)は、ロボット座標系Prbtをプロジェクタ座標系Pprjに変換するための射影行列の算出手順について説明するための図である。図10(a)で例示するように、ロボットコントローラ30は、ハンド部21を作業台10上のロボット座標系Prbtにおけるx(Xr軸)=0mm、y(Yr軸)=500mmの位置に移動させる。この際に、撮像素子22のセンサ面がプロジェクタ40の焦点深度における照射面と一致してプロジェクタ40と対向するようにハンド部21を調整し、プロジェクタ40の投影画像が撮像素子22に照射されるように設定しておく。
FIG. 10A is a diagram for describing a procedure for calculating a projection matrix for converting the robot coordinate system Prbt to the projector coordinate system Pprj. As illustrated in FIG. 10A, the
次に、コントローラ60は、この場合のハンド部21のプロジェクタ座標系Pprj(Xp軸、Yp軸)における位置を、撮像素子22を用いて算出し、位置P1として登録する。次に、ロボットコントローラ30は、ハンド部21をロボット座標系Prbtにおけるx(Xr軸)=0mm、y(Yr軸)=0mmの位置に移動させる。コントローラ60は、この場合のハンド部21のプロジェクタ座標系Pprj(Xp軸、Yp軸)における位置を、撮像素子22を用いて算出し、位置P2として登録する。次に、ロボットコントローラ30は、ハンド部21をロボット座標系Prbtにおけるx(Xr軸)=500mm、y(Yr軸)=0mmの位置に移動させる。コントローラ60は、この場合のハンド部21のプロジェクタ座標系Pprj(Xp軸、Yp軸)における位置を、撮像素子22を用いて算出し、位置P3として登録する。コントローラ60は、位置P1〜P3を用いて、ロボット座標系Prbtをプロジェクタ座標系Pprjに変換するための射影行列(回転角度=θ)を算出する。
Next, the
次に、ハンド座標系Phndをプロジェクタ座標系Pprjに変換するための射影行列について説明する。図10(b)は、射影行列の算出に用いるマスタワーク70を例示する図である。図10(b)で例示するように、マスタワーク70の既定位置には、撮像素子71が搭載されている。例えば、撮像素子71は、マスタワーク70の中心に搭載されている。撮像素子71の位置は、事前の位置測定により保証されている。
Next, a projection matrix for converting the hand coordinate system Phnd to the projector coordinate system Pprj will be described. FIG. 10B is a diagram illustrating a
ロボットコントローラ30は、ハンド部21にマスタワーク70を把持させ、プロジェクタ40の照射面の任意の位置に移動させる。コントローラ60は、プロジェクタ40に、ハンド部21の撮像素子22とマスタワーク70の撮像素子71とに交差パターンを投影させ、撮像素子22およびマスタワーク70の中心位置を算出する。次に、ロボットコントローラ30は、ハンド部21を90度回転させ、撮像素子71の撮像画像から回転中心を求め、回転中心補正を行う。それにより、コントローラ60は、ハンド座標系Phndをプロジェクタ座標系Pprjに変換するための射影行列を算出する。
The
図11(a)は、リファレンス撮像素子13の機能について説明するための図である。図11(a)で例示するように、リファレンス撮像素子13は、プロジェクタ40の照射範囲に配置されている。したがって、プロジェクタ40の照射範囲に撮像素子22およびリファレンス撮像素子13が配置されることになる。プロジェクタ40と撮像素子22とは離れているため、プロジェクタ40の振動が強調され、撮像画像における振動が大きくなる。この振動は、リファレンス撮像素子13の撮像画像においても現れる。したがって、図11(b)で例示するリファレンス撮像素子13の撮像画像におけるピクセル境界の格子の振動から、プロジェクタ40の振動情報を得ることができる。この振動成分を図11(c)で例示する撮像素子22の撮像画像から除去(キャンセル)することによって、プロジェクタ40の振動の影響を抑制することができる。
FIG. 11A is a diagram for explaining the function of the
続いて、組立装置100が実行する処理の一例について説明する。図12は、組立装置100が実行する処理の一例を表すフローチャートである。図12で例示するように、まず、作業者により、基板11とトレイ12とが作業台10上にセットされ、開始ボタンなどが押下される(ステップS1)。次に、ロボットコントローラ30は、カメラ50a,50bの撮像画像を用いて、基板11の設置位置を算出し、プロジェクタ座標系Pprjに変換する(ステップS2)。
Next, an example of processing executed by the
図13(a)および図13(b)は、ステップS2の詳細を例示する図である。図13(a)で例示するように、ロボットコントローラ30は、ロボットハンド20をプロジェクタ40の照射範囲から退避させる。次に、ロボットコントローラ30は、プロジェクタ40に、基板11上におけるカメラ50a,50bの撮像範囲に画像処理マークを照射させる。
FIG. 13A and FIG. 13B are diagrams illustrating the details of step S2. As illustrated in FIG. 13A, the
図13(b)は、プロジェクタ40によって照射された画像処理マークA,Bである。画像処理マークA,Bは、例えば幅を有する十字形であり、例えば基板11の互いに対角をなす角近傍に照射される。カメラ50aは、画像処理マークAを撮像する。カメラ50bは、画像処理マークBを撮像する。ロボットコントローラ30は、プロジェクタ座標系Pprjにおける画像処理マークAの座標と、カメラ座標系Pcam1における画像処理マークAの座標とを対比する。また、ロボットコントローラ30は、プロジェクタ座標系Pprjにおける画像処理マークBの座標と、カメラ座標系Pcam2における画像処理マークBの座標とを対比する。それにより、ロボットコントローラ30は、カメラ50a,50bのカメラ座標系Pcam1,Pcam2をプロジェクタ40のプロジェクタ座標系Pprjに変換するための射影行列を算出する。
FIG. 13B shows the image processing marks A and B irradiated by the
次に、ロボットコントローラ30は、カメラ50aが撮像する基板11の画像と、カメラ50bが撮像する基板11の画像とから、基板11の設置位置を算出し、上記射影行列を用いてプロジェクタ座標系Pprjに変換する。これにより、基板11上の位置をプロジェクタ座標系Pprjに変換することができる。なお、基板11の設置位置の基準座標(原点)として、リファレンス撮像素子13のセンサ中心を用いることができる。
Next, the
再度図12を参照して、ステップS2の実行後、ロボットコントローラ30は、ロボットハンド20に、トレイ12から実装部品14を把持させる(ステップS3)。次に、ロボットコントローラ30は、データベースなどに格納されている実装部品14の実装位置データ(指令値)と、ステップS2で算出した基板11の設置位置とを用いて、実装部品14の挿入位置の上空に実装部品が移動するように、ロボットハンド20を制御する(ステップS4)。ステップS4では、ロボットハンド20の位置の修正前であるので、ロボットハンド20の位置に誤差が含まれる場合がある。ステップS4の実行後、ロボットハンド20の制御主体が、ロボットコントローラ30からコントローラ60に切り替わる(ステップS5)。
Referring to FIG. 12 again, after execution of step S2, the
次に、コントローラ60は、プロジェクタ40が投影する交差パターンを撮像素子22で撮像することによって、ロボットハンド20の現在位置を確認する(ステップS6)。図14(a)〜図14(d)は、ステップS6の詳細を例示する図である。以下、図14(a)〜図14(d)を参照しつつ、ステップS6の詳細について説明する。
Next, the
図14(a)〜図14(d)は、撮像素子22に交差パターンを投影する手順について説明する図である。まず、コントローラ60は、図14(a)〜図14(c)で例示するように、X軸方向に延びる線パターンをY軸方向に徐々に移動させる。例えば、コントローラ60は、当該線パターンのY軸座標を0ピクセルから480ピクセルへと移動させることを繰り返す。コントローラ60は、撮像素子22の撮像結果として当該線パターンを検出した場合、検出時点での当該線パターンのY軸座標(プロジェクタ座標系Pprj)を得る。コントローラ60は、Y軸方向に延びる線パターンについても同様の処理を行い、当該線パターンのX軸座標(プロジェクタ座標系Pprj)を得る。コントローラ60は、これら2本の線パターンの検出を独立して行ってもよいが、同時に行ってもよい。
FIG. 14A to FIG. 14D are diagrams illustrating a procedure for projecting a crossing pattern onto the
得られた2本の線パターンの交点がプロジェクタ座標系Pprjにおいて(X,Y)=(40ピクセル,450ピクセル)であったとする。この場合、上記交点は、照射面の照射範囲において、最近接の角から(50mm,37.5mm)の位置となる。ロボットハンド20の位置がロボットハンド20への指令値からずれていれば、撮像画像において上記交点が指定値に対応する位置からずれることになる。このずれ量を補正することによって、高い精度でロボットハンド20の位置を補正することができる。
Assume that the intersection of the two line patterns obtained is (X, Y) = (40 pixels, 450 pixels) in the projector coordinate system Pprj. In this case, the intersection point is a position (50 mm, 37.5 mm) from the nearest corner in the irradiation range of the irradiation surface. If the position of the
再度図12を参照して、ステップS6の実行後、コントローラ60は、補正テーブルを用いてプロジェクタ40のレンズの歪み補正処理を行う(ステップS7)。図15(a)〜図16(b)はステップS7の詳細を説明する図である。図15(a)〜図15(d)は、補正テーブルの作成手順を例示する図である。
Referring to FIG. 12 again, after executing step S6,
まず、図15(a)で例示するように、プロジェクタ40から3次元測定器80に格子パターンを照射する。3次元測定器80は、例えば±0.001μmの高い測定精度を有する。図15(b)は、3次元測定器80と照射パターンとの関係を例示する図である。図15(b)の格子パターンは、プロジェクタ40の焦点深度における照射面の空間上のパターンである。3次元測定器80には、撮像素子81が固定されている。図15(b)は、撮像素子81近傍の拡大図である。
First, as illustrated in FIG. 15A, the lattice pattern is irradiated from the
この撮像素子81を、プロジェクタ40の照射面において一定間隔(例えば5mm)で移動させる。撮像素子81の位置は、上記ステップS6と同様の手順により測定することができる。3次元測定器80の測定値(Preal)と撮像素子81の測定値(Plens)とを1組とすることで、図15(d)で例示するような補正テーブルを作成することができる。
The
図16(a)は、上記ステップS7の詳細を表すフローチャートの一例である。図16(a)で例示するように、コントローラ60は、ステップS6で算出した現在位置をPnowとする(ステップS21)。次に、コントローラ60は、図16(b)で例示するように、Pnowを包含する補正テーブル領域の左下座標から補正テーブルのPlensとPrealとを読み出し、補正量Poffset=Plens−Prealを求める(ステップS22)。次に、コントローラ60は、補正量Poffsetを用いてPnowの補正位置Pnow´を求める(ステップS23)。補正位置Pnow´は、Pnow−Poffsetである。
FIG. 16A is an example of a flowchart showing details of step S7. As illustrated in FIG. 16A, the
再度図12を参照して、ステップS6で確認された現在位置が目標位置(指令値に対応する位置)であるか否かを判定する(ステップS8)。以下、ステップS8の詳細について説明する。図17は、指令値に対応する目標位置CP1とロボットハンド20の実際の位置(交差パターンの交点)LP1との関係を例示する図である。目標位置CP1は、撮像素子22の撮像画像の中心(カメラ中心)であるとする。撮像素子22の仕様が、サイズ:1/2、有効画素数:768×494、ピクセルサイズ:8.4μm×9.8μmであるとする。この場合において、撮像素子22の座標において位置LP1が(400ピクセル,270ピクセル)であったとする。目標位置CP1の座標は(768/2ピクセル,494/2ピクセル)であるため、位置LP1から目標位置CP1に向かうベクトルAは、(16ピクセル,23ピクセル)=(16×8.4μm,23×9.8μm)=(134.4μm,225.4μm)となる。ステップS6においては、このベクトルAのスカラ量がしきい値未満となったか否かを判定すればよい。
Referring to FIG. 12 again, it is determined whether or not the current position confirmed in step S6 is the target position (position corresponding to the command value) (step S8). Details of step S8 will be described below. FIG. 17 is a diagram illustrating the relationship between the target position CP1 corresponding to the command value and the actual position (intersection point of the intersection pattern) LP1 of the
再度図12を参照して、ステップS8で「No」と判定された場合、コントローラ60は、目標位置と現在位置の差分(上記ベクトルA)だけ、ロボットハンド20を移動させる(ステップS9)。上記の例では、ロボットハンド20の修正先の位置は、(37.5mm+0.1344mm,50+0.2254m)=(37.6344mm,50.2254mm)となる。この位置までロボットハンド20を移動させることになる。その後、ステップS6から再度実行される。
Referring to FIG. 12 again, if it is determined “No” in step S8, the
ステップS8で「Yes」と判定された場合、ロボットハンド20の制御主体が、コントローラ60からロボットコントローラ30に切り替わる(ステップS10)。次に、ロボットコントローラ30は、ロボットハンド20を下降させ、ハンド部21に実装部品14を基板11のソケットに挿入させる(ステップS11)。次に、ロボットコントローラ30は、ハンド部21に実装部品14を解放させ、ロボットハンド20を上昇させる(ステップS12)。その後、図12のフローチャートは終了する。
If “Yes” is determined in step S8, the control subject of the
本実施例によれば、ハンド部21の撮像素子22にプロジェクタ40から基準パターンが投影される。プロジェクタ40の照射範囲は広いことから、ロボットハンド20の広い移動空間に前記基準パターンを投影することができる。また、撮像素子22から得られた画像情報内の前記基準パターンの位置情報とプロジェクタ40の座標系の位置情報とに基づいてロボットハンド20の位置が修正される。この場合、高い精度でロボットハンド20の位置を修正することができる。基準パターンは、交差線などの線パターンに限られず、種々の模様であってもよい。
According to the present embodiment, the reference pattern is projected from the
また、リファレンス撮像素子13の撮像画像から得られた振動を用いて撮像素子22の撮像画像における振動をキャンセルすることで、プロジェクタ40の振動の影響を抑制することができる。また、基板11にプロジェクタ40からパターンを投影し、カメラ50a,50bから得られた画像情報内における前記パターンの情報を得ることで、基板11の設置位置を取得することができる。なお、プロジェクタ40の基準パターンの焦点距離が広くない場合には、位置修正を行う際に、ハンド部21を基板11の近傍(所定距離内)に配置することが好ましい。
Moreover, the influence of the vibration of the
(他の例)
図18は、コントローラ60のハードウェア構成を説明するためのブロック図である。図18で例示するように、コントローラ60は、CPU201、RAM202、記憶装置203、インタフェース204などを備える。これらの各機器は、バスなどによって接続されている。CPU(Central Processing Unit)201は、中央演算処理装置である。CPU201は、1以上のコアを含む。RAM(Random Access Memory)202は、CPU201が実行するプログラム、CPU201が処理するデータなどを一時的に記憶する揮発性メモリである。記憶装置203は、不揮発性記憶装置である。記憶装置203として、例えば、ROM(Read Only Memory)、フラッシュメモリなどのソリッド・ステート・ドライブ(SSD)、ハードディスクドライブに駆動されるハードディスクなどを用いることができる。CPU201が記憶装置203に記憶されたロボットハンド位置修正プログラムを実行することによって、コントローラ60の機能が実現される。ロボットコントローラ30もコントローラ60と同様の構成を有していてもよい。または、コントローラ60およびロボットコントローラ30は、専用の回路などのハードウェアであってもよい。
(Other examples)
FIG. 18 is a block diagram for explaining the hardware configuration of the
上記各例において、撮像素子22がハンド部に設けられた第1撮像素子の一例として機能する。プロジェクタ40が、第1撮像素子に基準パターンを投影するプロジェクタの一例として機能する。コントローラ60が、第1撮像素子から得られた画像情報内の基準パターンの情報を基に、ロボットハンドの位置修正を行う修正部の一例として機能する。リファレンス撮像素子13が、プロジェクタの照射範囲に配置された第2撮像素子の一例として機能する。カメラ50a,50bが、ロボットハンドの作業対象を撮像する第3撮像素子の一例として機能する。
In each of the above examples, the
以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications and changes can be made within the scope of the gist of the present invention described in the claims. It can be changed.
10 作業台
11 基板
12 トレイ
13 リファレンス撮像素子
20 ロボットハンド
21 ハンド部
22 撮像素子
30 ロボットコントローラ
40 プロジェクタ
50a,50b カメラ
60 コントローラ
100 組立装置
DESCRIPTION OF
Claims (5)
前記第1撮像素子に基準パターンを投影するプロジェクタと、
前記第1撮像素子から得られた画像情報内の前記基準パターンの情報を基に、前記ロボットハンドの位置修正を行う修正部と、を備えることを特徴とする組立装置。 A first image sensor provided in a hand portion of the robot hand;
A projector that projects a reference pattern onto the first image sensor;
An assembling apparatus comprising: a correcting unit that corrects the position of the robot hand based on the information of the reference pattern in the image information obtained from the first image sensor.
前記修正部は、前記第2撮像素子から得られた画像を用いて、前記第1撮像素子から得られた画像における前記プロジェクタの振動の影響を抑制することを特徴とする請求項1記載の組立装置。 A second imaging device disposed in an irradiation range of the projector;
2. The assembly according to claim 1, wherein the correction unit suppresses an influence of vibration of the projector in an image obtained from the first image sensor using an image obtained from the second image sensor. apparatus.
前記プロジェクタは、前記作業対象における前記第3撮像素子の撮像範囲にパターンを投影し、
前記修正部は、前記第3撮像素子から得られた画像情報内の前記パターンの情報を基に、前記作業対象の設置位置を取得することを特徴とする請求項1または2記載の組立装置。 A third imaging device for imaging the work target of the robot hand;
The projector projects a pattern onto an imaging range of the third imaging element in the work target;
The assembly apparatus according to claim 1, wherein the correction unit acquires an installation position of the work target based on information on the pattern in image information obtained from the third image sensor.
前記撮像素子から得られた画像情報内の前記基準パターンの情報を基に、前記ロボットハンドの位置修正を行う、ことを特徴とするロボットハンド位置修正方法。 Project a reference pattern onto the image sensor provided in the hand part of the robot hand using a projector,
A robot hand position correcting method, wherein the position of the robot hand is corrected based on information of the reference pattern in image information obtained from the image sensor.
ロボットハンドのハンド部に設けられた撮像素子に、プロジェクタを用いて基準パターンを投影する処理と、
前記撮像素子から得られた画像情報内の前記基準パターンの情報を基に、前記ロボットハンドの位置修正を行う処理と、を実行させることを特徴とするロボットハンド位置修正プログラム。 On the computer,
A process of projecting a reference pattern using a projector onto an image sensor provided in the hand portion of the robot hand;
A robot hand position correction program that executes a process of correcting the position of the robot hand based on information of the reference pattern in the image information obtained from the image sensor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014258002A JP6582405B2 (en) | 2014-12-19 | 2014-12-19 | Assembly apparatus, robot hand position correcting method, and robot hand position correcting program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014258002A JP6582405B2 (en) | 2014-12-19 | 2014-12-19 | Assembly apparatus, robot hand position correcting method, and robot hand position correcting program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016117124A true JP2016117124A (en) | 2016-06-30 |
JP6582405B2 JP6582405B2 (en) | 2019-10-02 |
Family
ID=56243563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014258002A Expired - Fee Related JP6582405B2 (en) | 2014-12-19 | 2014-12-19 | Assembly apparatus, robot hand position correcting method, and robot hand position correcting program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6582405B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020050135A1 (en) * | 2018-09-06 | 2020-03-12 | 東芝デベロップメントエンジニアリング株式会社 | Image processing device, projector control system, and camera control system |
WO2022079839A1 (en) * | 2020-10-14 | 2022-04-21 | 株式会社Fuji | Work system |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102635614B1 (en) * | 2023-01-09 | 2024-02-13 | 주식회사 지에스에프솔루션 | A method and apparatus for controling a robot by using non-contact displacement sensor) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4788440A (en) * | 1981-05-11 | 1988-11-29 | Diffracto Ltd. | Electro-optical systems for control of robots, manipulator arms and coordinate measuring machines |
-
2014
- 2014-12-19 JP JP2014258002A patent/JP6582405B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4788440A (en) * | 1981-05-11 | 1988-11-29 | Diffracto Ltd. | Electro-optical systems for control of robots, manipulator arms and coordinate measuring machines |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020050135A1 (en) * | 2018-09-06 | 2020-03-12 | 東芝デベロップメントエンジニアリング株式会社 | Image processing device, projector control system, and camera control system |
WO2022079839A1 (en) * | 2020-10-14 | 2022-04-21 | 株式会社Fuji | Work system |
JP7481478B2 (en) | 2020-10-14 | 2024-05-10 | 株式会社Fuji | Working System |
Also Published As
Publication number | Publication date |
---|---|
JP6582405B2 (en) | 2019-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6527178B2 (en) | Vision sensor calibration device, method and program | |
JP7008942B2 (en) | Calibration method and calibration device | |
JP5850962B2 (en) | Robot system using visual feedback | |
TWI670153B (en) | Robot and robot system | |
JP6812095B2 (en) | Control methods, programs, recording media, robotic devices, and manufacturing methods for articles | |
EP2921267A2 (en) | Robot system, calibration method in robot system, and position correcting method in robot system | |
WO2021079802A1 (en) | Workpiece photograph image processing device, workpiece photograph image processing method, and machining system | |
TW201403277A (en) | Robot system, robot, robot control device, robot control method, and robot control program | |
US20150209963A1 (en) | Robot programming apparatus for creating robot program for capturing image of workpiece | |
JP6116456B2 (en) | Drawing method and drawing apparatus | |
JP6582405B2 (en) | Assembly apparatus, robot hand position correcting method, and robot hand position correcting program | |
JP2016187846A (en) | Robot, robot controller and robot system | |
CN110722558B (en) | Origin correction method and device for robot, controller and storage medium | |
JP6885856B2 (en) | Robot system and calibration method | |
JP7112528B2 (en) | Work coordinate creation device | |
JP6390088B2 (en) | Robot control system, robot, program, and robot control method | |
JP2014149182A (en) | Method of positioning relative to workpiece | |
WO2022176800A1 (en) | Robot system, and control device | |
WO2018096669A1 (en) | Laser processing device, laser processing method, and laser processing program | |
US20190037204A1 (en) | Calibration method and calibration tool of camera | |
KR20170127995A (en) | Portable 3 dimensional document scanning apparatus and method therefor | |
CN113858214B (en) | Positioning method and control system for robot operation | |
WO2021145280A1 (en) | Robot system | |
JP2007183175A (en) | Member alignment system | |
JP2020196081A (en) | Visual servo system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190307 |
|
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: 20190806 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190819 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6582405 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |