JPH07200033A - Robot controller - Google Patents

Robot controller

Info

Publication number
JPH07200033A
JPH07200033A JP33826293A JP33826293A JPH07200033A JP H07200033 A JPH07200033 A JP H07200033A JP 33826293 A JP33826293 A JP 33826293A JP 33826293 A JP33826293 A JP 33826293A JP H07200033 A JPH07200033 A JP H07200033A
Authority
JP
Japan
Prior art keywords
robot
motor
speed
torque
time
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
JP33826293A
Other languages
Japanese (ja)
Other versions
JP3359720B2 (en
Inventor
Seiseki Maekawa
清石 前川
Tomohiro Miyazaki
友宏 宮崎
Masahiro Fujita
正弘 藤田
Mineo Higuchi
峰夫 樋口
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP33826293A priority Critical patent/JP3359720B2/en
Publication of JPH07200033A publication Critical patent/JPH07200033A/en
Application granted granted Critical
Publication of JP3359720B2 publication Critical patent/JP3359720B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

PURPOSE:To provide a robot controller capable of making the ability of a motor fully demonstrated at all times even when the acceleration starting spot and deceleration ending spot of a robot are any spots and shortening operation time. CONSTITUTION:Minimum acceleration time and deceleration time 33 are decided within a range for which the drive torques of respective axes in the case of defining a speed when the robot 5 reaches a middle point as a maximum speed computed by a maximum speed computing means 34 do not exceed an allowable maximum torque and a speed command curve 34 is generated based on the decided result and the maximum speed.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、モータを用いてロボ
ットを駆動するロボット制御装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a robot controller for driving a robot using a motor.

【0002】[0002]

【従来の技術】図11は従来のロボット制御装置を示す
構成図であり、図において、1はロボット5の加速開始
地点及び減速終了地点の座標が記憶され、例えば、a点
からb点に移動する移動命令を受信すると、a点及びb
点の座標を出力する教示点記憶手段、2は教示点記憶手
段1より出力されたa点及びb点の座標をロボット5の
関節座標に座標変換する座標変換手段、3は予めロボッ
ト5の全作業領域を複数の小領域に分割して、ロボット
5がある領域の点からある領域の点まで移動する際の速
度指令曲線の演算パラメータを各領域間の組み合わせご
とに記憶しておき、座標変換手段2からa点及びb点の
関節座標を出力されると、a点及びb点がそれぞれ属す
る領域間特有の演算パラメータに基づいて速度指令曲線
を演算する速度指令曲線演算手段、4は速度指令曲線演
算手段3により演算された速度指令曲線にしたがってロ
ボット5の各軸を駆動するモータを制御するモータ制御
手段である。因に、図13は速度指令曲線演算手段の動
作を示すフローチャートである。
2. Description of the Related Art FIG. 11 is a block diagram showing a conventional robot controller. In FIG. 11, reference numeral 1 stores coordinates of an acceleration start point and a deceleration end point of a robot 5, for example, moving from point a to point b. When receiving a move command to
Teaching point storage means for outputting the coordinates of the points, 2 is coordinate conversion means for converting the coordinates of the points a and b output from the teaching point storage means 1 into the joint coordinates of the robot 5, and 3 is all of the robot 5 in advance. The work area is divided into a plurality of small areas, and the calculation parameter of the speed command curve when the robot 5 moves from a point in a certain area to a point in a certain area is stored for each combination between the areas, and coordinate conversion is performed. When the joint coordinates of the points a and b are output from the means 2, the speed command curve calculating means 4 for calculating the speed command curve based on the calculation parameters peculiar to the regions to which the points a and b belong respectively, the speed command curve calculating means 4 It is a motor control unit that controls a motor that drives each axis of the robot 5 according to the speed command curve calculated by the curve calculation unit 3. Incidentally, FIG. 13 is a flow chart showing the operation of the speed command curve calculating means.

【0003】次に動作について説明する。まず、教示点
記憶手段1は移動命令を受信すると、その移動命令を解
析してどの点からどの点までロボット5を移動させるの
かを判断する。例えば、その移動命令がa点からb点ま
で移動する命令である場合、a点及びb点の座標を出力
する。そして、教示点記憶手段1からa点及びb点の座
標を出力された座標変換手段2は、a点及びb点の座標
をロボット5の関節座標に変換する。
Next, the operation will be described. First, when the teaching point storage means 1 receives a movement command, it analyzes the movement command and determines from which point the robot 5 should be moved. For example, if the move command is a command to move from point a to point b, the coordinates of point a and point b are output. Then, the coordinate conversion means 2 which has output the coordinates of the points a and b from the teaching point storage means 1 converts the coordinates of the points a and b into the joint coordinates of the robot 5.

【0004】次に、速度指令曲線演算手段3は、座標変
換手段2からa点及びb点の関節座標を出力されると、
a点及びb点がそれぞれ属する領域を検出し(ステップ
ST1)、そのa点及びb点が属する領域間特有の演算
パラメータ(最大慣性モーメントImax ,最高速度V
max ,許容最大トルクTmax )を選択して(ステップS
T2)、速度指令曲線を演算するが(ステップST
3)、速度指令曲線の演算パラメータは下記のように速
度指令曲線演算手段3に記憶されている。即ち、速度指
令曲線演算手段3は、ロボット5の全作業領域を複数の
小領域に分割し、ロボット5がある領域の点からある領
域の点まで移動する際の速度指令曲線の演算パラメータ
を各領域間の組み合わせごとに記憶しておく。例えば、
5つの領域に分割した場合、20通り((5−1)×5
=20)の演算パラメータを記憶しておく。ただし、こ
の例では、3種類の演算パラメータ(最大慣性モーメン
トImax ,最高速度Vmax ,許容最大トルクTmax )を
記憶しているので、パラメータの数としては60個(2
0通り×3種類=60個)となる。
Next, the speed command curve calculating means 3 outputs the joint coordinates of the points a and b from the coordinate converting means 2,
Regions to which the points a and b belong respectively are detected (step ST1), and calculation parameters (maximum moment of inertia I max , maximum velocity V) peculiar to the regions to which the points a and b belong are detected.
max , allowable maximum torque T max ) (step S
T2), the speed command curve is calculated (step ST
3), the calculation parameter of the speed command curve is stored in the speed command curve calculation means 3 as follows. That is, the speed command curve calculation means 3 divides the entire work area of the robot 5 into a plurality of small areas, and calculates the calculation parameters of the speed command curve when the robot 5 moves from a point in a certain area to a point in a certain area. It is stored for each combination between areas. For example,
When divided into 5 areas, 20 ways ((5-1) × 5
= 20) is stored. However, in this example, since three types of calculation parameters (maximum moment of inertia I max , maximum speed V max , and maximum allowable torque T max ) are stored, the number of parameters is 60 (2
0 ways x 3 types = 60).

【0005】ここで、速度指令曲線は、図12に示すよ
うに、時間と速度の関係で示され、一般に台形状になる
が、各種演算パラメータ間には、下記の関係が成立す
る。 Tmax =Imax ×Vmax /t1 ・・・(1) Tmax =Imax ×Vmax /t2 ・・・(2) ただし、同一の小領域であっても座標が異なれば、ロボ
ット5の姿勢は若干変化するので、各座標における慣性
モーメントI等が異なり、本来、加速開始地点及び減速
終了地点が少しでも異なれば演算パラメータの値が変わ
るが、この例では、加速開始地点が属する領域と減速終
了地点が属する領域間の演算パラメータをある値で代表
させているので、モータの能力を越えることがないよう
にその代表値が設定される。つまり、各領域間ごとにモ
ータの負荷が一番大きい地点を基準にして演算パラメー
タが設定される。従って、他の地点では、負荷が一番大
きい地点に比べてモータの負荷が小さくなるので、当該
演算パラメータによればモータの能力に余裕が残ること
になる。
Here, the speed command curve is shown by the relationship between time and speed as shown in FIG. 12, and generally has a trapezoidal shape, but the following relationships are established among various calculation parameters. T max = I max × V max / t1 (1) T max = I max × V max / t2 (2) However, even in the same small area, if the coordinates are different, the robot 5 Since the posture changes slightly, the moment of inertia I, etc. at each coordinate is different, and if the acceleration start point and the deceleration end point are slightly different, the value of the calculation parameter changes, but in this example, the acceleration start point is different from the area to which the acceleration start point belongs. Since the calculation parameter between the regions to which the deceleration end point belongs is represented by a certain value, the representative value is set so as not to exceed the motor capacity. That is, the calculation parameter is set based on the point where the motor load is the largest between the respective regions. Therefore, at other points, the load of the motor is smaller than that at the point where the load is the largest, and therefore, there is a margin in the capacity of the motor according to the calculation parameter.

【0006】因に、速度指令曲線は、上記のようにし
て、演算パラメータが選択されると、式(1)、式
(2)からそれぞれ加速時間t1、減速時間t2を求め
ることができるので、これら加速時間t1等から求める
ことができる(図12参照)。
Incidentally, in the speed command curve, when the calculation parameter is selected as described above, the acceleration time t1 and the deceleration time t2 can be obtained from the equations (1) and (2), respectively. It can be obtained from these acceleration times t1 and the like (see FIG. 12).

【0007】このようにして、速度指令曲線が演算され
ると、モータ制御手段4がその速度指令曲線にしたがっ
てロボット5の各軸を駆動するモータを制御し、ロボッ
ト5を移動命令通りに移動させ、一連の処理を終了させ
るが、図14を用いてモータ制御手段4についてもう少
し詳細に説明する。因に、図14において、11は速度
指令曲線に基づく速度指令値V*を積分してロボット5
の位置指令値θr を発生する積分器、12はロボット5
の位置指令値θr からロボット5の実位置θa を減算す
る減算器、13は減算器12の減算結果に比例定数を乗
算して速度指令値ωr を発生する比例制御器、14は速
度指令値ωr からロボットの実速度ωa を減算する減算
器、15は減算器14の減算結果に比例定数を乗算して
電流指令値ir1を発生する比例制御器、16は減算器1
4の減算結果の積分値に比例した電流指令値ir2を発生
する積分制御器、17は電流指令値ir1と電流指令値i
r2を加算して電流指令値ir を出力する加算器である。
When the speed command curve is calculated in this way, the motor control means 4 controls the motors that drive the respective axes of the robot 5 according to the speed command curve to move the robot 5 according to the movement command. A series of processing is ended, but the motor control means 4 will be described in more detail with reference to FIG. Incidentally, in FIG. 14, 11 indicates the robot 5 by integrating the speed command value V * based on the speed command curve.
Integrator for generating the position command value θ r of the robot 5
Subtractor 13 proportional controller for generating a subtractor 12 subtraction result to the proportional speed command value constant by multiplying the omega r of 14 rate for subtracting the actual position theta a robot 5 from the position command value theta r of subtractor from command value omega r subtracting the actual speed omega a of the robot 15 is proportional controller for generating a current command value i r1 is multiplied by a proportionality constant to the subtraction result of the subtracter 14, 16 a subtracter 1
An integral controller that generates a current command value i r2 proportional to the integrated value of the subtraction result of 4, and 17 is a current command value i r1 and a current command value i r2.
It is an adder that adds r2 and outputs a current command value i r .

【0008】また、18は電流指令値ir の絶対値がモ
ータの最大電流の絶対値を越えた場合、モータの最大電
流に制限する電流指令リミッタ、19は電流指令リミッ
タ18の出力である電流指令値ir *にモータの実電流i
a が一致するようにモータの電流を制御する電流制御
系、20はモータの実電流ia に比例したトルクTe
発生するモータ、21はトルクTe に重力トルクTg
摩擦トルクTf を加算する加算器である。
Further, 18 is a current command limiter for limiting the maximum current of the motor when the absolute value of the current command value i r exceeds the absolute value of the maximum current of the motor, and 19 is an output of the current command limiter 18. The command value i r * is the actual motor current i
A current control system for controlling the current of the motor so that a is matched, 20 is a motor that generates torque T e proportional to the actual current i a of the motor, and 21 is gravity torque T g and friction torque T f in addition to torque T e. Is an adder that adds

【0009】モータ制御手段4は、上記のように構成さ
れているので、速度指令曲線に基づく速度指令値V*か
らロボット5の位置指令値θr を求め、ロボット5の実
位置θa がその位置指令値θr に一致するようにモータ
20の実電流ia を制御することになるが、例えば、ロ
ボット5が鉛直に固定されたベース22(図15参照)
に対して、図16に示すように、ロボット5が実線の位
置から上方に移動(+Z方向)して点線の位置に停止し
た場合と、ロボット5が点線の位置から下方に移動(−
Z方向)して実線の位置に停止した場合とでは、停止中
のモータ20の実電流ia が相違する。
Since the motor control means 4 is constructed as described above, the position command value θ r of the robot 5 is obtained from the speed command value V * based on the speed command curve, and the actual position θ a of the robot 5 is calculated as follows. The actual current i a of the motor 20 is controlled so as to match the position command value θ r . For example, the base 22 with the robot 5 fixed vertically (see FIG. 15) is used.
On the other hand, as shown in FIG. 16, when the robot 5 moves upward from the position indicated by the solid line (+ Z direction) and stops at the position indicated by the dotted line, and when the robot 5 moves downward from the position indicated by the dotted line (-
The actual current i a of the stopped motor 20 is different between when the motor 20 is stopped in the Z direction) and stopped at the position indicated by the solid line.

【0010】その理由は、まず、+Z方向に移動して目
標地点に到達する場合、ロボット5は重力mgと摩擦力
Fに逆らって移動することになるので、外乱は下記のよ
うになる。 外乱=−mg−F (mg,F>0) ・・・(3) 一方、−Z方向に移動して目標地点に到達する場合、ロ
ボット5は摩擦力Fに逆らって移動する(重力mgは移
動を援助する方向に働く)ことになるので、外乱は下記
のようになる。 外乱=−mg+F (mg,F>0) ・・・(4)
The reason is that, first, when the robot 5 moves in the + Z direction to reach the target point, the robot 5 moves against the gravity mg and the frictional force F, and the disturbance is as follows. Disturbance = −mg−F (mg, F> 0) (3) On the other hand, when the robot 5 moves in the −Z direction to reach the target point, the robot 5 moves against the frictional force F (gravity mg is It works in the direction of assisting movement), so the disturbance is as follows. Disturbance = −mg + F (mg, F> 0) (4)

【0011】従って、外乱は、下記に示すように、ロボ
ット5が下降するときより上昇するときの方が大きくな
るので、当然、電流指令値ir はロボットが下降すると
きより上昇するときの方が大きくなる。 |−mg−F|>|−mg+F| ・・・(5) ところが、積分制御器16は、ロボット5が停止して
も、即ち、減算器14の出力が零になっても、過去の来
歴を出力するので、積分制御器16はロボット5が下降
して停止した場合より上昇して停止した場合の方が大き
い電流指令値ir2を出力する。これにより、モータの実
電流ia は、ロボット5が下降して停止した場合より上
昇して停止した場合の方が大きくなる。
Therefore, since the disturbance becomes larger when the robot 5 rises than when it descends, the current command value i r naturally rises when the robot 5 descends as shown below. Grows larger. | -Mg-F |> | -mg + F | (5) However, in the integration controller 16, even if the robot 5 stops, that is, even if the output of the subtractor 14 becomes zero, the past history Therefore, the integral controller 16 outputs a larger current command value i r2 when the robot 5 moves up and stops than when it descends and stops. As a result, the actual current i a of the motor becomes larger when the robot 5 rises and stops than when the robot 5 descends and stops.

【0012】なお、上記従来例では、モータの全作業領
域を複数の小領域に分割し、小領域間の組み合わせごと
に演算パラメータを設定するものについて示したが、同
様の技術が特公平2−55803号公報に開示されてい
る。
In the above-mentioned conventional example, the whole work area of the motor is divided into a plurality of small areas, and the calculation parameter is set for each combination between the small areas. It is disclosed in Japanese Patent No. 55803.

【0013】[0013]

【発明が解決しようとする課題】従来のロボット制御装
置は以上のように構成されているので、各領域間ごとに
モータの負荷が一番大きい地点を基準にして演算パラメ
ータを設定しなければならず、そのため他の地点では負
荷が一番大きい地点に比べてモータの負荷が小さくなる
ことから、当該演算パラメータではモータの能力に余裕
が生じてしまい、その結果、モータの能力を十分に発揮
させることができず、動作時間を十分に短縮することが
できない問題点があった。また、ロボットが停止するに
至るまでの移動方向にかからわず、ロボットが停止して
いる間は重力を支えるトルクさえあればその位置を保持
することができるが、ロボットが下降して停止したとき
よりロボットが上昇して停止したときの方が、停止中の
電流指令値が大きくなってしなうため、必要以上に大き
な定格電流を有するモータを選定しなければならず、コ
ストが増大する問題点があった。
Since the conventional robot controller is constructed as described above, it is necessary to set the calculation parameter based on the point where the load of the motor is the largest for each area. Therefore, at other points, the load on the motor becomes smaller than at the point where the load is the largest, so there is a margin in the capacity of the motor with the relevant calculation parameters, and as a result, the capacity of the motor is fully exerted. However, there is a problem that the operation time cannot be shortened sufficiently. Also, regardless of the movement direction until the robot stops, while the robot is stopped, its position can be held as long as there is a torque that supports gravity, but the robot descended and stopped. When the robot rises and stops, the current command value during stop does not increase, so it is necessary to select a motor with a larger rated current than necessary, which increases cost. was there.

【0014】請求項1の発明は上記のような問題点を解
消するためになされたもので、ロボットの加速開始地点
及び減速終了地点がいかなる地点であっても常にモータ
の能力を最大限に発揮させ、動作時間を短縮できるロボ
ット制御装置を得ることを目的とする。
The invention of claim 1 has been made to solve the above problems, and always maximizes the capability of the motor regardless of the acceleration start point and deceleration end point of the robot. It is an object of the present invention to provide a robot control device that can reduce the operation time.

【0015】請求項2の発明は、請求項1の発明より更
に動作時間を短縮できるロボット制御装置を得ることを
目的とする。
It is an object of the invention of claim 2 to obtain a robot controller capable of further shortening the operation time as compared with the invention of claim 1.

【0016】請求項3及び請求項4の発明は、上記請求
項1の発明の目的に加え、モータの実効トルクが定格ト
ルクを越えることのないようモータを保護することがで
きるロボット制御装置を得ることを目的とする。
In addition to the object of the invention of claim 1, the inventions of claims 3 and 4 provide a robot controller capable of protecting the motor so that the effective torque of the motor does not exceed the rated torque. The purpose is to

【0017】請求項5及び請求項6の発明は、ロボット
の動作が頻繁になることによって実効トルクが大きくな
るのを防止して、ロボットの実効電流が定格電流を越え
ない範囲内でモータの能力を最大限に発揮させ、動作時
間を短縮できるロボット制御装置を得ることを目的とす
る。
According to the fifth and sixth aspects of the present invention, the effective torque is prevented from increasing due to the frequent movements of the robot, and the capacity of the motor is kept within a range in which the effective current of the robot does not exceed the rated current. It is an object of the present invention to obtain a robot control device that can maximize its performance and reduce the operation time.

【0018】請求項7及び請求項8の発明は、ロボット
が停止している間の電流指令値を低減し、定格電流の小
さいモータを選定できるロボット制御装置を得ることを
目的とする。
It is an object of the inventions of claims 7 and 8 to obtain a robot controller capable of reducing a current command value while the robot is stopped and selecting a motor having a small rated current.

【0019】[0019]

【課題を解決するための手段】請求項1の発明に係るロ
ボット制御装置は、ロボットが中点に到達したときの速
度が最高速度演算手段により演算された最高速度である
とした場合の各軸の駆動トルクが許容最大トルクを越え
ない範囲内で最小の加速時間及び減速時間を決定し、そ
の決定結果と最高速度に基づいて速度指令曲線を生成す
るようにしたものである。
According to a first aspect of the present invention, there is provided a robot control apparatus, wherein each speed of the axes when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculating means. The minimum acceleration time and deceleration time are determined within a range in which the drive torque of does not exceed the maximum allowable torque, and a speed command curve is generated based on the determination result and the maximum speed.

【0020】請求項2の発明に係るロボット制御装置
は、加速時間及び減速時間を決定した後、最高速度演算
手段により演算された最高速度に基づいて加速区間及び
減速区間における何れかの地点において再度加速時間及
び減速時間を決定するようにしたものである。
In the robot controller according to the second aspect of the present invention, after determining the acceleration time and the deceleration time, the robot is re-established at any point in the acceleration section and the deceleration section based on the maximum speed calculated by the maximum speed calculation means. The acceleration time and the deceleration time are determined.

【0021】請求項3の発明に係るロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の許容最大
トルクの値を下方修正し、越えていないと判定された場
合にはその許容最大トルクの値を上方修正するようにし
たものである。
In the robot controller according to the third aspect of the invention, when the comparing means determines that the load amount of the motor exceeds the allowable load amount, the value of the maximum allowable torque of each axis of the robot is corrected downward. However, when it is determined that the maximum torque is not exceeded, the value of the maximum allowable torque is corrected upward.

【0022】請求項4の発明に係るロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の最高速度
の値を下方修正し、越えていないと判定された場合には
その最高速度の値を上方修正するようにしたものであ
る。
In the robot controller according to the invention of claim 4, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum speed value of each axis of the robot is corrected downward. When it is determined that the maximum speed is not exceeded, the maximum speed value is corrected upward.

【0023】請求項5の発明に係るロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根に比例するようにロボットの各区間における動作時間
を演算し、その動作時間によって、速度指令曲線生成手
段により生成された速度指令曲線の動作時間を修正する
ようにしたものである。
A robot controller according to a fifth aspect of the present invention calculates the operation time in each section of the robot so as to be proportional to the square root of the operation angle calculated by the operation angle calculation means, and the speed command is calculated according to the operation time. The operation time of the speed command curve generated by the curve generating means is corrected.

【0024】請求項6の発明に係るロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根とロボットの各区間における慣性モーメントの積に比
例するようにロボットの各区間における動作時間を演算
し、その動作時間によって、速度指令曲線生成手段によ
り生成された速度指令曲線の動作時間を修正するように
したものである。
According to a sixth aspect of the present invention, there is provided a robot control device, wherein the operation time in each section of the robot is proportional to the product of the square root of the operation angle calculated by the operation angle calculating means and the moment of inertia in each section of the robot. The operation time of the speed command curve generated by the speed command curve generating means is corrected by calculation.

【0025】請求項7の発明に係るロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクより大
きくなる範囲内で電流指令値発生手段が発生する電流指
令値を制限するようにしたものである。
In the robot controller according to the invention of claim 7, when the speed command value generated by the speed command value generating means is zero, the current command value is generated within a range in which the output torque of the motor becomes larger than the gravity torque. The current command value generated by the means is limited.

【0026】請求項8の発明に係るロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクと摩擦
トルクとの差分より大きくなる範囲内で電流指令値発生
手段が発生する電流指令値を制限するようにしたもので
ある。
In the robot controller according to the present invention, when the speed command value generated by the speed command value generating means is zero, the output torque of the motor becomes larger than the difference between the gravity torque and the friction torque. In this, the current command value generated by the current command value generating means is limited.

【0027】[0027]

【作用】請求項1の発明におけるロボット制御装置は、
ロボットが中点に到達したときの速度が最高速度演算手
段により演算された最高速度であるとした場合の各軸の
駆動トルクが許容最大トルクを越えない範囲内で最小の
加速時間及び減速時間を決定する加減速時間決定手段を
設けたことにより、ロボットの加速開始地点及び減速終
了地点がいかなる地点であっても常にモータの能力を最
大限に発揮できる速度指令曲線を生成できるようにな
る。
In the robot controller according to the invention of claim 1,
If the speed when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculation means, set the minimum acceleration time and deceleration time within the range where the drive torque of each axis does not exceed the maximum allowable torque. By providing the acceleration / deceleration time determining means for determining, it becomes possible to always generate the speed command curve capable of maximizing the performance of the motor regardless of the acceleration start point and the deceleration end point of the robot.

【0028】請求項2の発明におけるロボット制御装置
は、加速時間及び減速時間を決定した後、最高速度演算
手段により演算された最高速度に基づいて加速区間及び
減速区間における何れかの地点において再度加速時間及
び減速時間を決定するようにしたことにより、モータの
能力を発揮させるのにより最適な速度指令曲線が得られ
るようになる。
In the robot controller according to the second aspect of the present invention, after determining the acceleration time and the deceleration time, the robot is accelerated again at any point in the acceleration section and the deceleration section based on the maximum speed calculated by the maximum speed calculation means. By determining the time and the deceleration time, it becomes possible to obtain the optimum speed command curve by making full use of the capability of the motor.

【0029】請求項3の発明におけるロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の許容最大
トルクの値を下方修正し、越えていないと判定された場
合にはその許容最大トルクの値を上方修正する許容最大
トルク修正手段を設けたことにより、モータの実効トル
クが定格トルクを越えることのないようモータが保護さ
れる。
In the robot controller according to the third aspect of the present invention, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the value of the maximum allowable torque of each axis of the robot is corrected downward. If the maximum torque is determined not to exceed, the motor is protected so that the effective torque of the motor does not exceed the rated torque by providing the maximum allowable torque correction means for upwardly correcting the value of the maximum allowable torque. .

【0030】請求項4の発明におけるロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の最高速度
の値を下方修正し、越えていないと判定された場合には
その最高速度の値を上方修正する最高速度修正手段を設
けたことにより、モータの実効トルクが定格トルクを越
えることのないようモータが保護される。
In the robot controller according to the invention of claim 4, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum speed value of each axis of the robot is corrected downward, When it is determined that the maximum speed is not exceeded, the maximum speed correction means for upwardly correcting the maximum speed value is provided, so that the motor is protected so that the effective torque of the motor does not exceed the rated torque.

【0031】請求項5の発明におけるロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根に比例するようにロボットの各区間における動作時間
を演算し、その動作時間によって、速度指令曲線生成手
段により生成された速度指令曲線の動作時間を修正する
動作時間修正手段を設けたことにより、ロボットが頻繁
に動作しても、ロボットの実効電流が定格電流を越えな
い範囲内でモータの能力を最大限に発揮できるようにな
る。
According to the fifth aspect of the invention, the robot controller calculates the operation time in each section of the robot so as to be proportional to the square root of the operation angle calculated by the operation angle calculation means, and the speed command curve is calculated according to the operation time. By providing the operation time correction means for correcting the operation time of the speed command curve generated by the generation means, even if the robot frequently operates, the motor's ability within the range in which the effective current of the robot does not exceed the rated current You will be able to maximize your ability.

【0032】請求項6の発明におけるロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根とロボットの各区間における慣性モーメントの積に比
例するようにロボットの各区間における動作時間を演算
し、その動作時間によって、速度指令曲線生成手段によ
り生成された速度指令曲線の動作時間を修正する動作時
間修正手段を設けたことにより、ロボットが頻繁に動作
しても、ロボットの実効電流が定格電流を越えない範囲
内でモータの能力を最大限に発揮できるようになる。
According to a sixth aspect of the present invention, the robot controller calculates the operation time in each section of the robot so as to be proportional to the product of the square root of the operation angle calculated by the operation angle calculating means and the moment of inertia in each section of the robot. However, by providing the operation time correction means for correcting the operation time of the speed command curve generated by the speed command curve generation means according to the operation time, the effective current of the robot is rated even if the robot operates frequently. It is possible to maximize the capacity of the motor within the range that does not exceed the current.

【0033】請求項7の発明におけるロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクより大
きくなる範囲内で電流指令値発生手段が発生する電流指
令値を制限する電流制限手段を設けたことにより、ロボ
ット停止時のモータの実電流が低減される。
In the robot controller according to the invention of claim 7, when the speed command value generated by the speed command value generating means is zero, the current command value generating means is within a range in which the output torque of the motor becomes larger than the gravity torque. By providing the current limiting means for limiting the current command value generated by, the actual current of the motor when the robot is stopped is reduced.

【0034】請求項8の発明におけるロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクと摩擦
トルクとの差分より大きくなる範囲内で電流指令値発生
手段が発生する電流指令値を制限する電流制限手段を設
けたことにより、ロボット停止時のモータの実電流が低
減される。
In the robot controller according to the present invention, when the speed command value generated by the speed command value generating means is zero, the output torque of the motor is within a range in which the output torque is larger than the difference between the gravity torque and the friction torque. Since the current limiting means for limiting the current instruction value generated by the current instruction value generating means is provided, the actual current of the motor when the robot is stopped is reduced.

【0035】[0035]

【実施例】【Example】

実施例1.以下、この発明の一実施例を図について説明
する。図1はこの発明の実施例1によるロボット制御装
置を示す構成図であり、図において、従来のものと同一
符号は同一または相当部分を示すので説明を省略する。
31はロボット5の各軸の最高速度Vmaxiと許容最大ト
ルクTmaxiを記憶する記憶手段、32は記憶手段31に
より記憶された最高速度Vmaxiでロボット5が加速開始
地点から減速終了地点まで移動した場合の移動時間tt
i をロボット5の各軸ごとに演算するとともに、その演
算した移動時間tti のなかで最大の移動時間ttmax
を要してロボット5が加速開始地点から加速終了地点ま
で移動した場合の最高速度Vi をロボット5の各軸ごと
に演算する最高速度演算手段である。
Example 1. An embodiment of the present invention will be described below with reference to the drawings. 1 is a block diagram showing a robot control apparatus according to a first embodiment of the present invention. In the figure, the same reference numerals as those of the conventional one indicate the same or corresponding portions, and the description thereof will be omitted.
Reference numeral 31 is a storage means for storing the maximum speed V maxi and allowable maximum torque T maxi of each axis of the robot 5, 32 is the maximum speed V maxi stored by the storage means 31, and the robot 5 moves from the acceleration start point to the deceleration end point. Travel time tt
i is calculated for each axis of the robot 5, and the maximum movement time tt max among the calculated movement times tt i is calculated.
It is a maximum speed calculation means for calculating the maximum speed V i for each axis of the robot 5 when the robot 5 moves from the acceleration start point to the acceleration end point.

【0036】また、33はロボット5が中点に到達した
ときの速度が最高速度演算手段32により演算された最
高速度Vi であるとした場合の各軸の駆動トルクTi
許容最大トルクTmaxiを越えない範囲内で最小の加速時
間t1及び減速時間t2を決定する加減速時間決定手
段、34は加減速時間決定手段33の決定結果(加速時
間t1、減速時間t2)及び最高速度演算手段32によ
り演算された最高速度Vi に基づいて速度指令曲線を生
成する速度指令曲線生成手段である。因に、図2は加減
速時間決定手段の動作を示すフローチャートである。
Further, 33 is a drive torque T i of each axis when the speed when the robot 5 reaches the midpoint is the maximum speed V i calculated by the maximum speed calculation means 32. Acceleration / deceleration time determination means for determining the minimum acceleration time t1 and deceleration time t2 within a range not exceeding maxi , 34 is a determination result (acceleration time t1, deceleration time t2) of the acceleration / deceleration time determination means 33, and maximum speed calculation means. The speed command curve generating means generates a speed command curve based on the maximum speed V i calculated by 32. Incidentally, FIG. 2 is a flowchart showing the operation of the acceleration / deceleration time determining means.

【0037】次に動作について説明する。まず、従来の
ものと同様に、教示点記憶手段1は移動命令を受信する
と、その移動命令を解析してどの点からどの点までロボ
ット5を移動させるのかを判断する。例えば、その移動
命令がa点からb点まで移動する命令である場合、a点
及びb点の座標を出力する。そして、教示点記憶手段1
からa点及びb点の座標を出力された座標変換手段2
は、a点及びb点の座標をロボット5の関節座標si
i に変換する。
Next, the operation will be described. First, similarly to the conventional one, when the teaching point storage means 1 receives a movement command, the teaching point storage means 1 analyzes the movement command and determines from which point the robot 5 should be moved. For example, if the move command is a command to move from point a to point b, the coordinates of point a and point b are output. Then, the teaching point storage means 1
Coordinate conversion means 2 in which the coordinates of the points a and b are output from
Represents the coordinates of the points a and b by the joint coordinates s i of the robot 5,
Convert to e i .

【0038】これにより、最高速度演算手段32は、下
記に示すように、ロボット5の関節座標si ,ei と、
記憶手段31に記憶されている各軸の最高速度Vmaxi
基づいて、各軸ごとの移動時間tti を演算する。 tti =|ei −si |/Vmaxi ・・・(6) さらに、最高速度演算手段32は、下記に示すように、
演算した各軸ごとの移動時間tti のなかで最大の移動
時間ttmax (移動に最も時間の要する軸の移動時間)
を要してロボット5が加速開始地点から減速終了地点ま
で移動した場合の最高速度Vi を各軸ごとに演算する。 Vi =(ei −si )/ttmax ・・・(7)
As a result, the maximum speed computing means 32, as shown below, calculates the joint coordinates s i and e i of the robot 5,
Based on the maximum speed V maxi of each axis stored in the storage means 31, the moving time tt i for each axis is calculated. tt i = | e i −s i | / V maxi (6) Further, the maximum speed calculation means 32, as shown below,
The maximum movement time tt max among the calculated movement times tt i for each axis (the movement time of the axis that requires the longest time for movement)
Therefore, the maximum speed V i when the robot 5 moves from the acceleration start point to the deceleration end point is calculated for each axis. V i = (e i −s i ) / tt max (7)

【0039】次に、加減速時間決定手段33は、ロボッ
ト5が中点(加速開始地点と減速終了地点の中間点)に
到達したときの各軸の速度が図3に示すように最高速度
iであるとした場合の各軸の駆動トルクTi が許容最
大トルクTmaxiを越えない範囲内で最小の加速時間t1
及び減速時間t2をn自由度ロボットの運動方程式に基
づいて決定する。n自由度ロボットの運動方程式 T=M・q+h ・・・(8) ここで、Mはロボットの位置から特定される慣性行列、
qは各軸の変位、hはロボットの位置と速度から特定さ
れるコリオリ力、重力及び摩擦力のベクトルである。な
お、慣性行列M及びベクトルhは、ロボットの位置等か
ら計算されるが、かかる計算は周知の事項であるので、
説明を省略する。
Next, the acceleration / deceleration time determining means 33 determines the speed of each axis when the robot 5 reaches the midpoint (the midpoint between the acceleration start point and the deceleration end point) as shown in FIG. The minimum acceleration time t1 within the range in which the drive torque T i of each axis when i is i does not exceed the maximum allowable torque T maxi
And deceleration time t2 are determined based on the equation of motion of the n-degree-of-freedom robot. Equation of motion of n-degree-of-freedom robot T = M · q + h (8) Here, M is an inertia matrix specified from the position of the robot,
q is the displacement of each axis, and h is the vector of Coriolis force, gravity and friction force specified from the position and velocity of the robot. The inertia matrix M and the vector h are calculated from the position of the robot and the like. Since such calculation is a well-known matter,
The description is omitted.

【0040】加速時間t1及び減速時間t2の決定につ
いてもう少し具体的に説明すると、加速時及び減速時の
第i軸の駆動トルクT1i,T2iは、スムージングフィル
タの影響を無視し、図3の台形パターンを速度指令曲線
と考えると、下記のようになる。 T1i=Mi ・Vi /t1 +hi =(Mi1・V1 +・・・+Min・Vn )/t1+hi ・・・(9) T2i=−Mi ・Vi /t2 +hi =−(Mi1・V1 +・・・+Min・Vn )/t2+hi ・・・(1
0) また、加速時及び減速時の駆動トルクT1i,T2iがそれ
ぞれ許容最大トルクTmaxiを越えないという条件から、
下記に示すように、それぞれn個の不等式が得られる。 −Tmaxi≦T1i≦Tmaxi(ただし、i=0,1,・・・n) ・・・(11) −Tmaxi≦T2i≦Tmaxi(ただし、i=0,1,・・・n) ・・・(12)
The determination of the acceleration time t1 and the deceleration time t2 will be described more concretely. The driving torques T 1i and T 2i of the i-th axis during acceleration and deceleration ignore the influence of the smoothing filter and are shown in FIG. Considering the trapezoidal pattern as a speed command curve, it becomes as follows. T 1i = M i · V i / t 1 + h i = (M i1 · V 1 + ··· + M in · V n) / t1 + h i ··· (9) T 2i = -M i · V i / t 2 + h i = − (M i1 · V 1 + ... + M in · V n ) / t2 + h i ... (1
0) Further, from the condition that the driving torques T 1i and T 2i during acceleration and deceleration do not exceed the allowable maximum torque T maxi , respectively,
As shown below, n inequalities are obtained respectively. -T maxi ≤T 1i ≤T maxi (where i = 0,1, ... n) (11) -T maxi ≤T 2i ≤T maxi (where i = 0,1, ... n) ... (12)

【0041】そこで、加速開始地点における慣性行列M
及びベクトルhを式(9)に代入した場合に、駆動トル
クT1iが式(11)のn個の不等式を全て満足する範囲
内で最小の加速時間t1(ただし、t1は正の値であ
る。)を演算する(ステップST11)。説明の便宜
上、当該加速時間t1をt1aとする。また、中点おける
慣性行列M及びベクトルhを式(9)に代入した場合
に、駆動トルクT1iが式(11)のn個の不等式を全て
満足する範囲内で最小の加速時間t1(ただし、t1は
正の値である。)を演算する(ステップST11)。説
明の便宜上、当該加速時間t1をt1cとする。そして、
加速開始地点を基準にして演算した加速時間t1aと、中
点を基準にして演算した加速時間t1cのうちの大きい方
の値を加速時間t1として決定する(ステップST1
2)。このように、加速開始地点と中点を基準にしてそ
れぞれ加速時間t1a,t1cを演算し、大きい方の値を加
速時間t1として決定する理由は、ロボットの移動によ
ってロボットの姿勢が変化するので、負荷の大きい方の
地点を基準にして演算した加速時間t1を選択しなけれ
ば、モータに過負荷が発生するからである。
Therefore, the inertia matrix M at the acceleration start point
And the vector h are substituted into the equation (9), the minimum acceleration time t1 (where t1 is a positive value) within a range in which the driving torque T 1i satisfies all n inequalities of the equation (11). Is calculated (step ST11). For convenience of explanation, the acceleration time t1 is defined as t1a . Further, when the inertia matrix M at the midpoint and the vector h are substituted into the equation (9), the minimum acceleration time t1 (however, within the range in which the driving torque T 1i satisfies all the n inequalities of the equation (11) , T1 are positive values) (step ST11). For convenience of explanation, the acceleration time t1 is set to t1c . And
The larger value of the acceleration time t 1a calculated based on the acceleration start point and the acceleration time t 1c calculated based on the midpoint is determined as the acceleration time t1 (step ST1).
2). As described above, the reason why the acceleration times t 1a and t 1c are calculated based on the acceleration start point and the midpoint and the larger value is determined as the acceleration time t1 is that the posture of the robot changes as the robot moves. Therefore, unless the acceleration time t1 calculated based on the point with the larger load is selected, the motor is overloaded.

【0042】減速時間t2についても、上記と同様にし
て、減速終了地点及び中点における慣性行列Mとベクト
ルhをそれぞれ式(10)に代入した場合に、駆動トル
クT2iが式(12)のn個の不等式を全て満足する範囲
内で最小の減速時間t2(ただし、t2は正の値であ
る)を演算し(ステップST13)、大きい方の値を減
速時間t3として決定する(ステップST14)。
Also for the deceleration time t2, when the inertia matrix M and the vector h at the deceleration end point and the midpoint are respectively substituted into the equation (10), the driving torque T 2i becomes the equation (12). The minimum deceleration time t2 (where t2 is a positive value) is calculated within the range that satisfies all n inequalities (step ST13), and the larger value is determined as the deceleration time t3 (step ST14). .

【0043】そして、速度指令曲線生成手段34が、加
減速時間決定手段33により決定された加速時間t1と
減速時間t2及び最高速度演算手段32により演算され
た最高速度Vi に基づいて速度指令曲線を生成し(図3
参照)、モータ制御手段4がその速度指令曲線したがっ
てロボット5の各軸を駆動するモータを制御する。
Then, the speed command curve generation means 34 causes the speed command curve based on the acceleration time t1 and the deceleration time t2 determined by the acceleration / deceleration time determination means 33 and the maximum speed V i calculated by the maximum speed calculation means 32. (Fig. 3
The motor control means 4 controls the motor that drives each axis of the robot 5 according to the speed command curve.

【0044】以上のように、実施例1によれば、ロボッ
ト5は移動命令通りに加速開始地点から減速終了地点ま
で移動することになるが、上記のようにして、加速時間
t1及び減速時間t2が決定されるので、全ての軸の駆
動トルクは許容最大トルクTmaxiを越えることがなく、
しかも少なくとも1つの軸の駆動トルクの最大値が許容
最大トルクTmaxiとなるような加減速時間が得られる。
As described above, according to the first embodiment, the robot 5 moves from the acceleration start point to the deceleration end point according to the movement command, but as described above, the acceleration time t1 and the deceleration time t2. Is determined, the drive torques of all axes do not exceed the maximum allowable torque T maxi ,
Moreover, the acceleration / deceleration time is obtained such that the maximum value of the drive torque of at least one shaft becomes the maximum allowable torque T maxi .

【0045】実施例2.上記実施例1では、速度指令曲
線が台形パターンから生成される場合について示した
が、カム曲線等の他の曲線から速度指令曲線が生成され
る場合でもよく、同様の効果を奏する。
Example 2. In the first embodiment described above, the case where the speed command curve is generated from the trapezoidal pattern has been described, but the speed command curve may be generated from another curve such as a cam curve, and the same effect is obtained.

【0046】実施例3.上記実施例1では、加速時間t
1と減速時間t2を一度だけ決定するものについて示し
たが、スムージングの影響を考慮すべく、図4に示すよ
うに、実施例1の方法を用いて、加速時間t1と減速時
間t2を初期決定した後(ただし、加速時間t1と減速
時間t2は初期的に決定されればよく、実施例2の本質
的な部分ではないので、必ずしも実施例1の方法を用い
ることなく、例えば上記従来例のように決定してもよ
い)、加速区間及び減速区間における何れかの地点にお
いて最高速度演算手段32により演算された最高速度V
i に基づいて再度加速時間t1及び減速時間t2を決定
するようにしてもよい。
Example 3. In the first embodiment, the acceleration time t
1 and the deceleration time t2 are only determined once, the acceleration time t1 and the deceleration time t2 are initially determined using the method of the first embodiment as shown in FIG. 4 in order to consider the effect of smoothing. (However, since the acceleration time t1 and the deceleration time t2 may be initially determined and are not an essential part of the second embodiment, the method of the first embodiment is not necessarily used and, for example, the above-mentioned conventional example is used. The maximum speed V calculated by the maximum speed calculation means 32 at any point in the acceleration section and the deceleration section.
The acceleration time t1 and the deceleration time t2 may be determined again based on i .

【0047】即ち、実施例1の方法で加速時間t1と減
速時間t2を初期決定することにより、加速終了地点及
び減速開始地点を特定する。そして、加速開始地点と加
速終了地点を基準にし、上記実施例1と同様にして加速
時間t1を決定する(ステップST16〜18)。一
方、減速時間t2については、減速開始地点と減速終了
地点を基準にし、上記実施例1と同様にして決定する
(ステップST19〜20)。なお、速度指令曲線の生
成は上記実施例1と同様であるため説明を省略する。
That is, the acceleration end point and the deceleration start point are specified by initially determining the acceleration time t1 and the deceleration time t2 by the method of the first embodiment. Then, based on the acceleration start point and the acceleration end point, the acceleration time t1 is determined in the same manner as in the first embodiment (steps ST16 to ST18). On the other hand, the deceleration time t2 is determined in the same manner as in the first embodiment with reference to the deceleration start point and the deceleration end point (steps ST19 to 20). The generation of the speed command curve is the same as that in the first embodiment, and the description thereof is omitted.

【0048】以上のように、実施例3によれば、加速時
間t1と減速時間t2を繰り返し設定し直すので、実施
例1よりもきめ細かく設定することができ、その結果、
実施例1よりも更に動作時間を短縮することができる。
As described above, according to the third embodiment, the acceleration time t1 and the deceleration time t2 are repeatedly set, so that the setting can be made more finely than in the first embodiment, and as a result,
The operation time can be further shortened as compared with the first embodiment.

【0049】実施例4.上記実施例3では、加速時間t
1と減速時間t2を初期設定した後、一度だけ加速時間
t1と減速時間t2を設定し直したものについて示した
が、2回以上設定し直してもよい。
Example 4. In the third embodiment, the acceleration time t
Although the case where the acceleration time t1 and the deceleration time t2 are reset once only after the initial setting of 1 and the deceleration time t2 has been shown, they may be reset twice or more.

【0050】実施例5.上記実施例3,4では、加速時
間t1と減速時間t2を繰り返し設定するものについて
示したが、スムージングの影響を考慮した慣性行列M及
びベクトルh等を用いて加速時間t1と減速時間t2を
決定するようにしてもよい。
Example 5. In the third and fourth embodiments, the acceleration time t1 and the deceleration time t2 are repeatedly set. However, the acceleration time t1 and the deceleration time t2 are determined using the inertia matrix M and the vector h in consideration of the effect of smoothing. You may do it.

【0051】実施例6.図5はこの発明の実施例6によ
るロボット制御装置を示す構成図であり、図において、
35はモータの実効電流(負荷量)を検出する負荷量検
出手段、36は負荷量検出手段35により検出された実
効電流がモータの許容電流値(許容負荷量)を越えてい
るか否かを判定する比較手段、37は比較手段36によ
りモータの実効電流が許容電流値を越えていると判定さ
れた場合にはロボット5の各軸の許容最大トルクTmaxi
の値を下方修正し、越えていないと判定された場合には
その許容最大トルクTmaxiの値を上方修正する許容最大
トルク修正手段である。
Example 6. FIG. 5 is a block diagram showing a robot controller according to a sixth embodiment of the present invention.
Reference numeral 35 indicates a load amount detecting means for detecting an effective current (load amount) of the motor, and reference numeral 36 determines whether or not the effective current detected by the load amount detecting means 35 exceeds an allowable current value (allowable load amount) of the motor. When the comparison means 36 determines that the effective current of the motor exceeds the allowable current value, the reference numeral 37 indicates a maximum allowable torque T maxi of each axis of the robot 5.
Is a maximum allowable torque correction means for correcting the maximum allowable torque T maxi upwardly when it is determined that the maximum allowable torque T maxi is not exceeded .

【0052】次に動作について説明する。まず、負荷量
検出手段35がモータの実効電流を検出すると、比較手
段36は、下記に示すように、その実効電流とモータの
許容電流値を比較してその偏差を出力する。 比較手段36の出力=モータの許容電流値−実効電流 ・・・(13)
Next, the operation will be described. First, when the load amount detecting means 35 detects the effective current of the motor, the comparing means 36 compares the effective current with the allowable current value of the motor and outputs the deviation, as shown below. Output of comparison means 36 = motor allowable current value-effective current (13)

【0053】そして、許容最大トルク修正手段37は、
下記に示すように、比較手段36の出力に基づいて各軸
の許容最大トルクTmaxiの値を修正する。 許容最大トルクTmaxi=現在の許容最大トルクTmaxi +係数×比較手段36の出力 ・・・(14) ただし、式(14)を計算した結果、許容最大トルクT
maxiがモータの実現可能な最大トルクを越えてしまう場
合には、許容最大トルクTmaxiを実現可能な最大トルク
とする。
The allowable maximum torque correction means 37 is
As shown below, the value of the maximum allowable torque T maxi of each axis is corrected based on the output of the comparison means 36. Allowable maximum torque T maxi = current allowable maximum torque T maxi + coefficient × output of comparing means 36 (14) However, as a result of calculating equation (14), allowable maximum torque T maxi
When maxi exceeds the maximum achievable torque of the motor, the allowable maximum torque T maxi is set as the achievable maximum torque.

【0054】従って、モータの実効電流が許容電流値を
越える場合には、モータの許容最大トルクTmaxiが小さ
くなるように変更され、逆に、実効電流が許容電流値よ
り小さい場合にはモータの許容最大トルクTmaxiが大き
くなるように変更される。このため、モータの実効電流
が許容電流値を越える場合、即ち、モータの負荷が大き
いときはモータの許容最大トルクTmaxiが小さく設定さ
れ、速度指令曲線生成手段34は大きな駆動トルクを必
要としない速度指令曲線を生成することになり、その結
果、モータの実効電流を許容電流値以下に抑えることが
できる。なお、一般にモータの実効電流と実効トルクは
比例関係にあるので、実効電流を許容電流値以下に抑え
ることにより、モータの実効トルクも許容値以下に抑え
ることができる。
Therefore, when the effective current of the motor exceeds the allowable current value, the maximum allowable torque T maxi of the motor is changed to be small. Conversely, when the effective current is smaller than the allowable current value, the motor is reduced. The maximum allowable torque T maxi is changed to be large. Therefore, when the effective current of the motor exceeds the allowable current value, that is, when the load of the motor is large, the maximum allowable torque T maxi of the motor is set small, and the speed command curve generating means 34 does not require a large driving torque. The speed command curve is generated, and as a result, the effective current of the motor can be suppressed to the allowable current value or less. Since the effective current of the motor and the effective torque are generally in a proportional relationship, the effective torque of the motor can be suppressed to the allowable value or less by suppressing the effective current to the allowable current value or less.

【0055】一方、モータの実効電流が許容電流値を越
えない場合、即ち、モータの負荷が小さいときはモータ
の許容最大トルクTmaxiが大きく設定される。従って、
速度指令曲線生成手段34は大きな駆動トルクを必要と
する速度指令曲線を生成することになり、その結果、モ
ータが高速に回転してロボット5の移動が速くなる。
On the other hand, when the effective current of the motor does not exceed the allowable current value, that is, when the load of the motor is small, the maximum allowable torque T maxi of the motor is set large. Therefore,
The speed command curve generating means 34 generates a speed command curve that requires a large driving torque, and as a result, the motor rotates at high speed and the robot 5 moves faster.

【0056】実施例7.上記実施例6では、比較手段3
6の出力に基づいて許容最大トルクVmaxiを修正するも
のについて示したが、図6に示すように、比較手段36
の出力に基づいて最高速度修正手段38がロボット5の
各軸の最高速度Vmaxiを下記のように修正してもよく、
実施例6と同様の効果を奏する。 最高速度Vmaxi=現在の最高速度Vmaxi+係数×比較手段36の出力 ・・・(15)
Example 7. In the sixth embodiment, the comparison means 3
Although the maximum allowable torque V maxi is corrected based on the output of No. 6, the comparison means 36 is used as shown in FIG.
The maximum speed correction means 38 may correct the maximum speed V maxi of each axis of the robot 5 based on the output of
The same effect as the sixth embodiment is obtained. Maximum speed V maxi = current maximum speed V maxi + coefficient × output of comparison means 36 (15)

【0057】実施例8.上記実施例6及び実施例7で
は、許容最大トルクTmaxi又は最高速度Vmaxiの何れか
一方を修正するものについて示したが、双方とも修正す
るようにしてもよい。
Example 8. In the sixth and seventh embodiments described above, one of the allowable maximum torque T maxi and the maximum speed V maxi is corrected, but both may be corrected.

【0058】実施例9.上記実施例6〜8では、負荷量
検出手段35がモータの実効電流を検出し、比較手段3
6がその実効電流と許容電流値を比較するものについて
示したが、負荷量検出手段35がモータの温度を検出
し、比較手段36がその温度とモータの許容温度値を比
較するようにしてもよく、同様の効果を奏する。
Example 9. In the sixth to eighth embodiments, the load amount detecting means 35 detects the effective current of the motor, and the comparing means 3
6 shows that the effective current is compared with the allowable current value, the load amount detecting means 35 detects the temperature of the motor and the comparing means 36 compares the temperature with the allowable temperature value of the motor. Well, it has the same effect.

【0059】実施例10.図7はこの発明の実施例10
によるロボット制御装置を示す構成図であり、図におい
て、39はロボット5の移動命令に基づいて少なくとも
当該ロボット5の2区間分の動作角度θi を演算する動
作角度演算手段、40は動作角度演算手段39により演
算された動作角度θi の平方根に比例するようにロボッ
ト5の各区間における動作時間tpiを演算する動作時間
演算手段、41は速度指令曲線生成手段34により生成
された速度指令曲線の動作時間を動作時間演算手段40
により演算された動作時間tpiに修正する動作時間修正
手段である。
Example 10. FIG. 7 shows a tenth embodiment of the present invention.
3 is a block diagram showing a robot controller according to the present invention, in which 39 is a motion angle calculation means for calculating a motion angle θ i for at least two sections of the robot 5 based on a movement command of the robot 5, and 40 is a motion angle calculation. Operation time calculation means for calculating the operation time t pi in each section of the robot 5 so as to be proportional to the square root of the operation angle θ i calculated by the means 39, 41 is the speed command curve generated by the speed command curve generation means 34 The operating time of the operating time calculation means 40
It is an operation time correction means for correcting the operation time t pi calculated by

【0060】次に動作について説明する。まず、動作角
度演算手段39は、座標変換手段2から例えばロボット
5の3区間先までの関節座標を入力し、その関節座標に
基づいて3区間分の動作角度θi(i=a,b,cとす
る)を演算する。そして、動作時間演算手段40は、そ
の動作角度θi の平方根に比例するようにロボット5の
3区間分の動作時間tpiを演算することになるが、動作
時間tpiを演算する理由は下記の通りである。
Next, the operation will be described. First, the movement angle calculation means 39 inputs the joint coordinates from the coordinate conversion means 2 to, for example, three sections ahead of the robot 5, and based on the joint coordinates, the movement angles θ i (i = a, b, c)) is calculated. Then, the operation time calculation means 40 calculates the operation time t pi for three sections of the robot 5 so as to be proportional to the square root of the operation angle θ i. The reason for calculating the operation time t pi is as follows. Is the street.

【0061】一般に産業用ロボットで用いられるモータ
の性能は、許容最大トルクTmax と定格トルクTrated
で表され、定格トルクTrated に対する許容最大トルク
ma x の比をK(ロボットに使用されるモータではK=
3であることが多い)とすると、許容最大トルクTmax
と定格トルクTrated の間には、下記の関係が成立する
が、ロボットのモータは、許容最大トルクTmax と定格
トルクTrated に関して、以下に示す条件を満足する必
要がある。 Tmax =K×Trated ・・・(16) τ≦Tmax ・・・(17) (2t1×τ2 /ttotal1/2 =Trated ・・・(18) ここで、τは図9の加速時間及び減速時間の間のトルク
を示し、加速時間と減速時間は等しくt1とし、t
total は動作開始から終了までの時間である(以下、タ
クトタイムという)。因に、式(18)の左辺は、トル
クの2乗平均値である。
Generally, the performance of a motor used in an industrial robot is the maximum allowable torque T max and the rated torque T rated.
In the represented, the ratio of the allowable maximum torque T ma x the rated torque T rated motor used for K (robot K =
3), the maximum allowable torque T max
The following relationship is established between the rated torque T rated and the rated torque T rated , but the robot motor must satisfy the following conditions regarding the maximum allowable torque T max and the rated torque T rated . T max = K × T rated ... (16) τ ≦ T max ... (17) (2t1 × τ 2 / t total ) 1/2 = T rated ... (18) where τ is a figure 9 shows the torque between the acceleration time and the deceleration time, and the acceleration time and the deceleration time are equal to t1, and t
total is the time from the start to the end of the operation (hereinafter referred to as tact time). Incidentally, the left side of the equation (18) is the root mean square value of the torque.

【0062】ここで、式(17)と式(18)の等号が
成立するとして、式(16)を式(17)に代入し、整
理すると下記のようになる。 2t1/ttotal =1/K2 ・・・(19) そして、式(19)は加速時間及び減速時間の間にモー
タが許容最大トルクTmax を発生した場合、定格トルク
rated の条件式(18)を満足するためには、加速時
間及び減速時間の合計2t1が、区間全体の時間である
タクトタイムt total の1/K2 以下でなければならな
いことを示している。K=3の場合には、この割合は1
/9である。以下、この割合のことをデューティと呼
ぶ。
Here, the equal signs in equations (17) and (18) are
Substituting equation (16) into equation (17), the equation
The reason is as follows. 2t1 / ttotal = 1 / K2 (19) Then, the equation (19) is calculated during the acceleration time and the deceleration time.
Is the maximum allowable torque Tmax The rated torque
Trated In order to satisfy the conditional expression (18) of
A total of 2t1 of the interval and deceleration time is the time of the entire section.
Tact time t total 1 / K2 Must be
It shows that If K = 3, this ratio is 1
/ 9. Hereinafter, this ratio is called duty.
Bu

【0063】換言すると、ロボットのモータは、動作が
頻繁になるとデューティが大きくなるが、かかる場合で
もデューティが1/K2 以下にならなければならないこ
とを示しており、デューティが1/K2 を越えた場合、
最高速度Vmax を下げるかあるいは加速時間及び減速時
間を短くすれば対応できるが、この方法では、モータの
性能を最大限に引き出すことができない問題点がある。
そこで、モータの性能を最大限に引き出しつつデューテ
ィが1/K2 以下になるようにすべく、動作角度θi
平方根に比例するようにロボット5の3区間分の動作時
間tpiを演算するようにしている。
[0063] In other words, the motor of the robot work but increases the duty becomes frequent, duty even such a case has shown that should become 1 / K 2 or less, the duty 1 / K 2 If you exceed
Although it can be dealt with by lowering the maximum speed V max or shortening the acceleration time and the deceleration time, this method has a problem that the performance of the motor cannot be maximized.
Therefore, in order to maximize the motor performance and to keep the duty at 1 / K 2 or less, the operation time t pi for three sections of the robot 5 is calculated so as to be proportional to the square root of the operation angle θ i. I am trying.

【0064】以下、動作時間tpiの演算について詳述す
る。まず、タクトタイムttotal を3区間分の動作時間
pi(i=a,b,c)を用いて表すと下記のようにな
る。 ttotal =tpa+tpb+tpc ・・・(20) また、区間iの角加速度ωとすると、区間iの加速時間
1iは下記のようになる。 t1i=tpi/2−(tpi 2 /4−θi /ω)1/2 ・・(21)
The calculation of the operating time t pi will be described in detail below. First, the takt time t total is expressed as follows using the operation time t pi (i = a, b, c) for three sections. t total = t pa + t pb + t pc (20) Further, assuming the angular acceleration ω in the section i, the acceleration time t 1i in the section i is as follows. t 1i = t pi / 2- ( t pi 2/4-θ i / ω) 1/2 ·· (21)

【0065】さらに、加減速時のトルクと許容最大トル
クTmax が等しいとすれば、この動作周期中の実効トル
クτrms は下記のようになる。 τrms ={2Tmax 2 (t1a+t1b+t1c)/ttotal1/2 ・・・(22) ここで、実効トルクτrms とモータの定格トルクT
rated との関係を下記の通りであるとする。 τrms =S1/2rated ・・・(23) ただし、Sは(0<S≦1)の係数であり、計算の都合
で平方根をとっている。
Further, assuming that the torque during acceleration / deceleration is equal to the maximum allowable torque T max , the effective torque τ rms during this operation cycle is as follows. τ rms = {2T max 2 (t 1a + t 1b + t 1c ) / t total } 1/2 (22) Here, the effective torque τ rms and the motor rated torque T
The relationship with rated is as follows. τ rms = S 1/2 T rated (23) However, S is a coefficient of (0 <S ≦ 1), and the square root is taken for convenience of calculation.

【0066】式(23)に式(16)、式(21)、式
(22)を代入して係数Sについて整理すると下記のよ
うになる。 S=K2 /tpa+tpb+tpc{tpa−(tpa 2 −4θa /ω)1/2 +tpb−(tpb 2 −4θb /ω)1/2 +tpc−(tpc 2 −4θc /ω)1/2 } ・・・(24)
Substituting the equations (16), (21) and (22) into the equation (23) and rearranging the coefficient S is as follows. S = K 2 / t pa + t pb + t pc {t pa − (t pa 2 −4θ a / ω) 1/2 + t pb − (t pb 2 −4 θ b / ω) 1/2 + t pc − (t pc 2 -4θ c / ω) 1/2 } (24)

【0067】また、タクトタイムttotal に対する区間
1,2,3の動作時間tpa,tpb,tpcの比である時間
配分率ra ,rb ,rc (0≦ra ,rb ,rc ≦1)
を用いて各区間の動作時間を表すと下記のようになる。 tpa=ratotal ・・・(25) tpb=rbtotal ・・・(26) tpc=rctotal ・・・(27) ここで、式(24)に、式(20)、式(25)〜(2
7)を代入したものを時間配分率ra ,rb に関するス
ラック関数FS とすると、関数FS は下記のようにな
る。 FS (ra ,rb ) =K2 /tc {ttotal −(ra 2total 2 −4θa /ω)1/2 −(rb 2total 2 −4θb /ω)1/2 −(1−ra −rb2total 2 −4θc /ω)1/2 } ・・・(28)
[0067] Moreover, operation time t pa of sections 1, 2 and 3 for the tact time t total, t pb, t ratio for a period of time distribution rate r a of pc, r b, r c ( 0 ≦ r a, r b , R c ≦ 1)
The operating time of each section is expressed as below. In t pa = r a t total ··· (25) t pb = r b t total ··· (26) t pc = r c t total ··· (27) wherein, in formula (24), formula ( 20), formulas (25) to (2
If the value obtained by substituting 7) is the slack function F S regarding the time allocation rates r a and r b , the function F S is as follows. F S (r a, r b ) = K 2 / t c {t total - (r a 2 t total 2 -4θ a / ω) 1/2 - (r b 2 t total 2 -4θ b / ω) 1 / 2- (1-r a -r b ) 2 t total 2 −4 θ c / ω) 1/2 } (28)

【0068】極小値を求めるため、スラック関数FS
時間配分率ra ,rb について偏微分し、時間配分率r
a ,rb について解くと下記のようになる。 FS / ra =0 ・・・(29) FS / rb =0 ・・・(30) ra =θa 1/2/H ・・・(31) rb =θb 1/2/H ・・・(32) rc =1−ra −rb =θc 1/2/H ・・・(33) ただし、H=θa 1/2+θb 1/2+θc 1/2
In order to obtain the minimum value, the slack function F S is partially differentiated with respect to the time allocation rates r a and r b , and the time allocation rate r
Solving for a and r b gives: F S / r a = 0 (29) F S / r b = 0 (30) r a = θ a 1/2 / H (31) r b = θ b 1/2 / H ··· (32) r c = 1-r a -r b = θ c 1/2 / H ··· (33) However, H = θ a 1/2 + θ b 1/2 + θ c 1 / 2

【0069】従って、式(31)〜(33)から各軸の
時間配分率ra ,rb ,rc を求めることができるの
で、式(31)〜(33)から各軸の時間配分率ra
b ,rc を求めたのちその平均をとると全軸のスラッ
ク関数FS を小さくできる。即ち、モータの定格トルク
rated に対する実効トルクτrms の比率(余裕)を小
さくできる。そこで、かかる時間配分率ra ,rb ,r
c の平均値を式(25)〜(27)を代入し、モータの
定格トルクTrated に対する実効トルクτrms の比率
(余裕)を小さくできる動作時間tpa,tpb,tpcを算
出する。
[0069] Thus, equation (31) - Time to (33) of each axis allocation rate r a, r b, it is possible to determine the r c, formula (31) time distribution rate of each axis from - (33) r a ,
After obtaining r b and r c and then taking the average thereof, the slack function F S of all axes can be made small. That is, the ratio (margin) of the effective torque τ rms to the rated torque T rated of the motor can be reduced. So, take time allocation rate r a, r b, r
The equations (25) to (27) are substituted for the average value of c to calculate the operating times t pa , t pb , and t pc that can reduce the ratio (margin) of the effective torque τ rms to the rated torque T rated of the motor.

【0070】以上より動作時間tpiを求めることができ
るが、上記計算手順を簡単にまとめると下記のようにな
る。 1.3区間分の動作角度θi を用いて、式(29)、式
(30)に従い時間配分率ra ,rb ,rc を求める。
これをロボットの各軸について行う。 2.それぞれの区間における、各軸の時間配分率ra
b ,rc の平均を求める。 3.式(28)を1とおいて、各軸の動作角度θi と時
間配分率の平均を代入し、各軸ごとの区間全体の動作時
間について解く。 4.各軸ごとの区間全体の動作時間うち、最大のものを
区間全体の動作時間とする。 5.区間全体の動作時間に時間配分率の平均をかけたも
のを、各区間の動作時間とする。
From the above, the operating time t pi can be obtained, but the above calculation procedure is summarized as follows. Using the operation angles θ i for 1.3 sections, the time allocation rates r a , r b , and r c are calculated according to equations (29) and (30).
This is done for each axis of the robot. 2. In each section, time allocation rate r a of each axis,
The average of r b and r c is calculated. 3. The equation (28) is set to 1, and the operating angle θ i of each axis and the average of the time allocation rate are substituted, and the operating time of the entire section for each axis is solved. 4. Of the operating time of the entire section for each axis, the maximum is the operating time of the entire section. 5. The operating time of each section is obtained by multiplying the operating time of the entire section by the average of the time allocation rates.

【0071】最後に、動作時間修正手段41が、速度指
令曲線生成手段34により生成された速度指令曲線の動
作時間を、上記のように演算された動作時間tpiに修正
し、処理を終了する。以上のように、実施例10によれ
ば、動作時間を修正するので、ロボットの動作が頻繁に
なることによってモータの実効トルクが大きくなるのを
防止できるとともに、ロボットの実効電流が定格電流を
越えない範囲内でモータの能力を最大限に発揮させるこ
とができる。
Finally, the operation time correction means 41 corrects the operation time of the speed command curve generated by the speed command curve generation means 34 to the operation time t pi calculated as described above, and the processing ends. . As described above, according to the tenth embodiment, since the operation time is corrected, it is possible to prevent the effective torque of the motor from increasing due to the frequent operation of the robot, and the effective current of the robot exceeds the rated current. It is possible to maximize the capacity of the motor within the range that does not exist.

【0072】実施例11.上記実施例10では、動作角
度θi の平方根に比例するようにロボット5の各区間に
おける動作時間tpiを演算するものについて示したが、
図8に示すように、ロボット5の関節座標と動作角度θ
i からロボットの慣性モーメントIi を計算する慣性モ
ーメント演算手段42を設け、当該慣性モーメントIi
を考慮して動作時間tpiを演算するようにしてもよく、
慣性モーメントIi を考慮した分、実施例10よりも更
に動作時間の短縮が可能になる。この場合、式(31)
〜(33)は下記のように改められる。 ra =(Ia θa1/2 /H ・・・(34) rb =(Ib θb1/2 /H ・・・(35) rc =1−ra −rb =(Ic θc1/2 /H ・・・(36) ただし、H=(Ia θa1/2 +(Ib θb1/2
(Ic θc1/2
Example 11. In the tenth embodiment described above, the operation time t pi in each section of the robot 5 is calculated so as to be proportional to the square root of the operation angle θ i .
As shown in FIG. 8, the joint coordinates of the robot 5 and the motion angle θ
i inertia moment calculation means 42 for calculating the moment of inertia I i of the robot is provided from the moment of inertia I i
The operation time t pi may be calculated in consideration of
Since the moment of inertia I i is taken into consideration, the operation time can be further shortened as compared with the tenth embodiment. In this case, equation (31)
~ (33) is amended as follows. r a = (I a θ a ) 1/2 / H ··· (34) r b = (I b θ b) 1/2 / H ··· (35) r c = 1-r a -r b = (I c θ c ) 1/2 / H (36) where H = (I a θ a ) 1/2 + (I b θ b ) 1/2 +
(I c θ c ) 1/2

【0073】実施例12.図10はこの発明の実施例1
2によるロボット制御装置を示す構成図であり、図にお
いて、43は比例制御器13により発生された速度指令
値ωrが零である場合、モータ5の出力トルクが重力ト
ルクTg より大きくなる範囲内で電流指令リミッタ18
が発生する電流指令値ir *を制限する電流制限手段であ
る。なお、減算器12と比例制御器13から速度指令値
発生手段、減算器14と比例制御器15と積分制御器1
6と加算器17と電流指令リミッタ18から電流指令値
発生手段、電流制御系19から電流制御手段が構成され
ている。
Example 12 FIG. 10 is a first embodiment of the present invention.
2 is a configuration diagram showing a robot control device according to No. 2, in which 43 is a range in which the output torque of the motor 5 is larger than the gravity torque T g when the speed command value ωr generated by the proportional controller 13 is zero. With current command limiter 18
Is a current limiting means for limiting the current command value i r * generated by. It should be noted that the subtractor 12 and the proportional controller 13 include speed command value generating means, the subtractor 14, the proportional controller 15, and the integral controller 1.
6, the adder 17, and the current command limiter 18 constitute current command value generating means, and the current control system 19 constitutes current control means.

【0074】次に動作について説明する。従来の場合、
上述したように、過去の来歴を出力する積分制御器16
があるので、ロボット5が下降して停止した場合より上
昇して停止した場合の方が大きい電流指定値ir2を出力
し、その結果、モータの実電流ia は、ロボット5が下
降して停止した場合より上昇して停止した場合の方が大
きくなっていたが、ロボット5が停止するに至るまでの
移動方向にかかわらず、ロボット5が停止している間は
重力トルクTg を支えるトルクさえあればその位置を保
持することができる。
Next, the operation will be described. Conventionally,
As described above, the integral controller 16 that outputs the past history is output.
Therefore, when the robot 5 descends and stops, the designated current value i r2 that is larger when the robot 5 rises and stops is output. As a result, the actual current i a of the motor decreases when the robot 5 descends. Although it was larger when the robot 5 went up and stopped than when it stopped, a torque that supports the gravity torque T g while the robot 5 is stopped, regardless of the moving direction until the robot 5 stops. If you have it, you can keep its position.

【0075】そこで、この実施例12では、比例制御器
13が零の速度指令値ωr を発生すると、電流制限手段
43は、ロボット5が目標地点に到達して停止している
と判断し、ロボット5が停止するに至るまでの移動方向
にかかわらず一律に電流指令リミッタ18の電流制限値
を、重力トルクTg を支えるために必要な電流指定値i
r2を出力できる範囲内で小さい値に変更する。因に、電
流指令リミッタ18の電流制限値は、速度指令値ωr
零でないときは、モータの最大電流に設定され、速度指
令値ωr が零であるときは、モータの定格電流に設定さ
れる。これにより、ロボット5が上昇して停止した場合
でも、モータの定格電流以下に制御される。
Therefore, in the twelfth embodiment, when the proportional controller 13 generates a speed command value ω r of zero, the current limiting means 43 determines that the robot 5 has reached the target point and stopped, Regardless of the moving direction until the robot 5 stops, the current limit value of the current command limiter 18 is uniformly set to the specified current value i required to support the gravity torque T g.
Change to a smaller value within the range that r2 can be output. In this connection, the current limit value of the current command limiter 18, when the speed command value omega r is not zero, is set to the maximum current of the motor, when the speed command value omega r is zero, set to the rated current of the motor To be done. As a result, even if the robot 5 rises and stops, it is controlled to be equal to or less than the rated current of the motor.

【0076】実施例13.上記実施例12では、モータ
5の出力トルクが重力トルクTg より大きくなる範囲内
で電流指令リミッタ18が発生する電流指令値ir*
制限するものについて示したが、モータ5の出力トルク
が重力トルクTg と摩擦トルクTf との差分より大きく
なる範囲内で電流指令リミッタ18が発生する電流指令
値ir * を制限するようにしてもよい。つまり、停止時
の摩擦トルクTf が大きい場合、重力トルクTg から摩
擦トルクTf を差し引いた分の出力トルクがあれば、そ
の位置を保持できることに着目したものである。従っ
て、実施例13によれば、実施例12よりも停止時のモ
ータの実電流を小さくすることができるので、更に容量
の小さいモータを選定することができる。
Example 13 In the above-described twelfth embodiment, the current command value ir * generated by the current command limiter 18 is limited within a range in which the output torque of the motor 5 becomes larger than the gravity torque T g. The current command value i r * generated by the current command limiter 18 may be limited within a range larger than the difference between the torque T g and the friction torque T f . That is, when the friction torque T f at the time of stop is large, the position can be held if there is an output torque corresponding to the gravity torque T g minus the friction torque T f . Therefore, according to the thirteenth embodiment, the actual current of the motor at the time of the stop can be made smaller than that of the twelfth embodiment, so that the motor having a smaller capacity can be selected.

【0077】実施例14.上記実施例12,13では、
比例制御器13が発生する速度指令値ωr が零であるか
否かによって電流指令値ir * を制限するものについて
示したが、ロボット5の実速度ωa が零あるか否かによ
って電流指令値ir * を制限するようにしてもよい。
Example 14. In Examples 12 and 13 above,
Although the current command value i r * is limited depending on whether or not the speed command value ω r generated by the proportional controller 13 is zero, the current is determined depending on whether or not the actual speed ω a of the robot 5 is zero. The command value i r * may be limited.

【0078】[0078]

【発明の効果】以上のように、請求項1の発明によれ
ば、ロボットが中点に到達したときの速度が最高速度演
算手段により演算された最高速度であるとした場合の各
軸の駆動トルクが許容最大トルクを越えない範囲内で最
小の加速時間及び減速時間を決定し、その決定結果と最
高速度に基づいて速度指令曲線を生成するように構成し
たので、ロボットの加速開始地点及び減速終了地点がい
かなる地点であっても常にモータの能力を最大限に発揮
できる速度指令曲線を生成できるようになり、その結
果、ロボットの動作時間を短縮できる効果がある。
As described above, according to the invention of claim 1, each axis is driven when the speed when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculating means. The minimum acceleration time and deceleration time are determined within the range where the torque does not exceed the maximum allowable torque, and the speed command curve is generated based on the determination result and the maximum speed. It becomes possible to always generate a speed command curve that maximizes the performance of the motor regardless of the end point, and as a result, it is possible to shorten the operation time of the robot.

【0079】請求項2の発明によれば、加速時間及び減
速時間を決定した後、最高速度演算手段により演算され
た最高速度に基づいて加速区間及び減速区間における何
れかの地点において再度加速時間及び減速時間を決定す
るように構成したので、モータの能力を発揮させるのに
より最適な速度指令曲線が得られるようになり、その結
果、請求項1の発明より更に動作時間を短縮できる効果
がある。
According to the second aspect of the present invention, after the acceleration time and the deceleration time are determined, the acceleration time and the deceleration time are set again at any point in the acceleration section and the deceleration section based on the maximum speed calculated by the maximum speed calculation means. Since the deceleration time is determined, the optimum speed command curve can be obtained by exerting the ability of the motor, and as a result, the operation time can be further shortened as compared with the invention of claim 1.

【0080】請求項3の発明によれば、比較手段により
モータの負荷量が許容負荷量を越えていると判定された
場合にはロボットの各軸の許容最大トルクの値を下方修
正し、越えていないと判定された場合にはその許容最大
トルクの値を上方修正するように構成したので、モータ
の実効トルクが定格トルクを越えることがないようにモ
ータを保護できる効果がある。
According to the third aspect of the invention, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum allowable torque value of each axis of the robot is corrected downward and exceeds the maximum allowable torque value. If it is determined that the allowable maximum torque is not corrected, the value is corrected upward, so that the effective torque of the motor can be protected from exceeding the rated torque.

【0081】請求項4の発明によれば、比較手段により
モータの負荷量が許容負荷量を越えていると判定された
場合にはロボットの各軸の最高速度の値を下方修正し、
越えていないと判定された場合にはその最高速度の値を
上方修正するように構成したので、モータの実効トルク
が定格トルクを越えることがないようにモータを保護で
きる効果がある。
According to the invention of claim 4, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum speed value of each axis of the robot is corrected downward,
If it is determined that the maximum speed is not exceeded, the maximum speed value is corrected upward, so that the effective torque of the motor can be protected from exceeding the rated torque.

【0082】請求項5の発明によれば、動作角度演算手
段により演算された動作角度の平方根に比例するように
ロボットの各区間における動作時間を演算し、その動作
時間によって、速度指令曲線生成手段により生成された
速度指令曲線の動作時間を修正するように構成したの
で、ロボットが頻繁に動作しても、ロボットの実効電流
が定格電流を越えない範囲内でモータの能力を最大限に
発揮できるようになり、その結果、ロボットの動作時間
を短縮できる効果がある。
According to the invention of claim 5, the operation time in each section of the robot is calculated so as to be proportional to the square root of the operation angle calculated by the operation angle calculation means, and the speed command curve generation means is calculated by the operation time. Since it is configured to correct the operation time of the speed command curve generated by, even if the robot moves frequently, the maximum performance of the motor can be achieved within the range where the effective current of the robot does not exceed the rated current. As a result, there is an effect that the operation time of the robot can be shortened.

【0083】請求項6の発明によれば、動作角度演算手
段により演算された動作角度の平方根とロボットの各区
間における慣性モーメントの積に比例するようにロボッ
トの各区間における動作時間を演算し、その動作時間に
よって、速度指令曲線生成手段により生成された速度指
令曲線の動作時間を修正するように構成したので、ロボ
ットが頻繁に動作しても、ロボットの実効電流が定格電
流を越えない範囲内でモータの能力を最大限に発揮でき
るようになり、その結果、ロボットの動作時間を短縮で
きる効果がある。
According to the invention of claim 6, the operation time in each section of the robot is calculated so as to be proportional to the product of the square root of the operation angle calculated by the operation angle calculation means and the moment of inertia in each section of the robot, Since the operating time of the speed command curve generated by the speed command curve generating means is modified by the operation time, the effective current of the robot does not exceed the rated current even if the robot frequently operates. With this, it becomes possible to maximize the ability of the motor, and as a result, the operation time of the robot can be shortened.

【0084】請求項7の発明によれば、速度指令値発生
手段により発生された速度指令値が零である場合、モー
タの出力トルクが重力トルクより大きくなる範囲内で電
流指令値発生手段が発生する電流指令値を制限するよう
に構成したので、ロボット停止時のモータの実電流が低
減され、容量の小さいモータを選定することができる効
果がある。
According to the invention of claim 7, when the speed command value generated by the speed command value generating means is zero, the current command value generating means is generated within a range in which the output torque of the motor is larger than the gravity torque. Since the current command value to be controlled is limited, the actual current of the motor when the robot is stopped is reduced, and it is possible to select a motor having a small capacity.

【0085】請求項8の発明によれば、速度指令値発生
手段により発生された速度指令値が零である場合、モー
タの出力トルクが重力トルクと摩擦トルクとの差分より
大きくなる範囲内で電流指令値発生手段が発生する電流
指令値を制限するように構成したので、請求項7の発明
より更にロボット停止時のモータの実電流が低減され、
更に容量の小さいモータを選定することができる効果が
ある。
According to the invention of claim 8, when the speed command value generated by the speed command value generating means is zero, the output current of the motor is within the range in which the output torque is larger than the difference between the gravity torque and the friction torque. Since the current command value generated by the command value generating means is limited, the actual current of the motor when the robot is stopped is further reduced as compared with the invention of claim 7.
Further, there is an effect that a motor having a smaller capacity can be selected.

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

【図1】この発明の実施例1によるロボット制御装置を
示す構成図である。
FIG. 1 is a configuration diagram showing a robot controller according to a first embodiment of the present invention.

【図2】加減速時間決定手段の動作を示すフローチャー
トである。
FIG. 2 is a flowchart showing an operation of an acceleration / deceleration time determination means.

【図3】速度指令曲線を示すグラフ図である。FIG. 3 is a graph showing a speed command curve.

【図4】加減速時間決定手段の動作を示すフローチャー
トである。
FIG. 4 is a flowchart showing an operation of an acceleration / deceleration time determination means.

【図5】この発明の実施例6によるロボット制御装置を
示す構成図である。
FIG. 5 is a configuration diagram showing a robot controller according to a sixth embodiment of the present invention.

【図6】この発明の実施例7によるロボット制御装置を
示す構成図である。
FIG. 6 is a configuration diagram showing a robot controller according to a seventh embodiment of the present invention.

【図7】この発明の実施例10によるロボット制御装置
を示す構成図である。
FIG. 7 is a configuration diagram showing a robot controller according to a tenth embodiment of the present invention.

【図8】この発明の実施例11によるロボット制御装置
を示す構成図である。
FIG. 8 is a configuration diagram showing a robot controller according to an eleventh embodiment of the present invention.

【図9】3区間分の速度指令曲線を示すグラフ図であ
る。
FIG. 9 is a graph showing a speed command curve for three sections.

【図10】この発明の実施例12によるロボット制御装
置を示す構成図である。
FIG. 10 is a configuration diagram showing a robot controller according to a twelfth embodiment of the present invention.

【図11】従来のロボット制御装置を示す構成図であ
る。
FIG. 11 is a configuration diagram showing a conventional robot controller.

【図12】速度指令曲線を示すグラフ図である。FIG. 12 is a graph showing a speed command curve.

【図13】従来の速度指令曲線演算手段の動作を示すフ
ローチャートである。
FIG. 13 is a flowchart showing an operation of a conventional speed command curve calculation means.

【図14】従来のモータ制御手段を示す構成図である。FIG. 14 is a configuration diagram showing a conventional motor control means.

【図15】ロボットの動作を説明する説明図である。FIG. 15 is an explanatory diagram illustrating an operation of the robot.

【図16】ロボットの動作を説明する説明図である。FIG. 16 is an explanatory diagram illustrating an operation of the robot.

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

4 モータ制御手段 5 ロボット 12 減算器(速度指令値発生手段) 13 比例制御器(速度指令値発生手段) 14 減算器(電流指令値発生手段) 15 比例制御器(電流指令値発生手段) 16 積分制御器(電流指令値発生手段) 17 加算器(電流指令値発生手段) 18 電流指令リミッタ(電流指令値発生手段) 19 電流制御系(電流制御手段) 31 記憶手段 32 最高速度演算手段 33 加減速時間決定手段 34 速度指令曲線生成手段 35 負荷量検出手段 36 比較手段 37 許容最大トルク修正手段 38 最高速度修正手段 39 動作角度演算手段 40 動作時間演算手段 41 動作時間修正手段 43 電流制限手段 4 Motor Control Means 5 Robot 12 Subtractor (Speed Command Value Generation Means) 13 Proportional Controller (Speed Command Value Generation Means) 14 Subtractor (Current Command Value Generation Means) 15 Proportional Controller (Current Command Value Generation Means) 16 Integration Controller (current command value generation means) 17 Adder (current command value generation means) 18 Current command limiter (current command value generation means) 19 Current control system (current control means) 31 Storage means 32 Maximum speed calculation means 33 Acceleration / deceleration Time determination means 34 Speed command curve generation means 35 Load amount detection means 36 Comparison means 37 Allowable maximum torque correction means 38 Maximum speed correction means 39 Operating angle calculation means 40 Operating time calculation means 41 Operating time correction means 43 Current limiting means

─────────────────────────────────────────────────────
─────────────────────────────────────────────────── ───

【手続補正書】[Procedure amendment]

【提出日】平成6年6月2日[Submission date] June 2, 1994

【手続補正1】[Procedure Amendment 1]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】請求項6[Name of item to be corrected] Claim 6

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【手続補正2】[Procedure Amendment 2]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】発明の詳細な説明[Name of item to be amended] Detailed explanation of the invention

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、モータを用いてロボ
ットを駆動するロボット制御装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a robot controller for driving a robot using a motor.

【0002】[0002]

【従来の技術】図11は従来のロボット制御装置を示す
構成図であり、図において、1はロボット5の加速開始
地点及び減速終了地点の座標が記憶され、例えば、a点
からb点に移動する移動命令を受信すると、a点及びb
点の座標を出力する教示点記憶手段、2は教示点記憶手
段1より出力されたa点及びb点の座標をロボット5の
関節座標に座標変換する座標変換手段、3は予めロボッ
ト5の全作業領域を複数の小領域に分割して、ロボット
5がある領域の点からある領域の点まで移動する際の速
度指令曲線の演算パラメータを各領域間の組み合わせご
とに記憶しておき、座標変換手段2からa点及びb点の
関節座標を出力されると、a点及びb点がそれぞれ属す
る領域間特有の演算パラメータに基づいて速度指令曲線
を演算する速度指令曲線演算手段、4は速度指令曲線演
算手段3により演算された速度指令曲線にしたがってロ
ボット5の各軸を駆動するモータを制御するモータ制御
手段である。因に、図13は速度指令曲線演算手段の動
作を示すフローチャートである。
2. Description of the Related Art FIG. 11 is a block diagram showing a conventional robot controller. In FIG. 11, reference numeral 1 stores coordinates of an acceleration start point and a deceleration end point of a robot 5, for example, moving from point a to point b. When receiving a move command to
Teaching point storage means for outputting the coordinates of the points, 2 is coordinate conversion means for converting the coordinates of the points a and b output from the teaching point storage means 1 into the joint coordinates of the robot 5, and 3 is all of the robot 5 in advance. The work area is divided into a plurality of small areas, and the calculation parameter of the speed command curve when the robot 5 moves from a point in a certain area to a point in a certain area is stored for each combination between the areas, and coordinate conversion is performed. When the joint coordinates of the points a and b are output from the means 2, the speed command curve calculating means 4 for calculating the speed command curve based on the calculation parameters peculiar to the regions to which the points a and b belong respectively, the speed command curve calculating means 4 It is a motor control unit that controls a motor that drives each axis of the robot 5 according to the speed command curve calculated by the curve calculation unit 3. Incidentally, FIG. 13 is a flow chart showing the operation of the speed command curve calculating means.

【0003】次に動作について説明する。まず、教示点
記憶手段1は移動命令を受信すると、その移動命令を解
析してどの点からどの点までロボット5を移動させるの
かを判断する。例えば、その移動命令がa点からb点ま
で移動する命令である場合、a点及びb点の座標を出力
する。そして、教示点記憶手段1からa点及びb点の座
標を出力された座標変換手段2は、a点及びb点の座標
をロボット5の関節座標に変換する。
Next, the operation will be described. First, when the teaching point storage means 1 receives a movement command, it analyzes the movement command and determines from which point the robot 5 should be moved. For example, if the move command is a command to move from point a to point b, the coordinates of point a and point b are output. Then, the coordinate conversion means 2 which has output the coordinates of the points a and b from the teaching point storage means 1 converts the coordinates of the points a and b into the joint coordinates of the robot 5.

【0004】次に、速度指令曲線演算手段3は、座標変
換手段2からa点及びb点の関節座標を出力されると、
a点及びb点がそれぞれ属する領域を検出し(ステップ
ST1)、そのa点及びb点が属する領域間特有の演算
パラメータ(最大慣性モーメントImax ,最高速度V
max ,許容最大トルクTmax )を選択して(ステップS
T2)、速度指令曲線を演算するが(ステップST
3)、速度指令曲線の演算パラメータは下記のように速
度指令曲線演算手段3に記憶されている。即ち、速度指
令曲線演算手段3は、ロボット5の全作業領域を複数の
小領域に分割し、ロボット5がある領域の点からある領
域の点まで移動する際の速度指令曲線の演算パラメータ
を各領域間の組み合わせごとに記憶しておく。例えば、
5つの領域に分割した場合、25通り(5×5=25)
の演算パラメータを記憶しておく。ただし、この例で
は、3種類の演算パラメータ(最大慣性モーメントI
max ,最高速度Vmax ,許容最大トルクTmax )を記憶
しているので、パラメータの数としては75個(25通
り×3種類=75個)となる。
Next, the speed command curve calculating means 3 outputs the joint coordinates of the points a and b from the coordinate converting means 2,
Regions to which the points a and b belong respectively are detected (step ST1), and calculation parameters (maximum moment of inertia I max , maximum velocity V) peculiar to the regions to which the points a and b belong are detected.
max , allowable maximum torque T max ) (step S
T2), the speed command curve is calculated (step ST
3), the calculation parameter of the speed command curve is stored in the speed command curve calculation means 3 as follows. That is, the speed command curve calculation means 3 divides the entire work area of the robot 5 into a plurality of small areas, and calculates the calculation parameters of the speed command curve when the robot 5 moves from a point in a certain area to a point in a certain area. It is stored for each combination between areas. For example,
When divided into 5 areas, 25 ways (5 × 5 = 25)
The calculation parameter of is stored. However, in this example, three types of calculation parameters (maximum moment of inertia I
Since max , maximum speed V max , and allowable maximum torque T max are stored, the number of parameters is 75 (25 messages).
X 3 types = 75 pieces) .

【0005】ここで、速度指令曲線は、図12に示すよ
うに、時間と速度の関係で示され、一般に台形状になる
が、各種演算パラメータ間には、下記の関係が成立す
る。 Tmax =Imax ×Vmax /t1 ・・・(1) Tmax =Imax ×Vmax /t2 ・・・(2) ただし、同一の小領域であっても座標が異なれば、ロボ
ット5の姿勢は若干変化するので、各座標における慣性
モーメントI等が異なり、本来、加速開始地点及び減速
終了地点が少しでも異なれば演算パラメータの値が変わ
るが、この例では、加速開始地点が属する領域と減速終
了地点が属する領域間の演算パラメータをある値で代表
させているので、モータの能力を越えることがないよう
にその代表値が設定される。つまり、各領域間ごとにモ
ータの負荷が一番大きい地点を基準にして演算パラメー
タが設定される。従って、他の地点では、負荷が一番大
きい地点に比べてモータの負荷が小さくなるので、当該
演算パラメータによればモータの能力に余裕が残ること
になる。
Here, the speed command curve is shown by the relationship between time and speed as shown in FIG. 12, and generally has a trapezoidal shape, but the following relationships are established among various calculation parameters. T max = I max × V max / t1 (1) T max = I max × V max / t2 (2) However, even in the same small area, if the coordinates are different, the robot 5 Since the posture changes slightly, the moment of inertia I, etc. at each coordinate is different, and if the acceleration start point and the deceleration end point are slightly different, the value of the calculation parameter changes, but in this example, the acceleration start point is different from the area to which the acceleration start point belongs. Since the calculation parameter between the regions to which the deceleration end point belongs is represented by a certain value, the representative value is set so as not to exceed the motor capacity. That is, the calculation parameter is set based on the point where the motor load is the largest between the respective regions. Therefore, at other points, the load of the motor is smaller than that at the point where the load is the largest, and therefore, there is a margin in the capacity of the motor according to the calculation parameter.

【0006】因に、速度指令曲線は、上記のようにし
て、演算パラメータが選択されると、式(1)、式
(2)からそれぞれ加速時間t1、減速時間t2を求め
ることができるので、これら加速時間t1等から求める
ことができる(図12参照)。
Incidentally, in the speed command curve, when the calculation parameter is selected as described above, the acceleration time t1 and the deceleration time t2 can be obtained from the equations (1) and (2), respectively. It can be obtained from these acceleration times t1 and the like (see FIG. 12).

【0007】このようにして、速度指令曲線が演算され
ると、モータ制御手段4がその速度指令曲線にしたがっ
てロボット5の各軸を駆動するモータを制御し、ロボッ
ト5を移動命令通りに移動させ、一連の処理を終了させ
るが、図14を用いてモータ制御手段4についてもう少
し詳細に説明する。因に、図14において、11は速度
指令曲線に基づく速度指令値V*を積分してロボット5
の位置指令値θr を発生する積分器、12はロボット5
の位置指令値θr からロボット5の実位置θa を減算す
る減算器、13は減算器12の減算結果に比例定数を乗
算して速度指令値ωr を発生する比例制御器、14は速
度指令値ωr からロボットの実速度ωa を減算する減算
器、15は減算器14の減算結果に比例定数を乗算して
電流指令値ir1を発生する比例制御器、16は減算器1
4の減算結果の積分値に比例した電流指令値ir2を発生
する積分制御器、17は電流指令値ir1と電流指令値i
r2を加算して電流指令値ir を出力する加算器である。
When the speed command curve is calculated in this way, the motor control means 4 controls the motors that drive the respective axes of the robot 5 according to the speed command curve to move the robot 5 according to the movement command. A series of processing is ended, but the motor control means 4 will be described in more detail with reference to FIG. Incidentally, in FIG. 14, 11 indicates the robot 5 by integrating the speed command value V * based on the speed command curve.
Integrator for generating the position command value θ r of the robot 5
Subtractor 13 proportional controller for generating a subtractor 12 subtraction result to the proportional speed command value constant by multiplying the omega r of 14 rate for subtracting the actual position theta a robot 5 from the position command value theta r of subtractor from command value omega r subtracting the actual speed omega a of the robot 15 is proportional controller for generating a current command value i r1 is multiplied by a proportionality constant to the subtraction result of the subtracter 14, 16 a subtracter 1
An integral controller that generates a current command value i r2 proportional to the integrated value of the subtraction result of 4, and 17 is a current command value i r1 and a current command value i r2.
It is an adder that adds r2 and outputs a current command value i r .

【0008】また、18は電流指令値ir の絶対値がモ
ータの最大電流の絶対値を越えた場合、モータの最大電
流に制限する電流指令リミッタ、19は電流指令リミッ
タ18の出力である電流指令値ir *にモータの実電流i
a が一致するようにモータの電流を制御する電流制御
系、20はモータの実電流ia に比例したトルクTe
発生するモータ、21はトルクTe に重力トルクTg
摩擦トルクTf 加算される加算器である。
Further, 18 is a current command limiter for limiting the maximum current of the motor when the absolute value of the current command value i r exceeds the absolute value of the maximum current of the motor, and 19 is an output of the current command limiter 18. The command value i r * is the actual motor current i
A current control system for controlling the current of the motor so that a is matched, 20 is a motor that generates torque T e proportional to the actual current i a of the motor, and 21 is gravity torque T g and friction torque T f in addition to torque T e. Is an adder that adds.

【0009】モータ制御手段4は、上記のように構成さ
れているので、速度指令曲線に基づく速度指令値V*か
らロボット5の位置指令値θr を求め、ロボット5の実
位置θa がその位置指令値θr に一致するようにモータ
20の実電流ia を制御することになるが、例えば、ロ
ボット5が鉛直に固定されたベース22(図15参照)
に対して、図16に示すように、ロボット5が実線の位
置から上方に移動(+Z方向)して点線の位置に停止し
た場合と、ロボット5が点線の位置から下方に移動(−
Z方向)して実線の位置に停止した場合とでは、停止中
のモータ20の実電流ia が相違する。
Since the motor control means 4 is constructed as described above, the position command value θ r of the robot 5 is obtained from the speed command value V * based on the speed command curve, and the actual position θ a of the robot 5 is calculated as follows. The actual current i a of the motor 20 is controlled so as to match the position command value θ r . For example, the base 22 with the robot 5 fixed vertically (see FIG. 15) is used.
On the other hand, as shown in FIG. 16, when the robot 5 moves upward from the position indicated by the solid line (+ Z direction) and stops at the position indicated by the dotted line, and when the robot 5 moves downward from the position indicated by the dotted line (-
The actual current i a of the stopped motor 20 is different between when the motor 20 is stopped in the Z direction) and stopped at the position indicated by the solid line.

【0010】その理由は、まず、+Z方向に移動して目
標地点に到達する場合、ロボット5は重力mgと摩擦力
Fに逆らって移動することになるので、外乱は下記のよ
うになる。 外乱=−mg−F (mg,F>0) ・・・(3) 一方、−Z方向に移動して目標地点に到達する場合、ロ
ボット5は摩擦力Fに逆らって移動する(重力mgは移
動を援助する方向に働く)ことになるので、外乱は下記
のようになる。 外乱=−mg+F (mg,F>0) ・・・(4)
The reason is that, first, when the robot 5 moves in the + Z direction to reach the target point, the robot 5 moves against the gravity mg and the frictional force F, and the disturbance is as follows. Disturbance = −mg−F (mg, F> 0) (3) On the other hand, when the robot 5 moves in the −Z direction to reach the target point, the robot 5 moves against the frictional force F (gravity mg is It works in the direction of assisting movement), so the disturbance is as follows. Disturbance = −mg + F (mg, F> 0) (4)

【0011】従って、外乱は、下記に示すように、ロボ
ット5が下降するときより上昇するときの方が大きくな
るので、当然、電流指令値ir はロボットが下降すると
きより上昇するときの方が大きくなる。 |−mg−F|>|−mg+F| ・・・(5) ところが、積分制御器16は、ロボット5が停止して
も、即ち、減算器14の出力が零になっても、過去の来
歴を出力するので、積分制御器16はロボット5が下降
して停止した場合より上昇して停止した場合の方が大き
い電流指令値ir2を出力する。これにより、モータの実
電流ia は、ロボット5が下降して停止した場合より上
昇して停止した場合の方が大きくなる。
Therefore, since the disturbance becomes larger when the robot 5 rises than when it descends, the current command value i r naturally rises when the robot 5 descends as shown below. Grows larger. | -Mg-F |> | -mg + F | (5) However, in the integration controller 16, even if the robot 5 stops, that is, even if the output of the subtractor 14 becomes zero, the past history Therefore, the integral controller 16 outputs a larger current command value i r2 when the robot 5 moves up and stops than when it descends and stops. As a result, the actual current i a of the motor becomes larger when the robot 5 rises and stops than when the robot 5 descends and stops.

【0012】なお、上記従来例では、モータの全作業領
域を複数の小領域に分割し、小領域間の組み合わせごと
に演算パラメータを設定するものについて示したが、同
様の技術が特公平2−55803号公報に開示されてい
る。
In the above-mentioned conventional example, the whole work area of the motor is divided into a plurality of small areas, and the calculation parameter is set for each combination between the small areas. It is disclosed in Japanese Patent No. 55803.

【0013】[0013]

【発明が解決しようとする課題】従来のロボット制御装
置は以上のように構成されているので、各領域間ごとに
モータの負荷が一番大きい地点を基準にして演算パラメ
ータを設定しなければならず、そのため他の地点では負
荷が一番大きい地点に比べてモータの負荷が小さくなる
ことから、当該演算パラメータではモータの能力に余裕
が生じてしまい、その結果、モータの能力を十分に発揮
させることができず、動作時間を十分に短縮することが
できない問題点があった。また、ロボットが停止するに
至るまでの移動方向にかからわず、ロボットが停止して
いる間は重力を支えるトルクさえあればその位置を保持
することができるが、ロボットが下降して停止したとき
よりロボットが上昇して停止したときの方が、停止中の
電流指令値が大きくなってしなうため、必要以上に大き
な定格電流を有するモータを選定しなければならず、コ
ストが増大する問題点があった。
Since the conventional robot controller is constructed as described above, it is necessary to set the calculation parameter based on the point where the load of the motor is the largest for each area. Therefore, at other points, the load on the motor becomes smaller than at the point where the load is the largest, so there is a margin in the capacity of the motor with the relevant calculation parameters, and as a result, the capacity of the motor is fully exerted. However, there is a problem that the operation time cannot be shortened sufficiently. Also, regardless of the movement direction until the robot stops, while the robot is stopped, its position can be held as long as there is a torque that supports gravity, but the robot descended and stopped. When the robot rises and stops, the current command value during stop does not increase, so it is necessary to select a motor with a larger rated current than necessary, which increases cost. was there.

【0014】請求項1の発明は上記のような問題点を解
消するためになされたもので、ロボットの加速開始地点
及び減速終了地点がいかなる地点であっても常にモータ
の能力を最大限に発揮させ、動作時間を短縮できるロボ
ット制御装置を得ることを目的とする。
The invention of claim 1 has been made to solve the above problems, and always maximizes the capability of the motor regardless of the acceleration start point and deceleration end point of the robot. It is an object of the present invention to provide a robot control device that can reduce the operation time.

【0015】請求項2の発明は、請求項1の発明より更
に動作時間を短縮できるロボット制御装置を得ることを
目的とする。
It is an object of the invention of claim 2 to obtain a robot controller capable of further shortening the operation time as compared with the invention of claim 1.

【0016】請求項3及び請求項4の発明は、上記請求
項1の発明の目的に加え、モータの実効トルクが定格ト
ルクを越えることのないようモータを保護することがで
きるロボット制御装置を得ることを目的とする。
In addition to the object of the invention of claim 1, the inventions of claims 3 and 4 provide a robot controller capable of protecting the motor so that the effective torque of the motor does not exceed the rated torque. The purpose is to

【0017】請求項5及び請求項6の発明は、ロボット
の動作が頻繁になることによって実効トルクが大きくな
るのを防止して、ロボットの実効電流が定格電流を越え
ない範囲内でモータの能力を最大限に発揮させ、動作時
間を短縮できるロボット制御装置を得ることを目的とす
る。
According to the fifth and sixth aspects of the present invention, the effective torque is prevented from increasing due to the frequent movements of the robot, and the capacity of the motor is kept within a range in which the effective current of the robot does not exceed the rated current. It is an object of the present invention to obtain a robot control device that can maximize its performance and reduce the operation time.

【0018】請求項7及び請求項8の発明は、ロボット
が停止している間の電流指令値を低減し、定格電流の小
さいモータを選定できるロボット制御装置を得ることを
目的とする。
It is an object of the inventions of claims 7 and 8 to obtain a robot controller capable of reducing a current command value while the robot is stopped and selecting a motor having a small rated current.

【0019】[0019]

【課題を解決するための手段】請求項1の発明に係るロ
ボット制御装置は、ロボットが中点に到達したときの速
度が最高速度演算手段により演算された最高速度である
とした場合の各軸の駆動トルクが許容最大トルクを越え
ない範囲内で最小の加速時間及び減速時間を決定し、そ
の決定結果と最高速度に基づいて速度指令曲線を生成す
るようにしたものである。
According to a first aspect of the present invention, there is provided a robot control apparatus, wherein each speed of the axes when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculating means. The minimum acceleration time and deceleration time are determined within a range in which the drive torque of does not exceed the maximum allowable torque, and a speed command curve is generated based on the determination result and the maximum speed.

【0020】請求項2の発明に係るロボット制御装置
は、加速時間及び減速時間を決定した後、最高速度演算
手段により演算された最高速度に基づいて加速区間及び
減速区間における何れかの地点において再度加速時間及
び減速時間を決定するようにしたものである。
In the robot controller according to the second aspect of the present invention, after determining the acceleration time and the deceleration time, the robot is re-established at any point in the acceleration section and the deceleration section based on the maximum speed calculated by the maximum speed calculation means. The acceleration time and the deceleration time are determined.

【0021】請求項3の発明に係るロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の許容最大
トルクの値を下方修正し、越えていないと判定された場
合にはその許容最大トルクの値を上方修正するようにし
たものである。
In the robot controller according to the third aspect of the invention, when the comparing means determines that the load amount of the motor exceeds the allowable load amount, the value of the maximum allowable torque of each axis of the robot is corrected downward. However, when it is determined that the maximum torque is not exceeded, the value of the maximum allowable torque is corrected upward.

【0022】請求項4の発明に係るロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の最高速度
の値を下方修正し、越えていないと判定された場合には
その最高速度の値を上方修正するようにしたものであ
る。
In the robot controller according to the invention of claim 4, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum speed value of each axis of the robot is corrected downward. When it is determined that the maximum speed is not exceeded, the maximum speed value is corrected upward.

【0023】請求項5の発明に係るロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根に比例するようにロボットの各区間における動作時間
を演算し、その動作時間によって、速度指令曲線生成手
段により生成された速度指令曲線の動作時間を修正する
ようにしたものである。
A robot controller according to a fifth aspect of the present invention calculates the operation time in each section of the robot so as to be proportional to the square root of the operation angle calculated by the operation angle calculation means, and the speed command is calculated according to the operation time. The operation time of the speed command curve generated by the curve generating means is corrected.

【0024】請求項6の発明に係るロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根とロボットの各区間における慣性モーメントの平方根
積に比例するようにロボットの各区間における動作時
間を演算し、その動作時間によって、速度指令曲線生成
手段により生成された速度指令曲線の動作時間を修正す
るようにしたものである。
According to a sixth aspect of the present invention, there is provided a robot control device, wherein the square root of the motion angle calculated by the motion angle calculating means and the square root of the moment of inertia in each section of the robot.
The operation time in each section of the robot is calculated so as to be proportional to the product of, and the operation time of the speed command curve generated by the speed command curve generating means is corrected by the operation time.

【0025】請求項7の発明に係るロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクより大
きくなる範囲内で電流指令値発生手段が発生する電流指
令値を制限するようにしたものである。
In the robot controller according to the invention of claim 7, when the speed command value generated by the speed command value generating means is zero, the current command value is generated within a range in which the output torque of the motor becomes larger than the gravity torque. The current command value generated by the means is limited.

【0026】請求項8の発明に係るロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクと摩擦
トルクとの差分より大きくなる範囲内で電流指令値発生
手段が発生する電流指令値を制限するようにしたもので
ある。
In the robot controller according to the present invention, when the speed command value generated by the speed command value generating means is zero, the output torque of the motor becomes larger than the difference between the gravity torque and the friction torque. In this, the current command value generated by the current command value generating means is limited.

【0027】[0027]

【作用】請求項1の発明におけるロボット制御装置は、
ロボットが中点に到達したときの速度が最高速度演算手
段により演算された最高速度であるとした場合の各軸の
駆動トルクが許容最大トルクを越えない範囲内で最小の
加速時間及び減速時間を決定する加減速時間決定手段を
設けたことにより、ロボットの加速開始地点及び減速終
了地点がいかなる地点であっても常にモータの能力を最
大限に発揮できる速度指令曲線を生成できるようにな
る。
In the robot controller according to the invention of claim 1,
If the speed when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculation means, set the minimum acceleration time and deceleration time within the range where the drive torque of each axis does not exceed the maximum allowable torque. By providing the acceleration / deceleration time determining means for determining, it becomes possible to always generate the speed command curve capable of maximizing the performance of the motor regardless of the acceleration start point and the deceleration end point of the robot.

【0028】請求項2の発明におけるロボット制御装置
は、加速時間及び減速時間を決定した後、最高速度演算
手段により演算された最高速度に基づいて加速区間及び
減速区間における何れかの地点において再度加速時間及
び減速時間を決定するようにしたことにより、モータの
能力を発揮させるのにより最適な速度指令曲線が得られ
るようになる。
In the robot controller according to the second aspect of the present invention, after determining the acceleration time and the deceleration time, the robot is accelerated again at any point in the acceleration section and the deceleration section based on the maximum speed calculated by the maximum speed calculation means. By determining the time and the deceleration time, it becomes possible to obtain the optimum speed command curve by making full use of the capability of the motor.

【0029】請求項3の発明におけるロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の許容最大
トルクの値を下方修正し、越えていないと判定された場
合にはその許容最大トルクの値を上方修正する許容最大
トルク修正手段を設けたことにより、モータの実効トル
クが定格トルクを越えることのないようモータが保護さ
れる。
In the robot controller according to the third aspect of the present invention, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the value of the maximum allowable torque of each axis of the robot is corrected downward. If the maximum torque is determined not to exceed, the motor is protected so that the effective torque of the motor does not exceed the rated torque by providing the maximum allowable torque correction means for upwardly correcting the value of the maximum allowable torque. .

【0030】請求項4の発明におけるロボット制御装置
は、比較手段によりモータの負荷量が許容負荷量を越え
ていると判定された場合にはロボットの各軸の最高速度
の値を下方修正し、越えていないと判定された場合には
その最高速度の値を上方修正する最高速度修正手段を設
けたことにより、モータの実効トルクが定格トルクを越
えることのないようモータが保護される。
In the robot controller according to the invention of claim 4, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum speed value of each axis of the robot is corrected downward, When it is determined that the maximum speed is not exceeded, the maximum speed correction means for upwardly correcting the maximum speed value is provided, so that the motor is protected so that the effective torque of the motor does not exceed the rated torque.

【0031】請求項5の発明におけるロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根に比例するようにロボットの各区間における動作時間
を演算し、その動作時間によって、速度指令曲線生成手
段により生成された速度指令曲線の動作時間を修正する
動作時間修正手段を設けたことにより、ロボットが頻繁
に動作しても、ロボットの実効電流が定格電流を越えな
い範囲内でモータの能力を最大限に発揮できるようにな
る。
According to the fifth aspect of the invention, the robot controller calculates the operation time in each section of the robot so as to be proportional to the square root of the operation angle calculated by the operation angle calculation means, and the speed command curve is calculated according to the operation time. By providing the operation time correction means for correcting the operation time of the speed command curve generated by the generation means, even if the robot frequently operates, the motor's ability within the range in which the effective current of the robot does not exceed the rated current You will be able to maximize your ability.

【0032】請求項6の発明におけるロボット制御装置
は、動作角度演算手段により演算された動作角度の平方
根とロボットの各区間における慣性モーメントの平方根
積に比例するようにロボットの各区間における動作時
間を演算し、その動作時間によって、速度指令曲線生成
手段により生成された速度指令曲線の動作時間を修正す
る動作時間修正手段を設けたことにより、ロボットが頻
繁に動作しても、ロボットの実効電流が定格電流を越え
ない範囲内でモータの能力を最大限に発揮できるように
なる。
According to another aspect of the robot controller of the present invention, the square root of the motion angle calculated by the motion angle calculating means and the square root of the moment of inertia in each section of the robot.
By providing the operation time correction means for calculating the operation time in each section of the robot so as to be proportional to the product of, and correcting the operation time of the speed command curve generated by the speed command curve generation means by the operation time. Even if the robot operates frequently, it is possible to maximize the capacity of the motor within the range where the effective current of the robot does not exceed the rated current.

【0033】請求項7の発明におけるロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクより大
きくなる範囲内で電流指令値発生手段が発生する電流指
令値を制限する電流制限手段を設けたことにより、ロボ
ット停止時のモータの実電流が低減される。
In the robot controller according to the invention of claim 7, when the speed command value generated by the speed command value generating means is zero, the current command value generating means is within a range in which the output torque of the motor becomes larger than the gravity torque. By providing the current limiting means for limiting the current command value generated by, the actual current of the motor when the robot is stopped is reduced.

【0034】請求項8の発明におけるロボット制御装置
は、速度指令値発生手段により発生された速度指令値が
零である場合、モータの出力トルクが重力トルクと摩擦
トルクとの差分より大きくなる範囲内で電流指令値発生
手段が発生する電流指令値を制限する電流制限手段を設
けたことにより、ロボット停止時のモータの実電流が低
減される。
In the robot controller according to the present invention, when the speed command value generated by the speed command value generating means is zero, the output torque of the motor is within a range in which the output torque is larger than the difference between the gravity torque and the friction torque. Since the current limiting means for limiting the current instruction value generated by the current instruction value generating means is provided, the actual current of the motor when the robot is stopped is reduced.

【0035】[0035]

【実施例】 実施例1.以下、この発明の一実施例を図について説明
する。図1はこの発明の実施例1によるロボット制御装
置を示す構成図であり、図において、従来のものと同一
符号は同一または相当部分を示すので説明を省略する。
31はロボット5の各軸の最高速度Vmaxiと許容最大ト
ルクTmaxiを記憶する記憶手段、32は記憶手段31に
より記憶された最高速度Vmaxiでロボット5が加速開始
地点から減速終了地点まで移動した場合の移動時間tt
i をロボット5の各軸ごとに演算するとともに、その演
算した移動時間tti のなかで最大の移動時間ttmax
を要してロボット5が加速開始地点から加速終了地点ま
で移動した場合の最高速度Vi をロボット5の各軸ごと
に演算する最高速度演算手段である。
EXAMPLES Example 1. An embodiment of the present invention will be described below with reference to the drawings. 1 is a block diagram showing a robot control apparatus according to a first embodiment of the present invention. In the figure, the same reference numerals as those of the conventional one indicate the same or corresponding portions, and the description thereof will be omitted.
Reference numeral 31 is a storage means for storing the maximum speed V maxi and allowable maximum torque T maxi of each axis of the robot 5, 32 is the maximum speed V maxi stored by the storage means 31, and the robot 5 moves from the acceleration start point to the deceleration end point. Travel time tt
i is calculated for each axis of the robot 5, and the maximum movement time tt max among the calculated movement times tt i is calculated.
It is a maximum speed calculation means for calculating the maximum speed V i for each axis of the robot 5 when the robot 5 moves from the acceleration start point to the acceleration end point.

【0036】また、33はロボット5が中点に到達した
ときの速度が最高速度演算手段32により演算された最
高速度Vi であるとした場合の各軸の駆動トルクTi
許容最大トルクTmaxiを越えない範囲内で最小の加速時
間t1及び減速時間t2を決定する加減速時間決定手
段、34は加減速時間決定手段33の決定結果(加速時
間t1、減速時間t2)及び最高速度演算手段32によ
り演算された最高速度Vi に基づいて速度指令曲線を生
成する速度指令曲線生成手段である。因に、図2は加減
速時間決定手段の動作を示すフローチャートである。
Further, 33 is a drive torque T i of each axis when the speed when the robot 5 reaches the midpoint is the maximum speed V i calculated by the maximum speed calculation means 32. Acceleration / deceleration time determination means for determining the minimum acceleration time t1 and deceleration time t2 within a range not exceeding maxi , 34 is a determination result (acceleration time t1, deceleration time t2) of the acceleration / deceleration time determination means 33, and maximum speed calculation means. The speed command curve generating means generates a speed command curve based on the maximum speed V i calculated by 32. Incidentally, FIG. 2 is a flowchart showing the operation of the acceleration / deceleration time determining means.

【0037】次に動作について説明する。まず、従来の
ものと同様に、教示点記憶手段1は移動命令を受信する
と、その移動命令を解析してどの点からどの点までロボ
ット5を移動させるのかを判断する。例えば、その移動
命令がa点からb点まで移動する命令である場合、a点
及びb点の座標を出力する。そして、教示点記憶手段1
からa点及びb点の座標を出力された座標変換手段2
は、a点及びb点の座標をロボット5の関節座標si
i に変換する。
Next, the operation will be described. First, similarly to the conventional one, when the teaching point storage means 1 receives a movement command, the teaching point storage means 1 analyzes the movement command and determines from which point the robot 5 should be moved. For example, if the move command is a command to move from point a to point b, the coordinates of point a and point b are output. Then, the teaching point storage means 1
Coordinate conversion means 2 in which the coordinates of the points a and b are output from
Represents the coordinates of the points a and b by the joint coordinates s i of the robot 5,
Convert to e i .

【0038】これにより、最高速度演算手段32は、下
記に示すように、ロボット5の関節座標si ,ei と、
記憶手段31に記憶されている各軸の最高速度Vmaxi
基づいて、各軸ごとの移動時間tti を演算する。 tti =|ei −si |/Vmaxi ・・・(6) さらに、最高速度演算手段32は、下記に示すように、
演算した各軸ごとの移動時間tti のなかで最大の移動
時間ttmax (移動に最も時間の要する軸の移動時間)
を要してロボット5が加速開始地点から減速終了地点ま
で移動した場合の最高速度Vi を各軸ごとに演算する。 Vi =(ei −si )/ttmax ・・・(7)
As a result, the maximum speed computing means 32, as shown below, calculates the joint coordinates s i and e i of the robot 5,
Based on the maximum speed V maxi of each axis stored in the storage means 31, the moving time tt i for each axis is calculated. tt i = | e i −s i | / V maxi (6) Further, the maximum speed calculation means 32, as shown below,
The maximum movement time tt max among the calculated movement times tt i for each axis (the movement time of the axis that requires the longest time for movement)
Therefore, the maximum speed V i when the robot 5 moves from the acceleration start point to the deceleration end point is calculated for each axis. V i = (e i −s i ) / tt max (7)

【0039】次に、加減速時間決定手段33は、ロボッ
ト5が中点(加速開始地点と減速終了地点の中間点)に
到達したときの各軸の速度が図3に示すように最高速度
iであるとした場合の各軸の駆動トルクTi が許容最
大トルクTmaxiを越えない範囲内で最小の加速時間t1
及び減速時間t2をn自由度ロボットの運動方程式に基
づいて決定する。n自由度ロボットの運動方程式 T=M・d2 q/dt2 +h ・・・(8) ここで、Mはロボットの位置から特定される慣性行列、
qは各軸の変位、hはロボットの位置と速度から特定さ
れるコリオリ力、重力及び摩擦力のベクトルである。な
お、慣性行列M及びベクトルhは、ロボットの位置等か
ら計算されるが、かかる計算は周知の事項であるので、
説明を省略する。
Next, the acceleration / deceleration time determining means 33 determines the speed of each axis when the robot 5 reaches the midpoint (the midpoint between the acceleration start point and the deceleration end point) as shown in FIG. The minimum acceleration time t1 within the range in which the drive torque T i of each axis when i is i does not exceed the maximum allowable torque T maxi
And deceleration time t2 are determined based on the equation of motion of the n-degree-of-freedom robot. Equation of motion of n-degree-of-freedom robot T = M · d 2 q / dt 2 + h (8) Here, M is an inertia matrix specified from the position of the robot,
q is the displacement of each axis, and h is the vector of Coriolis force, gravity and friction force specified from the position and velocity of the robot. The inertia matrix M and the vector h are calculated from the position of the robot and the like. Since such calculation is a well-known matter,
The description is omitted.

【0040】加速時間t1及び減速時間t2の決定につ
いてもう少し具体的に説明すると、加速時及び減速時の
第i軸の駆動トルクT1i,T2iは、スムージングフィル
タの影響を無視し、図3の台形パターンを速度指令曲線
と考えると、下記のようになる。 T1iΣ(Mij・Vj /t1 )+hi =(Mi1・V1 +・・・+Min・Vn )/t1+hi ・・・(9) T2i−Σ(Mij・Vj /t2 )+hi =−(Mi1・V1 +・・・+Min・Vn )/t2+hi ・・・(10) ただし、j=1,2,・・・,n また、加速時及び減速時の駆動トルクT1i,T2iがそれ
ぞれ許容最大トルクTmaxiを越えないという条件から、
下記に示すように、それぞれn個の不等式が得られる。 −Tmaxi≦T1i≦Tmaxi(ただし、i=0,1,・・・n) ・・・(11) −Tmaxi≦T2i≦Tmaxi(ただし、i=0,1,・・・n) ・・・(12)
The determination of the acceleration time t1 and the deceleration time t2 will be described more concretely. The driving torques T 1i and T 2i of the i-th axis during acceleration and deceleration ignore the influence of the smoothing filter and are shown in FIG. Considering the trapezoidal pattern as a speed command curve, it becomes as follows. T 1i = Σ (M ij · V j / t 1) + h i = (M i1 · V 1 + ··· + M in · V n) / t1 + h i ··· (9) T 2i = -Σ (M ij · V j / t 2) + h i = - (M i1 · V 1 + ··· + M in · V n) / t2 + h i ··· (10) However, j = 1,2, ···, n also From the condition that the driving torques T 1i and T 2i during acceleration and deceleration do not exceed the maximum allowable torque T maxi ,
As shown below, n inequalities are obtained respectively. -T maxi ≤T 1i ≤T maxi (where i = 0,1, ... n) (11) -T maxi ≤T 2i ≤T maxi (where i = 0,1, ... n) ... (12)

【0041】そこで、加速開始地点における慣性行列M
及びベクトルhを式(9)に代入した場合に、駆動トル
クT1iが式(11)のn個の不等式を全て満足する範囲
内で最小の加速時間t1(ただし、t1は正の値であ
る。)を演算する(ステップST11)。説明の便宜
上、当該加速時間t1をt1aとする。また、中点おける
慣性行列M及びベクトルhを式(9)に代入した場合
に、駆動トルクT1iが式(11)のn個の不等式を全て
満足する範囲内で最小の加速時間t1(ただし、t1は
正の値である。)を演算する(ステップST11)。説
明の便宜上、当該加速時間t1をt1cとする。そして、
加速開始地点を基準にして演算した加速時間t1aと、中
点を基準にして演算した加速時間t1cのうちの大きい方
の値を加速時間t1として決定する(ステップST1
2)。このように、加速開始地点と中点を基準にしてそ
れぞれ加速時間t1a,t1cを演算し、大きい方の値を加
速時間t1として決定する理由は、ロボットの移動によ
ってロボットの姿勢が変化するので、負荷の大きい方の
地点を基準にして演算した加速時間t1を選択しなけれ
ば、モータに過負荷が発生するからである。
Therefore, the inertia matrix M at the acceleration start point
And the vector h are substituted into the equation (9), the minimum acceleration time t1 (where t1 is a positive value) within a range in which the driving torque T 1i satisfies all n inequalities of the equation (11). Is calculated (step ST11). For convenience of explanation, the acceleration time t1 is defined as t1a . Further, when the inertia matrix M at the midpoint and the vector h are substituted into the equation (9), the minimum acceleration time t1 (however, within the range in which the driving torque T 1i satisfies all the n inequalities of the equation (11) , T1 are positive values) (step ST11). For convenience of explanation, the acceleration time t1 is set to t1c . And
The larger value of the acceleration time t 1a calculated based on the acceleration start point and the acceleration time t 1c calculated based on the midpoint is determined as the acceleration time t1 (step ST1).
2). As described above, the reason why the acceleration times t 1a and t 1c are calculated based on the acceleration start point and the midpoint and the larger value is determined as the acceleration time t1 is that the posture of the robot changes as the robot moves. Therefore, unless the acceleration time t1 calculated based on the point with the larger load is selected, the motor is overloaded.

【0042】減速時間t2についても、上記と同様にし
て、減速終了地点及び中点における慣性行列Mとベクト
ルhをそれぞれ式(10)に代入した場合に、駆動トル
クT2iが式(12)のn個の不等式を全て満足する範囲
内で最小の減速時間t2(ただし、t2は正の値であ
る)を演算し(ステップST13)、大きい方の値を減
速時間t2として決定する(ステップST14)。
Also for the deceleration time t2, when the inertia matrix M and the vector h at the deceleration end point and the midpoint are respectively substituted into the equation (10), the driving torque T 2i becomes the equation (12). The minimum deceleration time t2 (where t2 is a positive value) is calculated within the range that satisfies all n inequalities (step ST13), and the larger value is determined as the deceleration time t2 (step ST14). .

【0043】そして、速度指令曲線生成手段34が、加
減速時間決定手段33により決定された加速時間t1と
減速時間t2及び最高速度演算手段32により演算され
た最高速度Vi に基づいて速度指令曲線を生成し(図3
参照)、モータ制御手段4がその速度指令曲線したがっ
てロボット5の各軸を駆動するモータを制御する。
Then, the speed command curve generation means 34 causes the speed command curve based on the acceleration time t1 and the deceleration time t2 determined by the acceleration / deceleration time determination means 33 and the maximum speed V i calculated by the maximum speed calculation means 32. (Fig. 3
The motor control means 4 controls the motor that drives each axis of the robot 5 according to the speed command curve.

【0044】以上のように、実施例1によれば、ロボッ
ト5は移動命令通りに加速開始地点から減速終了地点ま
で移動することになるが、上記のようにして、加速時間
t1及び減速時間t2が決定されるので、全ての軸の駆
動トルクは許容最大トルクTmaxiを越えることがなく、
しかも少なくとも1つの軸の駆動トルクの最大値が許容
最大トルクTmaxiとなるような加減速時間が得られる。
As described above, according to the first embodiment, the robot 5 moves from the acceleration start point to the deceleration end point according to the movement command, but as described above, the acceleration time t1 and the deceleration time t2. Is determined, the drive torques of all axes do not exceed the maximum allowable torque T maxi ,
Moreover, the acceleration / deceleration time is obtained such that the maximum value of the drive torque of at least one shaft becomes the maximum allowable torque T maxi .

【0045】実施例2.上記実施例1では、速度指令曲
線が台形パターンから生成される場合について示した
が、カム曲線等の他の曲線から速度指令曲線が生成され
る場合でもよく、同様の効果を奏する。
Example 2. In the first embodiment described above, the case where the speed command curve is generated from the trapezoidal pattern has been described, but the speed command curve may be generated from another curve such as a cam curve, and the same effect is obtained.

【0046】実施例3.上記実施例1では、加速時間t
1と減速時間t2を一度だけ決定するものについて示し
たが、スムージングの影響を考慮すべく、図4に示すよ
うに、実施例1の方法を用いて、加速時間t1と減速時
間t2を初期決定した後(ただし、加速時間t1と減速
時間t2は初期的に決定されればよく、実施例2の本質
的な部分ではないので、必ずしも実施例1の方法を用い
ることなく、例えば上記従来例のように決定してもよ
い)、加速区間及び減速区間における何れかの地点にお
いて最高速度演算手段32により演算された最高速度V
i に基づいて再度加速時間t1及び減速時間t2を決定
するようにしてもよい。
Example 3. In the first embodiment, the acceleration time t
1 and the deceleration time t2 are only determined once, the acceleration time t1 and the deceleration time t2 are initially determined using the method of the first embodiment as shown in FIG. 4 in order to consider the effect of smoothing. (However, since the acceleration time t1 and the deceleration time t2 may be initially determined and are not an essential part of the second embodiment, the method of the first embodiment is not necessarily used and, for example, the above-mentioned conventional example is used. The maximum speed V calculated by the maximum speed calculation means 32 at any point in the acceleration section and the deceleration section.
The acceleration time t1 and the deceleration time t2 may be determined again based on i .

【0047】即ち、実施例1の方法で加速時間t1と減
速時間t2を初期決定することにより、加速終了地点及
び減速開始地点を特定する。そして、加速開始地点と加
速終了地点を基準にし、上記実施例1と同様にして加速
時間t1を決定する(ステップST16〜18)。一
方、減速時間t2については、減速開始地点と減速終了
地点を基準にし、上記実施例1と同様にして決定する
(ステップST19〜20)。なお、速度指令曲線の生
成は上記実施例1と同様であるため説明を省略する。
That is, the acceleration end point and the deceleration start point are specified by initially determining the acceleration time t1 and the deceleration time t2 by the method of the first embodiment. Then, based on the acceleration start point and the acceleration end point, the acceleration time t1 is determined in the same manner as in the first embodiment (steps ST16 to ST18). On the other hand, the deceleration time t2 is determined in the same manner as in the first embodiment with reference to the deceleration start point and the deceleration end point (steps ST19 to 20). The generation of the speed command curve is the same as that in the first embodiment, and the description thereof is omitted.

【0048】以上のように、実施例3によれば、加速時
間t1と減速時間t2を繰り返し設定し直すので、実施
例1よりもきめ細かく設定することができ、その結果、
実施例1よりも更に動作時間を短縮することができる。
As described above, according to the third embodiment, the acceleration time t1 and the deceleration time t2 are repeatedly set, so that the setting can be made more finely than in the first embodiment, and as a result,
The operation time can be further shortened as compared with the first embodiment.

【0049】実施例4.上記実施例3では、加速時間t
1と減速時間t2を初期設定した後、一度だけ加速時間
t1と減速時間t2を設定し直したものについて示した
が、2回以上設定し直してもよい。
Example 4. In the third embodiment, the acceleration time t
Although the case where the acceleration time t1 and the deceleration time t2 are reset once only after the initial setting of 1 and the deceleration time t2 has been shown, they may be reset twice or more.

【0050】実施例5.上記実施例3,4では、加速時
間t1と減速時間t2を繰り返し設定するものについて
示したが、スムージングの影響を考慮した慣性行列M及
びベクトルh等を用いて加速時間t1と減速時間t2を
決定するようにしてもよい。
Example 5. In the third and fourth embodiments, the acceleration time t1 and the deceleration time t2 are repeatedly set. However, the acceleration time t1 and the deceleration time t2 are determined using the inertia matrix M and the vector h in consideration of the effect of smoothing. You may do it.

【0051】実施例6.図5はこの発明の実施例6によ
るロボット制御装置を示す構成図であり、図において、
35はモータの実効電流(負荷量)を検出する負荷量検
出手段、36は負荷量検出手段35により検出された実
効電流がモータの許容実効電流値(許容負荷量)を越え
ているか否かを判定する比較手段、37は比較手段36
によりモータの実効電流が許容実効電流値を越えている
と判定された場合には記憶手段31に記憶されている
軸の許容最大トルクTmaxiの値を下方修正し、越えてい
ないと判定された場合にはその許容最大トルクTmaxi
値を上方修正する許容最大トルク修正手段である。
Example 6. FIG. 5 is a block diagram showing a robot controller according to a sixth embodiment of the present invention.
Reference numeral 35 indicates a load amount detecting means for detecting an effective current (load amount) of the motor, and 36 indicates whether or not the effective current detected by the load amount detecting means 35 exceeds an allowable effective current value (allowable load amount) of the motor. Comparison means for judgment, 37 is comparison means 36
When it is determined that the effective current of the motor exceeds the allowable effective current value , the value of the maximum allowable torque T maxi of each axis stored in the storage unit 31 is corrected downward and it is determined that the maximum effective torque T maxi is not exceeded. In this case, the maximum allowable torque Tmaxi is a maximum allowable torque correction means for upwardly correcting the maximum allowable torque T maxi .

【0052】次に動作について説明する。まず、負荷量
検出手段35がモータの実効電流を検出すると、比較手
段36は、下記に示すように、その実効電流とモータの
許容実効電流値を比較してその偏差を出力する。 比較手段36の出力=モータの許容実効電流値−実効電流 ・・・(13)
Next, the operation will be described. First, when the load amount detecting means 35 detects the effective current of the motor, the comparing means 36 causes the effective current of the motor and the
The allowable effective current value is compared and the deviation is output. Output of comparison means 36 = motor allowable effective current value −effective current (13)

【0053】そして、許容最大トルク修正手段37は、
下記に示すように、比較手段36の出力に基づいて各軸
の許容最大トルクTmaxiの値を修正する。 許容最大トルクTmaxi=現在の許容最大トルクTmaxi +係数×比較手段36の出力 ・・・(14) ただし、式(14)を計算した結果、許容最大トルクT
maxiがモータの実現可能な最大トルクを越えてしまう場
合には、許容最大トルクTmaxiを実現可能な最大トルク
とする。
The allowable maximum torque correction means 37 is
As shown below, the value of the maximum allowable torque T maxi of each axis is corrected based on the output of the comparison means 36. Allowable maximum torque T maxi = current allowable maximum torque T maxi + coefficient × output of comparing means 36 (14) However, as a result of calculating equation (14), allowable maximum torque T maxi
When maxi exceeds the maximum achievable torque of the motor, the allowable maximum torque T maxi is set as the achievable maximum torque.

【0054】従って、モータの実効電流が許容実効電流
を越える場合には、モータの許容最大トルクTmaxi
小さくなるように変更され、逆に、実効電流が許容実効
電流値より小さい場合にはモータの許容最大トルクT
maxiが大きくなるように変更される。このため、モータ
の実効電流が許容実効電流値を越える場合、即ち、モー
タの負荷が大きいときはモータの許容最大トルクTmaxi
が小さく設定され、速度指令曲線生成手段34は大きな
駆動トルクを必要としない速度指令曲線を生成すること
になり、その結果、モータの実効電流を許容実効電流値
以下に抑えることができる。なお、一般にモータの実効
電流と実効トルクは比例関係にあるので、実効電流を
容実効電流値以下に抑えることにより、モータの実効ト
ルクも許容値以下に抑えることができる。
Therefore, the effective current of the motor is the allowable effective current.
When the value exceeds the maximum value , the maximum allowable torque T maxi of the motor is changed to be small, and conversely, the effective current is changed to the allowable effective value.
If it is smaller than the current value, the maximum allowable torque T of the motor
Changed to increase maxi . Therefore, when the effective current of the motor exceeds the allowable effective current value, that is, when the load of the motor is large, the maximum allowable torque T maxi of the motor is large.
Is set to a small value, the speed command curve generating means 34 generates a speed command curve that does not require a large driving torque, and as a result, the effective current of the motor can be suppressed to the allowable effective current value or less. it can. Note that the effective current of the motor and the effective torque are generally in a proportional relationship, so the effective current is not allowed.
By keeping the effective current value below, the effective torque of the motor can be kept below the allowable value.

【0055】一方、モータの実効電流が許容実効電流値
を越えない場合、即ち、モータの負荷が小さいときはモ
ータの許容最大トルクTmaxiが大きく設定される。従っ
て、速度指令曲線生成手段34は大きな駆動トルクを必
要とする速度指令曲線を生成することになり、その結
果、モータが高速に回転してロボット5の移動が速くな
る。
On the other hand, when the effective current of the motor does not exceed the allowable effective current value , that is, when the load of the motor is small, the maximum allowable torque T maxi of the motor is set large. Therefore, the speed command curve generating means 34 generates a speed command curve that requires a large driving torque, and as a result, the motor rotates at high speed and the robot 5 moves faster.

【0056】実施例7.上記実施例6では、比較手段3
6の出力に基づいて許容最大トルクmaxi を修正するも
のについて示したが、図6に示すように、比較手段36
の出力に基づいて最高速度修正手段38が記憶手段31
に記憶されている各軸の最高速度Vmaxiを下記のように
修正してもよく、実施例6と同様の効果を奏する。 最高速度Vmaxi=現在の最高速度Vmaxi+係数×比較手段36の出力 ・・・(15)ただし、式(15)を計算した結果、最高速度Vmaxi
モータの実現可能な最高速度を越えてしまう場合には、
最高速度Vmaxiを実現可能な最高速度とする。
Example 7. In the sixth embodiment, the comparison means 3
Although the correction of the maximum allowable torque T maxi based on the output of No. 6 has been shown, as shown in FIG.
The maximum speed correction means 38 stores the storage means 31 based on the output of
The maximum speed V maxi of each axis stored in the table may be modified as follows, and the same effect as that of the sixth embodiment is obtained. Maximum speed V maxi = current maximum speed V maxi + coefficient × output of comparison means 36 (15) However, as a result of calculating equation (15), the maximum speed V maxi is
If the maximum achievable speed of the motor is exceeded,
The maximum speed V maxi is the maximum speed that can be realized.

【0057】実施例8.上記実施例6及び実施例7で
は、許容最大トルクTmaxi又は最高速度Vmaxiの何れか
一方を修正するものについて示したが、双方とも修正す
るようにしてもよい。
Example 8. In the sixth and seventh embodiments described above, one of the allowable maximum torque T maxi and the maximum speed V maxi is corrected, but both may be corrected.

【0058】実施例9.上記実施例6〜8では、負荷量
検出手段35がモータの実効電流を検出し、比較手段3
6がその実効電流と許容実効電流値を比較するものにつ
いて示したが、負荷量検出手段35がモータの温度を検
出し、比較手段36がその温度とモータの許容温度値を
比較するようにしてもよく、同様の効果を奏する。
Example 9. In the sixth to eighth embodiments, the load amount detecting means 35 detects the effective current of the motor, and the comparing means 3
6 shows the comparison between the effective current and the allowable effective current value , the load amount detecting means 35 detects the temperature of the motor and the comparing means 36 compares the temperature with the allowable temperature value of the motor. Well, it has the same effect.

【0059】実施例10.図7はこの発明の実施例10
によるロボット制御装置を示す構成図であり、図におい
て、39はロボット5の移動命令に基づいて少なくとも
当該ロボット5の2区間分の動作角度θi を演算する動
作角度演算手段、40は動作角度演算手段39により演
算された動作角度θi の平方根に比例するようにロボッ
ト5の各区間における動作時間tpiを演算する動作時間
演算手段、41は速度指令曲線生成手段34により生成
された速度指令曲線の動作時間を動作時間演算手段40
により演算された動作時間tpiに修正する動作時間修正
手段である。
Example 10. FIG. 7 shows a tenth embodiment of the present invention.
3 is a block diagram showing a robot controller according to the present invention, in which 39 is a motion angle calculation means for calculating a motion angle θ i for at least two sections of the robot 5 based on a movement command of the robot 5, and 40 is a motion angle calculation. Operation time calculation means for calculating the operation time t pi in each section of the robot 5 so as to be proportional to the square root of the operation angle θ i calculated by the means 39, 41 is the speed command curve generated by the speed command curve generation means 34 The operating time of the operating time calculation means 40
It is an operation time correction means for correcting the operation time t pi calculated by

【0060】次に動作について説明する。まず、動作角
度演算手段39は、座標変換手段2から例えばロボット
5の3区間先までの関節座標を入力し、その関節座標に
基づいて3区間分の動作角度θi(i=a,b,cとす
る)を演算する。そして、動作時間演算手段40は、そ
の動作角度θi の平方根に比例するようにロボット5の
3区間分の動作時間tpiを演算することになるが、動作
時間tpiを演算する理由は下記の通りである。
Next, the operation will be described. First, the movement angle calculation means 39 inputs the joint coordinates from the coordinate conversion means 2 to, for example, three sections ahead of the robot 5, and based on the joint coordinates, the movement angles θ i (i = a, b, c)) is calculated. Then, the operation time calculation means 40 calculates the operation time t pi for three sections of the robot 5 so as to be proportional to the square root of the operation angle θ i. The reason for calculating the operation time t pi is as follows. Is the street.

【0061】一般に産業用ロボットで用いられるモータ
の性能は、許容最大トルクTmax と定格トルクTrated
で表され、定格トルクTrated に対する許容最大トルク
ma x の比をK(ロボットに使用されるモータではK=
程度であることが多い)とすると、許容最大トルクT
max と定格トルクTrated の間には、下記の関係が成立
するが、ロボットのモータは、許容最大トルクTmax
定格トルクTrated に関して、以下に示す条件を満足す
る必要がある。 Tmax =K×Trated ・・・(16) τ≦Tmax ・・・(17) (2t1×τ2 /ttotal1/2 ≦Trated ・・・(18) ここで、τは図9の加速時間及び減速時間の間のトルク
を示し、加速時間と減速時間は等しくt1とし、t
total は動作開始から終了までの時間である(以下、タ
クトタイムという)。因に、式(18)の左辺は、トル
クの2乗平均値である。
Generally, the performance of a motor used in an industrial robot is the maximum allowable torque T max and the rated torque T rated.
In the represented, the ratio of the allowable maximum torque T ma x the rated torque T rated motor used for K (robot K =
If it is large) that is about 3, the allowable maximum torque T
The following relationship is established between max and the rated torque T rated , but the robot motor must satisfy the following conditions regarding the maximum allowable torque T max and the rated torque T rated . T max = K × T rated ... (16) τ ≦ T max ... (17) (2t1 × τ 2 / t total ) 1/2 ≦ T rated ... (18) where τ is a figure 9 shows the torque between the acceleration time and the deceleration time, and the acceleration time and the deceleration time are equal to t1, and t
total is the time from the start to the end of the operation (hereinafter referred to as tact time). Incidentally, the left side of the equation (18) is the root mean square value of the torque.

【0062】ここで、式(17)と式(18)の等号が
成立するとして、式(16)を式(17)に代入し、整
理すると下記のようになる。 2t1/ttotal =1/K2 ・・・(19) そして、式(19)は加速時間及び減速時間の間にモー
タが許容最大トルクTmax を発生した場合、定格トルク
rated の条件式(18)を満足するためには、加速時
間及び減速時間の合計2t1が、区間全体の時間である
タクトタイムttotal の1/K2 以下でなければならな
いことを示している。K=3の場合には、この割合は1
/9である。以下、この割合のことをデューティと呼
ぶ。
Here, assuming that the equal signs of the equations (17) and (18) hold, the equation (16) is substituted into the equation (17) and rearranged as follows. 2t1 / t total = 1 / K 2 (19) Then, when the motor generates the maximum allowable torque T max during the acceleration time and the deceleration time, the expression (19) is a conditional expression for the rated torque T rated ( In order to satisfy 18), it is shown that the total 2t1 of the acceleration time and the deceleration time must be 1 / K 2 or less of the takt time t total which is the time of the entire section. If K = 3, this ratio is 1
/ 9. Hereinafter, this ratio is referred to as duty.

【0063】換言すると、ロボットのモータは、動作が
頻繁になるとデューティが大きくなるが、かかる場合で
もデューティが1/K2 以下にならなければならないこ
とを示しており、デューティが1/K2 を越えた場合、
最高速度Vmax を下げるかあるいは加速時間及び減速時
間を長くすれば対応できるが、この方法では、モータの
性能を最大限に引き出すことができない問題点がある。
そこで、モータの性能を最大限に引き出しつつデューテ
ィが1/K2 以下になるようにすべく、動作角度θi
平方根に比例するようにロボット5の3区間分の動作時
間tpiを演算するようにしている。
[0063] In other words, the motor of the robot work but increases the duty becomes frequent, duty even such a case has shown that should become 1 / K 2 or less, the duty 1 / K 2 If you exceed
This can be dealt with by lowering the maximum speed V max or lengthening the acceleration time and deceleration time, but this method has a problem that the performance of the motor cannot be maximized.
Therefore, in order to maximize the motor performance and to keep the duty at 1 / K 2 or less, the operation time t pi for three sections of the robot 5 is calculated so as to be proportional to the square root of the operation angle θ i. I am trying.

【0064】以下、動作時間tpiの演算について詳述す
る。まず、タクトタイムttotal を3区間分の動作時間
pi(i=a,b,c)を用いて表すと下記のようにな
る。 ttotal =tpa+tpb+tpc ・・・(20) また、区間iの角加速度をβとすると、区間iの加速時
間t1iは下記のようになる。 t1i=tpi/2−(tpi 2 /4−θiβ1/2 ・・(21)
The calculation of the operating time t pi will be described in detail below. First, the takt time t total is expressed as follows using the operation time t pi (i = a, b, c) for three sections. t total = t pa + t pb + t pc (20) Further, when the angular acceleration in the section i is β , the acceleration time t 1i in the section i is as follows. t 1i = t pi / 2- ( t pi 2/4-θ i / β) 1/2 ·· (21)

【0065】さらに、加減速時のトルクと許容最大トル
クTmax が等しいとすれば、この動作周期中の実効トル
クτrms は下記のようになる。 τrms ={2Tmax 2 (t1a+t1b+t1c)/ttotal1/2 ・・・(22) ここで、実効トルクτrms とモータの定格トルクT
rated との関係を下記の通りであるとする。 τrms =S1/2rated ・・・(23) ただし、Sは(0<S≦1)の係数であり、計算の都合
で平方根をとっている。
Further, assuming that the torque during acceleration / deceleration is equal to the maximum allowable torque T max , the effective torque τ rms during this operation cycle is as follows. τ rms = {2T max 2 (t 1a + t 1b + t 1c ) / t total } 1/2 (22) Here, the effective torque τ rms and the motor rated torque T
The relationship with rated is as follows. τ rms = S 1/2 T rated (23) However, S is a coefficient of (0 <S ≦ 1), and the square root is taken for convenience of calculation.

【0066】式(23)に式(16)、式(21)、式
(22)を代入して係数Sについて整理すると下記のよ
うになる。 S=K2(tpa+tpb+tpc{tpa−(tpa 2 −4θaβ1/2 +tpb−(tpb 2 −4θbβ1/2 +tpc−(tpc 2 −4θcβ1/2 } ・・・(24)
Substituting the equations (16), (21) and (22) into the equation (23) and rearranging the coefficient S is as follows. S = K 2 / (t pa + t pb + t pc) {t pa - (t pa 2 -4θ a / β) 1/2 + t pb - (t pb 2 -4θ b / β) 1/2 + t pc - ( t pc 2 -4θ c / β ) 1/2 } (24)

【0067】また、タクトタイムttotal に対する区間
a,b,cの動作時間tpa,tpb,tpcの比である時間
配分率ra ,rb ,rc (0≦ra ,rb ,rc ≦1)
を用いて各区間の動作時間を表すと下記のようになる。 tpa=ratotal ・・・(25) tpb=rbtotal ・・・(26) tpc=rctotal =(1−ra −rb )ttotal ・・(27) ここで、式(24)に、式(20)、式(25)〜(2
7)を代入したものを時間配分率ra ,rb に関するス
ラック関数FS とすると、関数FS は下記のようにな
る。 FS (ra ,rb ) =K2 /tc {ttotal −(ra 2total 2 −4θaβ1/2 −(rb 2total 2 −4θbβ1/2(1−ra −rb2total 2 −4θcβ1/2 } ・・・(28)
Further, the section for the tact time t total
a, b, operation time t pa of c, t pb, time allocation ratio is the ratio of t pc r a, r b, r c (0 ≦ r a, r b, r c ≦ 1)
The operating time of each section is expressed as below. t pa = r a t total ··· (25) t pb = r b t total ··· (26) t pc = r c t total = (1-r a -r b) t total ·· (27) Here, in equation (24), equation (20) and equations (25) to (2)
If the value obtained by substituting 7) is the slack function F S regarding the time allocation rates r a and r b , the function F S is as follows. F S (r a , r b ) = K 2 / t c {t total − (r a 2 t total 2 −4θ a / β ) 1/2 − (r b 2 t total 2 −4θ b / β ) 1 / 2( (1-r a −r b ) 2 t total 2 −4 θ c / β ) 1/2 } (28)

【0068】極小値を求めるため、スラック関数FS
時間配分率ra ,rb について偏微分して0とおき、時
間配分率ra ,rb について解くと下記のようになる。 Sa =0 ・・・(29) Sb =0 ・・・(30) ra =θa 1/2/H ・・・(31) rb =θb 1/2/H ・・・(32) rc =1−ra −rb =θc 1/2/H ・・・(33) ただし、H=θa 1/2+θb 1/2+θc 1/2
In order to obtain the minimum value, the slack function F S is partially differentiated with respect to the time allocation rates r a and r b and set to 0 , and the time allocation rates r a and r b are solved to obtain the following . ∂ F S / ∂ r a = 0 ··· (29) ∂ F S / ∂ r b = 0 ··· (30) r a = θ a 1/2 / H ··· (31) r b = θ b 1/2 / H ··· (32) r c = 1-r a -r b = θ c 1/2 / H ··· (33) However, H = θ a 1/2 + θ b 1/2 + Θ c 1/2

【0069】従って、式(31)〜(33)から各軸の
時間配分率ra ,rb ,rc を求めることができるの
で、式(31)〜(33)から各軸の時間配分率ra
b ,rc を求めたのちその平均をとると全軸のスラッ
ク関数FS を小さくできる。即ち、モータの定格トルク
rated に対する実効トルクτrms の比率(余裕)を小
さくできる。そこで、かかる時間配分率ra ,rb ,r
c の平均値を式(25)〜(27)を代入し、モータの
定格トルクTrated に対する実効トルクτrms の比率
(余裕)を小さくできる動作時間tpa,tpb,tpcを算
出する。
[0069] Thus, equation (31) - Time to (33) of each axis allocation rate r a, r b, it is possible to determine the r c, formula (31) time distribution rate of each axis from - (33) r a ,
After obtaining r b and r c and then taking the average thereof, the slack function F S of all axes can be made small. That is, the ratio (margin) of the effective torque τ rms to the rated torque T rated of the motor can be reduced. So, take time allocation rate r a, r b, r
The equations (25) to (27) are substituted for the average value of c to calculate the operating times t pa , t pb , and t pc that can reduce the ratio (margin) of the effective torque τ rms to the rated torque T rated of the motor.

【0070】以上より動作時間tpiを求めることができ
るが、上記計算手順を簡単にまとめると下記のようにな
る。 1.3区間分の動作角度θi を用いて、式(31)〜式
(33)に従い時間配分率ra ,rb ,rc を求める。
これをロボットの各軸について行う。 2.それぞれの区間における、各軸の時間配分率ra
b ,rc の平均を求める。 3.式(28)を1とおいて、各軸の動作角度θi と時
間配分率の平均を代入し、各軸ごとの区間全体の動作時
間について解く。 4.各軸ごとの区間全体の動作時間うち、最大のもの
を区間全体の動作時間とす る。 5.区間全体の動作時間に時間配分率の平均をかけたも
のを、各区間の動作時間とする。
From the above, the operating time t pi can be obtained, but the above calculation procedure is summarized as follows. With reference to an operation angle theta i of 1.3 time section, the formula (31) to Formula
(33) in accordance with the time distribution rate r a, r b, determine the r c.
This is done for each axis of the robot. 2. In each section, time allocation rate r a of each axis,
The average of r b and r c is calculated. 3. The equation (28) is set to 1, and the operating angle θ i of each axis and the average of the time allocation rate are substituted, and the operating time of the entire section for each axis is solved. 4. The maximum operating time of the entire section for each axis is the operating time of the entire section. 5. The operating time of each section is obtained by multiplying the operating time of the entire section by the average of the time allocation rates.

【0071】最後に、動作時間修正手段41が、速度指
令曲線生成手段34により生成された速度指令曲線の動
作時間を、上記のように演算された動作時間tpiに修正
し、処理を終了する。以上のように、実施例10によれ
ば、動作時間を修正するので、ロボットの動作が頻繁に
なることによってモータの実効トルクが大きくなるのを
防止できるとともに、ロボットの実効電流がモータの
格電流を越えない範囲内でモータの能力を最大限に発揮
させることができる。
Finally, the operation time correction means 41 corrects the operation time of the speed command curve generated by the speed command curve generation means 34 to the operation time t pi calculated as described above, and the processing ends. . As described above, according to the tenth embodiment, since the operation time is corrected, it is possible to prevent the effective torque of the motor from increasing due to the frequent operation of the robot, and the effective current of the robot is determined by the motor. It is possible to maximize the performance of the motor within a range that does not exceed the rated current.

【0072】実施例11.上記実施例10では、動作角
度θi の平方根に比例するようにロボット5の各区間に
おける動作時間tpiを演算するものについて示したが、
図8に示すように、ロボット5の関節座標と動作角度θ
i からロボットの慣性モーメントIi を計算する慣性モ
ーメント演算手段42を設け、当該慣性モーメントIi
を考慮して動作時間tpiを演算するようにしてもよく、
慣性モーメントIi を考慮した分、実施例10よりも更
に動作時間の短縮が可能になる。この場合、式(31)
〜(33)は下記のように改められる。 ra =(Ia θa1/2 /H ・・・(34) rb =(Ib θb1/2 /H ・・・(35) rc =1−ra −rb =(Ic θc1/2 /H ・・・(36) ただし、H=(Ia θa1/2 +(Ib θb1/2
(Ic θc1/2
Example 11. In the tenth embodiment described above, the operation time t pi in each section of the robot 5 is calculated so as to be proportional to the square root of the operation angle θ i .
As shown in FIG. 8, the joint coordinates of the robot 5 and the motion angle θ
i inertia moment calculation means 42 for calculating the moment of inertia I i of the robot is provided from the moment of inertia I i
The operation time t pi may be calculated in consideration of
Since the moment of inertia I i is taken into consideration, the operation time can be further shortened as compared with the tenth embodiment. In this case, equation (31)
~ (33) is amended as follows. r a = (I a θ a ) 1/2 / H ··· (34) r b = (I b θ b) 1/2 / H ··· (35) r c = 1-r a -r b = (I c θ c ) 1/2 / H (36) where H = (I a θ a ) 1/2 + (I b θ b ) 1/2 +
(I c θ c ) 1/2

【0073】実施例12.図10はこの発明の実施例1
2によるロボット制御装置を示す構成図であり、図にお
いて、43は比例制御器13により発生された速度指令
値ωrが零である場合、モータ5の出力トルクが重力ト
ルクTg より大きくなる範囲内で電流指令リミッタ18
が発生する電流指令値ir *を制限する電流制限手段であ
る。なお、減算器12と比例制御器13から速度指令値
発生手段、減算器14と比例制御器15と積分制御器1
6と加算器17と電流指令リミッタ18から電流指令値
発生手段、電流制御系19から電流制御手段が構成され
ている。
Example 12 FIG. 10 is a first embodiment of the present invention.
2 is a configuration diagram showing a robot control device according to No. 2, in which 43 is a range in which the output torque of the motor 5 is larger than the gravity torque T g when the speed command value ωr generated by the proportional controller 13 is zero. With current command limiter 18
Is a current limiting means for limiting the current command value i r * generated by. It should be noted that the subtractor 12 and the proportional controller 13 include speed command value generating means, the subtractor 14, the proportional controller 15, and the integral controller 1.
6, the adder 17, and the current command limiter 18 constitute current command value generating means, and the current control system 19 constitutes current control means.

【0074】次に動作について説明する。従来の場合、
上述したように、過去の来歴を出力する積分制御器16
があるので、ロボット5が下降して停止した場合より上
昇して停止した場合の方が大きい電流指定値ir2を出力
し、その結果、モータの実電流ia は、ロボット5が下
降して停止した場合より上昇して停止した場合の方が大
きくなっていたが、ロボット5が停止するに至るまでの
移動方向にかかわらず、ロボット5が停止している間は
重力トルクTg を支えるトルクさえあればその位置を保
持することができる。
Next, the operation will be described. Conventionally,
As described above, the integral controller 16 that outputs the past history is output.
Therefore, when the robot 5 descends and stops, the designated current value i r2 that is larger when the robot 5 rises and stops is output. As a result, the actual current i a of the motor decreases when the robot 5 descends. Although it was larger when the robot 5 went up and stopped than when it stopped, a torque that supports the gravity torque T g while the robot 5 is stopped, regardless of the moving direction until the robot 5 stops. If you have it, you can keep its position.

【0075】そこで、この実施例12では、比例制御器
13が零の速度指令値ωr を発生すると、電流制限手段
43は、ロボット5が目標地点に到達して停止している
と判断し、ロボット5が停止するに至るまでの移動方向
にかかわらず一律に電流指令リミッタ18の電流制限値
を、重力トルクTg を支えるために必要な電流指定値i
r2を出力できる範囲内で小さい値に変更する。因に、電
流指令リミッタ18の電流制限値は、速度指令値ωr
零でないときは、モータの最大電流に設定され、速度指
令値ωr が零であるときは、モータの定格電流に設定さ
れる。これにより、ロボット5が上昇して停止した場合
でも、モータの定格電流以下に制御される。
Therefore, in the twelfth embodiment, when the proportional controller 13 generates a speed command value ω r of zero, the current limiting means 43 determines that the robot 5 has reached the target point and stopped, Regardless of the moving direction until the robot 5 stops, the current limit value of the current command limiter 18 is uniformly set to the specified current value i required to support the gravity torque T g.
Change to a smaller value within the range that r2 can be output. In this connection, the current limit value of the current command limiter 18, when the speed command value omega r is not zero, is set to the maximum current of the motor, when the speed command value omega r is zero, set to the rated current of the motor To be done. As a result, even if the robot 5 rises and stops, it is controlled to be equal to or less than the rated current of the motor.

【0076】実施例13.上記実施例12では、モータ
5の出力トルクが重力トルクTg より大きくなる範囲内
で電流指令リミッタ18が発生する電流指令値ir*
制限するものについて示したが、モータ5の出力トルク
が重力トルクTg と摩擦トルクTf との差分より大きく
なる範囲内で電流指令リミッタ18が発生する電流指令
値ir * を制限するようにしてもよい。つまり、停止時
の摩擦トルクTf が大きい場合、重力トルクTg から摩
擦トルクTf を差し引いた分の出力トルクがあれば、そ
の位置を保持できることに着目したものである。従っ
て、実施例13によれば、実施例12よりも停止時のモ
ータの実電流を小さくすることができるので、更に容量
の小さいモータを選定することができる。
Example 13 In the above-described twelfth embodiment, the current command value ir * generated by the current command limiter 18 is limited within a range in which the output torque of the motor 5 becomes larger than the gravity torque T g. The current command value i r * generated by the current command limiter 18 may be limited within a range larger than the difference between the torque T g and the friction torque T f . That is, when the friction torque T f at the time of stop is large, the position can be held if there is an output torque corresponding to the gravity torque T g minus the friction torque T f . Therefore, according to the thirteenth embodiment, the actual current of the motor at the time of the stop can be made smaller than that of the twelfth embodiment, so that the motor having a smaller capacity can be selected.

【0077】実施例14.上記実施例12,13では、
比例制御器13が発生する速度指令値ωr が零であるか
否かによって電流指令値ir * を制限するものについて
示したが、ロボット5の実速度ωa が零あるか否かに
よって電流指令値ir * を制限するようにしてもよい。
Example 14. In Examples 12 and 13 above,
Although the speed command value omega r of the proportional controller 13 is generated is shown for limiting the current command value i r * by whether zero, depending on whether the actual speed omega a of the robot 5 is zero The current command value i r * may be limited.

【0078】[0078]

【発明の効果】以上のように、請求項1の発明によれ
ば、ロボットが中点に到達したときの速度が最高速度演
算手段により演算された最高速度であるとした場合の各
軸の駆動トルクが許容最大トルクを越えない範囲内で最
小の加速時間及び減速時間を決定し、その決定結果と最
高速度に基づいて速度指令曲線を生成するように構成し
たので、ロボットの加速開始地点及び減速終了地点がい
かなる地点であっても常にモータの能力を最大限に発揮
できる速度指令曲線を生成できるようになり、その結
果、ロボットの動作時間を短縮できる効果がある。
As described above, according to the invention of claim 1, each axis is driven when the speed when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculating means. The minimum acceleration time and deceleration time are determined within the range where the torque does not exceed the maximum allowable torque, and the speed command curve is generated based on the determination result and the maximum speed. It becomes possible to always generate a speed command curve that maximizes the performance of the motor regardless of the end point, and as a result, it is possible to shorten the operation time of the robot.

【0079】請求項2の発明によれば、加速時間及び減
速時間を決定した後、最高速度演算手段により演算され
た最高速度に基づいて加速区間及び減速区間における何
れかの地点において再度加速時間及び減速時間を決定す
るように構成したので、モータの能力を発揮させるのに
より最適な速度指令曲線が得られるようになり、その結
果、請求項1の発明より更に動作時間を短縮できる効果
がある。
According to the second aspect of the present invention, after the acceleration time and the deceleration time are determined, the acceleration time and the deceleration time are set again at any point in the acceleration section and the deceleration section based on the maximum speed calculated by the maximum speed calculation means. Since the deceleration time is determined, the optimum speed command curve can be obtained by exerting the ability of the motor, and as a result, the operation time can be further shortened as compared with the invention of claim 1.

【0080】請求項3の発明によれば、比較手段により
モータの負荷量が許容負荷量を越えていると判定された
場合にはロボットの各軸の許容最大トルクの値を下方修
正し、越えていないと判定された場合にはその許容最大
トルクの値を上方修正するように構成したので、モータ
の実効トルクが定格トルクを越えることがないようにモ
ータを保護できる効果がある。
According to the third aspect of the invention, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum allowable torque value of each axis of the robot is corrected downward and exceeds the maximum allowable torque value. If it is determined that the allowable maximum torque is not corrected, the value is corrected upward, so that the effective torque of the motor can be protected from exceeding the rated torque.

【0081】請求項4の発明によれば、比較手段により
モータの負荷量が許容負荷量を越えていると判定された
場合にはロボットの各軸の最高速度の値を下方修正し、
越えていないと判定された場合にはその最高速度の値を
上方修正するように構成したので、モータの実効トルク
が定格トルクを越えることがないようにモータを保護で
きる効果がある。
According to the invention of claim 4, when the comparison means determines that the load amount of the motor exceeds the allowable load amount, the maximum speed value of each axis of the robot is corrected downward,
If it is determined that the maximum speed is not exceeded, the maximum speed value is corrected upward, so that the effective torque of the motor can be protected from exceeding the rated torque.

【0082】請求項5の発明によれば、動作角度演算手
段により演算された動作角度の平方根に比例するように
ロボットの各区間における動作時間を演算し、その動作
時間によって、速度指令曲線生成手段により生成された
速度指令曲線の動作時間を修正するように構成したの
で、ロボットが頻繁に動作しても、ロボットの実効電流
が定格電流を越えない範囲内でモータの能力を最大限に
発揮できるようになり、その結果、ロボットの動作時間
を短縮できる効果がある。
According to the invention of claim 5, the operation time in each section of the robot is calculated so as to be proportional to the square root of the operation angle calculated by the operation angle calculation means, and the speed command curve generation means is calculated by the operation time. Since it is configured to correct the operation time of the speed command curve generated by, even if the robot moves frequently, the maximum performance of the motor can be achieved within the range where the effective current of the robot does not exceed the rated current. As a result, there is an effect that the operation time of the robot can be shortened.

【0083】請求項6の発明によれば、動作角度演算手
段により演算された動作角度の平方根とロボットの各区
間における慣性モーメントの平方根の積に比例するよう
にロボットの各区間における動作時間を演算し、その動
作時間によって、速度指令曲線生成手段により生成され
た速度指令曲線の動作時間を修正するように構成したの
で、ロボットが頻繁に動作しても、ロボットの実効電流
が定格電流を越えない範囲内でモータの能力を最大限に
発揮できるようになり、その結果、ロボットの動作時間
を短縮できる効果がある。
According to the sixth aspect of the present invention, the operation time in each section of the robot is calculated so as to be proportional to the product of the square root of the operation angle calculated by the operation angle calculation means and the square root of the moment of inertia in each section of the robot. However, the operating time of the speed command curve generated by the speed command curve generating means is modified according to the operating time, so that the effective current of the robot does not exceed the rated current even if the robot operates frequently. It is possible to maximize the ability of the motor within the range, and as a result, the operation time of the robot can be shortened.

【0084】請求項7の発明によれば、速度指令値発生
手段により発生された速度指令値が零である場合、モー
タの出力トルクが重力トルクより大きくなる範囲内で電
流指令値発生手段が発生する電流指令値を制限するよう
に構成したので、ロボット停止時のモータの実電流が低
減され、容量の小さいモータを選定することができる効
果がある。
According to the invention of claim 7, when the speed command value generated by the speed command value generating means is zero, the current command value generating means is generated within a range in which the output torque of the motor is larger than the gravity torque. Since the current command value to be controlled is limited, the actual current of the motor when the robot is stopped is reduced, and it is possible to select a motor having a small capacity.

【0085】請求項8の発明によれば、速度指令値発生
手段により発生された速度指令値が零である場合、モー
タの出力トルクが重力トルクと摩擦トルクとの差分より
大きくなる範囲内で電流指令値発生手段が発生する電流
指令値を制限するように構成したので、請求項7の発明
より更にロボット停止時のモータの実電流が低減され、
更に容量の小さいモータを選定することができる効果が
ある。
According to the invention of claim 8, when the speed command value generated by the speed command value generating means is zero, the output current of the motor is within the range in which the output torque is larger than the difference between the gravity torque and the friction torque. Since the current command value generated by the command value generating means is limited, the actual current of the motor when the robot is stopped is further reduced as compared with the invention of claim 7.
Further, there is an effect that a motor having a smaller capacity can be selected.

【手続補正3】[Procedure 3]

【補正対象書類名】図面[Document name to be corrected] Drawing

【補正対象項目名】図5[Name of item to be corrected] Figure 5

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【図5】 [Figure 5]

【手続補正4】[Procedure amendment 4]

【補正対象書類名】図面[Document name to be corrected] Drawing

【補正対象項目名】図6[Name of item to be corrected] Figure 6

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【図6】 [Figure 6]

【手続補正5】[Procedure Amendment 5]

【補正対象書類名】図面[Document name to be corrected] Drawing

【補正対象項目名】図10[Name of item to be corrected] Fig. 10

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【図10】 [Figure 10]

【手続補正6】[Procedure correction 6]

【補正対象書類名】図面[Document name to be corrected] Drawing

【補正対象項目名】図14[Name of item to be corrected] Fig. 14

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【図14】 FIG. 14

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G05B 19/18 7531−3H G05B 19/407 Q (72)発明者 樋口 峰夫 尼崎市塚口本町8丁目1番1号 三菱電機 株式会社産業システム研究所内─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification code Internal reference number FI Technical display location G05B 19/18 7531-3H G05B 19/407 Q (72) Inventor Higuchi Mineo 8 Tsukaguchihonmachi, Amagasaki-shi No. 1 in Mitsubishi Electric Corporation Industrial Systems Research Center

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 ロボットの各軸の最高速度と許容最大ト
ルクを記憶する記憶手段と、上記記憶手段により記憶さ
れた最高速度で上記ロボットが加速開始地点から減速終
了地点まで移動した場合の移動時間を該ロボットの各軸
ごとに演算するとともに、その演算した移動時間のなか
で最大の移動時間を要して該ロボットが加速開始地点か
ら減速終了地点まで移動した場合の最高速度を該ロボッ
トの各軸ごとに演算する最高速度演算手段と、上記ロボ
ットが中点に到達したときの速度が上記最高速度演算手
段により演算された最高速度であるとした場合の各軸の
駆動トルクが上記許容最大トルクを越えない範囲内で最
小の加速時間及び減速時間を決定する加減速時間決定手
段と、上記加減速時間決定手段の決定結果及び上記最高
速度演算手段により演算された最高速度に基づいて速度
指令曲線を生成する速度指令曲線生成手段と、上記速度
指令曲線生成手段により生成された速度指令曲線にした
がって上記ロボットの各軸を駆動するモータを制御する
モータ制御手段とを備えたロボット制御装置。
1. A storage means for storing the maximum speed and the maximum allowable torque of each axis of the robot, and a movement time when the robot moves from an acceleration start point to a deceleration end point at the maximum speed stored by the storage means. Is calculated for each axis of the robot, and the maximum speed in the case where the robot moves from the acceleration start point to the deceleration end point by requiring the maximum movement time among the calculated movement times, The maximum speed calculation means for calculating each axis and the drive torque of each axis when the speed when the robot reaches the midpoint is the maximum speed calculated by the maximum speed calculation means The acceleration / deceleration time determining means for determining the minimum acceleration time and deceleration time within the range not exceeding the above, and the determination result of the acceleration / deceleration time determining means and the maximum speed calculating means. Speed command curve generating means for generating a speed command curve based on the calculated maximum speed, and motor control for controlling a motor for driving each axis of the robot according to the speed command curve generated by the speed command curve generating means. And a robot control device.
【請求項2】 上記加減速時間決定手段は、加速時間及
び減速時間を決定した後、加速区間及び減速区間におけ
る何れかの地点において上記最高速度演算手段により演
算された最高速度に基づいて再度加速時間及び減速時間
を決定し、上記速度指令曲線生成手段が、その決定結果
及び最高速度にしたがって速度指令曲線を生成すること
を特徴とする請求項1記載のロボット制御装置。
2. The acceleration / deceleration time determination means, after determining the acceleration time and the deceleration time, accelerates again based on the maximum speed calculated by the maximum speed calculation means at any point in the acceleration section and the deceleration section. 2. The robot controller according to claim 1, wherein the time and deceleration time are determined, and the speed command curve generating means generates a speed command curve according to the determination result and the maximum speed.
【請求項3】 上記モータの負荷量を検出する負荷量検
出手段と、上記負荷量検出手段により検出された負荷量
がモータの許容負荷量を越えているか否かを判定する比
較手段と、上記比較手段によりモータの負荷量が許容負
荷量を越えていると判定された場合には上記ロボットの
各軸の許容最大トルクの値を下方修正し、越えていない
と判定された場合にはその許容最大トルクの値を上方修
正する許容最大トルク修正手段とを設けたことを特徴と
する請求項1または請求項2記載のロボット制御装置。
3. A load amount detecting means for detecting the load amount of the motor, a comparing means for judging whether or not the load amount detected by the load amount detecting means exceeds an allowable load amount of the motor, and If the comparison means determines that the motor load exceeds the allowable load, the value of the maximum allowable torque of each axis of the robot is corrected downward, and if it is determined that the maximum load does not exceed the allowable maximum torque. The robot controller according to claim 1 or 2, further comprising: an allowable maximum torque correction means for upwardly correcting the maximum torque value.
【請求項4】 上記モータの負荷量を検出する負荷量検
出手段と、上記負荷量検出手段により検出された負荷量
がモータの許容負荷量を越えているか否かを判定する比
較手段と、上記比較手段によりモータの負荷量が許容負
荷量を越えていると判定された場合には上記ロボットの
各軸の最高速度の値を下方修正し、越えていないと判定
された場合にはその最高速度の値を上方修正する最高速
度修正手段とを設けたことを特徴とする請求項1または
請求項2記載のロボット制御装置。
4. A load amount detecting means for detecting a load amount of the motor, a comparing means for judging whether or not the load amount detected by the load amount detecting means exceeds an allowable load amount of the motor, and If the comparison means determines that the motor load exceeds the allowable load, the maximum speed value of each axis of the robot is corrected downward, and if it is determined that the maximum load is not exceeded, the maximum speed is determined. 3. The robot controller according to claim 1, further comprising a maximum speed correction means for upwardly correcting the value of.
【請求項5】 上記ロボットの移動命令に基づいて少な
くとも当該ロボットの2区間分の動作角度を演算する動
作角度演算手段と、上記動作角度演算手段により演算さ
れた動作角度の平方根に比例するように上記ロボットの
各区間における動作時間を演算する動作時間演算手段
と、上記速度指令曲線生成手段により生成された速度指
令曲線の動作時間を上記動作時間演算手段により演算さ
れた動作時間に修正する動作時間修正手段とを設けたこ
とを特徴とする請求項1または請求項2記載のロボット
制御装置。
5. A motion angle calculation means for calculating at least a motion angle of two sections of the robot based on the movement command of the robot, and a motion angle calculation means proportional to a square root of the motion angle calculated by the motion angle calculation means. An operation time calculating means for calculating an operation time in each section of the robot, and an operation time for correcting the operation time of the speed command curve generated by the speed command curve generating means to the operation time calculated by the operation time calculating means. 3. The robot controller according to claim 1, further comprising a correction unit.
【請求項6】 上記ロボットの移動命令に基づいて少な
くとも当該ロボットの2区間分の動作角度を演算する動
作角度演算手段と、上記動作角度演算手段により演算さ
れた動作角度の平方根と上記ロボットの各区間における
慣性モーメントの積に比例するように上記ロボットの各
区間における動作時間を演算する動作時間演算手段と、
上記速度指令曲線生成手段により生成された速度指令曲
線の動作時間を上記動作時間演算手段により演算された
動作時間に修正する動作時間修正手段とを設けたことを
特徴とする請求項1または請求項2記載のロボット制御
装置。
6. A motion angle calculation means for calculating a motion angle of at least two sections of the robot based on a movement command of the robot, a square root of the motion angle calculated by the motion angle calculation means, and each of the robots. Operation time calculating means for calculating the operation time in each section of the robot so as to be proportional to the product of the moment of inertia in the section;
The operation time correction means for correcting the operation time of the speed command curve generated by the speed command curve generation means to the operation time calculated by the operation time calculation means is provided. 2. The robot controller according to 2.
【請求項7】 ロボットの位置指令値と実位置の偏差に
応じて速度指令値を発生する速度指令値発生手段と、上
記速度指令値発生手段により発生された速度指令値と実
速度の偏差を演算し、その偏差に応じて電流指令値を発
生する電流指令値発生手段と、上記電流指令値発生手段
により発生された電流指令値に基づいて上記モータの出
力電流を制御する電流制御手段とを備えたロボット制御
装置において、上記速度指令値発生手段により発生され
た速度指令値が零である場合、上記モータの出力トルク
が重力トルクより大きくなる範囲内で上記電流指令値発
生手段が発生する電流指令値を制限する電流制限手段を
設けたことを特徴とするロボット制御装置。
7. A speed command value generating means for generating a speed command value according to a deviation between a position command value and an actual position of the robot, and a deviation between the speed command value generated by the speed command value generating means and the actual speed. Current command value generating means for calculating and generating a current command value according to the deviation, and current control means for controlling the output current of the motor based on the current command value generated by the current command value generating means. In the provided robot control device, when the speed command value generated by the speed command value generating means is zero, the current generated by the current command value generating means is within a range in which the output torque of the motor is larger than the gravity torque. A robot controller characterized by comprising current limiting means for limiting a command value.
【請求項8】 ロボットの位置指令値と実位置の偏差に
応じて速度指令値を発生する速度指令値発生手段と、上
記速度指令値発生手段により発生された速度指令値と実
速度の偏差を演算し、その偏差に応じて電流指令値を発
生する電流指令値発生手段と、上記電流指令値発生手段
により発生された電流指令値に基づいて上記モータの出
力電流を制御する電流制御手段とを備えたロボット制御
装置において、上記速度指令値発生手段により発生され
た速度指令値が零である場合、上記モータの出力トルク
が重力トルクと摩擦トルクとの差分より大きくなる範囲
内で上記電流指令値発生手段が発生する電流指令値を制
限する電流制限手段を設けたことを特徴とするロボット
制御装置。
8. A speed command value generating means for generating a speed command value according to a deviation between a position command value and an actual position of the robot, and a deviation between the speed command value generated by the speed command value generating means and the actual speed. Current command value generating means for calculating and generating a current command value according to the deviation, and current control means for controlling the output current of the motor based on the current command value generated by the current command value generating means. In the robot controller provided, when the speed command value generated by the speed command value generating means is zero, the current command value is within a range in which the output torque of the motor is larger than the difference between the gravity torque and the friction torque. A robot controller, comprising: current limiting means for limiting a current command value generated by the generating means.
JP33826293A 1993-12-28 1993-12-28 Robot controller Expired - Lifetime JP3359720B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33826293A JP3359720B2 (en) 1993-12-28 1993-12-28 Robot controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33826293A JP3359720B2 (en) 1993-12-28 1993-12-28 Robot controller

Publications (2)

Publication Number Publication Date
JPH07200033A true JPH07200033A (en) 1995-08-04
JP3359720B2 JP3359720B2 (en) 2002-12-24

Family

ID=18316471

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33826293A Expired - Lifetime JP3359720B2 (en) 1993-12-28 1993-12-28 Robot controller

Country Status (1)

Country Link
JP (1) JP3359720B2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997001801A1 (en) * 1995-06-29 1997-01-16 Fanuc Ltd Method of setting acceleration/deceleration operation of robot
JP2006026828A (en) * 2004-07-16 2006-02-02 Toyota Motor Corp Programming method for robot movement
JP2006281536A (en) * 2005-03-31 2006-10-19 Yushin Precision Equipment Co Ltd Molded product ejector
JP2008132595A (en) * 2008-02-08 2008-06-12 Mitsubishi Electric Corp Robot control device
JP2009279712A (en) * 2008-05-23 2009-12-03 Yaskawa Electric Corp Robot
JP2012061560A (en) * 2010-09-16 2012-03-29 Denso Wave Inc Robot control device
JP2012228775A (en) * 2012-08-29 2012-11-22 Yaskawa Electric Corp Robot
JP2013166224A (en) * 2012-02-16 2013-08-29 Canon Inc Robot control apparatus, robot, and program thereof
JP2013198962A (en) * 2012-03-26 2013-10-03 Denso Wave Inc Robot control method and robot control device
CN109732594A (en) * 2018-12-28 2019-05-10 深圳市越疆科技有限公司 A kind of robot control method, system and robot
WO2019102947A1 (en) 2017-11-27 2019-05-31 川崎重工業株式会社 Robot control device and robot system provided with same
JP2019136841A (en) * 2018-02-14 2019-08-22 ファナック株式会社 Robot system and control method of the same performing learning control based on processing result
WO2019215980A1 (en) * 2018-05-10 2019-11-14 パナソニックIpマネジメント株式会社 Robot control device
JP7142803B1 (en) * 2021-09-03 2022-09-27 三菱電機株式会社 Robot control system, robot control device, motion planning device, robot control program and motion planning program

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997001801A1 (en) * 1995-06-29 1997-01-16 Fanuc Ltd Method of setting acceleration/deceleration operation of robot
US5811952A (en) * 1995-06-29 1998-09-22 Fanuc Ltd. Method of setting accelerating/decelerating motion of robot
JP2006026828A (en) * 2004-07-16 2006-02-02 Toyota Motor Corp Programming method for robot movement
JP4613539B2 (en) * 2004-07-16 2011-01-19 トヨタ自動車株式会社 Robot motion planning method
JP2006281536A (en) * 2005-03-31 2006-10-19 Yushin Precision Equipment Co Ltd Molded product ejector
JP4654063B2 (en) * 2005-03-31 2011-03-16 株式会社ユーシン精機 Mold take-out device
JP2008132595A (en) * 2008-02-08 2008-06-12 Mitsubishi Electric Corp Robot control device
JP2009279712A (en) * 2008-05-23 2009-12-03 Yaskawa Electric Corp Robot
JP2012061560A (en) * 2010-09-16 2012-03-29 Denso Wave Inc Robot control device
JP2013166224A (en) * 2012-02-16 2013-08-29 Canon Inc Robot control apparatus, robot, and program thereof
JP2013198962A (en) * 2012-03-26 2013-10-03 Denso Wave Inc Robot control method and robot control device
JP2012228775A (en) * 2012-08-29 2012-11-22 Yaskawa Electric Corp Robot
WO2019102947A1 (en) 2017-11-27 2019-05-31 川崎重工業株式会社 Robot control device and robot system provided with same
JP2019136841A (en) * 2018-02-14 2019-08-22 ファナック株式会社 Robot system and control method of the same performing learning control based on processing result
US11117257B2 (en) 2018-02-14 2021-09-14 Fanuc Corporation Robot system for performing learning control based on machining results and control method therefor
WO2019215980A1 (en) * 2018-05-10 2019-11-14 パナソニックIpマネジメント株式会社 Robot control device
JPWO2019215980A1 (en) * 2018-05-10 2021-05-20 パナソニックIpマネジメント株式会社 Robot control device
CN109732594A (en) * 2018-12-28 2019-05-10 深圳市越疆科技有限公司 A kind of robot control method, system and robot
JP7142803B1 (en) * 2021-09-03 2022-09-27 三菱電機株式会社 Robot control system, robot control device, motion planning device, robot control program and motion planning program
WO2023032156A1 (en) * 2021-09-03 2023-03-09 三菱電機株式会社 Robot control system, robot control device, motion planning device, robot control program, and motion planning program

Also Published As

Publication number Publication date
JP3359720B2 (en) 2002-12-24

Similar Documents

Publication Publication Date Title
JPH07200033A (en) Robot controller
US6566835B1 (en) Nc machine tool, and method of controlling nc machine tool
US20030205984A1 (en) Method of controlling numerically controlled machine tool and numerically controlled machine tool
JPH11277468A (en) Control device for robot
US20050033460A1 (en) Position control device and position control method for machine tools
JPS6126107A (en) Computer control for multiaxial industrial robot
WO2007046257A1 (en) Motor control device, method, and program storage medium
JP4192780B2 (en) Robot control device
JP2014123188A (en) Distribution control device and distribution control method
JP6021478B2 (en) Robot control apparatus and robot control method
JPH09282020A (en) Servo motor driving device
JPH0916241A (en) Method for setting acceleration/deceleration operation of robot
JPH03130808A (en) Method and device for control of robot
US20030173928A1 (en) Servo control method
JPS60263206A (en) Control device of manipulator
JP3339642B2 (en) How to determine the acceleration / deceleration time constant of the robot
JPH0392911A (en) Robot control method for sliding mode control
Sawodny et al. Trajectory generation for the trajectory tracking control of a fire rescue turntable ladder
JPH0623932B2 (en) Servo control method
JP4513071B2 (en) Robot control device
US20180239344A1 (en) Motor controller and method for controlling motor
US20010053941A1 (en) Control apparatus
JP2918269B2 (en) Robot movement control method
JP2012061560A (en) Robot control device
JPH0769734B2 (en) Manipulator device

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071011

Year of fee payment: 5

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081011

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091011

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091011

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101011

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111011

Year of fee payment: 9

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121011

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131011

Year of fee payment: 11

EXPY Cancellation because of completion of term