WO2021186518A1 - 多関節ロボット - Google Patents

多関節ロボット Download PDF

Info

Publication number
WO2021186518A1
WO2021186518A1 PCT/JP2020/011565 JP2020011565W WO2021186518A1 WO 2021186518 A1 WO2021186518 A1 WO 2021186518A1 JP 2020011565 W JP2020011565 W JP 2020011565W WO 2021186518 A1 WO2021186518 A1 WO 2021186518A1
Authority
WO
WIPO (PCT)
Prior art keywords
torque
motors
articulated robot
arm
motor
Prior art date
Application number
PCT/JP2020/011565
Other languages
English (en)
French (fr)
Inventor
啓祐 名桐
Original Assignee
株式会社Fuji
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 株式会社Fuji filed Critical 株式会社Fuji
Priority to JP2022508631A priority Critical patent/JP7422215B2/ja
Priority to PCT/JP2020/011565 priority patent/WO2021186518A1/ja
Publication of WO2021186518A1 publication Critical patent/WO2021186518A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices

Definitions

  • This specification discloses an articulated robot.
  • Patent Document 1 describes a robot arm, a control unit that commands a torque command, a servomotor that rotates by a current supplied by the control unit to drive the robot arm, and an encoder that detects the position of the servomotor.
  • An articulated robot including a collision detection device, a collision detection device monitoring unit, and a robot stop processing unit is disclosed.
  • the collision detection device estimates the disturbance received by the robot arm by receiving the torque command of the control unit and the rotation signal of the encoder.
  • the collision detection device monitoring unit determines that a collision has occurred when the estimated disturbance torque exceeds a predetermined value.
  • the robot stop processing unit stops the robot when the collision detection device monitoring unit determines that a collision has occurred.
  • the articulated robot may continue to output torque commensurate with the external force from the arm, depending on how the arm is stopped, and may be damaged.
  • the present disclosure provides an articulated robot capable of minimizing damage to a robot by avoiding continuous generation of torque commensurate with the external force from the motor when an excessive external force is applied to the arm. Is the main purpose.
  • the articulated robot of the present disclosure is An articulated robot with multiple arms connected via joints.
  • the torque commands of the plurality of motors are set by feedback control so that the positions of the plurality of arms reach the target position, the torques of the plurality of motors are monitored, and the torque of any one of the plurality of motors is a threshold value.
  • the control unit that sets the torque command of at least one of the plurality of motors to zero, and The gist is to prepare.
  • the articulated robot of the present disclosure sets torque commands of a plurality of motors by feedback control so that the positions of the plurality of arms reach the target positions, and monitors the torques of the plurality of motors. Then, when the torque of any one of the plurality of motors exceeds the threshold value, the articulated robot sets the torque command of at least one of the plurality of motors to zero.
  • an excessive external force is applied to the arm such as a collision with an obstacle, it is possible to prevent the motor from continuously generating torque commensurate with the external force by feedback control, and to minimize the damage received by the robot. can.
  • FIG. 1 is a schematic configuration diagram of the work robot of the present embodiment.
  • FIG. 2 is a block diagram showing an electrical connection relationship between the robot body and the control device.
  • the work robot 10 performs, for example, a machining work of machining a work with a tool, a transport work of gripping the work with a chuck and transporting the work to another position, and an assembly work of gripping the work with a chuck and assembling it to an object.
  • the robot body 20 and the control device 70 are provided.
  • the robot body 20 is configured as a 5-axis vertical articulated robot.
  • the robot body 20 has a base 21 and a plurality of arms (first to fifth arms) connected in series to the base 21 via joint axes (joint axes J1 to J5). 31-35).
  • each joint axis J1 to J5 includes servomotors (first to fifth motors 41 to 45) that rotationally drive the corresponding joint axes, and rotation angles ⁇ 1 to ⁇ 5 of the corresponding servomotors.
  • the rotary encoders (first to fifth encoders 51 to 55) to be detected are arranged.
  • An end effector EF suitable for the work performed by the work robot 10 is attached to the fifth arm 35 arranged at the tip of the first to fifth arms 31 to 35.
  • the control device 70 is configured as a microprocessor centered on the CPU 71, and includes a ROM 72, an HDD 73 (storage device), a RAM 74, an input / output interface (not shown), and the like in addition to the CPU 71.
  • Rotation angles ⁇ 1 to ⁇ 5, which are detection signals from the first to fifth encoders 51 to 55 of the joint axes J1 to J5, are input to the control device 70 via the input / output interface.
  • the control device 70 sends a torque command Tm1 * which is a control signal to the amplifiers (drivers) 61 to 65 that apply a driving current to the first to fifth motors 41 to 45 of the joint axes J1 to J5.
  • ⁇ Tm5 * is output via the input / output interface.
  • an input device 81 such as a mouse or a keyboard and an output device 82 such as a display are also connected to the control device 70.
  • the CPU 71 of the control device 70 first acquires the target position and the target posture of the end effector EF. Subsequently, the CPU 71 calculates the target rotation angles ⁇ 1 * to ⁇ 5 * of the joint axes J1 to J5 for moving the end effector EF to the target position and the target posture by using inverse kinematics. Next, the CPU 71 is subjected to feedback control so that the rotation angles ⁇ 1 to ⁇ 5 of the joint axes J1 to J5 detected by the first to fifth encoders 51 to 55 match the corresponding target rotation angles ⁇ 1 * to ⁇ 5 *. Torque commands Tm1 * to Tm5 * of the 1st to 5th motors 41 to 45 are set and output to the corresponding amplifiers 61 to 65.
  • FIG. 3 is a functional block diagram of motor control.
  • the motor control functional block includes a feedforward torque setting unit 91, a position feedback unit 92, and a speed feedback unit 93.
  • Input the difference ( ⁇ n * - ⁇ n) from n 1, ..., 5), and the target rotation speed Nmn of the corresponding joint axis by proportional integration control or proportional integration differential control based on the input difference ( ⁇ n * - ⁇ n).
  • Each amplifier 61 to 65 inputs the torque of the sum of the corresponding feed forward torque Tfn and the feedback torque Tbn as the torque command Tmn *, and outputs the torque corresponding to the input torque command Tmn * by current feedback control. Apply current to the corresponding motor.
  • FIG. 4 is a flowchart showing an example of the collision determination process executed by the CPU 71 of the control device 70. This process is repeatedly executed at predetermined time intervals (for example, every several msec) while the work robot 10 is performing the work.
  • the CPU 71 of the control device 70 first initializes the variable n to the value 1 (step S100). Subsequently, the CPU 71 inputs the feedback torque Tbn of the corresponding motor of the joint axis Jn and the rotation angle ⁇ n from the corresponding encoder (step S110). Next, the CPU 71 converts the rotation angle ⁇ n into the rotation speed Nmn (step S120), and determines whether or not the rotation speed Nmn is equal to or higher than the predetermined speed Nref (step S130).
  • the first predetermined value ⁇ is set in the collision determination threshold Tref (step S140), and when it is determined that the rotation speed Nmn is less than the predetermined speed Nref, the collision occurs.
  • a second predetermined value ⁇ smaller than the first predetermined value ⁇ is set in the determination threshold Tref (step S150). Then, the CPU 71 determines whether or not the feedback torque Tbn input in step S110 is equal to or greater than the collision determination threshold value Tref (step S160).
  • the CPU 71 determines that the feedback torque Tbn is equal to or greater than the collision determination threshold value Tref, it determines that the arm connected to the joint axis Jn has collided with an obstacle (step S170). On the other hand, when the CPU 71 determines that the feedback torque Tbn is less than the collision determination threshold value Tref, the CPU 71 determines that the arm connected to the joint axis Jn does not collide with an obstacle. Then, the CPU 71 determines whether or not the variable n is the value 5 or more (step S180), and if it is determined that the variable n is less than the value 5, it is determined that there is a joint axis that has not determined the presence or absence of the collision.
  • step S190 the variable n is incremented by a value of 1 (step S190), the process returns to step S110, and the presence or absence of a collision is determined for the next joint axis Jn.
  • the CPU 71 determines that the variable n has a value of 5 or more, it determines that the presence or absence of a collision has been determined for all the joint axes, and ends the collision determination process.
  • the feedback torque Tbn is set based on the difference ( ⁇ n * ⁇ n) between the target rotation angle ⁇ n * and the rotation angle ⁇ n in order to match the rotation angle ⁇ n of the joint axis Jn with the target rotation angle ⁇ n *. Will be done. Therefore, when any of the arms collides with an obstacle and an excessive external force is applied to the arm, the feedback torque Tbn continues to be set to a torque that balances the external force in order to maintain the position and posture of the arm. become.
  • the CPU 71 monitors the feedback torque Tbn set in each joint axis Jn to determine whether or not an excessive external force is applied to either arm, that is, one arm collides with an obstacle.
  • a collision may be erroneously determined. Occurs.
  • the collision determination threshold value Tref is increased or decreased according to the height of the rotation speed Nmn of the joint axis Jn, it is possible to suppress the occurrence of the above-mentioned erroneous determination.
  • FIG. 5 is a flowchart showing an example of a stop process executed by the CPU 71 of the control device 70. This process is executed after the collision determination process is executed.
  • the CPU 71 of the control device 70 first determines whether or not a collision has occurred in any of the arms as a result of the collision determination process described above (step S200). When the CPU 71 determines that no collision has occurred in any of the arms, the CPU 71 ends the stop process. On the other hand, when the CPU 71 determines that a collision has occurred in any of the arms, it initializes the variable n to a value 1 (step S210) and determines whether or not the joint axis Jn is a target axis without a joint (step S220). ..
  • the stress target axis is a joint axis that performs an action such as squeezing an excessive external force applied to the arm due to a collision with an obstacle.
  • the joint axes J1 to J5 selected in advance by the user via the input device 81 are set as the target axes.
  • the CPU 71 determines that the joint axis Jn is the target axis without a joint axis, the CPU 71 sets the torque command Tmn * of the corresponding motor of the joint axis Jn to a value of 0 (step S230).
  • the torque of the corresponding motor of the joint axis Jn is such that the arm connected to the joint axis Jn normally stops.
  • the command Tmn * is set (step S240). Specifically, for normal stop, a torque command Tmn * is set so that a torque (self-weight equilibrium torque) that cancels the moment due to the weight of the arm connected to the joint shaft Jn is output from the corresponding motor of the joint shaft Jn. It is done by doing.
  • the CPU 71 determines whether or not the variable n is the value 5 or more (step S250), and if it is determined that the variable n is less than the value 5, the variable n is incremented by the value 1 (step S260). Returning to step S220, the torque command Tmn * of the corresponding motor of the next joint axis Jn is set. On the other hand, when the CPU 71 determines that the variable n is a value of 5 or more, it determines that the torque command Tmn * of the corresponding motors of all the joint axes Jn has been set, and ends the stop process.
  • the CPU 71 sets a value of 0 in the torque command Tmn * of the corresponding motor for the joint axis J1 to J5, which is the target axis. ..
  • the arm connected to the target shaft is moved by the external force applied by the collision, so that the external force can be relieved. Therefore, it is possible to avoid the continuous application of an excessive external force to the arm and minimize the damage to the working robot 10.
  • the CPU 71 sets a torque for normal stop (self-weight equilibrium torque) in the torque command Tmn * of the corresponding motor for the non-non-existent target axis of the joint axes J1 to J5.
  • a joint axis having a driving component in the direction of gravity as a non-null target axis
  • the first to fifth joint axes J1 to J5 of the present embodiment correspond to joints
  • the first to fifth arms 31 to 35 correspond to a plurality of arms
  • the amplifiers (drivers) 61 to 65 correspond to drive units.
  • the control device 70 corresponds to the control unit.
  • the joint axis J1 to J5 selected by the user via the input device 81 is set as the non-native target axis (non-null target axis).
  • the no-no target axis may be predetermined.
  • the joint axes J1, J4, J5 are set as the joint axes
  • the joint axes J2, J3 are set as the non-joint axes. It is desirable that a joint axis having a driving component in the direction of gravity is defined as a non-existent target axis in order to prevent the robot from falling due to its own weight.
  • the CPU 71 sets the first predetermined value ⁇ in the collision determination threshold Tref, and the rotation speed Nmn of the joint axis Jn is the predetermined speed. If it is less than Nref, a second predetermined value ⁇ smaller than the first predetermined value ⁇ is set in the collision determination threshold Tref. However, the CPU 71 may set the collision determination threshold value Tref so that the rotation speed Nmn of the joint axis Jn decreases as the rotation speed Nmn decreases. Further, the CPU 71 may set a constant value in the collision determination threshold value Tref regardless of the rotation speed Nmn of the joint axis Jn.
  • the working robot 10 is configured as a vertical articulated robot, but the robot 10 is not limited to this and may be configured as a horizontal articulated robot.
  • the joint axis that rotates horizontally among the joint axes is set as the target axis, and the joint axis that moves up and down is set as the non-joint axis. It is desirable to be done.
  • the articulated robot of the present disclosure is an articulated robot having a plurality of arms connected via joints, and is a plurality of motors for rotating the plurality of arms and the plurality of motors.
  • the torque commands of the plurality of motors are set by feedback control so that the positions of the drive unit and the plurality of arms reach the target positions, and the torques of the plurality of motors are monitored. It is a gist to include a control unit that sets a torque command of at least one of the plurality of motors to zero when the torque of any of the plurality of motors exceeds a threshold value.
  • the articulated robot of the present disclosure sets torque commands of a plurality of motors by feedback control so that the positions of the plurality of arms reach the target positions, and monitors the torques of the plurality of motors. Then, when the torque of any one of the plurality of motors exceeds the threshold value, the articulated robot sets the torque command of at least one of the plurality of motors to zero.
  • an excessive external force is applied to the arm such as a collision with an obstacle, it is possible to prevent the motor from continuously generating torque commensurate with the external force by feedback control, and to minimize the damage received by the robot. can.
  • the control unit has a feed forward torque for outputting a torque including a torque commensurate with the own weight of the arm and a feedback torque for bringing the position of the arm closer to the target position.
  • the torque command of the corresponding motor may be set based on the sum, and the torque of the corresponding motor may be monitored by the feedback torque.
  • the feedback torque is set to a torque that is commensurate with the external force in order to maintain the posture of the arm when an external force is applied to the arm. Therefore, by monitoring the feedback torque, the collision of the arm can be determined more accurately.
  • the threshold value may be set to a smaller value when the rotation speed of the motor is less than the predetermined speed as compared with the case where the rotation speed is equal to or higher than the predetermined speed. In this way, the collision of the arm can be determined more accurately regardless of the rotation speed of the motor.
  • the control unit when the torque of any of the plurality of motors exceeds the threshold value, the control unit sets the torque command of some of the plurality of motors to zero.
  • the torque command of the other motor may be set so that the corresponding arm is stopped from the other motor and the torque corresponding to the own weight of the stopped arm is output.
  • the other motor may be a motor containing a driving component in the direction of gravity. In this way, it is possible to prevent the arm from falling due to its own weight while appropriately applying an external force applied to the arm by a part of the joint shafts.
  • This disclosure can be used in the manufacturing industry of articulated robots and the like.
  • 10 work robot 20 robot body, 21 base, 31 1st arm, 32 2nd arm, 33 3rd arm, 34 4th arm, 35 5th arm, 41 1st motor, 42 2nd motor, 43 3rd motor , 44 4th motor, 45 5th motor, 51, 1st encoder, 52 2nd encoder, 53 3rd encoder, 54 4th encoder, 55 5th encoder, 61-65 amplifier, 70 control device, 71 CPU, 72 ROM, 73 HDD, 74 RAM, 81 input device, 82 output device, 91 feed forward torque setting unit, 92 position feedback unit, 93 speed feedback unit, 94 angle / speed conversion unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

多関節ロボットは、関節を介して連結された複数のアームと、複数のアームを回動させる複数のモータと、複数のモータをそれぞれ対応するトルク指令に基づいて駆動する駆動部と、制御部と、を備える。制御部は、複数のアームの位置が目標位置に達するようフィードバック制御により複数のモータのトルク指令を設定すると共に複数のモータのトルクを監視し、複数のモータのうちいずれかのモータのトルクが閾値を超えると、複数のモータのうち少なくとも一つのモータのトルク指令を零に設定する。

Description

多関節ロボット
 本明細書は、多関節ロボットについて開示する。
 従来、ロボットアームが障害物に衝突したことが検知されると、ロボットを停止させる多関節ロボットが知られている。例えば、特許文献1には、ロボットアームと、トルク指令を指令する制御部と、制御部が供給する電流により回転してロボットアームを駆動するサーボモータと、サーボモータの位置を検出するエンコーダと、衝突検出装置と、衝突検出装置監視部と、ロボット停止処理部と、を備える多関節ロボットが開示されている。衝突検出装置は、制御部のトルク指令とエンコーダの回転信号を受けてロボットアームが受ける外乱を推定する。衝突検出装置監視部は、推定された外乱トルクが既定値以上になったとき、衝突が生じていると判断する。ロボット停止処理部は、衝突検出装置監視部で衝突と判断されると、ロボットを停止させる。
特開2010-137312号公報
 しかしながら、多関節ロボットは、アームに過大な外力が加わったときに、アームの停止のさせ方によっては、アームから外力に釣り合うトルクが出力され続け、ダメージを受ける場合がある。
 本開示は、アームに過大な外力が加わったときに、モータから外力に釣り合うトルクが発生され続けるのを回避して、ロボットが受けるダメージを最小限にすることができる多関節ロボットを提供することを主目的とする。
 本開示は、上述の主目的を達成するために以下の手段を採った。
 本開示の多関節ロボットは、
 関節を介して連結された複数のアームを有する多関節ロボットであって、
 前記複数のアームを回動させる複数のモータと、
 前記複数のモータをそれぞれ対応するトルク指令に基づいて駆動する駆動部と、
 前記複数のアームの位置が目標位置に達するようフィードバック制御により前記複数のモータのトルク指令を設定すると共に前記複数のモータのトルクを監視し、前記複数のモータのうちいずれかのモータのトルクが閾値を超えると、前記複数のモータのうち少なくとも一つのモータのトルク指令を零に設定する制御部と、
 を備えることを要旨とする。
 この本開示の多関節ロボットは、複数のアームの位置が目標位置に達するようフィードバック制御により複数のモータのトルク指令を設定すると共に複数のモータのトルクを監視する。そして、多関節ロボットは、複数のモータのうちいずれかのモータのトルクが閾値を超えると、複数のモータのうち少なくとも一つのモータのトルク指令を零に設定する。これにより、障害物との衝突などアームに過大な外力が加わったときに、フィードバック制御によりモータから外力に釣り合うトルクが発生され続けるのを回避して、ロボットが受けるダメージを最小限にすることができる。
本実施形態の作業ロボットの概略構成図である。 ロボット本体と制御装置との電気的な接続関係を示すブロック図である。 モータ制御の機能ブロック図である。 衝突判定処理の一例を示すフローチャートである。 停止処理の一例を示すフローチャートである。
 次に、本開示を実施するための形態について図面を参照しながら説明する。
 図1は、本実施形態の作業ロボットの概略構成図である。図2は、ロボット本体と制御装置との電気的な接続関係を示すブロック図である。作業ロボット10は、例えば、工具でワークを加工する加工作業やチャックでワークを把持して別位置へ搬送する搬送作業、チャックでワークを把持して対象物に組み付ける組付作業などの作業を行なうものであり、図示するように、ロボット本体20と制御装置70と備える。
 ロボット本体20は、本実施形態では、5軸の垂直多関節ロボットとして構成されている。このロボット本体20は、図1に示すように、ベース21と、ベース21に対して各関節軸(関節軸J1~J5)を介して直列に接続された複数のアーム(第1~第5アーム31~35)と、を備える。各関節軸J1~J5には、図2に示すように、対応する関節軸を回転駆動するサーボモータ(第1~第5モータ41~45)と、対応するサーボモータの回転角度Θ1~Θ5を検出するロータリエンコーダ(第1~第5エンコーダ51~55)とが配置されている。
 第1~第5アーム31~35のうち先端に配置される第5アーム35には、作業ロボット10が行なう作業に適したエンドエフェクタEFが装着される。
 制御装置70は、図2に示すように、CPU71を中心としたマイクロプロセッサとして構成され、CPU71の他に、ROM72やHDD73(記憶装置)、RAM74、入出力インタフェース(図示せず)などを備える。制御装置70には、各関節軸J1~J5の第1~第5エンコーダ51~55からの検知信号である回転角度Θ1~Θ5が入出力インタフェースを介して入力される。また、制御装置70からは、各関節軸J1~J5の第1~第5モータ41~45に駆動用の電流を印加する各アンプ(ドライバ)61~65への制御信号であるトルク指令Tm1*~Tm5*が入出力インタフェースを介して出力される。更に、制御装置70には、マウスやキーボードなどの入力装置81や、ディスプレイなどの出力装置82も接続されている。
 次に、こうして構成された作業ロボット10の動作について説明する。制御装置70のCPU71は、まず、エンドエフェクタEFの目標位置および目標姿勢を取得する。続いて、CPU71は、エンドエフェクタEFを目標位置および目標姿勢に移動させるための各関節軸J1~J5の目標回転角度Θ1*~Θ5*を逆運動学を用いて計算する。次に、CPU71は、第1~第5エンコーダ51~55により検出される各関節軸J1~J5の回転角度Θ1~Θ5が対応する目標回転角度Θ1*~Θ5*に一致するようフィードバック制御により第1~第5モータ41~45のトルク指令Tm1*~Tm5*を設定して対応するアンプ61~65に出力する。
 図3は、モータ制御の機能ブロック図である。図示するように、モータ制御の機能ブロックとしては、フィードフォワードトルク設定部91と、位置フィードバック部92と、速度フィードバック部93と、を有する。フィードフォワードトルク設定部91は、各関節軸Jn(n=1,…,5)に連結されるアームの自重によるモーメントを相殺するトルク(自重釣り合いトルク)を計算してフィードフォワードトルクTfn(n=1,…,5)を設定する。位置フィードバック部92は、各関節軸Jn(n=1,…,5)の目標回転角度Θn*(n=1,…,5)と第1~第5エンコーダ51~55からの回転角度Θn(n=1,…,5)との差分(Θn*-Θn)を入力し、入力した差分(Θn*-Θn)に基づく比例積分制御あるいは比例積分微分制御によって対応する関節軸の目標回転速度Nmn*(n=1,…,5)を設定する。速度フィードバック部93は、位置フィードバック部92で設定された各関節軸J1~J5の目標回転速度Nmn*と回転角度Θnから角度/速度変換部94によって変換された回転速度Nmn(n=1,…,5)との差分(Nmn*-Nmn)を入力し、入力した差分(Nmn*-Nmn)に基づく比例積分制御あるいは比例積分微分制御によってフィードバックトルクTbn(n=1,…,5)を設定する。各アンプ61~65は、対応するフィードフォワードトルクTfnとフィードバックトルクTbnとの和のトルクをトルク指令Tmn*として入力し、入力したトルク指令Tmn*に応じたトルクが出力されるよう電流フィードバック制御によって対応するモータに電流を印加する。
 次に、作業ロボット10のアーム(第1から第5アーム31~35のいずれか)が障害物に衝突した際の動作について説明する。まず、アームが障害物に衝突したか否かを判定する動作を説明し、次に、アームが衝突したと判定した際にアームを停止させるための動作を説明する。図4は、制御装置70のCPU71により実行される衝突判定処理の一例を示すフローチャートである。この処理は、作業ロボット10が作業を行なっている最中に所定時間毎(例えば、数msec毎)に繰り返し実行される。
 衝突判定処理が実行されると、制御装置70のCPU71は、まず、変数nを値1に初期化する(ステップS100)。続いて、CPU71は、関節軸Jnの対応するモータのフィードバックトルクTbnと対応するエンコーダからの回転角度Θnとを入力する(ステップS110)。次に、CPU71は、回転角度Θnを回転速度Nmnに変換し(ステップS120)、回転速度Nmnが所定速度Nref以上であるか否かを判定する(ステップS130)。CPU71は、回転速度Nmnが所定速度Nref以上であると判定すると、衝突判定閾値Trefに第1所定値αを設定し(ステップS140)、回転速度Nmnが所定速度Nref未満であると判定すると、衝突判定閾値Trefに第1所定値αよりも小さい第2所定値βを設定する(ステップS150)。そして、CPU71は、ステップS110で入力したフィードバックトルクTbnが衝突判定閾値Tref以上であるか否かを判定する(ステップS160)。CPU71は、フィードバックトルクTbnが衝突判定閾値Tref以上であると判定すると、関節軸Jnに連結されているアームが障害物と衝突したと判定する(ステップS170)。一方、CPU71は、フィードバックトルクTbnが衝突判定閾値Tref未満であると判定すると、関節軸Jnに連結されているアームは障害物と衝突していないと判定する。そして、CPU71は、変数nが値5以上であるか否かを判定し(ステップS180)、変数nが値5未満であると判定すると、衝突の有無を判定していない関節軸があると判断し、変数nを値1だけインクリメントして(ステップS190)、ステップS110に戻り、次の関節軸Jnについて衝突の有無を判定する。一方、CPU71は、変数nが値5以上であると判定すると、全ての関節軸に対して衝突の有無を判定したと判断して、衝突判定処理を終了する。
 上述したように、フィードバックトルクTbnは、関節軸Jnの回転角度Θnを目標回転角度Θn*に一致させるために目標回転角度Θn*と回転角度Θnとの差分(Θn*-Θn)に基づいて設定される。このため、いずれかのアームが障害物に衝突して当該アームに過大な外力が加わると、フィードバックトルクTbnには、アームの位置および姿勢を保持するために当該外力と釣り合うトルクが設定され続けることになる。本実施形態では、CPU71は、各関節軸Jnにおいて設定されるフィードバックトルクTbnを監視することで、いずれかのアームに過大な外力が加わったか否か、すなわち、いずれかのアームが障害物に衝突したか否かを判定することができる。ここで、関節軸Jnの回転速度Nmnが高速(所定速度Nref以上)である場合には、目標回転角度Θn*と回転角度Θnとの差分が比較的大きく、フィードバックトルクTbnには、比較的大きなトルクが設定される。一方、関節軸Jnの回転速度Nmnが低速(所定速度Nref未満)である場合には、目標回転角度Θn*と回転角度Θnとの差分が比較的小さく、フィードバックトルクTbnには、比較的小さなトルクが設定される。このため、関節軸Jnの回転速度Nmnに拘わらず一律の値を衝突判定閾値Trefに設定してフィードバックトルクTbnと衝突判定閾値Trefとの比較により衝突判定を行なうと、衝突を誤判定するおそれが生じる。本実施形態では、関節軸Jnの回転速度Nmnの高低に応じて衝突判定閾値Trefを高低するから、上述した誤判定が生じるのを抑制することができる。
 次に、衝突が発生した際にアームを停止させる処理について説明する。図5は、制御装置70のCPU71により実行される停止処理の一例を示すフローチャートである。この処理は、衝突判定処理が実行された後に実行される。
 停止処理が実行されると、制御装置70のCPU71は、まず、上述した衝突判定処理の結果として、いずれかのアームに衝突が発生したか否かを判定する(ステップS200)。CPU71は、いずれのアームにも衝突が発生していないと判定すると、停止処理を終了する。一方、CPU71は、いずれかのアームに衝突が発生したと判定すると、変数nを値1に初期化し(ステップS210)、関節軸Jnがいなし対象軸であるか否かを判定する(ステップS220)。ここで、いなし対象軸とは、障害物との衝突によりアームに加わる過大な外力をいなすような動作を行なう関節軸である。本実施形態では、いなし対象軸には、関節軸J1~J5のうち入力装置81を介してユーザにより予め選択されたものが設定されるものとした。CPU71は、関節軸Jnがいなし対象軸であると判定すると、当該関節軸Jnの対応するモータのトルク指令Tmn*を値0に設定する(ステップS230)。一方、CPU71は、関節軸Jnがいなし対象軸でない(非いなし対象軸である)と判定すると、当該関節軸Jnに連結されるアームが通常停止するよう当該関節軸Jnの対応するモータのトルク指令Tmn*を設定する(ステップS240)。通常停止は、具体的には、関節軸Jnに連結されるアームの自重によるモーメントを相殺するトルク(自重釣り合いトルク)が当該関節軸Jnの対応するモータから出力されるようトルク指令Tmn*を設定することにより行なわれる。そして、CPU71は、変数nが値5以上であるか否かを判定し(ステップS250)、変数nが値5未満であると判定すると、変数nを値1だけインクリメントして(ステップS260)、ステップS220に戻り、次の関節軸Jnの対応するモータのトルク指令Tmn*を設定する。一方、CPU71は、変数nが値5以上であると判定すると、全ての関節軸Jnの対応するモータのトルク指令Tmn*を設定したと判断して、停止処理を終了する。
 このように、本実施形態では、CPU71は、いずれかのアームに衝突が発生すると、関節軸J1~J5のうちいなし対象軸については、対応するモータのトルク指令Tmn*に値0を設定する。これにより、いなし対象軸に連結されるアームは、衝突により加わる外力によって移動させられることで、当該外力をいなすことができる。したがって、アームに過大な外力が継続して加わるのを回避して、作業ロボット10が受けるダメージを最小限にすることが可能となる。また、CPU71は、関節軸J1~J5のうち非いなし対象軸については、対応するモータのトルク指令Tmn*に通常停止用のトルク(自重釣り合いトルク)を設定する。これにより、例えば、非いなし対象軸として、重力方向に駆動成分を有する関節軸が指定されることで、自重によるアームの落下を防止することが可能となる。
 ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態の第1~第5関節軸J1~J5が関節に相当し、第1~第5アーム31~35が複数のアームに相当し、アンプ(ドライバ)61~65が駆動部に相当し、制御装置70が制御部に相当する。
 なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
 例えば、上述した実施形態では、いなし対象軸(非いなし対象軸)は、関節軸J1~J5のうち入力装置81を介してユーザにより選択されたものが設定されるものとした。しかし、いなし対象軸(非いなし対象軸)は、予め定められてもよい。この場合、例えば、本実施形態のロボット本体20(垂直多関節ロボット)において、いなし対象軸を関節軸J1,J4,J5とし、非いなし対象軸を関節軸J2,J3とするなど、アームが自重によって落下するのを防止するために、非いなし対象軸として、重力方向に駆動成分を有する関節軸が定められることが望ましい。
 上述した実施形態では、CPU71は、関節軸Jnの回転速度Nmnが所定速度Nref以上の場合には、衝突判定閾値Trefに第1所定値αを設定し、関節軸Jnの回転速度Nmnが所定速度Nref未満の場合には、衝突判定閾値Trefに第1所定値αよりも小さい第2所定値βを設定を設定するものとした。しかし、CPU71は、関節軸Jnの回転速度Nmnが低くなるにつれて小さくなるように衝突判定閾値Trefを設定してもよい。また、CPU71は、関節軸Jnの回転速度Nmnに拘わらず衝突判定閾値Trefに一定値を定めても差し支えない。
 上述した本実施形態では、作業ロボット10は、垂直多関節ロボットとして構成されたが、これに限られず、水平多関節ロボットとして構成されてもよい。水平多関節ロボットにおいて、アームの落下を防止するために、いなし対象軸には、各関節軸のうち水平旋回する関節軸が設定され、非いなし対象軸には、昇降する関節軸が設定されることが望ましい。
 以上説明したように、本開示の多関節ロボットは、関節を介して連結された複数のアームを有する多関節ロボットであって、前記複数のアームを回動させる複数のモータと、前記複数のモータをそれぞれ対応するトルク指令に基づいて駆動する駆動部と、前記複数のアームの位置が目標位置に達するようフィードバック制御により前記複数のモータのトルク指令を設定すると共に前記複数のモータのトルクを監視し、前記複数のモータのうちいずれかのモータのトルクが閾値を超えると、前記複数のモータのうち少なくとも一つのモータのトルク指令を零に設定する制御部と、を備えることを要旨とする。
 この本開示の多関節ロボットは、複数のアームの位置が目標位置に達するようフィードバック制御により複数のモータのトルク指令を設定すると共に複数のモータのトルクを監視する。そして、多関節ロボットは、複数のモータのうちいずれかのモータのトルクが閾値を超えると、複数のモータのうち少なくとも一つのモータのトルク指令を零に設定する。これにより、障害物との衝突などアームに過大な外力が加わったときに、フィードバック制御によりモータから外力に釣り合うトルクが発生され続けるのを回避して、ロボットが受けるダメージを最小限にすることができる。
 こうした本開示の多関節ロボットにおいて、前記制御部は、前記アームの自重と釣り合うトルクを含むトルクを出力するためのフィードフォワードトルクと、前記アームの位置を前記目標位置へ近づけるためのフィードバックトルクとの和に基づいて対応するモータのトルク指令を設定すると共に前記フィードバックトルクにより前記対応するモータのトルクを監視するものとしてもよい。フィードバックトルクには、アームに外力が加わった際に当該アームの姿勢を維持するために外力に釣り合うトルクが設定される。したがって、フィードバックトルクを監視することで、アームの衝突をより正確に判定することができる。
 また、本開示の多関節ロボットにおいて、前記閾値は、前記モータの回転速度が所定速度未満の場合には前記所定速度以上の場合に比して小さな値が設定されるものとしてもよい。こうすれば、モータの回転速度に拘わらずアームの衝突をより正確に判定することができる。
 さらに、本開示の多関節ロボットにおいて、前記制御部は、前記複数のモータのうちいずれかのモータのトルクが前記閾値を超えると、前記複数のモータのうち一部のモータのトルク指令を零に設定すると共に、他のモータから対応するアームを停止させると共に停止させたアームの自重と釣り合うトルクが出力されるよう該他のモータのトルク指令を設定するものとしてもよい。この場合、前記他のモータは、重力方向の駆動成分を含むモータであるものとしてもよい。こうすれば、アームに加わる外力を一部の関節軸によって適切にいなしつつ、自重によりアームが落下するのを防止することができる。
 本開示は、多関節ロボットの製造産業などに利用可能である。
 10 作業ロボット、20 ロボット本体、21 ベース、31 第1アーム、32 第2アーム、33 第3アーム、34 第4アーム、35 第5アーム、41 第1モータ、42 第2モータ、43 第3モータ、44 第4モータ、45 第5モータ、51、第1エンコーダ、52 第2エンコーダ、53 第3エンコーダ、54 第4エンコーダ、55 第5エンコーダ、61~65 アンプ、70 制御装置、71 CPU、72 ROM、73 HDD、74 RAM、81 入力装置、82 出力装置、91 フィードフォワードトルク設定部、92 位置フィードバック部、93 速度フィードバック部、94 角度/速度変換部。

Claims (5)

  1.  関節を介して連結された複数のアームを有する多関節ロボットであって、
     前記複数のアームを回動させる複数のモータと、
     前記複数のモータをそれぞれ対応するトルク指令に基づいて駆動する駆動部と、
     前記複数のアームの位置が目標位置に達するようフィードバック制御により前記複数のモータのトルク指令を設定すると共に前記複数のモータのトルクを監視し、前記複数のモータのうちいずれかのモータのトルクが閾値を超えると、前記複数のモータのうち少なくとも一つのモータのトルク指令を零に設定する制御部と、
     を備える多関節ロボット。
  2.  請求項1に記載の多関節ロボットであって、
     前記制御部は、前記アームの自重と釣り合うトルクを含むトルクを出力するためのフィードフォワードトルクと、前記アームの位置を前記目標位置へ近づけるためのフィードバックトルクとの和に基づいて対応するモータのトルク指令を設定すると共に前記フィードバックトルクにより前記対応するモータのトルクを監視する、
     多関節ロボット。
  3.  請求項1または2に記載の多関節ロボットであって、
     前記閾値は、前記モータの回転速度が所定速度未満の場合には前記所定速度以上の場合に比して小さな値が設定される、
     多関節ロボット。
  4.  請求項1ないし3いずれか1項に記載の多関節ロボットであって、
     前記制御部は、前記複数のモータのうちいずれかのモータのトルクが前記閾値を超えると、前記複数のモータのうち一部のモータのトルク指令を零に設定すると共に、他のモータから対応するアームを停止させると共に停止させたアームの自重と釣り合うトルクが出力されるよう該他のモータのトルク指令を設定する、
     多関節ロボット。
  5.  請求項4に記載の多関節ロボットであって、
     前記他のモータは、重力方向の駆動成分を含むモータである、
     多関節ロボット。
PCT/JP2020/011565 2020-03-16 2020-03-16 多関節ロボット WO2021186518A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022508631A JP7422215B2 (ja) 2020-03-16 2020-03-16 多関節ロボット
PCT/JP2020/011565 WO2021186518A1 (ja) 2020-03-16 2020-03-16 多関節ロボット

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/011565 WO2021186518A1 (ja) 2020-03-16 2020-03-16 多関節ロボット

Publications (1)

Publication Number Publication Date
WO2021186518A1 true WO2021186518A1 (ja) 2021-09-23

Family

ID=77770920

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/011565 WO2021186518A1 (ja) 2020-03-16 2020-03-16 多関節ロボット

Country Status (2)

Country Link
JP (1) JP7422215B2 (ja)
WO (1) WO2021186518A1 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002283276A (ja) * 2001-03-21 2002-10-03 Daihen Corp 多関節ロボットにおける衝突検出・停止制御法
JP2003216243A (ja) * 2002-01-18 2003-07-31 Yaskawa Electric Corp ロボットの制御装置
JP2005059171A (ja) * 2003-08-18 2005-03-10 Kawasaki Heavy Ind Ltd 駆動手段の制御方法および制御装置
JP2006123012A (ja) * 2004-10-26 2006-05-18 Matsushita Electric Ind Co Ltd ロボットの制御方法
JP2007265028A (ja) * 2006-03-28 2007-10-11 Kawasaki Heavy Ind Ltd 駆動体の制御装置および制御方法
DE102016210060A1 (de) * 2016-06-08 2017-12-14 Kuka Roboter Gmbh Verfahren zum sicheren Stillsetzen eines Manipulators

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7741802B2 (en) 2005-12-20 2010-06-22 Intuitive Surgical Operations, Inc. Medical robotic system with programmably controlled constraints on error dynamics
JP5446896B2 (ja) 2010-01-14 2014-03-19 株式会社安川電機 基板搬送装置
KR102424485B1 (ko) 2017-12-13 2022-07-25 버브 서지컬 인크. 로봇 조작기의 위치설정을 위한 제어 모드 및 프로세스

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002283276A (ja) * 2001-03-21 2002-10-03 Daihen Corp 多関節ロボットにおける衝突検出・停止制御法
JP2003216243A (ja) * 2002-01-18 2003-07-31 Yaskawa Electric Corp ロボットの制御装置
JP2005059171A (ja) * 2003-08-18 2005-03-10 Kawasaki Heavy Ind Ltd 駆動手段の制御方法および制御装置
JP2006123012A (ja) * 2004-10-26 2006-05-18 Matsushita Electric Ind Co Ltd ロボットの制御方法
JP2007265028A (ja) * 2006-03-28 2007-10-11 Kawasaki Heavy Ind Ltd 駆動体の制御装置および制御方法
DE102016210060A1 (de) * 2016-06-08 2017-12-14 Kuka Roboter Gmbh Verfahren zum sicheren Stillsetzen eines Manipulators

Also Published As

Publication number Publication date
JP7422215B2 (ja) 2024-01-25
JPWO2021186518A1 (ja) 2021-09-23

Similar Documents

Publication Publication Date Title
US10029369B1 (en) Collaborative robot
US8335591B2 (en) Robot apparatus and method of controlling the same
US9821459B2 (en) Multi-joint robot having function for repositioning arm
JP5327722B2 (ja) ロボットの負荷推定装置及び負荷推定方法
JP5191738B2 (ja) マニピュレータの制御方法および制御システム
EP3238893B1 (en) Robot system
JP4294646B2 (ja) ロボットアームの制御方法および制御装置
CN106003101B (zh) 机器人控制装置以及机器人系统
US10173323B2 (en) Collaborative robot
US10864632B2 (en) Direct teaching method of robot
US20140366673A1 (en) Robot
JP6924563B2 (ja) 位置決め制御装置の制御方法及び位置決め制御装置
JP2016168650A5 (ja)
CN110340885B (zh) 一种基于能量偏差观测器的工业机器人碰撞检测方法
WO2021186518A1 (ja) 多関節ロボット
US11878429B2 (en) Robot control apparatus, robot control system, and robot control method
JP2021030364A (ja) ロボット制御装置
US9827673B2 (en) Robot controller inhibiting shaking of tool tip in robot equipped with travel axis
JPH01310889A (ja) 産業用ロボットの制御装置
JPH06155346A (ja) ロボットの教示装置
Van Toan et al. Application of fuzzy logic to damping controller for safe human-robot interaction
Shimamoto et al. Performance Evaluation of Force Control and Reaction Force Estimation in Force Sensorless Hybrid Control for Workspace Based Controller
JP2023122808A (ja) ロボットの衝突検出方法及びロボットの衝突検出装置
US20210187743A1 (en) Robot controlling device
JP2020104178A (ja) ロボット装置、ロボット装置の制御方法、ロボット装置を用いた物品の製造方法、制御プログラム及び記録媒体

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20925006

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022508631

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20925006

Country of ref document: EP

Kind code of ref document: A1