JPH0352003A - Offline teaching device for industrial robots - Google Patents

Offline teaching device for industrial robots

Info

Publication number
JPH0352003A
JPH0352003A JP18834389A JP18834389A JPH0352003A JP H0352003 A JPH0352003 A JP H0352003A JP 18834389 A JP18834389 A JP 18834389A JP 18834389 A JP18834389 A JP 18834389A JP H0352003 A JPH0352003 A JP H0352003A
Authority
JP
Japan
Prior art keywords
teaching
acceleration
time
point
calculation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP18834389A
Other languages
Japanese (ja)
Inventor
Tatsuya Renbutsu
達也 蓮仏
Noriyuki Uchiumi
典之 内海
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.)
Hitachi Ltd
Original Assignee
Tokico Ltd
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 Tokico Ltd filed Critical Tokico Ltd
Priority to JP18834389A priority Critical patent/JPH0352003A/en
Publication of JPH0352003A publication Critical patent/JPH0352003A/en
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 「産業上の利用分野」 本発明は工業用ロボットのオフライン教示装置に係り、
特に加減速制御機能を有しない工業用ロボットに用いて
好適なオフライン教示装置に関する。
[Detailed description of the invention] "Field of industrial application" The present invention relates to an offline teaching device for industrial robots,
In particular, the present invention relates to an offline teaching device suitable for use in industrial robots that do not have an acceleration/deceleration control function.

「従来の技術」 従来、塗装や溶接等の作業を人間に代わって行う自動機
として、動作プログラムを変更することにより多様なワ
ークにフレキシブルに対応可能な教示・再生型の工業用
ロボットが用いられている。
``Conventional technology'' Traditionally, teaching/reproduction type industrial robots have been used as automatic machines that perform tasks such as painting and welding in place of humans, and can flexibly handle a variety of workpieces by changing their operating programs. ing.

このような工業用ロボットは、動作プロプラムにおいて
ロボット本体の動作速度を教示点間毎に設定し、この動
作プロプラムに従ってロボット本体を制御するようにし
ている。したがって、速度の変化点となる教示点におい
ては、運動学上無限大の加速度が要求されるのであって
、ロボット本体が振動を発生したりその動きが所定の軌
道から逸脱するという不具合が発生する可能性があった
In such industrial robots, the operating speed of the robot body is set for each teaching point in a motion program, and the robot body is controlled according to this motion program. Therefore, at the teaching point where the speed changes, infinite acceleration is required from kinematics, and problems such as vibration of the robot body or movement deviating from the predetermined trajectory occur. It was possible.

また、動作プロプラムの設定速度が頻繁に変化する場合
には、ロボット本体を構成する部品の破損を招く要因に
もなっていた。
Furthermore, if the set speed of the operating program changes frequently, this may lead to damage to parts constituting the robot body.

具体的には、例えば第8図の(a)に示すような動作が
行われる際、運動学上第8図の(b)に示すような速度
変化を伴うのであって、第8図の(C)に示すように大
きな加速度が発生していた。なお、第8図は説明の便宜
上変位を一次元的に表したものであって、実際にはロボ
ットの自由度分だけの次元数の変位が考えられる。
Specifically, for example, when an action as shown in FIG. 8(a) is performed, kinematically it is accompanied by a velocity change as shown in FIG. 8(b). A large acceleration was occurring as shown in C). Note that FIG. 8 shows the displacement in one dimension for the convenience of explanation, and in reality, the displacement has as many dimensions as the degrees of freedom of the robot.

このため、従来は、ロボット本体の制御装置に加速度制
御機能を設けるか、動作プログラムを大きな速度変化の
少ないものに修正して、上記不具合を防止していた。
For this reason, conventionally, the above-mentioned problems have been prevented by providing an acceleration control function in the control device of the robot body or by modifying the operation program to one that does not cause large speed changes.

「発明が解決しようとする課題」 ところが、これら防止策は、それぞれ問題点を有してい
た。すなわち、前者は、制御装置において余分な処理を
行うことになるため、ハード的にもソフト的にも制御装
置が複雑で高価なものになるという不具合を有していた
。また、後者は、オペレータが勘と経験で動作プログラ
ムを修正することになるので、動作プロプラムの作成に
手数がかかるとともに確実に加速度を制限することはで
きなかった。
``Problem to be solved by the invention'' However, each of these preventive measures had its own problems. That is, in the former case, since extra processing is performed in the control device, the control device becomes complicated and expensive both in terms of hardware and software. In addition, in the latter case, the operator must modify the motion program based on intuition and experience, which requires time and effort to create the motion program, and it is not possible to reliably limit the acceleration.

本発明は、上記従来の事情に鑑みなされたものであって
、ロボット本体の加速度が一定値以下に制限されるよう
に動作プログラムを容易に修正できる工業用ロボットの
オフライン教示装置を提供することを目的としている。
The present invention has been made in view of the above-mentioned conventional circumstances, and it is an object of the present invention to provide an offline teaching device for an industrial robot that can easily modify an operation program so that the acceleration of the robot body is limited to a certain value or less. The purpose is

「課題を解決するための手段」 本発明の工業用ロボットのオフライン教示装置は、複数
の教示点から動作プログラムを作成する工業用ロボット
のオフライン教示装置であって、複数の教示点での加速
度が所定の値となるように複数の教示点から複数のポイ
ントを新たな教示点として作成する機能を有する演算手
段を備えたことを特徴としている。
``Means for Solving the Problems'' The offline teaching device for an industrial robot of the present invention is an offline teaching device for an industrial robot that creates a motion program from a plurality of teaching points. The present invention is characterized in that it includes a calculation means having a function of creating a plurality of points from a plurality of teaching points as new teaching points so as to have a predetermined value.

また、前記加速度の値は、前記機能を演算手段に実行さ
せる際に任意に設定できるようになっていることを特徴
としている。
Further, the acceleration value can be arbitrarily set when causing the calculation means to execute the function.

また、前記演算手段は、複数の教示点毎に、教示点前後
の速度変化が等加速度で行われる場合の速度変化に要す
る時間をサンプリング時間の倍数として求める第一の演
算と、この第一の演算により得られた時間から前記速度
変化時のロボット本体の姿勢変化をサンプリング時間毎
の位置データとして求める第二の演算と、この第二の演
算により得られた位置データを新たな教示点の位置デー
タとして登録する処理とを行うものであることをを特徴
としている。
Further, the calculation means performs, for each of a plurality of teaching points, a first calculation that calculates the time required for a speed change as a multiple of the sampling time when the speed change before and after the teaching point is performed at a constant acceleration; A second calculation is performed to calculate the posture change of the robot body at the time of the speed change from the time obtained by the calculation as position data for each sampling time, and the position data obtained by this second calculation is used to calculate the position of the new teaching point. It is characterized in that it performs the process of registering it as data.

「作用」 本発明の工業用ロボットのオフライン教示装置によれば
、その演算手段の機能によって作成される教示点からな
る動作プログラムは、もとの動作プログラムの教示点前
後の速度変化が、所定の加速度による速度変化に沿って
、生戊されたポイントの数だけ段階的に行われるような
動作プログラムとなる。このため、前記ポイント前後の
速度変化は、そのポイント数を増やせば増やす程、もと
の教示点前後の速度変化に比べ非常に小さなものとなる
。したがって、速度変化点において発生する加速度を低
減することができるとともに、前記ポイント数を十分な
値に設定することにより、近似的に発生する加速度を前
記所定の加速度に等しくすることができる。
"Operation" According to the off-line teaching device for an industrial robot of the present invention, a motion program consisting of teaching points created by the function of the calculation means is such that the speed change before and after the teaching point of the original motion program is The motion program is performed step by step according to the number of generated points along the speed change due to acceleration. Therefore, as the number of points increases, the speed change before and after the point becomes much smaller than the speed change before and after the original teaching point. Therefore, the acceleration generated at the speed change point can be reduced, and by setting the number of points to a sufficient value, the acceleration generated approximately can be made equal to the predetermined acceleration.

「実施例」 以下、本発明の一実施例を第1図〜第7図により説明す
る。
``Example'' An example of the present invention will be described below with reference to FIGS. 1 to 7.

第l図は、本発明の一実施例であるオフライン教示装置
及び該装置が適用される教示・再生型の工業用ロボット
の構成を示す図である。
FIG. 1 is a diagram showing the configuration of an offline teaching device according to an embodiment of the present invention and a teaching/reproduction type industrial robot to which the device is applied.

図において符号lは、オフライン教示装置を示している
。このオフライン教示装置1は、表示装置2と、演算装
置3(演算手段)と、外部記憶及びプログラムデータ入
出力用フロッピーディスク装置4と、システム操作用入
力装置5と、情報出力用プリンタ6と、図形出力用ブロ
ック7とより構成される。
In the figure, the symbol l indicates an offline teaching device. This offline teaching device 1 includes a display device 2, a calculation device 3 (calculation means), a floppy disk device 4 for external storage and program data input/output, an input device 5 for system operation, and a printer 6 for information output. It is composed of a figure output block 7.

ここで、演算装置3は、後述する第4図に示すフローチ
ャートに従って、教示点前後の速度変化が所定の加速度
で行われるための位置データを複数の時点に対して求め
、該位置データからなる複数のポイントを新たな教示点
とする動作プログラムデータを、既製の動作プログラム
データから生成する機能(以下、この機能を“加速度制
限プログラム作成機能”と称する)を有する。
Here, the arithmetic device 3 obtains position data for a plurality of points in time for changing the velocity before and after the teaching point at a predetermined acceleration according to a flowchart shown in FIG. The present invention has a function of generating operation program data in which the points in FIG.

また、符号9はロボット本体を示している。ロボット本
体9は、主軸が3軸,手首部9aが3軸を有する6軸関
節型のもので、制御装置8により制御されて、手首部の
9aの先端に取り付けられたツールをワーク10に対し
て多次元的に移動させて作業をするものである。ここで
、制御装置8は、オフライン教示装fillにより作成
あるいは修正されフロッピーディスク11を介して入力
された動作プログラムに従ってロボット本体1を制御す
るもので、教示点間を一定速度でロボット本体lが動作
するように制御するものである。
Further, reference numeral 9 indicates the robot body. The robot body 9 is of a 6-axis articulated type with 3 main axes and 3 axes at the wrist 9a, and is controlled by a control device 8 to move a tool attached to the tip of the wrist 9a to a workpiece 10. The work is done by moving the robot in multiple dimensions. Here, the control device 8 controls the robot body 1 according to an operation program created or modified by the offline teaching device fill and input via the floppy disk 11, and the robot body 1 moves between teaching points at a constant speed. It is controlled so that

上記のように構成された工業用ロボットによれば、オフ
ライン教示装置lにより作成された動作プログラムに基
づいてロボット本体9を動作させ所望の作業を行わせる
ことができる。そして、この動作において発生する加速
度を所定の値に制限したい場合には、その動作プログラ
ムデータと加速度の設定値を演算装置3に入力し、これ
ら人力値から前記加速度制限プログラム作或機能により
新たな動作プログラムデータを作成し、この動作プログ
ラムデータに基づいてロボット本体9を動作させてやれ
ばよい。
According to the industrial robot configured as described above, the robot main body 9 can be operated to perform a desired work based on the operation program created by the offline teaching device 1. If it is desired to limit the acceleration generated in this operation to a predetermined value, the operation program data and the acceleration setting value are input to the calculation device 3, and a new value is generated from these human input values by creating the acceleration limiting program or function. What is necessary is to create operation program data and operate the robot body 9 based on this operation program data.

以下、演算装置3内で行われる前記加速度制限プログラ
ム作成機能におけるプログラムデータの生成動作につい
て詳細に説明する。まず、この動作において実行される
演算の基礎となる関係式及びそれに用いる記号について
説明する。
Hereinafter, the program data generation operation in the acceleration limiting program creation function performed within the arithmetic device 3 will be described in detail. First, the relational expressions that are the basis of the calculations executed in this operation and the symbols used therein will be explained.

ロボットベース座標(ロボット本体の据付面に固定され
た座標) から見たロボッ ト本体9の手首 座標(ロボッ ト本体9の手首部9 aに固定された 座標) の原点 (手首部9 aの基端位置) の位置べ ク トルを、 とし、 ロボットベース座標と手首座標との間の回転を表す回転
行列を、 とすると、 ロボット本体9の姿勢すなわち位置デ 一夕を表すロボッ トベース座標と手首座標との間 ?=  co.,o■ e3,  0−,  es,e
a]として、この関節角0と前記行列T(R,I)との
間の変換を、 R+  x =Trans (e) 及び、 e =Invtrans <R*  x)で表す。
The origin of the wrist coordinates of the robot body 9 (coordinates fixed to the wrist part 9a of the robot body 9) as seen from the robot base coordinates (coordinates fixed to the installation surface of the robot body) (base end position of the wrist part 9a) ) is the position vector, and the rotation matrix representing the rotation between the robot base coordinates and the wrist coordinates is, then the relationship between the robot base coordinates and the wrist coordinates representing the posture of the robot body 9, that is, the position data is ? = co. ,o■ e3, 0-, es,e
a], the transformation between this joint angle 0 and the matrix T(R, I) is expressed as R+ x = Trans (e) and e = Invtrans <R* x).

また、二つの回転行列R ,, R ,において、Rl
をn軸の回りに角度φ回転させるとR,に一致する場合
にこれらの関係を、 Rot(n.φ”)= R r−’−R *= R r
T−R tで表す。
Also, in the two rotation matrices R,, R, Rl
Rot(n.φ")= R r-'-R *= R r
Represented by T-Rt.

また、例えば教示点P1〜P,からなるもとの動作プロ
グラムのデータが第2図の折れ線(イ)に示す動作をな
すものである場合、これに対して曲線(口〉で示すよう
な教示点前後の速度変化が一定の加速度で行われる動作
(以下、“等加速動作”と称する)が考えられる。そし
て、この等加速動作において、第2図に示すように、等
速度移動時間?Tvとし、その前の加速移動時間の半分
をτ.,、その後の加速移動時間の半分をτ6,とする
と、T=T,+τ■+τ.    ・・・・・・(1)
という関係が成り立つ。また、第2図に示す各教示点(
P−1〜pt)のx,R,τ。1,τ.のデータが、第
3図に示すように与えられている場合、教示点間の速度
ベクトルはそれぞれ、 である。
Furthermore, for example, if the data of the original motion program consisting of teaching points P1 to P, performs the motion shown by the polygonal line (A) in FIG. An operation can be considered in which the velocity changes around a point are performed at a constant acceleration (hereinafter referred to as "uniform acceleration operation").In this uniform acceleration operation, as shown in Fig. 2, the uniform velocity movement time ?Tv If half of the previous accelerated travel time is τ., and half of the subsequent accelerated travel time is τ6, then T=T, +τ■+τ. (1)
This relationship holds true. In addition, each teaching point shown in Figure 2 (
P-1~pt) x, R, τ. 1, τ. When the data of is given as shown in FIG. 3, the velocity vectors between the teaching points are as follows.

また、 回転行列間の回転軸及び回転角は、 であり、 回転角速度は、 である。Also, The rotation axis and rotation angle between the rotation matrices are and The rotational angular velocity is It is.

また、 ボイン トP。を通過した時点からの時間 をtとすると、ポイントP。からポイントP,の間の等
速度移動領域■と、この等速度領域の前の等加速度領域
■と、その後の等加速度領域■におけるロボット本体の
姿勢を表す行列R,xは、となる。
Also, Boyd P. Let t be the time from the time of passing through point P. The matrix R,x representing the posture of the robot body in a constant velocity movement region (2) between and point P, a constant acceleration region (2) before this constant velocity region, and a constant acceleration region (2) after this constant velocity region is as follows.

また、 もとの動作プログラムに登録されている口ポット本体の
姿勢に関する生データである位置検出藩の出力値であっ
てi番目の教示点についての値をPt(+)とし、関節
角0との間の変換を、θ= Angle ( P t(
i))P =(i)= DAC ( e ) と表す。
In addition, let Pt(+) be the output value of the position detection field, which is the raw data regarding the posture of the mouth pot body registered in the original motion program, and the value for the i-th teaching point, and let the joint angle be 0. The transformation between θ=Angle (P t(
i)) P = (i) = DAC (e).

また、演算装置3に入力される加速度の制限値として、
ロボット各軸の最大角加速度をα...(j) [jl
〜6]とし、手首部1aの最大加速度をaaaXとする
In addition, as a limit value of the acceleration input to the calculation device 3,
The maximum angular acceleration of each axis of the robot is α. .. .. (j) [jl
~6] and the maximum acceleration of the wrist portion 1a is aaaX.

また、制御装置8がロボット本体9を制御する際のサン
プリング時間をT.とする。
Also, the sampling time when the control device 8 controls the robot body 9 is T. shall be.

そして、演算装置3は、第4図に示すように、下記のス
テップsp1−sp21の演算処理を行うことにより加
速度制限プログラム作成機能を実行する。
Then, as shown in FIG. 4, the arithmetic device 3 executes the acceleration limiting program creation function by performing the arithmetic processing of steps sp1 to sp21 below.

[ステップSPII 生戊する教示点の数を表す変数Kに初期値“l”を代入
してステソブSP2に進む。
[Step SPII: Substitute the initial value "l" to the variable K representing the number of teaching points to be generated, and proceed to STEP SP2.

[ステップSP2] 4++ハ!Ikllr:イ。〃二ノの紐早占来8富,“
1”J,、?教示点毎にステップSP3〜ステップS 
P20の処理を繰り返し、教示点番号1の処理まで終了
したらステップsp21に進む。
[Step SP2] 4++ Ha! Ikllr: I. 〃Nino cord early fortune telling 8 wealth,“
1”J,,? Step SP3 to Step S for each teaching point
The process of P20 is repeated, and when the process of teaching point number 1 is completed, the process proceeds to step sp21.

[ステップSP3] 教示点番号iが“l”ならば、すなわち最初の教示点(
動作開始点)である場合に、下記の演算■,■を行い、
ステップSP4に進む。
[Step SP3] If the teaching point number i is "l", that is, the first teaching point (
operation start point), perform the following calculations ■ and ■,
Proceed to step SP4.

■動作開始点の位置センサの出力値P.(t)からロボ
ット本体の関節角を計算し0。,e.に代入するととも
に、この0。からロボット本体の姿勢を表す位置ベクト
ルと回転行列を計算し、それぞれIonχ.及びR。,
R,に代入する。
■Output value P of the position sensor at the starting point of operation. The joint angle of the robot body is calculated from (t) and becomes 0. , e. As well as assigning this 0. The position vector and rotation matrix representing the posture of the robot body are calculated from Ionχ. and R. ,
Substitute into R.

■ Va+ω。,φ。+ fL Or T VO* M
■にそれぞれ初期値“O”を代入する。
■ Va+ω. ,φ. + fL Or T VO* M
Assign the initial value "O" to each of (2).

[ステップSP4] 教示点番号iが処理の最終教示点Iであれば、教示点■
の関節角^ngle(P−( 1 ))を計算し0,に
代入し、そうでなければ、教示点iの次の教示点の関節
角^ngle(Pt( + +1 ))を計算し0,に
代入する。そしプ  フ−S...  −/ cD  
e: + − ;忙ナ1?ステップsp5コ 関節角0,から位置ベクトルと回転行列を計算し、それ
ぞれI■ R.に代入する。また、Rot(n .,φ
1)=R I−’・R,となるrL l rφ1を計算
し、ステップSP6に進む。
[Step SP4] If the teaching point number i is the final teaching point I of the process, the teaching point ■
Calculate the joint angle ^ngle(P-(1)) and substitute it to 0. If not, calculate the joint angle ^ngle(Pt(++1)) of the next teaching point after teaching point i and set it to 0. , is assigned to . Soshippu Fu-S. .. .. -/cD
e: + - ; Busy 1? Step sp5: Calculate the position vector and rotation matrix from the joint angle 0, and calculate the I■R. Assign to . Also, Rot(n ., φ
1) = R I-'·R, rL l rφ1 is calculated, and the process proceeds to step SP6.

[ステップSP6] 教示点iから教示点illまでの教示速度v (i)が
0.jllm+/sより大であるときには、v(i)を
V,に代入し、そうでないときには、0。Ola/sを
v1に代入する。
[Step SP6] The teaching speed v (i) from teaching point i to teaching point ill is 0. If it is greater than jllm+/s, assign v(i) to V, otherwise 0. Assign Ola/s to v1.

そして、ステップSP7に進む。Then, the process advances to step SP7.

[ステップSP7] 位置ベクトルIwχ,が表すポイント(すなわち、ロボ
ット本体9の手首部位置)間を速度v1で移動するに要
する時間を計算しT.に代入する。
[Step SP7] Calculate the time required to move between the points represented by the position vector Iwχ (i.e., the wrist position of the robot body 9) at the speed v1, and calculate T. Assign to .

そして、ステップSP8に進む。Then, the process advances to step SP8.

[ステップSP8] 関節角0,から0,までロボット本体9の姿勢が変化す
る際の各軸(j =1〜6)の角度変化O*(j)−e
 .(j)を各軸の最大角速度ωmaxF)でそれぞれ
割った値をT ,U)にそれぞれ代入する。そして、ス
テップSP9に進む。
[Step SP8] Angle change O*(j)-e of each axis (j = 1 to 6) when the posture of the robot body 9 changes from joint angle 0 to 0.
.. The values obtained by dividing (j) by the maximum angular velocity ωmaxF) of each axis are assigned to T and U), respectively. Then, the process advances to step SP9.

ここで、最大角速度ωmaxF)はロボット毎に設定さ
れ予め演算手段3に入力された定数である。
Here, the maximum angular velocity ωmaxF) is a constant set for each robot and input into the calculation means 3 in advance.

[ステップSP9] Tel T−(J)の中の最大値をT v,に代入し、
この時間T Vlで位置ベクトルI+の点からI,の点
まで移動するための速度ベクトルを計算し■,に代入す
る。
[Step SP9] Assign the maximum value in Tel T-(J) to T v,
The velocity vector for moving from the position vector I+ to the point I in this time TVl is calculated and substituted into {circle around (2)}.

また、同様に、時間Tv1で角度ψ1回転するための角
速度、及び関節角Olから0,まで回転するための角速
度を計算し、それぞれφ1及びω1に代入する。
Similarly, the angular velocity for rotating by angle ψ1 at time Tv1 and the angular velocity for rotating from joint angle Ol to 0 are calculated and substituted into φ1 and ω1, respectively.

そして、ステップSPIOに進む。Then, the process advances to step SPIO.

[ステップSPIO] ロボットの手首部における加速度の制限値a +max
で手首部の速度がV。からv1まで変化するに要する時
間を計算し、Taffiに代入する。そして、ステノプ
SPIIに進む。
[Step SPIO] Limit value a +max of acceleration at the wrist of the robot
The velocity of the wrist is V. The time required to change from v1 to v1 is calculated and substituted into Taffi. Then proceed to Stenop SPII.

[ステップSPII] 各軸の角加速度の制限値α...( j)で、各軸の角
速度がω。(Dからω1(j)まで変化するに要する時
間を計算し、T .(j)に代入する。そして、ステッ
プS?l2に進む。
[Step SPII] Limit value α of angular acceleration of each axis. .. .. In (j), the angular velocity of each axis is ω. (Calculate the time required to change from D to ω1(j) and substitute it for T.(j). Then, proceed to step S?l2.

[ステップSPl2コ 時開T。, T.(J)の中の最大値の半分を計算して
τ■に代入し、ステップsp13に進む。
[Step SPl2 open T. , T. Half of the maximum value in (J) is calculated and substituted for τ■, and the process proceeds to step sp13.

[ステップSPl3] 教示点iにおける加速時間の半分であるτ.と、教示点
i−1における加速時間の半分であるτ■と、教示点i
−1から教示点iまでの移動時間T”voとから、前述
の基礎式(1)により、教示点i−1から教示点iまで
の間の等速移動時間を計算しTVに代入する。そして、
ステップspl4に進む。
[Step SP13] τ, which is half of the acceleration time at the teaching point i. , τ■ which is half of the acceleration time at teaching point i-1, and teaching point i
Based on the travel time T''vo from -1 to the teaching point i, the constant velocity travel time from the teaching point i-1 to the teaching point i is calculated using the basic equation (1) described above and substituted into TV. and,
Proceed to step spl4.

ここで、τ4.はM■から下記式により求められる。Here, τ4. is determined from M■ by the following formula.

τ1,二M■・T. [ステップsp14コ TVとτ6,の2倍とをそれぞれロボットの制御系にお
けるサンプリング時間T.で除し、少数点以下は四捨五
入して切り上げ整数化する。そして、その計算結果をそ
れぞれM V l r M a tにそれぞれ代入しス
テップSPl5に進む。
τ1,2M■・T. [Step sp14 TV and twice τ6 are respectively set as sampling times T. in the control system of the robot. Divide by , round off to the nearest whole number, and round up to the nearest integer. Then, the calculation results are substituted into M V l r M a t respectively, and the process proceeds to step SP15.

[ステップSPl5] M y1が“l”より小さい時には、M vlに新たに
“1゛を代入し、ステップSPl6に進む。
[Step SP15] When M y1 is smaller than "l", "1" is newly assigned to M vl and the process proceeds to step SP16.

[ステップS P l 6] ステップSPl4, ステップSPl5において決定さ
れたM Vl+ Matから下記式により、教示点il
から教示点iまでの移動時間を計算しT。に代入する。
[Step SPl6] From the M Vl+ Mat determined in Step SPl4 and Step SPl5, the teaching point il is determined by the following formula.
Calculate the travel time from T to teaching point i. Assign to .

’r(1=T’a (Mv,+0.5  (M.++M
.t))そして、この時間T0で位置ベクトルI。から
rIまで変化するための速度ベクトルと、角度ψ。だけ
変化するための角速度とを計算し、それぞれV。,φ0
に代入する。そして、ステップSPl7に進む。
'r(1=T'a (Mv, +0.5 (M.++M
.. t)) Then, at this time T0, the position vector I. Velocity vector and angle ψ for changing from to rI. Calculate the angular velocity for the change by V, respectively. ,φ0
Assign to . Then, the process advances to step SP17.

[ステップSP17] K=lでなければ、V.とM y .とをV.(K−1
)及びS.(K−1)にそれぞれ代人して、ステップS
Pl8に進む。
[Step SP17] If K=l, V. and M y. and V. (K-1
) and S. (K-1) on behalf of each other, step S
Proceed to Pl8.

[ステップS P l 8] Ma.にサンプリング時間T.を掛けてさらに172倍
した値をτ,に代入する。そして、ステ,プSPl9に
進む。
[Step S P l 8] Ma. The sampling time T. Then, the value obtained by multiplying by 172 is assigned to τ. Then, proceed to step SP19.

?ステノプSP19コ 加速時間τ■位置ベクトルI.回転行列R I+速度ベ
クトルV。,v1,回転軸n。,n.角度φ。,φ1か
ら、前述の基礎式(5)により、教示点i前後の速度変
化が設定加速度( a a+aXlα...( j )
)で行われるための位置データをサンプリング時間毎に
求める。
? Stenop SP19 acceleration time τ ■Position vector I. Rotation matrix R I + velocity vector V. , v1, rotation axis n. , n. Angle φ. , φ1, the speed change before and after the teaching point i is the set acceleration (a a+aXlα...(j)
) is obtained at each sampling time.

すなわち、L=OからM。までLを一つずつ増やしてそ
の都度以下計算を下記順番で行う。
That is, L=O to M. Increase L by one until 1, and perform the following calculations each time in the following order.

t’=T.−L−τ, 1+=(τt−  t ’)”/ 4  τ,t,− 
(τ,+ t ’)”/4τ,r””X++ L IV
o+ t tVA! =R 1’ROt[n Or t
+φo]−Rot[n l+ t tφ,]e=inv
trans(I,  7’i’)P.(K)=DAC(
e) S .(K )= 1 V .(K )= V。
t'=T. -L-τ, 1+=(τt-t')"/4 τ,t,-
(τ, + t')”/4τ, r””X++ L IV
o+ttVA! =R 1'ROt[n Or t
+φo]−Rot[n l+ t tφ,]e=inv
trans(I, 7'i')P. (K)=DAC(
e) S. (K)=1V. (K)=V.

D,(k)一Dk(i) K  =  K  −+−  1 ?して、ステップS P20に進む。D,(k)-Dk(i) K = K −+− 1 ? Then, the process proceeds to step S P20.

[ステップsp20] 下記式のように各値を代入しステップSP3に戻る。但
し、1=【の時にはステップsp21に進む。
[Step sp20] Substitute each value as shown in the following formula and return to step SP3. However, when 1=[, the process proceeds to step sp21.

xI=x*+ f3l=f3tr Rr=Rt*  v
o=v++ωO:ωIIMal” Mat,  T v
o= T VI+  n o= n I+ψ0−ψ1 [ステップSP21] Kの値を″1”減らして処理を終了する。
xI=x*+ f3l=f3tr Rr=Rt* v
o=v++ωO:ωIIMal” Mat, T v
o=TVI+no o=nI+ψ0-ψ1 [Step SP21] Decrease the value of K by "1" and end the process.

以上のステップSPI〜ステップsp21の処理により
、教示点毎に、教示点前後の速度変化(Vo”V++ω
。・ωl)が設定加速度(a■8,α■x( j))よ
り小さな加速度でしかも等加速度で行われるための時間
がサンプリング時間T.の倍数MM,として求められ、
さらに、この時間をもとに前記基礎式(5)よりサンプ
リング時間T.毎のロボット本体9の姿勢情報(すなわ
ち、位置検出器の出力値P.(K))が計算され新たな
プログラムの中間点位置データ(もとのプログラムの教
示点に対して新たに生成したプログラムの教示点を中間
点と称することとする。)となる。そして、この中間点
の数は、もとのプログラムの教示点ひとつに対してM。
Through the above processing from step SPI to step sp21, the velocity change before and after the teaching point (Vo"V++ω
.・The time it takes for ωl) to be performed at a smaller acceleration than the set acceleration (a8, αx(j)) and at a constant acceleration is the sampling time T. It is found as a multiple of MM,
Furthermore, based on this time, the sampling time T. The posture information of the robot body 9 (i.e., the output value P.(K) of the position detector) for each time is calculated, and the intermediate point position data of the new program (the newly generated program for the teaching point of the original program) is calculated. The teaching point of is called the intermediate point.). The number of intermediate points is M for one teaching point of the original program.

+1個になるのであって、その全数は−E記処理終了後
のKの値となる。
The total number becomes +1, and the total number becomes the value of K after completing the -E processing.

また、この中間点の、速度データはS .(K ), 
V .(K )であり、I/OデータはD.(K)とな
る。なお、S.(K)は次の中間点までの移動時間をサ
ンプリング時間T.の倍数として表したものである。
Also, the speed data at this intermediate point is S. (K),
V. (K), and the I/O data is D. (K). In addition, S. (K) is the travel time to the next intermediate point at sampling time T. It is expressed as a multiple of .

すなわち、例えば第5図に示すように、もとのプログラ
ムの教示点(図において“○”で示す)に対して、新た
な中間点く図において“●”で示す)が生成される。な
お、第5図は説明の便宜上変位を一次元的に表したもの
であって、実際には本実施例の場合6次元的なものであ
る。
That is, as shown in FIG. 5, for example, a new intermediate point (indicated by "●" in the figure) is generated for the teaching point (indicated by "○" in the figure) of the original program. It should be noted that FIG. 5 shows the displacement in one dimension for convenience of explanation, and in reality, in this embodiment, the displacement is six-dimensional.

そして、新たに生戊された中間点の速度データは、もと
のプログラムの設定速度と等しい区間は除いて、1(K
)=1でありサンプリング時間T.で中間点間を移動す
るための値となる。
Then, the speed data of the newly created intermediate point is 1(K
)=1 and the sampling time T. This is the value for moving between intermediate points.

またここで、ステップSP7〜ステノプSP9において
は、各軸の角速度がそれぞれの許容最大角速度ω,.a
x(J)を越えないように、教示プログラムに?定され
た速度V(i)を下方修正し、各軸が同時間T,で移動
するための各速度(V,,ω1,φ1)を決定する処理
が行われている。
Also, in steps SP7 to SP9, the angular velocities of the respective axes are changed to the respective allowable maximum angular velocities ω, . a
In the teaching program so as not to exceed x (J)? A process is being performed to downwardly correct the determined speed V(i) and determine each speed (V,, ω1, φ1) for each axis to move in the same time T,.

そして、上記処理によって生成された動作プログラムデ
ータによりロボットを動作させれば、第6図の(a)に
示すように若干もとの教示点より時間的に軌道がずれる
ように動作し、第6図の(b)に示すように中間点の数
だけ段階的に速度が変化する。この際、速度の変化点で
ある中間点において発生する加速度は、速度変化ΔV(
v+  VO又はω1−ω。〉が従来に比べi/M.t
倍に小さくなっているため、第6図の(C)に示すよう
に小さくなる。すなわち、速度変化に対してサンプリン
グ時間T.が十分小さく設定されていれば、近似的に第
7図に示すような等加速度運動でロボットが動作し、発
生する加速度は略設定値a.■あるいはα■.(j)以
下となる。
Then, when the robot is operated according to the operation program data generated by the above processing, the robot operates so that the trajectory is slightly shifted in time from the original teaching point, as shown in FIG. As shown in (b) of the figure, the speed changes step by step by the number of intermediate points. At this time, the acceleration generated at the intermediate point, which is the point of change in speed, is the speed change ΔV (
v+VO or ω1−ω. > compared to conventional i/M. t
Since it is twice as small, it becomes smaller as shown in FIG. 6(C). That is, the sampling time T. If is set to a sufficiently small value, the robot will move approximately with uniform acceleration motion as shown in FIG. 7, and the generated acceleration will be approximately equal to the set value a. ■Or α■. (j) The following is true.

本実施例のオフライン教示装置によれば、ロボット本体
9の動作において発生する加速度が略所定の加速度以下
になるように動作プログラムを変更することができる。
According to the offline teaching device of this embodiment, the operation program can be changed so that the acceleration generated during the operation of the robot body 9 is approximately equal to or less than a predetermined acceleration.

したがって、ロボット本体9及び制御装置8からなるロ
ボットシステムになんら改造を加えることなく容易にし
かも確実にロボット本体9の動作の加速度制限を行うこ
とができるという効果がある。
Therefore, there is an effect that the acceleration of the operation of the robot body 9 can be easily and reliably limited without making any modifications to the robot system consisting of the robot body 9 and the control device 8.

しかも、変更された動作プログラムはそのデータの形態
においてなんら変化していないので、変更後の動作プロ
グラムは、従来と同様に修正することができる。
Moreover, since the changed operating program has not changed in any way in its data format, the changed operating program can be modified in the same manner as before.

また、加速度制限を行うための処理をオフライン教示装
置l内で行うことができるため、動作プログラムに関す
る作業、すなわち教示作業(ちととなるプログラムの作
成作業),修正作業,動作シミュレーション等をすべて
オフラインで行うことができるという効果がある。
In addition, since the processing for limiting acceleration can be performed within the offline teaching device, all work related to the motion program, such as teaching work (creating a small program), correction work, and motion simulation, can be performed offline. The effect is that it can be done.

なお、前述したようにオフライン教示装置lにより作成
された動作プログラムによると、もとの教示点をロボッ
ト本体が通過しない可能性があるが、予め同一位置を2
回教示しておけばこれを避けることができる。
Note that, as mentioned above, according to the operation program created by the offline teaching device l, there is a possibility that the robot body will not pass through the original teaching point;
This can be avoided by teaching twice.

また、なお、上記実施例においては、加速度制限プログ
ラム作成機能をオフライン教示装置lに設けたが、例え
ばロボット本体9の制御装置8に設けてもよい。
Further, in the above embodiment, the acceleration limit program creation function is provided in the offline teaching device 1, but it may also be provided in the control device 8 of the robot body 9, for example.

「発明の効果」 本発明の工業用ロボットのオフライン教示装置によれば
、ロボット本体9の動作において発生する加速度が略所
定の加速度以下になるように動作プログラムを変更する
ことができる。このため、この動作プログラムによりロ
ボットを制御すれば、ロボット本体及び制御装置等から
なるロボットシステムになんら改造を加えることなく容
易にしかも確実にロボット本体の動作の加速度制限を行
うことができる。
[Effects of the Invention] According to the offline teaching device for an industrial robot of the present invention, the operation program can be changed so that the acceleration generated during the operation of the robot body 9 is approximately equal to or less than a predetermined acceleration. Therefore, by controlling the robot using this operation program, it is possible to easily and reliably limit the acceleration of the robot body's motion without making any modifications to the robot system consisting of the robot body, the control device, and the like.

したがって、ロボットの動作精度を向上させ、またロボ
ット本体を構成する部品の寿命を向上させることが容易
に実現できるという効果を奏する。
Therefore, it is possible to easily improve the operational accuracy of the robot and extend the life of the parts constituting the robot body.

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

第1図〜第7図は本発明の実施例を説明するための図で
あって、第l図は工業用ロボット及びオフライン教示装
置の全体構成を示す斜視図である。また、第2図及び第
3図は、それぞれ演算装置の演算処理において用いられ
る基礎式等を説明するための図であって、第2図は時間
と変位の関係を示す図、第3図は各教示点のデータを示
す図である。また、第4図は演算装置の演算処理を示す
PAD図である。また、第5図は演算装置の演算によ−
り生成されたプログラムデータを説明するための図であ
って、時間と変位の関係を示す図である。また、第6図
.第7図は、それぞれ生成されたプログラムによるロボ
ット本体の動作を説明するための図であって、第6図及
び第7図の(a)はそれぞれ時間と変位の関係を示す図
、第6図及び第7図の(b)はそれぞれ速度の変化を示
す図、第6図及び第7図の(C)はそれぞれ加速度の変
化を示す図である。 また、第8図は、従来技術を説明するための図であって
、第8図の(a)は時間と変位の関係を示す図、第8図
の(b)は速度の変化を示す図、第8図の(C)は加速
度の変化を示す図である。 l・・・・・・オフライン教示装置、 3・・・・・・演算装置(演算手段)、9・・・・・・
ロボット本体。
1 to 7 are diagrams for explaining an embodiment of the present invention, and FIG. 1 is a perspective view showing the overall configuration of an industrial robot and an offline teaching device. Moreover, FIGS. 2 and 3 are diagrams for explaining basic formulas used in the calculation processing of the calculation device, respectively, and FIG. 2 is a diagram showing the relationship between time and displacement, and FIG. 3 is a diagram showing the relationship between time and displacement. It is a figure which shows the data of each teaching point. Further, FIG. 4 is a PAD diagram showing arithmetic processing of the arithmetic device. In addition, Fig. 5 shows -
FIG. 3 is a diagram for explaining program data generated by the above process, and is a diagram showing the relationship between time and displacement. Also, Figure 6. FIG. 7 is a diagram for explaining the operation of the robot body according to each generated program, and FIGS. 6 and 7 (a) are diagrams showing the relationship between time and displacement, respectively. and (b) of FIG. 7 are diagrams each showing changes in velocity, and (c) of FIGS. 6 and 7 are diagrams each showing changes in acceleration. Further, FIG. 8 is a diagram for explaining the prior art, in which (a) in FIG. 8 is a diagram showing the relationship between time and displacement, and (b) in FIG. 8 is a diagram showing changes in velocity. , FIG. 8(C) is a diagram showing changes in acceleration. 1...offline teaching device, 3...computing device (computing means), 9...
robot body.

Claims (3)

【特許請求の範囲】[Claims] (1)複数の教示点から動作プログラムを作成する工業
用ロボットのオフライン教示装置であって、複数の教示
点での加速度が所定の値となるように複数の教示点から
複数のポイントを新たな教示点として作成する機能を有
する演算手段を備えたことを特徴とする工業用ロボット
のオフライン教示装置。
(1) An off-line teaching device for industrial robots that creates a motion program from multiple teaching points, and which creates new points from the multiple teaching points so that the acceleration at the multiple teaching points becomes a predetermined value. 1. An offline teaching device for an industrial robot, characterized by comprising a calculation means having a function of creating a teaching point.
(2)前記加速度の値は、前記機能を演算手段に実行さ
せる際に任意に設定できるようになっていることを特徴
とする請求項1記載の工業用ロボットのオフライン教示
装置。
(2) The off-line teaching device for an industrial robot according to claim 1, wherein the value of the acceleration can be arbitrarily set when causing the calculation means to execute the function.
(3)前記演算手段は、複数の教示点毎に、教示点前後
の速度変化が等加速度で行われる場合の速度変化に要す
る時間をサンプリング時間の倍数として求める第一の演
算と、この第一の演算により得られた時間から前記速度
変化時のロボット本体の姿勢変化をサンプリング時間毎
の位置データとして求める第二の演算と、この第二の演
算により得られた位置データを新たな教示点の位置デー
タとして登録する処理とを行うものであることを特徴と
する請求項1記載の工業用ロボットのオフライン教示装
置。
(3) The calculation means performs a first calculation for each of a plurality of teaching points, which calculates the time required for a speed change as a multiple of the sampling time when the speed change before and after the teaching point is performed at a constant acceleration; A second calculation is performed to calculate the posture change of the robot body at the time of the speed change from the time obtained by the calculation as position data for each sampling time, and the position data obtained by this second calculation is used to calculate the position data of the new teaching point. 2. The offline teaching device for an industrial robot according to claim 1, wherein the offline teaching device for an industrial robot performs a process of registering the information as position data.
JP18834389A 1989-07-20 1989-07-20 Offline teaching device for industrial robots Pending JPH0352003A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18834389A JPH0352003A (en) 1989-07-20 1989-07-20 Offline teaching device for industrial robots

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18834389A JPH0352003A (en) 1989-07-20 1989-07-20 Offline teaching device for industrial robots

Publications (1)

Publication Number Publication Date
JPH0352003A true JPH0352003A (en) 1991-03-06

Family

ID=16221959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18834389A Pending JPH0352003A (en) 1989-07-20 1989-07-20 Offline teaching device for industrial robots

Country Status (1)

Country Link
JP (1) JPH0352003A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994029775A1 (en) * 1993-06-07 1994-12-22 Masayuki Hamura Method for off-line teaching of robot
US5548194A (en) * 1993-06-08 1996-08-20 Fanuc Ltd. Control method and control device for a deburring robot
JP2013059852A (en) * 2011-08-23 2013-04-04 Panasonic Corp Parallel link robot and operation teaching method therefor
JP2019000980A (en) * 2011-02-07 2019-01-10 デュール システムズ アーゲーDurr Systems AG Adapting the dynamics of at least one robot

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5851305A (en) * 1981-09-24 1983-03-26 Hitachi Ltd Path interpolation system for robot hand
JPS6310207A (en) * 1986-07-02 1988-01-16 Matsushita Electric Ind Co Ltd Control method for articulated robot

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5851305A (en) * 1981-09-24 1983-03-26 Hitachi Ltd Path interpolation system for robot hand
JPS6310207A (en) * 1986-07-02 1988-01-16 Matsushita Electric Ind Co Ltd Control method for articulated robot

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994029775A1 (en) * 1993-06-07 1994-12-22 Masayuki Hamura Method for off-line teaching of robot
US5668930A (en) * 1993-06-07 1997-09-16 Fanuc Ltd Off-line teaching method for a robot
US5548194A (en) * 1993-06-08 1996-08-20 Fanuc Ltd. Control method and control device for a deburring robot
JP2019000980A (en) * 2011-02-07 2019-01-10 デュール システムズ アーゲーDurr Systems AG Adapting the dynamics of at least one robot
JP2013059852A (en) * 2011-08-23 2013-04-04 Panasonic Corp Parallel link robot and operation teaching method therefor

Similar Documents

Publication Publication Date Title
US8560122B2 (en) Teaching and playback method based on control of redundancy resolution for robot and computer-readable medium controlling the same
CN108241339B (en) Motion solving and configuration control method of humanoid mechanical arm
JP3207728B2 (en) Control method of redundant manipulator
CN115351780A (en) Method for controlling a robotic device
JP4269150B2 (en) Robot controller
JPH0720941A (en) Flexible servo control method capable of specifying softness on work coordinates
CN115922684B (en) Singular point processing method, device, equipment and medium for six-axis robot
CN113927603A (en) Mechanical arm dragging control method and device, computer equipment and storage medium
JPH0352003A (en) Offline teaching device for industrial robots
Luo et al. Interactive generation of dynamically feasible robot trajectories from sketches using temporal mimicking
JPH0630012B2 (en) Control method for industrial robot
CN112135718B (en) Control of robots
Reyes-Uquillas et al. Online motion adjustment using compliance control for a multi-axis robot manipulator
Matour et al. Intuitive robot path planning through augmented reality
JP3668821B2 (en) Robot controller and robot control method
JPH02310706A (en) Articulated robot controller
JPH0385608A (en) How to control the robot
JPH11198072A (en) Minimum time speed control device for robot
Yovchev et al. Iterative learning control of hard constrained robotic manipulators
Potkonjak et al. Concerning the primary and secondary objectives in robot task definition—the “learn from humans” principle
JPS5924313A (en) High-speed trajectory generator
JPS63184806A (en) Relative coordinate system information teaching system by robot
Prokhorenko et al. Closed-Form Kinematics Solutions for Redundant Medical Robots with Joint Limits and Singularity Avoidance
JP2576176B2 (en) Robot control method
CN119795162A (en) An online trajectory planning attitude interpolation method and system based on Lie group and Lie algebra