JP2012192485A - Method and device for controlling robot - Google Patents

Method and device for controlling robot Download PDF

Info

Publication number
JP2012192485A
JP2012192485A JP2011058021A JP2011058021A JP2012192485A JP 2012192485 A JP2012192485 A JP 2012192485A JP 2011058021 A JP2011058021 A JP 2011058021A JP 2011058021 A JP2011058021 A JP 2011058021A JP 2012192485 A JP2012192485 A JP 2012192485A
Authority
JP
Japan
Prior art keywords
time
pattern
timing
speed command
comparison
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
JP2011058021A
Other languages
Japanese (ja)
Other versions
JP5678746B2 (en
Inventor
Akifumi Enomoto
聡文 榎本
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.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
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 Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2011058021A priority Critical patent/JP5678746B2/en
Publication of JP2012192485A publication Critical patent/JP2012192485A/en
Application granted granted Critical
Publication of JP5678746B2 publication Critical patent/JP5678746B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce energy to be consumed when performing a PTP operation without prolonging an operation time.SOLUTION: When performing a PTP control of a robot, arithmetic processing for calculating a speed command to drive each shaft so that the operation time at each shaft unit is the shortest is executed, and timing determination processing for determining timing for executing each of the calculated speed commands is executed. In the timing determination processing, the speed command is set to a reference pattern in order from the speed command having the longest operation time, and it is determined whether deceleration of a comparison pattern to be the speed command having the next longest operation time can be finished till the deceleration of the reference pattern is started. As a result of the determination, when the deceleration of the comparison pattern can be finished up to starting of the deceleration of the reference pattern, timing for executing the comparison pattern is determined so that an operation finishing point of time of the comparison pattern coincides with a deceleration start point of time of the reference pattern.

Description

本発明は、モータにより駆動される複数の軸を有するロボットの手先を現在位置から目標位置までPTP動作により移動させる際におけるロボットの制御方法およびロボットの制御装置に関する。   The present invention relates to a robot control method and a robot control device for moving a hand of a robot having a plurality of axes driven by a motor from a current position to a target position by a PTP operation.

ロボットの各関節(各軸)は、それぞれモータにより駆動されるようになっており、これらモータは、コントローラに内蔵されるモータアンプにより駆動される。モータアンプは、例えばインバータ回路を主体として構成されており、電源回路から一対の電源線を介して与えられる直流電圧(バス電圧)を所定の周波数を持つ交流電圧に変換してモータへの電力供給を行う。   Each joint (each axis) of the robot is driven by a motor, and these motors are driven by a motor amplifier built in the controller. The motor amplifier is composed mainly of an inverter circuit, for example, and converts a DC voltage (bus voltage) supplied from a power supply circuit via a pair of power supply lines into an AC voltage having a predetermined frequency to supply power to the motor. I do.

このような構成において、モータを減速動作させる際にはモータ側からモータアンプ側にエネルギーが回生され、これに伴いバス電圧が上昇する。そのため、コントローラには、電源線に接続される各回路素子(インバータ回路のスイッチング素子、電源線間に接続されるコンデンサなど)の定格を超えてバス電圧が上昇しないように、上記回生されたエネルギー(回生エネルギー)を熱エネルギーに変換して放出する回生消費回路が設けられている。   In such a configuration, when the motor is decelerated, energy is regenerated from the motor side to the motor amplifier side, and the bus voltage increases accordingly. Therefore, the regenerative energy is supplied to the controller so that the bus voltage does not rise beyond the rating of each circuit element connected to the power supply line (switching element of the inverter circuit, capacitor connected between the power supply lines, etc.). A regenerative consumption circuit that converts (regenerative energy) into thermal energy and releases the heat energy is provided.

回生消費回路では、電源線間に直列に設けられた回生抵抗に回生電流を流すことで、回生エネルギーを熱エネルギーに変換している。つまり、回生エネルギーは、有効利用されることなく、回生消費回路により消費されていた。特に、ロボットの手先を現在位置から目標位置までPTP(Point to Point)動作により移動させるように制御する際には、上記回生エネルギーによるロスが顕著に表れる。   In the regenerative consumption circuit, regenerative energy is converted into thermal energy by flowing a regenerative current through a regenerative resistor provided in series between power lines. That is, the regenerative energy is consumed by the regenerative consumption circuit without being effectively used. Particularly, when the robot hand is controlled to move from the current position to the target position by a PTP (Point to Point) operation, the loss due to the regenerative energy appears remarkably.

図14は、6軸の垂直多関節型ロボットをPTP制御する際における各軸を駆動するための速度指令およびバス電圧の一例を示している。PTP制御では、現在位置から目標位置までの間におけるロボットの姿勢などについては制限されない。そのため、通常は、動作時間が最も長くなる軸(図14では第1軸J1)の速度指令に対して加速期間や減速期間を合わせるように他の軸(図14では第2軸J2〜第6軸J6)に対する速度指令が求められる。すなわち、一般的なPTP制御では、各軸の減速期間が重なるため、その減速期間にモータ側から回生される回生エネルギーが大きくなる。そのため、減速期間におけるバス電圧の上昇量も大きくなり、回生消費回路において熱として消費されるエネルギーも大きくなってしまう。   FIG. 14 shows an example of a speed command and a bus voltage for driving each axis when PTP control is performed on a six-axis vertical articulated robot. In the PTP control, the posture of the robot between the current position and the target position is not limited. For this reason, normally, other axes (second axis J2 to sixth axis in FIG. 14) are matched with the speed command of the axis (first axis J1 in FIG. 14) with the longest operation time. A speed command for axis J6) is determined. That is, in general PTP control, since the deceleration periods of the respective axes overlap, regenerative energy regenerated from the motor side during the deceleration period increases. For this reason, the amount of increase in bus voltage during the deceleration period also increases, and the energy consumed as heat in the regeneration consumption circuit also increases.

一方、特許文献1には、回生時にバッテリおよびインバータ間の電力供給経路に直列に介在するスイッチをオンすることでモータ側から回生するエネルギーをバッテリにて回収する構成が開示されている。   On the other hand, Patent Document 1 discloses a configuration in which the battery recovers energy regenerated from the motor side by turning on a switch that is interposed in series in the power supply path between the battery and the inverter during regeneration.

特開2010−22157号公報JP 2010-22157 A

ロボットのシステムにおいて、各軸を駆動するモータに電力を供給するための電源線間には、バッテリと比べて容量の小さいコンデンサが接続されるのが一般的である。つまり、ロボットのシステムにおいては、そもそもバッテリを設けること自体が想定されていない。そのため、バッテリに回生エネルギーを回収するという特許文献1に記載された従来技術をロボットのシステムに適用することはできない。   In a robot system, a capacitor having a smaller capacity than that of a battery is generally connected between power lines for supplying electric power to motors that drive the respective axes. That is, in the robot system, it is not assumed that a battery is provided. Therefore, the prior art described in Patent Document 1 that collects regenerative energy in a battery cannot be applied to a robot system.

一方、各軸の動作時間を引き延ばせば、減速期間におけるバス電圧の上昇量を比較的低く抑えることが可能となり、回生消費回路において熱として消費される無駄なエネルギーは低減される。しかし、本来、ロボットが工場などにおいて用いられる意義は、早く且つ正確に所定の作業を繰り返し実行するところにある。従って、消費エネルギーの低減を重視して動作時間をむやみに長くするということは、上記したロボットが用いられる意義に反するため、好ましい解決手法とは言えない。   On the other hand, if the operating time of each axis is extended, the amount of increase in bus voltage during the deceleration period can be kept relatively low, and useless energy consumed as heat in the regeneration consumption circuit is reduced. However, the significance of using a robot in a factory or the like is to repeatedly execute a predetermined operation quickly and accurately. Therefore, increasing the operation time unnecessarily with an emphasis on reducing energy consumption is not a preferable solution because it is contrary to the significance of using the robot described above.

本発明は上記事情に鑑みてなされたものであり、その目的は、動作時間を引き延ばすことなく、PTP動作を行う際に消費するエネルギーを低減することができるロボットの制御方法およびロボットの制御装置を提供することにある。   The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a robot control method and a robot control apparatus capable of reducing energy consumed when performing a PTP operation without extending the operation time. It is to provide.

請求項1または4に記載の手段によれば、複数の軸を有するロボットの手先を現在位置から目標位置までPTP(Point to Point)動作により移動させる際、各軸に対する速度指令をそれぞれ演算する演算処理を実行し、それら演算された各速度指令のタイミングを決定するタイミング決定処理を実行する。演算処理では、各軸単位での動作時間が最も短くなるように各軸を駆動するための速度指令が演算される。通常、PTP動作における速度指令は、加速期間から始まって減速期間で終わるようになっている。なお、加速期間および減速期間の間に等速期間が含まれる場合もある。すなわち、速度指令は、いわゆる三角形状または台形状のパターンになる。   According to the means of claim 1 or 4, when moving the hand of a robot having a plurality of axes from the current position to the target position by a PTP (Point to Point) operation, a calculation for calculating a speed command for each axis is performed. Processing is executed, and timing determination processing for determining the timing of each calculated speed command is executed. In the calculation process, a speed command for driving each axis is calculated so that the operation time for each axis is the shortest. Usually, the speed command in the PTP operation starts from the acceleration period and ends in the deceleration period. A constant speed period may be included between the acceleration period and the deceleration period. That is, the speed command is a so-called triangular or trapezoidal pattern.

一般に、PTP動作を行うロボットの制御においては、動作時間が最も長くなる軸の速度指令に対して加速期間や減速期間を合わせるように他の軸に対する速度指令が求められる。すなわち、一般的なPTP動作では、各軸が同時に動作を開始して同時に動作を終了するような速度指令が求められる。これに対し、本手段の演算処理では、例えばロボットの仕様上あるいは構造上における制限範囲内の最高加速度でもって各軸を駆動するための速度指令が求められる。また、通常、上記最高加速度や移動量(回転量)は、軸ごとに異なる。従って、本手段の演算処理で求められる各速度指令は、基本的には互いに動作時間が異なることになる。そのため、後述するタイミング決定処理において、各速度指令を実行するタイミングを、全体の動作時間の範囲内で適宜設定することが可能となる。   In general, in the control of a robot that performs a PTP operation, speed commands for other axes are required so that the acceleration period and the deceleration period are matched to the speed command for the axis having the longest operation time. In other words, in a general PTP operation, a speed command is required so that each axis simultaneously starts and ends simultaneously. On the other hand, in the arithmetic processing of this means, for example, a speed command for driving each axis with a maximum acceleration within a limited range in the specification or structure of the robot is obtained. Further, the maximum acceleration and the movement amount (rotation amount) usually differ for each axis. Accordingly, the speed commands obtained by the arithmetic processing of this means basically have different operating times. Therefore, in the timing determination process described later, the timing for executing each speed command can be set as appropriate within the range of the entire operation time.

タイミング決定処理では、演算された各速度指令のうち、軸の動作時間が最も長くなる速度指令における動作開始時点(加速開始時点)が全体の動作開始時点として規定され、その軸の動作時間が最も長くなる速度指令を実行するタイミングが決定される。そして、上記軸の動作時間が最も長くなる速度指令が基準パターンに設定される。また、基準パターンの次に軸の動作時間が長くなる速度指令が比較パターンに設定される。そして、全体の動作開始時点から基準パターンにおける減速開始時点までの第1の時間と、比較パターンにおける動作開始時点(加速開始時点)から動作終了時点(減速終了時点)までの第2の時間(比較パターン単体での動作時間に相当)とが比較される。すなわち、基準パターンに対応する軸の減速が開始されるまでに比較パターンに対応する軸の動作が終了可能であるか否かが判断される。   In the timing determination process, among the calculated speed commands, the operation start point (acceleration start point) in the speed command with the longest axis operation time is defined as the entire operation start point, and the operation time of the axis is the longest. The timing for executing the lengthening speed command is determined. Then, the speed command that makes the operation time of the axis longest is set as the reference pattern. In addition, a speed command that makes the operation time of the axis longer after the reference pattern is set in the comparison pattern. Then, a first time from the overall operation start time to the deceleration start time in the reference pattern and a second time from the operation start time (acceleration start time) to the operation end time (deceleration end time) in the comparison pattern (comparison) Equivalent to the operation time of a single pattern). That is, it is determined whether or not the operation of the axis corresponding to the comparison pattern can be completed before the deceleration of the axis corresponding to the reference pattern is started.

上記比較の結果、第1の時間が第2の時間より長い場合、つまり基準パターンに対応する軸の減速が開始されるまでに比較パターンに対応する軸の動作が終了可能である場合には、比較パターンにおける動作終了時点が基準パターンにおける減速開始時点に一致するように比較パターンのタイミングが決定される。このようにすれば、基準パターンに対応する軸の減速が開始されるまでに比較パターンに対応する軸の減速が終了することになる。すなわち、基準パターンおよび比較パターンの減速期間が互いに重ならなくなる。   As a result of the comparison, when the first time is longer than the second time, that is, when the operation of the axis corresponding to the comparison pattern can be finished before the deceleration of the axis corresponding to the reference pattern is started, The timing of the comparison pattern is determined so that the operation end point in the comparison pattern coincides with the deceleration start point in the reference pattern. By doing so, the deceleration of the axis corresponding to the comparison pattern is completed before the deceleration of the axis corresponding to the reference pattern is started. That is, the deceleration periods of the reference pattern and the comparison pattern do not overlap each other.

一方、上記比較の結果、第1の時間が第2の時間より短い場合、つまり基準パターンに対応する軸の減速が開始されるまでに比較パターンに対応する軸の動作が終了可能でない場合には、比較パターンにおける動作開始時点が全体の動作開始時点に一致するように比較パターンのタイミングが決定される。第1の時間が第2の時間より短い場合、基準パターンおよび比較パターンの減速期間が完全に重ならないようなタイミング設定は不可能である。しかし、上記したようなタイミング設定によれば、基準パターンおよび比較パターンの減速期間が重なる期間を出来る限り短くすることが可能となる。   On the other hand, as a result of the comparison, when the first time is shorter than the second time, that is, when the operation of the axis corresponding to the comparison pattern cannot be completed before the deceleration of the axis corresponding to the reference pattern is started. The timing of the comparison pattern is determined so that the operation start time in the comparison pattern matches the overall operation start time. When the first time is shorter than the second time, it is impossible to set the timing so that the deceleration periods of the reference pattern and the comparison pattern do not completely overlap. However, according to the timing setting as described above, the period in which the deceleration periods of the reference pattern and the comparison pattern overlap can be shortened as much as possible.

比較パターンのタイミングが決定された後、そのタイミングが決定された比較パターンが次の基準パターンに設定される。また、その比較パターンの次に軸の動作時間が長くなる速度指令が次の比較パターンに設定される。つまり、基準パターンおよび比較パターンが再設定される。その後、第1および第2の時間の比較と、比較パターンのタイミングの決定と、基準パターンおよび比較パターンの再設定とが、次の比較パターンの設定対象となる速度指令が存在しなくなるまで繰り返し実行される。すなわち、動作時間が最も長い速度指令から動作時間が2番目に短い速度指令まで順に、その次に動作時間の長い速度指令との間での上記比較が行われることにより、最終的に全ての速度指令のタイミングが決定される。   After the timing of the comparison pattern is determined, the comparison pattern whose timing is determined is set as the next reference pattern. In addition, a speed command that increases the operating time of the axis next to the comparison pattern is set in the next comparison pattern. That is, the reference pattern and the comparison pattern are reset. After that, the comparison of the first and second times, the determination of the timing of the comparison pattern, and the resetting of the reference pattern and the comparison pattern are repeatedly executed until there is no speed command to be set for the next comparison pattern. Is done. That is, by comparing the speed command with the longest operation time in order from the speed command with the longest operation time to the speed command with the second shortest operation time, all speeds are finally obtained. The timing of the command is determined.

このようなタイミング決定処理により、全体の動作時間を従来と同等にした上で、各速度指令における減速期間が重複する期間が極力少なくなり、減速動作のタイミングが分散化される。減速動作のタイミングが分散化されれば、各減速期間においてモータから回生される回生エネルギーによるバス電圧の上昇が小さくなり、その分だけ、例えば回生抵抗などを用いて熱として消費しなければならないエネルギーが小さくなる。ロボットを動作させるために入力されるエネルギー(電力)は、実際に各軸を駆動するために使用されるエネルギーと、減速動作時に回生抵抗などで熱として消費されるエネルギーとの和である。従って、熱として消費されるエネルギーが減少すれば、その分だけ入力するエネルギーが少なくて済む。つまり、本手段によれば、動作時間を引き延ばすことなく、ロボットをPTP動作させるように制御する際に消費するエネルギーを低減することができる。さらに、本手段では、ロボットの制御内容(ソフトウェア)に変更を加えることにより、上記作用および効果が得られる。つまり、ハードウェアの追加を伴うことなく、PTP動作を行う際における省エネルギー化を図ることが可能となる。   By such timing determination processing, the entire operation time is made equal to the conventional one, and the period in which the deceleration periods in each speed command overlap is reduced as much as possible, and the timing of the deceleration operation is dispersed. If the timing of the deceleration operation is decentralized, the increase in bus voltage due to the regenerative energy regenerated from the motor in each deceleration period becomes smaller, and the energy that must be consumed as heat, for example, using a regenerative resistor. Becomes smaller. The energy (electric power) input to operate the robot is the sum of the energy actually used to drive each axis and the energy consumed as heat by the regenerative resistor or the like during the deceleration operation. Therefore, if the energy consumed as heat decreases, less energy can be input. That is, according to this means, the energy consumed when controlling the robot to perform the PTP operation can be reduced without extending the operation time. Furthermore, in this means, the above-mentioned operation and effect can be obtained by changing the control content (software) of the robot. That is, it is possible to save energy when performing the PTP operation without adding hardware.

上記各手段では、比較パターンが必ず次の基準パターンに設定されるようになっている。そのため、次の基準パターンの減速開始時点よりも前の基準パターンの減速開始時点のほうが早くなる場合には、減速期間を出来る限り重複させないという効果が若干低減する。ただし、通常、速度指令における減速開始時点は、動作時間が長いものほど遅くなるため、上記した効果低減の問題が発生することは考え難い。しかし、互いの動作時間の差が僅かである場合などには、その関係が逆転する可能性も考えられる。このような稀なケースに対応するためには、請求項2または5に記載の手段を採用するとよい。   In each of the above means, the comparison pattern is always set to the next reference pattern. Therefore, when the deceleration start time of the previous reference pattern is earlier than the deceleration start time of the next reference pattern, the effect of not overlapping the deceleration periods as much as possible is slightly reduced. However, since the deceleration start point in the speed command usually becomes slower as the operation time becomes longer, it is difficult to think about the problem of the effect reduction described above. However, there is a possibility that the relationship may be reversed, for example, when the difference in operating time is slight. In order to cope with such a rare case, the means described in claim 2 or 5 may be employed.

請求項2または5に記載の手段によれば、上記各手段において、タイミング決定処理にて次のような動作も実行される。すなわち、比較パターンにおける動作開始時点が全体の動作開始時点に一致するように比較パターンのタイミングが決定されると、第1の時間と第3の時間とが比較される。第3の時間は、全体の動作開始時点から比較パターンにおける減速開始時点までの時間である。すなわち、タイミングが決定された基準パターンおよび比較パターンのうち、どちらが先に減速が開始するかが判断される。   According to the means described in claim 2 or 5, the following operations are also executed in the timing determination process in each of the above means. That is, when the timing of the comparison pattern is determined so that the operation start time in the comparison pattern matches the entire operation start time, the first time and the third time are compared. The third time is the time from the overall operation start time to the deceleration start time in the comparison pattern. That is, it is determined which of the reference pattern and the comparison pattern whose timing has been determined first starts deceleration.

上記比較の結果、第1の時間が第3の時間より長い場合には、つまり比較パターンのほうが基準パターンよりも先に減速が開始する場合には、その比較パターンが次の基準パターンに設定される。一方、上記比較の結果、第1の時間が第3の時間より短い場合には、つまり基準パターンのほうが比較パターンよりも先に減速が開始する場合には、その基準パターンがそのまま次の基準パターンとなる。このようにすれば、既にタイミングが決定された速度指令のうち、減速開始時点が最も早い速度指令が次の基準パターンとして設定される。そのため、上記した稀なケースであっても、基準パターンおよび比較パターンの減速期間の重複を出来る限り回避するという効果が最大限に得られることになる。   As a result of the comparison, if the first time is longer than the third time, that is, if the comparison pattern starts to decelerate before the reference pattern, the comparison pattern is set as the next reference pattern. The On the other hand, as a result of the comparison, if the first time is shorter than the third time, that is, if the reference pattern starts to decelerate earlier than the comparison pattern, the reference pattern is directly used as the next reference pattern. It becomes. In this way, the speed command with the earliest deceleration start time among the speed commands whose timing has already been determined is set as the next reference pattern. Therefore, even in the rare case described above, the effect of avoiding the overlapping of the deceleration periods of the reference pattern and the comparison pattern as much as possible can be obtained to the maximum extent.

請求項3または6に記載の手段によれば、タイミング変更処理が実行され、上記各手段においてタイミング決定処理により決定された速度指令のタイミングを変更する。タイミング変更処理では、タイミングが決定された速度指令のうち、全体の動作開始時点から加速終了時点までの時間(第4の時間)が最も長くなる速度指令が加速終了最遅パターンとして設定される。また、加速終了最遅パターンにおける第4の時間内に軸の動作が完了する速度指令が短動作時間パターンに設定される。すなわち、タイミング変更処理では、加速が終了するのが最も遅くなる速度指令が加速終了最遅パターンとして抽出されるとともに、その加速終了最遅パターンに対応する軸の加速が終了するまでの間に減速動作が完了可能な速度指令が、短動作時間パターンとして抽出される。そして、短動作時間パターンにおける動作開始時点が全体の動作開始時点に一致するように、短動作時間パターンのタイミングが変更される。   According to the third aspect of the present invention, the timing change process is executed, and the timing of the speed command determined by the timing determination process in each of the above-described means is changed. In the timing change process, a speed command having the longest time (fourth time) from the start time of the entire operation to the end time of acceleration among the speed commands for which the timing is determined is set as the latest acceleration end pattern. In addition, a speed command for completing the operation of the axis within the fourth time in the acceleration end latest pattern is set to the short operation time pattern. In other words, in the timing change process, the speed command at which the acceleration finishes most slowly is extracted as the latest acceleration end slowest pattern, and decelerates until the acceleration of the axis corresponding to the latest acceleration end slowest pattern ends. A speed command capable of completing the operation is extracted as a short operation time pattern. Then, the timing of the short operation time pattern is changed so that the operation start time in the short operation time pattern coincides with the entire operation start time.

このように、短動作時間パターンのタイミングが変更されることにより、短動作時間パターンに対応する軸の減速動作において回生されるエネルギーが、加速終了最遅パターンに対応する軸の加速動作や他の速度指令に対応する軸の加速動作などにおいて使用される。回生エネルギーが他の動作において有効利用されれば、その分だけ回生抵抗などを用いて熱として消費されるエネルギーは小さくなる。従って、本手段によれば、ロボットをPTP動作制御する際における省エネルギー化の効果を一層高めることができる。さらに、加速終了最遅パターンに対応する軸などの加速動作時に、回生エネルギーを利用することにより、例えば昇圧回路などを設けることなく、その加速動作に必要となるバス電圧が確保可能となり、加速動作の追従性を高められるという効果も得られる。   Thus, by changing the timing of the short operation time pattern, the energy regenerated in the deceleration operation of the axis corresponding to the short operation time pattern is changed to the acceleration operation of the axis corresponding to the latest acceleration end pattern or other It is used in the acceleration operation of the axis corresponding to the speed command. If the regenerative energy is effectively used in other operations, the energy consumed as heat by using the regenerative resistor or the like is reduced accordingly. Therefore, according to this means, it is possible to further enhance the energy saving effect when the robot performs PTP operation control. Furthermore, by using regenerative energy during acceleration operations such as the axis corresponding to the slowest acceleration end pattern, the bus voltage required for the acceleration operation can be secured without providing a booster circuit, etc. The effect that the followability of the can be improved is also obtained.

本発明の第1の実施形態を示すもので、ロボットシステムの概略構成図The 1st Embodiment of this invention is shown, The schematic block diagram of a robot system ロボットシステムの電気構成図Electrical configuration of robot system PTP制御における速度指令の生成方法の概要を示すフローチャートFlow chart showing an outline of a speed command generation method in PTP control 演算処理の内容を示すフローチャートFlow chart showing the contents of arithmetic processing タイミング決定処理の内容を示すフローチャートFlow chart showing the contents of the timing determination process 演算処理により演算した各軸速度指令を示す図Diagram showing speed command for each axis calculated by calculation processing タイミング決定処理の途中における各軸速度指令を示す図The figure which shows each axis speed command in the middle of timing decision processing 図7相当図7 equivalent diagram 図7相当図7 equivalent diagram タイミング決定処理実行後の各軸速度指令およびバス電圧を示す図The figure which shows each axis speed command and bus voltage after execution of timing decision processing 本発明の第2の実施形態を示す図3相当図FIG. 3 equivalent view showing the second embodiment of the present invention タイミング変更処理の内容を示すフローチャートFlow chart showing the contents of timing change processing タイミング変更処理実行後の各軸速度指令およびバス電圧を示す図The figure which shows each axis speed command and bus voltage after execution of timing change processing 従来技術を示す図10相当図FIG. 10 equivalent diagram showing the prior art

(第1の実施形態)
以下、本発明の第1の実施形態について図1〜図10を参照しながら説明する。
図1は、一般的な産業用ロボットのシステム構成を示している。図1に示すロボットシステム1は、ロボット2と、ロボット2を制御するコントローラ3(ロボットの制御装置に相当)と、コントローラ3に接続されたティーチングペンダント4とから構成されている。
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to FIGS.
FIG. 1 shows a system configuration of a general industrial robot. A robot system 1 shown in FIG. 1 includes a robot 2, a controller 3 that controls the robot 2 (corresponding to a robot control device), and a teaching pendant 4 connected to the controller 3.

ロボット2は、例えば6軸の垂直多関節型ロボットとして構成されている。ロボット2は、ベース5と、ベース5に水平方向に回転可能に支持されたショルダ部6と、ショルダ部6に上下方向に回転可能に支持された下アーム7と、下アーム7に上下方向に回転可能に支持された第1の上アーム8と、第1の上アーム8に捻り回転可能に支持された第2の上アーム9と、第2の上アーム9に上下方向に回転可能に支持された手首10と、手首10に捻り回転可能に支持されたフランジ11とから構成されている。   The robot 2 is configured as, for example, a 6-axis vertical articulated robot. The robot 2 includes a base 5, a shoulder unit 6 that is supported by the base 5 so as to be rotatable in the horizontal direction, a lower arm 7 that is supported by the shoulder unit 6 so as to be rotatable in the vertical direction, and a vertical movement by the lower arm 7. A first upper arm 8 rotatably supported, a second upper arm 9 twistably supported by the first upper arm 8, and a second upper arm 9 rotatably supported by the second upper arm 9 The wrist 10 and the flange 11 supported by the wrist 10 so as to be twisted and rotatable.

ベース5、ショルダ部6、下アーム7、第1の上アーム8、第2の上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能し、アーム先端であるフランジ11には、図示はしないが、エンドエフェクタ(手先)が取り付けられる。ベース5、ショルダ部6、下アーム7、第1の上アーム8、第2の上アーム9、手首10およびフランジ11は、ロボット2のアームとして機能する。ロボット2の各アーム(複数の軸)はそれぞれに対応して設けられるモータ(図2に符号Mを付して示す)により駆動される。各モータの近傍には、それぞれの回転軸の回転位置を検出するための位置検出器(図示せず)が設けられている。   The base 5, the shoulder portion 6, the lower arm 7, the first upper arm 8, the second upper arm 9, the wrist 10 and the flange 11 function as an arm of the robot 2. Although not, an end effector (hand) is attached. The base 5, the shoulder portion 6, the lower arm 7, the first upper arm 8, the second upper arm 9, the wrist 10 and the flange 11 function as an arm of the robot 2. Each arm (a plurality of axes) of the robot 2 is driven by a motor (indicated by a symbol M in FIG. 2) provided correspondingly. In the vicinity of each motor, a position detector (not shown) for detecting the rotational position of each rotating shaft is provided.

ティーチングペンダント4は、例えば使用者が携帯あるいは手に所持して操作可能な程度の大きさで、例えば薄型の略矩形箱状に形成されている。ティーチングペンダント4には、各種のキースイッチが設けられており、使用者は、それらキースイッチにより種々の入力操作を行う。ティーチングペンダント4は、ケーブルを経由してコントローラ3に接続され、通信インターフェイスを経由してコントローラ3との間で高速のデータ転送を実行するようになっており、キースイッチの操作により入力された操作信号等の情報はティーチングペンダント4からコントローラ3へ送信される。   The teaching pendant 4 is, for example, a size that can be operated by being carried by a user or carried by a hand, and is formed in, for example, a thin, substantially rectangular box shape. The teaching pendant 4 is provided with various key switches, and the user performs various input operations using these key switches. The teaching pendant 4 is connected to the controller 3 via a cable, and performs high-speed data transfer with the controller 3 via a communication interface. An operation input by operating a key switch Information such as signals is transmitted from the teaching pendant 4 to the controller 3.

図2は、ロボットシステム1の電気構成を概略的に示すブロック図である。ロボット2には、各軸をそれぞれ駆動するための複数のモータM(図2では1つのみ示す)が設けられている。モータMは、例えばブラシレスDCモータである。コントローラ3には、交流電源21より供給される交流を整流および平滑して出力する直流電源回路22、回生消費回路23、モータMを駆動するインバータ装置24、電流検出部25、位置検出部26およびこれら各装置の制御などを行う制御部27が設けられている。   FIG. 2 is a block diagram schematically showing the electrical configuration of the robot system 1. The robot 2 is provided with a plurality of motors M (only one is shown in FIG. 2) for driving each axis. The motor M is, for example, a brushless DC motor. The controller 3 includes a DC power supply circuit 22 that rectifies and smoothes the AC supplied from the AC power supply 21, a regenerative consumption circuit 23, an inverter device 24 that drives the motor M, a current detection unit 25, a position detection unit 26, and A control unit 27 that controls these devices is provided.

直流電源回路22は、整流回路28および平滑用のコンデンサ29により構成されている。整流回路28は、ダイオードをブリッジの形態に接続してなる周知構成のものである。例えば3相200Vの交流電源21の各相出力は、整流回路28の交流入力端子に接続されている。整流回路28の直流出力端子は、それぞれ直流電源線30、31に接続されている。これら直流電源線30、31間にはコンデンサ29が接続されている。   The DC power supply circuit 22 includes a rectifier circuit 28 and a smoothing capacitor 29. The rectifier circuit 28 has a known configuration in which a diode is connected in the form of a bridge. For example, each phase output of the three-phase 200 V AC power supply 21 is connected to the AC input terminal of the rectifier circuit 28. The DC output terminals of the rectifier circuit 28 are connected to DC power supply lines 30 and 31, respectively. A capacitor 29 is connected between the DC power supply lines 30 and 31.

回生消費回路23は、直流電源線30、31間に回生抵抗32および回生スイッチ33の直列回路が接続された構成となっている。回生スイッチ33のオン、オフは、制御部27によって制御される。制御部27は、直流電源線30、31間のバス電圧Vd(直流電圧)の値を検出する機能を備えている。制御部27は、バス電圧Vdの検出値が、回生消費電圧値Vthr未満であるときには、回生スイッチ33をオフし、回生消費電圧値Vthr以上であるときには回生スイッチ33をオンする。このような構成により、減速動作時にモータMから回生されるエネルギー(回生エネルギー)に起因してバス電圧Vdが上昇して回生消費電圧値Vthr以上になった場合には回生抵抗32に電流が流れる。これにより、回生エネルギーが熱エネルギーとして放出され、バス電圧Vdが回生消費電圧値Vthr未満となるようにその電圧上昇が抑えられる。   The regenerative consumption circuit 23 has a configuration in which a series circuit of a regenerative resistor 32 and a regenerative switch 33 is connected between the DC power supply lines 30 and 31. On / off of the regenerative switch 33 is controlled by the control unit 27. The control unit 27 has a function of detecting the value of the bus voltage Vd (DC voltage) between the DC power supply lines 30 and 31. The control unit 27 turns off the regenerative switch 33 when the detected value of the bus voltage Vd is less than the regenerative consumption voltage value Vthr, and turns on the regenerative switch 33 when it is equal to or higher than the regenerative consumption voltage value Vthr. With such a configuration, when the bus voltage Vd rises due to the energy regenerated from the motor M during the deceleration operation (regenerative energy) and exceeds the regenerative consumption voltage value Vthr, a current flows through the regenerative resistor 32. . Thereby, the regenerative energy is released as heat energy, and the voltage rise is suppressed so that the bus voltage Vd becomes less than the regenerative consumption voltage value Vthr.

回生消費電圧値Vthrは、バス電圧Vdが直流電源線30、31に接続される各回路素子(インバータ装置24のスイッチング素子、直流電源回路22のコンデンサ29など)の定格を超えて上昇しないような値に設定すればよい。また、本実施形態では、回生スイッチ33は、例えばトランジスタなどの半導体スイッチング素子により構成されている。なお、回生スイッチ33は、例えばリレーなどの機械式のスイッチであってもよい。   The regenerative consumption voltage value Vthr does not increase beyond the rating of each circuit element (such as the switching element of the inverter device 24 and the capacitor 29 of the DC power supply circuit 22) connected to the DC power supply lines 30 and 31. Set it to a value. In the present embodiment, the regenerative switch 33 is configured by a semiconductor switching element such as a transistor, for example. The regenerative switch 33 may be a mechanical switch such as a relay.

インバータ装置24は、直流電源線30、31間に6つのスイッチング素子例えばIGBT(図2には2つのみ示す)を三相フルブリッジ接続して構成されたインバータ主回路と、その駆動回路とを6組備えている(図2には1組のみ示す)。IGBTのコレクタ・エミッタ間には還流ダイオードが接続されている。また、IGBTのゲートには、駆動回路からゲート信号が与えられている。駆動回路は、制御部27から与えられる指令信号(通電指令Sc)に基づいてパルス幅変調されたゲート信号を出力して各IGBTを駆動する。   The inverter device 24 includes an inverter main circuit configured by three-phase full-bridge connection of six switching elements such as IGBT (only two are shown in FIG. 2) between the DC power supply lines 30 and 31, and a drive circuit thereof. Six sets are provided (only one set is shown in FIG. 2). A free-wheeling diode is connected between the collector and emitter of the IGBT. The gate signal is given to the gate of the IGBT from the drive circuit. The drive circuit drives each IGBT by outputting a gate signal that has been subjected to pulse width modulation based on a command signal (energization command Sc) given from the control unit 27.

制御部27(演算処理手段およびタイミング決定処理手段に相当)は、CPU、ROM、RAM、I/Oなどを備えたマイクロコンピュータを主体として構成されている。電流検出部25は、モータMに流れる電流を検出する電流検出器(図示せず)からの検出信号を制御部27に入力可能なデータに変換して出力する。位置検出部26は、モータMの回転位置を検出する位置検出器(図示せず)からの検出信号を制御部27に入力可能なデータに変換して出力する。制御部27は、電流検出部25から出力されるデータを元にモータMに流れる電流の値を取得するとともに、位置検出部26から出力されるデータを元にモータMの回転位置(回転角度)および回転速度を取得する。   The control unit 27 (corresponding to an arithmetic processing unit and a timing determination processing unit) is configured mainly with a microcomputer including a CPU, a ROM, a RAM, an I / O, and the like. The current detection unit 25 converts a detection signal from a current detector (not shown) that detects a current flowing through the motor M into data that can be input to the control unit 27 and outputs the data. The position detector 26 converts a detection signal from a position detector (not shown) that detects the rotational position of the motor M into data that can be input to the controller 27 and outputs the data. The control unit 27 acquires the value of the current flowing through the motor M based on the data output from the current detection unit 25, and the rotational position (rotation angle) of the motor M based on the data output from the position detection unit 26. And get the rotation speed.

一般に、産業用のロボットは、予めティーチングなどを実施することにより作成される所定の動作プログラムに従って動作するようになっている。図示しない上位制御部は、その動作プログラムを解釈し、ロボット2に動作プログラムに従った動作を行わせるように各モータMを制御するための指令を制御部27に出力する。制御部27は、上位制御部から与えられる指令と、取得した電流値、回転位置および回転速度とに基づいて、インバータ装置24によるモータMの駆動をフィードバック制御してロボット2のアームの動作制御を行う。   In general, an industrial robot operates according to a predetermined operation program created by performing teaching or the like in advance. A host control unit (not shown) interprets the operation program, and outputs a command for controlling each motor M to the control unit 27 so that the robot 2 performs an operation according to the operation program. The control unit 27 performs feedback control of the drive of the motor M by the inverter device 24 based on the command given from the host control unit and the acquired current value, rotation position, and rotation speed, thereby controlling the operation of the arm of the robot 2. Do.

上位制御部から与えられる指令には、手先の目標位置を示す位置指令に加え、現在位置から目標位置までの移動経路に関する制御の方法を指定する内容などが含まれる。移動経路に関する制御の方法としては、CP(Continuous Path)制御、PTP(Point to Point)制御などが挙げられる。以下では、手先を現在位置から目標位置までPTP動作により移動する指令が与えられた際における制御部27による制御について、図3〜図10も参照して説明する。   The command given from the host control unit includes, in addition to the position command indicating the target position of the hand, contents specifying a control method related to the movement route from the current position to the target position. Examples of the control method relating to the movement path include CP (Continuous Path) control, PTP (Point to Point) control, and the like. Hereinafter, control by the control unit 27 when a command to move the hand from the current position to the target position by the PTP operation is given will be described with reference to FIGS.

図3は、PTP制御における速度指令の生成方法の概要を示すフローチャートである。制御部27は、ロボット2の手先を現在位置から所定の目標位置までPTP動作により移動するという指令が与えられると、図3に示す内容の処理を実行する。すなわち、最初に、各軸に対する速度指令をそれぞれ演算する演算処理が実行される(ステップA1)。図4は、演算処理の内容を示すフローチャートである。図4に示すように、演算処理では、各軸単位での動作時間が最も短くなるように、各軸を駆動するための速度指令が演算される(ステップB1)。通常、PTP動作における速度指令は、加速期間から始まって減速期間で終わる。また、加速期間および減速期間の間に等速期間が含まれる場合もある。すなわち、速度指令は、いわゆる三角形状または台形状のパターンになる(図6〜図10参照)。   FIG. 3 is a flowchart showing an outline of a method for generating a speed command in PTP control. When a command to move the hand of the robot 2 from the current position to a predetermined target position by a PTP operation is given, the control unit 27 executes the processing shown in FIG. That is, first, calculation processing for calculating a speed command for each axis is executed (step A1). FIG. 4 is a flowchart showing the contents of the arithmetic processing. As shown in FIG. 4, in the calculation process, a speed command for driving each axis is calculated so that the operation time for each axis is the shortest (step B1). Usually, the speed command in the PTP operation starts from the acceleration period and ends in the deceleration period. In addition, a constant speed period may be included between the acceleration period and the deceleration period. That is, the speed command is a so-called triangular or trapezoidal pattern (see FIGS. 6 to 10).

ステップB1では、例えばロボット2の仕様上あるいは構造上における制限範囲内の最高加速度でもって各軸を駆動するための速度指令が求められる。そして、各軸を駆動するためのモータMは、互いにサイズが異なることが多い。そのため、各軸における最高加速度や移動量(回転量)は、軸ごとに異なるのが一般的である。従って、ステップB1で求められる各軸の速度指令は、基本的には互いに動作時間が異なる。このようなことから、後述するタイミング決定処理において、各速度指令を実行するタイミングを、全体の動作時間の範囲内で適宜設定することが可能となっている。なお、全体の動作時間は、後述するように最も動作時間が長い軸の動作時間に等しくなる。   In step B1, for example, a speed command for driving each axis with a maximum acceleration within a limited range in the specification or structure of the robot 2 is obtained. And the motor M for driving each axis | shaft often differs in size mutually. Therefore, the maximum acceleration and movement amount (rotation amount) on each axis are generally different for each axis. Therefore, the speed commands for the respective axes obtained in step B1 basically have different operation times. For this reason, in the timing determination process described later, it is possible to appropriately set the timing for executing each speed command within the range of the entire operation time. The entire operation time is equal to the operation time of the axis having the longest operation time, as will be described later.

ステップB2では、ステップB1で求めた各速度指令を、軸の動作時間が長くなるものから順に並べ替える。その際、軸の動作時間が最も長くなる速度指令をn(1)とし、軸の動作時間が二番目に長くなる速度指令をn(2)とし、軸の動作時間が三番目に長くなる速度指令をn(3)とし、軸の動作時間が四番目に長くなる速度指令をn(4)とし、軸の動作時間が五番目に長くなる速度指令をn(5)とし、軸の動作時間が最も短くなる速度指令をn(6)とする。なお、本実施形態のように6軸ロボットであれば上記したとおりになるが、4軸ロボットであれば、求められる速度指令はn(1)〜n(4)までとなる。   In step B2, the speed commands obtained in step B1 are rearranged in order from the one in which the axis operating time becomes longer. At this time, the speed command at which the axis operation time is the longest is n (1), the speed command at which the axis operation time is the second longest is n (2), and the speed at which the axis operation time is the third longest The command is n (3), the speed command in which the axis operation time is the fourth longest is n (4), the speed command in which the axis operation time is the fifth longest is n (5), and the axis operation time is Let n (6) be the speed command at which becomes the shortest. In addition, if it is a 6-axis robot like this embodiment, it will be as above-mentioned, but if it is a 4-axis robot, the speed command calculated | required will be n (1) -n (4).

このような演算処理により各速度指令が求められた後、各速度指令を実行するタイミングを決定するタイミング決定処理が実行される(図3のステップA2)。図5は、タイミング決定処理の内容を示すフローチャートである。また、図6は、上記演算処理により求められた各速度指令を示している。タイミング決定処理が開始されると、本処理内で用いられる変数cnt1の初期値の設定が行われる(ステップC1)。変数cnt1の初期値は1に設定される。   After each speed command is obtained by such arithmetic processing, a timing determination process for determining the timing for executing each speed command is executed (step A2 in FIG. 3). FIG. 5 is a flowchart showing the contents of the timing determination process. FIG. 6 shows each speed command obtained by the above arithmetic processing. When the timing determination process is started, an initial value of a variable cnt1 used in this process is set (step C1). The initial value of variable cnt1 is set to 1.

ステップC2では、速度指令n(cnt1)の動作開始時点(加速開始時点)が全体の動作開始時点T0として規定されるとともに、速度指令n(cnt1)における動作終了時点(減速終了時点)が全体の動作終了時点Tfとして規定される。つまり、手先を現在位置から目標位置まで移動する際における全体の動作時間は、軸の動作時間が最も長くなる速度指令n(1)の動作開始時点〜動作終了時点までの時間に等しくなる。そのため、速度指令n(1)を実行するタイミングは必然的に決定される。   In step C2, the operation start time (acceleration start time) of the speed command n (cnt1) is defined as the entire operation start time T0, and the operation end time (deceleration end time) of the speed command n (cnt1) is the entire operation start time T0. It is defined as the operation end time Tf. That is, the total operation time when moving the hand from the current position to the target position is equal to the time from the operation start point to the operation end point of the speed command n (1) in which the axis operation time is the longest. Therefore, the timing for executing the speed command n (1) is inevitably determined.

ステップC3では、速度指令n(cnt1)が基準パターンJsに設定される。すなわち、軸の動作時間が最も長くなる速度指令n(1)が基準パターンJsに設定される。ステップC4では、速度指令n(cnt1+1)が比較パターンJcに設定される。すなわち、軸の動作時間が二番目に長くなる速度指令n(2)が比較パターンに設定される。ステップC5では、第1の時間t1と第2の時間t2とが比較される。第1の時間t1は、全体の動作開始時点T0から基準パターンJsの減速開始時点Tjsdまでの時間である。第2の時間t2は、比較パターンJcの動作開始時点Tjc0から動作終了時点Tjcfまでの時間であり、比較パターンJc単体での動作時間に相当する。つまり、ステップC5では、既にタイミングが決定されている基準パターンJsに対応する軸の減速が開始されるまでの間に、比較パターンJcに対応する軸の減速が終了できるような比較パターンJcのタイミング設定が可能であるか否かが判断される。   In step C3, the speed command n (cnt1) is set to the reference pattern Js. That is, the speed command n (1) that makes the operation time of the axis the longest is set in the reference pattern Js. In step C4, the speed command n (cnt1 + 1) is set to the comparison pattern Jc. That is, the speed command n (2) that makes the axis operating time second long is set in the comparison pattern. In Step C5, the first time t1 and the second time t2 are compared. The first time t1 is the time from the overall operation start time T0 to the deceleration start time Tjsd of the reference pattern Js. The second time t2 is the time from the operation start time Tjc0 of the comparison pattern Jc to the operation end time Tjcf, and corresponds to the operation time of the comparison pattern Jc alone. That is, in step C5, the timing of the comparison pattern Jc that allows the axis deceleration corresponding to the comparison pattern Jc to end before the axis deceleration corresponding to the reference pattern Js whose timing has already been started is started. It is determined whether the setting is possible.

この場合、図7に示すとおり、第1の時間t1が第2の時間t2より短く、基準パターンJsに対応する軸の減速が開始されるまでに比較パターンJcに対応する軸の減速が終了可能ではない(ステップC5で「NO」。である)ため、ステップC6に進む。ステップC6では、比較パターンJcにおける動作開始時点Tjc0が全体の動作開始時点T0に一致するように、比較パターンJcを実行するタイミングが決定される(図7参照)。   In this case, as shown in FIG. 7, the first time t1 is shorter than the second time t2, and the deceleration of the axis corresponding to the comparison pattern Jc can be completed before the deceleration of the axis corresponding to the reference pattern Js is started. Therefore (NO in step C5), the process proceeds to step C6. In step C6, the timing for executing the comparison pattern Jc is determined so that the operation start time Tjc0 in the comparison pattern Jc matches the overall operation start time T0 (see FIG. 7).

ステップC6により比較パターンJcのタイミングが決定されると、ステップC7に進む。ステップC7では、前述した第1の時間t1と第3の時間t3とが比較される。第3の時間t3は、全体の動作開始時点T0から比較パターンJcの減速開始時点Tjcdまでの時間である。つまり、ステップC7では、既にタイミングが決定されている基準パターンJsおよび比較パターンJcのうち、どちらが先に減速が開始されるかが判断される。この場合、図7に示すとおり、第1の時間t1が第3の時間t3より長い、つまり比較パターンJcのほうが基準パターンJsよりも先に減速が開始する(ステップC7で「YES」)。そのため、ステップC9に進み、速度指令n(cnt1+1)が次の基準パターンJsに設定される。すなわち、その時点における比較パターンJcである速度指令n(2)が次の基準パターンJsに設定される。   When the timing of the comparison pattern Jc is determined in step C6, the process proceeds to step C7. In step C7, the first time t1 and the third time t3 are compared. The third time t3 is the time from the overall operation start time T0 to the deceleration start time Tjcd of the comparison pattern Jc. That is, in step C7, it is determined which of the reference pattern Js and the comparison pattern Jc whose timing has already been determined first starts deceleration. In this case, as shown in FIG. 7, the first time t1 is longer than the third time t3, that is, the comparison pattern Jc starts decelerating earlier than the reference pattern Js (“YES” in step C7). Therefore, the process proceeds to step C9, and the speed command n (cnt1 + 1) is set to the next reference pattern Js. That is, the speed command n (2), which is the comparison pattern Jc at that time, is set as the next reference pattern Js.

続くステップC10では、変数cnt1がインクリメントされる(cnt1=cnt1+1)。そして、ステップC11において、変数cnt1がしきい値X以上であるか否かが判断される。しきい値Xは、ロボット2の総軸数に設定されるものであり、本実施形態では6である。この場合、変数cnt1の値が2である(ステップC11で「NO」である)ため、ステップC4に戻る。そのステップC4では、軸の動作時間が三番目に長い速度指令n(3)が次の比較パターンJcに設定される。そして、ステップC5において、第1の時間t1および第2の時間t2の比較が行われる。この場合、図8に示すとおり、第1の時間t1が第2の時間t2より長く、基準パターンJsに対応する軸の減速が開始されるまでに比較パターンJcに対応する軸の減速が終了可能である(ステップC5で「YES」である)ため、ステップC8に進む。   In the subsequent step C10, the variable cnt1 is incremented (cnt1 = cnt1 + 1). In step C11, it is determined whether or not the variable cnt1 is greater than or equal to the threshold value X. The threshold value X is set to the total number of axes of the robot 2 and is 6 in this embodiment. In this case, since the value of the variable cnt1 is 2 (“NO” in step C11), the process returns to step C4. In step C4, the speed command n (3) having the third longest operation time of the shaft is set to the next comparison pattern Jc. In step C5, the first time t1 and the second time t2 are compared. In this case, as shown in FIG. 8, the first time t1 is longer than the second time t2, and the deceleration of the axis corresponding to the comparison pattern Jc can be completed before the deceleration of the axis corresponding to the reference pattern Js is started. ("YES" in step C5), the process proceeds to step C8.

ステップC8では、比較パターンJcにおける動作終了時点Tjcfが、基準パターンJsにおける減速開始時点Tjsdに一致するように、比較パターンJcを実行するタイミングが決定される(図9参照)。ステップC8により比較パターンJcのタイミングが決定されると、ステップC9に進む。ステップC9では、その時点における比較パターンJcである速度指令n(3)が次の基準パターンJsに設定される。その後、変数cnt1がインクリメントされ(ステップC10)、インクリメント後の変数cnt1の値が3である(ステップC11で「NO」である)ため、ステップC4に戻る。   In step C8, the timing for executing the comparison pattern Jc is determined so that the operation end point Tjcf in the comparison pattern Jc matches the deceleration start point Tjsd in the reference pattern Js (see FIG. 9). When the timing of the comparison pattern Jc is determined in step C8, the process proceeds to step C9. In step C9, the speed command n (3), which is the comparison pattern Jc at that time, is set as the next reference pattern Js. Thereafter, the variable cnt1 is incremented (step C10). Since the value of the variable cnt1 after the increment is 3 (“NO” in step C11), the process returns to step C4.

以降は、変数cnt1が6になるまで(ステップC11で「YES」となるまで)、ステップC4〜C11が繰り返される。すなわち、軸の動作時間が最も短くなる速度指令n(6)が比較パターンJcに設定され、その実行するタイミングが決定されるまでステップC4〜C11が繰り返される。これにより、図10に示すように、全ての速度指令を実行するタイミングが決定される。制御部27は、このように生成した速度指令でもって、各軸に対応するモータMの駆動を制御する。   Thereafter, steps C4 to C11 are repeated until the variable cnt1 becomes 6 (until “YES” in step C11). That is, the speed command n (6) that shortens the axis operation time is set in the comparison pattern Jc, and steps C4 to C11 are repeated until the execution timing is determined. Thereby, as shown in FIG. 10, the timing which performs all the speed instructions is determined. The control unit 27 controls the driving of the motor M corresponding to each axis with the speed command generated in this way.

以上説明したように、本実施形態によれば次のような作用および効果が得られる。
制御部27は、ロボット2の手先を現在位置から所定の目標位置までPTP動作により移動するという指令が与えられると、図4に示した演算処理を実行した後、図5に示したタイミング決定処理を実行する。このうち、演算処理では、ロボット2の仕様上あるいは構造上における制限範囲内の最高加速度でもって各軸を駆動するための速度指令が求められる。また、タイミング決定処理では、動作時間の長い速度指令から順に基準パターンJsに設定され、その基準パターンJsの減速が開始されるまでに、その次に動作時間の長い速度指令である比較パターンJcの減速が終了可能であるか否かが判断されていく。その判断の結果、基準パターンJsの減速開始までに比較パターンJcの減速が終了可能である場合、比較パターンJcの動作終了時点Tjcfが基準パターンJsの減速開始時点Tjsdに一致するように比較パターンJcを実行するタイミングが決定される。これにより、基準パターンJsおよび比較パターンの減速期間が互いに重ならなくなる。
As described above, according to the present embodiment, the following operations and effects can be obtained.
When the control unit 27 is instructed to move the hand of the robot 2 from the current position to the predetermined target position by the PTP operation, the control unit 27 executes the arithmetic processing shown in FIG. 4 and then performs the timing determination processing shown in FIG. Execute. Among these, in the arithmetic processing, a speed command for driving each axis with a maximum acceleration within a limited range in the specification or structure of the robot 2 is obtained. In the timing determination process, the reference pattern Js is set in order from the speed command having the long operation time, and before the deceleration of the reference pattern Js is started, the comparison command Jc that is the speed command having the next long operation time is set. It is determined whether or not deceleration can be completed. As a result of the determination, if the deceleration of the comparison pattern Jc can be completed before the deceleration start of the reference pattern Js, the comparison pattern Jc is set so that the operation end time Tjcf of the comparison pattern Jc coincides with the deceleration start time Tjsd of the reference pattern Js. The timing to execute is determined. Thereby, the deceleration periods of the reference pattern Js and the comparison pattern do not overlap each other.

また、上記判断の結果、基準パターンJsの減速開始までに比較パターンJcの減速が終了可能ではない場合、比較パターンJcの動作開始時点Tjc0が全体の動作開始時点T0に一致するように比較パターンJcを実行するタイミングが決定される。このようなケースでは、基準パターンJsおよび比較パターンJcの減速期間が完全に重ならないようなタイミング設定は不可能である。しかし、上記したようなタイミング設定によれば、基準パターンJsおよび比較パターンJcの減速期間が重なる期間を出来る限り短くすることが可能となる。   Further, as a result of the above determination, when the deceleration of the comparison pattern Jc cannot be completed before the deceleration start of the reference pattern Js, the comparison pattern Jc is set so that the operation start time Tjc0 of the comparison pattern Jc coincides with the entire operation start time T0. The timing to execute is determined. In such a case, it is impossible to set the timing such that the deceleration periods of the reference pattern Js and the comparison pattern Jc do not completely overlap. However, according to the timing setting as described above, it is possible to make the period in which the deceleration periods of the reference pattern Js and the comparison pattern Jc overlap as short as possible.

このようなタイミング決定処理により、全体の動作時間を従来と同等にした上で、各速度指令における減速期間が重複する期間が極力少なくなり、減速動作のタイミングが分散化される。図10に示すように、減速動作のタイミングが分散化されれば、各減速期間における回生エネルギーによるバス電圧Vdの上昇が比較的小さく抑えられ、その分だけ回生消費回路23において熱として消費されるエネルギーが小さくなる。なお、本実施形態の場合、図10に示すように、全体の動作開始時点T0〜全体の動作終了時点Tfまでの全期間において、バス電圧Vdが回生消費電圧値Vthr未満に抑えられている。   By such timing determination processing, the entire operation time is made equal to the conventional one, and the period in which the deceleration periods in each speed command overlap is reduced as much as possible, and the timing of the deceleration operation is dispersed. As shown in FIG. 10, if the timing of the deceleration operation is dispersed, the increase in the bus voltage Vd due to the regenerative energy in each deceleration period is suppressed to a relatively small level, and the corresponding amount is consumed as heat in the regenerative consumption circuit 23. Energy is reduced. In the case of the present embodiment, as shown in FIG. 10, the bus voltage Vd is suppressed to less than the regenerative consumption voltage value Vthr in the entire period from the overall operation start time T0 to the overall operation end time Tf.

ロボット2を動作させるために入力されるエネルギー(電力)は、実際に各軸を駆動するために使用されるエネルギー(インバータ装置24、モータMなどにおける種々の電力損失を含む)と、減速動作時に回生消費回路23で熱として消費されるエネルギーとの和である。従って、熱として消費されるエネルギーが減少すれば、その分だけ入力するエネルギーが少なくて済む。つまり、本実施形態のロボットシステム1は、動作時間を引き延ばすことなく、ロボット2をPTP制御する際に消費するエネルギーを低減することができる。なお、このような効果は、演算処理において求められる各速度指令の動作時間が互いに異なるという前提の下で得られるものであるが、仮に、演算処理において求められる各速度指令の動作時間が互いにほとんど同じになった場合(通常、このようなケースはほとんど有り得ない)でも、減速動作時において熱として消費されるエネルギーは従来と同等までしか低下することはない。さらに、本実施形態のロボットシステム1では、制御内容(ソフトウェア)に変更を加えることにより、上記作用および効果が得られる。つまり、ハードウェアの追加を行うことなく、PTP制御を行う際における省エネルギー化を図ることを可能としている。   The energy (electric power) input to operate the robot 2 includes the energy actually used to drive each axis (including various power losses in the inverter device 24, the motor M, etc.) and the deceleration operation. This is the sum of the energy consumed as heat in the regeneration consumption circuit 23. Therefore, if the energy consumed as heat decreases, less energy can be input. That is, the robot system 1 of the present embodiment can reduce the energy consumed when the robot 2 is PTP controlled without extending the operation time. Such an effect is obtained on the assumption that the operation times of the respective speed commands required in the calculation process are different from each other. However, the operation times of the respective speed commands required in the calculation process are almost the same. Even if they are the same (usually such a case is almost impossible), the energy consumed as heat during the deceleration operation can only be reduced to the same level as before. Furthermore, in the robot system 1 of the present embodiment, the above operations and effects can be obtained by changing the control content (software). That is, it is possible to save energy when performing PTP control without adding hardware.

比較パターンJcを必ず次の基準パターンJsに設定すると、次の基準パターンJsの減速開始時点よりも前の基準パターンの減速開始時点のほうが早くなる場合には、減速期間を出来る限り重複させないという効果が若干低減する。ただし、通常、速度指令における減速開始時点は、動作時間が長いものほど遅くなるため、上記した効果低減の問題が発生することは考え難い。しかし、互いの動作時間の差が僅かである場合などには、その関係が逆転することも考えられる。   If the comparison pattern Jc is always set to the next reference pattern Js, if the deceleration start time of the previous reference pattern is earlier than the deceleration start time of the next reference pattern Js, the deceleration period is not overlapped as much as possible. Is slightly reduced. However, since the deceleration start point in the speed command usually becomes slower as the operation time becomes longer, it is difficult to think about the problem of the effect reduction described above. However, when the difference in operating time between the two is small, the relationship may be reversed.

このような稀なケースに対応するため、本実施形態では、ステップC6の実行後に、ステップC7を実行するようにしている。これにより、既にタイミングが決定された速度指令のうち、減速開始時点が最も早い速度指令が次の基準パターンJsとして設定される。そのため、上記した稀なケースであっても、基準パターンJsおよび比較パターンJcの減速期間の重複を出来る限り回避するという効果が最大限に得られる。なお、上記した稀なケースへの対応を考慮しない場合、図5においてステップC7を省略してもよい。その場合、ステップC6を実行した後、ステップC9へ移行するように変更を加えればよい。   In order to deal with such a rare case, in the present embodiment, step C7 is executed after step C6. Thus, the speed command having the earliest deceleration start time among the speed commands whose timing has already been determined is set as the next reference pattern Js. Therefore, even in the rare case described above, the effect of avoiding the overlap of the deceleration periods of the reference pattern Js and the comparison pattern Jc as much as possible is obtained to the maximum. Note that step C7 in FIG. 5 may be omitted when the above-mentioned rare case is not taken into consideration. In that case, after executing step C6, a change may be made so as to shift to step C9.

(第2の実施形態)
以下、第1の実施形態に対し、PTP制御における速度指令の生成方法を変更した第2の実施形態について図11〜図13を参照しながら説明する。
図11は、第1の実施形態における図3相当図である。図11に示すように、本実施形態において、制御部27は、タイミング決定処理(ステップA2)により各速度指令のタイミングを決定した後、ステップA3に進み、それら決定されたタイミングを変更するタイミング変更処理を実行する。すなわち、本実施形態では、制御部27は、タイミング変更処理手段としても機能する。図12は、タイミング変更処理の内容を示すフローチャートである。図12に示すように、タイミング変更処理が開始されると、本処理内で用いられる変数(cnt2)の初期値の設定が行われる(ステップD1)。変数cnt2の初期値は、1に設定される。
(Second Embodiment)
Hereinafter, a second embodiment in which the speed command generation method in the PTP control is changed with respect to the first embodiment will be described with reference to FIGS. 11 to 13.
FIG. 11 is a view corresponding to FIG. 3 in the first embodiment. As shown in FIG. 11, in this embodiment, the control unit 27 determines the timing of each speed command by the timing determination process (step A2), and then proceeds to step A3 to change the determined timing. Execute the process. That is, in the present embodiment, the control unit 27 also functions as a timing change processing unit. FIG. 12 is a flowchart showing the contents of the timing change process. As shown in FIG. 12, when the timing change process is started, an initial value of a variable (cnt2) used in this process is set (step D1). The initial value of the variable cnt2 is set to 1.

続くステップD2〜D8は、タイミングが決定された状態の速度指令n(1)〜n(6)のうち、全体の動作開始時点T0から各加速終了時点までの時間が最も長くなる速度指令を加速終了最遅パターンとして設定するものである。具体的には、ステップD2では、速度指令n(cnt2)が基準パターンJsmに設定される。すなわち、速度指令n(1)が基準パターンJsmに設定される。ステップD3では、速度指令n(cnt2+1)が比較パターンJcmに設定される。すなわち、速度指令n(2)が比較パターンJcmに設定される。   In subsequent steps D2 to D8, among the speed commands n (1) to n (6) whose timings are determined, the speed command having the longest time from the overall operation start time T0 to each acceleration end time is accelerated. This is set as the latest delay pattern. Specifically, in step D2, the speed command n (cnt2) is set to the reference pattern Jsm. That is, the speed command n (1) is set to the reference pattern Jsm. In step D3, the speed command n (cnt2 + 1) is set to the comparison pattern Jcm. That is, the speed command n (2) is set to the comparison pattern Jcm.

ステップD4では、基準パターンJsmおよび比較パターンJcmの各加速時間が比較される。上記加速時間は、第4の時間に相当するものであり、全体の動作開始時点T0を基準としたものである。すなわち、基準パターンJsmの加速時間は、時点T0から基準パターンJsmにおける加速終了時点までの時間である。また、比較パターンJcmの加速時間は、時点T0から比較パターンJcmにおける加速終了時点までの時間である。この場合、図10に示したとおり、基準パターンJsmのほうが、比較パターンJcmよりも加速時間が長い(ステップD4で「YES」である)ため、基準パターンJsmを再設定するためのステップD5が実行されることなく、ステップD6に進む。このように、基準パターンJsmのほうが比較パターンJcmより加速時間が長い場合には、基準パターンJsmの変更は行われない。   In step D4, the acceleration times of the reference pattern Jsm and the comparison pattern Jcm are compared. The acceleration time corresponds to the fourth time, and is based on the entire operation start time T0. That is, the acceleration time of the reference pattern Jsm is the time from the time T0 to the acceleration end time in the reference pattern Jsm. The acceleration time of the comparative pattern Jcm is the time from the time T0 to the acceleration end time in the comparative pattern Jcm. In this case, as shown in FIG. 10, since the acceleration time of the reference pattern Jsm is longer than that of the comparison pattern Jcm (“YES” in step D4), step D5 for resetting the reference pattern Jsm is executed. Without proceeding to step D6. As described above, when the acceleration time of the reference pattern Jsm is longer than that of the comparison pattern Jcm, the reference pattern Jsm is not changed.

ステップD6では、変数cnt2がインクリメントされる(cnt2=cnt2+1)。ステップD7では、変数cnt2の値がしきい値X(ロボット2の総軸数=6)以上であるか否かが判断される。ここでは、変数cnt2の値は2である(ステップD7で「NO」である)ため、ステップD3に戻る。そのステップD3では、速度指令n(3)が次の比較パターンJcmに設定される。この場合も、基準パターンJsmのほうが、比較パターンJcmよりも加速時間が長い(ステップD4で「YES」である)ため、ステップD5を実行することなくステップD6に進む。   In step D6, the variable cnt2 is incremented (cnt2 = cnt2 + 1). In step D7, it is determined whether or not the value of variable cnt2 is equal to or greater than threshold value X (total number of axes of robot 2 = 6). Here, since the value of the variable cnt2 is 2 (“NO” in step D7), the process returns to step D3. In step D3, the speed command n (3) is set to the next comparison pattern Jcm. Also in this case, since the acceleration time of the reference pattern Jsm is longer than that of the comparison pattern Jcm (“YES” in step D4), the process proceeds to step D6 without executing step D5.

そして、変数cnt2がインクリメントされ(ステップD6)、その変数cnt2の値が3である(ステップD7で「NO」である)ため、ステップD3に戻る。そのステップD3では、速度指令n(4)が次の比較パターンJcmに設定される。この場合、比較パターンJcmのほうが、基準パターンJsmよりも加速時間が長い(ステップD4で「NO」である)ため、ステップD5に進む。ステップD5では、速度指令n(cnt2+1)が次の基準パターンJsmに設定される。すなわち、その時点の比較パターンJcmである速度指令n(4)が次の基準パターンJsmに設定される。このように、比較パターンJcmのほうが基準パターンJsmよりも加速時間が長い場合には、その比較パターンJcmが次の基準パターンJsmに設定される。そして、変数cnt2がインクリメントされ(ステップD6)、その変数cnt2の値が4である(ステップD7で「NO」である)ため、ステップD3に戻る。   Then, the variable cnt2 is incremented (step D6), and since the value of the variable cnt2 is 3 (“NO” in step D7), the process returns to step D3. In step D3, the speed command n (4) is set to the next comparison pattern Jcm. In this case, since the comparison pattern Jcm has a longer acceleration time than the reference pattern Jsm (“NO” in step D4), the process proceeds to step D5. In step D5, the speed command n (cnt2 + 1) is set to the next reference pattern Jsm. That is, the speed command n (4) that is the comparison pattern Jcm at that time is set as the next reference pattern Jsm. As described above, when the acceleration time of the comparison pattern Jcm is longer than that of the reference pattern Jsm, the comparison pattern Jcm is set as the next reference pattern Jsm. Then, the variable cnt2 is incremented (step D6), and since the value of the variable cnt2 is 4 (“NO” in step D7), the process returns to step D3.

以降は、変数cnt2の値が6になるまで(ステップD7で「YES」となるまで)、ステップD3〜D7が繰り返される。すなわち、全ての速度指令の加速時間の比較が終了するまでステップD3〜D7が繰り返される。その結果、最終的に基準パターンJsmに設定されている速度指令が、最も加速時間が長い速度指令であるということになる。ここでは、速度指令n(5)が最終的に基準パターンJsmに設定されている。   Thereafter, steps D3 to D7 are repeated until the value of variable cnt2 becomes 6 (until “YES” in step D7). That is, steps D3 to D7 are repeated until the comparison of the acceleration times of all speed commands is completed. As a result, the speed command finally set in the reference pattern Jsm is the speed command with the longest acceleration time. Here, the speed command n (5) is finally set to the reference pattern Jsm.

ステップD8では、そのときの基準パターンJsmが、加速終了最遅パターンJLに設定される。ステップD9では、全体の動作開始時点T0から加速終了最遅パターンJLの加速終了時点Tjlaまでの時間と、速度指令n(cnt1)単体での動作時間とが比較される。このとき、変数cnt1の値は、タイミング決定処理(ステップA2)が終了した時点の値(=6)になっている。すなわち、加速終了最遅パターンJLの加速時間内に、速度指令n(6)単体での動作が終了可能であるか否かが判断される。この場合、加速終了最遅パターンJLの加速時間内に、速度指令n(6)単体での動作が終了可能である(ステップD9で「YES」である)ため、ステップD10に進む。   In step D8, the reference pattern Jsm at that time is set to the acceleration end latest pattern JL. In Step D9, the time from the entire operation start time T0 to the acceleration end time Tjla of the acceleration end latest pattern JL is compared with the operation time of the speed command n (cnt1) alone. At this time, the value of the variable cnt1 is the value (= 6) when the timing determination process (step A2) is completed. That is, it is determined whether or not the operation of the speed command n (6) alone can be completed within the acceleration time of the latest acceleration termination latest pattern JL. In this case, since the operation of the speed command n (6) alone can be completed within the acceleration time of the latest acceleration termination latest pattern JL ("YES" in step D9), the process proceeds to step D10.

ステップD10では、速度指令n(cnt1)が短動作時間パターンに設定され、そのタイミングが次のように変更される。すなわち、速度指令n(6)の動作開始時点が全体の動作開始時点T0に一致するように、速度指令n(6)を実行するタイミングが変更される(図13参照)。続くステップD11では、短動作時間パターンに設定された速度指令n(cnt1)が、加速終了最遅パターンJLであるか否かが判断される。この場合、速度指令n(6)は、加速終了最遅パターンJLではない(ステップD11で「NO」である)ため、ステップD13に進む。ステップD13では、変数cnt1がデクリメントされる(cnt1=cnt1-1)。   In Step D10, the speed command n (cnt1) is set to the short operation time pattern, and the timing is changed as follows. That is, the timing for executing the speed command n (6) is changed so that the operation start time of the speed command n (6) coincides with the entire operation start time T0 (see FIG. 13). In the subsequent step D11, it is determined whether or not the speed command n (cnt1) set in the short operation time pattern is the latest acceleration end pattern JL. In this case, since the speed command n (6) is not the acceleration end latest delay pattern JL (“NO” in step D11), the process proceeds to step D13. In step D13, the variable cnt1 is decremented (cnt1 = cnt1-1).

ステップD13が実行された後は、ステップD9に戻る。そのステップD9では、加速終了最遅パターンJLの加速時間内に、速度指令n(5)単体での動作が終了可能であるか否かが判断される。この場合も、加速終了最遅パターンJLの加速時間内に、速度指令n(5)単体での動作が終了可能である(ステップD9で「YES」である)ため、ステップD10に進む。そのステップD10では、速度指令n(5)が短動作時間パターンに設定され、そのタイミングが変更される(図13参照)。この場合、速度指令n(5)は、加速終了最遅パターンJLである(ステップD11で「YES」である)ため、ステップD12に進む。   After step D13 is executed, the process returns to step D9. In step D9, it is determined whether or not the operation of the speed command n (5) alone can be completed within the acceleration time of the acceleration end latest pattern JL. Also in this case, since the operation of the speed command n (5) alone can be completed within the acceleration time of the latest acceleration termination latest pattern JL ("YES" in step D9), the process proceeds to step D10. In step D10, the speed command n (5) is set to the short operation time pattern, and the timing is changed (see FIG. 13). In this case, since the speed command n (5) is the latest acceleration end pattern JL (“YES” in step D11), the process proceeds to step D12.

このように、加速終了最遅パターンとして設定されていた速度指令n(5)を実行するタイミングが変更された場合、それ以降の速度指令n(4)〜n(1)が短動作時間パターンとしてタイミングを変更可能であるか否かの判断を行うことができなくなる。そこで、ステップD12において、変数cnt1の値がしきい値X(6)に設定され、その後、ステップD1に戻る。すなわち、加速終了最遅パターンJLの設定が再度実行される。そして、新たな加速終了最遅パターンJLの加速時間内に単体での動作が終了可能な短動作時間パターンの設定が再度実行される。このような処理は、短動作時間パターンとして設定可能な速度指令が存在しなくなる(ステップD9で「NO」となる)まで繰り返される。   As described above, when the timing for executing the speed command n (5) set as the latest acceleration end latest pattern is changed, the subsequent speed commands n (4) to n (1) are used as the short operation time pattern. It becomes impossible to determine whether or not the timing can be changed. Therefore, in step D12, the value of the variable cnt1 is set to the threshold value X (6), and then the process returns to step D1. That is, the setting of the acceleration end latest pattern JL is executed again. Then, the setting of the short operation time pattern capable of ending the single operation within the acceleration time of the new latest acceleration end latest pattern JL is executed again. Such a process is repeated until there is no speed command that can be set as a short operation time pattern (“NO” in step D9).

これにより、図13に示すように、全ての速度指令を実行するタイミングが決定される。本実施形態の場合、最終的には速度指令n(4)が加速終了最遅パターンJLとして設定されるとともに、速度指令n(5)、n(6)が短動作時間パターンとして設定される。従って、タイミング決定処理実行後の各速度指令(図10参照)に対し、速度指令n(5)、n(6)を実行するタイミングが変更されている。制御部27は、このように生成した速度指令でもって、各軸に対応するモータMの駆動を制御する。   Thereby, as shown in FIG. 13, the timing which performs all the speed instructions is determined. In the case of the present embodiment, the speed command n (4) is finally set as the acceleration end latest pattern JL, and the speed commands n (5) and n (6) are set as the short operation time pattern. Therefore, the timing for executing the speed commands n (5) and n (6) is changed for each speed command (see FIG. 10) after execution of the timing determination process. The control unit 27 controls the driving of the motor M corresponding to each axis with the speed command generated in this way.

以上説明したように、本実施形態によれば次のような作用および効果が得られる。
図12に示したタイミング変更処理が実行されることにより、短動作時間パターンとして設定された速度指令n(5)、n(6)に対応する軸の減速動作において回生される回生エネルギーが、他の速度指令n(1)〜n(4)に対応する軸の加速動作や等速動作などにおいて使用される。回生エネルギーが他の動作において有効利用されれば、その分だけ回生消費回路23において熱として消費されるエネルギーが抑えられる。従って、本実施形態によれば、ロボット2をPTP動作制御する最における省エネルギー化の効果を一層高めることができる。さらに、加速終了最遅パターンJLに対応する軸などの加速動作時に、短動作時間パターンに対応する軸の減速動作に回生される回生エネルギーが利用されることにより、例えば昇圧回路などを設けることなく、その加速動作に必要となるバス電圧Vdが確保可能となり、加速動作の追従性を高められるという効果も得られる。
As described above, according to the present embodiment, the following operations and effects can be obtained.
When the timing changing process shown in FIG. 12 is executed, the regenerative energy regenerated in the deceleration operation of the axis corresponding to the speed commands n (5) and n (6) set as the short operation time pattern is different. Are used in the acceleration operation and constant speed operation of the shaft corresponding to the speed commands n (1) to n (4). If the regenerative energy is effectively used in other operations, the energy consumed as heat in the regenerative consumption circuit 23 is suppressed by that amount. Therefore, according to the present embodiment, it is possible to further enhance the energy saving effect when the robot 2 controls the PTP operation. Further, during the acceleration operation of the axis corresponding to the latest acceleration termination latest pattern JL, the regenerative energy regenerated for the deceleration operation of the axis corresponding to the short operation time pattern is used, for example, without providing a booster circuit or the like. The bus voltage Vd necessary for the acceleration operation can be ensured, and the effect of improving the follow-up performance of the acceleration operation can be obtained.

(その他の実施形態)
なお、本発明は上記し且つ図面に記載した各実施形態に限定されるものではなく、次のような変形または拡張が可能である。
本発明は、モータMとしてDCブラシレスモータを用いた構成に限らず、例えば直流モータ、交流モータなど各種のモータを用いた構成にも適用可能である。なお、モータMとして直流モータを用いる場合には、モータMを駆動する駆動手段として、インバータ装置24に代えて、例えばHブリッジ回路を主体として構成された駆動回路を用いればよい。
上記実施形態では、本発明を6軸の垂直多関節型のロボット2に適用した例を説明したが、本発明は、例えば4軸の水平多関節型のロボットなど、複数の軸をモータにより駆動する構成のロボット全般に適用可能である。
(Other embodiments)
The present invention is not limited to the embodiments described above and illustrated in the drawings, and the following modifications or expansions are possible.
The present invention is not limited to a configuration using a DC brushless motor as the motor M, and can also be applied to a configuration using various motors such as a DC motor and an AC motor. In the case where a DC motor is used as the motor M, a driving circuit mainly composed of, for example, an H bridge circuit may be used as a driving unit for driving the motor M, instead of the inverter device 24.
In the above embodiment, the example in which the present invention is applied to the six-axis vertical articulated robot 2 has been described. However, the present invention drives a plurality of axes by a motor, such as a four-axis horizontal articulated robot. The present invention can be applied to all types of robots.

図面中、2はロボット、3はコントローラ(ロボットの制御装置)、27は制御部(演算処理手段、タイミング決定処理手段、タイミング変更処理手段)、Mはモータを示す。   In the drawings, 2 is a robot, 3 is a controller (a robot control device), 27 is a control unit (arithmetic processing means, timing determination processing means, timing change processing means), and M is a motor.

Claims (6)

モータにより駆動される複数の軸を有するロボットの手先を現在位置から目標位置までPTP動作により移動させる際、各軸に対する速度指令をそれぞれ演算する演算処理を実行し、それら演算された各速度指令を実行するタイミングを決定するタイミング決定処理を実行するロボットの制御方法であって、
前記演算処理は、各軸単位での動作時間が最も短くなるように各軸を駆動するための速度指令を演算するステップを含み、
前記タイミング決定処理は、
前記演算された各速度指令のうち、軸の動作時間が最も長くなる速度指令における動作開始時点を全体の動作開始時点として規定し、前記軸の動作時間が最も長くなる速度指令を実行するタイミングを決定する第1ステップと、
前記軸の動作時間が最も長くなる速度指令を基準パターンに設定する第2ステップと、
前記基準パターンの次に軸の動作時間が長くなる速度指令を比較パターンに設定する第3ステップと、
全体の動作開始時点から前記基準パターンにおける減速開始時点までの第1の時間と、前記比較パターンにおける動作開始時点から動作終了時点までの第2の時間とを比較する第4ステップと、
前記第4ステップにおいて、前記第1の時間が前記第2の時間より長い場合には前記比較パターンにおける動作終了時点が前記基準パターンにおける減速開始時点に一致するように前記比較パターンを実行するタイミングを決定し、前記第1の時間が前記第2の時間より短い場合には前記比較パターンにおける動作開始時点が全体の動作開始時点に一致するように前記比較パターンを実行するタイミングを決定する第5ステップと、
前記第5ステップにおいてタイミングが決定された比較パターンを次の基準パターンに設定するとともに、その比較パターンの次に軸の動作時間が長くなる速度指令を次の比較パターンに設定する第6ステップと、
を含み、
前記第6ステップの実行後、前記次の比較パターンの設定対象となる速度指令が存在しなくなるまで、前記第4ステップ、前記第5ステップおよび前記第6ステップとを繰り返し実行することを特徴とするロボットの制御方法。
When the hand of a robot having a plurality of axes driven by a motor is moved from the current position to the target position by a PTP operation, a calculation process for calculating a speed command for each axis is executed, and each of the calculated speed commands is A robot control method for executing a timing determination process for determining a timing to execute,
The calculation process includes a step of calculating a speed command for driving each axis so that the operation time in each axis unit is the shortest,
The timing determination process includes
Among the calculated speed commands, the operation start point in the speed command with the longest operation time of the axis is defined as the overall operation start point, and the timing for executing the speed command with the longest operation time of the axis is executed. A first step to determine;
A second step of setting a speed command that makes the operation time of the axis the longest in a reference pattern;
A third step of setting, in the comparison pattern, a speed command in which the operation time of the axis becomes longer next to the reference pattern;
A fourth step of comparing a first time from an overall operation start time to a deceleration start time in the reference pattern and a second time from an operation start time to an operation end time in the comparison pattern;
In the fourth step, when the first time is longer than the second time, the timing for executing the comparison pattern is set so that the operation end time in the comparison pattern coincides with the deceleration start time in the reference pattern. And determining the timing for executing the comparison pattern so that the operation start time in the comparison pattern coincides with the entire operation start time when the first time is shorter than the second time. When,
A sixth step of setting a comparison command whose timing is determined in the fifth step as a next reference pattern, and setting a speed command for increasing an operation time of an axis next to the comparison pattern as a next comparison pattern;
Including
After the execution of the sixth step, the fourth step, the fifth step, and the sixth step are repeatedly executed until there is no speed command to be set for the next comparison pattern. Robot control method.
前記タイミング決定処理は、
前記第5ステップにおいて、前記比較パターンにおける動作開始時点が全体の動作開始時点に一致するように前記比較パターンを実行するタイミングが決定されると、前記第1の時間と全体の動作開始時点から前記比較パターンにおける減速開始時点までの第3の時間とを比較する第7ステップを含み、
前記第1の時間が前記第3の時間より長い場合には前記第6ステップにおいて前記次の基準パターンの設定を実行し、前記第1の時間が前記第3の時間より短い場合には前記第6ステップにおいて前記次の基準パターンの設定を実行しないことを特徴とする請求項1に記載のロボットの制御方法。
The timing determination process includes
In the fifth step, when the timing for executing the comparison pattern is determined so that the operation start time in the comparison pattern matches the overall operation start time, the first time and the overall operation start time A seventh step of comparing with a third time until the deceleration start time in the comparison pattern;
If the first time is longer than the third time, the next reference pattern is set in the sixth step, and if the first time is shorter than the third time, the first time is set. The robot control method according to claim 1, wherein the setting of the next reference pattern is not executed in 6 steps.
前記タイミング決定処理によりタイミングが決定された速度指令のタイミングを変更するタイミング変更処理を実行し、
前記タイミング変更処理は、
前記タイミングが決定された速度指令のうち、全体の動作開始時点から加速終了時点までの第4の時間が最も長くなる速度指令を加速終了最遅パターンに設定するステップと、
前記加速終了最遅パターンにおける前記第4の時間内に軸の動作が完了する速度指令を短動作時間パターンに設定する第8ステップと、
前記短動作時間パターンにおける動作開始時点が全体の動作開始時点に一致するように前記短動作時間パターンを実行するタイミングを変更する第9ステップと、
を含んでいることを特徴とする請求項1または2に記載のロボットの制御方法。
Performing a timing change process for changing the timing of the speed command whose timing is determined by the timing determination process;
The timing change process
Of the speed commands for which the timing has been determined, setting a speed command that takes the longest fourth time from the overall operation start time to the acceleration end time as the acceleration end latest pattern;
An eighth step of setting, in the short operation time pattern, a speed command for completing the operation of the axis within the fourth time in the acceleration ending latest pattern
A ninth step of changing the timing of executing the short operation time pattern so that the operation start time in the short operation time pattern coincides with the entire operation start time;
The robot control method according to claim 1, wherein the robot control method includes:
モータにより駆動される複数の軸を有するロボットの手先を現在位置から目標位置までPTP動作により移動させる際、各軸に対する速度指令をそれぞれ演算する演算処理手段と、それら演算された各速度指令を実行するタイミングを決定するタイミング決定処理手段とを有するロボットの制御装置であって、
前記演算処理手段は、各軸単位での動作時間が最も短くなるように各軸を駆動するための速度指令を演算し、
前記タイミング決定処理手段は、
前記演算された各速度指令のうち、軸の動作時間が最も長くなる速度指令における動作開始時点を全体の動作開始時点として規定し、前記軸の動作時間が最も長くなる速度指令を実行するタイミングを決定し、
前記軸の動作時間が最も長くなる速度指令を基準パターンに設定し、
前記基準パターンの次に軸の動作時間が長くなる速度指令を比較パターンに設定し、
全体の動作開始時点から前記基準パターンにおける減速開始時点までの第1の時間と、前記比較パターンにおける動作開始時点から動作終了時点までの第2の時間とを比較し、
前記第1および第2の時間の比較の結果、前記第1の時間が前記第2の時間より長い場合には前記比較パターンにおける動作開始時点が前記基準パターンにおける減速開始時点に一致するように前記比較パターンを実行するタイミングを決定し、前記第1の時間が前記第2の時間より短い場合には前記比較パターンにおける動作開始時点が全体の動作開始時点に一致するように前記比較パターンを実行するタイミングを決定し、
前記タイミングが決定された比較パターンを次の基準パターンに設定するとともに、その比較パターンの次に軸の動作時間が長くなる速度指令を次の比較パターンに設定し、
前記次の基準パターンおよび前記次の比較パターンを設定した後、前記次の比較パターンの設定対象となる速度指令が存在しなくなるまで、前記第1および第2の時間の比較と、前記比較パターンのタイミング決定と、前記次の基準パターンおよび前記次の比較パターンの設定とを繰り返し実行することを特徴とするロボットの制御装置。
When moving the hand of a robot having a plurality of axes driven by a motor from the current position to the target position by the PTP operation, arithmetic processing means for calculating the speed command for each axis and the calculated speed commands are executed. A robot control device having timing determination processing means for determining the timing to perform,
The arithmetic processing means calculates a speed command for driving each axis so that the operation time in each axis unit is the shortest,
The timing determination processing means includes:
Among the calculated speed commands, the operation start point in the speed command with the longest operation time of the axis is defined as the overall operation start point, and the timing for executing the speed command with the longest operation time of the axis is executed. Decide
Set the speed command that makes the movement time of the axis the longest to the reference pattern,
Set the speed command that makes the movement time of the axis longer after the reference pattern in the comparison pattern,
Comparing the first time from the overall operation start time to the deceleration start time in the reference pattern and the second time from the operation start time to the operation end time in the comparison pattern;
As a result of the comparison between the first time and the second time, when the first time is longer than the second time, the operation start time in the comparison pattern matches the deceleration start time in the reference pattern. The timing for executing the comparison pattern is determined, and when the first time is shorter than the second time, the comparison pattern is executed so that the operation start time in the comparison pattern coincides with the entire operation start time. Determine the timing,
Set the comparison pattern for which the timing is determined as the next reference pattern, and set the speed command for the axis operation time to be longer next to the comparison pattern as the next comparison pattern,
After setting the next reference pattern and the next comparison pattern, the comparison of the first and second times and the comparison pattern of the comparison pattern until there is no speed command to be set for the next comparison pattern. A robot control apparatus that repeatedly executes timing determination and setting of the next reference pattern and the next comparison pattern.
前記タイミング決定処理手段は、
前記比較パターンにおける動作開始時点が全体の動作開始時点に一致するように前記比較パターンを実行するタイミングが決定されると、前記第1の時間と全体の動作開始時点から前記比較パターンにおける減速開始時点までの第3の時間とを比較し、
前記第1および第3の時間の比較の結果、前記第1の時間が前記第3の時間より長い場合には前記次の基準パターンの設定を実行し、前記第1の時間が前記第3の時間より短い場合には前記次の基準パターンの設定を実行しないことを特徴とする請求項4に記載のロボットの制御装置。
The timing determination processing means includes:
When the timing for executing the comparison pattern is determined so that the operation start time in the comparison pattern coincides with the overall operation start time, the deceleration start time in the comparison pattern from the first time and the overall operation start time is determined. Compare with the third time until
As a result of the comparison between the first time and the third time, when the first time is longer than the third time, the setting of the next reference pattern is executed, and the first time is the third time. 5. The robot control apparatus according to claim 4, wherein when the time is shorter than the time, the setting of the next reference pattern is not executed.
前記タイミング決定処理手段によりタイミングが決定された速度指令のタイミングを変更するタイミング変更処理手段を備え、
前記タイミング変更処理手段は、
前記タイミングが決定された速度指令のうち、全体の動作開始時点から加速終了時点までの第4の時間が最も長くなる速度指令を加速終了最遅パターンに設定し、
前記加速終了最遅パターンにおける前記第4の時間内に軸の動作が完了する速度指令を短動作時間パターンに設定し、
前記短動作時間パターンにおける動作開始時点が全体の動作開始時点に一致するように前記短動作時間パターンを実行するタイミングを変更することを特徴とする請求項4または5に記載のロボットの制御装置。
Timing change processing means for changing the timing of the speed command whose timing is determined by the timing determination processing means;
The timing change processing means includes
Among the speed commands for which the timing has been determined, a speed command that makes the fourth time from the start time of the entire operation to the end time of acceleration the longest is set as the latest acceleration end pattern,
A speed command for completing the movement of the axis within the fourth time in the acceleration ending slowest pattern is set to a short operation time pattern;
The robot control device according to claim 4 or 5, wherein a timing for executing the short operation time pattern is changed so that an operation start time in the short operation time pattern coincides with an entire operation start time.
JP2011058021A 2011-03-16 2011-03-16 Robot control method and robot control apparatus Active JP5678746B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011058021A JP5678746B2 (en) 2011-03-16 2011-03-16 Robot control method and robot control apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011058021A JP5678746B2 (en) 2011-03-16 2011-03-16 Robot control method and robot control apparatus

Publications (2)

Publication Number Publication Date
JP2012192485A true JP2012192485A (en) 2012-10-11
JP5678746B2 JP5678746B2 (en) 2015-03-04

Family

ID=47084895

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011058021A Active JP5678746B2 (en) 2011-03-16 2011-03-16 Robot control method and robot control apparatus

Country Status (1)

Country Link
JP (1) JP5678746B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9423777B2 (en) 2012-03-01 2016-08-23 Mitsubishi Electric Corporation Motor control device
JP2020196061A (en) * 2019-05-31 2020-12-10 セイコーエプソン株式会社 robot

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04269187A (en) * 1991-02-22 1992-09-25 Sony Corp Acceleration/deceleration pattern forming device
JPH04317103A (en) * 1991-04-16 1992-11-09 Sanyo Electric Co Ltd Industrial robot
JPH07295615A (en) * 1994-04-21 1995-11-10 Ricoh Co Ltd Driving control method for articulated robot
US20030009260A1 (en) * 2000-01-17 2003-01-09 Yoichi Tanaka Positioning control method and positioning control device, and electronic part mounting device using this
JP2004306158A (en) * 2003-04-02 2004-11-04 Nissan Motor Co Ltd Control method of servomotor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04269187A (en) * 1991-02-22 1992-09-25 Sony Corp Acceleration/deceleration pattern forming device
JPH04317103A (en) * 1991-04-16 1992-11-09 Sanyo Electric Co Ltd Industrial robot
JPH07295615A (en) * 1994-04-21 1995-11-10 Ricoh Co Ltd Driving control method for articulated robot
US20030009260A1 (en) * 2000-01-17 2003-01-09 Yoichi Tanaka Positioning control method and positioning control device, and electronic part mounting device using this
JP2004306158A (en) * 2003-04-02 2004-11-04 Nissan Motor Co Ltd Control method of servomotor

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9423777B2 (en) 2012-03-01 2016-08-23 Mitsubishi Electric Corporation Motor control device
DE112013001229B4 (en) 2012-03-01 2019-05-09 Mitsubishi Electric Corporation Motor control device
JP2020196061A (en) * 2019-05-31 2020-12-10 セイコーエプソン株式会社 robot

Also Published As

Publication number Publication date
JP5678746B2 (en) 2015-03-04

Similar Documents

Publication Publication Date Title
CN102208888B (en) Motor driving system, motor controller, and safety function expander
JP5260719B2 (en) Motor drive device having power failure determination unit for determining presence or absence of power failure
US9102058B2 (en) Method and apparatus for implementing a manipulator process
JP5540753B2 (en) Robot system
JP6640812B2 (en) Motor drive system having power storage device
JP6599942B2 (en) Motor control device and machine tool system for controlling motor according to voltage drop amount of power supply voltage
US8736217B2 (en) Servo motor control device for controlling servo motor configured to drive feed axis of machine tool
Mubarok et al. Implementation of predictive controllers for matrix-converter-based interior permanent magnet synchronous motor position control systems
JP5813746B2 (en) Robot control system
JP5678746B2 (en) Robot control method and robot control apparatus
JP2007143235A (en) Drive controller of ac motor
CN101262192A (en) A reverser for driving four electromotor asynchronization and realizing rotor frequency conversion speed-adjusting system
JP5593968B2 (en) Robot system
JP5678745B2 (en) Robot control method and robot control apparatus
JP3689194B2 (en) Robot control method
CN103552072B (en) A kind of robot control method based on embedded controller and device
JP5879870B2 (en) Robot system
CN115065295A (en) Motor control method, motor controller, electric drive system and new energy automobile
JP5527127B2 (en) Robot system
JP3672883B2 (en) Control device for synchronous motor
JP2010124645A (en) Robot
CN104601052A (en) Motor control apparatus and method for controlling motor
CN115213899A (en) Small manipulator controller and control method thereof
JP2019092239A (en) Motor drive system having power storage device
JP2013070565A (en) Robot system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141222

R150 Certificate of patent or registration of utility model

Ref document number: 5678746

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250