JP7604264B2 - Control device, robot and control method - Google Patents
Control device, robot and control method Download PDFInfo
- Publication number
- JP7604264B2 JP7604264B2 JP2021024980A JP2021024980A JP7604264B2 JP 7604264 B2 JP7604264 B2 JP 7604264B2 JP 2021024980 A JP2021024980 A JP 2021024980A JP 2021024980 A JP2021024980 A JP 2021024980A JP 7604264 B2 JP7604264 B2 JP 7604264B2
- Authority
- JP
- Japan
- Prior art keywords
- link
- joint
- estimated
- robot arm
- estimation unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Manipulator (AREA)
Description
本開示は、制御装置及びロボットに関する。 This disclosure relates to a control device and a robot.
従来、移動装置に搭載されるロボットアームがある。例えば、特許文献1は、多関節型の工業用ロボットと、工業用ロボットを移動させる移動装置とを備える工業用ロボット装置を開示する。移動装置は、2つのリンクにより構成される水平2関節のリンク機構を有し、据付面に固定される。工業用ロボットは先端側のリンクの先端部に取り付けられる。
Conventionally, there are robot arms that are mounted on a moving device. For example,
特許文献1の工業用ロボット装置では、工業用ロボットが動作すると、工業用ロボットの重心が変動し、工業用ロボットが移動装置のリンクに与えるモーメントが変動し得る。例えば、工業用ロボットがワークを把持すると、工業用ロボットが移動装置のリンクに与える荷重及びモーメントが変動し得る。このような荷重及びモーメントの変動は、移動装置のリンク及び関節にたわみ等の変形を生じ得る。リンク及び関節の変形は、工業用ロボットの位置を変動し、当該位置の変動は、工業用ロボットを振動させる。これにより、工業用ロボットの作業の精度が低下する可能性がある。
In the industrial robot device of
本開示は、第1ロボットアームによって支持される第2ロボットアームの基部の位置の意図しない変動を抑制する制御装置及びロボットを提供することを目的とする。 The present disclosure aims to provide a control device and a robot that suppresses unintended fluctuations in the position of the base of a second robot arm supported by a first robot arm.
本開示の一態様に係る制御装置は、第2ロボットアームを支持する少なくとも2つのリンクと、前記少なくとも2つのリンクを相互に接続する少なくとも1つの関節とを有する第1ロボットアームの制御装置であって、前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得し、前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作を推定する第1推定部と、前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得し、前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力を推定する第2推定部と、前記第1推定部によって推定される前記少なくとも1つの関節の動作と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する第3推定部と、前記第3推定部によって推定される力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を推定する第4推定部と、前記第4推定部によって推定される変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記変形量を補償するための前記第1動作指令の補正指令を生成し、前記補正指令を前記第1ロボットアームに指令する補正指令部とを含む。 A control device according to one aspect of the present disclosure is a control device for a first robot arm having at least two links supporting a second robot arm and at least one joint connecting the at least two links to each other, comprising a first estimation unit that acquires a first operation command for causing the first robot arm to perform a first target operation, which is a target operation, and estimates the operation of the at least one joint when the first robot arm operates in accordance with the first operation command, and a second estimation unit that acquires a second operation command for causing the second robot arm to perform a second target operation, which is a target operation, and estimates the operation of the at least one joint when the second robot arm operates in accordance with the second operation command, and a connection portion between the second robot arm and the link. a second estimation unit that estimates a force that the link receives from the second robot arm; a third estimation unit that estimates a force that the link receives based on the movement of the at least one joint estimated by the first estimation unit and the force estimated by the second estimation unit; a fourth estimation unit that estimates at least one of the deformation amount of the link and the deformation amount of the at least one joint based on the force estimated by the third estimation unit; and a correction command unit that generates a correction command for the first movement command to compensate for the deformation amount so as to move the connection part according to the first target movement based on the deformation amount estimated by the fourth estimation unit, and issues the correction command to the first robot arm.
本開示の技術によれば、第1ロボットアームによって支持される第2ロボットアームの基部の位置の意図しない変動を抑制することが可能になる。 The technology disclosed herein makes it possible to suppress unintended fluctuations in the position of the base of the second robot arm supported by the first robot arm.
(実施の形態)
以下において、本開示の実施の形態を、図面を参照しつつ説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、添付の図面における各図は、模式的な図であり、必ずしも厳密に図示されたものでない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。また、本明細書及び特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
(Embodiment)
Hereinafter, the embodiments of the present disclosure will be described with reference to the drawings. Note that the embodiments described below are all comprehensive or specific examples. In addition, among the components in the following embodiments, components that are not described in the independent claims showing the highest concept are described as optional components. In addition, each figure in the attached drawings is a schematic diagram and is not necessarily illustrated precisely. Furthermore, in each figure, substantially the same components are given the same reference numerals, and duplicated descriptions may be omitted or simplified. In addition, in this specification and claims, "apparatus" may mean not only one apparatus but also a system consisting of multiple apparatuses.
[ロボットの構成]
図1及び図2を参照しつつ、実施の形態に係るロボット1の構成を説明する。図1は、実施の形態に係るロボット1の構成の一例を示す側面図である。図2は、実施の形態に係るロボット1の構成の一例をモデル化した側面図である。
[Robot configuration]
The configuration of a
実施の形態に係るロボット1は、第1ロボットアーム100と、第2ロボットアーム200と、制御装置300とを備える。第1ロボットアーム100は、支持面Sに固定され、第2ロボットアーム200を支持する。第1ロボットアーム100は、少なくとも1つの関節と少なくとも2つのリンクとを有し、第2ロボットアーム200は、少なくとも1つの関節と少なくとも1つのリンクとを有する。
The
これに限定されないが、本実施の形態では、第1ロボットアーム100は、2つの関節JTA1及びJTA2と、3つのリンク101~103と、関節JTA1及びJTA2の駆動装置MA1及びMA2とを備える。第2ロボットアーム200は、6つの関節JTB1~JTB6と、7つのリンク201~207と、関節JTB1~JTB6それぞれの駆動装置MB1~MB6とを備える。第2ロボットアーム200は、垂直多関節型のロボットアームであるが、いかなる形式のロボットアームであってもよい。例えば、第2ロボットアーム200は、水平多関節型、極座標型、円筒座標型、直角座標型、又はその他の型式のロボットアームであってもよい。また、第2ロボットアーム200のリンクの数量は7つに限定されず、6つ以下又は8つ以上であってもよく、第2ロボットアーム200の関節の数量は6つに限定されず、5つ以下又は7つ以上であってもよい。
In this embodiment, the
第1ロボットアーム100について、リンク103は、第1ロボットアーム100の基部に位置し、支持面Sに固定される。これに限定されないが、本実施の形態では、リンク103は、台状の形状を有し、リンク101及び102の基台として機能する。リンク102は、第1ロボットアーム100の先端部に位置し、リンク101は、リンク102及び103の間に位置する。リンク103は、基端リンクの一例である。
For the
関節JTA1は、1自由度の回転関節であり、柱状のリンク101の一端をリンク103に第1軸S1を中心に回動可能に接続する。関節JTA2は、1自由度の回転関節であり、柱状のリンク102の一端をリンク101の他端に第2軸S2を中心に回動可能に接続する。リンク102の他端には、第2ロボットアーム200が取り付けられる。よって、リンク101及び102は、関節JTA1及びJTA2によって動作可能である。
Joint JTA1 is a one-degree-of-freedom rotary joint that connects one end of
これに限定されないが、本実施の形態では、第1軸S1は、支持面Sに沿う方向、例えば、水平方向に延び、第2軸S2は、支持面Sと垂直な方向、例えば、鉛直方向に延びる。リンク101は、支持面Sと垂直な面に沿う方向に回動でき、リンク102は、支持面Sに沿う方向に回動できる。なお、第1軸S1及び第2軸S2の方向は、いかなる方向であってもよく、互いに異なっていても同じであってもよい。第1軸S1及び第2軸S2はそれぞれ、関節JTA1及びJTA2の関節軸でもある。
In this embodiment, the first axis S1 extends in a direction along the support surface S, for example, in the horizontal direction, and the second axis S2 extends in a direction perpendicular to the support surface S, for example, in the vertical direction. The
駆動装置MA1及びMA2はそれぞれ、関節JTA1及びJTA2を回転駆動するように構成される。駆動装置MA1及びMA2はそれぞれ、駆動源としての電気モータ(図示略)と、減速機(図示略)とを含む。駆動装置MA1及びMA2の減速機はそれぞれ、それぞれの電気モータの回転駆動力の回転速度を減速し且つ回転駆動力を増大させて関節JTA1及びJTA2に伝達する。本実施の形態では、電気モータはサーボモータである。 The drive units MA1 and MA2 are configured to rotate and drive the joints JTA1 and JTA2, respectively. The drive units MA1 and MA2 each include an electric motor (not shown) as a drive source, and a reducer (not shown). The reducer of the drive units MA1 and MA2 each reduces the rotational speed of the rotational drive force of the respective electric motor and increases the rotational drive force to transmit it to the joints JTA1 and JTA2. In this embodiment, the electric motor is a servo motor.
なお、本明細書及び特許請求の範囲において、「水平方向」及び「鉛直方向」はそれぞれ、水平な支持面S上にロボット1が配置される場合での「水平方向」及び「鉛直方向」を意味する。さらに、「上方向」は、同様の場合での支持面Sに垂直な上向きの方向、つまり、鉛直上方向を意味し、「下方向」は、同様の場合での支持面Sに垂直な下向きの方向、つまり、鉛直下方向を意味する。さらに、本明細書及び特許請求の範囲において、「垂直」、「鉛直」、「水平」及び「平行」はそれぞれ、完全に垂直、鉛直、水平又は平行である場合と、完全な垂直、鉛直、水平又は平行の近傍を含む実質的に垂直、鉛直、水平又は平行とみなすことができる場合とを含み得る。
In this specification and claims, "horizontal direction" and "vertical direction" respectively mean "horizontal direction" and "vertical direction" when the
第2ロボットアーム200について、リンク207は、第2ロボットアーム200の基部に位置し、リンク102の上面に固定される。リンク207は、第1ロボットアーム100よりも上方に位置する。リンク207とリンク102との界面110は、ロボットアーム100及び200の接続部分の一例である。これに限定されないが、本実施の形態では、界面110の中心点110Aは、ロボットアーム100及び200の基準点である。以下において、「界面110」を「接続部分110」と表現する場合があり、「中心点110A」を「基準点110A」と表現する場合がある。
For the
これに限定されないが、本実施の形態では、リンク207は、台状の形状を有し、リンク201~206の基台として機能する。リンク206は、第2ロボットアーム200の先端部に位置し、リンク201~205は、リンク206及び207の間で、リンク207からリンク206に向かってこの順で配列される。リンク206の先端に、作業の対象物Wに作用を加えることができるエンドエフェクタEが取り付けられる。これに限定されないが、本実施の形態では、エンドエフェクタEは対象物Wを把持できるように構成される。
In this embodiment, but not limited to this,
関節JTB1~JTB6はいずれも、1つの軸を中心に回転可能である1自由度の回転関節である。関節JTB1は、リンク201をリンク207に回動可能に接続する。関節JTB2は、リンク202をリンク201に回動可能に接続する。関節JTB3は、リンク203をリンク202に回動可能に接続する。関節JTB4は、リンク204をリンク203に回動可能に接続する。関節JTB5は、リンク205をリンク204に回動可能に接続する。関節JTB6は、リンク206をリンク205に回動可能に接続する。
All of joints JTB1 to JTB6 are one-degree-of-freedom rotational joints that can rotate around one axis. Joint JTB1 rotatably connects
駆動装置MB1~MB6はそれぞれ、関節JTB1~JTB6を回転駆動するように構成される。駆動装置MB1~MB6はそれぞれ、駆動源としての電気モータ(図示略)と、減速機(図示略)とを含む。本実施の形態では、電気モータはサーボモータである。 The driving devices MB1 to MB6 are configured to rotate and drive the joints JTB1 to JTB6, respectively. Each of the driving devices MB1 to MB6 includes an electric motor (not shown) as a driving source, and a reduction gear (not shown). In this embodiment, the electric motor is a servo motor.
これに限定されないが、本実施の形態では、制御装置300は、ロボット1全体の動作を制御するように構成される。制御装置300は、情報処理装置300Aとロボットコントローラ300Bとを含む。ロボットコントローラ300Bは、ロボットアーム100及び200の動作を制御するように構成される。情報処理装置300Aは、ロボットアーム100及び200の動作制御に関連する演算処理を行うように構成される。
In this embodiment, the
情報処理装置300A及びロボットコントローラ300Bはコンピュータ装置を含む。情報処理装置300Aの構成は特に限定されないが、例えば、情報処理装置300Aは、電子回路基板、電子制御ユニット、マイクロコンピュータ、パーソナルコンピュータ、ワークステーション、スマートフォン及びタブレットなどのスマートデバイス、並びにその他の電子機器等であってもよい。ロボットコントローラ300Bは、ロボットアーム100及び200等に供給する電力を制御するための電気回路を含んでもよい。
The
[制御装置のハードウェア構成]
図3を参照しつつ、実施の形態に係る制御装置300のハードウェア構成を説明する。図3は、実施の形態に係る制御装置300のハードウェア構成の一例を示すブロック図である。情報処理装置300Aは、プロセッサ301Aと、メモリ302Aと、ストレージ303Aと、入出力I/F(インタフェース:Interface)304Aとを構成要素として含む。情報処理装置300Aの各構成要素は、バス310Aによって相互に接続されるが、他のいかなる有線通信又は無線通信で接続されてもよい。ロボットコントローラ300Bは、プロセッサ301Bと、メモリ302Bと、入出力I/F304Bと、駆動I/F305B及び306Bとを構成要素として含む。ロボットコントローラ300Bは、ストレージを含んでもよい。ロボットコントローラ300Bの各構成要素は、バス310Bによって相互に接続されるが、他のいかなる有線通信又は無線通信で接続されてもよい。情報処理装置300A及びロボットコントローラ300Bそれぞれに含まれる構成要素の全てが必須ではない。
[Hardware configuration of the control device]
With reference to FIG. 3, the hardware configuration of the
プロセッサ301A及びメモリ302Aの組、及び、プロセッサ301B及びメモリ302Bの組はそれぞれ、演算器を構成する。演算器は、他の装置との指令、情報及びデータ等の送受信を行う。演算器は、各種機器からの信号の入力及び各制御対象への制御信号の出力を行う。
The pair of
メモリ302A及び302Bはそれぞれ、プロセッサ301A及び301Bが実行するプログラム、及び各種固定データ等を記憶する。メモリ302A及び302Bは、揮発性メモリ及び不揮発性メモリなどの半導体メモリ等の記憶装置で構成されてもよい。これに限定されないが、本実施の形態では、メモリ302A及び302Bは、揮発性メモリであるRAM(Random Access Memory)と不揮発性メモリであるROM(Read-Only Memory)とを含む。
ストレージ303Aは、各種データを記憶する。ストレージ303Aは、半導体メモリ、ハードディスクドライブ(HDD:Hard Disk Drive)及び固体ドライブ(SSD:Solid State Drive)等の記憶装置で構成されてもよい。
プロセッサ301A及び301Bはいずれも、RAM及びROMと一緒にコンピュータシステムを形成する。情報処理装置300Aのコンピュータシステムは、プロセッサ301AがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、情報処理装置300Aの機能を実現してもよい。ロボットコントローラ300Bのコンピュータシステムは、プロセッサ301BがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、ロボットコントローラ300Bの機能を実現してもよい。
Both
情報処理装置300A及びロボットコントローラ300Bの機能の一部又は全部は、上記コンピュータシステムにより実現されてもよく、電子回路又は集積回路等の専用のハードウェア回路により実現されてもよく、上記コンピュータシステム及びハードウェア回路の組み合わせにより実現されてもよい。情報処理装置300A及びロボットコントローラ300Bはそれぞれ、単一の装置による集中制御により各処理を実行するように構成されてもよく、複数の装置の協働による分散制御により各処理を実行するように構成されてもよい。なお、情報処理装置300A及びロボットコントローラ300Bは、互いの機能の少なくとも一部を含むように構成されてもよく、一体化されてもよい。
Some or all of the functions of the
これに限定されないが、例えば、プロセッサ301A及び301Bは、CPU(中央処理装置:Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)、マイクロプロセッサ(microprocessor)、プロセッサコア(processor core)、マルチプロセッサ(multiprocessor)、ASIC(Application-Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等を含み、IC(集積回路)チップ、LSI(Large Scale Integration)等に形成された論理回路又は専用回路によって各処理を実現してもよい。複数の処理は、1つ又は複数の集積回路により実現されてもよく、1つの集積回路により実現されてもよい。
For example, but not limited to,
情報処理装置300Aの入出力I/F304Aは、情報処理装置300Aとロボットコントローラ300Bとを接続し、これらの間での情報、指令及びデータ等の入出力を可能にする。ロボットコントローラ300Bの入出力I/F304Bは、ロボットコントローラ300Bと情報処理装置300Aの入出力I/F304Aとを接続し、これらの間での情報、指令及びデータ等の入出力を可能にする。
The input/output I/
第1駆動I/F305Bは、ロボットコントローラ300Bと第1ロボットアーム100の第1駆動回路120とを接続し、これらの間での信号等の送受信を可能にする。第1駆動回路120は、ロボットコントローラ300Bから受信する信号に含まれる指令値に従って、第1ロボットアーム100の駆動装置MA1及びMA2に供給する電力を制御するように構成される。
The first drive I/F 305B connects the
第2駆動I/F306Bは、ロボットコントローラ300Bと第2ロボットアーム200の第2駆動回路220とを接続し、これらの間での信号等の送受信を可能にする。第2駆動回路220は、ロボットコントローラ300Bから受信する信号に含まれる指令値に従って、第2ロボットアーム200の駆動装置MB1~MB6に供給する電力を制御するように構成される。
The second drive I/
なお、ロボットコントローラ300Bは、駆動装置MA1、MA2及びMB1~MB6のサーボモータをサーボ制御するように構成されてもよい。ロボットコントローラ300Bは、各サーボモータが備える回転センサの検出値と、駆動回路120及び220から各サーボモータへの電流の指令値とを、フィードバック情報として駆動回路120及び220から受信する。ロボットコントローラ300Bは、フィードバック情報を用いて各サーボモータの駆動の指令値を決定し、駆動回路120及び220に送信する。
The
ロボットコントローラ300Bは、複数のサーボモータの軸制御を互いに連携できるように構成されてもよい。ロボットコントローラ300Bは、複数の軸制御のうちの一部であるロボット軸制御として駆動装置MB1~MB6のサーボモータを制御し、複数の軸制御のうちの一部である外部軸制御として駆動装置MA1及びMA2のサーボモータを制御するように構成されてもよい。
The
[制御装置の機能的構成]
図4を参照しつつ、実施の形態に係る制御装置300の機能的構成を説明する。図4は、実施の形態に係る制御装置300の機能的構成の一例を示すブロック図である。情報処理装置300Aは、第1動作指令部401と、第2動作指令部402と、第1推定部403と、第2推定部404と、第3推定部405と、第4推定部406と、第1位置推定部407と、第2位置推定部408と、慣性要素推定部409と、慣性力推定部410と、補正指令部411と、記憶部421~423とを機能的構成要素として含む。記憶部421~423を除く機能的構成要素の機能は、プロセッサ301A等によって実現され、記憶部421~423の機能は、メモリ302A及び/又はストレージ303A等の記憶装置によって実現される。記憶部421~423それぞれの機能は、別々の記憶装置によって実現されてもよく、記憶部421~423の機能の少なくとも2つが1つの記憶装置によって実現されてもよい。上記の機能的構成要素の全てが必須ではない。
[Functional configuration of the control device]
The functional configuration of the
ロボットコントローラ300Bは、第1駆動指令部501と、第2駆動指令部502とを機能的構成要素として含む。駆動指令部501及び502の機能は、プロセッサ301B等によって実現される。上記の機能的構成要素の全てが必須ではない。
The
記憶部421~423は、様々な情報及びデータ等を記憶し、記憶している情報及びデータ等の読み出しを可能にする。例えば、第1記憶部421は、ロボットアーム100及び200の制御プログラムを記憶する。これに限定されないが、本実施の形態では、制御装置300は、制御プログラムに従ってロボットアーム100及び200に自律的に動作させる、つまり、ロボットアーム100及び200に自動運転させるように構成される。第1記憶部421は、ロボットアーム100及び200に自律的に動作させるための教示データ等の目標動作データを記憶してもよい。なお、制御装置300は、図示しない操作装置から受け取る操作指令に従ってロボットアーム100及び200に動作させる、つまり、ロボットアーム100及び200に手動運転させるように構成されてもよい。
The
例えば、第2記憶部422は、第1ロボットアーム100の情報を記憶する。第1ロボットアーム100の情報は、リンク101~103並びに関節JTA1及びJTA2の情報を含む。リンク101~103の情報は、リンク101~103それぞれの質量、寸法、形状、重心位置、慣性モーメント、剛性、及び関節との接続位置等の情報を含んでもよい。リンクの剛性は、リンクの曲げ剛性及び捻り剛性等を含んでもよい。関節JTA1及びJTA2の情報は、関節JTA1及びJTA2それぞれの質量、寸法、形状、重心位置、慣性モーメント、剛性、回転中心軸の位置及び方向、並びにリンクとの接続位置等の情報を含んでもよい。関節の剛性は、関節を構成する部材の剛性、関節の回転部分の剛性、及び関節の減速機の剛性等を含んでもよい。
For example, the
リンク101~103の情報は、リンク101~103の上記情報が反映された仮想的なモデルであってもよく、関節JTA1及びJTA2の情報は、関節JTA1及びJTA2の上記情報が反映された仮想的なモデルであってもよい。例えば、仮想的なモデルは、3次元CAD(Computer-Aided Design)モデル等の3次元モデルであってもよい。
The information on
例えば、第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
第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
さらに、第1動作指令部401は、接続部分110を目標位置及び目標姿勢に移動させるための関節JTA1及びJTA2の目標回転方向及び目標回転量を、第2記憶部422に記憶される第1ロボットアーム100の情報を用いて演算する。つまり、第1動作指令部401は、関節JTA1及びJTA2の目標回転位置を演算する。第1動作指令部401は、第1目標動作データと第1ロボットアーム100の情報とを用いて、関節JTA1及びJTA2の目標回転位置を演算するように構成されてもよい。第1動作指令部401は、関節JTA1及びJTA2の目標回転位置を含む第1動作指令を生成する。なお、手動運転の場合、第1動作指令部401は、操作装置(図示略)から受けとる操作指令に従った目標動作を第1ロボットアーム100に実行させるための第1動作指令を上記と同様に生成する。
Furthermore, the first
第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
さらに、第2動作指令部402は、リンク206を目標位置及び目標姿勢に移動させるための関節JTB1~JTB6の目標回転方向及び目標回転量を、第3記憶部423に記憶される第2ロボットアーム200の情報を用いて演算する。つまり、第2動作指令部402は、関節JTB1~JTB6の目標回転位置を演算する。第2動作指令部402は、第2目標動作データと第2ロボットアーム200の情報とを用いて、関節JTB1~JTB6の目標回転位置を演算するように構成されてもよい。第2動作指令部402は、関節JTB1~JTB6の目標回転位置を含む第2動作指令を生成する。なお、手動運転の場合、第2動作指令部402は、操作装置(図示略)から受けとる操作指令に従った目標動作を第2ロボットアーム200に実行させるための第2動作指令を上記と同様に生成する。
Furthermore, the second
第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
第2推定部404は、第2動作指令部402から第2動作指令を取得し、第2ロボットアーム200が第2動作指令に従って動作する場合に、接続部分110が基準点110Aにおいて第2ロボットアーム200から受ける力を推定する。これに限定されないが、本実施の形態では、第2推定部404は、基準点110Aを原点Оとする基準座標系を用いて、上記力を推定する。
The
基準座標系は、基準点110Aを原点Оとする座標系であればよい。これに限定されないが、本実施の形態では、基準座標系は、図2に示すように、基準点110Aから接続部分110の界面に沿って延び且つ互いに直交するX軸及びY軸と、基準点110Aから接続部分110の界面と垂直な方向に延び且つX軸及びY軸と直交するZ軸とにより定義される。Z軸正方向は、リンク207からリンク102に向かう方向である。又は、例えば、基準座標系は、基準点110Aから水平方向に延び且つ互いに直交するX軸及びY軸と、基準点110Aから鉛直下方向に延び且つX軸及びY軸と直交するZ軸とにより定義されてもよい。鉛直下方向は重力方向であってもよく、水平方向は重力方向に垂直な方向であってもよい。
The reference coordinate system may be a coordinate system with the
例えば、上記力は、第2ロボットアーム200の荷重と、第2ロボットアーム200が接続部分110に発生するモーメントとを含み得る。例えば、第2推定部404は、第2ロボットアーム200が第2動作指令に従って動作する場合のリンク201~207及び関節JTB1~JTB6の位置及び姿勢を推定し、推定結果と第3記憶部423に記憶される第2ロボットアーム200の情報とを用いて、上記力を推定してもよい。
For example, the above force may include the load of the
第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
第3推定部405は、第1推定部403によって推定される関節JTA1及びJTA2の動作と、第2推定部404によって推定される接続部分110が第2ロボットアーム200から受ける力とに基づき、リンク101~103が受ける力を推定する。これに限定されないが、本実施の形態では、台状形状のリンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、第3推定部405は、リンク101及び102が受ける力を推定する。
The
例えば、第3推定部405は、第1推定部403によって推定される関節JTA1及びJTA2の動作に基づき慣性力推定部410によって推定される、リンク101及び102に発生する慣性力と、接続部分110が第2ロボットアーム200から受ける力とに基づき、リンク101及び102が受ける力を推定する。
For example, the
第4推定部406は、第3推定部405によって推定されるリンク101及び102が受ける力に基づき、リンク101及び102の変形量と関節JTA1及びJTA2の変形量とのうちの少なくとも一方を推定する。本実施の形態では、第4推定部406は、リンク101及び102の変形量と、関節JTA1及びJTA2の変形量との両方を推定する。
The
第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
第2位置推定部408は、接続部分110の位置を推定する。具体的には、第2位置推定部408は、接続部分110の基準点110Aの3次元の位置及び接続部分110の界面の3次元の姿勢を、基準座標系を用いて推定する。例えば、第1位置推定部407は、第1推定部403によって推定される関節JTA1及びJTA2の推定回転位置と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、当該推定回転位置での接続部分110の推定位置及び推定姿勢を演算してもよい。第2位置推定部408は、第1位置推定部407によって推定されるリンク101及び102並びに関節JTA1及びJTA2それぞれの推定位置及び推定姿勢を用いて、接続部分110の推定位置及び推定姿勢を演算してもよい。第2位置推定部408は、第1動作指令部401から、関節JTA1及びJTA2の目標回転位置に対応する接続部分110の目標位置及び目標姿勢を取得し、当該目標位置及び目標姿勢を基準座標系に変換し推定位置及び推定姿勢としてもよい。
The second
慣性要素推定部409は、リンク101~103の慣性的特徴と第2ロボットアーム200の慣性的特徴とを推定する。これに限定されないが、本実施の形態では、リンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、慣性要素推定部409は、リンク101及び102の慣性的特徴を推定する。リンク101及び102の慣性的特徴は、リンク101及び102の慣性モーメント及び質量を要素として含む。第2ロボットアーム200の慣性的特徴は、第2ロボットアーム200の慣性モーメント及び質量を要素として含む。
The inertial
慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2の動作に基づき、関節JTA1及びJTA2それぞれが動作することによってリンク101~103に発生する慣性力(以下、「関節起因慣性力」とも称する)を推定する。これに限定されないが、本実施の形態では、リンク103は、リンク101及び関節JTA1を介して力を受けても、たわみ等の変形をほとんど生じず不動であるため、慣性力推定部410は、リンク101及び102に発生する関節起因慣性力を推定する。
The inertial
具体的には、慣性力推定部410は、リンク101及び102の慣性的特徴と、第2ロボットアーム200の慣性的特徴と、関節JTA1及びJTA2の加速度と、関節JTA1及びJTA2のジョイントスクリュとを用いて、リンク101及び102に発生する関節起因慣性力を推定する。関節JTA1及びJTA2のジョイントスクリュはそれぞれ、当該関節の向きを示す要素を含む当該関節の状態を示す特徴である。
Specifically, the inertial
補正指令部411は、第4推定部406によって推定されるリンク101及び102の変形量並びに/又は関節JTA1及びJTA2の変形量に基づき、第1目標動作に従って接続部分110を移動させるように上記変形量を補償するための第1動作指令の補正指令を生成する。補正指令部411は、当該補正指令を第1ロボットアーム100、具体的には、第1駆動指令部501に出力する。これに限定されないが、本実施の形態では、補正指令部411は、上記変形量を補償するために第1動作指令を補正し、補正後の第1動作指令を補正指令として生成する。補正指令部411は、第1動作指令を補正しない場合、未補正の第1動作指令を補正指令として、第1駆動指令部501に出力する。また、補正指令部411は、第2動作指令を第2ロボットアーム200、具体的には、第2駆動指令部502に出力する。
Based on the deformation amount of the
第1駆動指令部501は、補正指令に含まれる関節JTA1及びJTA2の目標回転位置にまで駆動装置MA1及びMA2に関節JTA1及びJTA2を駆動させるための駆動指令を生成し、駆動装置MA1及びMA2に出力する。駆動指令は、駆動装置MA1及びMA2のサーボモータの電流の指令値を含む。第1駆動指令部501は、サーボモータのフィードバック情報を用いて駆動指令を生成する。
The first
第2駆動指令部502は、第2動作指令に含まれる関節JTB1~JTB6の目標回転位置にまで駆動装置MB1~MB6に関節JTB1~JTB6を駆動させるための駆動指令を生成し、駆動装置MB1~MB6に出力する。駆動指令は、駆動装置MB1~MB6のサーボモータの電流の指令値を含む。第2駆動指令部502は、サーボモータのフィードバック情報を用いて駆動指令を生成する。
The second
[制御装置の動作]
図5を参照しつつ、制御装置300の動作を説明する。図5は、実施の形態に係る制御装置300の動作の一例を示すフローチャートである。まず、情報処理装置300Aにおいて、第1動作指令部401は、第1記憶部421に記憶される第1目標動作データに従って第1ロボットアーム100を動作させるための第1動作指令を生成する(ステップS101)。
[Operation of the control device]
The operation of the
次いで、第2動作指令部402は、第1記憶部421に記憶される第2目標動作データに従って第2ロボットアーム200を動作させるための第2動作指令を生成する(ステップS102)。
Next, the second
次いで、第1推定部403は、第1ロボットアーム100が第1動作指令に従って動作する場合の関節JTA1及びJTA2の動作を推定する(ステップS103)。第1推定部403は、推定対象動作として、関節JTA1及びJTA2の推定回転位置及び推定回転速度を算出する。
Next, the
次いで、第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
例えば、第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
例えば、第1位置推定部407は、関節JTA1及びJTA2の推定位置及び推定姿勢として、関節JTA1及びJTA2の重心の推定位置及び基準軸の推定姿勢を、基準座標系を基準に演算する。例えば、第1位置推定部407は、基準座標系での第1関節JTA1の重心の推定位置ベクトルγ1оと、基準座標系での第2関節JTA2の重心の推定位置ベクトルγ2оとを算出する。以下において、基準座標系の原点Оを基準とする第j関節の位置ベクトルを「γjо」と表す。関節の番号「j」は、第1ロボットアーム100の基端から先端に向かって増加する。なお、第1位置推定部407は、関節JTA1及びJTA2に設定される他の基準点の推定位置を、基準座標系を基準に演算するように構成されてもよい。
For example, the first
例えば、第1位置推定部407は、関節JTA1及びJTA2の基準軸の推定姿勢として、基準座標系での第1関節JTA1の推定方向ベクトルd1оと、基準座標系での第2関節JTA2の推定方向ベクトルd2оとを算出する。以下において、基準座標系の原点Оを基準とする第j関節の方向ベクトルを「djо」と表す。方向ベクトルdjоは、第j関節の動作の基準軸の方向を示すベクトルである。例えば、第j関節が回転関節である場合、方向ベクトルdjоは、関節軸である回転中心軸の方向ベクトルである。第j関節が直動関節である場合、方向ベクトルdjоは、関節軸である直動方向の軸の方向ベクトルである。
For example, the first
さらに、第1位置推定部407は、リンク101及び102の推定位置並びに関節JTA1及びJTA2の推定位置及び推定姿勢と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、基準座標系の原点Оを基準とするリンク101及び102の慣性モーメントl1О及びl2Оを演算する。以下において、基準座標系の原点Оを基準とする第iリンクの慣性モーメントを「liО」と表す。
Furthermore, the first
次いで、第2位置推定部408は、第1ロボットアーム100が第1動作指令に従って動作する場合の接続部分110の位置及び姿勢を推定する(ステップS105)。例えば、第1位置推定部407は、第1位置推定部407によって推定されるリンク101及び102並びに関節JTA1及びJTA2の推定位置及び推定姿勢と、第2記憶部422に記憶される第1ロボットアーム100の情報とを用いて、接続部分110の推定位置及び推定姿勢を演算してもよい。
Next, the second
第2位置推定部408は、基準点110Aの推定位置と、接続部分110の界面の推定姿勢とを、ロボット座標系を基準に算出する。つまり、第2位置推定部408は、基準座標系の推定位置及び推定姿勢を、ロボット座標系を基準に算出する。ロボット座標系は、ロボット1を基準に定義される座標系である。これに限定されないが、本実施の形態では、図2に示すように、ロボット座標系の原点Оrは、支持面S上のリンク103の位置に設定される。Xr軸及びYr軸は、原点Оrから支持面Sに沿って延び、互いに直交する。Zr軸は、原点Оrから支持面Sに垂直に上方へ延び、Xr軸及びYr軸と直交する。
The second
次いで、第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
さらに、第2推定部404は、リンク201~207及び関節JTB1~JTB6の推定位置及び推定姿勢と、第2ロボットアーム200の情報とを用いて、第2ロボットアーム200全体の重心位置である推定重心位置と、第2ロボットアーム200全体の慣性モーメントである推定慣性モーメントとを算出する。このとき、第2推定部404は、第2ロボットアーム200の情報として、リンク201~207の重心位置及び質量、関節JTB1~JTB6の重心位置及び質量、エンドエフェクタEの重心位置及び質量、並びに、対象物Wの重心位置及び質量等を用い得る。
Furthermore, the
次いで、慣性要素推定部409は、第1ロボットアーム100のリンク101及び102それぞれの慣性的特徴と第2ロボットアーム200全体の慣性的特徴とを推定する(ステップS107)。慣性要素推定部409は、第2記憶部422に記憶される第1ロボットアーム100の情報及び第3記憶部423に記憶される第2ロボットアーム200の情報を用いて、基準座標系を基準とする各慣性的特徴を算出する。
Next, the inertial
以下において、第iリンクの慣性的特徴を「Liо」と表し、第2ロボットアーム200全体の慣性的特徴を「Laо」と表す。慣性的特徴「Liо」及び「Laо」は、基準座標系の原点Оを基準とする。慣性的特徴Liоは、第iリンクの質量及び慣性モーメントを表す6×6行列である。慣性的特徴Laоは、第2ロボットアーム200全体の質量及び慣性モーメントを表す6×6行列である。慣性要素推定部409は、慣性的特徴Liо及びLaоをそれぞれ、下記の式1及び式2を用いて算出する。式1及び式2に示される慣性的特徴Liо及びLaоは、慣性バイナとも呼ばれる。
In the following, the inertial characteristic of the i-th link is represented as "L io ", and the inertial characteristic of the entire
式1において、要素「mi」は第iリンクの質量であり、スカラーである。要素「liО」は第iリンクの慣性モーメントを表す3×3行列である。要素「E」は、単位行列である。要素「γgiО」は第iリンクの重心の3次元の位置ベクトルである。[γgiО×]は、位置ベクトルγgiОの外積を歪対称行列で表現したものであり、位置ベクトルγgiОの外積行列とも呼ばれる。
In
式2において、要素「ma」は第2ロボットアーム200全体の質量であり、スカラーである。要素「laО」は第2ロボットアーム200全体の慣性モーメントを表す3×3行列である。要素「γgaО」は第2ロボットアーム200全体の重心の3次元の位置ベクトルである。[γgaО×]は、位置ベクトルγgaОの外積を歪対称行列で表現したものである。
In
次いで、慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2の動作に基づき、関節JTA1及びJTA2それぞれが動作することによってリンク101及び102に発生する慣性力(関節起因慣性力)を推定する(ステップS108)。慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2の推定回転位置と、慣性要素推定部409によって推定される慣性的特徴とを用いて、リンク101及び102に発生する関節起因慣性力を演算する。
Next, the inertial
具体的には、慣性力推定部410は、関節JTA1及びJTA2それぞれのジョイントスクリュを演算する。第j関節のジョイントスクリュを「Mjо」と表す。慣性力推定部410は、第1関節JTA1の推定ジョイントスクリュM1оと、第2関節JTA2の推定ジョイントスクリュM2оとを、基準座標系を基準として算出する。ジョイントスクリュMjоは、6次元のベクトルで表される。
Specifically, the inertia
本実施の形態では、関節JTA1及びJTA2はいずれも、1つの回転中心軸を中心に回転可能である回転関節である。例えば、慣性力推定部410は、下記の式3に示すように、第j関節の推定ジョイントスクリュMjоを算出する。式3において、γjо×djоは、γjо及びdjоの外積を示す。要素「γjо」は第j関節の3次元の推定位置ベクトルであり、要素「djо」は第j関節の3次元の推定方向ベクトルである。第j関節の推定方向ベクトルdjоは、第j関節の関節軸である回転中心軸の方向ベクトルを示す。
In this embodiment, both of the joints JTA1 and JTA2 are rotational joints that can rotate around one rotation central axis. For example, the
上記の式3は、第j関節が回転関節である場合の第j関節のジョイントスクリュを示すが、第j関節が他の形式の関節であっても、第j関節のジョイントスクリュを算出することができる。例えば、第j関節が直動関節である場合、第j関節のジョイントスクリュは、下記の式4のように表され得る。第j関節がネジ関節である場合、第j関節のジョイントスクリュは、下記の式5のように表され得る。式4において、要素「djо」は、第j関節の関節軸である直動方向の軸の方向ベクトルを示す。式5において、要素「djо」は、第j関節の関節軸であるネジ回転の回転中心軸の方向ベクトルを示し、当該方向ベクトルは、ネジ回転による進退方向の軸の方向ベクトルでもある。ネジ関節は、ネジ関節に接続されているリンクが回転中心軸周りに回動すると、回転中心軸方向に当該リンクを進退させるように構成される。要素「h」は、ネジ回転のピッチを示し、例えば、1ラジアンの回転当たりのリンクの回転中心軸方向の進退量を示す。 The above formula 3 shows the joint screw of the j-th joint when the j-th joint is a rotary joint, but even if the j-th joint is another type of joint, the joint screw of the j-th joint can be calculated. For example, when the j-th joint is a linear joint, the joint screw of the j-th joint can be expressed as the following formula 4. When the j-th joint is a screw joint, the joint screw of the j-th joint can be expressed as the following formula 5. In formula 4, the element "d jо " indicates the direction vector of the axis of linear motion, which is the joint axis of the j-th joint. In formula 5, the element "d jо " indicates the direction vector of the rotation center axis of the screw rotation, which is the joint axis of the j-th joint, and the direction vector is also the direction vector of the axis of advancement and retreat by the screw rotation. The screw joint is configured to advance and retreat the link in the direction of the rotation center axis when the link connected to the screw joint rotates around the rotation center axis. The element "h" indicates the pitch of the screw rotation, and indicates, for example, the amount of advancement and retreat of the link in the direction of the rotation center axis per rotation of one radian.
さらに、慣性力推定部410は、関節JTA1及びJTA2の加速度を推定する。当該加速度は、関節JTA1及びJTA2が推定回転位置へ動作するときに関節JTA1及びJTA2が発生する加速度である。例えば、慣性力推定部410は、第1推定部403によって推定される関節JTA1及びJTA2それぞれの推定回転速度を時間微分することによって、関節JTA1及びJTA2それぞれの推定加速度θ1
’’及びθ2
’’を算出する。
Furthermore, the
慣性力推定部410は、慣性的特徴L1о、L2о及びLaоと、ジョイントスクリュM1о及びM2оと、推定加速度θ1
’’及びθ2
’’とを用いて、推定加速度θ1
’’及びθ2
’’によって第iリンクに加わる関節起因慣性力Fijоを、基準座標系を基準として算出する。関節起因慣性力Fijоは、基準座標系の原点Оを基準として、第j関節の推定加速度θj
’’によって第iリンクに発生する慣性力を表す。関節起因慣性力Fijоは、3つの並進方向の成分と3つの回転方向の成分とを含み、6次元のベクトルで表される。慣性力推定部410は、推定加速度θ1
’’及びθ2
’’によってリンク101及び102に発生する関節起因慣性力F11о、F12о、F21о及びF22оを下記の式6~式9に示すように算出する。関節起因慣性力Fijоは、第j関節が動作することで移動するリンクの慣性的特徴と、第2ロボットアーム200の慣性的特徴とを要素として含む。
The inertial
次いで、第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
第3推定部405は、関節起因慣性力Fijоと推定慣性力Faоとを用いて、基準座標系の原点Оを基準として第iリンクに発生する推定慣性力Fiоを、第iリンクが受ける力として算出する。推定慣性力Fiоは、3つの並進方向の成分と3つの回転方向の成分とを含み、6次元のベクトルで表される。第3推定部405は、リンク101及び102に発生する推定慣性力F1о及びF2оを下記の式10及び式11に示すように算出する。
The
次いで、第4推定部406は、第3推定部405によって推定されるリンク101及び102が受ける力に基づき、リンク101及び102の変形量と関節JTA1及びJTA2の変形量とを推定する(ステップS110)。
Next, the
第4推定部406は、第2記憶部422に記憶される第1ロボットアーム100の情報に含まれる関節JTA1及びJTA2の剛性kg1及びkg2と、推定慣性力F1о及びF2оとを用いて、関節JTA1及びJTA2の推定変形量を演算する。この場合、第4推定部406は、推定慣性力F1о及びF2оと、ジョイントスクリュM1о及びM2оとを用いて、関節JTA1及びJTA2それぞれに作用する推定トルクτ1及びτ2を、下記の式12及び式13に示すように算出する。以下において、第j関節の剛性を「kgj」と表し、第j関節の推定トルクを「τj」と表す。剛性kgjは、3つの並進方向の成分と3つの回転方向の成分とを含み、6次元のベクトルで表される。剛性kgjは、第j関節の減速機の剛性である減速機のばね定数等を含む。推定トルクτjはスカラーである。
The
式12及び式13における演算子「〇」は、ベクトルの分配演算を示す。例えば、6次元のベクトルAが、3次元の並進方向の成分を含むベクトルa1と、3次元の回転方向の成分を含むベクトルa2とを含み、6次元のベクトルBが、3次元の並進方向の成分を含むベクトルb1と、3次元の回転方向の成分を含むベクトルb2とを含む場合、演算子「〇」を用いたベクトルA及びBの演算は、下記の式14のように示される。 The operator "o" in formulas 12 and 13 indicates a distribution operation of vectors. For example, in the case where a six-dimensional vector A includes a vector a1 including a three-dimensional translation component and a vector a2 including a three-dimensional rotation component, and a six-dimensional vector B includes a vector b1 including a three-dimensional translation component and a vector b2 including a three-dimensional rotation component, the operation of vectors A and B using the operator "o" is shown as in formula 14 below.
さらに、第4推定部406は、推定トルクτjを剛性kgjで除算することによって、第j関節の推定変形量Δθjを算出する。第4推定部406は、関節JTA1及びJTA2それぞれの推定変形量Δθ1及びΔθ2を下記の式15及び式16に示すように算出する。推定変形量Δθjは、第j関節での変形に対する補償量とすることができる。
Furthermore, the
また、第4推定部406は、第2記憶部422に記憶される第1ロボットアーム100の情報に含まれるリンク101及び102のコンプライアンスCI1о及びCI2оと、推定慣性力F1о及びF2оとを用いて、リンク101及び102の推定変形量を演算する。以下において、第iリンクのコンプライアンスを「CIiо」と表す。コンプライアンスCIiоは、基準座標系の原点Оを基準とする第iリンクの剛性を示し、6×6行列で表される。
Furthermore, the
第4推定部406は、推定慣性力F1о及びF2оと、コンプライアンスCI1о及びCI2оとを用いて、リンク101及び102それぞれの推定変形量Δ1о及びΔ2оを、下記の式17及び式18に示すように算出する。以下において、第iリンクの推定変形量を「Δiо」と表す。推定変形量Δiоは、3つの並進方向の成分と3つの回転方向の成分とを含み、基準座標系を基準とする6次元のベクトルで表される。
The
さらに、第4推定部406は、第iリンクの推定変形量Δiоと第j関節のジョイントスクリュMjоとを用いて、第iリンクの推定変形量Δiоを第j関節の推定変形量に変換してもよい。推定変形量Δiоに含まれる3次元の並進方向の成分を含むベクトルを、ベクトルδtiоとし、ジョイントスクリュMjоに含まれる3次元の並進方向の成分を含むベクトルを、ベクトルυjоとする。第iリンクの推定変形量Δiоは、下記の式19に示すように、第j関節の推定変形量ΔθLjに変換することができる。推定変形量ΔθLjは、リンクの変形に対する補償量とすることができる。
Furthermore, the
次いで、補正指令部411は、第4推定部406によって推定される変形量に基づき、第1目標動作に従って接続部分110を移動させるように上記変形量を補償するための第1動作指令の補正指令を生成する(ステップS111)。補正指令部411は、補正指令及び第2動作指令を関連付けて、ロボットコントローラ300Bに送信する。補正指令部411は、上記変形量を補償することで接続部分110の位置及び姿勢を目標位置及び目標姿勢にするように第1動作指令を補正し、補正後の第1動作指令を補正指令として送信する。
Next, the
例えば、補正指令部411は、第1動作指令に含まれる第j関節の目標回転位置に、第j関節の推定変形量Δθjを加えることによって、第1動作指令を補正してもよい。補正指令部411は、第1動作指令に含まれる第j関節の目標回転位置に、第j関節の推定変形量ΔθLjを加えることによって、第1動作指令を補正してもよい。これにより、リンク及び関節の両方の変形量が補償される。なお、本実施の形態では、第j関節は、1つの自由度を有する回転関節であるため、補正指令部411は、推定変形量Δθjと推定変形量ΔθLjとのうちの一方を、第j関節の目標回転位置に加えるが、両方を第j関節の目標回転位置に加えることもある。第j関節が2以上の自由度を有する場合、補正指令部411は、推定変形量Δθjと推定変形量ΔθLjとの両方を、第j関節の目標回転位置に加えることもある。
For example, the
次いで、ロボットコントローラ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
(変形例1)
本変形例は、第1ロボットアーム100Aが1つの関節のみを備える点で、実施の形態と異なる。以下、本変形例について、実施の形態と異なる点を中心に説明し、実施の形態と同様の点の説明を適宜省略する。
(Variation 1)
This modification differs from the embodiment in that the
図6は、変形例1に係るロボット1Aの構成をモデル化した側面図である。図6に示すように、ロボット1Aは、実施の形態と同様の第2ロボットアーム200と、第1ロボットアーム100Aとを備える。第1ロボットアーム100Aは、リンク101A及び102Aと、リンク101A及び102Aを回転可能に接続する関節JTAA1とを備える。これに限定されないが、本変形例の第1リンク101Aは、実施の形態の第2リンク102と同様の構成を有し、本変形例の第2リンク102Aは、実施の形態の第3リンク103と同様の構成を有する。本変形例の第1関節JTAA1は、実施の形態の第2関節JTA2と同様の構成を有する。ロボット1Aは、実施の形態と同様である情報処理装置300A及びロボットコントローラ300Bを含む制御装置300を備える。情報処理装置300Aは、実施の形態と同様の処理を行うが、下記の点で実施の形態と異なる演算式を用いて演算する。
FIG. 6 is a side view of a model of the configuration of the
慣性力推定部410は、実施の形態の式6~式9の代わりに下記の式20を用いて、第1関節JTAA1の推定加速度θ1
’’によって第1リンク101Aに発生する関節起因慣性力F11оを演算する。
The inertial
第3推定部405は、実施の形態の式10及び式11の代わりに下記の式21を用いて、第1リンク101Aに発生する推定慣性力F1оを演算する。
The
第4推定部406は、式12を用いて第1関節JTAA1の推定トルクτ1を演算する。さらに、第4推定部406は、式15を用いて第1関節JTAA1の推定変形量Δθ1を演算する。第4推定部406は、式17を用いて第1リンク101Aの推定変形量Δ1оを演算する。第4推定部406は、式19を用いて第1リンク101Aの推定変形量Δ1оを第1関節JTAA1の推定変形量ΔθL1に変換する。
The
(変形例2)
本変形例は、第1ロボットアーム100Bが3つの関節を備える点で、実施の形態と異なる。以下、本変形例について、実施の形態及び変形例1と異なる点を中心に説明し、実施の形態及び変形例1と同様の点の説明を適宜省略する。
(Variation 2)
This modification differs from the embodiment in that the
図7は、変形例2に係るロボット1Bの構成をモデル化した側面図である。図7に示すように、ロボット1Bは、実施の形態と同様の第2ロボットアーム200と、第1ロボットアーム100Bとを備える。第1ロボットアーム100Bは、リンク101B、102B、103B及び104Bと、関節JTAB1、JTAB2及びJTAB3とを備える。これに限定されないが、本変形例のリンク101B及び102Bはそれぞれ、実施の形態のリンク101及び102と同様の構成を有し、本変形例の第4リンク104Bは、実施の形態の第3リンク103と同様の構成を有する。本変形例の関節JTAB1及びJTAB2はそれぞれ、実施の形態の関節JTA1及びJTA2と同様の構成を有する。
Figure 7 is a side view modeling the configuration of
本変形例の第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
慣性要素推定部409は、式1を用いて、リンク101B、102B及び103Bそれぞれの慣性的特徴L1о、L2о及びL3оを演算する。
The inertial
慣性力推定部410は、式3を用いて、関節JTAB1、JTAB2及びJTAB3それぞれのジョイントスクリュM1о、M2о及びM3оを演算する。
The inertia
慣性力推定部410は、実施の形態の式6~式9の代わりに下記の式22~式30を用いて、関節JTAB1、JTAB2及びJTAB3それぞれの推定加速度θ1
’’、θ12
’’及びθ3
’’によってリンク101B、102B及び103Bに発生する関節起因慣性力F11о、F12о、F13о、F21о、F22о、F23о、F31о、F32о及びF33оを演算する。この演算において、慣性力推定部410は、関節JTAB1、JTAB2及びJTAB3それぞれの推定加速度θ1
’’、θ12
’’及びθ3
’’と、リンク101B、102B及び103Bそれぞれの慣性的特徴L1о、L2о及びL3оと、第2ロボットアーム200の慣性的特徴Laоと、関節JTAB1、JTAB2及びJTAB3それぞれのジョイントスクリュM1о、M2о及びM3оとを用いる。
The inertial
第3推定部405は、実施の形態の式10及び式11の代わりに下記の式31~式33を用いて、リンク101B、102B及び103Bそれぞれに発生する推定慣性力F1о、F2о及びF3оを演算する。
The
第4推定部406は、実施の形態の式12及び式13の代わりに下記の式34~式36を用いて、関節JTAB1、JTAB2及びJTAB3それぞれに作用する推定トルクτ1、τ2及びτ3を演算する。
The
第4推定部406は、実施の形態の式15及び式16の代わりに下記の式37~式39を用いて、関節JTAB1、JTAB2及びJTAB3それぞれの推定変形量Δθ1、Δθ2及びΔθ3を演算する。この演算において、第4推定部406は、関節JTAB1、JTAB2及びJTAB3それぞれの剛性kg1、kg2及びkg3を用いる。
The
第4推定部406は、実施の形態の式17及び式18の代わりに下記の式40~式42を用いて、リンク101B、102B及び103Bそれぞれの推定変形量Δ1о、Δ2о及びΔ3оを演算する。この演算において、第4推定部406は、リンク101B、102B及び103BそれぞれのコンプライアンスCI1о、CI2о及びCI3оを用いる。
The
第4推定部406は、式19を用いてリンク101B、102B及び103Bの推定変形量Δ1о、Δ2о及びΔ3оを関節JTAB1、JTAB2及びJTAB3の推定変形量ΔθL1、ΔθL2及びΔθL3に変換する。
The
(その他の実施の形態)
以上、本開示の実施の形態及び変形例について説明したが、本開示は、上記実施の形態及び変形例に限定されない。すなわち、本開示の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態及び変形例に施したもの、及び、異なる実施の形態及び変形例における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
Other Embodiments
Although the embodiment and the modified examples of the present disclosure have been described above, the present disclosure is not limited to the above embodiment and modified examples. In other words, various modifications and improvements are possible within the scope of the present disclosure. For example, the embodiment and modified examples to which various modifications have been applied, and forms constructed by combining components in different embodiments and modified examples are also included within the scope of the present disclosure.
例えば、実施の形態及び変形例において、第1ロボットアームの関節の数量が1、2又は3であるケースが例示されるが、第1ロボットアームの関節の数量は、4以上であってもよい。この場合も、制御装置300は、実施の形態及び変形例と同様の制御を行うことができる。
For example, in the embodiments and modifications, the number of joints in the first robot arm is 1, 2, or 3, but the number of joints in the first robot arm may be 4 or more. In this case, the
また、実施の形態及び変形例において、第1ロボットアーム及び第2ロボットアームの関節の自由度は1であるが、これに限定されない。第1ロボットアーム及び第2ロボットアームの関節の自由度が2以上であっても、制御装置300は、実施の形態及び変形例と同様の制御を行うことができる。
In addition, in the embodiment and the modified example, the degree of freedom of the joints of the first robot arm and the second robot arm is one, but this is not limited to this. Even if the degree of freedom of the joints of the first robot arm and the second robot arm is two or more, the
また、実施の形態及び変形例において、ロボット1が対象物Wを保持する作業を行うケースが例示されるが、ロボット1がいかなる作業を行う場合であっても、制御装置300は、実施の形態及び変形例と同様の制御を行うことができる。
In addition, in the embodiment and the modified example, a case is exemplified in which the
また、本開示の技術の各態様例は、以下のように挙げられる。本開示の一態様に係る制御装置は、第2ロボットアームを支持する少なくとも2つのリンクと、前記少なくとも2つのリンクを相互に接続する少なくとも1つの関節とを有する第1ロボットアームの制御装置であって、前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得し、前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作を推定する第1推定部と、前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得し、前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力を推定する第2推定部と、前記第1推定部によって推定される前記少なくとも1つの関節の動作と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する第3推定部と、前記第3推定部によって推定される力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を推定する第4推定部と、前記第4推定部によって推定される変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記変形量を補償するための前記第1動作指令の補正指令を生成し、前記補正指令を前記第1ロボットアームに指令する補正指令部とを含む。 Examples of each aspect of the technology of the present disclosure are given below. A control device according to one aspect of the present disclosure is a control device for a first robot arm having at least two links supporting a second robot arm and at least one joint connecting the at least two links to each other, comprising a first estimation unit that acquires a first operation command for causing the first robot arm to perform a first target operation, which is a target operation, and estimates the operation of the at least one joint when the first robot arm operates in accordance with the first operation command, and a second operation command for causing the second robot arm to perform a second target operation, which is a target operation, and estimates the operation of the at least one joint when the second robot arm operates in accordance with the second operation command, and a connection portion between the second robot arm and the link. a second estimation unit that estimates a force that the link receives from the second robot arm; a third estimation unit that estimates a force that the link receives based on the movement of the at least one joint estimated by the first estimation unit and the force estimated by the second estimation unit; a fourth estimation unit that estimates at least one of the deformation amount of the link and the deformation amount of the at least one joint based on the force estimated by the third estimation unit; and a correction command unit that generates a correction command for the first movement command to compensate for the deformation amount so as to move the connection part according to the first target movement based on the deformation amount estimated by the fourth estimation unit, and issues the correction command to the first robot arm.
上記態様によると、制御装置は、第1ロボットアームが第1目標動作を実行し且つ第2ロボットアームが第2目標動作を実行する場合に第1ロボットアームのリンク及び/又は関節に生じる変形量を推定する。上記変形量は、第1動作指令に従った接続部分の実際の動作と第1目標動作との間に差異を生じさせ得る。制御装置は、補正指令を第1ロボットアームに指令することによって、第1ロボットアームに、上記差異を低減した動作、つまり、変形量を補償した動作をさせることができる。よって、制御装置は、リンクの変形及び/又は関節の変形に起因して、接続部分が、意図しない目標位置からの位置ずれを生じること及び意図しない揺動を生じることを抑えることができる。従って、第2ロボットアームの基部である接続部分の位置の意図しない変動が抑えられる。 According to the above aspect, the control device estimates the amount of deformation occurring in the link and/or joint of the first robot arm when the first robot arm executes the first target motion and the second robot arm executes the second target motion. The amount of deformation may cause a difference between the actual motion of the connection part according to the first motion command and the first target motion. The control device can cause the first robot arm to perform a motion that reduces the difference, that is, a motion that compensates for the amount of deformation, by issuing a correction command to the first robot arm. Thus, the control device can prevent the connection part from being unintentionally displaced from the target position and from being unintentionally oscillated due to the deformation of the link and/or the deformation of the joint. Thus, unintentional fluctuations in the position of the connection part, which is the base of the second robot arm, are suppressed.
本開示の一態様に係る制御装置において、前記少なくとも2つのリンクは、基端リンクと、前記基端リンク及び前記第2ロボットアームと接続される第1リンクとを含み、前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節を含み、前記第1推定部は、前記第1関節の動作を推定し、前記第3推定部は、前記第1推定部によって推定される前記第1関節の動作と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定してもよい。 In a control device according to one aspect of the present disclosure, the at least two links include a base end link and a first link connected to the base end link and the second robot arm, the at least one joint includes a first joint connecting the first link to the base end link, the first estimator estimates the movement of the first joint, the third estimator estimates the force acting on the first link based on the movement of the first joint estimated by the first estimator and the force estimated by the second estimator, and the fourth estimator may estimate at least one of the deformation amount of the first link and the deformation amount of the first joint based on the force acting on the first link estimated by the third estimator.
上記態様によると、制御装置は、1つの関節を有する第1ロボットアームを制御し、第2ロボットアームの基部の位置の意図しない変動を抑えることができる。 According to the above aspect, the control device can control a first robot arm having one joint and suppress unintended fluctuations in the position of the base of the second robot arm.
本開示の一態様に係る制御装置において、前記少なくとも2つのリンクは、基端リンクと、前記基端リンクと接続される第1リンクと、前記第2ロボットアームと接続される第2リンクとを含み、前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節と、前記第2リンクを前記第1リンクに接続する第2関節とを含み、前記第1推定部は、前記第1関節及び前記第2関節の動作を推定し、前記第3推定部は、前記第1推定部によって推定される前記第1関節及び前記第2関節の動作と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、前記第3推定部は、前記第1推定部によって推定される前記第1関節及び前記第2関節の動作と、前記第2推定部によって推定される力とに基づき、前記第2リンクが受ける力を推定し、前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定し、前記第4推定部は、前記第3推定部によって推定される前記第2リンクが受ける力に基づき、前記第2リンクの変形量と前記第2関節の変形量とのうちの少なくとも一方を推定してもよい。 In a control device according to one aspect of the present disclosure, the at least two links include a base end link, a first link connected to the base end link, and a second link connected to the second robot arm, the at least one joint includes a first joint connecting the first link to the base end link and a second joint connecting the second link to the first link, the first estimator estimates the movements of the first joint and the second joint, and the third estimator estimates the movements of the first joint and the second joint based on the movements of the first joint and the second joint estimated by the first estimator and the force estimated by the second estimator. The third estimation unit estimates the force that the second link receives based on the movements of the first joint and the second joint estimated by the first estimation unit and the force estimated by the second estimation unit, the fourth estimation unit estimates at least one of the deformation amount of the first link and the deformation amount of the first joint based on the force that the first link receives estimated by the third estimation unit, and the fourth estimation unit may estimate at least one of the deformation amount of the second link and the deformation amount of the second joint based on the force that the second link receives estimated by the third estimation unit.
上記態様によると、制御装置は、2つの関節を有する第1ロボットアームを制御し、第2ロボットアームの基部の位置の意図しない変動を抑えることができる。制御装置は、第1リンクが受ける力及び第2リンクが受ける力それぞれの推定に、第1関節の推定動作及び第2関節の推定動作の全てを用いる。よって、各リンクが受ける力の推定精度が向上し、それにより、各リンク及び各関節の変形量の推定精度が向上する。 According to the above aspect, the control device controls a first robot arm having two joints, and can suppress unintended fluctuations in the position of the base of the second robot arm. The control device uses all of the estimated movements of the first joint and the second joint to estimate the forces acting on the first link and the second link, respectively. This improves the accuracy of estimating the forces acting on each link, thereby improving the accuracy of estimating the amount of deformation of each link and each joint.
本開示の一態様に係る制御装置は、前記第1推定部によって推定される前記少なくとも1つの関節の動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力を推定する慣性力推定部をさらに含み、前記第3推定部は、前記慣性力推定部によって推定される慣性力と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定してもよい。 The control device according to one aspect of the present disclosure may further include an inertial force estimation unit that estimates an inertial force generated in the link due to the movement of the at least one joint based on the movement of the at least one joint estimated by the first estimation unit, and the third estimation unit may estimate a force that the link receives based on the inertial force estimated by the inertial force estimation unit and the force estimated by the second estimation unit.
上記態様によると、制御装置は、関節の動作に起因して発生するリンクの慣性力を推定し、推定されたリンクの慣性力を用いて当該リンクが受ける力を推定する。よって、リンクが受ける力の推定精度が向上する。 According to the above aspect, the control device estimates the inertial force of the link generated due to the movement of the joint, and estimates the force acting on the link using the estimated inertial force of the link. This improves the accuracy of estimating the force acting on the link.
本開示の一態様に係る制御装置は、前記リンクの位置を推定する第1位置推定部と、前記接続部分の位置を推定する第2位置推定部と、前記リンクの慣性的特徴と前記第2ロボットアームの慣性的特徴とを推定する慣性要素推定部とをさらに含み、前記リンクの慣性的特徴は、前記リンクの慣性モーメント及び質量を要素として含み、前記第2ロボットアームの慣性的特徴は、前記第2ロボットアームの慣性モーメント及び質量を要素として含み、前記慣性力推定部は、前記リンクの慣性的特徴と、前記第2ロボットアームの慣性的特徴と、前記少なくとも1つの関節の加速度と、前記少なくとも1つの関節のジョイントスクリュとを用いて、前記リンクに発生する前記慣性力を推定し、前記ジョイントスクリュは、前記少なくとも1つの関節の向きを示す要素を含む、前記少なくとも1つの関節の状態を示す特徴であってもよい。 The control device according to one aspect of the present disclosure further includes a first position estimation unit that estimates the position of the link, a second position estimation unit that estimates the position of the connection part, and an inertial element estimation unit that estimates the inertial characteristics of the link and the inertial characteristics of the second robot arm, the inertial characteristics of the link include the inertial moment and mass of the link as elements, the inertial characteristics of the second robot arm include the inertial moment and mass of the second robot arm as elements, the inertial force estimation unit estimates the inertial force generated in the link using the inertial characteristics of the link and the inertial characteristics of the second robot arm, the acceleration of the at least one joint, and a joint screw of the at least one joint, and the joint screw may be a feature indicating the state of the at least one joint including an element indicating the orientation of the at least one joint.
上記態様によると、慣性的特徴は、慣性モーメントの要素と質量の要素とを含む。制御装置は、リンク及び第2ロボットアームの慣性的特徴を用いて、関節の動作に起因して発生するリンクに発生する慣性力を推定する。よって、当該慣性力の推定精度が向上する。 According to the above aspect, the inertial characteristics include a moment of inertia element and a mass element. The control device uses the inertial characteristics of the link and the second robot arm to estimate the inertial force generated in the link due to the movement of the joint. This improves the accuracy of estimating the inertial force.
本開示の一態様に係るロボットは、本開示の一態様に係る制御装置と、前記第1ロボットアームと、前記第2ロボットアームとを備える。上記態様によると、本開示の一態様に係る制御装置と同様の効果が得られる。ロボットは、第2ロボットアームの基部の位置の意図しない変動を抑えつつ、第1ロボットアーム及び第2ロボットアームに目標動作をさせることができる。 A robot according to an embodiment of the present disclosure includes a control device according to an embodiment of the present disclosure, the first robot arm, and the second robot arm. According to the above embodiment, the same effect as the control device according to an embodiment of the present disclosure can be obtained. The robot can cause the first robot arm and the second robot arm to perform a target motion while suppressing unintended fluctuations in the position of the base of the second robot arm.
本開示の一態様に係るロボットにおいて、前記制御装置は、前記第1動作指令及び前記第2動作指令を生成し、前記第1ロボットアーム及び前記第2ロボットアームの動作を制御するように構成されてもよい。上記態様によると、制御装置は、ロボットコントローラとして機能することができる。つまり、ロボットコントローラは、第2ロボットアームの基部の位置の意図しない変動を抑えつつ、第1ロボットアーム及び第2ロボットアームに目標動作をさせることができる。 In a robot according to one aspect of the present disclosure, the control device may be configured to generate the first operation command and the second operation command and control the operation of the first robot arm and the second robot arm. According to the above aspect, the control device can function as a robot controller. In other words, the robot controller can cause the first robot arm and the second robot arm to perform a target operation while suppressing unintended fluctuations in the position of the base of the second robot arm.
また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。 In addition, all of the ordinal numbers, quantities, and other numbers used above are provided as examples to specifically explain the technology of the present disclosure, and the present disclosure is not limited to the exemplified numbers. In addition, the connection relationships between the components are provided as examples to specifically explain the technology of the present disclosure, and the connection relationships that realize the functions of the present disclosure are not limited to these.
また、機能ブロック図におけるブロックの分割は一例であり、複数のブロックを一つのブロックとして実現する、一つのブロックを複数に分割する、及び/又は、一部の機能を他のブロックに移してもよい。また、類似する機能を有する複数のブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。 The division of blocks in the functional block diagram is just one example, and multiple blocks may be realized as one block, one block may be divided into multiple blocks, and/or some functions may be transferred to other blocks. Furthermore, the functions of multiple blocks having similar functions may be processed in parallel or in a time-shared manner by a single piece of hardware or software.
1,1A,1B ロボット
100,100A,100B 第1ロボットアーム
101,101A,101B 第1リンク
102,102A,102B 第2リンク
103 リンク(基端リンク)
103B 第3リンク
104B 第4リンク(基端リンク)
110 接続部分(界面)
200 第2ロボットアーム
300 制御装置
300A 情報処理装置
300B ロボットコントローラ
403 第1推定部
404 第2推定部
405 第3推定部
406 第4推定部
407 第1位置推定部
408 第2位置推定部
409 慣性要素推定部
410 慣性力推定部
411 補正指令部
JTA1,JTAA1,JTAB1 第1関節
JTA2,JTAB2 第2関節
JTAB3 第3関節
1, 1A,
103B
110 Connection part (interface)
200
Claims (7)
前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得し、前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作を推定する第1推定部と、
前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得し、前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力を推定する第2推定部と、
前記第1推定部によって推定される前記少なくとも1つの関節の動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力を推定する慣性力推定部と、
前記慣性力推定部によって推定される慣性力と、前記第2推定部によって推定される力とに基づき、前記リンクが受ける力を推定する第3推定部と、
前記第3推定部によって推定される力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を推定する第4推定部と、
前記第4推定部によって推定される変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記変形量を補償するための前記第1動作指令の補正指令を生成し、前記補正指令を前記第1ロボットアームに指令する補正指令部とを含む
制御装置。 A control device for a first robot arm having at least two links supporting a second robot arm and at least one joint interconnecting the at least two links, comprising:
a first estimation unit that acquires a first movement command for causing the first robot arm to perform a first target movement that is a target movement, and estimates a movement of the at least one joint when the first robot arm moves in accordance with the first movement command;
a second estimation unit that acquires a second operation command for causing the second robot arm to perform a second target operation that is a target operation, and estimates a force that is applied from the second robot arm to a connection portion between the second robot arm and the link when the second robot arm operates in accordance with the second operation command;
an inertial force estimator that estimates an inertial force generated in the link due to movement of the at least one joint, based on the movement of the at least one joint estimated by the first estimator;
a third estimation unit that estimates a force acting on the link based on the inertial force estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
a fourth estimator that estimates at least one of a deformation amount of the link and a deformation amount of the at least one joint based on the force estimated by the third estimator;
a correction command unit that generates a correction command for the first movement command to compensate for the amount of deformation so as to move the connection portion in accordance with the first target movement, based on the amount of deformation estimated by the fourth estimator, and issues the correction command to the first robot arm.
前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節を含み、
前記第1推定部は、前記第1関節の動作を推定し、
前記慣性力推定部は、前記第1推定部によって推定される前記第1関節の動作に基づき、前記第1関節が動作することによって前記第1リンクに発生する慣性力を推定し、
前記第3推定部は、前記慣性力推定部によって推定される前記第1リンクに発生する慣性力と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定する
請求項1に記載の制御装置。 the at least two links include a base end link and a first link connected to the base end link and the second robot arm;
the at least one joint includes a first joint connecting the first link to the base link;
The first estimator estimates a motion of the first joint,
the inertial force estimator estimates, based on the movement of the first joint estimated by the first estimator, a force of inertia generated in the first link due to the movement of the first joint;
the third estimation unit estimates a force acting on the first link based on the inertial force acting on the first link estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
The control device according to claim 1 , wherein the fourth estimator estimates at least one of a deformation amount of the first link and a deformation amount of the first joint based on the force acting on the first link estimated by the third estimator.
前記少なくとも1つの関節は、前記第1リンクを前記基端リンクに接続する第1関節と、前記第2リンクを前記第1リンクに接続する第2関節とを含み、
前記第1推定部は、前記第1関節及び前記第2関節の動作を推定し、
前記慣性力推定部は、前記第1推定部によって推定される前記第1関節及び前記第2関節の動作に基づき、前記第1関節及び前記第2関節が動作することによって前記第1リンク及び前記第2リンクに発生する慣性力を推定し、
前記第3推定部は、前記慣性力推定部によって推定される前記第1リンクに発生する慣性力と、前記第2推定部によって推定される力とに基づき、前記第1リンクが受ける力を推定し、
前記第3推定部は、前記慣性力推定部によって推定される前記第2リンクに発生する慣性力と、前記第2推定部によって推定される力とに基づき、前記第2リンクが受ける力を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第1リンクが受ける力に基づき、前記第1リンクの変形量と前記第1関節の変形量とのうちの少なくとも一方を推定し、
前記第4推定部は、前記第3推定部によって推定される前記第2リンクが受ける力に基づき、前記第2リンクの変形量と前記第2関節の変形量とのうちの少なくとも一方を推定する
請求項1に記載の制御装置。 the at least two links include a base end link, a first link connected to the base end link, and a second link connected to the second robot arm;
the at least one joint includes a first joint connecting the first link to the base link and a second joint connecting the second link to the first link;
The first estimator estimates movements of the first joint and the second joint,
the inertial force estimator estimates, based on the movements of the first joint and the second joint estimated by the first estimator, inertial forces generated in the first link and the second link due to movements of the first joint and the second joint;
the third estimation unit estimates a force acting on the first link based on the inertial force acting on the first link estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
the third estimation unit estimates a force acting on the second link based on the inertial force occurring in the second link estimated by the inertial force estimation unit and the force estimated by the second estimation unit;
the fourth estimator estimates at least one of a deformation amount of the first link and a deformation amount of the first joint based on the force acting on the first link estimated by the third estimator;
The control device according to claim 1 , wherein the fourth estimator estimates at least one of a deformation amount of the second link and a deformation amount of the second joint based on the force acting on the second link estimated by the third estimator.
前記接続部分の位置を推定する第2位置推定部と、
前記リンクの慣性的特徴と前記第2ロボットアームの慣性的特徴とを推定する慣性要素推定部とをさらに含み、
前記リンクの慣性的特徴は、前記リンクの慣性モーメント及び質量を要素として含み、
前記第2ロボットアームの慣性的特徴は、前記第2ロボットアームの慣性モーメント及び質量を要素として含み、
前記慣性力推定部は、前記リンクの慣性的特徴と、前記第2ロボットアームの慣性的特徴と、前記少なくとも1つの関節の加速度と、前記少なくとも1つの関節のジョイントスクリュとを用いて、前記リンクに発生する前記慣性力を推定し、
前記ジョイントスクリュは、前記少なくとも1つの関節の向きを示す要素を含む、前記少なくとも1つの関節の状態を示す特徴である
請求項1~3のいずれか一項に記載の制御装置。 a first position estimation unit that estimates a position of the link;
A second position estimation unit that estimates a position of the connection portion;
an inertial element estimator that estimates an inertial characteristic of the link and an inertial characteristic of the second robot arm,
The inertial characteristics of the link include a moment of inertia and a mass of the link;
The inertial characteristics of the second robot arm include a moment of inertia and a mass of the second robot arm as elements;
the inertial force estimator estimates the inertial force generated in the link by using an inertial characteristic of the link, an inertial characteristic of the second robot arm, an acceleration of the at least one joint, and a joint screw of the at least one joint;
A control device according to any one of claims 1 to 3, wherein the joint screw is a feature indicative of a state of the at least one joint, the feature including an element indicative of an orientation of the at least one joint.
前記第1ロボットアームと、
前記第2ロボットアームとを備える
ロボット。 A control device according to any one of claims 1 to 4 ;
The first robot arm;
The robot comprises the second robot arm.
請求項5に記載のロボット。 The robot of claim 5 , wherein the control device is configured to generate the first movement command and the second movement command to control the movement of the first robot arm and the second robot arm.
前記第1ロボットアームに目標動作である第1目標動作をさせるための第1動作指令を取得することと、Obtaining a first motion command for causing the first robot arm to perform a first target motion that is a target motion;
前記第1ロボットアームが前記第1動作指令に従って動作する場合の前記少なくとも1つの関節の動作である推定関節動作を推定することと、Estimating an estimated joint motion, which is a motion of the at least one joint when the first robot arm moves in accordance with the first motion command;
前記第2ロボットアームに目標動作である第2目標動作をさせるための第2動作指令を取得することと、Obtaining a second movement command for causing the second robot arm to perform a second target movement that is a target movement;
前記第2ロボットアームが前記第2動作指令に従って動作する場合に、前記第2ロボットアームと前記リンクとの接続部分が前記第2ロボットアームから受ける力である推定接続部分力を推定することと、estimating an estimated connection part force, which is a force that a connection part between the second robot arm and the link receives from the second robot arm when the second robot arm operates in accordance with the second movement command;
前記推定関節動作に基づき、前記少なくとも1つの関節が動作することによって前記リンクに発生する慣性力である推定慣性力を推定することと、estimating an estimated inertial force, which is an inertial force generated in the link due to the motion of the at least one joint, based on the estimated joint motion;
前記推定慣性力と、前記推定接続部分力とに基づき、前記リンクが受ける力である推定リンク力を推定することと、estimating an estimated link force, which is a force acting on the link, based on the estimated inertial force and the estimated connection portion force;
前記推定リンク力に基づき、前記リンクの変形量と、前記少なくとも1つの関節の変形量とのうちの少なくとも一方を含む推定変形量を推定することと、estimating an estimated deformation amount including at least one of a deformation amount of the link and a deformation amount of the at least one joint based on the estimated link force;
前記推定変形量に基づき、前記第1目標動作に従って前記接続部分を移動させるように前記推定変形量を補償するための前記第1動作指令の補正指令を生成することと、generating a correction command for the first motion command to compensate for the estimated deformation amount based on the estimated deformation amount so as to move the connection portion in accordance with the first target motion;
前記補正指令を前記第1ロボットアームに指令することと、を含むand issuing the correction command to the first robot arm.
制御方法。Control methods.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021024980A JP7604264B2 (en) | 2021-02-19 | 2021-02-19 | Control device, robot and control method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021024980A JP7604264B2 (en) | 2021-02-19 | 2021-02-19 | Control device, robot and control method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2022127061A JP2022127061A (en) | 2022-08-31 |
| JP7604264B2 true JP7604264B2 (en) | 2024-12-23 |
Family
ID=83060324
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2021024980A Active JP7604264B2 (en) | 2021-02-19 | 2021-02-19 | Control device, robot and control method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7604264B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102883932B1 (en) * | 2023-08-22 | 2025-11-07 | 한국로봇융합연구원 | Method and apparatus for physical properties of various objects using ft sensor |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005242794A (en) | 2004-02-27 | 2005-09-08 | Toshiba Corp | Robot control apparatus and robot control method |
| JP2017056544A (en) | 2015-09-17 | 2017-03-23 | 株式会社デンソーウェーブ | Robot control apparatus and robot control method |
| JP2017087375A (en) | 2015-11-13 | 2017-05-25 | 株式会社安川電機 | Robot system and robot control method |
| US20190009410A1 (en) | 2016-01-11 | 2019-01-10 | Kuka Deutschland Gmbh | Determining An Orientation Of A Robot Relative To The Direction Of Gravity |
-
2021
- 2021-02-19 JP JP2021024980A patent/JP7604264B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005242794A (en) | 2004-02-27 | 2005-09-08 | Toshiba Corp | Robot control apparatus and robot control method |
| JP2017056544A (en) | 2015-09-17 | 2017-03-23 | 株式会社デンソーウェーブ | Robot control apparatus and robot control method |
| JP2017087375A (en) | 2015-11-13 | 2017-05-25 | 株式会社安川電機 | Robot system and robot control method |
| US20190009410A1 (en) | 2016-01-11 | 2019-01-10 | Kuka Deutschland Gmbh | Determining An Orientation Of A Robot Relative To The Direction Of Gravity |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2022127061A (en) | 2022-08-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN101362335B (en) | Robot program adjusting system | |
| EP3538328B1 (en) | System and method for instructing a robot | |
| JP3808321B2 (en) | Robot controller | |
| KR101498835B1 (en) | Control method for seven-shaft multi-joint robot, control program, and robot control device | |
| CN112703090B (en) | Robot control device, robot control method and storage medium | |
| KR102312368B1 (en) | System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method | |
| Fu et al. | Kinematic accuracy research of a novel six-degree-of-freedom parallel robot with three legs | |
| KR20130066689A (en) | Control device and teaching method for seven-shaft multi-joint robot | |
| WO2024216564A1 (en) | Method for calibrating articulated robot, computer device and readable storage medium | |
| JP2018030210A (en) | Simulation device, control system, robot system, simulation method, program, and recording medium | |
| JP7140508B2 (en) | WORKING DEVICE USING PARALLEL LINK MECHANISM AND CONTROL METHOD THEREOF | |
| Oh et al. | Estimation and compensation of cutting force induced position error in robot machining system | |
| US11613004B2 (en) | Deflection amount estimating device, robot control device and method of estimating amount of deflection | |
| JP7604264B2 (en) | Control device, robot and control method | |
| JP6896824B2 (en) | Robot devices, robot systems, control methods for robot devices, manufacturing methods for articles using robot devices, information processing devices, information processing methods, control programs and recording media | |
| JP2016221653A (en) | Robot control device and robot system | |
| JP2020075329A (en) | Simulation device, control system, robot system, simulation method, program and recording medium | |
| JP2021186929A (en) | Control method for multi-axis robot | |
| Pomares et al. | Dynamic visual servo control of a 4-axis joint tool to track image trajectories during machining complex shapes | |
| Bi | Development and Control of a 5‐Axis Reconfigurable Machine Tool | |
| CN118721213A (en) | Robot admittance control method, device, equipment and storage medium | |
| JP7790934B2 (en) | Control method, robot system, article manufacturing method, control program, and recording medium | |
| Glavonjic et al. | Parallel structured milling machines with long X travel | |
| US11712803B2 (en) | Teaching method | |
| Slavković et al. | Compliance analysis of an articulated machining robot |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240215 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240828 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240910 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241004 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20241210 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20241211 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7604264 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |