Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7604264B2 - Control device, robot and control method - Google Patents
[go: Go Back, main page]

JP7604264B2 - Control device, robot and control method - Google Patents

Control device, robot and control method Download PDF

Info

Publication number
JP7604264B2
JP7604264B2 JP2021024980A JP2021024980A JP7604264B2 JP 7604264 B2 JP7604264 B2 JP 7604264B2 JP 2021024980 A JP2021024980 A JP 2021024980A JP 2021024980 A JP2021024980 A JP 2021024980A JP 7604264 B2 JP7604264 B2 JP 7604264B2
Authority
JP
Japan
Prior art keywords
link
joint
estimated
robot arm
estimation unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021024980A
Other languages
Japanese (ja)
Other versions
JP2022127061A (en
Inventor
慎司 梶原
雅隆 田邊
圭 渡邉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawasaki Motors Ltd
Original Assignee
Kawasaki Jukogyo KK
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 Kawasaki Jukogyo KK filed Critical Kawasaki Jukogyo KK
Priority to JP2021024980A priority Critical patent/JP7604264B2/en
Publication of JP2022127061A publication Critical patent/JP2022127061A/en
Application granted granted Critical
Publication of JP7604264B2 publication Critical patent/JP7604264B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本開示は、制御装置及びロボットに関する。 This disclosure relates to a control device and a robot.

従来、移動装置に搭載されるロボットアームがある。例えば、特許文献1は、多関節型の工業用ロボットと、工業用ロボットを移動させる移動装置とを備える工業用ロボット装置を開示する。移動装置は、2つのリンクにより構成される水平2関節のリンク機構を有し、据付面に固定される。工業用ロボットは先端側のリンクの先端部に取り付けられる。 Conventionally, there are robot arms that are mounted on a moving device. For example, Patent Document 1 discloses an industrial robot device that includes an articulated industrial robot and a moving device that moves the industrial robot. The moving device has a horizontal two-joint link mechanism made up of two links, and is fixed to an installation surface. The industrial robot is attached to the tip of the tip-side link.

特開平1-281891号公報Japanese Patent Application Publication No. 1-281891

特許文献1の工業用ロボット装置では、工業用ロボットが動作すると、工業用ロボットの重心が変動し、工業用ロボットが移動装置のリンクに与えるモーメントが変動し得る。例えば、工業用ロボットがワークを把持すると、工業用ロボットが移動装置のリンクに与える荷重及びモーメントが変動し得る。このような荷重及びモーメントの変動は、移動装置のリンク及び関節にたわみ等の変形を生じ得る。リンク及び関節の変形は、工業用ロボットの位置を変動し、当該位置の変動は、工業用ロボットを振動させる。これにより、工業用ロボットの作業の精度が低下する可能性がある。 In the industrial robot device of Patent Document 1, when the industrial robot operates, the center of gravity of the industrial robot fluctuates, and the moment that the industrial robot applies to the link of the moving device may fluctuate. For example, when the industrial robot grasps a workpiece, the load and moment that the industrial robot applies to the link of the moving device may fluctuate. Such fluctuations in load and moment may cause deformation such as bending in the links and joints of the moving device. The deformation of the links and joints fluctuates the position of the industrial robot, and this fluctuation in position causes the industrial robot to vibrate. This may reduce the accuracy of the work of the industrial robot.

本開示は、第1ロボットアームによって支持される第2ロボットアームの基部の位置の意図しない変動を抑制する制御装置及びロボットを提供することを目的とする。 The present disclosure aims to provide a control device and a robot that suppresses unintended fluctuations in the position of the base of a second robot arm supported by a first robot arm.

本開示の一態様に係る制御装置は、第2ロボットアームを支持する少なくとも2つのリンクと、前記少なくとも2つのリンクを相互に接続する少なくとも1つの関節とを有する第1ロボットアームの制御装置であって、前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得し、前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作を推定する第1推定部と、前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得し、前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力を推定する第2推定部と、前記第1推定部によって推定される前記少なくとも1つの関節の動作と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する第3推定部と、前記第3推定部によって推定される力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を推定する第4推定部と、前記第4推定部によって推定される変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記変形量を補償するための前記第1動作指令の補正指令を生成し、前記補正指令を前記第1ロボットアームに指令する補正指令部とを含む。 A control device according to one aspect of the present disclosure is a control device for a first robot arm having at least two links supporting a second robot arm and at least one joint connecting the at least two links to each other, comprising a first estimation unit that acquires a first operation command for causing the first robot arm to perform a first target operation, which is a target operation, and estimates the operation of the at least one joint when the first robot arm operates in accordance with the first operation command, and a second estimation unit that acquires a second operation command for causing the second robot arm to perform a second target operation, which is a target operation, and estimates the operation of the at least one joint when the second robot arm operates in accordance with the second operation command, and a connection portion between the second robot arm and the link. a second estimation unit that estimates a force that the link receives from the second robot arm; a third estimation unit that estimates a force that the link receives based on the movement of the at least one joint estimated by the first estimation unit and the force estimated by the second estimation unit; a fourth estimation unit that estimates at least one of the deformation amount of the link and the deformation amount of the at least one joint based on the force estimated by the third estimation unit; and a correction command unit that generates a correction command for the first movement command to compensate for the deformation amount so as to move the connection part according to the first target movement based on the deformation amount estimated by the fourth estimation unit, and issues the correction command to the first robot arm.

本開示の技術によれば、第1ロボットアームによって支持される第2ロボットアームの基部の位置の意図しない変動を抑制することが可能になる。 The technology disclosed herein makes it possible to suppress unintended fluctuations in the position of the base of the second robot arm supported by the first robot arm.

実施の形態に係るロボットの構成の一例を示す側面図FIG. 1 is a side view showing an example of a configuration of a robot according to an embodiment; 実施の形態に係るロボットの構成の一例をモデル化した側面図FIG. 1 is a side view showing a model of an example of a configuration of a robot according to an embodiment; 実施の形態に係る制御装置のハードウェア構成の一例を示すブロック図FIG. 1 is a block diagram showing an example of a hardware configuration of a control device according to an embodiment. 実施の形態に係る制御装置の機能的構成の一例を示すブロック図FIG. 1 is a block diagram showing an example of a functional configuration of a control device according to an embodiment; 実施の形態に係る制御装置の動作の一例を示すフローチャート1 is a flowchart showing an example of an operation of a control device according to an embodiment. 変形例1に係るロボットの構成をモデル化した側面図FIG. 1 is a side view showing a model of a configuration of a robot according to a first modified example. 変形例2に係るロボットの構成をモデル化した側面図FIG. 11 is a side view showing a model of a configuration of a robot according to a second modification example.

(実施の形態)
以下において、本開示の実施の形態を、図面を参照しつつ説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、添付の図面における各図は、模式的な図であり、必ずしも厳密に図示されたものでない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。また、本明細書及び特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
(Embodiment)
Hereinafter, the embodiments of the present disclosure will be described with reference to the drawings. Note that the embodiments described below are all comprehensive or specific examples. In addition, among the components in the following embodiments, components that are not described in the independent claims showing the highest concept are described as optional components. In addition, each figure in the attached drawings is a schematic diagram and is not necessarily illustrated precisely. Furthermore, in each figure, substantially the same components are given the same reference numerals, and duplicated descriptions may be omitted or simplified. In addition, in this specification and claims, "apparatus" may mean not only one apparatus but also a system consisting of multiple apparatuses.

[ロボットの構成]
図1及び図2を参照しつつ、実施の形態に係るロボット1の構成を説明する。図1は、実施の形態に係るロボット1の構成の一例を示す側面図である。図2は、実施の形態に係るロボット1の構成の一例をモデル化した側面図である。
[Robot configuration]
The configuration of a robot 1 according to an embodiment will be described with reference to Fig. 1 and Fig. 2. Fig. 1 is a side view showing an example of the configuration of the robot 1 according to an embodiment. Fig. 2 is a side view showing a model of the example of the configuration of the robot 1 according to the embodiment.

実施の形態に係るロボット1は、第1ロボットアーム100と、第2ロボットアーム200と、制御装置300とを備える。第1ロボットアーム100は、支持面Sに固定され、第2ロボットアーム200を支持する。第1ロボットアーム100は、少なくとも1つの関節と少なくとも2つのリンクとを有し、第2ロボットアーム200は、少なくとも1つの関節と少なくとも1つのリンクとを有する。 The robot 1 according to the embodiment includes a first robot arm 100, a second robot arm 200, and a control device 300. The first robot arm 100 is fixed to a support surface S and supports the second robot arm 200. The first robot arm 100 has at least one joint and at least two links, and the second robot arm 200 has at least one joint and at least one link.

これに限定されないが、本実施の形態では、第1ロボットアーム100は、2つの関節JTA1及びJTA2と、3つのリンク101~103と、関節JTA1及びJTA2の駆動装置MA1及びMA2とを備える。第2ロボットアーム200は、6つの関節JTB1~JTB6と、7つのリンク201~207と、関節JTB1~JTB6それぞれの駆動装置MB1~MB6とを備える。第2ロボットアーム200は、垂直多関節型のロボットアームであるが、いかなる形式のロボットアームであってもよい。例えば、第2ロボットアーム200は、水平多関節型、極座標型、円筒座標型、直角座標型、又はその他の型式のロボットアームであってもよい。また、第2ロボットアーム200のリンクの数量は7つに限定されず、6つ以下又は8つ以上であってもよく、第2ロボットアーム200の関節の数量は6つに限定されず、5つ以下又は7つ以上であってもよい。 In this embodiment, the first robot arm 100 includes two joints JTA1 and JTA2, three links 101 to 103, and actuators MA1 and MA2 for the joints JTA1 and JTA2, but is not limited thereto. The second robot arm 200 includes six joints JTB1 to JTB6, seven links 201 to 207, and actuators MB1 to MB6 for the joints JTB1 to JTB6, respectively. The second robot arm 200 is a vertical multi-joint robot arm, but may be any type of robot arm. For example, the second robot arm 200 may be a horizontal multi-joint robot arm, a polar coordinate robot arm, a cylindrical coordinate robot arm, a rectangular coordinate robot arm, or any other type of robot arm. In addition, the number of links of the second robot arm 200 is not limited to seven, but may be six or less or eight or more, and the number of joints of the second robot arm 200 is not limited to six, but may be five or less or seven or more.

第1ロボットアーム100について、リンク103は、第1ロボットアーム100の基部に位置し、支持面Sに固定される。これに限定されないが、本実施の形態では、リンク103は、台状の形状を有し、リンク101及び102の基台として機能する。リンク102は、第1ロボットアーム100の先端部に位置し、リンク101は、リンク102及び103の間に位置する。リンク103は、基端リンクの一例である。 For the first robot arm 100, the link 103 is located at the base of the first robot arm 100 and is fixed to the support surface S. Although not limited to this, in this embodiment, the link 103 has a platform shape and functions as a base for the links 101 and 102. The link 102 is located at the tip of the first robot arm 100, and the link 101 is located between the links 102 and 103. The link 103 is an example of a base link.

関節JTA1は、1自由度の回転関節であり、柱状のリンク101の一端をリンク103に第1軸S1を中心に回動可能に接続する。関節JTA2は、1自由度の回転関節であり、柱状のリンク102の一端をリンク101の他端に第2軸S2を中心に回動可能に接続する。リンク102の他端には、第2ロボットアーム200が取り付けられる。よって、リンク101及び102は、関節JTA1及びJTA2によって動作可能である。 Joint JTA1 is a one-degree-of-freedom rotary joint that connects one end of columnar link 101 to link 103 so that it can rotate around a first axis S1. Joint JTA2 is a one-degree-of-freedom rotary joint that connects one end of columnar link 102 to the other end of link 101 so that it can rotate around a second axis S2. A second robot arm 200 is attached to the other end of link 102. Thus, links 101 and 102 can be operated by joints JTA1 and JTA2.

これに限定されないが、本実施の形態では、第1軸S1は、支持面Sに沿う方向、例えば、水平方向に延び、第2軸S2は、支持面Sと垂直な方向、例えば、鉛直方向に延びる。リンク101は、支持面Sと垂直な面に沿う方向に回動でき、リンク102は、支持面Sに沿う方向に回動できる。なお、第1軸S1及び第2軸S2の方向は、いかなる方向であってもよく、互いに異なっていても同じであってもよい。第1軸S1及び第2軸S2はそれぞれ、関節JTA1及びJTA2の関節軸でもある。 In this embodiment, the first axis S1 extends in a direction along the support surface S, for example, in the horizontal direction, and the second axis S2 extends in a direction perpendicular to the support surface S, for example, in the vertical direction. The link 101 can rotate in a direction along a plane perpendicular to the support surface S, and the link 102 can rotate in a direction along the support surface S. Note that the directions of the first axis S1 and the second axis S2 may be any direction, and may be different or the same. The first axis S1 and the second axis S2 are also the joint axes of the joints JTA1 and JTA2, respectively.

駆動装置MA1及びMA2はそれぞれ、関節JTA1及びJTA2を回転駆動するように構成される。駆動装置MA1及びMA2はそれぞれ、駆動源としての電気モータ(図示略)と、減速機(図示略)とを含む。駆動装置MA1及びMA2の減速機はそれぞれ、それぞれの電気モータの回転駆動力の回転速度を減速し且つ回転駆動力を増大させて関節JTA1及びJTA2に伝達する。本実施の形態では、電気モータはサーボモータである。 The drive units MA1 and MA2 are configured to rotate and drive the joints JTA1 and JTA2, respectively. The drive units MA1 and MA2 each include an electric motor (not shown) as a drive source, and a reducer (not shown). The reducer of the drive units MA1 and MA2 each reduces the rotational speed of the rotational drive force of the respective electric motor and increases the rotational drive force to transmit it to the joints JTA1 and JTA2. In this embodiment, the electric motor is a servo motor.

なお、本明細書及び特許請求の範囲において、「水平方向」及び「鉛直方向」はそれぞれ、水平な支持面S上にロボット1が配置される場合での「水平方向」及び「鉛直方向」を意味する。さらに、「上方向」は、同様の場合での支持面Sに垂直な上向きの方向、つまり、鉛直上方向を意味し、「下方向」は、同様の場合での支持面Sに垂直な下向きの方向、つまり、鉛直下方向を意味する。さらに、本明細書及び特許請求の範囲において、「垂直」、「鉛直」、「水平」及び「平行」はそれぞれ、完全に垂直、鉛直、水平又は平行である場合と、完全な垂直、鉛直、水平又は平行の近傍を含む実質的に垂直、鉛直、水平又は平行とみなすことができる場合とを含み得る。 In this specification and claims, "horizontal direction" and "vertical direction" respectively mean "horizontal direction" and "vertical direction" when the robot 1 is placed on a horizontal support surface S. Furthermore, "upward direction" means an upward direction perpendicular to the support surface S in a similar case, that is, a vertically upward direction, and "downward direction" means a downward direction perpendicular to the support surface S in a similar case, that is, a vertically downward direction. Furthermore, in this specification and claims, "vertical," "vertical," "horizontal," and "parallel" may each include cases where they are completely vertical, vertical, horizontal, or parallel, and cases where they can be considered to be substantially vertical, vertical, horizontal, or parallel, including close to completely vertical, vertical, horizontal, or parallel.

第2ロボットアーム200について、リンク207は、第2ロボットアーム200の基部に位置し、リンク102の上面に固定される。リンク207は、第1ロボットアーム100よりも上方に位置する。リンク207とリンク102との界面110は、ロボットアーム100及び200の接続部分の一例である。これに限定されないが、本実施の形態では、界面110の中心点110Aは、ロボットアーム100及び200の基準点である。以下において、「界面110」を「接続部分110」と表現する場合があり、「中心点110A」を「基準点110A」と表現する場合がある。 For the second robot arm 200, the link 207 is located at the base of the second robot arm 200 and is fixed to the upper surface of the link 102. The link 207 is located higher than the first robot arm 100. The interface 110 between the link 207 and the link 102 is an example of a connection portion of the robot arms 100 and 200. Although not limited to this, in this embodiment, the center point 110A of the interface 110 is the reference point of the robot arms 100 and 200. In the following, the "interface 110" may be expressed as the "connection portion 110", and the "center point 110A" may be expressed as the "reference point 110A".

これに限定されないが、本実施の形態では、リンク207は、台状の形状を有し、リンク201~206の基台として機能する。リンク206は、第2ロボットアーム200の先端部に位置し、リンク201~205は、リンク206及び207の間で、リンク207からリンク206に向かってこの順で配列される。リンク206の先端に、作業の対象物Wに作用を加えることができるエンドエフェクタEが取り付けられる。これに限定されないが、本実施の形態では、エンドエフェクタEは対象物Wを把持できるように構成される。 In this embodiment, but not limited to this, link 207 has a platform shape and functions as a base for links 201 to 206. Link 206 is located at the tip of second robot arm 200, and links 201 to 205 are arranged in this order between links 206 and 207, from link 207 to link 206. An end effector E capable of acting on a work object W is attached to the tip of link 206. In this embodiment, but not limited to this, end effector E is configured to be able to grasp object W.

関節JTB1~JTB6はいずれも、1つの軸を中心に回転可能である1自由度の回転関節である。関節JTB1は、リンク201をリンク207に回動可能に接続する。関節JTB2は、リンク202をリンク201に回動可能に接続する。関節JTB3は、リンク203をリンク202に回動可能に接続する。関節JTB4は、リンク204をリンク203に回動可能に接続する。関節JTB5は、リンク205をリンク204に回動可能に接続する。関節JTB6は、リンク206をリンク205に回動可能に接続する。 All of joints JTB1 to JTB6 are one-degree-of-freedom rotational joints that can rotate around one axis. Joint JTB1 rotatably connects link 201 to link 207. Joint JTB2 rotatably connects link 202 to link 201. Joint JTB3 rotatably connects link 203 to link 202. Joint JTB4 rotatably connects link 204 to link 203. Joint JTB5 rotatably connects link 205 to link 204. Joint JTB6 rotatably connects link 206 to link 205.

駆動装置MB1~MB6はそれぞれ、関節JTB1~JTB6を回転駆動するように構成される。駆動装置MB1~MB6はそれぞれ、駆動源としての電気モータ(図示略)と、減速機(図示略)とを含む。本実施の形態では、電気モータはサーボモータである。 The driving devices MB1 to MB6 are configured to rotate and drive the joints JTB1 to JTB6, respectively. Each of the driving devices MB1 to MB6 includes an electric motor (not shown) as a driving source, and a reduction gear (not shown). In this embodiment, the electric motor is a servo motor.

これに限定されないが、本実施の形態では、制御装置300は、ロボット1全体の動作を制御するように構成される。制御装置300は、情報処理装置300Aとロボットコントローラ300Bとを含む。ロボットコントローラ300Bは、ロボットアーム100及び200の動作を制御するように構成される。情報処理装置300Aは、ロボットアーム100及び200の動作制御に関連する演算処理を行うように構成される。 In this embodiment, the control device 300 is configured to control the operation of the entire robot 1, although this is not limited thereto. The control device 300 includes an information processing device 300A and a robot controller 300B. The robot controller 300B is configured to control the operation of the robot arms 100 and 200. The information processing device 300A is configured to perform arithmetic processing related to the operation control of the robot arms 100 and 200.

情報処理装置300A及びロボットコントローラ300Bはコンピュータ装置を含む。情報処理装置300Aの構成は特に限定されないが、例えば、情報処理装置300Aは、電子回路基板、電子制御ユニット、マイクロコンピュータ、パーソナルコンピュータ、ワークステーション、スマートフォン及びタブレットなどのスマートデバイス、並びにその他の電子機器等であってもよい。ロボットコントローラ300Bは、ロボットアーム100及び200等に供給する電力を制御するための電気回路を含んでもよい。 The information processing device 300A and the robot controller 300B include computer devices. The configuration of the information processing device 300A is not particularly limited, but for example, the information processing device 300A may be an electronic circuit board, an electronic control unit, a microcomputer, a personal computer, a workstation, a smart device such as a smartphone or a tablet, or other electronic device. The robot controller 300B may include an electric circuit for controlling the power supplied to the robot arms 100 and 200, etc.

[制御装置のハードウェア構成]
図3を参照しつつ、実施の形態に係る制御装置300のハードウェア構成を説明する。図3は、実施の形態に係る制御装置300のハードウェア構成の一例を示すブロック図である。情報処理装置300Aは、プロセッサ301Aと、メモリ302Aと、ストレージ303Aと、入出力I/F(インタフェース:Interface)304Aとを構成要素として含む。情報処理装置300Aの各構成要素は、バス310Aによって相互に接続されるが、他のいかなる有線通信又は無線通信で接続されてもよい。ロボットコントローラ300Bは、プロセッサ301Bと、メモリ302Bと、入出力I/F304Bと、駆動I/F305B及び306Bとを構成要素として含む。ロボットコントローラ300Bは、ストレージを含んでもよい。ロボットコントローラ300Bの各構成要素は、バス310Bによって相互に接続されるが、他のいかなる有線通信又は無線通信で接続されてもよい。情報処理装置300A及びロボットコントローラ300Bそれぞれに含まれる構成要素の全てが必須ではない。
[Hardware configuration of the control device]
With reference to FIG. 3, the hardware configuration of the control device 300 according to the embodiment will be described. FIG. 3 is a block diagram showing an example of the hardware configuration of the control device 300 according to the embodiment. The information processing device 300A includes a processor 301A, a memory 302A, a storage 303A, and an input/output I/F (interface) 304A as components. The components of the information processing device 300A are connected to each other by a bus 310A, but may be connected by any other wired communication or wireless communication. The robot controller 300B includes a processor 301B, a memory 302B, an input/output I/F 304B, and drive I/Fs 305B and 306B as components. The robot controller 300B may include a storage. The components of the robot controller 300B are connected to each other by a bus 310B, but may be connected by any other wired communication or wireless communication. Not all of the components included in the information processing device 300A and the robot controller 300B are essential.

プロセッサ301A及びメモリ302Aの組、及び、プロセッサ301B及びメモリ302Bの組はそれぞれ、演算器を構成する。演算器は、他の装置との指令、情報及びデータ等の送受信を行う。演算器は、各種機器からの信号の入力及び各制御対象への制御信号の出力を行う。 The pair of processor 301A and memory 302A, and the pair of processor 301B and memory 302B each constitute a computing unit. The computing unit transmits and receives commands, information, data, etc. to and from other devices. The computing unit receives inputs of signals from various devices and outputs control signals to each control target.

メモリ302A及び302Bはそれぞれ、プロセッサ301A及び301Bが実行するプログラム、及び各種固定データ等を記憶する。メモリ302A及び302Bは、揮発性メモリ及び不揮発性メモリなどの半導体メモリ等の記憶装置で構成されてもよい。これに限定されないが、本実施の形態では、メモリ302A及び302Bは、揮発性メモリであるRAM(Random Access Memory)と不揮発性メモリであるROM(Read-Only Memory)とを含む。 Memories 302A and 302B store programs executed by processors 301A and 301B, and various fixed data, etc. Memories 302A and 302B may be configured with storage devices such as semiconductor memories, including volatile and non-volatile memories. Although not limited thereto, in this embodiment, memories 302A and 302B include RAM (Random Access Memory), which is a volatile memory, and ROM (Read-Only Memory), which is a non-volatile memory.

ストレージ303Aは、各種データを記憶する。ストレージ303Aは、半導体メモリ、ハードディスクドライブ(HDD:Hard Disk Drive)及び固体ドライブ(SSD:Solid State Drive)等の記憶装置で構成されてもよい。 Storage 303A stores various data. Storage 303A may be configured with a storage device such as a semiconductor memory, a hard disk drive (HDD: Hard Disk Drive), or a solid state drive (SSD: Solid State Drive).

プロセッサ301A及び301Bはいずれも、RAM及びROMと一緒にコンピュータシステムを形成する。情報処理装置300Aのコンピュータシステムは、プロセッサ301AがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、情報処理装置300Aの機能を実現してもよい。ロボットコントローラ300Bのコンピュータシステムは、プロセッサ301BがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、ロボットコントローラ300Bの機能を実現してもよい。 Both processors 301A and 301B form a computer system together with RAM and ROM. The computer system of information processing device 300A may realize the functions of information processing device 300A by processor 301A using RAM as a work area to execute a program recorded in ROM. The computer system of robot controller 300B may realize the functions of robot controller 300B by processor 301B using RAM as a work area to execute a program recorded in ROM.

情報処理装置300A及びロボットコントローラ300Bの機能の一部又は全部は、上記コンピュータシステムにより実現されてもよく、電子回路又は集積回路等の専用のハードウェア回路により実現されてもよく、上記コンピュータシステム及びハードウェア回路の組み合わせにより実現されてもよい。情報処理装置300A及びロボットコントローラ300Bはそれぞれ、単一の装置による集中制御により各処理を実行するように構成されてもよく、複数の装置の協働による分散制御により各処理を実行するように構成されてもよい。なお、情報処理装置300A及びロボットコントローラ300Bは、互いの機能の少なくとも一部を含むように構成されてもよく、一体化されてもよい。 Some or all of the functions of the information processing device 300A and the robot controller 300B may be realized by the above-mentioned computer system, by a dedicated hardware circuit such as an electronic circuit or an integrated circuit, or by a combination of the above-mentioned computer system and hardware circuit. The information processing device 300A and the robot controller 300B may each be configured to execute each process by centralized control of a single device, or may be configured to execute each process by distributed control through the cooperation of multiple devices. The information processing device 300A and the robot controller 300B may be configured to include at least some of each other's functions, or may be integrated.

これに限定されないが、例えば、プロセッサ301A及び301Bは、CPU(中央処理装置:Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、マイクロプロセッサ(microprocessor)、プロセッサコア(processor core)、マルチプロセッサ(multiprocessor)、ASIC(Application-Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等を含み、IC(集積回路)チップ、LSI(Large Scale Integration)等に形成された論理回路又は専用回路によって各処理を実現してもよい。複数の処理は、1つ又は複数の集積回路により実現されてもよく、1つの集積回路により実現されてもよい。 For example, but not limited to, processors 301A and 301B may include a CPU (Central Processing Unit), MPU (Micro Processing Unit), GPU (Graphics Processing Unit), microprocessor, processor core, multiprocessor, ASIC (Application-Specific Integrated Circuit), FPGA (Field Programmable Gate Array), etc., and each process may be realized by a logic circuit or a dedicated circuit formed in an IC (Integrated Circuit) chip, LSI (Large Scale Integration), etc. Multiple processes may be realized by one or multiple integrated circuits, or may be realized by a single integrated circuit.

情報処理装置300Aの入出力I/F304Aは、情報処理装置300Aとロボットコントローラ300Bとを接続し、これらの間での情報、指令及びデータ等の入出力を可能にする。ロボットコントローラ300Bの入出力I/F304Bは、ロボットコントローラ300Bと情報処理装置300Aの入出力I/F304Aとを接続し、これらの間での情報、指令及びデータ等の入出力を可能にする。 The input/output I/F 304A of the information processing device 300A connects the information processing device 300A and the robot controller 300B, enabling input/output of information, commands, data, etc. between them. The input/output I/F 304B of the robot controller 300B connects the robot controller 300B and the input/output I/F 304A of the information processing device 300A, enabling input/output of information, commands, data, etc. between them.

第1駆動I/F305Bは、ロボットコントローラ300Bと第1ロボットアーム100の第1駆動回路120とを接続し、これらの間での信号等の送受信を可能にする。第1駆動回路120は、ロボットコントローラ300Bから受信する信号に含まれる指令値に従って、第1ロボットアーム100の駆動装置MA1及びMA2に供給する電力を制御するように構成される。 The first drive I/F 305B connects the robot controller 300B and the first drive circuit 120 of the first robot arm 100, enabling transmission and reception of signals between them. The first drive circuit 120 is configured to control the power supplied to the drive devices MA1 and MA2 of the first robot arm 100 according to a command value included in a signal received from the robot controller 300B.

第2駆動I/F306Bは、ロボットコントローラ300Bと第2ロボットアーム200の第2駆動回路220とを接続し、これらの間での信号等の送受信を可能にする。第2駆動回路220は、ロボットコントローラ300Bから受信する信号に含まれる指令値に従って、第2ロボットアーム200の駆動装置MB1~MB6に供給する電力を制御するように構成される。 The second drive I/F 306B connects the robot controller 300B and the second drive circuit 220 of the second robot arm 200, enabling the transmission and reception of signals between them. The second drive circuit 220 is configured to control the power supplied to the drive units MB1 to MB6 of the second robot arm 200 according to command values contained in signals received from the robot controller 300B.

なお、ロボットコントローラ300Bは、駆動装置MA1、MA2及びMB1~MB6のサーボモータをサーボ制御するように構成されてもよい。ロボットコントローラ300Bは、各サーボモータが備える回転センサの検出値と、駆動回路120及び220から各サーボモータへの電流の指令値とを、フィードバック情報として駆動回路120及び220から受信する。ロボットコントローラ300Bは、フィードバック情報を用いて各サーボモータの駆動の指令値を決定し、駆動回路120及び220に送信する。 The robot controller 300B may be configured to servo-control the servo motors of the drive units MA1, MA2, and MB1 to MB6. The robot controller 300B receives the detection values of the rotation sensors equipped in each servo motor and the current command values from the drive circuits 120 and 220 to each servo motor as feedback information from the drive circuits 120 and 220. The robot controller 300B uses the feedback information to determine the drive command values for each servo motor and transmits them to the drive circuits 120 and 220.

ロボットコントローラ300Bは、複数のサーボモータの軸制御を互いに連携できるように構成されてもよい。ロボットコントローラ300Bは、複数の軸制御のうちの一部であるロボット軸制御として駆動装置MB1~MB6のサーボモータを制御し、複数の軸制御のうちの一部である外部軸制御として駆動装置MA1及びMA2のサーボモータを制御するように構成されてもよい。 The robot controller 300B may be configured to enable the axis controls of multiple servo motors to be coordinated with each other. The robot controller 300B may be configured to control the servo motors of the drive units MB1 to MB6 as robot axis control, which is a part of the multiple axis controls, and to control the servo motors of the drive units MA1 and MA2 as external axis control, which is a part of the multiple axis controls.

[制御装置の機能的構成]
図4を参照しつつ、実施の形態に係る制御装置300の機能的構成を説明する。図4は、実施の形態に係る制御装置300の機能的構成の一例を示すブロック図である。情報処理装置300Aは、第1動作指令部401と、第2動作指令部402と、第1推定部403と、第2推定部404と、第3推定部405と、第4推定部406と、第1位置推定部407と、第2位置推定部408と、慣性要素推定部409と、慣性力推定部410と、補正指令部411と、記憶部421~423とを機能的構成要素として含む。記憶部421~423を除く機能的構成要素の機能は、プロセッサ301A等によって実現され、記憶部421~423の機能は、メモリ302A及び/又はストレージ303A等の記憶装置によって実現される。記憶部421~423それぞれの機能は、別々の記憶装置によって実現されてもよく、記憶部421~423の機能の少なくとも2つが1つの記憶装置によって実現されてもよい。上記の機能的構成要素の全てが必須ではない。
[Functional configuration of the control device]
The functional configuration of the control device 300 according to the embodiment will be described with reference to FIG. 4. FIG. 4 is a block diagram showing an example of the functional configuration of the control device 300 according to the embodiment. The information processing device 300A includes a first operation command unit 401, a second operation command unit 402, a first estimation unit 403, a second estimation unit 404, a third estimation unit 405, a fourth estimation unit 406, a first position estimation unit 407, a second position estimation unit 408, an inertial element estimation unit 409, an inertial force estimation unit 410, a correction command unit 411, and memory units 421 to 423 as functional components. The functions of the functional components other than the memory units 421 to 423 are realized by the processor 301A or the like, and the functions of the memory units 421 to 423 are realized by a storage device such as the memory 302A and/or the storage 303A. The functions of the storage units 421 to 423 may be realized by separate storage devices, or at least two of the functions of the storage units 421 to 423 may be realized by one storage device. All of the above functional components are not essential.

ロボットコントローラ300Bは、第1駆動指令部501と、第2駆動指令部502とを機能的構成要素として含む。駆動指令部501及び502の機能は、プロセッサ301B等によって実現される。上記の機能的構成要素の全てが必須ではない。 The robot controller 300B includes a first drive command unit 501 and a second drive command unit 502 as functional components. The functions of the drive command units 501 and 502 are realized by the processor 301B, etc. Not all of the above functional components are essential.

記憶部421~423は、様々な情報及びデータ等を記憶し、記憶している情報及びデータ等の読み出しを可能にする。例えば、第1記憶部421は、ロボットアーム100及び200の制御プログラムを記憶する。これに限定されないが、本実施の形態では、制御装置300は、制御プログラムに従ってロボットアーム100及び200に自律的に動作させる、つまり、ロボットアーム100及び200に自動運転させるように構成される。第1記憶部421は、ロボットアーム100及び200に自律的に動作させるための教示データ等の目標動作データを記憶してもよい。なお、制御装置300は、図示しない操作装置から受け取る操作指令に従ってロボットアーム100及び200に動作させる、つまり、ロボットアーム100及び200に手動運転させるように構成されてもよい。 The storage units 421 to 423 store various information and data, and enable the stored information and data to be read. For example, the first storage unit 421 stores a control program for the robot arms 100 and 200. Although not limited to this, in this embodiment, the control device 300 is configured to cause the robot arms 100 and 200 to operate autonomously according to the control program, that is, to cause the robot arms 100 and 200 to operate automatically. The first storage unit 421 may store target operation data such as teaching data for causing the robot arms 100 and 200 to operate autonomously. Note that the control device 300 may be configured to cause the robot arms 100 and 200 to operate according to an operation command received from an operation device (not shown), that is, to cause the robot arms 100 and 200 to operate manually.

例えば、第2記憶部422は、第1ロボットアーム100の情報を記憶する。第1ロボットアーム100の情報は、リンク101~103並びに関節JTA1及びJTA2の情報を含む。リンク101~103の情報は、リンク101~103それぞれの質量、寸法、形状、重心位置、慣性モーメント、剛性、及び関節との接続位置等の情報を含んでもよい。リンクの剛性は、リンクの曲げ剛性及び捻り剛性等を含んでもよい。関節JTA1及びJTA2の情報は、関節JTA1及びJTA2それぞれの質量、寸法、形状、重心位置、慣性モーメント、剛性、回転中心軸の位置及び方向、並びにリンクとの接続位置等の情報を含んでもよい。関節の剛性は、関節を構成する部材の剛性、関節の回転部分の剛性、及び関節の減速機の剛性等を含んでもよい。 For example, the second storage unit 422 stores information about the first robot arm 100. The information about the first robot arm 100 includes information about the links 101 to 103 and the joints JTA1 and JTA2. The information about the links 101 to 103 may include information about the mass, dimensions, shape, center of gravity, moment of inertia, rigidity, and connection position with the joints of each of the links 101 to 103. The rigidity of the links may include bending rigidity and torsional rigidity of the links. The information about the joints JTA1 and JTA2 may include information about the mass, dimensions, shape, center of gravity, moment of inertia, rigidity, position and direction of the rotation axis of each of the joints JTA1 and JTA2, and connection position with the links. The rigidity of the joints may include the rigidity of the members that make up the joints, the rigidity of the rotating parts of the joints, and the rigidity of the reduction gears of the joints.

リンク101~103の情報は、リンク101~103の上記情報が反映された仮想的なモデルであってもよく、関節JTA1及びJTA2の情報は、関節JTA1及びJTA2の上記情報が反映された仮想的なモデルであってもよい。例えば、仮想的なモデルは、3次元CAD(Computer-Aided Design)モデル等の3次元モデルであってもよい。 The information on links 101 to 103 may be a virtual model in which the above information on links 101 to 103 is reflected, and the information on joints JTA1 and JTA2 may be a virtual model in which the above information on joints JTA1 and JTA2 is reflected. For example, the virtual model may be a three-dimensional model such as a three-dimensional CAD (Computer-Aided Design) model.

例えば、第3記憶部423は、第2ロボットアーム200の情報を記憶する。第2ロボットアーム200の情報は、リンク201~207及び関節JTB1~JTB6の情報を含む。さらに、第2ロボットアーム200の情報は、第2ロボットアーム200に装着されるエンドエフェクタEの情報、及び、エンドエフェクタEによって保持されるワーク等の対象物Wの情報等を含み得る。リンク201~207の情報は、リンク201~207それぞれの質量、寸法、形状、重心位置、慣性モーメント、及び関節との接続位置等の情報を含んでもよい。関節JTB1~JTB6の情報は、関節JTB1~JTB6それぞれの質量、寸法、形状、重心位置、慣性モーメント、回転中心軸の位置及び方向、並びにリンクとの接続位置等の情報を含んでもよい。エンドエフェクタEの情報は、その質量、寸法、形状、重心位置、慣性モーメント、及びリンク206との接続位置等の情報を含んでもよい。対象物Wの情報は、その質量、寸法、形状、重心位置及び保持されるときの姿勢等の情報を含んでもよい。リンク201~207、関節JTB1~JTB6、エンドエフェクタE及び対象物Wの情報は、それぞれの上記情報が反映された仮想的なモデルであってもよい。例えば、仮想的なモデルは、3次元CADモデル等の3次元モデルであってもよい。 For example, the third memory unit 423 stores information on the second robot arm 200. The information on the second robot arm 200 includes information on the links 201-207 and the joints JTB1-JTB6. Furthermore, the information on the second robot arm 200 may include information on the end effector E attached to the second robot arm 200, and information on an object W such as a workpiece held by the end effector E. The information on the links 201-207 may include information on the mass, dimensions, shape, center of gravity position, moment of inertia, and connection position with the joints of each of the links 201-207. The information on the joints JTB1-JTB6 may include information on the mass, dimensions, shape, center of gravity position, moment of inertia, position and direction of the rotation center axis of each of the joints JTB1-JTB6, and connection position with the links. The information on the end effector E may include information such as its mass, dimensions, shape, center of gravity, moment of inertia, and connection position with the link 206. The information on the object W may include information such as its mass, dimensions, shape, center of gravity, and posture when held. The information on the links 201-207, the joints JTB1-JTB6, the end effector E, and the object W may be virtual models that reflect the above information for each of them. For example, the virtual model may be a three-dimensional model such as a three-dimensional CAD model.

第1動作指令部401は、第1記憶部421に記憶される第1ロボットアーム100の目標動作データである第1目標動作データに従った目標動作を第1ロボットアーム100に実行させるための動作指令(以下、「第1動作指令」とも称する)を生成する。第1目標動作データは、制御プログラムに従って第1ロボットアーム100を動作させるためのデータである。例えば、第1動作指令部401は、第1目標動作データに従って接続部分110を移動させるための接続部分110の目標位置及び目標姿勢を、第2記憶部422に記憶される第1ロボットアーム100の情報を用いて演算する。目標位置及び目標姿勢は、基準点110Aの3次元の位置及び接続部分110の界面の3次元の姿勢であってもよい。 The first operation command unit 401 generates an operation command (hereinafter also referred to as a "first operation command") for causing the first robot arm 100 to execute a target operation according to the first target operation data, which is the target operation data of the first robot arm 100 stored in the first memory unit 421. The first target operation data is data for operating the first robot arm 100 according to a control program. For example, the first operation command unit 401 calculates a target position and a target posture of the connection part 110 for moving the connection part 110 according to the first target operation data, using information of the first robot arm 100 stored in the second memory unit 422. The target position and the target posture may be the three-dimensional position of the reference point 110A and the three-dimensional posture of the interface of the connection part 110.

さらに、第1動作指令部401は、接続部分110を目標位置及び目標姿勢に移動させるための関節JTA1及びJTA2の目標回転方向及び目標回転量を、第2記憶部422に記憶される第1ロボットアーム100の情報を用いて演算する。つまり、第1動作指令部401は、関節JTA1及びJTA2の目標回転位置を演算する。第1動作指令部401は、第1目標動作データと第1ロボットアーム100の情報とを用いて、関節JTA1及びJTA2の目標回転位置を演算するように構成されてもよい。第1動作指令部401は、関節JTA1及びJTA2の目標回転位置を含む第1動作指令を生成する。なお、手動運転の場合、第1動作指令部401は、操作装置(図示略)から受けとる操作指令に従った目標動作を第1ロボットアーム100に実行させるための第1動作指令を上記と同様に生成する。 Furthermore, the first operation command unit 401 calculates the target rotation direction and the target rotation amount of the joints JTA1 and JTA2 for moving the connection part 110 to the target position and the target posture, using the information of the first robot arm 100 stored in the second storage unit 422. That is, the first operation command unit 401 calculates the target rotation positions of the joints JTA1 and JTA2. The first operation command unit 401 may be configured to calculate the target rotation positions of the joints JTA1 and JTA2 using the first target operation data and the information of the first robot arm 100. The first operation command unit 401 generates a first operation command including the target rotation positions of the joints JTA1 and JTA2. In the case of manual operation, the first operation command unit 401 generates a first operation command in the same manner as described above for causing the first robot arm 100 to execute a target operation according to an operation command received from an operation device (not shown).

第2動作指令部402は、第1記憶部421に記憶される第2ロボットアーム200の目標動作データである第2目標動作データに従った目標動作を第2ロボットアーム200に実行させるための動作指令(以下、「第2動作指令」とも称する)を生成する。第2目標動作データは、制御プログラムに従って第2ロボットアーム200を動作させるためのデータである。例えば、第2動作指令部402は、第2目標動作データに従ってリンク206を移動させるためのリンク206の目標位置及び目標姿勢を、第3記憶部423に記憶される第2ロボットアーム200の情報を用いて演算する。目標位置及び目標姿勢は、リンク206の先端部の3次元の位置及び3次元の姿勢であってもよい。 The second operation command unit 402 generates an operation command (hereinafter also referred to as a "second operation command") for causing the second robot arm 200 to execute a target operation according to second target operation data, which is target operation data for the second robot arm 200 stored in the first memory unit 421. The second target operation data is data for operating the second robot arm 200 according to a control program. For example, the second operation command unit 402 calculates a target position and target posture of the link 206 for moving the link 206 according to the second target operation data using information of the second robot arm 200 stored in the third memory unit 423. The target position and target posture may be a three-dimensional position and three-dimensional posture of the tip of the link 206.

さらに、第2動作指令部402は、リンク206を目標位置及び目標姿勢に移動させるための関節JTB1~JTB6の目標回転方向及び目標回転量を、第3記憶部423に記憶される第2ロボットアーム200の情報を用いて演算する。つまり、第2動作指令部402は、関節JTB1~JTB6の目標回転位置を演算する。第2動作指令部402は、第2目標動作データと第2ロボットアーム200の情報とを用いて、関節JTB1~JTB6の目標回転位置を演算するように構成されてもよい。第2動作指令部402は、関節JTB1~JTB6の目標回転位置を含む第2動作指令を生成する。なお、手動運転の場合、第2動作指令部402は、操作装置(図示略)から受けとる操作指令に従った目標動作を第2ロボットアーム200に実行させるための第2動作指令を上記と同様に生成する。 Furthermore, the second operation command unit 402 calculates the target rotation direction and the target rotation amount of the joints JTB1 to JTB6 for moving the link 206 to the target position and the target posture, using the information of the second robot arm 200 stored in the third storage unit 423. That is, the second operation command unit 402 calculates the target rotation positions of the joints JTB1 to JTB6. The second operation command unit 402 may be configured to calculate the target rotation positions of the joints JTB1 to JTB6 using the second target operation data and the information of the second robot arm 200. The second operation command unit 402 generates a second operation command including the target rotation positions of the joints JTB1 to JTB6. In the case of manual operation, the second operation command unit 402 generates a second operation command in the same manner as described above for causing the second robot arm 200 to execute a target operation according to an operation command received from an operation device (not shown).

第1推定部403は、第1動作指令部401から第1動作指令を取得し、第1ロボットアーム100が第1動作指令に従って動作する場合の関節JTA1及びJTA2の動作を推定する。例えば、第1推定部403は、関節JTA1及びJTA2の動作として、関節JTA1及びJTA2の回転位置の推定値である推定回転位置を算出する。関節JTA1及びJTA2の推定回転位置は、関節JTA1及びJTA2の回転方向及び回転量の推定値を含む。関節JTA1及びJTA2の推定回転位置は、第1動作指令に含まれる関節JTA1及びJTA2の目標回転位置に対応する。さらに、第1推定部403は、関節JTA1及びJTA2の推定回転位置に基づき、関節JTA1及びJTA2の回転速度の推定値である推定回転速度を算出する。 The first estimation unit 403 acquires a first motion command from the first motion command unit 401, and estimates the motions of the joints JTA1 and JTA2 when the first robot arm 100 operates according to the first motion command. For example, the first estimation unit 403 calculates estimated rotational positions, which are estimates of the rotational positions of the joints JTA1 and JTA2, as the motions of the joints JTA1 and JTA2. The estimated rotational positions of the joints JTA1 and JTA2 include estimated values of the rotation direction and rotation amount of the joints JTA1 and JTA2. The estimated rotational positions of the joints JTA1 and JTA2 correspond to the target rotational positions of the joints JTA1 and JTA2 included in the first motion command. Furthermore, the first estimation unit 403 calculates estimated rotational speeds, which are estimates of the rotational speeds of the joints JTA1 and JTA2, based on the estimated rotational positions of the joints JTA1 and JTA2.

第2推定部404は、第2動作指令部402から第2動作指令を取得し、第2ロボットアーム200が第2動作指令に従って動作する場合に、接続部分110が基準点110Aにおいて第2ロボットアーム200から受ける力を推定する。これに限定されないが、本実施の形態では、第2推定部404は、基準点110Aを原点Оとする基準座標系を用いて、上記力を推定する。 The second estimation unit 404 obtains a second operation command from the second operation command unit 402, and estimates the force that the connection part 110 receives from the second robot arm 200 at the reference point 110A when the second robot arm 200 operates according to the second operation command. Although not limited to this, in the present embodiment, the second estimation unit 404 estimates the above force using a reference coordinate system with the reference point 110A as the origin O.

基準座標系は、基準点110Aを原点Оとする座標系であればよい。これに限定されないが、本実施の形態では、基準座標系は、図2に示すように、基準点110Aから接続部分110の界面に沿って延び且つ互いに直交するX軸及びY軸と、基準点110Aから接続部分110の界面と垂直な方向に延び且つX軸及びY軸と直交するZ軸とにより定義される。Z軸正方向は、リンク207からリンク102に向かう方向である。又は、例えば、基準座標系は、基準点110Aから水平方向に延び且つ互いに直交するX軸及びY軸と、基準点110Aから鉛直下方向に延び且つX軸及びY軸と直交するZ軸とにより定義されてもよい。鉛直下方向は重力方向であってもよく、水平方向は重力方向に垂直な方向であってもよい。 The reference coordinate system may be a coordinate system with the reference point 110A as the origin O. Although not limited thereto, in this embodiment, the reference coordinate system is defined by the X-axis and Y-axis that extend from the reference point 110A along the interface of the connection part 110 and are mutually orthogonal, and the Z-axis that extends from the reference point 110A in a direction perpendicular to the interface of the connection part 110 and is orthogonal to the X-axis and Y-axis, as shown in FIG. 2. The positive direction of the Z-axis is the direction from the link 207 toward the link 102. Alternatively, for example, the reference coordinate system may be defined by the X-axis and Y-axis that extend horizontally from the reference point 110A and are mutually orthogonal, and the Z-axis that extends vertically downward from the reference point 110A and is orthogonal to the X-axis and Y-axis. The vertical downward direction may be the direction of gravity, and the horizontal direction may be a direction perpendicular to the direction of gravity.

例えば、上記力は、第2ロボットアーム200の荷重と、第2ロボットアーム200が接続部分110に発生するモーメントとを含み得る。例えば、第2推定部404は、第2ロボットアーム200が第2動作指令に従って動作する場合のリンク201~207及び関節JTB1~JTB6の位置及び姿勢を推定し、推定結果と第3記憶部423に記憶される第2ロボットアーム200の情報とを用いて、上記力を推定してもよい。 For example, the above force may include the load of the second robot arm 200 and a moment generated by the second robot arm 200 at the connection portion 110. For example, the second estimation unit 404 may estimate the positions and orientations of the links 201-207 and the joints JTB1-JTB6 when the second robot arm 200 operates according to the second operation command, and estimate the above force using the estimation results and information about the second robot arm 200 stored in the third memory unit 423.

第2ロボットアーム200の荷重は、第2ロボットアーム200自体の質量と、エンドエフェクタEの質量と、エンドエフェクタEによって保持されている対象物Wの質量とを含み得る。第2ロボットアーム200のモーメントは、第2ロボットアーム200自体とエンドエフェクタEと対象物Wとが接続部分110に発生するモーメントを含み得る。第2推定部404は、第3記憶部423に記憶される第2ロボットアーム200の情報と第2動作指令に含まれる関節JTB1~JTB6の目標回転位置とを用いて、第2ロボットアーム200の荷重及びモーメントを演算する。第2推定部404は、基準座標系を用いた第2ロボットアーム200の荷重及びモーメントを表す。さらに、第2推定部404は、第3記憶部423に記憶される第2ロボットアーム200の情報と第2動作指令に含まれる関節JTB1~JTB6の目標回転位置とを用いて、第2ロボットアーム200全体の慣性モーメントを、基準座標系を基準に演算する。当該慣性モーメントは、基準座標系の原点Оを基準とする慣性モーメントである。 The load of the second robot arm 200 may include the mass of the second robot arm 200 itself, the mass of the end effector E, and the mass of the object W held by the end effector E. The moment of the second robot arm 200 may include a moment generated at the connection portion 110 between the second robot arm 200 itself, the end effector E, and the object W. The second estimation unit 404 calculates the load and moment of the second robot arm 200 using the information of the second robot arm 200 stored in the third memory unit 423 and the target rotation positions of the joints JTB1 to JTB6 included in the second operation command. The second estimation unit 404 represents the load and moment of the second robot arm 200 using a reference coordinate system. Furthermore, the second estimation unit 404 calculates the moment of inertia of the entire second robot arm 200 based on the reference coordinate system, using the information on the second robot arm 200 stored in the third storage unit 423 and the target rotation positions of the joints JTB1 to JTB6 included in the second operation command. This moment of inertia is the moment of inertia based on the origin O of the reference coordinate system.

第3推定部405は、第1推定部403によって推定される関節JTA1及びJTA2の動作と、第2推定部404によって推定される接続部分110が第2ロボットアーム200から受ける力とに基づき、リンク101~103が受ける力を推定する。これに限定されないが、本実施の形態では、台状形状のリンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、第3推定部405は、リンク101及び102が受ける力を推定する。 The third estimation unit 405 estimates the forces acting on the links 101 to 103 based on the movements of the joints JTA1 and JTA2 estimated by the first estimation unit 403 and the force acting on the connection part 110 from the second robot arm 200 estimated by the second estimation unit 404. Although not limited to this, in this embodiment, the trapezoidal link 103 is immobile with almost no deformation such as bending even when it receives a force through the link 101 and the joint JTA1, so the third estimation unit 405 estimates the forces acting on the links 101 and 102.

例えば、第3推定部405は、第1推定部403によって推定される関節JTA1及びJTA2の動作に基づき慣性力推定部410によって推定される、リンク101及び102に発生する慣性力と、接続部分110が第2ロボットアーム200から受ける力とに基づき、リンク101及び102が受ける力を推定する。 For example, the third estimation unit 405 estimates the force acting on the links 101 and 102 based on the inertial force acting on the links 101 and 102, which is estimated by the inertial force estimation unit 410 based on the movements of the joints JTA1 and JTA2 estimated by the first estimation unit 403, and the force acting on the connection part 110 from the second robot arm 200.

第4推定部406は、第3推定部405によって推定されるリンク101及び102が受ける力に基づき、リンク101及び102の変形量と関節JTA1及びJTA2の変形量とのうちの少なくとも一方を推定する。本実施の形態では、第4推定部406は、リンク101及び102の変形量と、関節JTA1及びJTA2の変形量との両方を推定する。 The fourth estimation unit 406 estimates at least one of the deformation amounts of the links 101 and 102 and the deformation amounts of the joints JTA1 and JTA2 based on the forces acting on the links 101 and 102 estimated by the third estimation unit 405. In this embodiment, the fourth estimation unit 406 estimates both the deformation amounts of the links 101 and 102 and the deformation amounts of the joints JTA1 and JTA2.

第1位置推定部407は、リンク101及び102並びに関節JTA1及びJTA2それぞれの位置及び姿勢を推定する。第1位置推定部407は、リンク101及び102並びに関節JTA1及びJTA2それぞれの3次元の位置及び3次元の姿勢を、基準座標系を用いて推定する。例えば、第1位置推定部407は、第1推定部403によって推定される関節JTA1及びJTA2の推定回転位置と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、当該推定回転位置でのリンク101及び102並びに関節JTA1及びJTA2それぞれの推定位置及び推定姿勢を演算する。第1位置推定部407は、リンク101及び102並びに関節JTA1及びJTA2それぞれの推定位置及び推定姿勢に基づき、リンク101及び102の慣性モーメントを、基準座標系を基準に演算する。当該慣性モーメントは、基準座標系の原点Оを基準とする慣性モーメントである。 The first position estimation unit 407 estimates the positions and postures of the links 101 and 102 and the joints JTA1 and JTA2. The first position estimation unit 407 estimates the three-dimensional positions and three-dimensional postures of the links 101 and 102 and the joints JTA1 and JTA2 using a reference coordinate system. For example, the first position estimation unit 407 uses the estimated rotational positions of the joints JTA1 and JTA2 estimated by the first estimation unit 403 and the information of the first robot arm 100 stored in the second storage unit 422 to calculate the estimated positions and estimated postures of the links 101 and 102 and the joints JTA1 and JTA2 at the estimated rotational positions. The first position estimation unit 407 calculates the moments of inertia of the links 101 and 102 based on the estimated positions and estimated postures of the links 101 and 102 and the joints JTA1 and JTA2 based on the estimated positions and estimated postures of the links 101 and 102 and the joints JTA1 and JTA2. The moment of inertia is the moment of inertia with respect to the origin O of the reference coordinate system.

第2位置推定部408は、接続部分110の位置を推定する。具体的には、第2位置推定部408は、接続部分110の基準点110Aの3次元の位置及び接続部分110の界面の3次元の姿勢を、基準座標系を用いて推定する。例えば、第1位置推定部407は、第1推定部403によって推定される関節JTA1及びJTA2の推定回転位置と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、当該推定回転位置での接続部分110の推定位置及び推定姿勢を演算してもよい。第2位置推定部408は、第1位置推定部407によって推定されるリンク101及び102並びに関節JTA1及びJTA2それぞれの推定位置及び推定姿勢を用いて、接続部分110の推定位置及び推定姿勢を演算してもよい。第2位置推定部408は、第1動作指令部401から、関節JTA1及びJTA2の目標回転位置に対応する接続部分110の目標位置及び目標姿勢を取得し、当該目標位置及び目標姿勢を基準座標系に変換し推定位置及び推定姿勢としてもよい。 The second position estimation unit 408 estimates the position of the connection part 110. Specifically, the second position estimation unit 408 estimates the three-dimensional position of the reference point 110A of the connection part 110 and the three-dimensional orientation of the interface of the connection part 110 using a reference coordinate system. For example, the first position estimation unit 407 may calculate the estimated position and estimated orientation of the connection part 110 at the estimated rotation position using the estimated rotation positions of the joints JTA1 and JTA2 estimated by the first estimation unit 403 and the information of the first robot arm 100 stored in the second storage unit 422. The second position estimation unit 408 may calculate the estimated position and estimated orientation of the connection part 110 using the estimated positions and estimated orientations of the links 101 and 102 and the joints JTA1 and JTA2 estimated by the first position estimation unit 407. The second position estimation unit 408 may obtain the target position and target orientation of the connection part 110 corresponding to the target rotational positions of the joints JTA1 and JTA2 from the first operation command unit 401, and convert the target position and target orientation into a reference coordinate system to obtain an estimated position and estimated orientation.

慣性要素推定部409は、リンク101~103の慣性的特徴と第2ロボットアーム200の慣性的特徴とを推定する。これに限定されないが、本実施の形態では、リンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、慣性要素推定部409は、リンク101及び102の慣性的特徴を推定する。リンク101及び102の慣性的特徴は、リンク101及び102の慣性モーメント及び質量を要素として含む。第2ロボットアーム200の慣性的特徴は、第2ロボットアーム200の慣性モーメント及び質量を要素として含む。 The inertial element estimation unit 409 estimates the inertial characteristics of the links 101 to 103 and the inertial characteristics of the second robot arm 200. Although not limited to this, in this embodiment, since link 103 is immobile with almost no deformation such as bending even when it receives a force via link 101 and joint JTA1, the inertial element estimation unit 409 estimates the inertial characteristics of links 101 and 102. The inertial characteristics of links 101 and 102 include the inertial moment and mass of links 101 and 102 as elements. The inertial characteristics of the second robot arm 200 include the inertial moment and mass of the second robot arm 200 as elements.

慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2の動作に基づき、関節JTA1及びJTA2それぞれが動作することによってリンク101~103に発生する慣性力(以下、「関節起因慣性力」とも称する)を推定する。これに限定されないが、本実施の形態では、リンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、慣性力推定部410は、リンク101及び102に発生する関節起因慣性力を推定する。 The inertial force estimation unit 410 estimates the inertial forces (hereinafter also referred to as "joint-induced inertial forces") generated in the links 101 to 103 due to the movements of the joints JTA1 and JTA2, based on the movements of the joints JTA1 and JTA2 estimated by the first estimation unit 403. Although not limited to this, in this embodiment, the link 103 is immobile with almost no deformation such as bending even when it receives a force via the link 101 and the joint JTA1, so the inertial force estimation unit 410 estimates the joint-induced inertial forces generated in the links 101 and 102.

具体的には、慣性力推定部410は、リンク101及び102の慣性的特徴と、第2ロボットアーム200の慣性的特徴と、関節JTA1及びJTA2の加速度と、関節JTA1及びJTA2のジョイントスクリュとを用いて、リンク101及び102に発生する関節起因慣性力を推定する。関節JTA1及びJTA2のジョイントスクリュはそれぞれ、当該関節の向きを示す要素を含む当該関節の状態を示す特徴である。 Specifically, the inertial force estimation unit 410 estimates the joint-induced inertial forces occurring in the links 101 and 102 using the inertial characteristics of the links 101 and 102, the inertial characteristics of the second robot arm 200, the accelerations of the joints JTA1 and JTA2, and the joint screws of the joints JTA1 and JTA2. The joint screws of the joints JTA1 and JTA2 are each a feature indicating the state of the joint, including an element indicating the orientation of the joint.

補正指令部411は、第4推定部406によって推定されるリンク101及び102の変形量並びに/又は関節JTA1及びJTA2の変形量に基づき、第1目標動作に従って接続部分110を移動させるように上記変形量を補償するための第1動作指令の補正指令を生成する。補正指令部411は、当該補正指令を第1ロボットアーム100、具体的には、第1駆動指令部501に出力する。これに限定されないが、本実施の形態では、補正指令部411は、上記変形量を補償するために第1動作指令を補正し、補正後の第1動作指令を補正指令として生成する。補正指令部411は、第1動作指令を補正しない場合、未補正の第1動作指令を補正指令として、第1駆動指令部501に出力する。また、補正指令部411は、第2動作指令を第2ロボットアーム200、具体的には、第2駆動指令部502に出力する。 Based on the deformation amount of the links 101 and 102 and/or the deformation amount of the joints JTA1 and JTA2 estimated by the fourth estimation unit 406, the correction command unit 411 generates a correction command for the first operation command to compensate for the deformation amount so as to move the connection part 110 according to the first target operation. The correction command unit 411 outputs the correction command to the first robot arm 100, specifically, to the first drive command unit 501. Although not limited to this, in this embodiment, the correction command unit 411 corrects the first operation command to compensate for the deformation amount, and generates the corrected first operation command as a correction command. When the correction command unit 411 does not correct the first operation command, it outputs the uncorrected first operation command as a correction command to the first drive command unit 501. In addition, the correction command unit 411 outputs the second operation command to the second robot arm 200, specifically, to the second drive command unit 502.

第1駆動指令部501は、補正指令に含まれる関節JTA1及びJTA2の目標回転位置にまで駆動装置MA1及びMA2に関節JTA1及びJTA2を駆動させるための駆動指令を生成し、駆動装置MA1及びMA2に出力する。駆動指令は、駆動装置MA1及びMA2のサーボモータの電流の指令値を含む。第1駆動指令部501は、サーボモータのフィードバック情報を用いて駆動指令を生成する。 The first drive command unit 501 generates a drive command for the drive devices MA1 and MA2 to drive the joints JTA1 and JTA2 to the target rotation positions of the joints JTA1 and JTA2 included in the correction command, and outputs the drive command to the drive devices MA1 and MA2. The drive command includes a command value for the current of the servo motors of the drive devices MA1 and MA2. The first drive command unit 501 generates the drive command using feedback information of the servo motors.

第2駆動指令部502は、第2動作指令に含まれる関節JTB1~JTB6の目標回転位置にまで駆動装置MB1~MB6に関節JTB1~JTB6を駆動させるための駆動指令を生成し、駆動装置MB1~MB6に出力する。駆動指令は、駆動装置MB1~MB6のサーボモータの電流の指令値を含む。第2駆動指令部502は、サーボモータのフィードバック情報を用いて駆動指令を生成する。 The second drive command unit 502 generates a drive command for driving the drive devices MB1 to MB6 to drive the joints JTB1 to JTB6 to the target rotation positions of the joints JTB1 to JTB6 included in the second operation command, and outputs the drive command to the drive devices MB1 to MB6. The drive command includes command values for the currents of the servo motors of the drive devices MB1 to MB6. The second drive command unit 502 generates the drive command using feedback information of the servo motors.

[制御装置の動作]
図5を参照しつつ、制御装置300の動作を説明する。図5は、実施の形態に係る制御装置300の動作の一例を示すフローチャートである。まず、情報処理装置300Aにおいて、第1動作指令部401は、第1記憶部421に記憶される第1目標動作データに従って第1ロボットアーム100を動作させるための第1動作指令を生成する(ステップS101)。
[Operation of the control device]
The operation of the control device 300 will be described with reference to Fig. 5. Fig. 5 is a flowchart showing an example of the operation of the control device 300 according to the embodiment. First, in the information processing device 300A, the first operation command unit 401 generates a first operation command for operating the first robot arm 100 in accordance with the first target operation data stored in the first storage unit 421 (step S101).

次いで、第2動作指令部402は、第1記憶部421に記憶される第2目標動作データに従って第2ロボットアーム200を動作させるための第2動作指令を生成する(ステップS102)。 Next, the second operation command unit 402 generates a second operation command for operating the second robot arm 200 according to the second target operation data stored in the first memory unit 421 (step S102).

次いで、第1推定部403は、第1ロボットアーム100が第1動作指令に従って動作する場合の関節JTA1及びJTA2の動作を推定する(ステップS103)。第1推定部403は、推定対象動作として、関節JTA1及びJTA2の推定回転位置及び推定回転速度を算出する。 Next, the first estimation unit 403 estimates the movements of the joints JTA1 and JTA2 when the first robot arm 100 moves according to the first movement command (step S103). The first estimation unit 403 calculates the estimated rotational positions and estimated rotational velocities of the joints JTA1 and JTA2 as the movements to be estimated.

次いで、第1位置推定部407は、第1ロボットアーム100が第1動作指令に従って動作する場合のリンク101及び102並びに関節JTA1及びJTA2それぞれの位置及び姿勢を推定する(ステップS104)。例えば、第1位置推定部407は、第1推定部403によって推定される関節JTA1及びJTA2の推定回転位置と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、リンク101及び102並びに関節JTA1及びJTA2それぞれの推定位置及び推定姿勢を演算してもよい。 Next, the first position estimation unit 407 estimates the positions and orientations of the links 101 and 102 and the joints JTA1 and JTA2 when the first robot arm 100 operates according to the first operation command (step S104). For example, the first position estimation unit 407 may calculate the estimated positions and orientations of the links 101 and 102 and the joints JTA1 and JTA2 using the estimated rotational positions of the joints JTA1 and JTA2 estimated by the first estimation unit 403 and the information of the first robot arm 100 stored in the second storage unit 422.

例えば、第1位置推定部407は、リンク101及び102の推定位置として、リンク101及び102の重心の推定位置を、基準座標系を基準に演算する。例えば、第1位置推定部407は、基準座標系での第1リンク101の重心の推定位置ベクトルγg1оと、基準座標系での第2リンク102の重心の推定位置ベクトルγg2оとを算出する。以下において、基準座標系の原点Оである基準点110Aを基準とする第iリンクの位置ベクトルを「γgiо」と表す。リンクの番号「i」は、第1ロボットアーム100の基端から先端に向かって増加する。なお、第1位置推定部407は、リンク101及び102に設定される他の基準点の推定位置を、基準座標系を基準に演算するように構成されてもよい。 For example, the first position estimation unit 407 calculates the estimated positions of the centers of gravity of the links 101 and 102 based on the reference coordinate system as the estimated positions of the links 101 and 102. For example, the first position estimation unit 407 calculates an estimated position vector γ g1о of the center of gravity of the first link 101 in the reference coordinate system and an estimated position vector γ g2о of the center of gravity of the second link 102 in the reference coordinate system. In the following, the position vector of the i-th link based on the reference point 110A, which is the origin O of the reference coordinate system, is represented as "γ gio ". The link number "i" increases from the base end to the tip end of the first robot arm 100. Note that the first position estimation unit 407 may be configured to calculate the estimated positions of other reference points set on the links 101 and 102 based on the reference coordinate system.

例えば、第1位置推定部407は、関節JTA1及びJTA2の推定位置及び推定姿勢として、関節JTA1及びJTA2の重心の推定位置及び基準軸の推定姿勢を、基準座標系を基準に演算する。例えば、第1位置推定部407は、基準座標系での第1関節JTA1の重心の推定位置ベクトルγ1оと、基準座標系での第2関節JTA2の重心の推定位置ベクトルγとを算出する。以下において、基準座標系の原点Оを基準とする第j関節の位置ベクトルを「γjо」と表す。関節の番号「j」は、第1ロボットアーム100の基端から先端に向かって増加する。なお、第1位置推定部407は、関節JTA1及びJTA2に設定される他の基準点の推定位置を、基準座標系を基準に演算するように構成されてもよい。 For example, the first position estimation unit 407 calculates the estimated positions of the centers of gravity of the joints JTA1 and JTA2 and the estimated orientations of the reference axes as the estimated positions and orientations of the joints JTA1 and JTA2 with reference to the reference coordinate system. For example, the first position estimation unit 407 calculates an estimated position vector γ of the center of gravity of the first joint JTA1 in the reference coordinate system and an estimated position vector γ of the center of gravity of the second joint JTA2 in the reference coordinate system. In the following, the position vector of the j-th joint with reference to the origin O of the reference coordinate system is represented as "γ ". The joint number "j" increases from the base end to the tip end of the first robot arm 100. Note that the first position estimation unit 407 may be configured to calculate the estimated positions of other reference points set in the joints JTA1 and JTA2 with reference to the reference coordinate system.

例えば、第1位置推定部407は、関節JTA1及びJTA2の基準軸の推定姿勢として、基準座標系での第1関節JTA1の推定方向ベクトルd1оと、基準座標系での第2関節JTA2の推定方向ベクトルd2оとを算出する。以下において、基準座標系の原点Оを基準とする第j関節の方向ベクトルを「djо」と表す。方向ベクトルdjоは、第j関節の動作の基準軸の方向を示すベクトルである。例えば、第j関節が回転関節である場合、方向ベクトルdjоは、関節軸である回転中心軸の方向ベクトルである。第j関節が直動関節である場合、方向ベクトルdjоは、関節軸である直動方向の軸の方向ベクトルである。 For example, the first position estimation unit 407 calculates an estimated direction vector d 1o of the first joint JTA1 in the reference coordinate system and an estimated direction vector d 2o of the second joint JTA2 in the reference coordinate system as estimated attitudes of the reference axes of the joints JTA1 and JTA2. Hereinafter, the direction vector of the jth joint based on the origin O of the reference coordinate system is represented as "d jo ". The direction vector d jo is a vector indicating the direction of the reference axis of the movement of the jth joint. For example, when the jth joint is a rotating joint, the direction vector d jo is a direction vector of the rotation center axis, which is the joint axis. When the jth joint is a linear joint, the direction vector d jo is a direction vector of the linear axis, which is the joint axis.

さらに、第1位置推定部407は、リンク101及び102の推定位置並びに関節JTA1及びJTA2の推定位置及び推定姿勢と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、基準座標系の原点Оを基準とするリンク101及び102の慣性モーメントl1О及びl2Оを演算する。以下において、基準座標系の原点Оを基準とする第iリンクの慣性モーメントを「liО」と表す。 Furthermore, the first position estimation unit 407 calculates moments of inertia l 1O and l 2O of the links 101 and 102 with respect to the origin O of the reference coordinate system, using the estimated positions of the links 101 and 102 and the estimated positions and orientations of the joints JTA1 and JTA2 , and information on the first robot arm 100 stored in the second storage unit 422. Hereinafter, the moment of inertia of the i-th link with respect to the origin O of the reference coordinate system is represented as "l iO ".

次いで、第2位置推定部408は、第1ロボットアーム100が第1動作指令に従って動作する場合の接続部分110の位置及び姿勢を推定する(ステップS105)。例えば、第1位置推定部407は、第1位置推定部407によって推定されるリンク101及び102並びに関節JTA1及びJTA2の推定位置及び推定姿勢と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、接続部分110の推定位置及び推定姿勢を演算してもよい。 Next, the second position estimation unit 408 estimates the position and orientation of the connection part 110 when the first robot arm 100 operates according to the first operation command (step S105). For example, the first position estimation unit 407 may calculate the estimated position and estimated orientation of the connection part 110 using the estimated positions and estimated orientations of the links 101 and 102 and the joints JTA1 and JTA2 estimated by the first position estimation unit 407 and information on the first robot arm 100 stored in the second memory unit 422.

第2位置推定部408は、基準点110Aの推定位置と、接続部分110の界面の推定姿勢とを、ロボット座標系を基準に算出する。つまり、第2位置推定部408は、基準座標系の推定位置及び推定姿勢を、ロボット座標系を基準に算出する。ロボット座標系は、ロボット1を基準に定義される座標系である。これに限定されないが、本実施の形態では、図2に示すように、ロボット座標系の原点Оrは、支持面S上のリンク103の位置に設定される。Xr軸及びYr軸は、原点Оrから支持面Sに沿って延び、互いに直交する。Zr軸は、原点Оrから支持面Sに垂直に上方へ延び、Xr軸及びYr軸と直交する。 The second position estimation unit 408 calculates the estimated position of the reference point 110A and the estimated posture of the interface of the connection part 110 with reference to the robot coordinate system. In other words, the second position estimation unit 408 calculates the estimated position and estimated posture of the reference coordinate system with reference to the robot coordinate system. The robot coordinate system is a coordinate system defined with reference to the robot 1. Although not limited to this, in this embodiment, as shown in FIG. 2, the origin Or of the robot coordinate system is set to the position of the link 103 on the support surface S. The Xr axis and the Yr axis extend from the origin Or along the support surface S and are orthogonal to each other. The Zr axis extends from the origin Or perpendicularly upward to the support surface S and is orthogonal to the Xr axis and the Yr axis.

次いで、第2推定部404は、第2ロボットアーム200が第2動作指令に従って動作する場合に接続部分110が第2ロボットアーム200から受ける力を推定する(ステップS106)。上記力は、第2ロボットアーム200の荷重と、第2ロボットアーム200が接続部分110に発生するモーメントとを含む。例えば、第2推定部404は、第2動作指令に含まれる関節JTB1~JTB6の目標回転位置に基づき、基準座標系を基準とするリンク201~207及び関節JTB1~JTB6の推定位置及び推定姿勢を演算する。さらに、第2推定部404は、リンク201~207及び関節JTB1~JTB6の推定位置及び推定姿勢と、第2位置推定部408によって推定された接続部分110の推定位置及び推定姿勢と、第3記憶部423に記憶される第2ロボットアーム200の情報とを用いて、第2ロボットアーム200が接続部分110に発生するモーメント及び第2ロボットアーム200の荷重を、基準座標系を基準として算出する。 Next, the second estimation unit 404 estimates the force that the connection part 110 receives from the second robot arm 200 when the second robot arm 200 operates in accordance with the second operation command (step S106). The force includes the load of the second robot arm 200 and a moment that the second robot arm 200 generates at the connection part 110. For example, the second estimation unit 404 calculates estimated positions and attitudes of the links 201-207 and the joints JTB1-JTB6 based on the reference coordinate system, based on the target rotation positions of the joints JTB1-JTB6 included in the second operation command. Furthermore, the second estimation unit 404 uses the estimated positions and orientations of the links 201-207 and the joints JTB1-JTB6, the estimated position and orientation of the connection part 110 estimated by the second position estimation unit 408, and information on the second robot arm 200 stored in the third storage unit 423 to calculate the moment that the second robot arm 200 generates at the connection part 110 and the load of the second robot arm 200, based on the reference coordinate system.

さらに、第2推定部404は、リンク201~207及び関節JTB1~JTB6の推定位置及び推定姿勢と、第2ロボットアーム200の情報とを用いて、第2ロボットアーム200全体の重心位置である推定重心位置と、第2ロボットアーム200全体の慣性モーメントである推定慣性モーメントとを算出する。このとき、第2推定部404は、第2ロボットアーム200の情報として、リンク201~207の重心位置及び質量、関節JTB1~JTB6の重心位置及び質量、エンドエフェクタEの重心位置及び質量、並びに、対象物Wの重心位置及び質量等を用い得る。 Furthermore, the second estimation unit 404 uses the estimated positions and orientations of the links 201-207 and the joints JTB1-JTB6, and information on the second robot arm 200, to calculate an estimated center of gravity position, which is the center of gravity position of the entire second robot arm 200, and an estimated moment of inertia, which is the moment of inertia of the entire second robot arm 200. At this time, the second estimation unit 404 may use, as information on the second robot arm 200, the center of gravity positions and masses of the links 201-207, the center of gravity positions and masses of the joints JTB1-JTB6, the center of gravity position and mass of the end effector E, and the center of gravity position and mass of the object W, etc.

次いで、慣性要素推定部409は、第1ロボットアーム100のリンク101及び102それぞれの慣性的特徴と第2ロボットアーム200全体の慣性的特徴とを推定する(ステップS107)。慣性要素推定部409は、第2記憶部422に記憶される第1ロボットアーム100の情報及び第3記憶部423に記憶される第2ロボットアーム200の情報を用いて、基準座標系を基準とする各慣性的特徴を算出する。 Next, the inertial element estimation unit 409 estimates the inertial characteristics of each of the links 101 and 102 of the first robot arm 100 and the inertial characteristics of the entire second robot arm 200 (step S107). The inertial element estimation unit 409 calculates each inertial characteristic based on the reference coordinate system using the information of the first robot arm 100 stored in the second storage unit 422 and the information of the second robot arm 200 stored in the third storage unit 423.

以下において、第iリンクの慣性的特徴を「Liо」と表し、第2ロボットアーム200全体の慣性的特徴を「Laо」と表す。慣性的特徴「Liо」及び「Laо」は、基準座標系の原点Оを基準とする。慣性的特徴Liоは、第iリンクの質量及び慣性モーメントを表す6×6行列である。慣性的特徴Laоは、第2ロボットアーム200全体の質量及び慣性モーメントを表す6×6行列である。慣性要素推定部409は、慣性的特徴Liо及びLaоをそれぞれ、下記の式1及び式2を用いて算出する。式1及び式2に示される慣性的特徴Liо及びLaоは、慣性バイナとも呼ばれる。 In the following, the inertial characteristic of the i-th link is represented as "L io ", and the inertial characteristic of the entire second robot arm 200 is represented as "L ao ". The inertial characteristics "L io " and "L ao " are based on the origin O of the reference coordinate system. The inertial characteristic L io is a 6×6 matrix representing the mass and moment of inertia of the i-th link. The inertial characteristic L ao is a 6×6 matrix representing the mass and moment of inertia of the entire second robot arm 200. The inertial element estimation unit 409 calculates the inertial characteristics L io and L ao using the following equations 1 and 2, respectively. The inertial characteristics L io and L ao shown in equations 1 and 2 are also called inertial biners.

Figure 0007604264000001
Figure 0007604264000001

式1において、要素「m」は第iリンクの質量であり、スカラーである。要素「liО」は第iリンクの慣性モーメントを表す3×3行列である。要素「E」は、単位行列である。要素「γgiО」は第iリンクの重心の3次元の位置ベクトルである。[γgiО×]は、位置ベクトルγgiОの外積を歪対称行列で表現したものであり、位置ベクトルγgiОの外積行列とも呼ばれる。 In formula 1, element "m i " is the mass of the i-th link and is a scalar. Element "l iO " is a 3 x 3 matrix representing the moment of inertia of the i-th link. Element "E" is an identity matrix. Element "γぎO� " is the three-dimensional position vector of the center of gravity of the i-th link. [γぎO� ×] is the cross product of the position vector γぎO� expressed as a skew-symmetric matrix, and is also called the cross product matrix of the position vector γぎO� .

式2において、要素「m」は第2ロボットアーム200全体の質量であり、スカラーである。要素「laО」は第2ロボットアーム200全体の慣性モーメントを表す3×3行列である。要素「γgaО」は第2ロボットアーム200全体の重心の3次元の位置ベクトルである。[γgaО×]は、位置ベクトルγgaОの外積を歪対称行列で表現したものである。 In Equation 2, the element "m a " is the mass of the entire second robot arm 200, and is a scalar. The element "l aO " is a 3×3 matrix representing the moment of inertia of the entire second robot arm 200. The element "γ gaO " is a three-dimensional position vector of the center of gravity of the entire second robot arm 200. [γ gaO ×] is a cross product of the position vector γ gaO expressed as a skew-symmetric matrix.

次いで、慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2の動作に基づき、関節JTA1及びJTA2それぞれが動作することによってリンク101及び102に発生する慣性力(関節起因慣性力)を推定する(ステップS108)。慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2の推定回転位置と、慣性要素推定部409によって推定される慣性的特徴とを用いて、リンク101及び102に発生する関節起因慣性力を演算する。 Next, the inertial force estimation unit 410 estimates the inertial forces (joint-induced inertial forces) generated in the links 101 and 102 due to the movements of the joints JTA1 and JTA2, based on the movements of the joints JTA1 and JTA2 estimated by the first estimation unit 403 (step S108). The inertial force estimation unit 410 calculates the joint-induced inertial forces generated in the links 101 and 102 using the estimated rotational positions of the joints JTA1 and JTA2 estimated by the first estimation unit 403 and the inertial characteristics estimated by the inertial element estimation unit 409.

具体的には、慣性力推定部410は、関節JTA1及びJTA2それぞれのジョイントスクリュを演算する。第j関節のジョイントスクリュを「Mjо」と表す。慣性力推定部410は、第1関節JTA1の推定ジョイントスクリュM1оと、第2関節JTA2の推定ジョイントスクリュM2оとを、基準座標系を基準として算出する。ジョイントスクリュMjоは、6次元のベクトルで表される。 Specifically, the inertia force estimating unit 410 calculates the joint screw of each of the joints JTA1 and JTA2. The joint screw of the j-th joint is represented as "M j0 ". The inertia force estimating unit 410 calculates an estimated joint screw M 10 of the first joint JTA1 and an estimated joint screw M 20 of the second joint JTA2 based on a reference coordinate system. The joint screw M j0 is represented by a six-dimensional vector.

本実施の形態では、関節JTA1及びJTA2はいずれも、1つの回転中心軸を中心に回転可能である回転関節である。例えば、慣性力推定部410は、下記の式3に示すように、第j関節の推定ジョイントスクリュMjоを算出する。式3において、γjо×djоは、γjо及びdjоの外積を示す。要素「γjо」は第j関節の3次元の推定位置ベクトルであり、要素「djо」は第j関節の3次元の推定方向ベクトルである。第j関節の推定方向ベクトルdjоは、第j関節の関節軸である回転中心軸の方向ベクトルを示す。 In this embodiment, both of the joints JTA1 and JTA2 are rotational joints that can rotate around one rotation central axis. For example, the inertial force estimator 410 calculates an estimated joint screw M j0 of the j-th joint as shown in the following formula 3. In formula 3, γ j0 ×d j0 indicates the cross product of γ j0 and d j0 . The element "γ j0 " is a three-dimensional estimated position vector of the j-th joint, and the element "d j0 " is a three-dimensional estimated direction vector of the j-th joint. The estimated direction vector d j0 of the j-th joint indicates the direction vector of the rotation central axis, which is the joint axis of the j-th joint.

Figure 0007604264000002
Figure 0007604264000002

上記の式3は、第j関節が回転関節である場合の第j関節のジョイントスクリュを示すが、第j関節が他の形式の関節であっても、第j関節のジョイントスクリュを算出することができる。例えば、第j関節が直動関節である場合、第j関節のジョイントスクリュは、下記の式4のように表され得る。第j関節がネジ関節である場合、第j関節のジョイントスクリュは、下記の式5のように表され得る。式4において、要素「djо」は、第j関節の関節軸である直動方向の軸の方向ベクトルを示す。式5において、要素「djо」は、第j関節の関節軸であるネジ回転の回転中心軸の方向ベクトルを示し、当該方向ベクトルは、ネジ回転による進退方向の軸の方向ベクトルでもある。ネジ関節は、ネジ関節に接続されているリンクが回転中心軸周りに回動すると、回転中心軸方向に当該リンクを進退させるように構成される。要素「h」は、ネジ回転のピッチを示し、例えば、1ラジアンの回転当たりのリンクの回転中心軸方向の進退量を示す。 The above formula 3 shows the joint screw of the j-th joint when the j-th joint is a rotary joint, but even if the j-th joint is another type of joint, the joint screw of the j-th joint can be calculated. For example, when the j-th joint is a linear joint, the joint screw of the j-th joint can be expressed as the following formula 4. When the j-th joint is a screw joint, the joint screw of the j-th joint can be expressed as the following formula 5. In formula 4, the element "d " indicates the direction vector of the axis of linear motion, which is the joint axis of the j-th joint. In formula 5, the element "d " indicates the direction vector of the rotation center axis of the screw rotation, which is the joint axis of the j-th joint, and the direction vector is also the direction vector of the axis of advancement and retreat by the screw rotation. The screw joint is configured to advance and retreat the link in the direction of the rotation center axis when the link connected to the screw joint rotates around the rotation center axis. The element "h" indicates the pitch of the screw rotation, and indicates, for example, the amount of advancement and retreat of the link in the direction of the rotation center axis per rotation of one radian.

Figure 0007604264000003
Figure 0007604264000003

さらに、慣性力推定部410は、関節JTA1及びJTA2の加速度を推定する。当該加速度は、関節JTA1及びJTA2が推定回転位置へ動作するときに関節JTA1及びJTA2が発生する加速度である。例えば、慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2それぞれの推定回転速度を時間微分することによって、関節JTA1及びJTA2それぞれの推定加速度θ ’’及びθ ’’を算出する。 Furthermore, the inertial force estimator 410 estimates the accelerations of the joints JTA1 and JTA2. The accelerations are the accelerations generated by the joints JTA1 and JTA2 when the joints JTA1 and JTA2 move to the estimated rotation positions. For example, the inertial force estimator 410 calculates the estimated accelerations θ 1 and θ 2 of the joints JTA1 and JTA2, respectively, by time-differentiating the estimated rotational speeds of the joints JTA1 and JTA2, respectively, estimated by the first estimator 403.

慣性力推定部410は、慣性的特徴L1о、L2о及びLaоと、ジョイントスクリュM1о及びM2оと、推定加速度θ ’’及びθ ’’とを用いて、推定加速度θ ’’及びθ ’’によって第iリンクに加わる関節起因慣性力Fijоを、基準座標系を基準として算出する。関節起因慣性力Fijоは、基準座標系の原点Оを基準として、第j関節の推定加速度θ ’’によって第iリンクに発生する慣性力を表す。関節起因慣性力Fijоは、3つの並進方向の成分と3つの回転方向の成分とを含み、6次元のベクトルで表される。慣性力推定部410は、推定加速度θ ’’及びθ ’’によってリンク101及び102に発生する関節起因慣性力F11о、F12о、F21о及びF22оを下記の式6~式9に示すように算出する。関節起因慣性力Fijоは、第j関節が動作することで移動するリンクの慣性的特徴と、第2ロボットアーム200の慣性的特徴とを要素として含む。 The inertial force estimating unit 410 uses the inertial characteristics L 1o , L 2o , and L ao , the joint screws M 1o and M 2o , and the estimated accelerations θ 1 and θ 2 to calculate the joint-induced inertial force F ijo applied to the i-th link by the estimated accelerations θ 1 and θ 2 with reference to the reference coordinate system. The joint-induced inertial force F ijo represents the inertial force generated in the i-th link by the estimated acceleration θ j of the j-th joint with reference to the origin O of the reference coordinate system. The joint-induced inertial force F ijo includes three translational components and three rotational components, and is expressed as a six-dimensional vector. The inertial force estimating unit 410 calculates the joint-induced inertial forces F 11o , F 12o , F 21o , and F 22o generated in the links 101 and 102 due to the estimated accelerations θ 1 and θ 2 as shown in the following equations 6 to 9. The joint-induced inertial force F ijo includes, as elements, the inertial characteristics of the link that moves as a result of the operation of the j-th joint, and the inertial characteristics of the second robot arm 200.

Figure 0007604264000004
Figure 0007604264000004

次いで、第3推定部405は、慣性力推定部410によって推定される関節起因慣性力と、第2推定部404によって推定される力とに基づき、リンク101及び102が受ける力を推定する(ステップS109)。第3推定部405は、第2推定部404によって推定される力として、第2ロボットアーム200の推定慣性力Faоを用いる。推定慣性力Faоは、基準座標系の原点Оを基準として第2ロボットアーム200が原点Оに加える慣性力であってもよい。これに限定されないが、本実施の形態では、推定慣性力Faоとして、第2推定部404によって推定される第2ロボットアーム200の荷重及びモーメントが用いられる。推定慣性力Faоは、荷重の3方向の成分とモーメントの3方向の成分とを含み、6次元のベクトルで表される。 Next, the third estimation unit 405 estimates the force acting on the links 101 and 102 based on the joint-induced inertial force estimated by the inertial force estimation unit 410 and the force estimated by the second estimation unit 404 (step S109). The third estimation unit 405 uses the estimated inertial force F ao of the second robot arm 200 as the force estimated by the second estimation unit 404. The estimated inertial force F ao may be the inertial force applied by the second robot arm 200 to the origin O of the reference coordinate system, with the origin O being used as a reference. Although not limited thereto, in this embodiment, the load and moment of the second robot arm 200 estimated by the second estimation unit 404 are used as the estimated inertial force F ao . The estimated inertial force F ao includes three directional components of the load and three directional components of the moment, and is expressed as a six-dimensional vector.

第3推定部405は、関節起因慣性力Fijоと推定慣性力Faоとを用いて、基準座標系の原点Оを基準として第iリンクに発生する推定慣性力Fiоを、第iリンクが受ける力として算出する。推定慣性力Fiоは、3つの並進方向の成分と3つの回転方向の成分とを含み、6次元のベクトルで表される。第3推定部405は、リンク101及び102に発生する推定慣性力F1о及びF2оを下記の式10及び式11に示すように算出する。 The third estimator 405 uses the joint-induced inertial force F ijO and the estimated inertial force F ao to calculate an estimated inertial force F io generated in the i-th link with reference to the origin O of the reference coordinate system as a force applied to the i-th link. The estimated inertial force F io includes three translational components and three rotational components, and is represented by a six-dimensional vector. The third estimator 405 calculates the estimated inertial forces F 1o and F 2o generated in the links 101 and 102 as shown in the following Equations 10 and 11.

Figure 0007604264000005
Figure 0007604264000005

次いで、第4推定部406は、第3推定部405によって推定されるリンク101及び102が受ける力に基づき、リンク101及び102の変形量と関節JTA1及びJTA2の変形量とを推定する(ステップS110)。 Next, the fourth estimation unit 406 estimates the deformation amounts of the links 101 and 102 and the deformation amounts of the joints JTA1 and JTA2 based on the forces acting on the links 101 and 102 estimated by the third estimation unit 405 (step S110).

第4推定部406は、第2記憶部422に記憶される第1ロボットアーム100の情報に含まれる関節JTA1及びJTA2の剛性kg1及びkg2と、推定慣性力F1о及びF2оとを用いて、関節JTA1及びJTA2の推定変形量を演算する。この場合、第4推定部406は、推定慣性力F1о及びF2оと、ジョイントスクリュM1о及びM2оとを用いて、関節JTA1及びJTA2それぞれに作用する推定トルクτ及びτを、下記の式12及び式13に示すように算出する。以下において、第j関節の剛性を「kgj」と表し、第j関節の推定トルクを「τ」と表す。剛性kgjは、3つの並進方向の成分と3つの回転方向の成分とを含み、6次元のベクトルで表される。剛性kgjは、第j関節の減速機の剛性である減速機のばね定数等を含む。推定トルクτはスカラーである。 The fourth estimator 406 calculates the estimated deformation amounts of the joints JTA1 and JTA2 using the stiffnesses k g1 and k g2 of the joints JTA1 and JTA2 and the estimated inertial forces F 1o and F 2o included in the information of the first robot arm 100 stored in the second storage unit 422. In this case, the fourth estimator 406 calculates the estimated torques τ 1 and τ 2 acting on the joints JTA1 and JTA2, respectively, using the estimated inertial forces F 1o and F 2o and the joint screws M 1o and M 2o , as shown in the following formulas 12 and 13. In the following, the stiffness of the j-th joint is represented as "k gj " and the estimated torque of the j-th joint is represented as "τ j ". The stiffness k gj includes three translational components and three rotational components, and is represented as a six-dimensional vector. The stiffness k gj includes the spring constant of the reducer, which is the stiffness of the reducer of the j-th joint, etc. The estimated torque τ j is a scalar.

Figure 0007604264000006
Figure 0007604264000006

式12及び式13における演算子「〇」は、ベクトルの分配演算を示す。例えば、6次元のベクトルAが、3次元の並進方向の成分を含むベクトルaと、3次元の回転方向の成分を含むベクトルaとを含み、6次元のベクトルBが、3次元の並進方向の成分を含むベクトルbと、3次元の回転方向の成分を含むベクトルbとを含む場合、演算子「〇」を用いたベクトルA及びBの演算は、下記の式14のように示される。 The operator "o" in formulas 12 and 13 indicates a distribution operation of vectors. For example, in the case where a six-dimensional vector A includes a vector a1 including a three-dimensional translation component and a vector a2 including a three-dimensional rotation component, and a six-dimensional vector B includes a vector b1 including a three-dimensional translation component and a vector b2 including a three-dimensional rotation component, the operation of vectors A and B using the operator "o" is shown as in formula 14 below.

Figure 0007604264000007
Figure 0007604264000007

さらに、第4推定部406は、推定トルクτを剛性kgjで除算することによって、第j関節の推定変形量Δθを算出する。第4推定部406は、関節JTA1及びJTA2それぞれの推定変形量Δθ及びΔθを下記の式15及び式16に示すように算出する。推定変形量Δθは、第j関節での変形に対する補償量とすることができる。 Furthermore, the fourth estimator 406 calculates an estimated deformation amount Δθj of the j-th joint by dividing the estimated torque τj by the stiffness kgj . The fourth estimator 406 calculates the estimated deformation amounts Δθ1 and Δθ2 of the joints JTA1 and JTA2 , respectively, as shown in the following formulas 15 and 16. The estimated deformation amount Δθj can be a compensation amount for deformation at the j-th joint.

Figure 0007604264000008
Figure 0007604264000008

また、第4推定部406は、第2記憶部422に記憶される第1ロボットアーム100の情報に含まれるリンク101及び102のコンプライアンスCI1о及びCI2оと、推定慣性力F1о及びF2оとを用いて、リンク101及び102の推定変形量を演算する。以下において、第iリンクのコンプライアンスを「CIiо」と表す。コンプライアンスCIiоは、基準座標系の原点Оを基準とする第iリンクの剛性を示し、6×6行列で表される。 Furthermore, the fourth estimator 406 calculates an estimated deformation amount of the links 101 and 102 using the compliances C I1o and C I2o of the links 101 and 102 and the estimated inertial forces F 1o and F 2o included in the information of the first robot arm 100 stored in the second storage unit 422. Hereinafter, the compliance of the i-th link will be represented as "C Iio ." The compliance C Iio indicates the stiffness of the i-th link based on the origin O of the reference coordinate system, and is represented by a 6 x 6 matrix.

第4推定部406は、推定慣性力F1о及びF2оと、コンプライアンスCI1о及びCI2оとを用いて、リンク101及び102それぞれの推定変形量Δ1о及びΔ2оを、下記の式17及び式18に示すように算出する。以下において、第iリンクの推定変形量を「Δiо」と表す。推定変形量Δiоは、3つの並進方向の成分と3つの回転方向の成分とを含み、基準座標系を基準とする6次元のベクトルで表される。 The fourth estimator 406 uses the estimated inertial forces F 1o and F 2o and the compliances C I1o and C I2o to calculate the estimated deformation amounts Δ 1o and Δ 2o of the links 101 and 102, respectively, as shown in the following equations 17 and 18. Hereinafter, the estimated deformation amount of the i-th link will be represented as "Δ io ." The estimated deformation amount Δ io includes three translational components and three rotational components, and is represented as a six-dimensional vector based on the reference coordinate system.

Figure 0007604264000009
Figure 0007604264000009

さらに、第4推定部406は、第iリンクの推定変形量Δiоと第j関節のジョイントスクリュMjоとを用いて、第iリンクの推定変形量Δiоを第j関節の推定変形量に変換してもよい。推定変形量Δiоに含まれる3次元の並進方向の成分を含むベクトルを、ベクトルδtiоとし、ジョイントスクリュMjоに含まれる3次元の並進方向の成分を含むベクトルを、ベクトルυjоとする。第iリンクの推定変形量Δiоは、下記の式19に示すように、第j関節の推定変形量ΔθLに変換することができる。推定変形量ΔθLは、リンクの変形に対する補償量とすることができる。 Furthermore, the fourth estimator 406 may convert the estimated deformation amount Δ io of the i-th link into an estimated deformation amount of the j-th joint by using the estimated deformation amount Δ io of the i-th link and the joint screw M j of the j-th joint. A vector including a three-dimensional translational component included in the estimated deformation amount Δ io is defined as a vector δ tio , and a vector including a three-dimensional translational component included in the joint screw M jo is defined as a vector υ jo . The estimated deformation amount Δ io of the i-th link can be converted into an estimated deformation amount ΔθL j of the j-th joint as shown in the following formula 19. The estimated deformation amount ΔθL j can be used as a compensation amount for the deformation of the link.

Figure 0007604264000010
Figure 0007604264000010

次いで、補正指令部411は、第4推定部406によって推定される変形量に基づき、第1目標動作に従って接続部分110を移動させるように上記変形量を補償するための第1動作指令の補正指令を生成する(ステップS111)。補正指令部411は、補正指令及び第2動作指令を関連付けて、ロボットコントローラ300Bに送信する。補正指令部411は、上記変形量を補償することで接続部分110の位置及び姿勢を目標位置及び目標姿勢にするように第1動作指令を補正し、補正後の第1動作指令を補正指令として送信する。 Next, the correction command unit 411 generates a correction command for the first operation command to compensate for the amount of deformation estimated by the fourth estimation unit 406 so as to move the connection part 110 according to the first target operation (step S111). The correction command unit 411 associates the correction command with the second operation command and transmits them to the robot controller 300B. The correction command unit 411 corrects the first operation command so as to bring the position and orientation of the connection part 110 to the target position and orientation by compensating for the amount of deformation, and transmits the corrected first operation command as a correction command.

例えば、補正指令部411は、第1動作指令に含まれる第j関節の目標回転位置に、第j関節の推定変形量Δθを加えることによって、第1動作指令を補正してもよい。補正指令部411は、第1動作指令に含まれる第j関節の目標回転位置に、第j関節の推定変形量ΔθLを加えることによって、第1動作指令を補正してもよい。これにより、リンク及び関節の両方の変形量が補償される。なお、本実施の形態では、第j関節は、1つの自由度を有する回転関節であるため、補正指令部411は、推定変形量Δθと推定変形量ΔθLとのうちの一方を、第j関節の目標回転位置に加えるが、両方を第j関節の目標回転位置に加えることもある。第j関節が2以上の自由度を有する場合、補正指令部411は、推定変形量Δθと推定変形量ΔθLとの両方を、第j関節の目標回転位置に加えることもある。 For example, the correction command unit 411 may correct the first movement command by adding the estimated deformation amount Δθ j of the j-th joint to the target rotation position of the j-th joint included in the first movement command. The correction command unit 411 may correct the first movement command by adding the estimated deformation amount ΔθL j of the j-th joint to the target rotation position of the j-th joint included in the first movement command. This compensates for the deformation amounts of both the link and the joint. In this embodiment, since the j-th joint is a rotation joint having one degree of freedom, the correction command unit 411 adds one of the estimated deformation amount Δθ j and the estimated deformation amount ΔθL j to the target rotation position of the j-th joint, but may also add both to the target rotation position of the j-th joint. When the j-th joint has two or more degrees of freedom, the correction command unit 411 may add both the estimated deformation amount Δθ j and the estimated deformation amount ΔθL j to the target rotation position of the j-th joint.

次いで、ロボットコントローラ300Bにおいて、駆動指令部501及び502は駆動指令を生成しロボットアーム100及び200に出力する(ステップS112)。第1駆動指令部501は、補正指令に従った駆動指令を生成し、第1ロボットアーム100の駆動装置MA1及びMA2に出力する。第2駆動指令部502は、第2動作指令に従った駆動指令を生成し、第2ロボットアーム200の駆動装置MB1~MB6に出力する。駆動指令部501及び502は、それぞれの駆動指令の出力タイミングを同期させるように、互いに協働してそれぞれの駆動指令を出力する。これにより、ロボットアーム100及び200は、同時にそれぞれの目標動作を実行するが、2つのロボットアーム100及び200の動作に起因して、接続部分110の位置及び姿勢が目標位置及び目標姿勢から変動することが抑えられる。よって、第2ロボットアーム200は、作用を加える対象物Wに対して目標の動作を正確に行うことができる。 Next, in the robot controller 300B, the drive command units 501 and 502 generate drive commands and output them to the robot arms 100 and 200 (step S112). The first drive command unit 501 generates a drive command according to the correction command and outputs it to the drive units MA1 and MA2 of the first robot arm 100. The second drive command unit 502 generates a drive command according to the second operation command and outputs it to the drive units MB1 to MB6 of the second robot arm 200. The drive command units 501 and 502 output their respective drive commands in cooperation with each other so as to synchronize the output timing of each drive command. As a result, the robot arms 100 and 200 simultaneously execute their respective target operations, but the position and posture of the connection part 110 are prevented from fluctuating from the target position and target posture due to the operations of the two robot arms 100 and 200. Therefore, the second robot arm 200 can accurately perform the target operation on the object W to be acted upon.

(変形例1)
本変形例は、第1ロボットアーム100Aが1つの関節のみを備える点で、実施の形態と異なる。以下、本変形例について、実施の形態と異なる点を中心に説明し、実施の形態と同様の点の説明を適宜省略する。
(Variation 1)
This modification differs from the embodiment in that the first robot arm 100A has only one joint. Hereinafter, the modification will be described with a focus on the differences from the embodiment, and a description of the same points as the embodiment will be omitted as appropriate.

図6は、変形例1に係るロボット1Aの構成をモデル化した側面図である。図6に示すように、ロボット1Aは、実施の形態と同様の第2ロボットアーム200と、第1ロボットアーム100Aとを備える。第1ロボットアーム100Aは、リンク101A及び102Aと、リンク101A及び102Aを回転可能に接続する関節JTAA1とを備える。これに限定されないが、本変形例の第1リンク101Aは、実施の形態の第2リンク102と同様の構成を有し、本変形例の第2リンク102Aは、実施の形態の第3リンク103と同様の構成を有する。本変形例の第1関節JTAA1は、実施の形態の第2関節JTA2と同様の構成を有する。ロボット1Aは、実施の形態と同様である情報処理装置300A及びロボットコントローラ300Bを含む制御装置300を備える。情報処理装置300Aは、実施の形態と同様の処理を行うが、下記の点で実施の形態と異なる演算式を用いて演算する。 FIG. 6 is a side view of a model of the configuration of the robot 1A according to the first modification. As shown in FIG. 6, the robot 1A includes a second robot arm 200 similar to that of the embodiment, and a first robot arm 100A. The first robot arm 100A includes links 101A and 102A, and a joint JTAA1 that rotatably connects the links 101A and 102A. Although not limited thereto, the first link 101A of this modification has a configuration similar to that of the second link 102 of the embodiment, and the second link 102A of this modification has a configuration similar to that of the third link 103 of the embodiment. The first joint JTAA1 of this modification has a configuration similar to that of the second joint JTA2 of the embodiment. The robot 1A includes a control device 300 including an information processing device 300A and a robot controller 300B similar to those of the embodiment. The information processing device 300A performs the same processing as that of the embodiment, but performs calculations using a calculation formula that differs from that of the embodiment in the following respects.

慣性力推定部410は、実施の形態の式6~式9の代わりに下記の式20を用いて、第1関節JTAA1の推定加速度θ ’’によって第1リンク101Aに発生する関節起因慣性力F11оを演算する。 The inertial force estimating unit 410 uses the following equation 20 instead of equations 6 to 9 in the embodiment to calculate the joint-derived inertial force F 110 generated in the first link 101A due to the estimated acceleration θ 1 of the first joint JTAA1.

Figure 0007604264000011
Figure 0007604264000011

第3推定部405は、実施の形態の式10及び式11の代わりに下記の式21を用いて、第1リンク101Aに発生する推定慣性力F1оを演算する。 The third estimator 405 uses the following equation 21 instead of equations 10 and 11 in the embodiment to calculate an estimated inertial force F 10 generated in the first link 101A.

Figure 0007604264000012
Figure 0007604264000012

第4推定部406は、式12を用いて第1関節JTAA1の推定トルクτを演算する。さらに、第4推定部406は、式15を用いて第1関節JTAA1の推定変形量Δθを演算する。第4推定部406は、式17を用いて第1リンク101Aの推定変形量Δ1оを演算する。第4推定部406は、式19を用いて第1リンク101Aの推定変形量Δ1оを第1関節JTAA1の推定変形量ΔθLに変換する。 The fourth estimator 406 calculates an estimated torque τ1 of the first joint JTAA1 using equation 12. Furthermore, the fourth estimator 406 calculates an estimated deformation amount Δθ1 of the first joint JTAA1 using equation 15. The fourth estimator 406 calculates an estimated deformation amount Δ 1o of the first link 101A using equation 17. The fourth estimator 406 converts the estimated deformation amount Δ 1o of the first link 101A into an estimated deformation amount ΔθL1 of the first joint JTAA1 using equation 19.

(変形例2)
本変形例は、第1ロボットアーム100Bが3つの関節を備える点で、実施の形態と異なる。以下、本変形例について、実施の形態及び変形例1と異なる点を中心に説明し、実施の形態及び変形例1と同様の点の説明を適宜省略する。
(Variation 2)
This modification differs from the embodiment in that the first robot arm 100B has three joints. Below, this modification will be described focusing on the differences from the embodiment and modification 1, and descriptions of the same points as the embodiment and modification 1 will be omitted as appropriate.

図7は、変形例2に係るロボット1Bの構成をモデル化した側面図である。図7に示すように、ロボット1Bは、実施の形態と同様の第2ロボットアーム200と、第1ロボットアーム100Bとを備える。第1ロボットアーム100Bは、リンク101B、102B、103B及び104Bと、関節JTAB1、JTAB2及びJTAB3とを備える。これに限定されないが、本変形例のリンク101B及び102Bはそれぞれ、実施の形態のリンク101及び102と同様の構成を有し、本変形例の第4リンク104Bは、実施の形態の第3リンク103と同様の構成を有する。本変形例の関節JTAB1及びJTAB2はそれぞれ、実施の形態の関節JTA1及びJTA2と同様の構成を有する。 Figure 7 is a side view modeling the configuration of robot 1B according to modified example 2. As shown in Figure 7, robot 1B includes second robot arm 200 similar to that of the embodiment, and first robot arm 100B. First robot arm 100B includes links 101B, 102B, 103B, and 104B, and joints JTAB1, JTAB2, and JTAB3. Although not limited thereto, links 101B and 102B of this modified example have the same configuration as links 101 and 102 of the embodiment, respectively, and fourth link 104B of this modified example has the same configuration as third link 103 of the embodiment. Joints JTAB1 and JTAB2 of this modified example have the same configuration as joints JTA1 and JTA2 of the embodiment, respectively.

本変形例の第3リンク103Bの一端は、第3関節JTAB3によって第2リンク102Bと接続される。本変形例の第3リンク103Bの他端には、実施の形態の第2リンク102と同様に、第2ロボットアーム200が取り付けられる。第3関節JTAB3は、支持面Sと垂直な方向に延びる第3軸S3を中心に回動可能である。なお、第1軸S1、第2軸S2及び第3軸S3の方向は、いかなる方向であってもよく、互いに異なっていても同じであってもよい。ロボット1Bは、実施の形態と同様である情報処理装置300A及びロボットコントローラ300Bを含む制御装置300を備える。情報処理装置300Aは、実施の形態と同様の処理を行うが、下記の点で実施の形態と異なる演算式を用いて演算する。 One end of the third link 103B of this modified example is connected to the second link 102B by a third joint JTAB3. The second robot arm 200 is attached to the other end of the third link 103B of this modified example, similar to the second link 102 of the embodiment. The third joint JTAB3 is rotatable around a third axis S3 extending in a direction perpendicular to the support surface S. The directions of the first axis S1, the second axis S2, and the third axis S3 may be any direction, and may be different or the same as each other. The robot 1B is equipped with a control device 300 including an information processing device 300A and a robot controller 300B, which are the same as those of the embodiment. The information processing device 300A performs the same processing as the embodiment, but performs calculations using an arithmetic expression that differs from that of the embodiment in the following respects.

慣性要素推定部409は、式1を用いて、リンク101B、102B及び103Bそれぞれの慣性的特徴L1о、L2о及びL3оを演算する。 The inertial element estimation unit 409 uses Equation 1 to calculate the inertial characteristics L 1o , L 2o and L 3o of the links 101B, 102B and 103B, respectively.

慣性力推定部410は、式3を用いて、関節JTAB1、JTAB2及びJTAB3それぞれのジョイントスクリュM1о、M2о及びM3оを演算する。 The inertia force estimating unit 410 uses Equation 3 to calculate the joint screws M 1o , M 2o and M 3o of the joints JTAB1, JTAB2 and JTAB3, respectively.

慣性力推定部410は、実施の形態の式6~式9の代わりに下記の式22~式30を用いて、関節JTAB1、JTAB2及びJTAB3それぞれの推定加速度θ ’’、θ12 ’’及びθ ’’によってリンク101B、102B及び103Bに発生する関節起因慣性力F11о、F12о、F13о、F21о、F22о、F23о、F31о、F32о及びF33оを演算する。この演算において、慣性力推定部410は、関節JTAB1、JTAB2及びJTAB3それぞれの推定加速度θ ’’、θ12 ’’及びθ ’’と、リンク101B、102B及び103Bそれぞれの慣性的特徴L1о、L2о及びL3оと、第2ロボットアーム200の慣性的特徴Laоと、関節JTAB1、JTAB2及びJTAB3それぞれのジョイントスクリュM1о、M2о及びM3оとを用いる。 The inertial force estimation unit 410 uses the following equations 22 to 30 instead of equations 6 to 9 in the embodiment to calculate joint-induced inertial forces F 11o, F 12o , F 13o, F 21o, F 22o, F 23o, F 31o, F 32o, and F 33o generated in the links 101B, 102B, and 103B by the estimated accelerations θ 1'', θ 12' ' , and θ 3 ' ' of the joints JTAB1, JTAB2 , and JTAB3 , respectively. In this calculation, the inertial force estimation unit 410 uses the estimated accelerations θ 1 '' , θ 12 '' , and θ 3 '' , respectively, of the joints JTAB1, JTAB2, and JTAB3, the inertial characteristics L 1o , L 2o , and L 3o , respectively, of the links 101B, 102B, and 103B, the inertial characteristic L ao of the second robot arm 200, and the joint screws M 1o , M 2o, and M 3o , respectively, of the joints JTAB1, JTAB2, and JTAB3.

Figure 0007604264000013
Figure 0007604264000013

第3推定部405は、実施の形態の式10及び式11の代わりに下記の式31~式33を用いて、リンク101B、102B及び103Bそれぞれに発生する推定慣性力F1о、F2о及びF3оを演算する。 The third estimator 405 uses the following equations 31 to 33 instead of equations 10 and 11 in the embodiment to calculate estimated inertial forces F 1o , F 2o and F 3o generated in the links 101B, 102B and 103B, respectively.

Figure 0007604264000014
Figure 0007604264000014

第4推定部406は、実施の形態の式12及び式13の代わりに下記の式34~式36を用いて、関節JTAB1、JTAB2及びJTAB3それぞれに作用する推定トルクτ、τ及びτを演算する。 The fourth estimator 406 uses the following equations 34 to 36 instead of equations 12 and 13 in the embodiment to calculate estimated torques τ 1 , τ 2 and τ 3 acting on the joints JTAB1, JTAB2 and JTAB3, respectively.

Figure 0007604264000015
Figure 0007604264000015

第4推定部406は、実施の形態の式15及び式16の代わりに下記の式37~式39を用いて、関節JTAB1、JTAB2及びJTAB3それぞれの推定変形量Δθ、Δθ及びΔθを演算する。この演算において、第4推定部406は、関節JTAB1、JTAB2及びJTAB3それぞれの剛性kg1、kg2及びkg3を用いる。 The fourth estimator 406 calculates the estimated deformation amounts Δθ 1 , Δθ 2 and Δθ 3 of the joints JTAB1, JTAB2 and JTAB3, respectively, by using the following equations 37 to 39 instead of equations 15 and 16 in the embodiment. In this calculation, the fourth estimator 406 uses the stiffnesses k g1 , k g2 and k g3 of the joints JTAB1, JTAB2 and JTAB3, respectively.

Figure 0007604264000016
Figure 0007604264000016

第4推定部406は、実施の形態の式17及び式18の代わりに下記の式40~式42を用いて、リンク101B、102B及び103Bそれぞれの推定変形量Δ1о、Δ2о及びΔ3оを演算する。この演算において、第4推定部406は、リンク101B、102B及び103BそれぞれのコンプライアンスCI1о、CI2о及びCI3оを用いる。 The fourth estimator 406 calculates the estimated deformation amounts Δ 1o , Δ 2o , and Δ 3o of the links 101B, 102B, and 103B, respectively, by using the following equations 40 to 42, instead of the equations 17 and 18 in the embodiment. In this calculation, the fourth estimator 406 uses the compliances C I1o , C I2o , and C I3o of the links 101B, 102B, and 103B, respectively.

Figure 0007604264000017
Figure 0007604264000017

第4推定部406は、式19を用いてリンク101B、102B及び103Bの推定変形量Δ1о、Δ2о及びΔ3оを関節JTAB1、JTAB2及びJTAB3の推定変形量ΔθL、ΔθL及びΔθLに変換する。 The fourth estimator 406 uses Equation 19 to convert the estimated deformation amounts Δ 1o , Δ 2o , and Δ 3o of the links 101B, 102B, and 103B into estimated deformation amounts ΔθL 1 , ΔθL 2 , and ΔθL 3 of the joints JTAB1, JTAB2, and JTAB3.

(その他の実施の形態)
以上、本開示の実施の形態及び変形例について説明したが、本開示は、上記実施の形態及び変形例に限定されない。すなわち、本開示の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態及び変形例に施したもの、及び、異なる実施の形態及び変形例における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
Other Embodiments
Although the embodiment and the modified examples of the present disclosure have been described above, the present disclosure is not limited to the above embodiment and modified examples. In other words, various modifications and improvements are possible within the scope of the present disclosure. For example, the embodiment and modified examples to which various modifications have been applied, and forms constructed by combining components in different embodiments and modified examples are also included within the scope of the present disclosure.

例えば、実施の形態及び変形例において、第1ロボットアームの関節の数量が1、2又は3であるケースが例示されるが、第1ロボットアームの関節の数量は、4以上であってもよい。この場合も、制御装置300は、実施の形態及び変形例と同様の制御を行うことができる。 For example, in the embodiments and modifications, the number of joints in the first robot arm is 1, 2, or 3, but the number of joints in the first robot arm may be 4 or more. In this case, the control device 300 can perform the same control as in the embodiments and modifications.

また、実施の形態及び変形例において、第1ロボットアーム及び第2ロボットアームの関節の自由度は1であるが、これに限定されない。第1ロボットアーム及び第2ロボットアームの関節の自由度が2以上であっても、制御装置300は、実施の形態及び変形例と同様の制御を行うことができる。 In addition, in the embodiment and the modified example, the degree of freedom of the joints of the first robot arm and the second robot arm is one, but this is not limited to this. Even if the degree of freedom of the joints of the first robot arm and the second robot arm is two or more, the control device 300 can perform the same control as in the embodiment and the modified example.

また、実施の形態及び変形例において、ロボット1が対象物Wを保持する作業を行うケースが例示されるが、ロボット1がいかなる作業を行う場合であっても、制御装置300は、実施の形態及び変形例と同様の制御を行うことができる。 In addition, in the embodiment and the modified example, a case is exemplified in which the robot 1 performs the task of holding an object W, but regardless of the task that the robot 1 performs, the control device 300 can perform the same control as in the embodiment and the modified example.

また、本開示の技術の各態様例は、以下のように挙げられる。本開示の一態様に係る制御装置は、第2ロボットアームを支持する少なくとも2つのリンクと、前記少なくとも2つのリンクを相互に接続する少なくとも1つの関節とを有する第1ロボットアームの制御装置であって、前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得し、前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作を推定する第1推定部と、前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得し、前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力を推定する第2推定部と、前記第1推定部によって推定される前記少なくとも1つの関節の動作と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する第3推定部と、前記第3推定部によって推定される力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を推定する第4推定部と、前記第4推定部によって推定される変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記変形量を補償するための前記第1動作指令の補正指令を生成し、前記補正指令を前記第1ロボットアームに指令する補正指令部とを含む。 Examples of each aspect of the technology of the present disclosure are given below. A control device according to one aspect of the present disclosure is a control device for a first robot arm having at least two links supporting a second robot arm and at least one joint connecting the at least two links to each other, comprising a first estimation unit that acquires a first operation command for causing the first robot arm to perform a first target operation, which is a target operation, and estimates the operation of the at least one joint when the first robot arm operates in accordance with the first operation command, and a second operation command for causing the second robot arm to perform a second target operation, which is a target operation, and estimates the operation of the at least one joint when the second robot arm operates in accordance with the second operation command, and a connection portion between the second robot arm and the link. a second estimation unit that estimates a force that the link receives from the second robot arm; a third estimation unit that estimates a force that the link receives based on the movement of the at least one joint estimated by the first estimation unit and the force estimated by the second estimation unit; a fourth estimation unit that estimates at least one of the deformation amount of the link and the deformation amount of the at least one joint based on the force estimated by the third estimation unit; and a correction command unit that generates a correction command for the first movement command to compensate for the deformation amount so as to move the connection part according to the first target movement based on the deformation amount estimated by the fourth estimation unit, and issues the correction command to the first robot arm.

上記態様によると、制御装置は、第1ロボットアームが第1目標動作を実行し且つ第2ロボットアームが第2目標動作を実行する場合に第1ロボットアームのリンク及び/又は関節に生じる変形量を推定する。上記変形量は、第1動作指令に従った接続部分の実際の動作と第1目標動作との間に差異を生じさせ得る。制御装置は、補正指令を第1ロボットアームに指令することによって、第1ロボットアームに、上記差異を低減した動作、つまり、変形量を補償した動作をさせることができる。よって、制御装置は、リンクの変形及び/又は関節の変形に起因して、接続部分が、意図しない目標位置からの位置ずれを生じること及び意図しない揺動を生じることを抑えることができる。従って、第2ロボットアームの基部である接続部分の位置の意図しない変動が抑えられる。 According to the above aspect, the control device estimates the amount of deformation occurring in the link and/or joint of the first robot arm when the first robot arm executes the first target motion and the second robot arm executes the second target motion. The amount of deformation may cause a difference between the actual motion of the connection part according to the first motion command and the first target motion. The control device can cause the first robot arm to perform a motion that reduces the difference, that is, a motion that compensates for the amount of deformation, by issuing a correction command to the first robot arm. Thus, the control device can prevent the connection part from being unintentionally displaced from the target position and from being unintentionally oscillated due to the deformation of the link and/or the deformation of the joint. Thus, unintentional fluctuations in the position of the connection part, which is the base of the second robot arm, are suppressed.

本開示の一態様に係る制御装置において、前記少なくとも2つのリンクは、基端リンクと、前記基端リンク及び前記第2ロボットアームと接続される第1リンクとを含み、前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節を含み、前記第1推定部は、前記第1関節の動作を推定し、前記第3推定部は、前記第1推定部によって推定される前記第1関節の動作と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定してもよい。 In a control device according to one aspect of the present disclosure, the at least two links include a base end link and a first link connected to the base end link and the second robot arm, the at least one joint includes a first joint connecting the first link to the base end link, the first estimator estimates the movement of the first joint, the third estimator estimates the force acting on the first link based on the movement of the first joint estimated by the first estimator and the force estimated by the second estimator, and the fourth estimator may estimate at least one of the deformation amount of the first link and the deformation amount of the first joint based on the force acting on the first link estimated by the third estimator.

上記態様によると、制御装置は、1つの関節を有する第1ロボットアームを制御し、第2ロボットアームの基部の位置の意図しない変動を抑えることができる。 According to the above aspect, the control device can control a first robot arm having one joint and suppress unintended fluctuations in the position of the base of the second robot arm.

本開示の一態様に係る制御装置において、前記少なくとも2つのリンクは、基端リンクと、前記基端リンクと接続される第1リンクと、前記第2ロボットアームと接続される第2リンクとを含み、前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節と、前記第2リンクを前記第1リンクに接続する第2関節とを含み、前記第1推定部は、前記第1関節及び前記第2関節の動作を推定し、前記第3推定部は、前記第1推定部によって推定される前記第1関節及び前記第2関節の動作と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、前記第3推定部は、前記第1推定部によって推定される前記第1関節及び前記第2関節の動作と、前記第2推定部によって推定される力とに基づき、前記第2リンクが受ける力を推定し、前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定し、前記第4推定部は、前記第3推定部によって推定される前記第2リンクが受ける力に基づき、前記第2リンクの変形量と前記第2関節の変形量とのうちの少なくとも一方を推定してもよい。 In a control device according to one aspect of the present disclosure, the at least two links include a base end link, a first link connected to the base end link, and a second link connected to the second robot arm, the at least one joint includes a first joint connecting the first link to the base end link and a second joint connecting the second link to the first link, the first estimator estimates the movements of the first joint and the second joint, and the third estimator estimates the movements of the first joint and the second joint based on the movements of the first joint and the second joint estimated by the first estimator and the force estimated by the second estimator. The third estimation unit estimates the force that the second link receives based on the movements of the first joint and the second joint estimated by the first estimation unit and the force estimated by the second estimation unit, the fourth estimation unit estimates at least one of the deformation amount of the first link and the deformation amount of the first joint based on the force that the first link receives estimated by the third estimation unit, and the fourth estimation unit may estimate at least one of the deformation amount of the second link and the deformation amount of the second joint based on the force that the second link receives estimated by the third estimation unit.

上記態様によると、制御装置は、2つの関節を有する第1ロボットアームを制御し、第2ロボットアームの基部の位置の意図しない変動を抑えることができる。制御装置は、第1リンクが受ける力及び第2リンクが受ける力それぞれの推定に、第1関節の推定動作及び第2関節の推定動作の全てを用いる。よって、各リンクが受ける力の推定精度が向上し、それにより、各リンク及び各関節の変形量の推定精度が向上する。 According to the above aspect, the control device controls a first robot arm having two joints, and can suppress unintended fluctuations in the position of the base of the second robot arm. The control device uses all of the estimated movements of the first joint and the second joint to estimate the forces acting on the first link and the second link, respectively. This improves the accuracy of estimating the forces acting on each link, thereby improving the accuracy of estimating the amount of deformation of each link and each joint.

本開示の一態様に係る制御装置は、前記第1推定部によって推定される前記少なくとも1つの関節の動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力を推定する慣性力推定部をさらに含み、前記第3推定部は、前記慣性力推定部によって推定される慣性力と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定してもよい。 The control device according to one aspect of the present disclosure may further include an inertial force estimation unit that estimates an inertial force generated in the link due to the movement of the at least one joint based on the movement of the at least one joint estimated by the first estimation unit, and the third estimation unit may estimate a force that the link receives based on the inertial force estimated by the inertial force estimation unit and the force estimated by the second estimation unit.

上記態様によると、制御装置は、関節の動作に起因して発生するリンクの慣性力を推定し、推定されたリンクの慣性力を用いて当該リンクが受ける力を推定する。よって、リンクが受ける力の推定精度が向上する。 According to the above aspect, the control device estimates the inertial force of the link generated due to the movement of the joint, and estimates the force acting on the link using the estimated inertial force of the link. This improves the accuracy of estimating the force acting on the link.

本開示の一態様に係る制御装置は、前記リンクの位置を推定する第1位置推定部と、前記接続部分の位置を推定する第2位置推定部と、前記リンクの慣性的特徴と前記第2ロボットアームの慣性的特徴とを推定する慣性要素推定部とをさらに含み、前記リンクの慣性的特徴は、前記リンクの慣性モーメント及び質量を要素として含み、前記第2ロボットアームの慣性的特徴は、前記第2ロボットアームの慣性モーメント及び質量を要素として含み、前記慣性力推定部は、前記リンクの慣性的特徴と、前記第2ロボットアームの慣性的特徴と、前記少なくとも1つの関節の加速度と、前記少なくとも1つの関節のジョイントスクリュとを用いて、前記リンクに発生する前記慣性力を推定し、前記ジョイントスクリュは、前記少なくとも1つの関節の向きを示す要素を含む、前記少なくとも1つの関節の状態を示す特徴であってもよい。 The control device according to one aspect of the present disclosure further includes a first position estimation unit that estimates the position of the link, a second position estimation unit that estimates the position of the connection part, and an inertial element estimation unit that estimates the inertial characteristics of the link and the inertial characteristics of the second robot arm, the inertial characteristics of the link include the inertial moment and mass of the link as elements, the inertial characteristics of the second robot arm include the inertial moment and mass of the second robot arm as elements, the inertial force estimation unit estimates the inertial force generated in the link using the inertial characteristics of the link and the inertial characteristics of the second robot arm, the acceleration of the at least one joint, and a joint screw of the at least one joint, and the joint screw may be a feature indicating the state of the at least one joint including an element indicating the orientation of the at least one joint.

上記態様によると、慣性的特徴は、慣性モーメントの要素と質量の要素とを含む。制御装置は、リンク及び第2ロボットアームの慣性的特徴を用いて、関節の動作に起因して発生するリンクに発生する慣性力を推定する。よって、当該慣性力の推定精度が向上する。 According to the above aspect, the inertial characteristics include a moment of inertia element and a mass element. The control device uses the inertial characteristics of the link and the second robot arm to estimate the inertial force generated in the link due to the movement of the joint. This improves the accuracy of estimating the inertial force.

本開示の一態様に係るロボットは、本開示の一態様に係る制御装置と、前記第1ロボットアームと、前記第2ロボットアームとを備える。上記態様によると、本開示の一態様に係る制御装置と同様の効果が得られる。ロボットは、第2ロボットアームの基部の位置の意図しない変動を抑えつつ、第1ロボットアーム及び第2ロボットアームに目標動作をさせることができる。 A robot according to an embodiment of the present disclosure includes a control device according to an embodiment of the present disclosure, the first robot arm, and the second robot arm. According to the above embodiment, the same effect as the control device according to an embodiment of the present disclosure can be obtained. The robot can cause the first robot arm and the second robot arm to perform a target motion while suppressing unintended fluctuations in the position of the base of the second robot arm.

本開示の一態様に係るロボットにおいて、前記制御装置は、前記第1動作指令及び前記第2動作指令を生成し、前記第1ロボットアーム及び前記第2ロボットアームの動作を制御するように構成されてもよい。上記態様によると、制御装置は、ロボットコントローラとして機能することができる。つまり、ロボットコントローラは、第2ロボットアームの基部の位置の意図しない変動を抑えつつ、第1ロボットアーム及び第2ロボットアームに目標動作をさせることができる。 In a robot according to one aspect of the present disclosure, the control device may be configured to generate the first operation command and the second operation command and control the operation of the first robot arm and the second robot arm. According to the above aspect, the control device can function as a robot controller. In other words, the robot controller can cause the first robot arm and the second robot arm to perform a target operation while suppressing unintended fluctuations in the position of the base of the second robot arm.

また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。 In addition, all of the ordinal numbers, quantities, and other numbers used above are provided as examples to specifically explain the technology of the present disclosure, and the present disclosure is not limited to the exemplified numbers. In addition, the connection relationships between the components are provided as examples to specifically explain the technology of the present disclosure, and the connection relationships that realize the functions of the present disclosure are not limited to these.

また、機能ブロック図におけるブロックの分割は一例であり、複数のブロックを一つのブロックとして実現する、一つのブロックを複数に分割する、及び/又は、一部の機能を他のブロックに移してもよい。また、類似する機能を有する複数のブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。 The division of blocks in the functional block diagram is just one example, and multiple blocks may be realized as one block, one block may be divided into multiple blocks, and/or some functions may be transferred to other blocks. Furthermore, the functions of multiple blocks having similar functions may be processed in parallel or in a time-shared manner by a single piece of hardware or software.

1,1A,1B ロボット
100,100A,100B 第1ロボットアーム
101,101A,101B 第1リンク
102,102A,102B 第2リンク
103 リンク(基端リンク)
103B 第3リンク
104B 第4リンク(基端リンク)
110 接続部分(界面)
200 第2ロボットアーム
300 制御装置
300A 情報処理装置
300B ロボットコントローラ
403 第1推定部
404 第2推定部
405 第3推定部
406 第4推定部
407 第1位置推定部
408 第2位置推定部
409 慣性要素推定部
410 慣性力推定部
411 補正指令部
JTA1,JTAA1,JTAB1 第1関節
JTA2,JTAB2 第2関節
JTAB3 第3関節
1, 1A, 1B Robot 100, 100A, 100B First robot arm 101, 101A, 101B First link 102, 102A, 102B Second link 103 Link (base end link)
103B third link 104B fourth link (base end link)
110 Connection part (interface)
200 Second robot arm 300 Control device 300A Information processing device 300B Robot controller 403 First estimation unit 404 Second estimation unit 405 Third estimation unit 406 Fourth estimation unit 407 First position estimation unit 408 Second position estimation unit 409 Inertial element estimation unit 410 Inertial force estimation unit 411 Correction command unit JTA1, JTAA1, JTAB1 First joint JTA2, JTAB2 Second joint JTAB3 Third joint

Claims (7)

第2ロボットアームを支持する少なくとも2つのリンクと、前記少なくとも2つのリンクを相互に接続する少なくとも1つの関節とを有する第1ロボットアームの制御装置であって、
前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得し、前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作を推定する第1推定部と、
前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得し、前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力を推定する第2推定部と、
前記第1推定部によって推定される前記少なくとも1つの関節の動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力を推定する慣性力推定部と、
前記慣性力推定部によって推定される慣性力と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する第3推定部と、
前記第3推定部によって推定される力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を推定する第4推定部と、
前記第4推定部によって推定される変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記変形量を補償するための前記第1動作指令の補正指令を生成し、前記補正指令を前記第1ロボットアームに指令する補正指令部とを含む
制御装置。
A control device for a first robot arm having at least two links supporting a second robot arm and at least one joint interconnecting the at least two links, comprising:
a first estimation unit that acquires a first movement command for causing the first robot arm to perform a first target movement that is a target movement, and estimates a movement of the at least one joint when the first robot arm moves in accordance with the first movement command;
a second estimation unit that acquires a second operation command for causing the second robot arm to perform a second target operation that is a target operation, and estimates a force that is applied from the second robot arm to a connection portion between the second robot arm and the link when the second robot arm operates in accordance with the second operation command;
an inertial force estimator that estimates an inertial force generated in the link due to movement of the at least one joint, based on the movement of the at least one joint estimated by the first estimator;
a third estimation unit that estimates a force acting on the link based on the inertial force estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
a fourth estimator that estimates at least one of a deformation amount of the link and a deformation amount of the at least one joint based on the force estimated by the third estimator;
a correction command unit that generates a correction command for the first movement command to compensate for the amount of deformation so as to move the connection portion in accordance with the first target movement, based on the amount of deformation estimated by the fourth estimator, and issues the correction command to the first robot arm.
前記少なくとも2つのリンクは、基端リンクと、前記基端リンク及び前記第2ロボットアームと接続される第1リンクとを含み、
前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節を含み、
前記第1推定部は、前記第1関節の動作を推定し、
前記慣性力推定部は、前記第1推定部によって推定される前記第1関節の動作に基づき、前記第1関節が動作することによって前記第1リンクに発生する慣性力を推定し、
前記第3推定部は、前記慣性力推定部によって推定される前記第1リンクに発生する慣性力と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定する
請求項1に記載の制御装置。
the at least two links include a base end link and a first link connected to the base end link and the second robot arm;
the at least one joint includes a first joint connecting the first link to the base link;
The first estimator estimates a motion of the first joint,
the inertial force estimator estimates, based on the movement of the first joint estimated by the first estimator, a force of inertia generated in the first link due to the movement of the first joint;
the third estimation unit estimates a force acting on the first link based on the inertial force acting on the first link estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
The control device according to claim 1 , wherein the fourth estimator estimates at least one of a deformation amount of the first link and a deformation amount of the first joint based on the force acting on the first link estimated by the third estimator.
前記少なくとも2つのリンクは、基端リンクと、前記基端リンクと接続される第1リンクと、前記第2ロボットアームと接続される第2リンクとを含み、
前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節と、前記第2リンクを前記第1リンクに接続する第2関節とを含み、
前記第1推定部は、前記第1関節及び前記第2関節の動作を推定し、
前記慣性力推定部は、前記第1推定部によって推定される前記第1関節及び前記第2関節の動作に基づき、前記第1関節及び前記第2関節が動作することによって前記第1リンク及び前記第2リンクに発生する慣性力を推定し、
前記第3推定部は、前記慣性力推定部によって推定される前記第1リンクに発生する慣性力と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、
前記第3推定部は、前記慣性力推定部によって推定される前記第2リンクに発生する慣性力と、前記第2推定部によって推定される力とに基づき、前記第2リンクが受ける力を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第2リンクが受ける力に基づき、前記第2リンクの変形量と前記第2関節の変形量とのうちの少なくとも一方を推定する
請求項1に記載の制御装置。
the at least two links include a base end link, a first link connected to the base end link, and a second link connected to the second robot arm;
the at least one joint includes a first joint connecting the first link to the base link and a second joint connecting the second link to the first link;
The first estimator estimates movements of the first joint and the second joint,
the inertial force estimator estimates, based on the movements of the first joint and the second joint estimated by the first estimator, inertial forces generated in the first link and the second link due to movements of the first joint and the second joint;
the third estimation unit estimates a force acting on the first link based on the inertial force acting on the first link estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
the third estimation unit estimates a force acting on the second link based on the inertial force occurring in the second link estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
the fourth estimator estimates at least one of a deformation amount of the first link and a deformation amount of the first joint based on the force acting on the first link estimated by the third estimator;
The control device according to claim 1 , wherein the fourth estimator estimates at least one of a deformation amount of the second link and a deformation amount of the second joint based on the force acting on the second link estimated by the third estimator.
前記リンクの位置を推定する第1位置推定部と、
前記接続部分の位置を推定する第2位置推定部と、
前記リンクの慣性的特徴と前記第2ロボットアームの慣性的特徴とを推定する慣性要素推定部とをさらに含み、
前記リンクの慣性的特徴は、前記リンクの慣性モーメント及び質量を要素として含み、
前記第2ロボットアームの慣性的特徴は、前記第2ロボットアームの慣性モーメント及び質量を要素として含み、
前記慣性力推定部は、前記リンクの慣性的特徴と、前記第2ロボットアームの慣性的特徴と、前記少なくとも1つの関節の加速度と、前記少なくとも1つの関節のジョイントスクリュとを用いて、前記リンクに発生する前記慣性力を推定し、
前記ジョイントスクリュは、前記少なくとも1つの関節の向きを示す要素を含む、前記少なくとも1つの関節の状態を示す特徴である
請求項1~3のいずれか一項に記載の制御装置。
a first position estimation unit that estimates a position of the link;
A second position estimation unit that estimates a position of the connection portion;
an inertial element estimator that estimates an inertial characteristic of the link and an inertial characteristic of the second robot arm,
The inertial characteristics of the link include a moment of inertia and a mass of the link;
The inertial characteristics of the second robot arm include a moment of inertia and a mass of the second robot arm as elements;
the inertial force estimator estimates the inertial force generated in the link by using an inertial characteristic of the link, an inertial characteristic of the second robot arm, an acceleration of the at least one joint, and a joint screw of the at least one joint;
A control device according to any one of claims 1 to 3, wherein the joint screw is a feature indicative of a state of the at least one joint, the feature including an element indicative of an orientation of the at least one joint.
請求項1~のいずれか一項に記載の制御装置と、
前記第1ロボットアームと、
前記第2ロボットアームとを備える
ロボット。
A control device according to any one of claims 1 to 4 ;
The first robot arm;
The robot comprises the second robot arm.
前記制御装置は、前記第1動作指令及び前記第2動作指令を生成し、前記第1ロボットアーム及び前記第2ロボットアームの動作を制御するように構成される
請求項に記載のロボット。
The robot of claim 5 , wherein the control device is configured to generate the first movement command and the second movement command to control the movement of the first robot arm and the second robot arm.
第2ロボットアームを支持する少なくとも2つのリンクと、前記少なくとも2つのリンクを相互に接続する少なくとも1つの関節とを有する第1ロボットアームの制御方法であって、1. A method for controlling a first robot arm having at least two links supporting a second robot arm and at least one joint interconnecting the at least two links, comprising:
前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得することと、Obtaining a first motion command for causing the first robot arm to perform a first target motion that is a target motion;
前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作である推定関節動作を推定することと、Estimating an estimated joint motion, which is a motion of the at least one joint when the first robot arm moves in accordance with the first motion command;
前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得することと、Obtaining a second movement command for causing the second robot arm to perform a second target movement that is a target movement;
前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力である推定接続部分力を推定することと、estimating an estimated connection part force, which is a force that a connection part between the second robot arm and the link receives from the second robot arm when the second robot arm operates in accordance with the second movement command;
前記推定関節動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力である推定慣性力を推定することと、estimating an estimated inertial force, which is an inertial force generated in the link due to the motion of the at least one joint, based on the estimated joint motion;
前記推定慣性力と、前記推定接続部分力とに基づき、前記リンクが受ける力である推定リンク力を推定することと、estimating an estimated link force, which is a force acting on the link, based on the estimated inertial force and the estimated connection portion force;
前記推定リンク力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を含む推定変形量を推定することと、estimating an estimated deformation amount including at least one of a deformation amount of the link and a deformation amount of the at least one joint based on the estimated link force;
前記推定変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記推定変形量を補償するための前記第1動作指令の補正指令を生成することと、generating a correction command for the first motion command to compensate for the estimated deformation amount based on the estimated deformation amount so as to move the connection portion in accordance with the first target motion;
前記補正指令を前記第1ロボットアームに指令することと、を含むand issuing the correction command to the first robot arm.
制御方法。Control methods.
JP2021024980A 2021-02-19 2021-02-19 Control device, robot and control method Active JP7604264B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021024980A JP7604264B2 (en) 2021-02-19 2021-02-19 Control device, robot and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021024980A JP7604264B2 (en) 2021-02-19 2021-02-19 Control device, robot and control method

Publications (2)

Publication Number Publication Date
JP2022127061A JP2022127061A (en) 2022-08-31
JP7604264B2 true JP7604264B2 (en) 2024-12-23

Family

ID=83060324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021024980A Active JP7604264B2 (en) 2021-02-19 2021-02-19 Control device, robot and control method

Country Status (1)

Country Link
JP (1) JP7604264B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102883932B1 (en) * 2023-08-22 2025-11-07 한국로봇융합연구원 Method and apparatus for physical properties of various objects using ft sensor

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242794A (en) 2004-02-27 2005-09-08 Toshiba Corp Robot control apparatus and robot control method
JP2017056544A (en) 2015-09-17 2017-03-23 株式会社デンソーウェーブ Robot control apparatus and robot control method
JP2017087375A (en) 2015-11-13 2017-05-25 株式会社安川電機 Robot system and robot control method
US20190009410A1 (en) 2016-01-11 2019-01-10 Kuka Deutschland Gmbh Determining An Orientation Of A Robot Relative To The Direction Of Gravity

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005242794A (en) 2004-02-27 2005-09-08 Toshiba Corp Robot control apparatus and robot control method
JP2017056544A (en) 2015-09-17 2017-03-23 株式会社デンソーウェーブ Robot control apparatus and robot control method
JP2017087375A (en) 2015-11-13 2017-05-25 株式会社安川電機 Robot system and robot control method
US20190009410A1 (en) 2016-01-11 2019-01-10 Kuka Deutschland Gmbh Determining An Orientation Of A Robot Relative To The Direction Of Gravity

Also Published As

Publication number Publication date
JP2022127061A (en) 2022-08-31

Similar Documents

Publication Publication Date Title
CN101362335B (en) Robot program adjusting system
EP3538328B1 (en) System and method for instructing a robot
JP3808321B2 (en) Robot controller
KR101498835B1 (en) Control method for seven-shaft multi-joint robot, control program, and robot control device
CN112703090B (en) Robot control device, robot control method and storage medium
KR102312368B1 (en) System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method
Fu et al. Kinematic accuracy research of a novel six-degree-of-freedom parallel robot with three legs
KR20130066689A (en) Control device and teaching method for seven-shaft multi-joint robot
WO2024216564A1 (en) Method for calibrating articulated robot, computer device and readable storage medium
JP2018030210A (en) Simulation device, control system, robot system, simulation method, program, and recording medium
JP7140508B2 (en) WORKING DEVICE USING PARALLEL LINK MECHANISM AND CONTROL METHOD THEREOF
Oh et al. Estimation and compensation of cutting force induced position error in robot machining system
US11613004B2 (en) Deflection amount estimating device, robot control device and method of estimating amount of deflection
JP7604264B2 (en) Control device, robot and control method
JP6896824B2 (en) Robot devices, robot systems, control methods for robot devices, manufacturing methods for articles using robot devices, information processing devices, information processing methods, control programs and recording media
JP2016221653A (en) Robot control device and robot system
JP2020075329A (en) Simulation device, control system, robot system, simulation method, program and recording medium
JP2021186929A (en) Control method for multi-axis robot
Pomares et al. Dynamic visual servo control of a 4-axis joint tool to track image trajectories during machining complex shapes
Bi Development and Control of a 5‐Axis Reconfigurable Machine Tool
CN118721213A (en) Robot admittance control method, device, equipment and storage medium
JP7790934B2 (en) Control method, robot system, article manufacturing method, control program, and recording medium
Glavonjic et al. Parallel structured milling machines with long X travel
US11712803B2 (en) Teaching method
Slavković et al. Compliance analysis of an articulated machining robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241004

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20241210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241211

R150 Certificate of patent or registration of utility model

Ref document number: 7604264

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150