[go: up one dir, main page]

JP6547320B2 - Robot control device and control method - Google Patents

Robot control device and control method Download PDF

Info

Publication number
JP6547320B2
JP6547320B2 JP2015024031A JP2015024031A JP6547320B2 JP 6547320 B2 JP6547320 B2 JP 6547320B2 JP 2015024031 A JP2015024031 A JP 2015024031A JP 2015024031 A JP2015024031 A JP 2015024031A JP 6547320 B2 JP6547320 B2 JP 6547320B2
Authority
JP
Japan
Prior art keywords
angular velocity
speed
angle
monitoring
calculated
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.)
Active
Application number
JP2015024031A
Other languages
Japanese (ja)
Other versions
JP2016147324A (en
Inventor
慧 井手
慧 井手
大介 川瀬
大介 川瀬
尚哉 香川
尚哉 香川
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

Landscapes

  • Manipulator (AREA)

Description

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

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

特許第3994487号公報Patent No. 3994487

しかしながら、ロボットの制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アームの移動速度を十分に抑制することができない場合があることに本願発明者は着目した。   However, even if the moving 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 moving speed of the arm may not be sufficiently suppressed in some cases. The person paid attention.

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

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

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

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

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

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

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

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

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

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

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

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

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

上記構成では、角度変化量を上記比の値で割るといった簡単な演算を用いるため、上記角度変化量を容易に低下させることができる。さらに上記構成では、角度変化量を上記比の値で割るといった演算を用いるため、角度変化量を一定の法則から定まる比率で低下させることができ、角度変化量の低下分をオペレータが予測しやすくなる。   In the above configuration, since the simple operation of dividing the amount of change in angle by the value of the ratio is used, the amount of change in angle 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 reduction amount of the angle change amount. Become.

第5の手段では、前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を低下させ、前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を、前記角速度低下手段によって低下させられた角速度で更新することにより、前記各サーボモータの角速度を再設定する再設定手段をさらに備え、前記駆動手段は、前記再設定手段により再設定された前記各サーボモータの角速度により、前記各サーボモータを駆動させる。   In the fifth means, the angular velocity reduction means sets the angular velocity of the reduction target motor among the angular velocities of the servomotors calculated by the angular velocity calculation means so that the maximum velocity is equal to or less than the reference velocity. Of the angular velocities of the servomotors calculated by the angular velocity calculation means, the angular velocity of the reduction target motor is updated by the angular velocity reduced by the angular velocity reduction means to reduce the angular velocity of the servomotors. The drive means drives the servomotors according to the angular velocity of the servomotors reset by the reset means.

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

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

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

第7の発明では、前記角速度低下手段は、前記角速度算出手段により算出された前記低減対象モータの角速度を前記比の値で割ることにより、前記角速度を低下させる。   In the seventh invention, the angular velocity reduction means reduces the angular velocity by dividing the angular velocity of the reduction target motor 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 present invention, the portion most distant from the joint, which is the rotation center when rotating each of the rotating portions, is set as the monitoring portion of each of the rotating portions.

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

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

上記構成では、現在監視位置算出手段により算出された各監視部の現在の位置と、次周期監視位置算出手段により算出された各監視部の動作周期後の位置とに基づいて、各監視部の速度を適切に算出することができる。   In the above configuration, based on the current position of each monitoring unit calculated by the current monitoring position calculation means and the position after the operation cycle of each monitoring unit calculated by the next cycle monitoring position calculation means, 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. Thus, a configuration may be adopted 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 invention, the angle after the operation cycle of each servomotor calculated by the next cycle angle calculation means, and each rotating portion A configuration may be adopted in which the position after the operation cycle of each of the monitoring units is calculated based on the size of.

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

上記工程によれば、第1の手段と同様の作用効果を奏することができる。   According to the above-mentioned process, the same operation and effect as the first means can be achieved.

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

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

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

同図に示すように、ロボット10は、回転部を互いに連結する各関節の回転中心軸線として、第1軸線J1、第2軸線J2、第3軸線J3、第4軸線J4、第5軸線J5、及び第6軸線J6を有する6軸ロボットである。これら各軸線における各部の動作角度は、それぞれサーボモータ等からなる駆動源の駆動、及び減速機等による減速を通じて調整される。サーボモータは、いずれも正逆両方向の回転が可能であり、サーボモータの駆動により原点位置を基準として各回転部が動作(駆動)する。各サーボモータには、その出力軸を制動する電磁ブレーキと、出力軸の回転角度に応じたパルス信号を出力するエンコーダとがそれぞれ設けられている。   As shown in the figure, the robot 10 sets a first axis J1, a second axis J2, a third axis J3, a fourth axis J4, a fifth axis J5, as central axes of rotation of the joints that connect the rotating portions to each other. And a sixth axis J6. The operating angle of each part in each of these axes is adjusted through driving of a drive source composed of a servomotor or the like and deceleration by a reduction gear or the like. The servomotors are both capable of rotating in both forward and reverse directions, and drive of the servomotors causes each rotating portion to operate (drive) on the basis of the home position. Each servo motor is provided with an electromagnetic brake for braking its output shaft, and an encoder for outputting a pulse signal according 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 a first axis J1 extends in the vertical direction. In the robot 10, the base 11 has a fixed portion 12 fixed to a floor or the like, and a rotating portion 13 (first rotating portion) provided above the fixed portion 12. The arm of the robot 10 is configured by a lower arm 15, an upper arm 16, a wrist 17, and a hand 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 portion 13 corresponds to a root portion of the both ends of the arm opposite to the tip end of the arm. The rotation unit 13 is rotatable in the horizontal direction about the first axis J1 as a rotation center. That is, the rotating portion 13 extends in the direction of the first axis J1 and is supported by the fixing 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 rotatably coupled in a clockwise direction or a counterclockwise direction around a second axis line J2 extending in the horizontal direction. That is, the lower arm 15 extends in a direction away from the second axis J2 included in a plane orthogonal to the first axis J1, and is rotatably supported by the rotating portion 13 around the second axis J2. The lower arm 15 is provided to extend in the vertical direction as a basic posture.

下アーム15の上端部には、上アーム16が、水平方向に延びる第3軸線J3を回転中心として、時計回り方向又は反時計回り方向に回転可能に連結されている。すなわち、上アーム16は、第2軸線J2に平行な第3軸線J3から離れる方向へ延びるとともに、下アーム15により第3軸線J3を中心として回転可能に支持されている。上アーム16は、基本姿勢として水平方向に延びる向きに設けられている。   An upper arm 16 is connected to an 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 rotatably supported by the lower arm 15 about the third axis J3. The upper arm 16 is provided to extend 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 divided into two arm portions at the base end side (the joint side rotating about the third axis J3 at the time of rotation) and the tip end side, and the base end side is the first upper side. The arm 16A (third rotating portion), and the tip end side is a second upper arm 16B (fourth rotating portion). The second upper arm 16B is rotatable in a twisting 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 a plane orthogonal to the third axis J3, and is rotatably supported by the first upper arm 16A 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 tip 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 around a fifth axis J5 extending in the horizontal direction. That is, the wrist portion 17 extends in a direction away from the fifth axis J5 orthogonal to the fourth axis J4, and is rotatably supported about the fifth axis J5 by the second upper arm 16B.

手首部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 tip of the wrist portion 17. The hand portion 18 is rotatable in a twisting direction around a sixth axis J6 which is a center line of the hand portion 18. 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 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 a system program, an operation program, and the like of the robot 10. The RAM stores parameter values and the like when executing these programs. The detection signal of each encoder is input to the position detection circuit. The position detection circuit detects the rotation angle of the servomotor provided in 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 executes a preset operation program (program) to control the position and attitude of the control point at the tip of the arm based on the position information input from the position detection circuit. Specifically, the CPU performs feedforward control of the rotation angle (attitude of the arm) of each joint in the arm of the robot 10 to a target rotation angle (target attitude) by PTP (Point To Point) control. In PTP control, when moving the control point to the target position, the operation trajectory (position and attitude) of the control point is not set. In this embodiment, TCP (Tool Center Point) which is the center point 18 a of the hand 18 of the arm is set as the control point. In addition, the CPU calculates the angle of each joint to realize the position and posture based on the position and posture of the TCP by inverse transformation, and the position and posture of the TCP based on the angles of each joint. It has a function to calculate by forward conversion.

本実施形態では、コントローラ30は、ロボット10のティーチング時(手動操作時)において、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御を実行する。基準速度は、JISやISO等の規格により、例えば250mm/sに規定されている。   In the present embodiment, the controller 30 executes the speed suppression control to suppress the moving speed of the arm of the robot 10 to the reference speed or less at the time of teaching the robot 10 (manual operation). The reference speed is defined, for example, at 250 mm / s according to a standard such as JIS or 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, a ROM, and a 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. The operator (user) can manually operate the pendant 40 to create, correct, register, and set various parameters of the operation program of the robot 10. In teaching which performs correction of an operation program etc., it teaches a teaching point through which a TCP, which is a control point, passes in an operation. Then, the operator can operate the robot 10 through the controller 30 based on the taught 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, even if the moving speed of TCP is controlled to be equal to or lower than the reference speed at the time of teaching (manual operation) of the robot 10, the moving speed of a portion other than the TCP in the arm is dependent on the posture of the robot 10. The inventor of the present application has noted that it 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 of the lower arm 15 (point C2) and one end (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等の回転部に他の部品(パーツ)が取り付けられている場合には、その部品の先端部等を監視部として設定してもよい。そして、全ての監視部の移動速度が基準速度以下となるように、各サーボモータの角速度を抑制する。   Then, when rotating each rotation part, the part most distant from the joint (rotation center axis line of each rotation part) used as a rotation center is set as a monitoring part (point C1-C5) of each rotation part. For example, when the lower arm 15 is rotated, a point C2 farthest from the joint (the connecting portion between the rotating portion 13 and the lower arm 15) which is the rotation center is set as the monitoring portion of the lower arm 15. Similarly, when the upper arm 16 is rotated, the points C3 and C4 farthest from the joint (the connecting portion between the lower arm 15 and the upper arm 16) serving as the rotation center are set as the monitoring portion of the upper arm 16 I do. In addition, when another part (part) is attached to rotation parts, such as upper arm 16, you may set the front-end part etc. of the parts as a monitoring part. Then, the angular velocity of each servomotor is suppressed so that the moving speeds of all the monitoring units become equal to or less than the reference speed.

図3は、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御の処理手順を示すフローチャートである。この一連の処理は、コントローラ30によって、アームを動作させる動作周期Tr毎に繰り返し実行される。動作周期Tr(制御周期)は、例えば8msである。   FIG. 3 is a flowchart showing a processing procedure of speed suppression control for suppressing the moving speed of the arm of the robot 10 to the reference speed or less. This series of processing is repeatedly executed by the controller 30 at each 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 servomotor is detected (S11). Specifically, based on the detection signal of the encoder provided in each servomotor, the position detection circuit detects the current angle θk1 of each servomotor. In addition, k is a number of 1 to 6 respectively corresponding to the first axis J1 to the sixth axis J6.

続いて、各サーボモータの現在の角度θ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. First, the distance from the center of rotation 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 servomotor, the size of each rotating portion, and the distance.

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

続いて、各サーボモータの動作周期Tr後の角度θk2を算出する(S14)。詳しくは、θk2=θk1+ωk×Trの式により、角度θk2を算出する。   Subsequently, an angle θk2 after the operation cycle Tr of each servomotor 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, similarly to the processing of S12, the angle θk2 after the operation cycle Tr of each servo motor, the size of each rotating portion, and the rotation center of each rotating portion to the monitoring portion It may be calculated based on the distance of.

続いて、各監視部の速度Viを算出する(S16)。詳しくは、各監視部の現在の位置Pi1と動作周期Tr後の位置Pi2との距離を動作周期Trで割ることにより、速度Viを算出する。なお、iは、点C1〜C5にそれぞれ対応する1〜5の数字である。   Subsequently, the velocity 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. In addition, i is a number of 1-5 corresponding to points C1-C5, respectively.

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

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

続いて、アームにおいて、メモリに記憶された最大速度Vmxをとる監視部よりも固定部12側に設けられた全ての関節を、速度低減対象軸として選択する(S21)。具体的には例えば、先の図2において、最大速度Vmxとなる監視部が点C2である場合、速度低減対象軸として、第1軸線J1及び第2軸線J2を選択する。本実施形態では、速度低減対象軸を回転させるサーボモータを、低減対象モータと称すこととする。   Subsequently, in the arm, all joints provided closer to the fixed unit 12 than the monitoring unit having the maximum velocity Vmx stored in the memory are selected as the speed reduction target axes (S21). Specifically, for example, in FIG. 2 described above, when the monitoring unit at the maximum velocity 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, the servomotor that rotates the 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). In addition, k is a number of 1 to 6 respectively corresponding to the first axis J1 to the sixth axis J6. Then, the angle change amount Δθk is updated by dividing the angle change amount Δθk of the reduction target motor 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, among the angles after the operation cycle Tr of all the servomotors, all the servomotors are updated by updating only the angle θk2 after the operation cycle Tr of the reduction target motor with the newly calculated angle after the operation cycle Tr. The angle θk2 after the operation cycle Tr of is reset. Then, the processing from S15 is performed again using the reset angle θk2.

一方、S19の判定において、最大速度Vmxが基準速度Vlm以下であると判定した場合(S19:NO)、各サーボモータの現在の角度が、各サーボモータの角度θk2まで動作周期Tr後に制御されるように各サーボモータを駆動する(S25)。ここでは、S24の処理を経由している場合、S24の処理で再設定された角度θk2まで、動作周期Tr後に各サーボモータが制御されるように各サーボモータを駆動する。そして、この一連の処理を一旦終了する(END)。   On the other hand, when it is determined in S19 that the maximum velocity Vmx is less than or equal to the reference velocity Vlm (S19: NO), the current angle of each servomotor is controlled after the operation cycle Tr up to the angle θk2 of each servomotor. Thus, each servomotor is driven (S25). Here, when the process of S24 is performed, each servomotor is driven such 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 (currently monitoring position calculating process) as the current monitoring position calculating means, the process of S13 corresponds to the process (angular velocity calculating process) as the angular velocity calculating means, and the process of S14 is the next cycle. The process of S15 corresponds to the process as the next cycle monitoring position calculating means (the next cycle monitoring position calculating process), and the process of S16 is the monitoring speed calculating means. Corresponds to the processing (monitoring speed calculation step) as Further, the process of S21 corresponds to the process (selection process) as the selection means, the process of S22 corresponds to the process (change amount calculation process) as the change amount calculation means, and the process of S23 as the 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 above has the following advantages.

・動作周期Tr毎に各サーボモータを駆動させる角速度ωkが算出され、また、各回転部に設定された監視部(点C1〜C5)の速度Viが算出される。そして、算出された各監視部の速度Viのうち最大速度Vmxが基準速度Vlmよりも高いことを条件として、アームにおいて、各監視部のうち最大速度Vmxとなる監視部よりも固定部12側に設けられた全ての関節が速度低減対象軸として選択される。   The angular velocity ωk for driving each servomotor is calculated for each operation cycle Tr, and the velocity 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 of the calculated speeds Vi of each monitoring unit is higher than the reference speed Vlm, 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 for rotating the speed reduction target shaft is decreased such that the speed Vi of each monitoring unit becomes equal to or less than the reference speed Vlm. Then, among 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 reduced based on the 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 reduction target motor, the angle θk2 after the operation cycle Tr of each servo motor is reset. Then, each servomotor is driven such that the current angle of each servomotor is controlled after the operation cycle Tr up to the angle θk2 of each of the servomotors set again. Therefore, the angular velocity for driving the reduction target motor can be appropriately reduced. As a result, not only the TCP as the control point but also the speed Vi of each monitoring unit can be made equal to or lower than the reference speed Vlm, and the moving speed of the arm can be sufficiently suppressed.

また、各サーボモータのうち角度変化量Δθkの低減対象となるモータを、速度低減対象軸を回転させる低減対象モータとしている。これにより、各監視部の速度Viが基準速度Vlm以下となるように全てのサーボモータの角度変化量Δθkを一律に低下させる構成と比較して、角度変化量Δθkを低下させるサーボモータの数を少なくできる。このため、角度変化量Δθkを低下させるための再計算に要する時間を短縮でき、ティーチング時においてオペレータにとって快適なロボットの動作レスポンスを維持することもできる。さらに、ロボットの各関節のうち、上記最大の速度Vmxが基準速度Vlmを超えるに至った大きな要因となる関節がどの関節であるかを特定する処理、及び特定された関節を回転させるサーボモータの角度変化量Δθkを低下させる処理を行う構成と比較して、この構成と同程度の安全性を実現しつつ、角度変化量Δθkを低下させるプログラムを簡易にすることができる。   Further, among the servomotors, the motor to be reduced for the angle change amount Δθk is a reduction target motor for rotating the speed reduction target shaft. As a result, the number of servomotors for reducing the angle change amount .DELTA..theta.k is reduced compared to a configuration in which the angle change amounts .DELTA..theta.k for all servomotors are uniformly reduced such that the speed Vi of each monitoring unit becomes equal to or less than the reference speed Vlm. It can be reduced. Therefore, the time required for recalculation to reduce the angle change amount Δθ k can be shortened, and the robot's operation response comfortable for the operator can be maintained at the time of teaching. Further, among the joints of the robot, a process for identifying which joint is a major factor causing the maximum velocity Vmx to exceed the reference velocity Vlm, and a servomotor for rotating the identified joint Compared to the configuration in which the process of reducing the angle change amount Δθk is performed, a program for reducing the angle change amount Δθk can be simplified 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 reduction target motor by the value α of the ratio between the maximum velocity Vmx and the reference velocity Vlm. The angle change amount Δθk can be easily reduced because the simple operation of dividing the angle change amount Δθk by the ratio value α is used. Furthermore, since the operation of dividing the angle change amount Δθk by the ratio value α is used, the angle change amount Δθk can be reduced by a ratio determined from a certain law, and the operator can easily predict the reduction amount of the angle change amount Δθk. Become.

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

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

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

この一連の処理では、S11〜S18の処理の後、最大速度Vmxが基準速度Vlmよりも高いか否か判定する(S19)。S19の判定において、最大速度Vmxが基準速度Vlmよりも高いと判定した場合(S19:YES)、S20,S21を経由した後、全てのサーボモータのうち低減対象モータの角速度ωkを比の値αで割ることにより、低減対象モータの角速度ωkを更新する(S26)。   In this series of processing, after the processing of S11 to S18, it is determined whether the maximum velocity Vmx is higher than the reference velocity Vlm (S19). When it is determined in S19 that the maximum velocity Vmx is higher than the reference velocity Vlm (S19: YES), after S20 and S21, the angular velocity ωk of the reduction target motor among all the servomotors is the 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 servomotors are reset (S27). Specifically, among the angular velocities ωk of all the servomotors set in S13, the angular velocities ωk of all the servomotors are updated by updating only the angular velocity of the reduction target motor with the angular velocity of the reduction target motor updated in S26. Reset. Then, the processing from S14 is executed again using the reset angular velocity ωk.

一方、S19の判定において、最大速度Vmxが基準速度Vlm以下であると判定した場合(S19:NO)、S14で算出された各サーボモータの角度θk2まで、各サーボモータを角速度ωkで駆動する(S28)。ここでは、S27の処理を経由している場合、S27の処理で再設定された角速度ωkで各サーボモータを駆動する。そして、この一連の処理を一旦終了する(END)。   On the other hand, when it is determined in S19 that the maximum velocity Vmx is less than or equal to the reference velocity Vlm (S19: NO), each servomotor is driven at the angular velocity ωk until the angle θk2 of each servomotor calculated in S14 ( S28). Here, when the process of S27 is performed, the servomotors are 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 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 servomotor is calculated for each operation cycle Tr, and the velocity 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 of the calculated speeds Vi of each monitoring unit is higher than the reference speed Vlm, 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以下にすることができ、アームの移動速度を十分に抑制することができる。   Then, the angular velocity for driving the reduction target motor that rotates the selected speed reduction target axis is reduced such that the speed Vi of each monitoring unit becomes equal to or less than the reference speed Vlm. Then, the angular velocity ωk of each servomotor is reset by updating the angular velocity of the reduction target motor with the decreased angular velocity among the angular velocities ωk of the servomotors already calculated. Then, each servomotor is driven by the reset angular velocity ωk of each servomotor. As a result, not only the TCP as the control point but also the speed Vi of each monitoring unit can be made equal to or lower than the reference speed Vlm, and the moving speed of the arm can be sufficiently suppressed.

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

なお、上記第1,第2実施形態を以下のように変更して、実施することもできる。   The first and second embodiments may 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 velocity Vmx is higher than the reference velocity Vlm, but it is determined whether the maximum velocity Vmx is higher than the determination velocity set slightly higher than the reference velocity Vlm. You may In this case, the speed suppression control of the arm can be ended quickly.

・図3のS23において、角度変化量Δθkを比の値αで割ることにより角度変化量Δθkを低下させたが、角度変化量Δθkを比の値αよりも若干大きい値で割ることにより角度変化量Δθkを低下させてもよい。この場合も、アームの速度抑制制御を迅速に終了することができる。なお、図5のS26においても同様に、角速度ωkを比の値αよりも若干大きい値で割ることにより角速度ωkを低下させてもよい。   In S23 of FIG. 3, the angle change Δθ k is reduced by dividing the angle change Δθ k by the ratio value α, but the angle change is calculated by dividing the angle change Δθ k by a value slightly larger than the ratio value α. The amount Δθ k may be reduced. Also in this case, the speed suppression control of the arm can be terminated promptly. 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 the standard such as JIS or ISO is used as the reference speed Vlm, but a speed slightly lower than that, for example, 230 mm / s, is set as the reference speed Vlm. You may use. 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, instead of the vertical articulated robot 10, a horizontal articulated robot or the like may be employed.

10…ロボット、13…回転部、15…下アーム、16…上アーム、16A…第1上アーム、16B…第2上アーム、17…手首部、18…ハンド部、30…コントローラ。   DESCRIPTION OF SYMBOLS 10 ... Robot, 13 ... Rotation 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 rotatably connecting the rotating parts to each other, and an arm including a servomotor for driving the rotating parts;
The present invention is applied to a robot provided at a predetermined robot installation location and having a support portion that supports the opposite end of the arm movably at both ends of the arm, and the position of the tip by PTP control. And a control device of a robot that controls the posture,
Angular velocity calculating means for calculating an angular velocity for driving each of the servomotors every operation cycle;
Monitoring speed calculation means for calculating the speed of the monitoring unit set in each of the rotating units;
The monitoring at the maximum speed among the joints constituting the arm , provided that the maximum speed among the speeds of the monitoring units calculated by the monitoring speed calculation means is higher than a reference speed Selection means for selecting all the joints provided on the side of the support section rather than the section as the speed reduction target axes;
The servomotor for rotating the speed reduction target shaft selected by the selection means is a reduction target motor, and the angular velocity for driving the reduction target motor is reduced such that the speed of each monitoring unit is equal to or less than the reference speed Angular velocity reduction means for
Driving means for driving a motor other than the reduction target motor among the servomotors at an angular velocity calculated by the angular velocity calculation means, and driving the reduction target motor at an angular velocity reduced by the angular velocity reduction means And a controller of a robot.
前記角速度算出手段により算出された前記各サーボモータの角速度に基づいて、前記各サーボモータの前記動作周期後の角度を算出する次周期角度算出手段と、
前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度のうち前記低減対象モータの動作周期後の角度と、前記低減対象モータの現在の角度とに基づいて、前記低減対象モータの動作周期あたりの角度変化量を算出する変化量算出手段と、をさらに備え、
前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記変化量算出手段により算出された前記低減対象モータの角度変化量を低下させ、
前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度のうち、前記低減対象モータの動作周期後の角度を、前記角速度低下手段によって低下させられた角度変化量と、前記低減対象モータの現在の角度とに基づいて算出された前記低減対象モータの動作周期後の角度で更新することにより、前記各サーボモータの動作周期後の角度を再設定する再設定手段をさらに備え、
前記駆動手段は、前記各サーボモータの現在の角度を、前記再設定手段により再設定された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる請求項1記載のロボットの制御装置。
Next cycle angle calculation means for calculating an angle after the operation cycle of each servomotor based on the angular velocity of each servomotor calculated by the angular velocity calculation means;
Of the angles after the operation cycle of each servomotor calculated by the next cycle angle calculation means, the reduction target based on the angle after the operation cycle of the reduction target motor and the current angle of the reduction target motor Change amount calculation 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 becomes equal to or less than the reference speed.
Among the angles after the operation cycle of each servomotor calculated by the next cycle angle calculation means, the angle change amount obtained by reducing the angle after the operation cycle of the reduction target motor by the angular velocity reduction means, and Resetting means for resetting the angle after the operation cycle of each of the servomotors by updating with the angle after the operation cycle of the reduction target motor calculated based on the current angle of the reduction target motor is further provided ,
The driving means drives the servomotors so that the current angle of the servomotors is controlled after the operation cycle to the angle of the servomotors reset by the resetting means. The control device of the robot according to 1).
前記角速度低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量算出手段により算出された角度変化量を低下させる請求項2に記載のロボットの制御装置。   The control device of a robot according to claim 2, wherein the angular velocity reduction means reduces the amount of angle change calculated by the change amount calculation means based on a value of a ratio between the maximum speed and the reference speed. 前記角速度低下手段は、前記角度変化量を前記比の値で割ることにより、前記角度変化量を低下させる請求項3に記載のロボットの制御装置。   The control device of a robot according to claim 3, wherein the angular velocity reduction means reduces the amount of change in angle by dividing the amount of change in angle by the value of the ratio. 前記角速度低下手段は、前記最大の速度が前記基準速度以下となるように、前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を低下させ、
前記角速度算出手段により算出された前記各サーボモータの角速度のうち、前記低減対象モータの角速度を、前記角速度低下手段によって低下させられた角速度で更新することにより、前記各サーボモータの角速度を再設定する再設定手段をさらに備え、
前記駆動手段は、前記再設定手段により再設定された前記各サーボモータの角速度により、前記各サーボモータを駆動させる請求項1に記載のロボットの制御装置。
The angular velocity reduction means reduces the angular velocity of the reduction target motor among the angular velocities of the servomotors calculated by the angular velocity calculation means such that the maximum velocity is equal to or less than the reference velocity.
Of the angular velocities of the servomotors calculated by the angular velocity calculation means, the angular velocity of the servomotors is reset by updating the angular velocity of the reduction target motor with the angular velocity reduced by the angular velocity reduction means. Further comprising reset means for
The control device of a robot according to claim 1, wherein the drive means drives the servomotors by the angular velocity of the servomotors reset by the reset means.
前記角速度低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記角速度算出手段により算出された前記低減対象モータの角速度を低下させる請求項5に記載のロボットの制御装置。   The control device of a robot according to claim 5, wherein 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 velocity and the reference velocity. . 前記角速度低下手段は、前記角速度算出手段により算出された前記低減対象モータの角速度を前記比の値で割ることにより、前記角速度を低下させる請求項6に記載のロボットの制御装置。   The control device of a robot according to claim 6, wherein the angular velocity reduction means reduces the angular velocity by dividing the angular velocity of the reduction target motor calculated by the angular velocity calculation means by the value of the ratio. 前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する請求項1〜7のいずれか1項に記載のロボットの制御装置。   The control device of a robot according to any one of claims 1 to 7, wherein a portion farthest from the joint, which is a rotation center when rotating each rotating unit, is set as the monitoring unit of each rotating unit. . 前記角速度算出手段により算出された前記各サーボモータの角速度に基づいて、前記各サーボモータの前記動作周期後の角度を算出する次周期角度算出手段と、
前記各監視部の現在の位置を算出する現在監視位置算出手段と、
前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、をさらに備え、
前記監視速度算出手段は、前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する請求項1〜8のいずれか1項に記載のロボットの制御装置。
Next cycle angle calculation means for calculating an angle after the operation cycle of each servomotor based on the angular velocity of each servomotor calculated by the angular velocity calculation means;
Current monitoring position calculation means for calculating the current position of each of the monitoring units;
Next cycle monitoring position calculating means for calculating the position after the operation cycle of each of the monitoring units based on the angle after the operation cycle of each of the servomotors calculated by the next cycle angle calculating means;
The monitoring speed calculating means may calculate the current position of each monitoring unit calculated by the current monitoring position calculating means, and the position after the operation cycle of each monitoring unit calculated by the next cycle monitoring position calculating means. The control device of a robot according to any one of claims 1 to 8, wherein a speed of each of the monitoring units is calculated based on the control.
前記監視速度算出手段は、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出する請求項9に記載のロボットの制御装置。   The monitoring speed calculation means calculates the speed of each monitoring section by dividing the distance between the current position of each monitoring section and the position after the operating cycle of each monitoring section by the operating cycle. The control device of the described robot. 前記次周期監視位置算出手段は、前記次周期角度算出手段により算出された前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出する請求項9又は10に記載のロボットの制御装置。   The next cycle monitoring position calculation means is 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 calculation means and the size of each rotating unit. The control device of the robot according to claim 9 or 10 which calculates the position of. 複数の回転部、前記回転部を互いに回転可能に連結する関節、及び前記各回転部を駆動するサーボモータを含むアームと、
所定のロボット設置場所に設置され、前記アームの両端部のうち前記アームの先端部とは反対側を動作可能に支持する支持部と、を備えるロボットに適用され、PTP制御により前記先端部の位置及び姿勢を制御するロボットの制御方法であって、
動作周期毎に前記各サーボモータを駆動させる角速度を算出する角速度算出工程と、
前記各回転部に設定された監視部の速度を算出する監視速度算出工程と、
前記監視速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記アームを構成する前記各関節のうち、前記最大の速度となる前記監視部よりも前記支持部側に設けられた全ての前記関節を速度低減対象軸として選択する選択工程と、
前記選択工程により選択された前記速度低減対象軸を回転させる前記サーボモータを低減対象モータとし、前記各監視部の速度が前記基準速度以下となるように、前記低減対象モータを駆動させる角速度を低下させる角速度低下工程と、
前記各サーボモータのうち前記低減対象モータ以外のモータを、前記角速度算出工程により算出された角速度で駆動させ、前記低減対象モータを、前記角速度低下工程により低下させられた角速度で駆動させる駆動工程と、を備えることを特徴とするロボットの制御方法。
A plurality of rotating parts, a joint rotatably connecting the rotating parts to each other, and an arm including a servomotor for driving the rotating parts;
The present invention is applied to a robot provided at a predetermined robot installation location and having a support portion that supports the opposite end of the arm movably at both ends of the arm, and the position of the tip by PTP control. And a control method of a robot that controls the posture,
An angular velocity calculating step of calculating an angular velocity for driving each of the servomotors every operation cycle;
A monitoring speed calculation step of calculating the speed of the monitoring unit set in each of the rotating units;
The monitoring at the maximum speed among the joints constituting the arm, on the condition that the maximum speed among the speeds of the monitoring units calculated in the monitoring speed calculating step is higher than a reference speed Selecting all the joints provided on the side of the support part rather than the part as the speed reduction target axes;
The servomotor for rotating the speed reduction target shaft selected in the selection step is a reduction target motor, and the angular velocity for driving the reduction target motor is reduced such that the speed of each monitoring unit is equal to or less than the reference speed. Angular velocity reduction step
Driving a motor other than the reduction target motor among the servomotors at an angular velocity calculated in the angular velocity calculation step, and driving the reduction target motor at an angular velocity reduced in the angular velocity reduction step; And a control method of a robot.
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 JP2016147324A (en) 2016-08-18
JP6547320B2 true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021094602A (en) * 2019-12-13 2021-06-24 セイコーエプソン株式会社 Control method and robot system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2002066210A1 (en) * 2001-02-22 2004-06-17 三菱電機株式会社 Robot controller
JP5346217B2 (en) * 2009-01-21 2013-11-20 川崎重工業株式会社 Multi-axis robot and its speed control device

Also Published As

Publication number Publication date
JP2016147324A (en) 2016-08-18

Similar Documents

Publication Publication Date Title
JP6379853B2 (en) Robot control apparatus and control method
JP6238628B2 (en) Robot device, robot control method, robot control program, and part manufacturing method using robot device
JP6268819B2 (en) Trajectory generation method for multi-axis robot
JP6167770B2 (en) Multi-axis robot trajectory generation method and multi-axis robot controller
JP6392825B2 (en) Robot controller with learning control function
JP2022119943A (en) INDUSTRIAL ROBOT AND ITS OPERATING METHOD
US9280150B2 (en) Numerical controller
JP5346217B2 (en) Multi-axis robot and its speed control device
US20120239192A1 (en) Robot system
JP2016028842A (en) Actuator system
JP2009028851A (en) Robot control device
JP6088601B2 (en) Robot controller that suppresses tool tip deflection in robot with traveling axis
JP6547320B2 (en) Robot control device and control method
WO2018016568A1 (en) Method for operating robot, computer program, and robot system
JP6453918B2 (en) Robot control apparatus and robot control method
JP6123595B2 (en) Speed control method for 2-axis robot
JP7194910B2 (en) ROBOT CONTROL METHOD AND ROBOT CONTROL DEVICE
JP6547319B2 (en) Robot control device and control method
JP5633268B2 (en) Robot control device
JP2016147322A (en) Robot control apparatus, and control method
JP6497101B2 (en) Robot control apparatus and control method
JP2007066001A (en) Control unit for robot
JP6252272B2 (en) Position error suppression method for vertical articulated robot
JP6429977B2 (en) Robot apparatus and robot control method
JP6497102B2 (en) Robot control apparatus and control method

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250