JP7227012B2 - Control device for articulated robot - Google Patents
Control device for articulated robot Download PDFInfo
- Publication number
- JP7227012B2 JP7227012B2 JP2019002684A JP2019002684A JP7227012B2 JP 7227012 B2 JP7227012 B2 JP 7227012B2 JP 2019002684 A JP2019002684 A JP 2019002684A JP 2019002684 A JP2019002684 A JP 2019002684A JP 7227012 B2 JP7227012 B2 JP 7227012B2
- Authority
- JP
- Japan
- Prior art keywords
- displacement
- arm
- correction
- movable
- force
- 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.)
- Active
Links
Images
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
Description
本発明は多関節ロボットの制御装置に関する。 The present invention relates to a controller for an articulated robot.
従来、ロボットのアームの先端部に保持されたツールをワークに押し当てながら作業を行うロボットを制御する際に、ツールに作用する反力によってツールとワークとの間に生ずる滑り量を補正する多関節ロボットの制御装置が知られている(例えば、特許文献1参照。)。
Conventionally, when controlling a robot that performs work while pressing a tool held at the end of a robot arm against a workpiece, the counterforce acting on the tool compensates for the amount of slippage between the tool and the workpiece. A control device for an articulated robot is known (see
ロボットに外力が作用すると、アームや減速機などが変形し、ロボットの先端位置が変化する。前記制御装置では、外力によって生じるロボットの先端変位をバネモデルを用いて算出し、その結果を用いてロボットの位置を補正することでツールとワークの間に生じる滑りを抑制している。前記制御装置で用いているバネモデルでは、各可動軸に対して、姿勢に依存しないバネ定数を定義している。このバネ定数は、例えば、ある特定のロボット姿勢における外力と先端変位の関係から実験的に決定される。しかし、このような簡易的なバネモデルでは、すべての姿勢で精度よく先端変位を求められない。つまり、姿勢によっては推定された先端変位と実際の先端変位にずれが生じる。 When an external force acts on the robot, the arm, speed reducer, etc. are deformed, and the tip position of the robot changes. The control device uses a spring model to calculate the tip displacement of the robot caused by an external force, and corrects the position of the robot using the result to suppress slippage between the tool and the workpiece. In the spring model used in the control device, a spring constant independent of posture is defined for each movable axis. This spring constant is experimentally determined, for example, from the relationship between external force and tip displacement in a specific robot posture. However, with such a simple spring model, it is not possible to accurately obtain the tip displacement in all postures. In other words, depending on the posture, a deviation occurs between the estimated tip displacement and the actual tip displacement.
前記バネモデルで求めた先端変位と実際の先端変位のずれは、外力モーメントと各可動軸の回転軸ベクトルとの成す角に依存して変化することが実験的にわかっている。例えば、当該当角が0°のときに理論値とのずれが小さくなるようなバネ定数を用いた場合、当該当角が大きくなるほど、実際の先端変位量は前記バネモデルで求めた先端変位量より小さくなる。逆に、当該当角が0°から外れたときに理論値とのずれが小さくなるようなバネ定数を用いた場合、当該当角が0°に近づくほど、実際の先端変位量は前記バネモデルで求めた先端変位量より大きくなる。 It is experimentally known that the difference between the tip displacement obtained by the spring model and the actual tip displacement changes depending on the angle formed by the external moment and the rotation axis vector of each movable shaft. For example, when using a spring constant that reduces the deviation from the theoretical value when the corresponding angle is 0°, the larger the corresponding angle, the more the actual tip displacement is than the tip displacement obtained by the spring model. become smaller. Conversely, when using a spring constant that reduces the deviation from the theoretical value when the matching angle deviates from 0°, the closer the matching angle approaches 0°, the more the actual tip displacement is It becomes larger than the tip displacement amount obtained.
本発明は、前述の事情に鑑みてなされている。本発明の目的の一つは、アームの変位を精度よく演算できる多関節ロボットの制御装置の提供である。 The present invention has been made in view of the circumstances described above. One of the objects of the present invention is to provide a controller for an articulated robot that can accurately calculate the displacement of an arm.
上記課題を解決するために、本発明は以下の手段を採用する。
本発明の一態様は、ロボットのアームを構成する複数のアーム部材が複数の可動軸周りに動く多関節ロボットの制御装置であって、前記アームの先端部にサンプル外力を加えた時の前記先端部の変位又は前記各可動軸周りの変位の検出値に基づいて求められた補正係数又は補正関数が格納されている記憶部と、前記アームの前記先端部に加わる力の大きさおよび該力の方向に応じて変化する前記各可動軸周りの前記各アーム部材の変位の演算に、前記各可動軸の回転軸方向と前記力の方向との関係を示す数式要素と、前記補正係数又は前記補正関数とを少なくとも用いる変位演算手段と、を備える。
上記態様の一実施形態において、前記記憶部に、前記複数のアーム部材の各々について、複数の角度φとそれぞれ対応する複数の前記補正係数が格納されるか、または、前記複数のアーム部材の各々について、前記角度φを変数とし前記補正係数を求める前記補正関数が格納される。前記角度φは、前記サンプル外力により前記各可動軸に作用する外力モーメントと前記各可動軸の回転軸方向とが成す角度である。
In order to solve the above problems, the present invention employs the following means.
One aspect of the present invention is a control device for an articulated robot in which a plurality of arm members constituting an arm of the robot move around a plurality of movable axes, wherein the tip of the arm moves when a sample external force is applied to the tip of the arm. a storage unit storing a correction coefficient or a correction function obtained based on the detected value of the displacement of the arm or the displacement around each movable axis; The calculation of the displacement of each arm member around each movable shaft that changes according to the direction includes a mathematical element representing the relationship between the rotation axis direction of each movable shaft and the direction of the force, and the correction coefficient or the correction. and a displacement calculation means that uses at least a function.
In one embodiment of the above aspect, the storage unit stores a plurality of angles φ and a plurality of correction coefficients corresponding to each of the plurality of arm members, or , the correction function that obtains the correction coefficient with the angle φ as a variable is stored. The angle φ is an angle formed by an external force moment acting on each movable shaft due to the sample external force and the rotation axis direction of each movable shaft.
上記態様では、大きさおよび方向がわかっているサンプル外力に基づいて補正係数又は補正関数が求められる。また、各可動軸の回転軸方向と力の方向との関係を示す数式要素に加え、補正係数又は補正関数を用いて、各可動軸周りの各アーム部材の変位が算出される。このため、ロボットに作用する力の大きさおよび方向に応じたロボットのアームの変位を精度良く計算することが可能となる。 In the above aspect, a correction factor or correction function is determined based on a sample external force of known magnitude and direction. Further, the displacement of each arm member around each movable axis is calculated using a correction coefficient or a correction function in addition to a mathematical element indicating the relationship between the rotation axis direction of each movable axis and the direction of force. Therefore, it is possible to accurately calculate the displacement of the arm of the robot according to the magnitude and direction of the force acting on the robot.
上記態様の制御装置は、好ましくは、前記変位演算手段により重力による前記各アーム部材の前記変位を演算し、演算により得られた結果を用いて前記各アーム部材の位置補正を行う。
当該構成では、重力による各アーム部材の変位が制御装置によって正確に認識される。これは、アームの動作の正確性を向上するために有用である。
Preferably, in the control device of the above aspect, the displacement of each arm member due to gravity is calculated by the displacement calculating means, and the position of each arm member is corrected using the result obtained by the calculation.
With this configuration, the displacement of each arm member due to gravity is accurately recognized by the controller. This is useful for improving the accuracy of arm motion.
上記態様の他の実施形態において、前記制御装置は、前記アームの先端部に保持された物品をワークに押し当てることによって前記ワークに力を加える際に、前記変位演算手段が、前記ワークからの反力の大きさおよび該反力の方向に応じて変化する前記各可動軸周りの前記各アーム部材の変位を、前記各可動軸の前記回転軸方向と前記反力の方向との関係を示す数式要素と、前記補正係数又は前記補正関数とを少なくとも用いて演算し、当該制御装置は、前記物品と前記ワークとの間に生ずる滑り量を低減するために、前記演算によって得られた結果に基づき、前記アームの動作指令を補正する動作プログラム補正手段をさらに備える。 In another embodiment of the above aspect, the control device is configured such that when the article held at the distal end of the arm is pressed against the work to apply a force to the work, the displacement calculation means causes the displacement from the work to be The relationship between the rotation axis direction of each movable shaft and the direction of the reaction force is defined as: and the correction coefficient or the correction function, and the control device calculates the result obtained by the calculation in order to reduce the amount of slippage occurring between the article and the work. and an operation program correcting means for correcting the operation command of the arm based on the above.
当該構成では、各可動軸周りの各アーム部材の変位が正確に求められ、正確に求められた各アーム部材の変位に基づきアームの動作指令が補正される。このため、アームの先端部に保持された物品をワークに押し当てることにより生ずるアームの変位が正確に考慮された動作指令の補正が行われる。これは、作業の正確性の向上、作業性の向上、当該作業によって得られた製品の品質を向上のために有利である。 With this configuration, the displacement of each arm member around each movable axis is accurately obtained, and the arm motion command is corrected based on the accurately obtained displacement of each arm member. Therefore, the motion command is corrected by accurately considering the displacement of the arm caused by pressing the article held at the tip of the arm against the work. This is advantageous for improving the accuracy of work, improving workability, and improving the quality of products obtained by the work.
本発明によれば、アームの変位を精度よく演算することが可能となる。 According to the present invention, it is possible to accurately calculate the displacement of the arm.
本発明の一実施形態に係る多関節ロボットであるロボット10の制御装置20が、図面を用いながら以下説明されている。
本実施形態のロボット10は、図1に示されるように、ベースBとアーム10aとを有する。アーム10aは複数のアーム部材11,12,13,14,15,16を有し、複数のアーム部材11,12,13,14,15,16がそれぞれ可動軸J1,J2,J3,J4,J5,J6周りに動く。なお、図1に示されるロボット10は垂直多関節ロボットであるが、水平多関節ロボットであってもよく、特定の種類のロボットに限定されない。
A
The
ロボット10は、複数の可動軸J1,J2,J3,J4,J5,J6周りにそれぞれアーム部材11,12,13,14,15,16を駆動する複数のサーボモータ11a,12a,13a,14a,15a,16a(図4)を有する。サーボモータ11a,12a,13a,14a,15a,16aにそれぞれ減速機11b,12b,13b,14b,15b,16b(図4)が接続され、サーボモータ11a,12a,13a,14a,15a,16aの駆動力が減速機11b,12b,13b,14b,15b,16bを介してアーム部材11,12,13,14,15,16に伝達される。また、各サーボモータ11a,12a,13a,14a,15a,16aはその作動位置を検出するための作動位置検出装置(図示せず)を有し、作動位置検出装置は一例としてエンコーダである。作動位置検出装置の検出結果は制御装置20に送信される。
The
制御装置20は、図4に示されるように、CPU等であるプロセッサ21と、表示装置22と、不揮発性ストレージ、ROM、RAM等を有する記憶部23と、キーボード等の入力装置24と、送受信部25と、サーボモータ11a~16aに各々対応したサーボ制御器26とを備え、ロボット10のサーボモータ11a~16aを制御する。記憶部23にはシステムプログラム23aが格納されており、システムプログラム23aが制御装置20の基本機能を担っている。
As shown in FIG. 4, the
記憶部23には、動作プログラム23bと、補正係数取得プログラム23cと、変位演算プログラム(変位演算手段)23dと、動作補正プログラム(動作プログラム補正手段)23eとが格納されている。プロセッサ21は、動作プログラム23bに基づきサーボモータ11a~16aを制御し、これによりロボット10がアーム10aの先端部に設けられたツールTを用いて所定の作業を行う。なお、動作プログラム23bは、サーボモータ11a~16aを制御するための一連の動作指令である。
The
また、プロセッサ21は、入力装置24から所定の開始信号の入力があった時、又は、送受信部25において所定の開始信号が受信された時に、補正係数取得プログラム23cに基づき各可動軸J1,J2,J3,J4,J5,J6の補正係数を求め、求めた補正係数を記憶部23に格納する。
Further, when a predetermined start signal is input from the
例えば、プロセッサ21は、サーボモータ11a~16aを制御することによって、アーム10aを第1の姿勢にする。この時、ツールTにサンプル外力Fが加えられる。プロセッサ21によるサーボモータ11a~16aの制御によってツールTを所定の部材に押し当て、これによってサンプル外力FがツールTに加えられてもよく、所定の装置によってツールTを押すこと、ツールTが所定の物体を保持すること等によって、ツールTにサンプル外力Fが加えられてもよい。
For example, the
この時のサンプル外力Fの方向および大きさがわかっており、サンプル外力Fの方向および大きさは制御装置20に入力される。サンプル外力Fの方向および大きさが入力装置24又は送受信部25を介して制御装置20に入力されてもよく、サンプル外力Fの方向および大きさがアーム10aの先端部、ツールT等に設けられた取得手段の一例である力センサD(図1)によって検出され、検出結果が制御装置20に送信されてもよい。
The direction and magnitude of the sample external force F at this time are known, and the direction and magnitude of the sample external force F are input to the
なお、サンプル外力Fの方向および大きさは制御装置20が認識しているアーム10aの基準座標系に対応したものである。一例では、サンプル外力FはツールTの一部に可動軸J6に垂直な方向又は沿った方向に加わるものであり、サンプル外力Fの方向がアーム10aの姿勢の変更に応じて変化する。
The direction and magnitude of the sample external force F correspond to the reference coordinate system of the
プロセッサ21は、補正係数取得プログラム23cに基づき、可動軸J1,J2,J3,J4,J5,J6のそれぞれについて、補正係数R1、R2、R3、・・・Rnを求める。補正係数R1、R2、R3、・・・Rnを求めるため、一例として、プロセッサ21は、アーム10aの姿勢情報又は各サーボモータ11a,12a,13a,14a,15a,16aの作動位置検出装置の情報からわかる位置ベクトルPiおよび回転軸ベクトル方向の単位ベクトルAUiと、サンプル外力Fの方向および大きさとを、下記式(1)又は(1)および(2)に適用して、各可動軸J1,J2,J3,J4,J5,J6の理論的なモーメントMaiおよび変位(変位角度)Δθiを求める。本実施形態では、各可動軸J1,J2,J3,J4,J5,J6の変位Δθiは、各可動軸J1,J2,J3,J4,J5,J6周りの各アーム部材11,12,13,14,15,16の変位である。
The
Piは、サンプル外力Fの作用点から各可動軸J1,J2,J3,J4,J5,J6に下ろした垂線と回転軸の交点を点Oとして、点OからFの作用点を結ぶ位置ベクトルであり、AUiは、各可動軸J1,J2,J3,J4,J5,J6に沿った方向に延びる単位ベクトルであり、φiは、回転軸ベクトル(単位ベクトルAUi)と外力モーメントPi×Fの成す角度である。
Pi×Fおよびcosφは、各可動軸J1,J2,J3,J4,J5,J6の回転軸方向と外力Fの方向との関係を示す数式要素である。
P i is a position vector connecting points of action of F from point O, where point O is the intersection of the rotation axis and the perpendicular drawn from the point of action of sample external force F to each of the movable axes J1, J2, J3, J4, J5, and J6. , where A Ui is a unit vector extending in a direction along each movable axis J1, J2, J3, J4, J5, J6, and φ i is a rotation axis vector (unit vector A Ui ) and an external force moment P i It is the angle formed by ×F.
P i ×F and cos φ are mathematical elements representing the relationship between the direction of the rotation axis of each movable axis J1, J2, J3, J4, J5, and J6 and the direction of the external force F.
そして、プロセッサ21は、補正係数取得プログラム23cに基づき、可動軸J1,J2,J3,J4,J5,J6の各々について、サンプル外力Fに対し式(2)によって得られる変位Δθiと、実測値に基づく変位(変位角度)Δθmiとの比から補正係数を求め、求められた補正係数を対応する可動軸J1,J2,J3,J4,J5,J6の番号と共に記憶部23に格納する。
Then, based on the correction
例えば、ツールTの先端部分に取り付けられた反射器RDをレーザトラッカLTで検出することによって、サンプル外力Fを加える前と後のそれぞれにおける先端部分の位置・姿勢を計測する。計測された位置・姿勢を逆変換することにより、サンプル外力Fを加える前後の各可動軸の位置を求め、その差分から各可動軸の変位Δθmiを求めることが可能である。 For example, by detecting a reflector RD attached to the tip of the tool T with a laser tracker LT, the position and orientation of the tip before and after applying the sample external force F are measured. By inversely transforming the measured positions and orientations, it is possible to obtain the positions of each movable axis before and after application of the sample external force F, and obtain the displacement Δθmi of each movable axis from the difference.
また、各可動軸J1,J2,J3,J4,J5,J6に角度検出器を取付け、角度検出器を用いて各可動軸J1,J2,J3,J4,J5,J6の変位(変位角度)を実測することも可能である。
また、その他の方法を用いて各アーム部材11,12,13,14,15,16又は各可動軸J1,J2,J3,J4,J5,J6の変位角度を実測してもよい。
An angle detector is attached to each of the movable axes J1, J2, J3, J4, J5, and J6, and the displacement (displacement angle) of each of the movable axes J1, J2, J3, J4, J5, and J6 is measured using the angle detector. Actual measurement is also possible.
Alternatively, the displacement angles of the
なお、各可動軸J1,J2,J3,J4,J5,J6に加わる理論トルク(モーメントMai)と、各可動軸J1,J2,J3,J4,J5,J6に実際に加わるトルク(実測値)との差に基づき、実測値に基づく変位Δθmiを得ることも可能である。この場合、プロセッサ21は、補正係数取得プログラム23cに基づき、可動軸J1,J2,J3,J4,J5,J6の各々について、サンプル外力Fに対し式(1)によって理論的に得られる理論トルク(モーメントMai)によって計算される変位Δθiと、サンプル外力Fを加えた時にサーボモータ11a,12a,13a,14a,15a,16aによって各々実測されるモータ電流値又はトルク値とに基づく変位Δθmiとを用いて、補正係数を求め、求められた補正係数を対応する可動軸J1,J2,J3,J4,J5,J6の番号と共に記憶部23に格納する。各サーボモータ11a~16aにトルクセンサが設けられている場合、各サーボモータ11a~16aのトルクセンサの検出値が前記補正係数の計算に用いられてもよい。
The theoretical torque (moment M ai ) applied to each movable axis J1, J2, J3, J4, J5, and J6 and the actual torque (measured value) applied to each movable axis J1, J2, J3, J4, J5, and J6 It is also possible to obtain the displacement Δθm i based on the measured value based on the difference between . In this case, the
ここで、好ましくは補正係数はφに対応するように求められ、記憶部23に格納される。例えば、第1の姿勢において、式(1)に示される位置ベクトルPiとサンプル外力Fの外積と、可動軸J1の回転軸方向(可動軸J1の単位ベクトルAU1)とが成す角度φが10°である場合、記憶部23には、第1の姿勢およびサンプル外力Fの時の可動軸J1の補正係数R1が角度φに対応して格納される。第2の姿勢、第3の姿勢、・・・第nの姿勢の時に同様に補正係数R2、R3、・・・Rnが角度φに対応して格納される。図1は可動軸J5に関する位置ベクトルP5、可動軸J5の単位ベクトルAU5等が示されているが、可動軸J2,J3,J4,J5,J6の各々について、同様に補正係数R1、R2、R3、・・・Rnが角度φに対応して格納される。
Here, the correction coefficient is preferably obtained so as to correspond to φ and stored in the
記憶部23に格納される補正係数R1、R2、R3、・・・Rnは、角度φを所定の角度おきに変化させて得られるものであってもよく、角度φをランダムに変化させて得られるものであってもよい。 The correction coefficients R 1 , R 2 , R 3 , . It may be obtained by changing.
プロセッサ21は変位演算プログラム23dにより作動し、記憶部23に格納されている補正係数R1、R2、R3、・・・Rnに基づき得られる補正関数fi(φ)を下記式(3)に適用することによって、各可動軸J2,J3,J4,J5,J6の補正された変位Δθi’を演算する。本実施形態では、各可動軸J1,J2,J3,J4,J5,J6の補正された変位Δθi’は、各可動軸J1,J2,J3,J4,J5,J6周りの各アーム部材11,12,13,14,15,16の補正された変位である。
補正された変位Δθi’のiには可動軸J1~J6に対応する1~6の数字が入り、例えば、Δθ1’は可動軸J1の補正された変位、Δθ2’は可動軸J2の補正された変位、・・・Δθ6’は可動軸J6の補正された変位である。 The i of the corrected displacement Δθ i ' is a number from 1 to 6 corresponding to the movable axes J1 to J6. For example, Δθ 1 ' is the corrected displacement of the movable axis J1, The corrected displacement, . . . Δθ 6 ′ is the corrected displacement of movable axis J6.
補正関数fi(φ)のiには可動軸J1~J6に対応する1~6の数字が入り、f1(φ)は可動軸J1の補正関数、f2(φ)は可動軸J2の補正関数、・・・f6(φ)は可動軸J6の補正関数である。
補正関数fi(φ)は、可動軸J1~J6の各々について、補正係数R1、R2、R3、・・・Rnとその時の角度φとの関係から得られる式である。補正関数fi(φ)の代わりに、可動軸J1~J6の各々について、補正係数R1、R2、R3、・・・Rnとその時の角度φとを対応させた補正テーブルを用いることも可能である。
The correction function f i (φ) is a formula obtained from the relationship between the correction coefficients R 1 , R 2 , R 3 , . Instead of the correction function f i (φ), a correction table is used in which the correction coefficients R 1 , R 2 , R 3 , . is also possible.
一般に、φが0°のとき補正関数fi(φ)は最大値を取り、φが0°から離れるに従って補正関数fi(φ)は減少する傾向がある。 In general, the correction function f i (φ) takes the maximum value when φ is 0°, and the correction function f i (φ) tends to decrease as φ moves away from 0°.
一例を示す。図2と図3は、アーム部材14の可動軸J4周りの回転位置が互いに異なるが、他の可動軸J1,J2,J3,J5,J6の回転位置は同じである。この場合、図2と図3は、可動軸J2の回転軸ベクトルAU2とP2×F(外積)との成す角度φが互いに異なり、角度φは図2よりも図3の方が大きくなる。
Here is an example. 2 and 3, the rotational positions of the
一方、前述のように、可動軸J2の補正係数R1、R2、・・・Rnが角度φに対応して格納され、例えば、角度φが10°、20°、および30°の時の補正係数R1、R2、およびR3が0.85、0.65、および0.4である時、可動軸J2の補正関数f2(φ)は、両者を対応付けるための例えば二次曲線の近似関数となる。近似関数はその他のn次関数、対数関数、指数関数等であってもよい。 On the other hand, as described above, the correction coefficients R 1 , R 2 , . are 0.85, 0.65 , and 0.4 , the correction function f 2 (φ ) for the movable axis J2 is, for example, quadratic It becomes an approximation function of the curve. The approximation function may be other n-order functions, logarithmic functions, exponential functions, and the like.
例えば、図2においてφが10°であり、図3においてφが20°である場合、図2の状態で可動軸J2の補正係数Rが0.85となり、図2の状態で可動軸J2の補正係数Rが0.65となる。このように角度φと補正係数Rとが対応するように、各可動軸J1,J2,J3,J4,J5,J6の補正関数fi(φ)が作成される。 For example, if φ is 10° in FIG. 2 and φ is 20° in FIG. The correction coefficient R becomes 0.65. Correction functions f i (φ) for the movable axes J1, J2, J3, J4, J5, and J6 are created such that the angles φ and the correction coefficients R correspond to each other.
実際にツールTに働く外力Fの大きさおよび方向が入力装置24、送受信部25等を介して入力された時、又は、実際にツールTに働く外力Fである力センサDの検出値を受信した時に、プロセッサ21は、式(3)を用いて可動軸J1~J6の各々の補正された変位θi’を求める。力センサDの代わりに各サーボモータ11a~16aの電流値に基づき外力Fが求められてもよい。
そして、プロセッサ21は、順運動学を用いて各可動軸J1~J6の補正された変位θi’からアーム10aの先端部又はツールTの所定位置の変位Δx、Δy、およびΔzを求める。
When the magnitude and direction of the external force F actually acting on the tool T are input via the
The
なお、補正関数fi(φ)を作成する代わりに、角度φと補正係数R1、R2、・・・Rnとが対応している補正テーブルを作成してもよい。この場合、プロセッサ21は、補正テーブルに基づき補正係数を決定し、決定された補正係数を式(3)のfi(φ)の位置に代入し、可動軸J1~J6の各々の補正された変位θi’を求める。
また、可動軸J1~J6にそれぞれ1つの補正係数が決定されており、当該補正係数が補正関数fi(φ)および補正テーブルの代わりに記憶部23に格納されていてもよい。この場合、プロセッサ21は、記憶部23に格納されている補正係数を式(3)のfi(φ)の位置に代入し、可動軸J1~J6の各々の補正された変位θi’を求める。
Instead of creating the correction function f i (φ), a correction table in which the angle φ corresponds to the correction coefficients R 1 , R 2 , . . . R n may be created. In this case, the
Also, one correction coefficient is determined for each of the movable axes J1 to J6, and the correction coefficient may be stored in the
そして、プロセッサ21は、動作補正プログラム23eに基づき、動作プログラム23bに含まれる動作指令を必要に応じて変更する。例えば、実際にツールTに働く外力Fである力センサDの検出値を受信した時に、ツールTの所定位置の変位Δx、Δy、およびΔzを求め、これら変位が所定の閾値以上である場合に、その変位をキャンセルするために動作指令を変更する。
例えば、ロボット10による作業時にツールTがワークに押し当てられ、ツールTとワークとの間に好ましくない滑り量が生ずる時に、前記動作指令の変更によって、ツールTとワークとの間の滑りが低減され、又は無くなる。
Then, the
For example, when the tool T is pressed against the workpiece during operation by the
なお、プロセッサ21が、可動軸J1~J6の各々の補正された変位θi’を所定の表示装置に表示してもよく、補正された変位θi’が大きい1つ、2つ、又は複数の可動軸を表示装置に表示してもよい。また、プロセッサ21が、可動軸J1~J6の各々の補正された変位θi’を表示、シミュレーション等のために他の装置に送信してもよく、補正された変位θi’が大きい1つ、2つ、又は複数の可動軸を表示のために他の装置に送信してもよい。
Note that the
また、上位制御装置30、シミュレーション装置等が、制御装置20から、補正係数を対応する可動軸J1~J6の番号と共に受信し、受信した補正係数を可動軸J1~J6の番号と共にメモリ31に格納してもよい。上位制御装置30又はシミュレーション装置が、制御装置20から、補正関数又は補正テーブルを可動軸J1~J6の番号と共に受信し、受信した補正関数又は補正テーブルを可動軸J1~J6の番号と共にメモリ31に格納してもよい。
In addition, the
この時、上位制御装置30、シミュレーション装置等は、好ましくは、ロボット10の機種の情報、ロボット10のサイズの情報、ロボット10の作業に関する情報、動作プログラム23bの種類の情報、サーボモータの種類の情報、およびツールTの種類の情報のうち少なくとも1つを含む適用情報も制御装置20から受信し、受信した補正係数、補正関数、又は補正テーブルを適用情報と対応付けてメモリ31に格納する。上位制御装置30、シミュレーション装置等が、他のロボットの制御装置から同様の情報を受信し、受信した情報をメモリ31に格納してもよい。
At this time, the
上位制御装置30は、例えば新たに設置されたロボットの制御装置から、要求および情報を受信する。受信する情報は、新たに設置されたロボットの機種、ロボットのサイズ、動作プログラムの種類、ロボットの作業、サーボモータの種類、ツールの種類等である。
この場合、上位制御装置30は、メモリ31に格納されている適用情報のうち受信した情報に近い又は一致する適用情報を決定し、決定された適用情報に応じた補正係数、補正関数、又は補正テーブルを新たに設置されたロボットの制御装置に送信し、新たに設置されたロボットの制御装置において、受信する補正係数、補正関数、又は補正テーブルが用いられる。
また、シミュレーション装置は、例えばロボット10のシミュレーションを行う際に、メモリ31に格納されている補正係数、補正関数、又は補正テーブルを用いてアーム10aの変位量を計算する。
The
In this case, the
Further, the simulation device calculates the displacement amount of the
なお、個体毎には測定を行わず、予め機種毎に決められた補正係数または補正関数を用いてもよい。 A correction coefficient or a correction function predetermined for each model may be used instead of performing measurement for each individual.
[実施例]
上記実施形態は、ロボット10がツールTをワークに押し当てる作業が行われる際に、押し当てによって生ずるワークに対するツールTの位置ずれを抑制又は無くすために用いられる。このような作業として、FDS(フロー・ドリル・スクリュー)、ローラーヘム等がある。
FDSは、ツールTに保持されたネジ(物品)を高速で回転させ、回転しているネジをロボット10によって重ね合わせられた金属部材に打込むことによって、これらの金属部材を互いに溶着するものである。高速回転しているネジを金属部材に押し当てる際のツールT先端の変位を正確に得られることは、FDSの作業の正確性の向上、作業性の向上、当該作業によって得られた製品の品質を向上のために有利である。
[Example]
The above-described embodiment is used to suppress or eliminate displacement of the tool T with respect to the work caused by the pressing when the
In FDS, a screw (article) held by a tool T is rotated at high speed, and a
ローラーヘムは、ツールTの先端に設けられたローラ(物品)を板状のワークに押し当て、この状態でローラをワークに沿って移動させることにより、ワークの一部を折り曲げる作業である。ローラをワークに押し当てる際のツールT先端の変位を正確に得られることは、ローラーヘムの作業の正確性の向上、作業性の向上、当該作業によって得られた製品の品質を向上のために有利である。 Roller hemming is a work in which a roller (article) provided at the tip of a tool T is pressed against a plate-like work, and the roller is moved along the work in this state to bend a part of the work. Accurately obtaining the displacement of the tip of the tool T when the roller is pressed against the work improves the accuracy of the roller hemming work, improves the workability, and improves the quality of the product obtained by the work. Advantageous.
なお、上記実施形態では、式(1)および式(2)において、各可動軸J1~J6の回転軸方向と外力Fの方向との関係を示す数式要素としてPi×F(外積)、cosφ等を用いているが、各可動軸J1~J6の回転軸方向と外力Fの方向とが成す角度が大きくなる程小さくなる他の1次関数、2次関数等の数式要素を用いることも可能である。 In the above embodiment, in equations (1) and (2), P i ×F (outer product), cosφ etc. are used, it is also possible to use other mathematical elements such as linear functions and quadratic functions that decrease as the angle formed by the direction of the rotation axis of each movable axis J1 to J6 and the direction of the external force F increases. is.
上記実施形態では、大きさおよび方向がわかっているサンプル外力Fに基づいて補正係数又は補正関数が求められる。また、各可動軸J1~J6の回転軸方向と外力Fの方向との関係を示す数式要素に加え、補正係数又は補正関数を用いて、各可動軸J1~J6の変位が算出される。このため、ロボット10に作用する力の大きさおよび方向に応じたロボット10のアーム10aの変位を精度良く計算することが可能となる。
In the above embodiments, a correction factor or correction function is determined based on a sample external force F whose magnitude and direction are known. Further, the displacement of each of the movable axes J1 to J6 is calculated using a correction coefficient or a correction function in addition to the mathematical elements representing the relationship between the rotation axis direction of each of the movable axes J1 to J6 and the direction of the external force F. Therefore, it is possible to accurately calculate the displacement of the
また、上記実施形態において、外力Fが重力のみである場合、又は、外力Fに重力が含まれる場合に、プロセッサ21が、変位演算プログラムに基づき、重力による各アーム部材11~16の前記変位を演算し、プロセッサ21が、動作補正プログラム23eに基づき、演算により得られた結果を用いて各アーム部材11~16の位置補正を行ってもよい。
この場合、重力による各アーム部材11~16の変位が制御装置20によって正確に認識される。これは、アーム10aの動作の正確性を向上するために有用である。
Further, in the above embodiment, when the external force F is only gravity, or when the external force F includes gravity, the
In this case, the displacement of each arm member 11-16 due to gravity is accurately recognized by the
また、上記実施形態では、アーム10aの先端部に保持された物品をワークに押し当てることによってワークに力を加える際に、ワークからの反力の大きさおよび反力の方向を検出する力センサDが設けられている。そして、プロセッサ21は、変位演算プログラムに基づき、反力の大きさおよび反力の方向に応じて変化する各可動軸J1~J6周りの各アーム部材11~16の変位を、各可動軸J1~J6の回転軸方向と反力の方向との関係を示す数式要素と、補正係数又は補正関数とを少なくとも用いて演算する。そして、プロセッサ21は、動作補正プログラム23eに基づき、前記物品とワークとの間に生ずる滑り量を低減するために、前記演算によって得られた結果に基づき、アーム10aの動作指令を補正する。
In the above-described embodiment, the force sensor detects the magnitude and direction of the reaction force from the work when a force is applied to the work by pressing the article held at the tip of the
当該構成では、各可動軸J1~J6周りの各アーム部材11~16の変位が正確に求められ、正確に求められた各アーム部材11~16の変位に基づきアーム10aの動作指令が補正される。このため、アーム10aの先端部に保持された前記物品をワークに押し当てることにより生ずるアーム10aの変位が正確に考慮された動作指令の補正が行われる。これは、作業の正確性の向上、作業性の向上、当該作業によって得られた製品の品質を向上のために有利である。
In this configuration, the displacements of the
10 ロボット
10a アーム
11~16 アーム部材
11a~16a サーボモータ
11b~16b 減速機
20 制御装置
21 プロセッサ
22 表示装置
23 記憶部
23a システムプログラム
23b 動作プログラム
23c 補正係数取得プログラム
23d 変位演算プログラム(変位演算手段)
23e 動作補正プログラム(動作プログラム補正手段)
24 入力装置
25 送受信部
26 サーボ制御器
30 上位制御装置
J1~J6 可動軸
B ベース
T ツール
D 力センサ
10
23e motion correction program (motion program correction means)
24
Claims (3)
前記アームの先端部にサンプル外力を加えた時の前記先端部の変位又は前記各可動軸周りの変位の検出値に基づいて求められた補正係数又は補正関数が格納されている記憶部と、
前記アームの前記先端部に加わる力の大きさおよび該力の方向に応じて変化する前記各可動軸周りの前記各アーム部材の変位の演算に、前記各可動軸の回転軸方向と前記力の方向との関係を示す数式要素と、前記補正係数又は前記補正関数とを少なくとも用いる変位演算手段と、を備え、
前記アームの先端部に保持された物品をワークに押し当てることによって前記ワークに力を加える際に、前記変位演算手段が、前記ワークからの反力の大きさおよび該反力の方向に応じて変化する前記各可動軸周りの前記各アーム部材の変位を、前記各可動軸の前記回転軸方向と前記反力の方向との関係を示す数式要素と、前記補正係数又は前記補正関数とを少なくとも用いて演算し、
当該制御装置は、前記物品と前記ワークとの間に生ずる滑り量を低減するために、前記演算によって得られた結果に基づき、前記アームの動作指令を補正する動作プログラム補正手段をさらに備える多関節ロボットの制御装置。 A control device for an articulated robot in which a plurality of arm members constituting an arm of the robot move around a plurality of movable axes,
a storage unit storing a correction coefficient or a correction function obtained based on the detected value of the displacement of the tip portion when a sample external force is applied to the tip portion of the arm or the displacement around each movable axis;
For calculation of the displacement of each arm member around each movable shaft that changes according to the magnitude and direction of the force applied to the distal end portion of the arm, the rotation axis direction of each movable shaft and the force a displacement calculation means that uses at least the correction coefficient or the correction function ;
When a force is applied to the work by pressing the article held at the tip of the arm against the work, the displacement calculation means calculates a At least the correction coefficient or the correction function is used to express the changing displacement of each arm member around each movable axis, a mathematical element indicating the relationship between the direction of the rotation axis of each movable axis and the direction of the reaction force. and
The control device further comprises operation program correction means for correcting the operation command of the arm based on the result obtained by the calculation in order to reduce the amount of slippage between the article and the work. Control device for articulated robots.
前記アームの先端部にサンプル外力を加えた時の前記先端部の変位又は前記各可動軸周りの変位の検出値に基づいて求められた補正係数又は補正関数が格納されている記憶部と、
前記アームの前記先端部に加わる力の大きさおよび該力の方向に応じて変化する前記各可動軸周りの前記各アーム部材の変位の演算に、前記各可動軸の回転軸方向と前記力の方向との関係を示す数式要素と、前記補正係数又は前記補正関数とを少なくとも用いる変位演算手段と、を備え、
前記記憶部に、前記複数のアーム部材の各々について、複数の角度φとそれぞれ対応する複数の前記補正係数が格納されるか、または、前記複数のアーム部材の各々について、前記角度φを変数とし前記補正係数を求める前記補正関数が格納され、
前記角度φは、前記サンプル外力により前記各可動軸に作用する外力モーメントと前記各可動軸の回転軸方向とが成す角度である多関節ロボットの制御装置。 A control device for an articulated robot in which a plurality of arm members constituting an arm of the robot move around a plurality of movable axes,
a storage unit storing a correction coefficient or a correction function obtained based on the detected value of the displacement of the tip portion when a sample external force is applied to the tip portion of the arm or the displacement around each movable axis;
For calculation of the displacement of each arm member around each movable shaft that changes according to the magnitude and direction of the force applied to the distal end portion of the arm, the rotation axis direction of each movable shaft and the force a displacement calculation means that uses at least the correction coefficient or the correction function ;
The storage unit stores a plurality of angles φ and a plurality of correction coefficients corresponding to each of the plurality of arm members, or the angle φ is used as a variable for each of the plurality of arm members. the correction function for obtaining the correction factor is stored;
The angle φ is an angle formed by an external force moment acting on each movable shaft due to the sample external force and a rotation axis direction of each movable shaft.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019002684A JP7227012B2 (en) | 2019-01-10 | 2019-01-10 | Control device for articulated robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019002684A JP7227012B2 (en) | 2019-01-10 | 2019-01-10 | Control device for articulated robot |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020110861A JP2020110861A (en) | 2020-07-27 |
JP7227012B2 true JP7227012B2 (en) | 2023-02-21 |
Family
ID=71668041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019002684A Active JP7227012B2 (en) | 2019-01-10 | 2019-01-10 | Control device for articulated robot |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7227012B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016036858A (en) | 2014-08-05 | 2016-03-22 | ファナック株式会社 | Apparatus for controlling robot performing work by pressing tool against workpiece |
WO2016208467A1 (en) | 2015-06-22 | 2016-12-29 | 三菱電機株式会社 | Calibration device and robot system using same |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2515594B2 (en) * | 1989-07-20 | 1996-07-10 | 三菱電機株式会社 | Robot force control method and device |
JPH0434604A (en) * | 1990-05-31 | 1992-02-05 | Toshiba Corp | Method and device for correcting position of robot |
JPH07100781A (en) * | 1993-10-05 | 1995-04-18 | Ricoh Co Ltd | Articulated robot |
-
2019
- 2019-01-10 JP JP2019002684A patent/JP7227012B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016036858A (en) | 2014-08-05 | 2016-03-22 | ファナック株式会社 | Apparatus for controlling robot performing work by pressing tool against workpiece |
WO2016208467A1 (en) | 2015-06-22 | 2016-12-29 | 三菱電機株式会社 | Calibration device and robot system using same |
Also Published As
Publication number | Publication date |
---|---|
JP2020110861A (en) | 2020-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110997249B (en) | Work robot and control method for work robot | |
US6826450B2 (en) | Robot controller | |
JP2676793B2 (en) | Copy control robot | |
JP5893665B2 (en) | Robot control device for controlling a robot to be moved according to an applied force | |
US6222338B1 (en) | Method and apparatus for the direct teaching of automatic machines | |
JP6582483B2 (en) | Robot control device and robot system | |
JP5531996B2 (en) | 6-axis robot offset detection method | |
JP2016168651A (en) | Robot controlling method, robot apparatus, program, and recording medium | |
JP5849451B2 (en) | Robot failure detection method, control device, and robot | |
JP5672173B2 (en) | 6-axis robot offset detection method | |
JP2018099743A (en) | Bend correction method for robot and control device for robot | |
EP1464453A2 (en) | Flexure correction apparatus and method for robot | |
CN112405566A (en) | Robot control device | |
JP2017030059A (en) | Robot control device, robot and robot system | |
JP5786550B2 (en) | 6-axis robot offset detection method | |
JP7227012B2 (en) | Control device for articulated robot | |
JP5316396B2 (en) | Robot spring constant identification method and robot spring constant identification apparatus | |
KR20130000496A (en) | Teaching apparatus of robot having acceleration sensor and gyro-sensor and teaching method for robot using the same | |
JP7148321B2 (en) | Control device for articulated robot | |
JP7165951B2 (en) | Robot control method | |
US20170043481A1 (en) | Robot controller inhibiting shaking of tool tip in robot equipped with travel axis | |
JP6091272B2 (en) | Spring constant correction device for articulated robot | |
JP5316395B2 (en) | Robot spring constant identification method and robot spring constant identification apparatus | |
JPH01222311A (en) | Curve profile controller for multidegree of freedom work machine | |
JP6983501B2 (en) | Gripping device control method, program, recording medium, gripping device, robot device, and manufacturing method of parts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220818 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220823 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221013 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230110 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230209 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7227012 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |