JPH10329068A - Robot teaching device - Google Patents
Robot teaching deviceInfo
- Publication number
- JPH10329068A JPH10329068A JP14275997A JP14275997A JPH10329068A JP H10329068 A JPH10329068 A JP H10329068A JP 14275997 A JP14275997 A JP 14275997A JP 14275997 A JP14275997 A JP 14275997A JP H10329068 A JPH10329068 A JP H10329068A
- Authority
- JP
- Japan
- Prior art keywords
- point
- teaching
- trajectory
- cpu
- line segment
- 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
Links
Landscapes
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
(57)【要約】
【課題】 教示作業に熟練を要することなくしかも短時
間で教示作業を行うことができ、さらに塗装品質を向上
させることができるロボットの教示装置を得ること。
【解決手段】 本発明は、多関節型のマニピュレータを
有するロボットと、マニピュレータの先端部に取り付け
られた塗装ガンと、マニピュレータを駆動制御するコン
トローラとを有し、コントローラは、線分L上の教示点
P1’の位置データに基づいて、教示点たるP0点、P
1点およびP2点の各点を結ぶL字状の軌道に対して、
所定の曲率を有する軌道を生成する。
(57) [Problem] To provide a robot teaching device capable of performing a teaching operation in a short time without requiring skill in the teaching operation and further improving the coating quality. The present invention includes a robot having an articulated manipulator, a coating gun attached to a tip of the manipulator, and a controller for driving and controlling the manipulator. Based on the position data of the point P1 ′, the teaching point P0 point, P0 point
For an L-shaped trajectory connecting one point and P2 point,
Generate a trajectory having a predetermined curvature.
Description
【0001】[0001]
【発明の属する技術分野】本発明は、工業製品の製造に
用いられるロボットの教示装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a teaching device for a robot used for manufacturing industrial products.
【0002】[0002]
【従来の技術】従来より、いわゆるティーチングプレイ
バック型のロボットには、作業軌道を教示する装置とし
て各種の教示装置が用いられている。この種のロボット
の教示装置としては、例えば、特開平6−43928号
公報、特開平7−64622号公報に開示されているよ
うに、予め教示された複数の教示点に関する位置デー
タ、加速度データ、移動速度データ等に基づいて、教示
点間を補間することにより、自動的に作業軌道データを
作成するものが知られている。また、ロボットの教示装
置としては、例えば、特公平6−105412号公報に
開示されているように、予め教示された直交空間の各点
に基づいて、滑らかでかつ連続的な作業軌道データを自
動的に作成するものが知られている。2. Description of the Related Art Conventionally, in a so-called teaching playback type robot, various teaching devices have been used as devices for teaching a work trajectory. As a teaching device for this type of robot, for example, as disclosed in JP-A-6-43928 and JP-A-7-64622, position data, acceleration data relating to a plurality of teaching points taught in advance, 2. Description of the Related Art There is known a device that automatically creates work trajectory data by interpolating between teaching points based on moving speed data or the like. Further, as a teaching device of a robot, for example, as disclosed in Japanese Patent Publication No. 6-105412, a smooth and continuous work trajectory data is automatically generated based on each point of an orthogonal space taught in advance. It is known to create them.
【0003】[0003]
【発明が解決しようとする課題】ところで、従来のロボ
ットの教示装置においては、教示された教示点に関する
位置データ等に基づいて自動的に滑らかでかつ連続的な
作業軌道が生成されるため、実際にロボットを動作させ
なければ、再生時に生成された作業軌道をオペレータが
確認することができない。かかる事情より、従来のロボ
ットの教示装置においては、次のような問題があった。 (1)前後の教示点を含めて数回にわたって、教示点の
修正を行わなければならないため、熟練者でなければ教
示作業を行うことができない。 (2)たとえ熟練者であっても、所望の作業軌道を得る
ために数回の修正が必要であるため、教示作業に多大な
る時間を要し、ひいては生産ラインの停止時間が長くな
る。 (3)教示時において、実際にロボットを動作させなけ
れば作業軌道を確認することができないため、作業対象
たるワークにロボットが接触するという干渉が生じる場
合がある。 また、従来のロボットの教示装置においては、生成すべ
き作業軌道が教示点を通過するという設定と、上記作業
軌道が教示点を通過しないという設定とを行うことがで
きるが、移動速度に対する上記設定を行うことができな
いため、指定された速度を保証することができない。従
って、従来のロボットの教示装置においては、再生時の
塗装品質を保持することが困難であるという問題があっ
た。本発明はこのような背景の下になされたもので、教
示作業に熟練を要することなくしかも短時間で教示作業
を行うことができ、さらに塗装品質を向上させることが
できるロボットの教示装置を提供することを目的とす
る。In a conventional robot teaching device, a smooth and continuous work trajectory is automatically generated based on position data and the like relating to a taught teaching point. If the robot is not operated, the operator cannot confirm the work trajectory generated during reproduction. Under such circumstances, the conventional robot teaching device has the following problems. (1) Since the teaching points must be corrected several times including the preceding and following teaching points, only a skilled person can perform the teaching operation. (2) Even a skilled person needs several corrections to obtain a desired work trajectory, so that a long time is required for teaching work and, consequently, the downtime of the production line becomes long. (3) At the time of teaching, since the work trajectory cannot be confirmed unless the robot is actually operated, interference may occur in which the robot comes into contact with the work to be worked. Further, in the conventional robot teaching device, it is possible to make a setting that the work trajectory to be generated passes the teaching point and a setting that the work trajectory does not pass the teaching point. Can not guarantee the specified speed. Therefore, the conventional robot teaching device has a problem that it is difficult to maintain the coating quality during reproduction. The present invention has been made under such a background, and provides a teaching device for a robot capable of performing a teaching operation in a short time without requiring skill in the teaching operation and further improving coating quality. The purpose is to do.
【0004】[0004]
【課題を解決するための手段】請求項1に記載の発明
は、作業面上に配設されたワークに対してマニピュレー
タの先端部に取り付けられた作業具により作業を行うロ
ボットにおいて、予め教示された複数の教示点の位置デ
ータを記憶する記憶手段と、前記複数の教示点のうち特
定の教示点を交点とする2直線のなす角を2分しかつ前
記特定の教示点を通過する線分軌道のデータを生成する
線分軌道データ生成手段と、前記作業具が前記線分軌道
上に沿って移動するように前記マニピュレータを駆動し
オペレータにより前記線分軌道上の教示点が指示された
とき前記マニピュレータの駆動を停止する駆動制御手段
と、前記線分軌道上の教示点の位置データおよび前記記
憶手段に記憶されている位置データに基づいて前記線分
軌道上の教示点を通過する軌道のデータを生成する軌道
データ生成手段とを具備することを特徴とする。この請
求項1に記載の発明によれば、マニピュレータを実際に
動作させて、目視により線分軌道上の教示点を教示して
いるので、教示作業に熟練を要することなくしかも短時
間で教示作業を行うことができ、さらに塗装品質を向上
させることができる。また、請求項2に記載の発明は、
請求項1に記載のロボットの教示装置において、前記軌
道データ生成手段は前記特定の教示点と前記特定の教示
点の前後の教示点とを結ぶ2直線の内側に位置する前記
線分軌道上の教示点が前記オペレータにより指示された
とき前記前後の教示点および前記線分軌道上の教示点を
通過する円弧軌道を含む軌道のデータを生成することを
特徴とする。この請求項2に記載の発明によれば、軌道
データ生成手段により線分軌道上の教示点を通過する円
弧軌道を含む軌道のデータが自動的に生成されるので、
線分軌道上の教示点を指示するという簡単な動作のみで
円弧軌道を含む軌道を簡単に得ることができる。従っ
て、この請求項2に記載の発明によれば、円弧軌道を含
む複雑な軌道であっても、熟練を要することなく教示作
業を行うことができる。また、請求項3に記載の発明
は、請求項1に記載のロボットの教示装置において、前
記軌道データ生成手段は前記特定の教示点と前記特定の
教示点の前後の教示点とを結ぶ2直線の外側に位置する
前記線分軌道上の教示点が前記オペレータにより指示さ
れたとき前記特定の教示点、前記前後の教示点および前
記線分軌道上の教示点を通過するループ軌道を含む軌道
のデータを生成することを特徴とする。この請求項3に
記載の発明によれば、請求項2に記載の発明と同様にし
て、軌道データ生成手段により線分軌道上の教示点を通
過するループ軌道を含む軌道のデータが自動的に生成さ
れるので、線分軌道上の教示点を指示するという簡単な
動作のみでループ軌道を含む軌道を簡単に得ることがで
きる。従って、この請求項3に記載の発明によれば、ル
ープ軌道を含む複雑な軌道であっても、熟練を要するこ
となく教示作業を行うことができる。また、請求項4に
記載の発明は、請求項1ないし3のいずれかに記載のロ
ボットの教示装置において、前記線分軌道データ生成手
段は前記記憶手段に記憶されている前記複数の教示点の
位置データおよび予め設定される前記作業具の移動速度
に基づいて前記マニピュレータに振動等が発生しない、
前記線分軌道上における前記教示点の設定可能範囲を求
めることを特徴とする。この、請求項4に記載の発明に
よれば、線分軌道データ生成手段により、設定可能範囲
が求められるので、マニピュレータに振動等が発生せ
ず、ひいては教示精度を向上させることができる。According to a first aspect of the present invention, there is provided a robot for performing a work on a work disposed on a work surface by a work tool attached to a distal end portion of a manipulator. Storage means for storing position data of the plurality of teaching points, and a line segment which divides an angle between two straight lines intersecting a specific teaching point among the plurality of teaching points into two and passes through the specific teaching point A line trajectory data generating means for generating trajectory data, and when the manipulator is driven so that the working tool moves along the line trajectory, and when a teaching point on the line trajectory is instructed by an operator. Drive control means for stopping driving of the manipulator; and passing the teaching points on the line segment trajectory based on the position data of the teaching points on the line segment trajectory and the position data stored in the storage means. Characterized by comprising the trajectory data generating means for generating data of the track to be. According to the first aspect of the present invention, since the manipulator is actually operated to visually teach the teaching points on the line segment trajectory, the teaching work can be performed in a short time without skill. Can be performed, and the coating quality can be further improved. The invention according to claim 2 is
2. The robot teaching device according to claim 1, wherein the trajectory data generating unit is on the line segment trajectory located inside two straight lines connecting the specific teaching point and the teaching points before and after the specific teaching point. 3. When a teaching point is specified by the operator, trajectory data including an arc trajectory passing through the preceding and following teaching points and a teaching point on the line segment trajectory is generated. According to the second aspect of the present invention, since the trajectory data generation means automatically generates the trajectory data including the arc trajectory passing through the teaching point on the line segment trajectory,
A trajectory including an arc trajectory can be easily obtained only by a simple operation of designating a teaching point on a line segment trajectory. Therefore, according to the second aspect of the present invention, a teaching operation can be performed without skill even on a complicated trajectory including an arc trajectory. According to a third aspect of the present invention, in the robot teaching device according to the first aspect, the trajectory data generating unit connects the specific teaching point with the teaching points before and after the specific teaching point. Of the trajectory including the specific teaching point, the preceding and following teaching points, and the loop trajectory passing through the teaching point on the line segment trajectory when the teaching point on the line segment trajectory located outside the robot is instructed by the operator. It is characterized by generating data. According to the third aspect of the present invention, similarly to the second aspect, the trajectory data including the loop trajectory including the loop trajectory passing through the teaching point on the line segment trajectory is automatically generated by the trajectory data generating means. Since it is generated, a trajectory including a loop trajectory can be easily obtained only by a simple operation of designating a teaching point on a line segment trajectory. Therefore, according to the third aspect of the present invention, a teaching operation can be performed without skill even on a complicated trajectory including a loop trajectory. According to a fourth aspect of the present invention, in the robot teaching apparatus according to any one of the first to third aspects, the line segment trajectory data generating means includes a plurality of the teaching points of the plurality of teaching points stored in the storage means. Vibration or the like does not occur in the manipulator based on the position data and the moving speed of the work tool set in advance,
A settable range of the teaching point on the line segment trajectory is obtained. According to the fourth aspect of the present invention, since the settable range is obtained by the line segment trajectory data generating means, vibration and the like do not occur in the manipulator, and the teaching accuracy can be improved.
【0005】[0005]
【発明の実施の形態】以下、図面を参照して本発明の実
施形態について説明する。図1は本発明の一実施形態に
よるロボットの教示装置の外観構成を示す側面図であ
る。この図において、1は、多関節型のマニピュレータ
1aを有するロボットであり、各関節は、図示しない駆
動装置(モータ)により駆動される。1bは、マニピュ
レータ1aの先端部に取り付けられた塗装ガンであり、
下方に配設された塗装対象たるワーク(図示略)に対し
て塗料を、後述する作業軌道に沿って噴射する。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a side view showing an external configuration of a robot teaching device according to an embodiment of the present invention. In this figure, reference numeral 1 denotes a robot having a multi-joint type manipulator 1a, and each joint is driven by a driving device (motor) (not shown). 1b is a coating gun attached to the tip of the manipulator 1a,
The paint is sprayed onto a work (not shown) to be painted, which is disposed below, along a work track described later.
【0006】2は、マニピュレータ1aを駆動制御する
コントローラであり、予め教示される複数の教示点のデ
ータ、塗装速度データ等に基づいて教示データの作成等
を行う。このコントローラ2の動作の詳細については後
述する。3は、マニピュレータ1aの動作制御、上述し
た塗装速度データの入力に用いられるティーチングペン
ダントであり、複数のキーを有している。Reference numeral 2 denotes a controller for driving and controlling the manipulator 1a. The controller 2 prepares teaching data based on data of a plurality of teaching points taught in advance, coating speed data, and the like. Details of the operation of the controller 2 will be described later. Reference numeral 3 denotes a teaching pendant used for controlling the operation of the manipulator 1a and inputting the above-mentioned coating speed data, and has a plurality of keys.
【0007】図2は、図1に示すコントローラ2と該コ
ントローラ2に接続されている各装置との電気的構成を
示すブロック図である。この図において、図1の各部に
対応する部分には同一の符号を付けその説明を省略す
る。図2に示すコントローラ2において、4は、CPU
(中央処理装置)であり、ロボットの教示データ作成等
の各種演算や各装置を制御する。なお、CPU4が行う
処理の詳細については後述する。FIG. 2 is a block diagram showing an electrical configuration of the controller 2 shown in FIG. 1 and each device connected to the controller 2. In this figure, parts corresponding to the respective parts in FIG. 1 are denoted by the same reference numerals, and description thereof is omitted. In the controller 2 shown in FIG.
(Central processing unit), which controls various operations such as creation of teaching data of the robot and each device. The details of the processing performed by the CPU 4 will be described later.
【0008】5は、ROM(リードオンリメモリ)であ
り、CPU4において用いられるプログラムを記憶す
る。6は、RAM(ランダムアクセスメモリ)であり、
教示された位置データや塗装に伴うパラメータ等を記憶
する。7は、モータドライバであり、CPU4から供給
されるモータ駆動信号Smに基づいてモータ8を駆動す
る。このモータ8は、マニピュレータ1a(図1参照)
の各関節を駆動する。また、モータ8は、各関節の位
置、言い換えれば、塗装ガン1bの位置を表す位置信号
Spをモータドライバ7を介してCPU4へ出力する。Reference numeral 5 denotes a ROM (Read Only Memory), which stores a program used in the CPU 4. 6 is a RAM (random access memory)
It stores the taught position data, parameters associated with painting, and the like. A motor driver 7 drives the motor 8 based on a motor drive signal Sm supplied from the CPU 4. The motor 8 includes a manipulator 1a (see FIG. 1).
Drive each joint. Further, the motor 8 outputs a position signal Sp indicating the position of each joint, in other words, the position of the coating gun 1 b to the CPU 4 via the motor driver 7.
【0009】次に、上述した一実施形態による装置各部
の動作の詳細について説明する。ただし、以下に説明す
る処理動作は、説明を簡略化するため、2次元平面のエ
リアを対象としたものについてのものである。実際に
は、この処理動作は、3次元空間を対象として行われ
る。また、以下に詳述する動作は、[粗]設定時の教示
動作および[精]設定時の教示動作に関するものであ
る。Next, the operation of each section of the apparatus according to the above-described embodiment will be described in detail. However, the processing operation described below is for a two-dimensional plane area in order to simplify the description. In practice, this processing operation is performed on a three-dimensional space. The operations described in detail below relate to the teaching operation at the time of [coarse] setting and the teaching operation at the time of [fine] setting.
【0010】<[粗]設定時の教示動作>はじめに、
[粗]設定時の教示動作を図3を参照して説明する。図
3は、[粗]設定時または[精]設定時におけるCPU
4の処理手順を示すPAD図である。まず、オペレータ
は、塗装ガン1b(図1参照)を図4に示すP0点、P
1点およびP2点という3点を教示するためにティーチ
ングペンダント3を操作する。<Teaching operation when [Coarse] is set>
The teaching operation at the time of setting [coarse] will be described with reference to FIG. FIG. 3 shows the CPU when [Coarse] or [Fine] is set.
FIG. 14 is a PAD diagram showing a processing procedure of No. 4; First, the operator moves the coating gun 1b (see FIG. 1) to the point P0 shown in FIG.
The teaching pendant 3 is operated to teach three points, one point and P2 point.
【0011】すなわち、オペレータは、P0点を教示す
べく、ティーチングペンダント3を操作する。これによ
り、ティーチングペンダント3からは、マニピュレータ
1aを駆動するための信号がCPU4へ供給され、次い
で、CPU4からは、上記信号に応じたモータ駆動信号
Smがモータドライバ7へ供給される。この結果、モー
タ8が駆動され、マニピュレータ1aの各関節が駆動さ
れ、塗装ガン1bが図4に示すP0点へ向けて移動す
る。That is, the operator operates the teaching pendant 3 to teach the point P0. As a result, a signal for driving the manipulator 1a is supplied from the teaching pendant 3 to the CPU 4, and then a motor drive signal Sm corresponding to the signal is supplied from the CPU 4 to the motor driver 7. As a result, the motor 8 is driven, the joints of the manipulator 1a are driven, and the coating gun 1b moves toward the point P0 shown in FIG.
【0012】そして、塗装ガン1bがP0点に位置する
と、オペレータは、ティーチングペンダント3を操作す
る。これにより、ティーチングペンダント3からは、停
止信号がCPU4へ出力され、CPU4は、モータ駆動
信号Smの出力を停止する。従って、マニピュレータ1
aは、塗装ガン1bがP0点に位置している状態で停止
される。When the coating gun 1b is located at the point P0, the operator operates the teaching pendant 3. Accordingly, a stop signal is output from the teaching pendant 3 to the CPU 4, and the CPU 4 stops outputting the motor drive signal Sm. Therefore, the manipulator 1
In a, the coating gun 1b is stopped in a state where the coating gun 1b is located at the point P0.
【0013】次に、CPU4は、モータ8より出力され
ているモータ駆動信号Smを取り込んだ後、該モータ駆
動信号Smより得られるP0点の位置データをRAM6
へ書き込む。ここで、上記P0点の位置データは、図4
に示すP0点のx座標成分x0およびy座標成分y0で
ある。Next, the CPU 4 fetches the motor drive signal Sm output from the motor 8 and then stores the position data of the point P0 obtained from the motor drive signal Sm in the RAM 6
Write to Here, the position data of the point P0 is shown in FIG.
Are the x-coordinate component x0 and the y-coordinate component y0 of the point P0 shown in FIG.
【0014】以下、オペレータは、上述したP0点の教
示動作と同様にして、図4に示すP1点、P2点を順次
教示する。そして、P1点およびP2点の教示が終了す
ると、RAM6には、P1点の位置データ(x1、y
1)およびP2点の位置データ(x2、y2)が書き込
まれる。Thereafter, the operator sequentially teaches the points P1 and P2 shown in FIG. 4 in the same manner as the teaching operation of the point P0 described above. When the teaching of the points P1 and P2 is completed, the RAM 6 stores the position data (x1, y
1) and the position data (x2, y2) of point P2 are written.
【0015】次に、オペレータは、教示したP0点、P
1点およびP2点のうち、P1点について[粗]設定ま
たは[精]設定を、ティーチングペンダント3を操作す
ることにより行う。ここで、上記[粗]設定および
[精]設定について詳述する。まず、[粗]設定とは、
図6に示す教示点たるP0点、P1点およびP2点の各
点を結ぶL字状の軌道に対して、所定の曲率を有する軌
道を生成する設定をいう。言い換えれば、[粗]設定と
は、教示されたP1点を通過しない軌道を生成する設定
をいう。Next, the operator inputs the point P0, P
The “coarse” setting or the “fine” setting for the P1 point out of the 1 point and the P2 point is performed by operating the teaching pendant 3. Here, the [coarse] setting and the [fine] setting will be described in detail. First, the coarse setting
This refers to a setting for generating a trajectory having a predetermined curvature with respect to an L-shaped trajectory connecting points P0, P1, and P2 as teaching points shown in FIG. In other words, the [coarse] setting refers to a setting for generating a trajectory that does not pass through the taught point P1.
【0016】上記所定の曲率を有する軌道は、同図に示
すP0点→A0点→P1’点→A1点→P2点という経
路を通るものであり、このうちA0点→P1’点→A1
点という経路を通る軌道は、円弧状とされている。上記
曲率は、P1点と該P1点より内側に位置するP1’点
との間の距離d1が小さいほど大きくなる一方、距離d
1が小さいほど大きくなる。上記P1’点の位置は、予
めオペレータにより設定される。The trajectory having the above-mentioned predetermined curvature passes through the path shown by P0 → A0 → P1 ′ → A1 → P2 shown in FIG.
The trajectory passing through the point path is arc-shaped. The curvature increases as the distance d1 between the point P1 and the point P1 ′ located inside the point P1 decreases, while the distance d increases.
The smaller the value of 1, the larger the value. The position of the point P1 'is set in advance by the operator.
【0017】また、上述した軌道に沿って塗装ガン1b
を移動させる場合、CPU4は、図7に示す速度パター
ンとなるようにモータ駆動信号Smを出力する。この図
に示す移動速度Vは、x方向の速度成分V0とy方向の
速度成分V1とのベクトル和である。すなわち、図6に
示すP0点からA0点までの間は、速度成分V0が一定
値である一方、速度成分V1がゼロである。また、A0
点からA1点までの間は、速度成分V0が一定の減少率
で減少してA1点でゼロになるのに対して、速度成分V
1が一定の増加率で増加してA1点で一定値になり、さ
らにP1’点において速度成分V0と速度成分V1とが
共に同値となる。また、A1点からA2点までの間は、
速度成分V0がゼロであるのに対して、速度成分V1が
一定値となる。Further, the coating gun 1b is moved along the above-mentioned orbit.
Is moved, the CPU 4 outputs the motor drive signal Sm so that the speed pattern shown in FIG. 7 is obtained. The moving speed V shown in this figure is the vector sum of the speed component V0 in the x direction and the speed component V1 in the y direction. That is, between the point P0 and the point A0 shown in FIG. 6, the speed component V0 is a constant value, while the speed component V1 is zero. A0
From the point to the point A1, the speed component V0 decreases at a constant decreasing rate and becomes zero at the point A1, whereas the speed component V0 decreases.
1 increases at a constant increase rate and becomes a constant value at point A1, and further, at point P1 ', both the velocity component V0 and the velocity component V1 have the same value. Also, between points A1 and A2,
While the speed component V0 is zero, the speed component V1 has a constant value.
【0018】一方、[精]設定とは、図8に示す教示点
たるP0点、P1点およびP2点の各点を結ぶL字状の
軌道に、P1点と該P1点より外側に位置するP1’点
とを通過するループ状のループ軌道が付加された軌道を
生成する設定をいう。言い換えれば、[精]設定とは、
教示されたP1点を通過する軌道を生成する設定をい
う。On the other hand, the [fine] setting means that the point P1 and the point outside the point P1 are located on the L-shaped trajectory connecting the points P0, P1 and P2 as the teaching points shown in FIG. This is a setting for generating a trajectory to which a loop trajectory passing through the point P1 'is added. In other words, the Fine setting is
This is a setting for generating a trajectory passing through the taught point P1.
【0019】上記ループ軌道を有する軌道は、P0点→
P1点→P1’点→P1点→P2点という経路を通るも
のであり、このループ軌道の曲率は、P1点とP1’点
との間の距離d2が小さいほど大きくなる一方、距離d
2が小さいほど大きくなる。上記P1’点の位置は、予
めオペレータにより設定される。The trajectory having the loop trajectory is a point P0 →
The loop trajectory passes through the route of point P1 → point P1 ′ → point P1 → point P2. The curvature of the loop trajectory increases as the distance d2 between the points P1 and P1 ′ decreases, while the distance d
The smaller the value of 2, the larger the value. The position of the point P1 'is set in advance by the operator.
【0020】また、上述した軌道に沿って塗装ガン1b
を移動させる場合、CPU4は、図9に示す速度パター
ンとなるようにモータ駆動信号Smを出力する。すなわ
ち、図8に示すP0点からP1点までの間は、速度成分
V0が一定値である一方、速度成分V1がゼロである。
また、P1点からP1’点までの間は、速度成分V0が
一定の減少率で減少するのに対して、速度成分V1がマ
イナス方向に一定の増加率で増加した後、プラス方向に
一定の増加率で増加する。このP1’点において、速度
成分V0と速度成分V1とは共に同値となる。Further, the coating gun 1b is moved along the above-mentioned track.
Is moved, the CPU 4 outputs the motor drive signal Sm so that the speed pattern shown in FIG. 9 is obtained. That is, between the points P0 and P1 shown in FIG. 8, the speed component V0 is a constant value, while the speed component V1 is zero.
Further, during the period from the point P1 to the point P1 ′, the speed component V0 decreases at a constant decreasing rate, while the speed component V1 increases at a constant increasing rate in the negative direction, and then increases at a constant rate in the positive direction. Increase at an increasing rate. At the point P1 ', both the speed component V0 and the speed component V1 have the same value.
【0021】また、P1’点からP1点までの間は、速
度成分V0が一定の減少率で減少した後、一定の増加率
で増加してP1点でゼロとなる。これに対して、P1’
点からP1点までの間は、速度成分V1は、一定の増加
率で増加して、P1点において一定値となる。また、P
1点からP2点まで間は、速度成分V0がゼロであるの
に対して、速度成分V1が一定値となる。従って、P0
点からP1点まで、およびPP点からP2点までの各直
線部分においては、オペレータにより指定された塗装ガ
ン1bの移動速度が保証される。During the period from the point P1 'to the point P1, the speed component V0 decreases at a constant decreasing rate, then increases at a constant increasing rate and becomes zero at the point P1. In contrast, P1 '
From the point to the point P1, the speed component V1 increases at a constant rate of increase and becomes a constant value at the point P1. Also, P
From the point 1 to the point P2, the speed component V0 is zero, while the speed component V1 has a constant value. Therefore, P0
The moving speed of the coating gun 1b specified by the operator is guaranteed in each straight line portion from the point to the point P1 and from the point PP to the point P2.
【0022】そして、今の場合、オペレータは、ティー
チングペンダント3を用いてP1点について[粗]設定
をしたものとする。これにより、ティーチングペンダン
ト3からは、上記[粗]設定を示す信号がCPU4へ出
力され、CPU4は、P1点について[粗]設定がされ
たことを認識する。In this case, it is assumed that the operator has set [coarse] for the point P1 using the teaching pendant 3. As a result, a signal indicating the [coarse] setting is output from the teaching pendant 3 to the CPU 4, and the CPU 4 recognizes that the [coarse] setting has been made for the point P1.
【0023】次に、オペレータは、ティーチングペンダ
ント3を用いて塗装ガン1bの移動速度Vのデータを入
力する。ここで、上記移動速度Vは、図4に示すx方向
の速度成分V0とy方向の速度成分V1とのベクトル和
で表される。そして、上記移動速度Vのデータは、CP
U4に入力された後、CPU4によりRAM6に書き込
まれる。Next, the operator uses the teaching pendant 3 to input data of the moving speed V of the coating gun 1b. Here, the moving speed V is represented by the vector sum of the speed component V0 in the x direction and the speed component V1 in the y direction shown in FIG. The data of the moving speed V is CP
After being input to U4, it is written to RAM6 by CPU4.
【0024】そして、今、オペレータによりティーチン
グペンダント3が操作されると、この旨を示す信号がC
PU4へ出力される。これにより、CPU4は、図3に
示すステップS1へ進み、内部変数iにゼロを代入した
後、ステップS2へ進む。Now, when the teaching pendant 3 is operated by the operator, a signal indicating this is output to C.
Output to PU4. Accordingly, the CPU 4 proceeds to step S1 shown in FIG. 3, substitutes zero for the internal variable i, and then proceeds to step S2.
【0025】ステップS2では、CPU4は、内部変数
iが教示点数Nよりも小さい間、ステップS3以下の処
理を行う。ここで、上記教示点数Nは、教示点の総数で
ある。従って、今の場合、図4に示すP0点、P1点お
よびP2点が教示されているため、教示点数Nは、
「3」である。In step S2, while the internal variable i is smaller than the number N of teaching points, the CPU 4 performs the processing in step S3 and subsequent steps. Here, the number of teaching points N is the total number of teaching points. Therefore, in this case, since the points P0, P1 and P2 shown in FIG. 4 are taught, the number N of teaching points is
"3".
【0026】ステップS3では、CPU4は、塗装ガン
1bが教示点たるPi点に到達するまで、ステップS4
およびS5の処理を行う。ここで、上記Pi点の添字i
は、上述した内部変数iに対応している。In step S3, the CPU 4 proceeds to step S4 until the coating gun 1b reaches the Pi point which is a teaching point.
And the processing of S5. Here, the subscript i of the Pi point
Corresponds to the internal variable i described above.
【0027】ステップS4では、CPU4は、オペレー
タによりティーチングペンダント3(図2参照)の「正
進キー」が押されているか否かを判断する。ここで、上
記「正進キー」とは、マニピュレータ1aの移動を指示
するためのキーである。そして、今、オペレータにより
上記「正進キー」が押されると、ティーチングペンダン
ト3からは、「正進キー」が押されたことを示す信号が
CPU4へ出力される。In step S4, the CPU 4 determines whether or not the "forward key" of the teaching pendant 3 (see FIG. 2) has been pressed by the operator. Here, the "forward key" is a key for instructing movement of the manipulator 1a. Then, when the “forward key” is pressed by the operator, a signal indicating that the “forward key” is pressed is output from the teaching pendant 3 to the CPU 4.
【0028】これにより、CPU4は、「正進キー」が
押されたことを認識した後、ステップS5へ進む。ステ
ップS5では、CPU4は、RAM6から塗装ガン1b
の移動先たるP0点の位置データ(x0、y0)を読み
出した後、塗装ガン1bを図4に示すP0点へ移動させ
るように、モータドライバ7へモータ駆動信号Smを出
力する。この結果、モータドライバ7によりモータ8が
駆動され、マニピュレータ1aが駆動される。そして、
塗装ガン1bは、P0点に向かって移動する。この移動
中において、CPU4は、モータ8から出力されている
位置信号Spを取り込み、該位置信号Spより得られる
塗装ガン1bの位置データを監視する。After recognizing that the "forward key" has been pressed, the CPU 4 proceeds to step S5. In step S5, the CPU 4 reads the paint gun 1b from the RAM 6.
After reading the position data (x0, y0) of the point P0, which is the destination of the movement, a motor drive signal Sm is output to the motor driver 7 so as to move the coating gun 1b to the point P0 shown in FIG. As a result, the motor 8 is driven by the motor driver 7, and the manipulator 1a is driven. And
The painting gun 1b moves toward the point P0. During this movement, the CPU 4 captures the position signal Sp output from the motor 8, and monitors the position data of the coating gun 1b obtained from the position signal Sp.
【0029】そして、今、塗装ガン1bがP0点に位置
すると、すなわち、位置信号Spより得られる位置デー
タがRAM6に記憶されているP0点の位置データ(x
0、y0)と一致すると、CPU4は、モータ駆動信号
Smの出力を停止した後、ステップS6へ進む。この結
果、マニピュレータ1aが停止することにより、塗装ガ
ン1bがP0点に位置した状態で停止する。Now, when the coating gun 1b is positioned at the point P0, that is, the position data obtained from the position signal Sp is stored in the RAM 6 at the position data (x
(0, y0), the CPU 4 stops outputting the motor drive signal Sm, and then proceeds to step S6. As a result, when the manipulator 1a stops, the coating gun 1b stops in a state where it is located at the point P0.
【0030】ステップS6では、CPU4は、Pi点に
ついて上述した[粗]設定または[精]設定がされてい
るか否かを判断し、同設定がされている場合、ステップ
S7へ進む一方、同設定がされていない場合ステップS
19へ進む。今の場合、P0点について[粗]または
[精]のいずれも設定されていないため、CPU4は、
ステップS19へ進む。In step S6, the CPU 4 determines whether or not the above-mentioned [coarse] or [fine] setting has been set for the Pi point. If the same has been set, the process proceeds to step S7, while the same setting is made. If not, step S
Proceed to 19. In this case, since neither “coarse” nor “fine” is set for the point P0, the CPU 4
Proceed to step S19.
【0031】ステップS19では、内部変数iを1イン
クリメントした後、ステップS2へ進む。今の場合、内
部変数iは、「1」である。ステップS2では、CPU
4は、内部変数i(=1)が教示点数N(=3)よりも
小さいため、ステップS3へ進む。ステップS3では、
CPU4は、塗装ガン1bが図4に示すP1点に到達す
るまで、ステップS4およびS5の処理を行う。In step S19, after the internal variable i is incremented by one, the process proceeds to step S2. In this case, the internal variable i is “1”. In step S2, the CPU
In No. 4, the process proceeds to step S3 because the internal variable i (= 1) is smaller than the number of teaching points N (= 3). In step S3,
The CPU 4 performs the processing of steps S4 and S5 until the coating gun 1b reaches the point P1 shown in FIG.
【0032】ステップS4では、CPU4は、上述した
動作と同様にして、オペレータによりティーチングペン
ダント3(図2参照)の「正進キー」が押されているか
否かを判断する。そして、今、オペレータにより上記
「正進キー」が押されると、CPU4は、「正進キー」
が押されたことを認識した後、ステップS5へ進む。ス
テップS5では、CPU4は、RAM6から上記P1点
の位置データ(x1、y1)を読み出した後、塗装ガン
1bを図4に示すP1点へ移動させるように、モータド
ライバ7へモータ駆動信号Smを出力する。この結果、
モータドライバ7によりモータ8が駆動され、マニピュ
レータ1aが駆動される。そして、塗装ガン1bは、P
1点に向かって移動する。In step S4, the CPU 4 determines whether or not the "forward key" of the teaching pendant 3 (see FIG. 2) is pressed by the operator in the same manner as the above-described operation. Then, when the “forward key” is pressed by the operator, the CPU 4 sets the “forward key”
After recognizing that has been pressed, the process proceeds to step S5. In step S5, the CPU 4 reads the position data (x1, y1) of the point P1 from the RAM 6, and then sends the motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b to the point P1 shown in FIG. Output. As a result,
The motor 8 is driven by the motor driver 7, and the manipulator 1a is driven. And the painting gun 1b is P
Move toward one point.
【0033】そして、今、塗装ガン1bがP1点に位置
すると、すなわち、位置信号Spより得られる位置デー
タが、RAM6に記憶されているP1点の位置データ
(x1、y1)と一致すると、CPU4は、モータ駆動
信号Smの出力を停止した後、ステップS6へ進む。こ
の結果、マニピュレータ1aが停止することにより、塗
装ガン1bがP1点に位置した状態で停止する。When the paint gun 1b is now positioned at the point P1, that is, when the position data obtained from the position signal Sp matches the position data (x1, y1) of the point P1 stored in the RAM 6, the CPU 4 Stops the output of the motor drive signal Sm, and then proceeds to step S6. As a result, when the manipulator 1a stops, the coating gun 1b stops with the painting gun 1b positioned at the point P1.
【0034】ステップS6では、CPU4は、P1点に
ついて[粗]設定がされているため、ステップS7へ進
む。ステップS7では、CPU4は、Pi-1点、Pi
点、Pi+1点の各位置データより、[粗]設定されたP
i点を通過する線分L(図4参照)のデータを求める。
今の場合、内部変数iが「1」であるため、図4に示す
線分Lは、P1点を通過し、かつP0点とP1点との間
を結ぶ線分とP1点とP2点とを結ぶ線分とのなす角度
を2等分するものである。そして、CPU4は、図4に
示す線分Lのデータを求めた後、ステップS8へ進む。In step S6, the CPU 4 proceeds to step S7 because [coarse] is set for the point P1. In step S7, the CPU 4 determines the Pi-1 point, Pi
From the position data of the point and the Pi + 1 point,
Data of a line segment L passing through the point i (see FIG. 4) is obtained.
In this case, since the internal variable i is “1”, the line segment L shown in FIG. 4 passes through the point P1 and connects the points P0 and P1, and the points P1 and P2. Is divided into two equal angles with the line segment connecting. Then, after obtaining the data of the line segment L shown in FIG. 4, the CPU 4 proceeds to step S8.
【0035】ステップS8では、CPU4は、Pi-1
点、Pi点およびPi+1点の各位置データ、塗装ガン1
bの移動速度Vのx方向の速度成分V0ならびに上記移
動速度Vのy方向の移動速度V1に基づいて、線分L上
のPmin点の位置データ(xmin、ymin)およびPmax点
の位置データ(xmax、ymax)を求めた後、ステップS
9へ進む。ここで、上記Pmin点とは、[粗]設定にお
いて塗装ガン1bが振動等することなく移動可能な臨界
点である。一方、Pmax点とは、[精]設定において塗
装ガン1bが振動等することなく移動可能な臨界点であ
る。In step S8, the CPU 4 determines that Pi-1
Point, Pi point and Pi + 1 point position data, painting gun 1
The position data (xmin, ymin) of the Pmin point and the position data of the Pmax point (xmin, ymin) on the line segment L based on the speed component V0 of the moving speed V in the x direction and the moving speed V1 of the moving speed V in the y direction. xmax, ymax) and then step S
Go to 9. Here, the Pmin point is a critical point at which the coating gun 1b can move without vibration or the like in the [coarse] setting. On the other hand, the Pmax point is a critical point at which the coating gun 1b can move without vibration or the like in the [fine] setting.
【0036】ステップS9では、CPU4は、オペレー
タによりティーチングペンダント3の「決定キー」また
は「キャンセルキー」が押されたか否かを判断し、押さ
れていない場合、さらに次のような判断をする。すなわ
ち、CPU4は、上述した[粗]設定されている場合、
ステップS10へ進む一方、[精]設定されている場
合、ステップS11へ進む。今の場合、「決定キー」ま
たは「キャンセルキー」が押されておらず、かつ[粗]
設定されているため、CPU4は、ステップS13へ進
む。In step S9, the CPU 4 determines whether or not the "enter key" or "cancel key" of the teaching pendant 3 has been pressed by the operator. If not, the CPU 4 makes the following determination. That is, when the above-mentioned [coarse] is set, the CPU 4
While the process proceeds to step S10, if [fine] is set, the process proceeds to step S11. In this case, the "Enter key" or "Cancel key" is not pressed, and [Coarse]
Since the setting has been made, the CPU 4 proceeds to step S13.
【0037】ステップS13では、CPU4は、[粗]
設定されているため、ステップS14および15の処理
を行う。ステップS14では、CPU4は、塗装ガン1
bが図4に示すPmin点に位置していない場合、ステッ
プS15へ進む。今の場合、塗装ガン1bがP1点に位
置しているため、CPU4は、ステップS15へ進む。In step S13, the CPU 4 sets [rough]
Since the setting has been made, the processing of steps S14 and S15 is performed. In step S14, the CPU 4 sets the paint gun 1
If b is not located at the point Pmin shown in FIG. 4, the process proceeds to step S15. In this case, since the coating gun 1b is located at the point P1, the CPU 4 proceeds to step S15.
【0038】ステップS15では、CPU4は、RAM
6よりPmin点の位置データ(xmin、ymin)を読みだ
した後、塗装ガン1bを図4に示すP1点からPmin点
へ線分L上を移動させるべく、位置データ(xmin、ym
in)よりモータ駆動信号Smを生成してこれをモータド
ライバ7へ出力した後、ステップS9へ戻る。これによ
り、モータ8およびマニピュレータ1aが駆動され、塗
装ガン1bが線分L上をPmin点へ向けて移動する。In step S15, the CPU 4 sets the RAM
After reading the position data (xmin, ymin) of the Pmin point from No. 6, the position data (xmin, ym) is moved to move the coating gun 1b on the line L from the point P1 shown in FIG.
in), and outputs the motor drive signal Sm to the motor driver 7, and then returns to step S9. As a result, the motor 8 and the manipulator 1a are driven, and the coating gun 1b moves on the line segment L toward the point Pmin.
【0039】そして、今、塗装ガン1bが図4に示す線
分L上のP1’点に位置したとき、オペレータによりテ
ィーチングペンダント3の「決定キー」が押されたとす
ると、ティーチングペンダント3からは、上記「決定キ
ー」に対応する信号がCPU4へ出力される。これによ
り、CPU4は、ステップS9の判断結果を「YES」
としてステップS16へ進む。ステップS16では、C
PU4は、「決定キー」が押されているため、ステップ
S17へ進む。When the "decision key" of the teaching pendant 3 is pressed by the operator when the coating gun 1b is located at the point P1 'on the line L shown in FIG. A signal corresponding to the “enter key” is output to the CPU 4. Thereby, the CPU 4 changes the determination result of step S9 to “YES”.
And proceeds to step S16. In step S16, C
The PU 4 proceeds to step S17 because the “Enter key” has been pressed.
【0040】ステップS17では、CPU4は、モータ
駆動信号Smの出力を停止して、モータ8の駆動を停止
する。これにより、塗装ガン1bは、図4に示すP1’
点に位置した状態で停止される。次に、CPU4は、モ
ータ8より出力されている位置信号Spを取り込んだ
後、該位置信号Spより得られる塗装ガン1bの現在位
置に関するデータ、すなわち、図4に示すP1’点の位
置データ(xd1、yd1)を変数P1’に代入した
後、ステップS18へ進む。In step S17, the CPU 4 stops outputting the motor drive signal Sm and stops driving the motor 8. Thereby, the coating gun 1b is moved to P1 'shown in FIG.
Stops at the point. Next, after taking in the position signal Sp outputted from the motor 8, the CPU 4 obtains the data on the current position of the coating gun 1b obtained from the position signal Sp, that is, the position data of the point P1 'shown in FIG. After substituting (xd1, yd1) for the variable P1 ', the process proceeds to step S18.
【0041】ステップS18では、CPU4は、精粗設
定フラグFPiに、現在設定されている「0」([精]
設定)または「1」([粗]設定)を格納する。ここ
で、上記精粗設定フラグFPiの添字iは、[精]設定
または[粗]設定されている当該教示点Piの添字に対
応している。従って、今の場合、P1点に[粗]が設定
されているため、CPU4は、精粗設定フラグFP1に
「1」格納した後、ステップS19へ進む。In step S18, the CPU 4 sets the currently set "0" ([fine]
Setting) or “1” ([coarse] setting). Here, the subscript i of the fine / coarse setting flag FPi corresponds to the subscript of the teaching point Pi set to [fine] or [coarse]. Therefore, in this case, since the point P1 is set to “coarse”, the CPU 4 stores “1” in the fine / coarse setting flag FP1, and then proceeds to step S19.
【0042】ステップS19では、CPU4は、内部変
数iを1インクリメント(i=2)した後、ステップS
2へ戻る。ステップS2では、CPU4は、内部変数i
(=2)が教示点数N(=3)よりも小さいため、ステ
ップS3へ進み、上述した処理と同様にしてP2点(図
4参照)に関する処理を行う。In step S19, the CPU 4 increments the internal variable i by one (i = 2), and then proceeds to step S19.
Return to 2. In step S2, the CPU 4 determines that the internal variable i
Since (= 2) is smaller than the number of teaching points N (= 3), the process proceeds to step S3, and the process regarding the point P2 (see FIG. 4) is performed in the same manner as the above-described process.
【0043】すなわち、ステップS4において、オペレ
ータによりティーチングペンダント3(図2参照)の
「正進キー」が押されると、CPU4は、ステップS5
へ進む。ステップS5では、CPU4は、RAM6から
塗装ガン1bの移動先たる図4に示すP2点の位置デー
タ(x2、y2)を読み出した後、モータドライバ7へ
モータ駆動信号Smを出力する。That is, in step S4, when the "forward key" of the teaching pendant 3 (see FIG. 2) is pressed by the operator, the CPU 4 proceeds to step S5.
Proceed to. In step S5, the CPU 4 reads the position data (x2, y2) of the point P2 shown in FIG. 4 to which the coating gun 1b moves, from the RAM 6, and then outputs a motor drive signal Sm to the motor driver 7.
【0044】これにより、モータ8が駆動され、塗装ガ
ン1bは、P2点に向かって移動する。そして、今、位
置信号Spより得られる位置データがRAM6に記憶さ
れているP2点の位置データ(x2、y2)と一致する
と、CPU4は、モータ駆動信号Smの出力を停止した
後、ステップS6へ進む。Thus, the motor 8 is driven, and the coating gun 1b moves toward the point P2. If the position data obtained from the position signal Sp now matches the position data (x2, y2) of the point P2 stored in the RAM 6, the CPU 4 stops outputting the motor drive signal Sm, and then proceeds to step S6. move on.
【0045】ステップS6では、CPU4は、上記P2
点について上述した[粗]設定または[精]設定がされ
ていないため、ステップS19へ進み、内部変数iを1
インクリメント(i=3)した後、ステップS2へ戻
る。ステップS2では、内部変数i(=3)が教示点数
N(=3)と等しいため、CPU4は、ステップS20
へ進む。In step S6, the CPU 4 executes the P2
Since the above-described [coarse] or [fine] setting has not been performed for the point, the process proceeds to step S19, and the internal variable i is set to 1
After the increment (i = 3), the process returns to step S2. In step S2, since the internal variable i (= 3) is equal to the number of teaching points N (= 3), the CPU 4 proceeds to step S20.
Proceed to.
【0046】ステップS20では、CPU4は、オペレ
ータによりティーチングペンダント3の「保存キー」が
押されたか否か、すなわち、上記「保存キー」に対応す
る信号がティーチングペンダント3より入力されるま
で、待機する。そして、今、オペレータにより上記「保
存キー」が押されると、CPU4は、ステップS21へ
進む。ステップS21では、CPU4は、上述した変数
Pi’および精粗設定フラグFPiをRAM6に書き込
む。In step S20, the CPU 4 waits whether or not the "save key" of the teaching pendant 3 has been pressed by the operator, that is, until a signal corresponding to the "save key" is input from the teaching pendant 3. . Then, when the "save key" is pressed by the operator, the CPU 4 proceeds to step S21. In step S21, the CPU 4 writes the variable Pi 'and the fine / fine setting flag FPi described above into the RAM 6.
【0047】<[粗]設定時の再生動作>次に、[粗]
設定時の再生動作を図5を参照して説明する。図5は、
[粗]設定時または[精]設定時におけるCPU4の処
理手順を示すPAD図である。今、オペレータによりテ
ィーチングペンダント3の「再生キー」が押されると、
ティーチングペンダント3からは、上記「再生キー」に
対応する信号がCPU4へ出力される。<Reproduction Operation at [Coarse] Setting> Next, [Coarse]
The reproducing operation at the time of setting will be described with reference to FIG. FIG.
FIG. 8 is a PAD diagram showing a processing procedure of the CPU 4 when setting [rough] or [fine]. Now, when the "play key" of the teaching pendant 3 is pressed by the operator,
From the teaching pendant 3, a signal corresponding to the “reproduction key” is output to the CPU 4.
【0048】これにより、CPU4は、図5に示すステ
ップS31へ進み、RAM6に記憶されている、前述し
た教示点たるP0点〜Pi点の各位置データ、精粗設定
点たるPi’点の位置データおよび精粗設定フラグFP
iを、RAM6から読み出す。今の場合、CPU4は、
図6に示すP0点、P1点およびP2点の位置データ
(x0、y0)、(x1、y1)および(x2、y
2)、ならびにP1’点の位置データ(xd1、yd
1)、ならびに精粗設定フラグFP1(=1)をRAM
6から読み出した後、ステップS32へ進む。Thus, the CPU 4 proceeds to step S31 shown in FIG. 5, and stores the position data of the above-described teaching points P0 to Pi, the position of the Pi ′ point which is the fine and coarse setting point, stored in the RAM 6. Data and fine setting flag FP
i is read from the RAM 6. In this case, the CPU 4
The position data (x0, y0), (x1, y1) and (x2, y) of the points P0, P1, and P2 shown in FIG.
2), and position data (xd1, yd) of point P1 ′
1) and the coarse / fine setting flag FP1 (= 1) in RAM
After reading from step 6, the process proceeds to step S32.
【0049】ステップS32では、CPU4は、内部変
数iにゼロを代入した後、ステップS33へ進む。ステ
ップS33では、CPU4は、内部変数iが教示点数N
よりも小さい間、ステップS34以降の処理を行う。ス
テップS34では、CPU4は、精粗設定フラグFPi+
1に、前述した[精]設定(=0)が設定されている
か、または[粗]設定(=1)が設定されているかまた
はいずれも設定されていないかを判断する。In step S32, the CPU 4 substitutes zero for the internal variable i, and then proceeds to step S33. In step S33, the CPU 4 determines that the internal variable i is the number of teaching points N
While it is smaller than the above, the processing after step S34 is performed. In step S34, the CPU 4 sets the fine / coarse setting flag FPi +
In step 1, it is determined whether the [fine] setting (= 0) is set, the [coarse] setting (= 1) is set, or none is set.
【0050】すなわち、CPU4は、[精]設定(=
0)または[粗]設定(=1)のいずれも設定されてい
ない場合、ステップS35へ進み、軌道パターンフラグ
GFに「0」をセットした後、ステップS55へ進む。
ステップS55では、CPU4は、図10に示す速度パ
ターンに沿って塗装ガン1bを移動させるように、モー
タドライバ7へモータ駆動信号Smを出力した後、ステ
ップS56へ進み、内部変数iを1インクリメントした
後、ステップS33へ戻る。図11に示す速度パターン
は、移動速度Vのx方向成分である速度成分V0とy方
向成分の速度成分V1とのベクトル和である。That is, the CPU 4 sets [fine] (=
If neither “0” nor “coarse” setting (= 1) is set, the process proceeds to step S35, where “0” is set in the trajectory pattern flag GF, and then the process proceeds to step S55.
In step S55, the CPU 4 outputs the motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b along the speed pattern shown in FIG. 10, and then proceeds to step S56, where the internal variable i is incremented by one. Thereafter, the process returns to step S33. The speed pattern shown in FIG. 11 is a vector sum of a speed component V0 which is an x-direction component of the moving speed V and a speed component V1 which is a y-direction component.
【0051】図10に示す速度パターンによれば、移動
速度Vの速度成分V0は、P0点から一定値をとり、塗
装ガン1bがP1点の手前の点に位置すると、一定の減
少率で減少する。そして、速度成分V0は、P1点から
P2点までの間、ゼロをとる。一方、移動速度Vの速度
成分V1は、P0点からP1点までの間、ゼロをとり、
塗装ガン1bがP1点に位置すると一定の増加率で増加
し、P2点の手前の点に位置すると、一定値をとる。こ
れにより、塗装ガン1bは、図4に示すP0点→P1点
→P2点という略L字状の軌道に沿って移動する。According to the speed pattern shown in FIG. 10, the speed component V0 of the moving speed V takes a constant value from the point P0, and decreases at a constant rate when the coating gun 1b is positioned before the point P1. I do. Then, the speed component V0 takes zero from the point P1 to the point P2. On the other hand, the speed component V1 of the moving speed V takes zero from the point P0 to the point P1,
When the paint gun 1b is located at the point P1, the value increases at a constant rate, and when the paint gun 1b is located at a point before the point P2, it takes a constant value. As a result, the coating gun 1b moves along a substantially L-shaped trajectory of point P0 → point P1 → point P2 shown in FIG.
【0052】一方、CPU4は、精粗設定フラグFPi+
1に、前述した[精](=0)がまたは[粗]設定(=
1)のいずれかが設定されている場合、ステップS36
へ進む。今の場合、精粗設定フラグFP1(=FP0+
1)に[粗]設定(=1)が設定されているため、CP
U4は、ステップS36へ進む。On the other hand, the CPU 4 sets the fine / coarse setting flag FPi +
1, the [fine] (= 0) or the [coarse] setting (=
If any one of 1) is set, step S36
Proceed to. In this case, the fine / fine setting flag FP1 (= FP0 +
Since [Coarse] setting (= 1) is set in 1), CP
U4 proceeds to step S36.
【0053】ステップS36では、CPU4は、教示点
たるPi点、Pi+1点、および精粗設定点たるPi+1’点
の各位置データに基づいて、軌道変化開始点Aiを求め
る。ここで、上記軌道変化開始点Aiとは、Pi点とPi
+1点とを結ぶ直線上の点であって、塗装ガン1b(図1
参照)の軌道が変化する点である。この軌道変化開始点
Aiの添字iは、内部変数iに対応している。In step S36, the CPU 4 determines the trajectory change start point Ai based on the position data of the Pi point, Pi + 1 point as the teaching point, and Pi + 1 'point as the fine / coarse setting point. Here, the orbit change start point Ai is Pi point and Pi point
The point on the straight line connecting the +1 point and the painting gun 1b (FIG. 1)
Is the point at which the trajectory changes. The subscript i of the orbit change start point Ai corresponds to the internal variable i.
【0054】具体的には、図6に示す例では、内部変数
iがゼロであるため、上記Pi点はP0点、Pi+1点は
P1点、およびPi+1’点はP1’点である。また、こ
れらP0点、P1点およびP1’点の各位置データは、
(x0、y0)、(x1、y1)および(xd1、yd
1)である。さらに、軌道変化開始点AiはA0点であ
り、該A0点は、P0点とP1点とを結ぶ直線上に位置
する点である。次に、CPU4は、図6に示す線分P0
点ーP1点と線分P1点ーP2点とのなす角度をθとす
ると、距離d1と、線分P1点ー0点(図示略)との比
率を次のように求める。ここで、上記O点は、A0点か
らP1’点までの円弧の中心点である。 ((1/sinθ)−1):1 ここで、上記((1/sinθ)−1)をHと表す。次
に、CPU4は、O点の座標(xO、yO)を次のよう
に求める。 O(x、y)=O((x1−xd1)/H、(y1−y
d1)/H) 次いで、CPU4は、上記求めたO(x,y)点を通
り、かつ線分P0点−P1点と直交する直線と上記線分
P0点−P1点との交点をA0点(Ax0、AyO)と
して求める。そして、CPU4は、上記A0点の位置デ
ータ(Ax0、Ay0)を求めた後、ステップS37へ
進む。Specifically, in the example shown in FIG. 6, since the internal variable i is zero, the Pi point is the P0 point, the Pi + 1 point is the P1 point, and the Pi + 1 'point is the P1' point. is there. The position data of the points P0, P1 and P1 ′ are
(X0, y0), (x1, y1) and (xd1, yd)
1). Further, the trajectory change start point Ai is the point A0, and the point A0 is a point located on a straight line connecting the points P0 and P1. Next, the CPU 4 determines the line segment P0 shown in FIG.
Assuming that the angle between the point -P1 and the line segment P1 -P2 point is θ, the ratio between the distance d1 and the line segment P1 point-0 point (not shown) is obtained as follows. Here, the point O is a center point of the arc from the point A0 to the point P1 ′. ((1 / sin θ) -1): 1 Here, ((1 / sin θ) -1) is represented by H. Next, the CPU 4 calculates the coordinates (xO, yO) of the point O as follows. O (x, y) = O ((x1-xd1) / H, (y1-y
d1) / H) Next, the CPU 4 sets the intersection of the straight line passing through the obtained O (x, y) point and orthogonal to the line segment P0-P1 with the line P0-P1 as the point A0. (Ax0, AyO). After obtaining the position data (Ax0, Ay0) of the point A0, the CPU 4 proceeds to step S37.
【0055】ステップS37では、CPU4は、上述し
た軌道変化開始点Aiと同様にして、教示点たるPi+1
点、Pi+2および精粗設定点たるPi+1’点の各位置デー
タに基づいて、軌道変化開始点Ai+1を求める。ここ
で、上記軌道変化開始点Ai+1は、Pi+1点とPi+2点と
を結ぶ直線上の点であって、塗装ガン1b(図1参照)
の軌道が変化する点である。In step S37, the CPU 4 sets the teaching point Pi + 1 in the same manner as the trajectory change start point Ai described above.
The trajectory change start point Ai + 1 is obtained based on the position data of the point, Pi + 2, and the point Pi + 1 'which is the fine / coarse setting point. Here, the trajectory change start point Ai + 1 is a point on a straight line connecting the Pi + 1 point and the Pi + 2 point, and is a coating gun 1b (see FIG. 1).
Is the point at which the trajectory changes.
【0056】具体的には、図6に示す例では、内部変数
iがゼロであるため、上記Pi+1点はP1点、Pi+2点は
P2点、およびPi+1’点はP1’点である。また、こ
れらP1点、P2点およびP1’点の各位置データは、
(x1、y1)、(x2、y2)および(xd1、yd
1)である。さらに、軌道変化開始点AiはA1点であ
り、該A1点は、P1点とP2点とを結ぶ直線上に位置
する点である。そして、CPU4は、上記A1点の位置
データ(Ax1、Ay1)を求めた後、ステップS38
へ進む。Specifically, in the example shown in FIG. 6, since the internal variable i is zero, the Pi + 1 point is the P1 point, the Pi + 2 point is the P2 point, and the Pi + 1 'point is the P1'. Is a point. In addition, each of the position data of the points P1, P2, and P1 ′ is
(X1, y1), (x2, y2) and (xd1, yd)
1). Further, the trajectory change start point Ai is the point A1, which is a point located on a straight line connecting the points P1 and P2. Then, the CPU 4 obtains the position data (Ax1, Ay1) of the point A1, and thereafter, proceeds to step S38.
Proceed to.
【0057】ステップS38では、CPU4は、Pi点
からPi+1点までの間において塗装ガン1bの、移動速
度Vのx方向の一定値たる速度成分Viを減少させてか
らゼロにするまでの距離Biを求める。図6に示す例で
は、上記距離BiはB0であり、この距離B0は、A0
点近傍の点からP1点までの距離であり、移動速度Vの
x方向の速度成分V0は、上記A0点近傍の点から減少
して、P1点でゼロとなる。具体的には、CPU4は、
予め設定されている塗装ガン1bの最大加速度a、P0
点からP1点までの速度V0を次の式に代入することに
より、距離B0を求める。 B0=(1/2)・a・(V0/a)2 従って、今の場合、CPU4は、距離Biとして距離B
0(図6参照)を求めた後、ステップS39へ進む。In step S38, the CPU 4 determines the distance from the point at which the speed component Vi, which is a constant value of the moving speed V in the x direction, of the coating gun 1b between the point Pi and the point Pi + 1 is reduced to zero. Find Bi. In the example shown in FIG. 6, the distance Bi is B0, and this distance B0 is A0
This is the distance from the point near the point to the point P1, and the speed component V0 of the moving speed V in the x direction decreases from the point near the point A0 and becomes zero at the point P1. Specifically, the CPU 4
The preset maximum acceleration a, P0 of the coating gun 1b
The distance B0 is obtained by substituting the velocity V0 from the point to the point P1 into the following equation. B0 = (1 /) · a · (V0 / a) 2 Therefore, in this case, the CPU 4 determines that the distance B
After obtaining 0 (see FIG. 6), the process proceeds to step S39.
【0058】ステップS39では、CPU4は、Pi+1
点からPi+2点までの間において塗装ガン1bの、移動
速度Vのy方向の速度成分Vi+1をゼロから一定値にす
るまでのの距離Bi+1を求める。図6に示す例では、上
記距離Bi+1は、B1であり、この距離B1は、P1点
からA1点近傍の点までの距離であり、移動速度Vのy
方向の速度成分V1は、上記P1点から増加して、A1
点近傍の点で一定値となる。具体的には、上記距離B1
は、次の式で表される。 B1=(1/2)・a・(V1/a)2 従って、今の場合、CPU4は、距離Bi+1として距離
B1(図6参照)を求めた後、ステップS40へ進む。In step S39, the CPU 4 sets Pi + 1
From the point to the point Pi + 2, the distance Bi + 1 from the point at which the velocity component Vi + 1 of the moving velocity V in the y direction of the coating gun 1b is changed from zero to a constant value is determined. In the example shown in FIG. 6, the distance Bi + 1 is B1, and this distance B1 is the distance from the point P1 to a point near the point A1, and
The speed component V1 in the direction increases from the point P1 to A1
The value becomes constant at a point near the point. Specifically, the distance B1
Is represented by the following equation. B1 = (1 /) · a · (V1 / a) 2 Therefore, in this case, the CPU 4 calculates the distance B1 (see FIG. 6) as the distance Bi + 1, and then proceeds to step S40.
【0059】ステップS40では、CPU4は、精粗設
定フラグFPi+1より設定を確認する。すなわち、CP
U4は、精粗設定フラグFPi+1が「0」である場合、
[精]設定されていることを確認した後、ステップS4
8へ進む一方、精粗設定フラグFPi+1が「1」である
場合、[粗]設定されていることを確認した後、ステッ
プS41へ進む。今の場合、精粗設定フラグFP1(F
Pi+1)が「1」であり、[粗]設定されているため、
CPU4は、ステップS41へ進む。In step S40, the CPU 4 checks the setting from the fine / coarse setting flag FPi + 1. That is, CP
U4 indicates that the fineness setting flag FPi + 1 is “0”
After confirming that [fine] has been set, step S4
On the other hand, if the fine / coarse setting flag FPi + 1 is “1”, it is confirmed that [coarse] is set, and then the process proceeds to step S41. In this case, the fine / fine setting flag FP1 (F
Pi + 1) is “1” and [Coarse] is set,
The CPU 4 proceeds to step S41.
【0060】ステップS41では、CPU4は、ステッ
プS36において算出されたAi点とPi+1との間の距
離と、ステップS38において算出された距離Biとを
比較し、距離Biが小さい場合、ステップS42へ進む
一方、距離Biが大きい場合、ステップS45へ進む。
図6に示す例では、距離B0がA0点とP1点との間の
距離より小であるため、CPU4は、ステップS42へ
進む。In step S41, the CPU 4 compares the distance between the point Ai calculated in step S36 and Pi + 1 with the distance Bi calculated in step S38. On the other hand, if the distance Bi is large, the process proceeds to step S45.
In the example shown in FIG. 6, since the distance B0 is smaller than the distance between the points A0 and P1, the CPU 4 proceeds to step S42.
【0061】ステップS42では、CPU4は、ステッ
プS37において算出されたAi+1点とPi+2点との間の
距離と、ステップS39において算出された距離Bi+1
とを比較して、距離Bi+1が小さい場合、ステップS4
3へ進む一方、距離Bi+1が大きい場合、ステップS4
4へ進む。図6に示す例では、距離B1がA1点とP2
点との間の距離より小であるため、CPU4は、ステッ
プS43へ進む。In step S42, the CPU 4 determines the distance between the point Ai + 1 and the point Pi + 2 calculated in step S37 and the distance Bi + 1 calculated in step S39.
If the distance Bi + 1 is small, the process proceeds to step S4
If the distance Bi + 1 is large while proceeding to step S3, step S4
Proceed to 4. In the example shown in FIG. 6, the distance B1 is between the point A1 and the point P2.
Since the distance is smaller than the distance to the point, the CPU 4 proceeds to step S43.
【0062】ステップS43では、CPU4は、軌道パ
ターンフラグGFに1をセットした後、ステップS55
へ進む。ステップS55では、CPU4は、図11に示
す速度パターンに沿って塗装ガン1bを移動させるよう
に、モータドライバ7へモータ駆動信号Smを出力す
る。同図に示す速度パターンは、移動速度Vのx方向成
分である速度成分V0とy方向成分の速度成分V1との
ベクトル和である。In step S43, the CPU 4 sets 1 to the trajectory pattern flag GF, and then proceeds to step S55.
Proceed to. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b along the speed pattern shown in FIG. The speed pattern shown in the figure is a vector sum of a speed component V0 which is an x-direction component of the moving speed V and a speed component V1 which is a y-direction component.
【0063】図11に示す速度パターンによれば、移動
速度Vの速度成分V0は、P0点から一定値をとり、塗
装ガン1bがA0点をやや通過すると、一定の減少率で
減少する。そして、速度成分V0は、A1点の手前の点
でゼロとなり、以後上記手前の点からP2点までゼロで
ある。一方、移動速度Vの速度成分V1は、P0点から
ゼロであり、塗装ガン1bがA0点をやや通過すると、
一定の増加率で増加し、P1’点において速度成分V0
と同値をとる。そして、速度成分V1は、A1点の手前
の点で一定値をとり、以後上記手前の点からP2点まで
一定値をとる。According to the speed pattern shown in FIG. 11, the speed component V0 of the moving speed V takes a constant value from the point P0, and decreases at a constant decreasing rate when the coating gun 1b slightly passes through the point A0. The velocity component V0 becomes zero at a point before the point A1, and thereafter becomes zero from the point before the point to the point P2. On the other hand, the speed component V1 of the moving speed V is zero from the point P0, and when the coating gun 1b slightly passes through the point A0,
The speed component V0 increases at a constant increase rate at the point P1 '.
Takes the same value as The velocity component V1 takes a constant value at a point before the point A1, and thereafter takes a constant value from the point before the point to the point P2.
【0064】これにより、塗装ガン1bは、図6に示す
P0点→A0点をやや通過した点→P1’点→A1点の
手前の点→P2点という軌道に沿って移動する。この軌
道の曲率は、同図に実線で軌道、すなわち、図7に示す
速度パターンにより生成される軌道の曲率より大であ
る。As a result, the coating gun 1b moves along the trajectory shown in FIG. 6, that is, the point P0 → the point slightly passing through the point A0 → the point P1 ′ → the point before the point A1 → the point P2. The curvature of this trajectory is larger than that of the trajectory indicated by the solid line in FIG. 7, that is, the trajectory generated by the velocity pattern shown in FIG.
【0065】一方、ステップS42において、距離Bi+
1がAi+1点とPi+2点との間の距離より大である場合、
具体的には、図6に示す距離B1がA1点とP2点との
間の距離より大である場合、CPU4は、ステップS4
4へ進む。On the other hand, in step S42, the distance Bi +
If 1 is greater than the distance between points Ai + 1 and Pi + 2,
Specifically, if the distance B1 shown in FIG. 6 is larger than the distance between the point A1 and the point P2, the CPU 4 proceeds to step S4
Proceed to 4.
【0066】ステップS44では、CPU4は、軌道パ
ターンフラグGFに2をセットした後、ステップS55
へ進む。ステップS55では、CPU4は、図12に示
す速度パターンに沿って塗装ガン1bを移動させるよう
に、モータドライバ7へモータ駆動信号Smを出力す
る。In step S44, the CPU 4 sets 2 to the trajectory pattern flag GF, and then proceeds to step S55.
Proceed to. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b along the speed pattern shown in FIG.
【0067】図12に示す速度パターンによれば、移動
速度Vの速度成分V0は、P0点から一定値をとり、塗
装ガン1bがA0点をやや通過すると、一定の減少率で
減少する。そして、速度成分V0は、A1点の手前の点
でゼロとなり、以後上記手前の点からP2点までゼロで
ある。一方、移動速度Vの速度成分V1は、P0点から
ゼロであり、塗装ガン1bがA0点の手前の点を通過す
ると、一定の増加率で増加し、P1’点において速度成
分V0と同値をとる。そして、速度成分V1は、A1点
をやや通過した点で一定値をとり、以後上記手前の点か
らP2点まで一定値をとる。According to the speed pattern shown in FIG. 12, the speed component V0 of the moving speed V takes a constant value from the point P0, and decreases at a constant rate when the coating gun 1b passes the point A0 slightly. The velocity component V0 becomes zero at a point before the point A1, and thereafter becomes zero from the point before the point to the point P2. On the other hand, the speed component V1 of the moving speed V is zero from the point P0, and increases when the coating gun 1b passes a point before the point A0 at a constant increasing rate. Take. Then, the speed component V1 takes a constant value at a point slightly passing through the point A1, and thereafter takes a constant value from the point before the above to the point P2.
【0068】一方、ステップS41において、距離Bi
がAi点とPi+1点との間の距離より大である場合、具
体的には、図6に示すB0がA0点とP1点との間の距
離が大である場合、CPU4は、ステップS45へ進
む。ステップS45では、CPU4は、ステップS37
において算出されたAi+1点とPi+2点との間の距離と、
ステップS39において算出された距離Bi+1とを比較
して、距離Bi+1が小さい場合、ステップS46へ進む
一方、距離Bi+1が大きい場合、ステップS46へ進
む。今の場合、図6に示す距離B1がA1点とP2点と
の間の距離より小さいとすると、CPU4は、ステップ
S46へ進む。On the other hand, in step S41, the distance Bi
Is larger than the distance between the points Ai and Pi + 1, specifically, if B0 shown in FIG. 6 is larger than the distance between the points A0 and P1, Proceed to S45. In step S45, the CPU 4 determines in step S37
The distance between the points Ai + 1 and Pi + 2 calculated in
Comparing the distance Bi + 1 calculated in step S39, the process proceeds to step S46 if the distance Bi + 1 is small, whereas the process proceeds to step S46 if the distance Bi + 1 is large. In this case, assuming that distance B1 shown in FIG. 6 is smaller than the distance between point A1 and point P2, CPU 4 proceeds to step S46.
【0069】ステップS46では、CPU4は、軌道パ
ターンフラグGFに3をセットした後、ステップS55
へ進む。ステップS55では、CPU4は、図13に示
す速度パターンに沿って塗装ガン1bを移動させるよう
に、モータドライバ7へモータ駆動信号Smを出力す
る。In step S46, the CPU 4 sets 3 in the trajectory pattern flag GF, and then proceeds to step S55.
Proceed to. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 to move the coating gun 1b along the speed pattern shown in FIG.
【0070】図13に示す速度パターンによれば、移動
速度Vの速度成分V0は、P0点から一定値をとり、塗
装ガン1bがA0点の手前の点を通過すると、一定の減
少率で減少する。そして、速度成分V0は、A1点をや
や通過した点でゼロとなり、以後上記通過した点からP
2点までゼロである。一方、移動速度Vの速度成分V1
は、P0点からゼロであり、塗装ガン1bがA0点をや
や通過すると、一定の増加率で増加し、P1’点におい
て速度成分V0と同値をとる。そして、速度成分V1
は、A1点の手前の点で一定値をとり、以後上記手前の
点からP2点まで一定値をとる。According to the speed pattern shown in FIG. 13, the speed component V0 of the moving speed V takes a constant value from the point P0 and decreases at a constant rate when the coating gun 1b passes a point before the point A0. I do. Then, the velocity component V0 becomes zero at a point slightly passing through the point A1, and thereafter becomes P0 from the passing point.
It is zero up to two points. On the other hand, the speed component V1 of the moving speed V
Is zero from the point P0, increases when the coating gun 1b passes the point A0 slightly, and increases at a constant increase rate, and takes the same value as the velocity component V0 at the point P1 '. And the speed component V1
Takes a constant value at a point before the point A1, and then takes a constant value from the point before the point to the point P2.
【0071】一方、ステップS45において、図6に示
す距離B1がA1点とP2点との間の距離より大きいと
すると、CPU4は、ステップS47へ進む。ステップ
S47では、CPU4は、軌道パターンフラグGFに4
をセットした後、ステップS55へ進む。On the other hand, if it is determined in step S45 that the distance B1 shown in FIG. 6 is larger than the distance between the points A1 and P2, the CPU 4 proceeds to step S47. In step S47, the CPU 4 sets the trajectory pattern flag GF to 4
Is set, and the process proceeds to step S55.
【0072】ステップS55では、CPU4は、図14
に示す速度パターンに沿って塗装ガン1bを移動させる
ように、モータドライバ7へモータ駆動信号Smを出力
する。In the step S55, the CPU 4 executes the processing shown in FIG.
The motor drive signal Sm is output to the motor driver 7 so as to move the coating gun 1b according to the speed pattern shown in FIG.
【0073】図14に示す速度パターンによれば、移動
速度Vの速度成分V0は、P0点から一定値をとり、塗
装ガン1bがA0点の手前の点を通過すると、一定の減
少率で減少する。そして、速度成分V0は、A1点をや
や通過した点でゼロとなり、以後上記通過した点からP
2点までゼロである。一方、移動速度Vの速度成分V1
は、P0点からゼロであり、塗装ガン1bがA0点の手
前の点を通過すると、一定の増加率で増加し、P1’点
において速度成分V0と同値をとる。そして、速度成分
V1は、A1点をやや通過した点で一定値をとり、以後
上記通過した点からP2点まで一定値をとる。According to the speed pattern shown in FIG. 14, the speed component V0 of the moving speed V takes a constant value from the point P0, and decreases at a constant rate when the paint gun 1b passes a point before the point A0. I do. Then, the velocity component V0 becomes zero at a point slightly passing through the point A1, and thereafter becomes P0 from the passing point.
It is zero up to two points. On the other hand, the speed component V1 of the moving speed V
Is zero from the point P0, increases when the paint gun 1b passes a point before the point A0, at a constant increase rate, and takes the same value as the velocity component V0 at the point P1 '. The velocity component V1 takes a constant value at a point slightly passing through the point A1, and thereafter takes a constant value from the passing point to the point P2.
【0074】<[精]設定時の教示動作>次に、[粗]
設定時の教示動作を図3を参照して説明する。まず、オ
ペレータは、前述した[粗]設定時の教示動作と同様に
して、図4に示すP0点、P1点およびP2点を教示す
る。そして、この教示動作が終了すると、CPU4の制
御により、RAM6には、P0点、P1点およびP2点
の各データ(x0、y0)、(x1、y1)および(x
2、y2)が書き込まれている。<Teaching operation at the time of setting [fine]> [Coarse]
The teaching operation at the time of setting will be described with reference to FIG. First, the operator teaches the points P0, P1, and P2 shown in FIG. When the teaching operation is completed, the data (x0, y0), (x1, y1), (x1, y1) and (x) of the points P0, P1, and P2 are stored in the RAM 6 under the control of the CPU 4.
2, y2) has been written.
【0075】次に、オペレータは、教示したP0点、P
1点およびP2点のうち、P1点について、オペレータ
は、ティーチングペンダント3を用いて[精]設定をし
たものとする。これにより、ティーチングペンダント3
からは、上記[精]設定を示す信号がCPU4へ出力さ
れ、CPU4は、P1点について[精]設定がされたこ
とを認識する。Next, the operator inputs the point P0, P
It is assumed that the operator has set [fine] using the teaching pendant 3 for the point P1 of the point 1 and the point P2. Thereby, teaching pendant 3
Thereafter, a signal indicating the [fine] setting is output to the CPU 4, and the CPU 4 recognizes that the [fine] setting has been made for the point P1.
【0076】そして、今、オペレータによりティーチン
グペンダント3が操作されると、この旨を示す信号がC
PU4へ出力される。これにより、CPU4は、図3に
示すステップS1へ進み、内部変数iにゼロを代入した
後、ステップS2へ進む。Now, when the teaching pendant 3 is operated by the operator, a signal indicating this is output to C
Output to PU4. Accordingly, the CPU 4 proceeds to step S1 shown in FIG. 3, substitutes zero for the internal variable i, and then proceeds to step S2.
【0077】以後、CPU4は、前述した動作と同様に
して、ステップS2〜6の処理を実行する。ステップS
6において、今、P0点について上述した[精]設定ま
たは[精]設定がされていないため、ステップS19へ
進み内部変数iを1インクリメント(i=1)した後、
ステップS2へ戻る。Thereafter, the CPU 4 executes the processing of steps S2 to S6 in the same manner as the operation described above. Step S
In step 6, since the [fine] setting or the [fine] setting described above has not been performed for the point P0, the process proceeds to step S19, where the internal variable i is incremented by 1 (i = 1).
It returns to step S2.
【0078】そして、CPU4は、再びステップS2〜
6の処理を実行する。ステップS6において、今、P1
点について[精]設定がされているため、CPU4は、
ステップS7へ進む。ステップS7では、前述した動作
と同様にして図4に示すP1点を通過する線分Lのデー
タを求めた後、ステップS8へ進む。Then, the CPU 4 returns to steps S2 to S5.
6 is executed. In step S6, P1
Since the point is set to [fine], the CPU 4
Proceed to step S7. In step S7, data of the line segment L passing through the point P1 shown in FIG.
【0079】ステップS8では、CPU4は、前述した
動作と同様にして、線分L上のPmin点の位置データ
(xmin、ymin)およびPmax点の位置データ(xmax、
ymax)を求めた後、ステップS9へ進む。In step S8, the CPU 4 executes the position data (xmin, ymin) of the Pmin point and the position data (xmax, ymax) of the Pmax point on the line segment L in the same manner as described above.
ymax), the process proceeds to step S9.
【0080】ステップS9では、CPU4は、今、
[精]設定されているため、ステップS10へ進む。ス
テップS10では、CPU4は、[精]設定されている
ため、ステップS11および12の処理を行う。ステッ
プS11では、CPU4は、塗装ガン1bが図4に示す
Pmax点に位置していない場合、ステップS12へ進
む。In step S9, the CPU 4
Since [fine] is set, the process proceeds to step S10. In step S10, the CPU 4 performs the processing of steps S11 and S12 since [fine] is set. In step S11, if the coating gun 1b is not located at the point Pmax shown in FIG. 4, the CPU 4 proceeds to step S12.
【0081】ステップS12では、CPU4は、RAM
6よりPmax点の位置データ(xmax、ymax)を読みだ
した後、塗装ガン1bを図4に示すP1点からPmax点
へ移動させるべく、この移動に対応したモータ駆動信号
Smを生成してこれをモータドライバ7へ出力した後、
ステップS9へ戻る。これにより、モータ8およびマニ
ピュレータ1aが駆動され、塗装ガン1bが線分L上を
P1点からPmax点へ向けて移動する。At the step S12, the CPU 4
After reading the position data (xmax, ymax) of the Pmax point from No. 6, a motor drive signal Sm corresponding to this movement is generated to move the coating gun 1b from the P1 point to the Pmax point shown in FIG. Is output to the motor driver 7,
It returns to step S9. As a result, the motor 8 and the manipulator 1a are driven, and the coating gun 1b moves on the line L from the point P1 to the point Pmax.
【0082】そして、今、塗装ガン1bが図8に示す線
分L上のP1’点に位置したとき、オペレータによりテ
ィーチングペンダント3の「決定キー」が押されたとす
ると、ティーチングペンダント3からは、上記「決定キ
ー」に対応する信号がCPU4へ出力される。これによ
り、CPU4は、ステップS9の判断結果を「YES」
としてステップS16へ進む。ステップS16では、C
PU4は、「決定キー」が押されているため、ステップ
S17へ進む。When the "decision key" of the teaching pendant 3 is pressed by the operator when the coating gun 1b is located at the point P1 'on the line L shown in FIG. A signal corresponding to the “enter key” is output to the CPU 4. Thereby, the CPU 4 changes the determination result of step S9 to “YES”.
And proceeds to step S16. In step S16, C
The PU 4 proceeds to step S17 because the “Enter key” has been pressed.
【0083】ステップS17では、CPU4は、モータ
駆動信号Smの出力を停止して、モータ8の駆動を停止
する。これにより、塗装ガン1bは、図8に示すP1’
点に位置した状態で停止される。次に、CPU4は、モ
ータ8より出力されている位置信号Spを取り込んだ
後、該位置信号Spより得られる塗装ガン1bの現在位
置に関するデータ、すなわち、図8に示すP1’点の位
置データ(xd1、yd1)を変数P1’に代入した
後、ステップS18へ進む。In step S17, the CPU 4 stops outputting the motor drive signal Sm and stops driving the motor 8. Thereby, the coating gun 1b is moved to P1 'shown in FIG.
Stops at the point. Next, the CPU 4 fetches the position signal Sp outputted from the motor 8, and then obtains data relating to the current position of the coating gun 1b obtained from the position signal Sp, that is, the position data of the point P1 'shown in FIG. After substituting (xd1, yd1) for the variable P1 ', the process proceeds to step S18.
【0084】ステップS18では、CPU4は、P1点
に[精]が設定されているため、精粗設定フラグFP1
に「0」格納した後、ステップS19へ進む。ステップ
S19では、CPU4は、内部変数iを1インクリメン
ト(i=2)した後、ステップS2へ戻る。以下、CP
U4は、前述した動作を繰り返す。In step S18, since [fine] is set at the point P1, the CPU 4 sets the fine / fine setting flag FP1.
After that, the process proceeds to step S19. In step S19, the CPU 4 increments the internal variable i by 1 (i = 2), and then returns to step S2. Hereinafter, CP
U4 repeats the operation described above.
【0085】<[精]設定時の再生動作>次に、[精]
設定時の再生動作を図5を参照して説明する。今、オペ
レータによりティーチングペンダント3の「再生キー」
が押されると、ティーチングペンダント3からは、上記
「再生キー」に対応する信号がCPU4へ出力される。<Reproduction Operation when [Fine] is Set> Next, [Fine]
The reproducing operation at the time of setting will be described with reference to FIG. Now, the "play key" of the teaching pendant 3
Is pressed, the teaching pendant 3 outputs a signal corresponding to the “reproduction key” to the CPU 4.
【0086】これにより、CPU4は、図5に示すステ
ップS31へ進み、前述した動作と同様にしてRAM6
に記憶されている、教示点たるP0点〜Pi点の各位置
データ、精粗設定点たるPi’点の位置データおよび精
粗設定フラグFPiを、RAM6から読み出す。今の場
合、CPU4は、図8に示すP0点、P1点およびP2
点の位置データ(x0、y0)、(x1、y1)および
(x2、y2)、ならびにP1’点の位置データ(xd
1、yd1)、ならびに精設定を示す精粗設定フラグF
P1(=0)をRAM6から読み出した後、ステップS
32へ進む。Thus, the CPU 4 proceeds to step S31 shown in FIG.
Is read from the RAM 6, the position data of the teaching points P0 to Pi, the position data of the point Pi 'which is a fine and coarse setting point, and the fine / fine setting flag FPi stored in the RAM 6. In this case, the CPU 4 calculates the points P0, P1 and P2 shown in FIG.
The position data (x0, y0), (x1, y1) and (x2, y2) of the point and the position data (xd
1, yd1) and a fine / fine setting flag F indicating the fine setting
After reading P1 (= 0) from the RAM 6, step S
Go to 32.
【0087】ステップS32では、CPU4は、内部変
数iにゼロを代入した後、ステップS33へ進み、内部
変数iが教示点数Nよりも小さい間、ステップS34以
降の処理を行う。ステップS34では、CPU4は、精
粗設定フラグFP1(=FP0+1)に[精]設定(=
0)が設定されているため、CPU4は、ステップS3
6へ進む。In step S32, after substituting zero for the internal variable i, the CPU 4 proceeds to step S33, and performs the processing after step S34 while the internal variable i is smaller than the number N of teaching points. In step S34, the CPU 4 sets [fine] to the fine / coarse setting flag FP1 (= FP0 + 1) (=
0) is set, the CPU 4 proceeds to step S3
Proceed to 6.
【0088】ステップS36では、CPU4は、前述し
た軌道変化開始点Aiを軌道変化開始点A0として求め
た後、ステップS37へ進む。図8に示す例では、上記
軌道変化開始点A0は、P1点と同一の点である。ステ
ップS37では、CPU4は、上述した軌道変化開始点
Aiと同様にして、軌道変化開始点Ai+1を求めた後、ス
テップS38へ進む。図8に示す例では、上記軌道変化
開始点Ai+1は、P1点である。In step S36, the CPU 4 determines the orbit change start point Ai as the orbit change start point A0, and then proceeds to step S37. In the example shown in FIG. 8, the orbit change start point A0 is the same as the point P1. In step S37, the CPU 4 obtains the trajectory change start point Ai + 1 in the same manner as the trajectory change start point Ai described above, and then proceeds to step S38. In the example shown in FIG. 8, the trajectory change start point Ai + 1 is the point P1.
【0089】ステップS38では、CPU4は、Pi+1
点からPi+1’点までの間において移動速度Vのx方向
の一定値たる速度成分Viを減少させてからゼロにする
までの距離Biを求めた後、ステップS39へ進む。図
8に示す例では、上記距離BiはB0であり、この距離
B0は、P1点近傍の点からP1’点までのx方向の距
離である。In step S38, the CPU 4 sets Pi + 1
The distance Bi from the point at which the speed component Vi, which is a constant value of the moving speed V in the x direction, between the point and the point Pi + 1 'is reduced to zero is obtained, and the process proceeds to step S39. In the example shown in FIG. 8, the distance Bi is B0, and this distance B0 is a distance in the x direction from a point near the point P1 to a point P1 ′.
【0090】ステップS39では、CPU4は、Pi+
1’点からPi+2点までの間において塗装ガン1bの、移
動速度Vのy方向の速度成分Vi+1をゼロから一定値に
するまでの距離Bi+1を求めた後、ステップS40へ進
む。図8に示す例では、上記距離Bi+1は、B1であ
り、この距離B1は、P1’点からP2点までの距離で
ある。In step S39, the CPU 4 determines whether Pi +
After calculating the distance Bi + 1 from the point 1 'to the point Pi + 2 until the velocity component Vi + 1 of the moving velocity V in the y direction of the coating gun 1b is changed from zero to a constant value, the process proceeds to step S40. move on. In the example shown in FIG. 8, the distance Bi + 1 is B1, and this distance B1 is the distance from point P1 'to point P2.
【0091】ステップS40では、CPU4は、前述し
た動作と同様にして、精粗設定フラグFPi+1より設定
を確認する。今の場合、精粗設定フラグFP1(FPi+
1)が「0」であり、[精]設定されているため、CP
U4は、ステップS48へ進む。In step S40, the CPU 4 confirms the setting from the fine / fine setting flag FPi + 1 in the same manner as the operation described above. In this case, the fine / fine setting flag FP1 (FPi +
Since 1) is “0” and [fine] is set, CP
U4 proceeds to step S48.
【0092】ステップS48では、Pi+1とPi+1’点と
の間の距離と、ステップS38において算出された距離
Biとを比較し、距離Biが大きい場合、ステップS4
9へ進む一方、距離Biが小さい場合、ステップS52
へ進む。図8に示す例では、CPU4は、P1点とP
1’点との間の距離と距離B0とを比較し、今、距離B
0が大きいものとし、従って、ステップS49へ進む。
ステップS49では、CPU4は、Pi+1’とPi+2点と
の間の距離と、ステップS39において算出された距離
Bi+1とを比較して、距離Bi+1が小さい場合、ステップ
S50へ進む一方、距離Bi+1が大きい場合、ステップ
S51へ進む。図8に示す例では、CPU4は、P1’
点とP2点との間の距離と距離B1とを比較し、今の場
合、距離B1が小さいものとすると、ステップS50へ
進む。In step S48, the distance between the points Pi + 1 and Pi + 1 'is compared with the distance Bi calculated in step S38.
If the distance Bi is small while proceeding to step S9, step S52
Proceed to. In the example shown in FIG. 8, the CPU 4
The distance between the point 1 ′ and the distance B0 is compared, and the distance B
It is assumed that 0 is large, and therefore, the process proceeds to step S49.
In step S49, the CPU 4 compares the distance between the points Pi + 1 'and Pi + 2 with the distance Bi + 1 calculated in step S39. If the distance Bi + 1 is small, the CPU 4 proceeds to step S50. On the other hand, if the distance Bi + 1 is large, the process proceeds to step S51. In the example shown in FIG. 8, the CPU 4
The distance between the point and the point P2 is compared with the distance B1, and if the distance B1 is small in this case, the process proceeds to step S50.
【0093】ステップS50では、CPU4は、軌道パ
ターンフラグGFに5をセットした後、ステップS55
へ進む。ステップS55では、CPU4は、図15に示
す速度パターンに沿って塗装ガン1bを移動させるよう
に、モータドライバ7へモータ駆動信号Smを出力す
る。同図に示す速度パターンは、移動速度Vのx方向成
分である速度成分V0とy方向成分の速度成分V1との
ベクトル和である。In step S50, the CPU 4 sets 5 to the trajectory pattern flag GF, and then proceeds to step S55.
Proceed to. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b along the speed pattern shown in FIG. The speed pattern shown in the figure is a vector sum of a speed component V0 which is an x-direction component of the moving speed V and a speed component V1 which is a y-direction component.
【0094】図15に示す速度パターンによれば、移動
速度Vの速度成分V0は、図8に示すP0点から一定値
をとり、塗装ガン1bがP1点をやや通過すると、一定
の減少率で減少する。そして、速度成分V0は、P1’
点を通過した後、マイナス方向へ増加し、さらにP1点
のやや手前でプラス方向へ増加する。そして、速度成分
V0は、P1点の手前でゼロとなり、以後上記手前の点
からP2点までゼロである。一方、移動速度Vの速度成
分V1は、P0点からゼロであり、塗装ガン1bがP1
点をやや通過すると、一定の増加率でマイナス方向へ増
加し、P1’点において速度成分V0と同値をとる。そ
して、速度成分V1は、さらにプラス方向へ増加した
後、P1点の手前の点で一定値をとり、以後上記手前の
点からP2点まで一定値をとる。According to the speed pattern shown in FIG. 15, the speed component V0 of the moving speed V takes a constant value from the point P0 shown in FIG. 8, and when the coating gun 1b slightly passes through the point P1, it has a constant decreasing rate. Decrease. And the speed component V0 is P1 '
After passing through the point, it increases in the minus direction, and further increases in the plus direction slightly before the point P1. The velocity component V0 becomes zero before the point P1, and thereafter becomes zero from the point before the point P2. On the other hand, the speed component V1 of the moving speed V is zero from the point P0, and
After passing through the point a little, it increases in the negative direction at a constant increase rate, and takes the same value as the velocity component V0 at the point P1 '. Then, after further increasing in the plus direction, the speed component V1 takes a constant value at a point before the point P1, and thereafter takes a constant value from the point before the point to the point P2.
【0095】これにより、塗装ガン1bは、図8に示す
ループ軌道よりややつぶれた軌跡のループ軌道を有する
軌道、すなわち、P0点→P1点→P1’点→P1点→
P2点という軌道に沿って移動する。As a result, the coating gun 1b has a trajectory having a loop trajectory slightly crushed from the loop trajectory shown in FIG. 8, that is, the point P0 → point P1 → point P1 ′ → point P1 →
It moves along the trajectory P2.
【0096】一方、ステップS49において、距離B1
がP1’点とP2点との間の距離より大きいものとする
と、CPU4は、ステップS51へ進む。ステップS5
1では、CPU4は、軌道パターンフラグGFに6をセ
ットした後、ステップS55へ進む。ステップS55で
は、CPU4は、図16に示す速度パターンに沿って塗
装ガン1bを移動させるように、モータドライバ7へモ
ータ駆動信号Smを出力する。On the other hand, in step S49, the distance B1
Is larger than the distance between the points P1 ′ and P2, the CPU 4 proceeds to step S51. Step S5
In 1, the CPU 4 sets the trajectory pattern flag GF to 6, and then proceeds to step S55. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b along the speed pattern shown in FIG.
【0097】図16に示す速度パターンによれば、移動
速度Vの速度成分V0は、図8に示すP0点から一定値
をとり、塗装ガン1bがP1点をやや通過すると、一定
の減少率で減少する。そして、速度成分V0は、P1’
点を通過した後、マイナス方向へ増加し、さらにP1点
のやや手前でプラス方向へ増加する。そして、速度成分
V0は、P1点の手前でゼロとなり、以後上記手前の点
からP2点までゼロである。一方、移動速度Vの速度成
分V1は、P0点からゼロであり、塗装ガン1bがP1
点の手前を通過すると、一定の増加率でマイナス方向へ
増加し、P1点を通過した後、P1’点において速度成
分V0と同値をとる。そして、速度成分V1は、さらに
プラス方向へ増加した後、P1点の手前の点で一定値を
とり、以後上記手前の点からP2点まで一定値をとる。According to the speed pattern shown in FIG. 16, the speed component V0 of the moving speed V takes a constant value from the point P0 shown in FIG. 8, and when the coating gun 1b slightly passes through the point P1, it has a constant decreasing rate. Decrease. And the speed component V0 is P1 '
After passing through the point, it increases in the minus direction, and further increases in the plus direction slightly before the point P1. The velocity component V0 becomes zero before the point P1, and thereafter becomes zero from the point before the point P2. On the other hand, the speed component V1 of the moving speed V is zero from the point P0, and
After passing through the point, it increases in the negative direction at a constant increase rate, and after passing through the point P1, it takes the same value as the velocity component V0 at the point P1 '. Then, after further increasing in the plus direction, the speed component V1 takes a constant value at a point before the point P1, and thereafter takes a constant value from the point before the point to the point P2.
【0098】一方、ステップS48において、P1点と
P1’点との間の距離と距離B0とを比較し、今、距離
B0が小さいものとすると、CPU4は、ステップS5
2へ進む。ステップS52では、CPU4は、Pi+1点
とPi+2点との間の距離と、ステップS39において算
出された距離Bi+1とを比較して、距離Bi+1が小さい場
合、ステップS53へ進む一方、距離Bi+1が大きい場
合、ステップS54へ進む。図8に示す例では、CPU
4は、P1点とP2点との間の距離と距離B1とを比較
して、今、距離B1が小さいものとすると、ステップS
53へ進む。On the other hand, in step S48, the distance between the point P1 and the point P1 'is compared with the distance B0, and if the distance B0 is now smaller, the CPU 4 proceeds to step S5.
Proceed to 2. In step S52, the CPU 4 compares the distance between the point Pi + 1 and the point Pi + 2 with the distance Bi + 1 calculated in step S39. If the distance Bi + 1 is small, the CPU 4 proceeds to step S53. On the other hand, if the distance Bi + 1 is large, the process proceeds to step S54. In the example shown in FIG.
4 compares the distance between the point P1 and the point P2 with the distance B1, and assuming that the distance B1 is now small, a step S
Go to 53.
【0099】ステップS53では、CPU4は、軌道パ
ターンフラグGFに7をセットした後、ステップS55
へ進む。ステップS55では、CPU4は、図17に示
す速度パターンに沿って塗装ガン1bを移動させるよう
に、モータドライバ7へモータ駆動信号Smを出力す
る。In step S53, the CPU 4 sets 7 in the trajectory pattern flag GF, and then proceeds to step S55.
Proceed to. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 to move the coating gun 1b along the speed pattern shown in FIG.
【0100】図17に示す速度パターンによれば、移動
速度Vの速度成分V0は、図8に示すP0点から一定値
をとり、塗装ガン1bがP1点をやや通過すると、一定
の減少率で減少する。そして、速度成分V0は、P1’
点を通過した後、マイナス方向へ増加し、さらにP1点
のやや手前でプラス方向へ増加する。そして、速度成分
V0は、P1点をやや通過した点でゼロとなり、以後上
記通過した点からP2点までゼロである。According to the speed pattern shown in FIG. 17, the speed component V0 of the moving speed V takes a constant value from the point P0 shown in FIG. 8, and when the coating gun 1b slightly passes through the point P1, the rate decreases at a constant rate. Decrease. And the speed component V0 is P1 '
After passing through the point, it increases in the minus direction, and further increases in the plus direction slightly before the point P1. Then, the speed component V0 becomes zero at a point slightly passing through the point P1, and thereafter becomes zero from the passing point to the point P2.
【0101】一方、移動速度Vの速度成分V1は、P0
点からゼロであり、塗装ガン1bがP1点をやや通過す
ると、一定の増加率でマイナス方向へ増加し、P1’点
において速度成分V0と同値をとる。そして、速度成分
V1は、さらにプラス方向へ増加した後、P1点の手前
の点で一定値をとり、以後上記手前の点からP2点まで
一定値をとる。On the other hand, the speed component V1 of the moving speed V is P0
It is zero from the point, and when the coating gun 1b slightly passes through the point P1, it increases in the negative direction at a constant increase rate, and takes the same value as the velocity component V0 at the point P1 '. Then, after further increasing in the plus direction, the speed component V1 takes a constant value at a point before the point P1, and thereafter takes a constant value from the point before the point to the point P2.
【0102】一方、ステップS52において、距離B1
がP1点とP2点との間の距離と距離B1より大きいも
のとすると、CPU4は、ステップS54へ進む。ステ
ップS54では、CPU4は、軌道パターンフラグGF
に8をセットした後、ステップS55へ進む。ステップ
S55では、CPU4は、図18に示す速度パターンに
沿って塗装ガン1bを移動させるように、モータドライ
バ7へモータ駆動信号Smを出力する。On the other hand, in step S52, the distance B1
Is larger than the distance between the points P1 and P2 and the distance B1, the CPU 4 proceeds to step S54. In step S54, the CPU 4 determines whether the trajectory pattern flag GF
Is set to 8, and the process proceeds to step S55. In step S55, the CPU 4 outputs a motor drive signal Sm to the motor driver 7 so as to move the coating gun 1b along the speed pattern shown in FIG.
【0103】図18に示す速度パターンによれば、移動
速度Vの速度成分V0は、図8に示すP0点から一定値
をとり、塗装ガン1bがP1点の手前の点を通過する
と、一定の減少率で減少する。そして、速度成分V0
は、P1’点を通過した後、マイナス方向へ増加し、さ
らにP1点のやや手前でプラス方向へ増加する。そし
て、速度成分V0は、P1点をやや通過した点でゼロと
なり、以後上記通過した点からP2点までゼロである。According to the speed pattern shown in FIG. 18, the speed component V0 of the moving speed V takes a constant value from the point P0 shown in FIG. 8, and becomes constant when the coating gun 1b passes a point before the point P1. Decreases at a decreasing rate. And the velocity component V0
Increases in the minus direction after passing through the point P1 ', and further increases in the plus direction slightly before the point P1. Then, the speed component V0 becomes zero at a point slightly passing through the point P1, and thereafter becomes zero from the passing point to the point P2.
【0104】一方、移動速度Vの速度成分V1は、P0
点からゼロであり、塗装ガン1bがP1点の手前を通過
すると、一定の増加率でマイナス方向へ増加し、P1’
点において速度成分V0と同値をとる。そして、速度成
分V1は、さらにプラス方向へ増加した後、P1点を通
過した点で一定値をとり、以後上記通過した点からP2
点まで一定値をとる。On the other hand, the speed component V1 of the moving speed V is P0
It is zero from the point, and when the paint gun 1b passes just before the point P1, it increases in the negative direction at a constant increase rate, and P1 '
It takes the same value as the velocity component V0 at the point. Then, after the velocity component V1 further increases in the plus direction, it takes a constant value at a point passing through the point P1, and thereafter, from the passing point, P2
Take a constant value up to the point.
【0105】[0105]
【発明の効果】以上説明したように、請求項1に記載の
発明によれば、マニピュレータを実際に動作させて、目
視により線分軌道上の教示点を教示しているので、教示
作業に熟練を要することなくしかも短時間で教示作業を
行うことができ、さらに塗装品質を向上させることがで
きるという効果が得られる。また、請求項2に記載の発
明によれば、軌道データ生成手段により線分軌道上の教
示点を通過する円弧軌道を含む軌道のデータが自動的に
生成されるので、線分軌道上の教示点を指示するという
簡単な動作のみで円弧軌道を含む軌道を簡単に得ること
ができる。従って、この請求項2に記載の発明によれ
ば、円弧軌道を含む複雑な軌道であっても、熟練を要す
ることなく教示作業を行うことができるという効果が得
られる。この請求項3に記載の発明によれば、請求項2
に記載の発明と同様にして、軌道データ生成手段により
線分軌道上の教示点を通過するループ軌道を含む軌道の
データが自動的に生成されるので、線分軌道上の教示点
を指示するという簡単な動作のみでループ軌道を含む軌
道を簡単に得ることができる。従って、この請求項3に
記載の発明によれば、ループ軌道を含む複雑な軌道であ
っても、熟練を要することなく教示作業を行うことがで
きる。また、請求項4に記載の発明によれば、設定可能
範囲が求められるので、マニピュレータに振動等が発生
せず、ひいては教示精度を向上させることができるとい
う効果が得られる。As described above, according to the first aspect of the present invention, since the manipulator is actually operated and the teaching points on the line segment trajectory are visually taught, the teaching operation is skilled. Thus, the teaching operation can be performed in a short time without the need for the above, and the effect that the coating quality can be further improved can be obtained. According to the second aspect of the present invention, since the trajectory data generating means automatically generates the trajectory data including the arc trajectory passing through the teaching point on the line segment trajectory, the teaching on the line segment trajectory is performed. A trajectory including an arc trajectory can be easily obtained only by a simple operation of designating a point. Therefore, according to the second aspect of the present invention, the teaching operation can be performed without requiring skill even for a complicated trajectory including an arc trajectory. According to the invention described in claim 3, according to claim 2
In the same manner as in the invention described in (1), the data of the trajectory including the loop trajectory passing through the teaching point on the line segment trajectory is automatically generated by the trajectory data generating means, and the teaching point on the line segment trajectory is designated. A trajectory including a loop trajectory can be easily obtained only by such a simple operation. Therefore, according to the third aspect of the present invention, a teaching operation can be performed without skill even on a complicated trajectory including a loop trajectory. According to the fourth aspect of the present invention, since a settable range is obtained, vibration and the like do not occur in the manipulator, and the effect that teaching accuracy can be improved can be obtained.
【図1】 本発明の一実施形態によるロボットの教示装
置の外観構成を示す側面図である。FIG. 1 is a side view showing an external configuration of a robot teaching device according to an embodiment of the present invention.
【図2】 同一実施形態によるロボットの教示装置の電
気的構成を示すブロック図である。FIG. 2 is a block diagram showing an electrical configuration of a robot teaching device according to the same embodiment.
【図3】 図2に示すCPU4の処理手順を示すPAD
図である。FIG. 3 is a PAD showing a processing procedure of a CPU 4 shown in FIG. 2;
FIG.
【図4】 本発明の一実施形態によるロボットの教示装
置の動作を説明する図である。FIG. 4 is a diagram illustrating the operation of the robot teaching device according to the embodiment of the present invention.
【図5】 図2に示すCPU4の処理手順を示すPAD
図である。FIG. 5 is a PAD showing a processing procedure of the CPU 4 shown in FIG. 2;
FIG.
【図6】 本発明の一実施形態によるロボットの教示装
置における粗設定時の軌道を示す図である。FIG. 6 is a diagram illustrating a trajectory at the time of coarse setting in the robot teaching device according to the embodiment of the present invention.
【図7】 同一実施形態によるロボットの教示装置にお
ける粗設定時の塗装ガン1bの速度パターンを示す図で
ある。FIG. 7 is a diagram showing a speed pattern of a coating gun 1b at the time of rough setting in the robot teaching device according to the same embodiment.
【図8】 同一実施形態によるロボットの教示装置にお
ける精設定を説明する図である。FIG. 8 is a diagram illustrating fine setting in the robot teaching device according to the same embodiment.
【図9】 同一実施形態によるロボットの教示装置にお
ける精設定時の塗装ガン1bの速度パターンを示す図で
ある。FIG. 9 is a diagram showing a speed pattern of the coating gun 1b at the time of fine setting in the robot teaching device according to the same embodiment.
【図10】 同一実施形態によるロボットの教示装置に
おける塗装ガン1bの速度パターンを示す図である。FIG. 10 is a diagram showing a speed pattern of a coating gun 1b in the robot teaching device according to the same embodiment.
【図11】 同一実施形態によるロボットの教示装置に
おける粗設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 11 is a diagram showing a speed pattern of the coating gun 1b at the time of rough setting in the robot teaching device according to the same embodiment.
【図12】 同一実施形態によるロボットの教示装置に
おける粗設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 12 is a diagram showing a speed pattern of a coating gun 1b at the time of rough setting in the robot teaching device according to the same embodiment.
【図13】 同一実施形態によるロボットの教示装置に
おける粗設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 13 is a diagram showing a speed pattern of a coating gun 1b at the time of rough setting in the robot teaching device according to the same embodiment.
【図14】 同一実施形態によるロボットの教示装置に
おける粗設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 14 is a diagram showing a speed pattern of the coating gun 1b at the time of rough setting in the robot teaching device according to the same embodiment.
【図15】 同一実施形態によるロボットの教示装置に
おける精設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 15 is a diagram showing a speed pattern of the coating gun 1b at the time of fine setting in the robot teaching device according to the same embodiment.
【図16】 同一実施形態によるロボットの教示装置に
おける精設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 16 is a diagram showing a speed pattern of the coating gun 1b at the time of fine setting in the robot teaching device according to the same embodiment.
【図17】 同一実施形態によるロボットの教示装置に
おける精設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 17 is a diagram showing a speed pattern of the coating gun 1b at the time of fine setting in the robot teaching device according to the same embodiment.
【図18】 同一実施形態によるロボットの教示装置に
おける精設定時の塗装ガン1bの速度パターンを示す図
である。FIG. 18 is a diagram showing a speed pattern of the coating gun 1b at the time of fine setting in the robot teaching device according to the same embodiment.
1 ロボット 1a マニピュレータ 1b 塗装ガン 2 コントローラ 3 ティーチングペンダント 4 CPU 8 モータ DESCRIPTION OF SYMBOLS 1 Robot 1a Manipulator 1b Painting gun 2 Controller 3 Teaching pendant 4 CPU 8 Motor
フロントページの続き (51)Int.Cl.6 識別記号 FI G05B 19/42 G05B 19/42 P Continued on the front page (51) Int.Cl. 6 Identification code FI G05B 19/42 G05B 19/42 P
Claims (4)
ニピュレータの先端部に取り付けられた作業具により作
業を行うロボットにおいて、 予め教示された複数の教示点の位置データを記憶する記
憶手段と、 前記複数の教示点のうち特定の教示点を交点とする2直
線のなす角を2分しかつ前記特定の教示点を通過する線
分軌道のデータを生成する線分軌道データ生成手段と、 前記作業具が前記線分軌道上に沿って移動するように前
記マニピュレータを駆動しオペレータにより前記線分軌
道上の教示点が指示されたとき前記マニピュレータの駆
動を停止する駆動制御手段と、 前記線分軌道上の教示点の位置データおよび前記記憶手
段に記憶されている位置データに基づいて前記線分軌道
上の教示点を通過する軌道のデータを生成する軌道デー
タ生成手段とを具備することを特徴とするロボットの教
示装置。1. A robot for performing a work on a work disposed on a work surface by a work tool attached to a distal end of a manipulator, wherein a storage means for storing position data of a plurality of teaching points taught in advance. Line segment trajectory data generating means for dividing an angle between two straight lines having a specific teaching point as an intersection among the plurality of teaching points into two and generating data of a line segment trajectory passing through the specific teaching point; Drive control means for driving the manipulator so that the work implement moves along the line segment trajectory, and stopping driving of the manipulator when an operator instructs a teaching point on the line segment trajectory; Trajectory data for generating data of a trajectory passing through a teaching point on the line segment trajectory based on position data of a teaching point on the line segment trajectory and position data stored in the storage means Teaching apparatus of a robot which is characterized by comprising a generation unit.
示点と前記特定の教示点の前後の教示点とを結ぶ2直線
の内側に位置する前記線分軌道上の教示点が前記オペレ
ータにより指示されたとき前記前後の教示点および前記
線分軌道上の教示点を通過する円弧軌道を含む軌道のデ
ータを生成することを特徴とする請求項1に記載のロボ
ットの教示装置。2. The method according to claim 1, wherein the trajectory data generation unit specifies a teaching point on the line segment trajectory located inside two straight lines connecting the specific teaching point and the teaching points before and after the specific teaching point. 2. The robot teaching device according to claim 1, wherein when it is performed, data of a trajectory including an arc trajectory passing through the preceding and following teaching points and a teaching point on the line segment trajectory is generated. 3.
示点と前記特定の教示点の前後の教示点とを結ぶ2直線
の外側に位置する前記線分軌道上の教示点が前記オペレ
ータにより指示されたとき前記特定の教示点、前記前後
の教示点および前記線分軌道上の教示点を通過するルー
プ軌道を含む軌道のデータを生成することを特徴とする
請求項1に記載のロボットの教示装置。3. The trajectory data generating means instructs, by the operator, a teaching point on the line segment trajectory located outside two straight lines connecting the specific teaching point and the teaching points before and after the specific teaching point. 2. The robot teaching device according to claim 1, wherein, when being performed, data of a trajectory including the specific teaching point, the preceding and following teaching points, and a loop trajectory passing through the teaching points on the line segment trajectory are generated. apparatus.
手段に記憶されている前記複数の教示点の位置データお
よび予め設定される前記作業具の移動速度に基づいて前
記マニピュレータに振動等が発生しない、前記線分軌道
上における前記教示点の設定可能範囲を求めることを特
徴とする請求項1ないし3のいずれかに記載のロボット
の教示装置。4. The manipulator generates vibrations and the like based on the position data of the plurality of teaching points stored in the storage unit and a preset moving speed of the work implement. The robot teaching device according to any one of claims 1 to 3, wherein a settable range of the teaching point on the line segment trajectory is determined.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14275997A JPH10329068A (en) | 1997-05-30 | 1997-05-30 | Robot teaching device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14275997A JPH10329068A (en) | 1997-05-30 | 1997-05-30 | Robot teaching device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10329068A true JPH10329068A (en) | 1998-12-15 |
Family
ID=15322925
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP14275997A Pending JPH10329068A (en) | 1997-05-30 | 1997-05-30 | Robot teaching device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH10329068A (en) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010531743A (en) * | 2007-07-04 | 2010-09-30 | アルデバラン ロボティクス エス、ア | Method for editing robot motion |
| JP5850996B1 (en) * | 2014-08-05 | 2016-02-03 | ファナック株式会社 | Numerical control device with corner path generation function considering acceleration / deceleration after interpolation |
| WO2016024338A1 (en) * | 2014-08-12 | 2016-02-18 | 三菱電機株式会社 | Numerical control device |
| JP2016172293A (en) * | 2015-03-16 | 2016-09-29 | ファナック株式会社 | Trajectory generation apparatus for robot to generate trajectory including curved portion |
| JP2020102183A (en) * | 2018-12-19 | 2020-07-02 | 国立臺北科技大學 | Control device and method for controlling mechanical equipment |
| CN114746221A (en) * | 2019-12-04 | 2022-07-12 | Abb瑞士股份有限公司 | Methods of controlling industrial actuators, control systems and actuator systems |
-
1997
- 1997-05-30 JP JP14275997A patent/JPH10329068A/en active Pending
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010531743A (en) * | 2007-07-04 | 2010-09-30 | アルデバラン ロボティクス エス、ア | Method for editing robot motion |
| JP5850996B1 (en) * | 2014-08-05 | 2016-02-03 | ファナック株式会社 | Numerical control device with corner path generation function considering acceleration / deceleration after interpolation |
| US9829876B2 (en) | 2014-08-05 | 2017-11-28 | Fanuc Corporation | Numerical controller having corner path generation function in consideration of post-interpolation acceleration/deceleration |
| WO2016024338A1 (en) * | 2014-08-12 | 2016-02-18 | 三菱電機株式会社 | Numerical control device |
| JP2016172293A (en) * | 2015-03-16 | 2016-09-29 | ファナック株式会社 | Trajectory generation apparatus for robot to generate trajectory including curved portion |
| US9764471B2 (en) | 2015-03-16 | 2017-09-19 | Fanuc Corporation | Trajectory generation apparatus for robot to generate trajectory including curved portion |
| JP2020102183A (en) * | 2018-12-19 | 2020-07-02 | 国立臺北科技大學 | Control device and method for controlling mechanical equipment |
| CN114746221A (en) * | 2019-12-04 | 2022-07-12 | Abb瑞士股份有限公司 | Methods of controlling industrial actuators, control systems and actuator systems |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4568816A (en) | Method and apparatus for manipulator welding apparatus with improved weld path definition | |
| WO2001087532A1 (en) | Controller for three-dimensional laser beam machine | |
| JP4122975B2 (en) | 3D laser processing machine | |
| GB2259586A (en) | Method of and system for generating teaching data for robots | |
| JPH10329068A (en) | Robot teaching device | |
| JPH05289722A (en) | Automatic programming device for coating robot | |
| WO2013031492A1 (en) | Program generation device and method | |
| JPS6054011A (en) | Position control method of industrial robot | |
| JPH08155647A (en) | Weaving controller for welding robot | |
| JPH07334228A (en) | Robot teaching data correction device | |
| JPH0535327A (en) | Laser machine | |
| JP4396553B2 (en) | Robot controller, computer program | |
| JPH1158014A (en) | Weaving control device for welding robot | |
| JP2000015593A (en) | Manipulator trajectory generation device and recording medium recording manipulator trajectory generation program | |
| JPH01205880A (en) | Weaving control system | |
| JP4277747B2 (en) | Laser processing equipment | |
| JPH11191005A (en) | Robot controller | |
| WO2022186054A1 (en) | Teaching point generation device that generates teaching points on basis of output of sensor, and teaching point generation method | |
| JPH07205071A (en) | Industrial robot | |
| JP2529316B2 (en) | Method and apparatus for multi-layer welding of large structures | |
| CN116323076A (en) | Laser processing system and control method | |
| JP3191341B2 (en) | Robot controller | |
| JP2698000B2 (en) | Welding equipment | |
| JPH1148176A (en) | Robot position teaching device | |
| JPH09114511A (en) | Robot control method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Effective date: 20040506 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20040506 |
|
| A977 | Report on retrieval |
Effective date: 20060324 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
| A131 | Notification of reasons for refusal |
Effective date: 20060411 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061031 |