Nothing Special   »   [go: up one dir, main page]

JP2022127061A - controller and robot - Google Patents

controller and robot Download PDF

Info

Publication number
JP2022127061A
JP2022127061A JP2021024980A JP2021024980A JP2022127061A JP 2022127061 A JP2022127061 A JP 2022127061A JP 2021024980 A JP2021024980 A JP 2021024980A JP 2021024980 A JP2021024980 A JP 2021024980A JP 2022127061 A JP2022127061 A JP 2022127061A
Authority
JP
Japan
Prior art keywords
link
joint
robot arm
estimated
force
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.)
Granted
Application number
JP2021024980A
Other languages
Japanese (ja)
Other versions
JP7604264B2 (en
Inventor
慎司 梶原
Shinji Kajiwara
雅隆 田邊
Masataka Tanabe
圭 渡邉
Kei Watanabe
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 Heavy Industries Ltd
Original Assignee
Kawasaki Heavy Industries Ltd
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 Heavy Industries Ltd filed Critical Kawasaki Heavy Industries Ltd
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)

Abstract

【課題】第1ロボットアームによって支持される第2ロボットアームの基部の位置の意図しない変動を抑制する制御装置等を提供する。【解決手段】制御装置は、第2ロボットアームを支持するリンクと、関節とを有する第1ロボットアームを制御する。制御装置は、前記第1ロボットアームに目標動作をさせる場合の前記関節の動作を推定する第1推定部と、前記第2ロボットアームに目標動作をさせる場合に前記リンクが前記第2ロボットアームから受ける力を推定する第2推定部と、推定される前記関節の動作と推定される上記力とに基づき前記リンクが受ける力を推定する第3推定部と、前記リンクが受ける力に基づき前記リンク及び前記関節の少なくとも一方の変形量を推定する第4推定部と、推定される変形量を補償する動作を前記第1ロボットアームに指令する補正指令部とを含む。【選択図】図1[Problem] To provide a control device and the like that suppresses unintended fluctuations in the position of a base of a second robot arm supported by a first robot arm. [Solution] A control device controls a first robot arm having a link that supports a second robot arm and a joint. The control device includes a first estimation unit that estimates the movement of the joint when the first robot arm is caused to perform a target movement, a second estimation unit that estimates a force that the link will receive from the second robot arm when the second robot arm is caused to perform a target movement, a third estimation unit that estimates the force that the link will receive based on the estimated movement of the joint and the estimated force, a fourth estimation unit that estimates the amount of deformation of at least one of the link and the joint based on the force that the link receives, and a correction command unit that commands the first robot arm to perform an operation to compensate for the estimated amount of deformation. [Selected Figure] Figure 1

Description

本開示は、制御装置及びロボットに関する。 The present disclosure relates to control devices and robots.

従来、移動装置に搭載されるロボットアームがある。例えば、特許文献1は、多関節型の工業用ロボットと、工業用ロボットを移動させる移動装置とを備える工業用ロボット装置を開示する。移動装置は、2つのリンクにより構成される水平2関節のリンク機構を有し、据付面に固定される。工業用ロボットは先端側のリンクの先端部に取り付けられる。 Conventionally, there is a robot arm mounted on a mobile device. For example, Patent Literature 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 composed of two links, and is fixed to the installation surface. An industrial robot is attached to the distal end of the distal link.

特開平1-281891号公報JP-A-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 changes, and the moment given to the link of the moving device by the industrial robot may change. For example, when an industrial robot grips a workpiece, the loads and moments that the industrial robot applies to the links of the moving device can fluctuate. Such load and moment variations can cause deformations, such as deflection, in the links and joints of the moving device. Deformation of the links and joints changes the position of the industrial robot, and this positional change causes the industrial robot to vibrate. This can reduce the accuracy of the industrial robot's work.

本開示は、第1ロボットアームによって支持される第2ロボットアームの基部の位置の意図しない変動を抑制する制御装置及びロボットを提供することを目的とする。 An object of the present disclosure is to provide a control device and a robot that suppress unintended variations 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 an aspect of the present disclosure is a control device for a first robot arm having at least two links that support a second robot arm and at least one joint that interconnects the at least two links. to acquire a first motion command for causing the first robot arm to perform a first target motion, which is a target motion, and to obtain a motion command for the at least one joint when the first robot arm moves according to the first motion command. A first estimating unit for estimating a motion, and a second motion command for causing the second robot arm to perform a second target motion that is a target motion, and the second robot arm operates according to the second motion command. a second estimator for estimating a force applied from the second robot arm to a connecting portion between the second robot arm and the link; and an operation of the at least one joint estimated by the first estimator. , a third estimating unit that estimates the force received by the link based on the force estimated by the second estimating unit; a deformation amount of the link based on the force estimated by the third estimating unit; a fourth estimator for estimating at least one of a deformation amount of at least one joint; and moving the connection portion according to the first target motion based on the deformation amount estimated by the fourth estimator. a correction command unit that generates a correction command for the first motion command for compensating for the deformation amount, and commands the correction command to the first robot arm.

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

実施の形態に係るロボットの構成の一例を示す側面図1 is a side view showing an example of a configuration of a robot according to an embodiment; FIG. 実施の形態に係るロボットの構成の一例をモデル化した側面図1 is a side view modeling 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; FIG. 実施の形態に係る制御装置の動作の一例を示すフローチャート3 is a flow chart showing an example of the operation of the control device according to the embodiment; 変形例1に係るロボットの構成をモデル化した側面図The side view which modeled the structure of the robot based on the modification 1. 変形例2に係るロボットの構成をモデル化した側面図The side view which modeled the structure of the robot based on the modification 2.

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

[ロボットの構成]
図1及び図2を参照しつつ、実施の形態に係るロボット1の構成を説明する。図1は、実施の形態に係るロボット1の構成の一例を示す側面図である。図2は、実施の形態に係るロボット1の構成の一例をモデル化した側面図である。
[Robot configuration]
A configuration of a robot 1 according to an embodiment will be described with reference to FIGS. 1 and 2. FIG. FIG. 1 is a side view showing an example of the configuration of the robot 1 according to the embodiment. FIG. 2 is a side view modeling an 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つのリンクとを有する。 A robot 1 according to an embodiment includes a first robot arm 100 , a second robot arm 200 and a control device 300 . A first robot arm 100 is fixed to a support surface S and supports a second robot arm 200 . The first robotic arm 100 has at least one joint and at least two links, and the second robotic 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つ以上であってもよい。 Although not limited to this, in the present embodiment, the first robot arm 100 includes two joints JTA1 and JTA2, three links 101-103, and drivers MA1 and MA2 for the joints JTA1 and JTA2. The second robot arm 200 includes six joints JTB1-JTB6, seven links 201-207, and drive devices MB1-MB6 for the joints JTB1-JTB6, respectively. The second robot arm 200 is a vertical articulated robot arm, but may be any type of robot arm. For example, the second robotic arm 200 may be a horizontal articulated, polar, cylindrical, rectangular, or other type of robotic arm. Also, the number of links of the second robot arm 200 is not limited to seven, and may be six or less or eight or more. It may be one 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 fixed to the support surface S. Although not limited to this, in the present embodiment, link 103 has a trapezoidal shape and functions as a base for links 101 and 102 . Link 102 is located at the tip of first robot arm 100 and link 101 is located between links 102 and 103 . Link 103 is an example of a proximal link.

関節JTA1は、1自由度の回転関節であり、柱状のリンク101の一端をリンク103に第1軸S1を中心に回動可能に接続する。関節JTA2は、1自由度の回転関節であり、柱状のリンク102の一端をリンク101の他端に第2軸S2を中心に回動可能に接続する。リンク102の他端には、第2ロボットアーム200が取り付けられる。よって、リンク101及び102は、関節JTA1及びJTA2によって動作可能である。 The joint JTA1 is a rotational joint with one degree of freedom, and connects one end of the columnar link 101 to the link 103 so as to be rotatable about the first axis S1. The joint JTA2 is a rotational joint with one degree of freedom, and connects one end of the columnar link 102 to the other end of the link 101 so as to be rotatable about the second axis S2. A second robot arm 200 is attached to the other end of the link 102 . Therefore, links 101 and 102 are movable 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の関節軸でもある。 Although not limited to this, in the present embodiment, the first axis S1 extends in a direction along the support surface S, for example, the horizontal direction, and the second axis S2 extends in a direction perpendicular to the support surface S, for example, the vertical direction. extends to 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. The directions of the first axis S1 and the second axis S2 may be any directions, 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に伝達する。本実施の形態では、電気モータはサーボモータである。 Drives MA1 and MA2 are configured to rotationally drive joints JTA1 and JTA2, respectively. Drives MA1 and MA2 each include an electric motor (not shown) as a drive source and a speed reducer (not shown). The speed reducers of the drives MA1 and MA2 respectively reduce the rotational speed of the rotational driving force of the respective electric motors and increase the rotational driving force for transmission to the joints JTA1 and JTA2. In this embodiment, the electric motor is a servomotor.

なお、本明細書及び特許請求の範囲において、「水平方向」及び「鉛直方向」はそれぞれ、水平な支持面S上にロボット1が配置される場合での「水平方向」及び「鉛直方向」を意味する。さらに、「上方向」は、同様の場合での支持面Sに垂直な上向きの方向、つまり、鉛直上方向を意味し、「下方向」は、同様の場合での支持面Sに垂直な下向きの方向、つまり、鉛直下方向を意味する。さらに、本明細書及び特許請求の範囲において、「垂直」、「鉛直」、「水平」及び「平行」はそれぞれ、完全に垂直、鉛直、水平又は平行である場合と、完全な垂直、鉛直、水平又は平行の近傍を含む実質的に垂直、鉛直、水平又は平行とみなすことができる場合とを含み得る。 In the present specification and claims, the terms "horizontal direction" and "vertical direction" respectively refer to the "horizontal direction" and the "vertical direction" when the robot 1 is placed on a horizontal support surface S. means. Furthermore, "upward" means an upward direction perpendicular to the support surface S in the same case, i.e. vertically upward, and "downward" means downward perpendicular to the support surface S in the same case. direction, that is, the vertically downward direction. Further, as used herein and in the claims, "vertical", "perpendicular", "horizontal" and "parallel" are respectively completely vertical, vertical, horizontal or parallel, and completely vertical, vertical, It may include cases that can be considered substantially vertical, vertical, horizontal or parallel, including near 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 robotic arm 200 , the link 207 is located at the base of the second robotic arm 200 and fixed to the top surface of the link 102 . Link 207 is located above first robot arm 100 . Interface 110 between link 207 and link 102 is an example of a connecting portion of robot arms 100 and 200 . Although not limited to this, the center point 110A of the interface 110 is the reference point of the robot arms 100 and 200 in this embodiment. Hereinafter, 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を把持できるように構成される。 Although not limited to this, in the present embodiment, link 207 has a trapezoidal shape and functions as a base for links 201-206. Link 206 is located at the distal end of second robot arm 200, and links 201-205 are arranged in this order from link 207 to link 206, between links 206 and 207. FIG. An end effector E capable of applying an action to the work object W is attached to the tip of the link 206 . In this embodiment, the end effector E is configured to be able to grip the object W, although not limited to this.

関節JTB1~JTB6はいずれも、1つの軸を中心に回転可能である1自由度の回転関節である。関節JTB1は、リンク201をリンク207に回動可能に接続する。関節JTB2は、リンク202をリンク201に回動可能に接続する。関節JTB3は、リンク203をリンク202に回動可能に接続する。関節JTB4は、リンク204をリンク203に回動可能に接続する。関節JTB5は、リンク205をリンク204に回動可能に接続する。関節JTB6は、リンク206をリンク205に回動可能に接続する。 All of the joints JTB1 to JTB6 are rotary joints with one degree of freedom that are rotatable about 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 drive devices MB1-MB6 are configured to rotationally drive the joints JTB1-JTB6, respectively. Each of the driving devices MB1 to MB6 includes an electric motor (not shown) as a drive source and a speed reducer (not shown). In this embodiment, the electric motor is a servomotor.

これに限定されないが、本実施の形態では、制御装置300は、ロボット1全体の動作を制御するように構成される。制御装置300は、情報処理装置300Aとロボットコントローラ300Bとを含む。ロボットコントローラ300Bは、ロボットアーム100及び200の動作を制御するように構成される。情報処理装置300Aは、ロボットアーム100及び200の動作制御に関連する演算処理を行うように構成される。 Although not limited to this, in the present embodiment, the control device 300 is configured to control the motion of the robot 1 as a whole. The control device 300 includes an information processing device 300A and a robot controller 300B. Robotic controller 300B is configured to control the motion of robotic arms 100 and 200 . The information processing device 300A is configured to perform arithmetic processing related to motion 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. Although the configuration of the information processing device 300A is not particularly limited, for example, the information processing device 300A may include electronic circuit boards, electronic control units, microcomputers, personal computers, workstations, smart devices such as smartphones and tablets, and other electronic devices. etc. The robot controller 300B may include electrical circuitry for controlling the power supplied to the robot arms 100 and 200, and the like.

[制御装置のハードウェア構成]
図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 control device]
A hardware configuration of the control device 300 according to the embodiment will be described with reference to FIG. 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 constituent elements. Each component of the information processing device 300A is interconnected by a bus 310A, but may be connected by any other wired or wireless communication. Robot controller 300B includes a processor 301B, memory 302B, input/output I/F 304B, and drive I/Fs 305B and 306B as components. Robot controller 300B may include storage. Each component of robot controller 300B is interconnected by bus 310B, but may be connected by any other wired or wireless communication. Not all of the components included in each of the information processing device 300A and the robot controller 300B are essential.

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

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

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

プロセッサ301A及び301Bはいずれも、RAM及びROMと一緒にコンピュータシステムを形成する。情報処理装置300Aのコンピュータシステムは、プロセッサ301AがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、情報処理装置300Aの機能を実現してもよい。ロボットコントローラ300Bのコンピュータシステムは、プロセッサ301BがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、ロボットコントローラ300Bの機能を実現してもよい。 Both processors 301A and 301B together with RAM and ROM form a computer system. The computer system of the information processing device 300A may realize the functions of the information processing device 300A by executing the program recorded in the ROM using the RAM as a work area by the processor 301A. The computer system of the robot controller 300B may realize the functions of the robot controller 300B by the processor 301B using the RAM as a work area and executing the program recorded in the 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 computer system, or may be realized by dedicated hardware circuits such as electronic circuits or integrated circuits. It may be implemented by a combination of hardware circuits. Each of the information processing device 300A and the robot controller 300B may be configured to execute each process by centralized control by a single device, or may be configured to execute each process by distributed control by cooperation of a plurality of devices. may be The information processing device 300A and the robot controller 300B may be configured to include at least part 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つの集積回路により実現されてもよい。 Although not limited to this, for example, the processors 301A and 301B 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., IC (Integrated Circuit) chip, LSI (Large Scale Integration), etc. Formed logic circuit or dedicated Each processing may be realized by a circuit. A plurality of processes may be implemented by one or more integrated circuits, or may be implemented by one 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 to enable input/output of information, commands, data, and the like therebetween. 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 to enable input/output of information, commands, data, and the like therebetween.

第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 to enable transmission and reception of signals and the like between them. The first drive circuit 120 is configured to control power supplied to the drives MA1 and MA2 of the first robot arm 100 according to command values included in signals 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 to enable transmission and reception of signals and the like between them. The second drive circuit 220 is configured to control power supplied to the drive devices MB1-MB6 of the second robot arm 200 according to command values included 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 drives MA1, MA2 and MB1-MB6. The robot controller 300B receives from the drive circuits 120 and 220, as feedback information, the detected value of the rotation sensor provided in each servomotor and the command value of the current from the drive circuits 120 and 220 to each servomotor. The robot controller 300</b>B uses the feedback information to determine command values for driving each servomotor, and transmits the command values to the drive circuits 120 and 220 .

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

[制御装置の機能的構成]
図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 Control Device]
A functional configuration of the control device 300 according to the embodiment will be described with reference to FIG. 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 motion commanding unit 401, a second motion commanding unit 402, a first estimating unit 403, a second estimating unit 404, a third estimating unit 405, a fourth estimating unit 406, First position estimator 407, second position estimator 408, inertial element estimator 409, inertial force estimator 410, correction command unit 411, and storage units 421-423 are included as functional components. The functions of the functional components other than the storage units 421-423 are implemented by the processor 301A or the like, and the functions of the storage units 421-423 are implemented by storage devices such as the memory 302A and/or the storage 303A. The functions of the storage units 421 to 423 may be implemented by separate storage devices, or at least two of the functions of the storage units 421 to 423 may be implemented by one storage device. Not all of the above functional building blocks are essential.

ロボットコントローラ300Bは、第1駆動指令部501と、第2駆動指令部502とを機能的構成要素として含む。駆動指令部501及び502の機能は、プロセッサ301B等によって実現される。上記の機能的構成要素の全てが必須ではない。 The robot controller 300B includes a first drive command section 501 and a second drive command section 502 as functional components. The functions of the drive command units 501 and 502 are implemented by the processor 301B or the like. Not all of the above functional building blocks 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, data, etc., and enable reading of the stored information, data, etc. FIG. For example, the first storage unit 421 stores control programs for the robot arms 100 and 200 . Although not limited to this, in the present 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 motion 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 operate the robot arms 100 and 200 in accordance with an operation command received from an operation device (not shown), that is, to manually operate the robot arms 100 and 200 .

例えば、第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 on the first robot arm 100 . Information on the first robot arm 100 includes information on the links 101 to 103 and the joints JTA1 and JTA2. The information on the links 101 to 103 may include information such as the mass, size, shape, center of gravity position, moment of inertia, rigidity, and joint connection position of each of the links 101 to 103 . The stiffness of the link may include bending stiffness and torsional stiffness of the link. The information on the joints JTA1 and JTA2 may include information such as the mass, size, shape, center of gravity position, moment of inertia, rigidity, position and direction of the central axis of rotation, and connection position with the link of each of the joints JTA1 and JTA2. The stiffness of the joint may include the stiffness of the members forming the joint, the stiffness of the rotating portion of the joint, the stiffness of the speed reducer of the joint, and the like.

リンク101~103の情報は、リンク101~103の上記情報が反映された仮想的なモデルであってもよく、関節JTA1及びJTA2の情報は、関節JTA1及びJTA2の上記情報が反映された仮想的なモデルであってもよい。例えば、仮想的なモデルは、3次元CAD(Computer-Aided Design)モデル等の3次元モデルであってもよい。 The information on the links 101 to 103 may be a virtual model reflecting the information on the links 101 to 103, and the information on the joints JTA1 and JTA2 is a virtual model reflecting the information on the joints JTA1 and JTA2. model. 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 storage unit 423 stores information on the second robot arm 200 . Information on the second robot arm 200 includes information on the links 201 to 207 and the joints JTB1 to JTB6. Further, the information of the second robot arm 200 can include information of the end effector E attached to the second robot arm 200, information of the object W such as a workpiece held by the end effector E, and the like. The information on the links 201 to 207 may include information such as the mass, size, shape, center of gravity position, moment of inertia, and joint connection position of each of the links 201 to 207 . The information on the joints JTB1 to JTB6 may include information such as the mass, size, shape, center of gravity position, moment of inertia, position and direction of the central axis of rotation, and connection position with the link of each of the joints JTB1 to JTB6. The information of the end effector E may include information such as its mass, dimensions, shape, center of gravity position, moment of inertia, connection position with the link 206, and the like. Information on the object W may include information such as its mass, size, shape, center of gravity position, and posture when it is held. The information of the links 201-207, the joints JTB1-JTB6, the end effector E, and the object W may be virtual models reflecting the above information. 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 motion command unit 401 causes the first robot arm 100 to perform a target motion according to first target motion data, which is target motion data of the first robot arm 100 stored in the first storage unit 421 . A command (hereinafter also referred to as a “first operation command”) is generated. The first target motion data is data for operating the first robot arm 100 according to the control program. For example, the first motion commanding unit 401 sets the target position and the target orientation of the connecting portion 110 for moving the connecting portion 110 according to the first target motion data of the first robot arm 100 stored in the second storage unit 422 . Compute using information. The target position and target orientation may be the three-dimensional position of the reference point 110A and the three-dimensional orientation of the interface of the connection portion 110. FIG.

さらに、第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動作指令を上記と同様に生成する。 Further, the first motion command unit 401 sets the target rotation direction and target rotation amount of the joints JTA1 and JTA2 for moving the connection portion 110 to the target position and target orientation, and the target rotation amount is stored in the second storage unit 422. The information on the arm 100 is used for calculation. That is, the first motion command unit 401 calculates the target rotational positions of the joints JTA1 and JTA2. The first motion command unit 401 may be configured to use the first target motion data and the information of the first robot arm 100 to calculate the target rotational positions of the joints JTA1 and JTA2. The first motion command unit 401 generates a first motion command including the target rotational positions of the joints JTA1 and JTA2. In the case of manual operation, the first motion command unit 401 issues a first motion command for causing the first robot arm 100 to execute a target motion in accordance with an operation command received from an operation device (not shown) in the same manner as described above. Generate.

第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 motion command unit 402 causes the second robot arm 200 to perform a target motion according to the second target motion data, which is the target motion data of the second robot arm 200 stored in the first storage unit 421. A command (hereinafter also referred to as a “second operation command”) is generated. The second target motion data is data for operating the second robot arm 200 according to the control program. For example, the second motion command unit 402 obtains the target position and target orientation of the link 206 for moving the link 206 according to the second target motion data, and the information of the second robot arm 200 stored in the third storage unit 423. Calculate using The target position and target orientation may be the three-dimensional position and three-dimensional orientation 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動作指令を上記と同様に生成する。 Further, the second motion command unit 402 sets 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 target orientation. 200 information is used for calculation. That is, the second motion command unit 402 calculates the target rotational positions of the joints JTB1 to JTB6. The second motion command unit 402 may be configured to use the second target motion data and the information of the second robot arm 200 to calculate target rotational positions of the joints JTB1 to JTB6. The second motion command unit 402 generates a second motion command including target rotational positions of the joints JTB1 to JTB6. In the case of manual operation, the second motion command unit 402 issues a second motion command for causing the second robot arm 200 to execute a target motion in accordance with an operation command received from an operation device (not shown) in the same manner as described above. Generate.

第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 the first motion command from the first motion command unit 401, and estimates 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 an estimated rotational position, which is an estimated value of the rotational positions of the joints JTA1 and JTA2, as motions of the joints JTA1 and JTA2. The estimated rotational positions of the joints JTA1 and JTA2 include estimated values of the direction and amount of rotation 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. Further, the first estimator 403 calculates an estimated rotational speed, which is an estimated rotational speed 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 estimating unit 404 acquires the second motion command from the second motion commanding unit 402, and when the second robot arm 200 moves according to the second motion command, the connection part 110 moves toward the second robot arm at the reference point 110A. Estimate the force received from 200. Although not limited to this, in the present embodiment, second estimation section 404 estimates the force using a reference coordinate system having reference point 110A as 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 having the origin O at the reference point 110A. Although not limited to this, in the present embodiment, the reference coordinate system includes, as shown in FIG. It is defined by a Z-axis extending from 110A in a direction perpendicular to the interface of the connecting portion 110 and perpendicular to the X-axis and the Y-axis. The Z-axis positive direction is the direction from the link 207 to the link 102 . Alternatively, for example, the reference coordinate system is defined by an X-axis and a Y-axis extending horizontally from the reference point 110A and orthogonal to each other, and a Z-axis extending vertically downward from the reference point 110A and orthogonal to the X-axis and the Y-axis. may be defined. The vertically downward direction may be the direction of gravity, and the horizontal direction may be the 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 force may include the load of the second robot arm 200 and the moment the second robot arm 200 develops at the connection portion 110 . For example, the second estimation unit 404 estimates the positions and orientations of the links 201 to 207 and the joints JTB1 to JTB6 when the second robot arm 200 operates according to the second motion command, and stores the estimation result and the third storage unit 423. The force may be estimated using stored information of the second robot arm 200 .

第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 robotic arm 200 may include the mass of the second robotic 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 the moment generated at the connecting portion 110 by the second robot arm 200 itself, the end effector E, and the object W. FIG. The second estimation unit 404 uses the information of the second robot arm 200 stored in the third storage unit 423 and the target rotational positions of the joints JTB1 to JTB6 included in the second motion command to determine the position of the second robot arm 200. Calculate loads and moments. A second estimator 404 represents the loads and moments of the second robot arm 200 using a reference coordinate system. Further, the second estimating unit 404 uses the information of the second robot arm 200 stored in the third storage unit 423 and the target rotational positions of the joints JTB1 to JTB6 included in the second motion command to determine the second robot arm 200 The moment of inertia of the entire 200 is calculated with reference to the reference coordinate system. The moment of inertia is the moment of inertia with reference to 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 estimating unit 405 calculates the link motion based on the motions of the joints JTA1 and JTA2 estimated by the first estimating unit 403 and the force that the connecting part 110 receives from the second robot arm 200 estimated by the second estimating unit 404 . Estimate the forces that 101-103 receive. Although not limited to this, in the present embodiment, even if the trapezoidal link 103 receives a force via the link 101 and the joint JTA1, it hardly deforms such as deflection and is immovable. Unit 405 estimates the forces experienced by links 101 and 102 .

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

第4推定部406は、第3推定部405によって推定されるリンク101及び102が受ける力に基づき、リンク101及び102の変形量と関節JTA1及びJTA2の変形量とのうちの少なくとも一方を推定する。本実施の形態では、第4推定部406は、リンク101及び102の変形量と、関節JTA1及びJTA2の変形量との両方を推定する。 A 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 received by 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 orientations 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 orientations of the links 101 and 102 and the joints JTA1 and JTA2, respectively, using the 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 The estimated positions and orientations of the links 101 and 102 and the joints JTA1 and JTA2 at the estimated rotational positions are calculated. The first position estimator 407 calculates the moment of inertia of the links 101 and 102 based on the reference coordinate system based on the estimated positions and orientations of the links 101 and 102 and the joints JTA1 and JTA2. The moment of inertia is the moment of inertia with reference 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の目標位置及び目標姿勢を取得し、当該目標位置及び目標姿勢を基準座標系に変換し推定位置及び推定姿勢としてもよい。 A second position estimator 408 estimates the position of the connecting portion 110 . Specifically, second position estimation section 408 estimates the three-dimensional position of reference point 110A of connection portion 110 and the three-dimensional orientation of the interface of connection portion 110 using the 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 An estimated position and an estimated orientation of the connection portion 110 at the estimated rotational position may be calculated. The second position estimator 408 calculates the estimated position and orientation of the connecting portion 110 using the estimated positions and orientations of the links 101 and 102 and the joints JTA1 and JTA2 estimated by the first position estimator 407. may The second position estimation unit 408 acquires the target position and target orientation of the joint 110 corresponding to the target rotational positions of the joints JTA1 and JTA2 from the first motion command unit 401, and converts the target position and target orientation into the reference coordinate system. , and may be used as the estimated position and the estimated orientation.

慣性要素推定部409は、リンク101~103の慣性的特徴と第2ロボットアーム200の慣性的特徴とを推定する。これに限定されないが、本実施の形態では、リンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、慣性要素推定部409は、リンク101及び102の慣性的特徴を推定する。リンク101及び102の慣性的特徴は、リンク101及び102の慣性モーメント及び質量を要素として含む。第2ロボットアーム200の慣性的特徴は、第2ロボットアーム200の慣性モーメント及び質量を要素として含む。 The inertial element estimator 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 the present embodiment, even if the link 103 receives a force via the link 101 and the joint JTA1, the link 103 hardly undergoes deformation such as deflection and is immobile. Estimate the inertial characteristics of links 101 and 102 . The inertial characteristics of links 101 and 102 include the moment of inertia and mass of links 101 and 102 as factors. The inertial characteristics of the second robot arm 200 include the moment of inertia and the mass of the second robot arm 200 as factors.

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

具体的には、慣性力推定部410は、リンク101及び102の慣性的特徴と、第2ロボットアーム200の慣性的特徴と、関節JTA1及びJTA2の加速度と、関節JTA1及びJTA2のジョイントスクリュとを用いて、リンク101及び102に発生する関節起因慣性力を推定する。関節JTA1及びJTA2のジョイントスクリュはそれぞれ、当該関節の向きを示す要素を含む当該関節の状態を示す特徴である。 Specifically, the inertial force estimation unit 410 calculates the inertial characteristics of the links 101 and 102, the inertial characteristics of the second robot arm 200, the acceleration of the joints JTA1 and JTA2, and the joint screws of the joints JTA1 and JTA2. is used to estimate the joint-induced inertial forces generated in the links 101 and 102. The joint screws of joints JTA1 and JTA2 are each a feature that indicates the state of that joint, including an element that indicates the orientation of that 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 amounts of the links 101 and 102 and/or the deformation amounts of the joints JTA1 and JTA2 estimated by the fourth estimator 406, the correction command unit 411 moves the connection portion 110 according to the first target motion. A correction command is generated for the first motion command to compensate for the amount. The correction command section 411 outputs the correction command to the first robot arm 100 , more specifically, to the first drive command section 501 . Although not limited to this, in the present embodiment, the correction command unit 411 corrects the first motion command to compensate for the deformation amount, and generates the corrected first motion command as the correction command. When the first operation command is not corrected, the correction command unit 411 outputs the uncorrected first operation command to the first drive command unit 501 as a correction command. Further, the correction command section 411 outputs a second motion command to the second robot arm 200 , more specifically, to the second drive command section 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 causing the drive devices MA1 and MA2 to drive the joints JTA1 and JTA2 to the target rotational positions of the joints JTA1 and JTA2 included in the correction command. Output. The drive commands include current command values for the servo motors of the drives MA1 and MA2. A first drive command unit 501 generates a drive command using feedback information of the servomotor.

第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 causing the drive devices MB1 to MB6 to drive the joints JTB1 to JTB6 to the target rotational positions of the joints JTB1 to JTB6 included in the second motion command. Output to MB6. The drive commands include current command values for the servo motors of the drive devices MB1 to MB6. A second drive command unit 502 generates a drive command using feedback information of the servomotor.

[制御装置の動作]
図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. FIG. 5 is a flow chart showing an example of the operation of the control device 300 according to the embodiment. First, in the information processing device 300A, the first motion command unit 401 generates a first motion command for moving the first robot arm 100 according to the first target motion data stored in the first storage unit 421 (step S101).

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

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

例えば、第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 estimator 407 calculates the estimated positions of the centers of gravity of the links 101 and 102 as the estimated positions of the links 101 and 102 based on the reference coordinate system. For example, the first position estimator 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. . Hereinafter, the position vector of the i-th link with reference to 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 proximal end to the distal end of the first robot arm 100 . Note that the first position estimator 407 may be configured to calculate 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 position of the center of gravity of the joints JTA1 and JTA2 and the estimated orientation of the reference axis as the estimated positions and orientations of the joints JTA1 and JTA2 based on the reference coordinate system. For example, the first position estimator 407 calculates an estimated position vector γ 1 о of the center of gravity of the first joint JTA 1 in the reference coordinate system and an estimated position vector γ 2 о of the center of gravity of the second joint JTA 2 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 expressed as "γ ". The joint number “j” increases from the proximal end to the distal end of the first robot arm 100 . Note that the first position estimation unit 407 may be configured to calculate estimated positions of other reference points set at the joints JTA1 and JTA2 based on 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 estimating unit 407 uses the estimated orientation vector d1? of the first joint JTA1 in the reference coordinate system and the estimated orientation vector d1? A direction vector d2? is calculated. In the following, the direction vector of the j-th joint with reference to the origin O of the reference coordinate system is represented as "d jo ". The direction vector djo is a vector indicating the direction of the reference axis for the movement of the j-th joint. For example, if the j-th joint is a rotational joint, the direction vector djo is the direction vector of the rotation center axis, which is the joint axis. When the j-th joint is a prismatic joint, the direction vector djo is the direction vector of the axis in the prismatic direction that 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 uses the estimated positions of the links 101 and 102, the estimated positions and estimated orientations of the joints JTA1 and JTA2, and the information of the first robot arm 100 stored in the second storage unit 422 to , compute the moments of inertia l10 and l20 of the links 101 and 102 with respect to the origin O of the reference coordinate system. In the following, the moment of inertia of the i-th link with reference to the origin O of the reference coordinate system is expressed 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 estimator 408 estimates the position and orientation of the connecting portion 110 when the first robot arm 100 operates according to the first motion command (step S105). For example, the first position estimation unit 407 stores the estimated positions and orientations of the links 101 and 102 and the joints JTA1 and JTA2 estimated by the first position estimation unit 407, and the first robot arm stored in the second storage unit 422. 100 may be used to compute an estimated position and attitude of the connecting portion 110 .

第2位置推定部408は、基準点110Aの推定位置と、接続部分110の界面の推定姿勢とを、ロボット座標系を基準に算出する。つまり、第2位置推定部408は、基準座標系の推定位置及び推定姿勢を、ロボット座標系を基準に算出する。ロボット座標系は、ロボット1を基準に定義される座標系である。これに限定されないが、本実施の形態では、図2に示すように、ロボット座標系の原点Оrは、支持面S上のリンク103の位置に設定される。Xr軸及びYr軸は、原点Оrから支持面Sに沿って延び、互いに直交する。Zr軸は、原点Оrから支持面Sに垂直に上方へ延び、Xr軸及びYr軸と直交する。 A second position estimator 408 calculates the estimated position of the reference point 110A and the estimated orientation of the interface of the connection portion 110 based on the robot coordinate system. In other words, the second position estimator 408 calculates the estimated position and the estimated orientation of the reference coordinate system based on the robot coordinate system. The robot coordinate system is a coordinate system defined with the robot 1 as a reference. Although not limited to this, in the present embodiment, the origin Or of the robot coordinate system is set at the position of the link 103 on the support surface S, as shown in FIG. The Xr-axis and the Yr-axis extend along the support surface S from the origin Or and are orthogonal to each other. The Zr-axis extends upward perpendicularly to the support surface S from the origin Or and is perpendicular 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 estimator 404 estimates the force that the connecting portion 110 receives from the second robot arm 200 when the second robot arm 200 operates according to the second motion command (step S106). The force includes the load of the second robot arm 200 and the moment generated by the second robot arm 200 at the connecting portion 110 . For example, the second estimator 404 calculates the estimated positions and orientations of the links 201 to 207 and the joints JTB1 to JTB6 based on the reference coordinate system based on the target rotational positions of the joints JTB1 to JTB6 included in the second motion command. Calculate. Further, the second estimation unit 404 stores the estimated positions and orientations of the links 201 to 207 and the joints JTB1 to JTB6, the estimated position and orientation of the connecting portion 110 estimated by the second position estimation unit 408, and the third memory Using the information of the second robot arm 200 stored in the unit 423, the moment generated by the second robot arm 200 at the connecting portion 110 and the load of the second robot arm 200 are calculated with reference to 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の重心位置及び質量等を用い得る。 Further, the second estimating unit 404 uses the estimated positions and orientations of the links 201 to 207 and the joints JTB1 to JTB6 and the information of the second robot arm 200 to estimate the center-of-gravity position of the second robot arm 200 as a whole. The position of the center of gravity and the estimated moment of inertia, which is the moment of inertia of the second robot arm 200 as a whole, are calculated. At this time, the second estimating unit 404 uses the center-of-gravity position and mass of the links 201-207, the center-of-gravity position and mass 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 can be used.

次いで、慣性要素推定部409は、第1ロボットアーム100のリンク101及び102それぞれの慣性的特徴と第2ロボットアーム200全体の慣性的特徴とを推定する(ステップS107)。慣性要素推定部409は、第2記憶部422に記憶される第1ロボットアーム100の情報及び第3記憶部423に記憶される第2ロボットアーム200の情報を用いて、基準座標系を基準とする各慣性的特徴を算出する。 Next, the inertial element estimator 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 estimating unit 409 uses 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 to determine the reference coordinate system. Calculate each inertial feature that

以下において、第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оは、慣性バイナとも呼ばれる。 Hereinafter, the inertial characteristic of the i-th link is represented as "L iO ", and the inertial characteristic of the second robot arm 200 as a whole is represented as "L aO ". Inertial features "L iO " and "L aO " are referenced to the origin O of the reference coordinate system. The inertial feature L is a 6×6 matrix representing the mass and moment of inertia of the i-th link. The inertial feature L is a 6×6 matrix representing the mass and moment of inertia of the second robot arm 200 as a whole. The inertial element estimator 409 calculates inertial features L i о and L a о using Equations 1 and 2 below, respectively. The inertial features L i о and L a о shown in Equations 1 and 2 are also called inertial biners .

Figure 2022127061000002
Figure 2022127061000002

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

式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 “ laO ” is a 3×3 matrix representing the moment of inertia of the second robot arm 200 as a whole. The element “γ gaO ” is a three-dimensional position vector of the center of gravity of the second robot arm 200 as a whole. [γ gaO ×] is the outer product of the position vectors γ gaO expressed by a skew-symmetric matrix.

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

具体的には、慣性力推定部410は、関節JTA1及びJTA2それぞれのジョイントスクリュを演算する。第j関節のジョイントスクリュを「Mjо」と表す。慣性力推定部410は、第1関節JTA1の推定ジョイントスクリュM1оと、第2関節JTA2の推定ジョイントスクリュM2оとを、基準座標系を基準として算出する。ジョイントスクリュMjоは、6次元のベクトルで表される。 Specifically, the inertial force estimator 410 calculates the joint screws of the joints JTA1 and JTA2. The joint screw of the j-th joint is represented as " Mjo ". The inertial force estimator 410 calculates the estimated joint screw M1' of the first joint JTA1 and the estimated joint screw M2' of the second joint JTA2 with reference to the reference coordinate system. The joint screw Mjo is represented by a 6-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 the joints JTA1 and JTA2 are rotary joints that are rotatable around one central axis of rotation. For example, the inertial force estimator 410 calculates the estimated joint screw Mjo of the j-th joint as shown in Equation 3 below. In Equation 3, γ ×d represents the outer product of γ and d . The element “γ jo ” is the estimated 3-dimensional position vector of the j-th joint, and the element “d jo ” is the estimated 3-dimensional direction vector of the j-th joint. The estimated direction vector djo of the j-th joint indicates the direction vector of the rotation center axis, which is the joint axis of the j-th joint.

Figure 2022127061000003
Figure 2022127061000003

上記の式3は、第j関節が回転関節である場合の第j関節のジョイントスクリュを示すが、第j関節が他の形式の関節であっても、第j関節のジョイントスクリュを算出することができる。例えば、第j関節が直動関節である場合、第j関節のジョイントスクリュは、下記の式4のように表され得る。第j関節がネジ関節である場合、第j関節のジョイントスクリュは、下記の式5のように表され得る。式4において、要素「djо」は、第j関節の関節軸である直動方向の軸の方向ベクトルを示す。式5において、要素「djо」は、第j関節の関節軸であるネジ回転の回転中心軸の方向ベクトルを示し、当該方向ベクトルは、ネジ回転による進退方向の軸の方向ベクトルでもある。ネジ関節は、ネジ関節に接続されているリンクが回転中心軸周りに回動すると、回転中心軸方向に当該リンクを進退させるように構成される。要素「h」は、ネジ回転のピッチを示し、例えば、1ラジアンの回転当たりのリンクの回転中心軸方向の進退量を示す。 Equation 3 above shows the joint screw of the j-th joint when the j-th joint is a rotary joint. can be done. For example, when the j-th joint is a prismatic joint, the joint screw of the j-th joint can be expressed as in Equation 4 below. When the j-th joint is a screw joint, the joint screw of the j-th joint can be expressed as Equation 5 below. In Equation 4, the element “d jo ” indicates the direction vector of the axis in the translational direction, which is the joint axis of the j-th joint. In Equation 5, the element “d jo ” 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 in the advancing and retreating direction of the screw rotation. The screw joint is configured such that when the link connected to the screw joint rotates around the rotation center axis, the link moves forward and backward in the direction of the rotation center axis. The element "h" indicates the pitch of screw rotation, for example, the amount of movement of the link in the direction of the center axis of rotation per rotation of 1 radian.

Figure 2022127061000004
Figure 2022127061000004

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

慣性力推定部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の慣性的特徴とを要素として含む。 Inertial force estimator 410 uses inertial features L 1 , L 2 , and La , joint screws M 1 , M 2 , and estimated accelerations θ 1 '' and θ 2 '' to calculate estimated acceleration θ 1 '' and θ 2 '' to the i-th link are calculated based on the reference coordinate system. The joint-induced inertial force F ijо represents the inertial force generated in the i-th link by the estimated acceleration θ j of the j-th joint with respect to the origin O of the reference coordinate system. The joint-induced inertial force F ijо includes three translational components and three rotational components, and is represented by a six-dimensional vector. The inertia force estimator 410 converts the joint-induced inertia forces F 11 о , F 12 о , F 21 о , and F 22 о generated in the links 101 and 102 by the estimated accelerations θ 1 '' and θ 2 '' into the following equations 6 to 9. Calculate as shown. The joint-induced inertial force F ijо includes, as elements, the inertial characteristics of the link that moves due to the movement of the j-th joint and the inertial characteristics of the second robot arm 200 .

Figure 2022127061000005
Figure 2022127061000005

次いで、第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 estimating unit 405 estimates the force that the links 101 and 102 receive based on the joint-induced inertial force estimated by the inertial force estimating unit 410 and the force estimated by the second estimating unit 404 (step S109). The third estimating unit 405 uses the estimated inertial force FaO of the second robot arm 200 as the force estimated by the second estimating unit 404 . The estimated inertial force FaO may be an inertial force applied to the origin O by the second robot arm 200 with the origin O of the reference coordinate system as a reference. Although not limited to this, in the present embodiment, the load and moment of the second robot arm 200 estimated by the second estimator 404 are used as the estimated inertial force FaO . The estimated inertial force F includes load components in three directions and moment components in three directions, and is represented by a six-dimensional vector.

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

Figure 2022127061000006
Figure 2022127061000006

次いで、第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 received by 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 estimation unit 406 uses the stiffness kg1 and kg2 of the joints JTA1 and JTA2 and the estimated inertial forces F1о and F2о included in the information about the first robot arm 100 stored in the second storage unit 422. to calculate the estimated deformation amounts of the joints JTA1 and JTA2. In this case, the fourth estimator 406 uses the estimated inertial forces F 1 and F 2 and the joint screws M 1 and M 2 to calculate the estimated torques τ 1 and τ 2 acting on the joints JTA1 and JTA2, respectively, as follows: It is calculated as shown in Equations 12 and 13 below. Hereinafter, 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 3 translational and 3 rotational components and is represented by a 6-dimensional vector. The stiffness kgj includes the spring constant of the speed reducer, which is the stiffness of the speed reducer of the j-th joint. The estimated torque τ j is a scalar.

Figure 2022127061000007
Figure 2022127061000007

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

Figure 2022127061000008
Figure 2022127061000008

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

Figure 2022127061000009
Figure 2022127061000009

また、第4推定部406は、第2記憶部422に記憶される第1ロボットアーム100の情報に含まれるリンク101及び102のコンプライアンスCI1о及びCI2оと、推定慣性力F1о及びF2оとを用いて、リンク101及び102の推定変形量を演算する。以下において、第iリンクのコンプライアンスを「CIiо」と表す。コンプライアンスCIiоは、基準座標系の原点Оを基準とする第iリンクの剛性を示し、6×6行列で表される。 Further, the fourth estimating unit 406 calculates the compliances CI1 ' and CI2 ' of the links 101 and 102 included in the information about the first robot arm 100 stored in the second storage unit 422, and the estimated inertia forces F1 ' and F2 ' . is used to compute the estimated deformation amounts of the links 101 and 102 . In the following, the compliance of the i-th link is denoted as "C Ii ". The compliance C Iiо indicates the stiffness of the i-th link with reference to the origin O of the reference coordinate system, and is represented by a 6×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 inertia forces F1 and F2 and the compliances C I1 and C I2 to calculate the estimated deformation amounts Δ1 and Δ2 of the links 101 and 102, respectively, using the following equations 17 and 2 Calculate as shown in 18. In the following, the estimated deformation amount of the i-th link is expressed as "Δ ". The estimated deformation amount Δ includes three translational direction components and three rotational direction components, and is represented by a six-dimensional vector with reference to the reference coordinate system.

Figure 2022127061000010
Figure 2022127061000010

さらに、第4推定部406は、第iリンクの推定変形量Δiоと第j関節のジョイントスクリュMjоとを用いて、第iリンクの推定変形量Δiоを第j関節の推定変形量に変換してもよい。推定変形量Δiоに含まれる3次元の並進方向の成分を含むベクトルを、ベクトルδtiоとし、ジョイントスクリュMjоに含まれる3次元の並進方向の成分を含むベクトルを、ベクトルυjоとする。第iリンクの推定変形量Δiоは、下記の式19に示すように、第j関節の推定変形量ΔθLに変換することができる。推定変形量ΔθLは、リンクの変形に対する補償量とすることができる。 Further, the fourth estimation unit 406 uses the estimated deformation amount Δiо of the i-th link and the joint screw Mjo of the j-th joint to convert the estimated deformation amount ∆iо of the i-th link into the estimated deformation amount of the j-th joint. may be converted. Let the vector δ ti be the vector containing the three-dimensional translational component contained in the estimated deformation amount Δ i , and let the vector ν jо be the vector containing the three-dimensional translational component contained in the joint screw Mjo . The estimated deformation amount Δ i о of the i-th link can be converted into the estimated deformation amount ΔθL j of the j-th joint as shown in Equation 19 below. The estimated deformation amount ΔθL j can be a compensation amount for link deformation.

Figure 2022127061000011
Figure 2022127061000011

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

例えば、補正指令部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 motion command by adding the estimated deformation amount Δθ j of the j-th joint to the target rotational position of the j-th joint included in the first motion command. The correction command unit 411 may correct the first motion command by adding the estimated deformation amount ΔθL j of the j-th joint to the target rotational position of the j-th joint included in the first motion command. This compensates for the amount of deformation of both the links and the joints. In the present embodiment, since the j-th joint is a rotational joint having one degree of freedom, correction command section 411 sets one of the estimated deformation amount Δθ j and the estimated deformation amount ΔθL j to the j-th joint. It is added to the desired rotational position of joint j, but both may be added to the desired rotational position of joint j. If 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 section 501 generates a drive command according to the correction command and outputs it to the drive devices MA1 and MA2 of the first robot arm 100 . The second drive command section 502 generates a drive command according to the second motion command and outputs it to the drive devices MB1 to MB6 of the second robot arm 200. FIG. The drive command units 501 and 502 cooperate with each other to output the respective drive commands so as to synchronize the output timings of the respective drive commands. As a result, the robot arms 100 and 200 simultaneously execute their respective target motions, but due to the motions of the two robot arms 100 and 200, the position and orientation of the connecting portion 110 fluctuate from the target position and target posture. can be suppressed. Therefore, the second robot arm 200 can accurately perform the target motion on the object W to which the action is applied.

(変形例1)
本変形例は、第1ロボットアーム100Aが1つの関節のみを備える点で、実施の形態と異なる。以下、本変形例について、実施の形態と異なる点を中心に説明し、実施の形態と同様の点の説明を適宜省略する。
(Modification 1)
This modification differs from the embodiment in that the first robot arm 100A has only one joint. In the following, this modified example will be described with a focus on the points that are different from the embodiment, and the description of the points that are the same 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 modeling the configuration of the robot 1A according to Modification 1. As shown in FIG. As shown in FIG. 6, the robot 1A includes a second robot arm 200 and a first robot arm 100A similar to those of the embodiment. 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 to this, the first link 101A of this modification has the same configuration as the second link 102 of the embodiment, and the second link 102A of this modification has the third link 103 of the embodiment. has the same configuration as The first joint JTAA1 of this modification has the same configuration as 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 in the embodiment, but performs calculations using a different arithmetic expression from the embodiment in the following points.

慣性力推定部410は、実施の形態の式6~式9の代わりに下記の式20を用いて、第1関節JTAA1の推定加速度θ ’’によって第1リンク101Aに発生する関節起因慣性力F11оを演算する。 Inertia force estimator 410 uses Equation 20 below instead of Equations 6 to 9 of the embodiment to calculate the joint-induced inertia force generated in first link 101A by estimated acceleration θ 1 of first joint JTAA1. Compute F 11о .

Figure 2022127061000012
Figure 2022127061000012

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

Figure 2022127061000013
Figure 2022127061000013

第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 estimation unit 406 uses Equation 12 to calculate the estimated torque τ1 of the first joint JTAA1. Further, the fourth estimation unit 406 uses Equation 15 to calculate the estimated deformation amount Δθ1 of the first joint JTAA1. The fourth estimator 406 uses Equation 17 to calculate the estimated deformation amount Δ of the first link 101A. The fourth estimator 406 converts the estimated deformation amount Δ1о of the first link 101A into the estimated deformation amount ΔθL1 of the first joint JTAA1 using Equation (19).

(変形例2)
本変形例は、第1ロボットアーム100Bが3つの関節を備える点で、実施の形態と異なる。以下、本変形例について、実施の形態及び変形例1と異なる点を中心に説明し、実施の形態及び変形例1と同様の点の説明を適宜省略する。
(Modification 2)
This modification differs from the embodiment in that the first robot arm 100B has three joints. In the following, this modification will be described with a focus on the points that are different from the embodiment and modification 1, and the description of the points that are the same as those of 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と同様の構成を有する。 FIG. 7 is a side view modeling the configuration of the robot 1B according to Modification 2. As shown in FIG. As shown in FIG. 7, the robot 1B includes a second robot arm 200 and a first robot arm 100B similar to those of the embodiment. The first robot arm 100B comprises links 101B, 102B, 103B and 104B and joints JTAB1, JTAB2 and JTAB3. Although not limited to this, the links 101B and 102B of this modification have the same configurations as the links 101 and 102 of the embodiment, respectively, and the fourth link 104B of this modification is the third link of the embodiment. It has the same configuration as 103 . The joints JTAB1 and JTAB2 of this modified example have the same configurations as the 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. A second robot arm 200 is attached to the other end of the third link 103B of this modified example, similarly to the second link 102 of the embodiment. The third joint JTAB3 is rotatable about 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 directions, and may be different or the same. The robot 1B 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 in the embodiment, but performs calculations using a different arithmetic expression from the embodiment in the following points.

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

慣性力推定部410は、式3を用いて、関節JTAB1、JTAB2及びJTAB3それぞれのジョイントスクリュM1о、M2о及びM3оを演算する。 The inertial force estimator 410 uses Equation 3 to calculate the joint screws M 1 ', M 2 ' and M 3 ' 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оとを用いる。 Inertial force estimating section 410 uses Equations 22 to 30 below instead of Equations 6 to 9 of the embodiment to calculate estimated accelerations θ 1 , θ 12 and Joint-induced inertial forces F11o , F12o , F13o , F21o , F22o , F23o , F31o , F32o and F33o generated in the links 101B, 102B and 103B by θ3 '' are calculated. In this calculation, the inertial force estimation unit 410 calculates the estimated accelerations θ 1 , θ 12 and θ 3 of the joints JTAB1, JTAB2 and JTAB3, respectively, and the inertial feature L 1 о of each of the links 101B, 102B and 103B. , L2o and L3o , the inertial feature L ao of the second robot arm 200, and the joint screws M1o, M2o and M3o of the joints JTAB1 , JTAB2 and JTAB3 , respectively.

Figure 2022127061000014
Figure 2022127061000014

第3推定部405は、実施の形態の式10及び式11の代わりに下記の式31~式33を用いて、リンク101B、102B及び103Bそれぞれに発生する推定慣性力F1о、F2о及びF3оを演算する。 Third estimating section 405 calculates the estimated inertia forces F 1 о , F 2 о , and F Calculate 3о .

Figure 2022127061000015
Figure 2022127061000015

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

Figure 2022127061000016
Figure 2022127061000016

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

Figure 2022127061000017
Figure 2022127061000017

第4推定部406は、実施の形態の式17及び式18の代わりに下記の式40~式42を用いて、リンク101B、102B及び103Bそれぞれの推定変形量Δ1о、Δ2о及びΔ3оを演算する。この演算において、第4推定部406は、リンク101B、102B及び103BそれぞれのコンプライアンスCI1о、CI2о及びCI3оを用いる。 The fourth estimating unit 406 uses the following equations 40 to 42 instead of the equations 17 and 18 of the embodiment to calculate the estimated deformation amounts Δ 1 , Δ 2 , and Δ 3 , respectively, of the links 101B, 102B, and 103B. Calculate. 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 2022127061000018
Figure 2022127061000018

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

(その他の実施の形態)
以上、本開示の実施の形態及び変形例について説明したが、本開示は、上記実施の形態及び変形例に限定されない。すなわち、本開示の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態及び変形例に施したもの、及び、異なる実施の形態及び変形例における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
(Other embodiments)
Although the embodiments and modifications of the present disclosure have been described above, the present disclosure is not limited to the above embodiments and modifications. That is, various modifications and improvements are possible within the scope of the present disclosure. For example, embodiments and modified examples with various modifications, and forms constructed by combining components of 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 modified examples, the number of joints of the first robot arm is 1, 2 or 3, but the number of joints of the first robot arm may be 4 or more. . Also in this case, the control device 300 can perform the same control as in the embodiment and the modification.

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

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

また、本開示の技術の各態様例は、以下のように挙げられる。本開示の一態様に係る制御装置は、第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ロボットアームに指令する補正指令部とを含む。 In addition, examples of aspects of the technology of the present disclosure are listed as follows. A control device according to an aspect of the present disclosure is a control device for a first robot arm having at least two links that support a second robot arm and at least one joint that interconnects the at least two links. to acquire a first motion command for causing the first robot arm to perform a first target motion, which is a target motion, and to obtain a motion command for the at least one joint when the first robot arm moves according to the first motion command. A first estimating unit for estimating a motion, and a second motion command for causing the second robot arm to perform a second target motion that is a target motion, and the second robot arm operates according to the second motion command. a second estimator for estimating a force applied from the second robot arm to a connecting portion between the second robot arm and the link; and an operation of the at least one joint estimated by the first estimator. , a third estimating unit that estimates the force received by the link based on the force estimated by the second estimating unit; a deformation amount of the link based on the force estimated by the third estimating unit; a fourth estimator for estimating at least one of a deformation amount of at least one joint; and moving the connection portion according to the first target motion based on the deformation amount estimated by the fourth estimator. a correction command unit that generates a correction command for the first motion command for compensating for the deformation amount, and commands 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 controls the amount of deformation that occurs in the links and/or joints of the first robot arm when the first robot arm performs the first target motion and the second robot arm performs the second target motion. to estimate The amount of deformation may cause a difference between the actual motion of the connecting portion according to the first motion command and the first target motion. By issuing a correction command to the first robot arm, the control device can cause the first robot arm to perform an operation in which the difference is reduced, that is, an operation in which the amount of deformation is compensated. Therefore, the control device can suppress unintended displacement of the connecting portion from the target position and unintended rocking due to deformation of the link and/or deformation of the joint. Therefore, unintended variation in the position of the connecting portion, which is the base of the second robot arm, is suppressed.

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

上記態様によると、制御装置は、1つの関節を有する第1ロボットアームを制御し、第2ロボットアームの基部の位置の意図しない変動を抑えることができる。 According to the above aspect, the control device can control the first robot arm having one joint, and suppress unintended changes 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 the 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. wherein the at least one joint includes a first joint that connects the first link to the base end link and a second joint that connects the second link to the first link; and the first estimator estimates the motions of the first joint and the second joint, and the third estimation unit estimates the motions of the first joint and the second joint estimated by the first estimation unit, and the second estimation the third estimating unit estimates the force received by the first link based on the force estimated by the first estimating unit, and the motion of the first joint and the second joint estimated by the first estimating unit; and the force estimated by the second estimating section, and the fourth estimating section estimates the force received by the first link based on the force estimated by the third estimating section. , at least one of the deformation amount of the first link and the deformation amount of the first joint is estimated, and the fourth estimation unit estimates the force received by the second link estimated by the third estimation unit. Based on this, at least one of the deformation amount of the second link and the deformation amount of the second joint may be estimated.

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

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

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

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

上記態様によると、慣性的特徴は、慣性モーメントの要素と質量の要素とを含む。制御装置は、リンク及び第2ロボットアームの慣性的特徴を用いて、関節の動作に起因して発生するリンクに発生する慣性力を推定する。よって、当該慣性力の推定精度が向上する。 According to the above aspect, the inertial characteristics include a moment of inertia component and a mass component. 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 motion of the joint. Therefore, the estimation accuracy of the inertial force is improved.

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

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

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

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

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 Robots 100, 100A, 100B First robot arms 101, 101A, 101B First links 102, 102A, 102B Second links 103 Links (proximal links)
103B Third link 104B Fourth link (proximal 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 Inertia element Estimation unit 410 Inertia force estimation unit 411 Correction instruction 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つの関節の動作と、前記第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,
acquiring a first motion command for causing the first robot arm to perform a first target motion, which is a target motion, and determining motion of the at least one joint when the first robot arm moves according to the first motion command; a first estimation unit that estimates;
A second motion command for causing the second robot arm to perform a second target motion, which is a target motion, is acquired, and when the second robot arm moves according to the second motion command, the second robot arm and the a second estimator for estimating a force applied to the connection portion with the link from the second robot arm;
a third estimating unit that estimates the force applied to the link based on the motion of the at least one joint estimated by the first estimating unit and the force estimated by the second estimating 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;
based on the amount of deformation estimated by the fourth estimator, generating a correction command for the first motion command for compensating for the amount of deformation so as to move the connecting portion according to the first target motion; a correction command unit that commands a command to the first robot arm.
前記少なくとも2つのリンクは、基端リンクと、前記基端リンク及び前記第2ロボットアームと接続される第1リンクとを含み、
前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節を含み、
前記第1推定部は、前記第1関節の動作を推定し、
前記第3推定部は、前記第1推定部によって推定される前記第1関節の動作と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定する
請求項1に記載の制御装置。
the at least two links include a proximal link and a first link connected to the proximal link and the second robot arm;
the at least one joint includes a first joint connecting the first link to the proximal link;
The first estimation unit estimates the motion of the first joint,
the third estimating unit estimates the force applied to the first link based on the motion of the first joint estimated by the first estimating unit and the force estimated by the second estimating unit;
The fourth estimation unit estimates at least one of a deformation amount of the first link and a deformation amount of the first joint based on the force received by the first link estimated by the third estimation unit. A control device according to claim 1 .
前記少なくとも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関節の変形量とのうちの少なくとも一方を推定する
請求項1に記載の制御装置。
the at least two links include a proximal link, a first link connected to the proximal 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 proximal link and a second joint connecting the second link to the first link;
The first estimation unit estimates motions of the first joint and the second joint,
The third estimating unit is configured to generate a force that the first link receives based on the motions of the first joint and the second joint estimated by the first estimating unit and the force estimated by the second estimating unit. , and
The third estimating unit is configured to generate a force that the second link receives based on the motions of the first joint and the second joint estimated by the first estimating unit and the force estimated by the second estimating unit. , and
The fourth estimation unit estimates at least one of a deformation amount of the first link and a deformation amount of the first joint based on the force received by the first link estimated by the third estimation unit. ,
The fourth estimation unit estimates at least one of a deformation amount of the second link and a deformation amount of the second joint based on the force received by the second link estimated by the third estimation unit. A control device according to claim 1 .
前記第1推定部によって推定される前記少なくとも1つの関節の動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力を推定する慣性力推定部をさらに含み、
前記第3推定部は、前記慣性力推定部によって推定される慣性力と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する
請求項1~3のいずれか一項に記載の制御装置。
further comprising an inertial force estimator estimating an inertial force generated in the link due to the motion of the at least one joint based on the motion of the at least one joint estimated by the first estimator;
4. The third estimator estimates the force applied to the link based on the force of inertia estimated by the force-of-inertia estimator and the force estimated by the second estimator. 1. The control device according to claim 1.
前記リンクの位置を推定する第1位置推定部と、
前記接続部分の位置を推定する第2位置推定部と、
前記リンクの慣性的特徴と前記第2ロボットアームの慣性的特徴とを推定する慣性要素推定部とをさらに含み、
前記リンクの慣性的特徴は、前記リンクの慣性モーメント及び質量を要素として含み、
前記第2ロボットアームの慣性的特徴は、前記第2ロボットアームの慣性モーメント及び質量を要素として含み、
前記慣性力推定部は、前記リンクの慣性的特徴と、前記第2ロボットアームの慣性的特徴と、前記少なくとも1つの関節の加速度と、前記少なくとも1つの関節のジョイントスクリュとを用いて、前記リンクに発生する前記慣性力を推定し、
前記ジョイントスクリュは、前記少なくとも1つの関節の向きを示す要素を含む、前記少なくとも1つの関節の状態を示す特徴である
請求項4に記載の制御装置。
a first position estimator that estimates the position of the link;
a second position estimator for estimating the position of the connecting portion;
an inertial element estimating 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 moment of inertia and mass of the link as factors;
the inertial characteristics of the second robot arm include the moment of inertia and the mass of the second robot arm as elements;
The inertial force estimator uses the inertial characteristics of the link, the inertial characteristics of the second robot arm, the acceleration of the at least one joint, and the joint screw of the at least one joint to determine the link estimating the inertial force occurring at
5. The control device of claim 4, wherein the joint screw includes a feature indicating the state of the at least one joint including an element indicating the orientation of the at least one joint.
請求項1~5のいずれか一項に記載の制御装置と、
前記第1ロボットアームと、
前記第2ロボットアームとを備える
ロボット。
A control device according to any one of claims 1 to 5;
the first robot arm;
A robot comprising the second robot arm.
前記制御装置は、前記第1動作指令及び前記第2動作指令を生成し、前記第1ロボットアーム及び前記第2ロボットアームの動作を制御するように構成される
請求項6に記載のロボット。
7. The robot of claim 6, wherein the controller is configured to generate the first motion command and the second motion command and to control motion of the first robot arm and the second robot arm.
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 true JP2022127061A (en) 2022-08-31
JP7604264B2 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)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3883544B2 (en) 2004-02-27 2007-02-21 株式会社東芝 Robot control apparatus and robot control method
JP6834125B2 (en) 2015-09-17 2021-02-24 株式会社デンソーウェーブ Robot control device, robot control method
JP6565622B2 (en) 2015-11-13 2019-08-28 株式会社安川電機 Robot system and robot control method
DE102016000187B3 (en) 2016-01-11 2017-01-26 Kuka Roboter Gmbh Determining an orientation of a robot relative to a gravitational direction

Also Published As

Publication number Publication date
JP7604264B2 (en) 2024-12-23

Similar Documents

Publication Publication Date Title
EP3538328B1 (en) System and method for instructing a robot
CN103302667B (en) Robot control method, robot controller and robot control system
CN101362335B (en) Robot program adjusting system
KR102312368B1 (en) System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method
JPH079606B2 (en) Robot controller
KR20130066689A (en) Control device and teaching method for seven-shaft multi-joint robot
Milutinovic et al. Cartesian compliance identification and analysis of an articulated machining robot
JP2013166224A (en) Robot control apparatus, robot, and program thereof
CN113858189A (en) Robot control method and robot system
CN108145710A (en) control device, robot and robot system
US11613004B2 (en) Deflection amount estimating device, robot control device and method of estimating amount of deflection
JP2014151385A (en) Robot control device, and robot control method
CN112703090A (en) Robot control device, robot control method, and robot control program
JP6390832B2 (en) Processing trajectory generating apparatus and method
Owen et al. A multi-arm robotic system for optimal sculpting
JP2022127061A (en) controller and robot
CN118721213A (en) Robot admittance control method, device, equipment and storage medium
WO2024262397A1 (en) Control method for multi-joint robot, teaching method for multi-joint robot, and robot system
JP2016221653A (en) Robot control device and robot system
US20250083315A1 (en) Method for calibrating articulated robot, computer device and readable storage medium
Zribi et al. Impact of external disturbance and discontinuous input on the redundant manipulator robot behaviour using the linear parameter varying modelling approach
JP2569412B2 (en) Compliance Control Method for Redundant Robot Manipulator
JP2002091568A (en) Parallel link mechanism control method and its controller
JP7629574B2 (en) ROBOT SYSTEM, ROBOT ADJUSTMENT DEVICE, PROGRAM, AND ROBOT MANUFACTURING METHOD
Mendez et al. Impedance Control of a Redundant Parallel Manipulator.

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