WO2022138337A1 - ロボット制御装置及びロボットシステム - Google Patents

ロボット制御装置及びロボットシステム Download PDF

Info

Publication number
WO2022138337A1
WO2022138337A1 PCT/JP2021/046108 JP2021046108W WO2022138337A1 WO 2022138337 A1 WO2022138337 A1 WO 2022138337A1 JP 2021046108 W JP2021046108 W JP 2021046108W WO 2022138337 A1 WO2022138337 A1 WO 2022138337A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
vibration amount
command value
vibration
unit
Prior art date
Application number
PCT/JP2021/046108
Other languages
English (en)
French (fr)
Inventor
聡 稲垣
元 鈴木
Original Assignee
ファナック株式会社
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 ファナック株式会社 filed Critical ファナック株式会社
Priority to DE112021005419.8T priority Critical patent/DE112021005419T5/de
Priority to CN202180084128.9A priority patent/CN116615316A/zh
Priority to JP2022572198A priority patent/JP7460800B2/ja
Priority to US18/248,466 priority patent/US20230364789A1/en
Publication of WO2022138337A1 publication Critical patent/WO2022138337A1/ja

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/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1641Programme controls characterised by the control loop compensation for backlash, friction, compliance, elasticity in the joints
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23KSOLDERING OR UNSOLDERING; WELDING; CLADDING OR PLATING BY SOLDERING OR WELDING; CUTTING BY APPLYING HEAT LOCALLY, e.g. FLAME CUTTING; WORKING BY LASER BEAM
    • B23K11/00Resistance welding; Severing by resistance heating
    • B23K11/10Spot welding; Stitch welding
    • B23K11/11Spot welding
    • B23K11/115Spot welding by means of two electrodes placed opposite one another on both sides of the welded parts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39186Flexible joint
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39195Control, avoid oscillation, vibration due to low rigidity

Definitions

  • the present invention relates to a robot control device and a robot system.
  • a wide range of systems such as robot welding systems that perform desired work by moving a reference point representing the position of a transported object such as a tool or work held at the tip of a robot along a predetermined trajectory. It's being used.
  • the robot is operated so that the tip portion of the robot passes through the plurality of passing points in order according to an operation program representing a desired locus with a plurality of passing points.
  • the robot has a slight elasticity in its mechanical structure, so it generates vibrations as it moves.
  • the vibration of the robot increases. Therefore, it has been proposed to measure the vibration during actual operation of the robot and modify the acceleration / deceleration time of the robot so that the vibration of the robot can be suppressed by machine learning based on the measured value (for example, Patent Document 1). reference).
  • the robot control device is an operation program that specifies a movement path including one or a plurality of work sections for performing the work by a plurality of passing points in order to perform work on an object moved by the robot.
  • a robot control device that controls the operation of the robot based on the above, a command value creating unit that creates a command value for instructing the state of the robot at each time based on the operation program, and the robot according to the command value.
  • a vibration amount extraction unit that extracts the vibration amount at the time corresponding to the work section
  • a command value correction unit that corrects the command value based on the vibration amount extracted by the vibration amount extraction unit
  • a command value correction unit that corrects the command value based on the vibration amount extracted by the vibration amount extraction unit
  • FIG. 1 is a schematic diagram showing a configuration of a robot system 1 according to an embodiment of the present invention.
  • the robot system 1 includes the robot 10, an object 20 held by the tip of the robot 10 and moved by the robot 10, and the vibration amount of the robot 10 (the theoretical position and the actual position of the tip portion).
  • a vibration detector 30 for detecting a value related to (dissociation from) and a robot control device 40 for controlling the robot 10 are provided.
  • a vertical articulated robot as shown in the figure is typically used.
  • the robot 10 will be described as a vertical articulated robot, but the robot 10 may be, for example, a scalar type robot, a parallel link type robot, a Cartesian coordinate type robot, or the like.
  • the robot 10 includes a plurality of links connected by joints, and determines the angular position of the drive axis of each joint according to a command value input from the robot control device 40, whereby the object 20 is set in the world coordinate system (usually a robot). Position on the coordinate system of the space where the base of 10 is fixed). Since the link and joint drive mechanisms of the robot 10 can be slightly elastically deformed, vibration can be generated with the operation of the robot 10. The vibration of the robot 10 produces the vibration amount of the object 20.
  • the object 20 is assumed to be, for example, a device that performs various operations such as processing and measurement, a work that is the object of the work, and the like, and may be a holder that holds them.
  • the object 20 illustrated as an example in FIG. 1 is a welding head that performs spot welding by sandwiching a work and applying a welding current.
  • the vibration detector 30 detects values that can be used to calculate the vibration amount, such as the position, acceleration, etc. of the tip of the robot 10 or the object 20 in the world coordinate system.
  • the vibration detector 30 is fixed to the tip of the robot 10 so as not to move relative to the object 20, but even if the vibration detector 30 is immovably arranged in the world coordinate system. good.
  • the robot control device 40 uses a robot based on an operation program that specifies a movement path including one or a plurality of work sections in which the work is performed by a plurality of passing points. 10 controls the operation. Specifically, the robot control device 40 supplies a drive current to each drive shaft of the robot 10 in order to operate the robot 10 according to the operation program.
  • the robot control device 40 can be realized by causing one or a plurality of computer devices having, for example, a memory, a CPU, an input / output interface, and the like to execute an appropriate control program. It should be noted that each component of the robot control device 40 described below is categorized in its function and may not be clearly categorized in the physical configuration and the program configuration.
  • the robot control device 40 includes a program storage unit 41, a command value creation unit 42, a command value storage unit 43, a drive unit 44, a vibration amount acquisition unit 45, a vibration amount extraction unit 46, and a command value correction unit 47. And.
  • the program storage unit 41 stores the operation program.
  • an operation program for performing spot welding on a moving path as shown in FIG. 2 can be described as follows.
  • the illustrated operation program includes a command statement that specifies the passing point of the robot 10 and a command statement that indicates the start point and the end point of learning, as in the conventional case.
  • a command that instructs the execution of the work on the object 20 can be described.
  • "Ichi [n]” indicates the nth defined passing point in the table in which the passing point is separately defined.
  • the start point and the end point of the work section in which the work is actually performed on the object can be specified by either of the passing points.
  • about “Ichi [n]” it is shown as "p [n]” in the drawing for simplification.
  • the robot control device 40 of the present embodiment is configured so that the type of work can be described in a command statement indicating a learning start point.
  • work performed at a single pass point such as spot welding, or work that starts at one pass point and ends at another pass point, for example laser machining. Whether it is present or not is determined.
  • the "spot" at the end of the instruction statement indicating the start point of learning in the sixth line is that the work content is spot welding, and the work section is only one passing point, that is, the start point and end point of the work section. Is a switch indicating that they are the same.
  • the "laser beam" at the end of the command statement indicating the start point of learning in the third line is a passing point in which the work content is laser processing and the work section is a command indicating the start point of laser irradiation. It is a switch indicating that the instruction indicating the end point of laser irradiation ends at the passing point described.
  • the command value creation unit 42 creates a command value that indicates the state of the robot 10 at each time based on the operation program. Specifically, when the object 20 is moved along the path described in the operation program, the position to be taken by each drive axis of the robot 10 is calculated for each time.
  • the command value storage unit 43 stores the command value created by the command value creation unit 42.
  • the command value stored in the command value storage unit 43 may be updated by the command value correction unit 47.
  • the drive unit 44 drives the robot 10 according to the command value stored in the command value storage unit 43. Specifically, the rotation speed of the drive shaft and the drive current required for the rotation speed of the drive shaft are calculated so that each drive shaft of the robot 10 is at an angle position specified by a command value, and the calculated drive current is used as each shaft of the robot 10. Supply to.
  • the vibration amount acquisition unit 45 acquires the vibration amount for each time of the robot 10 driven by the drive unit 44 based on the detection value of the vibration detector 30. Specifically, when the vibration detector 30 detects the tip of the robot 10 or the position of the object 20 in the world coordinate system, the vibration amount acquisition unit 45 uses the detection value of the vibration detector 30 and the robot control device 40. It may be configured to calculate the vibration amount from the difference from the position calculated from the command value. When the vibration detector 30 detects the acceleration of the tip of the robot 10 or the object 20, the vibration amount acquisition unit 45 calculates the acceleration from the detection value of the vibration detector 30 and the command value of the robot control device 40. It may be configured to calculate the vibration amount from the difference between the above and the vibration amount.
  • the vibration amount extraction unit 46 extracts the vibration amount at the time corresponding to the work section from the vibration amount acquired by the vibration amount acquisition unit 45 based on the operation program.
  • the "time corresponding to the work section” may be a predetermined setting range in which the entire range of the work section and its end point coincide with the start point of the work section, that is, the time belonging to the setting range immediately before the work section. preferable.
  • the "setting range” is a range expected to have a great influence on the vibration of the robot 10 at the start point of the work section, and is determined based on a predetermined rule set in advance.
  • the setting range can be appropriately set according to the expected vibration of the robot 10, such as a constant time range, a constant movement distance range, and a time range proportional to the movement speed.
  • the setting range may be set to "zero", that is, the vibration amount extraction range may be set to match the working section.
  • FIG. 4 shows the range in which the vibration amount is extracted in the movement path of FIG. 2
  • FIG. 5 shows the range in which the vibration amount is extracted in the movement path of FIG. 3 with a thick line.
  • the vibration amount extraction unit 46 extracts only the vibration amount in the work section where the work is performed on the object 20 and the set range immediately before the work section, and the vibration in the section where the work is not performed except for the set range immediately before the work section. Ignore the amount.
  • the motion program is created to limit the speed and acceleration of the object 20 in order to perform the work accurately on the object 20 in the work section, but the speed is set in order to shorten the cycle time between the work sections. And created without limiting acceleration. According to such an operation program, immediately after starting the movement from the end point of the work section to the start point of the next work section, the vibration amount due to the elastic deformation of the robot 10 that maximizes the acceleration of the robot 10 tends to increase.
  • the command value correction unit 47 corrects the command value at which the vibration amount of the robot 10 becomes small by machine learning based on the vibration amount extracted by the vibration amount extraction unit 46.
  • the command value correction unit 47 treats the vibration amount at the time when the vibration amount extraction unit 46 is not extracted as being zero. That is, the command value correction unit 47 corrects the command value so as to reduce only the vibration amount that can affect the accuracy of the work of the object 20 in the work section and the set range immediately before the work section. On the other hand, the command value correction unit 47 does not affect the accuracy of the work of the object 20 immediately after starting the movement from the end point of the work section to the start point of the next work section, and the vibration amount tends to be large. Does not compensate for vibration.
  • the command value can be corrected by machine learning based on the vibration amount by a known method.
  • the command value correction unit 47 allows vibration while the acceleration of the robot 10 is large, it is possible to prevent an increase in vibration amount due to overshoot of vibration amount compensation in the working section. Even if there is a discrepancy between the actual position of the robot 10 and the position intended by the operation program while the object 20 is moved between the work section and the next work section without performing work. , Does not affect the result of work.
  • FIG. 6 shows the flow of command value correction in the robot system 1 as a control block diagram.
  • FIG. 7 is a graph showing an example of time change of the position of the object 20 in spot welding by the robot system 1.
  • the position change due to the command value before correction according to the operation program the position change due to the command value corrected to reduce the vibration of the entire section by three operations, and only the work section and the set section by three operations.
  • the position change due to the command value corrected to reduce the vibration is shown.
  • the time of the working section (passing point where spot welding is performed) is 1.5 seconds
  • the time of the starting point of the set range is 0.7 seconds.
  • the vibration amount extracting unit 46 by extracting only the vibration amount of only the working section and the set section by the vibration amount extracting unit 46 and correcting the command value, the vibration at the time of spot welding can be significantly suppressed.
  • Robot system 10 Robot 20 Object 30 Vibration detector 40 Robot control device 41 Program storage unit 42 Command value creation unit 43 Command value storage unit 44 Drive unit 45 Vibration amount acquisition unit 46 Vibration amount extraction unit 47 Command value correction unit

Landscapes

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

Abstract

少ない回数の動作に基づく機械学習によりロボットの振動量を低減できるロボット制御装置を提供すること。本発明の一態様に係るロボット制御装置は、ロボットによって移動させられる対象物について作業を行うために、作業を行う1又は複数の作業区間を含む移動経路を複数の通過点によって特定する動作プログラムに基づいてロボットの動作を制御するロボット制御装置であって、動作プログラムに基づいてロボットの時刻ごとの状態を指示する指令値を作成する指令値作成部と、指令値に従ってロボットを駆動する駆動部と、駆動部により駆動されるロボットの時刻ごとの振動量を取得する振動量取得部と、動作プログラムに基づいて、振動量取得部が取得した振動量の中から、作業区間に対応する時刻の振動量を抽出する振動量抽出部と、振動量抽出部が抽出した振動量に基づいて、指令値を補正する指令値補正部と、を備える。

Description

ロボット制御装置及びロボットシステム
 本発明は、ロボット制御装置及びロボットシステムに関する。
 例えばロボット溶接システム等、ロボットの先端部に保持される工具、ワーク等の搬送物の位置を代表する基準点を予め定められた軌跡に沿って移動させることで所望の作業を行うシステムが広範に利用されている。このようなロボットシステムでは、所望の軌跡を複数の通過点で表す動作プログラムに従って、ロボットの先端部が複数の通過点を順番に通過するようロボットを動作させる。
 ロボットは、その機械的構造に僅かではあるが弾性を有するため、その動作に伴って振動を発生する。ロボットの動作を高速化することで作業効率を向上しようとすると、ロボットの振動が大きくなる。そこで、実際のロボットの動作時の振動を測定し、この測定値に基づく機械学習によって、ロボットの振動を抑制できるようロボットの加減速時間を修正することが提案されている(例えば、特許文献1参照)。
特開2019-147197公報
 機械学習によってロボットの振動を十分に抑制するためには、ロボットを動作させて実際に発生する振動を確認する工程と、確認された振動を操作するよう指令値を補正する工程とを繰り返し行う必要がある。ロボットが例えば多品種少量生産の製造ラインに用いられる場合等、同じロボットシステムにおいて多様な動作プログラムを実行する場合には、動作プログラムごとに機械学習のための動作を繰り返すことが必要である。振動を許容範囲内とするために必要な機械学習のための繰り返し回数は、ロボットの動作速度を大きくすれば増加する。このため、必要とされる動作プログラム実行回数が少ない場合、ロボットの動作速度の増大による時間短縮を機械学習のために要する時間が相殺してしまう。
 かかる実情に鑑みて本発明は、少ない回数の動作に基づく機械学習によりロボットの振動を低減できるロボット制御装置及びロボットシステムを提供することを課題とする。
 本発明の一態様に係るロボット制御装置は、ロボットによって移動させられる対象物について作業を行うために、前記作業を行う1又は複数の作業区間を含む移動経路を複数の通過点によって特定する動作プログラムに基づいて前記ロボットの動作を制御するロボット制御装置であって、前記動作プログラムに基づいて前記ロボットの時刻ごとの状態を指示する指令値を作成する指令値作成部と、前記指令値に従って前記ロボットを駆動する駆動部と、前記駆動部により駆動される前記ロボットの時刻ごとの振動量を取得する振動量取得部と、前記動作プログラムに基づいて、前記振動量取得部が取得した前記振動量の中から、前記作業区間に対応する時刻の前記振動量を抽出する振動量抽出部と、前記振動量抽出部が抽出した前記振動量に基づいて、前記指令値を補正する指令値補正部と、を備える。
 本発明によれば、少ない回数の動作に基づく機械学習により振動を低減できるロボットシステムを提供できる。
本発明の一実施形態に係るロボットシステムの構成を示す模式図である。 図1のロボットシステムによりスポット溶接を行う場合の対象物の移動経路を示す模式図である。 図1のロボットシステムによりレーザ加工を行う場合の対象物の移動経路を示す模式図である。 図2の移動経路において振動量が抽出される範囲を示す模式図である。 図3の移動経路において振動量が抽出される範囲を示す模式図である。 図1のロボットシステムにおける指令値補正の流れを示す制御ブロック図である。 図1のロボットシステムにおける対象物の位置の変化を示すグラフである。
 以下、本発明の実施形態について、図面を参照しながら説明をする。図1は、本発明の一実施形態に係るロボットシステム1の構成を示す模式図である。
 本実施形態に係るロボットシステム1は、ロボット10と、ロボット10の先端に保持され、ロボット10によって移動させられる対象物20と、ロボット10の振動量(先端部の理論上の位置と実際の位置との乖離)に関する値を検出する振動検出器30と、ロボット10を制御するロボット制御装置40と、を備える。
 ロボット10としては、典型的には図示するような垂直多関節型ロボットが用いられる。以下の説明では、ロボット10が垂直多関節型ロボットであるものとして説明するが、ロボット10は、例えばスカラー型ロボット、パラレルリンク型ロボット、直交座標型ロボット等であってもよい。
 ロボット10は、関節で接続される複数のリンクを含み、ロボット制御装置40から入力される指令値に従って各関節の駆動軸の角度位置を定めることで、対象物20をワールド座標系(通常はロボット10の基部が固定される空間の座標系)上で位置決めする。ロボット10のリンク及び関節の駆動機構は、わずかながら弾性変形し得るため、ロボット10の動作に伴って振動を発生させ得る。ロボット10の振動は、対象物20の振動量を生じる。
 対象物20としては、例えば加工、測定等各種の作業を行う機器、作業の対象となるワークなどが想定され、それらを保持する保持具であってもよい。図1に一例として図示する対象物20は、ワークを挟み込んで溶接電流を印加することによりスポット溶接を行う溶接ヘッドである。
 振動検出器30は、ロボット10の先端部又は対象物20のワールド座標系における位置、加速度等、振動量を算出するために利用可能な値を検出する。図示する例では、振動検出器30は、ロボット10の先端部に対象物20に対して相対移動しないよう固定されているが、振動検出器30は、ワールド座標系において不動に配設されてもよい。
 ロボット制御装置40は、ロボット10によって移動させられる対象物20について作業を行うために、その作業を行う1又は複数の作業区間を含む移動経路を複数の通過点によって特定する動作プログラムに基づいてロボット10の動作を制御する。具体的には、ロボット制御装置40は、動作プログラムに従ってロボット10を動作させるために、ロボット10の各駆動軸に対して駆動電流を供給する。
 ロボット制御装置40は、例えばメモリ、CPU、入出力インターフェイス等を有する1又は複数のコンピュータ装置に適切な制御プログラムを実行させることにより実現できる。なお、以下に説明するロボット制御装置40の各構成要素は、その機能において類別されるものであって、物理構成及びプログラム構成において明確に区分できるものでなくてもよい。
 ロボット制御装置40は、プログラム記憶部41と、指令値作成部42と、指令値記憶部43と、駆動部44と、振動量取得部45と、振動量抽出部46と、指令値補正部47と、を備える。
 プログラム記憶部41は、動作プログラムを記憶する。ロボットシステム1において、例えば図2に示すような移動経路でスポット溶接を行うための動作プログラムは、次のように記述され得る。
(スポット溶接プログラム例)
  1:カクジク @イチ[1] 100% イチギメ
  2:
  3:カクジク @イチ[2] 100% ナメラカ50
  4:チョクセン @イチ[3] 3000mm/sec イチギメ
  5:
  6:  ガクシュウカイシ[1] タッセイド 0% スポット
  7:チョクセン @イチ[4] 2000mm/sec ナメラカ100
   :  スポット[S=1]
  8:
  9:チョクセン @イチ[5] 2000mm/sec ナメラカ100
   :  スポット[S=1]
 10:
 11:チョクセン @イチ[6] 2000mm/sec ナメラカ100
   :  スポット[S=1]
 12:  ガクシュウ オワリ
 13:
 14:チョクセン @イチ[7] 100mm/sec ナメラカ100
 15:カクジク @イチ[1] 100% イチギメ
[オワリ]
 例示する動作プログラムは、従来と同様に、ロボット10の通過点を指定する命令文と、学習の開始点及び終了点を示す命令文とを含む。ロボット10の通過点を指定する命令文には、対象物20についての作業の実行を指示する命令を記述できる。例示する動作プログラムにおいて、「イチ[n]」は、別途通過点を定義するテーブルにおいてn番目に定義された通過点を示す。実際に対象物について作業を行う作業区間の始点及び終点は、それぞれいずれかの通過点によって特定され得る。なお、「イチ[n]」については、図面上では、簡略化のため「p[n]」と示す。
 本実施形態のロボット制御装置40では、学習の開始点を示す命令文に作業の種類を記述できるよう構成されている。記述された作業の種類によって、スポット溶接のように単一の通過点で行われる作業であるか、例えばレーザ加工のようにいずれかの通過点で開始され、他の通過点において終了する作業であるか、が判別される。例示する動作プログラムにおいて、第6行の学習の開始点を示す命令文末尾の「スポット」は、作業内容がスポット溶接であり、作業区間が1つの通過点のみ、つまり作業区間の始点と終点とが同一であることを示すスイッチである。上記動作プログラムにおいて、第7行、第9行及び第11行の「スポット[S=1]」は、その行に記述され得る通過点においてスポット溶接を行うべきことを示す。
 次に、対象物20をワークに連続的にレーザを照射して線状の溝を形成するためのレーザヘッドとし、例えば図3に示すような移動経路でレーザ加工を行う場合の動作プログラムを例示する。
(レーザ加工プログラム例)
1 : カクジク イチ[1] 100% イチギメ
2 : 
3 : ガクシュウカイシ[1] タッセイド0% レーザカコウ
4 : DO[1] = オン
5 : エンコ     イチ[2]
            イチ[3] 400mm/s ナメラカ100
6 : エンコ     イチ[3] 
            イチ[4] 400mm/s ナメラカ100
7 : エンコ     イチ[4]
            イチ[1] 400mm/s イチギメ
8 : DO[1] = オフ
9 : 
10 : チョクセン イチ[5] 2000mm/s イチギメ
11 : DO[1] = オン
12 : チョクセン イチ[6] 400mm/s CR0
13 : チョクセン イチ[7] 400mm/s CR0
14 : チョクセン イチ[8] 400mm/s CR0
15 : チョクセン イチ[5] 400mm/s CR0
16 : DO[1] = オフ
17 : 
18 :チョクセン イチ[9] 2000mm/s イチギメ
19 : DO[1] = オン
20 : エンコ     イチ[10]
             イチ[11] 400mm/s ナメラカ100
21 : エンコ     イチ[11]
             イチ[12] 400mm/s ナメラカ100
22 : エンコ     イチ[12]
             イチ[9] 400mm/s イチギメ
23 : DO[1] = オフ
24 : ガクシュウ オワリ
[オワリ]
 例示する動作プログラムにおいて、第3行の学習の開始点を示す命令文末尾の「レーザカコウ」は、作業内容がレーザ加工であり、作業区間がレーザ照射の開始点を示す命令が記載された通過点に始まり、レーザ照射の終了点を示す命令が記載された通過点で終わることを示すスイッチである。上記動作プログラムにおいて、第4行、第11行及び第19行の「DO[1] = オン」は、次の行に記述された通過点においてレーザ照射を開始することを指示し、第8行、第16行及び第23行の「DO[1] =オフ」は、前の行に記述された通過点においてレーザ照射を終了することを指示する命令である。
 指令値作成部42は、動作プログラムに基づいてロボット10の時刻ごとの状態を指示する指令値を作成する。具体的には、対象物20を動作プログラムに記述される経路に沿って移動させる場合にロボット10の各駆動軸が時刻毎に取るべき位置を算出する。
 指令値記憶部43は、指令値作成部42が作成した指令値を記憶する。指令値記憶部43に記憶される指令値は、指令値補正部47によって更新され得る。
 駆動部44は、指令値記憶部43に記憶されている指令値に従ってロボット10を駆動する。具体的には、ロボット10の各駆動軸が指令値により指定される角度位置になるよう、駆動軸の回転速度及びそれに必要な駆動電流を算出し、算出された駆動電流をロボット10の各軸に供給する。
 振動量取得部45は、振動検出器30の検出値に基づいて、駆動部44により駆動されるロボット10の時刻ごとの振動量を取得する。具体的には、振動検出器30がロボット10の先端部又は対象物20のワールド座標系における位置を検出する場合、振動量取得部45は、振動検出器30の検出値とロボット制御装置40の指令値から算出される位置との差から振動量を算出するよう構成され得る。また、振動検出器30がロボット10の先端部又は対象物20の加速度を検出する場合、振動量取得部45は、振動検出器30の検出値とロボット制御装置40の指令値から算出される加速度との差から振動量を算出するよう構成されてもよい。
 振動量抽出部46は、動作プログラムに基づいて、振動量取得部45が取得した振動量の中から、作業区間に対応する時刻の振動量を抽出する。ここで、「作業区間に対応する時刻」とは、作業区間の全範囲及びその終点が作業区間の始点と一致する所定の設定範囲、つまり作業区間の直前の設定範囲に属する時刻とすることが好ましい。「設定範囲」は、作業区間の始点におけるロボット10の振動に大きな影響を及ぼすと予想される範囲であり、予め設定される所定の規則に基づいて定められる。具体的には、設定範囲は、例えば一定の時間範囲、一定の移動距離範囲、移動速度に比例する時間範囲等、予想されるロボット10の振動に応じて適宜設定され得る。なお、設定範囲は、「ゼロ」に設定、つまり振動量の抽出範囲を作業区間に一致させるよう設定されてもよい。
 図4に、図2の移動経路において振動量が抽出される範囲を太線で示し、図5に、図3の移動経路において振動量が抽出される範囲を太線で示す。このように、振動量抽出部46は、対象物20について作業を行う作業区間及びその直前の設定範囲における振動量だけを抽出し、作業区間の直前の設定範囲を除く作業を行わない区間の振動量を無視する。
 一般に、動作プログラムは、作業区間においては対象物20について作業を正確に行うために対象物20の速度及び加速度を制限するよう作成されるが、作業区間の間ではサイクルタイムを短縮するために速度及び加速度を制限せずに作成される。このような動作プログラムに従うと、作業区間の終点から次の作業区間の始点への移動を開始した直後に、ロボット10の加速度が最大となるのロボット10の弾性変形による振動量が大きくなりやすい。
 指令値補正部47は、振動量抽出部46が抽出した振動量に基づく機械学習により、ロボット10の振動量が小さくなる指令値を補正する。指令値補正部47は、振動量抽出部46が抽出しなかった時刻の振動量はゼロであるものとして扱う。つまり、指令値補正部47は、作業区間及びその直前の設定範囲における対象物20についての作業の精度に影響し得る振動量だけを小さくするよう指令値を補正する。一方、指令値補正部47は、作業区間の終点から次の作業区間の始点への移動を開始した直後の対象物20についての作業の精度に影響せず、かつ振動量が大きくなりやすい範囲における振動量を補償しない。なお、振動量に基づく機械学習による指令値の補正は、公知の方法により行うことができる。
 ロボット10の加速度が大きい間の振動を補償すると、ロボット10の加速度が低下したときにオーバーシュートが発生して振動量が大きくなり得る。指令値補正部47は、このようなロボット10の加速度が大きい間の振動を許容するので、作業区間内に振動量補償のオーバーシュートによる振動量の増大が生じることを防止できる。なお、作業区間と次の作業区間との間で作業を行わずに対象物20を移動する間は、ロボット10の実際の位置と動作プログラムによって企図される位置との間に乖離が生じても、作業の結果に影響を及ぼさない。
 図6に、ロボットシステム1における指令値補正の流れを制御ブロック図で示す。このように、振動検出器30の検出値の一部を振動量抽出部46によってマスキングしてから、指令値補正部47によって指令値を補正することで、少ない回数の動作に基づく機械学習により作業区間におけるロボット10の振動を効果的に低減できる。
 図7に、ロボットシステム1によるスポット溶接における対象物20の位置の時間変化の一例をグラフに示す。図には、動作プログラムに従う補正前の指令値による位置変化、3回の動作により全区間の振動を軽減するよう補正した指令値による位置変化、及び3回の動作により作業区間及び設定区間だけの振動を軽減するよう補正した指令値による位置変化を示す。この例において、作業区間(スポット溶接を行う通過点)の時刻は1.5秒であり、設定範囲の始点の時刻は0.7秒である。
 図示するように、振動量抽出部46により作業区間及び設定区間だけの振動量だけを抽出して指令値を補正することによって、スポット溶接を行う時点での振動を大幅に抑制できる。
 以上、本開示に係るロボットシステムの実施形態について説明したが、本開示の範囲は前述した実施形態に限るものではない。また、前述した実施形態に記載された効果は、本開示に係るロボットシステムから生じる最も好適な効果を列挙したに過ぎず、本開示に係るロボットシステムによる効果は、前述の実施形態に記載されたものに限定されるものではない。
 1 ロボットシステム
 10 ロボット
 20 対象物
 30 振動検出器
 40 ロボット制御装置
 41 プログラム記憶部
 42 指令値作成部
 43 指令値記憶部
 44 駆動部
 45 振動量取得部
 46 振動量抽出部
 47 指令値補正部

Claims (5)

  1.  ロボットによって移動させられる対象物について作業を行うために、前記作業を行う1又は複数の作業区間を含む移動経路を複数の通過点によって特定する動作プログラムに基づいて前記ロボットの動作を制御するロボット制御装置であって、
     前記動作プログラムに基づいて前記ロボットの時刻ごとの状態を指示する指令値を作成する指令値作成部と、
     前記指令値に従って前記ロボットを駆動する駆動部と、
     前記駆動部により駆動される前記ロボットの時刻ごとの振動量を取得する振動量取得部と、
     前記動作プログラムに基づいて、前記振動量取得部が取得した前記振動量の中から、前記作業区間に対応する時刻の前記振動量を抽出する振動量抽出部と、
     前記振動量抽出部が抽出した前記振動量に基づいて、前記指令値を補正する指令値補正部と、
    を備える、ロボット制御装置。
  2.  前記作業区間の始点及び終点がいずれかの前記通過点によって特定される、請求項1に記載のロボット制御装置。
  3.  前記作業区間の始点及び終点は、前記動作プログラムに記述される前記作業の実行を指示する命令によって特定される、請求項1又は2に記載のロボット制御装置。
  4.  前記振動量抽出部は、前記作業区間の全範囲及びその終点が前記作業区間の始点と一致する所定の設定範囲に属する時刻の前記振動量を抽出する、請求項1から3のいずれかに記載のロボット制御装置。
  5.  請求項1から4のいずれかに記載のロボット制御装置と、
     前記ロボット制御装置により制御されるロボットと、
     前記ロボットの振動量に関する値を検出する振動検出器と、
    を備える、ロボットシステム。
PCT/JP2021/046108 2020-12-21 2021-12-14 ロボット制御装置及びロボットシステム WO2022138337A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE112021005419.8T DE112021005419T5 (de) 2020-12-21 2021-12-14 Robotersteuerungsvorrichtung und Robotersystem
CN202180084128.9A CN116615316A (zh) 2020-12-21 2021-12-14 机器人控制装置以及机器人系统
JP2022572198A JP7460800B2 (ja) 2020-12-21 2021-12-14 ロボット制御装置及びロボットシステム
US18/248,466 US20230364789A1 (en) 2020-12-21 2021-12-14 Robot control device and robot system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020211689 2020-12-21
JP2020-211689 2020-12-21

Publications (1)

Publication Number Publication Date
WO2022138337A1 true WO2022138337A1 (ja) 2022-06-30

Family

ID=82159696

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/046108 WO2022138337A1 (ja) 2020-12-21 2021-12-14 ロボット制御装置及びロボットシステム

Country Status (6)

Country Link
US (1) US20230364789A1 (ja)
JP (1) JP7460800B2 (ja)
CN (1) CN116615316A (ja)
DE (1) DE112021005419T5 (ja)
TW (1) TW202225872A (ja)
WO (1) WO2022138337A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014014897A (ja) * 2012-07-09 2014-01-30 Fanuc Ltd 制振制御ロボットシステム
JP2020179484A (ja) * 2019-04-26 2020-11-05 ファナック株式会社 振動表示装置、動作プログラム作成装置、およびシステム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7140508B2 (ja) 2018-02-26 2022-09-21 Ntn株式会社 パラレルリンク機構を用いた作業装置およびその制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014014897A (ja) * 2012-07-09 2014-01-30 Fanuc Ltd 制振制御ロボットシステム
JP2020179484A (ja) * 2019-04-26 2020-11-05 ファナック株式会社 振動表示装置、動作プログラム作成装置、およびシステム

Also Published As

Publication number Publication date
JPWO2022138337A1 (ja) 2022-06-30
DE112021005419T5 (de) 2023-08-31
US20230364789A1 (en) 2023-11-16
JP7460800B2 (ja) 2024-04-02
CN116615316A (zh) 2023-08-18
TW202225872A (zh) 2022-07-01

Similar Documents

Publication Publication Date Title
CN108422420B (zh) 具有学习控制功能的机器人系统以及学习控制方法
JP4056542B2 (ja) ロボットのオフライン教示装置
JP6698268B2 (ja) ロボット
US20110301758A1 (en) Method of controlling robot arm
US11504806B2 (en) Three-dimensional laser machine and method for controlling the three-dimensional laser machine
US10994422B2 (en) Robot system for adjusting operation parameters
US10987742B2 (en) Method of controlling positioning control apparatus and positioning control apparatus
US20060037951A1 (en) Laser processing apparatus
JP6211240B1 (ja) 数値制御装置
KR20120005082A (ko) 로봇 연속모션 블랜딩 방법 및 그 방법을 구현하기 위한 로봇 제어 시스템
JP6705847B2 (ja) 加工結果に基づいた学習制御を行うロボットシステム及びその制御方法
WO2022138337A1 (ja) ロボット制御装置及びロボットシステム
EP3304228B1 (en) Robot system for synchronizing the movement of the robot arm
CN110053042B (zh) 机器人控制装置
EP2159657B1 (en) Method and control system for synchronisation of robot and conveyor
JP2012137990A (ja) 数値制御装置、移動制御方法、移動制御プログラム及び記憶媒体
JP2019093504A (ja) 物品の製造方法及びロボットシステム
JP7070114B2 (ja) ロボット制御装置及びロボット制御方法
JP2016157216A (ja) スカイビング加工における工具補正機能を有する数値制御装置
JP2020044564A (ja) レーザ加工装置
JP2019042842A (ja) 駆動機械の学習制御装置及び学習制御方法
US20230305510A1 (en) Servo control device
TW202422252A (zh) 數值控制裝置及數值控制系統
JPH04290104A (ja) 産業用ロボット制御装置
KR20160143281A (ko) 레이저 스캐너 기반 3축 표면 연속 가공 장치 및 그 제어 방법

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022572198

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 202180084128.9

Country of ref document: CN

122 Ep: pct application non-entry in european phase

Ref document number: 21910486

Country of ref document: EP

Kind code of ref document: A1