JPH1124721A - Robot controller - Google Patents

Robot controller

Info

Publication number
JPH1124721A
JPH1124721A JP17475597A JP17475597A JPH1124721A JP H1124721 A JPH1124721 A JP H1124721A JP 17475597 A JP17475597 A JP 17475597A JP 17475597 A JP17475597 A JP 17475597A JP H1124721 A JPH1124721 A JP H1124721A
Authority
JP
Japan
Prior art keywords
trajectory
points
point
robot
interpolation
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.)
Withdrawn
Application number
JP17475597A
Other languages
Japanese (ja)
Inventor
Yoshiko Iriyama
佳子 入山
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.)
Tokico 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 JP17475597A priority Critical patent/JPH1124721A/en
Publication of JPH1124721A publication Critical patent/JPH1124721A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To reproduce a smooth curvilinear track for a robot with a small pieces of representative points, to obtain improved production efficiency and reduced operator's labor, and to secure long-period robot life and improve the track precision. SOLUTION: An operator instructs 2n pieces of representative points through an input device 2 and combinations of pairing up the instruction points Pi are generated. Then the pitch of a track generated between paired instruction points is indicated and the controller 2 divides the part between the combined instruction points by a division number (m) calculated from the pitches to generate intermediate points Pjk. Then interpolating tracks La, L1...Lb connecting between the respective instruction points and between the respective intermediate points are generated and connected together by curves and arcs in order to generate an operation track. When the robot 5 is put into actual operation, the controller 2 generates the operation track by following the procedure and controls the operation of the robot 5 according to it.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、教示された代表点
の間を補間して動作軌道を生成し、当該動作軌道に従っ
てロボットを動作させるロボット制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a robot controller for generating an operation trajectory by interpolating between taught representative points and operating a robot according to the operation trajectory.

【0002】[0002]

【従来の技術】従来、教示再生型のロボット制御におい
ては、ロボットに曲線軌道を再生させる場合、曲線を短
い直線の集合として各直線の代表点を教示し、曲線軌道
を短い直線軌道の集合で代替して再生させることとして
いた。
2. Description of the Related Art Conventionally, in a teaching reproduction type robot control, when a robot reproduces a curved trajectory, a representative point of each straight line is taught as a set of short straight lines, and the curved trajectory is represented by a set of short straight trajectories. Instead, it was to be played.

【0003】[0003]

【発明が解決しようとする課題】ところで、上記従来の
ロボット制御において、滑らかな曲線軌道を再生させる
ためには、曲線をより細かい多くの直線に細分化し、こ
れに応じた多数の代表点を教示する必要があった。この
ため、従来においては、教示に長い時間を要し、生産効
率が低下するという問題点を有していた。
In the above-described conventional robot control, in order to reproduce a smooth curve trajectory, the curve is subdivided into a number of finer straight lines, and a number of representative points corresponding thereto are taught. I needed to. For this reason, conventionally, there has been a problem that a long time is required for teaching and production efficiency is reduced.

【0004】更に、再生時の実際の動作軌道が不適切で
ある場合には各教示点の位置を修正する必要があるが、
この修正は、多数の短い直線相互間の位置関係をそれぞ
れ補正することに相当するので、修正工数が多く、長時
間を要する煩雑なものであった。又、このようなことか
ら、特にリモート教示の場合には、動作中のロボットの
近くでオペレータが長時間の作業を行うことになるた
め、オペレータは周囲の状況に十分注意して長時間の作
業を行わなければならず、多大な労力を要していた。
Further, if the actual motion trajectory during reproduction is inappropriate, it is necessary to correct the position of each teaching point.
Since this correction is equivalent to correcting the positional relationship between a number of short straight lines, the number of correction steps is large, and it takes a long time and is complicated. Also, from this point, especially in the case of remote teaching, the operator performs a long-time work near the operating robot. Had to be performed, which required a great deal of effort.

【0005】一方、ロボットの側においては、曲線軌道
を短い直線軌道の集合によって再生させることとする
と、動作軌道中に速度、加速度の不連続点が存在するこ
とになるので、かかる不連続点でロボットの可動部に大
きな負担がかかると共に、動作軌道が振動的になる。こ
のため、従来のロボット制御は、ロボットの寿命を短縮
することになると共に、軌跡精度を低下させるという問
題点も有していた。
On the other hand, on the robot side, if a curved trajectory is reproduced by a set of short straight trajectories, there will be discontinuities in speed and acceleration in the motion trajectory. A heavy load is applied to the movable part of the robot, and the motion trajectory becomes vibratory. For this reason, the conventional robot control has a problem that the life of the robot is shortened and the trajectory accuracy is reduced.

【0006】本発明はこのような事情に鑑みてなされた
もので、数少ない代表点でロボットに滑らかな曲線軌道
を再生させることを可能とし、教示及び軌道修正に要す
る時間を短縮して生産効率の向上とオペレータの労力軽
減を図ることができ、かつ、動作速度及び加速度の変化
を緩やかにして長期間のロボット寿命の確保と軌跡精度
の向上を図ることができるロボット制御装置を提供する
ことを目的とする。
The present invention has been made in view of such circumstances, and enables a robot to reproduce a smooth curved trajectory at a few representative points, shortens the time required for teaching and trajectory correction, and improves production efficiency. An object of the present invention is to provide a robot control device which can improve the operation and reduce the labor of the operator, and can secure a long-term robot life and improve the trajectory accuracy by gradually changing the operation speed and acceleration. And

【0007】[0007]

【課題を解決するための手段】請求項1記載の発明は
(例えば、図2参照)、ロボットを動作させる軌道の代
表点及び各種指示データを入力する入力手段を具備し、
各代表点を結ぶ補間軌道を生成して当該補間軌道に従っ
て前記ロボットを動作させるロボット制御装置におい
て、入力された代表点(P1〜P8)を2点ずつ組み合わ
せ、組み合わせた代表点(P1とP5、P2とP6、P3と
P7、P4とP8)の間をそれぞれ所定数で内分する中間
点(P11、P12、…、P64)を生成する第1の演算手段
と、前記組み合わせた代表点のうちの一方を結ぶ第1の
補間軌道(La)と、前記組み合わせた代表点のうちの
他方を結ぶ第2の補間軌道(Lb)とを生成すると共
に、前記代表点の一方それぞれから順次位置する前記中
間点を順次新たに代表点として、前記第1、第2の補間
軌道の間に新たな補間軌道(L1〜L6)を順次生成する
第2の演算手段とを有することを特徴としている。
The invention according to claim 1 (for example, see FIG. 2) comprises input means for inputting a representative point of a trajectory for operating a robot and various instruction data,
In a robot controller for generating an interpolation trajectory connecting the representative points and operating the robot according to the interpolation trajectory, the input representative points (P1 to P8) are combined two by two, and the combined representative points (P1 and P5, P1 and P6, P3 and P7, and P4 and P8), respectively, a first calculating means for generating intermediate points (P11, P12,..., P64) which internally divide by a predetermined number; A first interpolation trajectory (La) connecting one of the representative points and a second interpolation trajectory (Lb) connecting the other of the combined representative points are generated, and the first interpolation trajectory (La) is sequentially located from each of the representative points. And a second calculating means for sequentially generating new interpolation trajectories (L1 to L6) between the first and second interpolation trajectories by sequentially setting intermediate points as new representative points.

【0008】請求項2記載の発明は(例えば、図7参
照)、請求項1記載のロボット制御装置において、前記
第2の演算手段によって生成された各補間軌道(L1〜
L4)を、前記代表点(P1〜P8)及び前記中間点(P1
1、P12、…、P24)と共に、前記入力手段から入力さ
れた指示データに従って分割する分割点(Q11、Q13、
…、Q46)を求め、前記代表点及び前記中間点並びに前
記分割点を新たに代表点(Q10〜Q47)として、前記各
補間軌道と異なる態様の補間軌道(L′1〜L′8)を生
成する第3の演算手段を更に有することを特徴としてい
る。
According to a second aspect of the present invention (see, for example, FIG. 7), in the robot controller according to the first aspect, each of the interpolation trajectories (L1 to L1) generated by the second arithmetic means is provided.
L4), the representative point (P1 to P8) and the intermediate point (P1
, P12,..., P24) along with division points (Q11, Q13,
, Q46), and the interpolation points (L'1 to L'8) different from the interpolation paths are set as the representative points (the intermediate points) and the division points as new representative points (Q10 to Q47). It is characterized by further comprising a third calculating means for generating.

【0009】請求項3記載の発明は、請求項1又は2記
載のロボット制御装置において、前記第1の演算手段
は、前記入力手段から入力された指示データに従って代
表点を組み合わせることを特徴としている。
According to a third aspect of the present invention, in the robot controller according to the first or second aspect, the first arithmetic means combines representative points in accordance with instruction data input from the input means. .

【0010】請求項4記載の発明は、請求項1から3の
いずれかの項に記載のロボット制御装置において、それ
ぞれの前記補間軌道を、前記入力手段から入力された指
示データにより特定される次数の多項式によって生成す
ることを特徴としている。
According to a fourth aspect of the present invention, in the robot control apparatus according to any one of the first to third aspects, each of the interpolation trajectories is determined by an order specified by instruction data input from the input means. It is characterized by being generated by the following polynomial.

【0011】[0011]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

<1.構成>以下に図面を参照して本発明の実施の形態
について説明する。図1は本発明の一実施形態によるロ
ボット制御装置を適用した塗装ロボットシステムの構成
を示す図である。
<1. Configuration> An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a diagram showing a configuration of a painting robot system to which a robot control device according to an embodiment of the present invention is applied.

【0012】図において、1はコントローラであり、入
力装置2からケーブル3を介して指示データを受け、ケ
ーブル4を介してロボット5の各軸(可動部)に対する
動作指令信号を供給すると共に、ロボット5との間で各
種信号の授受を行い、これによりロボット5の状態を監
視し、かつ、その動作を制御する。このコントローラ1
は、ロボット5の制御プログラム、教示データ、各種制
御パラメータ等を記憶する記憶装置と、それらプログラ
ム等と前記指示データ及びロボット5から受けた信号と
に基づいて各種演算処理を行う演算処理装置とを有して
おり、該演算処理装置による演算処理の結果に基づいて
ロボット5の動作を決定し、前記動作指令信号を生成す
る。尚、ここにいう演算処理の具体的内容については後
述する。
In FIG. 1, reference numeral 1 denotes a controller which receives instruction data from an input device 2 via a cable 3 and supplies an operation command signal to each axis (movable portion) of the robot 5 via a cable 4; Various signals are transmitted to and received from the robot 5, thereby monitoring the state of the robot 5 and controlling its operation. This controller 1
Is a storage device that stores a control program, teaching data, various control parameters, and the like of the robot 5, and an arithmetic processing device that performs various arithmetic processes based on the programs and the instruction data and signals received from the robot 5. And determines the operation of the robot 5 based on the result of the arithmetic processing by the arithmetic processing device, and generates the operation command signal. Note that the specific contents of the arithmetic processing here will be described later.

【0013】入力装置2は、オペレータがロボット5の
動作を指示するための指示入力を行う入力装置であり、
入力されたデータを前記指示データとして出力する。ケ
ーブル3、4は、それぞれ、入力装置2−コントローラ
1間、コントローラ1−ロボット5間を接続する接続線
であり、ケーブル3は入力装置3から出力された指示デ
ータをコントローラ1へ伝達し、ケーブル4はコントロ
ーラ1とロボット5との間で授受される信号を伝達す
る。
The input device 2 is an input device for an operator to input an instruction for instructing the operation of the robot 5.
The input data is output as the instruction data. Cables 3 and 4 are connection lines for connecting the input device 2 to the controller 1 and connecting the controller 1 to the robot 5, respectively. The cable 3 transmits the instruction data output from the input device 3 to the controller 1, and 4 transmits a signal transmitted and received between the controller 1 and the robot 5.

【0014】ロボット5は、本塗装ロボットシステムに
おける塗装ロボットの主要部であって、工場床面に固定
されたボックス6によって床面の所定位置に取り付けら
れており、図中の符合7〜16で示す旋回ベース、各軸
駆動ユニット、アーム等の構成要素によって構成されて
いる。以下にこれらの各構成要素について説明する。
The robot 5 is a main part of the painting robot in the present painting robot system, and is mounted at a predetermined position on the floor by a box 6 fixed to the factory floor. It is composed of components such as a turning base, each axis driving unit, and an arm as shown. Hereinafter, each of these components will be described.

【0015】7はボックス6と旋回ベース8との間に設
けられた第1軸駆動ユニットである。第1軸駆動ユニッ
ト7は、ボックス6側に固定されたモータと、その出力
軸側に設けられた減速機等とからなっており、該減速機
を介して旋回ベース8が図中の矢印θ1方向に回動自在
に取り付けられている。そして、この第1軸駆動ユニッ
ト7がコントローラ1から供給される動作指令信号に基
づいて駆動され、これにより、旋回ベース8をθ1方向
に回動させるようになっている。
Reference numeral 7 denotes a first shaft drive unit provided between the box 6 and the turning base 8. The first shaft drive unit 7 is composed of a motor fixed to the box 6 side and a speed reducer or the like provided on the output shaft side thereof. It is attached so that it can rotate in the direction. Then, the first shaft drive unit 7 is driven based on an operation command signal supplied from the controller 1, thereby rotating the turning base 8 in the θ1 direction.

【0016】又、旋回ベース8の図中左上側部分には、
同様にモータ及び減速機等からなる第2軸駆動ユニット
9が取り付けられている。第2軸駆動ユニット9におい
ては、モータが旋回ベース8側に固定されており、その
出力軸が減速機を介して第1アーム10の一端(後方
端)と連結されて第2軸を構成している。そして、この
第2軸駆動ユニット9がコントローラ1から供給される
動作指令信号に基づいて駆動され、これにより、第1ア
ーム10が図中の矢印θ2方向に回動移動するようにな
っている。
In the upper left portion of the turning base 8 in the drawing,
Similarly, a second shaft drive unit 9 including a motor, a speed reducer, and the like is attached. In the second shaft drive unit 9, a motor is fixed to the turning base 8 side, and its output shaft is connected to one end (rear end) of the first arm 10 via a speed reducer to form a second shaft. ing. Then, the second axis drive unit 9 is driven based on an operation command signal supplied from the controller 1, whereby the first arm 10 is turned in the direction of the arrow θ2 in the drawing.

【0017】一方、第1アーム10の他端(先方端)に
は、第3軸駆動ユニット11が取り付けられている。第
3軸駆動ユニット11においてもモータの出力軸が減速
機を介して第2アーム12と連結されて第3軸が構成さ
れており、これがコントローラ1から供給される動作指
令信号に基づいて駆動され、第2アーム12が図中の矢
印θ3方向に回動移動するようになっている。
On the other hand, a third axis drive unit 11 is attached to the other end (forward end) of the first arm 10. Also in the third shaft drive unit 11, the output shaft of the motor is connected to the second arm 12 via the speed reducer to form a third shaft, which is driven based on an operation command signal supplied from the controller 1. , The second arm 12 is pivotally moved in the direction of the arrow θ3 in the figure.

【0018】第2アーム12には、第3軸駆動ユニット
11との連結部側(後方端側)に手首軸駆動ユニットケ
ース13が取り付けられており、先方端側に第1手首部
材14、第2手首部材15及び第3手首部材16が取り
付けられている。
A wrist shaft drive unit case 13 is attached to the second arm 12 at a connection portion (rear end side) with the third shaft drive unit 11, and a first wrist member 14 and a first wrist member 14 are provided at the forward end. A second wrist member 15 and a third wrist member 16 are attached.

【0019】ここで、手首軸駆動ユニットケース13内
には、第1手首部材14、第2手首部材15、第3手首
部材16それぞれの駆動用モータと、それらのモータそ
れぞれの減速機等とからなる手首軸駆動ユニットが収納
されている(図示略)。又、第1手首部材14、第2手
首部材15、第3手首部材16は、それぞれ、図中の矢
印θ4、θ5、θ6方向に回動自在な連結軸を介して順次
取り付けられている。更に、第2アーム12内には、手
首軸駆動ユニットにて発生された駆動力をθ4、θ5、θ
6方向の回転力として、それぞれ、第1手首部材14、
第2手首部材15、第3手首部材16へ伝達する伝達機
構が設けられている。
The wrist shaft drive unit case 13 includes a drive motor for each of the first wrist member 14, the second wrist member 15, and the third wrist member 16 and a reduction gear for each of those motors. Is stored (not shown). Further, the first wrist member 14, the second wrist member 15, and the third wrist member 16 are sequentially attached via connecting shafts rotatable in directions of arrows θ4, θ5, and θ6 in the drawing. Further, the driving force generated by the wrist axis drive unit is stored in the second arm 12 by θ4, θ5, θ.
As the rotational force in six directions, the first wrist member 14,
A transmission mechanism for transmitting to the second wrist member 15 and the third wrist member 16 is provided.

【0020】そして、上述したような手首部分の構成に
おいて、上記同様、手首軸駆動ユニットがコントローラ
1から供給される動作指令信号に基づいて駆動され、第
1手首部材14、第2手首部材15、第3手首部材16
がそれぞれθ4、θ5、θ6方向に回動するようになって
いる。
Then, in the configuration of the wrist portion as described above, the wrist axis drive unit is driven based on the operation command signal supplied from the controller 1, and the first wrist member 14, the second wrist member 15, Third wrist member 16
Are rotated in the directions of θ4, θ5, and θ6, respectively.

【0021】17は第3手首部材16の先端に取り付け
られたブラケットである。18は一定の方向へ一定の広
がりをもって塗料を噴射する塗装ガンであり、ブラケッ
ト17を介してロボット5の手首部分の先端に取り付け
られている。ロボット5は、この塗装ガン18を用い、
上記各軸の回転角度θ1、θ2、θ3、θ4、θ5及びθ6に
よって決定される位置にてガン先(図中の符合18x)
から塗料を噴射させ、ワーク(図示略)の塗装を行う。
Reference numeral 17 denotes a bracket attached to the tip of the third wrist member 16. Reference numeral 18 denotes a coating gun for spraying the coating material in a certain direction with a certain spread, and is attached to the tip of the wrist portion of the robot 5 via a bracket 17. The robot 5 uses this coating gun 18,
Gun tip (reference numeral 18x in the figure) at a position determined by the rotation angles θ1, θ2, θ3, θ4, θ5, and θ6 of the respective axes.
To paint a work (not shown).

【0022】すなわち、本塗装ロボットシステムにおい
ては、旋回ベース8、第1アーム10、第2アーム1
2、第1手首部材14、第2手首部材15及び第3手首
部材16の回転角度θ1〜θ6によって、塗装ガン18の
ガン先18xの位置xとそのときのロボット5の姿勢R
とが決定される(ここに、位置x、姿勢Rはベクトル量
である。以下においても同様)。そして、これらの位
置、姿勢及び回転角度等は、コントローラ1の演算処理
装置における演算処理により決定され、その決定に基づ
く第1〜第3軸駆動ユニット及び手首軸駆動ユニットへ
の動作指令信号によって制御される。
That is, in the present painting robot system, the turning base 8, the first arm 10, and the second arm 1
2. The position x of the gun tip 18x of the coating gun 18 and the posture R of the robot 5 at that time, based on the rotation angles θ1 to θ6 of the first wrist member 14, the second wrist member 15, and the third wrist member 16.
(Where, the position x and the posture R are vector quantities. The same applies to the following description). These positions, postures, rotation angles, and the like are determined by arithmetic processing in the arithmetic processing unit of the controller 1, and are controlled by operation command signals to the first to third axis drive units and the wrist axis drive unit based on the determination. Is done.

【0023】<2.動作> (1)代表点からの動作軌道生成 次に、上記構成による動作について説明する。初めに、
オペレータが入力装置2からガン先18xを移動させる
べき軌道上の代表点を教示し、それら代表点に基づいて
コントローラ1が軌道を生成する演算処理動作について
説明する。
<2. Operation> (1) Generation of Motion Trajectory from Representative Point Next, the operation according to the above configuration will be described. at first,
An arithmetic processing operation in which the operator teaches representative points on the trajectory where the gun tip 18x should be moved from the input device 2 and the controller 1 generates a trajectory based on these representative points will be described.

【0024】曲面に沿った軌道生成 図2は、代表点として教示された教示点に基づいて曲面
に沿った軌道を生成する場合の例を示した図である。こ
の図において、曲面CSは、塗装作業を行う対象となる
ワークの一表面部分であり、一部に滑らかな階段状の形
状を有するものとなっている。又、点P1〜P8は、ガン
先18xを移動させる軌道の代表点として教示された教
示点(位置ベクトルで表してある)を示しており、曲面
CS上から塗装ガン18による塗装に適した一定間隔を
隔てた所に位置している。
Generation of Trajectory Along Curved Surface FIG. 2 is a diagram showing an example of generating a trajectory along a curved surface based on a taught point taught as a representative point. In this figure, a curved surface CS is one surface portion of a work to be subjected to a painting operation, and has a partly smooth stepped shape. Points P1 to P8 indicate taught points (represented by position vectors) taught as representative points of the trajectory for moving the gun tip 18x, and are fixed points suitable for coating with the coating gun 18 from the curved surface CS. It is located at a distance.

【0025】図示のように、この軌道生成は、曲面CS
の上方において、教示点P1からP4へ向かう軌道Laと
教示点P5からP8へ向かう軌道Lbとの間に×印で示す
いくつかの中間点(P11、P12、…、P64。尚、これら
も位置ベクトルである)を生成し、それら中間点によっ
て軌道LaとLbの間に新たな軌道(L1、L2、…、L
6)を生成するものである。図3にこのような軌道生成
の手順を示し、以下具体的に説明する。
As shown in the figure, the trajectory generation corresponds to the curved surface CS
, A plurality of intermediate points (P11, P12,..., P64) indicated by crosses between the trajectory La from the teaching points P1 to P4 and the trajectory Lb from the teaching points P5 to P8. , And a new trajectory (L1, L2,..., L) between the trajectories La and Lb by their midpoints.
6) is to generate. FIG. 3 shows a procedure of such trajectory generation, which will be specifically described below.

【0026】まず、オペレータが入力装置2を用いて2
×n個(nは自然数)の代表点を教示する(ステップS
1)。ここでは、ガン先18xが曲面CSへ移動してき
て塗装作業を行い始めるところにある点P1、P2、P3
及びP4と、塗装作業を終了して曲面CSを去るところ
にある点P5、P6、P7及びP8とを教示する。従って、
この場合は“n=4”となっている。
First, the operator uses the input device 2 to
× n (n is a natural number) representative points are taught (step S
1). Here, points P1, P2, and P3 where the gun tip 18x moves to the curved surface CS and starts painting work.
And P4 and points P5, P6, P7 and P8 at the end of the painting operation and leaving the curved surface CS. Therefore,
In this case, "n = 4".

【0027】次に、中間点生成のための教示点の結合を
指示する(ステップS2)。この「教示点の結合」と
は、その間に中間点を生成する2つの教示点の組のこと
とをいい、当該2つの教示点間を結ぶ直線若しくは円弧
又は当該2つの教示点間を移動する際の各軸の回転角度
を、所定の間隔で分割して中間点を生成する(詳細は後
述)のに用いられるものである。ステップS2では、か
かる教示点の結合をオペレータが適宜選択し、その結合
させる教示点の組み合わせを入力装置2からの入力によ
って指示する。
Next, an instruction is given to combine teaching points for generating an intermediate point (step S2). This “combination of taught points” refers to a set of two taught points generating an intermediate point therebetween, and a straight line or an arc connecting the two taught points or moving between the two taught points. In this case, the rotation angle of each axis is divided at a predetermined interval to generate an intermediate point (details will be described later). In step S2, the operator selects the combination of the teaching points as appropriate, and instructs the combination of the teaching points to be combined by input from the input device 2.

【0028】尚、この場合に特にオペレータによる指示
がなければ、コントローラ1にて、i番目の教示点Pi
と、n+i番目の教示点Pn+iとを組とする(ステップ
S3)。ここに、“i”は1からnの自然数であり、こ
れにより、2×n個の教示点からn組の結合を生成する
こととする。従って、図2の例では、教示点P1とP5、
P2とP6、P3とP7、P4とP8という4組の教示点の結
合を生成することになる。以下においては、説明簡略化
のため、このステップS3にて生成された教示点の結合
を例として話を進める。
In this case, unless otherwise instructed by the operator, the controller 1 controls the i-th teaching point Pi.
And the (n + i) -th teaching point Pn + i as a set (step S3). Here, “i” is a natural number from 1 to n, whereby n sets of combinations are generated from 2 × n teaching points. Therefore, in the example of FIG. 2, the teaching points P1 and P5,
A combination of four sets of teaching points P2 and P6, P3 and P7, and P4 and P8 is generated. In the following, for the sake of simplicity, the description will be given taking as an example the combination of the teaching points generated in step S3.

【0029】続いて、組にした各教示点の間に生成する
軌道のピッチ“pich”を指示する(ステップS4、図2
参照)。これは、上述した中間点を生成するための所定
の間隔に相当するものであり、塗装ガン18の塗料噴射
幅等に応じてオペレータが決定し、入力装置2から入力
することによって指示する。
Subsequently, the pitch "pich" of the trajectory generated between the paired teaching points is specified (step S4, FIG. 2).
reference). This corresponds to a predetermined interval for generating the above-mentioned intermediate point, and is determined by an operator according to the paint spray width of the paint gun 18 and the like, and is instructed by inputting from the input device 2.

【0030】次いで、コントローラ1にて、教示点P1
と教示点Pn+1との間の距離Lを算出した(ステップS
5)後、組にした教示点間を分割する分割数mを m = ( L/pich + 0.5 ) として求める(ステップS6)。ここで、上式の右辺に
おける小数点以下は四捨五入し、分割数mの値が自然数
として求まるようにする。尚、“+ 0.5”としてい
るのは、“m×pich”が距離Lに満たない(教示点間を
ピッチ“pich”毎にm分割したときに余りがでる)こと
がないように、“L/pich”の小数点以下が0.5未満
の場合にmの値を繰り上げるためである。これにより、
図2の例における分割数mは7と求まる。
Next, at the controller 1, the teaching point P1
The distance L between the distance and the teaching point Pn + 1 is calculated (step S
5) Thereafter, the number of divisions m for dividing the set of teaching points is obtained as m = (L / pich + 0.5) (step S6). Here, the decimal part on the right side of the above equation is rounded off so that the value of the division number m is obtained as a natural number. It should be noted that “+0.5” is used so that “m × pich” is less than the distance L (the remainder does not occur when the interval between teaching points is divided by m for each pitch “pich”). This is to raise the value of m when the decimal part of “L / pich” is less than 0.5. This allows
The number m of divisions in the example of FIG.

【0031】このようにして求めた分割数mにより、そ
れぞれの教示点の結合について、教示点間を分割して中
間点を生成する。この処理は、結合させた教示点をそれ
ぞれ直線l1、l2、l3、l4で結び(図2参照)、これ
らの直線をm等分する内分点を軌道La側のものからLb
側のものまで順次求め、それら求めた内分点を中間点と
することによって行う(ステップS7、S8)。具体的に
は、軌道La側から数えて第j番目の直線lkの内分点、
すなわち、中間点Pjkを
Based on the division number m obtained in this way, for each combination of the teaching points, the teaching point is divided to generate an intermediate point. In this process, the connected teaching points are connected by straight lines l1, l2, l3, and l4 (see FIG. 2), and the internal dividing point that divides these straight lines into m equals from the trajectory La side by Lb.
This is performed by sequentially obtaining the sub-points on the side, and setting the obtained subdivision points as the intermediate points (steps S7 and S8). Specifically, the internally dividing point of the j-th straight line lk counted from the trajectory La side,
That is, the intermediate point Pjk

【数1】 として求める。尚、当然のことながらカウンタ“j”は
1からm−1(ここでは6)までの自然数、カウンタ
“k”は1からn(ここでは4)までの自然数である。
(Equation 1) Asking. Note that the counter “j” is a natural number from 1 to m−1 (here, 6), and the counter “k” is a natural number from 1 to n (here, 4).

【0032】これにより、図2中に×印で示した中間点
P11、P12、…、Pjk、…、P64が順次求まるが、ここ
で、図示のように、中間点P11からP14へ向かう軌道を
L1、P21からP24へ向かう軌道をL2、…、P61からP
64へ向かう軌道をL6、といった具合にカウンタ“j”
を共にする中間点間の軌道を想定し、軌道La、L1、L
2、…、L6、Lbの順でこれらに沿ってガン先18xを
移動させることを考える。又、軌道La、Lbを、それぞ
れ、カウンタ“j”が“0”、“7”の軌道に対応する
ものとして考える。
As a result, the intermediate points P11, P12,..., Pjk,..., P64 indicated by crosses in FIG. 2 are sequentially obtained. Here, as shown, the trajectory from the intermediate point P11 to P14 is determined. The trajectory from L1, P21 to P24 is L2, ..., P61 to P
The trajectory toward 64 is L6, etc.
And trajectories La, L1, L
Consider moving the gun tip 18x along these in the order of 2,..., L6, Lb. The trajectories La and Lb are considered to correspond to the trajectories with the counters “j” of “0” and “7”, respectively.

【0033】このようにすると、“j”が奇数である軌
道L1、L3、L5及びLb(L7)は折り返しの軌道とな
る。このため、カウンタ“j”が奇数である場合には、
ステップS9からステップS10へ進み、中間点(若しく
は教示点)の順序を入れ替える処理を行う(ステップS
11)。この処理は、コントローラ1にて、図示のように
点Pjkのデータをbufferに一時記憶した後、点Pjkのデ
ータを点Pj(n+1-k)のデータで置き換えると共に、点P
j(n+1-k)のデータをbufferに一時記憶したデータで置き
換える、といった置換処理を、kの値を1〜n/2まで
変化させて順次行うことによって行う。
In this way, the trajectories L1, L3, L5 and Lb (L7) in which "j" is an odd number are turned trajectories. Thus, if the counter "j" is odd,
Proceeding from step S9 to step S10, a process of changing the order of the intermediate points (or teaching points) is performed (step S10).
11). In this process, the controller 1 temporarily stores the data of the point Pjk in the buffer as shown in the figure, and then replaces the data of the point Pjk with the data of the point Pj (n + 1-k).
The replacement process of replacing the data of j (n + 1-k) with the data temporarily stored in the buffer is performed by sequentially changing the value of k from 1 to n / 2.

【0034】以上の処理により、図2に示す教示点P1
→P4、中間点P14→P11、P21→P24、…、P61→P6
4、教示点P8→P5の順でガン先18xを移動させる軌
道の代表点が生成される。そして次に、このようにして
生成された代表点の間を補間する補間式を求める処理へ
と進む。
By the above processing, the teaching point P1 shown in FIG.
→ P4, intermediate point P14 → P11, P21 → P24, ..., P61 → P6
4. Representative points of the trajectory for moving the gun tip 18x in the order of the teaching points P8 → P5 are generated. Then, the process proceeds to a process for obtaining an interpolation formula for interpolating between the representative points generated in this way.

【0035】ここでは、補間式に一般的な時間(時刻)
の多項式で表されるものを用いることとし、まず、オペ
レータが入力装置2からその次数を指示する(ステップ
S12)。このとき、特にオペレータによる指示がない場
合には、補間式の次数はn(ここでは4)とする(ステ
ップS13)。尚、この補間式の次数は、後の処理で生成
する曲線軌道の形状(凹凸)を定めるものであり、ワー
クの形状等によってオペレータが適宜決定するが、何等
指示がない場合にn次とするのは、n個の空間上の点を
必ず通る曲線はn次以上であり、この最低次数がn次で
あるため、n個の代表点に合致した曲線軌道を生成でき
るためである。
Here, a general time (time) is used for the interpolation formula.
The operator first designates the degree of the order from the input device 2 (step S12). At this time, if there is no instruction from the operator, the order of the interpolation formula is set to n (here, 4) (step S13). The order of the interpolation formula determines the shape (concavity and convexity) of the curved trajectory generated in the subsequent processing, and is appropriately determined by the operator according to the shape of the work and the like. This is because a curve that always passes through n points in the space is higher than or equal to the nth order, and since the lowest order is the nth order, a curve trajectory that matches the n representative points can be generated.

【0036】続いて、コントローラ1が各代表点のデー
タに基づき、各軌道についてのn次の補間式を求めてガ
ン先18xの動作軌道を生成する(ステップS14)。す
なわち、図2中の軌道La、L1〜L6、Lbに相当する曲
線を表す多項式を求め、それらによって表される曲線軌
道(以下、このような軌道を「補間軌道」という)を図
示のように適当な曲線や円弧で順次結ぶことにより、ガ
ン先18xを移動させる動作軌道を生成するのである。
Subsequently, based on the data of each representative point, the controller 1 obtains an n-th order interpolation formula for each trajectory to generate an operation trajectory of the gun tip 18x (step S14). That is, polynomials representing curves corresponding to the trajectories La, L1 to L6, and Lb in FIG. 2 are obtained, and a curved trajectory represented by them (hereinafter, such a trajectory is referred to as an "interpolated trajectory") is shown in FIG. The motion trajectory for moving the gun tip 18x is generated by sequentially connecting appropriate guns and curved lines.

【0037】尚、上述した軌道生成は、予め教示する代
表点を2×n個とし、教示点P1〜Pn(P4)の軌道と
Pn+1(P5)〜P2n(P8)の軌道との間に新たな軌道
(L1〜L6)を生成するものであったが、予め教示する
代表点を(2以上の自然数N)×n個とし、P1〜Pnの
軌道とPn+1〜P2nの軌道との間、P2n+1〜P3nの軌道
とP3n+1〜P4nの軌道との間、…、P(N-2)n+1〜P(N-
1)nの軌道とP(N-1)n+1〜PNnの軌道との間のそれぞれ
について、上記同様の処理によって新たな軌道を生成す
ることとしてもよい。
In the above-described trajectory generation, the number of representative points to be taught is set to 2 × n in advance, and the trajectory between the trajectories of the teaching points P1 to Pn (P4) and the trajectories of Pn + 1 (P5) to P2n (P8) is set. , New trajectories (L1 to L6) are generated, but the number of representative points to be taught in advance is (N or more natural number N) × n, and the trajectories of P1 to Pn and the trajectories of Pn + 1 to P2n , Between the trajectories P2n + 1 to P3n and the trajectories P3n + 1 to P4n,..., P (N−2) n + 1 to P (N−
1) A new trajectory may be generated by the same processing as described above for each of the trajectories of n and the trajectories of P (N-1) n + 1 to PNn.

【0038】正弦波近似による軌道生成 次に、図4に示すように、代表点として教示された教示
点に基づき、正弦波状に振動する軌道を生成する場合の
例について説明する。図4においては、ワークは省略し
てあるが、点P1、P2及びP3が教示点(位置ベクトル
で表してある)を示しており、これらを結ぶ曲線(L
s)が生成された補間軌道(動作軌道)を示している。
この補間軌道Lsを生成する手順を図5に示す。
Generation of Trajectory by Sinusoidal Wave Approximation Next, as shown in FIG. 4, an example of generating a trajectory oscillating in a sinusoidal waveform based on a taught point taught as a representative point will be described. In FIG. 4, although the work is omitted, points P1, P2, and P3 indicate teaching points (represented by position vectors), and a curve (L
s) indicates the generated interpolation trajectory (movement trajectory).
FIG. 5 shows a procedure for generating the interpolation trajectory Ls.

【0039】補間軌道Lsの生成においては、まず、オ
ペレータが入力装置2により代表点として点P1、P2の
位置(及びこれらの位置でのロボット5の姿勢)を教示
する(ステップS20)。
In generating the interpolation trajectory Ls, first, the operator teaches the positions of the points P1 and P2 as the representative points (and the posture of the robot 5 at these positions) using the input device 2 (step S20).

【0040】次いで、これら教示点間を正弦波状の曲線
で補間するため、その振幅を特定する指示を行う。この
振幅指示は、教示点P1及びP2以外の点を教示すること
により、P1とP2とを結ぶ直線から当該点までの距離に
よって振幅を指示するか、又は、振幅の大きさを入力す
ることにより、長さ(mm)によって直接振幅を指示する
かのいずれかによって行うこととし、コントローラ1内
にかかる2態様の振幅指示に対応したプログラムを用意
しておく。そして、オペレータは、前者の態様によって
振幅指示を行う場合には図4中の点P3の位置を教示
し、後者の態様によって振幅指示を行う場合には同図中
の振幅Aの長さ(mm)を入力する(ステップS21)。
Next, in order to interpolate between these teaching points with a sinusoidal curve, an instruction for specifying the amplitude is issued. This amplitude instruction is performed by instructing points other than the teaching points P1 and P2, thereby instructing the amplitude by the distance from the straight line connecting P1 and P2 to the point, or by inputting the magnitude of the amplitude. The amplitude is directly designated by the length (mm), and a program corresponding to the two types of amplitude designation in the controller 1 is prepared. The operator teaches the position of the point P3 in FIG. 4 when the amplitude instruction is performed in the former mode, and the length (mm) of the amplitude A in the figure when the amplitude instruction is performed in the latter mode. ) Is input (step S21).

【0041】続いて、教示点P1とP2の間を何サイクル
の振動で補間するかを指示する(ステップS22)。図4
の場合では、3周期分の正弦波によって教示点間を補間
することとするので、オペレータが入力装置2から“振
動サイクル数=3”の指示入力を行う。
Subsequently, the number of cycles of the interpolation between the teaching points P1 and P2 is instructed (step S22). FIG.
In the case of (3), interpolation between teaching points is performed using three cycles of sine waves, so the operator inputs an instruction “vibration cycle number = 3” from the input device 2.

【0042】すると、コントローラ1がこれを受け、教
示点P1とP2との間を当該振動サイクル数で内分して中
間点を生成する(ステップS23)。図4の場合では、内
分点として×印で示した点P10及びP20が求まり、これ
らを中間点とする。
Then, the controller 1 receives this, and internally divides between the teaching points P1 and P2 by the number of vibration cycles to generate an intermediate point (step S23). In the case of FIG. 4, points P10 and P20 indicated by crosses are obtained as internally dividing points, and these are set as intermediate points.

【0043】次に、教示点P1、P2間を結ぶ近似正弦波
曲線における振幅Aと角速度ωを決定する(ステップS
24)。振幅Aについては、ステップS21で点P3が教示
された場合は教示点P1とP2とを結ぶ直線l1-2から教
示点P3までの距離を算出してその距離を振幅Aとし、
振幅の長さが直接指示された場合はその長さをAとす
る。一方、角速度ωについては、教示点P1、P2間の距
離を上記サイクル数で割った長さが2πに相当するもの
として、これとP1、P2間での動作速度vとの比によっ
て決定する。
Next, the amplitude A and the angular velocity ω of the approximate sine wave curve connecting the teaching points P1 and P2 are determined (step S).
twenty four). Regarding the amplitude A, when the point P3 is taught in step S21, the distance from the straight line l1-2 connecting the teaching points P1 and P2 to the teaching point P3 is calculated, and the distance is set as the amplitude A.
When the length of the amplitude is directly specified, the length is set to A. On the other hand, the angular velocity ω is determined by the ratio of the operating speed v between P1 and P2, assuming that the length obtained by dividing the distance between the teaching points P1 and P2 by the number of cycles corresponds to 2π.

【0044】以上のようにして決定された振幅A及び角
速度ωにより、教示点P1、P2間を結ぶ近似正弦波曲線
を表す補間式も決定され、この補間式により、図4の補
間軌道Lsが生成される。
From the amplitude A and the angular velocity ω determined as described above, an interpolation formula representing an approximate sine wave curve connecting between the teaching points P1 and P2 is also determined, and the interpolation trajectory Ls in FIG. Generated.

【0045】(2)ロボット5の制御動作 次に、上述したように動作軌道を生成してロボット5を
制御するときの動作について、図6を参照して説明す
る。図6に示す処理は、一定時間毎に繰り返し行われる
もので、ここにいう一定時間とは、コントローラ1とロ
ボット5との間でガン先18xの現在位置等の信号と動
作指令信号の授受が行われるサンプリングタイム(T
s)がこれに当たる。本塗装ロボットシステムにおいて
は、コントローラ1の演算処理装置により、5msのサン
プリングタイム毎に図6に示す処理がなされ、ガン先1
8xの目標位置及びロボット5の目標姿勢が算出されて
各軸が制御される。
(2) Control Operation of Robot 5 Next, the operation of controlling the robot 5 by generating an operation trajectory as described above will be described with reference to FIG. The process shown in FIG. 6 is repeatedly performed at regular time intervals. Here, the constant time means that a signal such as the current position of the gun tip 18x and an operation command signal are exchanged between the controller 1 and the robot 5. Sampling time (T
s) corresponds to this. In the painting robot system, the processing shown in FIG. 6 is performed by the arithmetic processing unit of the controller 1 at every sampling time of 5 ms.
The target position of 8x and the target posture of the robot 5 are calculated, and each axis is controlled.

【0046】尚、以下においては、このガン先18xの
目標位置等を算出するサンプリングタイム毎のカウンタ
(計時用カウンタ)を“count”で表す。又、上述した
ような教示点(P1、P2、…、P8)及び中間点(P1
1、P12、…、P64)のうち、各補間軌道の両端にある
もの(P1、P4、P14、P11、P21、P24等)を“再生
点”と総称し、再生時に通過させる順でこれらに付した
カウンタを“k”で表すものとする。従って、図2の例
でいえば、再生点P1はk=1、P4はk=2、P14はk
=3、…、P64はk=14、P8はk=15、P5はk=
16に対応し、k=1が動作軌道の始点である再生点、
k=16が動作軌道の終点である再生点に対応すること
になる。
In the following, a counter (time counter) for each sampling time for calculating the target position and the like of the gun tip 18x is represented by "count". The teaching point (P1, P2,..., P8) and the intermediate point (P1
1, P12,..., P64), the ones at both ends of each interpolation trajectory (P1, P4, P14, P11, P21, P24, etc.) are collectively referred to as "playback points", and they are passed through in the order of passage during playback. The attached counter is represented by “k”. Accordingly, in the example of FIG. 2, the reproduction point P1 is k = 1, P4 is k = 2, and P14 is k.
= 3,..., P64 is k = 14, P8 is k = 15, P5 is k =
16, a playback point where k = 1 is the starting point of the motion trajectory;
k = 16 corresponds to the reproduction point which is the end point of the motion trajectory.

【0047】図6において、まず、ロボット5側からケ
ーブル4を介してコントローラ1側へ各軸の回転角度θ
1〜θ6を示す信号が供給され、これをコントローラ1内
の演算処理装置が各軸の回転角度フィードバック値とし
て取り込む(ステップS30)。そして、この取り込んだ
各軸の回転角度の値に基づき、このときのガン先18x
の位置及びロボット5の姿勢を算出する(ステップS3
1)。尚、これらの位置及び姿勢は、幾何学的手法によ
り、各軸の回転角度θ1〜θ6の関数として算出すること
ができる。
In FIG. 6, first, the rotation angle θ of each axis is sent from the robot 5 to the controller 1 via the cable 4.
Signals indicating 1 to 6 are supplied, and the arithmetic processing unit in the controller 1 takes in the signals as the rotation angle feedback values of each axis (step S30). Then, based on the value of the rotation angle of each axis taken in, the gun tip 18x
Of the robot and the posture of the robot 5 (step S3
1). Note that these positions and postures can be calculated as a function of the rotation angles θ1 to θ6 of each axis by a geometrical method.

【0048】続いて、計時用のカウンタcountを1イン
クリメント(ステップS32)した後で、このカウンタco
untにサンプリングタイムTsを乗じて現在の時刻tを求
める(ステップS33)。
Subsequently, after incrementing the time counter "count" by 1 (step S32), the counter co
The current time t is obtained by multiplying unt by the sampling time Ts (step S33).

【0049】次に、ガン先18xが補間軌道の最終点に
到達したか否かを判断する(ステップS34)。この判断
は、ステップS33で求めた時刻tの値が移動中の補間軌
道における最終時刻Teを超える場合には到達したもの
と判断し、これに満たない場合には到達していないもの
と判断することによって行い、到達したものと判断され
ると、ステップS35以下の次の補間軌道を生成するため
の処理へと進む。尚、ここにいう「最終時刻Te」と
は、ステップS35以下で補間軌道生成のための補間式を
算出する際に同時に算出されるものであり(図中のステ
ップS42。詳細は後述)、ロボット5の動作初期におい
ては、tの値が小さくてもステップS34からS35へ進ん
で補間軌道生成のための処理が行われるように適当な初
期値を設定しておく。
Next, it is determined whether or not the gun tip 18x has reached the final point of the interpolation trajectory (step S34). In this determination, when the value of the time t obtained in step S33 exceeds the final time Te in the moving interpolation trajectory, it is determined that the time has arrived; otherwise, it is determined that the time has not reached. When it is determined that the trajectory has been reached, the process proceeds to step S35 and subsequent steps for generating the next interpolation trajectory. Note that the "final time Te" is calculated at the same time as calculating the interpolation formula for generating the interpolation trajectory in step S35 and subsequent steps (step S42 in the figure; details will be described later). In the initial stage of the operation 5, an appropriate initial value is set so that the process proceeds from step S34 to S35 even if the value of t is small and the process for generating the interpolation trajectory is performed.

【0050】ステップS35では、再生点のカウンタkを
1インクリメントする。このとき、カウンタkは、ガン
先18xが補間軌道の最終点に到達したものと判断され
た直後にインクリメントされている。従って、この時点
でカウンタkに対応している再生点は、ガン先18xが
移動してきて現在位置している再生点に相当することに
なる。
In step S35, the reproduction point counter k is incremented by one. At this time, the counter k is incremented immediately after it is determined that the gun tip 18x has reached the final point of the interpolation trajectory. Therefore, the reproduction point corresponding to the counter k at this point corresponds to the reproduction point where the gun tip 18x has moved and is currently located.

【0051】ここで、カウンタkの値が動作軌道の終点
に対応する値(k=16)を超える場合には、“k=
1”として再生点のカウンタを動作軌道の始点(P1)
に戻す(ステップS36、S37。この処理の意味内容は後
に明らかにする)。
If the value of the counter k exceeds the value (k = 16) corresponding to the end point of the motion trajectory, "k =
Set the playback point counter to 1 "as the starting point of the motion trajectory (P1)
(Steps S36 and S37. The meaning of this processing will be clarified later).

【0052】そして、ガン先18xを次に移動させる補
間軌道の終点を現在のカウンタkに1を加えて求める
(ステップS38)。すなわち、ステップS35でインクリ
メントしたkに対応する再生点がガン先18xの現在位
置であるので、k+1に対応する再生点が次の補間軌道
の終点となることから、これにより、次の補間軌道の終
点に相当する再生点を求めるのである。
Then, the end point of the interpolation trajectory for moving the gun tip 18x next is determined by adding 1 to the current counter k (step S38). That is, since the reproduction point corresponding to k incremented in step S35 is the current position of the gun tip 18x, the reproduction point corresponding to k + 1 becomes the end point of the next interpolation trajectory. The reproduction point corresponding to the end point is obtained.

【0053】ここで、k+1の値が動作軌道の終点に対
応する値(k=16)を超える場合には、次の補間軌道
の終点をk=1に対応する再生点、すなわち、動作軌道
の始点(P1)とする(ステップS39、S40。この処理
の意味内容も後に明らかにする)。
If the value of k + 1 exceeds the value (k = 16) corresponding to the end point of the motion trajectory, the end point of the next interpolation trajectory is set to the reproduction point corresponding to k = 1, that is, the motion trajectory. The start point (P1) is set (steps S39 and S40. The meaning of this process will be clarified later).

【0054】次に、上記ステップS35〜S40の処理を経
て確定した次の補間軌道の両端の再生点間について、補
間情報に基づいて補間式を算出する(ステップS41)。
ここに、補間情報とは、オペレータが入力した各代表点
や生成された各中間点の位置データ、各代表点間での動
作速度、多項式によって補間する場合の当該多項式の次
数、正弦波近似曲線によって補間する場合の振幅等であ
り、上述した「(1)代表点からの動作軌道生成」にて
入力又は算出されて記憶装置に記憶された各種のデータ
に相当する。
Next, an interpolation formula is calculated based on the interpolation information between the reproduction points at both ends of the next interpolation trajectory determined through the processing of steps S35 to S40 (step S41).
Here, the interpolation information includes the position data of each representative point and each generated intermediate point input by the operator, the operation speed between each representative point, the degree of the polynomial when interpolating by a polynomial, and a sine wave approximation curve. And the like when interpolation is performed, and corresponds to various data input or calculated in “(1) Generation of motion trajectory from representative point” and stored in the storage device.

【0055】すなわち、ステップS41では、当該再生点
間に関する補間情報に基づき、コントローラ1が上述の
図3又は図5に示した処理等により、多項式、三角関数
若しくは円弧等の式によって表される補間式を決定する
のである。
That is, in step S41, the controller 1 performs an interpolation represented by a polynomial, trigonometric function, arc or the like by the processing shown in FIG. 3 or FIG. The formula is determined.

【0056】続いて、ステップS42へ進んで当該再生点
間の移動に要する遷移時間Teを算出する。これは、ス
テップS41で求めた補間式と、指定された速度、加速度
制限値により算出することができる。そして、ステップ
S43で時刻tの値をクリアすると共に、ステップS44で
計時カウンタcountの値もクリアし、これにより、再生
点へ到達した際の補間式算出及びそれに付随する一連の
処理を終了してステップS45へと進む。
Subsequently, the process proceeds to step S42 to calculate a transition time Te required for movement between the reproduction points. This can be calculated from the interpolation formula obtained in step S41 and the specified speed and acceleration limit values. Then, in step S43, the value of the time t is cleared, and in step S44, the value of the time counter count is also cleared. Thus, the calculation of the interpolation formula when the reproduction point is reached and a series of processes associated therewith are completed. Proceed to step S45.

【0057】ここで、上述の処理により、新たに生成さ
れる次の補間軌道の遷移時間Teが算出されると共に、
時刻t及び計時カウンタcountの値がクリアされて次回
のステップS32、S33から新たにカウントし直される。
従って、時刻tに対し、当該遷移時間Teの値は当該補
間軌道における最終時刻を表すものとなるので、これら
を比較することでステップS34における判断が可能とな
るわけである。
Here, the transition time Te of the next interpolation trajectory newly generated is calculated by the above-described processing, and
The time t and the value of the time counter “count” are cleared, and the counting is newly performed again from the next steps S32 and S33.
Accordingly, since the value of the transition time Te represents the final time in the interpolation trajectory with respect to the time t, the comparison in the transition time Te enables the determination in step S34.

【0058】又、ステップS39、S40においては、k+
1の値が動作軌道の終点に対応する値を超える場合、次
の補間軌道の終点を動作軌道の始点としたが、これによ
り、ステップS41では動作軌道の終点(図2のP5)か
ら始点(P1)へ向かうための補間式が求められること
になる。すなわち、この場合は、ワークに対する塗装作
業が終了した場合に相当しているのであって、次の新た
なワークに対する塗装作業を行うべく、ガン先18xを
再び動作軌道の始点まで移動させる補間軌道を生成する
ようにしているのである。
In steps S39 and S40, k +
When the value of 1 exceeds the value corresponding to the end point of the motion trajectory, the end point of the next interpolation trajectory is set as the start point of the motion trajectory. Thus, in step S41, the start point (P5 in FIG. 2) is changed from the end point of the motion trajectory. An interpolation formula for going to P1) is obtained. In other words, this case corresponds to the case where the painting work on the work is completed. In order to perform the painting work on the next new work, the interpolation trajectory for moving the gun tip 18x again to the start point of the operation trajectory is set. It is generated.

【0059】一方、ステップS36、S37においては、カ
ウンタkの値が動作軌道の終点に対応する値を超える場
合、“k=1”として再生点のカウンタを動作軌道の始
点に戻しているが、これにより、ステップS41では再び
動作軌道の始点(P1)からその次の再生点(P4)へ向
かうための補間式が求められることになる。すなわち、
この場合は、上述したようにステップS39、S40の処理
が行われた場合の後で、ガン先18xが再び動作軌道の
始点まで戻ってきた場合に相当しているのであって、次
の新たなワークに対する塗装作業を開始するべく、ガン
先18xを再び動作軌道の始点から移動させる補間軌道
を生成するようにしているのである。
On the other hand, in steps S36 and S37, if the value of the counter k exceeds the value corresponding to the end point of the motion trajectory, the reproduction point counter is returned to the start point of the motion trajectory by setting "k = 1". As a result, in step S41, an interpolation equation for moving from the start point (P1) of the motion trajectory to the next reproduction point (P4) is obtained again. That is,
This case corresponds to the case where the gun tip 18x returns to the starting point of the operation trajectory again after the processing of steps S39 and S40 is performed as described above. An interpolation trajectory for moving the gun tip 18x again from the start point of the operation trajectory is generated in order to start the painting work on the work.

【0060】このようにして補間軌道生成のための処理
が行われ、ステップS45では、補間式に現在の時刻tの
値を代入してガン先18xの目標位置及びロボット5の
目標姿勢を算出する。そして、当該目標位置及び目標姿
勢と、上記ステップS31にて算出した現在の位置及び姿
勢とに基づき、各軸に対する制御量を算出し(ステップ
S46)、その制御量に応じた動作指令信号を第1〜第3
軸駆動ユニット及び手首軸駆動ユニットへ供給する(ス
テップS47)。これにより、図2や図4に示したような
軌道に従って動作するようにロボット5が制御される。
The processing for generating the interpolation trajectory is performed in this way. In step S45, the target position of the gun tip 18x and the target posture of the robot 5 are calculated by substituting the value of the current time t into the interpolation formula. . Then, a control amount for each axis is calculated based on the target position and target posture and the current position and posture calculated in step S31 (step S46), and an operation command signal corresponding to the control amount is output to the first position. First to third
The power is supplied to the shaft drive unit and the wrist shaft drive unit (step S47). As a result, the robot 5 is controlled so as to operate according to the trajectory as shown in FIGS.

【0061】(3)動作軌道生成の他の形態 次に、コントローラ1にて行われる動作軌道生成につい
て、上述したものとは別の他の形態について説明する。
尚、以下に説明する動作軌道生成も上記「(2)ロボッ
ト5の制御動作」にて同様に利用することができ、これ
により生成される軌道に従ってロボット5を動作させる
ことができる。
(3) Another form of motion trajectory generation Next, another form of the motion trajectory generation performed by the controller 1 will be described.
Note that the motion trajectory generation described below can be similarly used in the above “(2) Control operation of robot 5”, and the robot 5 can be operated according to the trajectory generated thereby.

【0062】図7に本形態による軌道生成の様子を示
す。この図においては、図2同様、曲面CSが階段状形
状を有するワークの一表面部分を示しており、点P1〜
P8が代表点として教示された教示点を示している。
FIG. 7 shows how the trajectory is generated according to the present embodiment. In this figure, as in FIG. 2, the curved surface CS shows one surface portion of the work having a stepped shape, and points P1 to P1
P8 indicates a teaching point taught as a representative point.

【0063】図示のように、この軌道生成では、まず、
上述した図3同様の処理により、図中×印で示す中間点
(P11、P12、…、P24)を生成し、多項式によって表
される仮の補間軌道L1〜L4を生成する。そして更に、
それらの補間軌道上に図中◎印で示す新たな別の代表点
(Q20、Q30、…)を生成し、これら代表点に基づいて
補間軌道L1、L2、L3、L4のそれぞれに交差する最終
的な補間軌道L′1、L′2、…、L′8を生成する。図
8にこのような軌道生成の具体的手順を示す。
As shown, in this trajectory generation, first,
By the same processing as in FIG. 3 described above, intermediate points (P11, P12,..., P24) indicated by crosses in the figure are generated, and temporary interpolation trajectories L1 to L4 represented by polynomials are generated. And furthermore
On the interpolated trajectories, new representative points (Q20, Q30,...) Indicated by ◎ in the figure are generated, and the final points intersecting the interpolated trajectories L1, L2, L3, and L4 based on these representative points. , L'8 are generated. FIG. 8 shows a specific procedure of such trajectory generation.

【0064】図8において、ステップS50〜S58におけ
る処理は、上述した図3の処理と同様である。すなわ
ち、まず、オペレータが入力装置2を用いて2×n個の
代表点を教示し(ステップS50)、次いで、中間点生成
のための教示点の結合を指示する(ステップS51)。
尚、ここでもn=4としてP1〜P8の8個の代表点を教
示するものとする(図7参照)。そして、特にオペレー
タによる指示がない場合、上記同様にi番目の教示点P
iと、n+i番目の教示点Pn+iとを組み合わせた結合に
よって処理を進める(ステップS52)。
In FIG. 8, the processing in steps S50 to S58 is the same as the processing in FIG. 3 described above. That is, first, the operator teaches 2.times.n representative points using the input device 2 (step S50), and then instructs connection of the teaching points for generating an intermediate point (step S51).
It is assumed here that n = 4 and eight representative points P1 to P8 are taught (see FIG. 7). When there is no instruction from the operator, the i-th teaching point P
The process proceeds by combining i and the (n + i) th teaching point Pn + i (step S52).

【0065】続いて、ステップS53では、組にした各教
示点の間に生成する軌道のピッチ“pich”を指示する
が、この“pich”は、最終的に生成する補間軌道L′1
〜L′8と交わる仮の動作軌道L1〜L4の軌道ピッチと
なる。ここでは、教示点P1と教示点Pn+1との間の距離
Lを算出(ステップS54)した後、指示した“pich”に
より、 m = ( L/pich + 0.5 ) を四捨五入して求まった分割数mが3であったとする
(ステップS55)。
Subsequently, in step S53, the pitch "pich" of the trajectory generated between the paired teaching points is specified. This "pich" is the interpolation trajectory L'1 to be finally generated.
The trajectory pitch of the provisional motion trajectories L1 to L4 that intersects L8. Here, after calculating the distance L between the teaching point P1 and the teaching point Pn + 1 (step S54), m = (L / pich + 0.5) is rounded off using the designated "pich". It is assumed that the divided number m is 3 (step S55).

【0066】このようにして求めた分割数mにより、結
合させた教示点間を結ぶ直線(上述の直線l1、l2、l
3、l4。ここでは煩雑となるので図示は省略する)をm
等分する内分点を求め、それら求めた内分点を中間点と
する(ステップS56、S57)。尚、ここで用いる内分点
算出の式は上記数1と同様であるが、カウンタjが1か
ら2まで、kが1から4までとなるので、中間点として
は図7中に×印で示したP11〜P14及びP21〜P24の8
個が求まることになる。
Based on the division number m obtained in this way, the straight lines (the above-mentioned straight lines l1, l2, l
3, l4. Here, the illustration is omitted because it becomes complicated).
Internal dividing points to be equally divided are obtained, and the obtained internal dividing points are set as intermediate points (steps S56 and S57). The equation for calculating the internal dividing point used here is the same as the above equation 1, but since the counter j is from 1 to 2 and k is from 1 to 4, the intermediate point is indicated by a cross in FIG. 8 of P11-P14 and P21-P24 shown
Individuals will be obtained.

【0067】そして、ステップS58へ進み、仮の補間軌
道L1、L2、L3及びL4を生成する。ここで、このステ
ップS58以降の処理内容について、より詳細に記載した
ものを図9に示し、以下、併せて参照する(図9では図
8のステップと対応するステップを「′」付きの同一ス
テップ番号で表す)。ステップS58では、上記図3にお
けるステップS12〜S14と同様の処理により、生成した
中間点と教示点から図7中に一点鎖線で示す曲線を表す
多項式を求めることによって仮の補間軌道Li(i=1
〜4)を生成する(図9のステップS58′)。但し、こ
こでは、これらが最終的に求める補間軌道となるわけで
はないので、上述した置換処理や各補間軌道を結ぶ処理
は行わない。
Then, the process proceeds to a step S58, where temporary interpolation trajectories L1, L2, L3 and L4 are generated. Here, FIG. 9 shows a more detailed description of the processing contents after step S58, and is also referred to below (in FIG. 9, steps corresponding to the steps in FIG. Number). In step S58, a tentative interpolation trajectory Li (i = i = i) is obtained by obtaining a polynomial representing a curve indicated by a dashed line in FIG. 7 from the generated intermediate point and teaching point by the same processing as steps S12 to S14 in FIG. 1
To 4) are generated (step S58 'in FIG. 9). However, here, since these are not necessarily the interpolation trajectories to be finally obtained, the above-described replacement processing and the processing for connecting the interpolation trajectories are not performed.

【0068】次に、それぞれの仮の補間曲線Liを軌道
によって分割する分割数lを指示する(ステップS59、
S59′)。この分割数lは、この数に応じて最終的な補
間軌道の間隔及び数が決まるので、曲面CSの塗装作業
を適切に行うことができるようにオペレータが決定し、
入力装置2から入力することによって指示する。図7で
は、分割数lを7として指示した場合が示されている。
Next, the number of divisions l for dividing each temporary interpolation curve Li by trajectory is specified (step S59,
S59 '). Since the division number 1 determines the final interval and number of the interpolation trajectory according to this number, the operator decides so that the painting work of the curved surface CS can be appropriately performed,
An instruction is given by inputting from the input device 2. FIG. 7 shows a case where the number of divisions 1 is designated as 7.

【0069】その後、コントローラ1が上記分割数lの
指示を受け、各補間軌道Liをl分割して新たな代表点
を生成する(ステップS60)。この処理では、i=1〜
m+1(仮の補間軌道の数。ここでは4)までの各補間
軌道Liについて(ステップS60′a)、補間軌道上の代
表点(教示点又は生成した中間点)間を等分することに
より、各等分点と各代表点とによって当該補間軌道がl
分割されるようにする。図7においては、ここで生成さ
れる等分点(新たな代表点)を◎印で示してある。
Thereafter, the controller 1 receives the instruction of the number of divisions 1 and divides each interpolation trajectory Li by 1 to generate a new representative point (step S60). In this process, i = 1 to
For each interpolation trajectory Li up to m + 1 (the number of temporary interpolation trajectories, in this case, 4) (step S60'a), by equally dividing the representative points (teaching points or generated intermediate points) on the interpolation trajectory, The interpolation trajectory is l by each equidistant point and each representative point.
Make it split. In FIG. 7, the equally-divided points (new representative points) generated here are indicated by で marks.

【0070】すなわち、まず、補間軌道L1について
は、教示点P1とP2との間を2等分する等分点Q11、P
2とP3との間を2等分する等分点Q13、P3とP4との間
を3等分する等分点Q15及びQ16をそれぞれ求める。
尚、図7に示した例では、教示点P3とP4との間が他に
比べて比較的長いことからこれを3等分し、全体として
補間軌道L1がl(7)分割されるようにしている。
That is, first, with respect to the interpolation trajectory L1, equally divided points Q11 and P2 which divide the teaching point P1 and P2 into two equal parts.
An equally-divided point Q13 that divides between 2 and P3 into two equal parts, and equally-divided points Q15 and Q16 that divides between P3 and P4 into three equal parts are obtained.
In the example shown in FIG. 7, since the distance between the teaching points P3 and P4 is relatively long compared to the other points, this is divided into three equal parts so that the interpolation trajectory L1 is divided into l (7) as a whole. ing.

【0071】又、このとき同時に、後の処理の便宜上、
教示点P1側から順に各教示点及び各等分点にそれぞれ
番号を付す。この番号は図7中の符号Qの添え字に示し
てあるが、ここでは図示のように全ての代表点に対して
符号Qに番号を付した符号を割り当て、以下、この符号
を適宜参照する。すなわち、各教示点についてもP1に
符号Q10、P2にQ12、P3にQ14、P4にQ17をそれぞ
れ割り当て、補間軌道L1上の代表点を図中左側から順
にQ10、Q11、…、Q17とする。
At this time, at the same time, for convenience of the subsequent processing,
A number is assigned to each teaching point and each equally dividing point in order from the teaching point P1 side. Although this number is indicated by a suffix of the code Q in FIG. 7, a code in which a code is added to the code Q is assigned to all representative points as shown in the figure, and the code is hereinafter referred to as appropriate. . That is, for each teaching point, a code Q10 is assigned to P1, Q12 is assigned to P2, Q14 is assigned to P3, and Q17 is assigned to P4. Representative points on the interpolation trajectory L1 are Q10, Q11,.

【0072】次いで、補間軌道L2についても同様に、
中間点P11とP12との間を2等分する等分点Q21、P12
とP13との間を2等分する等分点Q23、P13とP14との
間を3等分する等分点Q25及びQ26をそれぞれ求めると
共に、各中間点についてP11に符号Q20、P12にQ22、
P13にQ24、P14にQ27をそれぞれ割り当て、補間軌道
L2上の代表点をQ20、Q21、…、Q27とする。
Next, similarly, for the interpolation trajectory L2,
Equal points Q21, P12 that bisect the middle point P11 and P12
Q23, which divides between P13 and P13 into two equal parts, and Q25 and Q26, which divide three times between P13 and P14, are respectively obtained.
Q24 is assigned to P13 and Q27 is assigned to P14, and representative points on the interpolation trajectory L2 are Q20, Q21,..., Q27.

【0073】そして、補間軌道L3、L4についても順次
上記同様にして等分点を生成し、各代表点に符号Q30〜
Q37、Q40〜Q47を割り当てる。これにより、図7に示
した全ての代表点Qij(i=1〜4,j=0〜7)が確
定する(ステップS60′a)。
For the interpolation trajectories L3 and L4, equally-divided points are sequentially generated in the same manner as described above, and codes Q30 to Q30 are assigned to respective representative points.
Q37 and Q40 to Q47 are assigned. Thus, all the representative points Qij (i = 1 to 4, j = 0 to 7) shown in FIG. 7 are determined (step S60'a).

【0074】続いて、ステップS61へ進み、次に述べる
ように、生成した代表点を仮の補間軌道Liと交差する
方向に結び、動作軌道を生成する(ステップS61)。こ
の処理は、各代表点Qijの番号“i”、“j”を利用し
て以下のように行う。尚、以下においては、“i”を第
1の添え字番号、“j”を第2の添え字番号という。
Subsequently, the process proceeds to step S61, where the generated representative points are connected in a direction intersecting with the provisional interpolation trajectory Li to generate an operation trajectory (step S61). This process is performed as follows using the numbers “i” and “j” of each representative point Qij. In the following, “i” is referred to as a first subscript number, and “j” is referred to as a second subscript number.

【0075】図9に示すように、第2の添え字番号jが
0〜l(ここでは7)までの各代表点について(ステッ
プS61′a)、jの値が奇数である場合には第1の添え
字番号iが大きい方から小さい方へ(Q4j→Q1j)、そ
れ以外の場合には第1の添え字番号iが小さい方から大
きい方へ(Q1j→Q4j)順に代表点を結ぶ多項式(補間
式)を求める(ステップS61′b、S61′c、S61′
d)。
As shown in FIG. 9, for each representative point whose second subscript number j is from 0 to 1 (here, 7) (step S61'a), if the value of j is an odd number, A polynomial that connects representative points in order from the smaller subscript number i of 1 to the smaller one (Q4j → Q1j); otherwise, the smaller the first subscript number i from the larger one (Q1j → Q4j). (Interpolation formula) is obtained (steps S61'b, S61'c, S61 ')
d).

【0076】すなわち、まず、j=0である代表点Q10
〜Q40については、ステップS61′bからS61′dへ進
み、Q10、Q20、Q30、Q40の順でこれらを結ぶ多項式
を各点の位置データ等に基づいて求め、Q10からQ40へ
向かう補間軌道L′1(図7参照)を生成する。次い
で、j=1である代表点Q11〜Q41については、ステッ
プS61′bからS61′cへ進み、Q41、Q31、Q21、Q11
の順でこれらを結ぶ多項式を求めてQ41からQ11へ向か
う補間軌道L′2を生成する。そして、以下のjについ
ても同様に奇数か否かに応じてステップS61′c又はS6
1′dの処理を行い、順次補間軌道L′3、L′4、…、
L′8を生成する。
That is, first, the representative point Q10 where j = 0.
With respect to .about.Q40, the process proceeds from step S61'b to S61'd, where a polynomial connecting these in the order of Q10, Q20, Q30, Q40 is obtained based on the position data of each point and the like, and the interpolation trajectory L from Q10 to Q40 is obtained. '1 (see FIG. 7). Next, for the representative points Q11 to Q41 where j = 1, the process proceeds from step S61'b to S61'c, where Q41, Q31, Q21, Q11
Then, a polynomial connecting them is obtained in the order of to generate an interpolation trajectory L'2 from Q41 to Q11. Steps S61'c and S6 are similarly performed for j below depending on whether or not the number is odd.
1′d, and the interpolation trajectories L′ 3, L′ 4,.
Generate L'8.

【0077】このようにして各補間軌道L′1、L′2、
…、L′7及びL′8を生成し、それらを図示のように曲
線や円弧で順次結ぶことにより、ガン先18xを移動さ
せる動作軌道を生成する。
In this way, each interpolation trajectory L'1, L'2,
.., L'7 and L'8 are generated, and sequentially connected by curves or arcs as shown in the drawing, thereby generating an operation trajectory for moving the gun tip 18x.

【0078】尚、上述した軌道生成は、予め教示する代
表点を2×n個とし、教示点P1〜Pn(P4)の軌道と
Pn+1(P5)〜P2n(P8)の軌道との間に仮の軌道
(L1〜L4)を生成した後でそれらに交差する最終的な
軌道(L′1〜L′8)を生成するものであったが、予め
教示する代表点を(2以上の自然数N)×n個とし、P
1〜Pnの軌道とPn+1〜P2nの軌道との間、P2n+1〜P3
nの軌道とP3n+1〜P4nの軌道との間、…、P(N-2)n+1
〜P(N-1)nの軌道とP(N-1)n+1〜PNnの軌道との間のそ
れぞれについて、上記同様の処理により、仮の軌道を生
成した後でそれらと交差する最終的な軌道を生成するこ
ととしてもよい。
In the above-described trajectory generation, the number of representative points to be taught is set to 2 × n in advance, and the trajectory between the trajectories of the teaching points P1 to Pn (P4) and the trajectories of Pn + 1 (P5) to P2n (P8) is set. After generating temporary trajectories (L1 to L4), final trajectories (L'1 to L'8) intersecting them are generated. Natural number N) x n, P
Between the orbits 1 to Pn and the orbits Pn + 1 to P2n, P2n + 1 to P3
, P (N-2) n + 1 between the trajectory of n and the trajectories of P3n + 1 to P4n
PP (N-1) n and the trajectories of P (N-1) n + 1 to PNn for each of the trajectories in the same manner as described above. It is good also as generating a natural trajectory.

【0079】[0079]

【発明の効果】以上説明したように本発明によれば、補
間軌道を生成してロボットの動作を制御するロボット制
御装置において、組み合わせた代表点の間を内分する中
間点を生成し、組み合わせた代表点の一方、他方から第
1、第2の補間軌道を生成すると共に、前記代表点の一
方それぞれから順次位置する中間点を順次新たに代表点
として、第1、第2の補間軌道の間に新たな補間軌道を
順次生成することとしたので、代表点から生成される補
間軌道の間を補う同形態の補間軌道を自動的に生成する
ことができる。これにより、曲線や曲面に沿ってロボッ
トを動作させるために必要な補間軌道を数少ない代表点
から生成することが可能となり、教示や軌道修正に要す
る時間を大幅に短縮することができるという効果が得ら
れる。加えて、このようなことから、生産効率の向上を
図ることができると共に、リモート教示の場合に動作中
のロボットの近くで作業を行う時間が短縮されてオペレ
ータの労力が軽減されるという効果も得られる。
As described above, according to the present invention, in a robot controller for generating an interpolation trajectory and controlling the operation of a robot, an intermediate point which internally divides between the combined representative points is generated. First and second interpolated trajectories are generated from one of the representative points and the other, and intermediate points sequentially located from one of the representative points are sequentially newly set as representative points. Since a new interpolation trajectory is sequentially generated in the meantime, it is possible to automatically generate an interpolation trajectory of the same form that complements the interpolation trajectory generated from the representative point. This makes it possible to generate an interpolation trajectory necessary for operating the robot along a curve or a curved surface from a small number of representative points, and has the effect of greatly reducing the time required for teaching and trajectory correction. Can be In addition to this, it is possible to improve production efficiency, and in the case of remote teaching, there is also an effect that the time for performing work near the operating robot is reduced, thereby reducing the operator's labor. can get.

【0080】更に、請求項2記載の発明によれば、生成
された各補間軌道を入力手段からの指示に従って分割す
る点を新たに代表点とし、異なる態様の補間軌道を生成
することとしたので、上述したように少ない代表点から
生成される補間軌道の態様を必要に応じて変更すること
ができる。
Furthermore, according to the second aspect of the present invention, a point at which each generated interpolation trajectory is divided according to an instruction from the input means is newly set as a representative point, and interpolation trajectories in different modes are generated. As described above, the mode of the interpolation trajectory generated from a small number of representative points can be changed as necessary.

【0081】そして、請求項3記載の発明によれば、入
力手段から入力された指示データに従って代表点を組み
合わせることとしたので、新たに生成する補間軌道の位
置や態様をオペレータが適宜選択することができる。
According to the third aspect of the present invention, since the representative points are combined in accordance with the instruction data input from the input means, the operator can appropriately select the position and mode of the newly generated interpolation trajectory. Can be.

【0082】又、請求項4記載の発明によれば、それぞ
れの補間軌道を、入力手段から入力された指示データに
より特定される次数の多項式によって生成することとし
たので、指示する次数を変更することによって各補間軌
道の形状を変更することができる。これにより、代表点
の位置を変更することを要せずしてワークの凹凸に対す
る補償等を行うことができ、軌道修正に要する時間の一
層の短縮を図ることができる。
According to the fourth aspect of the present invention, since each interpolated trajectory is generated by a polynomial of the degree specified by the instruction data input from the input means, the degree to be specified is changed. Thus, the shape of each interpolation trajectory can be changed. This makes it possible to compensate for the unevenness of the work without changing the position of the representative point, and to further reduce the time required for correcting the trajectory.

【0083】更に、この請求項4記載の発明では、従来
は短い直線で補間していたのを一つの多項式によって補
間するため、動作速度や加速度の変化が緩やかになり、
ロボットの可動部にかかる負担が低減され、動作軌道が
振動的になることもなくなる。これにより、長期間のロ
ボット寿命を確保することができると共に、軌跡精度の
向上を図ることもできるという効果が得られる。
Furthermore, in the invention according to the fourth aspect, since the interpolation is conventionally performed by a short straight line, the interpolation is performed by one polynomial.
The load on the movable part of the robot is reduced, and the motion trajectory does not become oscillating. As a result, it is possible to obtain an effect that a long-term robot life can be ensured and that the trajectory accuracy can be improved.

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

【図1】 本発明の一実施形態によるロボット制御装置
を適用した塗装ロボットシステムの構成を示す図であ
る。
FIG. 1 is a diagram showing a configuration of a painting robot system to which a robot control device according to an embodiment of the present invention is applied.

【図2】 代表点として教示された教示点に基づいて曲
面に沿った軌道を生成する場合の例を示した図である。
FIG. 2 is a diagram illustrating an example of generating a trajectory along a curved surface based on a teaching point taught as a representative point.

【図3】 図2の軌道生成の手順を示した図である。FIG. 3 is a diagram showing a procedure of trajectory generation in FIG. 2;

【図4】 代表点として教示された教示点に基づいて正
弦波状に振動する軌道を生成する場合の例を示した図で
ある。
FIG. 4 is a diagram illustrating an example of generating a trajectory that vibrates in a sinusoidal waveform based on a taught point taught as a representative point.

【図5】 図4の軌道生成の手順を示した図である。FIG. 5 is a diagram showing a procedure of trajectory generation in FIG. 4;

【図6】 動作軌道を生成してロボット5を制御する動
作手順を示した図である。
FIG. 6 is a diagram showing an operation procedure for controlling the robot 5 by generating an operation trajectory.

【図7】 他の軌道生成例の様子を示した図である。FIG. 7 is a diagram showing a state of another example of trajectory generation.

【図8】 図7の軌道生成の手順を示した図である。FIG. 8 is a diagram showing a procedure of trajectory generation in FIG. 7;

【図9】 図8におけるステップS58〜S61を詳細に示
した図である。
FIG. 9 is a diagram showing steps S58 to S61 in FIG. 8 in detail.

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

1 コントローラ 2 入力装置 5 ロボット 18 塗装ガン 18x ガン先 1 Controller 2 Input device 5 Robot 18 Painting gun 18x Gun tip

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 ロボットを動作させる軌道の代表点及び
各種指示データを入力する入力手段を具備し、各代表点
を結ぶ補間軌道を生成して当該補間軌道に従って前記ロ
ボットを動作させるロボット制御装置において、 入力された代表点を2点ずつ組み合わせ、組み合わせた
代表点の間をそれぞれ所定数で内分する中間点を生成す
る第1の演算手段と、 前記組み合わせた代表点のうちの一方を結ぶ第1の補間
軌道と、前記組み合わせた代表点のうちの他方を結ぶ第
2の補間軌道とを生成すると共に、前記代表点の一方そ
れぞれから順次位置する前記中間点を順次新たに代表点
として、前記第1、第2の補間軌道の間に新たな補間軌
道を順次生成する第2の演算手段とを有することを特徴
とするロボット制御装置。
1. A robot controller comprising input means for inputting representative points of a trajectory for operating a robot and various instruction data, generating an interpolated trajectory connecting the representative points, and operating the robot according to the interpolated trajectory. A first calculating means for combining the input representative points by two points and generating an intermediate point which internally divides the combined representative points by a predetermined number, and a second calculating means for connecting one of the combined representative points. 1 interpolated trajectory and a second interpolated trajectory connecting the other of the combined representative points, and the intermediate points sequentially located from one of the representative points are sequentially newly newly represented as the representative points. A second control means for sequentially generating a new interpolation trajectory between the first and second interpolation trajectories.
【請求項2】 請求項1記載のロボット制御装置におい
て、 前記第2の演算手段によって生成された各補間軌道を、
前記代表点及び前記中間点と共に、前記入力手段から入
力された指示データに従って分割する分割点を求め、前
記代表点及び前記中間点並びに前記分割点を新たに代表
点として、前記各補間軌道と異なる態様の補間軌道を生
成する第3の演算手段を更に有することを特徴とするロ
ボット制御装置。
2. The robot controller according to claim 1, wherein each of the interpolation trajectories generated by the second calculation means is:
Along with the representative point and the intermediate point, a division point to be divided is determined according to the instruction data input from the input means, and the representative point, the intermediate point, and the division point are newly set as representative points, and are different from the interpolation trajectories. A robot control device further comprising a third calculation unit that generates the interpolation trajectory according to the aspect.
【請求項3】 請求項1又は2記載のロボット制御装置
において、 前記第1の演算手段は、前記入力手段から入力された指
示データに従って代表点を組み合わせることを特徴とす
るロボット制御装置。
3. The robot control device according to claim 1, wherein the first arithmetic unit combines the representative points according to the instruction data input from the input unit.
【請求項4】 請求項1から3のいずれかの項に記載の
ロボット制御装置において、 それぞれの前記補間軌道を、前記入力手段から入力され
た指示データにより特定される次数の多項式によって生
成することを特徴とするロボット制御装置。
4. The robot control device according to claim 1, wherein each of the interpolation trajectories is generated by a polynomial of an order specified by instruction data input from the input means. A robot control device characterized by the following.
JP17475597A 1997-06-30 1997-06-30 Robot controller Withdrawn JPH1124721A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17475597A JPH1124721A (en) 1997-06-30 1997-06-30 Robot controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17475597A JPH1124721A (en) 1997-06-30 1997-06-30 Robot controller

Publications (1)

Publication Number Publication Date
JPH1124721A true JPH1124721A (en) 1999-01-29

Family

ID=15984125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17475597A Withdrawn JPH1124721A (en) 1997-06-30 1997-06-30 Robot controller

Country Status (1)

Country Link
JP (1) JPH1124721A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013184245A (en) * 2012-03-07 2013-09-19 Canon Inc Robot controlling device, robot apparatus, robot control method, program, and recording medium
JP2018015863A (en) * 2016-07-29 2018-02-01 川崎重工業株式会社 Robot system, teaching data generation system, and teaching data generation method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013184245A (en) * 2012-03-07 2013-09-19 Canon Inc Robot controlling device, robot apparatus, robot control method, program, and recording medium
JP2018015863A (en) * 2016-07-29 2018-02-01 川崎重工業株式会社 Robot system, teaching data generation system, and teaching data generation method

Similar Documents

Publication Publication Date Title
US4698777A (en) Industrial robot circular arc control method for controlling the angle of a tool
US5353386A (en) Apparatus for controlling industrial robot system to perform coordinated operation using teaching playback method and method thereof
US4529921A (en) Tracking control system of multijoint robot
US7734358B2 (en) Data processing apparatus for arc welding
US4821207A (en) Automated curvilinear path interpolation for industrial robots
JPH07152419A (en) Method and system for planning of route in rectangular coordinate space
JP2001296912A (en) Motor velocity/acceleration decision method, acceleration/deceleration generation method, acceleration/deceleration control method, acceleration/ deceleration controller and motor controller
JP4859386B2 (en) Arc welding apparatus and weaving welding method for arc welding apparatus
JPH1124721A (en) Robot controller
JPH08155647A (en) Weaving controller of welding robot
JPH0712597B2 (en) Interlocking control system for industrial robot and positioner
JPH01205880A (en) Weaving control system
JP3601558B2 (en) Industrial robot control method
JPH0830978B2 (en) Teaching / reproducing method for industrial robots
JPH11188686A (en) Robot controller
JP3444313B2 (en) Industrial robot controller
JPH1055207A (en) Robot controller
JPH06236206A (en) Control method for industrial robot mounted on turn table
JPH10301616A (en) Teaching device for robot
JPH078160B2 (en) Motor controller
JPS60147810A (en) Welding robot controller
JPH01175608A (en) Method for generating teaching data of robot
JP2572093B2 (en) Robot teaching method
JPH0724574A (en) Weaving controller for articulated welding robot
JP3644551B2 (en) Robot control method

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040907