JP2016147324A - Robot control apparatus, and control method - Google Patents

Robot control apparatus, and control method Download PDF

Info

Publication number
JP2016147324A
JP2016147324A JP2015024031A JP2015024031A JP2016147324A JP 2016147324 A JP2016147324 A JP 2016147324A JP 2015024031 A JP2015024031 A JP 2015024031A JP 2015024031 A JP2015024031 A JP 2015024031A JP 2016147324 A JP2016147324 A JP 2016147324A
Authority
JP
Japan
Prior art keywords
speed
motor
angle
monitoring
angular
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
JP2015024031A
Other languages
Japanese (ja)
Other versions
JP6547320B2 (en
Inventor
慧 井手
Satoshi Ide
慧 井手
大介 川瀬
Daisuke Kawase
大介 川瀬
尚哉 香川
Naoya Kagawa
尚哉 香川
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 JP2015024031A priority Critical patent/JP6547320B2/en
Publication of JP2016147324A publication Critical patent/JP2016147324A/en
Application granted granted Critical
Publication of JP6547320B2 publication Critical patent/JP6547320B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a robot control apparatus and a control method capable of suppressing the travel speed of an arm sufficiently.SOLUTION: A controller 30 is applied to a robot 10 having an arm and including: a plurality of rotary parts 13 to 18; articulates for connecting the rotary parts rotatably relative to each other; and servomotors for driving the individual rotary parts. The controller 30 comprises: angular speed calculation means for calculating an angular speed for driving each servomotor for every operation cycle; selection means for selecting all articulations, which are disposed closer to an arm root side than a monitoring part having the highest velocity in the arm, as speed reducing object shafts, on condition that the maximum one of the speeds of the monitoring parts set at every rotary parts 13 to 18 is higher than the reference speed; and angular speed lowering means for setting the servomotors for rotating the speed reducing object shafts selected, as reduction object motors, and for lowering the angular speeds to drive the reduction object motors, so that the speeds of the individual monitoring parts may be at or lower than the reference speed.SELECTED DRAWING: Figure 1

Description

本発明は、ロボットの制御装置及び制御方法に関する。   The present invention relates to a robot control device and a control method.

従来、ロボットの手動操作時に、ロボットの制御点の移動速度が基準速度を超えた際に、移動速度が基準速度以下となるように動作目標位置を修正してロボットを動作させるものがある(特許文献1参照)。   Conventionally, during manual operation of a robot, when the movement speed of the control point of the robot exceeds the reference speed, there is an apparatus that operates the robot by correcting the operation target position so that the movement speed becomes lower than the reference speed (patent) Reference 1).

特許第3994487号公報Japanese Patent No. 3994487

しかしながら、ロボットの制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アームの移動速度を十分に抑制することができない場合があることに本願発明者は着目した。   However, even if the movement speed of the tip of the arm set as the control point of the robot is controlled to be equal to or lower than the reference speed, the movement speed of the arm may not be sufficiently suppressed. Paid attention.

本発明は、こうした実情に鑑みてなされたものであり、アームの移動速度を十分に抑制することのできるロボットの制御装置及び制御方法を提供することを主たる目的とするものである。   The present invention has been made in view of such circumstances, and a main object of the present invention is to provide a robot control device and a control method capable of sufficiently suppressing the moving speed of the arm.

第1の手段は、複数の回転部、前記回転部を互いに回転可能に連結する関節、及び前記各回転部を駆動するサーボモータを含むアームと、所定のロボット設置場所に設置され、前記アームの両端部のうち前記アームの先端部とは反対側を動作可能に支持する支持部と、を備えるロボットに適用され、PTP制御により前記先端部の位置及び姿勢を制御するロボットの制御装置であって、動作周期毎に前記各サーボモータを駆動させる角速度を算出する角速度算出手段と、前記各回転部に設定された監視部の速度を算出する監視速度算出手段と、前記監視速度算出手段により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記アームにおいて、前記最大の速度となる前記監視部よりも前記支持部側に設けられた全ての前記関節を速度低減対象軸として選択する選択手段と、前記選択手段により選択された前記速度低減対象軸を回転させる前記サーボモータを低減対象モータとし、前記各監視部の速度が前記基準速度以下となるように、前記低減対象モータを駆動させる角速度を低下させる角速度低下手段と、前記各サーボモータのうち前記低減対象モータ以外のモータを、前記角速度算出手段により算出された角速度で駆動させ、前記低減対象モータを、前記角速度低下手段により低下させられた角速度で駆動させる駆動手段と、を備えることを特徴とする。   The first means includes a plurality of rotating units, a joint that rotatably connects the rotating units to each other, and an arm including a servo motor that drives each rotating unit, and is installed at a predetermined robot installation location. A robot control device that is applied to a robot that includes a support portion that operably supports the opposite side of the tip of the arm among both ends, and controls the position and posture of the tip by PTP control. The angular velocity calculating means for calculating the angular speed for driving each servo motor for each operation cycle, the monitoring speed calculating means for calculating the speed of the monitoring section set in each rotating section, and the monitoring speed calculating means. In addition, on the condition that the maximum speed among the speeds of each of the monitoring units is higher than the reference speed, the arm is closer to the support unit than the monitoring unit having the maximum speed. Selection means for selecting all the joints selected as speed reduction target axes, and the servo motor for rotating the speed reduction target axis selected by the selection means as a reduction target motor, and the speed of each of the monitoring units is An angular speed reducing means for reducing the angular speed for driving the motor to be reduced so as to be equal to or lower than the reference speed, and a motor other than the motor to be reduced among the servo motors at an angular speed calculated by the angular speed calculating means. Drive means for driving and driving the motor to be reduced at the angular velocity reduced by the angular velocity reduction means.

上記構成では、ロボットのアームは複数の回転部を含んでおり、回転部は関節により互いに回転可能に連結されている。そして、アームの両端部のうちアームの先端部とは反対側は、所定のロボット設置場所に設置される支持部に動作可能に支持されている。そして、PTP制御により、ロボットの制御点として設定される先端部の位置及び姿勢が制御される。   In the above configuration, the arm of the robot includes a plurality of rotating units, and the rotating units are connected to each other by joints so as to be rotatable. And the opposite side to the front-end | tip part of an arm among the both ends of an arm is supported by the support part installed in the predetermined robot installation place so that operation | movement is possible. Then, the position and posture of the tip set as the control point of the robot are controlled by PTP control.

ここで、制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アーム(ロボット)の姿勢によっては、アームにおける制御点以外の部分の移動速度が基準速度よりも高くなる場合があることに本願発明者は着目した。   Here, even if the movement speed of the tip of the arm set as the control point is controlled to be equal to or lower than the reference speed, depending on the posture of the arm (robot), the movement speed of the part other than the control point in the arm may be The inventor of the present application has paid attention to the fact that the speed may be higher than the reference speed.

そこで上記構成では、各回転部に監視部が設定される。例えば、各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。そして、角速度算出手段により動作周期毎に各サーボモータを駆動させる角速度が算出され、また、監視速度算出手段により各監視部の速度が算出される。そして、算出された各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、ロボットのアームにおいて、各監視部のうち最大の速度となる監視部よりも支持部側に設けられた全ての関節が速度低減対象軸として選択される。   Therefore, in the above configuration, a monitoring unit is set for each rotating unit. For example, the portion farthest from the joint that is the center of rotation when rotating each rotating unit is set as the monitoring unit of each rotating unit. Then, an angular velocity for driving each servo motor is calculated for each operation cycle by the angular velocity calculating means, and a speed of each monitoring unit is calculated by the monitoring velocity calculating means. Then, on the condition that the maximum speed among the calculated speeds of the respective monitoring units is higher than the reference speed, the robot arm is provided on the support unit side of the monitoring unit having the maximum speed among the respective monitoring units. All the selected joints are selected as speed reduction target axes.

続いて、角速度低下手段により、各監視部の速度が基準速度以下となるように、選択された速度低減対象軸を回転させるサーボモータ(以下、低減対象モータ)を駆動させる角速度が低下させられる。そして、各サーボモータのうち低減対象モータ以外のモータが、角速度算出手段により算出された角速度で駆動され、低減対象モータが、角速度低下手段により低下させられた角速度で駆動される。これにより、ロボットの制御点のみならず、各回転部に設定された監視部の速度を基準速度以下にすることができ、アームの移動速度を十分に抑制することができる。   Subsequently, the angular velocity for driving a servo motor (hereinafter referred to as a reduction target motor) that rotates the selected speed reduction target shaft is reduced by the angular velocity reduction means so that the speed of each monitoring unit is equal to or lower than the reference speed. Of the servo motors, motors other than the reduction target motor are driven at the angular speed calculated by the angular speed calculation unit, and the reduction target motor is driven at the angular speed reduced by the angular speed reduction unit. Thereby, not only the control point of the robot but also the speed of the monitoring unit set in each rotating unit can be made lower than the reference speed, and the moving speed of the arm can be sufficiently suppressed.

また上記構成では、各サーボモータのうち角速度の低減対象となるモータを、上記速度低減対象軸を回転させる低減対象モータとしている。このため、各監視部の速度が基準速度以下となるように全てのサーボモータの角速度を一律に低下させる構成と比較して、角速度を低下させるサーボモータの数を少なくできる。このため、角速度を低下させる処理に要する時間を短縮でき、オペレータにとって快適なロボットの動作レスポンスを維持することもできる。さらに上記構成では、各関節のうち、上記最大の速度が基準速度を超えるに至った大きな要因となる関節がどの関節であるかを特定する必要がなく、角速度を低下させる処理を簡易にすることができる。   Moreover, in the said structure, the motor used as the reduction object of angular velocity among each servomotor is made into the reduction object motor which rotates the said speed reduction object axis | shaft. For this reason, the number of servo motors that reduce the angular speed can be reduced as compared with a configuration in which the angular speeds of all the servo motors are uniformly reduced so that the speed of each monitoring unit is equal to or less than the reference speed. For this reason, the time required for the process of reducing the angular velocity can be shortened, and the robot motion response comfortable for the operator can be maintained. Furthermore, in the above configuration, it is not necessary to specify which joint is the major factor that caused the maximum speed to exceed the reference speed, and the process of reducing the angular speed is simplified. Can do.

第2の発明では、前記角速度算出手段により算出された前記各サーボモータの角速度に基づいて、前記各サーボモータの前記動作周期後の角度を算出する次周期角度算出手段と、前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度のうち前記低減対象モータの動作周期後の角度と、前記低減対象モータの現在の角度とに基づいて、前記低減対象モータの動作周期あたりの角度変化量を算出する変化量算出手段と、をさらに備え、前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記変化量算出手段により算出された前記低減対象モータの角度変化量を低下させ、前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度のうち、前記低減対象モータの動作周期後の角度を、前記角速度低下手段によって低下させられた角度変化量と、前記低減対象モータの現在の角度とに基づいて算出された前記低減対象モータの動作周期後の角度で更新することにより、前記各サーボモータの動作周期後の角度を再設定する再設定手段をさらに備え、前記駆動手段は、前記各サーボモータの現在の角度を、前記再設定手段により再設定された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる。   In the second invention, the next cycle angle calculation means for calculating the angle after the operation cycle of each servo motor based on the angular velocity of each servo motor calculated by the angular velocity calculation means, and the next cycle angle calculation Based on the angle after the operation cycle of the reduction target motor among the angles after the operation cycle of the servo motors calculated by the means, and the current angle of the reduction target motor, Change amount calculating means for calculating the angle change amount of the motor, and the angular velocity lowering means calculates the reduction target motor calculated by the change amount calculation means so that the maximum speed is equal to or less than the reference speed. Among the angles after the operation cycle of each servo motor calculated by the next cycle angle calculation means, and the operation cycle of the motor to be reduced Is updated with the angle after the operation cycle of the reduction target motor calculated based on the angle change amount reduced by the angular velocity reduction means and the current angle of the reduction target motor, The servo motor further comprises resetting means for resetting the angle after the operation cycle of each servo motor, and the driving means sets the current angle of each servo motor to the angle of each servo motor reset by the resetting means. The servo motors are driven so as to be controlled after the operation cycle.

上記構成では、次周期角度算出手段により、各サーボモータの動作周期後の角度が算出される。そして、低減対象モータの動作周期後の角度と、低減対象モータの現在の角度とに基づいて、低減対象モータの動作周期あたりの角度変化量が算出され、各監視部の速度のうち最大の速度が基準速度以下となるように、算出された低減対象モータの角度変化量が低下させられる。   In the above configuration, the angle after the operation cycle of each servo motor is calculated by the next cycle angle calculation means. Then, based on the angle after the operation cycle of the motor to be reduced and the current angle of the motor to be reduced, the angle change amount per operation cycle of the motor to be reduced is calculated, and the maximum speed among the speeds of the respective monitoring units The amount of change in the angle of the motor to be reduced that is calculated is reduced so that is below the reference speed.

続いて、次周期角度算出手段により算出された各サーボモータの動作周期後の角度のうち、低減対象モータの動作周期後の角度が、角速度低下手段によって低下させられた角度変化量と、低減対象モータの現在の角度とに基づいて算出された低減対象モータの動作周期後の角度で更新されることにより、各サーボモータの動作周期後の角度が再設定される。そして、各サーボモータの現在の角度が、再設定された各サーボモータの角度まで動作周期後に制御されるように、各サーボモータが駆動される。このため、低減対象モータの動作周期あたりに駆動される角度が小さくなり、低減対象モータの駆動される角速度を適切に低下させることができる。   Subsequently, among the angles after the operation cycle of each servo motor calculated by the next cycle angle calculation means, the angle change amount by which the angle after the operation cycle of the reduction target motor is reduced by the angular velocity reduction means, and the reduction target By updating with the angle after the operation cycle of the motor to be reduced calculated based on the current angle of the motor, the angle after the operation cycle of each servo motor is reset. Then, each servo motor is driven so that the current angle of each servo motor is controlled after the operation cycle to the reset angle of each servo motor. For this reason, the angle driven per operation cycle of the reduction target motor is reduced, and the angular velocity at which the reduction target motor is driven can be appropriately reduced.

第3の発明では、前記角速度低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量算出手段により算出された角度変化量を低下させる。   In the third invention, the angular velocity reducing means reduces the angular change amount calculated by the change amount calculating means based on a value of a ratio between the maximum speed and the reference speed.

上記構成では、各監視部の速度のうち最大の速度と基準速度との比の値に基づいて、低減対象モータの角度変化量が低下させられる。上記比の値を用いることにより、基準速度に対する最大の速度の超過分を反映して角度変化量を低下させることができる。なお、最大の速度と基準速度との比の値とは、最大の速度を基準速度で割った値である(比の値=最大の速度/基準速度)。   In the above configuration, the amount of change in the angle of the motor to be reduced is reduced based on the value of the ratio between the maximum speed and the reference speed among the speeds of the monitoring units. By using the value of the above ratio, it is possible to reduce the amount of angle change reflecting the excess of the maximum speed with respect to the reference speed. The value of the ratio between the maximum speed and the reference speed is a value obtained by dividing the maximum speed by the reference speed (ratio value = maximum speed / reference speed).

第4の発明では、前記角速度低下手段は、前記角度変化量を前記比の値で割ることにより、前記角度変化量を低下させる。   In a fourth invention, the angular velocity reduction means reduces the angle change amount by dividing the angle change amount by the value of the ratio.

上記構成では、角度変化量を上記比の値で割るといった簡単な演算を用いるため、上記角度変化量を容易に低下させることができる。さらに上記構成では、角度変化量を上記比の値で割るといった演算を用いるため、角度変化量を一定の法則から定まる比率で低下させることができ、角度変化量の低下分をオペレータが予測しやすくなる。   In the above configuration, since the simple calculation of dividing the angle change amount by the value of the ratio is used, the angle change amount can be easily reduced. Furthermore, in the above configuration, since the calculation of dividing the angle change amount by the value of the ratio is used, the angle change amount can be reduced at a ratio determined from a certain law, and the operator can easily predict the decrease in the angle change amount. Become.

第5の手段では、前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を低下させ、前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を、前記角速度低下手段によって低下させられた角速度で更新することにより、前記各サーボモータの角速度を再設定する再設定手段をさらに備え、前記駆動手段は、前記再設定手段により再設定された前記各サーボモータの角速度により、前記各サーボモータを駆動させる。   In a fifth means, the angular speed reducing means calculates the angular speed of the motor to be reduced among the angular speeds of the servo motors calculated by the angular speed calculating means so that the maximum speed is equal to or less than the reference speed. The angular speed of each servo motor is updated by updating the angular speed of the motor to be reduced with the angular speed reduced by the angular speed reducing means among the angular speeds of the servo motors calculated by the angular speed calculating means. Resetting means for resetting the servomotor, and the driving means drives each servo motor at the angular velocity of each servomotor reset by the resetting means.

上記構成では、最大の速度が基準速度以下となるように、角速度算出手段により算出された各サーボモータの角速度のうち、低減対象モータの角速度が低下させられる。そして、角速度算出手段により算出された各サーボモータの角速度のうち、低減対象モータの角速度が、角速度低下手段によって低下させられた角速度で更新されることにより、各サーボモータの角速度が再設定される。そして、再設定された各サーボモータの角速度により、各サーボモータが駆動される。これにより、低減対象モータを駆動させる角速度を適切に低下させることができる。   In the above configuration, among the angular velocities of the servomotors calculated by the angular velocity calculation means, the angular velocities of the reduction target motors are reduced so that the maximum speed is equal to or lower than the reference speed. Then, among the angular velocities of the servo motors calculated by the angular velocity calculating means, the angular velocities of the motors to be reduced are updated with the angular velocities reduced by the angular speed reducing means, thereby resetting the angular velocities of the servo motors. . Then, each servo motor is driven by the reset angular velocity of each servo motor. Thereby, the angular velocity which drives a reduction object motor can be reduced appropriately.

第6の発明では、前記角速度低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記角速度算出手段により算出された前記低減対象モータの角速度を低下させる。   In a sixth aspect of the invention, the angular velocity reduction means reduces the angular velocity of the reduction target motor calculated by the angular velocity calculation means based on a value of a ratio between the maximum speed and the reference speed.

上記構成では、各監視部の速度のうち最大の速度と基準速度との比の値に基づいて、速度が最大となる監視部の速度を基準速度以下とするように、低減対象モータを駆動させる角速度を適切に低下させることができる。なお、最大の速度と基準速度との比の値とは、最大の速度を基準速度で割った値である(比の値=最大の速度/基準速度)。   In the above configuration, based on the value of the ratio between the maximum speed and the reference speed among the speeds of the respective monitoring units, the motor to be reduced is driven so that the speed of the monitoring unit that maximizes the speed is equal to or lower than the reference speed. The angular velocity can be appropriately reduced. The value of the ratio between the maximum speed and the reference speed is a value obtained by dividing the maximum speed by the reference speed (ratio value = maximum speed / reference speed).

第7の発明では、前記角速度低下手段は、前記角速度算出手段により算出された前記低減対象モータの角速度を前記比の値で割ることにより、前記角速度を低下させる。   In a seventh invention, the angular velocity reduction means reduces the angular velocity by dividing the angular velocity of the motor to be reduced calculated by the angular velocity calculation means by the value of the ratio.

上記構成では、低減対象モータを駆動させる角速度を容易かつ適切に低下させることができる。   In the above configuration, the angular velocity for driving the reduction target motor can be easily and appropriately reduced.

第8の発明では、前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する。   In an eighth aspect of the invention, a portion that is the most distant from the joint that is the center of rotation when rotating each rotating unit is set as the monitoring unit of each rotating unit.

上記構成によれば、各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。このため、各回転部において、最も速度が高くなる可能性の高い部分を監視部に設定することができ、アームの移動速度を十分に抑制することができる。   According to the above configuration, the portion farthest from the joint serving as the center of rotation when rotating each rotating unit is set as the monitoring unit of each rotating unit. For this reason, in each rotation part, the part with the highest possibility that speed becomes the highest can be set to a monitoring part, and the moving speed of an arm can fully be suppressed.

第9の発明では、前記角速度算出手段により算出された前記各サーボモータの角速度に基づいて、前記各サーボモータの前記動作周期後の角度を算出する次周期角度算出手段と、前記各監視部の現在の位置を算出する現在監視位置算出手段と、前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、をさらに備え、前記監視速度算出手段は、前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する。   In a ninth invention, based on the angular velocity of each servo motor calculated by the angular velocity calculating unit, a next cycle angle calculating unit that calculates an angle after the operation cycle of each servo motor; and Based on the current monitoring position calculation means for calculating the current position and the angle after the operation cycle of each servo motor calculated by the next cycle angle calculation means, the position after the operation cycle of each monitoring unit is calculated. A next cycle monitoring position calculating means, wherein the monitoring speed calculating means is calculated by the current position of each monitoring unit calculated by the current monitoring position calculating means and the next period monitoring position calculating means. The speed of each of the monitoring units is calculated based on the position after the operation cycle of each of the monitoring units.

上記構成では、現在監視位置算出手段により算出された各監視部の現在の位置と、次周期監視位置算出手段により算出された各監視部の動作周期後の位置とに基づいて、各監視部の速度を適切に算出することができる。   In the above configuration, based on the current position of each monitoring unit calculated by the current monitoring position calculation unit and the position after the operation cycle of each monitoring unit calculated by the next cycle monitoring position calculation unit, The speed can be calculated appropriately.

なお、監視速度算出手段としては、具体的には、第10の発明のように、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出するといった構成を採用することができる。   As the monitoring speed calculation means, specifically, as in the tenth invention, the distance between the current position of each monitoring unit and the position after the operation cycle of each monitoring unit is divided by the operation cycle. Accordingly, it is possible to adopt a configuration in which the speed of each monitoring unit is calculated.

また、次周期監視位置算出手段としては、具体的には、第11の発明のように、前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出するといった構成を採用することができる。   Further, as the next cycle monitoring position calculation means, specifically, as in the eleventh aspect, the angle after the operation period of each servo motor calculated by the next cycle angle calculation means, and each rotation unit It is possible to employ a configuration in which the position of each monitoring unit after the operation cycle is calculated based on the size of the monitor.

第12の手段は、複数の回転部、前記回転部を互いに回転可能に連結する関節、及び前記各回転部を駆動するサーボモータを含むアームと、所定のロボット設置場所に設置され、前記アームの両端部のうち前記アームの先端部とは反対側を動作可能に支持する支持部と、を備えるロボットに適用され、PTP制御により前記先端部の位置及び姿勢を制御するロボットの制御方法であって、動作周期毎に前記各サーボモータを駆動させる角速度を算出する角速度算出工程と、前記各回転部に設定された監視部の速度を算出する監視速度算出工程と、前記監視速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記アームにおいて、前記最大の速度となる前記監視部よりも前記支持部側に設けられた全ての前記関節を速度低減対象軸として選択する選択工程と、前記選択工程により選択された前記速度低減対象軸を回転させる前記サーボモータを低減対象モータとし、前記各監視部の速度が前記基準速度以下となるように、前記低減対象モータを駆動させる角速度を低下させる角速度低下工程と、前記各サーボモータのうち前記低減対象モータ以外のモータを、前記角速度算出工程により算出された角速度で駆動させ、前記低減対象モータを、前記角速度低下工程により低下させられた角速度で駆動させる駆動工程と、を備えることを特徴とする。   A twelfth means is installed at a predetermined robot installation location, including a plurality of rotating units, a joint that rotatably connects the rotating units to each other, and a servo motor that drives the rotating units. A control method for a robot that is applied to a robot that includes a support portion that operably supports a side opposite to the tip portion of the arm among both ends, and that controls the position and posture of the tip portion by PTP control. An angular velocity calculating step for calculating an angular velocity for driving each servo motor for each operation cycle, a monitoring velocity calculating step for calculating a velocity of a monitoring unit set in each rotating unit, and a monitoring velocity calculating step. Further, on the condition that the maximum speed among the speeds of each of the monitoring units is higher than the reference speed, the arm is provided on the support unit side with respect to the monitoring unit having the maximum speed. A selection step of selecting all the joints provided as speed reduction target axes, and the servo motor that rotates the speed reduction target axis selected in the selection step is a reduction target motor, and the speed of each of the monitoring units is An angular speed reduction step of reducing an angular speed for driving the motor to be reduced so as to be equal to or lower than the reference speed, and motors other than the motor to be reduced among the servo motors at the angular speed calculated by the angular speed calculation step. And a driving step of driving the motor to be reduced at the angular velocity reduced by the angular velocity reduction step.

上記工程によれば、第1の手段と同様の作用効果を奏することができる。   According to the said process, there can exist an effect similar to a 1st means.

ロボット、コントローラ、及びティーチングペンダントの概要を示す図。The figure which shows the outline | summary of a robot, a controller, and a teaching pendant. ロボットの特定姿勢を示す正面図。The front view which shows the specific attitude | position of a robot. 第1実施形態に係るアーム速度抑制制御の処理手順を示すフローチャート。The flowchart which shows the process sequence of the arm speed suppression control which concerns on 1st Embodiment. サーボモータの角速度パターンを示すグラフ。The graph which shows the angular velocity pattern of a servomotor. 第2実施形態に係るアーム速度抑制制御の処理手順を示すフローチャート。The flowchart which shows the process sequence of the arm speed suppression control which concerns on 2nd Embodiment.

(第1実施形態)
以下、垂直多関節型ロボットの制御装置に具体化した第1実施形態について、図面を参照しつつ説明する。本実施形態のロボットは、例えば産業用ロボットとして機械組立工場などの組立システムにて用いられる。
(First embodiment)
Hereinafter, a first embodiment embodied in a control device for a vertical articulated robot will be described with reference to the drawings. The robot of this embodiment is used in an assembly system such as a machine assembly factory as an industrial robot, for example.

はじめに、ロボット10の概要を図1に基づいて説明する。   First, an outline of the robot 10 will be described with reference to FIG.

同図に示すように、ロボット10は、回転部を互いに連結する各関節の回転中心軸線として、第1軸線J1、第2軸線J2、第3軸線J3、第4軸線J4、第5軸線J5、及び第6軸線J6を有する6軸ロボットである。これら各軸線における各部の動作角度は、それぞれサーボモータ等からなる駆動源の駆動、及び減速機等による減速を通じて調整される。サーボモータは、いずれも正逆両方向の回転が可能であり、サーボモータの駆動により原点位置を基準として各回転部が動作(駆動)する。各サーボモータには、その出力軸を制動する電磁ブレーキと、出力軸の回転角度に応じたパルス信号を出力するエンコーダとがそれぞれ設けられている。   As shown in the figure, the robot 10 includes a first axis J1, a second axis J2, a third axis J3, a fourth axis J4, a fifth axis J5 as rotation center axes of the joints that connect the rotating units to each other. And a six-axis robot having a sixth axis J6. The operating angle of each part in each axis is adjusted through driving of a driving source composed of a servo motor or the like and deceleration by a speed reducer or the like. Both servomotors can be rotated in both forward and reverse directions, and each rotating unit operates (drives) based on the origin position by driving the servomotor. Each servo motor is provided with an electromagnetic brake that brakes its output shaft and an encoder that outputs a pulse signal corresponding to the rotation angle of the output shaft.

ロボット10は、床に設置されており、第1軸線J1が鉛直方向へ延びている。ロボット10において、基台11は、床等に固定される固定部12と、その固定部12の上方に設けられる回転部13(第1回転部)とを有している。ロボット10のアームは、回転部13に加え、下アーム15、上アーム16、手首部17、及びハンド部18によって構成されている。なお、本実施形態において、固定部12が支持部に相当する。   The robot 10 is installed on the floor, and the first axis J1 extends in the vertical direction. In the robot 10, the base 11 has a fixed portion 12 fixed to the floor or the like, and a rotating portion 13 (first rotating portion) provided above the fixed portion 12. The arm of the robot 10 includes a lower arm 15, an upper arm 16, a wrist portion 17, and a hand portion 18 in addition to the rotating portion 13. In the present embodiment, the fixing portion 12 corresponds to a support portion.

回転部13は、アームの両端部のうち、アーム先端部とは反対側の根元部に相当する。回転部13は、第1軸線J1を回転中心として水平方向に回転可能になっている。すなわち、回転部13は、第1軸線J1の方向に延びるとともに、固定部12により第1軸線J1を中心として回転可能に支持されている。   The rotating part 13 corresponds to a root part on the opposite side of the arm tip part from both ends of the arm. The rotating unit 13 is rotatable in the horizontal direction around the first axis J1. That is, the rotating portion 13 extends in the direction of the first axis J1 and is supported by the fixed portion 12 so as to be rotatable about the first axis J1.

下アーム15(第2回転部)が、水平方向に延びる第2軸線J2を回転中心として、時計回り方向又は反時計回り方向に回転可能に連結されている。すなわち、下アーム15は、第1軸線J1に直交する平面に含まれる第2軸線J2から離れる方向へ延びるとともに、回転部13により第2軸線J2を中心として回転可能に支持されている。下アーム15は、基本姿勢として鉛直方向に延びる向きに設けられている。   The lower arm 15 (second rotating portion) is coupled to be rotatable in a clockwise direction or a counterclockwise direction about a second axis J2 extending in the horizontal direction as a rotation center. That is, the lower arm 15 extends in a direction away from the second axis J2 included in the plane orthogonal to the first axis J1, and is supported by the rotating unit 13 so as to be rotatable about the second axis J2. The lower arm 15 is provided in a direction extending in the vertical direction as a basic posture.

下アーム15の上端部には、上アーム16が、水平方向に延びる第3軸線J3を回転中心として、時計回り方向又は反時計回り方向に回転可能に連結されている。すなわち、上アーム16は、第2軸線J2に平行な第3軸線J3から離れる方向へ延びるとともに、下アーム15により第3軸線J3を中心として回転可能に支持されている。上アーム16は、基本姿勢として水平方向に延びる向きに設けられている。   The upper arm 16 is coupled to the upper end portion of the lower arm 15 so as to be rotatable clockwise or counterclockwise about a third axis J3 extending in the horizontal direction. That is, the upper arm 16 extends in a direction away from the third axis J3 parallel to the second axis J2, and is supported by the lower arm 15 so as to be rotatable about the third axis J3. The upper arm 16 is provided in a direction extending in the horizontal direction as a basic posture.

上アーム16は、基端側(回転の際に第3軸線J3を回転中心とする関節側)と先端側とで2つのアーム部に分割されて構成されており、基端側は第1上アーム16A(第3回転部)、先端側は第2上アーム16B(第4回転部)となっている。第2上アーム16Bは、上アーム16の長手方向に延びる第4軸線J4を回転中心として、第1上アーム16Aに対してねじり方向に回転可能になっている。すなわち、第2上アーム16Bは、第3軸線J3に直交する平面に含まれる第4軸線J4の方向に延びるとともに、第1上アーム16Aにより第4軸線J4を中心として回転可能に支持されている。   The upper arm 16 is configured to be divided into two arm portions on the base end side (joint side with the third axis J3 as the rotation center during rotation) and the tip end side, and the base end side is the first upper side. The arm 16A (third rotating part), the tip side is a second upper arm 16B (fourth rotating part). The second upper arm 16B is rotatable in the torsional direction with respect to the first upper arm 16A with a fourth axis J4 extending in the longitudinal direction of the upper arm 16 as a rotation center. That is, the second upper arm 16B extends in the direction of the fourth axis J4 included in the plane orthogonal to the third axis J3, and is supported by the first upper arm 16A so as to be rotatable about the fourth axis J4. .

上アーム16(詳しくは第2上アーム16B)の先端部には、手首部17(第5回転部)が設けられている。手首部17は、水平方向に延びる第5軸線J5を回転中心として、第2上アーム16Bに対して回転可能になっている。すなわち、手首部17は、第4軸線J4に直交する第5軸線J5から離れる方向へ延びるとともに、第2上アーム16Bにより第5軸線J5を中心として回転可能に支持されている。   A wrist portion 17 (fifth rotating portion) is provided at the distal end portion of the upper arm 16 (specifically, the second upper arm 16B). The wrist portion 17 is rotatable with respect to the second upper arm 16B with the fifth axis J5 extending in the horizontal direction as the center of rotation. That is, the wrist 17 extends in a direction away from the fifth axis J5 orthogonal to the fourth axis J4, and is supported by the second upper arm 16B so as to be rotatable about the fifth axis J5.

手首部17の先端部には、ワークやツール等を取り付けるためのハンド部18(第6回転部)が設けられている。ハンド部18は、その中心線である第6軸線J6を回転中心として、ねじり方向に回転可能になっている。すなわち、ハンド部18は、第5軸線J5に直交する第6軸線J6の方向に延びるとともに、手首部17により第6軸線J6を中心として回転可能に支持されている。   A hand portion 18 (sixth rotating portion) for attaching a work, a tool, or the like is provided at the distal end portion of the wrist portion 17. The hand portion 18 is rotatable in the torsional direction around the sixth axis J6 that is the center line thereof. That is, the hand portion 18 extends in the direction of the sixth axis J6 orthogonal to the fifth axis J5, and is supported by the wrist portion 17 so as to be rotatable about the sixth axis J6.

コントローラ30(制御装置)は、CPU、ROM、RAM、駆動回路、及び位置検出回路等を備えている。ROMは、ロボット10のシステムプログラムや動作プログラム等を記憶している。RAMは、これらのプログラムを実行する際にパラメータの値等を記憶する。位置検出回路には、各エンコーダの検出信号がそれぞれ入力される。位置検出回路は、各エンコーダの検出信号に基づいて、各関節に設けられたサーボモータの回転角度を検出する。   The controller 30 (control device) includes a CPU, a ROM, a RAM, a drive circuit, a position detection circuit, and the like. The ROM stores system programs and operation programs for the robot 10. The RAM stores parameter values and the like when executing these programs. Detection signals from the encoders are input to the position detection circuit. The position detection circuit detects the rotation angle of the servo motor provided at each joint based on the detection signal of each encoder.

CPUは、予め設定された動作プログラム(プログラム)を実行することにより、位置検出回路から入力される位置情報に基づいて、アーム先端部の制御点の位置及び姿勢を制御する。詳しくは、CPUは、PTP(Point To Point)制御により、ロボット10のアームにおける各関節の回転角度(アームの姿勢)を目標回転角度(目標姿勢)にフィードフォワード制御する。PTP制御では、制御点を目標位置まで動作させる際に制御点の動作軌道(位置及び姿勢)が設定されない。本実施形態では、制御点として、アームのハンド部18の中心点18aであるTCP(Tool Center Point)が設定されている。また、CPUは、TCPの位置及び姿勢に基づいて、この位置及び姿勢を実現するための各関節の角度を逆変換によって算出する機能と、各関節の角度に基づいて、TCPの位置及び姿勢を順変換によって算出する機能とを有する。   The CPU controls the position and orientation of the control point of the arm tip based on the position information input from the position detection circuit by executing a preset operation program (program). Specifically, the CPU feed-forward-controls the rotation angle (arm posture) of each joint in the arm of the robot 10 to the target rotation angle (target posture) by PTP (Point To Point) control. In PTP control, the operation trajectory (position and orientation) of the control point is not set when the control point is moved to the target position. In the present embodiment, a TCP (Tool Center Point) that is the center point 18a of the arm hand portion 18 is set as the control point. Further, the CPU calculates the angle and angle of each joint for realizing the position and posture based on the TCP position and posture, and the position and posture of the TCP based on the angle of each joint. And a function to calculate by forward conversion.

本実施形態では、コントローラ30は、ロボット10のティーチング時(手動操作時)において、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御を実行する。基準速度は、JISやISO等の規格により、例えば250mm/sに規定されている。   In the present embodiment, the controller 30 executes speed suppression control that suppresses the moving speed of the arm of the robot 10 to a reference speed or less during teaching of the robot 10 (during manual operation). The reference speed is defined as, for example, 250 mm / s according to standards such as JIS and ISO.

ティーチングペンダント40(操作機)は、CPU、ROM、及びRAMを含むマイクロコンピュータ、各種の手動操作キー、並びにディスプレイ42等を備えている。ペンダント40は、コントローラ30に接続されており、コントローラ30と通信可能となっている。オペレータ(使用者)は、このペンダント40を手動操作して、ロボット10の動作プログラムの作成、修正、登録、各種パラメータの設定を行うことができる。動作プログラムの修正等を行うティーチングでは、作業において制御点であるTCPが通過する教示点を教示する。そして、オペレータは、コントローラ30を通じて、ティーチングされた動作プログラムに基づきロボット10を動作させることができる。換言すれば、コントローラ30は、予め設定された動作プログラム及びペンダント40の操作に基づいて、ロボット10のアームの動作を制御する。   The teaching pendant 40 (operation device) includes a microcomputer including a CPU, ROM, and RAM, various manual operation keys, a display 42, and the like. The pendant 40 is connected to the controller 30 and can communicate with the controller 30. An operator (user) can manually operate the pendant 40 to create, modify, register, and set various parameters of the operation program of the robot 10. In teaching for correcting an operation program or the like, a teaching point through which a TCP as a control point passes in the work is taught. The operator can operate the robot 10 through the controller 30 based on the teaching operation program. In other words, the controller 30 controls the operation of the arm of the robot 10 based on the preset operation program and the operation of the pendant 40.

ここで、ロボット10のティーチング時(手動操作時)において、TCPの移動速度を、基準速度以下となるように制御したとしても、ロボット10の姿勢によっては、アームにおけるTCP以外の部分の移動速度が基準速度よりも高くなる場合があることに本願発明者は着目した。例えば、ロボット10が図2に示す姿勢である場合、回転部13を回転させると、TCP(点C5)の移動速度は基準速度よりも十分に小さくなる。しかしながら、下アーム15の先端部(点C2)及び上アーム16の一方の端部(点C3)の移動速度が、基準速度よりも高くなる場合がある。   Here, at the time of teaching of the robot 10 (manual operation), even if the movement speed of the TCP is controlled to be equal to or less than the reference speed, the movement speed of the part other than the TCP in the arm may be different depending on the posture of the robot 10. The inventor of the present application paid attention to the fact that the speed may be higher than the reference speed. For example, when the robot 10 is in the posture shown in FIG. 2, when the rotating unit 13 is rotated, the moving speed of the TCP (point C5) is sufficiently smaller than the reference speed. However, the moving speed of the tip end portion (point C2) of the lower arm 15 and one end portion (point C3) of the upper arm 16 may be higher than the reference speed.

そこで、各回転部を回転させる際に回転中心となる関節(各回転部の回転中心軸線)から最も離れた部分を、各回転部の監視部(点C1〜C5)として設定する。例えば、下アーム15を回転させる際に回転中心となる関節(回転部13と下アーム15との連結部)から最も離れた点C2を、下アーム15の監視部として設定する。同様にして、上アーム16を回転させる際に回転中心となる関節(下アーム15と上アーム16との連結部)から最も離れた点C3,C4を、上アーム16の監視部として設定する等を行う。なお、上アーム16等の回転部に他の部品(パーツ)が取り付けられている場合には、その部品の先端部等を監視部として設定してもよい。そして、全ての監視部の移動速度が基準速度以下となるように、各サーボモータの角速度を抑制する。   Therefore, the portion farthest from the joint (rotation center axis of each rotation unit) when rotating each rotation unit is set as a monitoring unit (points C1 to C5) of each rotation unit. For example, the point C2 farthest from the joint (the connecting portion between the rotating unit 13 and the lower arm 15) that becomes the center of rotation when the lower arm 15 is rotated is set as the monitoring unit of the lower arm 15. Similarly, the points C3 and C4 that are farthest from the joint (the connecting portion between the lower arm 15 and the upper arm 16) that becomes the center of rotation when the upper arm 16 is rotated are set as monitoring units for the upper arm 16, and so on. I do. When other parts (parts) are attached to the rotating part such as the upper arm 16, the tip part of the part may be set as the monitoring part. Then, the angular speed of each servo motor is suppressed so that the moving speeds of all the monitoring units are equal to or lower than the reference speed.

図3は、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御の処理手順を示すフローチャートである。この一連の処理は、コントローラ30によって、アームを動作させる動作周期Tr毎に繰り返し実行される。動作周期Tr(制御周期)は、例えば8msである。   FIG. 3 is a flowchart illustrating a processing procedure of speed suppression control that suppresses the moving speed of the arm of the robot 10 to a reference speed or less. This series of processing is repeatedly executed by the controller 30 every operation cycle Tr for operating the arm. The operation cycle Tr (control cycle) is, for example, 8 ms.

この一連の処理では、まず、各サーボモータの現在の角度θk1を検出する(S11)。詳しくは、各サーボモータに設けられたエンコーダの検出信号に基づいて、位置検出回路により各サーボモータの現在の角度θk1を検出する。なお、kは、第1軸線J1〜第6軸線J6にそれぞれ対応する1〜6の数字である。   In this series of processing, first, the current angle θk1 of each servo motor is detected (S11). Specifically, the current angle θk1 of each servo motor is detected by the position detection circuit based on the detection signal of the encoder provided in each servo motor. Note that k is a number from 1 to 6 corresponding to the first axis J1 to the sixth axis J6, respectively.

続いて、各サーボモータの現在の角度θk1及び各回転部の大きさに基づいて、各監視部の現在の位置Pi1を算出する(S12)。iは、点C1〜C5にそれぞれ対応する1〜5の数字である。現在の位置Pi1の算出手法の具体例について説明すると、まず、各回転部の大きさと各監視部の設定された位置とに基づいて、各回転部の回転中心から監視部までの距離を算出する。そして、各サーボモータの現在の角度θk1、各回転部の大きさ、及び上記距離を組み合わせることにより、点C1〜C5の位置を算出する。   Subsequently, the current position Pi1 of each monitoring unit is calculated based on the current angle θk1 of each servomotor and the size of each rotating unit (S12). i is a number from 1 to 5 corresponding to points C1 to C5, respectively. A specific example of the calculation method of the current position Pi1 will be described. First, the distance from the rotation center of each rotating unit to the monitoring unit is calculated based on the size of each rotating unit and the set position of each monitoring unit. . Then, the positions of the points C1 to C5 are calculated by combining the current angle θk1 of each servo motor, the size of each rotating unit, and the distance.

続いて、各サーボモータの角速度ωkを算出する(S13)。具体的には、ティーチング時において、TCPが通過する点として教示された教示点に基づいて、各サーボモータの目標角度が算出されている。そして、例えば図4に示すように、その目標角度まで各サーボモータを駆動する際の角速度ωkのパターンが設定されている。そこで、設定された角速度ωkのパターンに基づいて、各サーボモータの現在の角速度ωkを算出する。なお、kは、第1軸線J1〜第6軸線J6にそれぞれ対応する1〜6の数字である。   Subsequently, the angular velocity ωk of each servo motor is calculated (S13). Specifically, at the time of teaching, the target angle of each servo motor is calculated based on the teaching point taught as the point through which TCP passes. For example, as shown in FIG. 4, a pattern of the angular velocity ωk when driving each servo motor to the target angle is set. Therefore, the current angular velocity ωk of each servo motor is calculated based on the set pattern of the angular velocity ωk. Note that k is a number from 1 to 6 corresponding to the first axis J1 to the sixth axis J6, respectively.

続いて、各サーボモータの動作周期Tr後の角度θk2を算出する(S14)。詳しくは、θk2=θk1+ωk×Trの式により、角度θk2を算出する。   Subsequently, an angle θk2 after the operation cycle Tr of each servo motor is calculated (S14). Specifically, the angle θk2 is calculated by the equation θk2 = θk1 + ωk × Tr.

続いて、各監視部の動作周期Tr後の位置Pi2を算出する(S15)。iは、点C1〜C5にそれぞれ対応する1〜5の数字である。ここで、動作周期Tr後の位置Pi2は、S12の処理と同様にして、各サーボモータの動作周期Tr後の角度θk2、各回転部の大きさ、及び各回転部の回転中心から監視部までの距離に基づいて算出すればよい。   Subsequently, the position Pi2 after the operation cycle Tr of each monitoring unit is calculated (S15). i is a number from 1 to 5 corresponding to points C1 to C5, respectively. Here, the position Pi2 after the operation cycle Tr is the same as the processing of S12, the angle θk2 after the operation cycle Tr of each servo motor, the size of each rotation unit, and the rotation center of each rotation unit to the monitoring unit. May be calculated based on the distance.

続いて、各監視部の速度Viを算出する(S16)。詳しくは、各監視部の現在の位置Pi1と動作周期Tr後の位置Pi2との距離を動作周期Trで割ることにより、速度Viを算出する。なお、iは、点C1〜C5にそれぞれ対応する1〜5の数字である。   Subsequently, the speed Vi of each monitoring unit is calculated (S16). Specifically, the speed Vi is calculated by dividing the distance between the current position Pi1 of each monitoring unit and the position Pi2 after the operation cycle Tr by the operation cycle Tr. Note that i is a number from 1 to 5 corresponding to the points C1 to C5, respectively.

続いて、各監視部の速度Viのうち最大の速度である最大速度Vmxを算出する(S17)。そして、各監視部のうち、最大速度Vmxをとる監視部をコントローラ30の記憶手段(メモリ)に記憶する(S18)。   Subsequently, the maximum speed Vmx, which is the maximum speed among the speed Vi of each monitoring unit, is calculated (S17). And the monitoring part which takes the maximum speed Vmx among each monitoring part is memorize | stored in the memory | storage means (memory) of the controller 30 (S18).

続いて、最大速度Vmxが基準速度Vlmよりも高いか否か判定する(S19)。この判定において、最大速度Vmxが基準速度Vlmよりも高いと判定した場合(S19:YES)、最大速度Vmxと基準速度Vlmとの比の値αを算出する(S20)。すなわち、α=Vmx/Vlmの式により、比の値αを算出する(α>1)。   Subsequently, it is determined whether or not the maximum speed Vmx is higher than the reference speed Vlm (S19). In this determination, when it is determined that the maximum speed Vmx is higher than the reference speed Vlm (S19: YES), a value α of the ratio between the maximum speed Vmx and the reference speed Vlm is calculated (S20). That is, the ratio value α is calculated according to the equation α = Vmx / Vlm (α> 1).

続いて、アームにおいて、メモリに記憶された最大速度Vmxをとる監視部よりも固定部12側に設けられた全ての関節を、速度低減対象軸として選択する(S21)。具体的には例えば、先の図2において、最大速度Vmxとなる監視部が点C2である場合、速度低減対象軸として、第1軸線J1及び第2軸線J2を選択する。本実施形態では、速度低減対象軸を回転させるサーボモータを、低減対象モータと称すこととする。   Subsequently, in the arm, all joints provided on the fixed unit 12 side with respect to the monitoring unit taking the maximum speed Vmx stored in the memory are selected as speed reduction target axes (S21). Specifically, for example, in FIG. 2, when the monitoring unit having the maximum speed Vmx is the point C2, the first axis J1 and the second axis J2 are selected as the speed reduction target axes. In the present embodiment, a servo motor that rotates a speed reduction target shaft is referred to as a reduction target motor.

続いて、低減対象モータの動作周期Tr後の角度θk2と現在の角度θk1との差分(θk2−θk1)を、低減対象モータの角度変化量Δθkとして算出する(S22)。なお、kは、第1軸線J1〜第6軸線J6にそれぞれ対応する1〜6の数字である。そして、低減対象モータの角度変化量Δθkを比の値αで割ることにより、角度変化量Δθkを更新する(S23)。   Subsequently, the difference (θk2−θk1) between the angle θk2 after the operation cycle Tr of the reduction target motor and the current angle θk1 is calculated as the angle change amount Δθk of the reduction target motor (S22). Note that k is a number from 1 to 6 corresponding to the first axis J1 to the sixth axis J6, respectively. Then, the angle change amount Δθk is updated by dividing the angle change amount Δθk of the motor to be reduced by the ratio value α (S23).

続いて、全てのサーボモータの動作周期Tr後の角度θk2を再設定する(S24)。詳しくは、まず、S23の処理で更新された角度変化量Δθkと、低減対象モータの現在の角度θk1とを加算することにより、低減対象モータの動作周期Tr後の角度を新たに算出する。そして、全てのサーボモータの動作周期Tr後の角度のうち、低減対象モータの動作周期Tr後の角度θk2のみを、新たに算出した動作周期Tr後の角度で更新することにより、全てのサーボモータの動作周期Tr後の角度θk2を再設定する。そして、再設定された角度θk2を用いて、S15の処理から再度実行する。   Subsequently, the angle θk2 after the operation cycle Tr of all the servomotors is reset (S24). Specifically, first, the angle after the operation cycle Tr of the reduction target motor is newly calculated by adding the angle change amount Δθk updated in the process of S23 and the current angle θk1 of the reduction target motor. Then, by updating only the angle θk2 after the operation cycle Tr of the reduction target motor among the angles after the operation cycle Tr of all the servomotors, all the servomotors are updated. The angle θk2 after the operation cycle Tr is reset. Then, the process is executed again from the process of S15 using the reset angle θk2.

一方、S19の判定において、最大速度Vmxが基準速度Vlm以下であると判定した場合(S19:NO)、各サーボモータの現在の角度が、各サーボモータの角度θk2まで動作周期Tr後に制御されるように各サーボモータを駆動する(S25)。ここでは、S24の処理を経由している場合、S24の処理で再設定された角度θk2まで、動作周期Tr後に各サーボモータが制御されるように各サーボモータを駆動する。そして、この一連の処理を一旦終了する(END)。   On the other hand, if it is determined in S19 that the maximum speed Vmx is equal to or less than the reference speed Vlm (S19: NO), the current angle of each servo motor is controlled after the operation cycle Tr to the angle θk2 of each servo motor. Thus, each servo motor is driven (S25). Here, in the case of passing through the process of S24, each servomotor is driven so that each servomotor is controlled after the operation cycle Tr up to the angle θk2 reset in the process of S24. Then, this series of processing is temporarily ended (END).

なお、S12の処理が現在監視位置算出手段としての処理(現在監視位置算出工程)に相当し、S13の処理が角速度算出手段としての処理(角速度算出工程)に相当し、S14の処理が次周期角度算出手段としての処理(次周期角度算出工程)に相当し、S15の処理が次周期監視位置算出手段としての処理(次周期監視位置算出工程)に相当し、S16の処理が監視速度算出手段としての処理(監視速度算出工程)に相当する。また、S21の処理が選択手段としての処理(選択工程)に相当し、S22の処理が変化量算出手段としての処理(変化量算出工程)に相当し、S23の処理が角速度低下手段としての処理(角速度低下工程)に相当し、S24の処理が再設定手段としての処理(再設定工程)に相当し、S25の処理が駆動手段としての処理(駆動工程)に相当する。   The process of S12 corresponds to the process as the current monitoring position calculation means (current monitoring position calculation process), the process of S13 corresponds to the process as the angular velocity calculation means (angular speed calculation process), and the process of S14 is the next cycle. The processing as the angle calculation means (next cycle angle calculation step) corresponds to the processing of S15, the processing as the next cycle monitoring position calculation means (next cycle monitoring position calculation step), and the processing of S16 as monitoring speed calculation means. It corresponds to the process (monitoring speed calculation process). Further, the process of S21 corresponds to a process (selection process) as a selection means, the process of S22 corresponds to a process (change amount calculation process) as a change amount calculation means, and the process of S23 is a process as an angular velocity reduction means. The process of S24 corresponds to the process (resetting process) as the resetting means, and the process of S25 corresponds to the process (driving process) as the driving means.

以上詳述した本実施形態は、以下の利点を有する。   The embodiment described in detail above has the following advantages.

・動作周期Tr毎に各サーボモータを駆動させる角速度ωkが算出され、また、各回転部に設定された監視部(点C1〜C5)の速度Viが算出される。そして、算出された各監視部の速度Viのうち最大速度Vmxが基準速度Vlmよりも高いことを条件として、アームにおいて、各監視部のうち最大速度Vmxとなる監視部よりも固定部12側に設けられた全ての関節が速度低減対象軸として選択される。   The angular velocity ωk for driving each servo motor is calculated for each operation cycle Tr, and the speed Vi of the monitoring unit (points C1 to C5) set in each rotating unit is calculated. Then, on the condition that the maximum speed Vmx is higher than the reference speed Vlm among the calculated speeds Vi of each monitoring unit, the arm is closer to the fixed unit 12 than the monitoring unit having the maximum speed Vmx among the monitoring units. All provided joints are selected as speed reduction target axes.

続いて、各監視部の速度Viが基準速度Vlm以下となるように、速度低減対象軸を回転させる低減対象モータの動作周期Trあたりの角度変化量Δθkが低下させられる。そして、各サーボモータの動作周期Tr後の角度θk2のうち、低減対象モータの動作周期Tr後の角度が、低下させられた角度変化量Δθkと、低減対象モータの現在の角度θk1とに基づいて算出された低減対象モータの動作周期Tr後の角度で更新されることにより、各サーボモータの動作周期Tr後の角度θk2が再設定される。そして、各サーボモータの現在の角度が、再設定された各サーボモータの角度θk2まで動作周期Tr後に制御されるように、各サーボモータが駆動される。このため、低減対象モータを駆動させる角速度を適切に低下させることができる。これにより、制御点であるTCPのみならず、各監視部の速度Viを基準速度Vlm以下にすることができ、アームの移動速度を十分に抑制することができる。   Subsequently, the angle change amount Δθk per operation cycle Tr of the reduction target motor that rotates the speed reduction target shaft is decreased so that the speed Vi of each monitoring unit is equal to or less than the reference speed Vlm. Of the angles θk2 after the operation cycle Tr of each servo motor, the angle after the operation cycle Tr of the reduction target motor is based on the reduced angle change amount Δθk and the current angle θk1 of the reduction target motor. By updating the calculated angle after the operation cycle Tr of the motor to be reduced, the angle θk2 after the operation cycle Tr of each servo motor is reset. Then, each servo motor is driven such that the current angle of each servo motor is controlled after the operation cycle Tr to the reset angle θk2 of each servo motor. For this reason, the angular velocity for driving the reduction target motor can be appropriately reduced. Thereby, not only the TCP that is the control point, but also the speed Vi of each monitoring unit can be set to the reference speed Vlm or less, and the moving speed of the arm can be sufficiently suppressed.

また、各サーボモータのうち角度変化量Δθkの低減対象となるモータを、速度低減対象軸を回転させる低減対象モータとしている。これにより、各監視部の速度Viが基準速度Vlm以下となるように全てのサーボモータの角度変化量Δθkを一律に低下させる構成と比較して、角度変化量Δθkを低下させるサーボモータの数を少なくできる。このため、角度変化量Δθkを低下させるための再計算に要する時間を短縮でき、ティーチング時においてオペレータにとって快適なロボットの動作レスポンスを維持することもできる。さらに、ロボットの各関節のうち、上記最大の速度Vmxが基準速度Vlmを超えるに至った大きな要因となる関節がどの関節であるかを特定する処理、及び特定された関節を回転させるサーボモータの角度変化量Δθkを低下させる処理を行う構成と比較して、この構成と同程度の安全性を実現しつつ、角度変化量Δθkを低下させるプログラムを簡易にすることができる。   In addition, among the servo motors, a motor that is subject to reduction in the angle change amount Δθk is a reduction target motor that rotates a speed reduction target shaft. As a result, the number of servo motors that reduce the angle change amount Δθk is reduced as compared with the configuration in which the angle change amounts Δθk of all the servo motors are uniformly reduced so that the speed Vi of each monitoring unit is equal to or less than the reference speed Vlm. Less. For this reason, it is possible to shorten the time required for recalculation for reducing the angle change amount Δθk, and it is possible to maintain a robot motion response that is comfortable for the operator during teaching. Furthermore, among the joints of the robot, a process for identifying which joint is a major factor that causes the maximum speed Vmx to exceed the reference speed Vlm, and a servo motor for rotating the identified joint Compared to the configuration for performing the process of reducing the angle change amount Δθk, it is possible to simplify the program for reducing the angle change amount Δθk while realizing the same level of safety as this configuration.

・低減対象モータの角度変化量Δθkを、最大速度Vmxと基準速度Vlmとの比の値αで割ることにより、角度変化量Δθkが低下させられる。角度変化量Δθkを比の値αで割るといった簡単な演算を用いるため、角度変化量Δθkを容易に低下させることができる。さらに、角度変化量Δθkを比の値αで割るといった演算を用いるため、角度変化量Δθkを一定の法則から定まる比率で低下させることができ、角度変化量Δθkの低下分をオペレータが予測しやすくなる。   The angle change amount Δθk is reduced by dividing the angle change amount Δθk of the motor to be reduced by the value α of the ratio between the maximum speed Vmx and the reference speed Vlm. Since a simple calculation of dividing the angle change amount Δθk by the ratio value α is used, the angle change amount Δθk can be easily reduced. Further, since the calculation of dividing the angle change amount Δθk by the ratio value α is used, the angle change amount Δθk can be reduced at a ratio determined from a certain law, and the decrease in the angle change amount Δθk can be easily predicted by the operator. Become.

・各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。このため、各回転部において、最も速度が高くなる可能性の高い部分を監視部に設定することができ、アームの移動速度を十分に抑制することができる。   The portion that is farthest from the joint that is the center of rotation when rotating each rotating unit is set as the monitoring unit of each rotating unit. For this reason, in each rotation part, the part with the highest possibility that speed becomes the highest can be set to a monitoring part, and the moving speed of an arm can fully be suppressed.

(第2実施形態)
第2実施形態では、低減対象モータを駆動させる角速度の低下手法を変更する。以下、上記第1実施形態との相違点を中心に説明する。
(Second Embodiment)
In the second embodiment, the angular velocity reduction method for driving the reduction target motor is changed. Hereinafter, the difference from the first embodiment will be mainly described.

図5は、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御の処理手順を示すフローチャートである。この一連の処理は、コントローラ30によって、アームを動作させる動作周期Tr毎に繰り返し実行される。なお、図5において、先の図3で説明した処理と同一の処理については、便宜上、同一のステップ番号を付している。   FIG. 5 is a flowchart illustrating a processing procedure of speed suppression control that suppresses the moving speed of the arm of the robot 10 to a reference speed or less. This series of processing is repeatedly executed by the controller 30 every operation cycle Tr for operating the arm. In FIG. 5, the same steps as those described in FIG. 3 are given the same step numbers for convenience.

この一連の処理では、S11〜S18の処理の後、最大速度Vmxが基準速度Vlmよりも高いか否か判定する(S19)。S19の判定において、最大速度Vmxが基準速度Vlmよりも高いと判定した場合(S19:YES)、S20,S21を経由した後、全てのサーボモータのうち低減対象モータの角速度ωkを比の値αで割ることにより、低減対象モータの角速度ωkを更新する(S26)。   In this series of processes, it is determined whether the maximum speed Vmx is higher than the reference speed Vlm after the processes of S11 to S18 (S19). In the determination of S19, when it is determined that the maximum speed Vmx is higher than the reference speed Vlm (S19: YES), after passing through S20 and S21, the angular speed ωk of the motor to be reduced among all the servo motors is a ratio value α. The angular velocity ωk of the reduction target motor is updated by dividing by (S26).

続いて、全てのサーボモータの角速度ωkを再設定する(S27)。詳しくは、S13で設定された全てのサーボモータの角速度ωkのうち、低減対象モータの角速度のみを、S26で更新された低減対象モータの角速度で更新することにより、全てのサーボモータの角速度ωkを再設定する。そして、再設定された角速度ωkを用いて、S14の処理から再度実行する。   Subsequently, the angular velocities ωk of all the servo motors are reset (S27). Specifically, among the angular velocities ωk of all the servo motors set in S13, only the angular velocities of the reduction target motors are updated with the angular velocities of the reduction target motors updated in S26. Reset it. Then, using the reset angular velocity ωk, the process is executed again from the process of S14.

一方、S19の判定において、最大速度Vmxが基準速度Vlm以下であると判定した場合(S19:NO)、S14で算出された各サーボモータの角度θk2まで、各サーボモータを角速度ωkで駆動する(S28)。ここでは、S27の処理を経由している場合、S27の処理で再設定された角速度ωkで各サーボモータを駆動する。そして、この一連の処理を一旦終了する(END)。   On the other hand, if it is determined in S19 that the maximum speed Vmx is equal to or less than the reference speed Vlm (S19: NO), each servomotor is driven at the angular speed ωk up to the angle θk2 of each servomotor calculated in S14 ( S28). Here, when the process of S27 is performed, each servo motor is driven at the angular velocity ωk reset in the process of S27. Then, this series of processing is temporarily ended (END).

以上詳述した本実施形態は、以下の利点を有する。ここでは、上記第1実施形態と相違する利点のみを述べる。   The embodiment described in detail above has the following advantages. Here, only the advantages different from the first embodiment will be described.

・動作周期Tr毎に各サーボモータを駆動させる角速度ωkが算出され、また、各回転部に設定された監視部(点C1〜C5)の速度Viが算出される。そして、算出された各監視部の速度Viのうち最大速度Vmxが基準速度Vlmよりも高いことを条件として、アームにおいて、各監視部のうち最大速度Vmxとなる監視部よりも固定部12側に設けられた全ての関節が速度低減対象軸として選択される。   The angular velocity ωk for driving each servo motor is calculated for each operation cycle Tr, and the speed Vi of the monitoring unit (points C1 to C5) set in each rotating unit is calculated. Then, on the condition that the maximum speed Vmx is higher than the reference speed Vlm among the calculated speeds Vi of each monitoring unit, the arm is closer to the fixed unit 12 than the monitoring unit having the maximum speed Vmx among the monitoring units. All provided joints are selected as speed reduction target axes.

そして、各監視部の速度Viが基準速度Vlm以下となるように、選択された速度低減対象軸を回転させる低減対象モータを駆動させる角速度が低下させられる。そして、既に算出された各サーボモータの角速度ωkのうち、低減対象モータの角速度が、低下させられた角速度で更新されることにより、各サーボモータの角速度ωkが再設定される。そして、再設定された各サーボモータの角速度ωkにより、各サーボモータが駆動される。これにより、制御点であるTCPのみならず、各監視部の速度Viを基準速度Vlm以下にすることができ、アームの移動速度を十分に抑制することができる。   And the angular velocity which drives the reduction object motor which rotates the selected speed reduction object axis | shaft is reduced so that the speed Vi of each monitoring part may be below the reference speed Vlm. Then, among the already calculated angular velocities ωk of the servo motors, the angular velocities of the reduction target motors are updated with the reduced angular velocities, whereby the angular velocities ωk of the respective servo motors are reset. Then, each servo motor is driven by the reset angular velocity ωk of each servo motor. Thereby, not only the TCP that is the control point, but also the speed Vi of each monitoring unit can be set to the reference speed Vlm or less, and the moving speed of the arm can be sufficiently suppressed.

さらに、各サーボモータのうち角速度ωkの低減対象となるモータを、上記速度低減対象軸を回転させる低減対象モータとしている。これにより、各監視部の速度Viが基準速度Vlm以下となるように全てのサーボモータの角速度ωkを一律に低下させる構成と比較して、角速度ωkを低下させるサーボモータの数を少なくできる。このため、角速度ωkを低下させるための再計算に要する時間を短縮でき、ティーチング時においてオペレータにとって快適なロボットの動作レスポンスを維持することもできる。さらに、ロボットの各関節のうち、上記最大の速度Vmxが基準速度Vlmを超えるに至った大きな要因となる関節がどの関節であるかを特定する処理、及び特定された関節を回転させるサーボモータの角速度ωkを低下させる処理を行う構成と比較して、この構成と同程度の安全性を実現しつつ、角速度ωkを低下させるプログラムを簡易にすることができる。   Further, among the servo motors, a motor that is a target of reduction of the angular velocity ωk is a reduction target motor that rotates the speed reduction target shaft. As a result, the number of servo motors that decrease the angular speed ωk can be reduced as compared with a configuration in which the angular speed ωk of all the servomotors is uniformly decreased so that the speed Vi of each monitoring unit is equal to or lower than the reference speed Vlm. For this reason, the time required for recalculation for reducing the angular velocity ωk can be shortened, and the robot motion response comfortable for the operator can be maintained during teaching. Furthermore, among the joints of the robot, a process for identifying which joint is a major factor that causes the maximum speed Vmx to exceed the reference speed Vlm, and a servo motor for rotating the identified joint Compared to a configuration that performs processing for reducing the angular velocity ωk, it is possible to simplify a program that reduces the angular velocity ωk while realizing the same level of safety as this configuration.

なお、上記第1,第2実施形態を以下のように変更して、実施することもできる。   It should be noted that the first and second embodiments can be modified as follows.

・図3及び図5のS19において、最大速度Vmxが基準速度Vlmよりも高いか否か判定したが、最大速度Vmxが、基準速度Vlmよりも若干高く設定した判定速度よりも高いか否か判定してもよい。この場合は、アームの速度抑制制御を迅速に終了することができる。   In S19 of FIGS. 3 and 5, it is determined whether or not the maximum speed Vmx is higher than the reference speed Vlm, but it is determined whether or not the maximum speed Vmx is higher than a determination speed set slightly higher than the reference speed Vlm. May be. In this case, the arm speed suppression control can be completed quickly.

・図3のS23において、角度変化量Δθkを比の値αで割ることにより角度変化量Δθkを低下させたが、角度変化量Δθkを比の値αよりも若干大きい値で割ることにより角度変化量Δθkを低下させてもよい。この場合も、アームの速度抑制制御を迅速に終了することができる。なお、図5のS26においても同様に、角速度ωkを比の値αよりも若干大きい値で割ることにより角速度ωkを低下させてもよい。   In S23 of FIG. 3, the angle change amount Δθk is reduced by dividing the angle change amount Δθk by the ratio value α, but the angle change is obtained by dividing the angle change amount Δθk by a value slightly larger than the ratio value α. The amount Δθk may be reduced. Also in this case, the arm speed suppression control can be completed quickly. Similarly, in S26 of FIG. 5, the angular velocity ωk may be decreased by dividing the angular velocity ωk by a value slightly larger than the ratio value α.

・上記第1,第2実施形態では、基準速度Vlmとして、JISやISO等の規格により規定された250mm/sを用いたが、それよりも若干低い速度、例えば230mm/sを基準速度Vlmとして用いてもよい。これらの場合、アームの移動速度を、確実かつ容易に250mm/sよりも低下させることができる。   In the first and second embodiments, 250 mm / s defined by standards such as JIS and ISO is used as the reference speed Vlm, but a slightly lower speed, for example, 230 mm / s is used as the reference speed Vlm. It may be used. In these cases, the moving speed of the arm can be reliably and easily reduced to less than 250 mm / s.

・上記第1,第2実施形態において、垂直多関節型のロボット10に代えて、水平多関節型のロボット等を採用することもできる。   In the first and second embodiments, a horizontal articulated robot or the like may be employed instead of the vertical articulated robot 10.

10…ロボット、13…回転部、15…下アーム、16…上アーム、16A…第1上アーム、16B…第2上アーム、17…手首部、18…ハンド部、30…コントローラ。   DESCRIPTION OF SYMBOLS 10 ... Robot, 13 ... Rotating part, 15 ... Lower arm, 16 ... Upper arm, 16A ... 1st upper arm, 16B ... 2nd upper arm, 17 ... Wrist part, 18 ... Hand part, 30 ... Controller.

Claims (12)

複数の回転部、前記回転部を互いに回転可能に連結する関節、及び前記各回転部を駆動するサーボモータを含むアームと、
所定のロボット設置場所に設置され、前記アームの両端部のうち前記アームの先端部とは反対側を動作可能に支持する支持部と、を備えるロボットに適用され、PTP制御により前記先端部の位置及び姿勢を制御するロボットの制御装置であって、
動作周期毎に前記各サーボモータを駆動させる角速度を算出する角速度算出手段と、
前記各回転部に設定された監視部の速度を算出する監視速度算出手段と、
前記監視速度算出手段により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記アームにおいて、前記最大の速度となる前記監視部よりも前記支持部側に設けられた全ての前記関節を速度低減対象軸として選択する選択手段と、
前記選択手段により選択された前記速度低減対象軸を回転させる前記サーボモータを低減対象モータとし、前記各監視部の速度が前記基準速度以下となるように、前記低減対象モータを駆動させる角速度を低下させる角速度低下手段と、
前記各サーボモータのうち前記低減対象モータ以外のモータを、前記角速度算出手段により算出された角速度で駆動させ、前記低減対象モータを、前記角速度低下手段により低下させられた角速度で駆動させる駆動手段と、を備えることを特徴とするロボットの制御装置。
A plurality of rotating parts, a joint that rotatably connects the rotating parts to each other, and an arm including a servo motor that drives each of the rotating parts;
The robot is installed in a predetermined robot installation location, and is applied to a robot having a support portion that operatively supports the opposite side of the end portion of the arm among both end portions of the arm, and the position of the tip portion by PTP control And a robot control device for controlling the posture,
Angular velocity calculating means for calculating an angular velocity for driving each servo motor for each operation cycle;
Monitoring speed calculating means for calculating the speed of the monitoring section set in each of the rotating sections;
On the condition that the maximum speed among the speeds of each of the monitoring units calculated by the monitoring speed calculation means is higher than a reference speed, the arm is closer to the support unit than the monitoring unit having the maximum speed. Selecting means for selecting all of the joints provided in as the speed reduction target axes;
The servo motor that rotates the speed reduction target axis selected by the selection unit is set as a reduction target motor, and the angular speed for driving the reduction target motor is reduced so that the speed of each monitoring unit is equal to or lower than the reference speed. Angular velocity reduction means
Driving means for driving a motor other than the motor to be reduced among the servo motors at an angular speed calculated by the angular speed calculating means, and driving the motor to be reduced at an angular speed reduced by the angular speed reducing means; A robot control device comprising:
前記角速度算出手段により算出された前記各サーボモータの角速度に基づいて、前記各サーボモータの前記動作周期後の角度を算出する次周期角度算出手段と、
前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度のうち前記低減対象モータの動作周期後の角度と、前記低減対象モータの現在の角度とに基づいて、前記低減対象モータの動作周期あたりの角度変化量を算出する変化量算出手段と、をさらに備え、
前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記変化量算出手段により算出された前記低減対象モータの角度変化量を低下させ、
前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度のうち、前記低減対象モータの動作周期後の角度を、前記角速度低下手段によって低下させられた角度変化量と、前記低減対象モータの現在の角度とに基づいて算出された前記低減対象モータの動作周期後の角度で更新することにより、前記各サーボモータの動作周期後の角度を再設定する再設定手段をさらに備え、
前記駆動手段は、前記各サーボモータの現在の角度を、前記再設定手段により再設定された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる請求項1記載のロボットの制御装置。
A next period angle calculation means for calculating an angle after the operation period of each servo motor based on the angular speed of each servo motor calculated by the angular speed calculation means;
Based on the angle after the operation cycle of the motor to be reduced among the angles after the operation cycle of each servo motor calculated by the next cycle angle calculation means, and the current angle of the motor to be reduced, the reduction target A change amount calculating means for calculating an angle change amount per operation cycle of the motor,
The angular velocity reduction means reduces the angle change amount of the reduction target motor calculated by the change amount calculation means so that the maximum speed is equal to or less than the reference speed,
Of the angles after the operation cycle of each servo motor calculated by the next cycle angle calculation means, the angle change amount by which the angle after the operation cycle of the motor to be reduced is reduced by the angular velocity reduction means, and Resetting means for resetting the angle after the operation cycle of each servo motor by updating the angle after the operation cycle of the motor to be reduced calculated based on the current angle of the motor to be reduced. ,
The drive means drives each servo motor so that the current angle of each servo motor is controlled after the operation cycle to the angle of each servo motor reset by the resetting means. The robot control apparatus according to 1.
前記角速度低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量算出手段により算出された角度変化量を低下させる請求項2に記載のロボットの制御装置。   The robot control apparatus according to claim 2, wherein the angular velocity reduction means reduces the angle change amount calculated by the change amount calculation means based on a value of a ratio between the maximum speed and the reference speed. 前記角速度低下手段は、前記角度変化量を前記比の値で割ることにより、前記角度変化量を低下させる請求項3に記載のロボットの制御装置。   The robot control device according to claim 3, wherein the angular velocity reduction unit reduces the angle change amount by dividing the angle change amount by the value of the ratio. 前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を低下させ、
前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を、前記角速度低下手段によって低下させられた角速度で更新することにより、前記各サーボモータの角速度を再設定する再設定手段をさらに備え、
前記駆動手段は、前記再設定手段により再設定された前記各サーボモータの角速度により、前記各サーボモータを駆動させる請求項1に記載のロボットの制御装置。
The angular speed reduction means reduces the angular speed of the motor to be reduced among the angular speeds of the servo motors calculated by the angular speed calculation means so that the maximum speed is equal to or less than the reference speed.
Of the angular velocities of the servo motors calculated by the angular velocity calculation means, the angular velocities of the servo motors are updated by updating the angular velocities of the reduction target motors with the angular velocities reduced by the angular speed reduction means. Further comprising resetting means,
The robot control apparatus according to claim 1, wherein the driving unit drives the servo motors at an angular velocity of the servo motors reset by the resetting unit.
前記角速度低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記角速度算出手段により算出された前記低減対象モータの角速度を低下させる請求項5に記載のロボットの制御装置。   6. The robot control apparatus according to claim 5, wherein the angular velocity lowering unit lowers the angular velocity of the motor to be reduced calculated by the angular velocity calculating unit based on a value of a ratio between the maximum speed and the reference speed. . 前記角速度低下手段は、前記角速度算出手段により算出された前記低減対象モータの角速度を前記比の値で割ることにより、前記角速度を低下させる請求項6に記載のロボットの制御装置。   The robot control device according to claim 6, wherein the angular velocity lowering unit lowers the angular velocity by dividing the angular velocity of the motor to be reduced calculated by the angular velocity calculating unit by the value of the ratio. 前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する請求項1〜7のいずれか1項に記載のロボットの制御装置。   The robot control device according to any one of claims 1 to 7, wherein a portion farthest from the joint that becomes a rotation center when rotating each rotation unit is set as the monitoring unit of each rotation unit. . 前記角速度算出手段により算出された前記各サーボモータの角速度に基づいて、前記各サーボモータの前記動作周期後の角度を算出する次周期角度算出手段と、
前記各監視部の現在の位置を算出する現在監視位置算出手段と、
前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、をさらに備え、
前記監視速度算出手段は、前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する請求項1〜8のいずれか1項に記載のロボットの制御装置。
A next period angle calculation means for calculating an angle after the operation period of each servo motor based on the angular speed of each servo motor calculated by the angular speed calculation means;
A current monitoring position calculating means for calculating a current position of each of the monitoring units;
A next cycle monitoring position calculating unit that calculates a position after the operation cycle of each monitoring unit based on the angle after the operation cycle of each servo motor calculated by the next cycle angle calculating unit;
The monitoring speed calculation means includes a current position of each monitoring unit calculated by the current monitoring position calculation means and a position after an operation cycle of each monitoring unit calculated by the next cycle monitoring position calculation means. The robot control device according to claim 1, wherein the speed of each of the monitoring units is calculated based on the control unit.
前記監視速度算出手段は、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出する請求項9に記載のロボットの制御装置。   The monitoring speed calculation means calculates the speed of each monitoring unit by dividing the distance between the current position of each monitoring unit and the position after the operation cycle of each monitoring unit by the operation cycle. The robot control device described. 前記次周期監視位置算出手段は、前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出する請求項9又は10に記載のロボットの制御装置。   The next cycle monitoring position calculating means is configured to determine the position after the operation cycle of each monitoring unit based on the angle after the operation cycle of each servo motor calculated by the next cycle angle calculating unit and the size of each rotating unit. The robot control apparatus according to claim 9, wherein the position of the robot is calculated. 複数の回転部、前記回転部を互いに回転可能に連結する関節、及び前記各回転部を駆動するサーボモータを含むアームと、
所定のロボット設置場所に設置され、前記アームの両端部のうち前記アームの先端部とは反対側を動作可能に支持する支持部と、を備えるロボットに適用され、PTP制御により前記先端部の位置及び姿勢を制御するロボットの制御方法であって、
動作周期毎に前記各サーボモータを駆動させる角速度を算出する角速度算出工程と、
前記各回転部に設定された監視部の速度を算出する監視速度算出工程と、
前記監視速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記アームにおいて、前記最大の速度となる前記監視部よりも前記支持部側に設けられた全ての前記関節を速度低減対象軸として選択する選択工程と、
前記選択工程により選択された前記速度低減対象軸を回転させる前記サーボモータを低減対象モータとし、前記各監視部の速度が前記基準速度以下となるように、前記低減対象モータを駆動させる角速度を低下させる角速度低下工程と、
前記各サーボモータのうち前記低減対象モータ以外のモータを、前記角速度算出工程により算出された角速度で駆動させ、前記低減対象モータを、前記角速度低下工程により低下させられた角速度で駆動させる駆動工程と、を備えることを特徴とするロボットの制御方法。
A plurality of rotating parts, a joint that rotatably connects the rotating parts to each other, and an arm including a servo motor that drives each of the rotating parts;
The robot is installed in a predetermined robot installation location, and is applied to a robot having a support portion that operatively supports the opposite side of the end portion of the arm among both end portions of the arm. And a robot control method for controlling the posture,
An angular velocity calculating step for calculating an angular velocity for driving each servo motor for each operation cycle;
A monitoring speed calculating step for calculating the speed of the monitoring unit set in each of the rotating units;
On the condition that the maximum speed among the speeds of the respective monitoring units calculated by the monitoring speed calculating step is higher than a reference speed, the arm is closer to the support unit than the monitoring unit having the maximum speed. A selection step of selecting all the joints provided in as the speed reduction target axes;
The servo motor that rotates the speed reduction target axis selected in the selection step is set as a reduction target motor, and the angular speed for driving the reduction target motor is reduced so that the speed of each monitoring unit is equal to or lower than the reference speed. An angular velocity lowering step,
A driving step of driving a motor other than the reduction target motor among the servo motors at an angular velocity calculated by the angular velocity calculation step, and driving the reduction target motor at an angular velocity reduced by the angular velocity reduction step; A method for controlling a robot, comprising:
JP2015024031A 2015-02-10 2015-02-10 Robot control device and control method Active JP6547320B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015024031A JP6547320B2 (en) 2015-02-10 2015-02-10 Robot control device and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015024031A JP6547320B2 (en) 2015-02-10 2015-02-10 Robot control device and control method

Publications (2)

Publication Number Publication Date
JP2016147324A true JP2016147324A (en) 2016-08-18
JP6547320B2 JP6547320B2 (en) 2019-07-24

Family

ID=56691499

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015024031A Active JP6547320B2 (en) 2015-02-10 2015-02-10 Robot control device and control method

Country Status (1)

Country Link
JP (1) JP6547320B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002066210A1 (en) * 2001-02-22 2002-08-29 Mitsubishi Denki Kabushiki Kaisha Robot control device
JP2010167515A (en) * 2009-01-21 2010-08-05 Kawasaki Heavy Ind Ltd Multi-axial robot and speed controller for the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002066210A1 (en) * 2001-02-22 2002-08-29 Mitsubishi Denki Kabushiki Kaisha Robot control device
JP2010167515A (en) * 2009-01-21 2010-08-05 Kawasaki Heavy Ind Ltd Multi-axial robot and speed controller for the same

Also Published As

Publication number Publication date
JP6547320B2 (en) 2019-07-24

Similar Documents

Publication Publication Date Title
JP6379853B2 (en) Robot control apparatus and control method
JP2022119943A (en) Industrial robot and operating method thereof
JP6167770B2 (en) Multi-axis robot trajectory generation method and multi-axis robot controller
JP6392825B2 (en) Robot controller with learning control function
JP5346217B2 (en) Multi-axis robot and its speed control device
JP2014193520A (en) Multi-axis robot trajectory forming method and multi-axis robot control device
JP2016028842A (en) Actuator system
JP2017061022A (en) Controller of robot
WO2018016568A1 (en) Method for operating robot, computer program, and robot system
JP2007066001A (en) Control unit for robot
JP6123595B2 (en) Speed control method for 2-axis robot
US11878423B2 (en) Robot system
JP4825614B2 (en) Trajectory control device for articulated link mechanism
US20170043481A1 (en) Robot controller inhibiting shaking of tool tip in robot equipped with travel axis
JP6547320B2 (en) Robot control device and control method
WO2019215998A1 (en) Robot control method
JP2016147322A (en) Robot control apparatus, and control method
JP6831208B2 (en) Robot control device
JP6497101B2 (en) Robot control apparatus and control method
US20230035296A1 (en) Method of suppressing vibrations of a robot arm with external objects
JP7194910B2 (en) ROBOT CONTROL METHOD AND ROBOT CONTROL DEVICE
JP6547319B2 (en) Robot control device and control method
JPWO2019171516A1 (en) Inertia parameter identification system and inertial parameter identification method for vertical articulated robots, and control device and control method for vertical articulated robots
JP5633268B2 (en) Robot control device
JP2005329521A (en) Articulated robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181221

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: 20190528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190610

R150 Certificate of patent or registration of utility model

Ref document number: 6547320

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