JP7442053B2 - Robot control method and robot control device - Google Patents
Robot control method and robot control device Download PDFInfo
- Publication number
- JP7442053B2 JP7442053B2 JP2022561837A JP2022561837A JP7442053B2 JP 7442053 B2 JP7442053 B2 JP 7442053B2 JP 2022561837 A JP2022561837 A JP 2022561837A JP 2022561837 A JP2022561837 A JP 2022561837A JP 7442053 B2 JP7442053 B2 JP 7442053B2
- Authority
- JP
- Japan
- Prior art keywords
- motor
- compensation current
- gravity compensation
- gravity
- igc
- 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
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Description
本開示は、ロボット制御方法及びロボット制御装置に関するものである。 The present disclosure relates to a robot control method and a robot control device.
特許文献1には、位置制御時に、比例値に積分値を加算したトルク指令信号によりロボットを作動させる一方、柔軟制御時に、トルク制限値に制限された比例値に補償値を加算したトルク指令信号によりロボットを作動させるようにしたロボット制御装置が開示されている。
しかしながら、特許文献1の発明のように、重力変化補償値を、柔軟制御時に重力の変化分に相当する小さな制限値に設定するだけでは、ロボットに加わる衝突力を逃がすことができないおそれがある。
However, as in the invention of
具体的に、モータの減速機として、ウォーム減速機の一種であるハイポイドギアを用いた場合には、モータの出力側から衝突力が加わったときに、ロボットアームが突っ張って回転しなくなる、いわゆるセルフロックがかかった状態となり易い。 Specifically, when a hypoid gear, which is a type of worm reducer, is used as a motor reducer, when a collision force is applied from the output side of the motor, the robot arm becomes stretched and stops rotating, a so-called self-locking phenomenon. It is easy to get stuck.
本開示は、かかる点に鑑みてなされたものであり、その目的は、モータの出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータを回転できるようにすることにある。 The present disclosure has been made in view of this point, and its purpose is to enable the motor to rotate in a direction that releases the collision force even when a collision force is applied from the output side of the motor.
第1の発明は、複数のモータを有するロボットアームの動作を制御するためのロボット制御方法であって、前記複数のモータの回転角に基づいて、補償対象の該モータにかかる重力トルク(τge)を演算する工程と、前記重力トルク(τge)を補償する重力補償電流(Igc)を演算する工程と、前記重力補償電流(Igc)と、所定の重力減算設定値(Igth)とに基づいて、重力補償電流減算値(Igsub)を演算する工程と、所定の加振正弦波振幅(Igsa)と、所定の周波数(Igsf)とに基づいて、加振正弦波(Igsin)を演算する工程と、前記重力補償電流(Igc)と、前記重力補償電流減算値(Igsub)と、前記加振正弦波(Igsin)とに基づいて、重力補償電流補正値(Igc4)を演算する工程とを備えたことを特徴とする。 A first invention is a robot control method for controlling the operation of a robot arm having a plurality of motors, the gravitational torque (τge) applied to the motor to be compensated for based on the rotation angles of the plurality of motors. a step of calculating a gravity compensation current (Igc) that compensates for the gravity torque (τge), based on the gravity compensation current (Igc) and a predetermined gravity subtraction setting value (Igth), a step of calculating a gravity compensation current subtraction value (Igsub); a step of calculating an excitation sine wave (Igsin) based on a predetermined excitation sine wave amplitude (Igsa) and a predetermined frequency (Igsf); A step of calculating a gravity compensation current correction value (Igc4) based on the gravity compensation current (Igc), the gravity compensation current subtraction value (Igsub), and the excitation sine wave (Igsin). It is characterized by
第1の発明では、重力補償電流補正値(Igc4)は、重力補償電流(Igc)と、重力補償電流減算値(Igsub)と、加振正弦波(Igsin)とに基づいて演算される。重力補償電流(Igc)は、補償対象のモータにかかる重力トルク(τge)を補償するためにモータに印加される電流である。重力補償電流(Igc)は、重力補償電流減算値(Igsub)が減算される。重力補償電流(Igc)は、加振正弦波(Igsin)が加算される。 In the first invention, the gravity compensation current correction value (Igc4) is calculated based on the gravity compensation current (Igc), the gravity compensation current subtraction value (Igsub), and the excitation sine wave (Igsin). The gravity compensation current (Igc) is a current applied to the motor to compensate for the gravity torque (τge) applied to the motor to be compensated. A gravity compensation current subtraction value (Igsub) is subtracted from the gravity compensation current (Igc). An excitation sine wave (Igsin) is added to the gravity compensation current (Igc).
これにより、セルフロックされて静止摩擦停止状態となったモータを入力側から加振して、モータを動摩擦状態とすることができる。その結果、モータの出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータを回転させることができる。 As a result, the motor, which has been self-locked and is in a static friction stop state, can be vibrated from the input side to bring the motor into a dynamic friction state. As a result, even if a collision force is applied from the output side of the motor, the motor can be rotated in a direction that releases the collision force.
第2の発明は、第1の発明において、前記ロボットアームに衝突力が加わった場合に、該衝突力が加わった方向に倣うように該モータを駆動させる柔軟制御を行う工程と、前記柔軟制御中に、前記重力補償電流補正値(Igc4)に基づいて、前記モータの電流指令を補正する工程とを備えたことを特徴とする。 A second invention is based on the first invention, and includes a step of performing flexible control to drive the motor so as to follow a direction in which the collision force is applied when a collision force is applied to the robot arm, and the flexible control. The present invention is characterized by comprising a step of correcting the current command of the motor based on the gravity compensation current correction value (Igc4).
第2の発明では、ロボットアームに衝突力が加わった場合に柔軟制御を行い、柔軟制御中に、重力補償電流補正値(Igc4)に基づいて、モータの電流指令を補正している。 In the second invention, flexible control is performed when a collision force is applied to the robot arm, and during the flexible control, the motor current command is corrected based on the gravity compensation current correction value (Igc4).
これにより、ロボットアームの柔軟性を確保して、突っ張り現象を緩和することができる。 Thereby, the flexibility of the robot arm can be ensured and the tension phenomenon can be alleviated.
第3の発明は、複数のモータを有するロボットアームの動作を制御するためのロボット制御装置であって、前記複数のモータの回転角に基づいて、補償対象の該モータにかかる重力トルク(τge)を演算する第1演算部と、前記重力トルク(τge)を補償する重力補償電流(Igc)を演算する第2演算部と、前記重力補償電流(Igc)と、所定の重力減算設定値(Igth)とに基づいて、重力補償電流減算値(Igsub)を演算する第3演算部と、所定の加振正弦波振幅(Igsa)と、所定の周波数(Igsf)とに基づいて、加振正弦波(Igsin)を演算する第4演算部と、前記重力補償電流(Igc)と、前記重力補償電流減算値(Igsub)と、前記加振正弦波(Igsin)とに基づいて、重力補償電流補正値(Igc4)を演算する第5演算部とを備えたことを特徴とする。 A third invention is a robot control device for controlling the operation of a robot arm having a plurality of motors, the gravitational torque (τge) applied to the motor to be compensated for based on the rotation angles of the plurality of motors. a first calculation unit that calculates a gravity compensation current (Igc) that compensates for the gravity torque (τge); a second calculation unit that calculates a gravity compensation current (Igc) that compensates for the gravity torque (τge); ) and a third calculation unit that calculates a gravity compensation current subtraction value (Igsub) based on a predetermined excitation sine wave amplitude (Igsa) and a predetermined frequency (Igsf). (Igsin), a gravity compensation current correction value based on the gravity compensation current (Igc), the gravity compensation current subtraction value (Igsub), and the excitation sine wave (Igsin); (Igc4).
第3の発明では、重力補償電流補正値(Igc4)は、重力補償電流(Igc)と、重力補償電流減算値(Igsub)と、加振正弦波(Igsin)とに基づいて演算される。重力補償電流(Igc)は、補償対象のモータにかかる重力トルク(τge)を補償するためにモータに印加される電流である。重力補償電流(Igc)は、重力補償電流減算値(Igsub)が減算される。重力補償電流(Igc)は、加振正弦波(Igsin)が加算される。 In the third invention, the gravity compensation current correction value (Igc4) is calculated based on the gravity compensation current (Igc), the gravity compensation current subtraction value (Igsub), and the excitation sine wave (Igsin). The gravity compensation current (Igc) is a current applied to the motor to compensate for the gravity torque (τge) applied to the motor to be compensated. A gravity compensation current subtraction value (Igsub) is subtracted from the gravity compensation current (Igc). An excitation sine wave (Igsin) is added to the gravity compensation current (Igc).
これにより、セルフロックされて静止摩擦停止状態となったモータを入力側から加振して、モータを動摩擦状態とすることができる。その結果、モータの出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータを回転させることができる。 As a result, the motor, which has been self-locked and is in a static friction stop state, can be vibrated from the input side to bring the motor into a dynamic friction state. As a result, even if a collision force is applied from the output side of the motor, the motor can be rotated in a direction that releases the collision force.
第4の発明は、第3の発明において、前記ロボットアームに衝突力が加わった場合に、該衝突力が加わった方向に倣うように該モータを駆動させる柔軟制御を行う柔軟制御部と、前記柔軟制御中に、前記重力補償電流補正値(Igc4)に基づいて、前記モータの電流指令を補正する電流指令補正部とを備えたことを特徴とする。 A fourth aspect of the present invention is a flexible control section based on the third aspect, which performs flexible control to drive the motor so as to follow a direction in which the collision force is applied when a collision force is applied to the robot arm; The present invention is characterized by comprising a current command correction section that corrects the current command of the motor based on the gravity compensation current correction value (Igc4) during flexible control.
第4の発明では、ロボットアームに衝突力が加わった場合に柔軟制御を行い、柔軟制御中に、重力補償電流補正値(Igc4)に基づいて、モータの電流指令を補正している。 In the fourth invention, flexible control is performed when a collision force is applied to the robot arm, and during the flexible control, the motor current command is corrected based on the gravity compensation current correction value (Igc4).
これにより、ロボットアームの柔軟性を確保して、突っ張り現象を緩和することができる。 Thereby, the flexibility of the robot arm can be ensured and the tension phenomenon can be alleviated.
第5の発明は、第3又は4の発明において、前記モータは、ハイポイドギアを有することを特徴とする。 A fifth invention according to the third or fourth invention is characterized in that the motor has a hypoid gear.
第5の発明では、ハイポイドギアを有するモータを用いる。ハイポイドギアは、リング状のギアを有する。これにより、ロボットのケーブルを、リング状のギアの内部を通して配置することができる。また、セルフロックがかかり易いハイポイドギアを有するモータであっても、衝突力を逃がす方向にモータを回転させることができる。 In the fifth invention, a motor having a hypoid gear is used. A hypoid gear has a ring-shaped gear. This allows the robot cable to be placed through the inside of the ring-shaped gear. Furthermore, even if the motor has a hypoid gear that is likely to self-lock, the motor can be rotated in a direction that releases collision force.
本開示によれば、モータの出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータを回転させることができる。 According to the present disclosure, even if a collision force is applied from the output side of the motor, the motor can be rotated in a direction that releases the collision force.
以下、本開示の実施形態を図面に基づいて説明する。なお、以下の好ましい実施形態の説明は、本質的に例示に過ぎず、本開示、その適用物或いはその用途を制限することを意図するものではない。 Embodiments of the present disclosure will be described below based on the drawings. Note that the following description of preferred embodiments is essentially just an example, and is not intended to limit the present disclosure, its applications, or its uses.
《実施形態》
図1に示すように、垂直多関節型のロボット1は、ロボットアーム2と、複数の関節部J1~J6とを有する。ロボット1には、ロボット制御装置10が接続される。
《Embodiment》
As shown in FIG. 1, a vertically articulated
ロボットアーム2は、複数の部分に分かれており、各部分の連結部に関節部J1~J6がそれぞれ設けられる。関節部J1~J6は、第1軸~第6軸を有する。関節部J1~J6には、それぞれ減速機を介してサーボモータ3が連結している。
The
サーボモータ3は、ロボット制御装置10からの位置指令θcomに基づいて駆動する。
The
サーボモータ3は、関節部J1~J6をそれぞれ所望の量だけ回転させることで、ロボットアーム2の動作及び姿勢を制御する。
The
関節部J1~J3は、ロボットアーム2の全体の姿勢を決める主軸3軸である。関節部J1は、ロボットアーム2を旋回させる旋回軸である。関節部J4~J6は、ロボットアーム2の先端の方向を決める手首3軸である。
The joints J1 to J3 are three main axes that determine the overall posture of the
図2及び図3に示すように、RW軸(第4軸)の関節部J4と、TW軸(第6軸)の関節部J6とは、ハイポイドギア5で構成された減速機を備える。ハイポイドギア5は、リングギア6と、ピニオンギア7とを有する。リングギア6の中央の孔には、ケーブル8が挿通される。ケーブル8は、例えば、ロボット1の先端に取り付けられる溶接部の溶接ケーブルである。ピニオンギア7は、サーボモータ3にベルト等を介して連結される。
As shown in FIGS. 2 and 3, the joint J4 of the RW axis (fourth axis) and the joint J6 of the TW axis (sixth axis) are equipped with a reduction gear made of a
図4に示すように、ロボット制御装置10は、位置制御ブロック12を有する。位置制御ブロック12は、フィードバック制御器を構成する。位置制御ブロック12は、実際のモータ回転角θfbをモータ回転角指令θcomに追従させるための電流指令を生成する。位置制御ブロック12には、モータ回転角指令θcomと、実際のモータ回転角θfbとが入力される。位置制御ブロック12では、モータ回転角指令θcomとモータ回転角θfbからPID計算等を行うことで、第1電流指令Icom1が演算される。位置制御ブロック12は、制御モード切換ブロック15に対して第1電流指令Icom1を出力する。
As shown in FIG. 4, the
電流制御ブロック13は、モータ回転と逆方向のトルクをモータで発生させるための電流指令を生成する。電流制御ブロック13には、実際のモータ角速度ωfbが入力される。電流制御ブロック13は、制御モード切換ブロック15に対して第2電流指令Icom2を出力する。
The
柔軟制御ブロック14は、衝突力方向に倣う柔軟制御を行うための電流指令を生成する。柔軟制御ブロック14には、第1電流指令Icom1と、実際のモータ回転角θfbと、他軸モータ回転角負荷質量情報29とが入力される。柔軟制御ブロック14は、制御モード切換ブロック15に対して第3電流指令Icom3を出力する。
The
制御モード切換ブロック15には、第1電流指令Icom1、第2電流指令Icom2、第3電流指令Icom3の他に、モータ減速判定信号Dth、衝突方向フラグDir、衝突検出信号Dcolが入力される。制御モード切換ブロック15は、モータ減速判定信号Dth、衝突方向フラグDir、衝突検出信号Dcolに基づいて、第1電流指令Icom1、第2電流指令Icom2、第3電流指令Icom3のうち1つを選択して、モータに印加するモータ電流Imとして出力する。
In addition to the first current command Icom1, second current command Icom2, and third current command Icom3, the control
具体的に、制御モード切換ブロック15は、モータ回転方向と衝突トルク方向とが逆の軸の場合に、位置制御ブロック12から電流制御ブロック13に切り換え、モータ回転速度を減速する。
Specifically, when the motor rotation direction and the collision torque direction are opposite to each other, the control
また、制御モード切換ブロック15は、モータ回転速度が設定値以下になった場合に、衝突力方向に倣う柔軟制御ブロック14に切り換える。
Further, the control
また、制御モード切換ブロック15は、モータ回転方向と衝突トルク方向が同じ軸の場合に、位置制御ブロック12から柔軟制御ブロック14に切り換える。
Further, the control
図2の点線枠で示すモータ+実負荷17には、モータ電流Imが供給される。モータでは、演算ブロック18においてモータ電流Imにトルク定数Ktを乗じたモータトルクτmmが発生する。モータトルクτmmから外乱トルク20を差し引いたトルクが、モータ伝達関数21に印加される。
A motor current Im is supplied to the motor+
外乱トルク20は、摩擦トルクτμ、重力トルクτg、動力学トルクτdyn(慣性力、遠心力、コリオリ力の和)、衝突トルクτdisの和である。
The
モータ伝達関数21は、モータイナーシャJを用いて記述される。モータ伝達関数21は、モータ回転角θfbを出力する。モータ回転角θfbは、光学式又は磁気式エンコーダで検出される。演算ブロック115では、モータ回転角θfbをギア比の逆数1/Rgで乗算した値が、動作角θaxとして出力される。
The
衝突方向判別ブロック23には、モータ角速度ωfbと、衝突トルク検出値τdisdとが入力される。衝突方向判別ブロック23は、衝突トルク検出方向とモータ回転方向とを比較して衝突方向フラグDirを演算する。衝突方向判別ブロック23は、制御モード切換ブロック15に対して衝突方向フラグDirを出力する。
The motor angular velocity ωfb and the collision torque detection value τdisd are input to the collision
具体的に、衝突方向判別ブロック23は、以下の条件に基づいて、衝突方向フラグDirを演算する。
Specifically, the collision
ωfb×τdisd<0 (Dir=1)
ωfb×τdisd≧0 (Dir=0)
このように、衝突方向フラグDirは、モータ角速度ωfbと衝突トルク検出値τdisdとの方向が反対のときに「1」となり、それ以外は「0」となる。
ωfb×τdisd<0 (Dir=1)
ωfb×τdisd≧0 (Dir=0)
In this way, the collision direction flag Dir becomes "1" when the motor angular velocity ωfb and the detected collision torque value τdisd are in opposite directions, and becomes "0" otherwise.
モータ角速度検出ブロック24には、モータ回転角θfbが入力される。モータ角速度検出ブロック24は、モータ回転角θfbを微分等することで、モータ角速度ωfbを演算する。 The motor rotation angle θfb is input to the motor angular velocity detection block 24. The motor angular velocity detection block 24 calculates the motor angular velocity ωfb by differentiating the motor rotation angle θfb.
衝突判定ブロック25には、衝突トルク検出値τdisdと、他軸衝突トルク検出値28とが入力される。衝突判定ブロック25は、衝突トルク検出値τdisdと、他軸衝突トルク検出値28とのうち、ロボットアーム2の1軸でも所定の衝突トルク検出閾値を超えた場合に、衝突が発生したと判定する。衝突判定ブロック25は、制御モード切換ブロック15に対して衝突検出信号Dcolを出力する。
The
衝突トルク検出ブロック26は、ロボットアーム2に加わる衝突力が、ロボットアーム2を駆動するモータ3に加える衝突トルク検出値τdisdを演算する。衝突トルク検出ブロック26には、他軸モータ回転角負荷質量情報29と、実際のモータ回転角θfbと、モータ電流Imとが入力される。
The collision
衝突トルク検出ブロック26では、モータ回転角θfbと、他軸モータ回転角負荷質量情報29とを時間微分することで、角速度及び角加速度を演算する。衝突トルク検出ブロック26では、ロボット機械パラメータの情報を用いて、衝突トルクτdisが発生していない条件でモータに必要なトルクを、逆動力学演算で求める。衝突トルク検出ブロック26は、モータ電流Imにトルク定数Ktを乗じた値を、逆動力学演算で求めたトルクから減算することで、衝突トルク検出値τdisdを演算する。
The collision
モータ減速判定ブロック32には、モータ角速度ωfbが入力される。モータ減速判定ブロック32は、モータ角速度ωfbの大きさと、設定した閾値とを比較して、モータの減速を確認する。具体的には、以下の条件を満たしていれば、モータが減速されたと判断する。
The motor angular velocity ωfb is input to the motor
|ωfb|<ωth (Dth=1)
モータ減速判定ブロック32は、モータ角速度ωfbの絶対値が所定の減速判定閾値ωthより小さくなった場合に、制御モード切換ブロック15に対してモータ減速判定信号Dthを出力する。
|ωfb|<ωth (Dth=1)
The motor
以下、ロボットアーム2に衝突力が加わった場合の動作について説明する。
The operation when a collision force is applied to the
衝突検出前の通常の位置制御では、制御モード切換ブロック15は、第1電流指令Icom1をモータ電流Imとして選択し、モータ+実負荷17に印加する。
In normal position control before collision detection, the control
制御モード切換ブロック15は、衝突検出信号Dcolが入力された時点で、以下に示す衝突方向フラグDirの情報に基づいて、制御モードを切り換える。
The control
Dir=1 (Im=Icom2) 電流制御モード
Dir=0 (Im=Icom3) 柔軟制御モード
具体的に、衝突方向フラグDirが「1」の場合、制御モード切換ブロック15は、第2電流指令Icom2をモータ電流Imとして選択し、電流制御モードへ移行する。
Dir=1 (Im=Icom2) Current control mode
Dir=0 (Im=Icom3) Flexible control mode Specifically, when the collision direction flag Dir is "1", the control
一方、衝突方向フラグDirが「0」の場合、制御モード切換ブロック15は、第3電流指令Icom3をモータ電流Imとして選択し、柔軟制御モードへ移行する。
On the other hand, when the collision direction flag Dir is "0", the control
ここで、電流制御モードへ移行した後でモータが減速していくと、モータ角速度ωfbの絶対値が所定の減速判定閾値ωthより小さくなる。この場合、モータ減速判定ブロック32は、制御モード切換ブロック15に対してモータ減速判定信号Dthを出力する。
Here, as the motor decelerates after transitioning to the current control mode, the absolute value of the motor angular velocity ωfb becomes smaller than the predetermined deceleration determination threshold ωth. In this case, the motor
制御モード切換ブロック15は、モータ減速判定信号Dthが入力されると、第3電流指令Icom3をモータ電流Imとして選択し、柔軟制御モードへ移行する。
When the motor deceleration determination signal Dth is input, the control
なお、衝突検出時において、モータ角速度ωfbの絶対値が所定の減速判定閾値ωthより小さい場合には、制御モード切換ブロック15は、通常制御モードから電流制御モードへ移行しないで、柔軟制御モードに移行する。つまり、制御モード切換ブロック15は、モータに逆トルクを印加して減速させることなく、通常制御モードから柔軟制御モードへ移行する。
Note that when the absolute value of the motor angular velocity ωfb is smaller than a predetermined deceleration determination threshold ωth when a collision is detected, the control
柔軟制御ブロック14は、位置制御ブロック12から出力される第1電流指令Icom1に対して、電流を制限した上で、ロボットの自重落下防止のため重力補償電流を付加することにより、柔軟制御を実現する。
The
これにより、モータ回転角指令θcomとモータ回転角θfbと間の偏差が大きくなっても、モータ電流が制限されることにより、位置制御のサーボ剛性が弱くなり、柔軟性が生まれる。 As a result, even if the deviation between the motor rotation angle command θcom and the motor rotation angle θfb becomes large, the motor current is limited, thereby weakening the servo rigidity of position control and creating flexibility.
モータ減速判定信号Dthが「1」になった場合、モータ角速度ωfbが所定の減速判定閾値ωthより小さくなっている。そのため、モータは、ほぼ停止状態で慣性エネルギーも小さくなっており、柔軟制御モードへ移行することで、衝突により生じた減速機等での歪みを解消することができる。 When the motor deceleration determination signal Dth becomes "1", the motor angular velocity ωfb is smaller than the predetermined deceleration determination threshold ωth. Therefore, the motor is in a substantially stopped state and its inertial energy is small, and by shifting to the flexible control mode, it is possible to eliminate distortion in the speed reducer or the like caused by the collision.
〈柔軟制御中の動作〉
ところで、モータ3の減速機として、ウォーム減速機の一種であるハイポイドギア5を用いた場合には、モータ3の出力側から衝突力が加わったときに、ロボットアーム2が突っ張って回転しなくなる、いわゆるセルフロックがかかった状態となり易い。
<Operation during flexible control>
By the way, when a
そこで、本実施形態では、柔軟制御ブロック14の制御を工夫することで、柔軟制御中に、モータ3の出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータ3を回転できるようにした。
Therefore, in this embodiment, by devising the control of the
具体的に、図5に示すように、柔軟制御ブロック14は、重力トルク演算ブロック101(第1演算部)を有する。重力トルク演算ブロック101には、モータ回転角θfbと、他軸モータ回転角負荷質量情報29とが入力される。重力トルク演算ブロック101は、モータ回転角θfbと、他軸モータ回転角負荷質量情報29とから、動力学演算によって、補償対象のモータ3にかかる重力トルクτgeを演算する。重力トルク演算ブロック101は、重力トルクτgeを出力する。重力トルクτgeは、演算ブロック103(第2演算部)に入力される。
Specifically, as shown in FIG. 5, the
演算ブロック103では、重力トルクτgeを補償する重力補償電流Igcが演算される。
In the
重力補償電流Igcは、重力トルクτgeにトルク定数の逆数1/Ktを乗じた値である。演算ブロック103は、重力補償電流Igcを出力する。
The gravity compensation current Igc is a value obtained by multiplying the gravity torque τge by the reciprocal of the torque constant 1/Kt.
図6は、柔軟制御状態で、第4軸の関節部J4をアーム側(減速機出力側)から360°(-180°~180°)回転させたときの、重力補償電流Igcの波形を示す。 FIG. 6 shows the waveform of the gravity compensation current Igc when the fourth axis joint J4 is rotated 360° (-180° to 180°) from the arm side (reducer output side) in the flexible control state. .
図6に示すように、例えば、第4軸の動作角θaxが0°の場合、モータ電流最大比が0%となる。また、第4軸の動作角θaxが90°の場合、モータ電流最大比が30%となる。このとき、モータ3には、重力補償電流Igcによるトルクが、図6で時計回り方向に加わることでセルフロック状態となっている。そのため、アーム先端の溶接部を、図6で反時計回り方向に回転させることはできない。
As shown in FIG. 6, for example, when the operating angle θax of the fourth axis is 0°, the maximum motor current ratio is 0%. Further, when the operating angle θax of the fourth axis is 90°, the maximum motor current ratio is 30%. At this time, torque due to gravity compensation current Igc is applied to the
重力補償電流減算値ブロック107(第3演算部)には、重力補償電流Igcが入力される。重力補償電流減算値ブロック107は、モータ3のセルフロック状態の緩和を目的として、重力補償電流Igcを減少させる。重力補償電流減算値ブロック107は、重力補償電流Igcと、所定の重力減算設定値Igthとに基づいて、重力補償電流減算値Igsubを演算して出力する。重力補償電流減算値Igcは、以下の式で求められる。
The gravity compensation current Igc is input to the gravity compensation current subtraction value block 107 (third calculation section). The gravity compensation current
Igc > Igth (Igsub= Igth)
|Igc|≦ Igth (Igsub= Igc)
Igc <-Igth (Igsub=-Igth)
具体的に、重力補償電流Igcが重力減算設定値Igthよりも大きい場合、重力補償電流減算値Igsub=Igthとする。重力補償電流Igcの絶対値が重力減算設定値Igth以下の場合、重力補償電流減算値Igsub=Igcとする。重力補償電流Igcが重力減算設定値の負の値(-Igth)よりも小さい場合、重力補償電流減算値Igsub=-Igthとする。
Igc > Igth (Igsub= Igth)
|Igc|≦Igth (Igsub=Igc)
Igc <-Igth (Igsub=-Igth)
Specifically, when the gravity compensation current Igc is larger than the gravity subtraction setting value Igth, the gravity compensation current subtraction value Igsub=Igth. When the absolute value of the gravity compensation current Igc is less than or equal to the gravity subtraction setting value Igth, the gravity compensation current subtraction value Igsub=Igc. If the gravity compensation current Igc is smaller than the negative value (-Igth) of the gravity subtraction setting value, the gravity compensation current subtraction value Igsub=-Igth.
図7に示すように、例えば、重力減算設定値Igthを20%とすると、重力補償電流減算値Igsubの波形は、図6に示す重力補償電流Igcにおいて、モータ電流最大比が20%よりも高い山の部分と、-20%よりも低い谷の部分とが削除された形状となる。 As shown in FIG. 7, for example, when the gravity subtraction setting value Igth is 20%, the waveform of the gravity compensation current subtraction value Igsub is such that the motor current maximum ratio is higher than 20% in the gravity compensation current Igc shown in FIG. The shape is obtained by removing the mountain portion and the valley portion lower than -20%.
加振正弦波電流演算ブロック109(第4演算部)は、セルフロック状態のモータを、静止摩擦停止状態から動摩擦状態へ移行させるための加振正弦波Igsinを演算する。 The excitation sine wave current calculation block 109 (fourth calculation unit) calculates an excitation sine wave Igsin for transitioning the motor in the self-locked state from the static friction stop state to the dynamic friction state.
加振正弦波電流演算ブロック109は、所定の加振正弦波振幅Igsaと、所定の周波数Igsfとに基づいて、加振正弦波Igsinを演算して出力する。経過時間をtとすると、加振正弦波Igsinは、以下の式で求められる。
The excitation sine wave
Igsin=Igsa×sin(2π×Igsf×t)
図8に示す例では、加振正弦波振幅Igsaは、5%に設定される。周波数Igsfは、20Hzに設定される。経過時間tは、2秒に設定される。
Igsin=Igsa×sin(2π×Igsf×t)
In the example shown in FIG. 8, the excitation sine wave amplitude Igsa is set to 5%. Frequency Igsf is set to 20Hz. The elapsed time t is set to 2 seconds.
そして、柔軟制御状態で、第4軸の関節部J4をアーム側(減速機出力側)から2秒間で360°(-180°~180°)回転させると、図8に示す加振正弦波振幅Igsaの波形が得られる。 Then, in the flexible control state, when the joint J4 of the fourth axis is rotated 360° (-180° to 180°) in 2 seconds from the arm side (reducer output side), the excitation sine wave amplitude shown in FIG. Igsa waveform can be obtained.
演算ブロック116(第5演算部)は、重力補償電流Igcと、重力補償電流減算値Igsubと、加振正弦波Igsinとに基づいて、重力補償電流補正値Igc4を演算する。重力補償電流補正値Igc4は、以下の式で求められる。 The calculation block 116 (fifth calculation unit) calculates the gravity compensation current correction value Igc4 based on the gravity compensation current Igc, the gravity compensation current subtraction value Igsub, and the excitation sine wave Igsin. The gravity compensation current correction value Igc4 is obtained by the following formula.
Igc4=Igc-Igsub+Igsin
演算ブロック116では、加振正弦波Igsinから重力補償電流減算値Igsubを減算して減算値(Igsin-Igsub)を演算する。演算ブロック116は、スイッチSwgを切り換え、減算値(Igsin-Igsub)を重力補償電流Igcに選択的に加算することで、重力補償電流補正値Igc4を演算して出力する。
Igc4=Igc-Igsub+Igsin
In the
そして、柔軟制御状態で、第4軸の関節部J4をアーム側(減速機出力側)から2秒間で360°(-180°~180°)回転させると、図9に示す重力補償電流補正値Igc4の波形が得られる。 Then, in the flexible control state, when the joint J4 of the fourth axis is rotated 360° (-180° to 180°) in 2 seconds from the arm side (reducer output side), the gravity compensation current correction value shown in FIG. Igc4 waveform is obtained.
電流制限ブロック105には、通常制御の第1電流指令Icom1が入力される。電流制限ブロック105は、予め設定された電流制限設定値Icthに基づいて、電流指令リミット値Ic1_limを演算して出力する。電流指令リミット値Ic1_limは、以下の式で求められる。
A first current command Icom1 for normal control is input to the current limiting
Icom1 > Icth (Ic1_lim= Icth)
|Icom1|≦ Icth (Ic1_lim= Icom1)
Icom1 <-Icth (Ic1_lim=-Icth)
そして、柔軟制御ブロック14は、重力補償電流補正値Igc4に電流指令リミット値Ic1_limを加算することで、柔軟性制御時の第4電流指令Icom4を演算する。柔軟制御ブロック14は、第4電流指令Icom4を出力する。このように、柔軟制御ブロック14は、柔軟制御中に、重力補償電流補正値Igc4に基づいて、モータ3の電流指令を補正する電流指令補正部を構成している。
Icom1 > Icth (Ic1_lim= Icth)
|Icom1|≦ Icth (Ic1_lim= Icom1)
Icom1 <-Icth (Ic1_lim=-Icth)
Then, the
〈動作角60°の位置で衝突停止した場合〉
以下、柔軟制御中に、第4軸の動作角θax=60°の位置で衝突停止した場合について説明する。
<When the collision stops at a position with an operating angle of 60°>
Hereinafter, a case will be described in which a collision stop occurs at a position where the fourth axis operating angle θax=60° during flexible control.
図10は、柔軟制御状態で、第4軸の関節部J4をアーム側(減速機出力側)から360°(-180°~180°)回転させたときの、重力補償電流Igcの波形を示す。 FIG. 10 shows the waveform of the gravity compensation current Igc when the fourth axis joint J4 is rotated 360° (-180° to 180°) from the arm side (reducer output side) in the flexible control state. .
図10に示すように、第4軸の動作角θax=60°の位置で衝突停止した場合には、重力補償電流Igcのモータ電流最大比は、26%となる。 As shown in FIG. 10, when the collision stops at a position where the operating angle θax of the fourth axis is 60°, the maximum motor current ratio of the gravity compensation current Igc is 26%.
図11に示すように、第4軸の動作角θax=60°の位置で衝突停止した場合には、重力補償電流減算値Igsubのモータ電流最大比は、20%となる。 As shown in FIG. 11, when the collision stops at the position of the fourth axis operating angle θax=60°, the motor current maximum ratio of the gravity compensation current subtraction value Igsub is 20%.
上述したように、加振正弦波Igsinは、Igsin=Igsa×sin(2π×Igsf×t)で求められる。ここで、加振正弦波振幅Igsaを5%、周波数Igsfを20Hz、経過時間tを2秒とすると、図12に示す加振正弦波振幅Igsaの波形が得られる。図12では、横軸を時間軸としている。 As described above, the excitation sine wave Igsin is determined by Igsin=Igsa×sin (2π×Igsf×t). Here, if the excitation sine wave amplitude Igsa is 5%, the frequency Igsf is 20 Hz, and the elapsed time t is 2 seconds, the waveform of the excitation sine wave amplitude Igsa shown in FIG. 12 is obtained. In FIG. 12, the horizontal axis is the time axis.
上述したように、重力補償電流補正値Igc4は、Igc4=Igc-Igsub+Igsinで求められる。ここで、重力補償電流Igcのモータ電流最大比が26%、重力補償電流減算値Igsubのモータ電流最大比が20%であるから、Igc-Igsub=26-20=6%となる。これにより、図13に示す重力補償電流補正値Igc4の波形が得られる。図13では、横軸を時間軸としている。 As described above, the gravity compensation current correction value Igc4 is obtained by Igc4=Igc−Igsub+Igsin. Here, since the maximum motor current ratio of the gravity compensation current Igc is 26% and the maximum motor current ratio of the gravity compensation current subtraction value Igsub is 20%, Igc-Igsub=26-20=6%. As a result, the waveform of the gravity compensation current correction value Igc4 shown in FIG. 13 is obtained. In FIG. 13, the horizontal axis is the time axis.
以上のように、本実施形態に係るロボット制御装置10によれば、柔軟制御中に、重力補償電流補正値Igc4に基づいて、モータ3の電流指令を補正することで、ロボットアーム2の柔軟性を確保して、突っ張り現象を緩和することができる。
As described above, according to the
具体的に、セルフロックされて静止摩擦停止状態となったモータ3を入力側から加振して、モータ3を動摩擦状態とすることができる。その結果、モータ3の出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータ3を回転させることができる。
Specifically, the
以上説明したように、本開示は、モータの出力側から衝突力が加わった場合でも、衝突力を逃がす方向にモータを回転できるという実用性の高い効果が得られることから、きわめて有用で産業上の利用可能性は高い。 As explained above, the present disclosure is extremely useful and industrially effective because even when a collision force is applied from the output side of the motor, the motor can be rotated in a direction to release the collision force, which is a highly practical effect. possibility of use is high.
2 ロボットアーム
3 モータ
5 ハイポイドギア
10 ロボット制御装置
14 柔軟制御ブロック(柔軟制御部、電流指令補正部)
101 重力トルク演算ブロック(第1演算部)
103 演算ブロック(第2演算部)
107 重力補償電流減算値ブロック(第3演算部)
109 加振正弦波電流演算ブロック(第4演算部)
116 演算ブロック(第5演算部)
τge 重力トルク
Igc 重力補償電流
Igth 重力減算設定値
Igsub 重力補償電流減算値
Igsa 加振正弦波振幅
Igsf 周波数
Igsin 加振正弦波
Igc4 重力補償電流補正値
2
101 Gravity torque calculation block (first calculation section)
103 Arithmetic block (second arithmetic unit)
107 Gravity compensation current subtraction value block (third calculation section)
109 Excited sine wave current calculation block (4th calculation section)
116 Arithmetic block (5th arithmetic unit)
τge Gravity torque
IGC gravity compensation current
Igth Gravity subtraction setting value
Igsub Gravity compensation current subtraction value
Igsa Excited sine wave amplitude
Igsf frequency
Igsin excitation sine wave
Igc4 gravity compensation current correction value
Claims (5)
前記複数のモータの回転角に基づいて、補償対象の該モータにかかる重力トルク(τge)を演算する工程と、
前記重力トルク(τge)を補償する重力補償電流(Igc)を演算する工程と、
前記重力補償電流(Igc)と、所定の重力減算設定値(Igth)とに基づいて、重力補償
電流減算値(Igsub)を演算する工程と、
所定の加振正弦波振幅(Igsa)と、所定の周波数(Igsf)とに基づいて、加振正弦波(Igsin)を演算する工程と、
前記重力補償電流(Igc)と、前記重力補償電流減算値(Igsub)と、前記加振正弦波(Igsin)とに基づいて、重力補償電流補正値(Igc4)を演算する工程とを備えた
ことを特徴とするロボット制御方法。 A robot control method for controlling the operation of a robot arm having a plurality of motors, the method comprising:
a step of calculating a gravitational torque (τge) applied to the motor to be compensated based on the rotation angles of the plurality of motors;
a step of calculating a gravity compensation current (Igc) that compensates for the gravity torque (τge);
a step of calculating a gravity compensation current subtraction value (Igsub) based on the gravity compensation current (Igc) and a predetermined gravity subtraction setting value (Igth);
a step of calculating an excitation sine wave (Igsin) based on a predetermined excitation sine wave amplitude (Igsa) and a predetermined frequency (Igsf);
A step of calculating a gravity compensation current correction value (Igc4) based on the gravity compensation current (Igc), the gravity compensation current subtraction value (Igsub), and the excitation sine wave (Igsin). A robot control method characterized by:
前記ロボットアームに衝突力が加わった場合に、該衝突力が加わった方向に倣うように該モータを駆動させる柔軟制御を行う工程と、
前記柔軟制御中に、前記重力補償電流補正値(Igc4)に基づいて、前記モータの電流指令を補正する工程とを備えた
ことを特徴とするロボット制御方法。 In claim 1,
When a collision force is applied to the robot arm, performing flexible control to drive the motor so as to follow the direction in which the collision force is applied;
A robot control method comprising the step of correcting a current command for the motor based on the gravity compensation current correction value (Igc4) during the flexible control.
前記複数のモータの回転角に基づいて、補償対象の該モータにかかる重力トルク(τge)を演算する第1演算部と、
前記重力トルク(τge)を補償する重力補償電流(Igc)を演算する第2演算部と、
前記重力補償電流(Igc)と、所定の重力減算設定値(Igth)とに基づいて、重力補償
電流減算値(Igsub)を演算する第3演算部と、
所定の加振正弦波振幅(Igsa)と、所定の周波数(Igsf)とに基づいて、加振正弦波(Igsin)を演算する第4演算部と、
前記重力補償電流(Igc)と、前記重力補償電流減算値(Igsub)と、前記加振正弦波(Igsin)とに基づいて、重力補償電流補正値(Igc4)を演算する第5演算部とを備えた
ことを特徴とするロボット制御装置。 A robot control device for controlling the operation of a robot arm having a plurality of motors, the robot control device comprising:
a first calculation unit that calculates a gravitational torque (τge) applied to the motor to be compensated based on the rotation angles of the plurality of motors;
a second calculation unit that calculates a gravity compensation current (Igc) that compensates for the gravity torque (τge);
a third calculation unit that calculates a gravity compensation current subtraction value (Igsub) based on the gravity compensation current (Igc) and a predetermined gravity subtraction setting value (Igth);
a fourth calculation unit that calculates an excitation sine wave (Igsin) based on a predetermined excitation sine wave amplitude (Igsa) and a predetermined frequency (Igsf);
a fifth calculation unit that calculates a gravity compensation current correction value (Igc4) based on the gravity compensation current (Igc), the gravity compensation current subtraction value (Igsub), and the excitation sine wave (Igsin); A robot control device characterized by:
前記ロボットアームに衝突力が加わった場合に、該衝突力が加わった方向に倣うように該モータを駆動させる柔軟制御を行う柔軟制御部と、
前記柔軟制御中に、前記重力補償電流補正値(Igc4)に基づいて、前記モータの電流指令を補正する電流指令補正部とを備えた
ことを特徴とするロボット制御装置。 In claim 3,
a flexible control unit that performs flexible control to drive the motor so as to follow the direction in which the collision force is applied when a collision force is applied to the robot arm;
A robot control device comprising: a current command correction section that corrects a current command of the motor based on the gravity compensation current correction value (Igc4) during the flexible control.
前記モータは、ハイポイドギアを有する
ことを特徴とするロボット制御装置。 In claim 3 or 4,
A robot control device, wherein the motor has a hypoid gear.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020188047 | 2020-11-11 | ||
| JP2020188047 | 2020-11-11 | ||
| PCT/JP2021/040318 WO2022102464A1 (en) | 2020-11-11 | 2021-11-02 | Robot control method and robot control device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2022102464A1 JPWO2022102464A1 (en) | 2022-05-19 |
| JP7442053B2 true JP7442053B2 (en) | 2024-03-04 |
Family
ID=81601147
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022561837A Active JP7442053B2 (en) | 2020-11-11 | 2021-11-02 | Robot control method and robot control device |
Country Status (3)
| Country | Link |
|---|---|
| JP (1) | JP7442053B2 (en) |
| CN (1) | CN116113522A (en) |
| WO (1) | WO2022102464A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070260356A1 (en) | 2003-05-22 | 2007-11-08 | Abb Ab | Control Method for a Robot |
| JP2019093489A (en) | 2017-11-24 | 2019-06-20 | ファナック株式会社 | Structure of robot |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61221803A (en) * | 1985-03-27 | 1986-10-02 | Nissan Motor Co Ltd | Robot controller |
| JPS61231612A (en) * | 1985-04-05 | 1986-10-15 | Nissan Motor Co Ltd | Controller of robot |
| JPS61243513A (en) * | 1985-04-22 | 1986-10-29 | Nissan Motor Co Ltd | Robot controller |
| WO1992005016A1 (en) * | 1990-09-14 | 1992-04-02 | The Trustees Of The University Of Pennsylvania | Methods and apparatus for passively compensating for the effects of gravity upon articulated structures |
| JPH05104466A (en) * | 1991-10-18 | 1993-04-27 | Brother Ind Ltd | Return-to-origin control device for articulated robot |
| JP3752758B2 (en) * | 1996-12-19 | 2006-03-08 | 株式会社安川電機 | Robot arm control device |
| JPH1142576A (en) * | 1997-07-28 | 1999-02-16 | Matsushita Electric Ind Co Ltd | Robot control method and device |
-
2021
- 2021-11-02 WO PCT/JP2021/040318 patent/WO2022102464A1/en not_active Ceased
- 2021-11-02 JP JP2022561837A patent/JP7442053B2/en active Active
- 2021-11-02 CN CN202180057939.XA patent/CN116113522A/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070260356A1 (en) | 2003-05-22 | 2007-11-08 | Abb Ab | Control Method for a Robot |
| JP2019093489A (en) | 2017-11-24 | 2019-06-20 | ファナック株式会社 | Structure of robot |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2022102464A1 (en) | 2022-05-19 |
| JPWO2022102464A1 (en) | 2022-05-19 |
| CN116113522A (en) | 2023-05-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4985659B2 (en) | Robot control method | |
| CN100584547C (en) | The method of controlling the manipulator | |
| US11559891B2 (en) | Robot system and method for controlling robot system | |
| JP5916583B2 (en) | Weaving control device for articulated robot | |
| JP6043231B2 (en) | Electric motor control device | |
| WO2015186572A1 (en) | Robot control device | |
| JP2006116650A (en) | Robot collision detection method | |
| JP7442053B2 (en) | Robot control method and robot control device | |
| JP2019030931A (en) | Robot control apparatus, control method, and robot apparatus | |
| JP2005052913A (en) | Robot controller | |
| JP5443782B2 (en) | Robot, current limiting device and current limiting method | |
| JPWO2020008751A1 (en) | Robot control method and robot control device | |
| JP5703870B2 (en) | Robot control device | |
| JP5299255B2 (en) | Robot controller | |
| JP3771110B2 (en) | Control device and control method for mechanical system | |
| JP5633268B2 (en) | Robot control device | |
| JP7443013B2 (en) | robot control device | |
| JP7249603B2 (en) | Control device, control method and robot system | |
| JP7657097B2 (en) | Robot control method and control device | |
| JP7282648B2 (en) | robot controller | |
| JP7605712B2 (en) | Multi-joint robot arm, multi-joint robot arm drive method, control device, and computer program | |
| JPH0679673A (en) | Method and device for vibration isolation for gripping material of robot | |
| JPH081560A (en) | Robot vibration suppression method and apparatus | |
| JP2002059382A (en) | Control method of articulated robot | |
| JP5402125B2 (en) | Robot controller |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221222 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231017 |
|
| 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: 20240109 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240122 |
|
| R151 | Written notification of patent or utility model registration |
Ref document number: 7442053 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |