JPH0253586A - Control device for robot - Google Patents

Control device for robot

Info

Publication number
JPH0253586A
JPH0253586A JP20343688A JP20343688A JPH0253586A JP H0253586 A JPH0253586 A JP H0253586A JP 20343688 A JP20343688 A JP 20343688A JP 20343688 A JP20343688 A JP 20343688A JP H0253586 A JPH0253586 A JP H0253586A
Authority
JP
Japan
Prior art keywords
axis
robot
deviation
traveling
amount
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.)
Granted
Application number
JP20343688A
Other languages
Japanese (ja)
Other versions
JP2506157B2 (en
Inventor
Takeshi Kobayashi
毅 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nissan Motor Co Ltd
Original Assignee
Nissan Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nissan Motor Co Ltd filed Critical Nissan Motor Co Ltd
Priority to JP63203436A priority Critical patent/JP2506157B2/en
Publication of JPH0253586A publication Critical patent/JPH0253586A/en
Application granted granted Critical
Publication of JP2506157B2 publication Critical patent/JP2506157B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To improve working accuracy by forming the structure of correcting with the movement of each joint of a robot he error in stopping a traveling axis. CONSTITUTION:When the stop state of a traveling axis is detected by a stop state detecting means 2, a division arithmetic means 12 inputs the deviation between the present position at stopping time and a target value from a 2nd deviation arithmetic means 9, operating the movement of each driving axis based on this deviation and outputting this arithmetic result to a 1st deviation calculating means 8. Then, each axis driving means 15 drives each driving axis according to the output fed from the 1st deviation calculating means 8, and a 1st present value detecting means 11 feedbacks the movement of this driving means 15 to the 1st deviation calculating means 8. The 1st deviation calculating means 8 thus operates the deviation by subtracting this movement subjected to feedback from the movement output from a driving arithmetic means 2, operating each axis driving means 15 at the speed corresponding to this deviation. Consequently, the work can be performed at the desired position despite of the stopping position of the traveling axis.

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、走行軸付のロボットの制御装置に係り、特に
、走行軸における停止位置の誤差をロボットの各関節軸
を動かすことによって補正し得るようにしたロボットの
制御装置に関する。
Detailed Description of the Invention [Objective of the Invention] (Industrial Field of Application) The present invention relates to a control device for a robot with a traveling axis, and in particular, the present invention relates to a control device for a robot with a traveling axis. The present invention relates to a robot control device that allows correction by movement.

(従来の技術) 最近では、例えばロボットによって車両の溶接を行なう
場合には、搬送固定された車両に沿ってロボットが移動
し、予めティーチングされたポイントに溶接を施すとい
う動作が可能な、いわゆる走行軸付のロボットが用いら
れつつある。
(Prior Art) Recently, when welding a vehicle by a robot, for example, the robot can move along a fixed vehicle and perform welding at pre-taught points. Robots with shafts are being used.

この走行軸付のロボットは、第4図に示すように構成さ
れた制御装置1によって制御されている。
This robot with a traveling axis is controlled by a control device 1 configured as shown in FIG.

この制御装置1は、ロボット10全体の制御を行なうC
PU2と、ロボット10の溶接ポイントや停止位置など
を記憶するメモリ3と、CPU2から出力されるロボッ
トの各関節軸に関するデータ、走行軸に関するデータを
夫々D/A変換するロボット関節軸D/A変換器4.走
行軸D/A変換器5と、これらの変換器4.5に夫々接
続されたアンプ6.7とを有し、CPU2は、メモリ3
に記憶されている上記したような溶接に関するデータに
基づいて、ロボットの各関節軸及び走行軸の移動量及び
移動方向などを演算し、その演算結果をロボット関節軸
D/A変換器4.走行軸D/A変換器5に出力する。ロ
ボット関節軸D/A変換器4.走行軸D/A変換器5は
この演算結果を受けて、この演算結果をアナログ量に変
換してアンプ6.7に出力することになる。
This control device 1 controls the entire robot 10.
PU 2, a memory 3 that stores welding points, stop positions, etc. of the robot 10, and a robot joint axis D/A converter that converts data related to each joint axis of the robot output from the CPU 2 and data related to the travel axis, respectively. Vessel 4. It has a running axis D/A converter 5 and amplifiers 6.7 connected to these converters 4.5, respectively, and the CPU 2 has a memory 3.
Based on the above-mentioned data related to welding stored in the robot, the movement amount and direction of each joint axis and traveling axis of the robot are calculated, and the calculation results are sent to the robot joint axis D/A converter 4. Output to the running axis D/A converter 5. Robot joint axis D/A converter4. The traveling axis D/A converter 5 receives this calculation result, converts the calculation result into an analog quantity, and outputs it to the amplifier 6.7.

このアンプ6は、ロボット10の各軸を駆動する図示し
ないモータ及びエンコーダに、アンプ7は、ロボット1
0の走行軸を駆動するモータ20及びエンコーダ21に
接続され、ロボット10の各関節軸及び走行軸はこのア
ンプ6.7の出力に基づいて駆動される。なお、ロボッ
ト関節軸D/A変換器4及びアンプ6は、各関節軸毎に
個々に設けられており、例えば、関節軸が4軸あれば、
ロボット関節軸D/A変換器4及びアンプ6はそれぞれ
4台づつ設けられていることになる。
The amplifier 6 is connected to a motor and encoder (not shown) that drive each axis of the robot 10, and the amplifier 7 is connected to a motor and an encoder (not shown) that drive each axis of the robot 10.
The robot 10 is connected to a motor 20 and an encoder 21 that drive the traveling axis of the robot 10, and each joint axis and the traveling axis of the robot 10 are driven based on the output of the amplifier 6.7. Note that the robot joint axis D/A converter 4 and the amplifier 6 are individually provided for each joint axis. For example, if there are four joint axes,
Four robot joint axis D/A converters 4 and four amplifiers 6 are provided.

このような構成を有する従来のロボットの制御装置は、
第5図に示す動作フローチャートに示すように動作する
A conventional robot control device having such a configuration is
It operates as shown in the operational flowchart shown in FIG.

この動作フローチャートは、理解を容易にするために、
各関節軸の制御に関するものと走行軸の制御に関するも
のとの両方に分けて示してあり、また、制御のしかたが
容易に理解できるように、変則的に記載している。
This operation flowchart is shown below for ease of understanding.
The figures are shown separately for control of each joint axis and control of the travel axis, and are written irregularly so that the control method can be easily understood.

まず、ロボットの関節軸に関する制御については、最初
にCPU2は次の目標値をメモリ3に記憶されているテ
ィーチデータから読込み、この目標値に関するデータを
選択して各関節軸の予想速度指令を算出する(ステップ
1.2)。次に、CPU2は、所定時間毎の速度指令を
算出し、この算出された速度指令に基づいて作業を行な
う部位のX、Y、Z方向成分の速度指令を算出する(ス
テップ3.4)。そして、この算出したX、Y。
First, for control regarding the joint axes of the robot, the CPU 2 first reads the next target value from the teach data stored in the memory 3, selects the data regarding this target value, and calculates the expected speed command for each joint axis. (Step 1.2). Next, the CPU 2 calculates a speed command for each predetermined time, and calculates speed commands for the X, Y, and Z direction components of the part to be worked on based on the calculated speed command (step 3.4). Then, the calculated X and Y.

Z方向成分の速度指令に基づいて各軸毎の速度指令を算
出し、CPU2は、この算出結果をロボット関節軸D/
A変換器4に出力し、これがD/A変換された後アンプ
6に出力されてロボット10の各関節軸毎に設けられて
いる夫々のモータを駆動する(ステップ5)。そして、
この夫々のモータにはそのモータの移動量を検出するエ
ンコーダが接続されているが、CPU2は、これらのエ
ンコーダの検出値をフィードバックし、目標値と現在カ
ウント値との偏差・を演算しつつ、ステップ3からステ
ップ6までの処理を偏差がOになるまで行なう(ステッ
プ6)。
The speed command for each axis is calculated based on the speed command of the Z direction component, and the CPU 2 uses this calculation result as the robot joint axis D/
The signal is output to the A converter 4, and after D/A conversion, is output to the amplifier 6 to drive each motor provided for each joint axis of the robot 10 (step 5). and,
Encoders that detect the amount of movement of the motors are connected to each of these motors, and the CPU 2 feeds back the detection values of these encoders and calculates the deviation between the target value and the current count value. The processes from step 3 to step 6 are performed until the deviation becomes O (step 6).

即ち、例えば、ロボット10に装備されている溶接ガン
をA地点からB地点に移動させる場合には、まずA地点
からB地点までの距離と方向に関するデータを読込み、
溶接ガンをB地点まで動かす際の移動経路的各点におけ
る速度を算出し、この速度に基づいて各関節軸毎の速度
指令値を算出して・、アンプ6は各関節軸毎に設けられ
ているモータにその速度指令に応じた電圧電流を供給す
る。
That is, for example, when moving the welding gun equipped on the robot 10 from point A to point B, first read data regarding the distance and direction from point A to point B,
The speed at each point on the movement path when moving the welding gun to point B is calculated, and the speed command value for each joint axis is calculated based on this speed.The amplifier 6 is installed for each joint axis. The motor is supplied with voltage and current according to its speed command.

そして、この速度指令は、これらのモータの移動量をフ
ィードバックしつつ目標値と現在値との偏差に応じて行
なわれる。
This speed command is given according to the deviation between the target value and the current value while feeding back the amount of movement of these motors.

また、走行軸の制御は、上述した制御の内の一部除いた
もの、即ち、ステップ4とステップ5の処理を除き他の
処理はロボットの関節軸制御と全く同一である。したが
って、詳細な説明は省略するが、概略の動作は次のよう
になる。
Further, the control of the traveling axis is completely the same as the joint axis control of the robot except for some of the above-mentioned controls, that is, the processes of steps 4 and 5. Therefore, detailed explanation will be omitted, but the general operation is as follows.

CPU2は次の目標値をメモリ3に記憶されているティ
ーチデータから読込み、この目標値に関するデータを選
択して各関節軸の予想速度指令を算出する(ステップ1
0.11)。次に、cpu2は、所定時間毎の速度指令
を算出し、この算出結果を走行軸D/A変換器4に出力
し、これがD/A変換された後アンプ7に出力されてロ
ボット10の走行軸軸を駆動するモータ20を駆動する
(ステップ12)。モータ20にはそのモータ20の移
動量を検出するエンコーダ21が接続されているが、C
PU2は、これらのエンコーダ21の検出値をフィード
バックし、目標値と現在カウント値との偏差を演算しつ
つ、ステップ12からステップ13までの処理を偏差が
0になるまで行なう(ステップ13)。
The CPU 2 reads the next target value from the teach data stored in the memory 3, selects data related to this target value, and calculates the expected speed command for each joint axis (step 1
0.11). Next, the CPU 2 calculates a speed command for each predetermined time, outputs the calculation result to the running axis D/A converter 4, converts it from D/A, and outputs it to the amplifier 7 to cause the robot 10 to move. The motor 20 that drives the shaft is driven (step 12). An encoder 21 that detects the amount of movement of the motor 20 is connected to the motor 20.
The PU 2 feeds back the detected values of these encoders 21, calculates the deviation between the target value and the current count value, and performs the processes from step 12 to step 13 until the deviation becomes 0 (step 13).

これらの動作制御の概略は以上の通りであり、以上の制
御を要約すれば、目標位置までの距離があれば、動作速
度を速くし、目標位置に近付いてきたら動作速度を遅く
するという制御を各関節軸及び走行軸でそれぞれ別個に
行なっている。
The outline of these motion controls is as above, and to summarize the above control, the motion speed is increased if there is a distance to the target position, and the motion speed is slowed down as the target position approaches. This is done separately for each joint axis and running axis.

(発明が解決しようとする課題) しかしながら、このような従来のロボットの制御装置に
あっては、前記したように、ロボット10の各関節軸の
制御と走行軸の制御とが別々のフィードバックによって
成されているために、ロボットの関節部の重量やその動
作時の慣性により走行軸がティーチングした位置に正確
に停止できなかった場合には、位置補正しきれずに作業
精度が悪化するという問題がある。
(Problem to be Solved by the Invention) However, in such a conventional robot control device, as described above, the control of each joint axis of the robot 10 and the control of the traveling axis are achieved by separate feedbacks. Therefore, if the traveling axis cannot stop accurately at the taught position due to the weight of the robot's joints or the inertia during its movement, there is a problem that the position cannot be corrected completely and work accuracy deteriorates. .

即ち、第4図に示されているように、走行軸の停止位置
が所定の位置からズレると、ロボットの手首の法線ベク
ターがAのようにズレ、そのズレの生じた分が溶接位置
の誤差となって表れる。従って、Bに示した領域での実
際の作業はほとんど不可能となる。これは、例えば、走
行軸の方向転換時においては、第6図に示すように、C
PU2からは図中点線で示されているような速度指令波
形が出力されることになるが、実際には、ロボット10
の重量や慣性の影響で実線で示されるような速度指令波
形となってしまい、このために停止位置の誤差が生ずる
からである。
In other words, as shown in Fig. 4, when the stop position of the traveling axis deviates from the predetermined position, the normal vector of the robot's wrist deviates as shown in A, and the deviation is reflected in the welding position. It appears as an error. Therefore, actual work in the area shown in B is almost impossible. For example, when changing the direction of the traveling axis, as shown in FIG.
The speed command waveform shown by the dotted line in the figure will be output from PU2, but in reality, the robot 10
This is because due to the influence of the weight and inertia of the motor, the speed command waveform becomes as shown by the solid line, which causes an error in the stopping position.

このように、溶接位置の誤差が生じると、最悪の場合に
は、車両構造体と溶接ガンとの干渉や、不完全な溶接が
行なわれ、作業に支障を来たすことになる。
If an error occurs in the welding position as described above, in the worst case, interference between the vehicle structure and the welding gun or incomplete welding may occur, causing problems in the work.

本発明は、このような従来の問題車に鑑みて成されたも
のであり、走行軸の停止誤差が生じた場合であっても、
この走行軸の誤差をロボットの各関節軸を作動させるこ
とによって補正し、所望の位置に溶接を行なえるように
したロボットの制御装置の提供を目的とする。
The present invention has been made in view of such conventional problem vehicles, and even when a stopping error of the traveling axis occurs,
It is an object of the present invention to provide a robot control device that corrects the error in the traveling axis by operating each joint axis of the robot, thereby making it possible to perform welding at a desired position.

[発明の構成] (課題を解決するための手段) 前記目的を達成するための本発明は、ロボットの走行軸
及び各関節軸の夫々の移動量及び移動方向をチィーチン
グデータに基づいて演算する駆動演算手段と、前記ロボ
ットの各関節軸を駆動する各軸駆動手段と、当該各軸駆
動手段の移動量により前記ロボットの各関節軸の現在値
を検出する第1現在値検出手段と、前記駆動演算手段に
よって演算された各関節軸の移動量と当該第1現在値検
出f段から出力される現在値との偏差量を算出する第1
偏差景算出手段と、前記ロボットの走行軸を駆動する走
行軸駆動手段と、当該走行軸駆動手段の移動量により前
記ロボットの走行軸の現在値を検出する第2現在値検出
手段と、前記駆動演算手段によって演算された走行軸の
移動量と当該第2現在値検出手段から出力される現在値
との偏差量を算出する第2偏差量算出手段と、前記ロボ
ットの走行軸が停止したことを検出する停止状態検出手
段と、当該停止状態検出手段によって前記ロボットの走
行軸の停止が検出された場合には、前記第2(i差量算
出手段における偏差量に基づいて、前記第1偏差量算出
手段に与えるべき偏差量を演算する分割量演算手段とを
有することを特徴とするものである。
[Structure of the Invention] (Means for Solving the Problems) The present invention for achieving the above object calculates the amount of movement and direction of movement of the traveling axis and each joint axis of the robot based on teaching data. a drive calculation means, each axis driving means for driving each joint axis of the robot, a first current value detection means for detecting the current value of each joint axis of the robot based on the movement amount of each axis driving means; A first step for calculating the deviation amount between the movement amount of each joint axis calculated by the drive calculation means and the current value output from the first current value detection stage f.
a deviation scene calculation means, a traveling axis driving means for driving the traveling axis of the robot, a second current value detecting means for detecting the current value of the traveling axis of the robot based on the movement amount of the traveling axis driving means, and the driving a second deviation amount calculation means for calculating a deviation amount between the movement amount of the travel axis calculated by the calculation means and the current value output from the second current value detection means; When the stop state detection means detects the stop of the traveling axis of the robot, the first deviation amount is determined based on the deviation amount in the second (i difference amount calculation means). The method is characterized by comprising a division amount calculation means for calculating the amount of deviation to be given to the calculation means.

(作用) 以上のように構成された本発明のロボットの制御装置は
、次のように動作する。以下にこの動作を第1図に基づ
いて説明する。
(Operation) The robot control device of the present invention configured as described above operates as follows. This operation will be explained below based on FIG.

まず、駆動演算手段2は、ロボットの走行軸及び各関節
軸の夫々の移動量及び移動方向をティーチングデータに
基づいて演算し、この演算結果を第1偏差量算出部8及
び第2偏差量算出部9に出力する。
First, the drive calculation means 2 calculates the movement amount and movement direction of the traveling axis and each joint axis of the robot based on the teaching data, and the calculation results are used in the first deviation calculation unit 8 and the second deviation calculation unit 8. Output to section 9.

各軸駆動手段15は、第1偏差景算出手段8からの出力
に応じて各関節軸を駆動し、第1現在値検出手段11は
この各軸駆動手段15の移動量を第1偏差量算出手段8
にフィードバックする。これによって第1偏差量算出手
段8は駆動演算手段2から出力された移動量から前記フ
ィードバックされた移動量を差引いて偏差量を演算し、
その偏差量に応じた速度で各軸駆動手段15を作動させ
る。
Each axis drive means 15 drives each joint axis according to the output from the first deviation scene calculation means 8, and the first current value detection means 11 calculates a first deviation amount from the movement amount of each axis drive means 15. Means 8
Give feedback. As a result, the first deviation amount calculation means 8 calculates the deviation amount by subtracting the fed-back movement amount from the movement amount output from the drive calculation means 2,
Each shaft drive means 15 is operated at a speed corresponding to the amount of deviation.

一方、走行軸駆動手段25は、第2偏差量算出手段9か
らの出力に応じて走行軸を駆動し、第2現在値検出手段
21はこの走行軸駆動手段25の移動量を前記第2偏差
量算出手段9にフィードバックする。これによって第2
偏差量算出手段9は駆動演算手段2から出力された移動
量から前記フィードバックされた移動量を差引いて偏差
量を演算し、その偏差量に応じた速度で走行軸駆動手段
25を作動させる。
On the other hand, the traveling shaft driving means 25 drives the traveling shaft according to the output from the second deviation amount calculating means 9, and the second current value detecting means 21 calculates the amount of movement of the traveling shaft driving means 25 by the second deviation. Feedback is provided to the amount calculation means 9. This allows the second
The deviation amount calculation means 9 calculates the deviation amount by subtracting the fed-back movement amount from the movement amount output from the drive calculation means 2, and operates the running shaft drive means 25 at a speed corresponding to the deviation amount.

そして、停止状態検出手段2によって走行軸の停止状態
が検出されると、分割壁演算手段12は第2偏差致演算
手段9から停止時における現在位置と目標位置との偏差
量を入力し、この偏差量に基づいて各駆動軸の移動量を
演算してその演算結果を第1偏差址算出手段8に出力し
、各軸駆動手段15は前述したように、第1偏差景算出
手段8からの出力に応じて各関節軸を駆動し、第1現在
値検出手段11はこの各軸駆動手段15の移動量を前記
第1偏差量算出手段8にフィードバックする。これによ
って第1偏差量算出手段8は駆動演算手段2から出力さ
れた移動量から前記フィードバックされた移動量を差引
いて偏差量を演算し、その偏差量に応じた速度で各軸駆
動手段15を作動させる。
Then, when the stopped state of the traveling axis is detected by the stopped state detection means 2, the dividing wall calculation means 12 inputs the deviation amount between the current position and the target position at the time of stop from the second deviation calculation means 9, The amount of movement of each drive shaft is calculated based on the amount of deviation, and the calculation result is output to the first deviation area calculating means 8, and each axis driving means 15 receives the information from the first deviation area calculating means 8 as described above. Each joint axis is driven in accordance with the output, and the first current value detection means 11 feeds back the movement amount of each axis drive means 15 to the first deviation amount calculation means 8. As a result, the first deviation amount calculation means 8 calculates the deviation amount by subtracting the fed-back movement amount from the movement amount output from the drive calculation means 2, and drives each axis driving means 15 at a speed corresponding to the deviation amount. Activate.

したがって、走行軸の停止位置に誤差が生じても、その
誤差を補正すべく各駆動軸が移動することになり、走行
軸の停止位置如何に拘らずに常に所望の位置での作業を
行うことができることになる。
Therefore, even if an error occurs in the stopping position of the traveling axle, each drive shaft will move to correct the error, and work can always be performed at the desired position regardless of the stopping position of the traveling axis. will be possible.

(実施例) 以下に本発明の実施例を図面に基づいて詳細に説明する
(Example) Examples of the present invention will be described in detail below based on the drawings.

第2図は、本発明に係るロボットの制御装置の概略構成
図である。
FIG. 2 is a schematic configuration diagram of a robot control device according to the present invention.

制御装置1は、ロボット10全体の制御(速度指令、移
動量指令1移動方向指令等)を行なう駆動演算手段及び
停止状態検出手段としてのCPU2と、ロボット10の
溶接ポイントや停止位置く目標値)等を記憶するメモリ
3と、CPU2から出力されるロボット10の各関節軸
に関するデータ、走行軸に関するデータを夫々D/A変
換するロボット関節軸D/A変換器4.走行軸D/A変
換器5と、これらの変換器4.5に夫々接続されたアン
プ6.7とを有し、CPU2は、メモリ3に記憶されて
いる上記したような溶接に関するデータに基づいて、ロ
ボットの各関節軸及び走行軸の移動量及び移動方向など
を演算し、その演算結果をロボット関節軸D/A変換器
4.走行軸D/A変換器5に出力する。ロボット関節軸
D/A変換器4.走行軸D/A変換器5はこの演算結果
を受けて、この演算結果をアナログ量に変換してアンプ
6.7に出力することになる。
The control device 1 includes a CPU 2 as a drive calculation means and stop state detection means for controlling the entire robot 10 (speed command, movement amount command, movement direction command, etc.), and a CPU 2 as a stop state detection means for controlling the robot 10 as a whole (speed command, movement amount command, movement direction command, etc.), and a CPU 2 for controlling the welding point and stop position of the robot 10. and a robot joint axis D/A converter 4 for D/A converting the data regarding each joint axis of the robot 10 outputted from the CPU 2 and the data regarding the travel axis, respectively. It has a running axis D/A converter 5 and an amplifier 6.7 connected to each of these converters 4.5, and the CPU 2 performs a welding process based on the above-mentioned data regarding welding stored in the memory 3. The amount and direction of movement of each joint axis and traveling axis of the robot are calculated, and the calculation results are sent to the robot joint axis D/A converter 4. Output to the running axis D/A converter 5. Robot joint axis D/A converter4. The traveling axis D/A converter 5 receives this calculation result, converts the calculation result into an analog quantity, and outputs it to the amplifier 6.7.

このアンプ6は、ロボット10の各軸を駆動する図示し
ないモータに、アンプ7は、ロボット10の走行軸を駆
動するモータ20に接続され、ロボット10の各関節軸
及び走行軸はこのアンプ6゜7の出力に基づいて駆動さ
れる。尚、ロボット関節軸D/A変換器4.アンプ6、
ロボット10の各関節軸を駆動するモータによって各軸
駆動手段が構成され、走行軸D/A変換器5.アンプ7
゜モータ20によって走行軸駆動手段25が構成されて
いる。
This amplifier 6 is connected to a motor (not shown) that drives each axis of the robot 10, and the amplifier 7 is connected to a motor 20 that drives the traveling axis of the robot 10. Each joint axis and traveling axis of the robot 10 are connected to this amplifier 6°. It is driven based on the output of 7. In addition, the robot joint axis D/A converter 4. Amplifier 6,
Each axis driving means is constituted by a motor that drives each joint axis of the robot 10, and a traveling axis D/A converter 5. Amplifier 7
The motor 20 constitutes a traveling shaft drive means 25.

また、ロボット関節軸D/A変換器4及びアンプ6は、
各関節軸毎に個々に設けられており、例えば、関節軸が
4軸あれば、ロボット関節軸D/A変換器4及びアンプ
6はそれぞれ4台づつ設けられていることになる。
In addition, the robot joint axis D/A converter 4 and amplifier 6 are
They are provided individually for each joint axis. For example, if there are four joint axes, four robot joint axis D/A converters 4 and four amplifiers 6 are provided.

さらに、ロボット10の各関節軸の移動量を検出する第
1現在値検出手段としてのエンコーダ11は、第1偏差
量算出手段としてのロボット関節偏差量算出部8に接続
され、これによってCPU2から出力された各関節軸毎
の目標値と現在値との偏差量が算出される。また、走行
軸の移動量を。
Further, the encoder 11 as a first current value detection means for detecting the movement amount of each joint axis of the robot 10 is connected to a robot joint deviation amount calculation unit 8 as a first deviation amount calculation means, thereby outputting an output from the CPU 2. The amount of deviation between the target value and the current value for each joint axis is calculated. Also, the amount of movement of the traveling axis.

検出する第2現在値検出手段としてのエンコーダ21は
、第2偏差量算出手段としての走行軸偏差算出部9に接
続され、これによってCPU2から出力された走行軸の
目標値と現在値との偏差量が算出される。さらに、CP
U2とロボット関節軸D/A変換器4には、分割量演算
手段と°しての走行軸偏差分割回路12が接続され、こ
の走行軸偏差分割回路12には、設定器13が接続され
、この走行軸偏差分割回路12によって演算される分割
値が任意に設定される。この設定器13は、走行軸偏差
分割回路12に分割すべき量を作業者が任意に設定する
設定器である。また、走行軸偏差分割回路12は、走行
軸偏差量算出部9によって算出された偏差量の一部(分
割量)を、ロボット関節軸D/A変換器4に出力するも
のである。
The encoder 21, which serves as a second current value detection means, is connected to the running axis deviation calculation unit 9, which serves as a second deviation amount calculation means, and thereby detects the deviation between the target value of the running axis output from the CPU 2 and the current value. The amount is calculated. Furthermore, C.P.
A traveling axis deviation dividing circuit 12 serving as division amount calculation means is connected to U2 and the robot joint axis D/A converter 4, and a setting device 13 is connected to this traveling axis deviation dividing circuit 12. The division value calculated by this traveling axis deviation division circuit 12 is arbitrarily set. This setting device 13 is a setting device that allows an operator to arbitrarily set the amount to be divided into the traveling axis deviation dividing circuit 12. Further, the traveling axis deviation dividing circuit 12 outputs a part (divided amount) of the deviation amount calculated by the traveling axis deviation amount calculating section 9 to the robot joint axis D/A converter 4.

このように構成された本発明のロボットの制御装置は、
概略以下に記すような動作をする。
The robot control device of the present invention configured as described above has the following features:
The operation is roughly as described below.

例えば、CPU2は、ロボッ小10がA地点からB地点
に移動して溶接作業を行なう指令を受けると、CPU2
はメモリー3からティーチデータを入力し、走行軸D/
A変換器5にそのデータ(A地点からB地点に移動距離
に応じたパルス数)を出力し、アンプ7はこのデータに
基づいてモータ20を駆動させる。、このモータ20の
作動に伴なってエンコーダ21からパルスが出力され、
このパルスは走行軸偏差算出部9に送られ、走行軸偏差
算出部9では、CPU2がティーチデータに基づいて出
力したパルス数からこのエンコーダ21から出力された
パルスを減算し、走行軸が目標となる位置に到達したか
否かの判断をすることになる。また、走行軸偏差算出部
9はその減算結果をCPU2に出力し、CPU2は、こ
の減算結果を走行軸D/A変換器5に出力することにな
る。
For example, when the CPU 2 receives a command for the small robot 10 to move from point A to point B and perform welding work, the CPU 2
inputs the teach data from memory 3 and sets the travel axis D/
The data (the number of pulses according to the distance traveled from point A to point B) is output to the A converter 5, and the amplifier 7 drives the motor 20 based on this data. , pulses are output from the encoder 21 as the motor 20 operates,
This pulse is sent to the running axis deviation calculating unit 9, and the running axis deviation calculating unit 9 subtracts the pulse output from the encoder 21 from the number of pulses output by the CPU 2 based on the teach data, so that the running axis is set to the target. You will have to judge whether or not you have reached a certain position. Further, the running axis deviation calculation unit 9 outputs the subtraction result to the CPU 2, and the CPU 2 outputs this subtraction result to the running axis D/A converter 5.

そして、CPU2が走行軸偏差算出部9を介して走行軸
が停止状態にあることを検出すると、CPU2は、走行
軸偏差算出部9に残存しているパルス数から走行軸の目
標位置に対する偏差を算出し、走行軸分割回路12はこ
の偏差を〜設定器13によって設定された分割量だけロ
ボット関節軸D/A変換器4に出力する。これにより、
ロボット10の各関節軸はこの分割量ζ対応する分だけ
アンプ6によって駆動され、第2図のように、走行軸の
偏差がアームの移動によって補正され、規定の位置に溶
接作業を行なうことができることになる。
Then, when the CPU 2 detects that the traveling axis is in a stopped state via the traveling axis deviation calculating section 9, the CPU 2 calculates the deviation of the traveling axis from the target position from the number of pulses remaining in the traveling axis deviation calculating section 9. The traveling axis division circuit 12 outputs this deviation by the division amount set by the setting device 13 to the robot joint axis D/A converter 4. This results in
Each joint axis of the robot 10 is driven by the amplifier 6 by an amount corresponding to this division amount ζ, and as shown in Fig. 2, the deviation of the traveling axis is corrected by the movement of the arm, making it possible to perform welding work at a specified position. It will be possible.

次に、第3図の動作フローチャートに基づいて本発明の
ロボットの制御装置をさらに詳細に説明する。
Next, the robot control device of the present invention will be explained in more detail based on the operation flowchart of FIG.

このロボットの関節軸に関する制御についてのほとんど
の部分は従来の制御と全く同一である。
Most of the control regarding the joint axes of this robot is exactly the same as conventional control.

まず、CPU2は次の目標値を、(モリ3に記憶されて
いるティーチデータを読込み、この目標値に関するデー
タを選択して各関節軸の予想速度指令を算出する(ステ
ップ1,2)。次に、CPU2は、所定時間毎の速度指
令を算出し、この算出された速度指令に基づいて作業を
行なう部位のX。
First, the CPU 2 calculates the next target value (reads the teach data stored in the memory 3, selects data related to this target value, and calculates the expected speed command for each joint axis (steps 1 and 2).Next Then, the CPU 2 calculates a speed command for each predetermined period of time, and determines the position of X of the part to be worked on based on the calculated speed command.

Y、Z方向成分の速度指令を算出する(ステップ3.4
〉。そして、この算出したx、y、z方向成分の速度指
令に基づいて各軸毎の速度指令を算出し、CPU2は、
この算出結果をロボット関節軸D/A変換器4に出力し
、これがD/A変換された後アンプ6に出力されてロボ
ット10の各関節軸毎に設けられている夫々のモータを
駆動する(ステップ5)。そして、この夫々のモータに
はそのモータの移動量を検出するエンコーダ11が接続
されているが、CPU2は、これらのエンコーダ11の
検出値をロボット関節偏差算出部8を介してフィードバ
ックし、目標値と現在カウント値との偏差を演算しつつ
、ステップ3からステップ6までの処理を偏差が0にな
るまで行なう(ステップ6)。
Calculate speed commands for Y and Z direction components (step 3.4
〉. Then, the CPU 2 calculates a speed command for each axis based on the calculated speed commands of the x, y, and z direction components, and the CPU 2 calculates the speed command for each axis.
This calculation result is output to the robot joint axis D/A converter 4, and after being D/A converted, it is output to the amplifier 6 to drive each motor provided for each joint axis of the robot 10 ( Step 5). An encoder 11 that detects the amount of movement of the motor is connected to each motor, and the CPU 2 feeds back the detected values of these encoders 11 via the robot joint deviation calculation unit 8 and calculates the target value. While calculating the deviation between the current count value and the current count value, the processes from step 3 to step 6 are performed until the deviation becomes 0 (step 6).

以上の処理によって、ロボット10の各関節軸の移動速
度の演算と、位置設定の演算を行なっていることになる
Through the above processing, the movement speed of each joint axis of the robot 10 is calculated and the position setting is calculated.

また、走行軸の制御は、次のようにして行なわれる。Further, the control of the traveling axis is performed as follows.

CPU2は次の目標値をメモリ3に記憶されているティ
ーチデータから読込み、移動方向転換判別処理、即ち、
走行軸が停止状態にあるかどうかの判別を行なう。この
判別はエンコーダ21がらパルスが出力されているか否
かを判断することによって行なわれる(ステップ10.
11>。次に、CPU2は、走行軸の位置偏差分をロボ
ットの各関節軸に分割処理するモードが選択(このモー
ドの選択は、設定器13によって成されると考えて良い
。)されているか否かの判断をしくステップ12)、こ
のモードが選択されていなければ、次に、CPU2は、
この目標値に関するデータを選択して各関節軸の予想速
度指令を算出する所定時間毎の速度指令を算出し、この
算出結果を走行軸D/A変換器4に出力し、これがD/
A変換された後アンプ7に出力されてロボット10の走
行軸を駆動するモータ20を駆動する(ステップ13゜
14)。モータ20にはそのモータ20の移動量を検出
するエンコーダ21が接続されているが、CPU2は、
これらのエンコーダ21の検出値をフィードバックし、
目標値と現在カウント値との偏差を演算しつつ、ステッ
プ14からステップ15までの処理を偏差が0になるま
で行なう(ステップ15)。ステップ12において走行
軸の位置偏差分をロボットの各関節軸に分割処理するモ
ードが選択されている場合には、CPU2は設定器13
によって設定された分割型を設定しくステップ16)、
もしも走行軸の停止位置に偏差が生じた場合には、CP
U2は走行軸偏差算出部9の偏差量に基づいてロボット
10の関節のX軸方向の偏差を演算し、その演算値をロ
ボット関節軸D/A変換器4に出力し、ロボット10の
アームを所定角度移動させて走行軸に生じた偏差量を補
正することになる(ステップ17)。
The CPU 2 reads the next target value from the teach data stored in the memory 3, and performs a movement direction change determination process, that is,
Determine whether the traveling axis is in a stopped state. This determination is made by determining whether pulses are being output from the encoder 21 (step 10.
11>. Next, the CPU 2 determines whether a mode for dividing the positional deviation of the traveling axis into each joint axis of the robot has been selected (selection of this mode can be considered to be made by the setting device 13). Step 12), if this mode is not selected, then the CPU 2
Data regarding this target value is selected to calculate the expected speed command for each joint axis.The speed command is calculated every predetermined time, and this calculation result is output to the running axis D/A converter 4, which
After being converted into A, the signal is output to the amplifier 7 and drives the motor 20 that drives the traveling axis of the robot 10 (steps 13 and 14). An encoder 21 that detects the amount of movement of the motor 20 is connected to the motor 20, but the CPU 2
The detection values of these encoders 21 are fed back,
While calculating the deviation between the target value and the current count value, the processes from step 14 to step 15 are performed until the deviation becomes 0 (step 15). If the mode in which the positional deviation of the traveling axis is divided into each joint axis of the robot is selected in step 12, the CPU 2
Set the split type set by step 16),
If a deviation occurs in the stop position of the traveling axis, CP
U2 calculates the deviation of the joints of the robot 10 in the X-axis direction based on the deviation amount of the traveling axis deviation calculation unit 9, outputs the calculated value to the robot joint axis D/A converter 4, and changes the arm of the robot 10. The amount of deviation generated in the traveling axis is corrected by moving it by a predetermined angle (step 17).

このように、走行軸系で生じた誤差をロボットの関節軸
系で補正するよう(こすれば、走行軸のズレによるロボ
ット手首の法線ベクターを理想的なベクタ一方向に合わ
せることができる。
In this way, by correcting the error caused in the travel axis system using the joint axis system of the robot, the normal vector of the robot wrist due to the deviation of the travel axis can be aligned with the ideal vector in one direction.

また、この他の実施例としては、設定器13によって設
定する分割量は、各関節軸毎にパラメーターとして設定
することも考えられる。このようにすれば、ロボット関
節軸の補正追従度及び精度を可変とすることができ、走
行軸のキザミ時間の変更を可変とすることができ、さら
に良好な制御特性を与えることができる。
In another embodiment, the division amount set by the setting device 13 may be set as a parameter for each joint axis. In this way, the corrected follow-up degree and accuracy of the robot joint axes can be made variable, the change in the knurling time of the traveling axis can be made variable, and even better control characteristics can be provided.

なお、以上の実施例においては、走行軸がX軸方向に移
動可能となっているものを例示したが、Y方向に移動可
能な走行軸を有するロボットにおいても適用可能である
のはもちろんである。
In addition, in the above embodiment, a robot in which the traveling axis is movable in the X-axis direction is illustrated, but it is of course applicable to a robot having a traveling axis movable in the Y-direction. .

[発明の効果] 以上の説明により明らかなように、本発明によれば、走
行軸における停止位置の誤差をロボットの各関節軸を動
かすことによって補正し得るようにしたので、作業精度
を向上させることができるとともに、走行軸の移動方向
転換部分でも作業が可能となる。
[Effects of the Invention] As is clear from the above explanation, according to the present invention, the error in the stop position of the traveling axis can be corrected by moving each joint axis of the robot, thereby improving work accuracy. In addition to this, it is also possible to work on the part where the direction of movement of the traveling axis is changed.

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

第1図は、本発明に係るロボットの制御装置のブロック
図、第2図は、・本発明に係るロボットの制御装置の概
略構成図、第3図は、本発明に係るロボットの制御装置
の動作フローチャート、第4図は、従来のロボットの制
御装置の概略構成図、第5図は、従来のロボットの制御
装置の動作フローチャート、第6図は、従来のロボット
の制御装置の動作説明に供する図である。 1・・・制御装置、 2・・・CPU(駆動演算手段、停止状態検出手段〉3
・・・メモリ、 4・・・ロボット関節軸D/A変換器(各軸駆動手段)
、 5・・・走行軸D/A変換器(走行軸駆動手段)、6・
・・アンプ(各軸駆動手段)、 7・・・アンプ(走行軸駆動手段)、 8・・・ロボット関節偏差算出部(第1偏差量算出部)
、 9・・・走行軸偏差算出部(第2偏差量算出部)、11
・・・エンコーダ(第1現在値検出部)、12・・・走
行軸偏差分割回路(分割量演算手段)20・・・モータ
(走行軸駆動手段)
FIG. 1 is a block diagram of a robot control device according to the present invention, FIG. 2 is a schematic configuration diagram of a robot control device according to the present invention, and FIG. 3 is a block diagram of a robot control device according to the present invention. 4 is a schematic configuration diagram of a conventional robot control device, FIG. 5 is an operation flowchart of a conventional robot control device, and FIG. 6 provides an explanation of the operation of a conventional robot control device. It is a diagram. 1... Control device, 2... CPU (drive calculation means, stop state detection means) 3
...Memory, 4...Robot joint axis D/A converter (each axis driving means)
, 5... Traveling axis D/A converter (travel axis driving means), 6.
... Amplifier (each axis drive means), 7... Amplifier (traveling axis drive means), 8... Robot joint deviation calculation section (first deviation amount calculation section)
, 9... traveling axis deviation calculation section (second deviation amount calculation section), 11
...Encoder (first current value detection section), 12...Travel axis deviation division circuit (division amount calculation means) 20...Motor (travel axis drive means)

Claims (1)

【特許請求の範囲】 ロボットの走行軸及び各関節軸の夫々の移動量及び移動
方向をチィーチングデータに基づいて演算する駆動演算
手段と、 前記ロボットの各関節軸を駆動する各軸駆動手段と、 当該各軸駆動手段の移動量により前記ロボットの各関節
軸の現在値を検出する第1現在値検出手段と、 前記駆動演算手段によって演算された各関節軸の移動量
と当該第1現在値検出手段から出力される現在値との偏
差量を算出する第1偏差量算出手段と、 前記ロボットの走行軸を駆動する走行軸駆動手段と、 当該走行軸駆動手段の移動量により前記ロボットの走行
軸の現在値を検出する第2現在値検出手段と、 前記駆動演算手段によって演算された走行軸の移動量と
当該第2現在値検出手段から出力される現在値との偏差
量を算出する第2偏差量算出手段と、 前記ロボットの走行軸が停止したことを検出する停止状
態検出手段と、 当該停止状態検出手段によって前記ロボットの走行軸の
停止が検出された場合には、前記第2偏差量算出手段に
おける偏差量に基づいて、前記第1偏差量算出手段に与
えるべき偏差量を演算する分割量演算手段とを有するこ
とを特徴とするロボットの制御装置。
[Scope of Claims] Drive calculation means for calculating the movement amount and movement direction of a traveling axis and each joint axis of the robot based on teaching data; and each axis drive means for driving each joint axis of the robot. , first current value detection means for detecting the current value of each joint axis of the robot based on the movement amount of each axis driving means; and the movement amount of each joint axis calculated by the drive calculation means and the first current value. a first deviation amount calculation means for calculating the amount of deviation from the current value output from the detection means; a traveling axis driving means for driving the traveling axis of the robot; and a traveling axis of the robot based on the movement amount of the traveling axis driving means. a second current value detection means for detecting the current value of the axis; and a second current value detection means for calculating the deviation amount between the movement amount of the traveling axis calculated by the drive calculation means and the current value output from the second current value detection means. a stop state detection means for detecting that the traveling axis of the robot has stopped; and when the stop state detecting means detects that the traveling axis of the robot has stopped, the second deviation amount calculation means; A control device for a robot, comprising: division amount calculation means for calculating a deviation amount to be given to the first deviation amount calculation means based on the deviation amount in the amount calculation means.
JP63203436A 1988-08-16 1988-08-16 Robot controller Expired - Lifetime JP2506157B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63203436A JP2506157B2 (en) 1988-08-16 1988-08-16 Robot controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63203436A JP2506157B2 (en) 1988-08-16 1988-08-16 Robot controller

Publications (2)

Publication Number Publication Date
JPH0253586A true JPH0253586A (en) 1990-02-22
JP2506157B2 JP2506157B2 (en) 1996-06-12

Family

ID=16474064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63203436A Expired - Lifetime JP2506157B2 (en) 1988-08-16 1988-08-16 Robot controller

Country Status (1)

Country Link
JP (1) JP2506157B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0517030U (en) * 1991-08-15 1993-03-05 株式会社村上工務店 Scraper for roof snow removal equipment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6126111A (en) * 1984-07-16 1986-02-05 Shin Meiwa Ind Co Ltd Industrial robot

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6126111A (en) * 1984-07-16 1986-02-05 Shin Meiwa Ind Co Ltd Industrial robot

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0517030U (en) * 1991-08-15 1993-03-05 株式会社村上工務店 Scraper for roof snow removal equipment

Also Published As

Publication number Publication date
JP2506157B2 (en) 1996-06-12

Similar Documents

Publication Publication Date Title
US4904152A (en) Industrial robot
KR100301751B1 (en) Servo adjustment method and apparatus therefor
JP2524931B2 (en) Robot linear interpolation method
US5920169A (en) Servomotor control method
KR910009266B1 (en) Speed control method for industrial robot
JPS59163614A (en) Driving of industrial robot in coordinate system alien to robot dynamic motion
JP2786874B2 (en) Movable position control device
JPH0253586A (en) Control device for robot
JPS61190604A (en) Position control method for feedback control
JP2564722Y2 (en) Robot control device
JPH0639066B2 (en) Control method for industrial robot
JPS6324402A (en) Locus control device for robot
KR0161004B1 (en) Continuous travelling control method of multi-robot
JP2674120B2 (en) Robot control device
JP2505394B2 (en) Control method using acceleration change of industrial robot
JPH048485A (en) Teaching method of robot system with conveyor
JP2703099B2 (en) Conveyor tracking method for industrial robots
JPH048489A (en) Industrial robot
JP2734258B2 (en) Robot trajectory correction device
JPH07175521A (en) Controller for servomotor
JPS6120103A (en) Control device of robot
JP2816045B2 (en) Positioning control device
KR0154433B1 (en) Method for circular error compensation of robot
JPH06226663A (en) Robot positioning control device
JPS61147306A (en) Safety device of robot