JPH0469706A - Industrial robot controller - Google Patents

Industrial robot controller

Info

Publication number
JPH0469706A
JPH0469706A JP18151990A JP18151990A JPH0469706A JP H0469706 A JPH0469706 A JP H0469706A JP 18151990 A JP18151990 A JP 18151990A JP 18151990 A JP18151990 A JP 18151990A JP H0469706 A JPH0469706 A JP H0469706A
Authority
JP
Japan
Prior art keywords
teaching
robot
control device
transfer
industrial robot
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
JP18151990A
Other languages
Japanese (ja)
Inventor
Shinichi Sarugaku
信一 猿楽
Norihisa Miyake
徳久 三宅
Maki Sumita
住田 真樹
Tatsuya Seshimo
達也 瀬下
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
Hitachi Keiyo Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Keiyo Engineering Co 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 Hitachi Ltd, Hitachi Keiyo Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP18151990A priority Critical patent/JPH0469706A/en
Publication of JPH0469706A publication Critical patent/JPH0469706A/en
Pending legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

PURPOSE:To easily obtain the control of a robot executed by a smooth operation and with high operation accuracy by a simple traching operation by setting in advance several transfer systems required in a teaching point, and selecting one of these transfer systems by a prescribed mark added to the teaching point. CONSTITUTION:In an initialization processing, a processing program stored in a bubble memory 35 is loaded onto a RAM-A 32, initialization of each apparatus is executed, and subsequently, a judgement of a mode is executed. The judgement of this mode is selected by a changeover switch on a play-back console (PBC) 24. Next, in the case of a teaching mode, a prescribed mark is added to teaching point data inputted by teaching, and in at least two kinds of different transfer systems, one kind of the transfer systems is selected in accordance with the mark put to the teaching point data. In such a way, the teaching operation can be simplified.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ティーチング・プレイバック方式のロボット
に係り、特に溶接用ロボットに好適な制御装置に関する
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a teaching-playback type robot, and particularly to a control device suitable for a welding robot.

[従来の技術] 少なくとも2の自由度を有するマニプレータを用いたテ
ィーチング・プレイバック方式のロボットでは、ティー
チングにより入ノjされた、複数の連続した教示点で規
定される連続した部分経路間での乗り移り経路の制御、
すなわち、経路補間制御が必要である。
[Prior Art] In a teaching-playback robot using a manipulator having at least two degrees of freedom, it is possible to control of transfer routes;
That is, route interpolation control is necessary.

このようなティーチング・プレイバック方式のロボット
の制御装置について説明すると、まず、ロボットを動か
し、その作業点(通常はロボットの手先)が移動すべき
軌跡上に複数の点を決定し、それらの点を教示点として
ロボットの制御装置上記憶させる。このとき、教示点間
をどのようにして補間して行くかという情報と、どのよ
うな速度で移動させるかという情報、それにロボットの
作業に関する、例えばハンドの開閉、溶接開始、溶接終
了などの情報も同時上記憶させる。以上がティーチング
である。
To explain such a robot control device using the teaching/playback method, first, the robot is moved, multiple points are determined on the trajectory where the work point (usually the robot's hand) should move, and those points are is stored on the robot control device as a teaching point. At this time, information on how to interpolate between teaching points, information on how to move at what speed, and information on the robot's work, such as opening and closing of the hand, start of welding, and end of welding, etc. is also memorized at the same time. The above is teaching.

次に、ロボットの制御装置は、記憶した上記の各情報を
基にしてロボットの自由度を制御し、最初に決められた
軌跡に沿って、指定された速度で作業点を移動させてゆ
く。これがプレイバックである。
Next, the robot control device controls the robot's degrees of freedom based on the above-mentioned stored information, and moves the work point at a specified speed along the initially determined trajectory. This is playback.

ここで、ロボットを各教示点間で、どのようにして高速
で、且つ、漬らかに移動させるかについては、 パザ・エム・アイ・ティー・プレス、 ロボットマニプレータ(1981年)’ p130〜p
133(The HIT Press Robot M
anipulators)パ特開昭55−177286
号公報′″″特開昭62−84983号公報°′ などで詳しく論じられている。
Here, for information on how to move the robot between each teaching point at high speed and smoothly, please refer to Paza MIT Press, Robot Manipulator (1981)' p130~ p
133 (The HIT Press Robot M
anipulators) PA JP-A-177286
This is discussed in detail in Japanese Patent Application Laid-Open No. 62-84983.

そして、これらの文献では、ロボットの教示点付近での
乗り移り経路を新たに生成し、そこでのロボットの実動
作経路や実動作速度、それに実動作加速度などの最適化
を図り、ロボットの移動速度が指定速度を下回らないよ
うにしている。
In these documents, a transfer route is newly generated near the robot's teaching point, and the robot's actual movement path, actual movement speed, and actual movement acceleration are optimized to increase the robot's movement speed. I try not to go below the specified speed.

[発明が解決しようとする課題] 上記従来技術は、ティーチング作業の簡易化についての
配慮がされておらず、ロボットをスムーズに動作させ、
且つ、所望の軌跡精度の保持のためには、教示点ごとに
多岐にわたる各種のパラメータの設定が必要で、極めて
煩雑な操作を要するという問題があった。
[Problem to be solved by the invention] The above-mentioned conventional technology does not take into account the simplification of the teaching work, and it is difficult to make the robot operate smoothly.
In addition, in order to maintain the desired trajectory accuracy, it is necessary to set a wide variety of parameters for each teaching point, which poses the problem of requiring extremely complicated operations.

本発明の目的は、滑らかな動作と高い動作精度でのロボ
ットの制御が、簡単なティーチング操作で容易に得るこ
とができる産業用ロボット制御装置を提供することにあ
る。
An object of the present invention is to provide an industrial robot control device that can easily control a robot with smooth motion and high precision through simple teaching operations.

[課題を解決するための手段] 上記目的を達成するため、予め、教示点で必要とする、
幾つかの乗り移り方式を設定しておき、これらの乗り移
り方式の1が、教示点に付加しである所定のマークによ
り選択されるようにしたものである。
[Means for solving the problem] In order to achieve the above purpose, in advance, necessary at the teaching point,
Several transfer methods are set, and one of these transfer methods is selected by a predetermined mark added to the teaching point.

ここで、本発明で採用されている、乗り移り方式につい
て説明する。
Here, the transfer method employed in the present invention will be explained.

まず、前提どして、質量をもたない物体は存在しないか
ら、一般に、等速直線運動をしている物体の経路を変え
るためには、所定の時間、その物体に力を加える必要が
ある。
First of all, since there is no object without mass, in general, in order to change the path of an object moving in a straight line at a constant velocity, it is necessary to apply a force to the object for a predetermined amount of time. .

ところで、当然のこととして、ロボットも質量をもって
いるから、この範噴に含まれる。
By the way, as a matter of course, robots also have mass, so they are included in this category.

そこで、いま、ロボットを、成る1点で方向転換させよ
うとすると、この点で無限大の力を必要とする。しかし
て、このようなモータ(アクチュエータ)が存在すべく
も無いことは、いうまでもない。
So, if you try to change the direction of a robot at a single point, you will need an infinite amount of force at this point. However, it goes without saying that such a motor (actuator) should never exist.

このため、実際のロボットの制御では、成る所定の一定
時間にわたり、所定の力を加え、コーナーでは所定のカ
ーブを描いて経路が変化してゆくようにしている。
For this reason, in actual robot control, a predetermined force is applied over a predetermined period of time, and the path changes by drawing a predetermined curve at corners.

いま、ロボットの可動部の質量が、その手先に集中して
いるものとして近似できたとすると、次の式が成立する
Now, if we can approximate the mass of the robot's movable parts as concentrated in its hands, the following equation holds.

fFmaxfし)d+=M(V、−V、)−−−−(1
)ここで、 ■ 2乗り移り前の速度ベクトル v2;乗り移り後の速度ベクトル M :近似質量 Fmax(t) ;発生可能なトルク(力)この積分値
は、乗り移り前の速度ベクトルVと、乗り移り後の速度
ベクトルv2、それに近似質量Mとで決まるため、どの
ような乗り移り方式を用いても、この値は変化しない。
fFmaxf)d+=M(V, -V,)---(1
) Here, ■ 2 Velocity vector before transfer v2; Speed vector M after transfer: Approximate mass Fmax(t); Torque (force) that can be generated. This integral value is the velocity vector V before transfer and the speed vector after transfer. Since it is determined by the velocity vector v2 and the approximate mass M, this value does not change no matter what transfer method is used.

そこで、考えれるられる乗り移り方式は、以下の3方式
となる。
Therefore, the following three transfer methods can be considered.

乗り移り方式■ 最も簡単な方式で、乗り移り前の速度ベク[・ルVがO
になるまで、この速度ベクトルv1と反対方向にトルク
pmax(t)を作用させ、その後、0から速度ベグト
ルv2まで加速して行くのである。
Transfer method ■ The simplest method, where the speed vector before transfer is O
Torque pmax(t) is applied in the opposite direction to this speed vector v1 until the speed vector v1 reaches 2, and then the speed vector v2 is accelerated from 0 to the speed vector v2.

なお、この方式では、単純に速度一定のまま経路を通過
したとしたときの2倍の時間が掛る。
Note that this method takes twice as long as it would take if the vehicle simply traversed the route at a constant speed.

乗り移り方式■ 最も効率の良い方式で、トルクpmax(t)を常にベ
クトル(V、 −V、 )の方向に掛は続けるのである
。なお、この方式では、経路は放物線形になる。
Transfer method ■ This is the most efficient method, and the torque pmax(t) is always applied in the direction of the vector (V, -V, ). Note that in this method, the route becomes a parabolic shape.

乗り移り方式■ 線速(移動速度の絶対値)の変化を最小にすることかで
きる方式で、トルクFmax(t)を常に経路に垂直に
掛けるのである。なお、この場合、経路は円弧を描く。
Transfer method ■ This is a method that can minimize changes in linear speed (absolute value of moving speed), and torque Fmax(t) is always applied perpendicularly to the path. Note that in this case, the route draws an arc.

と、 Fmax=M r tJ=M11’/ r従って、この
円弧の半径rは、 r =MV2/ Fmax となる。
And, Fmax=M r tJ=M11'/r Therefore, the radius r of this circular arc becomes r=MV2/Fmax.

なお、乗り移り方式■と■は、共にスムーズな動作を行
なうが、移動経路は教示点を通らない。
Note that both the transfer methods (1) and (2) perform smooth operation, but the moving route does not pass through the teaching point.

[作用] プレイバッグ時には、教示点に付加しである所定のマー
クにより、その教示点でロボットに必要な乗り移り経路
の制御が自動的に与えられるので、ティーチング時には
、教示点と所定のマークの入力操作たけですみ、従って
、スムーズな動きや精度を犠牲にすることなく、容易に
ティーチング操作の簡略化を得ることができる。
[Function] During playback, a predetermined mark added to a teaching point automatically controls the transfer path necessary for the robot at that teaching point, so during teaching, inputting the teaching point and the predetermined mark The teaching operation can be easily simplified without sacrificing smooth movement or accuracy.

[実施例] 以下、本発明による産業用ロボット制御装置について、
図示の実施例により詳細に説明する。
[Example] Hereinafter, regarding the industrial robot control device according to the present invention,
This will be explained in detail with reference to the illustrated embodiment.

第1・図〜第2]図は、アーク溶接作業を行う溶接ロボ
ットに本発明を適用した場合の一実施例で、ます、第5
図は全体の機器構成を示し、図において、20はロボッ
ト制御装置であり、すべての機器の制御を行なう。そし
て、本発明の主要な処理も、このロボット制御装置20
で行われる。
Figures 1 and 2 show an example in which the present invention is applied to a welding robot that performs arc welding work.
The figure shows the overall equipment configuration, and in the figure, 20 is a robot control device that controls all the devices. The main processing of the present invention is also carried out by this robot control device 20.
It will be held in

2]はロボット本体(マニプレータ)で、この実施例で
は6軸構成のロボットが使用されており、6個のサーボ
モータにより駆動される。そして、このロボットの手首
先端には、溶接トーチ29か取付けである。
2] is a robot body (manipulator), and in this embodiment, a robot with a six-axis configuration is used, and is driven by six servo motors. A welding torch 29 is attached to the tip of the robot's wrist.

22は溶接機で、ロホツ[・制御装置20の指令に基つ
いて、溶接電流、電圧を発生ずると共に、ワイヤ送給装
置28に、ワイヤ送給指令を与える働きをする。
A welding machine 22 generates welding current and voltage based on commands from the control device 20, and also functions to give a wire feeding command to the wire feeding device 28.

23はプログラミングユニット(PGU)で、液晶表示
装置と各種のキーが設けられており、ロボットへの姿勢
、動作条件等の教示は、このPGU23を用いて行う。
A programming unit (PGU) 23 is provided with a liquid crystal display and various keys, and the PGU 23 is used to teach the robot its posture, operating conditions, and the like.

24はプレイバックコンソール(PBC)で、ロボット
の自動運転の開始や教示モードへの切替は、このPBC
24上のスイッチによって行う。
24 is a playback console (PBC), and it is this PBC that starts automatic operation of the robot and switches to teaching mode.
This is done by the switch on 24.

25はガスボンベであり、溶接の為のシールドカスを供
給し、26は溶接ワイヤの供給装置である。
25 is a gas cylinder that supplies shielding residue for welding, and 26 is a welding wire supply device.

30はフロッピーディスクドライバーであり、教示デー
タの保存や、他の装置で作成した教示データをロボット
制御装置20にロードするのに用いる。
A floppy disk driver 30 is used to save teaching data and to load teaching data created by another device into the robot control device 20.

27は対象ワークであり、今まで述べた機器を用いてこ
れを溶接する。
Reference numeral 27 is a target workpiece, which is to be welded using the equipment described above.

次に第6図を用いてロボット制御装置20の内部及びロ
ボット本体21についてさらに詳細に説明する。
Next, the inside of the robot control device 20 and the robot body 21 will be explained in more detail using FIG. 6.

ロボット制御装置20の内部は、大きく分けて、メイン
CPU部20aと、サーボCPU部20b、それにサー
ボアンプ20cの3部分に分かれている。
The inside of the robot control device 20 is roughly divided into three parts: a main CPU section 20a, a servo CPU section 20b, and a servo amplifier 20c.

ます、メインCPU部20aは、周辺機器の制御やマン
マシンインターフェイス及び、自動運転のシーケンス制
御等を行っている。本発明の主要な処理もここで行われ
る。
The main CPU section 20a controls peripheral devices, man-machine interface, automatic driving sequence control, and the like. The main processing of the present invention also takes place here.

次に、サーボCPU部20bはロボットの動作制御を行
っている。
Next, the servo CPU section 20b controls the operation of the robot.

そして、サーボアンプ20cはロボット本体21内のサ
ーボモータに駆動電流を供給する働きをする。
The servo amplifier 20c functions to supply drive current to the servo motor within the robot body 21.

次に、これら各部分について、より詳細に説明していく
Next, each of these parts will be explained in more detail.

まず、メインCPU部20aの内部について説明すルト
、30+;ICPU−Aであり、ROMやRAMに書か
れているプログラムによって、各機器の制御を行うもの
である。
First, the inside of the main CPU section 20a will be explained.The main CPU section 20a is an ICPU-A, which controls each device according to a program written in a ROM or RAM.

31はROM−Aで、電源投入時にCPU−A30が行
う初期化の為のプログラムが格納されている。
31 is a ROM-A, which stores a program for initialization performed by the CPU-A 30 when the power is turned on.

32はRAM−Aであり、CPU−A30で実行される
、初期化以外の処理プログラムと演算等の途中結果が格
納される。そして、このRA、 M −A32には、R
OM−A31のプログラムによって、電源投入時にバブ
ルメモリ35から処理プログラムがロードされる。
32 is a RAM-A, which stores processing programs other than initialization and intermediate results of calculations and the like executed by the CPU-A 30. And this RA, M-A32 has R
A processing program is loaded from the bubble memory 35 by the program of the OM-A 31 when the power is turned on.

33は通信インターフェイスで、CPU−A30はPG
U23やPBC24と情報のやりとりを持つ際、ここを
経由して行う。
33 is a communication interface, CPU-A30 is a PG
When exchanging information with U23 and PBC24, it is done through here.

34は溶接機インターフェイスであり、溶接機22に各
種の命令を送ったり、溶接機22の状態をとり込んだり
するのに使われる。なお、上記したように、35はバブ
ルメモリで、これは不揮発性の補助記憶装置であり、R
AM−A32にロードされる処理プログラムや教示デー
タ等の、電源切断時も失いたくない情報を格納するのイ
こ使用される。
A welding machine interface 34 is used to send various commands to the welding machine 22 and to read the status of the welding machine 22. As mentioned above, 35 is a bubble memory, which is a non-volatile auxiliary storage device, and R
It is used to store information that should not be lost even when the power is turned off, such as processing programs and teaching data to be loaded into the AM-A32.

36はデュアルポートラムで、メインCP U fJ2
0aとサーボCPU部20bとの間での情報のやりとり
に使われる。
36 is a dual port RAM, main CPU fJ2
It is used for exchanging information between 0a and the servo CPU section 20b.

45はフロッピーディスクインターフェイスで、フロッ
ピーディスクドライバー30とのインターフェイスを行
う。ここで、フロッピーディスクは、教示データのバッ
クアップや、他の装置で教示した教示データを、この制
御装置にロードするのに使われる。
45 is a floppy disk interface, which interfaces with the floppy disk driver 30; Here, the floppy disk is used to back up teaching data and to load teaching data taught by another device into this control device.

43はデータバスで、今まで説明した装置を相互に結合
している。
A data bus 43 interconnects the devices described above.

次に、サーボCPU部20bについて説明すると、37
はCPU−Bであり、ロボットの動作に関する制御を行
っている。
Next, the servo CPU section 20b will be explained.
is CPU-B, which controls the operation of the robot.

38はROM−Bで、CPU−B57で実行される処理
プログラムが格納されている。
38 is a ROM-B in which a processing program to be executed by the CPU-B 57 is stored.

39はRAM−Bであり、演算の途中結果等の一時記憶
として使われる。
39 is RAM-B, which is used for temporary storage of intermediate results of calculations, etc.

40はタイマーであり、一定時間(サンプリング周期)
ごとにCPU−B57に割込みを掛ける働きをする。
40 is a timer, which is set for a certain period of time (sampling period)
It functions to interrupt the CPU-B57 every time.

4]はD/A変換コンバータで、各サーボモータに対す
る電流指令は、ここでディジタル量からアナログ量に変
換され、サーボアンプ20cに送られる。
4] is a D/A conversion converter, in which the current command for each servo motor is converted from a digital quantity to an analog quantity and sent to the servo amplifier 20c.

42はカウンターであり、後述するエンコータからのパ
ルスをカランl−L、各サーボモータの回転角度を検出
する。
A counter 42 detects pulses from an encoder (described later) and the rotation angle of each servo motor.

44はデータバスで、今まで述べた各機器を接続してい
る。
44 is a data bus, which connects each of the devices mentioned above.

最後に、サーボアンプ20cは、その中に6個のアンプ
を内蔵しており、ロボ′ツトのモータ一部21aのM]
からM6までの6個のモーターを駆動する為の電流を発
生する。
Finally, the servo amplifier 20c has six amplifiers built-in, and the motor part 21a of the robot M]
Generates current to drive six motors from M6 to M6.

21bはエンコーダ部であり、M1〜M6のモーターの
各々に取付けたE1〜E6までのエンコーダーを表わし
ている。
21b is an encoder section, and represents encoders E1 to E6 attached to each of the motors M1 to M6.

なお、これらの各モーターM1〜MG及びエンコーダー
E1〜E6は、各々、ロボット本体21の旋回軸、」−
腕軸、前腕軸、回転軸、曲げ軸、ひねり軸に1個つつ取
付けられている。
In addition, each of these motors M1 to MG and encoders E1 to E6 respectively correspond to the rotation axis of the robot body 21,
One is attached to the arm shaft, forearm shaft, rotation shaft, bending shaft, and twisting shaft.

次に実際の処理について説明していく。Next, we will explain the actual processing.

第7図は全体の処理フローで、このフローはCPIJ−
A、30によって実行される。
Figure 7 shows the overall processing flow, and this flow is CPIJ-
A.30.

まず、電源が投入されると、処理100で初期化処理を
行う。この初期化処理では、バブルメモリ35に格納さ
れている処理プログラムを■(ハMA 321にロード
し、その後各機器の初期化を行う。
First, when the power is turned on, initialization processing is performed in process 100. In this initialization process, the processing program stored in the bubble memory 35 is loaded into the MA 321, and then each device is initialized.

次に処理]01で、モー[くの判断を行う。このモード
の判断は、PBC24上の切替えスイッチによって選択
する。すなわち、CPU−A30は通信インターフェイ
ス33を利用して、PBC24上のスイッチの状態を読
みとる。そして、モードがパラメータ設定であったとき
には処理102のパラメータ設定処理を実行し、PGU
23」二にパラメータの入力を促すメツセージを出力し
、キーを用いて値を入力させる。このとき入力するのは
次の値である。
Next, in process 01, the mode is determined. This mode is selected by a changeover switch on the PBC 24. That is, the CPU-A 30 uses the communication interface 33 to read the status of the switch on the PBC 24 . Then, when the mode is parameter setting, the parameter setting process of process 102 is executed, and the PGU
23" Outputs a message prompting the second user to enter a parameter, and prompts the user to enter the value using the key. The following values are input at this time.

非作業中(エアーカット中〕の 最大許容誤差:Da(mm) 作業中(溶接中)の 最大許容誤差 D w (mm ) これらの値は、RAM−A32上上記憶されると同時に
、バブルメモリ35内にも格納される。
Maximum allowable error while not working (during air cutting): Da (mm) Maximum allowable error while working (during welding) D w (mm) These values are stored in the RAM-A32 and at the same time in the bubble memory. It is also stored in 35.

以上でパラメータ設定処理を終了する。This completes the parameter setting process.

次に、モードが教示であった場合には処理103の教示
処理を行い、その後、本発明の特徴であり、且つ重要な
処理である乗り移り処理104を行い、教示モードでの
処理を終了する。なお、この処理104については、後
で詳しく説明する。
Next, when the mode is teaching, a teaching process 103 is performed, and then a transfer process 104, which is a characteristic and important process of the present invention, is performed, and the process in the teaching mode is ended. Note that this process 104 will be explained in detail later.

最後にモードが自動運転であった場合、処理105の自
動運転処理を行う。この処理についても、その詳しい説
明は後述する。
Finally, if the mode is automatic operation, automatic operation processing of process 105 is performed. A detailed explanation of this process will be given later.

次に、第8図〜第】0図を用いて、教示処理について説
明する。
Next, the teaching process will be explained using FIGS. 8 to 0.

ます、第8図は、今溶接しようとしているワーク27と
、溶接作業の為の教示ポイントを示したもので、以下、
この第8図に示す溶接作業を前提として説明する。
Figure 8 shows the workpiece 27 that is about to be welded and the teaching points for welding work.
The explanation will be based on the welding work shown in FIG. 8.

第9図は、教示処理のフローを示したもので、この教示
処理では、まず処理1 ]、 OでプログラムNo  
を入力させる。このプログラムNOは、PCI、723
のキーを用いて入ノJされ、教示される教示データを識
別する為に使用されるもので、この実施例では、1から
100までのプログラムNOが選択できる。
FIG. 9 shows the flow of the teaching process.
input. This program number is PCI, 723
This is used to identify the teaching data to be entered and taught using the key, and in this embodiment, program numbers from 1 to 100 can be selected.

処理111ではP G U 23 、、l−のとのキー
か押されたかを判断する。
In process 111, it is determined whether the PGU23, ., l- keys have been pressed.

ます、ロボットの動作キーか押されていたときには、処
理1]2てロボッ[・を動作させる。なお、この実施例
では、ロボット動作キーは、P G IJ 23」二に
18個、取(t jけられており、各キーは次の動作に
対応する。すなわち、 旋回軸子方向、一方向、上腕軸+方向、一方向、削腕軸
十方向、一方向、回転軸子方向、一方向、曲げ軸子方向
、一方向、ひねり軸+方向、一方向、ロポッl−x軸、
y軸、Z軸各々の子方向、一方向、各キーの何れかが操
作されると、CPU−A30は、DPRAM36上に対
応位置を一定量動かすコマンドを書く。サーボCPU部
2(lbはそのコマンドに従ってロボットの対応する軸
を一定量動かす。尚、X軸、y軸、Z軸のキーが押され
た場合は、ロボットの姿勢を制御するMl−M3のモー
ターの複数が同時に動作し、その方向にロボットの手首
先端を移動させる。
First, if the robot operation key is pressed, process 1]2 to operate the robot. In addition, in this embodiment, 18 robot operation keys are installed in PG IJ 23''2, and each key corresponds to the following operation: namely, rotation axis direction, one direction. , upper arm axis + direction, one direction, arm cutting axis ten direction, one direction, rotary axis direction, one direction, bending axis direction, one direction, twisting axis + direction, one direction, rotor axis l-x axis,
When any one of the child direction, one direction, and each key of each of the y-axis and Z-axis is operated, the CPU-A 30 writes a command to move the corresponding position by a certain amount on the DPRAM 36. The servo CPU unit 2 (lb moves the corresponding axis of the robot by a certain amount according to the command. Furthermore, when the X-axis, y-axis, and Z-axis keys are pressed, the Ml-M3 motor that controls the robot's posture multiple units operate simultaneously to move the robot's wrist tip in that direction.

押されたキーが教示キーであった場合は、処理113で
教示内容を教示データに登録する。なお、この教示キー
には、位置教示キー、補間タイプ指定キー、速度指定キ
ー、作業指定キー(溶接開始、終了等)などの種類があ
る。
If the pressed key is a teaching key, the teaching contents are registered in the teaching data in process 113. The teaching keys include a position teaching key, an interpolation type designation key, a speed designation key, and a work designation key (welding start, end, etc.).

いま、位置教示キーが押された場合には、現在のロボッ
トの位置をとり込み、教示データに登録する。
If the position teaching key is pressed now, the current position of the robot is captured and registered in the teaching data.

同様に、その他のキーの場合は、そのキーに対応する命
令を教示データに登録する。
Similarly, in the case of other keys, the command corresponding to that key is registered in the teaching data.

登録が終了すると、処理114で教示プログラムを1ス
テツプ、ステップアップする。
When the registration is completed, the teaching program is stepped up by one step in step 114.

そして、終了キーが押されると、教示処理を終了する。Then, when the end key is pressed, the teaching process is ended.

第10図は、第9図のフローで示された機能を用いて、
第8図の溶接作業を教示した場合の教示データの例であ
る。
Figure 10 shows that using the functions shown in the flow of Figure 9,
This is an example of teaching data when teaching the welding work shown in FIG. 8.

コマンド“M OV  P i ”は21点へ移動せよ
という命令で、位置教示キーを押すとこの命令が教示デ
ータに登録される。この例では、上記したように、第8
図のポイントP5〜P1.の区間を溶接する場合を示し
ている。
The command "M OV Pi" is a command to move to point 21, and when the position teaching key is pressed, this command is registered in the teaching data. In this example, as mentioned above, the eighth
Points P5 to P1 in the diagram. This shows the case where the section is welded.

次に、この命令の中で、I′p lI+は内部でそのロ
ボットの位置、姿勢を表す。すなわち、Pi= (xj
、yi、zi、ai、βj、yi)なお、α1.βi、
γ1はロボットの姿勢を表すパラメータであり、この実
施例ではオイラー角を採用している。
Next, in this command, I'p lI+ internally represents the position and orientation of the robot. That is, Pi= (xj
, yi, zi, ai, βj, yi) Note that α1. βi,
γ1 is a parameter representing the posture of the robot, and in this embodiment, Euler angle is used.

コマンド” E OP I+は、end of Pro
gramのことで、1プログラムの終了を表わす。
Command “E OP I+ is end of Pro
A gram indicates the end of one program.

次に、第7図の乗り移り処理104の詳細について説明
する。
Next, details of the transfer process 104 shown in FIG. 7 will be explained.

二の乗り移り処理は、第10図に示された教示データ(
プログラム10)を入力として、乗り移り部の情報を付
加した新しいプログラムを生成する処理のことであり、
そ処理フローを第11図〜第13図に示す。
The second transfer process is performed using the teaching data (
This is the process of taking program 10) as input and generating a new program with information about the transfer section added.
The processing flow is shown in FIGS. 11 to 13.

ここで、この3種のフローで共通に使われる記号につい
て簡単に説明しておく。
Here, symbols commonly used in these three types of flows will be briefly explained.

S;第10図のプログラムのステップ陽1:第10図の
プログラムのポイント尚ATR,作業中の時”w 非作業中の時II allとなる属性 d;新しく生成されるプログラムの ステップ陽 に新しく生成されるプログラムの ポイント尚 p】;第30図のプログラムの 教示ポイント。
S: Step code of the program in Figure 10 1: Point of the program in Figure 10 ATR, when working ``w'' When not working, it becomes II all Attribute d: Step code of the newly generated program Points of the generated program: Teaching points of the program shown in FIG.

qに新しく生成されるプログラムの ポイント。of the newly generated program in q point.

第11図は、乗り移り処理の全体処理フローである。FIG. 11 is an overall processing flow of the transfer processing.

ます、処理120で初期化を行う。ATRをa(エアー
カット)にし、sr  ”+ d+ Jを各々lにする
。Nは同−属性内に教示ポイン[・が何点あるかカウン
トする為に用いている。このNはOにする。
First, initialization is performed in process 120. Set ATR to a (air cut), and set sr '' + d + J to l each. N is used to count how many teaching points [・ are in the same attribute. Set this N to O. .

処理]21で第10図のプログラムlo(以下ソースプ
ログラムと言う)の第Sステップの命令を調べる。
Processing] In step 21, the instruction of the S-th step of the program lo (hereinafter referred to as the source program) shown in FIG. 10 is examined.

作業関係命令の場合、122で現在の属性ATRと、新
にコマンドで指示されている属性とを比較する。溶接作
業の場合 ヨウセラ カイシ=W ヨウセラ シュウリヨウ−a と定義されている。
In the case of a work-related command, the current attribute ATR is compared with the attribute newly specified by the command in step 122. In the case of welding work, it is defined as ``W''.

属性が異る場合、処理123で5TOPコマンドを新プ
ログラムの第Sステップに入れる。この5TOPコマン
ドは、その点で一回停止することを示すコマンドである
。処理]24でNを○にし、ATRを今回の属性に変更
し、新プログラムに1ステップ命令を入れたのでdを+
1する。その後、処理125でソースプログラムのSス
テップを新プログラムのdステップにコピーする。処理
】26では、ソースプログラムと新プログラムの処理が
1ステップ終ったので、Sとdを各々十】してやる。そ
の後121の処理にもどる。
If the attributes are different, a 5TOP command is entered into the S-th step of the new program in step 123. This 5TOP command is a command that indicates to stop once at that point. Processing] In step 24, set N to ○, change ATR to the current attribute, and add a 1-step instruction to the new program, so set d to +
Do 1. Thereafter, in process 125, the S step of the source program is copied to the d step of the new program. At step 26, one step of processing of the source program and new program has been completed, so S and d are each set to 10. After that, the process returns to step 121.

次に、処理121で命令が速度指令命令であった場合は
、処理127で指定速度をVに入れる。
Next, if the command is a speed command command in process 121, the specified speed is entered into V in process 127.

その後、(25の処理に飛ぶ。After that, jump to step 25.

処理121で命令がM O■であったときは、処理12
8でNを+1する。次に処理129でNか3以−4−か
否かチエツクする。同−属性内に教示ポイントか2点し
かない場合は、乗り移りの処理が発生しない。従ってN
が3未満の時は、処理130で第dステップにMOV 
 qjというコマンドを入れ、qJにpiをコピーする
。その後、処理131で、1と、Jを+1する。そして
、126の処理へ飛ぶ。
If the instruction is M O■ in process 121, process 12
At 8, add 1 to N. Next, in step 129, it is checked whether N, 3 or more. If there are only two teaching points in the same attribute, transfer processing does not occur. Therefore, N
is less than 3, in step 130 the MOV is
Enter the command qj to copy pi to qJ. Thereafter, in process 131, 1 and J are incremented by 1. Then, the process jumps to step 126.

また、処理129でNが3以上であったときは132の
3点処理を行ったあと、処理121へ灰処理121でそ
の他の命令か入っていたときは処理125に飛ひ、1ス
テツプコピーする。
Also, if N is 3 or more in process 129, perform the 3-point process in 132, and then go to process 121.If there is another command in ash process 121, jump to process 125 and copy one step. .

処理12〕で命令が何もない場合は、処理終了と判断し
、処理133で新プログラムをバブルメモリに格納し乗
り移り処理を終了する。
If there is no command in process 12], it is determined that the process has ended, and in process 133, the new program is stored in the bubble memory, and the transfer process is ended.

第12図は3点処理の処理フローである。FIG. 12 is a processing flow of three-point processing.

この3点処理では、連続動作する3つの教示ポイントの
データより、その中点での乗り移りのやり方を算出する
In this three-point processing, the way to transfer at the midpoint is calculated from the data of three continuously operating teaching points.

ます、処理140でベクトル八とπとを算出する。First, in process 140, vectors 8 and π are calculated.

λ=p+−I Q+−2 (X +−I  X 1−21  yL−1−yj−1
+Zi−I  Z」−a+ β1−1   (Zj−+
+β 1−1− βj−2+  γ1−1− γ、−2
ンB=p 1−p = (X=  xi、、  yI  5’+−z  z
、   Zα1−β1−1.β1−β1−1.γ、−γ
1−1)さらにAI)、 =−p、λ0.π0を次のよ
うに定義しておく。
λ=p+-I Q+-2 (X +-I X 1-21 yL-1-yj-1
+Zi-I Z''-a+ β1-1 (Zj-+
+β 1-1- βj-2+ γ1-1- γ, -2
B=p 1-p = (X= xi,, yI 5'+-z z
, Zα1-β1-1. β1-β1-1. γ, −γ
1-1) Further AI), =-p, λ0. Define π0 as follows.

AI) = (Xニー+  X、i−xi 5’t−+
 −yI−4+Z4−I  Zj−2) πp工(Xr  X、;−It yl−yl−1,Z寡
−z 1−1)Ao = (β1−!−αl−2T β
1−1−βi−2+γ1−1−γ、−4) πo−(α・−β1−1.β3−β1−1.γ、−γ、
−1)つま1ノλpはλの位置を表す部分、八〇はλの
姿勢を表す部分ベグ[・ルとしておく。
AI) = (X knee + X, i-xi 5't-+
-yI-4+Z4-I Zj-2) πp (Xr
1-1-βi-2+γ1-1-γ, -4) πo-(α・-β1-1.β3-β1-1.γ, -γ,
-1) Let λp of the first toe be a part representing the position of λ, and 80 be a part representing the attitude of λ.

ここで参考の為、部分ベクトルWp、πpの図形上の大
きさと方向を第14図に示した。
For reference, the graphical sizes and directions of the partial vectors Wp and πp are shown in FIG. 14.

次に、処理141で、この3点(Q、−+、I)pl)
のなす角度Oを算出する。
Next, in process 141, these three points (Q, -+, I) pl)
Calculate the angle O formed by

e =cos−’ ((−Ap) ・Bp/(lApl
 ・fBpl))ここに、符号・は内積を表すものとし
、また、cos’ は、O≦0≦180°で値を返すよ
うにしておく。
e = cos-' ((-Ap) ・Bp/(lApl
・fBpl)) Here, the symbol ・represents an inner product, and cos' is set to return a value in O≦0≦180°.

次に、処理142で、Oが△θより大きいが否か判定す
る。△θは正の小さな数値であり、この例では3°にし
である。
Next, in process 142, it is determined whether O is greater than Δθ. Δθ is a small positive value, in this example approximately 3°.

二こで、θが△θ以下である場合は、この3点は折り返
しになっているので、pl−1の点で]回停止せさるを
得ない。そこで処理143で、第dステップに5TOP
コマンドを入れ、処理144でdをステップアップし、
処理146で、次のステップにMOV  qjコマンド
を入れると共に、q、Jにplをコピーする。その後、
処理147で、i、j、dを+1し、処理]57でSを
+]して処理を終了する。
If θ is less than or equal to Δθ, these three points are turned around, so it is inevitable to stop at point pl-1. Therefore, in process 143, 5TOP is added to the d-th step.
Input the command, step up d in process 144,
In process 146, the MOV qj command is entered in the next step, and pl is copied to q and J. after that,
In process 147, i, j, and d are incremented by 1, and in process 57, S is +], and the process ends.

次に、0〉△Oのときは、処理145で、0≧180−
八〇か否かを判定し、0≧180−ΔOのときは、3点
はほぼ一直線に並んでいることになるので、乗り移りは
考慮する必要かないので、処理146で、第dステップ
にMOVqjを入れ、qjにpiをコピーし、各ポイン
タを+1して処理を終了する。
Next, when 0>△O, in process 145, 0>=180−
80 or not, and when 0≧180−ΔO, the three points are almost lined up in a straight line, so there is no need to consider the transfer, so in process 146, MOVqj is added to the d-th step. , copies pi to qj, increments each pointer by 1, and ends the process.

次に処理145で、O≧180−△θでなかった場合は
、3点は、△e<e<18o−、八〇の角度で交ってい
ることを表わすので、乗り移りの処理か必要となる。
Next, in process 145, if O≧180−△θ does not hold, it means that the three points intersect at an angle of 80, △e<e<18o−, so a transfer process is necessary. Become.

そこで、まず、処理148で経路誤差りを算出する。Therefore, first, in process 148, the route error is calculated.

この経路誤差りは、 D = r /5jn(e /2) −7で表わせるが
、ここで、ロボットが出しつる最大加速度(モーターの
トルクに対応)をa。13、とすると、 γ−v ’ / B□ユ、 となるから、 D=r/5in(θ/2)−y =v’(1−sjn((9/2))/(a、、、・5j
n(θ/2))となる。
This path error can be expressed as D = r /5jn(e /2) -7, where the maximum acceleration (corresponding to the motor torque) that the robot can produce is a. 13, then γ-v'/B・5j
n(θ/2)).

これらγ、Dの様子を、第14図に示す。The state of these γ and D is shown in FIG.

ところで、この経路誤差りは、ロボットが最大加速度で
このカーブを曲った時、経路が教示点がらどの程度ずれ
るかを表わしている。
By the way, this path error represents how much the path deviates from the teaching point when the robot turns this curve at maximum acceleration.

次に、処理149で、今計算した経路誤差りと、第7図
の処理102で設定した許可誤差とを比較する。ここで
、比較値DAT3としては、作業中ならDw、エアーカ
ット時ならDaが使われる。
Next, in process 149, the route error just calculated is compared with the allowed error set in process 102 of FIG. Here, as the comparison value DAT3, Dw is used during work, and Da is used during air cutting.

処理149で、D > D ATRでなかった場合は、
この半径γのままでコーナーを曲っても良いことを意味
しているので、158のポイント生成処理を行う。
In process 149, if D>D ATR is not satisfied,
This means that it is possible to turn the corner with this radius γ, so 158 points are generated.

しかして、D > D A T Rの場合は、処理15
0で現在の速度VをV′に退避する。
Therefore, if D > D A T R, process 15
0, the current speed V is saved to V'.

これは、初期の■より小さい値となる。This is a value smaller than the initial ■.

次に処理152で、この速度■を指定するコマンドを新
プログラムの第dステップに入れ、処理153でdを+
1する。
Next, in process 152, a command specifying this speed ■ is inserted into the d-th step of the new program, and in process 153, d is +
Do 1.

この一連の処理により、設定誤差内で曲線移動できる速
度に補正される。
Through this series of processing, the speed is corrected to a speed that allows curve movement within the setting error.

次に処理154でポイント生成処理を行う。この後、コ
ーナーを曲った後での速度を元の速度に戻す為に、処理
155で第dステップに″ソクド■′″′を指定するコ
マンドを入れる。そして処理156でdを+1し、14
6の処理に飛ぶ。
Next, in step 154, point generation processing is performed. After this, in order to return the speed after turning the corner to the original speed, in step 155, a command specifying "Sokudo ■'"' is entered in the d-th step. Then, in process 156, d is incremented by 1, and 14
Skip to step 6.

第13図はポイント生成処理を表している。FIG. 13 shows the point generation process.

まず、処理160で、q、−1の位置をI)l−1の位
置から乗り移り経路の始まりの点に移す。
First, in process 160, the position of q,-1 is moved from the position of I)l-1 to the starting point of the transfer route.

γ” ” / a m a、 Q = y / tan(e /2) q」−+−p+−+−α°λ/1八p 次に、処理161でへプログラムの第dステップに円弧
補間命令を付加する。
γ” ” / a m a, Q = y / tan (e /2) q” - + - p + - + - α ° λ / 18 p Next, in process 161, a circular interpolation command is added to the d-th step of the program. Add.

処理162ではqJを生成し、d+]ステップにM○V
  qj命令を付加する。
In process 162, qJ is generated, and M○V is added to the d+] step.
Add qj instruction.

ここで、qjは次式で算出する。Here, qj is calculated using the following formula.

(qjの姿勢)−(pl−+の姿勢) (qjの位置)−(pl−tの位置)十〔(πp/lπ
pl)−(Ap/ 1Apl)]・Dなお、上記したよ
うに、 D = v ’ (]−5in(θ/2))/ (a 
、、、A、 ・5in(θ/2))である。
(Position of qj) - (Position of pl-+) (Position of qj) - (Position of pl-t) 10 [(πp/lπ
pl)-(Ap/1Apl)]・DAs mentioned above, D = v' (]-5in(θ/2))/(a
,,,A, ・5in(θ/2)).

次に、処理163でq、+1を生成し、d+2ステップ
にMOVq、+、命令を付加する。
Next, in process 163, q,+1 is generated and the MOVq,+, instruction is added to step d+2.

ここで、q、+1は次式にて算出する。Here, q and +1 are calculated using the following formula.

qh++=p+−+十α・B/lπp なお、q、+ −+ + Q + + Q J + 1
の位置関係は第14図に示すようになる。
qh++=p+-+10α・B/lπp In addition, q, + −+ + Q + + Q J + 1
The positional relationship is as shown in FIG.

次に、処理164でcl+3ステップに補間命令を付加
する。これは、dステップに円弧補間の指定を入れたの
で、それを元に戻す為に用いる。
Next, in process 164, an interpolation command is added to the cl+3 step. This is used to restore the specification of circular interpolation to the d step.

処理165と166で、Jとdを加えたポイントと命令
の数だけインクリメントして処理は終了する。
In steps 165 and 166, the number of points plus J and d is incremented by the number of instructions, and the process ends.

以上の処理によって、ソースプログラム10を処理して
得た新プログラムの一部を第15図に示す。
FIG. 15 shows a part of the new program obtained by processing the source program 10 through the above processing.

なお、この例では Da=180髄 Dw=0.005mm とし、 a、、、−=4900mm/sec’ (=0.5G)
としたものである。
In addition, in this example, Da=180 and Dw=0.005mm, a, , -=4900mm/sec' (=0.5G)
That is.

ここで、P2付近の教示点と生成点を関係を第16図に
、そして、P7付近のものを第17図に示した。
Here, the relationship between the teaching point and the generation point near P2 is shown in FIG. 16, and the relationship near P7 is shown in FIG.

次に、第7図の処理105の自動運転処理について、説
明する。なお、この自動運転では、新プログラムにもと
づいてロボットを動作させる。
Next, the automatic driving process of process 105 in FIG. 7 will be explained. In this automatic operation, the robot operates based on a new program.

ます、第18図に自動運転処理のフローを示す。Fig. 18 shows the flow of automatic operation processing.

このフローはCPU−A30で実行されるものである。This flow is executed by the CPU-A 30.

処理170でプログラムNoを入力する。この例ではP
BC上から310と人力する。次に処理1、71で起動
ボタンが押されるのを待つ。l) I’((、:ヒの起
動ボタンが押されると処理172て指定された教示プロ
グラムを、バブルメモリ35から取り出しRA M −
A、 35上に置く。処理173で教示ステップのカウ
ンタSを1にする。処理]74で第Sステップの命令を
チエツクする。
In step 170, a program number is input. In this example, P
Enter 310 from above BC. Next, in process 1, 71, it waits for the activation button to be pressed. l) When the start button of I'(,:hi is pressed, the specified teaching program is taken out from the bubble memory 35 in process 172 and stored in the RAM -
A. Place it on 35. In process 173, the teaching step counter S is set to 1. Processing] In step 74, the instruction of the S-th step is checked.

ソクド命令の時は、処理175で■に指定速度を代入す
る。S T OI)命令の時は何もしない。ポカン命令
の時は、処理+76でホカンタイプに指定されたホカン
タイプを入れる。M OV命令の時(J、]77でポイ
ント処理を行う。作業関係命令の時は、処理178で移
動完了を待ち、その後、アークON等の指令を周辺機器
(この例では溶接機)に発行する。尚、移動完了か否か
は、I) I) RA M 36−hの移動完了フラグ
を見ることにより判断する。
In the case of a speed command, the specified speed is substituted for ■ in step 175. S T OI) Do nothing when commanded. At the time of a pokan command, input the specified hokan type as the hokan type with processing +76. M OV command (J, ) Point processing is performed at 77. When it is a work-related command, wait for movement completion at step 178, and then issue commands such as arc ON to peripheral equipment (in this example, welding machine). Note that whether or not the movement is completed is determined by checking the movement completion flag of RAM 36-h.

これらの処理か終了すると、処理+79でSをステップ
アップし、処理174へ行く。命令かE○Pの時には自
動運転処理を終了する。
When these processes are completed, S is stepped up in process +79, and the process goes to process 174. When it is a command or E○P, the automatic operation process is ended.

次に第19図を用いて、ポイント処理について、説明す
る。このポイント処理では、サーボCP U91120
 bに補間コマンドを発行し、ロボットを動作させる。
Next, point processing will be explained using FIG. 19. In this point processing, servo CP U91120
Issue an interpolation command to b to operate the robot.

まず処理180で現在のステップ(S)にあるポイント
NOをとり出し、1に代入する。次に処理181で、M
OVq、、、の命令が出てくるまでに、ソクドやST○
■)などの速度指令命令か有か否かを調べる。命令か有
った場合には処理182で終了速度V8にその速度を入
れる。5TOP命令の時はv、、=Oとする。
First, in process 180, the point number at the current step (S) is taken out and assigned to 1. Next, in process 181, M
By the time the OVq,... command comes out, Sokudo and ST○
Check whether there is a speed command such as ①). If there is a command, the speed is entered in the end speed V8 in step 182. For the 5TOP instruction, set v,,=O.

速度命令がない場合は処理183で、以前にソクド命令
で指定されていた速度■を■、に代入する。次に処理1
84でホカンタイブを調べる、円弧補間でない場合、処
理185で移動完了を待つ、これは、別CI) Llで
あるサーボCP Ll部で、qまでの移動処理を行って
いるので、その完了を待つ処理である。
If there is no speed command, in step 183, the speed ■ previously specified by the speed command is substituted into ■. Next, process 1
In step 84, check the hokan type. If it is not circular interpolation, wait for the completion of the movement in step 185. This is a separate CI) Servo CP which is Ll. The Ll section is performing the movement process up to q, so this is the process of waiting for its completion. It is.

移動か完了しロボットかql−1までくると、処理18
6でqlまでの補間コマンドを発行する。
When the movement is completed and the robot reaches ql-1, process 18
At step 6, an interpolation command up to ql is issued.

このコマンドでは、 補間タイプ;直線、関節、円弧 1]標点:q1 定常速度:V 終了速度:〜・・ 補助点:q′ (円弧補間の時のみ) を指令する。This command: Interpolation type: straight line, joint, arc 1] Gauge: q1 Steady speed: V Ending speed:~・・ Auxiliary point: q′ (only for circular interpolation) command.

ザーホCPIJ部では、二のコマン1くによって、現在
ロボットがいる点から目標点まで、補間タイプに従って
ロボッ[・を移動させる。速度の処理は、現在の速度が
定常速度\Iと異っていれば、a、1、の加速度によっ
て、\Iまで加速、又は減速する。
In the Zaho CPIJ section, the robot moves from the point where the robot is currently located to the target point according to the interpolation type using the second command. In the speed processing, if the current speed is different from the steady speed \I, it is accelerated or decelerated to \I according to the acceleration of a,1.

また、目標点に近くなると目標点に達した時、速度がV
Fになるように、加速、減速を行う。
Also, as you get closer to the target point, when you reach the target point, the speed will be V
Accelerate and decelerate so that F is reached.

次に、処理184でホカンタイプか円弧であった場合、
処理187で、ql、1も円弧補間になっているか否か
調べる。q1+1までに、他のホカンタイブを指定する
ポカン命令かない場合、処理I88で移動完了待ちを行
い、処理189で補助点を91+1と指定して、補間コ
マンドをサーボCPIJ部に発行する。
Next, if it is a hokan type or a circular arc in processing 184,
In process 187, it is checked whether ql,1 is also circular interpolation. If there is no poking command specifying another hocantile by q1+1, the process waits for the completion of movement in process I88, specifies the auxiliary point as 91+1, and issues an interpolation command to the servo CPIJ section in process 189.

q、+1が円弧補間でない場合は、処理190で移動子
持ちを行い、処理189で補助点をC1と指定して、補
間コマン[くをサーボCP I−:部に発行する。
If q, +1 is not circular interpolation, mover holding is performed in process 190, the auxiliary point is designated as C1 in process 189, and an interpolation command [ku] is issued to the servo CP I-: section.

q+++が円弧補間でない場合は、処理190で移動完
了待ちを行い、続く処理191で補助点をql−2とし
て補間コマンドを発行する。
If q+++ is not circular interpolation, processing 190 waits for movement completion, and subsequent processing 191 issues an interpolation command with the auxiliary point ql-2.

以」−でポイント処理は終rである。Point processing ends with "-".

ここまで述べてきた処理によって、プログラム10を自
動運転させた時の経路を模式的に書いたのか第1図であ
る3、この図では、わかりやすいように3次元を2次元
的に書7いである。
The route when the program 10 is automatically operated by the processing described so far is schematically drawn in Figure 1 (3).In this figure, the three dimensions are shown two-dimensionally (7) for ease of understanding. .

教示ポイントP1〜P1cの内、P、、 P、、 P、
Among teaching points P1 to P1c, P,, P,, P,
.

Pl。l P141 pHの各教示ポイントのところで
乗り移りの新経路で動作している。
Pl. l P141 Operating on a new route of transfer at each teaching point of pH.

このときの動作経路の道のりにそった速度の様子は第2
図に示すようになる。
The speed along the motion path at this time is the second
The result will be as shown in the figure.

この図から明らかなように、作業開始点P6と終了点P
、2以外では、ロボットの先端は停止していない。また
、図中の点線は、速度を最大値に指定した時のものであ
る。この時は各モーター軸の最大回転数まで速度を上げ
る。従って多関節型のロボットでは、線速一定にはなら
ないが、タクトタイム(作業時間)は最も短くなる。
As is clear from this figure, the work start point P6 and the end point P
, 2, the tip of the robot is not stopped. Moreover, the dotted line in the figure is when the speed is specified to the maximum value. At this time, increase the speed to the maximum rotation speed of each motor shaft. Therefore, with an articulated robot, the linear velocity will not be constant, but the takt time (work time) will be the shortest.

さらに第21図は加速度の様子を示したもので、q2〜
q、、q、〜q、では動作方向を変更する為に最大加速
度になっていることがわかる。
Furthermore, Fig. 21 shows the state of acceleration, and q2~
It can be seen that at q, q, ~q, the acceleration is at the maximum in order to change the direction of motion.

従って、この実施例によれば、タクトタイム(作業時間
)が大きく短縮されるという効果がある。
Therefore, this embodiment has the effect of greatly shortening the takt time (work time).

例えば、これらの図のP1〜l)、の区間で、次の条件
の時、従来の方式に比べ約27%動作時間か短くなる。
For example, in the section P1 to P1) in these figures, under the following conditions, the operating time is approximately 27% shorter than in the conventional system.

条件 P −P、  500mm P2〜P、  500刷 P、〜P4500画 /PIP2P。 90’ 、 /P、P、P、90’″
速度9800印 加速度0.5G 許容誤差 Da=200mm また、本実施例では、ロボットか教示点で必要な時以外
停止、減速しないので、動きがスムーズになるという効
果もある。さらに、教示方法は従来方式とまったく同一
で良い為、細かい動作制御を行っているにもかかわらず
、教示が煩雑にならないという効果もある。
Conditions P-P, 500mm P2-P, 500 printings P, ~P4500 images/PIP2P. 90', /P, P, P, 90'''
Speed: 9800 marks Acceleration: 0.5G Tolerance: Da=200mm Furthermore, in this embodiment, the robot does not stop or decelerate unless necessary at the teaching point, so it has the effect of smoother movement. Furthermore, since the teaching method can be exactly the same as the conventional method, there is an advantage that the teaching does not become complicated even though detailed motion control is performed.

[発明の効果] 本発明によれば、簡単なマークの入力だけで、ロボット
をスムーズに動作させるのに必要な全ての条件が自動的
に生成されるため、教示が簡単になるという効果がある
[Effects of the Invention] According to the present invention, all the conditions necessary for the robot to operate smoothly are automatically generated just by inputting a simple mark, which has the effect of simplifying teaching. .

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

第1図は本発明による産業用ロボット制御装置の一実施
例における実動作経路の模式図、第2図は同じく速度分
布図、第3図は従来方式での実動作経路の模式図、第4
図は従来方式での速度分布図、第5図は本発明の一実施
例の全体機器構成図、第6図はロボット制御装置の内部
ブロック図、第7図は動作説明用のフローチャート、第
8図は教示ポイントの分布図、第9図は動作説明用のフ
ローチャート、第10図は教示プログラムの説明図、第
11図、第12図、第13図は動作説明用のフローチャ
ート、第14図は処理説明図、第15図は生成プログラ
ムの説明図、第16図、第17図は部分経路の説明図、
第18図、第19図は動作説明用のフローチャート、第
20図、第21図は加速度の分布図である。
FIG. 1 is a schematic diagram of an actual motion path in an embodiment of the industrial robot control device according to the present invention, FIG. 2 is a velocity distribution diagram, FIG. 3 is a schematic diagram of an actual motion path in the conventional method,
Figure 5 is a speed distribution diagram of the conventional system, Figure 5 is an overall equipment configuration diagram of an embodiment of the present invention, Figure 6 is an internal block diagram of the robot control device, Figure 7 is a flowchart for explaining operation, Figure 8 The figure is a distribution diagram of teaching points, Figure 9 is a flowchart for explaining the operation, Figure 10 is an explanatory diagram of the teaching program, Figures 11, 12, and 13 are flowcharts for explaining the operation, and Figure 14 is a flowchart for explaining the operation. A process explanatory diagram, FIG. 15 is an explanatory diagram of the generation program, FIGS. 16 and 17 are explanatory diagrams of partial routes,
18 and 19 are flowcharts for explaining the operation, and FIGS. 20 and 21 are acceleration distribution diagrams.

Claims (1)

【特許請求の範囲】 1、ティーチング・プレイバック方式の産業用ロボット
の制御装置において、ティーチングにより入力された教
示点データに所定のマークを付加する手段と、連続する
複数の教示点で規定される連続した部分経路間での乗り
移り経路の制御方式として、少なくとも2種の異なった
乗り移り方式を設定する制御手段とを設け、上記教示点
データに従って実行されるロボットの制御に際して、該
教示点データに付されたマークに応じて上記乗り移り方
式の1種が選択されるように構成したことを特徴とする
産業用ロボット制御装置。 2、請求項1の発明において、上記制御手段が所定のデ
ータ入力手段を有し、このデータ入力手段の操作により
、該制御手段に設定すべき乗り移り方式を決定する所定
のパラメータが入力されるように構成したことを特徴と
する産業用ロボット制御装置。 3、請求項2の発明において、上記乗り移り方式を決定
するパラメータには、少なくとも教示点とロボットの実
動作経路との最大許容誤差を規定する数値が含まれ、こ
の最大許容誤差範囲内でロボットの上記乗り移り経路が
決定されるように構成したことを特徴とする産業用ロボ
ット制御装置。 4、請求項1の発明において、ロボットの上記乗り移り
経路は、該ロボットの各可動軸が出し得る最大加速度又
は最大速度の少なくとも一方を越えないようにして決定
されていることを特徴とする産業用ロボット制御装置。 5、請求項3の発明において、上記乗り移り経路が上記
最大許容誤差を越えてしまう場合には、この乗り移り経
路でのロボットの指定速度を抑えるように構成したこと
を特徴とする産業用ロボット制御装置。 6.請求項1の発明において、上記マークの種別の少な
くとも1がロボットの作業中を表わし、他の少なくとも
1はロボットが非作業中であることを表わすものとなる
ように構成したことを特徴とする産業用ロボット制御装
置。 7、請求項1の発明において、上記マークは、上記教示
点の全てに付加されるように構成したことを特徴とする
産業用ロボット制御装置。 8、請求項1の発明において、上記マークは、上記教示
点の内の所定の点にだけ付加されるように構成したこと
を特徴とする産業用ロボット制御装置。 9、請求項1の発明において、上記乗り移り経路の制御
に必要な制御係数が、上記ティーチング終了時に予め計
算されるように構成したことを特徴とする産業用ロボッ
ト制御装置。 10、請求項9の発明において、上記制御係数の演算が
、上記ロボットの動作を制御する手段とは異なる手段に
より実行されるように構成したことを特徴とする産業用
ロボット制御装置。
[Claims] 1. In a teaching-playback type industrial robot control device, means for adding a predetermined mark to teaching point data input by teaching, and a method defined by a plurality of consecutive teaching points. A control means for setting at least two different transfer methods is provided as a control method for transfer routes between consecutive partial routes, and when controlling the robot in accordance with the teaching point data, An industrial robot control device characterized in that one of the transfer methods described above is selected in accordance with the marked mark. 2. In the invention of claim 1, the control means has a predetermined data input means, and by operating the data input means, a predetermined parameter for determining the transfer method to be set is inputted to the control means. An industrial robot control device comprising: 3. In the invention of claim 2, the parameters for determining the transfer method include at least a numerical value that defines the maximum allowable error between the teaching point and the robot's actual motion path, and within this maximum allowable error range, the robot An industrial robot control device configured to determine the transfer route. 4. In the invention according to claim 1, the transfer route of the robot is determined so as not to exceed at least one of the maximum acceleration or the maximum speed that each movable axis of the robot can generate. Robot control device. 5. The industrial robot control device according to claim 3, wherein if the transfer route exceeds the maximum allowable error, the designated speed of the robot on the transfer route is suppressed. . 6. The invention according to claim 1, characterized in that at least one of the types of marks indicates that the robot is working, and at least one of the other marks indicates that the robot is not working. robot control device. 7. The industrial robot control device according to claim 1, wherein the mark is added to all of the teaching points. 8. The industrial robot control device according to claim 1, wherein the mark is added only to a predetermined point among the teaching points. 9. The industrial robot control device according to claim 1, wherein the control coefficients necessary for controlling the transfer route are calculated in advance at the end of the teaching. 10. The industrial robot control device according to claim 9, wherein the calculation of the control coefficient is performed by means different from means for controlling the operation of the robot.
JP18151990A 1990-07-11 1990-07-11 Industrial robot controller Pending JPH0469706A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18151990A JPH0469706A (en) 1990-07-11 1990-07-11 Industrial robot controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18151990A JPH0469706A (en) 1990-07-11 1990-07-11 Industrial robot controller

Publications (1)

Publication Number Publication Date
JPH0469706A true JPH0469706A (en) 1992-03-04

Family

ID=16102177

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18151990A Pending JPH0469706A (en) 1990-07-11 1990-07-11 Industrial robot controller

Country Status (1)

Country Link
JP (1) JPH0469706A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011093055A (en) * 2009-10-30 2011-05-12 Honda Motor Co Ltd Information processing method, apparatus, and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011093055A (en) * 2009-10-30 2011-05-12 Honda Motor Co Ltd Information processing method, apparatus, and program

Similar Documents

Publication Publication Date Title
JP2786225B2 (en) Industrial robot control method and apparatus
Bolmsjö et al. Robotic arc welding–trends and developments for higher autonomy
JPH09265313A (en) Speed arithmetic device for robot and speed arithmetic method for robot
JPS61173311A (en) Method and apparatus for controlling manipulator
JPH10264080A (en) Robot controller
CN108687758B (en) Moving speed control device and method for robot
WO2004108365A1 (en) Teaching data preparing method for articulated robot
WO1989008878A1 (en) Method of controlling tool attitude of a robot
KR0160998B1 (en) Robot trajectory planning method
KR19980086498A (en) A locus control device and a locus control method of a multi-degree-of-freedom scalar type robot in a plane, and a locus control program of a multi-degree-of-freedom scalar type robot in a plane
JPH05345286A (en) Method for manual feeding of robot
JPH0469706A (en) Industrial robot controller
JP3051387B1 (en) Robot program converter
JPH0193805A (en) Method for generating teaching data of robot
JPS62251901A (en) Course controller for multiaxis robot
Everett et al. Automatic singularity avoidance using joint variations in robot task modification
JP2610996B2 (en) Articulated robot controller
Parkin An interactive robotic simulation package
JPS5857762B2 (en) Method and device for correcting movement speed in robots
JPH05505893A (en) How to control the robot cell path
Ioannou Industrial robot specifications
JPH02144705A (en) Robot arm control method
Akli Experimental analysis of the performance of mobile manipulators executing generalized point-to-point tasks
CN116551694A (en) Control method of composite robot
Spur et al. Computer aided application program synthesis for industrial robots