JP3263175B2 - Installation error calibration method and calibration control device for industrial robot system - Google Patents

Installation error calibration method and calibration control device for industrial robot system

Info

Publication number
JP3263175B2
JP3263175B2 JP08993693A JP8993693A JP3263175B2 JP 3263175 B2 JP3263175 B2 JP 3263175B2 JP 08993693 A JP08993693 A JP 08993693A JP 8993693 A JP8993693 A JP 8993693A JP 3263175 B2 JP3263175 B2 JP 3263175B2
Authority
JP
Japan
Prior art keywords
coordinate system
tool
work
calculated
orientation
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 - Lifetime
Application number
JP08993693A
Other languages
Japanese (ja)
Other versions
JPH06301411A (en
Inventor
文男 笠上
雅成 藤田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Daihen Corp
Original Assignee
Daihen Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Daihen Corp filed Critical Daihen Corp
Priority to JP08993693A priority Critical patent/JP3263175B2/en
Publication of JPH06301411A publication Critical patent/JPH06301411A/en
Application granted granted Critical
Publication of JP3263175B2 publication Critical patent/JP3263175B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、産業用ロボットシステ
ムの設置誤差較正方法及び較正制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an installation error calibration method and a calibration control device for an industrial robot system.

【0002】[0002]

【従来の技術】従来、作業用ツールを把持し当該ツール
の位置と姿勢(以下、位置姿勢という。)を制御するロ
ボットマニピュレータ(以下、ロボットという。)と、
ロボットを搭載する移動機構装置である1軸スライダ
と、被作業ワークを搭載し当該ワークの姿勢を制御する
ワーク取扱装置であるポジショナと、それらを制御する
制御装置とを用いて産業用ロボットシステムを構成し、
ストアード・コンピュータプログラム方式を用いて、ロ
ボットとスライダの両方を動作させる協調動作によりツ
ールの位置姿勢を制御することが知られている。ここ
で、制御装置内部に設定する各機械毎の座標系は、一般
にスライダの駆動軸方向とロボットの機械座標系の座標
軸の方向とが一致するように設定される。
2. Description of the Related Art Conventionally, a robot manipulator (hereinafter, referred to as a robot) that grips a work tool and controls the position and orientation of the tool (hereinafter, referred to as position and orientation).
An industrial robot system is constructed using a one-axis slider, which is a moving mechanism device that mounts a robot, a positioner, which is a work handling device that mounts a work to be worked and controls the posture of the work, and a control device that controls them. Make up,
It is known to control the position and orientation of a tool by a cooperative operation of operating both a robot and a slider by using a stored computer program method. Here, the coordinate system for each machine set in the control device is generally set such that the direction of the drive axis of the slider and the direction of the coordinate axes of the machine coordinate system of the robot match.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、実際の
ロボットシステムでは、スライダ上にロボットを搭載す
る場合の据え付け誤差により、しばしば、スライダの駆
動軸方向とロボットの機械座標系の座標軸の方向が正確
に一致しない場合が生じる。当該据え付け誤差がある実
際のロボットシステムにおいては、ロボットとスライダ
の両方を協調動作させた場合に、ワークに対するツール
の相対速度を一定にすることができず、作業中のツール
の軌跡が予め決められた所望のツールの軌跡からずれ
て、例えば溶接作業などに適用した場合、溶接の品質が
大幅に低下するなど、所望の溶接結果を得ることができ
ないという問題点がった。
However, in an actual robot system, the direction of the drive axis of the slider and the direction of the coordinate axis of the robot's mechanical coordinate system are often accurate due to an installation error when the robot is mounted on the slider. There may be cases where they do not match. In an actual robot system having the installation error, when both the robot and the slider are operated cooperatively, the relative speed of the tool with respect to the workpiece cannot be constant, and the trajectory of the working tool is determined in advance. When applied to a welding operation or the like out of the trajectory of the desired tool, there is a problem that a desired welding result cannot be obtained, for example, the quality of welding is significantly reduced.

【0004】以上の問題点を解決するために、各機械の
座標を校正する方法(以下、従来例の方法という。)
が、例えば、特開昭64−8408号公報において開示
されている。この方法では、複数個の座標系の各々によ
って表現されたデータ組み合わせてロボットの動作制御
を行うロボットシステムと視覚装置の各々に固有の同次
変換行列を設定し、視覚装置によりワークの位置姿勢の
ずれ量を検出して、ロボットと視覚装置との間で座標系
間の較正を行う。
In order to solve the above problems, a method of calibrating the coordinates of each machine (hereinafter referred to as a conventional method).
Is disclosed, for example, in JP-A-64-8408. In this method, a homogeneous transformation matrix unique to each of a robot system and a visual device that controls the operation of a robot by combining data represented by each of a plurality of coordinate systems is set, and the position and orientation of a workpiece are set by the visual device. The amount of deviation is detected, and calibration between the coordinate systems is performed between the robot and the visual device.

【0005】しかしながら、従来例の方法では、視覚装
置を用いるとシステム全体のコストが高価となるという
問題点があった。また、当該方向の明細書の発明の詳細
な説明の欄の最後部に、「ロボットとポジショナ等の周
辺機器、ロボットと他のロボット、更にはそれらを包含
した多数の機器により構成される産業用ロボットシステ
ムなどにも、ロボットと視覚装置との間の座標系間を較
正する方法が同様に適用しうる」と記載しているが、そ
の具体的な実現手段は記載されておらず、その方法は不
明である。言い換えれば、この従来例の方法によれば、
ロボット単体のみへの適用は可能であるが、複数の機械
で構成されるロボットシステムへの適用はできない。
However, the conventional method has a problem that the use of a visual device increases the cost of the entire system. In addition, at the end of the detailed description of the invention in the specification of the direction, at the end of the description, "a peripheral device such as a robot and a positioner, a robot and other robots, and an industrial A method for calibrating between coordinate systems between a robot and a visual device can be similarly applied to a robot system or the like, "but the specific means for realizing the method is not described, and the method is not described. Is unknown. In other words, according to this conventional method,
It can be applied only to a robot alone, but cannot be applied to a robot system composed of multiple machines.

【0006】本発明の目的は以上の課題を解決し、ツー
ルを把持するツール移動装置と、ワークを搭載するワー
ク取扱装置とからなる産業用ロボットシステムにおい
て、取り付けなどの設置誤差を較正することができる産
業用ロボットシステムの設置誤差較正方法及びその較正
制御装置を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to solve the above problems and to calibrate an installation error such as mounting in an industrial robot system including a tool moving device for holding a tool and a work handling device for mounting a work. It is an object of the present invention to provide a method of calibrating an installation error of an industrial robot system and a calibration control device thereof.

【0007】[0007]

【0008】[0008]

【課題を解決するための手段】本発明に係る請求項1記
載の産業用ロボットシステムの設置誤差較正方法は、所
定の作業を行うツールと、上記ツールを移動させる第1
の関節手段とを含むツール移動装置と、被作業物である
ワークと、上記ワークを移動させる第2の関節手段とを
含むワーク取扱装置とを備えた産業用ロボットシステム
の設置誤差較正方法であって、上記ツールの位置が上記
ワークに設定されたワークベース座標系の原点となるよ
うに上記第1の関節手段を制御して、上記第1の関節手
段の制御の前後における上記ツールの先端と、上記ワー
クベース座標系の原点にその1頂点が一致するように載
置された直方体のブロックとの間の各距離を測定する第
1のステップと、上記第1のステップにおいて測定され
た各距離に基づいて、所定の絶対座標系を基準とした上
記ワークベース座標系の位置の誤差を演算し、上記演算
した誤差に基づいて絶対座標系を基準とした上記ワーク
ベース座標系の位置を較正する第2のステップと、上記
ツールの位置を所定の第1の位置から所定の第2の位置
に移動させるように上記第2の関節手段を制御して、上
記第2の関節手段の制御の前後における上記ツールの先
端と上記第2の関節手段との間の各距離を測定する第3
のステップと、上記第3のステップにおいて測定された
各距離に基づいて、上記ツールのずれ量を演算しかつ上
記絶対座標系を基準とした上記ワークベース座標系の位
置姿勢の誤差を演算し、上記演算した誤差に基づいて上
記絶対座標系を基準とした上記ワークベース座標系の位
置姿勢を較正する第4のステップとを含むことを特徴と
する。
According to a first aspect of the present invention, there is provided a method for calibrating an installation error of an industrial robot system, comprising: a tool for performing a predetermined operation; and a first tool for moving the tool.
A method for calibrating an installation error of an industrial robot system comprising a tool moving device including a joint means, a work as an object to be worked, and a work handling device including a second joint means for moving the work. Controlling the first joint means so that the position of the tool is the origin of the work base coordinate system set for the work, and controlling the position of the tool before and after the control of the first joint means. A first step of measuring each distance between a rectangular parallelepiped block placed such that one vertex thereof coincides with the origin of the work base coordinate system, and a distance measured in the first step. The position error of the work base coordinate system with respect to the predetermined absolute coordinate system is calculated based on the absolute coordinate system, and the position of the work base coordinate system with reference to the absolute coordinate system is calculated based on the calculated error. And calibrating the second joint means so as to move the position of the tool from a first predetermined position to a second predetermined position. A third measuring the distance between the tip of the tool and the second joint means before and after the control;
Calculating the amount of displacement of the tool based on the distances measured in the third step and calculating the error of the position and orientation of the work base coordinate system with respect to the absolute coordinate system, And a fourth step of calibrating the position and orientation of the work base coordinate system based on the absolute coordinate system based on the calculated error.

【0009】また、請求項2記載の産業用ロボットシス
テムの設置誤差較正方法は、請求項1記載の方法におい
て、上記ツール移動装置は、上記第1の関節手段を所定
の軸方向に沿って移動させる第3の関節手段をさらに含
み、上記設置誤差較正方法はさらに、上記第1の関節手
段を上記所定の軸方向に沿って所定の第3の位置から所
定の第4の位置に移動させるように上記第3の関節手段
を制御して、上記ツールの先端に治具を介して設けられ
た距離測定手段を用いて、上記第3の関節手段の制御の
前後におけるその各面が上記絶対座標系の各軸方向に平
行となるように載置された直方体のブロックの各面との
各距離を測定する第5のステップと、上記第5のステッ
プにおいて測定された各距離に基づいて、上記絶対座標
系を基準とした上記ツールに設定されたツールベース座
標系の位置姿勢のねじれ角度を演算し、上記演算したね
じれ角度に基づいて上記絶対座標系を基準とした上記ツ
ールに設定されたツールベース座標系の位置姿勢を較正
する第6のステップと、上記ワークを基準とした上記ツ
ールの位置姿勢を一定とする条件のもとで、上記第1の
関節手段を上記所定の軸方向に沿って所定の第5の位置
から所定の第6の位置に移動させるように上記第1の関
節手段と上記第3の関節手段とを制御して、上記第1の
関節手段と上記第3の関節手段の制御の前後における上
記ツールの先端と所定の固体位置との間の各距離を測定
する第7のステップと、上記第7のステップにおいて測
定された各距離に基づいて、上記第3の関節手段の上記
所定の軸方向に対する上記ツールベース座標系のねじれ
角度を演算し、上記演算したねじれ角度に基づいて上記
第3の関節手段の上記所定の軸方向に対する上記ツール
ベース座標系のねじれ角度を較正する第8のステップと
を含むことを特徴とする。
According to a second aspect of the present invention, there is provided a method for calibrating an installation error of an industrial robot system, wherein the tool moving device moves the first joint means along a predetermined axial direction. The method further comprises: moving the first joint means from a predetermined third position to a predetermined fourth position along the predetermined axial direction. Controlling the third joint means, and using a distance measuring means provided at the tip of the tool via a jig, the respective surfaces before and after the control of the third joint means are adjusted to the absolute coordinates. A fifth step of measuring each distance to each surface of the rectangular parallelepiped block placed so as to be parallel to each axis direction of the system; and, based on each distance measured in the fifth step, On an absolute coordinate system The torsion angle of the position and orientation of the tool base coordinate system set in the tool is calculated, and the position and orientation of the tool base coordinate system set in the tool based on the absolute coordinate system is calibrated based on the calculated torsion angle. A first step of moving the first joint means from a predetermined fifth position along the predetermined axial direction under the condition that the position and orientation of the tool with respect to the workpiece are constant. Controlling the first joint means and the third joint means so as to move them to a predetermined sixth position, so that the tool before and after the control of the first joint means and the third joint means; A seventh step of measuring each distance between the tip of the object and a predetermined solid position; and, based on each distance measured in the seventh step, the third joint means with respect to the predetermined axial direction. Above toolet Calculating the torsion angle of the tool base coordinate system with respect to the predetermined axial direction of the third joint means based on the calculated torsion angle. It is characterized by.

【0010】[0010]

【0011】本発明に係る請求項3記載の産業用ロボッ
トシステムの設置誤差較正制御装置は、所定の作業を行
うツールと、上記ツールを移動させる第1の関節手段と
を含むツール移動装置と、被作業物であるワークと、上
記ワークを移動させる第2の関節手段とを含むワーク取
扱装置とを備えた産業用ロボットシステムにおいて、上
記ツールの位置が上記ワークに設定されたワークベース
座標系の原点となるように上記第1の関節手段を制御す
る第1の制御手段と、上記第1の関節手段の先端に設け
られ、上記第1の制御手段の動作の前後における上記ツ
ールの先端と上記ワークベース座標系の原点にその1頂
点が一致するように載置された直方体のブロックとの間
の各距離を測定する第1の測定手段と、上記第1の測定
手段によって測定された各距離に基づいて、所定の絶対
座標系を基準とした上記ワークベース座標系の位置の誤
差を演算し、上記演算した誤差に基づいて絶対座標系を
基準とした上記ワークベース座標系の位置を較正する第
1の較正手段と、上記ツールの位置を所定の第1の位置
から所定の第2の位置に移動させるように上記第2の関
節手段を制御する第2の制御手段と、上記第1の関節手
段の先端に設けられ、上記第2の制御手段の動作の前後
における上記ツールの先端と上記第2の関節手段との間
の各距離を測定する第2の測定手段と、上記第2の測定
手段によって測定された各距離に基づいて、上記ツール
のずれ量を演算しかつ所定の絶対座標系を基準とした上
記ワークベース座標系の位置姿勢の誤差を演算し、上記
演算した誤差に基づいて上記絶対座標系を基準とした上
記ワークベース座標系の位置姿勢を較正する第2の較正
手段とを備えたことを特徴とする。
According to a third aspect of the present invention, there is provided an installation error calibration control device for an industrial robot system, comprising: a tool for performing a predetermined operation; and a tool moving device including first joint means for moving the tool. In an industrial robot system including a work which is a work and a work handling device including a second joint means for moving the work, the position of the tool is defined by a work base coordinate system set in the work. A first control means for controlling the first joint means so as to be an origin; a first control means provided at a tip of the first joint means, and a tip of the tool before and after the operation of the first control means; First measuring means for measuring each distance between a rectangular parallelepiped block placed so that one vertex thereof coincides with the origin of the work base coordinate system; and measuring by the first measuring means. Based on the obtained distances, an error of the position of the work base coordinate system based on the predetermined absolute coordinate system is calculated, and based on the calculated error, the position error of the work base coordinate system based on the absolute coordinate system is calculated. First calibration means for calibrating the position, second control means for controlling the second joint means so as to move the position of the tool from a predetermined first position to a predetermined second position, A second measuring means provided at a tip of the first joint means for measuring each distance between the tip of the tool and the second joint means before and after the operation of the second control means; Based on the distances measured by the second measuring means, the amount of displacement of the tool is calculated, and the error of the position and orientation of the work base coordinate system with respect to a predetermined absolute coordinate system is calculated. Absolute seat based on the error Characterized in that a second calibration means for calibrating the position and orientation of the work base coordinate system based on the system.

【0012】また、請求項4記載の産業用ロボットシス
テムの設置誤差較正制御装置は、請求項3記載の装置に
おいて、上記ツール移動装置は、上記第1の関節手段を
所定の軸方向に沿って移動させる第3の関節手段をさら
に含み、上記設置誤差較正制御装置はさらに、上記第1
の関節手段を上記所定の軸方向に沿って所定の第3の位
置から所定の第4の位置に移動させるように上記第3の
関節手段を制御する第3の制御手段と、上記ツールの先
端に治具を介して設けられ、上記第3の関節手段の制御
の前後におけるその各面が上記絶対座標系の各軸方向に
平行となるように載置された直方体のブロックの各面と
の各距離を測定する第3の測定手段と、上記第3の測定
手段によって測定された各距離に基づいて、上記絶対座
標系を基準とした上記ツールに設定されたツールベース
座標系の位置姿勢のねじれ角度を演算し、上記演算した
ねじれ角度に基づいて上記絶対座標系を基準とした上記
ツールに設定されたツールベース座標系の位置姿勢を較
正する第3の較正手段と、上記ワークを基準とした上記
ツールの位置姿勢を一定とする条件のもとで、上記第1
の関節手段を上記所定の軸方向に沿って所定の第5の位
置から所定の第6の位置に移動させるように上記第1の
関節手段と上記第3の関節手段とを制御する第4の制御
手段と、上記ツールの先端と所定の固体位置との間の各
距離を測定する第4の測定手段と、上記第4の測定手段
によって測定された各距離に基づいて、上記第3の関節
手段の上記所定の軸方向に対する上記ツールベース座標
系のねじれ角度を演算し、上記演算したねじれ角度に基
づいて上記第3の関節手段の上記所定の軸方向に対する
上記ツールベース座標系のねじれ角度を較正する第4の
較正手段とを備えたことを特徴とする。
According to a fourth aspect of the present invention, there is provided an industrial robot system installation error calibration control device, wherein the tool moving device moves the first joint means along a predetermined axial direction. The apparatus further includes third joint means for moving, and the installation error calibration control device further includes the first joint means.
Third control means for controlling the third joint means so as to move the joint means from a predetermined third position to a predetermined fourth position along the predetermined axial direction, and a tip of the tool And a surface of a rectangular parallelepiped block placed so that each surface before and after the control of the third joint means is parallel to each axial direction of the absolute coordinate system. A third measuring means for measuring each distance, and a position and orientation of a tool base coordinate system set in the tool based on the absolute coordinate system based on each distance measured by the third measuring means. Third calibration means for calculating a torsion angle, and for calibrating the position and orientation of a tool base coordinate system set in the tool based on the absolute coordinate system based on the calculated torsion angle; Tool position Under conditions constant, the first
Controlling the first joint means and the third joint means to move the joint means from a predetermined fifth position to a predetermined sixth position along the predetermined axial direction. Control means; fourth measuring means for measuring each distance between the tip of the tool and a predetermined solid position; and third joint based on each distance measured by the fourth measuring means. Calculating a torsion angle of the tool base coordinate system with respect to the predetermined axis direction of the means; and calculating a torsion angle of the tool base coordinate system with respect to the predetermined axis direction of the third joint means based on the calculated torsion angle. And fourth calibration means for performing calibration.

【0013】[0013]

【作用】請求項1記載の方法及び請求項3記載の装置に
おいては、上記ツールの位置が上記ワークに設定された
ワークベース座標系の原点となるように上記第1の関節
手段を制御して、上記第1の関節手段の制御の前後にお
ける上記ツールの先端と、上記ワークベース座標系の原
点にその1頂点が一致するように載置された直方体のブ
ロックとの間の各距離を測定する。次いで、上記測定さ
れた各距離に基づいて、所定の絶対座標系を基準とした
上記ワークベース座標系の位置の誤差を演算し、上記演
算した誤差に基づいて絶対座標系を基準とした上記ワー
クベース座標系の位置を較正する。
In the method according to the first aspect and the apparatus according to the third aspect, the first joint means is controlled so that the position of the tool becomes an origin of a work base coordinate system set for the work. Measuring the distance between the tip of the tool before and after the control of the first joint means and a rectangular parallelepiped block placed so that one vertex thereof coincides with the origin of the work base coordinate system. . Next, based on each of the measured distances, an error in the position of the work base coordinate system based on a predetermined absolute coordinate system is calculated, and based on the calculated error, the work based on the absolute coordinate system is calculated. Calibrate the position of the base coordinate system.

【0014】さらに、上記ツールの位置を所定の第1の
位置から所定の第2の位置に移動させるように上記第2
の関節手段を制御して、上記第2の関節手段の制御の前
後における上記ツールの先端と上記第2の関節手段との
間の各距離を測定する。次いで、上記測定された各距離
に基づいて、上記ツールのずれ量を演算しかつ上記絶対
座標系を基準とした上記ワークベース座標系の位置姿勢
の誤差を演算し、上記演算した誤差に基づいて上記絶対
座標系を基準とした上記ワークベース座標系の位置姿勢
を較正する。
Further, the second position of the tool is moved from a predetermined first position to a predetermined second position.
And measuring each distance between the tip of the tool and the second joint means before and after the control of the second joint means. Next, based on the measured distances, the amount of displacement of the tool is calculated, and the position and orientation error of the work base coordinate system with respect to the absolute coordinate system is calculated, based on the calculated error. Calibrating the position and orientation of the work base coordinate system with respect to the absolute coordinate system.

【0015】さらに、請求項2記載の方法及び請求項4
記載の装置においては、上記第1の関節手段を上記所定
の軸方向に沿って所定の第3の位置から所定の第4の位
置に移動させるように上記第3の関節手段を制御して、
上記ツールの先端に治具を介して設けられた距離測定手
段を用いて、上記第3の関節手段の制御の前後における
その各面が上記絶対座標系の各軸方向に平行となるよう
に載置された直方体のブロックの各面との各距離を測定
する。次いで、上記測定された各距離に基づいて、上記
絶対座標系を基準とした上記ツールに設定されたツール
ベース座標系の位置姿勢のねじれ角度を演算し、上記演
算したねじれ角度に基づいて上記絶対座標系を基準とし
た上記ツールに設定されたツールベース座標系の位置姿
勢を較正する。さらには、上記ワークを基準とした上記
ツールの位置姿勢を一定とする条件のもとで、上記第1
の関節手段を上記所定の軸方向に沿って所定の第5の位
置から所定の第6の位置に移動させるように上記第1の
関節手段と上記第3の関節手段とを制御して、上記第1
の関節手段と上記第3の関節手段の制御の前後における
上記ツールの先端と所定の固体位置との間の各距離を測
定する。次いで、上記測定された各距離に基づいて、上
記第3の関節手段の上記所定の軸方向に対する上記ツー
ルベース座標系のねじれ角度を演算し、上記演算したね
じれ角度に基づいて上記第3の関節手段の上記所定の軸
方向に対する上記ツールベース座標系のねじれ角度を較
正する。
A method according to claim 2 and a method according to claim 4.
In the device described, the third joint means is controlled to move the first joint means from a predetermined third position to a predetermined fourth position along the predetermined axial direction,
Using a distance measuring means provided via a jig at the tip of the tool, the surface is mounted so that each surface before and after the control of the third joint means is parallel to each axis direction of the absolute coordinate system. Each distance to each surface of the placed rectangular parallelepiped block is measured. Next, based on each of the measured distances, a torsion angle of a position and orientation of a tool base coordinate system set in the tool based on the absolute coordinate system is calculated, and the absolute angle is calculated based on the calculated torsion angle. Calibrate the position and orientation of the tool base coordinate system set for the tool with reference to the coordinate system. Further, under the condition that the position and orientation of the tool with respect to the workpiece are constant, the first
Controlling the first joint means and the third joint means so as to move the joint means from a predetermined fifth position to a predetermined sixth position along the predetermined axial direction, First
Each distance between the tip of the tool and a predetermined solid position before and after the control of the joint means and the third joint means is measured. Next, a torsion angle of the tool base coordinate system with respect to the predetermined axis direction of the third joint means is calculated based on the measured distances, and the third joint is calculated based on the calculated torsion angle. Calibrating the torsion angle of the tool base coordinate system with respect to the predetermined axial direction of the means.

【0016】[0016]

【実施例】以下、図面を参照して、本発明に係る一実施
例である産業用ロボットシステムのための設置誤差較正
制御装置について、以下の項目の順序で説明する。 (1)産業用ロボットシステムとその設置誤差 (2)産業用ロボットシステムとその設置誤差較正制御
装置の構成 (3)設置誤差較正制御装置の処理 (3−1)メインルーチン (3−2)第1の較正処理 (3−3)第2の較正処理 (3−4)第3の較正処理 (3−5)第4の較正処理 (4)教示作業と再生動作 (5)変形例
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An installation error calibration control device for an industrial robot system according to an embodiment of the present invention will be described below in the following order with reference to the drawings. (1) Industrial robot system and its installation error (2) Configuration of industrial robot system and its installation error calibration control device (3) Processing of installation error calibration control device (3-1) Main routine (3-2) No. (1) Calibration process (3-3) Second calibration process (3-4) Third calibration process (3-5) Fourth calibration process (4) Teaching operation and reproduction operation (5) Modification

【0017】(1)産業用ロボットシステムとその設置
誤差 図1に本実施例の産業用ロボットシステムとその設置誤
差較正制御装置(以下、制御装置という。)5の全体を
示し、図2にその機構図を示す。
(1) Industrial Robot System and Its Installation Error FIG. 1 shows the entirety of the industrial robot system of this embodiment and its installation error calibration control device (hereinafter, referred to as a control device) 5, and FIG. FIG.

【0018】本実施例の産業用ロボットシステムにおい
ては、図1に示すように、ツール移動装置11とワーク
取扱装置12と制御装置5とに大きく分けられ、(a)
ツール移動装置11は、例えば溶接トーチであるツール
4を把持しその位置姿勢を制御する6自由度のロボット
1と、それを搭載した移動機構装置であるスライダ2と
からなり、(b)ワーク取扱装置12は、被作業対象物
であるワーク(図示せず。)を載置するポシショナ3を
備え、(c)制御装置5には、教示作業時において上記
2個の装置11,12を動作させて作業プログラムを作
成するために操作者がデータの入力を行うティーチング
ボックス20と、教示作業と自動運転作業とを切り換え
たり自動運転作業時における起動信号を出力するために
操作者が手動操作する操作ボックス21と、詳細後述す
るように所定の距離をそれぞれ測定する3つの距離セン
サSS1−SS3とが接続され、本実施例は、これら機
械を設置したときに生ずる各機械間の座標系の位置を、
当該ロボットシステムを動作させる前、すなわち教示作
業や再生動作の前に、較正して正確にこれらの機械を協
調動作させる制御装置を備えたことを特徴とする。
In the industrial robot system according to the present embodiment, as shown in FIG. 1, a tool moving device 11, a work handling device 12, and a control device 5 are broadly divided.
The tool moving device 11 comprises, for example, a robot 1 having six degrees of freedom which grips a tool 4 which is a welding torch and controls its position and orientation, and a slider 2 which is a moving mechanism device equipped with the robot. The device 12 includes a positioner 3 on which a work (not shown) as an object to be worked is placed. (C) The control device 5 operates the two devices 11 and 12 during a teaching operation. Teaching box 20 for the operator to input data to create a work program, and an operation manually performed by the operator to switch between teaching work and automatic driving work or to output a start signal at the time of automatic driving work. The box 21 is connected to three distance sensors SS1 to SS3 each for measuring a predetermined distance as described in detail later. The position of the coordinate system between each machine produced,
Before operating the robot system, that is, before a teaching operation or a reproducing operation, a control device for calibrating and accurately cooperating these machines is provided.

【0019】また、ツール移動装置11において、ロボ
ット1を載置するスライダ2は、図1と図2とに示すよ
うに、その機械原点Osとロボット1の機械原点Omと
の間に互いに縦続して連結された4個のリンクL10乃
至L13からなり、リンクL11と平行な方向である第
1軸(当該第1軸はリンクL11と平行なので符号L1
1とする。)に沿って移動するとともに、リンクL11
と直交するリンクL12と平行な方向である第2軸(当
該第2軸はリンクL12と平行なので符号L12とす
る。)に沿って移動して、搭載したロボット1を、絶対
座標系ΣworldのX−Y平面上で水平方向に移動さ
せる。ここで、スライダ2の各リンクL10乃至L13
を連結する各関節RJ11乃至RJ13を備え、このう
ち各関節RJ11,RJ12はそれぞれ、第1軸L11
に沿って移動させる移動機構と、第2軸L12に沿って
移動させる移動機構に対応する。
Further, in the tool moving device 11, the slider 2 on which the robot 1 is mounted is cascaded between its mechanical origin Os and the mechanical origin Om of the robot 1 as shown in FIGS. A first axis which is a direction parallel to the link L11 (the first axis is parallel to the link L11 and is denoted by L1
Let it be 1. ) And the link L11
The robot 1 moves along a second axis which is a direction parallel to the link L12 and is parallel to the link L12 (the second axis is parallel to the link L12 and is denoted by L12), and the mounted robot 1 is moved to X in the absolute coordinate system Σworld. -Move horizontally in the Y plane. Here, each link L10 to L13 of the slider 2
Are jointed, and each of the joints RJ11 and RJ12 is connected to the first axis L11.
And a moving mechanism that moves along the second axis L12.

【0020】さらに、ロボット1は、図1と図2とに示
すように、6個の回転可能な関節RJ1乃至RJ6と、
各関節間を連結する7個のリンクL0乃至L6とを備
え、ロボット1の機械原点Omは、第0リンクL0を介
して第1関節RJ1に連結され、第1関節RJ1は第1
リンクL1を介して第2関節RJ2に連結され、第2関
節RJ2は第2リンクL2を介して第3関節RJ3に連
結される。また、第3関節RJ3は第3リンクL3を介
して第4関節RJ4に連結され、第4関節RJ4は第4
リンクL4を介して第5関節RJ5に連結され、第5関
節RJ5は第5リンクL5を介して第6関節RJ6に連
結される。さらに、第6関節RJ6は第6リンクL6を
介してツール4に連結される。ロボット1の各関節RJ
k(k=1,2,…,6)は図4に示すように、制御装
置3によってその回転角度が制御されサーボステッピン
グモータにてなるモータMOkと、モータMOkの回転
を所定の減速比λkで減速する減速機REkと、減速後
の回転軸の位置を検出するセンサSNkとから構成さ
れ、その軸がそれぞれ回転される。
Further, as shown in FIGS. 1 and 2, the robot 1 has six rotatable joints RJ1 to RJ6,
It has seven links L0 to L6 connecting the joints, and the mechanical origin Om of the robot 1 is connected to the first joint RJ1 via the 0th link L0, and the first joint RJ1 is connected to the first joint RJ1.
The second joint RJ2 is connected via the link L1 to the second joint RJ2, and the second joint RJ2 is connected to the third joint RJ3 via the second link L2. Further, the third joint RJ3 is connected to the fourth joint RJ4 via the third link L3, and the fourth joint RJ4 is connected to the fourth joint RJ4.
The fifth joint RJ5 is connected via a link L4, and the fifth joint RJ5 is connected via a fifth link L5 to a sixth joint RJ6. Further, the sixth joint RJ6 is connected to the tool 4 via the sixth link L6. Each joint RJ of the robot 1
As shown in FIG. 4, k (k = 1, 2,..., 6) is a motor MOk composed of a servo stepping motor whose rotation angle is controlled by the controller 3 and a motor MOk having a predetermined reduction ratio λk , And a sensor SNk for detecting the position of the rotating shaft after deceleration, and the shafts are respectively rotated.

【0021】上記スライダ2の各関節RJ11,RJ1
2に対応する移動機構はそれぞれ、ロボット1と同様
に、第1軸L11に沿って移動させるモータMO9と移
動後の位置を検出するセンサSN9と、第2軸L12に
沿って移動させるモータMO10と移動後の位置を検出
するセンサSN10とを備える。
Each joint RJ11, RJ1 of the slider 2
Similarly to the robot 1, the moving mechanisms corresponding to the second and third motors are a motor MO9 that moves along the first axis L11, a sensor SN9 that detects a position after the movement, and a motor MO10 that moves along the second axis L12. A sensor SN10 for detecting the position after the movement.

【0022】さらに、ポシショナ3は、その機械原点O
pとワークの制御点Oworkとの間に互いに縦続して
連結された4本のリンクL20乃至L23を備え、リン
クL21,L22間に回転可能な関節RJ21を備える
とともに、リンクL22,L23間に回転可能な関節R
J22を備える。各関節RJ21,RJ22はそれぞ
れ、ロボット1と同様に、図4に示すように、制御装置
5によってその回転角度が制御されサーボモータにてな
るモータMOkと、モータMOkの回転を所定の減速比
λkで減速する減速機REkと、減速後の回転軸の位置
を検出するセンサSNkとから構成され、その軸がそれ
ぞれ回転され、ここで、k=7,8である。
Further, the positioner 3 has its mechanical origin O
p and four links L20 to L23 cascaded and connected to each other between the control point Owork of the work, a rotatable joint RJ21 between the links L21 and L22, and a rotation between the links L22 and L23. Possible joint R
J22. As shown in FIG. 4, the joints RJ21 and RJ22 are each controlled by a control device 5 to control the rotation angle of the motor MOk as a servomotor, and the rotation of the motor MOk to a predetermined reduction ratio λk. , And a sensor SNk for detecting the position of the rotating shaft after deceleration, and the shafts are respectively rotated, where k = 7, 8.

【0023】本実施例のロボットシステムの各々の機械
要素の機械原点およびシステム原点を定義づけるため
に、図2及び図7乃至図9に示すように座標系を設定
し、各座標系の名称と、座標系の記号と、その設定位置
を以下に示す。 (a)絶対座標系Σworld:ロボットシステムの原
点Oworldに設定する。 (b)ツールベース座標系Σs:スライダ2の機械原点
Osに設定する。 (c)ツール機械座標系Σm:ロボット1の機械原点O
mに設定する。 (d)ツール側メカニカルインターフェイス座標系Σt
m:ロボット1の出力軸原点Otmに設定する。 (e)ツール座標系Σtool:ツール4の先端位置O
toolに設定する。 (f)ワークベース座標系Σp:ポジショナ3の機械原
点Opに設定する。 (g)ワーク側メカニカルインターフェイス座標系Σw
m:ポジショナ2の出力軸原点Owmに設定する。 (h)ワーク座標系Σwork:ワーク制御原点(以
下、ワーク原点という。)Oworkに設定する。 なお、各座標系は、X軸,Y軸,Z軸の3軸でかつそれ
ぞれの付属符号を付して表される。
In order to define the mechanical origin and the system origin of each mechanical element of the robot system of the present embodiment, a coordinate system is set as shown in FIGS. 2 and 7 to 9, and the name and the name of each coordinate system are set. , The coordinates of the coordinate system and the setting positions are shown below. (A) Absolute coordinate system $ world: Set to the origin Oworld of the robot system. (B) Tool base coordinate system Δs: Set to the mechanical origin Os of the slider 2. (C) Tool machine coordinate system Σm: Mechanical origin O of robot 1
Set to m. (D) Tool side mechanical interface coordinate system Δt
m: Set to the output axis origin Otm of the robot 1. (E) Tool coordinate system Σtool: tip position O of tool 4
Set to tool. (F) Work base coordinate system $ p: Set to the mechanical origin Op of the positioner 3. (G) Work side mechanical interface coordinate system Σw
m: Set to the output shaft origin Owm of the positioner 2. (H) Work coordinate system @work: Work control origin (hereinafter referred to as the work origin) is set to Owork. Each coordinate system is represented by three axes of an X axis, a Y axis, and a Z axis, and each of them is provided with an attached code.

【0024】ここで、2つの座標系間の位置姿勢の関係
示す同次変換行列の符号を以下に示す。これらの同次変
換行列の各要素と、これら同次変換行列を演算するとき
に用いられる詳細後述の位置データと姿勢データはRA
M102に格納される。 (a)[Zt]:絶対座標系Σworldを基準とした
ツールベース座標系Σsの位置姿勢。 (b)[Ts]:ツールベース座標系Σsを基準とした
ツール機械座標系Σmの位置姿勢。当該位置姿勢は、ス
ライダ2の位置姿勢である。 (c)[Tma]:ツール機械座標系Σmを基準とした
ツール側メカニカルインターフェイス座標系Σtmの位
置姿勢。当該位置姿勢は、ロボット1の位置姿勢であ
る。 (d)[Et]:ツール側メカニカルインターフェイス
座標系Σtmを基準としたツール座標系Σtoolの位
置姿勢。 (e)[Zw]:絶対座標系Σworldを基準とした
ワークベース座標系ΣOpの位置姿勢。 (f)[Tp]:ワークベース座標系Σpを基準とした
ワーク側メカニカルインターフェイス座標系Σwmの位
置姿勢。当該位置姿勢は、ポジショナ3の位置姿勢であ
る。 (g)[Ew]:ワーク側メカニカルインターフェイス
座標系Σwmを基準としたワーク座標系Σworkの位
置姿勢。
Here, the sign of the homogeneous transformation matrix indicating the relationship between the position and orientation between the two coordinate systems is shown below. Each element of these homogeneous transformation matrices and position data and orientation data, which will be described later in detail when calculating these homogeneous transformation matrices, are RA
It is stored in M102. (A) [Zt]: position and orientation of the tool base coordinate system Σs based on the absolute coordinate system Σworld. (B) [Ts]: position and orientation of the tool machine coordinate system Σm based on the tool base coordinate system Σs. The position / posture is the position / posture of the slider 2. (C) [Tma]: Position and orientation of the tool-side mechanical interface coordinate system Σtm with respect to the tool machine coordinate system Σm. The position / posture is the position / posture of the robot 1. (D) [Et]: Position and orientation of the tool coordinate system Σtool based on the tool-side mechanical interface coordinate system Σtm. (E) [Zw]: position and orientation of the work base coordinate system ΣOp based on the absolute coordinate system Σworld. (F) [Tp]: Position and orientation of the workpiece-side mechanical interface coordinate system Σwm based on the work base coordinate system Σp. The position / posture is the position / posture of the positioner 3. (G) [Ew]: Position and orientation of the work coordinate system Σwork based on the work-side mechanical interface coordinate system Σwm.

【0025】まず、ツール側メカニカルインターフェイ
ス座標系Σwmを基準としたツール座標系Σtoolの
位置姿勢を示す同次変換行列[Et]は、3つの位置デ
ータAte、Bte、Cteと、3つの姿勢データαt
e、βte、γteを用いて、次の数1によって表すこ
とができる。
First, a homogeneous transformation matrix [Et] indicating the position and orientation of the tool coordinate system Σtool based on the tool-side mechanical interface coordinate system Σwm is represented by three position data Ate, Bte, Cte and three posture data αt.
It can be expressed by the following equation 1 using e, βte, and γte.

【数1】 [Et]=Trans(Ate,Bte,Cte)・Rot(X,αte)・Rot(Y,βte)・Rot(Z,γte)[Et] = Trans (Ate, Bte, Cte) Rot (X, αte) Rot (Y, βte) Rot (Z, γte)

【0026】ここで、Rot(a,b)はaの軸を中心
として角度b(rad)だけ回転することを示す回転変
換であり、Trans(a,b,c)はX軸方向に距離
aだけ並進させ、Y軸方向に距離bだけ並進させ、Z軸
方向に距離cだけ並進させることを示す並進変換であ
り、以下同様である。これらの同次変換は、リチャード
・ピー・ポール(Richard P Paul)著,
“ロボット・マニピュレータズ;数学,プログラミング
と制御(ROBOT MANIPULATORS;MA
THEMATICS,PROGRAMMING,AND
CONTROL)”,ザ・エムアイティー・プレス
(The MIT Press),1981年において
用いられている。なお、上記数1から、ツール側メカニ
カルインターフェイス座標系Σtmを基準としたツール
座標系Σtoolの位置姿勢を示す同次変換行列[E
t]は、Trans(Ate,Bte,Cte)なる並
進変換を行い、X軸を中心にαte[rad]だけ回転
変換し、Y軸を中心にβte[rad]だけ回転変換
し、かつZ軸を中心にγte[rad]だけ回転変換す
る同次変換であることを示す。
Here, Rot (a, b) is a rotation transformation indicating that the rotation is made by an angle b (rad) about the axis of a, and Trans (a, b, c) is a distance a in the X-axis direction. , Translation in the Y-axis direction by a distance b, and translation in the Z-axis direction by a distance c, and so on. These homogeneous transformations are described by Richard P Paul,
"Robot Manipulators; Mathematics, Programming and Control (ROBOT MANIPULATORS; MA
THEMATICS, PROGRAMMING, AND
CONTROL) ", The MIT Press, 1981. From the above equation 1, the position and orientation of the tool coordinate system Σtool based on the tool-side mechanical interface coordinate system Σtm is used. The homogeneous transformation matrix [E
t] performs a translational transformation of Trans (Ate, Bte, Cte), rotationally transforms about the X axis by αte [rad], rotationally transforms about the Y axis by βte [rad], and transforms the Z axis. This indicates that the transformation is a homogeneous transformation in which the rotation is transformed by γte [rad] to the center.

【0027】上記数1の結果は、次の数2で示す4行×
4列の同次変換行列の形式で表すことができる。
The result of the above equation (1) is obtained by calculating 4 rows ×
It can be represented in the form of a four-column homogeneous transformation matrix.

【数2】 (Equation 2)

【0028】また、ワーク側メカニカルインターフェイ
ス座標系Σwmを基準としたワーク座標系の位置姿勢を
示す同次変換行列[Ew]は、3つの位置データAw
e、Bwe、Cweと、3つの姿勢データαwe、βw
e、γweとを用いて、次の数3で表すことができる。
The homogeneous transformation matrix [Ew] indicating the position and orientation of the work coordinate system based on the work side mechanical interface coordinate system Σwm is represented by three pieces of position data Aw.
e, Bwe, Cwe and three attitude data αwe, βw
It can be expressed by the following Equation 3 using e and γwe.

【数3】 [Ew]=Trans(Awe,Bwe,Cwe)・Rot(X,αwe)・Rot(Y,βwe)・Rot(Z,γwe)[Ew] = Trans (Awe, Bwe, Cwe) · Rot (X, αwe) · Rot (Y, βwe) · Rot (Z, γwe)

【0029】さらに、絶対座標系Σworldを基準と
したツールベース座標系Σsの位置姿勢を示す同次変換
行列[Zt]は、3つの位置データAtz、Btz、C
tzと、3つの姿勢データαtz、βtz、γtzとを
用いて、次の数4で表すことができる。
Further, a homogeneous transformation matrix [Zt] indicating the position and orientation of the tool base coordinate system Σs based on the absolute coordinate system Σworld is obtained by three position data Atz, Btz, C
tz and the three attitude data αtz, βtz, and γtz can be expressed by the following equation 4.

【数4】 [Zt]=Trans(Atz,Btz,Ctz)・Rot(X,αtz)・Rot(Y,βtz)・Rot(Z,γtz)[Zt] = Trans (Atz, Btz, Ctz) · Rot (X, αtz) · Rot (Y, βtz) · Rot (Z, γtz)

【0030】またさらに、絶対座標系Σworldを基
準としたワークベース座標系Σpの位置姿勢を示す同次
変換行列[Zw]は、3つの位置データAwz、Bw
z、Cwzと、3つの姿勢データαwz、βwz、γw
zを用いて、次の数5で表すことができる。
Further, the homogeneous transformation matrix [Zw] indicating the position and orientation of the work base coordinate system Σp based on the absolute coordinate system Σworld is obtained by three position data Awz and Bw.
z, Cwz and three attitude data αwz, βwz, γw
It can be expressed by the following equation 5 using z.

【数5】 [Zw]=Trans(Awz,Bwz,Cwz)・Rot(X,αwz)・Rot(Y,βwz)・Rot(Z,γwz)[Zw] = Trans (Awz, Bwz, Cwz) · Rot (X, αwz) · Rot (Y, βwz) · Rot (Z, γwz)

【0031】また、ロボット1、スライダ2及びポジシ
ョナ3などの複数の関節とそれを連結する複数のリンク
を有する機械における各リンクLiにおける座標変換
を、公知のディナビット−ハルテンブルグ(Denav
it−Hartenberg)のリンクパラメータ(以
下、D−Hのリンクパラメータという。)の表現による
A行列を用いて、数6のように表すことができる。
Further, coordinate conversion at each link Li in a machine having a plurality of joints such as the robot 1, the slider 2 and the positioner 3 and a plurality of links connecting the joints is performed by a known Dinabit-Hartenburg (Denav).
It can be expressed as in Equation 6 using an A matrix expressed by the link parameters of it-Hartenberg (hereinafter, referred to as DH link parameters).

【数6】 Ai=Rot(Z,θi)・Trans(ai,0,di)・Rot(X,αi), ここで、i=0,1,2,…,6である。Ai = Rot (Z, θi) · Trans (ai, 0, di) · Rot (X, αi), where i = 0, 1, 2,...

【0032】このA行列を用いると、当該ロボットシス
テムのロボット1、スライダ2及びポジショナ3の位置
姿勢を示す同次変換行列は、次の数7乃至数9で表すこ
とができる。
Using this A matrix, a homogeneous transformation matrix indicating the position and orientation of the robot 1, slider 2 and positioner 3 of the robot system can be expressed by the following equations 7 to 9.

【数7】 [Tma]=Ama0・Ama1・Ama2・Ama3・Ama4・Ama5・Ama6[Tma] = Ama0 · Ama1 · Ama2 · Ama3 · Ama4 · Ama5 · Ama6

【数8】[Ts]=As0・As1・As2・As3[Ts] = As0 · As1 · As2 · As3

【数9】[Tp]=Ap0・Ap1・Ap2・Ap3 ここで、Ama0、As0およびAp0は各機械の台座
リンクに相当する。
[Tp] = Ap0 ・ Ap1 ・ Ap2 ・ Ap3 Here, Ama0, As0 and Ap0 correspond to the pedestal link of each machine.

【0033】さらに、ワーク座標系Σworkを基準と
したツール座標系Σtoolの位置姿勢を示す同次変換
行列[wXt]を、上記数2を用いることにより、次の
数10で定義する。
Further, a homogeneous transformation matrix [wXt] indicating the position and orientation of the tool coordinate system Σtool based on the workpiece coordinate system Σwork is defined by the following equation 10 by using the above equation 2.

【数10】 (Equation 10)

【0034】このとき、ロボット1、スライダ2及びポ
ジショナ3並びにツール4で構成されるロボットシステ
ムにおいて設定した各機械構成要素の位置姿勢に対し
て、次の数11が成立する。
At this time, the following equation 11 holds for the position and orientation of each mechanical component set in the robot system including the robot 1, the slider 2, the positioner 3, and the tool 4.

【数11】 [Zt]・[Ts]・[Tma]・[Et]=[Zw]・[Tp]・[Ew]・[wXt][Zt] · [Ts] · [Tma] · [Et] = [Zw] · [Tp] · [Ew] · [wXt]

【0035】上記数11により、ツール4とワークの相
対的な位置姿勢の関係は、同次変換行列[wXt]で定
義づけられ、当該同次変換行列[wXt]を変更するこ
とにより、具体的には当該同次変換行列[wXt]の各
要素を変更することにより、ロボット1、スライダ2及
びポジショナ3を協調動作させることができる。
According to the above equation (11), the relation between the relative position and orientation of the tool 4 and the workpiece is defined by a homogeneous transformation matrix [wXt]. By changing the homogeneous transformation matrix [wXt], a specific relationship is obtained. By changing each element of the homogeneous transformation matrix [wXt], the robot 1, the slider 2, and the positioner 3 can be operated cooperatively.

【0036】本実施例において、図1のロボットシステ
ムの各機械間の設置関係を設定するために必要な位置姿
勢データを、具体的に以下のように設定する。まず、絶
対座標系Σworldの原点Oworldを基準にした
スライダ2の機械原点Osの位置姿勢を示す同次変換行
列[Zt]を演算する位置姿勢データを、次の数12乃
至数17に示すように設定する。
In this embodiment, the position and orientation data necessary for setting the installation relationship between the machines in the robot system of FIG. 1 are specifically set as follows. First, the position and orientation data for calculating the homogeneous transformation matrix [Zt] indicating the position and orientation of the mechanical origin Os of the slider 2 based on the origin Oworld of the absolute coordinate system Σworld is calculated as shown in the following Expressions 12 to 17. Set.

【数12】Atz=0.0## EQU12 ## Atz = 0.0

【数13】Btz=0.0[Mathematical formula-see original document] Btz = 0.0

【数14】Ctz=0.0## EQU14 ## Ctz = 0.0

【数15】αtz=αtz## EQU15 ## αtz = αtz

【数16】βtz=βtz## EQU16 ## βtz = βtz

【数17】γtz=γtz[Mathematical formula-see original document] γtz = γtz

【0037】次いで、絶対座標系Σworldの原点O
worldを基準にしたポジショナ3の機械原点Opの
位置姿勢を示す同次変換行列[Zw]を演算する位置姿
勢データを、次の数18乃至数23に示すように設定す
る。
Next, the origin O of the absolute coordinate system Σworld
Position and orientation data for calculating a homogeneous transformation matrix [Zw] indicating the position and orientation of the mechanical origin Op of the positioner 3 based on the world is set as shown in the following Expressions 18 to 23.

【数18】Awz=awzAwz = awz

【数19】Bwz=bwz[Equation 19] Bwz = bwz

【数20】Cwz=cwz[Equation 20] Cwz = cwz

【数21】αwz=αwzEquation 21 αwz = αwz

【数22】βwz=βwz## EQU22 ## βwz = βwz

【数23】γwz=γwzΓwz = γwz

【0038】同様に、同次変換行列[Et]及び[E
w]を演算する位置姿勢データを、次の数24乃至数3
5に示すように設定する。
Similarly, the homogeneous transformation matrices [Et] and [Et]
w] is calculated from the following equations 24 to 3
Set as shown in FIG.

【数24】Ate=0.0Ate = 0.0

【数25】Bte=0.0(Equation 25) Bte = 0.0

【数26】Cte=Cte[Equation 26] Cte = Cte

【数27】αte=0.0[Equation 27] αte = 0.0

【数28】βte=βte[Equation 28] βte = βte

【数29】γte=0.0## EQU29 ## γte = 0.0

【数30】Awe=0.0Awe = 0.0

【数31】Bwe=0.0[Mathematical formula-see original document] Bwe = 0.0

【数32】Cwe=0.0(32) Cwe = 0.0

【数33】αwe=0.0[Equation 33] αwe = 0.0

【数34】βwe=0.0[Expression 34] βwe = 0.0

【数35】γwe=0.0[Expression 35] γwe = 0.0

【0039】また、ロボット1、スライダ2及びポジシ
ョナ3の位置姿勢を演算するために、次の表1から表3
にそれぞれ示すロボット1、スカイダ2及びポシショナ
3のD−Hのリンクパラメータを用いる。ここで、例え
ばロボット1においては、関節変数θmaiは第n番目
のリンクLiの回転角度を示し、共通法線距離amai
は第i番目のリンクLiの長さに対応し、リンク間距離
dmaiは第i−1番目のリンクLi−1と第i番目の
リンクLiとの間の距離に対応し、ねじれ角度αmai
は第i−1番目のリンクLi−1と第n番目のリンクL
iとの間の角度に対応する関節軸間の角度であり、ここ
で、i=0,1,2,3,…,6である。スライダ2及
びポジショナ3についても同様である。また、表1乃至
表3において、ロボット1の関節変数θmai(i=
1,2,…,6)と、スライダ2のリンク間距離である
動作位置ds1,ds2と、スライダ2の関節変数θs
3と、ポジショナ3の関節変数θpk(k=1,2)は
それぞれ変数であってRAM102に格納されるが、こ
れ以外のパラメータはROM101に格納された定数値
である。
In order to calculate the position and orientation of the robot 1, the slider 2 and the positioner 3, the following Tables 1 to 3 are used.
DH link parameters of the robot 1, the skiider 2, and the positioner 3, respectively, are used. Here, in the robot 1, for example, the joint variable θmai indicates the rotation angle of the n-th link Li, and the common normal distance amai
Corresponds to the length of the i-th link Li, and the link distance dmai corresponds to the distance between the (i-1) -th link Li-1 and the i-th link Li, and the twist angle αmai
Are the (i-1) th link Li-1 and the nth link L
The angle between the joint axes corresponding to the angle with i, where i = 0, 1, 2, 3,..., 6. The same applies to the slider 2 and the positioner 3. Also, in Tables 1 to 3, the joint variable θmai (i =
1, 2,..., 6), the operating positions ds1, ds2, which are the distances between the links of the slider 2, and the joint variable θs of the slider 2.
3 and the joint variable θpk (k = 1, 2) of the positioner 3 are variables and stored in the RAM 102, but the other parameters are constant values stored in the ROM 101.

【0040】[0040]

【表1】 リンク 関節変数θmai 距離amai 距離dmai ねじれ角度αmai ────────────────────────────────── L0 0.0 0.0 dma0 0.0 L1 θma1 ama1 dma1 +π/2 L2 θma2 ama2 0.0 0.0 L3 θma3 ama3 0.0 +π/2 L4 θma4 0.0 dma4 +π/2 L5 θma5 0.0 0.0 −π/2 L6 θma6 0.0 dma6 0.0[Table 1] Link Joint variables θmai Distance amai Distance dmai Torsion angle αmai L L0 0.0 0.0 dma0 0.0 L1 θma1 ama1 dma1 + π / 2 L2 θma2 ama2 0.0 0.0 L3 θma3 ama3 0.0 + π / 2 L4 θma4 0.0 dma4 + π / 2 L5 θma5 0.0 0.0 -π / 2 L6 θma6 0.0 dma6 0.0

【0041】[0041]

【表2】 リンク 関節変数θsj 距離asj 距離dsj ねじれ角度αsj ────────────────────────────────── L10 +π/2 0.0 ds0 +π/2 L11 +π/2 0.0 ds1 +π/2 L12 +π/2 0.0 ds2 +π/2 L13 θs3 0.0 0.0 0.0[Table 2] Link Joint variable θsj Distance asj Distance dsj Torsion angle αsj ────────────────────────────────── L10 + Π / 2 0.0 ds0 + π / 2 L11 + π / 2 0.0 ds1 + π / 2 L12 + π / 2 0.0 ds2 + π / 2 L13 θs3 0.0 0.0 0.0

【0042】[0042]

【表3】 リンク 関節変数θpk 距離apk 距離dpk ねじれ角度αpk ────────────────────────────────── L20 0.0 0.0 0.0 0.0 L21 θp1 0.0 dp1 +π/2 L22 θp2 0.0 0.0 −π/2 L23 0.0 0.0 dp3 0.0[Table 3] Link joint variable θpk distance apk distance dpk torsion angle αpk ────────────────────────────────── L20 0.0 0.0 0.0 0.0 L21 θp1 0.0 dp1 + π / 2 L22 θp2 0.0 0.0 -π / 2 L23 0.0 0.0 dp3 0.0

【0043】上記各機械1,2,3及び機械1,2,3
間の位置姿勢のデータが与えられると、各座標系間の位
置姿勢の関係を示す同次変換行列の各要素が演算され、
制御装置5内のRAM102(図3参照。)に格納され
る。
Each of the machines 1, 2, 3 and the machines 1, 2, 3
Given the data of the position and orientation between, each element of the homogeneous transformation matrix indicating the relationship of the position and orientation between each coordinate system is calculated,
It is stored in the RAM 102 (see FIG. 3) in the control device 5.

【0044】しかしながら、制御装置5に格納された各
機械1,2,3間の位置姿勢のデータは、しばしば実際
の位置姿勢の数値と同一とならず、図10乃至図12に
示すように種々の設置誤差が存在する。そこで、本発明
に係る本実施例においてはこれらの設置誤差を較正する
装置構成を以下に示す。
However, the data of the position and orientation between the machines 1, 2 and 3 stored in the control device 5 often does not become the same as the actual values of the position and orientation, and various data as shown in FIGS. There is an installation error of Therefore, in the present embodiment according to the present invention, an apparatus configuration for calibrating these installation errors will be described below.

【0045】本実施例では、制御装置5が実行する較正
処理は、以下の4つの較正処理からなる。
In the present embodiment, the calibration process executed by the control device 5 includes the following four calibration processes.

【0046】(a)第1の較正処理(ステップS1,図
30及び図31参照。):絶対座標系Σworldとス
ライダ2の原点Osに設定したツールベース座標系Σs
との間の相互の座標系の回転に関する姿勢成分αtz、
βtz、γtzを較正する処理であり、設置誤差パラメ
ータは、絶対座標系Σworldとツールベース座標系
Σsの姿勢成分αtz、βtz、γtzのねじれ角度△
αtz、△βtz、△γtzからなる設置誤差ε3であ
る。
(A) First calibration processing (step S1, see FIGS. 30 and 31): an absolute coordinate system Σworld and a tool base coordinate system Σs set at the origin Os of the slider 2
Attitude component αtz relating to the rotation of the mutual coordinate system between
This is a process for calibrating βtz and γtz, and the installation error parameter is calculated based on the absolute coordinate system Σworld and the tool base coordinate system 姿勢 s posture components αtz, βtz, and torsion angles of γtz △
An installation error ε3 including αtz, △ βtz, and △ γtz.

【0047】(b)第2の較正処理(ステップS2,図
32参照。):スライダ2の駆動第1軸L11方向と、
ロボット1の設置基準面に設けたツール機械座標系Σm
との間の交互の座標系の回転に関する姿勢成分θs3を
較正する処理であり、誤差パラメータは、スライダ2の
駆動第1軸L11方向と、ロボット1の設置基準面に設
けたツール機械座標系Σmとのねじれ角度△θs3から
なる設置誤差ε4である。
(B) Second calibration process (step S2, see FIG. 32): the direction of the drive first axis L11 of the slider 2;
Tool machine coordinate system Σm provided on the reference mounting plane of robot 1
This is a process for calibrating the posture component θs3 relating to the rotation of the coordinate system alternate between the two. The error parameters are the direction of the driving first axis L11 of the slider 2 and the tool mechanical coordinate system Σm provided on the installation reference plane of the robot 1. Is an installation error ε4 consisting of a torsion angle Δθs3.

【0048】(c)第3の較正処理(ステップS3,図
33乃至図36参照。):絶対座標系Σworldと、
ポジショナ3の原点Opに設定したワークベース座標系
Σpとの相互の座標系の回転に関する、絶対座標系Σw
orldのZ軸、Y軸及びX軸の姿勢成分γwz,βw
z,αwzを較正する処理であり、誤差パラメータは、
絶対座標系Σworldと、ポジショナ3の原点Opに
設定したワークベース座標系Σpとの間の絶対座標系Σ
worldのZ軸、Y軸及びX軸の回りのねじれ角度△
γwz,Δβwz,Δαwzからなる設置誤差ε2であ
る。ここで、当該第3の較正処理は、図33に示すよう
に、角度γwz較正処理(ステップS31,図34参
照。)と、角度βwz較正処理(ステップS32,図3
5参照。)と、角度αwz較正処理(ステップS33,
図36参照。)とからなる。
(C) Third calibration process (step S3, see FIGS. 33 to 36): absolute coordinate system Σworld,
An absolute coordinate system Σw relating to the rotation of the mutual coordinate system with the work base coordinate system Σp set at the origin Op of the positioner 3
posture components γwz, βw of the old Z-axis, Y-axis and X-axis
This is a process for calibrating z and αwz, and the error parameter is
An absolute coordinate system between an absolute coordinate system {world} and a work base coordinate system {p set at the origin Op of the positioner 3}
torsional angles around the world's Z, Y and X axes
An installation error ε2 including γwz, Δβwz, and Δαwz. Here, as shown in FIG. 33, the third calibration process includes an angle γwz calibration process (step S31, see FIG. 34) and an angle βwz calibration process (step S32, FIG. 3).
See 5. ) And the angle αwz calibration process (step S33,
See FIG. ).

【0049】(d)第4の較正処理(ステップS4,図
37参照。):ポジショナ3の出力軸原点Owmに設け
たワーク座標系Σworkに関して、制御装置5におけ
る演算上のワーク座標系Σworkの原点Oworkの
位置と、実際のワークの原点の位置との差を較正する処
理であり、誤差パラメータは、絶対座標系Σworld
の原点Oworldからポジショナ3の機械原点Opま
での位置成分awz、bwz、cwzのずれ量△aw
z、△bwz、△cwzである。
(D) Fourth calibration processing (step S4, see FIG. 37): With respect to the work coordinate system Σwork provided at the origin Owm of the output shaft of the positioner 3, the origin of the work coordinate system Σwork calculated by the controller 5 is calculated. This is a process for calibrating the difference between the position of the Owork and the position of the actual origin of the work. The error parameter is represented by an absolute coordinate system Σworld
Of the position components awz, bwz, and cwz from the origin Oworld of the positioner 3 to the mechanical origin Op of the positioner 3 △ aw
z, △ bwz, and △ cwz.

【0050】従って、上述した4つの設置誤差を図示す
ると図5のようになる。すなわち、設置誤差ε1とε2
は絶対座標系Σworldとポシショナ3との間の設置
誤差であって、さらに、設置誤差ε3は絶対座標系Σw
orldとスライダ2との設置誤差であり、設置誤差ε
4はロボット1とスライダ2との間の設置誤差である。 (2)産業用ロボットシステムとその設置誤差較正制御
装置の構成 図3に制御装置5の構成を示す。
Accordingly, the four installation errors described above are illustrated in FIG. That is, the installation errors ε1 and ε2
Is the installation error between the absolute coordinate system Σworld and the positioner 3, and the installation error ε3 is the absolute coordinate system Σw
is the installation error between the old and the slider 2, and the installation error ε
4 is an installation error between the robot 1 and the slider 2. (2) Configuration of Industrial Robot System and Its Installation Error Calibration Control Device FIG. 3 shows the configuration of the control device 5.

【0051】図3に示すように、制御装置5は、(a)
クロック発生器110によって発生されるクロック信号
と当該クロック信号を所定の分周比で分周する分周器1
11によって発生される同期信号SYNCに基づいてR
OM101に格納されたシステムプログラムに従って、
ロボット1とスライダ2とポジショナ3とを制御するC
PU100と、(b)ロボット1とスライダ2とポジシ
ョナ3の各動作を制御するためのシステムプログラム
と、当該システムプログラムを実行するために必要なデ
ータを格納するROM101と、(c)CPU100の
ワーキングエリアとして用いられるとともに、作業プロ
グラム生成処理において生成された作業プログラムを格
納するためのRAM102と、(d)ティーチングボッ
クス20と操作ボックス21とが接続されたインターフ
ェース103と、(e)各モータMO1乃至MO10に
対する駆動制御値であるモータ指令位置DPk(k=
1,2,…,10)のデータを格納するデュアルポート
RAM104とを備え、これらの各回路100乃至10
3とデュアルポートRAM104の第1のポートがバス
109を介して接続される。なお、ティーチングボック
ス20と操作ボックス21の各操作スイッチについての
処理はCPU100の割り込み処理によって実行され
る。
As shown in FIG. 3, the control device 5 comprises (a)
Clock signal generated by clock generator 110 and frequency divider 1 for dividing the clock signal by a predetermined frequency division ratio
11 based on the synchronization signal SYNC generated by
According to the system program stored in the OM 101,
C for controlling the robot 1, the slider 2, and the positioner 3
PU100, (b) a ROM 101 for storing a system program for controlling each operation of the robot 1, the slider 2, and the positioner 3, and data necessary for executing the system program, and (c) a working area of the CPU 100. RAM 102 for storing the work program generated in the work program generation processing, (d) an interface 103 to which the teaching box 20 and the operation box 21 are connected, and (e) each of the motors MO1 to MO10. Command position DPk (k =
, 10) are stored, and the respective circuits 100 to 10 are provided.
3 and the first port of the dual port RAM 104 are connected via a bus 109. The processing for each of the operation switches of the teaching box 20 and the operation box 21 is executed by the interrupt processing of the CPU 100.

【0052】デュアルポートRAM104の第2のポー
トはラッチ回路105に接続され、ラッチ回路105は
同期信号SYNCに同期して、デュアルポートRAM1
04に格納された各モータMO1乃至MO10に対する
10個のモータ指令位置DPkのデータを同時にラッチ
した後、以下の3つの動作を同時に実行する。 (a)ロボット1の関節制御に関するモータ指令位置D
P1乃至DP6のデータをサーボ制御回路106を介し
てモータMO1乃至MO6に出力して駆動する。 (b)スライダ2の関節制御に関するモータ指令位置D
P9乃至DP10のデータをサーボ制御回路108を介
してモータMO9乃至MO10に出力して駆動する。 (c)ポジショナ3の関節制御に関するモータ指令位置
DP7乃至DP8のデータをサーボ制御回路107を介
してモータMO7乃至MO8に出力して駆動する。ここ
で、同期信号SYNCの発生周期は、教示作業における
モータMO1乃至MO10の駆動周期と、再生動作処理
における各補間点毎にモータMO1乃至MO10を駆動
する周期に対応している。当該発生周期は、制御装置2
において教示作業時及び再生動作時における各補間毎に
要する処理、すなわち演算に要する時間に、若干の余裕
値を加算した値とする。また、当該発生周期は短い方が
好ましいが、このためには処理時間の速いCPUによる
処理が必要となり、高価となる。実用上は、好ましくは
10乃至70msecに設定される。
The second port of the dual port RAM 104 is connected to the latch circuit 105, and the latch circuit 105 synchronizes with the synchronization signal SYNC to output the dual port RAM1.
After simultaneously latching the data of ten motor command positions DPk for each of the motors MO1 to MO10 stored in 04, the following three operations are simultaneously executed. (A) Motor command position D related to joint control of robot 1
The data of P1 to DP6 are output to the motors MO1 to MO6 via the servo control circuit 106 and driven. (B) Motor command position D related to joint control of slider 2
The data of P9 to DP10 are output to the motors MO9 to MO10 via the servo control circuit 108 and driven. (C) The data of the motor command positions DP7 to DP8 relating to the joint control of the positioner 3 are output to the motors MO7 to MO8 via the servo control circuit 107 and driven. Here, the generation cycle of the synchronization signal SYNC corresponds to the drive cycle of the motors MO1 to MO10 in the teaching operation and the cycle of driving the motors MO1 to MO10 for each interpolation point in the reproduction operation process. The generation cycle is determined by the control device 2
, A value obtained by adding a slight margin value to the processing required for each interpolation during the teaching operation and the reproducing operation, that is, the time required for the calculation. Further, it is preferable that the generation cycle be short, but this requires processing by a CPU with a short processing time, which is expensive. In practice, it is preferably set to 10 to 70 msec.

【0053】なお、CPU100は、後述のように計算
される関節変数を減速比λkで除算することによってモ
ータ指令位置DPkのデータを計算し、デュアルポート
RAM104に書き込み、CPU100は、計算されて
現在位置する関節変数の値と、上述した各座標系間の関
係を示す同次変換行列の各要素の値をRAM102に格
納している。
The CPU 100 calculates the data of the motor command position DPk by dividing the joint variable calculated as described later by the reduction ratio λk, writes the data in the dual port RAM 104, and the CPU 100 calculates the current position. The values of the joint variables and the values of the respective elements of the homogeneous transformation matrix indicating the relationship between the coordinate systems described above are stored in the RAM 102.

【0054】図4に、ロボット1とポジショナ3の各関
節RJkの構造とサーボ制御回路106,107のブロ
ック図を示す。図4に示すように、モータMOkの回転
軸は減速機REkの入力軸に連結され、減速機REkは
モータMOkの回転速度を所定の減速比λkだけ減速す
ることによって、モータMOkによって発生されるトル
クを上記減速比の逆数倍だけ増大させて、減速機REk
の出力軸に連結されたリンクLkに出力する。ここで、
モータMOkの回転軸にはセンサSNkの軸が連結さ
れ、当該センサSNkからの出力信号がサーボ制御回路
106,107内の加算器120の減算入力端子に入力
される。一方、ラッチ回路105からのモータ指令位置
DPkのデータが加算器120の加算入力端子に入力さ
れる。加算器120から出力されるデータは、D/A変
換器(図示せず。)によってアナログ電圧信号に変換さ
れた後、所定の増幅度を有する増幅器121を介してモ
ータMOkの駆動端子に印加される。以上のように構成
されたサーボ制御のフィードバック系においては、セン
サSNkからの出力信号に基づいて、1段前の関節のX
軸Xk−1に平行であって関節軸Zk−1から延在する
軸Xk−2’に対応しかつモータMOkの回転軸から延
在する軸Xk−2’’からの回転角度がモータ指令位置
DPkとなるように制御され、これによって、リンクL
kが軸Xk−2’から関節変数θkだけ回転される。な
お、スライダ2の関節の構造とそのためのサーボ制御回
路108は、2つの駆動軸L11,L12で並進移動さ
せることを除いて同様に構成される。
FIG. 4 is a block diagram showing the structure of each joint RJk of the robot 1 and the positioner 3 and the servo control circuits 106 and 107. As shown in FIG. 4, the rotation shaft of the motor MOk is connected to the input shaft of the reduction gear REk, and the reduction gear REk is generated by the motor MOk by reducing the rotation speed of the motor MOk by a predetermined reduction ratio λk. The torque is increased by the reciprocal of the reduction ratio, and the reduction gear REk
Is output to the link Lk connected to the output shaft. here,
The rotation axis of the motor MOk is connected to the axis of the sensor SNk, and the output signal from the sensor SNk is input to the subtraction input terminal of the adder 120 in the servo control circuits 106 and 107. On the other hand, data of the motor command position DPk from the latch circuit 105 is input to the addition input terminal of the adder 120. Data output from the adder 120 is converted into an analog voltage signal by a D / A converter (not shown), and then applied to the drive terminal of the motor MOk via an amplifier 121 having a predetermined amplification factor. You. In the servo control feedback system configured as described above, based on the output signal from the sensor SNk, X
The rotation angle from the axis Xk-2 ″ that is parallel to the axis Xk-1 and extends from the joint axis Zk-1 and corresponds to the axis Xk-2 ′ and extends from the rotation axis of the motor MOk is the motor command position. DPk so that the link L
k is rotated from the axis Xk-2 ′ by the joint variable θk. The structure of the joint of the slider 2 and the servo control circuit 108 therefor have the same configuration except that the slider 2 is translated by two drive axes L11 and L12.

【0055】(3)設置誤差較正制御装置の処理 (3−1)メインルーチン 図26に当該制御装置5によって実行される設置誤差較
正処理のメインルーチンのフローチャートを示す。
(3) Process of Installation Error Calibration Control Device (3-1) Main Routine FIG. 26 shows a flowchart of a main routine of the installation error calibration process executed by the control device 5.

【0056】図26において、まず、ステップS1にお
いて設置誤差ε3を較正する第1の較正処理を実行し、
次いで、ステップS2において設置誤差ε4を較正する
第2の較正処理を実行する。さらに、ステップS3にお
いて設置誤差ε2を較正する第3の較正処理を実行し、
次いで、ステップS4において設置誤差ε1を較正する
第4の較正処理を実行する。
In FIG. 26, first, in a step S1, a first calibration process for calibrating the installation error ε3 is executed,
Next, in step S2, a second calibration process for calibrating the installation error ε4 is executed. Further, in step S3, a third calibration process for calibrating the installation error ε2 is executed,
Next, in step S4, a fourth calibration process for calibrating the installation error ε1 is executed.

【0057】(3−2)第1の較正処理 図30及び図31は、図26及び図28の第1の較正処
理(ステップS1)を示すフローチャートである。
(3-2) First Calibration Process FIGS. 30 and 31 are flowcharts showing the first calibration process (step S1) of FIGS. 26 and 28.

【0058】当該第1の較正処理においては、絶対座標
系Σworldを基準にしたスライダ2の機械原点Os
に設定したツールベース座標系Σsの姿勢成分αtz、
βtz、γtzを較正対象とし、これらのパラメータ
は、制御装置5のRAM102に格納している。しかし
ながら、実際の当該ロボットシステムにおいては、前記
格納したパラメータ値に対して、図10乃至図12に示
すように、設置誤差ε3であるねじれ角度△αtz、△
βtz、△γtzを有する。当該第1の較正処理におい
ては、制御装置5内で格納する位置姿勢データと実際の
ロボットシステムの位置姿勢データとの相違であるねじ
れ角度△αtz、△βtz、△γtzを検出し、制御装
置5内の位置姿勢データを実際のロボットシステムの位
置姿勢データに較正する。
In the first calibration process, the mechanical origin Os of the slider 2 based on the absolute coordinate system Σworld
The attitude component αtz of the tool base coordinate system Σs set in
βtz and γtz are set as calibration targets, and these parameters are stored in the RAM 102 of the control device 5. However, in the actual robot system, as shown in FIGS. 10 to 12, the torsion angle {αtz, △
βtz and △ γtz. In the first calibration process, the torsion angles △ αtz, △ βtz, △ γtz, which are differences between the position and orientation data stored in the control device 5 and the actual position and orientation data of the robot system, are detected. Is calibrated to the actual position and orientation data of the robot system.

【0059】まず、図13と図14に示すように、直方
体のブロックBK1の各表面が絶対座標系Σworld
の各軸方向に対して平行となるような予め決められた位
置に、表面が平担となるように機械加工されている直方
体のブロックBK1を載置する。また、Zworld軸
に対して平行なブロックBK1の上面との距離を測定す
る距離センサSS1と、Xworld軸に対して平行な
ブロックBK2の側面との距離を測定する距離センサS
S2とを、距離センサSS1,SS2のセンサ面が直交
しかつ距離センサSS1のセンサ軸はブロックBK1の
上面に対して垂直となり距離センサSS2のセンサ軸は
ブロックBK1の側面に対して垂直になるように、これ
ら距離センサSS1,SS2を把持する治具J1を介し
てロボット1のツール4に操作者が取り付ける。この準
備作業が完了したことを、操作者がティーチングボック
ス20を用いてCPU100に知らしめることにより、
制御装置5はスライダ5がポジションA1にあるものと
して、以下の第1の較正処理を実行する。
First, as shown in FIGS. 13 and 14, each surface of the rectangular parallelepiped block BK1 has an absolute coordinate system Σworld
A rectangular parallelepiped block BK1 that has been machined so that its surface is flat is placed at a predetermined position that is parallel to each axial direction. Further, a distance sensor SS1 for measuring a distance to the upper surface of the block BK1 parallel to the Zworld axis and a distance sensor S for measuring a distance to a side surface of the block BK2 parallel to the Xworld axis.
S2 is set so that the sensor surfaces of the distance sensors SS1 and SS2 are perpendicular to each other, the sensor axis of the distance sensor SS1 is perpendicular to the upper surface of the block BK1, and the sensor axis of the distance sensor SS2 is perpendicular to the side surface of the block BK1. Then, an operator attaches the tool 4 of the robot 1 via a jig J1 that holds the distance sensors SS1 and SS2. The operator notifies the CPU 100 using the teaching box 20 that the preparation work has been completed.
The control device 5 executes the following first calibration processing assuming that the slider 5 is at the position A1.

【0060】ステップS110において、制御装置5の
RAM102に記憶した、現在のポジションA1でのス
ライダ2の動作位置ds1をCPU100内に取り込
む。以下、各処理において「データを取り込む」とは
「データをCPU100内に取り込む」ことを意味す
る。次いで、ステップS112において、制御装置5の
RAM102に格納されている、絶対座標系Σworl
dを基準としたツールベース座標系Σsの位置姿勢を示
す同次変換行列[Zt]を取り込む。さらに、ステップ
S116において、図13及び図14に示すスライダ2
がポジションA1に位置するときの距離センサSS1,
SS2が検出したセンサ検出距離lx1、lz1を図3
に示すインターフェイス103を介して取り込む。ここ
で、各センサ検出距離lx1とlz1はそれぞれ、絶対
座標系ΣworldのX軸方向とZ軸方向の各距離であ
る。
In step S 110, the current operating position ds 1 of the slider 2 at the current position A 1, which is stored in the RAM 102 of the control device 5, is loaded into the CPU 100. Hereinafter, “fetching data” in each process means “taking data into the CPU 100”. Next, in step S112, the absolute coordinate system $ world stored in the RAM 102 of the control device 5 is set.
A homogeneous transformation matrix [Zt] indicating the position and orientation of the tool base coordinate system Σs based on d is fetched. Further, in step S116, the slider 2 shown in FIGS.
Is located at position A1, distance sensors SS1,
FIG. 3 shows the sensor detection distances lx1 and lz1 detected by SS2.
Is taken in through the interface 103 shown in FIG. Here, the sensor detection distances lx1 and lz1 are distances in the X-axis direction and the Z-axis direction of the absolute coordinate system Σworld, respectively.

【0061】次いで、ステップS118において、ロボ
ット1が載置されたスライダ2をその第1軸L11に沿
って予め決められた距離DL1だけ移動させて、スライ
ダ2をポシションB1に位置させて固定させる。当該処
理において、スライダ2上のロボット1は動作させな
い。そして、ステップS119において、図13及び図
14に示すように、スライダ2がポジションB1に位置
するときに、ステップS116と同様に、距離センサS
S1,SS2がそれぞれ検出したセンサ検出距離をlz
2、lx2を取り込む。さらに、ステップS120にお
いて、ステップS116,S119において得られたセ
ンサ検出距離lx1、lx2及びlz1、lz2と、上
記移動距離DL1とに基づいて、次の数36,数37を
用いて、絶対座標系Σworldを基準としたツールベ
ース座標系Σsの姿勢成分αe及びγeを演算する。
Next, in step S118, the slider 2 on which the robot 1 is mounted is moved by a predetermined distance DL1 along the first axis L11, and the slider 2 is positioned and fixed at the position B1. In this process, the robot 1 on the slider 2 is not operated. Then, in step S119, as shown in FIGS. 13 and 14, when the slider 2 is located at the position B1, similarly to step S116, the distance sensor S
The sensor detection distance detected by S1 and SS2 respectively is lz
2. Import 1 × 2. Further, in step S120, based on the sensor detection distances lx1, lx2 and lz1, lz2 obtained in steps S116 and S119, and the moving distance DL1, the absolute coordinate system {world} is calculated using the following equations (36) and (37). Are calculated with reference to the posture components αe and γe of the tool base coordinate system Σs.

【0062】[0062]

【数36】 [Equation 36]

【数37】 (37)

【0063】さらに、ステップS121において、ステ
ップS120で演算された絶対座標系Σworldを基
準としたツールベース座標系ΣsのX軸回りの姿勢成分
αeが、RAM102に格納されているαtzに等しい
か否かが判断され、次いで、ステップS122におい
て、ステップS120で演算された絶対座標系Σwor
ldを基準としたツールベース座標系ΣsのZ軸回りの
姿勢成分γeが、RAM102に格納されているγtz
に等しいか否かが判断される。ここで、もしαe=αt
zでありかつγe=γtzであるとき、ステップS13
0乃至S132の較正処理を行う必要がないと判断して
図31の処理に進む。一方、もし、αe≠αtzであり
かつγe≠γtzであるときステップS130に進む。
Further, in step S121, it is determined whether or not the posture component αe around the X axis of the tool base coordinate system Σs based on the absolute coordinate system Σworld calculated in step S120 is equal to αtz stored in the RAM 102. Then, in step S122, the absolute coordinate system Σ wor calculated in step S120 is calculated.
The posture component γe around the Z-axis of the tool base coordinate system Σs based on ld is represented by γtz stored in the RAM 102.
Is determined. Here, if αe = αt
If z and γe = γtz, step S13
It is determined that there is no need to perform the calibration processing from 0 to S132, and the process proceeds to the processing in FIG. On the other hand, if αe ≠ αtz and γe ≠ γtz, the process proceeds to step S130.

【0064】ステップS130において、ステップS1
20で演算した絶対座標系Σworldを基準としたツ
ールベース座標系Σsの姿勢成分αe、γeに基づい
て、次の数38と数39とを用いて、制御装置5のRA
M102に格納している姿勢成分αtz、γtzに対す
る、ねじれ角度△αtz、△γtzを演算する。
In step S130, step S1
Based on the posture components αe and γe of the tool base coordinate system Σs based on the absolute coordinate system Σworld calculated in 20, the RA of the control device 5 is calculated using the following Expressions 38 and 39.
The torsion angles △ αtz and △ γtz are calculated for the posture components αtz and γtz stored in M102.

【数38】△αtz=αe−αtz38αtz = αe−αtz

【数39】△γtz=γe−γtz39γtz = γe−γtz

【0065】次いで、ステップS131において、ステ
ップS130において演算された、ねじれ角度△αt
z、△γtzを補正値として用いて、ロボット制御装置
のRAMに格納している姿勢成分αtz、γtzに対し
て補正する。すなわち、ねじれ角度△αtz、△γtz
を用いて較正された後の、絶対座標系Σworldを基
準としたツールベース座標系Σsの姿勢成分の較正値α
tz’、γtz’は次の数40と数41のように表わさ
れる。
Next, in step S131, the torsion angle Δαt calculated in step S130 is calculated.
By using z and △ γtz as correction values, the posture components αtz and γtz stored in the RAM of the robot controller are corrected. That is, the twist angles △ αtz, △ γtz
Calibration value α of the posture component of the tool base coordinate system Σs based on the absolute coordinate system Σworld after being calibrated using
tz ′ and γtz ′ are expressed as in the following Expression 40 and Expression 41.

【数40】αtz’=αtz+△αtzΑtz ′ = αtz + △ αtz

【数41】γtz’=γtz+△γtz41tz ′ = γtz + △ γtz

【0066】次いで、上記演算された較正値αtz’、
γtz’に対する、絶対座標系Σworldを基準とし
たツールベース座標系Σsの位置姿勢を示す較正値の同
次変換行列[Zt’]を、数42を用いて演算する。
Next, the calculated calibration values αtz ′,
A homogeneous transformation matrix [Zt '] of calibration values indicating the position and orientation of the tool base coordinate system Σs based on the absolute coordinate system Σworld with respect to γtz' is calculated using Expression 42.

【数42】 [Zt']=Trans(atz,btz,ctz)・Rot(X,αtz')・Rot(Y,βtz)・Rot(Z,γtz')[Zt ′] = Trans (atz, btz, ctz) · Rot (X, αtz ′) · Rot (Y, βtz) · Rot (Z, γtz ′)

【0067】そして、ステップS132において、上記
演算された較正値の同次変換行列[Zt’]を、同次変
換行列[Zt]としてRAM102に格納され、これに
よって較正が完了したので、絶対座標系Σworldを
基準としたツールベース座標系Σsの姿勢成分αtz、
βtz、γtzのうち姿勢成分αtz、γtzを較正す
ることができ、残りの姿勢成分βtzを較正するため
に、図31の以下の処理を行う。
Then, in step S132, the homogeneous transformation matrix [Zt '] of the calculated calibration value is stored in the RAM 102 as the homogeneous transformation matrix [Zt], and the calibration is completed. Attitude component αtz of tool base coordinate system Σs based on Σworld,
The posture components αtz and γtz among βtz and γtz can be calibrated, and the following processing in FIG. 31 is performed to calibrate the remaining posture components βtz.

【0068】図15及び図16に示すように、ロボット
1を所定のポジションA2に位置させ、Zworld軸
に対して平行なブロックBK1の上面との距離を測定す
る距離センサSS1と、Yworld軸に対して平行な
ブロックBK2の側面との距離を測定する距離センサS
S2とを、距離センサSS1,SS2のセンサ面が直交
しかつ距離センサSS1のセンサ軸はブロックBK1の
上面に対して垂直となり距離センサSS2のセンサ軸は
ブロックBK1の側面に対して垂直になるように、これ
ら距離センサSS1,SS2を把持する治具J1を介し
てロボット1のツール4に操作者が取り付ける。この準
備作業が完了したことを操作者がティーチングボックス
20を用いてCPU100に知らしめることにより、制
御装置5はスライダ2がポジションA2にあるものとし
て以下の処理を実行する。まず、図31のステップS1
50において、スライダ2の動作位置ds2を取り込
む。
As shown in FIGS. 15 and 16, the robot 1 is positioned at a predetermined position A2, a distance sensor SS1 for measuring a distance from the upper surface of the block BK1 parallel to the Zworld axis, and a distance sensor SS1 for the Yworld axis. Sensor S for measuring the distance from the side of the parallel block BK2
S2 is set so that the sensor surfaces of the distance sensors SS1 and SS2 are perpendicular to each other, the sensor axis of the distance sensor SS1 is perpendicular to the upper surface of the block BK1, and the sensor axis of the distance sensor SS2 is perpendicular to the side surface of the block BK1. Then, an operator attaches the tool 4 of the robot 1 via a jig J1 that holds the distance sensors SS1 and SS2. The operator notifies the CPU 100 using the teaching box 20 that the preparation work has been completed, and the control device 5 executes the following processing assuming that the slider 2 is at the position A2. First, step S1 in FIG.
At 50, the operating position ds2 of the slider 2 is captured.

【0069】次いで、ステップS152において、制御
装置5のRAM102に格納されている、絶対座標系Σ
worldを基準としたツールベース座標系Σsの位置
姿勢を示す同次変換行列[Zt]を取り込む。さらに、
ステップS153において、図15及び図16に示すよ
うに、ロボット1が当該ポジションA2に位置するとき
の距離センサSS1,SS2がそれぞれ検出したセンサ
検出距離lz1、ly1を取り込む。ここで、各センサ
検出距離ly1とlz1はそれぞれ、絶対座標系Σwo
rldのY軸方向とZ軸方向の各距離である。
Next, in step S152, the absolute coordinate system Σ stored in the RAM 102 of the control device 5
A homogeneous transformation matrix [Zt] indicating the position and orientation of the tool base coordinate system Σs based on world is fetched. further,
In step S153, as shown in FIGS. 15 and 16, the sensor detection distances lz1 and ly1 detected by the distance sensors SS1 and SS2 when the robot 1 is located at the position A2 are captured. Here, each of the sensor detection distances ly1 and lz1 is an absolute coordinate system Σwo
rld are distances in the Y-axis direction and the Z-axis direction.

【0070】次いで、ステップS155においてロボッ
ト1が載置されたスライダ2をその第2軸L12に沿っ
て予め決められた距離DL2だけ移動させて、スライダ
2をポジションB2に位置させて固定させる。当該処理
において、スライダ2上のロボット1は動作させない。
そして、ステップS156において、図15及び図16
に示すように、スライダ2がポジションB2に位置する
ときに、ステップS153と同様に、距離センサSS
1,SS2がそれぞれ検出したセンサ検出距離をlz
2、ly2を取り込む。さらに、ステップS157にお
いて、ステップS153,S156において得られたセ
ンサ検出距離ly1、ly2及びlz1、lz2と、上
記移動距離DL2とに基づいて、次の数43を用いて、
絶対座標系Σworldを基準としたツールベース座標
系Σsの姿勢成分βeを演算する。
Next, in step S155, the slider 2 on which the robot 1 is mounted is moved by a predetermined distance DL2 along the second axis L12, and the slider 2 is positioned and fixed at the position B2. In this process, the robot 1 on the slider 2 is not operated.
Then, in step S156, FIGS.
When the slider 2 is located at the position B2 as shown in FIG.
1 and SS2 are the sensor detection distances respectively detected by lz
2. Import ly2. Further, in step S157, based on the sensor detection distances ly1, ly2 and lz1, lz2 obtained in steps S153 and S156 and the moving distance DL2, using the following equation 43,
The posture component βe of the tool base coordinate system Σs based on the absolute coordinate system Σworld is calculated.

【0071】[0071]

【数43】 [Equation 43]

【0072】さらに、ステップS158において、ステ
ップS157で演算された絶対座標系Σworldを基
準としたツールベース座標系ΣsのY軸回りの姿勢成分
βeが、RAM102に格納されているβtzに等しい
か否かが判断される。ここで、もしβe=βtzである
とき、第1の較正処理が終了したとしてリターンする。
一方、もし、βe≠βtzであるときステップS160
に進む。
Further, in step S158, it is determined whether or not the posture component βe around the Y axis of the tool base coordinate system と し た s based on the absolute coordinate system さ れ world calculated in step S157 is equal to βtz stored in the RAM 102. Is determined. Here, if βe = βtz, the process returns assuming that the first calibration process has been completed.
On the other hand, if βe ≠ βtz, step S160
Proceed to.

【0073】ステップS160において、ステップS1
57で演算した絶対座標系Σworldを基準としたツ
ールベース座標系Σsの姿勢成分βeに基づいて、次の
数44を用いて、制御装置5のRAM102に格納して
いる姿勢成分βtzに対する、ねじれ角度△βtzを演
算する。
In step S160, step S1
Based on the posture component βe of the tool base coordinate system Σs based on the absolute coordinate system Σworld calculated in 57, the twist angle with respect to the posture component βtz stored in the RAM 102 of the control device 5 using the following Expression 44 Δβtz is calculated.

【数44】△βtz=βe−βtz44βtz = βe−βtz

【0074】次いで、ステップS161において、ステ
ップS157において演算された、ねじれ角度△βtz
を補正値として用いて、ロボット制御装置のRAMに格
納している姿勢成分βtzに対して補正する。すなわ
ち、ねじれ角度△βtzを用いて較正された後の、絶対
座標系Σworldを基準としたツールベース座標系Σ
sの姿勢成分の較正値βtz’は次の数45のように表
される。
Next, in step S161, the torsion angle △ βtz calculated in step S157
Is used as a correction value to correct the posture component βtz stored in the RAM of the robot controller. That is, the tool coordinate system based on the absolute coordinate system {world} after being calibrated using the twist angle {βtz}
The calibration value βtz ′ of the posture component of s is expressed as in the following Expression 45.

【数45】βtz’=βtz+△βtz[Formula 45] βtz ′ = βtz + △ βtz

【0075】次いで、上記演算された較正値βtz’に
対する、絶対座標系Σworldを基準としたツールベ
ース座標系Σsの位置姿勢を示す較正値の同次変換行列
[Zt’’]を、次の数46を用いて演算する。
Next, a homogeneous transformation matrix [Zt ″] of the calibration value indicating the position and orientation of the tool base coordinate system Σs based on the absolute coordinate system Σworld with respect to the calculated calibration value βtz 'is expressed by the following equation. The calculation is performed using 46.

【数46】 [Zt'']=Trans(atz,btz,ctz)・Rot(X,αtz)・Rot(Y,βtz')・Rot(Z,γtz)[Zt ″] = Trans (atz, btz, ctz) · Rot (X, αtz) · Rot (Y, βtz ′) · Rot (Z, γtz)

【0076】そして、ステップS162において、上記
演算された較正値の同次変換行列[Zt’’]を、同次
変換行列[Zt]として、RAM102に格納される。
これによって、第1の較正処理が完了したとしてリター
ンする。以上の図30と図31の第1の較正処理によっ
て、絶対座標系Σworldを基準としたツールベース
座標系Σsのすべての姿勢成分αtz、βtz、γtz
を較正することができる。
Then, in step S162, the homogeneous transformation matrix [Zt ″] of the calculated calibration value is stored in the RAM 102 as the homogeneous transformation matrix [Zt].
As a result, the process returns assuming that the first calibration process has been completed. By the above-described first calibration processing in FIGS. 30 and 31, all the posture components αtz, βtz, and γtz in the tool base coordinate system Σs based on the absolute coordinate system Σworld
Can be calibrated.

【0077】(3−3)第2の較正処理 図32に第2の較正処理のフロチャートを示す。(3-3) Second Calibration Process FIG. 32 is a flowchart of the second calibration process.

【0078】第2の較正処理は、図10乃至図12に示
すように、スライダ2の第2軸L12方向と、ロボット
1の設置基準面に設けたツール機械座標系ΣOmとの間
の姿勢成分θs3の設置誤差であるねじれ角度Δθs3
を検出して、姿勢成分θs3を較正する。
The second calibration process is, as shown in FIGS. 10 to 12, a posture component between the direction of the second axis L12 of the slider 2 and the tool machine coordinate system ΣOm provided on the installation reference plane of the robot 1. Twist angle Δθs3, which is the installation error of θs3
Is detected, and the posture component θs3 is calibrated.

【0079】まず、図18及び図19に示すように、ツ
ール4の先端基準点Otoolまでの距離lを測定する
ために、ツール4の先端に表面が平担となるように機械
加工されている直方体のブロックBK1を取り付け、直
線距離を計測する距離センサSS2をそのセンサ面がス
ライダ2の第2軸L12の基準面L1Rに対して平行と
なるように、例えば台上に固定する。従って、ここで、
固定した距離センサSS2のセンサ軸は、ブロックBK
1の側面及びスライダ2の第2軸L12の基準面L1R
に対して垂直であり、距離センサSS2はセンサSS2
のセンサ面からツール4の先端基準点Otoolまでの
距離lを測定する。
First, as shown in FIG. 18 and FIG. 19, in order to measure the distance 1 to the tip reference point Otool of the tool 4, the tool 4 is machined so that the surface is flat at the tip. A rectangular parallelepiped block BK1 is attached, and a distance sensor SS2 for measuring a linear distance is fixed on, for example, a table such that its sensor surface is parallel to a reference surface L1R of a second axis L12 of the slider 2. Therefore, where
The sensor axis of the fixed distance sensor SS2 is a block BK
1 and the reference plane L1R of the second axis L12 of the slider 2
And the distance sensor SS2 is
Of the tool 4 from the sensor surface of the tool 4 is measured.

【0080】ところで、図4に示すように、ロボット
1、スライダ2及びポジショナ3の各関節は、モータと
減速機とを備えて回転可能に構成されている。従って、
ロボット1の各関節RJ1乃至RJ6において、(a)
関節番号をi(i=1,2,3,…,6)とし、(b)
モータ指令位置をPmai[パルス]とし、(c)モー
タの1回転当たりの指令位置増減量をNmai[パルス
/回転](d)減速機の減速比をλmaiとし、(e)
ロボット1の関節変数をθmai[rad]とすると、
次の数47が成立する。
By the way, as shown in FIG. 4, each joint of the robot 1, the slider 2 and the positioner 3 is provided with a motor and a speed reducer so as to be rotatable. Therefore,
In each joint RJ1 to RJ6 of the robot 1, (a)
Let the joint number be i (i = 1, 2, 3,..., 6), and (b)
The motor command position is Pmai [pulse], (c) the command position increase / decrease per motor rotation is Nmai [pulse / rotation], (d) the reduction ratio of the speed reducer is λmai, and (e)
If the joint variable of the robot 1 is θmai [rad],
The following equation 47 is established.

【0081】[0081]

【数47】 θmai=Pmai×(2π/Nmai)×λmai,
i=1,2,…,6
Equation 47 θmai = Pmai × (2π / Nmai) × λmai,
i = 1,2, ..., 6

【0082】また、スライダ2の第1および第2の移動
軸において、(a)軸番号をj(j=1、2)とし、
(b)モータ指令位置をPsj[パルス]とし、(c)
モータの1回転当たりのスライダ移動量をDsj[m
m]とし、(d)モータの1回転当たりの指令位置増減
量をNsj[パルス/回転]とし、(e)スライダ2の
動作位置(関節変数に対応する。)をdsj[mm]と
すると、次の数48が成立する。
In the first and second moving axes of the slider 2, (a) the axis number is j (j = 1, 2),
(B) Set the motor command position to Psj [pulse], and (c)
The amount of slider movement per rotation of the motor is Dsj [m
m], (d) the commanded position increase / decrease amount per one rotation of the motor is Nsj [pulse / rotation], and (e) the operation position (corresponding to the joint variable) of the slider 2 is dsj [mm]. The following Expression 48 holds.

【0083】[0083]

【数48】dsj=Psj×(Dsj/Nsj),j=
1,2
Dsj = Psj × (Dsj / Nsj), j =
1,2

【0084】さらに、ポジショナ3の1軸及び2軸の関
節RJ21,RJ22において、(a)関節番号をk
(k=1、2)とし、(b)モータ指令位置をPpk
[pulse]とし、(c)モータの1回転当たりの指
令位置増減量をNpk[パルス/回転]とし、(d)減
速機の減速比をλpkとし、(e)ポジショナ3の関節
変数をθpk[rad]とすると、次の数49が成立す
る。
Further, in the one-axis and two-axis joints RJ21 and RJ22 of the positioner 3, (a) the joint number is k
(K = 1, 2), and (b) the motor command position is Ppk
[Pulse], (c) the commanded position increase / decrease amount per motor rotation is Npk [pulse / rotation], (d) the reduction ratio of the reduction gear is λpk, and (e) the joint variable of the positioner 3 is θpk [ rad], the following equation 49 holds.

【0085】[0085]

【数49】 θpk=Ppk×(2π/Npk)×λpk,k=1,
(49) θpk = Ppk × (2π / Npk) × λpk, k = 1,
2

【0086】当該第2の較正処理のステップS210に
おいては、図3におけるデュアルポートRAM104か
ら各機械1,2,3のモータ指令位置Pmai,Ps
j,Ppkを読み出す。
In step S210 of the second calibration process, the motor command positions Pmai, Ps of the machines 1, 2, 3 are read from the dual port RAM 104 in FIG.
Read j and Ppk.

【0087】次いで、数47乃至数49を用いて、ロボ
ット1を図18と図19に示すように位置させて固定し
たときのポジションA3でのロボット1、スライダ2及
びポジショナ3の関節変数θmai,θpkと動作位置
dsjを計算する。
Next, using equations 47 to 49, the joint variable θmai, of the robot 1, the slider 2 and the positioner 3 at the position A3 when the robot 1 is positioned and fixed as shown in FIGS. Calculate θpk and operation position dsj.

【0088】次いで、ステップS211において、ステ
ップS210で演算された、ロボット1の関節変数θm
ai(i=1,2,…,6)、スライダ2の動作位置d
sj(j=1,2)、及びポジショナ3の関節変数θp
k(k=1,2)に基づいて、図17のポジションA3
におけるロボット1の位置姿勢を示す同次変換行列[T
ma]と、スライダ2の位置姿勢を示す同次変換行列
[Ts]と、ポジショナ3の位置姿勢を示す同次変換行
列[Tp]とをそれぞれ、以下のように演算してRAM
102に格納する。
Next, in step S211, the joint variable θm of the robot 1 calculated in step S210
ai (i = 1, 2,..., 6), the operating position d of the slider 2
sj (j = 1, 2) and the joint variable θp of the positioner 3
Based on k (k = 1, 2), position A3 in FIG.
Homogeneous transformation matrix [T indicating the position and orientation of the robot 1 at
ma], a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2, and a homogeneous transformation matrix [Tp] indicating the position and orientation of the positioner 3, as described below.
Stored in 102.

【0089】まず、上記演算されたロボット1の関節変
数θmai(i=1,2,…,6)の値を、数6に代入
することにより、ロボット1のA行列Amaiを次の数
50を用いて演算する。
First, by substituting the calculated value of the joint variable θmai (i = 1, 2,..., 6) of the robot 1 into Equation 6, the A matrix Amai of the robot 1 is converted into the following Equation 50. Calculate using

【数50】 Amai=Rot(Z,θmai)・Trans(amai,0,dmai)・Rot(X,αmai), ここで、i=0,1,2,…,6である。Amai = Rot (Z, θmai) · Trans (amai, 0, dmai) · Rot (X, αmai), where i = 0,1,2, ..., 6.

【0090】なお、Ama0は上記表1のリンクL0の
パラメータ値に基づいて演算される。上記演算されたこ
のA行列Amai(i=0,1,2,…,6)を数7に
代入することにより、ロボット1の位置姿勢を示す同次
変換行列[Tma]を演算する。
Ama0 is calculated based on the parameter value of link L0 in Table 1 above. By substituting the A matrix Amai (i = 0, 1, 2,..., 6) calculated above into Equation 7, a homogeneous transformation matrix [Tma] indicating the position and orientation of the robot 1 is calculated.

【0091】また、スライダ2のA行列Asjは、数6
にスライダ2の動作位置dsj(j=1,2)を代入す
ることにより次式で表すことができ、上記演算されたス
ライダ2の動作位置dsj(j=1,2)の値を、数5
1に代入することにより、当該A行列の各要素を演算す
る。
The A matrix Asj of the slider 2 is given by
By substituting the operating position dsj (j = 1, 2) of the slider 2 into the following equation, the value of the calculated operating position dsj (j = 1, 2) of the slider 2 can be expressed by the following equation (5).
By substituting for 1, each element of the A matrix is calculated.

【数51】 Asj=Rot(Z,θsj)・Trans(asj,0,dsj)・Rot(X,αsj) ここで、j=1,2である。Asj = Rot (Z, θsj) · Trans (asj, 0, dsj) · Rot (X, αsj) where j = 1,2.

【0092】なお、As0,As3はそれぞれ上記表2
のリンクL10,L13のパラメータ値に基づいて演算
される。上記演算されたこのA行列Asj(j=0,
1,2,3)を数8に代入することにより、スライダ2
の位置姿勢を示す同次変換行列[Ts]を演算する。
Note that As0 and As3 are as shown in Table 2 above.
Is calculated based on the parameter values of the links L10 and L13. The A matrix Asj (j = 0,
By substituting (1, 2, 3) into Equation 8, the slider 2
Is calculated. [Ts] is calculated.

【0093】さらに、ポジショナ3のA行列Apkは、
数6にポジショナ3の関節変数θpk(k=1,2)を
代入することにより次式で表すことができ、上記演算さ
れたポジショナ3の動作位置θpk(k=1,2)の値
を、数52に代入することにより、当該A行列の各要素
を演算する。
Further, the A matrix Apk of the positioner 3 is
By substituting the joint variable θpk (k = 1, 2) of the positioner 3 into Equation 6, it can be expressed by the following equation. The calculated value of the operating position θpk (k = 1, 2) of the positioner 3 is expressed by By substituting into Equation 52, each element of the A matrix is calculated.

【数52】 Apk=Rot(Z,θpk)・Trans(0,0,0)・Rot(X,αpk) ここで、k=1,2である。Apk = Rot (Z, θpk) · Trans (0,0,0) · Rot (X, αpk) where k = 1,2.

【0094】なお、Ap0,Ap3はそれぞれ上記表3
のリンクL20,L23のパラメータ値に基づいて演算
される。上記演算されたこのA行列Apk(k=0,
1,2,3)を数9に代入することにより、ポジショナ
3の位置姿勢を示す同次変換行列[Tp]を演算する。
Ap0 and Ap3 are respectively shown in Table 3 above.
Is calculated based on the parameter values of the links L20 and L23. The A matrix Apk (k = 0,
By substituting (1, 2, 3) into Equation 9, a homogeneous transformation matrix [Tp] indicating the position and orientation of the positioner 3 is calculated.

【0095】上述のように演算されたポジションA3で
のロボット1とスライダ2とポジショナ3の位置姿勢を
示す同次変換行列[Tma],[Ts],[Tp]を演
算してRAM102に格納する。
The same transformation matrices [Tma], [Ts], [Tp] indicating the positions and orientations of the robot 1, slider 2 and positioner 3 at the position A3 calculated as described above are calculated and stored in the RAM 102. .

【0096】次いで、ステップS213において、ステ
ップ2が上記ポジションA3に固定されたときの距離セ
ンサSS2と、ツール4の先端Otoolに取り付けた
ブロックBK1とのセンサ検出距離lを距離l1とし
て、図3に示すインターフェイス103を介してRAM
102に取り込む。さらに、ステップS214におい
て、第1の較正処理によって較正されRAM102に同
次変換行列[Zt]として格納されている同次変換行列
[Zt’’]と、RAM102に格納されている[Z
w]、[Et]、[Ew]を取り込んだ後に、ステップ
S211において演算されたポジションA3におけるロ
ボット1、スライダ2及びポジショナ3の位置姿勢を示
す同次変換行列[Tma]、[Ts]、[Tp]に基づ
いて、ワーク座標系Σworkを基準としたツール4の
先端Otoolの位置姿勢を示す同次変換行列[wX
t]を演算する。
Next, in step S213, the sensor detection distance 1 between the distance sensor SS2 when step 2 is fixed at the position A3 and the block BK1 attached to the tip O Tool of the tool 4 is defined as a distance l1, and FIG. RAM via interface 103 shown
Take in 102. Further, in step S214, a homogeneous transformation matrix [Zt ″] calibrated by the first calibration process and stored in the RAM 102 as a homogeneous transformation matrix [Zt], and [Zt ”stored in the RAM 102
w], [Et], and [Ew], and homogeneous transformation matrices [Tma], [Ts], [Ts] indicating the position and orientation of the robot 1, the slider 2, and the positioner 3 at the position A3 calculated in step S211. Tp], a homogeneous transformation matrix [wX indicating the position and orientation of the tip OTool of the tool 4 with reference to the workpiece coordinate system Σwork.
t] is calculated.

【0097】[0097]

【数53】 [wXt]=[Ew]-1・[Tp]-1・[Zw]-1・[Zt'']・[Ts]・[Tma]・[Et][WXt] = [Ew] −1 · [Tp] −1 · [Zw] −1 · [Zt ″] · [Ts] · [Tma] · [Et]

【0098】なお、上記数53において、同次変換行列
[Zw]-1、[Tp]-1、[Ew] -1はそれぞれ、RA
M102に格納されている同次変換行列[Zw]、[T
p]、[Ew]をそれぞれ行列の逆変換を実行すること
により演算される。
In Equation 53, the homogeneous transformation matrix
[Zw]-1, [Tp]-1, [Ew] -1Is RA
The homogeneous transformation matrices [Zw] and [T
p] and [Ew] are respectively subjected to inverse matrix transformation.
Is calculated by

【0099】次いで、ステップS216において、以下
の処理を実行する。すなわち、ステップS210で演算
されたポジションA3でのスライダ2の第2軸L12の
動作位置ds2と、予め決められたスライダ2の第2軸
L12の移動量DL3に基づいて、次の数54を用い
て、次のポジションB3でのスライダ2の動作位置ds
2’を演算する。
Next, in step S216, the following processing is executed. That is, based on the operating position ds2 of the second axis L12 of the slider 2 at the position A3 calculated in step S210 and the predetermined movement amount DL3 of the second axis L12 of the slider 2, the following equation 54 is used. And the operating position ds of the slider 2 at the next position B3.
2 'is calculated.

【0100】[0100]

【数54】ds2’=DL3+ds2Ds2 '= DL3 + ds2

【0101】次いで、ポジションB3でのスライダ2の
第2軸L12の動作位置ds2’を動作位置ds2とし
て、動作位置ds2におけるスライダ2の位置姿勢[T
s’]を上記数8を用いて演算する。上記演算したポジ
ションA3でのワーク座標系Σworkを基準としたツ
ール4先端Otoolの位置姿勢を示す同次変換行列
[wXt]を一定としかつポシショナ3を動作させずそ
の位置姿勢を示す同次変換行列[Tp]を一定とする条
件のもとで、スライダ2の第2軸L12に沿って所定の
距離DL3だけ移動させたときのポジションB3のロボ
ット1の位置姿勢を示す同次変換行列[Tma’]を次
の数55を用いて演算して同次変換行列[Tma’]を
演算する。
Next, the operation position ds2 'of the second axis L12 of the slider 2 at the position B3 is set as the operation position ds2, and the position and posture of the slider 2 at the operation position ds2 [T
s ′] is calculated using the above equation (8). A homogeneous transformation matrix [wXt] indicating the position and orientation of the tool Tool tip O Tool at the calculated position A3 on the basis of the work coordinate system Σwork is fixed, and a homogeneous transformation matrix indicating the position and orientation without operating the positioner 3 Under the condition that [Tp] is constant, a homogeneous transformation matrix [Tma ′] indicating the position and orientation of the robot 1 at the position B3 when the slider 2 is moved along the second axis L12 by a predetermined distance DL3. ] Using the following equation 55 to calculate a homogeneous transformation matrix [Tma ′].

【0102】[0102]

【数55】 [Tma']=[Ts']-1・[Zt'']-1・[Zw]・[Tp]・[Ew]・[wXt]・[Et]-1 ここで、右辺の各同次変換行列は当該ステップS216
及び上記ステップS214において演算された同次変換
行列である。
[Tma ′] = [Ts ′] −1 · [Zt ″] −1 · [Zw] · [Tp] · [Ew] · [wXt] · [Et] −1 where the right side Each homogeneous transformation matrix is obtained in step S216.
And the homogeneous transformation matrix calculated in step S214.

【0103】次いで、ポジションB3でのロボット1の
位置姿勢を示す同次変換行列[Tma’]を逆変換し
て、ロボット1の各関節変数θmai(i=1,2,
…,6)を演算する。さらに、ポジションB3における
ロボット1のモータ指令位置Pmai(i=1,2,
…,6)を、上記数47を変形することにより得られた
次の数56を用いて演算するとともに、スライダ2のモ
ータ指令位置Psj(j=1,2)を、上記数48を変
形することにより得られた数57を用いて演算する。
Next, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B3 is inversely transformed, and each joint variable θmai (i = 1, 2,
, 6) are calculated. Further, the motor command position Pmai (i = 1, 2, 2) of the robot 1 at the position B3
, 6) is calculated using the following equation 56 obtained by modifying the above equation 47, and the motor command position Psj (j = 1, 2) of the slider 2 is transformed from the above equation 48. The calculation is performed using the equation 57 obtained as described above.

【0104】[0104]

【数56】 Pmai=θmai×(Nmai/2π)×(1/λmai), i=1,2,…,6Pmai = θmai × (Nmai / 2π) × (1 / λmai), i = 1, 2,..., 6

【数57】Psj=dsj×(Nsj/Dsj),j=
1,2
Psj = dsj × (Nsj / Dsj), j =
1,2

【0105】次いで、ステップS219において、ポジ
ションB3におけるロボット1及びスライダ2のモータ
指令位置Pmai(i=1,2,…,6),Psj(j
=1,2)のデータを、図3に示すようにデュアルポー
トRAM104、ラッチ回路105及びサーボ制御回路
106,108を介してモータMO1乃至MO6,MO
9,MO10に転送して、ロボット1の各関節RJ1乃
至RJ6を動作させるとともに、スライダ2をその第2
軸L12に沿って距離DL3だけ移動させ図17に示す
ポジションB3に移動させる。そして、ポジションB3
における距離センサSS2とツール4の先端Otool
に取り付けたブロックBK1とのセンサ検出距離l2を
インターフェイス103を介してRAM102に取り込
む。
Next, in step S219, the motor command positions Pmai (i = 1, 2,..., 6) and Psj (j) of the robot 1 and the slider 2 at the position B3.
= 1 and 2) are transferred to the motors MO1 to MO6 and MO via the dual port RAM 104, the latch circuit 105, and the servo control circuits 106 and 108 as shown in FIG.
9 and MO10 to operate the joints RJ1 to RJ6 of the robot 1 and move the slider 2 to its second position.
It is moved by a distance DL3 along the axis L12 to a position B3 shown in FIG. And position B3
Sensor SS2 and tip of tool 4 Otool
The sensor detection distance l2 from the block BK1 attached to the RAM 102 is loaded into the RAM 102 via the interface 103.

【0106】次いで、ステップS221において、ステ
ップS213において検出したポジションA3でのセン
サ検出距離l1と、ステップS220において検出した
ポジションB3でのセンサ検出距離l2とが等しいか否
かを判断し、もしl1=l2のとき、設置誤差であるね
じれ角度Δθs3は0となり、当該第2の較正処理は完
了していると判断して、リターンする。一方、もしl1
≠l2のときはステップSS222に進む。
Next, at step S221, it is determined whether or not the sensor detection distance l1 at the position A3 detected at step S213 is equal to the sensor detection distance l2 at the position B3 detected at step S220. At l2, the torsion angle Δθs3, which is an installation error, becomes 0, and it is determined that the second calibration process has been completed, and the process returns. On the other hand, if l1
If ≠ 12, the process proceeds to step SS222.

【0107】ステップS222においては、スライダ2
の第2軸L12の方向と、ロボット1の設置基準面に設
けたツール機械座標系Σmとの間のねじれ角度△θs3
によるツール4の先端Otoolのずれ量△DL3を、
次の数58を用いて演算する。
In step S222, the slider 2
Angle between the direction of the second axis L12 and the tool machine coordinate system Σm provided on the installation reference plane of the robot 1 △ θs3
The amount of deviation 先端 DL3 of the tip OTool of the tool 4 due to
The calculation is performed using the following Expression 58.

【数58】△DL3=l2−l158DL3 = l2-l1

【0108】次いで、ステップS223において、上記
ステップS222で検出したツール4の先端Otool
のずれ量△DL3と上記所定の移動量DL3とに基づい
て、スライダ2の第2軸L12の方向とロボット設置基
準面に設けたツール機械座標系Σmとのねじれ角度△θ
s3を、次の数59を用いて演算する。
Next, in step S223, the tip OTool of the tool 4 detected in step S222 described above.
Based on the deviation amount ΔDL3 and the predetermined movement amount DL3, the torsion angle Δθ between the direction of the second axis L12 of the slider 2 and the tool mechanical coordinate system Δm provided on the robot installation reference plane is set.
s3 is calculated using the following equation 59.

【数59】△θs3=tan-1(△DL3/DL3)59θs3 = tan −1 (△ DL3 / DL3)

【0109】そして、上記演算されたねじれ角度△θs
3を補正値として用いて、表2のスライダ2のD−Hの
リンクパラメータに記載の第3リンクのZ軸回りの角度
回転量θs3に対して次の数60を用いて補正して、較
正値θs3’を演算して回転量θs3としてRAM10
2に格納する。
Then, the calculated twist angle △ θs
Using the following equation (60) to calibrate the angle rotation amount θs3 about the Z-axis of the third link described in the link parameter DH of the slider 2 in Table 2 using the correction value 3 as a correction value. The value θs3 ′ is calculated and the rotation amount θs3
2 is stored.

【数60】θs3’=θs3+△θs3[Equation 60] θs3 ′ = θs3 + ’θs3

【0110】以上の処理によって、第2の較正処理が完
了したとしてリターンする。
With the above processing, the process returns assuming that the second calibration processing has been completed.

【0111】(3−4)第3の較正処理 第3の較正処理は、絶対座標系Σworldとポジショ
ナ3の原点Opに設定したワークベース座標系Σpとの
間の絶対座標系ΣworldのX軸、Y軸及びZ軸回り
の各姿勢の角度成分αwz,βwz及びγwzを較正対
象とし、図33に示すように、順次実行される (a)角度成分γwzを較正する角度γwz較正処理
(ステップS31)と、(b)角度成分βwzを較正す
る角度βwz較正処理(ステップS32)と、(c)角
度成分αwzを較正する角度αwz較正処理(ステップ
S33)とから構成される。以下各処理について説明す
る。なお、上記数30乃至数35によって、同次変換行
列[Ew]に関する位置姿勢データはすべて0と設定さ
れている。そこで、ワーク座標系Σworkは、ワーク
側メカニカルインターフェイス座標系Σwmと一致して
いるので、ワーク座標系Σworkの原点の位置はポジ
ショナ3のテーブル平面の中心Oworkである。
(3-4) Third Calibration Process The third calibration process consists of the X-axis of the absolute coordinate system Σworld between the absolute coordinate system Σworld and the work base coordinate system Σp set at the origin Op of the positioner 3; The angle components αwz, βwz, and γwz of the postures around the Y axis and the Z axis are set as calibration targets, and are sequentially executed as shown in FIG. 33. (a) Angle γwz calibration processing for calibrating the angle component γwz (step S31) And (b) an angle βwz calibration process for calibrating the angle component βwz (step S32), and (c) an angle αwz calibration process for calibrating the angle component αwz (step S33). Hereinafter, each process will be described. Note that the position and orientation data relating to the homogeneous transformation matrix [Ew] are all set to 0 according to the above Expressions 30 to 35. Therefore, the work coordinate system Σwork matches the work-side mechanical interface coordinate system Σwm, and thus the position of the origin of the work coordinate system Σwork is the center Owork of the table plane of the positioner 3.

【0112】(3−4−1)角度γwz較正処理(ステ
ップS31) 図34は角度γwz較正処理(ステップS31)を示す
フローチャートであち、当該処理では、設置誤差である
ねじれ角度△γwzを検出して角度γwzを較正する。
(3-4-1) Angle γwz Calibration Process (Step S31) FIG. 34 is a flowchart showing the angle γwz calibration process (step S31). In this process, the torsion angle △ γwz, which is an installation error, is detected. To calibrate the angle γwz.

【0113】まず、ステップS310において、予めR
OM101に記憶されたポジショナ3の関節変数θp1
及びθp2の固定値データθp1=−90°、θp2=
0°を取り込む。次いで、上記ポジショナ3の関節変数
θpk(k=1,2)に対する、ポジショナ3のモータ
指令位置Ppk(k=1,2)を、数49を変形するこ
とによって得られた次の数61を用いて演算した後、当
該演算されたデータをデユアルポートRAM104、ラ
ッチ回路105及びサーボ制御回路107を介してモー
タMO7,MO8に転送してポジショナ3を初期設定の
位置に移動動作させる。
First, in step S310, R
Joint variable θp1 of positioner 3 stored in OM101
Fixed value data θp1 = −90 ° and θp2 =
Capture 0 °. Next, the motor command position Ppk (k = 1, 2) of the positioner 3 with respect to the joint variable θpk (k = 1, 2) of the positioner 3 is calculated using the following equation 61 obtained by modifying equation 49. After the calculation, the calculated data is transferred to the motors MO7 and MO8 via the dual port RAM 104, the latch circuit 105, and the servo control circuit 107 to move the positioner 3 to the position of the initial setting.

【数61】 Ppk=θpk×Npk/2π×(1/λpk) ここで、k=1,2である。次いで、操作者が図20に
示すように、ツール4の先端Otoolとポジショナ3
のテーブル平面との間の距離を測定するための距離セン
サSS1をそのセンサ軸がポジショナ3のテーブル平面
に対して垂直となるように操作者が取り付ける。この準
備作業が完了したことを操作者がティーチングボックス
20を用いてCPU100に知らしめることにより、ス
テップS311における準備完了信号の受信の判断がY
SEとなり、制御装置5は各機械1,2,3がポジショ
ンA4にあるものとして、以下の処理を実行する。
Ppk = θpk × Npk / 2π × (1 / λpk) where k = 1,2. Next, as shown in FIG. 20, the operator moves the tip OTool of the tool 4 and the positioner 3 as shown in FIG.
An operator attaches a distance sensor SS1 for measuring a distance between the table and the table plane of the positioner 3 so that the sensor axis is perpendicular to the table plane of the positioner 3. The operator uses the teaching box 20 to notify the CPU 100 of the completion of the preparation work, so that the determination of the reception of the preparation completion signal in step S311 is Y.
In SE, the control device 5 executes the following processing assuming that the machines 1, 2, and 3 are at the position A4.

【0114】次いで、ステップS312においてポジシ
ョナ3の第1軸及び第2軸のA行列の値は、上記数6に
上記初期設定において取り込んだθp1及びθp2を代
入することによって次の数62で演算される。
Next, in step S312, the values of the A matrix of the first axis and the second axis of the positioner 3 are calculated by the following equation 62 by substituting θp1 and θp2 taken in the above initial setting into the above equation 6. You.

【数62】 Apk=Rot(Z,θpk)・Trans(0,0,0)・Rot(X,αpk) ここで、k=1,2である。Apk = Rot (Z, θpk) · Trans (0,0,0) · Rot (X, αpk) where k = 1,2.

【0115】さらに、Ap0,Ap3はそれぞれ上記表
3のリンクL20,L23のパラメータ値に基づいて演
算される。上記演算されたこのA行列Apk(i=0,
1,2,3)を数9に代入することにより、ポジショナ
3の位置姿勢を示す同次変換行列[Tp]を演算する。
Further, Ap0 and Ap3 are calculated based on the parameter values of the links L20 and L23 in Table 3 above. The A matrix Apk (i = 0,
By substituting (1, 2, 3) into Equation 9, a homogeneous transformation matrix [Tp] indicating the position and orientation of the positioner 3 is calculated.

【0116】次いで、スライダ2の動作位置dsj(j
=1,2)は図3におけるデュアルポートRAM104
からモータ指令位置Psj(j=1,2)を読み出し、
数48によってスライダ2のA行列Asj(j=1,
2)を演算する。
Next, the operating position dsj (j
= 1, 2) are the dual port RAM 104 in FIG.
From the motor command position Psj (j = 1, 2),
According to Expression 48, the A matrix Asj (j = 1,
2) is calculated.

【0117】さらに、上記数51を用いてスライダ2の
A行列Asj(j=1,2)を演算し、上述の第2の較
正処理によって既に較正されたスライダ2のD−Hリン
クパラメータθs3を用いてスライダ2のA行列Asj
(j=0,3)を演算した後、数8を用いてスライダ2
の位置姿勢を示す同次変換行列[Ts]を演算する。
Further, the A matrix Asj (j = 1, 2) of the slider 2 is calculated using the above equation 51, and the DH link parameter θs3 of the slider 2 already calibrated by the above-described second calibration process is calculated. Using the A matrix Asj of the slider 2
After calculating (j = 0,3), the slider 2 is calculated using Expression 8.
Is calculated. [Ts] is calculated.

【0118】次いで、ロボット1の各関節変数θmai
(i=1,2,…,6)は図3におけるデュアルポート
RAM104からモータ指令位置Pmai(i=1,
2,…,6)を読み出し、数47を用いて演算する。さ
らに、数50を用いてロボット1のA行列Amai(i
=0,1,2,…,6)を演算した後、数7を用いてロ
ボット1の位置姿勢を示す同次変換行列[Tma]を演
算する。
Next, each joint variable θmai of the robot 1
(I = 1, 2,..., 6) is the motor command position Pmai (i = 1, 2) from the dual port RAM 104 in FIG.
,..., 6) are read out and calculated using Equation 47. Further, the A matrix Amai (i
= 0, 1, 2,..., 6), and then calculates a homogeneous transformation matrix [Tma] indicating the position and orientation of the robot 1 using Expression 7.

【0119】以上でステップS312の処理が終了し、
次いで、ステップS316において、ポジションA4に
おける距離センサSS1のセンサ検出距離l1をインタ
ーフェイス103を介してRAM102に取り込む。
Thus, the processing in step S312 is completed.
Next, in step S316, the sensor detection distance 11 of the distance sensor SS1 at the position A4 is loaded into the RAM 102 via the interface 103.

【0120】次いで、ステップS318において、第1
の較正処理によって較正されかつRAM102に同次変
換行列[Zt]として格納されている[Zt’’]と、
RAM102に格納されている同次変換行列[Zw]、
[Et]及び[Ew]とを取り込むとともに、上記演算
されたポジショナ3の位置姿勢を示す同次変換行列[T
p]と、第2の較正処理によって得られた関節変数θs
3を用いて得られたスライダ2の位置姿勢を示す同次変
換行列[Ts]と、ロボット1の位置姿勢を示す同次変
換行列「Tma」とに基づいて、次の数63を用いて、
上記ポジションA4におけるワーク座標系Σworkを
基準としたツール4の先端Otoolの位置姿勢を示す
同次変換行列[wXt]を演算する。
Next, in step S318, the first
[Zt ″] that has been calibrated by the calibration process and stored in the RAM 102 as a homogeneous transformation matrix [Zt],
Homogeneous transformation matrix [Zw] stored in RAM 102,
[Et] and [Ew], and a homogeneous transformation matrix [T] indicating the calculated position and orientation of the positioner 3.
p] and the joint variable θs obtained by the second calibration process
3 based on a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 obtained by using Equation (3) and a homogeneous transformation matrix “Tma” indicating the position and orientation of the robot 1,
A homogeneous transformation matrix [wXt] indicating the position and orientation of the tip Tool of the tool 4 with respect to the workpiece coordinate system Σwork at the position A4 is calculated.

【0121】[0121]

【数63】 [Equation 63]

【0122】また、ポジションA4のときの、ワーク座
標系Σworkを基準としたツール4の先端Otool
の位置姿勢を示す同次変換行列[wXt]に基づいて、
ポジションA4におけるツール4の先端Otoolの位
置(xtool1,ytool1,ztool1)は、
次の数64を用いて表され、当該位置の座標値が演算さ
れる。
At the position A4, the tip OTool of the tool 4 based on the work coordinate system $ work
Based on a homogeneous transformation matrix [wXt] indicating the position and orientation of
The position (xtool1, ytool1, ztool1) of the tip OTool of the tool 4 at the position A4 is
This is expressed by using the following Expression 64, and the coordinate value of the position is calculated.

【数64】xtool1=tx ytool1=ty ztool1=tz [Number 64] xtool1 = tx w ytool1 = ty w ztool1 = tz w

【0123】次いで、ステップS320において、ツー
ル4の先端Otoolを図20に示すように、上記ポジ
ションA4からワーク座標系ΣworkのY軸方向に所
定の移動量DL4だけ移動させてポジションB4に位置
させたときのワーク座標系Σworkを基準としたツー
ル4の先端Otoolの位置姿勢を示す同次変換行列
[wXt’]を以下のように演算する。
Next, in step S320, the tip O Tool of the tool 4 is moved from the position A4 in the Y-axis direction of the work coordinate system Σwork by a predetermined moving amount DL4 to the position B4 as shown in FIG. A homogeneous transformation matrix [wXt ′] indicating the position and orientation of the tip O Tool of the tool 4 with reference to the workpiece coordinate system Σwork at this time is calculated as follows.

【0124】まず、上記数64を用いて演算した上記ポ
ジションA4におけるツール4の先端Otoolの位置
成分に対して、ワーク座標系ΣworkのY軸方向のツ
ール4の先端移動量DL4を加算して、ポジションB4
におけるツール4の先端Otoolの位置(xtool
2,ytool2,ztool2)を数65を用いて演
算する。
First, the tip end moving amount DL4 of the tool 4 in the Y-axis direction of the workpiece coordinate system Σwork is added to the position component of the tip O Tool of the tool 4 at the position A4 calculated by using the above equation (64). Position B4
Of the tip Otool of the tool 4 at the position (xtool
2, ytool2, ztool2) is calculated using Equation 65.

【数65】xtool2=tx ytool2=ty+DL4 ztool2=tz Xtool2 = tx w tool2 = ty w + DL4 ztool2 = tz w

【0125】次いで、上記ポジションA4におけるワー
ク座標系Σworkを基準としたツール4の先端Oto
olの位置姿勢を示す同次変換行列[wXt]の中の3
行×3列の姿勢行列と、上記数65を用いて演算したポ
ジションB4におけるツール4の先端Otoolの位置
(xtool2,ytool2,ztool2)に基づ
いて、当該ポジションB4におけるワーク座標系Σwo
rldを基準としたツール4の先端Otoolの位置姿
勢を示す同次変換行列[wXt’]は次の数66で表さ
れる。
Next, the tip Oto of the tool 4 based on the work coordinate system Σwork at the position A4 is described.
3 in the homogeneous transformation matrix [wXt] indicating the position and orientation of ol
Based on the posture matrix of rows × 3 columns and the position (xtool2, ytool2, ztool2) of the tip Otool of the tool 4 at the position B4 calculated using the above equation 65, the work coordinate system Σwo at the position B4
A homogeneous transformation matrix [wXt '] indicating the position and orientation of the tip OTool of the tool 4 with respect to rld is expressed by the following equation 66.

【数66】 [Equation 66]

【0126】ステップS322において、ポジションA
4からポジションB4まで移動させるときに、スライダ
2及びポジショナ3は動作させないので、各関節変数d
sj(j=1,2)、θpk(k=1,2)の値は変化
しない。すなわち、上記演算したポジショナ3の位置姿
勢を示す同次変換行列[Tp]と上記演算したスライダ
2の位置姿勢を示す同次変換行列[Ts]は変化しな
い。従って、上記ポジションB4におけるロボット1の
位置姿勢を示す同次変換行列[Tma’]を、上記位置
姿勢を示す各同次変換行列[Ts]、[Tp]、[wX
t’]、並びに第1の較正処理によって較正されかつR
AM102に同次変換行列[Zt]として格納されてい
る同次変換行列[Zt’’]と、RAM102に格納さ
れている同次変換行列[Zw]、[Et]、[Ew]と
に基づいて、次の数67を用いて演算する。
In step S322, position A
When moving from position 4 to position B4, the slider 2 and the positioner 3 are not operated.
The values of sj (j = 1, 2) and θpk (k = 1, 2) do not change. That is, the calculated homogeneous transformation matrix [Tp] indicating the calculated position and orientation of the positioner 3 and the calculated homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 do not change. Therefore, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B4 is converted into the homogeneous transformation matrices [Ts], [Tp], [wX] indicating the position and orientation.
t ′], and calibrated by the first calibration process and R
Based on the homogeneous transformation matrix [Zt ″] stored in the AM 102 as the homogeneous transformation matrix [Zt] and the homogeneous transformation matrices [Zw], [Et], [Ew] stored in the RAM 102. , Using the following equation 67:

【数67】 [Tma']=[Ts]-1・[Zt'']-1・[Zw]・[Tp]・[Ew]・[wXt']・[Et]-1 [Tma ′] = [Ts] −1 · [Zt ″] −1 · [Zw] · [Tp] · [Ew] · [wXt ′] · [Et] −1

【0127】さらに、上記ポジションB4におけるロボ
ット1の位置姿勢を示す同次変換行列[Tma’]を逆
変換して、ロボット1の各関節変数θmai(i=1,
2,…,6)を演算した後、上記数56を用いて、ロボ
ット1のモータ指令位置Pmai(i=1,2,…,
6)を演算する。上記演算されたモータ指令位置Pma
iのデータは、図3に示すようにデュアルポートRAM
104、ラッチ回路105及びサーボ制御回路106を
介してモータMO1乃至MO6に転送され、これによっ
て、ロボット1の各関節を動かし、ツール4の先端Ot
oolがポジションB4に位置する。
Further, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B4 is inversely transformed, and each joint variable θmai (i = 1,
After calculating (2,..., 6), the motor command position Pmai (i = 1, 2,.
6) is calculated. The calculated motor command position Pma
The data of i is a dual port RAM as shown in FIG.
The data is transferred to the motors MO1 to MO6 via the latch circuit 104, the latch circuit 105, and the servo control circuit 106, thereby moving each joint of the robot 1 and the tip Ot of the tool 4.
cool is located at position B4.

【0128】次いで、ステップS323において、ポジ
ションB4における距離センサSS1のセンサ検出距離
l2をRAM102に取り込む。そして、ステップS3
24においてポジションA4におけるセンサ検出距離l
1とポジションB4におけるセンサ検出距離l2とが等
しいか否かが判断され、もしl1=l2のとき、当該角
度γwz較正処理が完了したと判断して、リターンす
る。一方、もしl1≠l2であるときステップS325
に進む。
Next, in step S323, the sensor detection distance l2 of the distance sensor SS1 at the position B4 is loaded into the RAM 102. Then, step S3
At 24, the sensor detection distance l at the position A4
It is determined whether 1 and the sensor detection distance l2 at the position B4 are equal. If l1 = l2, it is determined that the angle γwz calibration process has been completed, and the routine returns. On the other hand, if l1 ≠ l2, step S325
Proceed to.

【0129】ステップS325においては、上記検出さ
れたセンサ検出距離l1,l2に基づいて、ポジショナ
3のテーブル平面に対するツール4の先端Otoolの
ずれ量△DL4を、次の数68を用いて演算する。
In step S325, the amount of shift △ DL4 of the tip OTool of the tool 4 with respect to the table plane of the positioner 3 is calculated using the following equation 68 based on the detected sensor detection distances l1 and l2.

【数68】△DL4=l2−l168DL4 = l2-l1

【0130】次いで、ステップS326において、上記
演算されたずれ量△DL4と上記移動量DL4とに基づ
いて、絶対座標系Σworldを基準としたワークベー
ス座標系ΣOpのZ軸回りのねじれ角度△γwzを、次
の数69を用いて演算する。
Next, in step S326, the torsion angle △ γwz around the Z-axis of the work base coordinate system と し た Op based on the absolute coordinate system Σworld is determined based on the calculated shift amount △ DL4 and the movement amount DL4. , Using the following equation 69:

【数69】△γwz=sin-1(△DL4/DL4)69γwz = sin −1 (△ DL4 / DL4)

【0131】そして、次の数70に示すように、上記ね
じれ角度△γwzを補正値として用いて、RAM102
に格納している絶対座標系Σworldを基準としたワ
ークベース座標系ΣpのZ軸回りの姿勢成分γwzに対
して補正して、較正値γwz’を演算して姿勢成分γw
zとしてRAM102に格納する。
Then, as shown in the following equation (70), using the torsion angle △ γwz as a correction value, the RAM 102
Is corrected for the posture component γwz around the Z axis of the work base coordinate system Σp based on the absolute coordinate system Σworld stored in
It is stored in the RAM 102 as z.

【数70】γwz’=γwz+△γwz となる。[Mathematical formula-see original document] γwz '= γwz + △ γwz

【0132】次いで、上記姿勢成分の較正値γwz’
を、数5に代入し、較正値γwz’に対する絶対座標系
Σworldを基準としたワークベース座標系Σpの位
置姿勢を示す同次変換行列[Zw’]を、次の数71を
用いて演算する。
Next, the calibration value γwz ′ of the posture component is obtained.
Is substituted into Equation 5, and a homogeneous transformation matrix [Zw '] indicating the position and orientation of the work base coordinate system Σp based on the absolute coordinate system Σworld with respect to the calibration value γwz' is calculated using the following Equation 71. .

【数71】 [Zw']=Trans(awz,bwz,cwz)・Rot(X,αwz)・Rot(Y,βwz)・Rot(Z,γwz')[Zw ′] = Trans (awz, bwz, cwz) · Rot (X, αwz) · Rot (Y, βwz) · Rot (Z, γwz ′)

【0133】さらに、ステップS329において、上記
演算した位置姿勢を示す同次変換行列[Zw’]を、
[Zw]として、RAM102に格納して更新する。こ
れによって、角度γwzに関する較正処理が完了したの
でリターンする。
Further, in step S329, a homogeneous transformation matrix [Zw '] indicating the calculated position and orientation is obtained by:
[Zw] is stored in the RAM 102 and updated. As a result, the process returns because the calibration process for the angle γwz has been completed.

【0134】(3−4−2)角度βwz較正処理(ステ
ップS32) 図35は角度γwz較正処理(ステップS32)を示す
フローチャートであち、当該処理では、設置誤差である
ねじれ角度△βwzを検出して角度βwzを較正する。
(3-4-2) Angle βwz Calibration Process (Step S32) FIG. 35 is a flowchart showing the angle γwz calibration process (step S32). In this process, the torsion angle △ βwz, which is an installation error, is detected. To calibrate the angle βwz.

【0135】まず、ステップS410において、予めR
OM101に記憶されたポジショナ3の関節変数θp1
及びθp2の固定値データθp1=0°、θp2=0°
を取り込む。次いで、上記ポジショナ3の関節変数θp
k(k=1,2)に対する、ポジショナ3のモータ指令
位置Ppk(k=1,2)を、数49を変形することに
よって得られた数62を用いて演算した後、当該演算さ
れたデータをデユアルポートRAM104、ラッチ回路
105及びサーボ制御回路107を介してモータMO
7,MO8に転送してポジショナ3を初期設定の位置に
移動動作させる。次いで、図21に示すように、操作者
がツール4の先端Otoolとポジショナ3のテーブル
平面との間の距離を測定するための距離センサSS1
を、そのセンサ軸がポジショナ3のテーブル平面に対し
て垂直となるように操作者が取り付ける。この準備作業
が完了したことを、操作者がティーチングボックス20
を用いてCPU100に知らしめることによって、ステ
ップS411における準備完了信号の受信の判断はYE
Sとなり、制御装置5は各機械1,2,3がポジション
A5にあるものとして以下の処理を実行する。
First, in step S410, R
Joint variable θp1 of positioner 3 stored in OM101
And θp2 fixed value data θp1 = 0 °, θp2 = 0 °
Take in. Next, the joint variable θp of the positioner 3
After calculating the motor command position Ppk (k = 1, 2) of the positioner 3 with respect to k (k = 1, 2) using Equation 62 obtained by transforming Equation 49, the calculated data Through the dual port RAM 104, the latch circuit 105, and the servo control circuit 107.
7. Transfer to the MO8 to move the positioner 3 to the initial setting position. Next, as shown in FIG. 21, a distance sensor SS1 for measuring the distance between the tip OTool of the tool 4 and the table plane of the positioner 3 by the operator.
Is mounted by the operator such that its sensor axis is perpendicular to the table plane of the positioner 3. The operator is informed that the preparation work is completed.
Is notified to the CPU 100 by using, the determination of the reception of the ready signal in step S411 is YE
In S, the control device 5 executes the following processing assuming that each of the machines 1, 2, 3 is at the position A5.

【0136】次いで、ステップS412において、ポジ
ショナ3の第1軸及び第2軸のA行列の値は、上記数6
に上記初期設定において取り込んだ関節変数θp1及び
θp2を代入することによって数63を用いて演算され
る。
Next, in step S412, the values of the A matrix of the first axis and the second axis of the positioner 3 are calculated by the above equation (6).
Is calculated by substituting the joint variables θp1 and θp2 fetched in the above-mentioned initial setting.

【0137】さらに、Ap0,Ap3はそれぞれ上記表
3のリンクL20,L23のパラメータ値に基づいて演
算される。上記演算されたこのA行列Apk(i=0,
1,2,3)を数9に代入することにより、ポジショナ
3の位置姿勢を示す同次変換行列[Tp]を演算する。
Further, Ap0 and Ap3 are calculated based on the parameter values of the links L20 and L23 in Table 3 above. The A matrix Apk (i = 0,
By substituting (1, 2, 3) into Equation 9, a homogeneous transformation matrix [Tp] indicating the position and orientation of the positioner 3 is calculated.

【0138】次いで、スライダ2の動作位置dsj(j
=1,2)は、図3におけるデュアルポートRAM10
4からモータ指令位置Psj(j=1,2)を読み出
し、上記数48を用いて演算する。
Next, the operating position dsj (j
= 1, 2) is the dual port RAM 10 in FIG.
4, the motor command position Psj (j = 1, 2) is read out, and is calculated using the above equation (48).

【0139】さらに、上記数51を用いてスライダ2の
Asj(j=1,2)を演算し、第2の較正処理によっ
て既に較正されたスライダ2のD−Hリンクパラメータ
の関節変数θs3を用いてスライダ2のA行列Asj
(j=0,3)を演算した後、上記数8を用いてスライ
ダ2の位置姿勢を示す同次変換行列[Ts]を演算す
る。
Further, Asj (j = 1, 2) of the slider 2 is calculated by using the above equation 51, and the joint variable θs3 of the DH link parameter of the slider 2 already calibrated by the second calibration process is used. A matrix Asj of slider 2
After calculating (j = 0,3), a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 is calculated using the above equation (8).

【0140】次いで、ロボット1の各関節変数θmai
(i=1,2,…,6)は図3におけるデュアルポート
RAM104からモータ指令位置Pmai(i=1,
2,…,6)を読み出し、上記数47を用いて演算され
る。さらに、上記数50を用いてロボット1のA行列A
mai(i=0,1,2,…,6)を演算した後、上記
数7を用いてロボット1の位置姿勢を示す同次変換行列
[Tma]を演算する。
Next, each joint variable θmai of the robot 1
(I = 1, 2,..., 6) is the motor command position Pmai (i = 1, 2) from the dual port RAM 104 in FIG.
,..., 6) are read out and calculated using the above equation (47). Further, the A matrix A of the robot 1 is obtained by using the above equation (50).
After calculating mai (i = 0, 1, 2,..., 6), a homogeneous transformation matrix [Tma] indicating the position and orientation of the robot 1 is calculated using the above equation (7).

【0141】以上でステップS412の処理が終了し、
次いで、ステップS416において、ポジションA5に
おける距離センサSS1のセンサ検出距離l1をRAM
102に取り込む。
Thus, the processing in step S412 is completed.
Next, in step S416, the sensor detection distance 11 of the distance sensor SS1 at the position A5 is stored in the RAM.
Take in 102.

【0142】次いで、ステップS418において、第1
の較正処理によって較正されかつRAM102に格納さ
れている同次変換行列[Zt’’]と、第3の較正処理
のうちの角度γwz較正処理によって角度γwzが較正
されてRAM102に格納されている同次変換行列[Z
w’]と、RAM102に格納されている同次変換行列
[Et]、[Ew]とを取り込むとともに、上記演算さ
れたポジショナ3の位置姿勢を示す同次変換行列[T
p]と、第2の較正処理によって得られた関節変数θs
3を用いて得られたスライダ2の位置姿勢を示す同次変
換行列[Ts]と、ロボット1の位置姿勢を示す同次変
換行列[Tma]とに基づいて、次の数77を用いて、
上記ポジションA5におけるワーク座標系Σworkを
基準としたツール4の先端Otoolの位置姿勢を示す
同次変換行列[wXt]を演算する。
Next, in step S418, the first
And the same transformation matrix [Zt ″] calibrated by the calibration process and stored in the RAM 102, and the angle γwz is calibrated by the angle γwz calibration process of the third calibration process and stored in the RAM 102. Order transformation matrix [Z
w '] and the homogeneous transformation matrices [Et] and [Ew] stored in the RAM 102, and the computed homogeneous transformation matrix [T
p] and the joint variable θs obtained by the second calibration process
3 based on a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 obtained by using Equation 3 and a homogeneous transformation matrix [Tma] indicating the position and orientation of the robot 1,
A homogeneous transformation matrix [wXt] indicating the position and orientation of the tip Tool of the tool 4 at the position A5 with reference to the workpiece coordinate system Σwork is calculated.

【0143】[0143]

【数72】 [Equation 72]

【0144】また、ポジションA5のときの上記ワーク
座標系Σworkを基準としたツール4の先端Otoo
lの位置姿勢を示す同次変換行列[wXt]に基づい
て、ポジションA5におけるツール4の先端Otool
の位置(xtool3,ytool31,ztool
3)は、次の数73を用いて表され、当該位置の座標値
が演算される。
The tip Otoo of the tool 4 based on the work coordinate system $ work at the position A5.
Based on the homogeneous transformation matrix [wXt] indicating the position and orientation of l, the tip OTool of the tool 4 at the position A5
Position (xtool3, ytool31, ztool)
3) is expressed using the following equation 73, and the coordinate value of the position is calculated.

【数73】xtool3=txw’ ytool3=tyw’ ztool3=tzw[Number 73] xtool3 = tx w 'ytool3 = ty w' ztool3 = tz w '

【0145】次いで、ステップS420において、ツー
ル4の先端Otoolを図21に示すように、上記ポジ
ションA5からワーク座標系ΣworkのX軸方向に所
定の移動量DL5だけ移動させてポジションB5に位置
させたときのワーク座標系Σworkを基準としたツー
ル4の先端Otoolの位置姿勢を示す同次変換行列
[wXt’’]を以下のように演算する。
Next, in step S420, the tip O Tool of the tool 4 is moved from the position A5 in the X-axis direction of the work coordinate system Σwork by a predetermined movement amount DL5 to the position B5 as shown in FIG. A homogeneous transformation matrix [wXt ″] indicating the position and orientation of the tip O Tool of the tool 4 based on the workpiece coordinate system Σwork at this time is calculated as follows.

【0146】まず、上記数74を用いて演算した上記ポ
ジションA5におけるツール4の先端Otoolの位置
成分に対して、ワーク座標系ΣworkのX軸方向のツ
ール4の先端移動量DL5を加算して、ポジションB5
におけるツール4の先端Otoolの位置(xtool
4,ytool4,ztool4)を数74を用いて演
算する。
First, the tip movement amount DL5 of the tool 4 in the X-axis direction of the work coordinate system Σwork is added to the position component of the tip O Tool of the tool 4 at the position A5 calculated using the above equation 74. Position B5
Of the tip Otool of the tool 4 at the position (xtool
4, ytool4, ztool4) is calculated using equation 74.

【数74】xtool4=txw’+DL5 ytool4=tyw’ ztool4=tzw[Number 74] xtool4 = tx w '+ DL5 ytool4 = ty w' ztool4 = tz w '

【0147】次いで、上記ポジションA5におけるワー
ク座標系Σworkを基準としたツール4の先端Oto
olの位置姿勢を示す同次変換行列[wXt]の中の3
行×3列の姿勢行列と、上記数74を用いて演算したポ
ジションB4におけるツール4の先端Otoolの位置
(xtool4,ytool4,ztool4)に基づ
いて、当該ポジションB5におけるワーク座標系Σwo
rldを基準としたツール4の先端Otoolの位置姿
勢を示す同次変換行列[wXt’’]ha次の数75で
表される。
Next, the tip Oto of the tool 4 at the position A5 with reference to the workpiece coordinate system Σwork.
3 in the homogeneous transformation matrix [wXt] indicating the position and orientation of ol
Based on the attitude matrix of rows × 3 columns and the position (xtool4, ytool4, ztool4) of the tip Otool of the tool 4 at the position B4 calculated using the above equation 74, the work coordinate system Σwo at the position B5
A homogeneous transformation matrix [wXt ″] indicating the position and orientation of the tip OTool of the tool 4 on the basis of rld is expressed by the following equation (75).

【0148】[0148]

【数75】 [Equation 75]

【0149】ステップS422において、ポジションA
5からポジションB5まで移動させるときに、スライダ
2及びポジショナ3は動作させないので、各関節変数d
sj(j=1,2)、θpk(k=1,2)の値は変化
しない。すなわち、上記演算したポジショナ3の位置姿
勢を示す同次変換行列[Tp]と上記演算したスライダ
2の位置姿勢を示す同次変換行列[Ts]は変化しな
い。従って、上記ポジションB5におけるロボット1の
位置姿勢を示す同次変換行列[Tma’]を、上記位置
姿勢を示す各同次変換行列[Ts]、[Tp]、[wX
t’]、並びにRAM102に格納されている同次変換
行列[Zt’’]、[Zw’]、[Et]、[Ew]に
基づいて、次の数76を用いて演算する。
At step S422, position A
When moving from position 5 to position B5, the slider 2 and the positioner 3 are not operated.
The values of sj (j = 1, 2) and θpk (k = 1, 2) do not change. That is, the calculated homogeneous transformation matrix [Tp] indicating the calculated position and orientation of the positioner 3 and the calculated homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 do not change. Accordingly, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B5 is replaced with the homogeneous transformation matrices [Ts], [Tp], [wX] indicating the position and orientation.
Based on t ′] and the homogeneous transformation matrices [Zt ″], [Zw ′], [Et], and [Ew] stored in the RAM 102, the following equation is used to calculate.

【0150】[0150]

【数76】 [Tma']=[Ts]-1・[Zt'']-1・[Zw']・[Tp]・[Ew]・[wXt']・[Et]-1 [Tma ′] = [Ts] −1 · [Zt ″] −1 · [Zw ′] · [Tp] · [Ew] · [wXt ′] · [Et] −1

【0151】さらに、上記ポジションB5におけるロボ
ット1の位置姿勢を示す同次変換行列[Tma’]を逆
変換して、ロボット1の各関節変数θmai(i=1,
2,…,6)を演算した後、上記数56を用いて、ロボ
ット1のモータ指令位置Pmai(i=1,2,…,
6)を演算する。上記演算されたモータ指令位置Pma
iのデータは、図3に示すようにデュアルポートRAM
104、ラッチ回路105及びサーボ制御回路106を
介してモータMO1乃至MO6に転送され、これによっ
て、ロボット1の各関節を動かし、ツール4の先端Ot
oolの位置がポジションB5に位置する。
Further, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B5 is inversely transformed, and each joint variable θmai (i = 1,
After calculating (2,..., 6), the motor command position Pmai (i = 1, 2,.
6) is calculated. The calculated motor command position Pma
The data of i is a dual port RAM as shown in FIG.
The data is transferred to the motors MO1 to MO6 via the latch circuit 104, the latch circuit 105, and the servo control circuit 106, thereby moving each joint of the robot 1 and the tip Ot of the tool 4.
The position of “ool” is located at the position B5.

【0152】次いで、ステップS423において、ポジ
ションB5における距離センサSS1のセンサ検出距離
l2をRAM102に取り込む。そして、ステップS4
24においてポジションA5におけるセンサ検出距離l
1とポジションB5におけるセンサ検出距離l2とが等
しいか否かが判断され、もしl1=l2のとき、当該角
度βwz較正処理が完了したと判断して、リターンす
る。一方、もしl1≠l2であるときステップS425
に進む。
Next, in step S423, the sensor detection distance l2 of the distance sensor SS1 at the position B5 is loaded into the RAM 102. Then, step S4
At 24, the sensor detection distance l at the position A5
It is determined whether 1 and the sensor detection distance l2 at the position B5 are equal. If l1 = l2, it is determined that the angle βwz calibration processing has been completed, and the routine returns. On the other hand, if l1 ≠ l2, step S425
Proceed to.

【0153】ステップS425においては、上記検出さ
れたセンサ検出距離l1,l2に基づいて、ポジショナ
3のテーブル平面に対するツール4の先端Otoolの
ずれ量△DL5を、次の数77を用いて演算する。
In step S425, the amount of deviation △ DL5 of the tip Otool of the tool 4 with respect to the table plane of the positioner 3 is calculated using the following equation 77 based on the detected sensor detection distances l1 and l2.

【数77】△DL5=l2−l177DL5 = l2-l1

【0154】次いで、ステップS426において、上記
演算されたずれ量△DL5と上記移動量DL5とに基づ
いて、絶対座標系Σworldを基準としたワークベー
ス座標系ΣOpのY軸回りのねじれ角度△βwzを、次
の数78を用いて演算する。
Next, in step S426, the torsion angle △ βwz around the Y axis of the work base coordinate system ΣOp based on the absolute coordinate system Σworld is determined based on the calculated shift amount △ DL5 and the movement amount DL5. , Using the following equation 78.

【数78】△βwz=sin-1(△DL5/DL5)78βwz = sin −1 (△ DL5 / DL5)

【0155】そして、次の数79に示すように、上記ね
じれ角度△βwzを補正値として用いて、RAM102
に格納している絶対座標系Σworldを基準としたワ
ークベース座標系ΣpのZ軸回りの姿勢成分βwzに対
して補正して、較正値βwz’を演算して姿勢成分βw
zとしてRAM102に格納する。
Then, as shown in the following Expression 79, the RAM 102 is used by using the torsion angle △ βwz as a correction value.
Is corrected for the posture component βwz around the Z axis of the work base coordinate system Σp based on the absolute coordinate system Σworld stored in
It is stored in the RAM 102 as z.

【数79】βwz’=βwz+△βwz となる。[Expression 79] βwz ′ = βwz + △ βwz

【0156】次いで、上記姿勢成分の較正値βwz’
を、数5に代入し、較正値βwz’に対する絶対座標系
Σworldを基準としたワークベース座標系Σpの位
置姿勢を示す同次変換行列[Zw’’]を、次の数80
を用いて演算する。
Next, the calibration value βwz ′ of the posture component
Is substituted for the calibration value βwz ′, and a homogeneous transformation matrix [Zw ″] indicating the position and orientation of the work base coordinate system Σp based on the absolute coordinate system Σworld with respect to the calibration value βwz ′ is expressed by the following equation 80
Is calculated using

【数80】 [Zw'']=Trans(awz,bwz,cwz)・Rot(X,αwz)・Rot(Y,βwz')・Rot(Z,γwz)[Zw ″] = Trans (awz, bwz, cwz) · Rot (X, αwz) · Rot (Y, βwz ′) · Rot (Z, γwz)

【0157】さらに、ステップS429において、上記
演算した位置姿勢を示す同次変換行列[Zw’’]を、
[Zw]として、RAM102に格納して更新する。こ
れによって、角度βwzに関する較正処理が完了したの
で、リターンする。
Further, in step S429, a homogeneous transformation matrix [Zw ″] indicating the calculated position and orientation is
[Zw] is stored in the RAM 102 and updated. This completes the calibration process for the angle βwz, and returns.

【0158】(3−4−3)角度αwz較正処理(ステ
ップS33) 図36は角度αwz較正処理(ステップS33)を示す
フローチャートであち、当該処理では、設置誤差である
ねじれ角度△αwzを検出して角度αwzを較正する。
(3-4-3) Angle αwz Calibration Processing (Step S33) FIG. 36 is a flowchart showing the angle αwz calibration processing (step S33). In this processing, the torsion angle △ αwz which is an installation error is detected. To calibrate the angle αwz.

【0159】まず、ステップS510において、予めR
AM101に記憶されたポジショナ3の関節変数θp1
及びθp2の固定値データθp1=0°、θp2=0°
を取り込む。次いで、上記ポジショナ3の関節変数θp
k(k=1,2)に対する、ポジショナ3のモータ指令
位置Ppk(k=1,2)を、数49を変形することに
よって得られた数61を用いて演算した後、当該演算さ
れたデータをデユアルポートRAM104、ラッチ回路
105及びサーボ制御回路107を介してモータMO
7,MO8に転送してポジショナ3を初期設定の位置に
移動動作させる。次いで、図22に示すように、操作者
がツール4の先端Otoolとポジショナ3のテーブル
平面との間後距離を測定するための距離センサSS1を
そのセンサ軸がポジショナ3のテーブル平面に対して垂
直となるように操作者が取り付ける。この準備作業が完
了したことを、操作者がティーチングボックス20を用
いてCPU100に知らしめることによって、ステップ
S511の準備完了信号の判断はYESとなり、制御装
置5は各機械1,2,3がポジションA5にあるものと
として、以下の処理を行う。
First, in step S510, R
Joint variable θp1 of positioner 3 stored in AM101
And θp2 fixed value data θp1 = 0 °, θp2 = 0 °
Take in. Next, the joint variable θp of the positioner 3
After calculating the motor command position Ppk (k = 1, 2) of the positioner 3 with respect to k (k = 1, 2) using Equation 61 obtained by transforming Equation 49, the calculated data Through the dual port RAM 104, the latch circuit 105, and the servo control circuit 107.
7. Transfer to the MO8 to move the positioner 3 to the initial setting position. Next, as shown in FIG. 22, the operator sets a distance sensor SS1 for measuring the rear distance between the tip O Tool of the tool 4 and the table plane of the positioner 3 with its sensor axis perpendicular to the table plane of the positioner 3. The operator attaches it so that The operator informs the CPU 100 of the completion of the preparation work by using the teaching box 20, so that the determination of the preparation completion signal in step S511 becomes YES, and the control device 5 determines that each of the machines 1, 2, and 3 is in position. The following process is performed assuming that the document is in A5.

【0160】次いで、ステップS512において、ポジ
ショナ3の第1軸及び第2軸のA行列の値は、上記数6
に上記初期設定において取り込んだ関節変数θp1及び
θp2を代入することによって数62を用いて演算され
る。
Next, in step S512, the values of the A matrix of the first axis and the second axis of the positioner 3 are calculated by the above equation (6).
Is calculated by substituting the joint variables θp1 and θp2 fetched in the above-mentioned initial setting.

【0161】さらに、Ap0,Ap3はそれぞれ上記表
3のリンクL20,L23のパラメータ値に基づいて演
算される。上記演算されたこのA行列Apk(i=0,
1,2,3)を数9に代入することにより、ポジショナ
3の位置姿勢を示す同次変換行列[Tp]を演算する。
Further, Ap0 and Ap3 are calculated based on the parameter values of the links L20 and L23 in Table 3 above. The A matrix Apk (i = 0,
By substituting (1, 2, 3) into Equation 9, a homogeneous transformation matrix [Tp] indicating the position and orientation of the positioner 3 is calculated.

【0162】次いで、スライダ2の動作位置dsj(j
=1,2)は、図3におけるデュアルポートRAM10
4からモータ指令位置Psj(j=1,2)を読み出
し、数48を用いて演算する。
Next, the operating position dsj (j
= 1, 2) is the dual port RAM 10 in FIG.
4, the motor command position Psj (j = 1, 2) is read out, and is calculated using Expression 48.

【0163】さらに、数51を用いてスライダ2のA行
列Asj(j=1,2)を演算し、第2の較正処理によ
って既に較正されたスライダ2のD−Hリンクパラメー
タの関節変数θs3を用いて残りのA行列Asj(j=
0,3)を演算した後、上記数8を用いてスライダ2の
位置姿勢を示す同次変換行列[Ts]を演算する。
Further, the A matrix Asj (j = 1, 2) of the slider 2 is calculated by using Expression 51, and the joint variable θs3 of the DH link parameter of the slider 2 already calibrated by the second calibration process is calculated. And the remaining A matrix Asj (j =
After calculating (0, 3), a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 is calculated using the above equation (8).

【0164】次いで、ロボット1の各関節変数θmai
(i=1,2,…,6)は図3におけりデュアルポート
RAM104からモータ指令位置Pmai(i=1,
2,…,6)を読み出し、数47を用いて演算する。さ
らに、数50を用いてロボット1のA行列Amai(i
=0,1,2,…,6)を演算した後、数7を用いてロ
ボット1の位置姿勢を示す同次変換行列[Tma]を演
算する。
Next, each joint variable θmai of the robot 1
(I = 1, 2,..., 6) is the motor command position Pmai (i = 1, 2) from the dual port RAM 104 in FIG.
,..., 6) are read out and calculated using Equation 47. Further, the A matrix Amai (i
= 0, 1, 2,..., 6), and then calculates a homogeneous transformation matrix [Tma] indicating the position and orientation of the robot 1 using Expression 7.

【0165】以上でステップS512の処理が終了し、
次いで、ステップS516において、ポジションA6に
おける距離センサSS1のセンサ検出距離l1をRAM
102に取り込む。
Thus, the processing in step S512 is completed.
Next, in step S516, the sensor detection distance 11 of the distance sensor SS1 at the position A6 is stored in the RAM.
Take in 102.

【0166】次いで、ステップS518において、第1
の較正処理によって較正されかつRAM102に格納さ
れている同次変換行列[Zt’’]と、第3の較正処理
のうちの角度γwz較正処理と角度βwz較正処理とに
よって角度γwz,βwzga較正されてかつ予めRA
M102に格納されている[Zw’’]と、RAM10
2に格納されている同次変換行列[Et],[Ew]と
を取り込むとともに、上記演算されたポジショナ3の位
置姿勢を示す同次変換行列[Tp]と、第2の較正処理
によって得られた関節変数θs2を用いて得られたスラ
イダ2の位置姿勢を示す同次変換行列[Ts]と、ロボ
ット1の位置姿勢を示す同次変換行列[Tma]とに基
づいて、次の数81を用いて、上記ポジションA6にお
けるワーク座標系Σworkを基準としたツール4の先
端Otoolの位置姿勢を示す同次変換行列[wXt]
を演算する。
Next, in step S518, the first
And the angles γwz and βwzga are calibrated by the homogeneous transformation matrix [Zt ″] calibrated by the calibration process and stored in the RAM 102, and the angle γwz calibration process and the angle βwz calibration process of the third calibration process. And RA in advance
[Zw ″] stored in M102 and RAM 10
2 and a homogeneous transformation matrix [Tp] indicating the calculated position and orientation of the positioner 3 and a second calibration process. Based on a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 obtained using the obtained joint variable θs2 and a homogeneous transformation matrix [Tma] indicating the position and orientation of the robot 1, the following equation 81 is obtained. Using the same transformation matrix [wXt] indicating the position and orientation of the tip O Tool of the tool 4 based on the workpiece coordinate system Σwork at the position A6.
Is calculated.

【0167】[0167]

【数81】 [Equation 81]

【0168】また、ポジションA6のときの、ワーク座
標系Σworkを基準としたツール4の先端Otool
の位置姿勢を示す同次変換行列[wXt]に基づいて、
ポジションA6におけるツール4の先端Otoolの位
置(xtool5,ytool5,ztool5)は、
次の数82を用いて表され、当該位置の座標値が演算さ
れる。
At the position A6, the tip OTool of the tool 4 with reference to the workpiece coordinate system 基準 work
Based on a homogeneous transformation matrix [wXt] indicating the position and orientation of
The position (xtool5, ytool5, ztool5) of the tip OTool of the tool 4 at the position A6 is
It is expressed using the following equation 82, and the coordinate value of the position is calculated.

【数82】xtool5=txw'’ ytool5=tyw'’ ztool5=tzw'’[Number 82] xtool5 = tx w '' ytool5 = ty w '' ztool5 = tz w ''

【0169】次いで、ステップS520において、ツー
ル4の先端Otoolを図22に示すように、上記ポジ
ションA6からワーク座標系ΣworkのY軸方向に所
定の移動量DL6だけ移動させてポジションB6に位置
させたときのワーク座標系Σworkを基準としたツー
ル4の先端Otoolの位置姿勢を示す同次変換行列
[wXt’’’]を以下のように演算する。
Next, in step S520, the tip O Tool of the tool 4 is moved from the position A6 in the Y-axis direction of the work coordinate system Σwork by a predetermined moving amount DL6 to the position B6 as shown in FIG. A homogeneous transformation matrix [wXt ′ ″] indicating the position and orientation of the tip O Tool of the tool 4 based on the workpiece coordinate system Σwork at this time is calculated as follows.

【0170】まず、上記数82を用いて演算した上記ポ
ジションA5におけるツール4の先端Otoolの位置
成分に対して、ワーク座標系ΣworkのX軸方向のツ
ール4の先端移動量DL6を加算して、ポジションB6
におけるツール4の先端Otoolの位置(xtool
6,ytool6,ztool6)を次の数83を用い
て演算する。
First, the tip end moving amount DL6 of the tool 4 in the X-axis direction of the work coordinate system Σwork is added to the position component of the tip O Tool of the tool 4 at the position A5 calculated using the equation (82). Position B6
Of the tip Otool of the tool 4 at the position (xtool
6, ytool6, ztool6) using the following equation 83.

【数83】xtool6=tx'' ytool6=ty''+DL6 ztool6=tz''[Number 83] xtool6 = tx w '' ytool6 = ty w '' + DL6 ztool6 = tz w ''

【0171】次いで、上記ポジションA6におけるワー
ク座標系Σworkを基準としたツール4の先端Oto
olの位置姿勢を示す同次変換行列[wXt]の中の3
行×3列の姿勢行列と、上記数83を用いて演算したポ
ジションB6におけるツール4の先端Otoolの位置
(xtool6,ytool6,ztool6)に基づ
いて、当該ポジションB6におけるワーク座標系Σwo
rldを基準としたツール4の先端Otoolの位置姿
勢を示す同次変換行列[wXt’’’]は次の数84で
表される。
Next, the tip Oto of the tool 4 at the position A6 with reference to the workpiece coordinate system Σwork.
3 in the homogeneous transformation matrix [wXt] indicating the position and orientation of ol
Based on the posture matrix of rows × 3 columns and the position (xtool6, ytool6, ztool6) of the tip Otool of the tool 4 at the position B6 calculated using the above equation 83, the work coordinate system Σwo at the position B6
A homogeneous transformation matrix [wXt ′ ″] indicating the position and orientation of the tip OTool of the tool 4 based on rld is expressed by the following equation 84.

【数84】 [Equation 84]

【0172】ステップS522において、ポジションA
6からポジションB6まで移動させるときに、スライダ
2及びポジショナ3は動作させないので、各関節変数d
sj(j=1,2)、θpk(k=1,2)の値は変化
しない。すなわち、上記演算したポジショナ3の位置姿
勢を示す同次変換行列[Tp]と上記演算したスライダ
2の位置姿勢を示す同次変換行列[Ts]は変化しな
い。従って、上記ポジションB5におけるロボット1の
位置姿勢を示す同次変換行列[Tma’]を、上記位置
姿勢を示す各同次変換行列[Ts]、[Tp]、[wX
t’]、並びにRAM102に格納されている同次変換
行列[Zt’’]、[Zw’’]、[Et]、[Ew]
に基づいて、次の数85を用いて演算する。
At step S522, position A
When moving from position 6 to position B6, the slider 2 and the positioner 3 are not operated.
The values of sj (j = 1, 2) and θpk (k = 1, 2) do not change. That is, the calculated homogeneous transformation matrix [Tp] indicating the calculated position and orientation of the positioner 3 and the calculated homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 do not change. Accordingly, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B5 is replaced with the homogeneous transformation matrices [Ts], [Tp], [wX] indicating the position and orientation.
t ′], and homogeneous transformation matrices [Zt ″], [Zw ″], [Et], [Ew] stored in the RAM 102.
Is calculated based on the following equation (85).

【数85】 [Tma']=[Ts]-1・[Zt'']-1・[Zw'']・[Tp]・[Ew]・[wXt']・[Et]-1 [Tma '] = [Ts] −1 · [Zt ″] −1 · [Zw ″] · [Tp] · [Ew] · [wXt ′] · [Et] −1

【0173】さらに、上記ポジションB6におけるロボ
ット1の位置姿勢を示す同次変換行列[Tma’]を逆
変換して、ロボット1の各関節変数θmai(i=1,
2,…,6)を演算した後、上記数56を用いて、ロボ
ット1のモータ指令位置Pmai(i=1,2,…,
6)を演算する。上記演算されたモータ指令位置Pma
iのデータは、図3に示すようにデュアルポートRAM
104、ラッチ回路105及びサーボ制御回路106を
介してモータMO1乃至MO6に転送され、これによっ
て、ロボット1の各関節を動かし、ツール4の先端Ot
oolの位置がポジションB6に位置する。
Further, the homogeneous transformation matrix [Tma '] indicating the position and orientation of the robot 1 at the position B6 is inversely transformed, and each joint variable θmai (i = 1,
After calculating (2,..., 6), the motor command position Pmai (i = 1, 2,.
6) is calculated. The calculated motor command position Pma
The data of i is a dual port RAM as shown in FIG.
The data is transferred to the motors MO1 to MO6 via the latch circuit 104, the latch circuit 105, and the servo control circuit 106, thereby moving each joint of the robot 1 and the tip Ot of the tool 4.
The position of “ool” is located at the position B6.

【0174】次いで、ステップS523において、ポジ
ションB6における距離センサSS1のセンサ検出距離
l2をRAM102に取り込む。そして、ステップS5
24においてポジションA6におけるセンサ検出距離l
1とポジションB6におけるセンサ検出距離l2とが等
しいか否かが判断され、もしl1=l2のとき、当該角
度αwz較正処理が完了したと判断して、リターンす
る。一方、もしl1≠l2であるときステップS525
に進む。
Next, at step S523, the sensor detection distance l2 of the distance sensor SS1 at the position B6 is loaded into the RAM 102. Then, step S5
At 24, the sensor detection distance l at the position A6
It is determined whether or not 1 is equal to the sensor detection distance l2 at the position B6. If l1 = l2, it is determined that the angle αwz calibration process has been completed, and the routine returns. On the other hand, if l1 ≠ l2, step S525
Proceed to.

【0175】ステップS525においては、上記検出さ
れたセンサ検出距離l1,l2に基づいて、ポジショナ
3のテーブル平面に対するツール4の先端Otoolの
ずれ量△DL6を、次の数86を用いて演算する。
In step S525, based on the detected sensor detection distances l1 and l2, the amount of deviation △ DL6 of the tip OTool of the tool 4 with respect to the table plane of the positioner 3 is calculated using the following equation 86.

【数86】△DL6=l2−l186DL6 = l2-l1

【0176】次いで、ステップS526において、上記
演算されたずれ量△DL6と上記移動量DL6とに基づ
いて、絶対座標系Σworldを基準としたワークベー
ス座標系ΣOpのX軸回りのねじれ角度△αwzを、次
の数87を用いて演算する。
Next, in step S526, the twist angle △ αwz about the X axis of the work base coordinate system ΣOp based on the absolute coordinate system Σworld is determined based on the calculated shift amount △ DL6 and the movement amount DL6. Is calculated using the following equation 87.

【数87】△αwz=sin-1(△DL6/DL6)87αwz = sin −1 (△ DL6 / DL6)

【0177】そして、次の数88に示すように、上記ね
じれ角度△αwzを補正値として用いて、RAM102
に格納している絶対座標系Σworldを基準としたワ
ークベース座標系ΣpのZ軸回りの姿勢成分αwzに対
して補正して、較正値αwz’を演算して姿勢成分αw
zとしてRAM102に格納する。
Then, as shown in the following Expression 88, the RAM 102 is used by using the torsion angle △ αwz as a correction value.
Is corrected for the posture component αwz around the Z-axis of the work base coordinate system Σp based on the absolute coordinate system Σworld stored in
It is stored in the RAM 102 as z.

【数88】αwz’=αwz+△αwz となる。[Mathematical formula-see original document] αwz '= αwz + wαwz

【0178】次いで、上記姿勢成分の較正値αwz’
を、数5に代入し、較正値αwz’に対する絶対座標系
Σworldを基準としたワークベース座標系Σpの位
置姿勢を示す同次変換行列[Zw’’’]を、次の数8
9を用いて演算する。
Next, the calibration value αwz ′ of the posture component is obtained.
Is substituted into Equation 5, and a homogeneous transformation matrix [Zw ′ ″] indicating the position and orientation of the work base coordinate system Σp based on the absolute coordinate system Σworld with respect to the calibration value αwz ′ is expressed by the following Equation 8.
9 is used.

【数89】 [Zw''']=Trans(awz,bwz,cwz)・Rot(X,αwz')・Rot(Y,βwz)・Rot(Z,γwz)[Zw ″ ′] = Trans (awz, bwz, cwz) · Rot (X, αwz ′) · Rot (Y, βwz) · Rot (Z, γwz)

【0179】さらに、ステップS529において、上記
演算した位置姿勢を示す同次変換行列[Zw’’’]
を、[Zw]として、RAM102に格納して更新す
る。そして、角度αWZに関する較正処理が完了したの
で、リターンする。
Further, in step S529, a homogeneous transformation matrix [Zw '"] indicating the calculated position and orientation is obtained.
Is stored in the RAM 102 and updated as [Zw]. Then, since the calibration process for the angle αWZ is completed, the process returns.

【0180】(3−5)第4の較正処理 図37は第4の較正処理(ステップS34)のフローチ
ャートである。当該第4の較正処理は、絶対座標系Σw
orldとポジショナ3の原点Opに設定したワークベ
ース座標系Σpとの位置成分awz、bwz、cwzを
較正対象とし、これらの誤差パラメータは、図10乃至
図12に示すように、位置の誤差△awz、△bwz、
△cwzである。当該第4の較正処理は、当該位置の誤
差△awz、△bwz、△cwzを検出して、当該誤差
が無くなるように較正する。
(3-5) Fourth Calibration Process FIG. 37 is a flowchart of the fourth calibration process (step S34). In the fourth calibration process, the absolute coordinate system Σw
The position components awz, bwz, and cwz of the ord and the work base coordinate system Σp set at the origin Op of the positioner 3 are set as calibration targets, and these error parameters are represented by the position error △ awz as shown in FIGS. , △ bwz,
Δcwz. In the fourth calibration process, errors 当 該 awz, △ bwz, △ cwz of the position are detected, and calibration is performed to eliminate the error.

【0181】ワーク側メカニカルインターフェイス座標
系Σwmを基準としたワーク座標系Σworkの位置姿
勢を示す同次変換行列[Ew]に関するデータは、数3
0乃至数35によって示したように、すべて0と設定さ
れている。そこで、ワーク座標系Σworkはポジショ
ナ3のテーブル平面の中心にワーク側メカニカルインタ
ーフェイス座標系Σwmと一致して設定されている。そ
こで、表面が平担になるように機械加工された直方体の
ブロックBK1を、その1頂点をポジショナ3のテーブ
ツ平面の中心と一致するように載置する。すなわち、ブ
ロックBK1の1頂点はワーク側メカニカルインターフ
ェイス座標系Σwmの原点と一致させているので、ワー
ク座標系Σworkの原点に一致する。さらに、上記ブ
ロックBK1の1頂点を中心とし、上記ブロックBK1
の1頂点から向かって右側にあるブロックBK1の1辺
をワーク側メカニカルインターフェイス座標系Σwmの
X軸の正方向と一致するようにブロックBK1を回転さ
せた後、ブロックBK1をポジショナ3のテーブル平面
に固定する。そして、図25に示すように、ロボット1
の先端に、3つの距離センサSS1,SS2,SS3か
らなるセンサユニットを、上記各センサSS1,SS
2,SS3のセンサ軸を互いに直交するように配設する
ための治具J1,J2,J3を介して、ツールとして取
り付ける。上記センサユニットにおける距離センサSS
1とツール座標系Σtoolの原点Otoolとの距離
は既知であり、それがlx0として予めROM101に
格納されている。上記距離センサSS1は、ワーク座標
系ΣworkのY軸とZ軸とによって構成されている面
と一致させて載置した直方体のブロックBK1の側面と
の計測によって距離lxを測定し、ワーク座標系Σwo
rkの原点Oworkとツール座標系Σtoolの原点
Otoolとのワーク側メカニカルインターフェイス座
標系ΣwmのX軸に平行な距離を距離(lx−lx0)
として演算するために用いる。また、上記センサユニッ
トにおける距離センサSS2とツール座標系Σtool
の原点Otoolとの距離は既知であり、それがly0
として予めROM101に格納されている。上記距離セ
ンサSS2は、ワーク座標系ΣworkのX軸とZ軸と
によって構成されている面と一致させて載置した直方体
のブロックBK1の側面との計測によって距離lyを測
定し、ワーク座標系Σworkの原点Oworkとツー
ル座標系Σtoolの原点Otoolとのワーク側メカ
ニカルインターフェイス座標系ΣwmのY軸に平行な距
離を距離(ly−ly0)として演算するために用い
る。さらに、上記センサユニットにおける距離センサS
S3とツール座標系Σtoolの原点Otoolとの距
離は既知であり、それがlz0として予めROM101
に格納されている。上記距離センサSS3は、ワーク座
標系ΣworkのX軸とY軸とによって構成されている
面(すなわち、ポジショナ3の平面)との計測によって
距離lzを測定し、ワーク座標系Σworkの原点Ow
orkとツール座標系Σtoolの原点Otoolとの
ワーク側メカニカルインターフェイス座標系ΣwmのZ
軸に平行な距離を距離(lz−lz0)として演算する
ために用いる。
Data relating to the homogeneous transformation matrix [Ew] indicating the position and orientation of the work coordinate system Σwork with reference to the work-side mechanical interface coordinate system Σwm is given by the following equation (3).
As shown by 0 to Expression 35, all are set to 0. Therefore, the work coordinate system Σwork is set at the center of the table plane of the positioner 3 so as to coincide with the work-side mechanical interface coordinate system Σwm. Therefore, a rectangular parallelepiped block BK1 machined so that the surface becomes flat is placed so that one vertex thereof coincides with the center of the tabes plane of the positioner 3. That is, since one vertex of the block BK1 matches the origin of the work-side mechanical interface coordinate system Σwm, it matches the origin of the work coordinate system Σwork. Further, with one vertex of the block BK1 as a center, the block BK1
After rotating the block BK1 so that one side of the block BK1 on the right side from one vertex coincides with the positive direction of the X-axis of the workpiece-side mechanical interface coordinate system Σwm, the block BK1 is placed on the table plane of the positioner 3. Fix it. Then, as shown in FIG.
A sensor unit including three distance sensors SS1, SS2, and SS3 is attached to the tip of each of the sensors SS1 and SS3.
2 and SS3 are mounted as tools via jigs J1, J2 and J3 for arranging the sensor axes orthogonal to each other. Distance sensor SS in the above sensor unit
The distance between 1 and the origin Otool of the tool coordinate system Σtool is known, and it is stored in the ROM 101 in advance as lx0. The distance sensor SS1 measures the distance lx by measuring the side surface of the rectangular parallelepiped block BK1 placed in alignment with the surface defined by the Y axis and the Z axis of the work coordinate system Σwork, and the work coordinate system Σwo
The distance parallel to the X-axis of the work side mechanical interface coordinate system Σwm between the origin Owork of rk and the origin Otool of the tool coordinate system Σtool is distance (lx-lx0).
Used to calculate as Further, the distance sensor SS2 in the sensor unit and the tool coordinate system Σtool
Is known to the origin Otool, and it is ly0
Is stored in the ROM 101 in advance. The distance sensor SS2 measures the distance ly by measuring the distance ly by measuring the side surface of the rectangular parallelepiped block BK1 placed in alignment with the plane defined by the X axis and the Z axis of the work coordinate system Σwork. Is used to calculate the distance parallel to the Y axis of the workpiece-side mechanical interface coordinate system Σwm between the origin Owork of the tool coordinate system Σtool and the origin Otool of the tool coordinate system Σtool as the distance (ly-ly0). Further, the distance sensor S in the sensor unit
The distance between S3 and the origin Otool of the tool coordinate system Σtool is known, and it is previously set as lz0 in the ROM 101.
Is stored in The distance sensor SS3 measures the distance lz by measuring a plane (ie, the plane of the positioner 3) formed by the X axis and the Y axis of the work coordinate system Σwork, and the origin Ow of the work coordinate system Σwork.
Work-side mechanical interface coordinate system between ork and tool coordinate system 原点 tool origin Otool Zwm Z
It is used to calculate the distance parallel to the axis as the distance (lz-lz0).

【0182】まず、ステップS610において、上記第
3の較正処理において較正した、絶対座標系Σworl
dを基準としたワークベース座標系ΣpのX軸、Y軸お
よびZ軸回りの姿勢成分の較正値αwz’、βwz’、
γwz’を取り込む。次いで、ステップS611におい
て、直方体ブロックBK1の各側面が、絶対座標系Σw
orldのX軸及びY軸と平行になるように、絶対座標
系Σworldを基準としたワークベース座標系Σpの
Z軸回りの姿勢成分の較正値γwz’だけ回転させるた
めに、次の数90を用いてポジショナ3の第2軸L22
の回りの回転角度(関節変数)θp2を演算する。
First, in step S610, the absolute coordinate system {world} calibrated in the third calibration process is set.
calibration values αwz ′, βwz ′ of posture components around the X-axis, Y-axis and Z-axis of the work base coordinate system Σp based on d
Import γwz '. Next, in step S611, each side surface of the rectangular parallelepiped block BK1 is moved to the absolute coordinate system Σw.
In order to rotate by the calibration value γwz ′ of the posture component about the Z axis of the work base coordinate system Σp based on the absolute coordinate system Σworld so as to be parallel to the X axis and the Y axis of Using the second axis L22 of the positioner 3
The rotation angle (joint variable) θp2 around is calculated.

【0183】[0183]

【数90】θp2=(−1)×γwz’ ここで、ポジショナ3の第1軸L21の関節変数θp1
を0とし、数90で算出したθp2と併せて、RAM1
02に格納される。
Where θp2 = (− 1) × γwz ′ where the joint variable θp1 of the first axis L21 of the positioner 3
Is set to 0, and RAM1 is added together with θp2 calculated by Equation 90.
02 is stored.

【0184】そして、上記関節変数θp1、θp2に対
するモータ指令位置Ppk(k=1,2)を、数61を
用いて演算する。
Then, the motor command position Ppk (k = 1, 2) for the joint variables θp1 and θp2 is calculated by using equation (61).

【0185】上記モータ指令位置Ppkのデータをデュ
アルポートRAM104、ラッチ回路105及びサーボ
制御回路107を介してモータMO7,MO8に転送し
て、ポジショナ3をその第2軸L22の回りに回転角度
θp2[rad]だけ回転させる。
The data of the motor command position Ppk is transferred to the motors MO7 and MO8 via the dual port RAM 104, the latch circuit 105 and the servo control circuit 107, and the positioner 3 is rotated around its second axis L22 by a rotation angle θp2 [ rad].

【0186】さらに、上記関節変数θp1,θp2に基
づいて、ポジショナ3の第1軸及び第2軸のA行列の値
を上記数62を用いて演算する。
Further, based on the joint variables θp1 and θp2, the values of the A matrix of the first axis and the second axis of the positioner 3 are calculated using the above equation (62).

【0187】さらに、表3のポジショナ3のD−Hのリ
ンクパラメータの値に基づいて、A行列Ap0及びAp
3も演算される。次いで、数9を用いて、ポジショナ3
の位置姿勢を示す同次変換行列[Tp]を演算する。
Further, based on the values of the DH link parameters of the positioner 3 in Table 3, the A matrices Ap0 and Ap
3 is also calculated. Next, using the equation 9, the positioner 3
Is calculated. [Tp] is calculated.

【0188】次いで、ステップS614において、予め
下記の条件のもとで作成されてROM101に格納され
たワーク座標系Σworkを基準としたツール4の位置
姿勢を示す同次変換行列のデータ[wXt]を取り込
む。このデータは、3個の距離センサSS1−SS3を
有するセンサユニットであるツールが上記ブロックBK
1とポジショナ3のテーブル面上に対して上述のように
所定の距離を測定するために設置されたときの、ワーク
座標系Σworkを基準としたツール4の姿勢と、ワー
ク座標系Σworkを基準としたツール4の位置とがす
べて0としたときの同次変換行列である。
Next, in step S614, the homogeneous transformation matrix data [wXt] indicating the position and orientation of the tool 4 with respect to the work coordinate system Σwork, which has been created in advance under the following conditions and stored in the ROM 101, is obtained. take in. This data indicates that the tool, which is a sensor unit having three distance sensors SS1 to SS3, has the above-described block BK.
1 and the position of the tool 4 with respect to the table surface of the positioner 3 for measuring a predetermined distance as described above, and the attitude of the tool 4 with respect to the work coordinate system Σwork, and with the work coordinate system Σwork as reference. This is a homogeneous transformation matrix when all the positions of the tool 4 are set to 0.

【0189】ステップS615において、予めROM1
01に記憶されたスライダ2の所定の動作位置dsj
(j=1,2)に対するモータ指令位置Psj(j=
1,2)を、数57を用いて演算し、当該モータ指令位
置PsiのデータをデュアルポートRAM104、ラッ
チ回路105及びサーボ制御回路108を介してモータ
MO9,MO10に転送され、スライダ2が動作され
る。
In step S615, the ROM 1
01 is the predetermined operating position dsj of the slider 2 stored in
(J = 1, 2) to the motor command position Psj (j =
The data of the motor command position Psi is transferred to the motors MO9 and MO10 via the dual port RAM 104, the latch circuit 105 and the servo control circuit 108, and the slider 2 is operated. You.

【0190】そして、上記スライダ2の動作位置dsj
(j=1,2)に基づいて、数51を用いてスライダ2
のA行列Asj(j=1,2)を演算し、第2の較正処
理によって既に較正されたスライダ2のD−Hリンクパ
ラメータの関節変数θs3を用いてスライダ2のA行列
Asj(j=0,3)を演算した後、スライダ2の位置
姿勢を示す同次変換行列[Ts]を、数8を用いて演算
してRAM102に格納する。
The operation position dsj of the slider 2
Based on (j = 1, 2), the slider 2
Of the slider 2 using the joint variable θs3 of the DH link parameter of the slider 2 which has already been calibrated by the second calibration process, and calculates the A matrix Asj (j = 0) of the slider 2 , 3), a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 is computed using Expression 8 and stored in the RAM 102.

【0191】さらに、同様に、表2のスライダ2のD−
Hのリンクパラメータ値に基づいて、A行列As0及び
びAs3も演算されるので、スライダ2の位置姿勢を示
す同次変換行列[Ts]を、数8を用いて、スライダ2
の動作位置dsj(j=1,2)に対して演算する。
Further, similarly, the D-
Since the A matrices As0 and As3 are also calculated based on the link parameter value of H, a homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2 is calculated by using the following equation (8).
Is calculated for the operation position dsj (j = 1, 2).

【0192】次いで、ステップS618において、RA
M102に格納されている同次変換行列[Zt’’]、
[Zw’’]、[Et]、[Ew]を取り込む。そし
て、ツール4の先端の位置Otoolを、演算上のワー
ク座標系Σworkの原点Oworkに移動するように
ロボット1を動作させるロボット1の位置姿勢[Tm
a]を、上記演算されたポジショナ3の位置姿勢を示す
同次変換行列[Tp]と、上記演算されたスライダ2の
位置姿勢を示す同次変換行列[Ts]と、上記取り込ん
だ同次変換行列[Zt’’]、[Zw’’]、[E
t]、[Ew]と、並びに上記ステップS614におい
て取り込んだワーク座標系Σworkを基準としたツー
ル4の位置姿勢を示す同次変換行列[wXt]に基づい
て次の数91を用いて演算する。
Next, in step S618, RA
Homogeneous transformation matrix [Zt ″] stored in M102,
[Zw ″], [Et], and [Ew] are fetched. Then, the position and orientation of the robot 1 that operates the robot 1 such that the position Otool of the tip of the tool 4 is moved to the origin Owork of the work coordinate system Σwork on the calculation [Tm
a] is calculated from the calculated homogeneous transformation matrix [Tp] indicating the position and orientation of the positioner 3, the calculated homogeneous transformation matrix [Ts] indicating the position and orientation of the slider 2, and the fetched homogeneous transformation. Matrices [Zt ″], [Zw ″], [E
t], [Ew], and a homogeneous transformation matrix [wXt] indicating the position and orientation of the tool 4 with respect to the work coordinate system 取 り work taken in step S614 as a reference.

【0193】[0193]

【数91】 [Tma]=[Ts]-1・[Zt'']-1・[Zw'']・[Tp]・[Ew]・[wXt]・[Et]-1 [Tma] = [Ts] −1 · [Zt ″] −1 · [Zw ″] · [Tp] · [Ew] · [wXt] · [Et] −1

【0194】さらに、ツール4の先端の位置Otool
が演算上のワーク座標系Σworkの原点Oworkに
おけるロボット1の位置姿勢を示す同次変換行列[Tm
a]を逆変換して、ロボット1の各関節変数θmai
(i=1,2,…,6)を演算し、上記数56を用い
て、ロボット1のモータ指令位置Pmai(i=1,
2,…,6)が演算される。これらのモータ指令位置P
maiのデータはデュアルポートRAM104、ラッチ
回路105及びサーボ制御回路106を介してモータM
O1乃至MO6に転送され、これによって、ロボット1
の各関節RJ1乃至RJ6を回転させ、ツール4の先端
の位置Otoolが演算上のワーク座標系Σworkの
原点Oworkに位置させる。
Furthermore, the position OTool of the tip of the tool 4
Is a homogeneous transformation matrix [Tm] indicating the position and orientation of the robot 1 at the origin Owork of the work coordinate system 上 の work on the computation.
a] is inversely transformed to obtain each joint variable θmai of the robot 1.
(I = 1, 2,..., 6), and using the above equation (56), the motor command position Pmai (i = 1, 1) of the robot 1
2,..., 6) are calculated. These motor command positions P
mai data is transmitted to the motor M via the dual port RAM 104, the latch circuit 105, and the servo control circuit 106.
It is transferred to O1 to MO6, whereby the robot 1
Are rotated, and the position Otool of the tip of the tool 4 is positioned at the origin Owork of the work coordinate system Σwork on the calculation.

【0195】次いで、ステップS620において、ツー
ル4の先端の位置Otoolが演算上のワーク座標系Σ
workの原点Oworkに位置する距離センサSS
1,SS2,SS3のセンサ検出距離lx,ly,lz
を検出してRAM102に格納する。
Next, in step S620, the position OTool of the tip of the tool 4 is calculated in the work coordinate system Σ.
Distance sensor SS located at the origin Owork of the work
1, SS2, SS3 sensor detection distance lx, ly, lz
Is detected and stored in the RAM 102.

【0196】上記格納された検出距離lx,ly,lz
は各距離センサSS1−SS3からワーク座標系Σwo
rkの原点Oworkまでの距離である。そこで予めR
OM101に格納された各距離センサSS1−SS3か
らTOOL座標系Σtoolの原点Otoolまでの距
離lx0,ly0,lz0とそれぞれ比較し、ワーク座
標系Σworkの原点Oworkの位置とツール座標系
Σtoolの原点Otoolの位置とが一致しているか
がステップS621において判断される。機械1,2,
3間の誤差が無い場合は、両者が一致する。なぜなら
ば、ステップS614で取り出し、それ以降の演算の基
礎となったワーク座標系Σworkを基準としたツール
4の位置姿勢のデータのうち位置のデータはすべて上述
のように0としているからである。このように両者が一
致したとき、当該第4の較正処理が完了したと判断し
て、リターンする。一方、一致しないときには、ステッ
プS622に進む。
The stored detection distances lx, ly, lz
Is the work coordinate system @wo from each of the distance sensors SS1-SS3.
This is the distance to the origin Owork of rk. Therefore, R
The distances lx0, ly0, and lz0 from the distance sensors SS1-SS3 stored in the OM 101 to the origin Otool of the TOOL coordinate system Σtool are respectively compared, and the position of the origin Owork of the work coordinate system Σwork and the origin Otool of the tool coordinate system Σtool are compared. It is determined in step S621 whether the positions match. Machines 1, 2,
If there is no error between the three, they match. This is because all the position data among the position and orientation data of the tool 4 based on the work coordinate system 取 り 出 し work, which is taken out in step S614 and is the basis of the subsequent calculation, is set to 0 as described above. When they match in this way, it is determined that the fourth calibration process has been completed, and the routine returns. On the other hand, if they do not match, the process proceeds to step S622.

【0197】ステップS622において、ツール座標系
Σtoolと各距離センサSS1,SS2,SS3の端
面との最短距離lx0、ly0、lz0と、上記ステッ
プS620において検出されたセンサ検出距離lx,l
y,lzと、上記ステップS610において取り込んだ
絶対座標系Σworldを基準としたワークベース座標
系ΣpのX軸、Y軸及びZ軸回りの姿勢成分の較正値α
wz’、βwz’、γwz’とに基づいて、絶対座標系
Σworldを基準としたワークベース座標系Σpの位
置成分の誤差△awz、△bwz、△cwzを、次の数
92を用いて演算する。
In step S622, the shortest distances lx0, ly0, lz0 between the tool coordinate system Σtool and the end faces of the distance sensors SS1, SS2, SS3, and the sensor detection distances lx, l detected in step S620.
y, lz and the calibration value α of the posture component around the X-axis, Y-axis, and Z-axis of the work base coordinate system Σp based on the absolute coordinate system Σworld taken in step S610.
Based on wz ′, βwz ′, and γwz ′, the error 位置 awz, △ bwz, △ cwz of the position component of the work base coordinate system Σp based on the absolute coordinate system Σworld is calculated using the following equation 92. .

【0198】[0198]

【数92】 △awz={(lx−lx0)−(lz−lz0)・tanβwz'}・cosβwz' △bwz={(ly−ly0)−(lz−lz0)・tanαwz'}・cosαwz' △cwz={(lz−lz0)・cosαwz’・cosβwz’Δawz = {(lx−lx0) − (lz−lz0) · tanβwz ′} · cosβwz ′ Δbwz = {(ly−ly0) − (lz−lz0) · tanαwz ′} · cosαwz ′ Δcwz = {(Lz-lz0) · cosαwz '· cosβwz'

【0199】次いで、ステップS623においては、上
記演算した位置成分の誤差△awz、△bwz、△cw
zを補正値として用いて、RAM102に格納されてい
る絶対座標系Σworldを基準としたワークベース座
標系Σpの位置成分awz、bwz、cwzを次の数9
3を用いて補正して、その較正値awz’,bwz’,
cwz’を演算する。
Next, in step S623, the errors △ awz, △ bwz, △ cw of the position components calculated above are calculated.
Using z as a correction value, the position components awz, bwz, and cwz of the work base coordinate system Σp based on the absolute coordinate system Σworld stored in the RAM 102 are given by the following equation (9).
3 and the calibration values awz ′, bwz ′,
cwz 'is calculated.

【0200】[0200]

【数93】awz’=awz+△awz bwz’=bwz+△bwz cwz’=cwz+△cwzAwz '= awz + △ awz bwz' = bwz + △ bwz cwz '= cwz + △ cwz

【0201】さらに、上記演算した位置成分の較正値a
wz’、bwz’、cwz’を、上記数5に代入し、較
正値awz’、bwz’、cwz’に対する、絶対座標
系Σworldを基準としたワークベース座標系Σpの
位置姿勢を示す同次変換行列[Zw’’’’]を、次の
数94を用いて演算する。
Further, the calculated calibration value a of the position component
Substituting wz ', bwz', and cwz 'into Equation 5 above, the homogeneous transformation indicating the position and orientation of the work base coordinate system Σp based on the absolute coordinate system Σworld with respect to the calibration values awz', bwz ', and cwz'. The matrix [Zw ″ ″] is calculated using the following equation (94).

【数94】 [Zw'''']=Trans(awz',bwz',cwz')・Rot(X,αwz)・Rot(Y,βwz)・Rot(Z,γwz)[Zw ″ ″] = Trans (awz ′, bwz ′, cwz ′) · Rot (X, αwz) · Rot (Y, βwz) · Rot (Z, γwz)

【0202】次いで、上記演算された較正値awz’、
bwz’、cwz’に対する絶対座標系Σworldを
基準としたワークベース座標系Σpの位置姿勢を示す同
次変換行列[Zw’’’’]を、[Zw]としてRAM
102に格納して更新する。これによって、第4の較正
処理が完了したとして、リターンする。
Next, the calculated calibration values awz ',
A homogeneous transformation matrix [Zw ″ ″] indicating the position and orientation of the work base coordinate system Σp based on the absolute coordinate system Σworld with respect to bwz ′ and cwz ′ is defined as [Zw] in the RAM.
Stored in 102 and updated. As a result, the process returns assuming that the fourth calibration process has been completed.

【0203】(4)教示作業と再生動作 以上の本発明に係る実施例の設置誤差の較正処理を当該
ロボットシステムの設置直後に実行することによって、
ロボット1とスライダ2及びポジショナ3の各々の間の
設置関係を示し、制御装置5内のRAM102に格納さ
れた同次変換行列[Zw]、[Zt]、[Ts]を実際
の設置状態に対応した値に修正することができる。この
後に、当該ロボットシステムに対して教示作業を行った
後に、再生動作である自動運転を行わせる。
(4) Teaching operation and playback operation By executing the installation error calibration processing of the embodiment according to the present invention immediately after the installation of the robot system,
FIG. 4 shows an installation relationship between the robot 1, the slider 2, and the positioner 3, and a homogeneous transformation matrix [Zw], [Zt], [Ts] stored in the RAM 102 in the control device 5 corresponds to an actual installation state. Can be modified to the value given. Thereafter, after performing a teaching operation on the robot system, the robot system is caused to perform an automatic operation as a reproducing operation.

【0204】もし当該較正処理を実行しない場合に、教
示作業と再生動作において発生する問題を、上記同次変
換行列[Zw]、[Zt]、[Ts]を対応し、当該較
正処理を実行しないときの設置関係を示す同次変換行列
[Zwq]、[Ztq]、[Tsq]を用いて、以下に
説明する。なお、当該ロボットシステムによる作業内容
は、ワーク取扱装置12とツール移動装置11の両方を
動かし、ワークとツール4との相対的な動作を行わせる
ものとする。
If the calibration process is not executed, the problem that occurs in the teaching operation and the reproduction operation is determined by the above-mentioned homogeneous transformation matrices [Zw], [Zt], and [Ts], and the calibration process is not executed. This will be described below using the homogeneous transformation matrices [Zwq], [Ztq], and [Tsq] indicating the installation relation at the time. The contents of the work performed by the robot system are such that both the work handling device 12 and the tool moving device 11 are moved, and the relative operation between the work and the tool 4 is performed.

【0205】本実施例のロボットシステムに対して制御
装置5が実行する計算のうち、絶対座標系Σworld
を基準としたワーク座標系Σpの位置姿勢を示す同次変
換行列[worldXwork]は次の数95で表すこ
とができ、絶対座標系Σworldを基準としたツール
座標系Σtoolの位置姿勢を示す同次変換行列[wo
rldXtool]は次の数96で表すことができる。
Of the calculations executed by the control device 5 for the robot system of this embodiment, the absolute coordinate system Σworld
The homogeneous transformation matrix [worldXwork] indicating the position and orientation of the workpiece coordinate system Σp based on the following equation 95 can be expressed by the following equation 95, and the homogeneous transformation matrix indicating the position and orientation of the tool coordinate system Σtool based on the absolute coordinate system Σworld Conversion matrix [wo
rldXtool] can be expressed by the following equation 96.

【0206】[0206]

【数95】 [worldXwork]=[Zwq]・[Tp]・[Ew][Equation 95] [worldXwork] = [Zwq] · [Tp] · [Ew]

【数96】 [worldXtool]=[Ztq]・[Tsq]・[Tma]・[Et][WorldXTool] = [Ztq] · [Tsq] · [Tma] · [Et]

【0207】従って、上記数95と数96とから、ワー
ク座標系Σworkを基準としたツール座標系Σtoo
lの位置姿勢を示す同次変換行列[workXtoo
l]は、次の数97を用いて演算することができる。
Therefore, from the above equations (95) and (96), the tool coordinate system {too} based on the workpiece coordinate system {work} is used.
H [homogeneous transformation matrix [workXtoo]
l] can be calculated using the following equation 97.

【数97】 [workXtool] =[worldXwork]-1・[worldXtool] =[Ew]-1・[Tp]-1・[Zwq]-1・[Ztq]・[Tsq]・[Tma]・[Et][WorkXtool] = [worldXwork] -1 · [worldXtool] = [Ew] -1 · [Tp] -1 · [Zwq] -1 · [Ztq] · [Tsq] · [Tma] · [Et] ]

【0208】教示作業において、例えば、ワーク座標系
Σworkを基準としたツール座標系Σtoolの位置
姿勢を示す整数i番目の同次変換行列[workXto
ol]を上記数97を用いて演算した後、[workX
tool]iとしてRAM102に格納し、次の整数
(i+1)番目のその同次変換行列を[workXto
ol]i+1としてRAM102に記憶したとする。こ
こで、両方の同次変換行列の記憶データ[workXt
ool]i,[workXtool]i+1は大きな設
置誤差を含むと、以下同様に繰り返し、大きな誤差を含
んだ記憶データによる作業プログラムが作成される。
In the teaching operation, for example, an integer i-th homogeneous transformation matrix [workXto] indicating the position and orientation of the tool coordinate system Σtool based on the work coordinate system Σwork
ol] using the above equation (97), and then [workX
tool] i in the RAM 102 and the next integer (i + 1) -th homogeneous transformation matrix thereof is [workXto
ol] i + 1 is stored in the RAM 102. Here, the stored data of both homogeneous transformation matrices [workXt
When [tool] i and [workXtool] i + 1 include a large installation error, the same operation is repeated in the same manner, and a work program based on the stored data including the large error is created.

【0209】こうした作業プログラムに基づき再生動作
をさせると、i番目からi+1番目への動作は、それぞ
れ設置誤差を有する同次変換行列[workXtoo
l]iと同次変換行列[workXtool]i+1と
によって演算された、大きな設置誤差を有する移動距離
Lqに基づいて動作を実行することになる。この間の動
作に要する所要時間Tsqは、指定されたi番目の相対
速度Viと、上記大きな設置誤差を有する移動距離Lq
とによって、次の数98によって演算される。この結
果、実際のワーク上の移動距離Lと、i番目の相対速度
Viによる期待する所要時間とが互いに大きく異なるこ
とになる。すなわち、指定した相対速度Viを実現でき
ないという問題点を生じる。
When the reproducing operation is performed based on such a work program, the operations from the i-th to the (i + 1) -th operations are performed by the homogeneous transformation matrix [workXtooo] having an installation error.
The operation is performed based on the moving distance Lq having a large installation error, which is calculated by [l] i and the homogeneous transformation matrix [workXtool] i + 1. The required time Tsq required for the operation during this time is the specified i-th relative speed Vi and the moving distance Lq having the large installation error.
Is calculated by the following equation (98). As a result, the actual moving distance L on the work and the expected required time based on the i-th relative speed Vi are greatly different from each other. That is, there is a problem that the specified relative speed Vi cannot be realized.

【数98】Tsq=Lq÷Vi[Equation 98] Tsq = Lq ÷ Vi

【0210】従って、以上の本実施例の設置誤差の較正
処理を当該ロボットシステムの設置直後に実行すること
によって、設置誤差を無くし、これによって、教示作業
後に実行する再生作業を実行するときに、教示作業で指
示された作業内容と実質的に同一の作業内容を実現する
ことができ、例えば「ワークとツール4との間で所望の
相対速度を実現できない」という上述の問題点を解決す
ることができる。
Therefore, by performing the above-described installation error calibration processing of this embodiment immediately after the installation of the robot system, the installation error is eliminated, so that when performing the reproduction operation performed after the teaching operation, It is possible to realize substantially the same work content as the work content instructed in the teaching work, and to solve the above-described problem that "a desired relative speed cannot be realized between the work and the tool 4", for example. Can be.

【0211】(5)変形例 (5−1)第1の変形例 以上の実施例において、図6の(a)に示すように、産
業用ロボットシステムにおいてスライダ2が無い場合
は、上記設置誤差ε3及びε4が存在せず、図27に示
すように、設置誤差ε2を較正する第3の較正処理(ス
テップS3)と、設置誤差ε1を較正する第4の較正処
理(ステップS4)のみを順次実行するように構成して
もよい。
(5) Modified Example (5-1) First Modified Example In the above-described embodiment, as shown in FIG. Since ε3 and ε4 do not exist, as shown in FIG. 27, only a third calibration process (step S3) for calibrating the installation error ε2 and a fourth calibration process (step S4) for calibrating the installation error ε1 are sequentially performed. It may be configured to execute.

【0212】この変形例において取り扱う数式は、基本
的には上記の実施例と同じであるが、上記スライダ2が
無い事による対応を以下に説明する。スライダ2が存在
しないことより、スライダ2の位置姿勢の同次変換行列
[Ts]は、不要となる。すなわち、数4は不要とな
る。また、スライダ2の機械原点に設定したツールベー
ス座標系Σs及びツール側メカニズムニカルインターフ
ェイス座標系Σtmは無い。そこで、絶対座標系Σwo
rldを基準としたツールベース座標系Σsの位置姿勢
を表す同次変換行列[Zt]は不要であり、ロボット1
の機械原点Omに設定したツール機械座標系Σmと絶対
座標系Σworldとは、一致しているとして取り扱
う。ここで、同次変換行列[Ts]および[Zt]は不
要となるから、ロボットシステムの各構成要素の位置姿
勢に関する数式、すなわち、上記実施例における数11
は、次の数99に置き換える。
The formulas handled in this modified example are basically the same as those in the above-described embodiment, but a description will be given of a case where the slider 2 is not provided. Since the slider 2 does not exist, the homogeneous transformation matrix [Ts] of the position and orientation of the slider 2 becomes unnecessary. That is, Equation 4 becomes unnecessary. Further, there is no tool base coordinate system Δs and a tool side mechanical interface coordinate system Δtm set at the mechanical origin of the slider 2. Therefore, the absolute coordinate system @wo
The homogeneous transformation matrix [Zt] representing the position and orientation of the tool base coordinate system Σs based on rld is unnecessary, and the robot 1
The tool machine coordinate system Σm set to the mechanical origin Om of the above and the absolute coordinate system Σworld are handled as being coincident. Here, since the homogeneous transformation matrices [Ts] and [Zt] are not required, a mathematical expression relating to the position and orientation of each component of the robot system, that is, Equation 11 in the above embodiment is used.
Is replaced by the following Expression 99.

【数99】 [Tma]・[Et]=[Zw]・[Tp]・[Ew]・[wXt][Tma] · [Et] = [Zw] · [Tp] · [Ew] · [wXt]

【0213】設置誤差ε2を較正する第3の較正処理
(ステップS3)においては、次のように変更される。
まず、ステップS31の角度γwzの較正処理におい
て、S311におけるスライダ2の動作位置dsj(j
=1,2)の読み出しから同次変換行列[Ts]の演算
までが不要となる。さらに、ステップS318において
は同次変換行列[Zt]の読み出しが不要であり、ワー
ク座標系Σworkを基準としたツール4の先端Oto
olの位置姿勢を示す同次変換行列[wXt]は上記実
施例における数63から、次の数100に置き換える。
In the third calibration process (step S3) for calibrating the installation error ε2, the following changes are made.
First, in the calibration process of the angle γwz in step S31, the operation position dsj (j
= 1, 2) to the calculation of the homogeneous transformation matrix [Ts] are not required. Further, in step S318, it is not necessary to read the homogeneous transformation matrix [Zt], and the tip Oto of the tool 4 based on the work coordinate system Σwork is not required.
The homogeneous transformation matrix [wXt] indicating the position and orientation of ol is replaced by the following equation 100 from equation 63 in the above embodiment.

【数100】 また、ステップS322において演算するポジションB
4におけるロボット1の位置姿勢[Tma’]は上記実
施例における数67から、次の数101に置き換える。
[Equation 100] Also, the position B calculated in step S322
The position and orientation [Tma '] of the robot 1 in 4 is replaced by the following expression 101 from expression 67 in the above embodiment.

【数101】 [Tma']=[Zw]・[Tp]・[Ew]・[wXt']・[Et]-1 [Tma ′] = [Zw] · [Tp] · [Ew] · [wXt ′] · [Et] −1

【0214】ステップ32の角度βwzの較正処理にお
いて、ステップS411におけるスライダ2の動作位置
dsj(j=1,2)の読み出しから同次変換行列[T
s]の演算までが不要となる。さらに、ステップS41
8においては同次変換行列[Zt]の読み出しが不要で
あり、ワーク座標系Σworkを基準としたツール4の
先端Otoolの位置姿勢を示す同次変換行列[wX
t]は上記実施例における数72から、次の数102に
置き換える。
In the calibration processing of the angle βwz in step 32, the homogeneous transformation matrix [T] is read from the reading of the operating position dsj (j = 1, 2) of the slider 2 in step S411.
s] is not required. Further, step S41
8, the reading of the homogeneous transformation matrix [Zt] is unnecessary, and the homogeneous transformation matrix [wX] indicating the position and orientation of the tip OTool of the tool 4 with reference to the work coordinate system Σwork.
t] is replaced by the following equation 102 from equation 72 in the above embodiment.

【数102】 また、ステップS422において演算するポジションB
4におけるロボット1の位置姿勢[Tma’]は上記実
施例における数76から、次の数103に置き換える。
[Equation 102] Also, the position B calculated in step S422
The position and orientation [Tma '] of the robot 1 in 4 is replaced by the following expression 103 from Expression 76 in the above embodiment.

【数103】 [Tma']=[Zw']・[Tp]・[Ew]・[wXt']・[Et]-1 [Tma ′] = [Zw ′] · [Tp] · [Ew] · [wXt ′] · [Et] −1

【0215】ステップ33の角度αwzの較正処理にお
いて、S511におけるスライダ2の動作位置dsj
(j=1,2)の読み出しから同次変換行列[Ts]の
算出までが不要となる。さらに、ステップS518にお
いては同次変換行列[Zt]の読み出しが不要であり、
ワーク座標系Σworkを基準としたツール4の先端O
toolの位置姿勢を示す同次変換行列[wXt]は上
記実施例における数82から、次の数104に置き換え
る。
In the calibration processing of the angle αwz in step 33, the operating position dsj of the slider 2 in S511
The steps from reading (j = 1, 2) to calculating the homogeneous transformation matrix [Ts] become unnecessary. Further, in step S518, it is not necessary to read the homogeneous transformation matrix [Zt].
Tip O of tool 4 based on workpiece coordinate system @work
The homogeneous transformation matrix [wXt] indicating the position and orientation of the tool is replaced by the following equation 104 from equation 82 in the above embodiment.

【数104】 また、ステップS522において算出するポジションB
4におけるロボット1の位置姿勢[Tma’]は上記実
施例における数85から、次の数105に置き換える。
[Equation 104] Further, the position B calculated in step S522
The position and orientation [Tma '] of the robot 1 in 4 is replaced by the following expression 105 from expression 85 in the above embodiment.

【数105】 [Tma']=[Zw"]・[Tp]・[Ew]・[wXt']・[Et]-1 [Tma ′] = [Zw ″] · [Tp] · [Ew] · [wXt ′] · [Et] −1

【0216】設置誤差ε1を較正する第4の較正処理
(ステップS4)においては、次のように変更される。
まず、ステップS615はスキップし実行しない。そし
て、ステップS618においては、同次変換行列[Z
t]の読み出しが不要であり、ステップS618におい
て算出するロボット1の位置姿勢[Tma]は上記実施
例における数91から、次の数106に置き換える。
In the fourth calibration process (step S4) for calibrating the installation error ε1, the following changes are made.
First, step S615 is skipped and not executed. Then, in step S618, the homogeneous transformation matrix [Z
It is not necessary to read out t], and the position and orientation [Tma] of the robot 1 calculated in step S618 is replaced by the following equation 106 from equation 91 in the above embodiment.

【数106】 [Tma]=[Zw"]・[Tp]・[Ew]・[wXt]・[Et]-1 [Tma] = [Zw ″] · [Tp] · [Ew] · [wXt] · [Et] −1

【0217】(5−2)第2の変形例 以上の実施例において、図6の(b)に示すように、産
業用ロボットシステムにおいてポジショナ3が無い場合
は、上記設置誤差ε2が存在せず、図28に示すよう
に、設置誤差ε3を較正する第1の較正処理(ステップ
S1)と、設置誤差ε4を較正する第2の較正処理(ス
テップS2)と、設置誤差ε1を較正する第4の較正処
理(ステップS4)のみを順次実行するように構成して
もよい。
(5-2) Second Modification In the above embodiment, as shown in FIG. 6B, when there is no positioner 3 in the industrial robot system, the installation error ε2 does not exist. As shown in FIG. 28, a first calibration process (Step S1) for calibrating the installation error ε3, a second calibration process (Step S2) for calibrating the installation error ε4, and a fourth calibration process for calibrating the installation error ε1. May be configured to sequentially execute only the calibration process (step S4).

【0218】この変形例において取り扱う数式は、基本
的には上記の実施例と同じであるが、前記構成要素が無
い事による対応を下記に説明する。ポジショナ3が存在
しないことより、ポジショナ3の位置姿勢の同次変換行
列[Tp]は、不要となる。すなわち、数9は不要とな
る。また、ポジショナ3の機械原点に設定したワークベ
ース座標系Σpおよびワーク側メカニズムニカルインタ
ーフェイス座標系Σwmは無い。そこで、ワーク側メカ
ニズムニカルインターフェイス座標系Σwmを基準とし
たワーク座標系Σworkの位置姿勢を表す同次変換行
列[Ew]は不要である。そして、絶対座標系Σwor
ldを基準としたワーク座標系Σworkの位置姿勢を
示す同次変換行列を、同次変換行列[Zw]として取り
扱う。同次変換行列[Tp]及び同次変換行列[Ew]
は不要となるから、ロボットシステムの各構成要素の位
置姿勢に関する数式、すなわち、上記実施例における数
11は、次の数107に置き換える。
The formulas handled in this modified example are basically the same as those in the above-described embodiment, but the following description deals with the absence of the components. Since the positioner 3 does not exist, the homogeneous transformation matrix [Tp] of the position and orientation of the positioner 3 becomes unnecessary. That is, Equation 9 becomes unnecessary. Also, there is no work base coordinate system に p and a work side mechanical interface coordinate system Σwm set at the mechanical origin of the positioner 3. Therefore, a homogeneous transformation matrix [Ew] representing the position and orientation of the work coordinate system Σwork with respect to the work side mechanical interface coordinate system Σwm is unnecessary. And the absolute coordinate system Σ wor
A homogeneous transformation matrix indicating the position and orientation of the work coordinate system Σwork based on ld is treated as a homogeneous transformation matrix [Zw]. Homogeneous transformation matrix [Tp] and homogeneous transformation matrix [Ew]
Becomes unnecessary, so the mathematical expression relating to the position and orientation of each component of the robot system, that is, Expression 11 in the above embodiment is replaced by Expression 107 below.

【数107】 [Zt]・[Ts]・[Tma]・[Et]=[Zw]・[wXt][Zt] · [Ts] · [Tma] · [Et] = [Zw] · [wXt]

【0219】設置誤差ε4を較正する第2の較正処理
(ステップS2)においては、次のように変更される。
まず、ステップS210における、ポジショナ3の関節
変数θpk(k=1,2)の計算は不要となり、ステッ
プS211における、ポジショナ3のA行列の計算およ
びポジショナ3の位置姿勢を示す同次変換行列[Tp]
の演算は不要となる。さらに、S214においては、ワ
ーク座標系Σworkを基準としたツール4の先端Ot
oolの位置姿勢を示す同次変換行列[wXt]は上記
実施例における数53から、次の数108に置き換え
る。
In the second calibration process (step S2) for calibrating the installation error ε4, the following changes are made.
First, the calculation of the joint variable θpk (k = 1, 2) of the positioner 3 in step S210 becomes unnecessary, and in step S211 the calculation of the A matrix of the positioner 3 and the homogeneous transformation matrix [Tp indicating the position and orientation of the positioner 3 are performed. ]
Becomes unnecessary. Further, in S214, the tip Ot of the tool 4 based on the work coordinate system Σwork
The homogeneous transformation matrix [wXt] indicating the position and orientation of “ool” is replaced by the following equation 108 from equation 53 in the above embodiment.

【数108】 [wXt]=[Zw]-1・[Zt"]・[Ts]・[Tma]・[Et] また、ステップS216において演算するポジショナB
3におけるロボット1の位置姿勢[Tma’]は上記実
施例における数55から、次の数109に置き換える。
[WXt] = [Zw] −1 · [Zt ″] · [Ts] · [Tma] · [Et] Further, the positioner B calculated in step S216
The position and orientation [Tma '] of the robot 1 in 3 is replaced by the following expression 109 from expression 55 in the above embodiment.

【数109】 [Tma']=[Ts']-1・[Zt"]-1・[Zw]・[wXt]・[Et]-1 [Tma ′] = [Ts ′] −1 · [Zt ″] −1 · [Zw] · [wXt] · [Et] −1

【0220】設置誤差ε1を較正する第4の較正処理
(ステップS4)においては、次の変更となる。まず、
較正処理を実施する準備作業として、ポジショナ3のテ
ーブル平面に相当する円板(図示せず)をワークの基準
点であるワーク座標系に設置する。そして、当該較正処
理においては、ステップS610及びステップS611
はスキップし実行しない。そして、ステップS618に
おいては、同次変換行列[Ew]の読み出しが不要であ
り、ステップS618において演算するロボット1の位
置姿勢[Tma]は上記実施例における数91から、次
の数110に置き換える。この変形例では、第3の較正
処理(ステップS3)は実行しないので同次変換行列
[Zw]は初期設定と同一である。
In the fourth calibration process (step S4) for calibrating the installation error ε1, the following changes are made. First,
As a preparatory work for performing the calibration process, a disk (not shown) corresponding to the table plane of the positioner 3 is set on a work coordinate system which is a reference point of the work. Then, in the calibration process, steps S610 and S611
Skips and does not execute. Then, in step S618, it is not necessary to read the homogeneous transformation matrix [Ew], and the position and orientation [Tma] of the robot 1 calculated in step S618 is replaced by the following equation 110 from equation 91 in the above embodiment. In this modification, since the third calibration process (step S3) is not executed, the homogeneous transformation matrix [Zw] is the same as the initial setting.

【数110】 [Tma]=[Ts]-1・[Zt"]-1・[Zw]・[wXt]・[Et]-1 また、ステップS622においては、数21,数22,
数23によって、予め設定した絶対座標系Σworld
を基準としたワーク座標系Σworkの位置姿勢を示す
同次変換行列[Zw]の姿勢成分αwz,βwz,γw
zを用い、これらをそれぞれαwz’,βwz’,γw
z’として取り扱う。そして、絶対座標系Σworld
を基準としたワーク座標系Σworkの位置姿勢を同次
変換行列[Zw]の位置成分の誤差Δawz、Δbw
z、Δcwzを演算した後、位置成分の較正値aw
z’、bwz’、cwz’を演算する。
[Tma] = [Ts] −1 · [Zt ″] −1 · [Zw] · [wXt] · [Et] −1 Further , in step S622, Expression 21, Expression 22,
According to Equation 23, the absolute coordinate system Σworld set in advance
Posture components αwz, βwz, γw of the homogeneous transformation matrix [Zw] indicating the position and posture of the workpiece coordinate system Σwork with reference to
z, and these are represented by αwz ′, βwz ′, and γw, respectively.
Treated as z '. And the absolute coordinate system $ world
The position and orientation of the workpiece coordinate system Σwork with reference to the error Δawz, Δbw of the position component of the homogeneous transformation matrix [Zw]
After calculating z and Δcwz, the calibration value aw of the position component
Compute z ', bwz', and cwz '.

【0221】(5−3)第3の変形例 以上の実施例において、図6の(c)に示すように、産
業用ロボットシステムにおいてスライダ2とポジショナ
3が無い場合は、上記設置誤差ε1のみしか存在せず、
図29に示すように、設置誤差ε1を較正する第4の較
正処理(ステップS4)のみを実行するように構成して
もよい。
(5-3) Third Modification In the above embodiment, as shown in FIG. 6C, when the slider 2 and the positioner 3 are not provided in the industrial robot system, only the installation error ε1 is set. Only exists,
As shown in FIG. 29, only the fourth calibration process (step S4) for calibrating the installation error ε1 may be performed.

【0222】この変形例において取り扱う数式は、基本
的には上記の実施例と同じであるが、前記構成要素が無
い事による対応を下記に説明する。スライダ2が存在し
ないことより、スライダ2の位置姿勢の同次変換行列
[Ts]は、不要となる。すなわち、数4は不要とな
る。また、スライダ2の機械原点Osに設定したツール
ベース座標系Σs及びツール側メカニズムニカルインタ
ーフェイス座標系Σtmは無い。そこで、絶対座標系Σ
worldを基準としたツールベース座標系Σsの位置
姿勢を表す同次変換行列[Zt]は不要であり、ロボッ
ト1の機械原点Omに設定したツール機械座標系Σmと
絶対座標系Σworldとは、一致しているとして取り
扱う。さらに、ポジショナ3が存在しないことにより、
ポジショナ3の位置姿勢の同次変換行列[Tp]は、不
要となる。すなわち、数9は不要となる。ポジショナ3
の機械原点に設定したワークベース座標系Σpおよびワ
ーク側メカニズムニカルインターフェイス座標系Σwm
は無い。そこで、ワーク側メカニズムニカルインターフ
ェイス座標系Σwmを基準としたワーク座標系Σwor
kの位置姿勢を表す同次変換行列[Ew]は不要であ
る。そして、絶対座標系Σworldを基準としたワー
ク座標系Σworkの位置姿勢を示す同次変換行列を、
同次変換行列[Zw]として取り扱う。同次変換行列
[Ts],[Zt],[Tp]および[Ew]は不要と
なるから、ロボットシステムの各構成要素の位置姿勢に
関する数式、すなわち、上記実施例における数11は、
次の数111に置き換える。
The formulas handled in this modified example are basically the same as those in the above-described embodiment, but a description will be given below of the correspondence due to the absence of the components. Since the slider 2 does not exist, the homogeneous transformation matrix [Ts] of the position and orientation of the slider 2 becomes unnecessary. That is, Equation 4 becomes unnecessary. Further, there is no tool base coordinate system Σs and a tool side mechanical interface coordinate system Σtm set at the mechanical origin Os of the slider 2. Therefore, the absolute coordinate system Σ
The homogeneous transformation matrix [Zt] representing the position and orientation of the tool base coordinate system Σs based on the world is unnecessary, and the tool mechanical coordinate system Σm set at the mechanical origin Om of the robot 1 and the absolute coordinate system Σworld are one Treat as having done. Furthermore, since the positioner 3 does not exist,
The homogeneous transformation matrix [Tp] of the position and orientation of the positioner 3 becomes unnecessary. That is, Equation 9 becomes unnecessary. Positioner 3
Base coordinate system Σp and workpiece side mechanical interface coordinate system Σwm
There is no. Therefore, the workpiece coordinate system Σ wor based on the workpiece-side mechanism mechanical interface coordinate system Σ wm
The homogeneous transformation matrix [Ew] representing the position and orientation of k is unnecessary. Then, a homogeneous transformation matrix indicating the position and orientation of the work coordinate system Σwork with respect to the absolute coordinate system Σworld is
Treated as a homogeneous transformation matrix [Zw]. Since the homogeneous transformation matrices [Ts], [Zt], [Tp] and [Ew] are not required, a mathematical expression relating to the position and orientation of each component of the robot system, that is, Equation 11 in the above embodiment is
Replace with the following equation 111.

【数111】 [Tma]・[Et]=[Zw]・[wXt][Tma] · [Et] = [Zw] · [wXt]

【0223】設置誤差ε1を較正する第4の較正処理
(ステップS4)においては、次のように変更される。
まず、較正処理を実施する準備作業として、ポジショナ
3のテーブル平面に相当する円板(図示せず)をワーク
の基準点であるワーク座標系に設置する。そして、較正
処理においては、まず、ステップS610、ステップS
611、ステップS615はスキップし実行しない。そ
して、ステップS618においては、同次変換行列[Z
t]及び同次変換行列[Ew]の読み出しが不要であ
り、ステップS618において算出するロボット1の位
置姿勢を示す同次変換行列[Tma]は上記実施例にお
ける数91から、次の数112に置き換える。この変形
例では、第3の較正処理(ステップS3)は実行しない
ので同次変換行列[Zw]は初期設定と同一である。
In the fourth calibration process (step S4) for calibrating the installation error ε1, the following changes are made.
First, as a preparatory work for performing the calibration process, a disk (not shown) corresponding to the table plane of the positioner 3 is set on a work coordinate system which is a reference point of the work. Then, in the calibration process, first, step S610, step S610
611 and step S615 are skipped and not executed. Then, in step S618, the homogeneous transformation matrix [Z
t] and the homogenous transformation matrix [Ew] are unnecessary, and the homogenous transformation matrix [Tma] indicating the position and orientation of the robot 1 calculated in step S618 is calculated from Expression 91 in the above embodiment to Expression 112 below. replace. In this modification, since the third calibration process (step S3) is not executed, the homogeneous transformation matrix [Zw] is the same as the initial setting.

【数112】 [Tma]=[Zw]・[wXt]・[Et]-1 また、ステップS622においては、数21,数22,
数23によって、予め設定した絶対座標系Σworld
を基準としたワーク座標系Σworkの位置姿勢を示す
同次変換行列[Zw]の姿勢成分αwz,βwz,γw
zを用いて、これらをそれぞれαwz’,βwz’,γ
wz’として取り扱う。そして、絶対座標系Σworl
dを基準としたワーク座標系Σworkの位置姿勢を同
次変換行列[Zw]の位置成分の誤差Δawz,Δbw
z,Δcwzを演算した後、位置成分の較正値aw
z’,bwz’,cwz’を演算する。
[Tma] = [Zw] · [wXt] · [Et] −1 Further , in step S622, Expression 21, Expression 22,
According to Equation 23, the absolute coordinate system Σworld set in advance
Posture components αwz, βwz, γw of the homogeneous transformation matrix [Zw] indicating the position and posture of the workpiece coordinate system Σwork with reference to
Using z, these are represented by αwz ′, βwz ′, and γ, respectively.
Handle as wz '. And the absolute coordinate system @world
The position and orientation of the workpiece coordinate system Σwork with respect to d are determined by the errors Δawz, Δbw of the position components of the homogeneous transformation matrix [Zw].
After calculating z and Δcwz, the calibration value aw of the position component
Compute z ', bwz', and cwz '.

【0224】なお、上記第2又は第3の変形例における
ように第3の較正処理を実行せず第4の較正処理を実行
する場合は、ステップS610において入力データとし
て用いる、絶対座標系を基準としたワークベース座標系
の姿勢成分の較正値はRAM102に格納されているそ
れらの姿勢成分を用いる。
When the fourth calibration process is performed without performing the third calibration process as in the second or third modification, the absolute coordinate system used as input data in step S610 is used as a reference. The posture components stored in the RAM 102 are used as the calibration values of the posture components of the work base coordinate system.

【0225】(5−4)第4の変形例 以上の実施例において、ワーク取扱装置12にポジショ
ナ3を用いているが、本発明はこれに限らず、例えば6
自由度のロボット(図示せず。以下、第2のロボットと
いう。)を用いてもよい。この場合の処理における上記
実施例との相違点について以下に詳述する。ここで、相
違するのは、第1乃至第4の較正処理のうち第3と第4
の較正処理である。
(5-4) Fourth Modification In the above embodiment, the positioner 3 is used for the work handling device 12, but the present invention is not limited to this.
A robot having a degree of freedom (not shown; hereinafter, referred to as a second robot) may be used. Differences in the processing in this case from the above embodiment will be described in detail below. Here, the difference is that the third and fourth calibration processes of the first to fourth calibration processes are different.
Is a calibration process.

【0226】(a)第2のロボットの位置姿勢を示す同
次変換行列[Tp]は次の数113で表される。
(A) The homogeneous transformation matrix [Tp] indicating the position and orientation of the second robot is expressed by the following equation 113.

【数113】 [Tp]=Ap0・Ap1・Ap2・Ap3・Ap4・Ap5・Ap6[Tp] = Ap0 ・ Ap1 ・ Ap2 ・ Ap3 ・ Ap4 ・ Ap5 ・ Ap6

【0227】(b)第3の較正処理のうち角度γwz較
正処理(図34のステップS31)において、ポジショ
ナ3のテーブル平面に相当する円板(図示せず。)を第
2のロボットの先端の把持させる。そして、第2のロボ
ットの設置基準面をワークベース座標系Σpとする。こ
こで、ステップS310においては、上記円板が絶対座
標系ΣworldのX−Y平面に対して90°だけ傾斜
した状態、すなわちαwz=0,βwz=−90°,γ
wz=0に設定し、そのときの当該円板の位置姿勢を示
す同次変換行列[Tp]・[Ew]を予めRAM102
に格納する。次いで、当該同次変換行列[Tp]・[E
w]に基づいて第2のロボットの位置姿勢を示す同次変
換行列[Tp]を演算し、さらに、当該同次変換行列
[Tp]を逆変換することによって第2のロボットの各
関節変数θpk(k=1,2,…,6)を演算し、上記
実施例と同様に第2のロボットを動作させる。
(B) In the angle γwz calibration process (step S31 in FIG. 34) of the third calibration process, a disk (not shown) corresponding to the table plane of the positioner 3 is placed at the tip of the second robot. Let it be gripped. Then, the installation reference plane of the second robot is set to the work base coordinate system Σp. Here, in step S310, the disk is inclined by 90 ° with respect to the XY plane of the absolute coordinate system Σworld, that is, αwz = 0, βwz = −90 °, γ
wz = 0, and a homogeneous transformation matrix [Tp] · [Ew] indicating the position and orientation of the disk at that time is stored in the RAM 102 in advance.
To be stored. Next, the homogeneous transformation matrix [Tp] · [E
w], a homogenous transformation matrix [Tp] indicating the position and orientation of the second robot is calculated, and the homogenous transformation matrix [Tp] is inversely transformed to obtain each joint variable θpk of the second robot. (K = 1, 2,..., 6) and operate the second robot in the same manner as in the above embodiment.

【0228】(c)第3の較正処理のうち角度βwz較
正処理(図35のステップS32)において、ポジショ
ナ3のテーブル平面に相当する円板(図示せず。)を第
2のロボットの先端の把持させる。そして、第2のロボ
ットの設置基準面をワークベース座標系Σpとする。こ
こで、ステップS410においては、上記円板が絶対座
標系ΣworldのX−Y平面と平行となる状態、すな
わちαwz=0,βwz=0,γwz=0に設定し、そ
のときの当該円板の位置姿勢を示す同次変換行列[T
p]・[Ew]を予めRAM102に格納する。次い
で、当該同次変換行列[Tp]・[Ew]に基づいて第
2のロボットの位置姿勢を示す同次変換行列[Tp]を
演算し、さらに、当該同次変換行列[Tp]を逆変換す
ることによって第2のロボットの各関節変数θpk(k
=1,2,…,6)を演算し、上記実施例と同様に第2
のロボットを動作させる。
(C) In the angle βwz calibration process (step S32 in FIG. 35) of the third calibration process, a disk (not shown) corresponding to the table plane of the positioner 3 is placed at the tip of the second robot. Let it be gripped. Then, the installation reference plane of the second robot is set to the work base coordinate system Σp. Here, in step S410, the disk is set in a state of being parallel to the XY plane of the absolute coordinate system Σworld, that is, αwz = 0, βwz = 0, γwz = 0, and the disk at that time is set. Homogeneous transformation matrix [T indicating the position and orientation
p] · [Ew] are stored in the RAM 102 in advance. Next, a homogeneous transformation matrix [Tp] indicating the position and orientation of the second robot is calculated based on the homogeneous transformation matrix [Tp] · [Ew], and the homogeneous transformation matrix [Tp] is inversely transformed. By doing, each joint variable θpk (k
= 1, 2,..., 6), and the second
Operate the robot.

【0229】(d)第3の較正処理のうち角度γwz較
正処理(図35のステップS33)において、ポジショ
ナ3のテーブル平面に相当する円板(図示せず。)を第
2のロボットの先端の把持させる。そして、第2のロボ
ットの設置基準面をワークベース座標系Σpとする。こ
こで、ステップS510においては、上記円板が絶対座
標系ΣworldのX−Y平面と平行となる状態、すな
わちαwz=0,βwz=0,γwz=0に設定し、そ
のときの当該円板の位置姿勢を示す同次変換行列[T
p]・[Ew]を予めRAM102に格納する。次い
で、当該同次変換行列[Tp]・[Ew]に基づいて第
2のロボットの位置姿勢を示す同次変換行列[Tp]を
演算し、さらに、当該同次変換行列[Tp]を逆変換す
ることによって第2のロボットの各関節変数θpk(k
=1,2,…,6)を演算し、上記実施例と同様に第2
のロボットを動作させる。
(D) In the angle γwz calibration process (step S33 in FIG. 35) of the third calibration process, a disk (not shown) corresponding to the table plane of the positioner 3 is placed at the tip of the second robot. Let it be gripped. Then, the installation reference plane of the second robot is set to the work base coordinate system Σp. Here, in step S510, the disk is set to be in a state of being parallel to the XY plane of the absolute coordinate system Σworld, that is, αwz = 0, βwz = 0, γwz = 0, and the disk at that time is set. Homogeneous transformation matrix [T indicating the position and orientation
p] · [Ew] are stored in the RAM 102 in advance. Next, a homogeneous transformation matrix [Tp] indicating the position and orientation of the second robot is calculated based on the homogeneous transformation matrix [Tp] · [Ew], and the homogeneous transformation matrix [Tp] is inversely transformed. By doing, each joint variable θpk (k
= 1, 2,..., 6), and the second
Operate the robot.

【0230】(e)第4の較正処理(図37)におい
て、ポジショナ3のテーブル平面に相当する円板(図示
せず。)を第2のロボットの先端の把持させる。そし
て、第2のロボットの設置基準面をワークベース座標系
Σpとする。ここで、ステップS611においては、上
記円板が絶対座標系ΣworldのX−Y平面と平行と
なる状態に設定し、そのときの当該円板の位置姿勢を示
す同次変換行列[Tp]・[Ew]を予めRAM102
に格納する。次いで、当該同次変換行列[Tp]・[E
w]に基づいて第2のロボットの位置姿勢を示す同次変
換行列[Tp]を演算し、さらに、当該同次変換行列
[Tp]を逆変換することによって第2のロボットの各
関節変数θpk(k=1,2,…,6)を演算し、上記
実施例と同様に第2のロボットを動作させる。
(E) In the fourth calibration process (FIG. 37), a disk (not shown) corresponding to the table plane of the positioner 3 is gripped by the tip of the second robot. Then, the installation reference plane of the second robot is set to the work base coordinate system Σp. Here, in step S611, the disk is set in a state of being parallel to the XY plane of the absolute coordinate system Σworld, and a homogeneous transformation matrix [Tp] · [ Ew] in advance in the RAM 102
To be stored. Next, the homogeneous transformation matrix [Tp] · [E
w], a homogenous transformation matrix [Tp] indicating the position and orientation of the second robot is calculated, and the homogenous transformation matrix [Tp] is inversely transformed to obtain each joint variable θpk of the second robot. (K = 1, 2,..., 6) and operate the second robot in the same manner as in the above embodiment.

【0231】(5−5)第5の変形例 以上の実施例において、図1に示す産業用ロボットシス
テムにおいてスライダ2が、図示した2軸のスライダで
はなく、1軸のスライダの場合には、設置誤差ε3を較
正する第1の較正処理(ステップS1)において、ステ
ップS110からステップS132を実行し、「αe」
と「γe」を算出する。そして、ステップ150以降は
スキップし実行しないことで較正処理が出来る。また、
3軸のスライダの場合には、本実施例に該当する2軸の
みを、本実施例に従って、「αe」と「βe」と「γ
e」とを算出することによって、設置関係の較正ができ
る。
(5-5) Fifth Modification In the above embodiment, if the slider 2 in the industrial robot system shown in FIG. 1 is a one-axis slider instead of the two-axis slider shown in FIG. In the first calibration process (step S1) for calibrating the installation error ε3, steps S110 to S132 are executed, and “αe”
And “γe” are calculated. Then, the calibration process can be performed by skipping step 150 and thereafter and not executing it. Also,
In the case of a three-axis slider, only two axes corresponding to the present embodiment are set to “αe”, “βe”, and “γ” according to the present embodiment.
By calculating “e”, the installation relation can be calibrated.

【0232】[0232]

【発明の効果】以上詳述したように本発明によれば、所
定の作業を行うツールと、上記ツールを移動させる第1
の関節手段とを含むツール移動装置と、被作業物である
ワークと、上記ワークを移動させる第2の関節手段とを
含むワーク取扱装置とを備えた産業用ロボットシステム
の設置誤差較正方法又は装置であって、上記ツールの位
置が上記ワークに設定されたワークベース座標系の原点
となるように上記第1の関節手段を制御して、上記第1
の関節手段の制御の前後における上記ツールの先端と、
上記ワークベース座標系の原点にその1頂点が一致する
ように載置された直方体のブロックとの間の各距離を測
定し、上記測定された各距離に基づいて、所定の絶対座
標系を基準とした上記ワークベース座標系の位置の誤差
を演算し、上記演算した誤差に基づいて絶対座標系を基
準とした上記ワークベース座標系の位置を較正する。次
いで、上記ツールの位置を所定の第1の位置から所定の
第2の位置に移動させるように上記第2の関節手段を制
御して、上記第2の関節手段の制御の前後における上記
ツールの先端と上記第2の関節手段との間の各距離を測
定し、上記測定された各距離に基づいて、上記ツールの
ずれ量を演算しかつ上記絶対座標系を基準とした上記ワ
ークベース座標系の位置姿勢の誤差を演算し、上記演算
した誤差に基づいて上記絶対座標系を基準とした上記ワ
ークベース座標系の位置姿勢を較正する。従って、当該
較正処理を上記産業用ロボットシステムの設置直後に実
行することによって、設置誤差を無くし、これによっ
て、教示作業後に実行する再生作業を実行するときに、
教示作業で指示された作業内容と実質的に同一の作業内
容を実現することができ、ツールとワークの相対的な位
置と速度の精度を向上させることができる。これによ
り、例えば「ワークとツールとの間で所望の相対速度を
実現できない」という上述の問題点を解決することがで
きる。
As described above, according to the present invention, a tool for performing a predetermined operation and a first tool for moving the tool are provided.
A method or apparatus for calibrating an installation error of an industrial robot system including a tool moving device including a joint means, a work as a work, and a work handling apparatus including a second joint means for moving the work. Controlling the first joint means so that the position of the tool becomes the origin of the work base coordinate system set for the work;
The tip of the tool before and after the control of the joint means of
Measure each distance between a rectangular parallelepiped block placed so that one vertex coincides with the origin of the work base coordinate system, and, based on the measured distances, refer to a predetermined absolute coordinate system. The position error of the work base coordinate system is calculated based on the calculated error, and the position of the work base coordinate system based on the absolute coordinate system is calibrated based on the calculated error. Next, controlling the second joint means so as to move the position of the tool from a predetermined first position to a predetermined second position, and controlling the tool before and after the control of the second joint means The distance between the tip and the second joint means is measured, the displacement of the tool is calculated based on the measured distance, and the work base coordinate system based on the absolute coordinate system is used as a reference. Is calculated, and based on the calculated error, the position and orientation of the work base coordinate system with respect to the absolute coordinate system is calibrated. Therefore, by executing the calibration process immediately after the installation of the industrial robot system, the installation error is eliminated, and thus, when performing the reproduction operation performed after the teaching operation,
Work contents substantially the same as the work contents instructed in the teaching work can be realized, and the accuracy of the relative position and speed of the tool and the work can be improved. Thereby, for example, the above-described problem that a desired relative speed cannot be realized between the workpiece and the tool can be solved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明に係る一実施例である産業用ロボット
システムとその設置誤差較正制御装置を示す斜視図であ
る。
FIG. 1 is a perspective view illustrating an industrial robot system according to an embodiment of the present invention and an installation error calibration control device thereof.

【図2】 図1の産業用ロボットシステムの各装置にお
けるリンク及び関節を示す機構図である。
FIG. 2 is a mechanism diagram showing links and joints in each device of the industrial robot system of FIG. 1;

【図3】 図1の較正制御装置のブロック図である。FIG. 3 is a block diagram of the calibration control device of FIG. 1;

【図4】 図1の産業用ロボットシステムの各装置(ス
ライダを除く。)における各関節の構成を示す斜視図、
並びに較正制御装置内のサーボ制御回路のブロック図で
ある。
FIG. 4 is a perspective view showing a configuration of each joint in each device (excluding a slider) of the industrial robot system of FIG. 1;
FIG. 3 is a block diagram of a servo control circuit in the calibration control device.

【図5】 図1の実施例の産業用ロボットシステムの各
設置誤差を示す模式図である。
FIG. 5 is a schematic diagram showing installation errors of the industrial robot system according to the embodiment of FIG. 1;

【図6】 (a)は第1の変形例の産業用ロボットシス
テムの各設置誤差を示す模式図であり、(b)は第2の
変形例の産業用ロボットシステムの各設置誤差を示す模
式図であり、(c)は第3の変形例の産業用ロボットシ
ステムの各設置誤差を示す模式図である。
FIG. 6A is a schematic diagram showing each installation error of the industrial robot system according to the first modification, and FIG. 6B is a schematic diagram showing each installation error of the industrial robot system according to the second modification. It is a figure and (c) is a schematic diagram which shows each installation error of the industrial robot system of the 3rd modification.

【図7】 図1の産業用ロボットシステムに設けられた
各座標系の関連を示す平面図である。
FIG. 7 is a plan view showing the relation of each coordinate system provided in the industrial robot system of FIG.

【図8】 図1の産業用ロボットシステムに設けられた
各座標系の関連を示す正面図である。
FIG. 8 is a front view showing a relation between respective coordinate systems provided in the industrial robot system of FIG. 1;

【図9】 図1の産業用ロボットシステムに設けられた
各座標系の関連を示す側面図である。
FIG. 9 is a side view showing the relationship between respective coordinate systems provided in the industrial robot system of FIG. 1;

【図10】 図1の産業用ロボットシステムに設けられ
た各座標系において各設置誤差を示す平面図である。
10 is a plan view showing each installation error in each coordinate system provided in the industrial robot system of FIG.

【図11】 図1の産業用ロボットシステムに設けられ
た各座標系において各設置誤差を示す正面図である。
11 is a front view showing each installation error in each coordinate system provided in the industrial robot system of FIG.

【図12】 図1の産業用ロボットシステムに設けられ
た各座標系において各設置誤差を示す側面図である。
12 is a side view showing each installation error in each coordinate system provided in the industrial robot system of FIG.

【図13】 図1の産業用ロボットシステムにおいて第
1の較正処理を実行するときにロボットをスライダの第
1軸L11に沿って所定の距離DL1だけ移動させたと
きの装置構成を示す斜視図である。
FIG. 13 is a perspective view showing an apparatus configuration when the robot is moved by a predetermined distance DL1 along the first axis L11 of the slider when performing the first calibration process in the industrial robot system of FIG. 1; is there.

【図14】 図1の産業用ロボットシステムにおいて第
1の較正処理を実行するときにロボットをスライダの第
1軸L11に沿って所定の距離DL1だけ移動させたと
きのブロックBK1付近の装置構成を示す平面図であ
る。
FIG. 14 is a diagram illustrating an apparatus configuration near a block BK1 when the robot is moved along a first axis L11 of a slider by a predetermined distance DL1 when executing the first calibration process in the industrial robot system of FIG. FIG.

【図15】 図1の産業用ロボットシステムにおいて第
1の較正処理を実行するときにロボットをスライダの第
2軸L12に沿って所定の距離DL2だけ移動させたと
きの装置構成を示す斜視図である。
15 is a perspective view showing an apparatus configuration when the robot is moved by a predetermined distance DL2 along the second axis L12 of the slider when performing the first calibration process in the industrial robot system of FIG. 1; is there.

【図16】 図1の産業用ロボットシステムにおいて第
1の較正処理を実行するときにロボットをスライダの第
2軸L12に沿って所定の距離DL2だけ移動させたと
きのブロックBK1付近の装置構成を示す平面図であ
る。
FIG. 16 shows an apparatus configuration near the block BK1 when the robot is moved by a predetermined distance DL2 along the second axis L12 of the slider when performing the first calibration process in the industrial robot system of FIG. FIG.

【図17】 図1の産業用ロボットシステムにおいて第
2の較正処理を実行するときの設置誤差を示す平面図で
ある。
FIG. 17 is a plan view showing an installation error when executing a second calibration process in the industrial robot system of FIG. 1;

【図18】 図1の産業用ロボットシステムにおいて第
2の較正処理を実行するときの距離センサとブロックB
K1との位置関係を示す斜視図である。
FIG. 18 is a block diagram showing a distance sensor and a block B when a second calibration process is performed in the industrial robot system of FIG. 1;
It is a perspective view which shows the positional relationship with K1.

【図19】 図1の産業用ロボットシステムにおいて第
2の較正処理を実行するときの距離センサとブロックB
K1との位置関係を示す平面図である。
FIG. 19 is a block diagram showing a distance sensor and a block B when a second calibration process is performed in the industrial robot system of FIG. 1;
It is a top view which shows the positional relationship with K1.

【図20】 図1の産業用ロボットシステムにおいて第
3の較正処理のうちの角度γwz較正処理を実行すると
きの設置誤差を示す正面図である。
20 is a front view showing an installation error when executing the angle γwz calibration process of the third calibration process in the industrial robot system of FIG. 1;

【図21】 図1の産業用ロボットシステムにおいて第
3の較正処理のうちの角度βwz較正処理を実行すると
きの設置誤差を示す正面図である。
FIG. 21 is a front view showing an installation error when performing the angle βwz calibration process of the third calibration process in the industrial robot system of FIG. 1;

【図22】 図1の産業用ロボットシステムにおいて第
3の較正処理のうちの角度αwz較正処理を実行すると
きの設置誤差を示す正面図である。
FIG. 22 is a front view showing an installation error when executing the angle αwz calibration process of the third calibration process in the industrial robot system of FIG. 1;

【図23】 (a)は図1の産業用ロボットシステムに
おいて第4の較正処理を実行するときの設置誤差を示す
平面図であり、(b)はその正面図である。
23A is a plan view showing an installation error when a fourth calibration process is performed in the industrial robot system of FIG. 1, and FIG. 23B is a front view thereof.

【図24】 図1の産業用ロボットシステムにおいて第
4の較正処理を実行するときの設置誤差を示す側面図で
ある。
FIG. 24 is a side view showing an installation error when performing a fourth calibration process in the industrial robot system of FIG. 1;

【図25】 (a)は図1の産業用ロボットシステムに
おいて第4の較正処理を実行するときの距離せンサの配
置を示す平面図であり、(b)はその正面図であり、
(c)はその側面図である。
25A is a plan view showing an arrangement of distance sensors when a fourth calibration process is performed in the industrial robot system of FIG. 1, and FIG. 25B is a front view thereof.
(C) is a side view thereof.

【図26】 図1の実施例の較正制御装置において実行
される設置誤差較正処理のメインルーチンである。
FIG. 26 is a main routine of an installation error calibration process executed in the calibration control device according to the embodiment of FIG. 1;

【図27】 第1の変形例の較正制御装置において実行
される設置誤差較正処理のメインルーチンである。
FIG. 27 is a main routine of an installation error calibration process executed in the calibration control device of the first modified example.

【図28】 第2の変形例の較正制御装置において実行
される設置誤差較正処理のメインルーチンである。
FIG. 28 is a main routine of an installation error calibration process executed in the calibration control device of the second modified example.

【図29】 第3の変形例の較正制御装置において実行
される設置誤差較正処理のメインルーチンである。
FIG. 29 is a main routine of an installation error calibration process executed in the calibration control device of the third modified example.

【図30】 図26及び図28の第1の較正処理(ステ
ップS1)の第1の部分を示すフローチャートである。
FIG. 30 is a flowchart showing a first part of the first calibration process (step S1) in FIGS. 26 and 28.

【図31】 図26及び図28の第1の較正処理(ステ
ップS1)の第2の部分を示すフローチャートである。
FIG. 31 is a flowchart showing a second part of the first calibration process (step S1) in FIGS. 26 and 28.

【図32】 図26及び図28の第2の較正処理(ステ
ップS2)を示すフローチャートである。
FIG. 32 is a flowchart showing a second calibration process (step S2) in FIGS. 26 and 28.

【図33】 図26及び図27の第3の較正処理(ステ
ップS3)を示すフローチャートである。
FIG. 33 is a flowchart showing a third calibration process (step S3) in FIGS. 26 and 27.

【図34】 図33の角度γwz較正処理(ステップS
31)を示すフローチャートである。
FIG. 34 shows the angle γwz calibration process of FIG. 33 (step S).
It is a flowchart which shows 31).

【図35】 図33の角度βwz較正処理(ステップS
32)を示すフローチャートである。
FIG. 35 shows an angle βwz calibration process of FIG. 33 (step S
It is a flowchart which shows 32).

【図36】 図33の角度αwz較正処理(ステップS
33)を示すフローチャートである。
FIG. 36 shows an angle αwz calibration process shown in FIG. 33 (step S
It is a flowchart which shows 33).

【図37】 図26、図27、図28及び図29の第4
の較正処理(ステップS4)を示すフローチャートであ
る。
FIG. 37 is a fourth view of FIGS. 26, 27, 28 and 29;
9 is a flowchart showing a calibration process (step S4).

【符号の説明】[Explanation of symbols]

1…ロボットマニピュレータ(ロボット)、 2…スライダ、 3…ポジショナ、 4…ツール、 5…較正制御装置、 11…ツール移動装置、 12…ワーク取扱装置、 20…ティーチングボックス、 21…操作ボックス、 100…CPU、 101…ROM、 102…RAM、 103…インターフェース、 104…デュアルポートRAM、 105…ラッチ回路、 106,107,108…サーボ制御回路、 110…クロック発生器、 111…分周器、 RJ1乃至RJ6、RJ11乃至RJ13,RJ21乃
至RJ23……関節、 L1乃至L6、L11乃至L13,L21乃至L23…
リンク、 MO1乃至M10…モータ、 SN1乃至SN10…センサ、 RE1乃至RE10…減速機、 J1,J2,J3…治具、 ε1,ε2,ε3,ε4…設置誤差、 Δαtz,Δβtz,Δγtz,Δθs3,Δαwz,
Δβwz,Δγwz…ねじれ角度、 [Zt]…絶対座標系を基準としたツールベース座標系
の位置姿勢を示す同次変換行列、 [Zt’],[Zt’’]…絶対座標系を基準としたツ
ールベース座標系の位置姿勢を示す同次変換行列の較正
値、 [Zw]…絶対座標系を基準としたワークベース座標系
の位置姿勢を示す同次変換行列、 [Zw’],[Zw’’],[Zw’’’],[Z
w’’’’]…絶対座標系を基準としたワークベース座
標系の位置姿勢を示す同次変換行列の較正値、 BK1,BK2…直方体のブロック、 SS1,SS2,SS3…距離センサ、 Otool…ツールの先端。
DESCRIPTION OF SYMBOLS 1 ... Robot manipulator (robot), 2 ... Slider, 3 ... Positioner, 4 ... Tool, 5 ... Calibration control device, 11 ... Tool moving device, 12 ... Work handling device, 20 ... Teaching box, 21 ... Operation box, 100 ... CPU, 101 ROM, 102 RAM, 103 interface, 104 dual port RAM, 105 latch circuit, 106, 107, 108 servo control circuit, 110 clock generator, 111 frequency divider, RJ1 to RJ6 , RJ11 to RJ13, RJ21 to RJ23 ... joints, L1 to L6, L11 to L13, L21 to L23 ...
Link, MO1 to M10: Motor, SN1 to SN10: Sensor, RE1 to RE10: Reduction gear, J1, J2, J3: Jig, ε1, ε2, ε3, ε4: Installation error, Δαtz, Δβtz, Δγtz, Δθs3, Δαwz ,
Δβwz, Δγwz: twist angle, [Zt]: homogeneous transformation matrix indicating the position and orientation of the tool base coordinate system based on the absolute coordinate system, [Zt ′], [Zt ″]… based on the absolute coordinate system A calibration value of a homogeneous transformation matrix indicating the position and orientation of the tool base coordinate system, [Zw] ... a homogeneous transformation matrix indicating the position and orientation of the work base coordinate system with reference to the absolute coordinate system, [Zw '], [Zw''],[Zw'''], [Z
w '''']... Calibration values of a homogeneous transformation matrix indicating the position and orientation of the work base coordinate system with reference to the absolute coordinate system, BK1, BK2... cuboid blocks, SS1, SS2, SS3. Tool tip.

フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G05B 19/18 - 19/46 B25J 3/00 - 3/04 B25J 9/10 - 9/22 B25J 13/00 - 13/08 B25J 19/02 - 19/06 Continued on the front page (58) Fields surveyed (Int. Cl. 7 , DB name) G05B 19/18-19/46 B25J 3/00-3/04 B25J 9/10-9/22 B25J 13/00-13 / 08 B25J 19/02-19/06

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 所定の作業を行うツールと、上記ツール
を移動させる第1の関節手段とを含むツール移動装置
と、 被作業物であるワークと、上記ワークを移動させる第2
の関節手段とを含むワーク取扱装置とを備えた産業用ロ
ボットシステムの設置誤差較正方法であって、 上記ツールの位置が上記ワークに設定されたワークベー
ス座標系の原点となるように上記第1の関節手段を制御
して、上記第1の関節手段の制御の前後における上記ツ
ールの先端と、上記ワークベース座標系の原点にその1
頂点が一致するように載置された直方体のブロックとの
間の各距離を測定する第1のステップと、 上記第1のステップにおいて測定された各距離に基づい
て、所定の絶対座標系を基準とした上記ワークベース座
標系の位置の誤差を演算し、上記演算した誤差に基づい
て絶対座標系を基準とした上記ワークベース座標系の位
置を較正する第2のステップと、 上記ツールの位置を所定の第1の位置から所定の第2の
位置に移動させるように上記第2の関節手段を制御し
て、上記第2の関節手段の制御の前後における上記ツー
ルの先端と上記第2の関節手段との間の各距離を測定す
る第3のステップと、 上記第3のステップにおいて測定された各距離に基づい
て、上記ツールのずれ量を演算しかつ上記絶対座標系を
基準とした上記ワークベース座標系の位置姿勢の誤差を
演算し、上記演算した誤差に基づいて上記絶対座標系を
基準とした上記ワークベース座標系の位置姿勢を較正す
る第4のステップとを含むことを特徴とする産業用ロボ
ットシステムの設置誤差較正方法。
1. A tool moving device including a tool for performing a predetermined work, a first joint means for moving the tool, a work to be worked, and a second for moving the work.
A method for calibrating an installation error of an industrial robot system comprising a work handling device including a joint means of the first and second means, wherein the position of the tool becomes the origin of a work base coordinate system set on the work. Of the tool before and after the control of the first joint means and the origin of the work base coordinate system.
A first step of measuring each distance between a rectangular parallelepiped block placed so that the vertices coincide with each other; and a reference to a predetermined absolute coordinate system based on each distance measured in the first step. Calculating a position error of the work base coordinate system, and calibrating the position of the work base coordinate system based on the absolute coordinate system based on the calculated error; The second joint means is controlled so as to move from a predetermined first position to a predetermined second position, and the tip of the tool and the second joint before and after the control of the second joint means are controlled. A third step of measuring each distance between the first and second means, and calculating the amount of displacement of the tool based on each of the distances measured in the third step, and calculating the displacement of the tool based on the absolute coordinate system Base seat Calculating a position and orientation error of the system, and calibrating the position and orientation of the work base coordinate system based on the absolute coordinate system based on the calculated error. How to calibrate the installation error of the robot system.
【請求項2】 上記ツール移動装置は、上記第1の関節
手段を所定の軸方向に沿って移動させる第3の関節手段
をさらに含み、上記設置誤差較正方法はさらに、 上記第1の関節手段を上記所定の軸方向に沿って所定の
第3の位置から所定の第4の位置に移動させるように上
記第3の関節手段を制御して、上記ツールの先端に治具
を介して設けられた距離測定手段を用いて、上記第3の
関節手段の制御の前後におけるその各面が上記絶対座標
系の各軸方向に平行となるように載置された直方体のブ
ロックの各面との各距離を測定する第5のステップと、 上記第5のステップにおいて測定された各距離に基づい
て、上記絶対座標系を基準とした上記ツールに設定され
たツールベース座標系の位置姿勢のねじれ角度を演算
し、上記演算したねじれ角度に基づいて上記絶対座標系
を基準とした上記ツールに設定されたツールベース座標
系の位置姿勢を較正する第6のステップと、 上記ワークを基準とした上記ツールの位置姿勢を一定と
する条件のもとで、上記第1の関節手段を上記所定の軸
方向に沿って所定の第5の位置から所定の第6の位置に
移動させるように上記第1の関節手段と上記第3の関節
手段とを制御して、上記第1の関節手段と上記第3の関
節手段の制御の前後における上記ツールの先端と所定の
固体位置との間の各距離を測定する第7のステップと、 上記第7のステップにおいて測定された各距離に基づい
て、上記第3の関節手段の上記所定の軸方向に対する上
記ツールベース座標系のねじれ角度を演算し、上記演算
したねじれ角度に基づいて上記第3の関節手段の上記所
定の軸方向に対する上記ツールベース座標系のねじれ角
度を較正する第8のステップとを含むことを特徴とする
請求項1記載の産業用ロボットシステムの設置誤差較正
方法。
2. The tool moving device further includes third joint means for moving the first joint means along a predetermined axial direction, and the installation error calibrating method further comprises: the first joint means. Is controlled via a jig at the tip of the tool by controlling the third joint means to move the third joint means from a third predetermined position to a fourth predetermined position along the predetermined axial direction. Using the distance measuring means, each surface of the rectangular parallelepiped block placed before and after the control of the third joint means is placed so as to be parallel to each axial direction of the absolute coordinate system. A fifth step of measuring a distance, and a torsion angle of a position and orientation of a tool base coordinate system set in the tool based on the absolute coordinate system based on each distance measured in the fifth step. Calculated, and the torsional angle calculated above A sixth step of calibrating the position and orientation of the tool base coordinate system set in the tool based on the absolute coordinate system based on the above condition; Originally, the first joint means and the third joint means move the first joint means from a predetermined fifth position to a predetermined sixth position along the predetermined axial direction. A seventh step of measuring each distance between the tip of the tool and a predetermined solid position before and after the control of the first joint means and the third joint means; The torsion angle of the tool base coordinate system with respect to the predetermined axial direction of the third joint means is calculated based on each distance measured in step 7, and the third torsion angle is calculated based on the calculated torsion angle. Above place of joint means And calibrating the torsion angle of the tool base coordinate system with respect to a fixed axis direction.
【請求項3】 所定の作業を行うツールと、上記ツール
を移動させる第1の関節手段とを含むツール移動装置
と、 被作業物であるワークと、上記ワークを移動させる第2
の関節手段とを含むワーク取扱装置とを備えた産業用ロ
ボットシステムにおいて、 上記ツールの位置が上記ワークに設定されたワークベー
ス座標系の原点となるように上記第1の関節手段を制御
する第1の制御手段と、 上記第1の関節手段の先端に設けられ、上記第1の制御
手段の動作の前後における上記ツールの先端と上記ワー
クベース座標系の原点にその1頂点が一致するように載
置された直方体のブロックとの間の各距離を測定する第
1の測定手段と、 上記第1の測定手段によって測定された各距離に基づい
て、所定の絶対座標系を基準とした上記ワークベース座
標系の位置の誤差を演算し、上記演算した誤差に基づい
て絶対座標系を基準とした上記ワークベース座標系の位
置を較正する第1の較正手段と、 上記ツールの位置を所定の第1の位置から所定の第2の
位置に移動させるように上記第2の関節手段を制御する
第2の制御手段と、 上記第1の関節手段の先端に設けられ、上記第2の制御
手段の動作の前後における上記ツールの先端と上記第2
の関節手段との間の各距離を測定する第2の測定手段
と、 上記第2の測定手段によって測定された各距離に基づい
て、上記ツールのずれ量を演算しかつ所定の絶対座標系
を基準とした上記ワークベース座標系の位置姿勢の誤差
を演算し、上記演算した誤差に基づいて上記絶対座標系
を基準とした上記ワークベース座標系の位置姿勢を較正
する第2の較正手段とを備えたことを特徴とする産業用
ロボットシステムの設置誤差較正制御装置。
3. A tool moving device including a tool for performing a predetermined work, a first joint means for moving the tool, a work to be worked, and a second for moving the work.
An industrial robot system comprising: a work handling device including: a joint means for controlling the first joint means so that the position of the tool becomes an origin of a work base coordinate system set for the work. 1 control means, provided at the tip of the first joint means, so that one vertex of the tip of the tool coincides with the origin of the work base coordinate system before and after the operation of the first control means. First measuring means for measuring each distance between the placed rectangular parallelepiped block, and the work based on a predetermined absolute coordinate system based on each distance measured by the first measuring means. First calibration means for calculating an error of the position of the base coordinate system, and for calibrating the position of the work base coordinate system with reference to the absolute coordinate system based on the calculated error; A second control means for controlling the second joint means so as to move the first joint means from the first position to a predetermined second position; and a second control means provided at a tip of the first joint means. The tip of the tool and the second
A second measuring means for measuring each distance between the joint means, and calculating a displacement amount of the tool based on each distance measured by the second measuring means, and calculating a predetermined absolute coordinate system. Second calibration means for calculating an error of the position and orientation of the work base coordinate system as a reference, and calibrating the position and orientation of the work base coordinate system with the absolute coordinate system as a reference based on the calculated error. An installation error calibration control device for an industrial robot system, comprising:
【請求項4】 上記ツール移動装置は、上記第1の関節
手段を所定の軸方向に沿って移動させる第3の関節手段
をさらに含み、上記設置誤差較正制御装置はさらに、 上記第1の関節手段を上記所定の軸方向に沿って所定の
第3の位置から所定の第4の位置に移動させるように上
記第3の関節手段を制御する第3の制御手段と、 上記ツールの先端に治具を介して設けられ、上記第3の
関節手段の制御の前後におけるその各面が上記絶対座標
系の各軸方向に平行となるように載置された直方体のブ
ロックの各面との各距離を測定する第3の測定手段と、 上記第3の測定手段によって測定された各距離に基づい
て、上記絶対座標系を基準とした上記ツールに設定され
たツールベース座標系の位置姿勢のねじれ角度を演算
し、上記演算したねじれ角度に基づいて上記絶対座標系
を基準とした上記ツールに設定されたツールベース座標
系の位置姿勢を較正する第3の較正手段と、 上記ワークを基準とした上記ツールの位置姿勢を一定と
する条件のもとで、上記第1の関節手段を上記所定の軸
方向に沿って所定の第5の位置から所定の第6の位置に
移動させるように上記第1の関節手段と上記第3の関節
手段とを制御する第4の制御手段と、 上記ツールの先端と所定の固体位置との間の各距離を測
定する第4の測定手段と、 上記第4の測定手段によって測定された各距離に基づい
て、上記第3の関節手段の上記所定の軸方向に対する上
記ツールベース座標系のねじれ角度を演算し、上記演算
したねじれ角度に基づいて上記第3の関節手段の上記所
定の軸方向に対する上記ツールベース座標系のねじれ角
度を較正する第4の較正手段とを備えたことを特徴とす
る請求項3記載の産業用ロボットシステムの設置誤差較
正制御装置。
4. The tool moving device further includes third joint means for moving the first joint means along a predetermined axial direction, and the installation error calibration control device further comprises: the first joint means. Third control means for controlling the third joint means to move the means from a third predetermined position to a fourth predetermined position along the predetermined axial direction; And distances from the respective surfaces of the rectangular parallelepiped block placed before and after the control of the third joint means so that the respective surfaces are parallel to the respective axial directions of the absolute coordinate system. And a torsion angle of a position and orientation of a tool base coordinate system set in the tool based on the absolute coordinate system based on each distance measured by the third measurement means. And the torsion angle calculated above Third calibration means for calibrating the position and orientation of the tool base coordinate system set in the tool with reference to the absolute coordinate system based on the condition, and the condition for keeping the position and orientation of the tool constant with respect to the workpiece The first joint means and the third joint so as to move the first joint means from a predetermined fifth position to a predetermined sixth position along the predetermined axial direction. A fourth control means for controlling the means, a fourth measuring means for measuring each distance between the tip of the tool and a predetermined solid position, and a fourth measuring means for measuring each distance measured by the fourth measuring means. Calculating a torsion angle of the tool base coordinate system with respect to the predetermined axial direction of the third joint means, based on the calculated torsion angle, based on the calculated torsion angle. Tool-based coordinate system Placement error calibration control device of the fourth industrial robot system according to claim 3, characterized in that a calibration means for calibrating the angle Gillet.
JP08993693A 1993-04-16 1993-04-16 Installation error calibration method and calibration control device for industrial robot system Expired - Lifetime JP3263175B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP08993693A JP3263175B2 (en) 1993-04-16 1993-04-16 Installation error calibration method and calibration control device for industrial robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08993693A JP3263175B2 (en) 1993-04-16 1993-04-16 Installation error calibration method and calibration control device for industrial robot system

Publications (2)

Publication Number Publication Date
JPH06301411A JPH06301411A (en) 1994-10-28
JP3263175B2 true JP3263175B2 (en) 2002-03-04

Family

ID=13984590

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08993693A Expired - Lifetime JP3263175B2 (en) 1993-04-16 1993-04-16 Installation error calibration method and calibration control device for industrial robot system

Country Status (1)

Country Link
JP (1) JP3263175B2 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005230918A (en) * 2004-02-04 2005-09-02 Janome Sewing Mach Co Ltd Robot
EP1886771B1 (en) 2006-05-31 2011-04-06 Panasonic Corporation Rotation center point calculating method, rotation axis calculating method, program creating method, operation method, and robot apparatus
KR100785477B1 (en) * 2006-10-20 2007-12-13 삼성중공업 주식회사 Calibration method for pipe auto-alignment apparatus
JP4865592B2 (en) * 2007-02-26 2012-02-01 株式会社神戸製鋼所 Industrial robot
JP5399624B2 (en) * 2007-10-22 2014-01-29 オークマ株式会社 Numerical control method and numerical control device
ES2346030B1 (en) * 2009-03-30 2011-06-15 Alberto Gonzalo Carracedo PROCEDURE FOR SEALING WATER ROADS AND REPAIR OF THE BOARDS AND FISURATION IN DAMS AND THE FOUNDATION ROCK, WITHOUT NEED TO UNPACK AND WITHOUT SUSPENDING THE EXPLOITATION. AND REPAIR OF JOINTS AND CRACKS IN DAMS.
JP5351083B2 (en) * 2010-03-11 2013-11-27 新明和工業株式会社 Teaching point correction apparatus and teaching point correction method
JP6091826B2 (en) * 2012-09-25 2017-03-08 三菱重工業株式会社 Processing device control device, processing device, and processing data correction method
KR101888465B1 (en) * 2017-12-06 2018-08-16 김진식 Teacning system for cnc machine tool
CN112643665B (en) * 2019-10-10 2023-04-07 北京京东乾石科技有限公司 Calibration method and device for installation error of absolute pose sensor
CN112873204B (en) * 2021-01-13 2022-08-05 深圳瀚维智能医疗科技有限公司 Robot calibration method, device, equipment and computer readable storage medium
CN114102595B (en) * 2021-11-29 2023-10-27 苏州艾利特机器人有限公司 Robot calibration method, calibration assembly and storage medium
CN114434445A (en) * 2022-01-26 2022-05-06 深圳市越疆科技有限公司 Mechanical arm installation angle calibration method and device, installation control device and medium
CN117226857B (en) * 2023-11-15 2024-01-26 北京集度科技有限公司 Calibration method, calibration device and medium for robot tool coordinate origin

Also Published As

Publication number Publication date
JPH06301411A (en) 1994-10-28

Similar Documents

Publication Publication Date Title
EP0523889B1 (en) Apparatus for controlling industrial robot to perform coordinated operation using teaching playback method and method thereof
JP3263175B2 (en) Installation error calibration method and calibration control device for industrial robot system
JPH079606B2 (en) Robot controller
JPH065486B2 (en) Robot trajectory control method
EP1886771B1 (en) Rotation center point calculating method, rotation axis calculating method, program creating method, operation method, and robot apparatus
EP0411139A1 (en) Positioning correction for robots
JPH06131032A (en) Robot device and teaching method for robot device
JP4230196B2 (en) Positioning calculation method and positioning calculation apparatus
JPS62199383A (en) Control system of robot
JPH0446714B2 (en)
JPH11191005A (en) Robot control unit
JPS62148173A (en) Method of adjusting origin of joint type robot
JPH1190868A (en) Robot control device
JP2020097101A (en) Robot device, robot system, robot device control method, method of manufacturing article using robot device, control program, and recording medium
JP3295247B2 (en) Control device for manipulator for panel vendor
JP3098618B2 (en) Control method and control device for industrial robot system
JP2811177B2 (en) Position correction method for articulated robots
JPH06297362A (en) Method and device for correcting robot position
JP2692043B2 (en) How to create robot teaching data
JPH0732281A (en) Robot control device
JP2022181810A (en) robot system
JP2000020120A (en) Teaching system for robot
JPH09128026A (en) Robot operating program conversion system and executing device therefor
JP3523299B2 (en) Control method and control device for industrial robot system
JPS61250705A (en) Coordinate conversion system for industrial robot

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071221

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20081221

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20091221

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20091221

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20101221

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20111221

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20121221

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20121221

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20131221

Year of fee payment: 12

EXPY Cancellation because of completion of term