JP4443497B2 - Multi-degree-of-freedom robot positioning error correction apparatus and positioning error correction method - Google Patents
Multi-degree-of-freedom robot positioning error correction apparatus and positioning error correction method Download PDFInfo
- Publication number
- JP4443497B2 JP4443497B2 JP2005319214A JP2005319214A JP4443497B2 JP 4443497 B2 JP4443497 B2 JP 4443497B2 JP 2005319214 A JP2005319214 A JP 2005319214A JP 2005319214 A JP2005319214 A JP 2005319214A JP 4443497 B2 JP4443497 B2 JP 4443497B2
- Authority
- JP
- Japan
- Prior art keywords
- coordinate
- calibration object
- calibration
- calculated
- sphere
- 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
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Description
本発明は、複数の自由度を持つ支持機構から構成される多自由度ロボットにおける支持機構先端部の位置決め誤差補正装置および同位置決め誤差補正方法に関する。 The present invention relates from the supporting mechanism having a plurality of degrees of freedom in multiple degrees of freedom positioning error correction device and the positioning error correction how support mechanism tip of a robot constructed.
一般に、複数の自由度を持つ支持機構からなる多自由度ロボット、例えば、複数のアームを互いに可動的に連結して構成される多関節ロボットにおいては、多関節ロボットを構成する各部品の製造上のバラツキや各部品の組み立て誤差などにより、多関節ロボットの制御装置が指示するまたは認識するアーム先端位置と、実際のアーム先端位置との間に位置決め誤差がある。このため、多関節ロボットの制御装置が指示するまたは認識するアーム先端位置に対して前記位置決め誤差に対応する補正を加えて多関節ロボットにおける繰り返し位置精度(または位置繰り返し精度)を向上させている。この繰り返し位置精度(または位置繰り返し精度)は、多関節ロボットの性能を評価する指標の一つで、アーム先端の位置を特定の位置に繰り返し位置決めさせて、その位置決め精度の再現性を表すものである。 In general, in a multi-degree-of-freedom robot composed of a support mechanism having a plurality of degrees of freedom, for example, a multi-joint robot configured by movably connecting a plurality of arms to each other, it is necessary to manufacture each component constituting the multi-joint robot. There is a positioning error between the arm tip position instructed or recognized by the control device of the articulated robot and the actual arm tip position due to variations in assembly and assembly errors of each component. For this reason, the repeat position accuracy (or position repeat accuracy) in the articulated robot is improved by adding a correction corresponding to the positioning error to the arm tip position indicated or recognized by the controller of the articulated robot. This repeat position accuracy (or position repeat accuracy) is one of the indices used to evaluate the performance of articulated robots, and represents the repeatability of the positioning accuracy by repeatedly positioning the position of the arm tip at a specific position. is there.
多関節ロボットにおける前記位置決め誤差を計算して、同位置決め誤差を補正する位置決め誤差補正装置を備えた多関節ロボットとして、例えば、下記特許文献1に示される多関節ロボットがある。この多関節ロボットにおいては、多関節ロボットのアーム先端の実際の位置を検出するキャリブレーション装置と呼ばれる位置決め誤差補正用の校正治具を用いて、同校正治具により検出されるアーム先端の位置と多関節ロボットの制御装置が指定するアーム先端の位置との差を位置決め誤差として計算している。具体的には、互いに直交する3軸の自由度を有する可動部と、同可動部の変位状態を各自由度ごとに検出する検出部とを備えた校正治具の一端を多関節ロボットのアーム先端部に連結するとともに、同校正治具の他端を多関節ロボットの周囲における任意の場所に固定している。この場合、校正治具は、同校正治具の有する座標系の各座標軸の向きと多関節ロボットの有する座標系の各座標軸の向きとを一致させた状態で固定される。そして、校正治具によって検出される3つの各軸の変位状態から多関節ロボットのアーム先端位置を計算し、同計算したアーム先端位置と多関節ロボットの制御装置が指定するアーム先端位置との差を位置決め誤差として計算して、同制御装置が指定するアーム先端位置を補正している。
しかしながら、上記した位置決め誤差補正用の校正治具は、多関節ロボットにおけるアーム先端位置の変位を正確に検出するために複雑かつ極めて高精度に製作され大変高価なものである。このため、多関節ロボットにおける位置決め誤差を補正するためのコストが高くなるという問題がある。また、校正治具の座標系における各座標軸の向きを多関節ロボットの座標系における各座標軸の向きと一致させて配置する作業は、時間を要する煩雑な作業であり作業効率が悪いという問題もある。 However, the above-described calibration jig for correcting the positioning error is complicated and extremely high precision and is very expensive for accurately detecting the displacement of the arm tip position in the articulated robot. For this reason, there exists a problem that the cost for correct | amending the positioning error in an articulated robot becomes high. Further, the work of arranging the coordinate axes in the coordinate system of the calibration jig so as to coincide with the directions of the coordinate axes in the coordinate system of the articulated robot is a troublesome work that takes time and has a problem that work efficiency is poor. .
本発明は上記問題に対処するためなされたもので、その目的は、多関節ロボットなどの多自由度ロボットにおける位置決め誤差補正の精度を良好に維持しつつ、前記位置決め誤差を作業効率良く検出することができる位置決め誤差補正装置および位置決め誤差補正方法、並びに前記位置決め誤差補正装置および前記位置決め誤差補正方法に用いられる簡単かつ安価に構成された多自由度ロボットの位置決め誤差補正用校正治具を提供することにある。 The present invention has been made to cope with the above-described problem, and an object of the present invention is to detect the positioning error with high work efficiency while maintaining good accuracy of positioning error correction in a multi-degree-of-freedom robot such as an articulated robot. A positioning error correction apparatus and a positioning error correction method capable of performing a positioning error correction, and a positioning error correction calibration jig for a multi-degree-of-freedom robot configured to be used in the positioning error correction apparatus and the positioning error correction method are provided. It is in.
上記目的を達成するため、本発明の特徴は、複数の自由度を持ち、先端部に物体の3次元表面形状を測定する3次元形状測定装置(30)を取り付け可能な支持機構(20)を有する多自由度ロボットにおける前記先端部の位置決め誤差を補正する位置決め誤差補正装置において、互いに識別可能であるとともに、3次元における各次元ごとに少なくとも1つの直線を定義可能な複数の校正用物体(53,51’)を備えた校正治具(50)を用意しておくとともに、前記各校正用物体における前記各次元ごとの直線を定義するための直線定義パラメータ(C m ,V mA ,V mB ,V mC )、前記各校正用物体を識別するための識別パラメータ(R m ,L m ,θ mAB ,θ mBC ,θ mCA ,L mAB ,L mBC ,L mCA )および前記各校正用物体によって特定される各定点(T m )の位置を表す座標値を予め記憶手段に記憶しておくとともに、前記3次元形状測定装置に関する3次元座標系の予め決めた原点座標位置から、前記多自由度ロボットに関する3次元座標系の原点座標位置である前記多自由度ロボットの先端部の予め決めた位置への移動量を表す原点位置関係パラメータを予め前記記憶手段に記憶しておき、前記支持機構の先端部に前記3次元形状測定装置を取り付けて、同3次元形状測定装置に前記複数の校正用物体のうちの1つを基準校正用物体として測定させ、前記3次元形状測定装置に関する3次元座標系で表された、前記測定した基準校正用物体に関する3次元画像データを取得する第1の画像データ取得手段(S402,S404)と、前記取得した基準校正用物体に関する3次元画像データに基づいて、前記記憶手段に記憶されていて前記基準校正用物体に関する識別パラメータを用いて、前記各次元ごとに少なくとも1つの直線を定義するための基準校正用物体直線定義パラメータと、前記基準校正用物体によって特定される定点の座標値とを計算する第1のパラメータ計算手段(S406,S408,S412)と、前記計算した基準校正用物体直線定義パラメータ、前記記憶手段に記憶されていて前記基準校正用物体に関する直線定義パラメータ、および前記記憶手段に記憶されている原点位置関係パラメータを用いて、前記3次元形状測定装置に関する3次元座標系の座標値を、前記計算した基準校正用物体直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きを、前記記憶手段に記憶されていて前記基準校正用物体に関する直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きに一致させ、かつ前記多自由度ロボットに関する3次元座標系の原点座標を原点座標とする変換座標系(CM座標系)の座標値に座標変換するための基準校正用物体座標変換関数(Gd CM )を計算する第1の座標変換関数計算手段(S410)と、前記計算した基準校正用物体座標変換関数を用いて、前記計算した基準校正用物体によって特定される定点の座標値を前記変換座標系の座標値に座標変換して基準定点の座標値とする第1の座標変換手段(S412)と、前記複数の校正用物体の中から指定された前記基準校正用物体以外の1つの校正用物体を被測定対象校正用物体とし、前記3次元形状測定装置に前記被測定対象校正用物体を測定させるために、前記記憶手段に記憶されている前記基準校正用物体および前記被測定対象校正用物体の各定点の位置を表す座標値を用いて、前記3次元形状測定装置の移動位置を計算して、前記計算した移動位置に前記3次元形状測定装置を移動するとともに、前記3次元形状測定装置の向きを指定した向きに設定する移動手段(S414〜S422,特にS420,S422)と、前記移動した3次元形状測定装置に前記被測定対象校正用物体を測定させ、前記3次元形状測定装置に関する3次元座標系で表された、同被測定対象校正用物体に関する3次元画像データを取得する第2の画像データ取得手段(S424)と、前記取得した被測定対象校正用物体に関する3次元画像データに基づいて、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する識別パラメータを用いて、前記各次元ごとに少なくとも1つの直線を定義するための被測定対象校正用物体直線定義パラメータと、前記被測定対象校正用物体によって特定される定点の座標値とを計算する第2のパラメータ計算手段(S426,S428,S432)と、前記計算した被測定対象校正用物体直線定義パラメータ、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する直線定義パラメータ、および前記記憶手段に記憶されている原点位置関係パラメータを用いて、前記3次元形状測定装置に関する3次元座標値を、前記計算した被測定対象校正用物体直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きを、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きに一致させ、かつ前記多自由度ロボットに関する3次元座標系の原点座標を原点座標(CM座標系)とする変換座標系の座標値に座標変換するための被測定対象校正用物体座標変換関数Gs CM を計算する第2の座標変換関数計算手段(S430)と、前記計算した被測定対象校正用物体座標変換関数を用いて、前記計算した被測定対象校正用物体によって特定される定点の座標値を前記変換座標系に座標変換して被測定対象定点の座標値とする第2の座標変換手段(S432)と、前記座標変換した被測定対象定点の各座標値と前記座標変換した基準定点の各座標値との差を、位置決め座標誤差として計算する位置決め座標誤差計算手段(S434)と、前記計算した被測定対象校正用物体座標変換関数と前記計算した基準校正用物体座標変換関数とを用いて、前記第2の画像データ取得手段により前記被測定対象校正用物体の3次元画像データが取得された際の前記3次元形状測定装置の向きと、前記移動手段により指定された前記3次元形状測定装置の向きとのずれを、回転ずれとして計算する回転ずれ計算手段(S436)と、前記計算した位置決め誤差および前記計算した回転ずれに基づいて、前記先端部の位置決め誤差を補正する補正手段(S604)とを備えたことにある。この場合、前記識別パラメータを、校正用物体における表面の反射率、形状、大きさまたは校正用物体間の配置状態にするとよい。 In order to achieve the above object, a feature of the present invention is that a support mechanism (20) having a plurality of degrees of freedom and capable of attaching a three-dimensional shape measuring device (30) for measuring a three-dimensional surface shape of an object to the tip is provided. In the positioning error correction apparatus that corrects the positioning error of the tip in the multi-degree-of-freedom robot, a plurality of calibration objects (53 that can be distinguished from each other and that can define at least one straight line for each dimension in three dimensions , together with the previously prepared calibration jig (50) with a 51 '), a straight line defining parameters for defining the straight line for each dimension in each of the calibration object (C m, V mA, V mB, V mC), identification parameter for identifying the respective calibration objects (R m, L m, θ mAB, θ mBC, θ mCA, L mAB, L mBC, L mCA) Together and stored in advance in storage means coordinate values representing the position of each fixed point (T m) that is identified by the preliminary each calibration object, predetermined origin coordinates of the three-dimensional coordinate system related to the three-dimensional shape measuring apparatus An origin position relation parameter indicating the amount of movement from the position to the predetermined position of the tip of the multi-degree-of-freedom robot, which is the origin coordinate position of the three-dimensional coordinate system related to the multi-degree-of-freedom robot, is stored in the storage means in advance. The three-dimensional shape measuring apparatus is attached to the tip of the support mechanism, and the three-dimensional shape measuring apparatus is configured to measure one of the plurality of calibration objects as a reference calibration object. First image data acquisition means (S402, S404) for acquiring three-dimensional image data relating to the measured reference calibration object expressed in a three-dimensional coordinate system relating to the shape measuring device; For defining at least one straight line for each dimension using the identification parameter stored in the storage unit and related to the reference calibration object based on the acquired 3D image data related to the reference calibration object First parameter calculation means (S406, S408, S412) for calculating a reference calibration object straight line definition parameter and a coordinate value of a fixed point specified by the reference calibration object, and the calculated reference calibration object straight line definition The coordinates of the three-dimensional coordinate system related to the three-dimensional shape measuring apparatus using the parameters, the straight line definition parameters related to the reference calibration object stored in the storage means, and the origin position relation parameters stored in the storage means The value corresponds to each dimension defined by the calculated reference calibration object straight line definition parameter. The direction of the three straight lines is matched with the direction of the three straight lines corresponding to the dimensions defined by the straight line definition parameters stored in the storage means and related to the reference calibration object, and the multi-degree-of-freedom robot First coordinate conversion function for calculating a reference calibration object coordinate conversion function (Gd CM ) for coordinate conversion to a coordinate value of a conversion coordinate system (CM coordinate system) with the origin coordinate of the three-dimensional coordinate system as the origin coordinate Using the calculation means (S410) and the calculated reference calibration object coordinate conversion function, the coordinate value of the fixed point specified by the calculated reference calibration object is converted into the coordinate value of the conversion coordinate system and used as a reference. A first coordinate conversion means (S412) that takes the coordinate value of a fixed point, and one calibration object other than the reference calibration object designated from the plurality of calibration objects, The position of each fixed point of the reference calibration object and the measurement target calibration object stored in the storage means so that the three-dimensional shape measuring apparatus measures the measurement target calibration object. The moving position of the three-dimensional shape measuring apparatus is calculated using the coordinate value representing the position, and the three-dimensional shape measuring apparatus is moved to the calculated moving position, and the direction of the three-dimensional shape measuring apparatus is designated. A moving means (S414 to S422, in particular S420, S422) for setting the orientation, and the moved three-dimensional shape measuring apparatus to measure the object to be measured, and a three-dimensional coordinate system related to the three-dimensional shape measuring apparatus. The second image data acquisition means (S424) for acquiring the three-dimensional image data relating to the object to be measured to be measured, which is shown, and the acquired object to be measured for calibration A measurement object calibration object for defining at least one straight line for each dimension based on three-dimensional image data and using an identification parameter stored in the storage means and related to the measurement object calibration object Second parameter calculation means (S426, S428, S432) for calculating a straight line definition parameter and a coordinate value of a fixed point specified by the measurement target calibration object, and the calculated measurement target calibration object straight line definition The three-dimensional coordinate value related to the three-dimensional shape measuring apparatus using the parameter, the straight line definition parameter related to the calibration object to be measured and stored in the storage means, and the origin position relation parameter stored in the storage means Corresponding to each dimension defined by the calculated calibration object straight line definition parameter The direction of the three straight lines is matched with the direction of the three straight lines corresponding to the dimensions defined by the straight line definition parameters stored in the storage means and related to the calibration object to be measured, and the multi-degree-of-freedom robot Second coordinate conversion function for calculating the object coordinate conversion function Gs CM for calibration of the measurement target for converting the coordinate value of the three-dimensional coordinate system to the coordinate value of the conversion coordinate system with the origin coordinate (CM coordinate system) as the origin coordinate Using the calculating means (S430) and the calculated object coordinate conversion function for measurement object to be measured, the coordinate value of the fixed point specified by the calculated object to be measured object to be measured is converted into the converted coordinate system. a second coordinate transformation means for coordinate values of the measurement target fixed point (S432), the coordinate transformed with each coordinate value of the reference fixed point that the coordinate transformation between coordinate values of the measurement target fixed point And using a positioning coordinate error calculating means for calculation by the positioning coordinate error (S434), the a computation object to be measured for calibration object coordinate transformation function and said calculated reference calibration object coordinate conversion function, the first Direction of the three-dimensional shape measuring apparatus when the three-dimensional image data of the calibration object to be measured is acquired by the two image data acquiring means, and the direction of the three-dimensional shape measuring apparatus designated by the moving means the deviation between the rotational deviation calculating means for calculation by the rotational deviation and (S436), based on the rotational deviation of said calculated the positioning error and the calculation to correct the positioning error of the tip correction means (S604) It is in having prepared. In this case, the identification parameter may be the reflectance, shape, size of the surface of the calibration object or the arrangement state between the calibration objects.
この場合、 前記校正治具における複数の各校正用物体は、少なくとも3つ以上の物体により1つの校正用物体を構成し、前記第1のパラメータ計算手段は、前記基準校正用物体を構成する前記少なくとも3つ以上の物体によって特定される定点の座標値を計算し、前記第2のパラメータ計算手段は、前記被測定対象校正用物体を構成する前記少なくとも3つ以上の物体によって特定される定点の座標値を計算するようにするとよい。また、この場合、前記記憶手段に記憶される各直線定義パラメータは、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点であり、前記第1のパラメータ計算手段は、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点の座標値をそれぞれ計算して、同計算した前記各物体に対応する特定点の中心位置を、前記基準校正用物体によって特定される定点として計算し、前記第2のパラメータ計算手段は、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点の座標値を計算して、同計算した前記各物体に対応する特定点の中心位置を、前記被測定対象校正用物体によって特定される定点として計算するようにするとよい。また、この場合、前記少なくとも3つ以上の各物体は球体であり、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される各特定点は、前記各球体の球体中心であるとよい。 In this case, each of the plurality of calibration objects in the calibration jig constitutes one calibration object by at least three or more objects, and the first parameter calculation means constitutes the reference calibration object. At least three or more in total to calculate the coordinates of a fixed point specified by the object, the second parameter calculating means, fixed point identified by the at least three or more objects constituting the object for the object to be measured calibration the coordinate values may be configured to calculate. In this case, each straight line definition parameter stored in the storage means is a specific point specified by each object for each of the at least three or more objects, and the first parameter calculation means includes : A coordinate value of a specific point specified by each object is calculated for each of the at least three objects, and the center position of the specific point corresponding to each of the calculated objects is calculated as the reference calibration object. total was calculated as a fixed point specified by the second parameter calculation means, said at least three or more to calculate the coordinate value of the specific points respectively specified by the respective object for each object, the calculated the was the central position of the specific point corresponding to each object, the better to be calculated as a fixed point identified by the object to be measured for calibration object. In this case, at least three or more each object is a sphere, the specific point that is identified each of the at least three for each object by the respective object, the Ru sphere center der each sphere Good.
また、これに代えて、前記複数の各校正用物体は、多面体で構成されるとともに同多面体を構成する各面のうちの少なくとも3つの面が前記3次元形状測定装置によって同時に測定可能な状態で前記校正治具に備えられ、前記記憶手段に記憶される各直線定義パラメータは、前記少なくとも3つの各面ごとの各法線ベクトルであり、前記第1のパラメータ計算手段は、前記少なくとも3つ以上の面によって形成される頂点の座標値を、前記基準校正用物体によって特定される定点として計算し、前記第2のパラメータ計算手段は、前記少なくとも3つ以上の面によって形成される頂点の座標値を、前記被測定対象用物体によって特定される定点として計算するようにしてもよい。 Alternatively, each of the plurality of calibration objects is formed of a polyhedron and at least three of the surfaces constituting the polyhedron can be simultaneously measured by the three-dimensional shape measuring apparatus. Each straight line definition parameter provided in the calibration jig and stored in the storage means is a normal vector for each of the at least three surfaces, and the first parameter calculation means includes the at least three or more parameters. the coordinate values of the vertex formed by the surface of, in total and calculated as a fixed point specified by the reference calibration object, the second parameter calculating means, the coordinates of the vertex formed by the at least three or more surfaces The value may be calculated as a fixed point specified by the object to be measured .
このように構成した本発明の特徴によれば、複数の校正用物体を備えた校正治具において、1つの校正用物体を基準校正用物体とするとともに、他の校正用物体を被測定対象校正用物体としてそれぞれ3次元形状測定装置によって3次元形状測定を行っている。この場合、移動手段により、3次元形状測定装置は、基準校正用物体に対して記憶手段に予め記憶されている校正用物体の位置関係に応じて移動されて、被測定対象校正用物体に位置決めされる。したがって、3次元形状測定装置における位置決め誤差がなければ、3次元形状測定装置によって測定される基準校正用物体の位置と被測定対象校正用物体の位置との間には差はない。一方、3次元形状測定装置における位置決め誤差がある場合には、基準校正用物体を測定した位置から被測定対象校正用物体に3次元形状測定装置を位置決めした際に、3つの座標軸上の位置ずれおよび/または各座標軸上の回転ずれが生じていることになり、同差を位置決め座標誤差および/または回転ずれとして検出することができる。
この位置決め座標誤差および/または回転ずれの検出に関して、本発明の構成要件の機能および作用を含めて説明する。まず、基準校正用物体に関しては、第1の画像データ取得手段が、基準校正用物体に関する3次元画像データを取得する。この3次元画像データは、3次元形状測定装置に関する3次元座標系で表されたものである。第1のパラメータ計算手段は、被測定対象校正用物体の位置との比較のために、前記取得した基準校正用物体に関する3次元画像データに基づいて、各次元ごとに少なくとも1つの直線を定義するための基準校正用物体直線定義パラメータと、基準校正用物体によって特定される定点の座標値とを計算する。この基準校正用物体および定点の座標値の計算のために、記憶手段に記憶されていて基準校正用物体を識別するための識別パラメータが用いられる。また、第1の座標変換関数計算手段は、被測定対象校正用物体の位置との比較の際の座標系と同等の座標系の座標値を得ることを可能とするために、3次元形状測定装置に関する3次元座標系の座標値を変換座標系の座標値に変換するための基準校正用物体座標変換関数を計算する。この変換座標系は、3次元形状測定装置に関する3次元座標系の座標値を、基準校正用物体直線定義パラメータによって定義される各次元に対応する3つの直線の向きを、記憶手段に記憶されていて基準校正用物体に関する直線定義パラメータによって定義される各次元に対応する3つの直線の向きに一致させ、かつ多自由度ロボットに関する3次元座標系の原点座標を原点座標とする座標系である。なお、基準校正用物体座標変換関数の計算には、第1のパラメータ計算手段によって計算された基準校正用物体直線定義パラメータ、記憶手段に記憶されていて基準校正用物体に関する直線定義パラメータ、および記憶手段に記憶されている原点位置関係パラメータが用いられる。そして、第1の座標変換手段が、前記計算した基準校正用物体座標変換関数を用いて、第1のパラメータ計算手段によって計算された基準校正用物体によって特定される定点の座標値を前記変換座標系の座標値に座標変換して基準定点の座標値とする。
一方、被測定対象校正用物体に関しては、第2の画像データ取得手段が、被測定対象校正用物体に関する3次元画像データを取得する。この3次元画像データも、3次元形状測定装置に関する3次元座標系で表されたものである。第2のパラメータ計算手段は、基準校正用物体の位置との比較のために、前記取得した被測定対象校正用物体に関する3次元画像データに基づいて、各次元ごとに少なくとも1つの直線を定義するための被測定対象校正用物体直線定義パラメータと、被測定対象校正用物体によって特定される定点の座標値とを計算する。この被測定対象校正用物体および定点の座標値の計算のために、記憶手段に記憶されていて被測定対象校正用物体を識別するための識別パラメータが用いられる。また、第2の座標変換関数計算手段は、基準校正用物体の位置との比較の際の座標系と同等の座標系の座標値を得ることを可能とするために、3次元形状測定装置に関する3次元座標系の座標値を変換座標系の座標値に変換するための被測定対象校正用物体座標変換関数を計算する。この変換座標系は、3次元形状測定装置に関する3次元座標系の座標値を、被測定対象校正用物体直線定義パラメータによって定義される各次元に対応する3つの直線の向きを、記憶手段に記憶されていて被測定対象校正用物体に関する直線定義パラメータによって定義される各次元に対応する3つの直線の向きに一致させ、かつ多自由度ロボットに関する3次元座標系の原点座標を原点座標とする座標系である。なお、被測定対象校正用物体座標変換関数の計算には、第2のパラメータ計算手段によって計算された被測定対象校正用物体直線定義パラメータ、記憶手段に記憶されていて被測定対象校正用物体に関する直線定義パラメータ、および記憶手段に記憶されている原点位置関係パラメータが用いられる。そして、第2の座標変換手段が、前記計算した被測定対象校正用物体座標変換関数を用いて、第2のパラメータ計算手段によって計算された被測定対象校正用物体によって特定される定点の座標値を前記変換座標系の座標値に座標変換して被測定対象定点の座標値とする。
このような計算により、基準校正用物体に関する定点と被測定対象校正用物体に関する定点とが、同等の変換座標系の座標値で表される。したがって、位置決め座標誤差に関しては、座標誤差計算手段が、第2の座標変換手段により座標変換された変換座標系の被測定対象定点の各座標値と、第1の座標変換手段により座標変換された変換座標系の基準定点の各座標値との差を、位置決め座標誤差として計算する。また、回転ずれに関しては、回転ずれ計算手段が、被測定対象校正用物体座標変換関数と基準校正用物体座標変換関数とを用いて、前記第2の画像データ取得手段により前記被測定対象校正用物体の3次元画像データが取得された際の前記3次元形状測定装置の向きと、前記移動手段により指定された前記3次元形状測定装置の向きとのずれを、回転ずれとして計算する。
したがって、校正治具における各校正用物体は、3次元形状測定装置により同各校正用物体の3次元形状が正確に測定され、その測定データに基づいて各定点の座標が正確に算出されるため、各校正用物体および校正治具自体を高精度に製作する必要がないとともに、同校正治具の配置位置も支持機構の可動範囲内であれば厳密に位置決めする必要もない。このため、多自由度ロボットにおける位置決め誤差を補正するためのコストを抑えることができるとともに、校正治具を配置する作業を簡易にすることができる。この結果、多自由度ロボットにおける位置決め誤差補正の精度を良好に維持しつつ、前記位置決め誤差を作業効率良く検出することができる。
According to the feature of the present invention configured as described above, in a calibration jig including a plurality of calibration objects, one calibration object is used as a reference calibration object, and the other calibration objects are used as calibration objects to be measured. A three-dimensional shape measurement device is used to measure a three-dimensional shape. In this case, by the moving means, the three-dimensional shape measuring apparatus is moved in accordance with the positional relationship stored in advance have that school Tadashiyo object in the storage means with respect to the reference calibration object, the object for calibration measurement object Positioned. Therefore, if there is no positioning error in the three-dimensional shape measuring apparatus, there is no difference between the position of the reference calibration object measured by the three-dimensional shape measuring apparatus and the position of the measurement target calibration object. On the other hand, if there is a positioning error in the three-dimensional shape measuring apparatus, when the reference calibration object positioning the three-dimensional shape measuring apparatus to a position or an object from a measured object calibrated measured, the position of the three coordinate axes A deviation and / or a rotational deviation on each coordinate axis has occurred, and the difference can be detected as a positioning coordinate error and / or a rotational deviation.
The detection of the positioning coordinate error and / or rotational deviation will be described including the functions and operations of the constituent elements of the present invention. First, for the reference calibration object, the first image data acquisition unit acquires three-dimensional image data related to the reference calibration object. This three-dimensional image data is expressed in a three-dimensional coordinate system related to the three-dimensional shape measuring apparatus. The first parameter calculation means defines at least one straight line for each dimension based on the acquired three-dimensional image data relating to the reference calibration object for comparison with the position of the measurement target calibration object. The reference calibration object straight line definition parameter and the coordinate value of the fixed point specified by the reference calibration object are calculated. In order to calculate the coordinate values of the reference calibration object and the fixed point, an identification parameter stored in the storage means for identifying the reference calibration object is used. Further, the first coordinate conversion function calculation means is configured to measure the three-dimensional shape in order to obtain a coordinate value of a coordinate system equivalent to the coordinate system at the time of comparison with the position of the calibration object to be measured. A reference calibration object coordinate conversion function for converting the coordinate value of the three-dimensional coordinate system related to the apparatus into the coordinate value of the conversion coordinate system is calculated. In this conversion coordinate system, the coordinate values of the three-dimensional coordinate system related to the three-dimensional shape measuring apparatus are stored in the storage means, and the directions of the three straight lines corresponding to the respective dimensions defined by the reference calibration object straight line definition parameters are stored in the storage means. This is a coordinate system in which the orientation of the three straight lines corresponding to each dimension defined by the straight line definition parameter relating to the reference calibration object is matched, and the origin coordinates of the three-dimensional coordinate system relating to the multi-degree-of-freedom robot are the origin coordinates. The calculation of the reference calibration object coordinate conversion function includes the reference calibration object straight line definition parameter calculated by the first parameter calculation means, the straight line definition parameter related to the reference calibration object stored in the storage means, and the storage. The origin position relation parameter stored in the means is used. Then, the first coordinate conversion means converts the coordinate value of the fixed point specified by the reference calibration object calculated by the first parameter calculation means to the conversion coordinates using the calculated reference calibration object coordinate conversion function. The coordinate value of the system is converted into the coordinate value of the reference fixed point.
On the other hand, with respect to the measurement target calibration object, the second image data acquisition unit acquires three-dimensional image data regarding the measurement target calibration object. This three-dimensional image data is also expressed in a three-dimensional coordinate system related to the three-dimensional shape measuring apparatus. The second parameter calculation means defines at least one straight line for each dimension based on the acquired three-dimensional image data regarding the calibration object to be measured for comparison with the position of the reference calibration object. The object-to-be-calibrated object straight line definition parameter for the measurement object and the coordinate value of the fixed point specified by the object to be measured are calculated. In order to calculate the coordinate values of the measurement target calibration object and the fixed point, identification parameters stored in the storage means for identifying the measurement target calibration object are used. Further, the second coordinate conversion function calculating means relates to a three-dimensional shape measuring apparatus in order to obtain a coordinate value of a coordinate system equivalent to the coordinate system at the time of comparison with the position of the reference calibration object. An object coordinate conversion function for calibration of an object to be measured for converting the coordinate value of the three-dimensional coordinate system into the coordinate value of the conversion coordinate system is calculated. In this conversion coordinate system, the coordinate values of the three-dimensional coordinate system relating to the three-dimensional shape measuring apparatus are stored in the storage means, and the directions of the three straight lines corresponding to the respective dimensions defined by the calibration target object straight line definition parameters are stored in the storage means. Coordinates that match the orientation of the three straight lines corresponding to each dimension defined by the straight line definition parameters for the calibration object to be measured and that have the origin coordinates of the three-dimensional coordinate system for the multi-degree-of-freedom robot as the origin coordinates It is a system. It should be noted that the object-to-be-measured object coordinate conversion function is calculated by the second parameter calculating unit, the object-to-be-measured object straight line definition parameter, which is stored in the storage unit and is related to the object to be measured. The straight line definition parameter and the origin position relation parameter stored in the storage means are used. Then, the second coordinate conversion means uses the calculated object calibration object coordinate conversion function to calculate the coordinate value of the fixed point specified by the object to be measured calibration calculated by the second parameter calculation means. Is converted to the coordinate value of the conversion coordinate system to obtain the coordinate value of the fixed point to be measured.
By such calculation, the fixed point related to the reference calibration object and the fixed point related to the measurement target calibration object are represented by the coordinate values of the equivalent conversion coordinate system. Accordingly, with respect to the positioning coordinate error, the coordinate error calculation means is coordinate-converted by the first coordinate conversion means and each coordinate value of the measurement target fixed point of the conversion coordinate system coordinate-converted by the second coordinate conversion means. The difference from each coordinate value of the reference fixed point of the converted coordinate system is calculated as a positioning coordinate error. Further, with respect to the rotation deviation, the rotation deviation calculation means uses the object coordinate conversion function for calibration of the measurement target and the object coordinate conversion function for reference calibration for the measurement target calibration by the second image data acquisition means. A deviation between the direction of the three-dimensional shape measuring apparatus when the three-dimensional image data of the object is acquired and the direction of the three-dimensional shape measuring apparatus designated by the moving means is calculated as a rotational deviation.
Thus, the calibration object in the calibration fixture, three-dimensional shape of the respective calibration objects are accurately measured by the three-dimensional shape measuring apparatus, it was based on the measurement data each fixed point coordinates Ru are accurately calculated Therefore, it is not necessary to manufacture each calibration object and the calibration jig itself with high accuracy, and it is not necessary to precisely position the calibration jig if the arrangement position of the calibration jig is within the movable range of the support mechanism. For this reason, the cost for correcting the positioning error in the multi-degree-of-freedom robot can be suppressed, and the work of arranging the calibration jig can be simplified. As a result, the positioning error can be detected with high work efficiency while maintaining the accuracy of the positioning error correction in the multi-degree-of-freedom robot.
また、本発明の他の特徴は、前記多自由度ロボットの位置決め誤差補正装置において、前記基準校正用物体以外の前記複数の校正用物体のそれぞれに対し、前記移動手段による3次元形状測定装置の移動、前記第2の画像データ取得手段による3次元画像データの取得、前記第2のパラメータ計算手段による被測定対象校正用物体直線定義パラメータおよび座標値の計算、前記第2の座標変換関数計算手段による被測定対象校正用物体座標変換関数の計算、前記第2の座標変換手段による座標変換、前記位置決め座標誤差計算手段による位置決め座標誤差の計算、ならびに前記回転ずれ計算手段による回転ずれの計算を行わせる繰り返し制御手段(S442)と、前記位置決め座標誤差計算手段により計算された位置決め座標誤差および前記回転ずれ計算手段により計算された回転ずれを補正するための補正データを、前記基準校正用物体以外の前記複数の校正用物体のそれぞれに対応させて前記記憶手段に記憶させる補正データ記憶手段(S436,S440)とを備えたことにある。 Another feature of the present invention is that, in the positioning error correction apparatus for the multi-degree-of-freedom robot, a three-dimensional shape measuring apparatus using the moving means is provided for each of the calibration objects other than the reference calibration object. Movement, acquisition of three-dimensional image data by the second image data acquisition means, calculation of a measurement target straight line definition parameter and coordinate values by the second parameter calculation means, second coordinate conversion function calculation means The object coordinate conversion function for calibrating the object to be measured is calculated by the above, coordinate conversion by the second coordinate conversion means, calculation of positioning coordinate error by the positioning coordinate error calculation means, and calculation of rotational deviation by the rotational deviation calculation means Repetitive control means (S442), positioning coordinate error calculated by the positioning coordinate error calculating means, Correction data storage means (S436) for storing correction data for correcting rotational deviation calculated by the rolling deviation calculation means in the storage means in correspondence with each of the plurality of calibration objects other than the reference calibration object. , S440) .
このように構成した本発明の他の特徴によれば、繰り返し制御手段により、基準校正用物体以外の複数の校正用物体のそれぞれに対し、移動手段による3次元形状測定装置の移動、第2の画像データ取得手段による3次元画像データの取得、第2のパラメータ計算手段による被測定対象校正用物体直線定義パラメータおよび座標値の計算、第2の座標変換関数計算手段による被測定対象校正用物体座標変換関数の計算、第2の座標変換手段による座標変換、位置決め座標誤差計算手段による位置決め座標誤差の計算、ならびに回転ずれ計算手段による回転ずれの計算が行われる。そして、補正データ記憶手段が、位置決め座標誤差計算手段により計算された位置決め座標誤差および前記回転ずれ計算手段により計算された回転ずれを補正するための補正データを、基準校正用物体以外の複数の校正用物体のそれぞれに対応させて記憶手段に記憶させる。したがって、3次元形状測定装置を複数の移動先に移動させる際、複数の移動先の位置に応じた補正データを用いて3次元形状測定装置を位置決めすることができる。この場合、例えば、各被測定対象校正用物体の位置ごとに計算された補正データから補間法により、3次元形状測定装置の位置決めされる位置に対応する補正データを計算するとよい。この結果、3次元形状測定装置の位置決めされる位置に応じた補正量によって多自由度ロボットにおける位置決め誤差を補正することができるため、より高精度に多自由度ロボットの先端部を位置決めすることができる。 According to another feature of the present invention configured as described above, the repetitive control unit moves the three-dimensional shape measuring apparatus by the moving unit with respect to each of the plurality of calibration objects other than the reference calibration object. Acquisition of three-dimensional image data by image data acquisition means, calculation of calibration target object straight line definition parameters and coordinate values by second parameter calculation means, measurement target object calibration coordinates by second coordinate transformation function calculation means The conversion function is calculated, the coordinate conversion is performed by the second coordinate conversion means, the positioning coordinate error is calculated by the positioning coordinate error calculation means, and the rotation deviation is calculated by the rotation deviation calculation means. Then, the correction data storage means uses a plurality of calibrations other than the reference calibration object as correction data for correcting the positioning coordinate error calculated by the positioning coordinate error calculation means and the rotation deviation calculated by the rotation deviation calculation means. It is stored in the storage means corresponding to each object. Therefore, when moving the three-dimensional shape measuring apparatus to a plurality of destination, it is possible to position the three-dimensional shape measuring apparatus using the compensation data corresponding to the positions of the plurality of destination. In this case, for example, by interpolation from the calculated compensation data for each position of the object to be measured for calibration object, it may calculate the compensation data that corresponds to a position that is positioned in the three-dimensional shape measurement device. As a result, since the positioning error in the multi-degree-of-freedom robot can be corrected by the correction amount corresponding to the position where the three-dimensional shape measuring apparatus is positioned, the tip of the multi-degree-of-freedom robot can be positioned with higher accuracy. it can.
また、本発明は装置の発明として実施できるばかりでなく、方法の発明としても実施できるものである。 The present invention can be implemented not only as an apparatus invention but also as a method invention.
(第1実施形態)
以下、本発明の第1実施形態について図面を用いて説明する。図1は、本発明の位置決め誤差補正装置を備えた多関節ロボットの基本構成を示す概略図である。
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to the drawings. FIG. 1 is a schematic diagram showing a basic configuration of an articulated robot provided with a positioning error correction apparatus of the present invention.
この多関節ロボットは、基台10上に固定して先端部を測定対象空間内で自由に変位させるアーム支持機構20と、アーム支持機構20の先端部に取り付けた3次元形状測定装置30とを備えている。アーム支持機構20は、固定ベース21、回転ベース22、第1アーム23、第2アーム24、第3アーム25および第4アーム26からなる。
This articulated robot includes an
固定ベース21は、円筒状に形成され、その下端にて基台10上に垂直方向に立設固定されている。回転ベース22は、円盤状に形成され、固定ベース21の上面において同固定ベース21の軸線回りに回転可能な状態で組み付けられている。この回転ベース22は、固定ベース21内に設けられたサーボモータ21aにより固定ベース21の軸線回りに回転駆動する。第1アーム23は、その基端に設けた連結部23aにて、回転ベース22の上面に設けた連結部22aに、回転ベース22の軸線方向に直交する軸線回りに回転可能な状態で組み付けられている。この第1アーム23は、連結部22a,23aに設けたサーボモータ23bにより回転ベース22の軸線方向に直交する軸線回りに回転駆動する。
The fixed
第2アーム24は、その基端に設けた連結部24aにて、第1アーム23の先端に設けた連結部23cに、第1アーム23の軸線方向に直交する軸線回りに回転可能に組み付けられている。この第2アーム24は、連結部23c,24aに設けたサーボモータ24bにより第1アーム23の軸線方向に直交する軸線回りに回転駆動する。第3アーム25は、その基端に設けた連結部25aにて、第2アーム24の先端に設けた連結部24cに、第2アーム24の軸線方向に直交する軸線回りに回転可能に組み付けられている。この第3アーム25は、連結部24c,25aに設けたサーボモータ25bにより第2アーム24の軸線方向に直交する軸線回りに回転駆動する。
The
第4アーム26は、その基端に設けた連結部26aにて、第3アーム25の先端に設けた連結部25cに、第3アーム25の軸線方向に直交する軸線回りに回転可能に組み付けられている。この第3アーム25は、連結部25c,26aに設けたサーボモータ26bにより第3アーム25の軸線方向に直交する軸線回りに回転駆動する。第4アーム26の先端部には、固定部材27を介して3次元形状測定装置30が、第4アーム26の軸線回りに回転可能、かつ着脱自在に取り付けられている。固定部材27は、3次元形状測定装置30の方形状のハウジングの底面または側面に固定されている。また、固定部材27には、サーボモータ27aが設けられており、同固定部材27を第4アーム26の軸線回りに回転駆動する。
The
3次元形状測定装置30は、その正面側に位置する物体の3次元形状を測定するとともに同測定した3次元形状を表す情報を出力するものであり、本実施形態においては、レーザ光を用いて3角測量法に従って物体の3次元形状を測定するものである。なお、本実施形態では、レーザ光を用いるようにしているが、3次元物体の表面形状を測定し、反射率および色などを識別することが可能であれば他の光を用いてもよい。
The three-dimensional
この3次元形状測定装置30においては、レーザ光源から物体に向けて出射されるレーザ光の進行方向にほぼ垂直な仮想平面を想定するとともに、同仮想平面上にて互いに直交するX軸方向およびY軸方向に沿って分割した多数の微小エリアを想定する。そして、3次元形状測定装置30は、前記多数の微小エリアにレーザ光を順次照射し、物体からの反射光によって前記微小エリアが規定する物体表面までの距離をZ軸方向距離として順次検出して、物体の表面を微小エリアずつに分割した各分割エリア位置を表すX,Y,Z座標に関する情報を得て、同3次元形状測定装置30に面した物体表面の形状を測定するものである。
In this three-dimensional
したがって、この3次元形状測定装置30は、出射レーザ光の向きをX軸方向に変化させるX軸方向走査器と、出射レーザ光の向きをY軸方向に変化させるY軸方向走査器と、物体表面にて反射された反射レーザ光を受光して物体表面までの距離を検出する距離検出器とを備えている。X軸方向走査器およびY軸方向走査器としては、レーザ光源からの出射レーザ光の光路をX軸方向およびY軸方向に独立に変化させ得る機構であればよく、例えばレーザ光源自体をX軸方向およびY軸方向の軸線回りに電動モータによって回転させたり、出射レーザ光の光路に設けられてその方向を変更するガルバノミラーをX軸方向およびY軸方向の軸線回りに電動モータによって回転させる機構を利用できる。距離検出器としては、前記出射レーザ光の光路に追従して回転し、物体表面にて反射された反射レーザ光を集光する結像レンズおよび同集光したレーザ光を受光するCCDなどの複数の受光素子を一列に配置させたラインセンサからなり、ラインセンサによる反射レーザ光の受光位置によって物体表面までの距離を検出する機構を利用できる。
Therefore, the three-dimensional
したがって、このような3次元形状測定装置30は、物体の表面を微小エリアずつに分割した各分割エリア位置を表すX,Y,Z座標に関する情報として、X軸方向走査器による出射レーザ光の基準方向に対するX軸方向への傾きθx、Y軸方向走査器による出射レーザ光の基準方向に対するY軸方向への傾きθy、および距離検出器による物体表面までの距離Lzとが、前記仮想したX軸方向およびY軸方向に沿って分割した多数の微小エリアごとに出力される。より具体的には、X軸およびY軸方向への傾きθx,θyは、電動モータの基準位置からの回転角である。また、物体表面までの距離Lzは、ラインセンサにおける反射レーザ光の受光位置である。なお、前述した3次元形状測定装置30はその一例を示すもので、レーザ光に代えてミリ波、超音波などを使用したものなど、いかなる3次元形状測定装置をも利用できる。
Therefore, such a three-dimensional
この3次元形状測定装置30には、コントローラ41および3次元画像処理装置42が接続されている。コントローラ41は、3次元形状測定装置30の他に、サーボモータ21a,23b,24b,25b,26b,27aおよび3次元画像処理装置42がそれぞれ接続されており、複数の操作子を含むキーボードなどからなる入力装置43からの指示にしたがって、3次元形状測定装置30、サーボモータ21a,23b,24b,25b,26b,27aおよび3次元画像処理装置42の作動をそれぞれ制御する。
A
コントローラ41には、アーム支持機構20の基本姿勢時における各アーム間の角度、同アーム間のねじれ角、同アーム間の距離、各アームの長さなどの各アームの幾何学的な構成を規定する基本姿勢情報が設定されている。そして、コントローラ41は、入力装置43または3次元画像処理装置42から指示されるアーム支持機構20の先端部の位置決め位置(先端部の向きも含む)に、同先端部を位置決めするための回転ベース22の回転角、第1アーム23〜第4アーム26間の各角度および第4アームの軸線方向の回転角を、前記基本姿勢情報を用いてそれぞれ計算して、これらの回転角に対応する各サーボモータ21a,23b,24b,25b,26b,27aを制御するための制御値を計算する。また、コントローラ41は、入力装置43からアーム支持機構20の先端部の位置決め位置(先端部の向きも含む)を表すアーム先端位置情報が入力された場合には、同アーム先端位置情報を3次元画像処理測定装置42に供給する。なお、アーム先端位置情報が表す第4アーム26の先端の位置および同先端部の向きは、固定ベース21の基台10への固定部における予め定められた点を原点とする3次元座標系である基準座標系によって表されている。
The
3次元画像処理装置42は、コンピュータ装置によって構成されて図7,8,9,11,17,20に示す各プログラムを実行することにより、コントローラ41から供給されるアーム先端位置情報および3次元形状測定装置30からの3次元形状を表す情報、具体的には、X軸方向への傾きθx、Y軸方向への傾きθy、物体表面までの距離Lzを入力して、第4アーム26の先端部の位置決め誤差を計算し、さらに、同位置決め誤差を補正するとともに、測定対象空間内に位置する物体の立体形状を任意の方向から見て表示可能な3次元画像データを生成する。この3次元画像処理装置42には、表示装置44が接続されている。表示装置44は、液晶ディスプレイ、プラズマディスプレイまたはCRTディスプレイなどからなり、3次元画像処理装置42によって実行される各プログラムの実行過程および同各プログラムの実行より生成される3次元画像データに基づいて測定対象空間内に位置する物体の立体形状を表示する。
The three-dimensional
次に、このように構成した多関節ロボットの作動について説明する。作業者は、コントローラ41によって指示される第4アーム26の先端位置と、実際の第4アーム26の先端位置との差を検出するための位置決め誤差補正用の校正治具50を用意する。校正治具50は、図2(A)に示すように、校正用物体としての複数の球体51が校正用物体支持ベース52に支持されて構成されている。各球体51は樹脂や発泡スチロールなど比較的質量の小さい材料により構成されており、3つの球体51で1つの球体セット53を構成する。この球体セット53は全部で16セットあり、校正用物体支持ベース52内に均等に配置されて支持されている。なお、球体51の各直径は、所定の直径(本実施形態においては25mm)を目安に成形されているが、その寸法公差の範囲は広く各球体51ごとに異なる直径に形成されている。
Next, the operation of the articulated robot configured as described above will be described. The operator prepares a
校正用物体支持ベース52は、正方形状に形成された枠体52aの内側を十字状に形成された支持桟52bによって正方形状の4つの領域に分割されて形成されている。4つに分割された各領域内には、枠体52aの各縦横方向にそれぞれ2本ずつのワイヤー52c,52dが張られており、これらのワイヤー52cとワイヤー52dとの各交点付近に前記3つの球体51によって構成される球体セット53がそれぞれ配置されている。具体的には、ワイヤー52cとワイヤー52dとの交点の両側にワイヤー52dをそれぞれ貫通させた2つの球体51を配置するとともに、同交点の図示上側でワイヤー52cを貫通させた1つの球体51を配置させて枠体52a内に支持されている。
The calibration
なお、各球体セット53における3つの球体51は、それぞれ略等間隔で配置されている。なお、この校正用物体支持ベース52内における球体セット53の配置される範囲は、アーム支持機構20の可動範囲内であって、3次元形状測定装置30によって測定される測定対象であるワークWKの大きさに応じて設定される。すなわち、ワークWKを測定するために3次元形状測定装置30を可動させる必要のある範囲内をカバーするように球体セット53が配置される。したがって、校正用物体支持ベース52の大きさも球体セット53が配置される範囲で設定される。この場合、校正用物体支持ベース52の大きさを3次元形状測定装置30の可動範囲に対応した大きさに形成してもよいし、同校正用物体支持ベース52の大きさを同可動範囲より小さく形成し、校正用治具50を同可動範囲内で移動させて同範囲をカバーするようにしてもよい。
Note that the three
校正用物体支持ベース52は、支柱54を介して底板55に固定されている。支柱54は、図2(B)に示すように、互いに異なる4つの外径で形成された円筒体54a,54b,54c,54dを同軸上に配置して一体的に構成され、外径の小さい円筒体がより外径の大きい円筒体内に収納可能な状態で組み付けられている。すなわち支柱54は、軸線方向に伸縮自在に形成されている。この支柱54の上面、具体的には、円筒体54aの上面が校正用物体支持ベース52の支持桟52bにおけるクロス部分の下面に角度変更が可能な連結部を介して固着されるとともに、支柱54の下面、具体的には、円筒体54dの下面が底板55の上面中央部に固着され、支柱54は校正用物体支持ベース52を支柱54の軸線方向に変位可能に支持する。すなわち、校正用物体支持ベース52を上下方向に変位させるとともに、校正用物体支持ベース52を適切な傾き角度に設定することができ、球体セット53が配置される範囲を上下方向に移動するとともに、球体セット53が配置される平面の角度を変更することができる。
The calibration
なお、校正用物体支持ベース52の上下方向の位置は、支柱54に取り付けられたセンサまたはスケールにより検出可能になっている。底板55は、正方形状の板材により構成され、上面中央部に固着される支柱54を支持する。この底板55の下面における4つの隅部には、キャスター56がそれぞれ設けられており、校正治具50を任意の位置に移動させることができる。なお、図2(A)は、支柱54を縮めた状態での校正治具50を示しており、図2(B)は、支柱54を伸ばした状態での校正治具50を示している。
The vertical position of the calibration
作業者は、上記のように構成された校正治具50における校正用物体情報を取得する作業を行う。校正用物体情報は、各球体セット53ごとの各球体51の球体中心(中心座標)、球半径、各球体51の中心間距離および3つの球体51の中心点である定点で構成されている。具体的には、作業者は、図3に示す3次元測定機60を用いて各球体51を測定する。3次元測定機60は、測定対象空間内に位置する物体の座標位置や物体の大きさなどを3次元的に計測することができる測定機であり、測定部61、コントローラ62、座標計算処理装置63、入力装置64および表示装置65から構成されている。測定部61は、ベース66上に載置された被測定対象物の表面に、アーム67およびコラム68により図示X軸方向、Y軸方向およびZ軸方向の各3軸方向に摺動可能に支持されているプローブ69を接触させて、その接触点における各座標値を表す測定座標情報を座標計算処理装置63に出力する。
The operator performs an operation of acquiring calibration object information in the
この測定部61には、コントローラ62および座標計算処理装置63が接続されている。コントローラ62は、キーボードからなる入力装置64からの指示に従って、測定部61の作動を制御する。また、コントローラ62は、入力装置64からの指示に従って座標計算処理装置63の作動を制御するとともに、同入力装置64にて入力されたデータを座標計算処理装置63に供給する。座標計算処理装置63は、コンピュータ装置によって構成され、所定のプログラムを実行することにより前記測定部61から出力された測定座標情報と前記コントローラ62から供給されるデータとを用いて各種の計測値の計算を行い、その結果を表示装置65に出力する。表示装置65は、液晶ディスプレイなどから構成されており、前記座標計算処理装置63による計算処理過程および計算結果をそれぞれ表示する。
A
このように構成された3次元測定機60のベース66上の測定対象空間内に、作業者は校正治具50を図3に示すように支柱54を縮めた状態にしてセットした後、入力装置64を操作して校正用物体情報の取得を指示する。この校正用物体情報の取得の指示は、コントローラ62を介して座標計算処理装置63に伝達され、座標計算処理装置63は図4に示す校正用物体情報取得プログラムの実行をステップS100にて開始して、ステップS102にて作業者による測定対象の特徴の入力を待つ。作業者が入力装置64を操作して測定対象である球体51の特徴を入力すると、同入力情報はコントローラ62を介して座標計算処理装置63に供給される。ここで測定対象の特徴とは、本実施例においては、測定対象である各球体51が球体であることを表すデータである。なお、以前に入力された測定対象の特徴が変更されない場合には、このステップS102の処理をスキップさせてもよい。このステップS102の処理後、座標計算処理装置63は、ステップS104にて測定部61による各球体セット53ごとの測定座標情報の入力を待つ。
In the measurement target space on the
一方、作業者は、測定部61のプローブ69を操作して測定対象となるいずれか一つの球体セット53における各球体51の表面をそれぞれ4箇所接触させる。この場合、作業者は、各球体セット53ごとに各球体セット53を区別するための番号(1〜N)を入力して各球体セット53の測定を行う。これにより、測定部61は各球体51ごとに4箇所の接触点に対応する4組の測定座標情報(各点は、座標値x,y,zで表される)を座標計算処理装置63に出力する。なお、この測定座標情報は、それぞれ3次元測定機60に関する座標系である測定機座標系であって、本実施形態においては、ベース66上に予め決められる点を原点とするX,Y,Z座標の3次元座標における座標値である。座標計算処理装置63は、ステップS106にて、各球体51ごとの4組の測定座標情報を用いて、測定対象となっている各球体51の球体中心座標CmA,CmB,CmCおよび球半径RmA,RmB,RmCを計算する(「m」は測定機座標系を表す)。具体的には、球体の表面は下記数1によって表されることから、前記4組の測定座標情報をそれぞれ下記数1のX,Y,Zにそれぞれ代入して連立方程式を解くことにより計算する。なお、下記数1において、a,b,cは球体の中心座標を表す未知数であり、dは球体の半径を表す未知数である。
On the other hand, the operator operates the
すなわち、このステップS106の処理においては、1つの球体51に対して測定された4組の測定座標情報を各測定座標情報ごとに前記数1の左辺に代入して、4つの連立方程式を作成し、この連立方程式を解くことでa,b,c,dを計算する。これにより、球体51の中心位置を表す座標値(X,Y,Z)がa,b,cとして計算されるとともに球体51の半径がdとして計算される。これら球体51の球体中心座標Cmおよび球半径Rmを計算する処理を3つの球体51に対して実行した後、ステップS108に進む。なお、本実施形態においては、一つの球体51に対してプローブ69を4箇所接触させて測定座標情報を取得するようにしたが、同プローブ69を5箇所以上接触させて補正を含む高精度の球体中心座標Cmおよび球半径Rmの計算を行うようにしてもよい。また、一つの球体51に対して複数回、測定座標情報の取得を行うとともに球体中心座標Cmおよび球半径Rmの計算を行い、各回ごとに計算された球体中心座標Cmおよび球半径Rmをそれぞれ平均した値を球体中心座標Cmおよび球半径Rmとしてもよい。これにより、さらに高精度な球体51の球体中心座標Cmおよび球半径Rmを計算することができる。
That is, in the process of step S106, four sets of measurement coordinate information measured for one
次に、座標計算処理装置63は、ステップS108にて、各球体51間の距離LmAB,LmBC,LmCAを計算する。この各球体51間の距離LmAB,LmBC,LmCAは、前記ステップS106にて計算した各球体51の互いの球体中心座標CmA,CmB,CmCの間の直線距離である。次に、座標計算処理装置63は、ステップS110にて、定点座標Tmを計算する。定点座標Tmは、球体セット53における3つの球体51が配置された中心位置を表す座標値である。この定点座標Tmは、下記数2のXA,XB,XC,YA,YB,YC,ZA,ZB,ZCに各球体51の各球体中心座標CmA,CmB,CmCの各座標値(CXmA,CYmA,CZmA)(CXmB,CYmB,CZmB)(CXmC,CYmC,CZmC)をそれぞれ代入して計算する。
Next, the coordinate
次に、座標計算処理装置63は、ステップS112にて、すべての球体セット53について測定を行ったか否かを判定する。この判定において、すべての球体セット53について測定を行っていない場合には「No」と判定されてステップS104に戻り、未だ測定を行っていない球体セット53について測定処理を続行する。一方、すべての球体セット53について測定を行った場合には「Yes」と判定されてステップS114に進む。ステップS114において座標計算処理装置63は、作業者に対して球体セット53の高さ方向の位置を変更して再度各球体セット53の測定処理を行うか否かを問い合わせる。これは、基台10上に配置されるワークWKを測定するためにアーム支持機構20を可動させる高さ方向の範囲に対応する高さ方向の範囲内で略均等に球体セット53の校正用物体情報を取得するためである。したがって、作業者は、異なる高さ方向の位置で再度球体53の測定処理が必要な場合には、入力装置64を操作して測定処理を続行する旨の情報を座標計算処理装置63に入力する。この指示に応答して、座標計算処理装置63は、同ステップS114にて「Yes」と判定して、ステップS104に戻り球体セット53を測定する各処理を再度実行する。この場合、作業者は、校正治具50の支柱54を伸縮させて校正用物体支持ベース52の高さを必要な高さに変更する。
Next, the coordinate
一方、アーム支持機構20を可動させる高さ方向の範囲に対応する高さ方向の範囲内で略均等に球体セット53の校正用物体情報が取得された場合には、作業者は、入力装置64を操作して測定処理を終了する旨の情報を座標計算処理装置63に入力する。この指示に応答して、座標計算処理装置63は、同ステップS114にて「No」と判定して、ステップS116に進み、同ステップS116にて、この校正用物体情報取得プログラムの実行を終了する。これにより、座標計算処理装置63には、図5に示すように、球体セット53(1〜N)ごとに各球体51の球体中心座標Cmおよび球半径Rm、各球体51の中心間距離Lmおよび球体セット53の定点座標Tmがそれぞれ記憶される。なお、これらの校正用物体情報のうち、球体中心座標Cmが本発明に係る直線定義パラメータであり、球半径Rmおよび各球体51間の距離Lmが本発明に係る識別パラメータであり、球体セット53の定点座標Tmが本発明に係る定点である。そして、作業者は、3次元測定機60のベース66上から校正治具50を取り除いて校正用物体情報の取得作業を終了する。なお、校正用物体情報が既知であれば、この校正用物体情報取得プログラムの実行による校正用物体情報の取得処理は不要である。
On the other hand, when the calibration object information of the sphere set 53 is acquired approximately evenly within the height direction range corresponding to the height direction range in which the
次に、作業者は、前記校正用物体情報取得プログラムの実行により計算された校正用物体情報を多関節ロボットにおける3次元画像処理装置42に入力する。具体的には、3次元測定機60の座標計算処理装置63と3次元画像処理装置42とを信号ケーブルなどで接続し、座標計算処理装置63から3次元画像処理装置42に校正用物体情報を入力する。なお、校正用物体情報を3次元画像処理装置42に入力する方法としては、前記信号ケーブルを用いるほかに、入力装置43を介して作業者による入力作業により入力する方法や、座標計算処理装置63に記憶されている校正用物体情報を他の記録媒体(例えば、FD、携帯性フラッシュメモリ装置など)を介して3次元画像処理装置42に入力する方法がある。
Next, the operator inputs the calibration object information calculated by executing the calibration object information acquisition program to the three-dimensional
次に、作業者は、3次元形状測定装置30に関する座標系であるカメラ座標系によって表された3次元画像データを、アーム支持機構20に関する座標系であるアーム座標系によって表された3次元画像データに変換するための座標変換関数CAを計算する。ここで、カメラ座標系は、3次元形状測定装置30に関する座標系であり、互いに直交する3つの座標軸(X軸,Y軸,Z軸)からなり3次元形状測定装置30の特定点を原点とする3次元座標系である。また、アーム座標系は、3次元形状測定装置30の取り付け部に関する座標系であり、カメラ座標系に対応する3つの座標軸(X軸,Y軸,Z軸)からなり、3次元形状測定装置30をアーム支持機構20に取り付けるための取り付け部である第4アーム26の先端部の予め決められた位置を原点とする3次元座標系である。この第4アーム26の先端部の予め決められた位置とは、詳しくは第4アーム26の軸線上にある第4アーム26の先端の点である。
Next, the operator converts the three-dimensional image data represented by the camera coordinate system, which is the coordinate system related to the three-dimensional
まず、作業者は、図6に示すように、第4アーム26の先端部に、3次元形状測定装置30に代えて、プローブ70の基部71を取り付ける。プローブ70は、針状に形成された触針72の一端が連結部73を介して基部71に取り付けられて構成されている。連結部73は、触針72の先端部を基部71に対して直交する2軸回りに変位自在(図示矢印方向)に支持する。このプローブ70は、3次元画像処理装置42と電気的に接続されており、触針72の先端部が何らかの物体に接触した場合には、同接触を表す信号と連結部73の2軸方向の各回転角を表す信号を3次元画像処理装置42に出力する。このプローブ70においては、基部71の所定位置に対する連結部73の回転中心位置および同連結部73の回転中心位置に対する触針72の先端部の位置は作業者により認識されており、3次元画像処理装置42のメモリ装置に予め記憶されている。
First, as shown in FIG. 6, the operator attaches the
次に、作業者は、基台10上における予め設定された位置に座標変換関数取得用の基準球80を配置する。基準球80は真球体に形成され、測定対象空間内の定点を定めるための基準物体として機能する。この基準球80は、台形状に形成された台部81上に円柱状の支持部82を介して固定され、基台10の上面から適当な高さに配置される。なお、本実施形態においては、基準球80を台部81および支持部82を介して基台10上に配置したが、基準球80を直接基台10上に配置するようにしてもよい。
Next, the worker places a
次に、作業者は、入力装置43を操作して、図7に示す基準球測定プログラムの実行を3次元画像処理装置42に指示する。この指示に応答して3次元画像処理装置42は、基準球測定プログラムの実行をステップS200にて開始して、ステップS202にて、プローブ70による基準球80の測定を行う。基準球80の測定は、プローブ70の触針72の先端部を基準球80に接触させることにより行うが、3次元画像処理装置42は、まず、触針72の先端部を基準球80に接触させるためにアーム支持機構20の先端部が取るべき位置の範囲を表示装置44に表示させる。このアーム支持機構20の先端部が取るべき位置の範囲は3次元画像処理装置42のメモリ装置に予め記憶されている。作業者は、表示装置44に表示されるアーム支持機構20の先端部が取るべき位置の範囲を確認しながら入力装置43を操作して、同範囲内にアーム支持機構20の先端部を移動させる。この場合、作業者は、アーム支持機構20の先端部の移動によってプローブ70の触針72の先端部が基準球80に接触しないように、同触針72の先端部の向きを基準球80とは反対方向に向けた後、入力装置43を操作してアーム先端位置情報をコントローラ41に入力する。
Next, the operator operates the
次に、作業者は、触針72を手で操作して基準球80の表面に同触針72の先端部を接触させる。この場合、プローブ70から3次元画像処理装置42に対して、触針72の先端部の接触を表す信号および連結部73の2軸方向の回転角を表す信号が出力される。3次元画像処理装置42は、触針72の先端部の接触を表す信号に応答して、入力した連結部73の2軸方向の各回転角、前記入力したアーム先端位置情報、基部71の所定位置に対する連結部73の回転中心までの長さおよび同連結部73の回転中心位置に対する触針72の先端部までの長さを用いて、触針72の先端部の基準球80の接触点を表す座標であって基台10に関する座標系である基準座標系の座標値を計算する。基準座標系は、前記したようにカメラ座標系に対応する3つの座標軸(X軸,Y軸,Z軸)からなり、固定ベース21の基台10への固定部における予め定められた点を原点とする3次元座標系である。作業者は、アーム支持機構20の先端部の位置を4回変更して、各位置ごとにプローブ70の触針72を基準球80に接触させて、各接触点の座標の基準座標系における座標値の計算を各接触点ごとに行って、4つの接触点にそれぞれ対応した4組の座標データを3次元画像処理装置42に記憶させる。
Next, the operator manually operates the
3次元画像処理装置42は、ステップS204の処理後、ステップS206にて、基準球80の中心位置を表す座標であって基準座標系の座標(以下、中心座標(x”,y”,z”)という)を、前記計算した4組の座標データを用いて計算する。この計算においては、球体の表面を表す上記数1の方程式のX,Y,Zに、前記4組の座標データを代入し、a,b,cの各値を計算することにより、基準球80の中心座標(x”,y”,z”)を計算する。次に、3次元画像処理装置42は、ステップS208にて、前記計算した中心座標(x”,y”,z”)を基準球80の定点を表す座標として記憶した後、ステップS210にて、この基準球測定プログラムの実行を終了する。なお、本実施形態では、基準球80に対してプローブ70を4箇所接触させるようにしたが、5箇所以上の接触を行って、補正を含む高精度の中心座標の計算を行うようにしてもよい。また、基準球80の半径dが既知である場合には、接触点を3点にしても、基準球80の中心座標を求めることができる。
After the process of step S204, the three-dimensional
次に、作業者は、図1に示すように、第4アーム26の先端部からプローブ70を取り外すとともに、同先端部に3次元形状測定装置30を第4アーム26の軸線回りに回転可能に組み付ける。そして、入力装置43を操作して、図8に示す座標変換関数計算プログラムの実行を3次元画像処理装置42に指示する。この指示に応答して3次元画像処理装置42は、座標変換関数計算プログラムの実行をステップS300にて開始して、ステップ302にて、3次元形状測定装置30による基準球80の測定を行う。具体的には、作業者は入力装置43を操作して3次元形状測定装置30を基準球80を測定できる位置に移動させて基準球80の測定を行う。この基準球80の測定は、それぞれ異なる3つの測定位置からそれぞれ行われ、各測定位置ごとにアーム先端位置情報および基準球80の3次元形状を表す情報が3次元画像処理装置42にそれぞれ記憶される。
Next, as shown in FIG. 1, the operator removes the
この場合、アーム先端位置情報は、前記したように、作業者によって入力装置43を介して3次元画像処理装置42に入力された情報であり、基準座標系によるアーム座標系の原点を表す座標(xd1,yd1,zd1),(xd2,yd2,zd2),(xd3,yd3,zd3)と、基準座標系の座標軸の方向をアーム座標系の座標軸の方向にする際の基準座標系のX軸、Y軸およびZ軸回りの回転角(α1,β1,γ1),(α2,β2,γ2),(α3,β3,γ3)である。また、基準球80の3次元形状を表す情報とは、基準球80の表面を微小エリアずつに分割した各分割エリア位置を表すX−Y−Z座標に関する情報(具体的には、傾きθx,θyおよび距離Lz)である。そして、3次元画像処理装置42は、同ステップS302にて、前記記憶した基準球80の3次元形状を表す情報に基づいて、各測定位置ごとにおける基準球80の3次元形状を表す立体形状データ群からなる3次元画像データをそれぞれ計算する。この場合、3次元画像データは、3次元形状測定装置30に関する座標系、すなわちカメラ座標系によって表されている。なお、前記3次元画像データ中に基準球80以外の物体(例えば、基台10など)に関する不要な3次元画像データが含まれている場合には、3次元画像処理装置42は、3次元形状測定装置30からX−Y−Z座標に関する情報とともに、ラインセンサの受光光量のデータまたは同受光光量の出射光量に対する比のデータを入力し、同ステップS302にて、この受光光量または受光光量の出射光量に対する比のデータにより同不要な3次元画像データを除去する処理を併せて実行する。
In this case, as described above, the arm tip position information is information input to the three-dimensional
次に、3次元画像処理装置42は、ステップS304にて、前記計算した各測定位置ごとの3次元画像データを、上記数1の方程式のX,Y,Zに代入して、最小2乗法によりa,b,cを計算することにより基準球80の各測定位置ごとの中心座標(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)を求める。なお、各測定位置ごとの基準球80の3次元画像データの区別は、入力装置43から入力された前記アーム先端位置情報を用いる。
Next, in step S304, the three-dimensional
次に、3次元画像処理装置42は、ステップS306にて、アーム座標系における基準球80の中心座標を計算する。具体的には、3次元画像処理装置42は、前記図7に示す基準球測定プログラムの実行によってメモリ装置に記憶した基準球80の基準座標系における中心座標(x”,y”,z”)と、前記ステップS302にて入力されたアーム先端位置情報、具体的には、基準座標系によるアーム座標系の原点を表す座標(xd1,yd1,zd1),(xd2,yd2,zd2),(xd3,yd3,zd3)および基準座標系の座標軸の方向をアーム座標系の座標軸の方向にする際の基準座標系のX軸、Y軸およびZ軸回りの回転角(α1,β1,γ1),(α2,β2,γ2),(α3,β3,γ3)を下記数3及び数4にそれぞれ代入して、基準球80の中心座標であってアーム座標系での中心座標(x’1,y’1,z’1),(x’2,y’2,z’2),(x’3,y’3,z’3)を計算する。
Next, in step S306, the three-dimensional
上記数3および数4は、X−Y−Z座標からなる第1座標系における一点の座標(x,y,z)を、同第1座標系の原点をX軸方向、Y軸方向およびZ軸方向にそれぞれa,b,cだけ移動させるとともに、同第1座標系をX軸、Y軸およびZ軸回りにそれぞれxθ,yθ,zθだけ回転させた第2座標系における同一点の座標(x’,y’,z’)との関係を示している。そして、このステップS306の計算においては、上記数3中の座標値x,y,zが、基準球80の中心座標であって基準座標系による中心座標(x”,y”,z”)の各X,Y,Z座標値にそれぞれ対応する。また、上記数3中の座標値x’,y’,z’が、基準球80の中心座標であってアーム座標系による中心座標(x’,y’,z’)の各X,Y,Z座標値に対応する。なお、上記数3中の値a,b,cは、前記ステップS302において作業者が、入力装置43から入力した情報である基準座標系によるアーム座標系の原点座標(xd1,yd1,zd1),(xd2,yd2,zd2),(xd3,yd3,zd3)に相当し、かつ上記数4中のα,β,γは同ステップS302において作業者が入力装置43から入力した情報である基準座標系の座標軸の方向をアーム座標系の座標軸の方向にする際の基準座標系のX軸、Y軸およびZ軸回りの回転角(α1,β1,γ1),(α2,β2,γ2),(α3,β3,γ3)に相当する。
Equations (3) and (4) above represent the coordinates (x, y, z) of one point in the first coordinate system made up of XYZ coordinates, the origin of the first coordinate system as the X-axis direction, the Y-axis direction, and the Z-axis. Coordinates of the same point in the second coordinate system (a, b, c are moved in the axial direction and the first coordinate system is rotated by xθ, yθ, zθ around the X, Y, and Z axes, respectively) x ′, y ′, z ′). In the calculation of step S306, the coordinate values x, y, z in the
次に、3次元画像処理装置42は、ステップS308にて、ステップS304の処理によって計算したカメラ座標系の基準球80の各測定位置ごとの中心座標(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)と、ステップS308の処理によって計算したアーム座標系の基準球80の中心座標(x’1,y’1,z’1),(x’2,y’2,z’2),(x’3,y’3,z’3)とを用いて、カメラ座標系からアーム座標系への座標変換関数CAを計算する。
Next, in step S308, the three-dimensional
この座標変換関数CAの計算の前に、この種の座標変換について簡単に説明しておく。まず、X−Y−Z座標からなる第1座標系と、同第1座標系をX軸、Y軸およびZ軸回りにそれぞれxθ,yθ,zθだけ回転させるとともに、同第1座標系の原点をX軸方向、Y軸方向およびZ軸方向にそれぞれa,b,cだけ移動させた第2座標系を想定する。この場合も、第1座標系における一点の座標を(x,y,z)とし、第2座標系における同一点の座標を(x’,y’,z’)すると、下記数5が成立するとともに、同数5中の行列Mは下記数6によって表される。 Prior to the calculation of this coordinate conversion function CA, this type of coordinate conversion will be briefly described. First, the first coordinate system composed of XYZ coordinates and the first coordinate system are rotated by xθ, yθ, zθ around the X, Y, and Z axes, respectively, and the origin of the first coordinate system Is assumed to be a second coordinate system that is moved by a, b, and c in the X-axis direction, the Y-axis direction, and the Z-axis direction, respectively. Also in this case, if the coordinate of one point in the first coordinate system is (x, y, z) and the coordinate of the same point in the second coordinate system is (x ′, y ′, z ′), the following equation 5 is established. In addition, the matrix M in the equation 5 is represented by the following equation 6.
このステップS308の座標変換関数CAの計算は、上記数5および数6中の行列値g11,g12,g13,g21,g22,g23,g31,g32,g33および行列値a,b,cを計算することを意味する。この場合、本実施形態のカメラ座標系が第1座標系に対応するとともに、アーム座標系が第2座標系に対応する。したがって、各測定位置ごとのカメラ座標系の基準球80の各中心座標(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)と、アーム座標系の基準球80の中心座標(x’1,y’1,z’1),(x’2,y’2,z’2),(x’3,y’3,z’3)とを上記数5に適用すると、下記数7〜9の関係が成立する。
The calculation of the coordinate transformation function CA in step S308 is performed by calculating the matrix values g 11 , g 12 , g 13 , g 21 , g 22 , g 23 , g 31 , g 32 , g 33 and the matrix in the above formulas 5 and 6. Means that the values a, b, c are calculated. In this case, the camera coordinate system of the present embodiment corresponds to the first coordinate system, and the arm coordinate system corresponds to the second coordinate system. Therefore, the center coordinates (x1, y1, z1), (x2, y2, z2), (x3, y3, z3) of the
上記数7を変形すると、下記数10の連立方程式が成立する。
When the above Equation 7 is modified, the following simultaneous equations of
ここで、定点座標(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)を含む平面の法線ベクトルを(α,β,γ)とし、定点座標(x’1,y’1,z’1),(x’2,y’2,z’2),(x’3,y’3,z’3)を含む平面の法線ベクトルを(α’,β’,γ’)とすると、2つの法線ベクトルの大きさと向きが同じであれば下記数11が成立する。同数11中の行列Mは、上記数6によって表される。 Here, the normal vector of the plane including the fixed point coordinates (x1, y1, z1), (x2, y2, z2), (x3, y3, z3) is (α, β, γ), and the fixed point coordinates (x ′ 1, y′1, z′1), (x′2, y′2, z′2), (x′3, y′3, z′3) and the normal vector of the plane including (α ′, If β ′ and γ ′), the following equation 11 is established if the magnitudes and directions of the two normal vectors are the same. The matrix M in the equation 11 is expressed by the above equation 6.
定点座標(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)を含む平面の法線ベクトルを(x2,y2,z2)から(x1,y1,z1)に向かうベクトルと、(x3,y3,z3)から(x2,y2,z2)に向かうベクトルの外積により成立するベクトルとすると、前記法線ベクトル(α,β,γ)は下記数12によって表される。 The normal vector of the plane including the fixed point coordinates (x1, y1, z1), (x2, y2, z2), (x3, y3, z3) is directed from (x2, y2, z2) to (x1, y1, z1) The normal vector (α, β, γ) is expressed by the following equation (12), assuming that the vector is a vector formed by the outer product of the vector and the vector from (x3, y3, z3) to (x2, y2, z2).
同様に、前記ベクトル(α’,β’,γ’)は下記数13によって表される。 Similarly, the vector (α ′, β ′, γ ′) is expressed by the following equation (13).
上記数12および上記数13を上記数11に代入すると、下記数14が成立する。 Substituting Equation 12 and Equation 13 into Equation 11 yields Equation 14 below.
上記数14の1番目の式を上記数10に加えれば、下記数15の連立方程式となる。
If the first equation of the above equation 14 is added to the
この上記数15の連立方程式を解くことにより、行列値g11,g12,g13を計算することができる。また、上記数8および数9に関しても、上記数10の連立方程式のように変形し、上記数14の2番目の式および3番目の式をそれぞれ加えた連立方程式を解くことにより行列値g21,g22,g23および行列値g31,g32,g33を計算できる。そして、これらの計算した行列値を上記数7〜9に代入すれば、行列値a,b,cを計算できる。これにより、カメラ座標系における座標値(x,y,z)を、アーム座標系における座標値(x’,y’,z’)に変換するための座標変換関数CAが計算される。
The matrix values g 11 , g 12 , and g 13 can be calculated by solving the simultaneous equations of Formula 15. Also, the above equations 8 and 9 are also transformed into the simultaneous equations of the
次に、ステップS310にて、前記計算した座標変換関数CAの行列値g11,g12,g13,g21,g22,g23,g31,g32,g33,a,b,cを3次元画像処理装置42のメモリ装置内に記憶した後、ステップS312にて、この座標変換関数計算プログラムの実行を終了する。そして、作業者は、基台10上から基準球80を取り除いて座標変換関数CAの取得作業を終了する。
Next, at step S310, the matrix value g 11 of a coordinate transformation function CA that the calculated, g 12, g 13, g 21,
次に、作業者は、コントローラ41によって指示される第4アーム26の先端位置と、実際の第4アーム26の先端位置との差を補正するための補正データ群を取得する作業を行う。具体的には、作業者は、基台10上の適当な位置に校正治具50を載置するとともに支柱54を上下方向に伸縮させて、校正用物体支持ベース52の高さを前記校正用物体情報取得プログラムのS104で設定した高さのいずれかの高さに設定する。そして、作業者は、入力装置43を操作して、図9に示す補正データ群取得プログラムの実行を3次元画像処理装置42に指示する。この指示に応答して、3次元画像処理装置42は、補正データ群取得プログラムの実行をステップS400にて開始して、ステップS402にて、基準位置の設定を行う。
Next, the operator performs an operation of acquiring a correction data group for correcting a difference between the tip position of the
この基準位置の設定において作業者は、図10に示すように、校正治具50におけるN組の球体セット53のうち任意の球体セット53を基準球体セットとして選択し、入力装置43を操作して同基準球体セットに対向する位置に3次元形状測定装置30を位置決めさせるとともに、同位置を基準位置として設定する。これにより、3次元画像処理装置42は、第4アーム26の先端部の予め決められた位置を表す座標、すなわちアーム座標系の原点を基準座標系によって表した座標を基準位置として記憶するとともに、同アーム座標系の各座標軸の基準座標系の座標軸に対する向きを表す回転角を基準回転角として記憶する。また、作業者は、入力装置43を操作して、3次元画像処理装置42に記憶した各球体セット53ごとの校正用物体情報のうち、基準球体セットとして選択した球体セットに関する校正用物体情報の番号(1〜N)を基準球体セット情報として指定する。
In setting the reference position, as shown in FIG. 10, the operator selects an arbitrary sphere set 53 among the N sphere sets 53 in the
次に、3次元画像処理装置42は、ステップS404にて、基準球体セットを3次元測定する。3次元画像処理装置42は、作業者による測定開始の指示に応答して3次元形状測定装置30の作動を制御して、同3次元形状測定装置30に対向する基準球体セットの測定を開始する。3次元形状測定装置30は、測定対象空間内に位置する基準球体セットの3次元形状を表す情報を3次元画像処理装置42に出力する。すなわち、基準球体セットの表面を微小エリアずつに分割した各分割エリア位置を表すX−Y−Z座標に関する情報(具体的には、傾きθx,θyおよび距離Lz)を3次元画像処理装置42に出力する。そして、3次元画像処理装置42は、同ステップS404にて、前記ステップS302と同様にして、3次元形状測定装置30から出力されたX−Y−Z座標に関する情報に基づいて、基準球体セットの3次元形状を表す立体形状データ群からなる3次元画像データを計算する。この場合、3次元画像データは、3次元形状測定装置30に関する座標系、すなわちカメラ座標系によって表されている。なお、この3次元画像データには、基準球体セットのほかにワイヤー53c,53dや他の球体セット53など、基準球体セットの周辺に存在する他の物体の表面形状を表す3次元画像データも含まれている。
Next, in step S404, the three-dimensional
次に、3次元画像処理装置42は、ステップS406にて、前記ステップS404にて計算された3次元画像データの中から校正用物体、すなわち球体51の3次元形状を表す3次元画像データを抽出する。具体的には、図11に示す校正用物体抽出サブプログラムの実行をステップS500にて開始して、ステップS502にて、校正用物体の特徴の入力を待つ。作業者が入力装置43を介して校正用物体の特徴を入力すると、同入力情報は3次元画像処理装置42に供給される。この場合、校正用物体の特徴とは、校正用物体である球体51が球体であることを表すデータである。なお、校正用物体が球であることが既に入力されていれば、このステップS502の処理をスキップさせてもよい。
Next, in step S406, the three-dimensional
次に、3次元画像処理装置42は、ステップS504にて、前記入力された校正用物体の特徴およびステップS402にて入力した球体セット53に関する番号に対応する校正用物体情報の中の球体の半径を用いて、単位ブロックおよび探索ブロックのサイズ設定処理を実行する。なお、本実施形態においては、球体の半径は12.5mm程度の大きさ、すなわち、直径25mm程度の大きさになっている。単位ブロックは、校正用物体である球体51の存在位置を特定するために探索ブロックを移動させる最小のブロックであり、本実施形態では立方体に形成されているが、直方体などの他の形状でもよい。また、単位ブロックのサイズは、球体51の一部が存在することを確認可能である程度に小さく設定される。探索ブロックは、球体51をその内部に包含する位置を特定するために利用されるもので、本実施形態では立方体に形成されるが、直方体などの他の形状でもよい。また、この探索ブロックのサイズは、球体51のすべてを包含できるとともに、なるべく小さく設定される。ただし、この球体51を包含できるとは、球体51の一部でも含む単位ブロックのすべてを含むことを意味する。
Next, in step S504, the three-dimensional
なお、本実施形態においては、球体51の直径が25mm程度の大きさであることから、単位ブロックのサイズとして立方体の1辺の長さ4mmが設定されるとともに、探索ブロックのサイズとして立方体の1辺の長さ32mmが設定される。これによれば、探索ブロックは、8×8×8個の単位ブロックを含むことになり、直径25mmのうちの24mmが6個の単位ブロックに完全に包含され、残りの1mmが1個または2個の単位ブロックに含まれることになる。図12は、単位ブロックと探索ブロックの関係を斜視図により示している。また、このステップS504において、単位ブロックおよび探索ブロックのサイズを設定するようにしたが、球体51の変更がなければ予め設定されている単位ブロックおよび探索ブロックのサイズをそのまま利用すればよいので、このステップS504の処理は不要である。
In this embodiment, since the diameter of the
次に、3次元画像処理装置32は、ステップS506にて探索領域のブロック化処理を実行する。この探索領域のブロック化処理は、測定対象空間内で球体51の含まれる可能性のある領域を単位ブロックで分割する処理である。基本的には、球体51に関する3次元画像データに基づき、測定対象空間内のうち3次元画像データが存在する空間を単位ブロックで立体的に分割する。分割は、前記X,Y,Z座標の各座標軸に沿って単位ブロックを並べていく方法で行う。図13は図10の測定対象空間内に置かれた基準球体セットに関する3次元画像データに基づき本処理を行った結果を示す2次元の概念図である。なお、図13は理解しやすくするため、単位ブロックの大きさを実際の大きさより大きく示している。図13中、二点鎖線は測定対象空間内の境界(測定対象領域)を示している。そして、分割後の各単位ブロックBLはX,Y,Z方向の位置i,j,kを用いた座標(i,j,k)によって表される。ただし、i,j,kの各値は整数である。なお、このステップS506の探索領域のブロック化処理においては、球体51の存在しない連続領域、すなわち球体51に関する3次元画像データの含まれない連続領域を単位ブロックによる分割領域外としたが、測定対象領域の全域に渡って単位ブロックによる分割を行うようにしてもよい。
Next, the three-dimensional image processing apparatus 32 executes search area blocking processing in step S506. The search area blocking process is a process of dividing an area that may contain the
次に、3次元画像処理装置42は、ステップS508にて、前記ステップS506の処理によって分割した各単位ブロックごとに3次元画像データが所定個数以上あるかを調べる。そして、3次元画像データが所定個数以上ある単位ブロックを抽出する。図14(A)〜(D)は、抽出された単位ブロックを3次元形状測定装置30に視点をおいてZ軸方向から見たときの概念図である。ただし、外枠は探索ブロックに対応しており、ハッチング部分が抽出された単位ブロックである。
Next, in step S508, the three-dimensional
次に、3次元画像処理装置32は、ステップS510にて、球体51を含む可能性のある探索ブロック位置の検出を行う。この探索ブロック位置の検出処理においては、前記ステップS506の処理により単位ブロックに分割した領域にて、前記ステップS504の処理により設定した探索ブロックを単位ブロックを単位として、X軸、Y軸およびZ軸方向に順次移動させる。そして、各移動ごとに移動後の探索ブロック内に含まれるとともに前記ステップS508の処理によって抽出された単位ブロックの個数を計算する。前記単位ブロックの数が所定の範囲内であれば、該当する探索ブロック位置であるとして同位置が検出される。図15の(A)〜(D)は、この探索ブロックの移動の状態を2次元的に示す概念図である。
Next, the three-dimensional image processing apparatus 32 detects a search block position that may include the
この場合、球体51は球体であるので、3次元形状測定装置30と対向する側に位置して3次元画像データが得られる箇所と、3次元形状測定装置30と対向しない側に位置して3次元画像データが得られない箇所の割合は、ほぼ同じであるので、球体の直径が特定されれば探索ブロック内に含まれる単位ブロックの数は設定される。その結果、図14(A)に示す球体が球体51であれば、図14(B)に示すような球体51より直径の小さな球体を、単位ブロックの数が所定範囲外であるとして除外することができる。
In this case, since the
ただし、図14(C)に示すような球体51より直径の大きな球体は、探索ブロックの位置によって抽出された単位ブロックの数が所定の範囲内になることがあるため、該当する探索ブロックの位置として検出される。また、図11(D)に示すように球体51以外の物体である枠体52aが探索ブロック内に含まれる場合、単位ブロックの数が所定の範囲内であるとして検出される場合もある。このため、3次元画像データを所定数以上含む単位ブロックの数に代えまたは加えて、同単位ブロックの分布に基づいて該当探索ブロック位置の抽出処理を行えば球体51以外の物体を除外することができる。
However, in the case of a sphere having a diameter larger than the
具体的には、図14に示すように探索ブロックを3次元形状測定装置30から見て(すなわち、Z軸方向からみて)、Z軸方向のいずれかの面で単位ブロックが抽出された箇所を、X,Y軸の平面内で抽出された単位ブロックとして、X,Y軸の平面の単位ブロック各列で抽出された数が設定数の範囲内であることを条件に探索ブロック位置を検出すればよい。このようにすれば、図14(A)が球体51を示すとすれば、図14(B)(C)に示すような球体51とは異なる直径の球体や図14(D)に示すような球体51以外の枠体52aなどのような物体は、X,Y軸の平面の単位ブロック各列で抽出された数が設定数の範囲外であるとして除外することができる。さらに、前記処理において検出された物体を、X,Y軸の平面の単位ブロックにおける各列のX,Z平面またはY,Z平面で抽出した単位ブロックが、円状に分布していることを条件にして追加の検出を行えば、円柱または円錐で直径が等しく、中心軸がZ軸方向に向いているため検出されたものを除外することができる。
Specifically, as shown in FIG. 14, when the search block is viewed from the three-dimensional shape measuring apparatus 30 (that is, viewed from the Z-axis direction), the location where the unit block is extracted on any surface in the Z-axis direction As a unit block extracted in the plane of the X and Y axes, the search block position is detected on the condition that the number extracted in each column of the unit blocks in the plane of the X and Y axes is within the set number range. That's fine. In this way, if FIG. 14A shows a
次に、3次元画像処理装置42は、ステップS512にて、前記ステップS510の処理によって検出した位置の探索ブロック内に含まれる3次元画像データが、球体51の形状に合致するか否かを判定し、合致すると判定したとき探索ブロック内の3次元画像データを抽出する3次元画像データ抽出処理を行う。
Next, in step S512, the three-dimensional
具体的には、該当する探索ブロック内のすべての3次元画像データ(X,Y,Z座標値)を、球体を表す式である上記数1の左辺のX,Y,Zにそれぞれ代入し、最小2乗法を用いて未知数a,b,c,dを計算する。この場合、a,b,cは、3次元画像データにより表された球体中心のx,y,z座標値をそれぞれ表し、dは球体の半径を表す。次に、前記該当する探索ブロック内の各3次元画像データ(X,Y,Z座標値)ごとに、同3次元画像データ(X,Y,Z座標値)と前記計算した値a,b,cを前記数1に代入して、各3次元画像データごとに値d(球体中心からの距離)を計算する。そして、前記計算した値d(球の半径)と前記入力した球体51の直径を「2」で除した値、すなわち球体51の半径との差が所定の判別値以内であり、かつ各3次元画像データの球体中心からの距離の偏差が所定の判別値以内であれば、前記探索ブロック内の3次元画像データは合致するとして、同3次元画像データに基づく前記球体中心(X,Y,Z座標値)および球の半径dを抽出球体データとして記憶する。一方、前記差または偏差が所定の判別値以内でなければ、前記探索ブロック内の3次元画像データは合致しないとして、抽出球体データの記憶はしない。このステップS512の処理後、ステップS514にて、校正用物体抽出サブプログラムの実行を終了して、再び補正データ群取得プログラムのステップS408に戻る。
Specifically, all the three-dimensional image data (X, Y, Z coordinate values) in the corresponding search block are respectively substituted into X, Y, Z on the left side of the
次に、3次元画像処理装置42は、ステップS408にて、前記記憶した抽出球体データの中から基準球体セットを構成する3つの球体51に関する抽出球体データを抽出する。この基準球体セットを抽出する処理は、次のサブステップ1〜3の処理からなる。
Next, in step S408, the three-dimensional
サブステップ1:3次元画像処理装置42に記憶した基準球体セット情報における基準球体セットを構成する3つの球体51の各半径RmA,RmB,RmCと所定の判別値内で一致する球の半径dを有する抽出球体データをそれぞれ抽出する。この場合、前記したように、各球体51の直径は略25mmに設定されているが、正確には各球体52の直径は異なる。このため、基準球体セット情報における3つの各球体51の半径RmA,RmB,RmCと所定の判別値内で一致する球の半径dを有する抽出球体データを抽出すれば、基準球体セットを構成する3つの球体51にそれぞれ対応する抽出球体データを抽出することができる。
Sub-step 1: The spheres that match the radii R mA , R mB , R mC of the three
サブステップ2:サブステップ1にて抽出した抽出球体データにおける各球体中心(X,Y,Z座標値)を用いて、各抽出球体データが表す球体51の中心間距離Lをそれぞれ計算し、同計算した中心間距離Lが所定の範囲内にある2つの球体51の組み合わせを抽出する。ここで所定の範囲内とは、球体セット53を構成する3つの球体51の各中心間距離と略一致する距離の範囲である。これにより、他の球体セット53の間での球体51の組み合わせを除くことができる。そして、抽出した2つの球体51の組み合わせの中から、基準球体セット情報における各球体51の3つの各中心間距離LmAB,LmBC,LmCAと所定の判別値内で一致する中心間距離Lc1,Lc2,Lc3(「c」はカメラ座標系を表す)を有する2つの球体51の組み合わせをさらに抽出する。これにより基準球体セットを構成する3つの球体51をそれぞれ表す3つの抽出球体データが抽出される。
Sub-step 2: The center-to-center distance L of the
サブステップ3:前記抽出した3つの各抽出球体データが基準球体セットにおける3つの球体51のうちのどれに相当するかを特定し、同特定した3つの抽出球体データを基準球体データとして記憶する。各抽出球体データの特定は、同抽出球体データにおける3つの球の各半径dおよび同各抽出球体データが表す球体51の中心間距離Lc1,Lc2,Lc3を用いて特定する。なお、抽出球体データにおける3つの球の球体中心座標CcA,CcB,CcCが、本発明に係る基準校正用物体直線定義パラメータに相当する。
Sub-step 3: Specify which of the three
次に、3次元画像処理装置42は、ステップS410にて、3次元形状測定装置30に関する座標系であるカメラ座標系によって表された座標値を、同カメラ座標系の各座標軸の向きを3次元測定機60に関する座標系である測定機座標系の各座標軸の向きに一致させ原点座標をアーム座標系の原点座標にした座標系であるCM座標系の座標値に座標変換するための座標変換関数GdCMを計算する。具体的には、前記ステップS408にて抽出した基準球体セットを構成する3つの各球体51をそれぞれ表す前記基準球体データにおける各球体51の球体中心座標CcA,CcB,CcCの各座標値を(CXcA,CYcA,CZcA)(CXcB,CYcB,CZcB)(CXcC,CYcC,CZcC)とし、この球体中心座標CcA,CcB,CcCにそれぞれ対応する3次元画像処理装置42に記憶された基準球体セット情報における各球体51の各球体中心座標CmA,CmB,CmCの各座標値を(CXmA,CYmA,CZmA)(CXmB,CYmB,CZmB)(CXmC,CYmC,CZmC)とすれば、球体中心CmAから球体中心CmBに向かうベクトルVCmAB、球体中心CmAから球体中心CmCに向かうベクトルVCmAC、球体中心CcAから球体中心CcBに向かうベクトルVCcAB、球体中心CcAから球体中心CcCに向かうベクトルVCcACは、それぞれ下記数16に示す式によって表される。
Next, in step S410, the three-dimensional
上記数16におけるベクトルVCmABとベクトルVCmACとの外積によるベクトルVCmおよびベクトルVCcABとベクトルVCcACとの外積によるベクトルVCcは各座標系において下記数17に示す式によって表される。 The vector V Cm by the outer product of the vector V CmAB and the vector V CmAC in the above equation 16 and the vector V Cc by the outer product of the vector V CcAB and the vector V CcAC are expressed by the following equation 17 in each coordinate system.
また、カメラ座標系におけるベクトル(αC,βC,γC)を測定機座標系におけるベクトル(αM,βM,γM)に変換する式は、下記数18に示す式によって表される。なお、下記数18においてMは座標変換関数である。 Further, an equation for converting a vector (α C , β C , γ C ) in the camera coordinate system into a vector (α M , β M , γ M ) in the measuring machine coordinate system is expressed by the following equation (18). . In the following formula 18, M is a coordinate conversion function.
上記数18に示した式における(αC,βC,γC)に上記数16および数17に示した式における各ベクトルVCcAB,VCcAC,VCcの座標成分を代入し、上記数18に示した式における(αM,βM,γM)に上記数16および数17に示した式における各ベクトルVCmAB,VCmAC,VCmの座標成分を代入すると、下記数19に示すように3つの連立方程式が成立する。 Substituting the coordinate components of the vectors V CcAB , V CcAC , and V Cc in the equations shown in the equations 16 and 17 into (α C , β C , γ C ) in the equation shown in the equation 18, the equation 18 Substituting the coordinate components of the vectors V CmAB , V CmAC , and V Cm in the equations shown in Equation 16 and Equation 17 into (α M , β M , γ M ) in the equation shown in FIG. There are three simultaneous equations.
上記数19に示した3つの連立方程式を解くことにより座標変換関数Mの各値g11〜g33を計算することができる。この座標変換関数Mが、カメラ座標系によって表された座標値をCM座標系による座標値に座標変換するための座標変換関数GdCMにおける座標軸の回転部分MdCMである。そして、原点座標の移動部分は、前記座標変換関数計算プログラムの実行により計算した座標変換関数CAの原点座標の移動部分(上記数5におけるa,b,c)と同じである。ただし、この場合の座標変換は、原点座標の移動を行った後、座標軸の回転を行うため、座標変換関数GdCMは上記数3により表される式である。
The values g 11 to g 33 of the coordinate transformation function M can be calculated by solving the three simultaneous equations shown in the above equation 19. This coordinate conversion function M is the rotation part Md CM of the coordinate axis in the coordinate conversion function Gd CM for converting the coordinate value represented by the camera coordinate system into the coordinate value by the CM coordinate system. The origin coordinate movement part is the same as the origin coordinate movement part (a, b, c in Equation 5 above) of the coordinate conversion function CA calculated by executing the coordinate conversion function calculation program. However, the coordinate transformation in this case, after the movement of the origin coordinate, for performing rotation of the coordinate axes, the coordinate transformation function Gd CM is Ru formula der represented by
次に、3次元画像処理装置42は、ステップS412にて、CM座標系における基準定点座標TdCMを計算する。基準定点座標TdCMは、基準球体セットを構成する3つの球体51の配置上の中心位置を表す基準定点座標TdをCM座標系によって表した座標値である。この基準定点座標Tdをカメラ座標系によって表した基準定点座標TdCは、下記数20に示すように、3つの球体51の各球体中心座標CcA,CcB,CcCの各座標値(CXcA,CYcA,CZcA)(CXcB,CYcB,CZcB)(CXcC,CYcC,CZcC)を各座標値ごとに平均して計算することができる。
Next, three-dimensional
そして、上記数20に示す式によって計算された定点座標TdCを前記ステップS410にて計算された座標変換関数GdCMにより座標変換することによりCM座標系における基準定点座標TdCMを計算することができる。次に、3次元画像処理装置42は、ステップS414にて、基準球体セットを構成する3つの球体51の各球体中心座標の座標値を多関節ロボットに関する座標系である基準座標系による座標値に座標変換する。具体的には、基準球体データにおける3つの球体51の各球体中心座標CcA,CcB,CcCの座標値を前記座標変換関数計算プログラムの実行により計算した座標変換関数CAにより座標変換してアーム座標系によって表された各球体中心座標CaA,CaB,CaC(「a」はアーム座標系を表す)の座標値に座標変換する。そして、3次元画像処理装置42は、アーム座標系によって表された各球体中心座標CaA,CaB,CaCの座標値を基準座標系における座標値に変換する。この場合、基準座標系におけるアーム座標系の原点の座標および基準座標系の座標軸に対するアーム座標系の各座標軸の向きを表す回転角は、前記ステップS402で記憶されているため、3次元画像処理装置42は、この原点の座標を前記数3のa,b,cに、回転角を前記数4のα,β,γに代入し、アーム座標系によって表された球体中心の座標を前記数3のx’,y’,z’に代入して前記数3のx,y,zを計算することで基準座標系における各球体中心座標CdA,CdB,CdC(「d」は基準座標系を表す)を計算することができる。
Then, the reference fixed point coordinates Td CM in the CM coordinate system can be calculated by performing coordinate conversion of the fixed point coordinates Td C calculated by the equation shown in the
次に、3次元画像処理装置42は、ステップS416にて、多関節ロボットに関する座標系である基準座標系によって表された座標値を、同基準座標系の各座標軸の向きを3次元測定機60に関する座標系である測定機座標系の各座標軸の向きに一致させた座標系であるDM座標系の座標値に座標変換するための座標変換関数GDMを計算する。具体的には、前記ステップS414にて計算された基準座標系における基準球体セットを構成する3つの球体51の各球体中心座標CdA,CdB,CdCの各座標値(CXdA,CYdA,CZdA)(CXdB,CYdB,CZdB)(CXdC,CYdC,CZdC)を上記数16〜数19における各球体51の球体中心座標CcA,CcB,CcCの各座標値(CXcA,CYcA,CZcA)(CXcB,CYcB,CZcB)(CXcC,CYcC,CZcC)とし、この球体中心座標CdA,CdB,CdCにそれぞれ対応する3次元画像処理装置42に記憶された基準球体セット情報における各球体51の各球体中心座標CmA,CmB,CmCの各座標値を(CXmA,CYmA,CZmA)(CXmB,CYmB,CZmB)(CXmC,CYmC,CZmC)とすれば、前記ステップS410における座標変換関数GdCMの座標軸の回転部分の計算と同様に、上記数16〜数19を用いて座標変換関数GDMを計算することができる。
Next, in step S416, the three-dimensional
次に、3次元画像処理装置42は、ステップS418にて、DM座標系における基準定点の座標Tddmを計算する。具体的には、前記ステップS414にて基準座標系に座標変換した各球体中心座標CdA,CdB,CdCの各座標値(CXdA,CYdA,CZdA)(CXdB,CYdB,CZdB)(CXdC,CYdC,CZcC)を上記数20と同様の下記数21に示す式に代入して基準座標系における基準定点の座標Tddを計算する。
Next, in step S418, the three-dimensional
そして、上記数21に示す式によって計算された基準定点の座標Tddに前記ステップS416にて計算された座標変換関数GDMを乗算することによりDM座標系における基準定点の座標Tddmを計算することができる。なお、この場合、基準座標系における基準定点の座標Tddは後述する処理において用いるため、DM座標系における基準定点の座標Tddmとともに記憶される。
Then, to calculate the coordinates Td dm reference fixed point in the DM coordinate system by multiplying the calculated coordinates transformation function G DM in the in coordinate Td d step S416 of the reference fixed point calculated by the equation shown in the
次に、3次元画像処理装置42は、ステップS420にて、次の測定対象となる球体セットの指定を待つ。作業者は、入力装置43を操作して、次の測定対象となる球体セット53を表す球体セットの番号i(i=1〜N)(図5参照)を入力する。この場合、次の測定対象として指定される球体セット53は、基準球体セット以外の球体セットであり、基準球体セットに対する位置関係を測定するための被測定対象球体セットである。そして、3次元画像処理装置42は、ステップS422にて、前記ステップS420にて指定された被測定対象球体セットに対向する位置に3次元形状測定装置30を移動させる。この場合、3次元形状測定装置30を移動させる位置(すなわち、アーム支持機構20の先端部を移動させる位置)の基準座標系における座標値は、次のサブステップ1〜サブステップ3の処理によって計算される。
Next, in step S420, the three-dimensional
サブステップ1:DM座標系における被測定対象球体セットの定点座標Tndm(n=1)を計算する。具体的には、下記数22に示すように、3次元画像処理装置42に記憶されている校正用物体情報のうち、前記被測定対象球体セットに対応する定点座標Tmの座標値(TXm,TYm,TZm)と、同校正用物体情報の中から指定された基準球体セット情報における定点座標Tdmの各座標値(TdXm,TdYm,TdZm)との差を、前記ステップS418にて計算したDM座標系における基準定点の座標Tddmの各座標値(TdXdm,TdYdm,TdZdm)に加算して計算する。なお、この場合、3次元画像処理装置42に記憶されている定点座標Tmおよび定点座標Tdmは測定機座標系によって表され、定点座標T1dmはDM座標系によって表されているが、測定機座標系とDM座標系とは座標軸の向きが一致しているため、これらの座標値を加減算して計算することができる。
Substep 1: Calculate the fixed point coordinates Tn dm (n = 1) of the sphere set to be measured in the DM coordinate system. Specifically, as shown in the following
サブステップ2:DM座標系によって表された前記定点座標T1dmを基準座標系によって表された定点座標T1dに座標変換する。具体的には、定点座標T1dmに前記ステップS416にて計算した座標変換関数GDMの逆関数(逆行列)である座標変換関数GMDを乗算して変換する。ここで、座標変換関数GDMは、基準座標系によって表された座標値を同基準座標系における各座標軸の向きを測定機座標系における各座標軸の向きに一致させたDM座標系の座標値に座標変換するための変換関数であり、この座標変換関数GDMの逆関数である座標変換関数GMDは、DM座標系によって表された座標値を元の基準座標系による座標値に座標変換するための変換関数である。 Substep 2: a coordinate conversion of fixed point coordinates T1 d represented by the reference coordinate system the fixed point coordinates T1 dm represented by DM coordinate system. More specifically, the conversion by multiplying the coordinate transformation function G MD is an inverse function (inverse) of the coordinate transformation function G DM calculated in the step S416 to the fixed point coordinates T1 dm. Here, the coordinate transformation function G DM converts the coordinate value represented by the reference coordinate system into the coordinate value of the DM coordinate system in which the direction of each coordinate axis in the reference coordinate system is matched with the direction of each coordinate axis in the measuring machine coordinate system. a conversion function for coordinate transformation, the coordinate transformation function G MD is an inverse function of the coordinate transformation function G DM will coordinate transformation coordinate value expressed by the DM coordinate system into coordinate values by the original reference coordinate system Is a conversion function.
サブステップ3:3次元形状測定装置30を移動させる基準座標系における座標値(X1d,Y1d,Z1d)を計算する。具体的には、下記数23に示すように、前記サブステップ2にて座標変換した基準座標系における次の測定対象である球体セット53の定点座標T1dの各座標値(T1Xd,T1Yd,T1Zd)と、前記ステップS418にて記憶した基準座標系における基準定点座標Tddの各座標値(TdXd,TdYd,TdZd)との差を、前記ステップS402にて3次元画像処理装置42に記憶したアーム座標系の原点の基準座標系における座標値、すなわち、基準球体セットを測定した際におけるアーム座標系の原点の基準座標系での位置(基準位置)座標BPdの各座標値(BPXd,BPYd,BPZd)に加算して計算する。なお、この場合、定点座標T1d、基準定点座標Tddおよび基準位置座標BPdはいずれも基準座標系によって表されているため座標値の加減算により計算することができる。
Sub-step 3: The coordinate values (X1 d , Y1 d , Z1 d ) in the reference coordinate system for moving the three-dimensional
次に、3次元画像処理装置42は、ステップS424にて、被測定対象球体セットの3次元測定を行う。この被測定対象球体セットの3次元測定は前記ステップS404と同様である。すなわち、3次元画像処理装置42は、作業者による測定開始の指示に応答して3次元形状測定装置30の作動を制御して、同3次元形状測定装置30に対向する球体セット53(被測定対象球体セット)の測定を開始する。3次元形状測定装置30は、測定対象空間内に位置する球体セット53の3次元形状を表す情報を3次元画像処理装置42に出力する。そして、前記ステップS302と同様にして、3次元形状測定装置30から出力されたX−Y−Z座標に関する情報に基づいて、球体セット53の3次元形状を表す立体形状データ群からなる3次元画像データを計算する。なお、この3次元画像データはカメラ座標系によって表されている。また、3次元画像データには、被測定対象球体セットのほかにワイヤー53c,53dや他の球体セット53など、測定対象である球体セット53の周辺に存在する他の物体の表面形状を表す3次元画像データも含まれている。
Next, in step S424, the three-dimensional
次に、3次元画像処理装置42は、ステップS426にて、前記ステップS424にて計算された3次元画像データの中から球体51の3次元形状を表す3次元画像データを抽出する。この球体51を表す3次元画像データの抽出処理は、前記ステップ406の処理と同様に図11に示す校正用物体抽出サブプログラムを実行することにより行われるため説明を省略する。なお、校正用物体抽出サブプログラムにおけるステップS502およびS504においては、前記ステップS406にて実行された校正用物体の特徴、単位ブロックサイズおよび探索ブロックサイズを用いればよいため、同ステップS502およびステップS504の各ステップをスキップさせる。このステップS426の処理により、測定対象である球体セット53を構成する3つの球体51を含む球体51の3次元形状を表す3次元画像データが抽出球体データとして抽出される。
Next, in step S426, the three-dimensional
次に、3次元画像処理装置42は、ステップS428にて、前記抽出した抽出球体データの中から被測定対象球体セットを構成する3つの球体51に関する抽出球体データを抽出する。この被測定対象球体セットを抽出する処理は、前記ステップS408と同様に、次のサブステップ1〜3の処理からなる。
Next, in step S428, the three-dimensional
サブステップ1:3次元画像処理装置42に記憶した校正用物体情報のうち、前記ステップ420にて入力した球体セット53、すなわち被測定対象球体セットを構成する3つの球体51の各半径RmA,RmB,RmCと所定の判別値内で一致する球の半径dを有する抽出球体データをそれぞれ抽出する。
Sub-step 1: Among the calibration object information stored in the three-dimensional
サブステップ2:サブステップ1にて抽出した抽出球体データにおける球体中心(X,Y,Z座標値)を用いて、各抽出球体データが表す球体51の中心間距離Lをそれぞれ計算し、同計算した中心間距離Lが所定の範囲内にある2つの球体51の組み合わせを抽出する。ここで所定の範囲とは、球体セット53を構成する3つの球体51の各中心間距離と略一致する距離の範囲である。これにより、他の球体セット53の間での球体51の組み合わせを除くことができる。そして、抽出した2つの球体51の組み合わせの中から、被測定対象球体セットにおける各球体51間の3つの各中心間距離LmAB,LmBC,LmCAと所定の判別値内で一致するする中心間距離Lc1,Lc2,Lc3を有する2つの球体51の組み合わせをさらに抽出する。これにより被測定対象球体セットを構成する3つの球体51をそれぞれ表す3つの抽出球体データが抽出される。
Sub-step 2: Using the sphere center (X, Y, Z coordinate values) in the extracted sphere data extracted in
サブステップ3:前記抽出した3つの各抽出球体データが被測定対象球体セットにおける3つの球体51のうちのどれに相当するかを特定し、同特定した3つの抽出球体データを被測定対象球体データとして記憶する。各抽出球体データの特定は、同抽出球体データにおける3つの球の各半径dおよび同各抽出球体データが表す球体51の中心間距離Lc1,Lc2,Lc3を用いて特定する。なお、この抽出球体データにおける3つの球の球体中心座標CcA,CcB,CcCが、本発明に係る被測定対象校正用物体直線定義パラメータに相当する。
Sub-step 3: It is specified which of the three extracted sphere data the three extracted sphere data correspond to the three
次に、3次元画像処理装置42は、ステップS430にて、座標変換関数GsCMを計算する。座標変換関数GsCMは、3次元形状測定装置30に関する座標系であるカメラ座標系によって表された座標値を同カメラ座標系の各座標軸の向きを3次元測定機60に関する座標系である測定機座標系の各座標軸の向きに一致させ原点座標をアーム座標系の原点座標にした座標系であるCM座標系の座標値に座標変換するための座標変換関数であり、前記ステップS410における座標変換関数GdCMと同様の座標変換関数である。この場合、前記ステップS428にて抽出された被測定対象球体データにおける各球体51の球体中心座標CcA,CcB,CcCの各座標値を(CXcA,CYcA,CZcA)(CXcB,CYcB,CZcB)(CXcC,CYcC,CZcC)とし、この球体中心座標CcA,CcB,CcCにそれぞれ対応する3次元画像処理装置42に記憶された校正用物体情報における各球体51の各球体中心座標CmA,CmB,CmCの各座標値を(CXmA,CYmA,CZmA)(CXmB,CYmB,CZmB)(CXmC,CYmC,CZmC)とすれば、前記ステップS410と同様にして座標変換関数GsCMの座標軸の回転部分MsCMを計算することができる。そして、前記ステップS410と同様原点座標の移動部分は座標変換関数CAの原点座標の移動部分であり、座標変換関数GdCMは上記数3により表される式である。
Next, three-dimensional
次に、3次元画像処理装置42は、ステップS432にて、被測定対象球体セットの定点座標T1をCM座標系で表した被測定対象定点座標T1cmを計算する。被測定対象球体セットを構成する3つの球体51の各球体中心座標CcA,CcB,CcCの各座標値を(CXcA,CYcA,CZcA)(CXcB,CYcB,CZcB)(CXcC,CYcC,CZcC)とすれば、カメラ座標系における定点座標T1cは前記ステップS412と同様にして上記数20に示した式により計算することができる。そして、上記数20に示す式によって計算された定点座標T1cを前記ステップS430にて計算した座標変換関数GsCMにより座標変換することによりCM座標系における被測定対象定点座標T1CMを計算することができる。
Next, in step S432, the three-dimensional
次に、3次元画像処理装置42は、ステップS434にて、位置決め誤差ECcmを計算する。位置決め誤差ECcmは、コントローラ41によって指示される3次元形状測定装置30の移動先の位置と、実際に3次元形状測定装置30が位置決めされた位置との差であり、コントローラ41によって指示される第4アーム26の先端部の移動先の座標と、実際に第4アーム26の先端部が位置決めされた位置の座標との差である。この位置決め誤差ECcmは、下記数24に示すように、CM座標系における被測定対象球体セットの被測定対象定点座標T1cmの座標値(T1Xcm,T1Ycm,T1Zcm)から同CM座標系における基準球体セットの基準定点座標Tdcmの座標値(TdXcm,TdYcm,TdZcm)を減算して計算する。
Next, the three-dimensional
この場合、CM座標系は座標軸の向きが測定機座標系の座標軸の向きと一致し原点座標をアーム座標系の原点座標にした座標系であり、3次元形状測定装置30の移動に伴って移動する座標系である。したがって、コントローラ41によって指示される3次元形状測定装置30の移動先の位置と、実際に3次元形状測定装置30が位置決めされた位置との間に差がなければ、すなわち、3次元形状測定装置30が正確に位置決めされれば、前記ステップS422にて、コントローラ41によって指示される3次元形状測定装置30の移動先の位置は、基準球体セットにおける基準定点から被測定対象球体セットにおける定点に向かうベクトル分だけ基準位置から移動した位置であるので、位置決め誤差ECcmは「0」である。
In this case, the CM coordinate system is a coordinate system in which the direction of the coordinate axis coincides with the direction of the coordinate axis of the measuring machine coordinate system and the origin coordinate is set to the origin coordinate of the arm coordinate system, and moves with the movement of the three-dimensional
一方、3次元形状測定装置30が正確に位置決めされない場合には、コントローラ41によって指示される3次元形状測定装置30の移動先の位置と、実際に3次元形状測定装置30が位置決めされた位置との間に差が生じ、同差が位置決め誤差ECcmとなる。この場合、カメラ座標系における基準定点座標Tdcと被測定対象定点座標T1cとを直接比較せず、CM座標系における基準定点座標TdCMと被測定対象定点座標T1CMとを比較するのは、3次元形状測定装置30の位置決め誤差が3次元形状測定装置30の向きに関するずれに起因するか否かを区別するためである。次に、3次元画像処理装置42は、上記数24に示す式によって計算された位置決め誤差ECcmに前記ステップS416にて計算した座標変換関数GDMの逆関数である座標変換関数GMDを乗算して同位置決め誤差ECcmを基準座標系によって表された位置決め誤差ECdに座標変換する。
On the other hand, when the three-dimensional
次に、3次元画像処理装置42は、ステップS436にて、座標補正データRDを記憶する。座標補正データRDは、前記位置決め誤差ECdを補正するための補正値である。具体的には、基準座標系によって表された前記位置決め誤差ECdの符号を反対符号にした値を座標補正データRDとして記憶する。次に、3次元画像処理装置42は、ステップS438にて、回転ずれEDを計算する。回転ずれEDは、コントローラ41によって指示される3次元形状測定装置30の移動先での向きと、実際に3次元形状測定装置30が位置決めされたときの3次元形状測定装置30の向きとのずれであり、換言すれば、コントローラ41によって指示される第4アーム26の先端部の移動先でのアーム座標系の座標軸の向きと、実際に第4アーム26の先端部が位置決めされたときのアーム座標系の座標軸の向きとのずれである。具体的には、前記ステップS430にて計算した座標変換関数GsCMの座標軸の回転部分MsCMの逆関数である回転部分MsMCと前記ステップS410にて計算した座標変換関数GdCMの座標軸の回転部分MdCMとの乗算値を回転ずれEDとして計算する。
Next, the three-dimensional
前記ステップS430にて計算した座標変換関数GsCMの座標軸の回転部分MsCMは、3次元形状測定装置30を被測定対象球体セットに面するように位置決めした際における3次元形状測定装置30に関する座標系であるカメラ座標系によって表された座標値を同カメラ座標系の各座標軸の向きを3次元測定機60に関する座標系である測定機座標系の各座標軸の向きに一致させたCM座標系に座標変換するための座標変換関数の回転部分であり、同座標変換関数GsCMの座標軸の回転部分MsCMの逆関数である回転部分MsMCはCM座標系の座標値をカメラ座標系の座標値に座標変換するための座標変換関数GsMCの回転部分である。また、前記ステップS410にて計算した座標変換関数GdCMの座標軸の回転部分MdCMは、3次元形状測定装置30を基準球体セットに面するように位置決めした際におけるカメラ座標系の座標値をCM座標系の座標値に座標変換するための座標変換関数の回転部分である。
Rotating part Ms CM axes of the coordinate transformation function Gs CM calculated at the step S430, the coordinates for the three-dimensional
そして、回転ずれEDは、理想とする測定対象位置でのカメラ座標系によるベクトル値を実際の測定対象位置でのカメラ座標系によるベクトル値にするための座標変換関数と看做せばよいので、理想とする測定対象位置でのカメラ座標系によるベクトル値に座標変換関数GdCMの回転部分MdCMを乗算して測定機座標系のベクトル値にし、さらに座標変換関数GsMCの回転部分MsMCを乗算して実際の測定対象位置でのカメラ座標系によるベクトル値にすると考えれば、回転ずれEDは2つの座標変換関数の回転部分を乗算した値(MsMC・MdCM)で表すことができる。この場合、座標変換関数GsCMと座標変換関数GdCMとは、3次元形状測定装置30の位置決めの前後においてカメラ座標系の座標軸の向きに変化がなければ同一の関数となる。すなわち、座標変換関数GdCMの回転部分MdCMに座標変換関数GsCMの回転部分MsCMの逆関数である回転部分MsMCを乗算した値(MsMC・MdCM)はカメラ座標系の座標軸の向きに変化がなければ「1」となり、回転ずれEDはないことになる。
The rotation deviation E D, since it regarded as coordinate transformation function for the vector value by the camera coordinate system in the actual measured position vector values of the camera coordinate system at the measuring points to the ideal , the vector value measuring instrument coordinate system by multiplying the rotating part Md CM coordinate transformation into a vector value of the camera coordinate system at the measuring points to the ideal function Gd CM, rotating parts Ms MC further coordinate transformation function Gs MC , The rotation deviation E D can be expressed by a value (Ms MC · Md CM ) obtained by multiplying the rotation parts of the two coordinate transformation functions. it can. In this case, the coordinate conversion function Gs CM and the coordinate conversion function Gd CM are the same function as long as there is no change in the direction of the coordinate axis of the camera coordinate system before and after the positioning of the three-dimensional
そして、この回転ずれEDは、カメラ座標系における回転ずれEDであるので、補正関数を求めるにはアーム座標系における回転ずれEDを計算する必要がある。アーム座標系における回転ずれEDは、アーム座標系によるベクトル値をカメラ座標系によるベクトル値にした場合、先の回転ずれEDの値になると看做せばよいため、カメラ座標系における回転ずれEDの左側に座標変換関数CAの座標軸の回転部分MCAを乗算し、右側に同回転部分MCAの逆関数MACを乗算すればよい。したがって、アーム座標系における回転ずれEDは、MCA・MsMC・MdCM・MACとなる。 Then, the rotational deviation E D is because it is rotation offset E D in the camera coordinate system, it is necessary to calculate the rotational deviation E D the arm coordinate system to obtain the correction function. Rotation offset E D the arm coordinate system, when the vector value by the arm coordinate system to the vector values of the camera coordinate system, since it regarded to be the value of the previous rotational deviation E D, rotating in the camera coordinate system shift left by multiplying the rotational portion M CA axes of the coordinate transformation function CA of E D, it may be multiplied by the inverse function M AC of the rotating portion M CA on the right. Thus, rotational deviation ED the arm coordinate system, the M CA · Ms MC · Md CM · M AC.
次に、3次元画像処理装置42は、ステップS440にて、回転ずれ補正関数RGを記憶する。回転ずれ補正関数RGは、前記回転ずれEDを補正するための関数である。具体的には、前記回転ずれEDの逆関数((MCA・MsMC・MdCM・MAC)−1)を計算して回転ずれ補正関数RGとして前記座標補正データRDとともに記憶する。なお、この回転ずれ補正関数RGが、本発明に係る回転ずれ補正データに相当する。
Next, in step S440, the three-dimensional
次に、3次元画像処理装置42は、ステップS442にて、基準球体セットを選定した際の校正用物体支持ベース52の高さにおける基準球体セットとして指定した球体セット53以外のすべての球体セット53および基準球体セットを選定した際の校正用物体支持ベース52の高さ以外の高さにおけるすべての球体セット53について被測定対象球体セットとして3次元測定および補正データの計算を行ったか否かを判定する。この判定処理において、3次元画像処理装置42は、被測定対象球体セットについて3次元測定および補正データの計算が実行されるまで、「No」と判定し続けてステップS420以降の各処理を繰り返し実行する。この場合、作業者は、校正用物体支持ベース52の高さを、前記校正用物体情報取得プログラムのS104で設定した高さのうち、被測定対象球体セットについて3次元測定および補正データの計算が実行されていない高さに設定する。
Next, in step S442, the three-dimensional
一方、すべての校正用物体支持ベース52の高さにおけるすべての被測定対象球体セットについて3次元測定および補正データの計算が実行された場合には、同判定において「Yes」と判定されてステップS444にて、この補正データ群取得プログラムの実行を終了する。これにより、図16に示すように、基準球体セットとして指定された球体セット53を除く(N−1)個の被測定対象球体セットの測定位置ごとに座標補正データRDおよび回転ずれ補正関数RGからなる補正データ群が3次元画像処理装置42のメモリ装置に記憶される。
On the other hand, when the three-dimensional measurement and the calculation of the correction data are executed for all the measurement target sphere sets at the height of all the calibration object support bases 52, “Yes” is determined in the same determination, and step S444 is performed. Then, the execution of the correction data group acquisition program is terminated. As a result, as shown in FIG. 16, from the coordinate correction data RD and the rotation deviation correction function RG for each measurement position of the (N−1) measurement target sphere sets excluding the sphere set 53 designated as the reference sphere set. A correction data group is stored in the memory device of the three-dimensional
この補正データ群取得プログラムの実行後、作業者は、校正治具50を基台10上から取り除いて、同基台10上に測定対象物であるワークWKを配置する。そして、入力装置43を操作してワークWKの3次元形状の表示を指示する。これに応答して、3次元画像処理装置42は、図17に示す3次元形状表示プログラムの実行をステップS600にて開始して、ステップS602にてワークWKを測定するための3次元形状測定装置30の測定位置を表す位置情報の入力を待つ。この場合、入力される位置情報は、基準座標系における3つの座標軸の各座標値(X,Y,Z)および同各座標軸の方向をアーム座標系の座標軸の方向にするための同各座標軸回りの回転角度(Xθ,Yθ,Zθ)である。したがって、作業者は、ワークWKを測定するためのこれらの位置情報を入力装置43を操作して3次元画像処理装置42に入力する。3次元画像処理装置42は、入力された位置情報における座標値を測定位置WSP、回転角度を回転角WSRとしてそれぞれ認識する。
After executing the correction data group acquisition program, the operator removes the
次に、3次元画像処理装置42は、ステップS604にて、前記入力された位置情報を補正して3次元形状測定装置30を位置決めする位置(座標値)および位置決め後における3次元形状測定装置30の向き(回転角)を計算する。この位置情報の補正は、前記補正データ群取得プログラムにより取得した補正データ群を用いて行う。まず、3次元画像処理装置42は、位置情報における座標値を補正して3次元形状測定装置30を位置決めする位置を計算する。まず、3次元画像処理装置42は、校正治具50の被測定対象球体セットごとに計算された補正データ群の中から、前記ステップS602にて入力した測定位置近傍の4つの補正データを抽出する。具体的には、図18に示すように、前記ステップS602にて入力した測定位置WSPを取り囲む前記補正データ群における8つの被測定対象球体セットの測定位置KSP1〜KSP8を抽出する。そして、抽出した8つ測定位置KSP1〜KSP8のうち、最も測定位置WSPに近い測定位置KSP1〜KSP8である測定位置KSP1に対応する補正データおよび同測定位置KSP1に隣接する3つの測定位置KSP2,KSP3,KSP5にそれぞれ対応する3つの補正データを抽出する。
Next, in step S604, the three-dimensional
次に、3次元画像処理装置42は、前記抽出した4つの補正データにおける各座標補正データRDを用いて、前記ステップS602にて入力した測定位置WSPに対応する補正データRD’を計算する。具体的には、下記数25に示すように、測定位置WSPの座標値(XWSP,YWSP,ZWSP)、測定位置KSP1,KSP2,KSP3,KSP5の各座標値(XKSP1,YKSP1,ZKSP1)(XKSP2,YKSP2,ZKSP2)(XKSP3,YKSP3,ZKSP3)(XKSP5,YKSP5,ZKSP5)および同測定位置KSP1,KSP2,KSP3,KSP5にそれぞれ対応する各補正データRDの各座標値(XRD1d,YRD1d,ZRD1d)(XRD2d,YRD2d,ZRD2d)(XRD3d,YRD3d,ZRD3d)(XRD5d,YRD5d,ZRD5d)を用いて、各座標軸ごとに補間法により計算する。この下記数25により計算された各座標軸ごとの補正データRD’の座標値(XRD’d,YRD’d,ZRD’d)を視覚的に表すと図18に示すようになる。
Next, the three-dimensional
そして、3次元画像処理装置42は、前記計算した補正データRD’を前記ステップS602にて入力した測定位置WSPにおける各座標値に加算して3次元形状測定装置30を位置決めする位置を計算する。次に、3次元画像処理装置42は、位置情報における各座標軸の回転角を補正して、3次元形状測定装置30の向きを計算する。3次元画像処理装置42は、前記抽出した測定位置KSP1に対応する補正データのうち回転ずれ補正関数RGを測定位置WSPにおける回転角WSRを前記数4に代入して得られる3×3の行列式に乗算し、同乗算した結果得られた3×3の行列式から回転角WSR’を算出して3次元形状測定装置30の向きを計算する。この場合、アーム座標系における各座標軸の回転ずれEDは、前記位置決め誤差ECdに比べて極めて小さいずれであるので、測定位置KSP1に対応する回転ずれ補正関数RGによって位置情報における各座標軸の回転角を補正できる。なお、この位置情報における各座標軸の回転角の補正をより高精度に行うには、前記位置情報における座標値の補正と同様に補間法を用いて各座標軸の回転角の補正を行うようにすればよい。
Then, the three-dimensional
次に、3次元画像処理装置42は、ステップS606にて、前記ステップS604にて補正された測定位置に同ステップS604にて補正された向きで3次元形状測定装置30を移動させる。これにより、3次元形状測定装置30は、前記ステップS602にて指定された測定位置WSPに指定された回転角WSRで位置決めされる。そして、3次元画像処理装置42は、ステップS608にて、ワークWKの3次元形状を表す測定情報の入力を待つ。3次元形状測定装置30は、コントローラ41によって制御されてワークWKの3次元形状の測定を開始し、同ワークWKの3次元形状を表す情報を3次元画像処理装置42に出力する。すなわち、3次元画像処理装置42は、ワークWKの表面を微小エリアずつに分割した各分割エリア位置を表すX−Y−Z座標に関する情報(具体的には、傾きθx,θyおよび距離Lz)をそれぞれ入力する。そして、3次元画像処理装置42は、入力した3次元形状測定装置30からのX−Y−Z座標に関する情報に基づいて、各測定位置ごとにおけるワークWKの3次元形状を表す立体形状データ群からなる3次元画像データをそれぞれ計算する。この場合、3次元画像データは、3次元形状測定装置30に関する座標系、すなわちカメラ座標系によって表されている。
Next, in step S606, the three-dimensional
次に、3次元画像処理装置42は、ステップS610にて、ワークWKに対して互いに異なる3つの測定位置から測定したか否かを判定する。これは、ワークWKを任意の方向から見て表示可能な3次元画像データを生成するためには、互いに異なる少なくとも3つの位置からワークWKを測定する必要があるためである。したがって、この判定処理においては、ワークWKを互いに異なる3つの測定位置から測定するまで「No」と判定し続けてステップS602に戻り、再びワークWKの測定処理を実行する。一方、同判定処理において、ワークWKを互いに異なる3つの測定位置から測定した場合には「Yes」と判定されてステップS612に進む。なお、ワークWKの測定は、前記した3つの位置に限られず4つ以上の位置から測定を行うようにしてもよく、これによれば、より高精度の3次元形状の測定を行うことができる。
Next, in step S610, the three-dimensional
次に、3次元画像処理装置42は、ステップS612にて、3つの各測定位置ごとの3次元画像データを一組の3次元形状データ群に合成する。この場合、各測定位置ごとの3次元画像データは、所定の座標変換関数によりカメラ座標系による3次元画像データから基準座標系による3次元画像データに変換された後、一組の3次元形状データに合成される。この合成においては、すべての測定位置における3次元画像データが同一座標系である基準座標系による座標値で表されるので、各測定位置によって測定されないワークWKの部分(各測定位置における3次元形状測定装置30に対して裏側に位置するワークWKの外表面)を表す3次元画像データが互いに補われ、一組のデータ群が生成される。
Next, in step S612, the three-dimensional
次に、3次元画像処理装置42は、ステップS614にて、前記合成された3次元形状データ群を用いてワークWKの3次元形状を表示装置44に表示させる。そして、3次元画像処理装置42は、ステップS616にて、3次元形状表示プログラムの実行を終了する。このワークWKの3次元形状の表示においては、作業者は入力装置43を操作することによりワークWKの表示方向を指示することができ、コントローラ41および3次元画像処理装置42は表示装置44にて表示されるワークWKの表示方向を変更する。これにより、ワークWKを任意の方向から見た立体形状を表示させることができる。
Next, in step S614, the three-dimensional
また、新たなワークWKを基台10上に置いて、前述のようにワークWKの表示を指示すれば、前記3次元形状表示プログラムの実行により、前記と同様にして新たなワークWKを任意の方向から見た3次元形状を表示装置44に表示させることができる。したがって、補正データ群を一度取得しておけば、ワークWKを次々に換えて表示装置44にて3次元形状を表示させることが可能である。
If a new work WK is placed on the
上記作動説明からも理解できるように、上記実施形態によれば、16セットの球体セット53を備えた校正治具50において、校正用物体支持ベース52の1つの高さにおける1つの球体セット53を基準球体セットとするとともに、他の球体セット、具体的には、校正用物体支持ベース52の同じ高さにおける他の球体セット53および校正用物体支持ベース52の他の高さにおけるすべての球体セット53を被測定対象球体セットとしてそれぞれ3次元形状測定装置30によって3次元形状測定を行っている。この場合、3次元形状測定装置30は、基準球体セットに対して校正用物体情報における各定点座標Tmの位置関係に応じて各被測定対象球体セットに位置決めされる。したがって、3次元形状測定装置30における位置決め誤差がなければ、3次元形状測定装置30によって測定される基準球体セットの基準定点座標Tdcmの位置と各被測定対象球体セットの被測定対象定点座標TNcmの位置との間には差はない。一方、同基準球体セットの基準定点座標Tdcmの位置と各被測定対象球体セットの被測定対象定点座標TNcmの位置との間に差が生じている場合には、基準球体セットを測定した位置から各被測定対象球体セットに3次元形状測定装置30を位置決めした際に、3つの座標軸上の位置ずれおよび/または各座標軸上の回転ずれが生じていることになり、同差を位置決め座標誤差ECdおよび/または回転ずれEDとして検出することができる。すなわち、校正治具50における球体セット53は、3次元形状測定装置30により球体51の3次元形状測定装置により同各校正用物体の3次元形状が正確に測定され、その測定データに基づいて各定点の座標が正確に算出されるとともに、記憶手段に各校正用物体の位置関係が記憶されるため、各球体51および各球体セット53を高精度に製作および配置する必要がないとともに、校正治具50の配置位置もアーム支持機構20の可動範囲内であれば厳密に位置決めする必要もない。このため、多関節ロボットにおける位置決め誤差を補正するためのコストを抑えることができるとともに、校正治具50を配置する作業を簡易にすることができる。この結果、多関節ロボットにおける位置決め誤差補正の精度を良好に維持しつつ、前記位置決め誤差を作業効率良く検出することができる。
As can be understood from the above description of the operation, according to the embodiment, in the
また、基準球体セットに対する各被測定対象球体セットの位置に応じて座標補正データRDおよび回転ずれ補正関数RGが計算される。そして、3次元形状測定装置30を移動させる際、同移動先の位置に応じた座標補正データRDおよび回転ずれ補正関数RGを用いて3次元形状測定装置30を位置決めする。この場合、座標補正データRDは、3次元形状測定装置30の移動先の位置に応じて補間法により計算される。この結果、3次元形状測定装置30の位置決めされる位置に応じた補正量によって補正することができ、より高精度に3次元形状測定装置30を位置決めすることができる。
(第2実施形態)
Further, the coordinate correction data RD and the rotation deviation correction function RG are calculated according to the position of each measurement target sphere set with respect to the reference sphere set. When the three-dimensional
(Second Embodiment)
本発明の第2実施形態について説明する。上記第1実施形態においては、校正治具50を構成する校正用物体として3つの球体51からなる球体セット53を用いたが、3次元における各次元ごとに少なくとも1つの直線が定義できれば、すなわち座標変換関数Gdcmおよび座標変換関数Gscmを定義できれば、例えば、球体51における球形状に変えて立方体または直方体に形成された校正用物体を用いて校正治具50を構成することもできる。図19に示す校正治具50’においては、校正用物体として前記球体51に代えて直方体51’を用いている。直方体51’は、校正用物体支持ベース52におけるワイヤー52cとワイヤー52dとの各交点部分、具体的には16個の交点部分にそれぞれ1つずつ固定されている。この場合、各直方体51’は、3次元形状測定装置30によって直方体51’を構成する6つの面のうち、互いに隣り合ういずれか3つの面が測定できる向きで固定されている。すなわち、直方体51’の1つの頂点が3次元形状測定装置30に対向するように固定されている。校正治具50’におけるその他の部分の構成は、前記校正治具50と同様である。この校正治具50’を用いて多関節ロボットにおける位置決め誤差を補正する処理過程は、上記第1実施形態における校正治具50を用いて位置決め誤差を補正する処理過程と略同一である。しがって、上記第1実施形態と異なる処理過程のみについて説明する。
A second embodiment of the present invention will be described. In the first embodiment, the sphere set 53 including the three
まず、校正用物体情報取得プログラムの実行について説明する。上記のように構成された校正治具50’における前記校正用物体情報は、16個の直方体51’ごとおよび校正用物体支持ベース52の各高さごとに各直方体51’における互いに隣り合う3つの面における同各面の法線ベクトル、同各面間の角度、同各面における共通の辺の長さおよび同各面の交点である定点で構成されている。まず、作業者は、前記と同様にして校正治具50’を支柱54を縮めた状態にして3次元測定機60のベース66上の測定対象空間内にセットした後、入力装置64を操作して校正用物体情報の取得を座標計算処理装置63に指示する。この指示に応答して、座標計算処理装置63は図4に示す校正用物体情報取得プログラムと同様のプログラムである図20に示す校正用物体情報取得プログラムの実行をステップS700にて開始して、ステップS702にて作業者による測定対象の特徴の入力を待つ。このステップS702の処理において作業者は、測定対象が直方体であることを表す情報を入力する。
First, execution of the calibration object information acquisition program will be described. The calibration object information in the
次に、座標計算処理装置63は、ステップS704にて、測定部61による各直方体51’ごとの測定座標情報の入力を待つ。このステップS704の処理において作業者は、図21に示すように、測定部61のプローブ69を操作して、1つの直方体51’における互いに隣り合う3つの面A,B,Cごとに各面の表面にそれぞれ3箇所ずつ接触させる。これにより、測定部61は3つの測定面A,B,Cごとに3箇所の接触点に対応する3組の測定座標情報(各点は、座標値x,y,zで表される)を座標計算処理装置63に出力する。
Next, the coordinate
次に、座標計算処理装置63は、ステップS706にて、3つの測定面A,B,Cごとに測定された各3組の測定座標情報を用いて、同各測定面A,B,Cにおける法線ベクトルをそれぞれ計算する。具体的には、各測定面A,B,Cごとに3組の測定座標情報を下記数26に示す平面の式の左辺に代入し、3つの連立方程式からa,b,cを計算することで、3つの各測定面の平面の式をそれぞれ求める。これらの平面の式におけるa,b,cをベクトル成分にしたベクトルが、それぞれ3つの測定面A,B,Cにおける各法線ベクトルである。そして、同各法線ベクトルのベクトル成分a,b,cを下記数27に代入して大きさが「1」の法線ベクトルVmA,VmB,VmCのベクトル成分αm,βm,γmを計算する。
Next, in step S706, the coordinate
次に、座標計算処理装置63は、ステップS708にて、各測定面A,B,C間の各角度を計算する。この各測定面A,B,C間の各角度は、互いに隣り合う測定面A,B,Cにおける各法線ベクトル間の角度として計算する。具体的には、前記法線ベクトルVmA,VmB,VmCの各成分(αmA,βmA,γmA),(αmB,βmB,γmB),(αmC,βmC,γmC)のうち、2つの法線ベクトルの各成分を下記数28に示す内積の式の右辺にそれぞれ代入して、角度θを計算する。これにより、3つの測定面A,B,Cの各測定面間の角度θAB,θBC,θCAが計算される。
Next, the coordinate
次に、座標計算処理装置63は、ステップS710にて、直方体51’の定点座標Tmを計算する。定点座標Tmは、3つの測定面A,B,Cの交点として計算される。具体的には、前記ステップS706における3つの各測定面の平面の式の連立方程式を解くことにより計算される。次に、座標計算処理装置63は、ステップS712にて、3つの測定面A,B,Cにおけるそれぞれ共通の辺の長さLmAB,LmBC,LmCAを計算する。この場合、作業者は、測定部61のプローブ69を操作して、直方体51’の定点座標Tmに隣り合う3つの頂点TmAB,TmBC,TmCAに接触させる。これにより、測定部61は3つの頂点TmAB,TmBC,TmCAの各接触点に対応する3組の測定座標情報(各点は、座標値x,y,zで表される)を座標計算処理装置63に出力する。そして、座標計算処理装置63は、定点座標Tmの座標値と各頂点TmAB,TmBC,TmCAの測定座標情報とを用いて、定点座標Tmと各頂点TmAB,TmBC,TmCAとの距離をそれぞれ計算する。
Next, the coordinate
次に、座標計算処理装置63は、ステップS714にて、すべての直方体51’について測定を行ったか否かを判定する。この判定において、すべての直方体51’について測定を行っていない場合には「No」と判定されてステップS704に戻り、未だ測定を行っていない直方体51’について測定処理を続行する。一方、すべての直方体51’について測定を行った場合には「Yes」と判定されてステップS716に進む。ステップS716において座標計算処理装置63は、前記ステップS114と同様に、作業者に対して球体セット53の高さ方向の位置を変更して再度各球体セット53の測定処理を行うか否かを問い合わせる。この場合、作業者は、異なる高さ方向の位置で再度球体53の測定処理が必要な場合には、入力装置64を操作して測定処理を続行する旨の情報を座標計算処理装置63に入力する。この指示に応答して、座標計算処理装置63は、同ステップS716にて「Yes」と判定して、ステップS704に戻り球体セット53を測定する各処理を再度実行する。この場合、作業者は、校正治具50の支柱54を伸縮させて校正用物体支持ベース52の高さを必要な高さに変更する。
Next, the coordinate
一方、アーム支持機構20を可動させる高さ方向の範囲に対応する高さ方向の範囲内で略均等に球体セット53の校正用物体情報が取得された場合には、作業者は、入力装置64を操作して測定処理を終了する旨の情報を座標計算処理装置63に入力する。この指示に応答して、座標計算処理装置63は、同ステップS716にて「No」と判定して、ステップS718に進み、同ステップS718にて、この校正用物体情報取得プログラムの実行を終了する。これにより、座標計算処理装置63には、図22に示すように、直方体51’(1〜N)ごとに各直方体51’における3つの測定面A,B,Cの法線ベクトルVmA,VmB,VmC、同各測定面間の角度θmAB,θmBC,θmCA、同各面における共通の辺の長さLmAB,LmBC,LmCAおよび同各面の交点である定点座標Tmがそれぞれ記憶される。なお、これらの校正用物体情報のうち、法線ベクトルVmA,VmB,VmCが本発明に係る直線定義パラメータであり、各測定面間の角度θmAB,θmBC,θmCAおよび同各面における共通の辺の長さLmAB,LmBC,LmCAが本発明に係る識別パラメータであり、同各面の交点である定点座標Tmが本発明に係る定点である。また、校正用物体情報が既知であれば、この校正用物体情報取得プログラムの実行による校正用物体情報の取得処理は不要である。
On the other hand, when the calibration object information of the sphere set 53 is acquired approximately evenly within the height direction range corresponding to the height direction range in which the
次に、補正データ取得プログラムの実行について説明する。図9に示す補正データ取得プログラムにおけるステップS402において作業者は、校正治具50’におけるN個の直方体51’のうち任意の直方体51’を基準直方体として選択し、同基準直方体に対向する位置に3次元形状測定装置30を位置決めする。この場合、3次元形状測定装置30には各直方体51’の頂点が対向、すなわち同頂点を構成する直方体51’の3つの面が面している。また、同ステップS402にて作業者は、3次元画像処理装置42に記憶した校正用物体情報のうち、基準直方体として選択した直方体51’に関する校正用物体情報の番号(1〜N)を基準直方体情報として指定する。そして、3次元画像処理装置42は、ステップS404にて、基準直方体を3次元測定する。この場合、基準直方体の3次元形状を表す3次元画像データは、3次元形状測定装置30に面する3つの面、すなわち3つの測定面A,B,Cを表すデータである。
Next, execution of the correction data acquisition program will be described. In step S402 in the correction data acquisition program shown in FIG. 9, the operator selects an arbitrary
ステップS406において3次元画像処理装置42は、前記ステップS404にて計算された3次元画像データの中から直方体51’に関する3次元画像データを抽出する。この直方体51’に関する3次元画像データの抽出処理は、図11に示す校正用物体抽出サブプログラムにより実行される。3次元画像処理装置42は、ステップS502にて、校正用物体の特徴として、形状が特定の多面体(直方体)であることを表すデータを入力する。次に、ステップS510における探索ブロックの位置の抽出処理においては、探索ブロックの中央部の平面内に抽出した単位ブロックの数が所定数以上直線状に連続して存在し、探索ブロックの周辺の各面において、抽出された単位ブロックの数が所定数以下であることを条件に、探索ブロックの位置を抽出するようにする。
In step S406, the 3D
次に、ステップS512における校正用物体に関する3次元画像データの抽出処理を以下に示す処理に変更する。この場合、校正用物体、すなわち直方体51’の1つの平面に関する3次元画像データの抽出のために、3次元形状測定装置30に最も近い点を表す3次元画像データとその付近の点を表す3次元画像データ(X,Y,Z座標値)を、平面の式である上記数26の左辺のx,y,zにそれぞれ代入し、最小2乗法を用いて未知数a,b,cを計算する。次に、この計算した未知数a,b,cを用いた上記数26によって表された平面と、前記代入した各3次元画像データにより表された点との距離をそれぞれ計算する。そして、前記計算した全ての各距離が所定の判別値以内であれば、これらの全ての3次元画像データを含む平面を定義する。一方、前記計算した各距離が所定の判別値以内でなければ、前記平面の計算に利用した3次元画像データとは異なる位置にある点およびその近傍の点をそれぞれ表す複数の3次元画像データを用いて、前記と同様な平面の定義に関する処理を行う。これらの処理を平面が定義されるまで繰り返し行う。なお、前記計算した全ての各距離が所定の判別値以内でなくても、判別値以内でない距離に関する3次元画像データが極めて少数であれば、これらの少数の3次元画像データを除いた残りの3次元画像データにより平面を定義するようにしてもよい。
Next, the process of extracting 3D image data related to the calibration object in step S512 is changed to the process shown below. In this case, in order to extract the three-dimensional image data relating to one plane of the calibration object, that is, the
そして、平面が定義されれば、該当する探索ブロック内の他の3次元画像データによって表された点と上記数26によって表された平面までの距離を計算して、この距離が所定の判別値以内の点に関する3次元画像データを前記平面内にあるものとして取得する。そして、取得した3次元画像データを再度平面の式である上記数26の左辺のx,y,zに代入し、最小2乗法を用いて未知数a,b,cを計算し、探索ブロック内の3次元画像データによって表された点において計算した未知数a,b,cを用いた平面からの距離が所定の判別値以内の点に関する3次元画像データを取得する。次に、取得した3次元画像データの中から、平面の周辺に対応する3次元画像データを取得して、同取得した3次元画像データを用いて平面の1辺の長さを計算する。そして、この計算した1辺の長さと、前記ステップS502の処理時に校正用物体の特徴として入力した辺の長さとの差を計算して、この計算した差が所定の判別値以内であれば、前記探索ブロック内の3次元画像データは合致する可能性があると判定して、後述する他の平面の定義を行う。一方、前記差が所定の判別値以内でなければ、前記探索ブロック内の3次元画像データは合致しないとして、同3次元画像データを破棄する。この場合、該当探索ブロック内には、校正用物体の3次元形状を表す3次元画像データが存在しないことになる。
If a plane is defined, the distance between the point represented by the other three-dimensional image data in the corresponding search block and the plane represented by the
前記のようにして可能性があると判定した場合には、該当する探索ブロック内の取得されていない3次元画像データに関しても、他の2つの平面に関する3次元画像データの取得のために、前記のような平面に関する3次元画像データの取得処理を実行する。この他の平面に関しては、前記定義した平面の周辺付近に存在する点を表す3次元画像データで前記定義した平面に含まれない3次元画像データを抽出して前記平面の定義と同じ方法で平面を定義し、同定義した平面に属する点を表す3次元画像データを取得する。そして、取得した3次元画像データの中から、前記と同様に、平面の周辺に対応する3次元画像データを取得して、同取得した3次元画像データを用いて平面の1辺の長さを計算する。そして、この計算した1辺の長さと前記ステップS502の処理時に入力した辺の長さとの差を計算して、この計算した差が所定の判別値以内であれば、前記探索ブロック内の3次元画像データは合致する可能性があると判定して、取得した3つの平面におけるそれぞれ2つの平面の角度を計算する。具体的には平面の式のa,b,cで定まる2つの法線ベクトル(a1,b1,c1)および(a2,b2,c2)を上記数27により大きさ「1」の法線ベクトル(α1,β1,γ1)および(α2,β2,γ2)にし、上記数28の右辺に代入して角度θを計算する。そして、2つの平面の角度3つと校正用物体の特徴によって定まる角度(直方体であるので90度)との差が判別値以内であれば、前記探索ブロック内の3次元画像データは合致すると判定する。これにより、直方体51’を表す3次元画像データが抽出される。 When it is determined that there is a possibility as described above, the three-dimensional image data that is not acquired in the corresponding search block is also used for acquiring the three-dimensional image data related to the other two planes. The acquisition process of the three-dimensional image data regarding the plane is executed. With respect to the other planes, three-dimensional image data that is not included in the defined plane is extracted from the three-dimensional image data representing the points existing in the vicinity of the defined plane, and the plane is determined in the same manner as the definition of the plane. 3D image data representing points belonging to the defined plane is acquired. Then, from the acquired three-dimensional image data, three-dimensional image data corresponding to the periphery of the plane is acquired in the same manner as described above, and the length of one side of the plane is determined using the acquired three-dimensional image data. calculate. Then, the difference between the calculated length of one side and the length of the side input at the time of the processing of step S502 is calculated, and if the calculated difference is within a predetermined discriminant value, the 3D in the search block is calculated. It is determined that the image data may match, and the angles of the two planes in the three planes obtained are calculated. Specifically, two normal vectors (a1, b1, c1) and (a2, b2, c2) determined by a, b, and c in the plane equation are converted into normal vectors of size “1” according to the above equation (27). α1, β1, γ1) and (α2, β2, γ2) are substituted into the right side of Equation 28 to calculate the angle θ. If the difference between three angles of the two planes and the angle determined by the characteristics of the calibration object (90 degrees because it is a rectangular parallelepiped) is within the discriminant value, it is determined that the three-dimensional image data in the search block match. . As a result, three-dimensional image data representing the rectangular parallelepiped 51 'is extracted.
次に、3次元画像処理装置42は、ステップS408にて、前記抽出した直方体51’を表す3次元画像データの中から、基準直方体を表す3次元画像データを抽出する。この基準直方体を表す3次元画像データを抽出する処理は、次のサブステップ1〜3の処理からなる。
Next, in step S408, the three-dimensional
サブステップ1:直方体を表す3次元画像データの抽出において定義した3つの測定面A,B、Cにそれぞれに対応する3つの平面の式の連立方程式を解き、測定面A,B,Cの交点を定点座標Tcとして計算する。次に、直方体51’に関する3次元画像データのうち、2つの測定面に共通の3次元画像データを抽出する。すなわち、この2つの測定面に共通の3次元画像データとは、同2つの測定面によって形成される1つの辺を表す3次元画像データである。具体的には、前記3つの平面の式のうち2つの平面の式からなる連立方程式を3組成立させ、同3つの各連立方程式を満足する3次元画像データをそれぞれ抽出する。これら3組の連立方程式は、3つの測定面A,B,Cのうちのいずれか2つの測定面により形成される3つの辺に対応する。したがって、前記3組の各連立方程式を満足する3次元画像データは、前記3つの辺を表す3次元画像データである。そして、これら3つの辺に対応する3組の各3次元画像データのうち、前記計算した定点座標Tcと最も遠い位置にある3次元画像データと同定点座標Tcとの距離を計算する。これにより、3つの辺の長さLcAB,LcBC,LcCAが計算される。これらサブステップ1の各処理を抽出したすべての直方体51’に対して実行する。
Sub-step 1: Solving simultaneous equations of three planes corresponding to the three measurement surfaces A, B, and C defined in the extraction of the three-dimensional image data representing the rectangular parallelepiped, and the intersection of the measurement surfaces A, B, and C Is calculated as a fixed point coordinate Tc . Next, 3D image data common to the two measurement surfaces is extracted from the 3D image data related to the
サブステップ2:前記ステップS408にて抽出した直方体51’を表す3次元画像データの中から、基準直方体を表す3次元画像データを抽出する。具体的には、直方体51’ごとに計算した前記3つの辺の長さLcAB,LcBC,LcCAと3次元画像処理装置42に記憶した基準直方体情報における3つの辺の長さLcAB,LcBC,LcCAとの各差が所定の判別値内にある直方体51’に関する3次元画像データを抽出する。この場合、2つ以上の直方体51’に関する3次元画像データが抽出された場合には、抽出された2つ以上の各直方体51’を表す3次元画像データの抽出において計算したそれぞれ3つの角度θcAB,θcBC,θcCAと3次元画像処理装置42に記憶した基準直方体情報における3つの角度θmAB,θmBC,θmCAとの各差が所定の判別値内にある直方体51’に関する3次元画像データをさらに抽出する。そして、前記サブステップ2にて計算された定点座標Tcのうち、基準直方体を表す定点座標Tcは基準定点座標Tdcとして記憶される。
Sub-step 2: Three-dimensional image data representing the reference rectangular parallelepiped is extracted from the three-dimensional image data representing the rectangular parallelepiped 51 'extracted in step S408. Specifically, the calculated per cuboid 51 'three sides of length L cAB, L cBC, L cCA the three sides of the reference rectangular information stored in the three-dimensional
サブステップ3:基準直方体として抽出された直方体51’における3つの測定面A,B,Cの各法線ベクトルVa,Vb,Vcが基準直方体情報における法線ベクトルVmA,VmB,VmCのうちのどれに相当するかを特定し、同特定した各法線ベクトルVa,Vb,Vcを法線ベクトルVcA,VcB,VcCとして記憶する。各法線ベクトルVa,Vb,Vcの特定は、直方体51’ごとに計算した前記3つの辺の長さLcAB,LcBC,LcCAと基準直方体情報における3つの辺の長さLcAB,LcBC,LcCAとを用いて行う。これら3つの辺の長さにて各法線ベクトルVa,Vb,Vcの特定ができない場合には、さらに、前記サブステップ2における測定面A,B,Cの各角度を用いて特定する。なお、特定された法線ベクトルVcA,VcB,VcCは、直方体を表す3次元画像データの抽出の際計算された大きさが「1」の法線ベクトルとして記憶される。
Sub-step 3: The normal vectors V a , V b , and V c of the three measurement surfaces A, B, and C in the cuboid 51 ′ extracted as the reference cuboid are the normal vectors V mA , V mB , and the reference cuboid information, Which of the V mCs corresponds is specified, and the specified normal vectors V a , V b , and V c are stored as normal vectors V cA , V cB , and V cC . The normal vectors V a , V b , and V c are identified by the three side lengths L cAB , L cBC , and L cCA calculated for each cuboid 51 ′ and the three side lengths L in the reference cuboid information. cAB , L cBC , and L cCA are used. If the normal vectors V a , V b , and V c cannot be specified by the lengths of these three sides, they are further specified by using the angles of the measurement surfaces A, B, and C in the
次に、3次元画像処理装置42は、ステップS410にて、座標変換関数GCMを計算する。この座標変換関数GCMの計算においては、前記数16におけるベクトルVCmAB,VCmAB,VCmをそれぞれ法線ベクトルVmA,VmB,VmCとし、同数16におけるVCcAB,VCcAB,VCcをそれぞれ法線ベクトルVcA,VcB,VcCとして座標変換関数GCMの座標軸の回転部分MCMを計算する。そして、原点座標の移動部分は座標変換関数CAの原点座標の移動部分であり、座標変換関数GCMは上記数3により表される式である。この座標変換関数GCMは、前記と同様に座標変換関数GdCMとする。そして、ステップS412にて、前記サブステップ2にて記憶された基準定点座標Tdcに前記座標変換関数GdCMを乗算して、CM座標系によって表された基準定点座標Tddを計算する。
Next, three-dimensional
次に、3次元画像処理装置42は、ステップS414にて、前記サブステップ3にて特定された基準直方体における3つの測定面A,B,Cの各法線ベクトルVCA,VCB,VCCを多関節ロボットに関する座標系である基準座標系における各法線ベクトルVdA,VdB,VdCに座標変換する。具体的には、法線ベクトルVCA,VCB,VCCに前記座標変換関数計算プログラムの実行により計算した座標変換関数CAの座標軸の回転部分MCAを乗算してアーム座標系における法線ベクトルVaA,VaB,VaCに座標変換する。そして、3次元画像処理装置42は、入力装置43から入力され、記憶されている基準座標系におけるアーム先端座標系の原点の座標および基準座標系の座標軸に対するアーム座標系の各座標軸の向きを表す回転角を用いた前記数3および前記数4による座標変換関数の座標軸の回転部分Mにより法線ベクトルVaA,VaB,VaCを基準座標系における法線ベクトルVdA,VdB,VdCに座標変換する。
Next, in step S414, the three-dimensional
次に、3次元画像処理装置42は、ステップS416にて、座標変換関数GDMを計算する。この座標変換関数GDMの計算においては、前記数16におけるベクトルVCmAB,VCmAB,VCmをそれぞれ法線ベクトルVmA,VmB,VmCとし、同数16におけるVCcAB,VCcAB,VCcをそれぞれ法線ベクトルVdA,VdB,VdCとして座標変換関数GDMを計算する。次に、3次元画像処理装置42は、ステップS418にて、DM座標系における基準定点座標TdDMを計算する。具体的には、前記サブステップ3にて記憶された基準定点座標Tdcに前記座標変換関数CAを乗算してアーム座標系における基準定点座標Tdaに座標変換するとともに、同基準定点座標Tdaを入力装置43から入力され記憶されている基準座標系におけるアーム座標系の原点の座標および基準座標系の座標軸に対するアーム座標系の各座標軸の向きを表す回転角を用いた上記数3および上記数4による座標変換関数により基準座標系における基準定点座標Tddに座標変換する。そして、基準定点座標Tddに前記ステップ416にて計算した座標変換関数GDMを乗算してDM座標系における基準定点座標TdDMを計算する。
Next, the three-dimensional
このステップS418の処理以降、3次元画像処理装置42は、基準直方体である直方体51’以外の直方体51’、具体的には、基準直方体を選定した際の校正用物体支持ベース52の高さにおける基準直方体として指定した直方体51’以外のすべての直方体53’および基準直方体を選定した際の校正用物体支持ベース52の高さ以外の高さにおけるすべての直方体53’に対して前記ステップS420〜ステップS444の各処理と同様の処理を実行することによって、座標補正データRDおよび回転ずれ補正関数RGからなる補正データ群を計算する。そして、前記と同様にして3次元形状測定装置30の位置決め位置を補正しながらワークWKの3次元形状の測定および表示処理を実行する。
After the process of step S418, the three-dimensional
さらに、本発明の実施にあたっては、上記第1および第2実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変形が可能である。以下、変形例について説明する。 Furthermore, the present invention is not limited to the first and second embodiments described above, and various modifications can be made without departing from the object of the present invention. Hereinafter, modified examples will be described.
上記各実施形態においては、図9に示す補正データ群取得プログラムにおけるステップS438において、3次元形状測定装置30を同3次元形状測定装置30の向きを変化させない状態で次の測定対象である球体セット53(または、次の測定対象である直方体51’)に移動させた場合における回転ずれEDを計算する処理過程を示した。これは、各球体セット53(または、各直方体51’)が、校正治具支持ベース52における略同一平面内に配置されているため3次元形状測定装置30を次の測定対象である球体セット53(または、次の測定対象である直方体51’)に移動させる場合、同3次元形状測定装置30の向きを変化させずに座標値のみを変化させて3次元形状測定装置30を位置決めしているためである。したがって、球体セット53(または、直方体51’)が同一面内に配置されていない場合には、3次元形状測定装置30の向きを変化させて、具体的には、球体セット53(または、直方体51’)に対向するように次の測定対象である球体セット53(または、次の測定対象である直方体51’)に位置決めしなければならない。この場合、前記ステップ438においては、3次元形状測定装置30の向きを変化させた変化量を加味して回転ずれEDを計算する。
In each of the above embodiments, in step S438 in the correction data group acquisition program shown in FIG. 9, the three-dimensional
前記ステップS402にて記憶した基準回転角の成分gd、すなわち、基準球体セットに3次元形状測定装置30を位置決めした際のアーム座標系の各座標軸の基準座標系の座標軸に対する回転角の成分gdをgd11,gd12,gd13,gd21,gd22,gd23,gd31,gd32,gd33とし、3次元形状測定装置30を次の測定対象である球体セット53(または、次の測定対象である直方体51’)に位置決めさせるためのアーム支持機構20の回転角の回転成分gsをgs11,gs12,gs13,gs21,gs22,gs23,gs31,gs32,gs33とすれば、基準回転角の成分gdを回転角の成分gsに変換する変換係数gdsは下記数29によって表される。
The reference rotation angle component gd stored in step S402, that is, the rotation angle component gd of each coordinate axis of the arm coordinate system when the three-dimensional
そして、回転ずれEDは、理想とする測定対象位置でのアーム座標系によるベクトル値を実際の測定対象位置でのアーム座標系によるベクトル値にするための座標変換関数と看做せばよいので、理想とする測定対象位置でのアーム座標系によるベクトル値に座標変換関数gdsの逆関数であるgds−1を乗算して基準位置での座標系によるベクトル値にする。そして、このベクトル値に座標変換関数GdCMの座標軸の回転部分MdCMと座標変換関数CAの座標軸の回転部分MCAの逆関数MAC(MCA −1)との乗算値MdCM・MACを乗算し測定機座標系のベクトル値にし、さらに座標変換関数GsMCの座標軸の回転部分MsMCと座標変換関数CAの座標軸の回転部分MCAとの乗算値MCA・MsMCを乗算して測定対象位置でのアーム座標系によるベクトル値にすると考えれば、回転ずれEDは3つの座標変換関数を乗算した(MCA・MsMC・MdCM・MAC・gds−1)となる。また、前記ステップS440における回転ずれ補正関数RGは、回転ずれEDの逆関数((MCA・MsMC・MdCM・MAC・gds−1)−1)となる。 The rotation deviation E D, since it regarded as coordinate transformation function for the vector value by the arm coordinate system of the actual measured position vector value by the arm coordinate system at the measuring points to the ideal The vector value by the arm coordinate system at the ideal measurement target position is multiplied by gds −1 which is the inverse function of the coordinate conversion function gds to obtain the vector value by the coordinate system at the reference position. Then, this vector value is multiplied by the value Md CM · M AC of the rotation part Md CM of the coordinate axis of the coordinate conversion function Gd CM and the inverse function M AC (M CA −1 ) of the rotation part M CA of the coordinate axis of the coordinate conversion function CA. was the vector value multiplied measuring machine coordinate system, further multiplies the multiplied value M CA · Ms MC of the rotating portion M CA axes of rotating parts Ms MC and coordinate transformation function CA the coordinate axes of the coordinate transformation function Gs MC Assuming that the vector value is based on the arm coordinate system at the measurement target position, the rotational deviation E D is (M CA · Ms MC · Md CM · M AC · gds -1 ) multiplied by three coordinate conversion functions. The rotational shift correction function RG in step S440 is to become the inverse function of the rotational displacement E D ((M CA · Ms MC · Md CM · M AC · gds -1) -1).
また、上記第1実施形態においては、3つの球体51によって1つの球体セット53を構成したが、3次元における各次元ごとに少なくとも1つの直線が定義できれば、すなわち座標変換関数Gdcmおよび座標変換関数Gscmを定義でき、各球体51によって1つの定点を特定することができれば球体セット53を構成する球体51の数は限定されない。また、各球体51をそれぞれ識別するために、各球体51の半径Rmをそれぞれ異ならせて構成したが、各球体51をそれぞれ識別することができればこれに限定されるものではない。例えば、各球体51の表面の反射率をそれぞれ異ならせて構成してもよい。また、球体51として球を含む球以外の形状の物体を球体51として用い、これらの各球体51の形状によって識別するようにしてもよい。
In the first embodiment, one sphere set 53 is constituted by the three
また、上記第1実施形態においては、各球体セット53における各球体51の半径Rmおよび同各球体間の距離Lmを用いて各球体セットを識別し、第2実施形態においては、各辺の長さLmおよび各測定面間の角度θmによって各直方体51’を識別するように構成したが、各校正用物体をそれぞれ識別することができればこれに限定されるものではない。例えば、校正用物体の各表面の反射率、各校正物体の形状などをそれぞれ異ならせることによって識別するようにしてもよい。
In the first embodiment, each sphere set is identified using the radius R m of each
また、上記第1実施形態においては3つの球体51を校正用物体とし、上記第2実施形態においては1つの直方体51’を校正用物体としてが、3次元における各次元ごとに少なくとも1つの直線が定義でき、校正用物体に1つの定点を特定できれば、校正用物体はこれに限定されるものではない。例えば、直方体以外の多面体、底面と水平な断面が楕円の円柱、底面と水平な断面が楕円の円錐または長軸と垂直な断面が楕円の楕円状球体などでもよい。さらに、表面に3つ以上のマークを有する物体、3つ以上の微小な反射率の異なる部分がある物体または3つ以上の頂点が存在する図形が描かれた物体などでもよい。
In the first embodiment, three
また、上記第1実施形態および第2実施形態においては、16個の球体セット53および直方体51’を用いて校正用物体を構成したが、これに限定されるものではない。これら校正用物体の数、配置は3次元形状測定装置30を可動させる範囲および3次元形状測定装置30の位置決め精度に応じて適宜設定されるものである。なお、上記第1実施形態および第2実施形態においては、校正用物体支持ベース52の高さを変化させて校正用物体を測定して校正用物体情報を取得したが、補正を厳密に行う必要がない場合には、校正用物体支持ベース52の横方向を、基準座標系のX軸方向と平行に設置し、校正用物体支持ベース52の高さは固定して校正用物体支持ベース52を45度程度の角度として校正用物体情報の取得を行う。そして、補正データ群を取得する作業を行った後、縦の列が同じ列である各校正用物体の定点を高さ方向と水平方向に投影させた定点を想定し、この定点での補正量を高さ方向であるZ軸方向は同じ高さ方向の位置である想定の元になった定点のZ座標値での補正量とし、X軸およびY軸方向は同じ平面位置である想定の元になった定点のX座標値、Y座標値での補正量であるとして、補正量を設定してもよい。図23は、校正用物体支持ベース52を横方向から見た図であり、図中「○」は実際に補正量を求めた定点を示し、「●」は「○」で示した定点から想定した定点を示している。また、校正用物体の配置されている範囲を変えずに、配置されている数を増加させてもよい。これによれば、座標補正データRDおよび回転ずれ補正関数RGが取得される間隔が狭くなり、より高精度な位置決め補正が行える。
In the first embodiment and the second embodiment, the calibration object is configured using the sixteen spherical body sets 53 and the rectangular parallelepiped 51 ', but the invention is not limited to this. The number and arrangement of these calibration objects are appropriately set according to the range in which the three-dimensional
また、上記各実施形態においては、多関節ロボットにおけるアーム支持機構20の先端部に3次元形状測定装置30を取り付け、ワークWKの3次元形状を測定するように構成したが、これに限定されるものではない。すなわち、本発明は、多関節ロボットにおけるアーム支持機構20の先端部を正確に位置決めするものであり、3次元形状測定装置30が同先端部近傍に取り付けられていれば同先端部に取り付けられる対象は問わない。例えば、同アーム支持機構20の先端部に物体を挟持するハンドを取り付け、同ハンドに挟持された物体を所定の位置に位置決めさせるように構成してもよいし、同先端部に溶接用の加工部を取り付け、加工材における所定の位置に溶接加工を施すように構成してもよい。これによっても、上記実施形態と同様の効果を期待できる。
In each of the above embodiments, the three-dimensional
また、上記各実施形態においては、多自由度ロボットとして多関節ロボットに本発明を適用して説明したが、複数の自由度を持ち、先端部に3次元形状測定装置30を取り付け可能な支持機構を有する多自由度ロボットであれば、これに限定されるものではない。
In each of the above embodiments, the present invention is applied to an articulated robot as a multi-degree-of-freedom robot. However, the support mechanism has a plurality of degrees of freedom and can attach the three-dimensional
WK…ワーク、10…基台、20…アーム支持機構、21…固定ベース、22…回転ベース、23…第1アーム、24…第2アーム、25…第3アーム、26…第4アーム、30…3次元形状測定装置、41…コントローラ、42…3次元画像処理装置、43…入力装置、44…表示装置、50…校正治具、51…球体、51’…直方体、52…校正用物体支持ベース、52c,52d…ワイヤー、53…球体セット、54…支柱、60…3次元測定機、61…測定部、62…コントローラ、63…座標計算処理装置、69…プローブ、70…プローブ。
WK ... Work, 10 ... Base, 20 ... Arm support mechanism, 21 ... Fixed base, 22 ... Rotary base, 23 ... First arm, 24 ... Second arm, 25 ... Third arm, 26 ... Fourth arm, 30 ... 3D shape measuring device, 41 ... controller, 42 ... 3D image processing device, 43 ... input device, 44 ... display device, 50 ... calibration jig, 51 ... sphere, 51 '... rectangular parallelepiped, 52 ... object support for calibration Base, 52c, 52d ... wire, 53 ... sphere set, 54 ... support, 60 ... three-dimensional measuring machine, 61 ... measuring unit, 62 ... controller, 63 ... coordinate calculation processing device, 69 ... probe, 70 ... probe.
Claims (14)
互いに識別可能であるとともに、3次元における各次元ごとに少なくとも1つの直線を定義可能な複数の校正用物体を備えた校正治具を用意しておくとともに、前記各校正用物体における前記各次元ごとの直線を定義するための直線定義パラメータ、前記各校正用物体を識別するための識別パラメータおよび前記各校正用物体によって特定される各定点の位置を表す座標値を予め記憶手段に記憶しておくとともに、前記3次元形状測定装置に関する3次元座標系の予め決めた原点座標位置から、前記多自由度ロボットに関する3次元座標系の原点座標位置である前記多自由度ロボットの先端部の予め決めた位置への移動量を表す原点位置関係パラメータを予め前記記憶手段に記憶しておき、
前記支持機構の先端部に前記3次元形状測定装置を取り付けて、同3次元形状測定装置に前記複数の校正用物体のうちの1つを基準校正用物体として測定させ、前記3次元形状測定装置に関する3次元座標系で表された、前記測定した基準校正用物体に関する3次元画像データを取得する第1の画像データ取得手段と、
前記取得した基準校正用物体に関する3次元画像データに基づいて、前記記憶手段に記憶されていて前記基準校正用物体に関する識別パラメータを用いて、前記各次元ごとに少なくとも1つの直線を定義するための基準校正用物体直線定義パラメータと、前記基準校正用物体によって特定される定点の座標値とを計算する第1のパラメータ計算手段と、
前記計算した基準校正用物体直線定義パラメータ、前記記憶手段に記憶されていて前記基準校正用物体に関する直線定義パラメータ、および前記記憶手段に記憶されている原点位置関係パラメータを用いて、前記3次元形状測定装置に関する3次元座標系の座標値を、前記計算した基準校正用物体直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きを、前記記憶手段に記憶されていて前記基準校正用物体に関する直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きに一致させ、かつ前記多自由度ロボットに関する3次元座標系の原点座標を原点座標とする変換座標系の座標値に座標変換するための基準校正用物体座標変換関数を計算する第1の座標変換関数計算手段と、
前記計算した基準校正用物体座標変換関数を用いて、前記計算した基準校正用物体によって特定される定点の座標値を前記変換座標系の座標値に座標変換して基準定点の座標値とする第1の座標変換手段と、
前記複数の校正用物体の中から指定された前記基準校正用物体以外の1つの校正用物体を被測定対象校正用物体とし、前記3次元形状測定装置に前記被測定対象校正用物体を測定させるために、前記記憶手段に記憶されている前記基準校正用物体および前記被測定対象校正用物体の各定点の位置を表す座標値を用いて、前記3次元形状測定装置の移動位置を計算して、前記計算した移動位置に前記3次元形状測定装置を移動するとともに、前記3次元形状測定装置の向きを指定した向きに設定する移動手段と、
前記移動した3次元形状測定装置に前記被測定対象校正用物体を測定させ、前記3次元形状測定装置に関する3次元座標系で表された、同被測定対象校正用物体に関する3次元画像データを取得する第2の画像データ取得手段と、
前記取得した被測定対象校正用物体に関する3次元画像データに基づいて、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する識別パラメータを用いて、前記各次元ごとに少なくとも1つの直線を定義するための被測定対象校正用物体直線定義パラメータと、前記被測定対象校正用物体によって特定される定点の座標値とを計算する第2のパラメータ計算手段と、
前記計算した被測定対象校正用物体直線定義パラメータ、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する直線定義パラメータ、および前記記憶手段に記憶されている原点位置関係パラメータを用いて、前記3次元形状測定装置に関する3次元座標値を、前記計算した被測定対象校正用物体直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きを、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きに一致させ、かつ前記多自由度ロボットに関する3次元座標系の原点座標を原点座標とする変換座標系の座標値に座標変換するための被測定対象校正用物体座標変換関数を計算する第2の座標変換関数計算手段と、
前記計算した被測定対象校正用物体座標変換関数を用いて、前記計算した被測定対象校正用物体によって特定される定点の座標値を前記変換座標系に座標変換して被測定対象定点の座標値とする第2の座標変換手段と、
前記座標変換した被測定対象定点の各座標値と前記座標変換した基準定点の各座標値との差を、位置決め座標誤差として計算する位置決め座標誤差計算手段と、
前記計算した被測定対象校正用物体座標変換関数と前記計算した基準校正用物体座標変換関数とを用いて、前記第2の画像データ取得手段により前記被測定対象校正用物体の3次元画像データが取得された際の前記3次元形状測定装置の向きと、前記移動手段により指定された前記3次元形状測定装置の向きとのずれを、回転ずれとして計算する回転ずれ計算手段と、
前記計算した位置決め誤差および前記計算した回転ずれに基づいて、前記先端部の位置決め誤差を補正する補正手段とを備えたことを特徴とする多自由度ロボットの位置決め誤差補正装置。 Positioning error correction device for correcting a positioning error of the tip portion in a multi-degree-of-freedom robot having a support mechanism having a plurality of degrees of freedom and capable of attaching a three-dimensional shape measuring device for measuring the three-dimensional surface shape of an object to the tip portion In
A calibration jig having a plurality of calibration objects that can be distinguished from each other and that can define at least one straight line for each dimension in three dimensions is prepared, and each dimension in each calibration object is prepared A straight line definition parameter for defining a straight line, an identification parameter for identifying each calibration object, and a coordinate value representing the position of each fixed point specified by each calibration object are stored in advance in the storage means. In addition, from the predetermined origin coordinate position of the three-dimensional coordinate system related to the three-dimensional shape measuring apparatus, the tip of the multi-degree-of-freedom robot which is the origin coordinate position of the three-dimensional coordinate system related to the multi-degree-of-freedom robot is determined in advance. The origin position relationship parameter representing the amount of movement to the position is previously stored in the storage means,
The three-dimensional shape measuring apparatus is attached to a tip portion of the support mechanism, and the three-dimensional shape measuring apparatus is configured to measure one of the plurality of calibration objects as a reference calibration object. First image data acquisition means for acquiring three-dimensional image data relating to the measured reference calibration object, expressed in a three-dimensional coordinate system for
For defining at least one straight line for each dimension using the identification parameter stored in the storage unit and related to the reference calibration object based on the acquired 3D image data related to the reference calibration object First parameter calculation means for calculating a reference calibration object straight line definition parameter and a coordinate value of a fixed point specified by the reference calibration object;
Using the calculated reference calibration object straight line definition parameter, the straight line definition parameter related to the reference calibration object stored in the storage unit, and the origin position relation parameter stored in the storage unit, the three-dimensional shape The storage means stores the coordinate values of the three-dimensional coordinate system relating to the measuring device, and the orientations of the three straight lines corresponding to the respective dimensions defined by the calculated reference calibration object straight line definition parameters. The coordinate value of the transformed coordinate system that matches the direction of the three straight lines corresponding to each dimension defined by the straight line definition parameter for the object and uses the origin coordinates of the three-dimensional coordinate system for the multi-degree-of-freedom robot as the origin coordinates First coordinate conversion function calculating means for calculating a reference calibration object coordinate conversion function for converting the coordinates into
Using the calculated reference calibration object coordinate conversion function, the coordinate value of the fixed point specified by the calculated reference calibration object is converted into the coordinate value of the converted coordinate system to obtain the coordinate value of the reference fixed point. 1 coordinate conversion means;
One calibration object other than the reference calibration object designated from the plurality of calibration objects is used as a measurement target calibration object, and the three-dimensional shape measuring apparatus measures the measurement target calibration object. Therefore, the moving position of the three-dimensional shape measuring apparatus is calculated using the coordinate values representing the positions of the fixed points of the reference calibration object and the measurement target calibration object stored in the storage means. Moving means for moving the three-dimensional shape measuring apparatus to the calculated movement position and setting the direction of the three-dimensional shape measuring apparatus to a designated direction;
The moved three-dimensional shape measuring apparatus is caused to measure the measurement object calibration object, and three-dimensional image data related to the measurement target calibration object represented in the three-dimensional coordinate system related to the three-dimensional shape measurement apparatus is acquired. Second image data acquisition means for
Based on the acquired three-dimensional image data relating to the calibration object to be measured, at least one straight line for each dimension is stored using the identification parameter stored in the storage means and related to the calibration object to be measured. Second parameter calculation means for calculating a measurement object straight line definition parameter for defining and a coordinate value of a fixed point specified by the measurement target calibration object;
Using the calculated measurement object calibration object straight line definition parameter, the straight line definition parameter stored in the storage means and related to the measurement target calibration object, and the origin position relationship parameter stored in the storage means, The three-dimensional coordinate values related to the three-dimensional shape measuring apparatus are stored in the storage means, and the directions of the three straight lines corresponding to the dimensions defined by the calculated object straight line definition parameter for calibration to be measured are stored. A conversion in which the origin coordinates of the three-dimensional coordinate system relating to the multi-degree-of-freedom robot are made the origin coordinates by matching the directions of the three straight lines corresponding to the dimensions defined by the straight line definition parameters relating to the calibration object to be measured. Second coordinate conversion function meter for calculating an object coordinate conversion function for calibration of the measurement target object for coordinate conversion into coordinate values of the coordinate system And means,
Using the calculated object-to-be-measured object coordinate conversion function, the coordinate value of the fixed point specified by the calculated object to be measured is coordinate-converted into the converted coordinate system, and the coordinate value of the fixed-point to be measured Second coordinate conversion means,
A positioning coordinate error calculating means for calculating a difference between each coordinate value of the coordinate-converted measurement target fixed point and each coordinate value of the coordinate-converted reference fixed point as a positioning coordinate error;
Using the calculated object coordinate conversion function for the calibration object to be measured and the calculated object coordinate conversion function for the reference calibration, the second image data acquisition means obtains the three-dimensional image data of the object to be measured calibration object. A rotational deviation calculating means for calculating a deviation between the orientation of the three-dimensional shape measuring apparatus when acquired and the orientation of the three-dimensional shape measuring apparatus designated by the moving means as a rotational deviation;
A positioning error correction apparatus for a multi-degree-of-freedom robot, comprising: correction means for correcting the positioning error of the tip based on the calculated positioning error and the calculated rotational deviation.
前記基準校正用物体以外の前記複数の校正用物体のそれぞれに対し、前記移動手段による3次元形状測定装置の移動、前記第2の画像データ取得手段による3次元画像データの取得、前記第2のパラメータ計算手段による被測定対象校正用物体直線定義パラメータおよび座標値の計算、前記第2の座標変換関数計算手段による被測定対象校正用物体座標変換関数の計算、前記第2の座標変換手段による座標変換、前記位置決め座標誤差計算手段による位置決め座標誤差の計算、ならびに前記回転ずれ計算手段による回転ずれの計算を行わせる繰り返し制御手段と、
前記位置決め座標誤差計算手段により計算された位置決め座標誤差および前記回転ずれ計算手段により計算された回転ずれを補正するための補正データを、前記基準校正用物体以外の前記複数の校正用物体のそれぞれに対応させて前記記憶手段に記憶させる補正データ記憶手段とを備えた多自由度ロボットの位置決め誤差補正装置。 The positioning error correction device for a multi-degree-of-freedom robot according to claim 1,
For each of the plurality of calibration objects other than the reference calibration object, the movement means moves the three-dimensional shape measuring apparatus, the second image data acquisition means obtains three-dimensional image data, the second Measurement object calibration object straight line definition parameter and coordinate value calculation by parameter calculation means, measurement object calibration object coordinate conversion function calculation by second coordinate conversion function calculation means, coordinates by second coordinate conversion means Repetitive control means for performing conversion, calculation of positioning coordinate error by the positioning coordinate error calculating means, and calculation of rotational deviation by the rotational deviation calculating means;
Correction data for correcting the positioning coordinate error calculated by the positioning coordinate error calculating means and the rotational deviation calculated by the rotational deviation calculating means is provided for each of the plurality of calibration objects other than the reference calibration object. A positioning error correction device for a multi-degree-of-freedom robot, comprising correction data storage means for correspondingly storing the data in the storage means.
前記校正治具における複数の各校正用物体は、少なくとも3つ以上の物体により1つの校正用物体を構成し、
前記第1のパラメータ計算手段は、前記基準校正用物体を構成する前記少なくとも3つ以上の物体によって特定される定点の座標値を計算し、
前記第2のパラメータ計算手段は、前記被測定対象校正用物体を構成する前記少なくとも3つ以上の物体によって特定される定点の座標値を計算する多自由度ロボットの位置決め誤差補正装置。 In the positioning error correction apparatus for a multi-degree-of-freedom robot according to claim 1 or 2,
Each of the plurality of calibration objects in the calibration jig constitutes one calibration object by at least three or more objects,
The first parameter calculating means calculates a coordinate value of a fixed point specified by the at least three or more objects constituting the reference calibration object,
The second parameter calculation means is a positioning error correction apparatus for a multi-degree-of-freedom robot that calculates coordinate values of fixed points specified by the at least three or more objects constituting the measurement target calibration object.
前記記憶手段に記憶される各直線定義パラメータは、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点であり、
前記第1のパラメータ計算手段は、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点の座標値をそれぞれ計算して、同計算した前記各物体に対応する特定点の中心位置を、前記基準校正用物体によって特定される定点として計算し、
前記第2のパラメータ計算手段は、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点の座標値を計算して、同計算した前記各物体に対応する特定点の中心位置を、前記被測定対象校正用物体によって特定される定点として計算する多自由度ロボットの位置決め誤差補正装置。 The positioning error correction device for a multi-degree-of-freedom robot according to claim 3,
Each straight line definition parameter stored in the storage means is a specific point specified by each object for each of the at least three or more objects,
The first parameter calculation means calculates a coordinate value of a specific point specified by each object for each of the at least three or more objects, and calculates a specific point corresponding to each of the calculated objects. Calculate the center position as a fixed point specified by the reference calibration object,
The second parameter calculating means calculates a coordinate value of a specific point specified by each object for each of the at least three or more objects, and the center of the specific point corresponding to each of the calculated objects A positioning error correction apparatus for a multi-degree-of-freedom robot that calculates a position as a fixed point specified by the calibration object to be measured.
前記少なくとも3つ以上の各物体は球体であり、
前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される各特定点は、前記各球体の球体中心である多自由度ロボットの位置決め誤差補正装置。 The positioning error correction device for a multi-degree-of-freedom robot according to claim 4,
Each of the at least three objects is a sphere;
A positioning error correction apparatus for a multi-degree-of-freedom robot, wherein each specific point specified by each object for each of the at least three or more objects is the sphere center of each sphere.
前記複数の各校正用物体は、多面体で構成されるとともに同多面体を構成する各面のうちの少なくとも3つの面が前記3次元形状測定装置によって同時に測定可能な状態で前記校正治具に備えられ、
前記記憶手段に記憶される各直線定義パラメータは、前記少なくとも3つの各面ごとの各法線ベクトルであり、
前記第1のパラメータ計算手段は、前記少なくとも3つ以上の面によって形成される頂点の座標値を、前記基準校正用物体によって特定される定点として計算し、
前記第2のパラメータ計算手段は、前記少なくとも3つ以上の面によって形成される頂点の座標値を、前記被測定対象用物体によって特定される定点として計算する多自由度ロボットの位置決め誤差補正装置。 In the positioning error correction apparatus for a multi-degree-of-freedom robot according to claim 1 or 2,
Each of the plurality of calibration objects includes a polyhedron and is provided in the calibration jig in a state where at least three of the surfaces constituting the polyhedron can be simultaneously measured by the three-dimensional shape measuring apparatus. ,
Each straight line definition parameter stored in the storage means is a normal vector for each of the at least three surfaces,
The first parameter calculation means calculates a coordinate value of a vertex formed by the at least three surfaces as a fixed point specified by the reference calibration object,
The multi-degree-of-freedom robot positioning error correction device, wherein the second parameter calculation means calculates a coordinate value of a vertex formed by the at least three surfaces as a fixed point specified by the object to be measured.
前記識別パラメータは、校正用物体における表面の反射率、形状、大きさまたは校正用物体間の配置状態である多自由度ロボットの位置決め誤差補正装置。 The positioning error correction apparatus for a multi-degree-of-freedom robot according to any one of claims 1 to 6,
The identification parameter is a positioning error correction device for a multi-degree-of-freedom robot, which is the reflectance, shape, size, or arrangement state between the calibration objects on the calibration object.
互いに識別可能であるとともに、3次元における各次元ごとに少なくとも1つの直線を定義可能な複数の校正用物体を備えた校正治具を用意しておくとともに、前記各校正用物体における前記各次元ごとの直線を定義するための直線定義パラメータ、前記各校正用物体を識別するための識別パラメータおよび前記各校正用物体によって特定される各定点の位置を表す座標値を予め記憶手段に記憶しておくとともに、前記3次元形状測定装置に関する3次元座標系の予め決めた原点座標位置から、前記多自由度ロボットに関する3次元座標系の原点座標位置である前記多自由度ロボットの先端部の予め決めた位置への移動量を表す原点位置関係パラメータを予め前記記憶手段に記憶しておき、
前記支持機構の先端部に前記3次元形状測定装置を取り付けて、同3次元形状測定装置に前記複数の校正用物体のうちの1つを基準校正用物体として測定させ、前記3次元形状測定装置に関する3次元座標系で表された、前記測定した基準校正用物体に関する3次元画像データを取得する第1の画像データ取得ステップと、
前記取得した基準校正用物体に関する3次元画像データに基づいて、前記記憶手段に記憶されていて前記基準校正用物体に関する識別パラメータを用いて、前記各次元ごとに少なくとも1つの直線を定義するための基準校正用物体直線定義パラメータと、前記基準校正用物体によって特定される定点の座標値とを計算する第1のパラメータ計算ステップと、
前記計算した基準校正用物体直線定義パラメータ、前記記憶手段に記憶されていて前記基準校正用物体に関する直線定義パラメータ、および前記記憶手段に記憶されている原点位置関係パラメータを用いて、前記3次元形状測定装置に関する3次元座標系の座標値を、前記計算した基準校正用物体直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きを、前記記憶手段に記憶されていて前記基準校正用物体に関する直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きに一致させ、かつ前記多自由度ロボットに関する3次元座標系の原点座標を原点座標とする変換座標系の座標値に座標変換するための基準校正用物体座標変換関数を計算する第1の座標変換関数計算ステップと、
前記計算した基準校正用物体座標変換関数を用いて、前記計算した基準校正用物体によって特定される定点の座標値を前記変換座標系の座標値に座標変換して基準定点の座標値とする第1の座標変換ステップと、
前記複数の校正用物体の中から指定された前記基準校正用物体以外の1つの校正用物体を被測定対象校正用物体とし、前記3次元形状測定装置に前記被測定対象校正用物体を測定させるために、前記記憶手段に記憶されている前記基準校正用物体および前記被測定対象校正用物体の各定点の位置を表す座標値を用いて、前記3次元形状測定装置の移動位置を計算して、前記計算した移動位置に前記3次元形状測定装置を移動するとともに、前記3次元形状測定装置の向きを指定した向きに設定する移動ステップと、
前記移動した3次元形状測定装置に前記被測定対象校正用物体を測定させ、前記3次元形状測定装置に関する3次元座標系で表された、同被測定対象校正用物体に関する3次元画像データを取得する第2の画像データ取得ステップと、
前記取得した被測定対象校正用物体に関する3次元画像データに基づいて、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する識別パラメータを用いて、前記各次元ごとに少なくとも1つの直線を定義するための被測定対象校正用物体直線定義パラメータと、前記被測定対象校正用物体によって特定される定点の座標値とを計算する第2のパラメータ計算ステップと、
前記計算した被測定対象校正用物体直線定義パラメータ、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する直線定義パラメータ、および前記記憶手段に記憶されている原点位置関係パラメータを用いて、前記3次元形状測定装置に関する3次元座標値を、前記計算した被測定対象校正用物体直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きを、前記記憶手段に記憶されていて前記被測定対象校正用物体に関する直線定義パラメータによって定義される前記各次元に対応する3つの直線の向きに一致させ、かつ前記多自由度ロボットに関する3次元座標系の原点座標を原点座標とする変換座標系の座標値に座標変換するための被測定対象校正用物体座標変換関数を計算する第2の座標変換関数計算ステップと、
前記計算した被測定対象校正用物体座標変換関数を用いて、前記計算した被測定対象校正用物体によって特定される定点の座標値を前記変換座標系に座標変換して被測定対象定点の座標値とする第2の座標変換ステップと、
前記座標変換した被測定対象定点の各座標値と前記座標変換した基準定点の各座標値との差を、位置決め座標誤差として計算する位置決め座標誤差計算ステップと、
前記計算した被測定対象校正用物体座標変換関数と前記計算した基準校正用物体座標変換関数とを用いて、前記第2の画像データ取得手段により前記被測定対象校正用物体の3次元画像データが取得された際の前記3次元形状測定装置の向きと、前記移動手段により指定された前記3次元形状測定装置の向きとのずれを、回転ずれとして計算する回転ずれ計算ステップと、
前記計算した位置決め誤差および前記計算した回転ずれに基づいて、前記先端部の位置決め誤差を補正する補正ステップとを備えたことを特徴とする多自由度ロボットの位置決め誤差補正方法。 A positioning error correction method for correcting a positioning error of the tip in a multi-degree-of-freedom robot having a support mechanism having a plurality of degrees of freedom and capable of attaching a three-dimensional shape measuring device for measuring a three-dimensional surface shape of an object to the tip. In
A calibration jig having a plurality of calibration objects that can be distinguished from each other and that can define at least one straight line for each dimension in three dimensions is prepared, and each dimension in each calibration object is prepared A straight line definition parameter for defining a straight line, an identification parameter for identifying each calibration object, and a coordinate value representing the position of each fixed point specified by each calibration object are stored in advance in the storage means. In addition, from the predetermined origin coordinate position of the three-dimensional coordinate system related to the three-dimensional shape measuring apparatus, the tip of the multi-degree-of-freedom robot which is the origin coordinate position of the three-dimensional coordinate system related to the multi-degree-of-freedom robot is determined in advance. The origin position relationship parameter representing the amount of movement to the position is previously stored in the storage means,
The three-dimensional shape measuring apparatus is attached to a tip portion of the support mechanism, and the three-dimensional shape measuring apparatus is configured to measure one of the plurality of calibration objects as a reference calibration object. A first image data acquisition step for acquiring three-dimensional image data relating to the measured reference calibration object expressed in a three-dimensional coordinate system for
For defining at least one straight line for each dimension using the identification parameter stored in the storage unit and related to the reference calibration object based on the acquired 3D image data related to the reference calibration object A first parameter calculating step for calculating a reference calibration object straight line definition parameter and a coordinate value of a fixed point specified by the reference calibration object;
Using the calculated reference calibration object straight line definition parameter, the straight line definition parameter related to the reference calibration object stored in the storage unit, and the origin position relation parameter stored in the storage unit, the three-dimensional shape The storage means stores the coordinate values of the three-dimensional coordinate system relating to the measuring device, and the orientations of the three straight lines corresponding to the respective dimensions defined by the calculated reference calibration object straight line definition parameters. The coordinate value of the transformed coordinate system that matches the direction of the three straight lines corresponding to each dimension defined by the straight line definition parameter for the object and uses the origin coordinates of the three-dimensional coordinate system for the multi-degree-of-freedom robot as the origin coordinates A first coordinate transformation function calculating step for calculating a reference calibration object coordinate transformation function for coordinate transformation into
Using the calculated reference calibration object coordinate conversion function, the coordinate value of the fixed point specified by the calculated reference calibration object is converted into the coordinate value of the converted coordinate system to obtain the coordinate value of the reference fixed point. 1 coordinate conversion step;
One calibration object other than the reference calibration object designated from the plurality of calibration objects is used as a measurement target calibration object, and the three-dimensional shape measuring apparatus measures the measurement target calibration object. Therefore, the moving position of the three-dimensional shape measuring apparatus is calculated using the coordinate values representing the positions of the fixed points of the reference calibration object and the measurement target calibration object stored in the storage means. Moving the three-dimensional shape measuring apparatus to the calculated movement position and setting the direction of the three-dimensional shape measuring apparatus to a designated direction;
The moved three-dimensional shape measuring apparatus is caused to measure the measurement object calibration object, and three-dimensional image data related to the measurement target calibration object represented in the three-dimensional coordinate system related to the three-dimensional shape measurement apparatus is acquired. A second image data acquisition step,
Based on the acquired three-dimensional image data relating to the calibration object to be measured, at least one straight line for each dimension is stored using the identification parameter stored in the storage means and related to the calibration object to be measured. A second parameter calculation step of calculating a measurement object straight line definition parameter for defining and a coordinate value of a fixed point specified by the measurement target calibration object;
Using the calculated measurement object calibration object straight line definition parameter, the straight line definition parameter stored in the storage means and related to the measurement target calibration object, and the origin position relationship parameter stored in the storage means, The three-dimensional coordinate values related to the three-dimensional shape measuring apparatus are stored in the storage means, and the directions of the three straight lines corresponding to the dimensions defined by the calculated object straight line definition parameter for calibration to be measured are stored. A conversion in which the origin coordinates of the three-dimensional coordinate system relating to the multi-degree-of-freedom robot are made the origin coordinates by matching the directions of the three straight lines corresponding to the dimensions defined by the straight line definition parameters relating to the calibration object to be measured. Second coordinate conversion function meter for calculating an object coordinate conversion function for calibration of the measurement target object for coordinate conversion into coordinate values of the coordinate system And the step,
Using the calculated object-to-be-measured object coordinate conversion function, the coordinate value of the fixed point specified by the calculated object to be measured is coordinate-converted into the converted coordinate system, and the coordinate value of the fixed-point to be measured A second coordinate conversion step,
A positioning coordinate error calculation step of calculating a difference between each coordinate value of the coordinate-converted measurement target fixed point and each coordinate value of the coordinate-converted reference fixed point as a positioning coordinate error;
Using the calculated object coordinate conversion function for the calibration object to be measured and the calculated object coordinate conversion function for the reference calibration, the second image data acquisition means obtains the three-dimensional image data of the object to be measured calibration object. A rotational deviation calculating step for calculating a deviation between the orientation of the three-dimensional shape measuring apparatus when acquired and the orientation of the three-dimensional shape measuring apparatus designated by the moving means as a rotational deviation;
A positioning error correction method for a multi-degree-of-freedom robot, comprising: a correction step for correcting the positioning error of the tip based on the calculated positioning error and the calculated rotational deviation.
前記基準校正用物体以外の前記複数の校正用物体のそれぞれに対し、前記移動ステップによる3次元形状測定装置の移動、前記第2の画像データ取得ステップによる3次元画像データの取得、前記第2のパラメータ計算ステップによる被測定対象校正用物体直線定義パラメータおよび座標値の計算、前記第2の座標変換関数計算ステップによる被測定対象校正用物体座標変換関数の計算、前記第2の座標変換ステップによる座標変換、前記位置決め座標誤差計算ステップによる位置決め座標誤差の計算、ならびに前記回転ずれ計算ステップによる回転ずれの計算を行わせる繰り返し制御ステップと、
前記位置決め座標誤差計算ステップにより計算された位置決め座標誤差および前記回転ずれ計算ステップにより計算された回転ずれを補正するための補正データを、前記基準校正用物体以外の前記複数の校正用物体のそれぞれに対応させて前記記憶手段に記憶させる補正データ記憶ステップとを備えた多自由度ロボットの位置決め誤差補正方法。 The positioning error correction method for a multi-degree-of-freedom robot according to claim 8,
For each of the plurality of calibration objects other than the reference calibration object, the three-dimensional shape measuring apparatus is moved by the moving step, the three-dimensional image data is obtained by the second image data obtaining step, the second Measurement object calibration object straight line definition parameter and coordinate value calculation by parameter calculation step, measurement object calibration object coordinate conversion function calculation by second coordinate conversion function calculation step, coordinate by second coordinate conversion step Repetitive control step for performing conversion, calculation of positioning coordinate error by the positioning coordinate error calculation step, and calculation of rotational deviation by the rotational deviation calculation step;
Correction data for correcting the positioning coordinate error calculated in the positioning coordinate error calculation step and the rotation shift calculated in the rotation shift calculation step are set in each of the plurality of calibration objects other than the reference calibration object. A method for correcting a positioning error of a multi-degree-of-freedom robot, comprising a correction data storage step for storing the correction data in the storage means.
前記校正治具における複数の各校正用物体は、少なくとも3つ以上の物体により1つの校正用物体を構成し、
前記第1のパラメータ計算ステップは、前記基準校正用物体を構成する前記少なくとも3つ以上の物体によって特定される定点の座標値を計算し、
前記第2のパラメータ計算ステップは、前記被測定対象校正用物体を構成する前記少なくとも3つ以上の物体によって特定される定点の座標値を計算する多自由度ロボットの位置決め誤差補正方法。 The positioning error correction method for a multi-degree-of-freedom robot according to claim 8 or 9,
Each of the plurality of calibration objects in the calibration jig constitutes one calibration object by at least three or more objects,
The first parameter calculating step calculates a coordinate value of a fixed point specified by the at least three objects constituting the reference calibration object,
The second parameter calculation step is a multi-degree-of-freedom robot positioning error correction method of calculating coordinate values of fixed points specified by the at least three or more objects constituting the measurement target calibration object.
前記記憶手段に記憶される各直線定義パラメータは、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点であり、
前記第1のパラメータ計算ステップは、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点の座標値をそれぞれ計算して、同計算した前記各物体に対応する特定点の中心位置を、前記基準校正用物体によって特定される定点として計算し、
前記第2のパラメータ計算ステップは、前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される特定点の座標値を計算して、同計算した前記各物体に対応する特定点の中心位置を、前記被測定対象校正用物体によって特定される定点として計算する多自由度ロボットの位置決め誤差補正方法。 The positioning error correction method for a multi-degree-of-freedom robot according to claim 10,
Each straight line definition parameter stored in the storage means is a specific point specified by each object for each of the at least three or more objects,
The first parameter calculating step calculates a coordinate value of a specific point specified by each object for each of the at least three or more objects, and calculates a specific point corresponding to each of the calculated objects. Calculate the center position as a fixed point specified by the reference calibration object,
The second parameter calculating step calculates a coordinate value of a specific point specified by each object for each of the at least three or more objects, and the center of the specific point corresponding to each of the calculated objects A positioning error correction method for a multi-degree-of-freedom robot that calculates a position as a fixed point specified by the calibration object to be measured.
前記少なくとも3つ以上の各物体は球体であり、
前記少なくとも3つ以上の各物体ごとに同各物体によってそれぞれ特定される各特定点は、前記各球体の球体中心である多自由度ロボットの位置決め誤差補正方法。 The positioning error correction method for a multi-degree-of-freedom robot according to claim 11,
Each of the at least three objects is a sphere;
A positioning error correction method for a multi-degree-of-freedom robot in which each specific point specified by each of the at least three or more objects is the sphere center of each sphere.
前記複数の各校正用物体は、多面体で構成されるとともに同多面体を構成する各面のうちの少なくとも3つの面が前記3次元形状測定装置によって同時に測定可能な状態で前記校正治具に備えられ、
前記記憶手段に記憶される各直線定義パラメータは、前記少なくとも3つの各面ごとの各法線ベクトルであり、
前記第1のパラメータ計算ステップは、前記少なくとも3つ以上の面によって形成される頂点の座標値を、前記基準校正用物体によって特定される定点として計算し、
前記第2のパラメータ計算ステップは、前記少なくとも3つ以上の面によって形成される頂点の座標値を、前記被測定対象用物体によって特定される定点として計算する多自由度ロボットの位置決め誤差補正方法。 The positioning error correction method for a multi-degree-of-freedom robot according to claim 8 or 9,
Each of the plurality of calibration objects includes a polyhedron and is provided in the calibration jig in a state where at least three of the surfaces constituting the polyhedron can be simultaneously measured by the three-dimensional shape measuring apparatus. ,
Each straight line definition parameter stored in the storage means is a normal vector for each of the at least three surfaces,
The first parameter calculating step calculates a coordinate value of a vertex formed by the at least three surfaces as a fixed point specified by the reference calibration object;
The second parameter calculating step is a multi-degree-of-freedom positioning error correction method for calculating a coordinate value of a vertex formed by the at least three or more faces as a fixed point specified by the object to be measured.
前記識別パラメータは、校正用物体における表面の反射率、形状、大きさまたは校正用物体間の配置状態である多自由度ロボットの位置決め誤差補正方法。 The positioning error correction method for a multi-degree-of-freedom robot according to any one of claims 8 to 13,
The identification parameter is a method for correcting a positioning error of a multi-degree-of-freedom robot, which is a reflectance, shape, size, or arrangement state between calibration objects on a calibration object.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005319214A JP4443497B2 (en) | 2005-11-02 | 2005-11-02 | Multi-degree-of-freedom robot positioning error correction apparatus and positioning error correction method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005319214A JP4443497B2 (en) | 2005-11-02 | 2005-11-02 | Multi-degree-of-freedom robot positioning error correction apparatus and positioning error correction method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007125633A JP2007125633A (en) | 2007-05-24 |
JP4443497B2 true JP4443497B2 (en) | 2010-03-31 |
Family
ID=38148725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005319214A Expired - Fee Related JP4443497B2 (en) | 2005-11-02 | 2005-11-02 | Multi-degree-of-freedom robot positioning error correction apparatus and positioning error correction method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4443497B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103792956A (en) * | 2014-01-26 | 2014-05-14 | 三一汽车制造有限公司 | Method and device controlling spatial motion of intelligent arm |
CN103853172A (en) * | 2014-01-26 | 2014-06-11 | 三一汽车制造有限公司 | Method and device for planning spatial motion of intelligent arm |
US20210154851A1 (en) * | 2019-11-26 | 2021-05-27 | Fanuc Corporation | Coordinate-system setting system and coordinate-system setting method |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8220335B2 (en) * | 2008-05-16 | 2012-07-17 | Lockheed Martin Corporation | Accurate image acquisition for structured-light system for optical shape and positional measurements |
JP2011067889A (en) * | 2009-09-25 | 2011-04-07 | Ihi Corp | Calibration device and calibration method |
JP5450242B2 (en) * | 2010-05-11 | 2014-03-26 | 株式会社ダイヘン | Manipulator calibration method and robot control system |
CN101853012B (en) * | 2010-05-24 | 2011-12-14 | 西安理工大学 | Two-stage positioning free variable domain mechanical processing machine and two-stage positioning method thereof |
CN104339347A (en) * | 2013-08-01 | 2015-02-11 | 常州金刚文化科技集团有限公司 | Spatial six-degree-of-freedom robot |
JP6335460B2 (en) * | 2013-09-26 | 2018-05-30 | キヤノン株式会社 | Robot system control apparatus, command value generation method, and robot system control method |
JP6116496B2 (en) * | 2013-11-11 | 2017-04-19 | 三菱電機株式会社 | Lens position detection method and apparatus, and lens position adjustment method and apparatus |
KR102314092B1 (en) * | 2016-01-21 | 2021-10-19 | 현대중공업지주 주식회사 | Calibration apparatus and the method for robot |
CN108731615B (en) * | 2018-03-19 | 2020-12-25 | 苏州玻色智能科技有限公司 | Equipment and method for detecting curved glass panel |
CN110412054B (en) * | 2018-04-28 | 2024-04-30 | 苏州玻色智能科技有限公司 | Glass panel detection equipment and detection image splicing method |
CN111113486B (en) * | 2019-11-22 | 2023-04-07 | 上海新时达机器人有限公司 | Performance test method and device of mechanical arm, computer equipment and storage medium |
CN111421542B (en) * | 2020-04-03 | 2023-02-10 | 重庆固高科技长江研究院有限公司 | Tool center point pose calculation method and control method of robot end clamp |
JP7414643B2 (en) * | 2020-05-28 | 2024-01-16 | 株式会社日立製作所 | Shape measuring device and shape measuring method |
CN111735390B (en) * | 2020-08-28 | 2020-12-11 | 中国计量大学 | Calibration block for line laser sensor and hand-eye calibration method |
CN112247983B (en) * | 2020-08-28 | 2021-10-15 | 南京蹑波物联网科技有限公司 | Industrial robot calibration device and calibration method |
KR102422990B1 (en) * | 2020-10-30 | 2022-07-21 | 한국전자기술연구원 | System and Method for calibration of robot based on a scanning |
CN114734435B (en) * | 2022-03-24 | 2023-09-19 | 苏州艾利特机器人有限公司 | Method, device and system for calibrating encoder based on hypersphere |
-
2005
- 2005-11-02 JP JP2005319214A patent/JP4443497B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103792956A (en) * | 2014-01-26 | 2014-05-14 | 三一汽车制造有限公司 | Method and device controlling spatial motion of intelligent arm |
CN103853172A (en) * | 2014-01-26 | 2014-06-11 | 三一汽车制造有限公司 | Method and device for planning spatial motion of intelligent arm |
US20210154851A1 (en) * | 2019-11-26 | 2021-05-27 | Fanuc Corporation | Coordinate-system setting system and coordinate-system setting method |
Also Published As
Publication number | Publication date |
---|---|
JP2007125633A (en) | 2007-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4443497B2 (en) | Multi-degree-of-freedom robot positioning error correction apparatus and positioning error correction method | |
JP5599524B2 (en) | Automatic measurement of dimensional data by laser tracker | |
US10585167B2 (en) | Relative object localization process for local positioning system | |
JP4491687B2 (en) | Coordinate transformation function correction method | |
EP1698954B1 (en) | Method for calibrating parallel kinematic mechanism | |
JP5378374B2 (en) | Method and system for grasping camera position and direction relative to real object | |
JP6080407B2 (en) | Three-dimensional measuring device and robot device | |
JP2004257927A (en) | Three-dimensional profile measuring system and method for measuring the same | |
JP2001515236A (en) | Method for calibrating a robot inspection system | |
JP3944091B2 (en) | 3D image data generation method | |
JP7216775B2 (en) | ROBOT ARM COORDINATE SYSTEM CALIBRATION DEVICE AND CALIBRATION METHOD | |
EP3322959B1 (en) | Method for measuring an artefact | |
JP2020535439A (en) | Systems and methods for measuring various properties of an object | |
US11276198B2 (en) | Apparatus for determining dimensional and geometric properties of a measurement object | |
JP4291178B2 (en) | 3D shape measuring system, measuring method, and 3D shape measuring stage device | |
JP2020513333A (en) | Industrial robot measurement system and method | |
EP3693697B1 (en) | Method for calibrating a 3d measurement arrangement and 3d measurement arrangement | |
JP5059700B2 (en) | DUT shape measuring jig and three-dimensional shape measuring method | |
JP2007033087A (en) | Calibration device and method | |
JP5059699B2 (en) | DUT shape measuring jig and three-dimensional shape measuring method | |
JP2006078398A (en) | Method and device for measuring eccentricity and inclination of both sides | |
JP4244705B2 (en) | Calibration apparatus and method for laser processing head with rotating mechanism | |
JP4443523B2 (en) | Coordinate conversion function acquisition method and coordinate conversion function acquisition program | |
JP2007256188A (en) | Three-dimensional shape measuring system and three-dimensional shape measuring method | |
EP3745223B1 (en) | Method for self-verification of mechatronic systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070606 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090217 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090416 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090623 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090630 |
|
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: 20100105 |
|
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: 20100112 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4443497 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140122 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |