JP2024014341A - Collison detection method of robot and collision detection device of robot - Google Patents

Collison detection method of robot and collision detection device of robot Download PDF

Info

Publication number
JP2024014341A
JP2024014341A JP2022117098A JP2022117098A JP2024014341A JP 2024014341 A JP2024014341 A JP 2024014341A JP 2022117098 A JP2022117098 A JP 2022117098A JP 2022117098 A JP2022117098 A JP 2022117098A JP 2024014341 A JP2024014341 A JP 2024014341A
Authority
JP
Japan
Prior art keywords
speed
robot
collision detection
motor
threshold value
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.)
Pending
Application number
JP2022117098A
Other languages
Japanese (ja)
Inventor
徹也 猪股
Tetsuya Inomata
▲カク▼ 王
Guak Wang
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.)
Nidec Instruments Corp
Original Assignee
Nidec Instruments Corp
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 Nidec Instruments Corp filed Critical Nidec Instruments Corp
Priority to JP2022117098A priority Critical patent/JP2024014341A/en
Priority to CN202310892224.7A priority patent/CN117428755A/en
Publication of JP2024014341A publication Critical patent/JP2024014341A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Container, Conveyance, Adherence, Positioning, Of Wafer (AREA)

Abstract

PROBLEM TO BE SOLVED: To quickly and surely detect occurrence of collision of a robot, in small calculation loads, even when the robot moves at a low speed.
SOLUTION: A collision detection device, which detects occurrence of collision of a robot 10 whose shafts are driven by a motor 11, comprises: a threshold generation part 53 that generates a threshold (a collision detection limit value); a comparison part 54 that compares the threshold with a torque value of the motor and determines that collision occurs when the torque value surpasses the threshold; and a storage part 55 that stores a collision detection limit table preliminarily storing a threshold for each whole speed, for each stage and for each shaft. When the robot 10 is moved by CP control between an entering position of the stage and a stage position for each stage, the threshold generation part 53 supplies a threshold obtained with reference to the collision detection limit table to the comparison part 54. The whole speed is a speed as a whole of the robot 10 that is operated by CP control.
SELECTED DRAWING: Figure 1
COPYRIGHT: (C)2024,JPO&INPIT

Description

本発明は、ロボットにおける衝突の発生を検出する方法及び装置に関する。 The present invention relates to a method and apparatus for detecting the occurrence of a collision in a robot.

ワークの搬送などに用いられるロボットは、動作中にそのアームなどが周囲の物体と干渉して衝突することがある。動作中に衝突が起きたときは、直ちにそれを検出してロボットの動作を緊急に停止させるなどの処理を行う必要がある。ロボットにおける衝突の検出には、そのアームやアーム先端のハンドなどに取り付けられた衝突センサを用いることができる。しかしながら衝突センサを設けることは、コストの上昇をもたらす。さらに、衝突センサの質量がロボットの動特性に悪影響を及ぼすことがあり、また、ロボットの構造によっては衝突センサへの配線を設けることが困難な場合もある。衝突センサによらずに衝突を検出する方法として、ロボットの各軸のサーボモータにおけるトルクを監視する方法がある。衝突が起きてロボットの動きが阻害されると、対応する軸のサーボモータのトルクが急激に上昇するので、閾値との比較によりトルクの上昇を検出した場合、衝突が発生したと判断することができる。この方法では、外部からの指令に応じてロボットを正常に動作させているときであっても指令の内容によってはトルクが大きく上昇することがあるので、衝突が発生したと判定するための閾値すなわち衝突検出リミット値を適切に設定する必要がある。平常運転において発生し得るトルクよりも小さな衝突検出リミット値を設定すると、平常運転時において衝突の発生を誤検出することになる。一般にトルクはモータの速度が大きいほど大きくなるから、誤検出を防ぐためには、モータが最大速度で駆動されるときトルクよりも大きな値に衝突検出リミット値を設定する必要がある。 Robots used for transporting workpieces may have their arms interfere with surrounding objects and collide with them during operation. When a collision occurs during operation, it is necessary to immediately detect it and take steps such as stopping the robot's operation immediately. To detect a collision in a robot, a collision sensor attached to the arm or the hand at the tip of the arm can be used. However, providing a collision sensor results in an increase in cost. Furthermore, the mass of the collision sensor may adversely affect the dynamic characteristics of the robot, and depending on the structure of the robot, it may be difficult to provide wiring to the collision sensor. As a method for detecting a collision without using a collision sensor, there is a method of monitoring the torque in the servo motor of each axis of the robot. When a collision occurs and the robot's movement is obstructed, the torque of the servo motor of the corresponding axis increases rapidly, so if a rise in torque is detected by comparing it with a threshold, it can be determined that a collision has occurred. can. In this method, even when the robot is operating normally in response to an external command, the torque may increase significantly depending on the contents of the command, so the threshold value for determining that a collision has occurred is Collision detection limit values need to be set appropriately. If a collision detection limit value is set smaller than the torque that can occur during normal operation, the occurrence of a collision will be erroneously detected during normal operation. Generally, the torque increases as the motor speed increases, so in order to prevent false detection, it is necessary to set the collision detection limit value to a value larger than the torque when the motor is driven at maximum speed.

最大速度での駆動に必要なトルクよりも大きな値に衝突検出リミット値を設定したときは、モータの速度が小さいときに衝突の検出を的確に行うことができない、という課題を生ずる。低速であればモータのトルクも小さく、衝突や干渉があったときのトルクの上昇も小さい。したがって、最大速度に対応した衝突検出リミット値を使用したときは、程度の小さな衝突や干渉を検出できない恐れがある。あるいは、衝突や干渉がある程度進行してから初めてその衝突や干渉を検出する、すなわち検出にタイムラグが生ずるおそれがある。 When the collision detection limit value is set to a value larger than the torque required for driving at the maximum speed, a problem arises in that collisions cannot be accurately detected when the motor speed is small. If the speed is low, the motor torque is small, and the increase in torque when there is a collision or interference is also small. Therefore, when a collision detection limit value corresponding to the maximum speed is used, there is a possibility that a small collision or interference cannot be detected. Alternatively, the collision or interference may be detected only after the collision or interference has progressed to a certain extent, that is, a time lag may occur in the detection.

ロボットでの衝突発生を速やかかつ確実に検出できる技術として特許文献1は、位置指令、速度指令及び加速度指令の少なくとも1つから演算した必要駆動トルク指令要素と各軸を駆動するモータの位置、速度及び加速度の少なくとも1つとから、ロボットの運動方程式の再計算を行うことなく必要駆動トルクを算出し、算出された必要駆動トルクと各軸のモータの電流とを比較することにより衝突の発生の判別を行うことを開示している。特許文献2は、ワークを保持しているか否かに応じて駆動トルクが変化するという状況において衝突の発生を確実に検出するために、ワークの荷重がロボットに伝達されない状態とワークの荷重がロボットに伝達される状態との間の状態遷移を認識してどちらの状態であるか応じて異なる閾値を使用し、外乱推定値をこの閾値と比較して衝突の検出を行うことを開示している。特許文献3は、逆動力学計算を行って外乱を推定して衝突の発生を検出するときに、減速機のばね成分による振動のために衝突検出の精度が低下することを防ぐために、予め設定されている所定値よりもロボット動作の指令加速度が大きい場合に、衝突検出における閾値を大きくして検出感度を低下させることを開示している。 Patent Document 1 discloses a technology that can quickly and reliably detect the occurrence of a collision in a robot, using a required drive torque command element calculated from at least one of a position command, a speed command, and an acceleration command, and the position and speed of the motor that drives each axis. and acceleration, the required driving torque is calculated without recalculating the equation of motion of the robot, and the occurrence of a collision is determined by comparing the calculated required driving torque and the current of the motor of each axis. The company discloses that it will do the following. Patent Document 2 discloses a state in which the load of the workpiece is not transmitted to the robot and a state in which the load of the workpiece is It discloses that a collision is detected by recognizing the state transition between the states transmitted to and from the state, using a different threshold depending on which state it is in, and comparing the estimated disturbance value with this threshold. . Patent Document 3 discloses that when detecting the occurrence of a collision by estimating a disturbance by performing inverse dynamics calculation, in order to prevent the accuracy of collision detection from decreasing due to vibration caused by the spring component of the reducer, This disclosure discloses that when the command acceleration for robot operation is larger than a predetermined value, the threshold value for collision detection is increased to lower the detection sensitivity.

衝突検出の精度向上に関するものではないが、特許文献4は、人間である作業者とロボットとが共存して作業を行うために、ロボットアームが移動する空間を、作業者に近接する空間である低速動作領域とそれ以外の空間である高速動作領域とに分け、ロボットアームの衝突を検出するための検知感度を高速動作領域よりも低速動作領域で高くすることを開示している。 Although not related to improving the accuracy of collision detection, Patent Document 4 describes a space in which a robot arm moves in a space that is close to the worker in order for the human worker and the robot to work together. It is disclosed that the robot arm is divided into a low-speed motion region and a high-speed motion region that is the other space, and that the detection sensitivity for detecting a collision of a robot arm is made higher in the low-speed motion region than in the high-speed motion region.

特開2003-25272号公報Japanese Patent Application Publication No. 2003-25272 特開2016-16490号公報Unexamined Japanese Patent Publication No. 2016-16490 特開2006-116650号公報Japanese Patent Application Publication No. 2006-116650 国際公開第2016/103308号International Publication No. 2016/103308

ロボットにおける衝突検出の精度を高める技術として特許文献1に記載されたものは必要駆動トルクの算出が必要であり、特許文献2に記載されたものは外乱の推定値の算出が必要であり、特許文献3に記載されたものは逆動力学演算を行って外力を算出する必要がある。したがって特許文献1-3に記載された技術は、衝突検出のために必要な演算負荷が重い、という課題を有する。 The technology described in Patent Document 1 that improves the accuracy of collision detection in robots requires calculation of the required drive torque, and the technology described in Patent Document 2 requires calculation of an estimated value of disturbance, and the patent The method described in Document 3 requires inverse dynamic calculation to calculate the external force. Therefore, the techniques described in Patent Documents 1 to 3 have a problem in that the calculation load required for collision detection is heavy.

本発明の目的は、演算負荷量が小さく、ロボットが低速で運動しているときであっても衝突の発生を速やかかつ確実に検出できる衝突検出方法及び衝突検出装置を提供することにある。 SUMMARY OF THE INVENTION An object of the present invention is to provide a collision detection method and a collision detection device that have a small calculation load and can quickly and reliably detect the occurrence of a collision even when a robot is moving at low speed.

本発明の一態様において、複数の軸を備えて各軸がそれぞれモータによって駆動されるロボットにおける衝突の発生を検出する衝突検出方法は、軸ごとにモータの速度に応じて定まる閾値とその軸のモータのトルク値とを比較し、トルク値が閾値を上回ったときに衝突が発生したと判定する衝突判定工程を有する。ロボットが複数のステージの間でワークを搬送するロボットであってステージごとにそのステージの進入位置とステージ位置との間をロボットが連続経路(CP)制御によって移動するときに、衝突判定工程において、ステージごとかつ軸ごとに全体速度ごとの閾値をあらかじめ格納した衝突検出リミットテーブルを参照して得られる閾値が使用され、全体速度は、CP制御により動作するロボットの全体としての速度である。 In one aspect of the present invention, a collision detection method for detecting the occurrence of a collision in a robot equipped with a plurality of axes, each of which is driven by a motor, uses a threshold value determined for each axis according to the speed of the motor, and The collision determination step includes comparing the torque value of the motor with the torque value of the motor and determining that a collision has occurred when the torque value exceeds a threshold value. When the robot is a robot that transports a workpiece between a plurality of stages and moves between the entry position of each stage and the stage position by continuous path (CP) control, in the collision determination process, A threshold value obtained by referring to a collision detection limit table in which threshold values for each overall speed are stored in advance for each stage and each axis is used, and the overall speed is the overall speed of the robot operating under CP control.

上記態様の衝突検出方法によれば、実際にロボットを動作させないと軸ごとのモータの速度の変化を知ることができないCP制御を行なう場合において、ステージごとかつ軸ごとに全体速度ごとの閾値をあらかじめ格納した衝突検出リミットテーブルを用意しておき、CP制御でロボットを実際に移動させるときには指令された全体速度によって衝突検出リミットテーブルを参照して閾値である衝突検出リミット値を得ることによって、CP制御によってロボットをステージにアクセスさせる際に、より最適な衝突検出を行うことができる。 According to the collision detection method of the above aspect, when performing CP control in which changes in motor speed for each axis cannot be known unless the robot is actually operated, the threshold value for each overall speed is set in advance for each stage and each axis. A stored collision detection limit table is prepared, and when the robot is actually moved using CP control, the collision detection limit table is referenced according to the commanded overall speed to obtain the collision detection limit value, which is a threshold value, and CP control is performed. This enables more optimal collision detection when the robot accesses the stage.

一態様の衝突検出方法では、衝突検出リミットテーブルにおいて、全体速度が速度ゼロからCP制御で規定された最大速度までの範囲で複数のCP用速度領域に区分され、CP用速度領域ごとに閾値が単一の値として定められていることが好ましい。CP用速度領域ごとに閾値を単一の値として定めることにより、衝突検出リミットテーブルのサイズを小さくし、作成時間を短縮できる。 In one aspect of the collision detection method, in a collision detection limit table, the overall speed is divided into a plurality of CP speed regions ranging from zero speed to the maximum speed specified by CP control, and a threshold value is set for each CP speed region. Preferably, it is defined as a single value. By setting the threshold value as a single value for each CP speed region, the size of the collision detection limit table can be reduced and the creation time can be shortened.

一態様の衝突検出方法では、閾値は、ロボットのCP制御でのティーチングが完了したときに、モータのトルク波形における最大値に基づいて決定されて衝突検出リミットテーブルに格納されるようにすることが好ましい。ティーチング完了時に衝突検出リミットテーブルを作成することにより、実際にロボットを稼働させるときに確実に衝突検出を行うことができる。 In one aspect of the collision detection method, the threshold value may be determined based on the maximum value in the motor torque waveform and stored in the collision detection limit table when the robot's CP control teaching is completed. preferable. By creating a collision detection limit table upon completion of teaching, collision detection can be reliably performed when the robot is actually operated.

一態様の衝突検出方法では、ロボットは、待機位置と進入位置との間をポイント・ツー・ポイント(PTP)制御で移動する。PTP制御で移動しているときは、モータの速度が低いほど小さくモータの速度が大きいほど大きくなるよう複数の軸の各々に対する速度割合に応じて軸ごとに定められた速度に基づいて、その軸に対する閾値が定められるようにすることが好ましい。このように構成することにより、PTP制御でロボットを移動させるときにおいて、より適切な閾値を用いて衝突発生の検出を行うことができる。この場合、速度ゼロからモータの最大速度までの範囲が複数のPTP制御用速度領域に区分され、PTP制御用速度領域ごとにPTP制御のときに使用される閾値が単一の値として定められるようにすることが好ましい。これにより、閾値発生のための演算負荷をさらに小さくできる。 In one aspect of the collision detection method, the robot moves between a standby position and an approach position under point-to-point (PTP) control. When moving under PTP control, the speed of that axis is determined based on the speed determined for each axis according to the speed ratio for each of multiple axes, such that the lower the motor speed is, the lower the speed is, and the higher the motor speed is, the higher the speed is. It is preferable that a threshold value for . With this configuration, when the robot is moved under PTP control, it is possible to detect the occurrence of a collision using a more appropriate threshold. In this case, the range from speed zero to the maximum speed of the motor is divided into multiple PTP control speed regions, and the threshold value used during PTP control is determined as a single value for each PTP control speed region. It is preferable to Thereby, the calculation load for threshold generation can be further reduced.

本発明の別の態様において、複数の軸を備えて各軸がそれぞれモータによって駆動されるロボットにおける衝突の発生を検出する衝突検出装置は、軸ごとにモータの速度に応じて定まる閾値を発生する閾値発生部と、閾値発生部から供給された閾値とモータのトルク値とを比較して、トルク値が供給された閾値を上回ったときに衝突が発生したと判定する比較部と、ステージごとかつ軸ごとに全体速度ごとの閾値をあらかじめ格納した衝突検出リミットテーブルを格納する記憶部と、を有する。この衝突検出装置では、ロボットが複数のステージの間でワークを搬送するロボットであってステージごとにそのステージの進入位置とステージ位置との間をロボットがCP制御によって移動するときに、閾値発生部は、衝突検出リミットテーブルを参照して得られる閾値を比較部に供給し、全体速度は、CP制御により動作するロボットの全体としての速度である。 In another aspect of the present invention, a collision detection device for detecting the occurrence of a collision in a robot having a plurality of axes, each of which is driven by a motor, generates a threshold value determined according to the speed of the motor for each axis. a threshold generation section; a comparison section that compares the threshold supplied from the threshold generation section with the torque value of the motor and determines that a collision has occurred when the torque value exceeds the supplied threshold; and a storage unit that stores a collision detection limit table in which threshold values for each overall speed are stored in advance for each axis. In this collision detection device, when the robot is a robot that transports a workpiece between a plurality of stages and moves between the entry position of each stage and the stage position by CP control, the threshold value generation unit supplies a threshold value obtained by referring to the collision detection limit table to the comparator, and the overall speed is the overall speed of the robot operating under CP control.

上記態様の衝突検出装置では、実際にロボットを動作させないと軸ごとのモータの速度の変化を知ることができないCP制御を行なう場合において、ステージごとかつ軸ごとに全体速度ごとの閾値をあらかじめ格納した衝突検出リミットテーブルを用意して記憶部に記憶させておき、CP制御でロボットを実際に移動させるときには指令された全体速度により衝突検出リミットテーブルを参照して閾値である衝突検出リミット値を得ることによって、CP制御によってロボットをステージにアクセスさせる際に、より最適な衝突検出を行うことができるようになる。 In the collision detection device of the above aspect, when performing CP control in which changes in motor speed for each axis cannot be known unless the robot is actually operated, a threshold value for each overall speed is stored in advance for each stage and each axis. Prepare a collision detection limit table and store it in the storage unit, and when actually moving the robot under CP control, refer to the collision detection limit table according to the commanded overall speed to obtain the collision detection limit value, which is a threshold value. This makes it possible to perform more optimal collision detection when the robot accesses the stage using CP control.

一態様の衝突検出装置では、衝突検出リミットテーブルにおいて、全体速度が速度ゼロからCP制御で規定された最大速度までの範囲で複数のCP制御用速度領域に区分され、CP制御用速度領域ごとに記閾値が単一の値として定められていることが好ましい。CP制御用速度領域ごとに閾値を単一の値として定めることにより、衝突検出リミットテーブルのサイズを小さくし、作成時間を短縮することができる。また、モータのトルク波形における最大値に基づいて閾値を決定して衝突検出リミットテーブルに格納するテーブル生成部が設けられていてもよい。このようなテーブル作成部を設けることにより、衝突検出リミットテーブルの作成の処理を簡単に実行できるようになる。 In one embodiment of the collision detection device, in the collision detection limit table, the overall speed is divided into a plurality of CP control speed regions in the range from zero speed to the maximum speed specified by CP control, and each CP control speed region is divided into a plurality of speed regions. Preferably, the threshold value is determined as a single value. By setting the threshold value as a single value for each speed region for CP control, it is possible to reduce the size of the collision detection limit table and shorten the creation time. Further, a table generation unit may be provided that determines a threshold value based on the maximum value in the torque waveform of the motor and stores it in the collision detection limit table. By providing such a table creation section, it becomes possible to easily create a collision detection limit table.

一態様の衝突検出装置では、ロボットは、待機位置と進入位置との間をPTP制御で移動し、PTP制御で移動しているときに閾値発生部が発生する閾値は、モータの速度が低いほど小さくモータの速度が大きいほど大きくなるよう複数の軸の各々に対する速度割合に応じて軸ごとに定められた速度に基づいて定められたものであってもよい。このように構成することにより、PTP制御でロボットを移動させるときにおいて、より適切な閾値を用いて衝突発生の検出を行うことができる。この場合、速度ゼロからモータの最大速度までの範囲が複数のPTP制御用速度領域に区分され、PTP制御用速度領域ごとにPTP制御のときに使用される閾値が単一の値として定められるようにすることが好ましい。これにより、閾値発生のための演算負荷をさらに小さくできる。 In one embodiment of the collision detection device, the robot moves between a standby position and an approach position under PTP control, and the threshold value generated by the threshold generation unit while moving under PTP control increases as the speed of the motor decreases. The speed may be determined based on a speed determined for each axis according to a speed ratio to each of a plurality of axes, such that the speed is small and increases as the speed of the motor increases. With this configuration, when the robot is moved under PTP control, it is possible to detect the occurrence of a collision using a more appropriate threshold. In this case, the range from speed zero to the maximum speed of the motor is divided into multiple PTP control speed regions, and the threshold value used during PTP control is determined as a single value for each PTP control speed region. It is preferable to Thereby, the calculation load for threshold value generation can be further reduced.

本発明によれば、小さな演算負荷量で、ロボットが低速で運動しているときであっても衝突の発生を速やかかつ確実に検出できるようになる。 According to the present invention, the occurrence of a collision can be quickly and reliably detected with a small calculation load even when the robot is moving at low speed.

本発明の実施の一形態の衝突検出方法が適用されるロボットシステムの一例を示すブロック図である。FIG. 1 is a block diagram showing an example of a robot system to which a collision detection method according to an embodiment of the present invention is applied. トルク値に基づく衝突検出の原理を示す図である。FIG. 3 is a diagram showing the principle of collision detection based on torque values. 本発明に基づく衝突検出の原理を説明する図である。FIG. 3 is a diagram illustrating the principle of collision detection based on the present invention. 搬送用のロボットの構成の一例を示す概略断面図である。FIG. 2 is a schematic cross-sectional view showing an example of the configuration of a transport robot. ロボットの動作例を示す概略平面図である。FIG. 3 is a schematic plan view showing an example of the operation of the robot. PTP制御を説明する図である。It is a figure explaining PTP control. CP制御を説明する図である。It is a figure explaining CP control. 衝突検出リミットテーブルの内容の一例を示す図である。It is a figure which shows an example of the content of a collision detection limit table.

次に、本発明の実施の形態について、図面を参照して説明する。本発明に基づく衝突検出方法は、搬送用ロボットなどのロボットにおける衝突の発生を検出するものである。ここでいう衝突には、ロボットのアームやハンドが他の物体に文字通り衝突する場合のほかに、ロボットの動作に伴ってアームやハンドの移動が他の物体によって影響を受けあるいは妨げられる干渉も含まれるものとする。まず、本発明の実施の一形態の衝突検出方法が適用されるロボットシステムについて説明する。図1は、そのようなロボットシステムの構成の一例を示している。 Next, embodiments of the present invention will be described with reference to the drawings. A collision detection method based on the present invention detects the occurrence of a collision in a robot such as a transport robot. Collision here includes not only cases where the robot's arm or hand literally collides with another object, but also interference in which the movement of the arm or hand is affected or blocked by another object as the robot moves. shall be provided. First, a robot system to which a collision detection method according to an embodiment of the present invention is applied will be described. FIG. 1 shows an example of the configuration of such a robot system.

ロボットシステムは、半導体ウエハの搬送などに用いられるロボット10と、外部からの指令に基づいてロボット10を駆動し制御するロボット制御装置(ロボットコントローラ)50とから構成されている。ロボット10は、そのアームやハンドなどを駆動するモータ11と、モータ11に機械的に接続してモータ11の回転位置を検出するエンコーダ
12とを備えている。ロボット10は、通常、複数の軸を有して軸ごとにモータ11を備えるが、図1では、説明のため、ロボット10において1軸分のモータ11とそのモータ11に接続するエンコーダ12が描かれている。
The robot system includes a robot 10 used for transporting semiconductor wafers, and a robot control device (robot controller) 50 that drives and controls the robot 10 based on external commands. The robot 10 includes a motor 11 that drives its arm, hand, etc., and an encoder 12 that is mechanically connected to the motor 11 and detects the rotational position of the motor 11. The robot 10 usually has a plurality of axes and is equipped with a motor 11 for each axis, but in FIG. It is.

ロボット制御装置50は、外部から入力する指令に基づいてロボット10の軌道を算出し、ロボット10の各軸のモータ11に対する位置指令値を出力する演算部51と、演算部51から出力される位置指令値に基づいてモータ11を駆動する駆動部52を備えている。エンコーダ12からはモータ11の回転位置を示す信号が出力しており、この信号が駆動部52にフィードバックされることによって、駆動部52は、モータ11のサーボ制御を実行する。ロボット10のティーチング(教示)を行うときはロボット制御装置50に対してティーチングペンダントが接続されるが、ティーチングペンダントからの指令も外部指令として演算部51に入力する。ここで述べた演算部51及び駆動部52を備える構成は、産業用ロボットの制御に用いられる一般的なロボット制御装置の構成と同じである。 The robot control device 50 includes a calculation unit 51 that calculates the trajectory of the robot 10 based on commands input from the outside, and outputs position command values for the motors 11 of each axis of the robot 10; It includes a drive section 52 that drives the motor 11 based on a command value. The encoder 12 outputs a signal indicating the rotational position of the motor 11, and this signal is fed back to the drive section 52, so that the drive section 52 executes servo control of the motor 11. When teaching the robot 10, a teaching pendant is connected to the robot control device 50, and commands from the teaching pendant are also input to the calculation unit 51 as external commands. The configuration including the calculation unit 51 and drive unit 52 described here is the same as the configuration of a general robot control device used for controlling industrial robots.

図1に示すロボット制御装置50は、ロボット10における衝突の発生を検出するために、さらに、閾値である衝突検出リミット値を出力する閾値発生部53と、モータ11のトルクの値と閾値発生部53から供給された衝突検出リミット値(閾値)とを比較する比較部54と、ロボット10が後述するCP制御により動作しているときに閾値発生部53によって参照される衝突検出リミットテーブルが格納される記憶部55と、衝突検出リミットテーブルを生成するテーブル生成部56とを備えている。比較部54は、例えばコンパレータ回路によって構成されており、トルク値が衝突検出リミット値を上回ったときに、ロボット10において衝突が発生したと判定する。比較部54での判定結果は衝突検出結果として外部に出力される。衝突発生時にロボット10を緊急停止させるためなどに、この衝突検出結果を演算部51に入力させてもよい。本発明に基づく衝突検出方法において、モータ11のトルクの値としては、モータ11のサーボ制御のために駆動部52の内部で計算されるトルク指令値を用いてもよいし、モータ11の電流値そのものを使用してもよいし、モータ11に関して実際に測定されたトルク値を用いてもよい。モータ11に関して実際に測定されたトルク値は、何らかの実測値に基づいて逆動力学計算やモデル演算を行って得られた値であってもよい。閾値発生部53と比較部54とによって、本発明に基づく衝突検出装置が構成される。閾値発生部53、テーブル生成部56及び衝突検出リミットテーブルの詳細については後述する。 In order to detect the occurrence of a collision in the robot 10, the robot control device 50 shown in FIG. A comparison unit 54 that compares the collision detection limit value (threshold value) supplied from the robot 53 and a collision detection limit table that is referred to by the threshold generation unit 53 when the robot 10 is operating under CP control to be described later are stored. and a table generation section 56 that generates a collision detection limit table. The comparison unit 54 is configured by, for example, a comparator circuit, and determines that a collision has occurred in the robot 10 when the torque value exceeds a collision detection limit value. The determination result of the comparison unit 54 is outputted to the outside as a collision detection result. This collision detection result may be input to the calculation unit 51 in order to make an emergency stop of the robot 10 when a collision occurs. In the collision detection method based on the present invention, as the torque value of the motor 11, a torque command value calculated inside the drive unit 52 for servo control of the motor 11 may be used, or a current value of the motor 11 may be used. It may be used as such, or a torque value actually measured regarding the motor 11 may be used. The torque value actually measured regarding the motor 11 may be a value obtained by performing inverse dynamics calculation or model calculation based on some actual measurement value. The threshold generation section 53 and the comparison section 54 constitute a collision detection device based on the present invention. Details of the threshold generation section 53, table generation section 56, and collision detection limit table will be described later.

本発明に基づく衝突判定方法は、モータ11のトルク値と閾値である衝突検出リミット値とを比較することに基づくものである。図2は、この衝突判定方法の原理を説明する図であり、横軸が時間であって縦軸がモータ11のトルクである。図2(a)に示すように、平常動作時のモータ11のトルクは、時々刻々と変化するが、一定の範囲内に収まっている。ここでロボット10の例えばアームが、モータ11によって駆動されているときに時刻Pにおいて他の物体と衝突すると、アームの動きが妨げられるから、この妨げる力に対抗するようにモータ11のトルク値が急上昇する。急上昇したトルクが予め定められている衝突検出リミット値を超えたことを検出することにより、衝突の発生を検出できる。モータ11のトルクは、図2(b)に示すように、そのモータ11が低速で動いているのか高速で動いているのかによって異なる。低速動作中はトルクは相対的に小さく、高速動作中はトルクは相対的に大きい。単一の衝突検出リミット値を用いてロボット10における衝突の発生を検出しようとするときは、衝突検出リミット値は、平常動作時に最大速度で回転しているモータ11に起こり得るトルクよりも大きな値とする必要がある。 The collision determination method according to the present invention is based on comparing the torque value of the motor 11 with a collision detection limit value, which is a threshold value. FIG. 2 is a diagram illustrating the principle of this collision determination method, in which the horizontal axis is time and the vertical axis is the torque of the motor 11. As shown in FIG. 2(a), the torque of the motor 11 during normal operation changes from moment to moment, but remains within a certain range. If, for example, the arm of the robot 10 collides with another object at time P while being driven by the motor 11, the movement of the arm will be hindered, so the torque value of the motor 11 will be adjusted to counteract this hindering force. rise rapidly. The occurrence of a collision can be detected by detecting that the rapidly increased torque exceeds a predetermined collision detection limit value. The torque of the motor 11 differs depending on whether the motor 11 is moving at low speed or high speed, as shown in FIG. 2(b). During low speed operation, the torque is relatively small, and during high speed operation, the torque is relatively large. When attempting to detect the occurrence of a collision in the robot 10 using a single collision detection limit value, the collision detection limit value must be a value larger than the torque that can occur in the motor 11 rotating at maximum speed during normal operation. It is necessary to do so.

高速動作時のトルクに基づいて衝突検出リミット値を設定すると、この衝突検出リミット値は、モータ11が低速で動作している場合には大きすぎる値であって、ロボット10での衝突の発生を適切に検出するためには不適切である。図3は図2(a)と同様の図であるが、モータ11が比較的低速で動作しているときのトルクの変化を示している。図に示される衝突検出リミット値は、モータ11の最大速度に基づいて設定されたものである。時刻Pにおいて衝突が発生すると、トルク値は急上昇するが、衝突検出リミット値には至らないので、その時点では衝突の発生は検出されない。そのままトルクは上昇を続け、時刻Qにおいてようやく衝突検出リミット値に到達するので、時刻Qにおいて衝突の発生が検出されることとなる。時刻Pから時刻Qまでの時間は、検出のタイムラグに相当する。検出にタイムラグが生じると、ロボットが被衝突物に対してより大きな力を作用させる、あるいはロボットが被衝突物に対してさらに食い込むように動くこととなるので、衝突検出におけるタイムラグは、例えば安全確保の上で、極めて好ましくない。また、衝突の程度が小さい場合、例えば、アームが小さな物体に衝突したが、衝突の結果、物体がアームの軌道から外れる位置に移動したのでアームが引き続き動き続けることができる場合には、衝突によるトルクの上昇量が小さくて衝突検出リミット値まで到達しないことがあり、衝突の発生が検出されないことがある。規模が小さい衝突とはいえ検出できないことは、これも安全確保の上で極めて好ましくない。 If the collision detection limit value is set based on the torque during high-speed operation, this collision detection limit value will be too large when the motor 11 is operating at low speed, and will prevent the occurrence of a collision in the robot 10. It is inappropriate for proper detection. FIG. 3 is a diagram similar to FIG. 2(a), but shows changes in torque when the motor 11 is operating at a relatively low speed. The collision detection limit value shown in the figure is set based on the maximum speed of the motor 11. When a collision occurs at time P, the torque value increases rapidly, but does not reach the collision detection limit value, so the occurrence of a collision is not detected at that time. The torque continues to increase and finally reaches the collision detection limit value at time Q, so that the occurrence of a collision is detected at time Q. The time from time P to time Q corresponds to a detection time lag. If a time lag occurs in collision detection, the robot will apply a larger force to the object being collided, or the robot will move further into the object. It is extremely unfavorable. Also, if the severity of the collision is small, for example, the arm collides with a small object, but as a result of the collision the object moves to a position outside the arm's trajectory and the arm can continue to move, then The amount of increase in torque may be so small that it may not reach the collision detection limit value, and the occurrence of a collision may not be detected. Not being able to detect a collision, even if it is small in scale, is extremely undesirable in terms of ensuring safety.

本発明に基づく衝突検出方法では、ロボットが低速で運動しているときであっても衝突の発生を速やかかつ確実に検出できるようにするために、モータ11の速度が小さいときには衝突検出リミット値が小さくなり、速度が大きいときには衝突検出リミット値が大きくなるように、モータ11の速度に応じて閾値である衝突検出リミット値を変化させる。図3において矢印は、低速動作時には衝突検出リミット値を小さくすることを示しており、これにより、実際に衝突が発生した時刻Pにおいて、タイムラグなしに衝突発生を検出できるようになる。モータ11の速度はエンコーダ12からのモータ位置を示す信号を微分することによって得られるものであり、駆動部52において常時算出されているから、閾値発生部53は、駆動部52からモータ速度を受け取って、そのモータ速度に応じて閾値である衝突検出リミット値を生成し、比較部54に出力する。あるいは、演算部51においてモータ11の速度を計算しているのであれば、図において破線で示すように閾値発生部53は、演算部51からモータ速度を受け取ってもよい。実際にはモータ速度について、速度ゼロからモータ11の最大速度までの範囲を複数の速度領域に区分し、区分された速度領域ごとに単一の値として衝突検出リミット値を設定することが好ましい。このように速度領域ごとに衝突検出リミット値を設定することとすると、ルックアップテーブルによって閾値発生部53を実現することが可能になり、閾値発生部53の構成を簡素なものとして衝突検出リミット値の算出のための演算量を削減することができる。 In the collision detection method based on the present invention, in order to quickly and reliably detect the occurrence of a collision even when the robot is moving at low speed, the collision detection limit value is set when the speed of the motor 11 is small. The collision detection limit value, which is a threshold value, is changed in accordance with the speed of the motor 11 so that the collision detection limit value becomes small when the speed is high, and the collision detection limit value becomes large when the speed is high. In FIG. 3, the arrow indicates that the collision detection limit value is made smaller during low-speed operation, so that the occurrence of a collision can be detected without time lag at the time P when the collision actually occurs. The speed of the motor 11 is obtained by differentiating the signal indicating the motor position from the encoder 12, and is constantly calculated in the drive section 52, so the threshold generation section 53 receives the motor speed from the drive section 52. Then, a collision detection limit value, which is a threshold value, is generated according to the motor speed and output to the comparison section 54. Alternatively, if the speed of the motor 11 is calculated in the calculating section 51, the threshold generating section 53 may receive the motor speed from the calculating section 51, as shown by the broken line in the figure. In reality, it is preferable to divide the motor speed range from zero speed to the maximum speed of the motor 11 into a plurality of speed ranges, and to set the collision detection limit value as a single value for each divided speed range. If the collision detection limit value is set for each speed region in this way, it becomes possible to implement the threshold value generation section 53 using a lookup table, and the collision detection limit value can be set by simplifying the configuration of the threshold value generation section 53. It is possible to reduce the amount of calculation for calculating .

表1は、従来の方法による衝突検出リミット値の例を示している。モータ11の現在の速度が、そのモータ11の最大速度を100%とする百分率で表されているとして、従来の方法では、モータ速度が0%から100%の間で衝突検出リミット値は一律に例えば200cN・mと設定される。これに対して表2は、本発明に基づく衝突検出方法で用いられる衝突検出リミット値の一例を示している。ここに示す例では、モータ11の速度範囲が、0%以上10%以下、10%超20%以下、20%超30%以下のように、10%刻みで10の速度領域に区分されている。最も低速である速度領域、すなわち0%以上10%以下の速度領域には83cN・mが衝突検出リミット値として設定され、次の速度領域、すなわち10%超20%以下の速度領域には96cN・mが設定され、速度が最も高い速度領域すなわち90%超100%以下の速度領域に対しては200cN・Nが設定されている。 Table 1 shows examples of collision detection limit values according to the conventional method. Assuming that the current speed of the motor 11 is expressed as a percentage with the maximum speed of the motor 11 as 100%, in the conventional method, the collision detection limit value is uniformly set when the motor speed is between 0% and 100%. For example, it is set to 200 cN·m. On the other hand, Table 2 shows an example of collision detection limit values used in the collision detection method according to the present invention. In the example shown here, the speed range of the motor 11 is divided into 10 speed regions in 10% increments, such as 0% to 10%, more than 10% to 20%, and more than 20% to 30%. . 83 cN・m is set as the collision detection limit value for the slowest speed region, that is, the speed region of 0% to 10%, and 96 cN・m for the next speed region, that is, the speed region of more than 10% to 20%. m is set, and 200 cN·N is set for the highest speed region, that is, the speed region of more than 90% and less than 100%.

Figure 2024014341000002
Figure 2024014341000002

Figure 2024014341000003
Figure 2024014341000003

速度領域ごとの衝突検出リミット値は、例えば、速度を変えてモータ11を駆動し、そのときのトルク波形を計測し、そのときの最大トルクに適切な安全率を乗じることによって算出することができる。このようにして事前に算出されたモータ速度ごとの衝突検出リミット値は、閾値発生部53に設定されるが、ルックアップテーブルとして記憶部55に格納されてもよい。 The collision detection limit value for each speed region can be calculated, for example, by driving the motor 11 at different speeds, measuring the torque waveform at that time, and multiplying the maximum torque at that time by an appropriate safety factor. . The collision detection limit value for each motor speed calculated in advance in this manner is set in the threshold generation section 53, but may also be stored in the storage section 55 as a lookup table.

以上、ロボット10における特定の1つの軸のモータ11についての衝突検出リミット値について説明した。実際にはロボット10には複数の軸が設けられており、軸ごとに衝突検出を行う必要があるから、軸ごとにその軸のモータ速度に応じて衝突検出リミット値を変化させる必要がある。以下、そのような例について説明する。図4は、複数の軸を有するロボット10の一例を示している。図示されるロボット10は、3リンク型の水平多関節型ロボットであり、半導体ウエハの搬送などに用いられるものである。ロボット10は、基台21と、基台21に設けられた昇降部22と、昇降部22に基端側が取り付けられたリンク機構23と、リンク機構23の先端部に対して基端側が回転可能に取り付けられたアーム26と、アーム26の先端に回転可能に保持されてワークを保持する2つのハンド27,28とを備えている。ハンド27は上側のハンドであり、ハンド28は下側のハンドである。昇降部22は、モータ11Zにより駆動されて垂直方向(図示Z方向)に沿って昇降する。ここでは説明のため、昇降部22の昇降をZ軸の動きと呼ぶこととする。したがって、モータ11ZはZ軸のモータである。 The collision detection limit value for the motor 11 of one specific axis in the robot 10 has been described above. In reality, the robot 10 is provided with a plurality of axes, and it is necessary to perform collision detection for each axis. Therefore, it is necessary to change the collision detection limit value for each axis according to the motor speed of that axis. Such an example will be explained below. FIG. 4 shows an example of a robot 10 having multiple axes. The illustrated robot 10 is a three-link horizontally articulated robot that is used for transporting semiconductor wafers and the like. The robot 10 includes a base 21, an elevating section 22 provided on the base 21, a link mechanism 23 whose proximal end is attached to the elevating section 22, and whose proximal end is rotatable with respect to the distal end of the link mechanism 23. An arm 26 is attached to the arm 26, and two hands 27 and 28 are rotatably held at the tip of the arm 26 and hold a workpiece. Hand 27 is the upper hand, and hand 28 is the lower hand. The elevating section 22 is driven by the motor 11Z and moves up and down along the vertical direction (Z direction in the drawing). Here, for the sake of explanation, the movement up and down of the elevating section 22 will be referred to as Z-axis movement. Therefore, the motor 11Z is a Z-axis motor.

リンク機構23は、その先端部すなわちアーム26が取り付けられている位置の移動軌跡が直線となるように構成されており、基台21側に位置して昇降部22に回転可能に保持される基台側リンク24と、アーム26側に位置するアーム側リンク25とを備え、両方のリンク24,25はリンク関節部Jによって互いに回転可能に連結されている。基台側リンク24は、昇降部22に連結され、昇降部22に内蔵されたモータ11Aによって回転可能に保持されている。基台側リンク24には、基台側プーリ24a、アーム側プーリ24b及びベルト24cが内蔵されており、ベルト24cは基台側プーリ24aとアーム側プーリ24bの間で架けわたされている。基台側プーリ24aとアーム側プーリ24bとの径の比は2:1となっている。アーム側プーリ24bはアーム側リンク25に連結されており、基台側リンク24が基台側プーリ24aの回転中心を中心として回転したとき、基台側プーリ24aとアーム側プーリ24bとの回転角度比、すなわち基台側リンク24とアーム側リンク25との回転角度比は1:2となるように構成されている。さらに、基台側リンク24とアーム側リンク25の長さは等しい。その結果、モータ11Aを駆動することによってリンク機構23の先端部が移動することとなるが、その移動軌跡は、所定の直線上に規制される。リンク機構23を移動させる動きをA軸の動きと呼ぶ。したがってモータ11AはA軸のモータである。 The link mechanism 23 is configured such that the movement locus of its tip, that is, the position where the arm 26 is attached, is a straight line. It includes a stand side link 24 and an arm side link 25 located on the arm 26 side, and both links 24 and 25 are rotatably connected to each other by a link joint J. The base side link 24 is connected to the elevating section 22 and is rotatably held by a motor 11A built in the elevating section 22. The base-side link 24 includes a base-side pulley 24a, an arm-side pulley 24b, and a belt 24c, and the belt 24c is stretched between the base-side pulley 24a and the arm-side pulley 24b. The ratio of the diameters of the base pulley 24a and the arm pulley 24b is 2:1. The arm-side pulley 24b is connected to the arm-side link 25, and when the base-side link 24 rotates around the rotation center of the base-side pulley 24a, the rotation angle between the base-side pulley 24a and the arm-side pulley 24b changes. The ratio, that is, the rotation angle ratio between the base side link 24 and the arm side link 25 is configured to be 1:2. Furthermore, the lengths of the base side link 24 and the arm side link 25 are equal. As a result, the tip of the link mechanism 23 moves by driving the motor 11A, but its movement locus is restricted to a predetermined straight line. The movement of the link mechanism 23 is called the A-axis movement. Therefore, the motor 11A is an A-axis motor.

アーム26は、アーム側リンク25の先端に連結されており、アーム側リンク25に内蔵されたモータ11Bによって回転可能に保持されている。モータ11Bを駆動することによって、アーム26は、その基端側すなわちリンク機構23との接続位置を中心として回転する。アーム26のこの動きをB軸の動きと呼ぶ。モータ11BはB軸のモータである。ハンド27,28は、それぞれ、アーム26に内蔵されたモータ11C,11Dによって回転可能に保持されており、モータ11C,11Dによって駆動されることによって、アーム26の先端を中心として回転する。モータ11Cによるハンド27の動きをC軸の動きと呼び、モータ11Dによるハンド28の動きをD軸の動きと呼ぶ。モータ11C,11Dは、それぞれ、C軸のモータ、D軸のモータである。このように図4に示すロボット10は、A軸、B軸、C軸、D軸及びZ軸からなる5軸のロボットであり、5個のモータ11A,11B,11C,11D,11Zを備えている。モータ11A,11B,11C,11D,11Zはロボット制御装置50により一括して制御される。衝突検出のために、ロボット制御装置50には、軸ごとに閾値発生部53と比較部54が設けられる。これに対し、記憶部55及びテーブル生成部56は、ロボット10の複数の軸に対して共通に設けられる。 The arm 26 is connected to the tip of the arm-side link 25 and is rotatably held by a motor 11B built in the arm-side link 25. By driving the motor 11B, the arm 26 rotates around its base end, that is, the position where it is connected to the link mechanism 23. This movement of arm 26 is referred to as B-axis movement. Motor 11B is a B-axis motor. The hands 27 and 28 are rotatably held by motors 11C and 11D built into the arm 26, respectively, and are rotated about the tip of the arm 26 by being driven by the motors 11C and 11D. The movement of the hand 27 by the motor 11C is called a C-axis movement, and the movement of the hand 28 by the motor 11D is called a D-axis movement. The motors 11C and 11D are a C-axis motor and a D-axis motor, respectively. As described above, the robot 10 shown in FIG. 4 is a five-axis robot consisting of the A-axis, B-axis, C-axis, D-axis, and Z-axis, and is equipped with five motors 11A, 11B, 11C, 11D, and 11Z. There is. The motors 11A, 11B, 11C, 11D, and 11Z are collectively controlled by a robot control device 50. For collision detection, the robot control device 50 is provided with a threshold generation section 53 and a comparison section 54 for each axis. On the other hand, the storage section 55 and the table generation section 56 are provided in common for a plurality of axes of the robot 10.

ところで、教示データに基づきロボットの手先を目標位置に移動させるときの軌道制御の形態として、よく知られているように、PTP(ポイント-ツー-ポイント;point-to-point)制御とCP(連続経路;continuous path)制御とがある。PTP制御は、一般に、ロボットに取り付けたツールやハンドの先端がとるべき軌道の始点と終点のみを指定してツールやハンドを移動させる制御であり、CP制御は、一般的には3次元空間での直線(場合によっては曲線)である経路を指定してその経路に沿ってツールやハンドの先端を動かす制御である。PTP制御では、教示データにおいては始点と終点とは示されるが始点と終点との間でのロボットの経路は指定されず、特に2以上の軸を有するロボットでは、軸ごとに始点と終点との間でその軸がどれだけ動くべきかを決定した後は、軸ごとの移動量によって各軸が独立に動かされる。CP制御は、指定された経路からずれないように各瞬間ごとに各軸の制御を行うものであり、例えば、教示データで示される教示点間の動きを直線で補間する際に使用される。PTP制御の方がCP制御よりも高速でロボットを移動させることができるが、ロボットの経路が指定されないので、PTP制御ではロボット周囲の壁面などの干渉がおこりやすい。これに対してCP制御では、ロボットの経路を指定できるので、PTP制御に比べて低速ではあるが、壁面などとの干渉を確実に防ぐことができる。 By the way, as well-known forms of trajectory control when moving a robot's hand to a target position based on teaching data, there are PTP (point-to-point) control and CP (continuous) control. continuous path) control. PTP control is generally a control that moves a tool or hand by specifying only the start and end points of the trajectory that the tip of the tool or hand attached to the robot should take, while CP control is generally a control that moves a tool or hand in a three-dimensional space. This is a control that specifies a straight line (or curved line in some cases) path and moves the tip of the tool or hand along that path. In PTP control, the starting point and ending point are indicated in the teaching data, but the robot's path between the starting point and the ending point is not specified. Especially for robots with two or more axes, the starting point and ending point are indicated for each axis. After determining how much that axis should move in between, each axis is moved independently according to the amount of movement for each axis. CP control is to control each axis at each instant so as not to deviate from a designated path, and is used, for example, to linearly interpolate movement between teaching points indicated by teaching data. PTP control allows the robot to move faster than CP control, but since the robot's path is not specified, PTP control is more likely to cause interference with walls around the robot. On the other hand, in CP control, the route of the robot can be specified, so although it is slower than PTP control, it can reliably prevent interference with walls and the like.

図4に示すロボット10は搬送用のロボットであるので、ワークの搬送のために、ある位置から別の位置に移動するように制御される。その際、PTP制御とCP制御とを組み合わせた形態でロボット10は制御される。PTP制御及びCP制御に必要な演算は、ロボット制御装置50において演算部51が実行する。 Since the robot 10 shown in FIG. 4 is a transport robot, it is controlled to move from one position to another in order to transport a workpiece. At this time, the robot 10 is controlled using a combination of PTP control and CP control. The calculations necessary for PTP control and CP control are executed by the calculation unit 51 in the robot control device 50.

図5は、ワークとして半導体ウエハを搬送するときのロボット10の動作例を示している。半導体ウエハがワーク60であるときは、図5に示すように、複数のステージ61の間でワーク60を搬送するためにロボット10が使用される。ここではワーク60を格納するカセットや、ワーク60を処理するワーク処理装置を総称してステージ61と称している。複数のステージ61は、ロボット10を取り囲む空間である作業領域に面するように配置しており、ステージ61の開口を介してそのステージ61の内部にロボット10のハンド27,28を差し入れることができるように構成されている。作業領域内に設置されているロボット10は、通常、図5において(a)で示す待機位置において、そのリンク24,25やアーム26、ハンド27,28が折り畳まれた状態で待機している。そして、ハンド27を用いてあるステージ61内のワーク60を取り出しに行くときは、まず、対象のステージ61の開口の正面にハンド27が位置するように、PTP制御により図5において(b)に示す進入位置にまでロボット10を移動させる。その後、CP制御によって、ハンド27がステージ61の内部に進入するように、図5において(c)に示すステージ位置にまでロボット10を移動させる。ステージ位置においてワーク60がハンド27上に載置されたら、ロボット10は進入位置を介して待機位置に戻り、次に、ワーク60の搬送先となる別のステージ61にまで上記と同様に移動する。ステージ位置は、ステージ61内のワーク60をハンド27上に載置させる位置であり、ハンド27上に既に載置されているワーク60をステージ61に対して積み下ろす位置でもある。これに対し進入位置は、そのステージ61のステージ位置から作業領域に向けて引き戻した位置であって、ロボット10が進入位置にあるときにロボット10の一部またはロボット10に載置されているワーク60の一部がそのステージ61の内部にある位置である。図示した例では、ロボット10が進入位置にあるとき、ハンド27の先端部がステージ61の内部にある。 FIG. 5 shows an example of the operation of the robot 10 when transporting a semiconductor wafer as a workpiece. When the semiconductor wafer is a workpiece 60, the robot 10 is used to transport the workpiece 60 between a plurality of stages 61, as shown in FIG. Here, the cassette that stores the workpiece 60 and the workpiece processing device that processes the workpiece 60 are collectively referred to as a stage 61. The plurality of stages 61 are arranged so as to face a work area that is a space surrounding the robot 10, and the hands 27 and 28 of the robot 10 can be inserted into the stage 61 through the opening of the stage 61. It is configured so that it can be done. The robot 10 installed in the work area is normally in a standby position shown in FIG. 5(a) with its links 24, 25, arm 26, and hands 27, 28 folded. When the hand 27 is used to take out a workpiece 60 from a certain stage 61, the hand 27 is positioned in front of the opening of the target stage 61 using PTP control as shown in FIG. 5(b). The robot 10 is moved to the entry position shown. Thereafter, by CP control, the robot 10 is moved to the stage position shown in FIG. 5(c) so that the hand 27 enters the inside of the stage 61. Once the workpiece 60 is placed on the hand 27 at the stage position, the robot 10 returns to the standby position via the approach position, and then moves in the same manner as above to another stage 61 to which the workpiece 60 is to be transported. . The stage position is a position where the workpiece 60 in the stage 61 is placed on the hand 27, and is also a position where the workpiece 60 already placed on the hand 27 is unloaded onto the stage 61. On the other hand, the approach position is a position pulled back toward the work area from the stage position of the stage 61, and is a part of the robot 10 or a workpiece placed on the robot 10 when the robot 10 is in the approach position. 60 is located inside the stage 61. In the illustrated example, when the robot 10 is at the entry position, the tip of the hand 27 is inside the stage 61.

図6(a)は、図4に示したロボット10をPTP制御で移動させた例を示す概略斜視図であって、移動前の姿勢(姿勢R)と移動後の姿勢(姿勢S)とを示している。図6(b)は、姿勢Rから姿勢SまでPTP制御でロボットを移動させたときの各軸の軸速度の変化を示している。PTP制御において移動の始点において各軸が一斉に動き出しかつ移動の終点において各軸が同時に停止させるように制御するときは、異なる軸の間でのモータ速度の比率は、加減速の期間も含めて常に一定である。異なる軸の間でのモータ速度の比は、移動の始点から終点までの各軸のモータの移動量によって定まりこれは始点と終点の座標情報から算出できるから、PTP制御の動作指令が入力された段階で計算できる。また、PTP制御を行なうときは、そのPTP制御での移動の全体としての速度を示す全体速度が指令されることが一般的である。モータにはそれぞれ最高速度が規定されているが、全体速度100%とは、PTP制御により最速でロボットを移動できることを意味し、そのときは、いずれかの軸においてその軸のモータをそのモータに規定されている最高速度で動作させ、それ以外の軸では当該軸に規定されている最高速度未満でモータを動作させることになる。モータごとの規定されている最高速度と、PTP動作時の異なる軸の間でのモータ速度の比率とが分かっているから、全体速度が100%であるときに、各軸のモータがそのモータに規定されている最高速度に対して何パーセントの速度で動作しているかという割合(速度割合)を求めることができる。 FIG. 6(a) is a schematic perspective view showing an example in which the robot 10 shown in FIG. 4 is moved by PTP control, and shows the posture before movement (posture R) and the posture after movement (posture S). It shows. FIG. 6(b) shows changes in the axial speed of each axis when the robot is moved from posture R to posture S under PTP control. In PTP control, when controlling so that each axis starts moving at the same time at the start point of movement and stops simultaneously at the end point of movement, the ratio of motor speeds between different axes, including periods of acceleration and deceleration, is Always constant. The ratio of motor speeds between different axes is determined by the amount of movement of the motor of each axis from the start point to the end point, and this can be calculated from the coordinate information of the start point and end point, so the PTP control operation command is input. It can be calculated in stages. Furthermore, when performing PTP control, an overall speed indicating the overall speed of movement under the PTP control is generally commanded. Each motor has a specified maximum speed, but 100% overall speed means that the robot can move at the fastest speed using PTP control. The motor is operated at the maximum speed specified, and the motors on other axes are operated at a speed lower than the maximum speed specified for the axis. Since we know the specified maximum speed for each motor and the ratio of motor speeds between different axes during PTP operation, when the overall speed is 100%, the motor of each axis It is possible to determine the percentage of the specified maximum speed at which the device is operating (speed ratio).

上述したように本実施形態では、モータごとに、そのモータの現在速度がそのモータに規定されている最高速度の何パーセントであるかに応じてそのモータに対する衝突検出リミット値を変化させることとしている。一方、PTP制御を行なうときは、軸ごとに個別にモータ速度が指令されるのではなく全体速度が指令される。ティーチングを行うときなどは全体速度100%でロボット10を動作させるのはなく、より低速でロボット10を動作させることとなる。例えば、全体速度のX%でロボット10を動作させるときは、各軸のモータのそのモータの最高速度に対する速度比は、全体速度が100%のときの速度割合に対してX/100を乗じたものとなる。そして各軸の衝突検出リミット値として、このようにして得られたモータごとの速度比に応じたものを用いればよいことになる。ロボット制御装置50では、PTP制御に関して目標位置や全体速度の何%でロボットを動作させるかという情報は演算部51に指令として与えられるので、演算部51は各軸のモータの動作速度を算出でき、ロボット制御装置50において軸ごとに設けられる閾値発生部53には、当該軸について算出されたモータ速度が与えられる。このとき、表2に示すようにモータの速度範囲が複数の速度領域に分割されているときは、算出されたモータ速度がどの速度領域に含まれるかによって衝突検出リミット値が定まる。このようにして各軸に対してその軸の速度に応じて衝突検出リミット値を割り当てることで、より適切な衝突検出リミット値を用い衝突検出を行うことができるようになる。 As described above, in this embodiment, the collision detection limit value for each motor is changed depending on what percentage of the maximum speed specified for that motor is the current speed of that motor. . On the other hand, when performing PTP control, the motor speed is not individually commanded for each axis, but the overall speed is commanded. When performing teaching, the robot 10 is not operated at 100% overall speed, but at a lower speed. For example, when operating the robot 10 at X% of the overall speed, the speed ratio of each axis motor to the maximum speed of that motor is the speed ratio when the overall speed is 100% multiplied by X/100. Become something. Then, as the collision detection limit value for each axis, a value corresponding to the speed ratio of each motor obtained in this manner may be used. In the robot control device 50, information regarding the target position and the percentage of the overall speed at which the robot should be operated regarding PTP control is given as a command to the calculation section 51, so that the calculation section 51 can calculate the operating speed of the motor of each axis. In the robot control device 50, a threshold generation unit 53 provided for each axis is given the motor speed calculated for that axis. At this time, when the speed range of the motor is divided into a plurality of speed regions as shown in Table 2, the collision detection limit value is determined depending on which speed region the calculated motor speed is included. By assigning a collision detection limit value to each axis according to the speed of that axis in this manner, collision detection can be performed using a more appropriate collision detection limit value.

図7(a)は、ハンド27の軌跡が直線となるように直線補間を行うCP制御により図4に示したロボット10を移動させた例を示す概略斜視図であって、移動前の姿勢(姿勢R)と移動後の姿勢(姿勢S)とを示している。図7(b)は、姿勢Rから姿勢SまでCP制御でロボットを移動させたときの各軸の軸速度の変化を示している。図7(b)から明らかになるように、モータの軸速度の増減の様子は、モータごとに大きく異なっている。異なる軸のモータの速度の比は一定ではなく、移動の始点から終点までの間で大きく変化する。モータ速度の比やその変化は、移動の始点と終点の座標情報を与えただけで得られるものではなく、実際にCP制御でロボット10を動作させなければ分からない。したがって、PTP制御の場合とは異なりCP制御では、ロボット10の全体の速度を指定を伴なってCP制御の動作指令が入力されたとして、各軸ごとの衝突検出リミット値をその場で割り当てることができない。なお、CP制御では各軸のモータの速度変化が事前には分からないので、いずれかの軸のモータの速度がそのモータに規定された最高速度となり、残りの軸のモータの速度はそれらのモータにそれぞれ規定された最高速度未満である、という条件で全体速度における100%を規定することは難しい。その代わり、ロボット制御装置50では、マージンを見込んでCP制御におけるロボット10の全体の速度の最高値が定められており、その速度の最高値をCP制御における全体速度の100%とする。 FIG. 7(a) is a schematic perspective view showing an example in which the robot 10 shown in FIG. 4 is moved by CP control that performs linear interpolation so that the trajectory of the hand 27 becomes a straight line. The posture R) and the posture after movement (posture S) are shown. FIG. 7(b) shows changes in the axis speed of each axis when the robot is moved from posture R to posture S under CP control. As is clear from FIG. 7(b), the manner in which the shaft speed of the motor increases or decreases greatly differs from motor to motor. The ratio of the speeds of the motors on different axes is not constant, but varies greatly from the start to the end of the movement. The motor speed ratio and its changes cannot be obtained simply by providing coordinate information of the start and end points of movement, but cannot be known unless the robot 10 is actually operated under CP control. Therefore, unlike the case of PTP control, in CP control, if a CP control operation command is input with a specification of the overall speed of the robot 10, a collision detection limit value for each axis can be assigned on the spot. I can't. Note that in CP control, the speed change of the motor of each axis is not known in advance, so the speed of the motor of any axis will be the maximum speed specified for that motor, and the speed of the motors of the remaining axes will be the speed of those motors. It is difficult to specify 100% of the overall speed under the condition that the maximum speed is less than the maximum speed specified for each. Instead, in the robot control device 50, the maximum value of the overall speed of the robot 10 in CP control is determined in consideration of the margin, and the maximum value of the speed is set as 100% of the overall speed in CP control.

ところで、CP制御ではPTP制御に比べてロボットを素早く動かすことができないので、搬送用のロボットにおいては、CP制御を用いる場面は限定的である。図4に示した搬送用のロボット10の場合であれば、図5を用いて説明したように、ワーク60の搬送元あるいは搬送先となるステージ61への進入または退出、すなわち進入位置とステージ位置との間の移動にだけCP制御が使用され、それ以外の移動にはPTP制御が用いられる。ステージ61の場所は固定されていることが一般的であり、ステージ61の場所が固定されていれば、ステージ61ごとにそのステージ61のステージ位置に対するCP制御でのロボット10の移動軌跡は変化しないと考えられる。言い換えれば、ステージ61に対するロボット10のティーチング(教示)が完了した後は、ロボット10は、そのステージ61に対してCP制御で移動するときに、毎回、同じ軌跡を通過する。 By the way, since CP control cannot move the robot as quickly as PTP control, the situations in which CP control is used in transportation robots are limited. In the case of the transport robot 10 shown in FIG. 4, as explained using FIG. CP control is used only for movement between and PTP control is used for other movement. The location of the stage 61 is generally fixed, and if the location of the stage 61 is fixed, the movement trajectory of the robot 10 under CP control with respect to the stage position of each stage 61 does not change. it is conceivable that. In other words, after the teaching of the robot 10 to the stage 61 is completed, the robot 10 passes through the same trajectory every time it moves relative to the stage 61 under CP control.

そこで本実施形態では、ステージ61ごとに衝突検出リミットテーブルを用意して記憶部55に格納し、CP制御時には閾値発生部53は衝突検出リミットテーブルを参照して得た閾値を比較部54に出力する。図8は、ステージ#1とステージ#2の2つのステージ61があるとして。衝突検出リミットテーブルの内容の一例を示している。図示されるようにステージ61ごとに設けられる衝突検出リミットテーブルは、軸ごとにかつ全体速度での速度領域ごとに閾値である衝突検出リミット値を示したものである。全体速度での速度領域のことをCP用(あるいは連続経路制御用)速度領域と呼ぶ。これに対し、表2を用いて説明したようにモータについて規定された最大速度に基づいて定められる速度領域のことをPTP用(あるいはポイント・ツー・ポイント用)速度領域と呼ぶ。表2に示す場合と同様に、テーブルにおいて全体速度の「10%」は全体速度が0%以上10%以下である場合に対応し、「20%」は全体速度が20%を超えて30%以下である場合に対応する。例えば、ステージ#1においてCP制御の全体速度が45%であるならば、A軸に対応する閾値発生部53は、ステージ#1用の衝突検出リミットテーブルにおいて全体速度が「50%」の欄を参照し、A軸に対する衝突検出リミット値として240cN・mを取得して閾値として比較部54に出力し、同様にB軸に対応する閾値発生部53は、B軸に対する衝突検出リミット値として200cN・mを取得する。他の軸についても同様である。 Therefore, in this embodiment, a collision detection limit table is prepared for each stage 61 and stored in the storage unit 55, and during CP control, the threshold value generation unit 53 outputs the threshold value obtained by referring to the collision detection limit table to the comparison unit 54. do. In FIG. 8, it is assumed that there are two stages 61, stage #1 and stage #2. An example of the contents of a collision detection limit table is shown. As shown in the figure, the collision detection limit table provided for each stage 61 indicates a collision detection limit value, which is a threshold value, for each axis and for each speed region at the overall speed. The speed region at the overall speed is called the CP (or continuous path control) speed region. On the other hand, as explained using Table 2, the speed range determined based on the maximum speed specified for the motor is called the PTP (or point-to-point) speed range. Similar to the case shown in Table 2, in the table, "10%" of the overall speed corresponds to the case where the overall speed is between 0% and 10%, and "20%" corresponds to the case where the overall speed is over 20% and 30%. It corresponds to the following cases. For example, if the overall speed of CP control in stage #1 is 45%, the threshold value generation unit 53 corresponding to the A-axis selects the column for the overall speed of "50%" in the collision detection limit table for stage #1. 240 cN·m is obtained as a collision detection limit value for the A-axis and outputted to the comparator 54 as a threshold value, and similarly, the threshold generating unit 53 corresponding to the B-axis acquires 200 cN·m as a collision detection limit value for the B-axis. Get m. The same applies to other axes.

ステージ61ごとの衝突検出リミットテーブルは、ロボット10のCP制御でのそのステージ61に対するティーチングが完了した時点で、そのステージ61におけるCP制御での各軸の速度割合を測定し、軸ごとの衝突検出リミット値を算出することによって作成することができる。具体的は、該当するステージ61への移動動作に際して駆動部52内での各軸のトルク補正値を測定してトルク波形を求め、トルク波形から軸ごとの最大トルク補正値を求め、軸ごとの最大トルク補正値にロボットごとの個体差を吸収するためのマージンを加算したものを軸ごとの衝突検出リミット値とする。ロボット制御装置50に設けられているテーブル生成部56は、駆動部52からのトルク補償値の取得から軸ごとの衝突検出リミット値の算出までの処理を実行し、そのときの対象となっているステージとそのときの全体速度とに基づいて、算出された衝突検出リミット値を記憶部55内の衝突検出リミットテーブルに書き込む。このような衝突検出リミット値の算出を、ロボット10によってアクセスされるすべてのステージ61と全ての速度領域(全体速度に関して衝突検出リミットテーブルにおいて用いている全ての速度領域)とについて実行することにより、ステージ61ごとの衝突検出リミットテーブルが完成する。ひとたび衝突検出リミットテーブルが完成すれば、それ以降は、ロボット10がCP制御によりステージ61にアクセスするときに、衝突検出リミットテーブルから読み出した衝突検出リミット値を各軸に割り当てることによって、CP制御においてロボット10を動作させるときに、より最適な衝突検知を行うことができるようになる。 The collision detection limit table for each stage 61 is created by measuring the speed ratio of each axis under CP control in the stage 61 when the robot 10 completes teaching for that stage 61 under CP control, and detecting collision for each axis. It can be created by calculating the limit value. Specifically, during movement to the corresponding stage 61, the torque correction value of each axis within the drive unit 52 is measured to obtain a torque waveform, the maximum torque correction value for each axis is obtained from the torque waveform, and the maximum torque correction value for each axis is calculated. The collision detection limit value for each axis is determined by adding a margin for absorbing individual differences between robots to the maximum torque correction value. The table generation unit 56 provided in the robot control device 50 executes processing from acquiring the torque compensation value from the drive unit 52 to calculating the collision detection limit value for each axis, and is the target at that time. The calculated collision detection limit value is written into the collision detection limit table in the storage unit 55 based on the stage and the overall speed at that time. By calculating such a collision detection limit value for all stages 61 and all speed regions (all speed regions used in the collision detection limit table regarding the overall speed) accessed by the robot 10, A collision detection limit table for each stage 61 is completed. Once the collision detection limit table is completed, from then on, when the robot 10 accesses the stage 61 under CP control, the collision detection limit value read from the collision detection limit table is assigned to each axis. When operating the robot 10, more optimal collision detection can be performed.

以上説明した本実施形態の衝突検出方法によれば、モータのトルク値が衝突検出リミット値を超えたときに衝突発生と判定する場合において、モータ速度に応じて衝突検出リミット値を変化させるので、ロボットが低速で運動しているときであっても衝突の発生を速やかかつ確実に検出できる。特に、ステージごとかつ軸ごとに全体速度ごとの閾値をあらかじめ格納した衝突検出リミットテーブルを用意しておき、CP制御でロボットを実際に移動させるときには指令された全体速度によって衝突検出リミットテーブルを参照して閾値である衝突検出リミット値を得ることによって、CP制御によってロボットをステージにアクセスさせる際に、より最適な衝突検出を行うことができる。ロボットがPTP成語で動作しているときにおいても、衝突の発生を確実検出できる。 According to the collision detection method of the present embodiment described above, when determining that a collision has occurred when the motor torque value exceeds the collision detection limit value, the collision detection limit value is changed according to the motor speed. To quickly and reliably detect the occurrence of a collision even when the robot is moving at low speed. In particular, a collision detection limit table is prepared in which threshold values for each overall speed are stored for each stage and each axis, and when the robot is actually moved using CP control, the collision detection limit table is referred to based on the commanded overall speed. By obtaining the collision detection limit value, which is a threshold value, more optimal collision detection can be performed when the robot is accessed to the stage by CP control. Even when the robot is operating in PTP mode, the occurrence of a collision can be reliably detected.

10…ロボット;11,11A,11B,11C,11D,11Z…モータ;12…エンコーダ;22…基台;23…リンク機構;26…アーム;27…上側ハンド;28…下側ハンド;29…昇降部;50…ロボット制御装置:51…演算部;52…駆動部;53…閾値発生部;54…比較部;55…記憶部;56…テーブル生成部。
10... Robot; 11, 11A, 11B, 11C, 11D, 11Z... Motor; 12... Encoder; 22... Base; 23... Link mechanism; 26... Arm; 27... Upper hand; 28... Lower hand; 29... Lifting 50... Robot control device; 51... Calculation unit; 52... Drive unit; 53... Threshold generation unit; 54... Comparison unit; 55... Storage unit; 56... Table generation unit.

Claims (10)

複数の軸を備えて各軸がそれぞれモータによって駆動されるロボットにおける衝突の発生を検出する衝突検出方法であって、
軸ごとに前記モータの速度に応じて定まる閾値と当該軸の前記モータのトルク値とを比較し、前記トルク値が前記閾値を上回ったときに衝突が発生したと判定する衝突判定工程を有し、
前記ロボットが複数のステージの間でワークを搬送するロボットであって前記ステージごとに当該ステージの進入位置とステージ位置との間を前記ロボットが連続経路制御によって移動するときに、前記衝突判定工程において、ステージごとかつ軸ごとに全体速度ごとの前記閾値をあらかじめ格納した衝突検出リミットテーブルを参照して得られる前記閾値が使用され、
前記全体速度は、前記連続経路制御により動作する前記ロボットの全体としての速度である、衝突検出方法。
A collision detection method for detecting the occurrence of a collision in a robot equipped with a plurality of axes, each of which is driven by a motor, the method comprising:
A collision determination step of comparing a threshold value determined according to the speed of the motor for each axis with a torque value of the motor of the axis, and determining that a collision has occurred when the torque value exceeds the threshold value. ,
In the collision determination step, when the robot is a robot that transports a workpiece between a plurality of stages, and the robot moves between the entry position of the stage and the stage position for each stage by continuous path control. , the threshold value obtained by referring to a collision detection limit table in which the threshold value for each overall speed is stored in advance for each stage and each axis is used,
The collision detection method, wherein the overall speed is the overall speed of the robot operating under the continuous path control.
前記衝突検出リミットテーブルにおいて、全体速度が速度ゼロから前記連続経路制御で規定された最大速度までの範囲で複数の連続経路制御用速度領域に区分され、前記連続経路制御用速度領域ごとに前記閾値が単一の値として定められている、請求項1に記載の衝突検出方法。 In the collision detection limit table, the overall speed is divided into a plurality of speed regions for continuous path control in a range from zero speed to the maximum speed specified in the continuous path control, and the threshold value is set for each speed region for continuous path control. The collision detection method according to claim 1, wherein: is determined as a single value. 前記閾値は、前記ロボットの前記連続経路制御でのティーチングが完了したときに、前記モータのトルク波形における最大値に基づいて決定されて前記衝突検出リミットテーブルに格納される、請求項1または2に記載の衝突検出方法。 3. The threshold value is determined based on a maximum value in a torque waveform of the motor and stored in the collision detection limit table when teaching of the robot in the continuous path control is completed. Collision detection method described. 前記ロボットは、待機位置と前記進入位置との間をポイント・ツー・ポイント制御で移動し、
前記ポイント・ツー・ポイント制御で移動しているときは、前記モータの速度が低いほど小さく前記モータの速度が大きいほど大きくなるよう前記複数の軸の各々に対する速度割合に応じて軸ごとに定められた速度に基づいて、当該軸に対する前記閾値が定められる、請求項1または2に記載の衝突検出方法。
The robot moves between a standby position and the approach position under point-to-point control,
When moving under the point-to-point control, the speed ratio is determined for each axis in accordance with the speed ratio for each of the plurality of axes, such that the lower the speed of the motor is, the smaller the speed is, and the higher the speed of the motor is, the higher the speed is. The collision detection method according to claim 1 or 2, wherein the threshold value for the axis is determined based on the speed determined by the axis.
速度ゼロから前記モータの最大速度までの範囲が複数のポイント・ツー・ポイント制御用速度領域に区分され、前記ポイント・ツー・ポイント制御用速度領域ごとに前記ポイント・ツー・ポイント制御のときに使用される前記閾値が単一の値として定められている、請求項4に記載の衝突検出方法。 The range from speed zero to the maximum speed of the motor is divided into a plurality of point-to-point control speed regions, and each point-to-point control speed region is used during the point-to-point control. 5. The collision detection method according to claim 4, wherein the threshold value is determined as a single value. 複数の軸を備えて各軸がそれぞれモータによって駆動されるロボットにおける衝突の発生を検出する衝突検出装置であって、
軸ごとに前記モータの速度に応じて定まる閾値を発生する閾値発生部と、
前記閾値発生部から供給された前記閾値と前記モータのトルク値とを比較して、前記トルク値が前記供給された閾値を上回ったときに衝突が発生したと判定する比較部と、
ステージごとかつ軸ごとに全体速度ごとの前記閾値をあらかじめ格納した衝突検出リミットテーブルを格納する記憶部と、
を有し、
前記ロボットが複数のステージの間でワークを搬送するロボットであって前記ステージごとに当該ステージの進入位置とステージ位置との間を前記ロボットが連続経路制御によって移動するときに、前記閾値発生部は、前記衝突検出リミットテーブルを参照して得られる前記閾値を前記比較部に供給し、
前記全体速度は、前記連続経路制御により動作する前記ロボットの全体としての速度である、衝突検出装置。
A collision detection device for detecting the occurrence of a collision in a robot equipped with a plurality of axes, each of which is driven by a motor,
a threshold value generation unit that generates a threshold value determined according to the speed of the motor for each axis;
a comparison unit that compares the threshold value supplied from the threshold generation unit and the torque value of the motor, and determines that a collision has occurred when the torque value exceeds the supplied threshold value;
a storage unit that stores a collision detection limit table in which the threshold value for each overall speed is stored in advance for each stage and each axis;
has
When the robot is a robot that transports a workpiece between a plurality of stages, and when the robot moves between the entry position of the stage and the stage position for each stage by continuous path control, the threshold value generation unit , supplying the threshold value obtained by referring to the collision detection limit table to the comparison unit;
The collision detection device, wherein the overall speed is the overall speed of the robot operating under the continuous path control.
前記衝突検出リミットテーブルにおいて、全体速度が速度ゼロから前記連続経路制御で規定された最大速度までの範囲で複数の連続経路制御用速度領域に区分され、前記連続経路制御用速度領域ごとに前記閾値が単一の値として定められている、請求項6に記載の衝突検出装置。 In the collision detection limit table, the overall speed is divided into a plurality of speed regions for continuous path control in a range from zero speed to the maximum speed specified in the continuous path control, and the threshold value is set for each speed region for continuous path control. The collision detection device according to claim 6, wherein is determined as a single value. 前記モータのトルク波形における最大値に基づいて前記閾値を決定して前記衝突検出リミットテーブルに格納するテーブル生成部をさらに有する、請求項6または7に記載の衝突検出装置。 The collision detection device according to claim 6 or 7, further comprising a table generation unit that determines the threshold value based on the maximum value in the torque waveform of the motor and stores it in the collision detection limit table. 前記ロボットは、待機位置と前記進入位置との間をポイント・ツー・ポイント制御で移動し、
前記ポイント・ツー・ポイント制御で移動しているときに前記閾値発生部が発生する前記閾値は、前記モータの速度が低いほど小さく前記モータの速度が大きいほど大きくなるよう前記複数の軸の各々に対する速度割合に応じて軸ごとに定められた速度に基づいて定められたものである、請求項6または7に記載の衝突検出装置。
The robot moves between a standby position and the approach position under point-to-point control,
The threshold value generated by the threshold value generation unit during movement under the point-to-point control is set for each of the plurality of axes such that the lower the motor speed is, the smaller the threshold value is, and the higher the motor speed is, the larger the threshold value is. The collision detection device according to claim 6 or 7, wherein the collision detection device is determined based on a speed determined for each axis according to a speed ratio.
速度ゼロから前記モータの最大速度までの範囲が複数のポイント・ツー・ポイント制御用速度領域に区分され、前記ポイント・ツー・ポイント制御用速度領域ごとに前記ポイント・ツー・ポイント制御のときに使用される前記閾値が単一の値として定められている、請求項9に記載の衝突検出装置。
The range from zero speed to the maximum speed of the motor is divided into a plurality of point-to-point control speed regions, and each point-to-point control speed region is used during the point-to-point control. The collision detection device according to claim 9, wherein the threshold value is determined as a single value.
JP2022117098A 2022-07-22 2022-07-22 Collison detection method of robot and collision detection device of robot Pending JP2024014341A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022117098A JP2024014341A (en) 2022-07-22 2022-07-22 Collison detection method of robot and collision detection device of robot
CN202310892224.7A CN117428755A (en) 2022-07-22 2023-07-19 Collision detection method for robot and collision detection device for robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022117098A JP2024014341A (en) 2022-07-22 2022-07-22 Collison detection method of robot and collision detection device of robot

Publications (1)

Publication Number Publication Date
JP2024014341A true JP2024014341A (en) 2024-02-01

Family

ID=89545194

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022117098A Pending JP2024014341A (en) 2022-07-22 2022-07-22 Collison detection method of robot and collision detection device of robot

Country Status (2)

Country Link
JP (1) JP2024014341A (en)
CN (1) CN117428755A (en)

Also Published As

Publication number Publication date
CN117428755A (en) 2024-01-23

Similar Documents

Publication Publication Date Title
US9724825B2 (en) Robot controller for robot which sets two objects in combined state
US9452532B2 (en) Robot, device and method for controlling robot, and computer-readable non-transitory recording medium
EP2042278B1 (en) Robot controller for halting a robot based on the speed of a robot hand portion
JP4291382B2 (en) Machine tool with automatic correction function of mounting error by contact detection
JP5849451B2 (en) Robot failure detection method, control device, and robot
US20050137739A1 (en) Method of controlling numerically controlled machine tool and numerically controlled machine tool
US11040449B2 (en) Robot control system and method of controlling a robot
JP4261470B2 (en) Control device
US11141855B2 (en) Robot system, method of controlling robot arm, recording medium, and method of manufacturing an article
JP2006102889A (en) Abnormality-determining device of speed reducer and abnormality-determining method of speed reducer
US20220134553A1 (en) Torque control of a motor
TW201740232A (en) Machine tool collision detecting apparatus equipped with collision stress releasing device
US11559851B2 (en) Laser machining device and laser machining method
JP2024014341A (en) Collison detection method of robot and collision detection device of robot
JP2023122808A (en) Robot collision detection method and robot collision detection device
US11079734B2 (en) Position control system of a machine tool control drive based on motor and object position
JP2019084627A (en) Method for returning horizontal multi-joint robot to original position
US20230311305A1 (en) Robot control device, robot control method, and non-transitory computer-readable storage medium storing robot control program
JPH0639066B2 (en) Control method for industrial robot
JP3855629B2 (en) Robot interference detection device
US20230138649A1 (en) Following robot
WO2020189031A1 (en) Information processing device, information processing method, and information processing program
JP2008253132A (en) Method of detecting and controlling abnormal load in servo motor and articulated robot
CN116890335A (en) Robot control device, robot control method, and storage medium
JP2734258B2 (en) Robot trajectory correction device