JP2017119321A - 制御装置、及びロボットシステム - Google Patents
制御装置、及びロボットシステム Download PDFInfo
- Publication number
- JP2017119321A JP2017119321A JP2015255908A JP2015255908A JP2017119321A JP 2017119321 A JP2017119321 A JP 2017119321A JP 2015255908 A JP2015255908 A JP 2015255908A JP 2015255908 A JP2015255908 A JP 2015255908A JP 2017119321 A JP2017119321 A JP 2017119321A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- coordinate system
- control device
- unit
- imaging 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.)
- Pending
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】機械的なキャリブレーションを行うことなく、第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて高い精度で動作させることができる制御装置を提供すること。
【解決手段】撮像部により撮像した第1画像および第1ロボット座標系に基づいて第1ロボットを動作させ、前記第1ロボット座標系とは異なる第2ロボット座標系および前記撮像部により撮像した第2画像に基づいて第2ロボットを動作させる、制御装置。
【選択図】図3
【解決手段】撮像部により撮像した第1画像および第1ロボット座標系に基づいて第1ロボットを動作させ、前記第1ロボット座標系とは異なる第2ロボット座標系および前記撮像部により撮像した第2画像に基づいて第2ロボットを動作させる、制御装置。
【選択図】図3
Description
この発明は、制御装置、及びロボットシステムに関する。
撮像部により撮像した撮像画像に基づいてロボットに作業を行わせる制御装置の研究や開発が行われている。
これに関し、カメラとロボットアームをそれぞれ1台ずつ含むロボットシステムにおいて、当該カメラによって撮像された画像に基づいて、ロボットアームを基準としたワークの位置及び姿勢情報を特定し、ロボットアームを制御するロボットコントローラーが知られている(特許文献1参照)。
しかしながら、このようなロボットコントローラーでは、1台のカメラによって撮像された画像に基づいて2台以上のロボットアームを制御することは、これらのロボットアーム同士の機械的なキャリブレーションを行わない限り困難であった。また、これらのロボットアーム同士の機械的なキャリブレーションは、手間が掛かることに加えて、所望の精度を出すことが困難であった。機械的なキャリブレーションは、ここでは、複数のロボットアームのそれぞれの設置位置を調整する(変化させる)ことによる複数のロボットアームの相対的な位置及び姿勢の調整のことである。
上記課題の少なくとも一つを解決するために本発明の一態様は、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、前記第1ロボット座標系とは異なる第2ロボット座標系及び前記撮像部により撮像した第2画像に基づいて第2ロボットを動作させる、制御装置である。
この構成により、制御装置は、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第1ロボット座標系とは異なる第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、制御装置は、機械的なキャリブレーションを行うことなく、第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて高い精度で動作させることができる。
この構成により、制御装置は、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第1ロボット座標系とは異なる第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、制御装置は、機械的なキャリブレーションを行うことなく、第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて高い精度で動作させることができる。
また、本発明の他の態様は、制御装置において、前記第1画像と前記第2画像は同じ画像である、構成が用いられてもよい。
この構成により、制御装置は、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第2ロボット座標系及び当該第1画像に基づいて第2ロボットを動作させる。これにより、制御装置は、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した第1画像に基づいて動作させることができる。
この構成により、制御装置は、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第2ロボット座標系及び当該第1画像に基づいて第2ロボットを動作させる。これにより、制御装置は、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した第1画像に基づいて動作させることができる。
また、本発明の他の態様は、制御装置において、前記撮像部は、前記第1ロボットに設けられている、構成が用いられてもよい。
この構成により、制御装置は、第1ロボットに設けられた撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、制御装置は、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを第1ロボットに設けられた撮像部により撮像した画像に基づいて動作させることができる。
この構成により、制御装置は、第1ロボットに設けられた撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、制御装置は、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを第1ロボットに設けられた撮像部により撮像した画像に基づいて動作させることができる。
また、本発明の他の態様は、制御装置において、前記撮像部を移動させることにより、前記第1ロボット座標系と前記撮像部の撮像部座標系とを対応付けるとともに、前記第2ロボット座標系と前記撮像部座標系とを対応付ける、構成が用いられてもよい。
この構成により、制御装置は、撮像部を移動させることにより、第1ロボット座標系と撮像部の撮像部座標系とを対応付けるとともに、第2ロボット座標系と撮像部座標系とを対応付ける。これにより、制御装置は、第1画像及び第1ロボット座標系に基づいて第1ロボットを高い精度で動作させることができるとともに、第2画像及び第2ロボット座標系に基づいて第2ロボットを高い精度で動作させることができる。
この構成により、制御装置は、撮像部を移動させることにより、第1ロボット座標系と撮像部の撮像部座標系とを対応付けるとともに、第2ロボット座標系と撮像部座標系とを対応付ける。これにより、制御装置は、第1画像及び第1ロボット座標系に基づいて第1ロボットを高い精度で動作させることができるとともに、第2画像及び第2ロボット座標系に基づいて第2ロボットを高い精度で動作させることができる。
また、本発明の他の態様は、制御装置において、前記撮像部を移動させることにより、前記第1ロボット座標系と前記撮像部の撮像部座標系とを対応付ける、構成が用いられてもよい。
この構成により、制御装置は、撮像部を移動させることにより、第1ロボット座標系と撮像部の撮像部座標系とを対応付ける。これにより、制御装置は、第1画像及び第1ロボット座標系に基づいて、第1ロボットを高い精度で動作させることができる。
この構成により、制御装置は、撮像部を移動させることにより、第1ロボット座標系と撮像部の撮像部座標系とを対応付ける。これにより、制御装置は、第1画像及び第1ロボット座標系に基づいて、第1ロボットを高い精度で動作させることができる。
また、本発明の他の態様は、制御装置において、前記撮像部を固定して前記第2ロボットにより対象物を移動させることにより、前記第2ロボット座標系と前記撮像部座標系とを対応付ける、構成が用いられてもよい。
この構成により、制御装置は、撮像部を固定して第2ロボットにより対象物を移動させることにより、第2ロボット座標系と撮像部座標系とを対応付ける。これにより、制御装置は、第2画像及び第2ロボット座標系に基づいて、第2ロボットを高い精度で動作させることができる。
この構成により、制御装置は、撮像部を固定して第2ロボットにより対象物を移動させることにより、第2ロボット座標系と撮像部座標系とを対応付ける。これにより、制御装置は、第2画像及び第2ロボット座標系に基づいて、第2ロボットを高い精度で動作させることができる。
また、本発明の他の態様は、前記第1ロボットと、前記第2ロボットと、上記に記載の制御装置と、を備えるロボットシステムである。
この構成により、ロボットシステムは、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第1ロボット座標系とは異なる第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、ロボットシステムは、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて動作させることができる。
この構成により、ロボットシステムは、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第1ロボット座標系とは異なる第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、ロボットシステムは、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて動作させることができる。
以上により、制御装置、及びロボットシステムは、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第1ロボット座標系とは異なる第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、制御装置、及びロボットシステムは、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて動作させることができる。
<実施形態>
以下、本発明の実施形態について、図面を参照して説明する。
以下、本発明の実施形態について、図面を参照して説明する。
<ロボットシステムの構成>
まず、ロボットシステム1の構成について説明する。
図1は、実施形態に係るロボットシステム1の構成の一例を示す図である。ロボットシステム1は、第1ロボット11と、第2ロボット12と、制御装置30を備える。
まず、ロボットシステム1の構成について説明する。
図1は、実施形態に係るロボットシステム1の構成の一例を示す図である。ロボットシステム1は、第1ロボット11と、第2ロボット12と、制御装置30を備える。
第1ロボット21は、スカラロボットである。なお、第1ロボット11は、スカラロボットに代えて、直角座標ロボットや単腕ロボット、複腕ロボット等の他のロボットであってもよい。直角座標ロボットは、例えば、ガントリロボットである。
図1に示した例において、第1ロボット11は、床面に設置されている。なお、第1ロボット11は、床面に代えて、壁面や天井面、テーブルや治具、台の上面等に設置される構成であってもよい。以下では、説明の便宜上、第1ロボット11が設置されている面に直交する方向であって、第1ロボット11から当該面に向かう方向を下と称し、当該方向と反対の方向を上と称して説明する。第1ロボット11が設置されている面に直交する方向であって、第1ロボット11の重心から当該面に向かう方向は、例えば、ワールド座標系におけるZ軸の負の方向、又はロボット11のロボット座標系RCにおけるZ軸の負の方向である。
第1ロボット11は、床面に設置された支持台B1と、支持台B1に第1軸AX11周りに回動可能に支持された第1アームA11と、第1アームA11に第2軸AX12周りに回動可能に支持された第2アームA12と、第2アームA12に第3軸AX13周りに回動可能かつ第3軸AX13の軸方向に並進可能に支持されたシャフトS1を備える。
シャフトS1は、円柱形状の軸体である。シャフトS1の周表面には、図示しないボールねじ溝とスプライン溝とがそれぞれ形成される。シャフトS1は、第2アームA12の端部のうちの第1アームA11と反対側の端部を上下に貫通し、設けられている。また、シャフトS1には、この一例において、シャフトS1の端部のうちの上側の端部に当該円柱の半径よりも大きな半径の円盤形状のフランジが設けられている。当該円柱の中心軸は、当該フランジの中心軸と一致している。
シャフトS1は、円柱形状の軸体である。シャフトS1の周表面には、図示しないボールねじ溝とスプライン溝とがそれぞれ形成される。シャフトS1は、第2アームA12の端部のうちの第1アームA11と反対側の端部を上下に貫通し、設けられている。また、シャフトS1には、この一例において、シャフトS1の端部のうちの上側の端部に当該円柱の半径よりも大きな半径の円盤形状のフランジが設けられている。当該円柱の中心軸は、当該フランジの中心軸と一致している。
シャフトS1のフランジが設けられていない方の端部には、エンドエフェクターの取り付けが可能な第1作業部F1が設けられている。以下では、一例として、第1作業部F1を下から上に向かって見た場合における第1作業部F1の形状が、シャフトS1の中心軸と中心が一致する円である場合について説明する。なお、当該形状は、円に代えて、他の形状であってもよい。
第1作業部F1の位置には、第1作業部F1とともに動くTCP(Tool Center Point)である制御点T1が設定される。第1作業部F1の位置は、第1作業部F1を下から上に向かって見た場合の第1作業部F1の形状である円の中心の位置である。なお、制御点T1が設定される位置は、第1作業部F1の位置に代えて、第1作業部F1に対応付けられた他の位置であってもよい。この一例において、当該円の中心の位置は、第1作業部F1の位置を表す。なお、第1作業部F1の位置は、これに代えて、他の位置によって表される構成であってもよい。
制御点T1には、制御点T1の位置及び姿勢(すなわち、第1作業部F1の位置及び姿勢)を表す三次元局所座標系である制御点座標系TC1が設定される。制御点T1の位置及び姿勢は、制御点T1の第1ロボット座標系RC1における位置及び姿勢のことである。第1ロボット座標系RC1は、第1ロボット11のロボット座標系のことである。制御点座標系TC1の原点は、制御点T1の位置、すなわち第1作業部F1の位置を表す。また、制御点座標系TC1の各座標軸の方向は、制御点T1の姿勢、すなわち第1作業部F1の姿勢を表す。以下では、一例として、制御点座標系TC1におけるZ軸と、シャフトS1の中心軸とを一致させている場合について説明する。なお、制御点座標系TC1におけるZ軸は、必ずしもシャフトS1の中心軸と一致している必要はない。
支持台B1は、床面に固定されている。
第1アームA11は、第1軸AX11周りに回動するので、水平方向に移動する。水平方向は、この一例において、上下方向と直交する方向である。水平方向は、例えば、ワールド座標系におけるXY平面に沿った方向、又は第1ロボット11のロボット座標系である第1ロボット座標系RC1におけるXY平面に沿った方向である。
第2アームA12は、第2軸AX2周りに回動するので、水平方向に移動する。第2アームA12は、図示しない上下動アクチュエーターと回動アクチュエーターとを備えてシャフトS1を支持する。上下動アクチュエーターは、シャフトS1のボールねじ溝の外周部に設けられたボールねじナットをタイミングベルト等で回動させることにより、シャフトS1を上下方向に移動(昇降)させる。回動アクチュエーターは、シャフトS1のスプライン溝の外周部に設けられたボールスプラインナットをタイミングベルト等で回動させることにより、シャフトS1の中心軸周りにシャフトS1を回動させる。
撮像部20は、例えば、集光された光を電気信号に変換する撮像素子であるCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)等を備えたカメラである。この一例において、撮像部20は、第1ロボット11が作業を行うことが可能な領域を含む範囲を撮像可能な位置に設置される。なお、撮像部20は、これに代えて、第2ロボット12が備える構成であってもよく、第1ロボット11及び第2ロボット12と別体としてロボットシステム1が備える構成であってもよい。以下では、一例として、撮像部20が上から下に向かって当該範囲を撮像するように第1ロボット11に設けられている場合について説明する。なお、撮像部20は、これに代えて、他の方向に向かって当該範囲を撮像する構成であってもよい。
第1ロボット11が備える各アクチュエーター及び撮像部20のそれぞれは、ケーブルによって制御装置30と通信可能に接続されている。これにより、当該各アクチュエーター及び撮像部20のそれぞれは、制御装置30から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。また、当該アクチュエーター及び撮像部20のうちの一部又は全部は、Wi−Fi(登録商標)等の通信規格により行われる無線通信によって制御装置30と接続される構成であってもよい。
第2ロボット12は、スカラロボットである。なお、第2ロボット12は、スカラロボットに代えて、直角座標ロボットや単腕ロボット、複腕ロボット等の他のロボットであってもよい。
図1に示した例において、第2ロボット12は、第1ロボット11が設置されている床面のうちの第1ロボット11が設置されている位置と異なる位置に設置されている。また第2ロボット12は、第1ロボット11が作業を行うことが可能な領域を含む図1に示した領域ARにおいて作業が行える位置に設置される。なお、第2ロボット12は、当該床面に代えて、他の床面や壁面、天井面、テーブルや治具、台の上面等に設置される構成であってもよい。
第2ロボット12は、床面に設置された支持台B2と、支持台B2に第1軸AX21周りに回動可能に支持された第1アームA21と、第1アームA21に第2軸AX22周りに回動可能に支持された第2アームA22と、第2アームA22に第3軸AX23周りに回動可能かつ第3軸AX23の軸方向に並進可能に支持されたシャフトS2を備える。
シャフトS2は、円柱形状の軸体である。シャフトS2の周表面には、図示しないボールねじ溝とスプライン溝とがそれぞれ形成される。シャフトS2は、第2アームA22の端部のうちの第1アームA21と反対側の端部を上下に貫通し、設けられている。また、シャフトS2には、この一例において、シャフトS2の端部のうちの上側の端部に当該円柱の半径よりも大きな半径の円盤形状のフランジが設けられている。当該円柱の中心軸は、当該フランジの中心軸と一致している。
シャフトS2は、円柱形状の軸体である。シャフトS2の周表面には、図示しないボールねじ溝とスプライン溝とがそれぞれ形成される。シャフトS2は、第2アームA22の端部のうちの第1アームA21と反対側の端部を上下に貫通し、設けられている。また、シャフトS2には、この一例において、シャフトS2の端部のうちの上側の端部に当該円柱の半径よりも大きな半径の円盤形状のフランジが設けられている。当該円柱の中心軸は、当該フランジの中心軸と一致している。
シャフトS2のフランジが設けられていない方の端部には、エンドエフェクターの取り付けが可能な第2作業部F2が設けられている。以下では、一例として、第2作業部F2を下から上に向かって見た場合における第2作業部F2の形状が、シャフトS2の中心軸と中心が一致する円である場合について説明する。なお、当該形状は、円に代えて、他の形状であってもよい。
第2作業部F2の位置には、第2作業部F2とともに動くTCPである制御点T2が設定される。第2作業部F2の位置は、第2作業部F2を下から上に向かって見た場合の第2作業部F2の形状である円の中心の位置である。なお、制御点T2が設定される位置は、第2作業部F2の位置に代えて、第2作業部F2に対応付けられた他の位置であってもよい。この一例において、当該円の中心の位置は、第2作業部F2の位置を表す。なお、第2作業部F2の位置は、これに代えて、他の位置によって表される構成であってもよい。
制御点T2には、制御点T2の位置及び姿勢(すなわち、第2作業部F2の位置及び姿勢)を表す三次元局所座標系である制御点座標系TC2が設定される。制御点T2の位置及び姿勢は、制御点T2の第2ロボット座標系RC2における位置及び姿勢のことである。第2ロボット座標系RC2は、第2ロボット12のロボット座標系のことである。制御点座標系TC2の原点は、制御点T2の位置、すなわち第2作業部F2の位置を表す。また、制御点座標系TC2の各座標軸の方向は、制御点T2の姿勢、すなわち第2作業部F2の姿勢を表す。以下では、一例として、制御点座標系TC2におけるZ軸と、シャフトS2の中心軸とを一致させている場合について説明する。なお、制御点座標系TC2におけるZ軸は、必ずしもシャフトS2の中心軸と一致している必要はない。
支持台B2は、床面に固定されている。
第1アームA21は、第1軸AX21周りに回動するので、水平方向に移動する。水平方向は、この一例において、上下方向と直交する方向である。水平方向は、例えば、ワールド座標系におけるXY平面に沿った方向、又は第2ロボット12のロボット座標系である第2ロボット座標系RC2におけるXY平面に沿った方向である。
第2アームA22は、第2軸AX22周りに回動するので、水平方向に移動する。第2アームA22は、図示しない上下動アクチュエーターと回動アクチュエーターとを備えてシャフトS2を支持する。上下動アクチュエーターは、シャフトS2のボールねじ溝の外周部に設けられたボールねじナットをタイミングベルト等で回動させることにより、シャフトS2を上下方向に移動(昇降)させる。回動アクチュエーターは、シャフトS2のスプライン溝の外周部に設けられたボールスプラインナットをタイミングベルト等で回動させることにより、シャフトS2の中心軸周りにシャフトS2を回動させる。
第2ロボット12が備える各アクチュエーターはそれぞれ、ケーブルによって制御装置30と通信可能に接続されている。これにより、これらのアクチュエーターはそれぞれ、制御装置30から取得される制御信号に基づく動作を行う。なお、ケーブルを介した有線通信は、例えば、イーサネット(登録商標)やUSB等の規格によって行われる。また、これらのアクチュエーターの一部又は全部は、Wi−Fi(登録商標)等の通信規格により行われる無線通信によって制御装置30と接続される構成であってもよい。
制御装置30は、第1ロボット11に制御信号を送信することにより、第1ロボット11を動作させる。これにより、制御装置30は、第1ロボット11に所定の作業である第1作業を行わせる。また、制御装置30は、第2ロボット12に制御信号を送信することにより、第2ロボット12を動作させる。これにより、制御装置30は、第2ロボット12に第1作業と異なる所定の作業である第2作業を行わせる。すなわち、制御装置30は、第1ロボット11と第2ロボット12の2台を制御する制御装置である。なお、制御装置30は、これに代えて、3台以上のロボットを制御する構成であってもよい。また、制御装置30は、第1ロボット11及び第2ロボット12の外部に設置される構成に代えて、第1ロボット11と第2ロボット12のうちいずれか一方に内蔵される構成であってもよい。
<第1ロボット及び第2ロボットと制御装置とのキャリブレーションの概要>
以下、この一例における第1ロボット11及び第2ロボット12と制御装置30とのキャリブレーションの概要について説明する。
以下、この一例における第1ロボット11及び第2ロボット12と制御装置30とのキャリブレーションの概要について説明する。
制御装置30は、撮像部20により撮像された撮像画像に基づいて、第1ロボット11に第1作業を行わせるとともに、第2ロボット12に第2作業を行わせる。この際、制御装置30は、第1ロボット11に第1作業を行わせるためには、撮像部座標系CCの各座標が示す位置と、第1ロボット座標系RC1の各座標が示す位置とがキャリブレーションにより対応づけられている必要がある。撮像部座標系CCは、撮像部20により撮像された撮像画像上の位置を表す座標系である。また、制御装置30は、第2ロボット12に精度の高い第2作業を行わせるためには、撮像部座標系CCの各座標が示す位置と、第2ロボット座標系RC2の各座標が示す位置とがキャリブレーションにより対応づけられている必要がある。
制御装置30と異なる制御装置X(例えば、従来の制御装置)では、撮像部座標系CCの各座標が示す位置と、第1ロボット座標系RC1の各座標が示す位置とを対応づけるとともに、撮像部座標系CCの各座標が示す位置と、第2ロボット座標系RC2の各座標が示す位置とを対応づけるキャリブレーションであるダブルキャリブレーションを行うことができない又は困難であった。なお、このダブルキャリブレーションという呼称は、本実施形態において当該キャリブレーションを他のキャリブレーションと区別するための便宜上の呼称である。
このような理由により、制御装置Xでは、撮像画像X11上の位置を表す座標系である撮像部座標系X1Cの各座標が示す位置と、第1ロボット座標系RC1の各座標が示す位置とがキャリブレーションにより対応づけられるとともに、撮像画像X21上の位置を表す座標系である撮像部座標系X2Cの各座標が示す位置と、第2ロボット座標系RC2の各座標が示す位置とがキャリブレーションにより対応づけられる。撮像画像X11は、第1ロボット11に対応する撮像部X1が撮像した撮像画像である。撮像画像X21は、第2ロボット12に対応する撮像部X2が撮像した撮像画像である。撮像部X2は、撮像部X1ではない他の撮像部である。
この場合、制御装置Xは、撮像画像X11に基づいて第1ロボット11に第1作業を高い精度で行わせるとともに、撮像画像X21に基づいて第2ロボット12に第2作業を高い精度で行わせることができる。しかし、この場合であっても、例えば、第1作業と第2作業によって、第1ロボット11と第2ロボット12に協調作業を行わせる場合、第1ロボット座標系RC1の各座標が示す位置と第2ロボット座標系RC2の各座標が示す位置とが、機械的なキャリブレーションによって対応付けられていない限り、制御装置Xは、当該協調作業を高い精度で行うことが困難である。機械的なキャリブレーションは、この一例において、複数のロボットのそれぞれの設置位置を調整する(変化させる)ことによる複数のロボット同士の相対的な位置及び姿勢の調整のことである。
協調作業は、例えば、ある対象物Oを第1ロボット11に把持させる作業が第1作業であり、第1作業において第1ロボット11が把持した対象物Oに対して第2ロボット12が研磨を行う作業が第2作業である場合のように、ワールド座標系において対応づいている1以上の位置に対して2以上のロボットが行う作業である。当該1以上の位置は、例えば、ワールド座標系において座標が同じ位置や、ワールド座標系において相対的な位置が決まっている複数の位置等である。
これに対し、制御装置30は、前述したようにダブルキャリブレーションを行うことができる。このため、制御装置30は、撮像部X1と撮像部X2という2台の撮像部を用意することなく、1台の撮像部20により撮像された撮像画像に基づいて、第1ロボット11に高い精度で第1作業を行わせることができるとともに、第2ロボット12に高い精度で第2作業を行わせることができる。これにより、制御装置30は、制御装置30が制御するロボットの台数と同じ台数の撮像部を用意する必要がなく、複数のロボットに作業を行わせるために要する金銭的なコストを抑制することができ、更に複数の撮像部を設置するために要する時間と手間を減少させることができる。
また、制御装置30は、ダブルキャリブレーションにより、撮像部座標系CCの各座標が示す位置を媒介にして、第1ロボット座標系RC1の各座標が示す位置と第2ロボット座標系RC2の各座標が示す位置とが対応付けられるため、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて、協調作業を第1ロボット11と第2ロボット12に行わせることができる。
図1に示した例では、制御装置30は、前述の領域AR内に設けられた3つの基準点である基準点P1〜基準点P3を撮像部20に撮像させる。基準点P1〜基準点P3のそれぞれは、例えば、突起物の先端であってもよく、物体やマーカーであってもよい。マーカーは、物体の一部であってもよく、物体に設けられた印であってもよい。制御装置30は、撮像部20に撮像された撮像画像に基づいてダブルキャリブレーションを行う。以下では、制御装置30がダブルキャリブレーションを行う処理について説明する。また、以下では、ダブルキャリブレーションが行われた制御装置30が第1ロボット11に第1作業を行わせるとともに、第2ロボット12に第2作業を行わせる処理について説明する。
<制御装置のハードウェア構成>
以下、図2を参照し、制御装置30のハードウェア構成について説明する。図2は、制御装置30のハードウェア構成の一例を示す図である。制御装置30は、例えば、CPU(Central Processing Unit)31と、記憶部32と、入力受付部33と、通信部34と、表示部35を備える。また、制御装置30は、通信部34を介して第1ロボット11及び第2ロボット12と通信を行う。これらの構成要素は、バスBusを介して相互に通信可能に接続されている。
以下、図2を参照し、制御装置30のハードウェア構成について説明する。図2は、制御装置30のハードウェア構成の一例を示す図である。制御装置30は、例えば、CPU(Central Processing Unit)31と、記憶部32と、入力受付部33と、通信部34と、表示部35を備える。また、制御装置30は、通信部34を介して第1ロボット11及び第2ロボット12と通信を行う。これらの構成要素は、バスBusを介して相互に通信可能に接続されている。
CPU31は、記憶部32に格納された各種プログラムを実行する。
記憶部32は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、ROM(Read−Only Memory)、RAM(Random Access Memory)等を含む。なお、記憶部32は、制御装置30に内蔵されるものに代えて、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。記憶部32は、制御装置30が処理する各種情報や画像、プログラム等を格納する。
記憶部32は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)、EEPROM(Electrically Erasable Programmable Read−Only Memory)、ROM(Read−Only Memory)、RAM(Random Access Memory)等を含む。なお、記憶部32は、制御装置30に内蔵されるものに代えて、USB等のデジタル入出力ポート等によって接続された外付け型の記憶装置であってもよい。記憶部32は、制御装置30が処理する各種情報や画像、プログラム等を格納する。
入力受付部33は、例えば、キーボードやマウス、タッチパッド等を備えたティーチングペンダントや、その他の入力装置である。なお、入力受付部33は、タッチパネルとして表示部35と一体に構成されてもよい。
通信部34は、例えば、USB等のデジタル入出力ポートやイーサネット(登録商標)ポート等を含んで構成される。
表示部35は、例えば、液晶ディスプレイパネル、あるいは、有機EL(ElectroLuminescence)ディスプレイパネルである。
通信部34は、例えば、USB等のデジタル入出力ポートやイーサネット(登録商標)ポート等を含んで構成される。
表示部35は、例えば、液晶ディスプレイパネル、あるいは、有機EL(ElectroLuminescence)ディスプレイパネルである。
<制御装置の機能構成>
以下、図3を参照し、制御装置30の機能構成について説明する。図3は、制御装置30の機能構成の一例を示す図である。制御装置30は、記憶部32と、制御部36を備える。
以下、図3を参照し、制御装置30の機能構成について説明する。図3は、制御装置30の機能構成の一例を示す図である。制御装置30は、記憶部32と、制御部36を備える。
制御部36は、制御装置30の全体を制御する。制御部36は、撮像制御部40と、画像取得部41と、位置算出部42と、第1対応付部43と、第2対応付部44と、第1ロボット制御部45と、第2ロボット制御部46を備える。制御部36が備えるこれらの機能部は、例えば、CPU31が、記憶部32に記憶された各種プログラムを実行することにより実現される。また、これらの機能部のうち一部又は全部は、LSI(Large Scale Integration)やASIC(Application Specific Integrated Circuit)等のハードウェア機能部であってもよい。
撮像制御部40は、撮像部20が撮像可能な範囲を撮像部20に撮像させる。この一例において、撮像範囲は、領域ARを含む範囲である。
画像取得部41は、撮像部20が撮像した撮像画像を撮像部20から取得する。
位置算出部42は、画像取得部41が取得した撮像画像に基づいて、撮像画像に含まれる物体やマーカー等の位置を算出する。なお、位置算出部42は、撮像画像に基づいて、撮像画像に含まれる物体やマーカー等の位置及び姿勢を算出する構成であってもよい。
画像取得部41は、撮像部20が撮像した撮像画像を撮像部20から取得する。
位置算出部42は、画像取得部41が取得した撮像画像に基づいて、撮像画像に含まれる物体やマーカー等の位置を算出する。なお、位置算出部42は、撮像画像に基づいて、撮像画像に含まれる物体やマーカー等の位置及び姿勢を算出する構成であってもよい。
第1対応付部43は、画像取得部41が取得した撮像画像に基づいて、撮像部座標系CCの各座標が示す位置と、第1ロボット座標系RC1の各座標が示す位置とを対応付ける。
第2対応付部44は、画像取得部41が取得した撮像画像に基づいて、撮像部座標系CCの各座標が示す位置と、第2ロボット座標系RC2の各座標が示す位置とを対応付ける。
第2対応付部44は、画像取得部41が取得した撮像画像に基づいて、撮像部座標系CCの各座標が示す位置と、第2ロボット座標系RC2の各座標が示す位置とを対応付ける。
第1ロボット制御部45は、位置算出部42が算出した位置に基づいて、第1ロボット11を動作させる。
第2ロボット制御部46は、位置算出部42が算出した位置に基づいて、第2ロボット12を動作させる。
第2ロボット制御部46は、位置算出部42が算出した位置に基づいて、第2ロボット12を動作させる。
<制御装置がダブルキャリブレーションを行う処理>
以下、図4を参照し、制御装置30がダブルキャリブレーションを行う処理について説明する。図4は、制御装置30がダブルキャリブレーションを行う処理の流れの一例を示すフローチャートである。
以下、図4を参照し、制御装置30がダブルキャリブレーションを行う処理について説明する。図4は、制御装置30がダブルキャリブレーションを行う処理の流れの一例を示すフローチャートである。
以下では、一例として、制御装置30がダブルキャリブレーションによって、撮像部座標系CCの二次元位置と第1ロボット座標系RC1の二次元位置とを対応付けるとともに、撮像部座標系CCの二次元位置と第2ロボット座標系RC2の二次元位置とを対応付ける場合について説明する。二次元位置は、二次元以上の座標系においてX座標及びY座標によって示される位置のことである。この場合、撮像部20は、単眼のカメラであってもステレオカメラであってもよく、ライトフィールドカメラであってもよい。
なお、制御装置30は、ダブルキャリブレーションによって、撮像部座標系CCの三次元位置と第1ロボット座標系RC1の三次元位置とを対応付けるとともに、撮像部座標系CCの三次元位置と第2ロボット座標系RC2の三次元位置とを対応付ける構成であってもよい。三次元位置は、三次元以上の座標系においてX座標、Y座標、Z座標のそれぞれによって示される位置のことである。この場合、撮像部20は、ステレオカメラであってもよく、ライトフィールドカメラであってもよい。
この一例において、制御装置30は、入力受付部33を介して、動作モードをダブルキャリブレーションモードに切り替える操作を受け付けることによって図4に示したフローチャートの処理を開始する。
動作モードがダブルキャリブレーションモードに切り替えられた後、第1ロボット制御部45は、記憶部32に予め記憶された撮像部情報を記憶部32から読み出す。撮像部情報は、制御点T1の位置及び姿勢と撮像部20の位置及び姿勢との相対的な位置及び姿勢を示す情報である。また、第1ロボット制御部45は、記憶部32に予め記憶された撮像位置姿勢情報を記憶部32から読み出す。撮像位置姿勢情報は、所定の撮像位置及び撮像姿勢を示す情報である。撮像位置は、撮像部20の位置を一致させる位置であり、領域ARを含む範囲を撮像可能な位置であれば如何なる位置であってもよい。撮像姿勢は、撮像位置における撮像部20の姿勢を一致させる姿勢であり、領域ARを含む範囲を撮像可能な姿勢であれば如何なる姿勢であってもよい。第1ロボット制御部45は、制御点T1を移動させ、読み出した撮像部情報及び撮像位置姿勢情報に基づいて、撮像位置姿勢情報が示す撮像位置及び撮像姿勢と、撮像部20の位置及び姿勢とを一致させる(ステップS110)。
次に、撮像制御部40は、撮像部20に領域ARを含む範囲を撮像させる(ステップS120)。次に、画像取得部41は、ステップS120において撮像部20が撮像した撮像画像を撮像部20から取得する(ステップS130)。前述したように、領域ARには、基準点P1〜基準点P3のそれぞれが設けられている。このため、撮像画像には、基準点P1〜基準点P3のそれぞれが含まれている(撮像されている)。
次に、位置算出部42は、ステップS130において画像取得部41が取得した撮像画像に基づいて、例えば、パターンマッチング等によって基準点P1〜基準点P3のそれぞれの撮像部座標系CCにおける位置を算出する(ステップS140)。前述した通り、この一例において、当該位置は、撮像部座標系CCにおける二次元位置である。
次に、第1対応付部43は、記憶部32から第1基準情報を読み出す(ステップS145)。第1基準情報は、記憶部32に予め記憶された基準点P1〜基準点P3のそれぞれの第1ロボット座標系RC1における位置を示す情報である。また、第1基準情報は、オンラインティーチングによる教示やダイレクトティーチングによる教示等によって記憶部32に予め記憶された情報である。
オンラインティーチングによる教示は、ティーチングペンダントや制御装置30が有するジョグキーを用いてロボットのTCPを所望の位置に移動させ、所望の位置における当該TCPの第1ロボット座標系RC1における位置及び姿勢を制御装置30に記憶させることである。当該ロボットは、この一例において、第1ロボット11や第2ロボット12のことである。制御装置30は、当該TCPの位置及び姿勢を順運動学を用いて算出することができる。ダイレクトティーチングによる教示は、ユーザーが手によってロボットのTCPを所望の位置に移動させ、所望の位置における当該TCPの第1ロボット座標系RC1における位置及び姿勢を制御装置30に記憶させることである。
例えば、第1基準情報がダイレクトティーチングによる教示によって記憶される場合、ユーザーは、シャフトS1を手で移動させ、制御点T1を基準点P1〜基準点P3のそれぞれの位置に一致させる毎に、記憶部32に現在の制御点T1の第1ロボット座標系RC1における位置を示す情報を第1基準情報として記憶させる。前述した通り、この一例において、第1基準情報が示す位置はそれぞれ、第1ロボット座標系RC1における二次元位置である。
ステップS145において記憶部32から第1基準情報を読み出した後、第1ロボット制御部45は、読み出した第1基準情報が示す位置であって基準点P1〜基準点P3のそれぞれの第1ロボット座標系RC1における位置と、ステップS140において位置算出部42が算出した位置であって基準点P1〜基準点P3のそれぞれの撮像部座標系CCにおける位置とに基づいて、第1ロボット座標系RC1における各座標が示す位置と撮像部座標系CCにおける各座標が示す位置とを対応付ける第1対応付処理を行う(ステップS150)。
次に、第2対応付部44は、記憶部32から第2基準情報を読み出す(ステップS160)。第2基準情報は、記憶部32に予め記憶された基準点P1〜基準点P3のそれぞれの第2ロボット座標系RC2における位置を示す情報である。また、第2基準情報は、オンラインティーチングによる教示やダイレクトティーチングによる教示等によって記憶部32に予め記憶された情報である。
例えば、第2基準情報がダイレクトティーチングによる教示によって記憶される場合、ユーザーは、シャフトS2を手で移動させ、制御点T2を基準点P1〜基準点P3のそれぞれの位置に一致させる毎に、記憶部32に現在の制御点T2の第2ロボット座標系RC2における位置を示す情報を第2基準情報として記憶させる。前述した通り、この一例において、第2基準情報が示す位置はそれぞれ、第2ロボット座標系RC2における二次元位置である。
ステップS160において記憶部32から第2基準情報を読み出した後、第2対応付部44は、読み出した第2基準情報が示す位置であって基準点P1〜基準点P3のそれぞれの第2ロボット座標系RC2における位置と、ステップS140において位置算出部42が算出した位置であって基準点P1〜基準点P3のそれぞれの撮像部座標系CCにおける位置とに基づいて、第2ロボット座標系RC2における各座標が示す位置と撮像部座標系CCにおける各座標が示す位置とを対応付ける第2対応付処理を行う(ステップS170)。
以上のように、制御装置30は、ダブルキャリブレーションを行う。なお、ステップS150の処理が行われた後であってステップS170の処理が行われる前の間において、制御装置30は、再びステップS120〜ステップS140の処理を行う構成であってもよい。また、制御装置30は、ステップS145及びステップS150の処理と、ステップS160及びステップS170の処理とを入れ替えて図4に示したフローチャートの処理を行う構成であってもよく、これらの処理を並列に行う構成であってもよい。また、領域ARに設けられた基準点は、2以上であればよく、この一例のように3つである必要はない。
また、この一例では、制御装置30がダブルキャリブレーションによって、撮像部座標系CCの二次元位置と第1ロボット座標系RC1の二次元位置とを対応付けるとともに、撮像部座標系CCの二次元位置と第2ロボット座標系RC2の二次元位置とを対応付ける場合について説明したが、制御装置30は、これに代えて、撮像部座標系CCの二次元位置と、3以上のロボット座標系の二次元位置とを対応付ける構成であってもよい。3以上のロボット座標系は、それぞれが互いに異なる3以上のロボットそれぞれのロボット座標系である。この場合、制御装置30は、これら3以上のロボットのそれぞれを制御する。
また、制御装置30は、M台の撮像部の一部又は全部とN台のロボットの一部又は全部との任意の組み合わせ毎に、それぞれの組み合わせに含まれる撮像部の撮像部座標系のそれぞれの二次元位置と、それぞれの組み合わせに含まれるロボットのロボット座標系のそれぞれの二次元位置とを対応付ける構成であってもよい。この場合、制御装置30は、N台のロボットのそれぞれを制御する。ここで、M、Nはそれぞれ1以上の整数である。
<第1作業及び第2作業において制御装置が行う処理>
以下、図5及び図6を参照し、第1作業及び第2作業において制御装置が行う処理について説明する。
以下、図5及び図6を参照し、第1作業及び第2作業において制御装置が行う処理について説明する。
まず、第1作業及び第2作業が行われる際のロボットシステム1の構成について説明する。図5は、第1作業及び第2作業が行われる際のロボットシステム1の構成の一例を示す図である。
図5に示した例では、第1ロボット11の第1作業部F1には、エンドエフェクターE1が取り付けられている。エンドエフェクターE1は、空気を吸引することによって物体を吸着させることが可能な真空グリッパーである。なお、エンドエフェクターE1は、これに代えて、物体を把持可能な指部を備えたエンドエフェクター等の他のエンドエフェクターであってもよい。図5では、エンドエフェクターE1により対象物OBが持ち上げられている。
対象物OBは、例えば、産業用の部品や部材、装置等である。なお、対象物OBは、これに代えて、産業用ではない日用品の部品や部材、装置であってもよく、医療用の部品や部材、装置であってもよく、細胞等の生体であってもよい。図5に示した例では、対象物OBは、直方体形状の物体として表されている。なお、対象物OBの形状は、直方体形状に代えて、他の形状であってもよい。
また、図5に示した例では、第2ロボット12の第2作業部F2には、エンドエフェクターE2が取り付けられている。エンドエフェクターE2は、空気を吸引することによって物体を吸着させることが可能な真空グリッパーである。なお、エンドエフェクターE2は、これに代えて、物体を把持可能な指部を備えたエンドエフェクター等の他のエンドエフェクターであってもよい。
図5に示した領域ARからは、領域ARから基準点P1〜基準点P3のそれぞれが撤去されている。また、領域ARには、領域AR内における所定の配置位置にマーカーMKが設けられている。この配置位置は、対象物OBを配置する位置である。マーカーMKは、配置位置を示す印である。
この一例において、第1ロボット11は、第1作業として、エンドエフェクターEによって予め持ち上げている対象物OBをマーカーMKが示す配置位置に配置する作業を行う。また、第2ロボット12は、第2作業として、第1ロボット11が配置位置に配置した対象物OBをエンドエフェクターE2によって持ち上げ、図示しない所定の給材領域に給材する作業を行う。
次に、第1作業及び第2作業において制御装置30が行う処理について説明する。図6は、第1作業及び第2作業において制御装置30が行う処理の流れの一例を示すフローチャートである。図6に示したフローチャートの処理は、エンドエフェクターE1に対象物OBを持ち上げさせた後の処理である。なお、制御装置30は、第1作業において、エンドエフェクターE1によって対象物OBを持ち上げさせる構成であってもよい。
第1ロボット制御部45は、記憶部32から撮像部情報を読み出す。また、第1ロボット制御部45は、記憶部32から撮像位置姿勢情報を読み出す。そして、第1ロボット制御部45は、制御点T1を移動させ、読み出した撮像部情報及び撮像位置姿勢情報に基づいて、撮像位置姿勢情報が示す撮像位置及び撮像姿勢と、撮像部20の位置及び姿勢とを一致させる(ステップS210)。なお、ステップS210において記憶部32から読み出した撮像部情報が、ダブルキャリブレーションを行った際に記憶部32から読み出した撮像部情報と一致しない場合、制御装置30は、再びダブルキャリブレーションを行う必要がある。また、ステップS210において記憶部32から読み出した撮像位置姿勢情報が、ダブルキャリブレーションを行った際に記憶部32から読み出した撮像位置姿勢情報と一致しない場合、制御装置30は、再びダブルキャリブレーションを行う必要がある。
次に、撮像制御部40は、撮像部20に領域ARを含む範囲を撮像させる(ステップS220)。次に、画像取得部41は、ステップS220において撮像部20が撮像した撮像画像を撮像部20から取得する(ステップS230)。前述したように、領域ARには、マーカーMKが設けられている。このため、撮像画像には、マーカーMKが含まれている(撮像されている)。当該撮像画像は、第1画像の一例である。
次に、位置算出部42は、ステップS230において画像取得部41が取得した撮像画像に基づいて、例えば、パターンマッチング等によってマーカーMKの第1ロボット座標系RC1における位置を算出する(ステップS240)。前述した通り、この一例において、当該位置は、撮像部座標系CCにおける二次元位置である。制御装置30は、ダブルキャリブレーションによって撮像部座標系CCの各座標が示す位置と第1ロボット座標系RC1における各座標が示す位置とが対応付けられているため、このような撮像画像に基づいたマーカーMKの第1ロボット座標系RC1における位置の算出を行うことができる。
次に、第1ロボット制御部45は、記憶部32に予め記憶された形状情報を記憶部32から読み出す。形状情報は、エンドエフェクターE1及び対象物OBそれぞれの形状を示す情報である。また、第1ロボット制御部45は、記憶部32に予め記憶された吸着位置情報を記憶部32から読み出す。吸着位置情報は、対象物OBの位置から、対象物OBが有する面上の位置であってエンドエフェクターE1が吸着する所定の吸着位置までの相対的な位置を示す情報である。対象物OBの位置は、この一例において、対象物OBが有する面のうちのエンドエフェクターE1に吸着されている面に対向する面の中心の位置によって表される。第1ロボット制御部45は、読み出した形状情報及び吸着位置情報に基づいて、制御点T1と対象物OBの位置との相対的な位置を算出する。第1ロボット制御部45は、制御点T1を移動させ、算出した当該位置とステップS240において算出した位置とに基づいて、対象物OBの位置と領域AR内の配置位置とを一致させる。これにより、第1ロボット制御部45は、対象物OBを配置位置に配置する(ステップS250)。なお、第1ロボット制御部45は、キャリブレーションによって第1ロボット座標系RC1におけるZ軸方向の位置であって領域AR内のマーカーMKが設けられている面の位置を予め記憶している。第1ロボット制御部45は、対象物OBを配置位置に配置した後、制御点T1を図示しない所定の待機位置に移動させる。所定の待機位置は、領域ARにおいて第2ロボット12が第2作業を行う場合に、第2ロボット12が第1ロボット11に接触しない位置であれば、如何なる位置であってもよい。
次に、第2ロボット制御部46は、記憶部32に予め記憶された形状情報を記憶部32から読み出す。また、第2ロボット制御部46は、記憶部32に予め記憶された吸着位置情報を記憶部32から読み出す。第2ロボット制御部46は、読み出した形状情報及び吸着位置情報に基づいて、エンドエフェクターE2によって対象物OBの吸着位置を吸着した場合における制御点T2と対象物OBの位置との相対的な位置を算出する。第2ロボット制御部46は、制御点T2を移動させ、算出した当該位置とステップS240において算出した位置とに基づいて、領域AR内の配置位置に配置されている対象物OBの吸着位置をエンドエフェクターE2によって吸着する。そして、第2ロボット制御部46は、対象物OBを持ち上げる(ステップS260)。なお、第2ロボット制御部46は、キャリブレーションによって第2ロボット座標系RC2におけるZ軸方向の位置であって領域AR内のマーカーMKが設けられている面の位置を予め記憶している。
次に、第2ロボット制御部46は、記憶部32に予め記憶された給材領域情報を読み出す。給材領域情報は、図示しない給材領域の位置を示す情報である。第2ロボット制御部46は、読み出した給材領域情報に基づいて対象物OBを給材領域に給材し(ステップS270)、処理を終了する。
なお、制御装置30は、ステップS250の処理が行われた後であってステップS260の処理が行われる前の間に、ステップS210〜ステップS230の処理を再び行い、領域AR内に配置された対象物OBの第2ロボット座標系RC2における位置を、新たに撮像された撮像画像に基づいて算出する構成であってもよい。この場合、制御装置30は、例えば、パターンマッチング等によって当該位置を算出する。これにより、制御装置30は、第1作業における振動等によって対象物OBの位置が配置位置からずれていた場合であっても、精度よく第2作業を行うことができる。当該撮像画像は、第2画像の一例である。
以上のように、制御装置30は、撮像部20により撮像した撮像画像及び第1ロボット座標系RC1に基づいて第1ロボット11を動作させ、第1ロボット座標系RC1とは異なる第2ロボット座標系RC2及び撮像画像に基づいて第2ロボット12を動作させる。これにより、制御装置30は、機械的なキャリブレーションを行うことなく、容易に第1ロボット11と第2ロボット12を1台の撮像部20により撮像した撮像画像に基づいて動作させることができる。
<制御装置がダブルキャリブレーションを行う処理の変形例>
以下、図7及び図8を参照し、制御装置30がダブルキャリブレーションを行う処理の変形例について説明する。
以下、図7及び図8を参照し、制御装置30がダブルキャリブレーションを行う処理の変形例について説明する。
まず、制御装置30がダブルキャリブレーションを行う際のロボットシステム1の構成について説明する。図7は、制御装置30がダブルキャリブレーションを行う際のロボットシステム1の構成の一例を示す図である。
図7に示した構成において撮像部20が設けられた上下方向における位置は、図1に示した構成において撮像部20が設けられた上下方向における位置よりも上側である。より具体的には、撮像部20は、領域ARを含む範囲を撮像可能な位置であり、更にシャフトS2の上側の端部に設けられたフランジの上面を撮像可能な位置に設けられる。また、この一例では、当該フランジの上面には、マーカーMK2が設けられる。マーカーMK2は、制御点T2の位置を示すマーカーである。当該位置は、ワールド座標系における二次元位置である。なお、マーカーMK2は、制御点T1の位置を示すマーカーであれば、如何なるマーカーであってもよい。当該フランジは、第2ロボット12により移動させる対象物の一例である。
次に、制御装置30がダブルキャリブレーションを行う処理の変形例について説明する。図8は、制御装置30がダブルキャリブレーションを行う処理の変形例の流れの一例を示すフローチャートである。以下では、図8に示したステップS110〜ステップS150の処理が、図4に示したステップS110〜ステップS150の処理と一部を除いて同様な処理であるため、説明を省略する。当該一部は、ステップS110の処理の一部のことである。図8に示したステップS110の処理において、制御装置30は、撮像部20の位置及び姿勢を撮像位置及び撮像姿勢に一致させた後、撮像部20の位置及び姿勢が変わらないように固定する。
ステップS150の処理が行われた後、制御部36は、複数の基準位置のそれぞれ毎に、ステップS370〜ステップS400の処理を繰り返し行う(ステップS360)。基準位置は、ダブルキャリブレーションにおいて制御装置30が制御点T2の位置を一致させる位置であって領域AR内の位置である。以下では、一例として基準位置は、基準位置P11〜基準位置P13の3つである場合について説明する。なお、基準位置は、2つ以上であればよく、3つである必要はない。
第2ロボット制御部46は、制御点T2を移動させ、制御点T2の位置をステップS360において選択された基準位置(基準位置P11〜基準位置P13のいずれか)と一致させる(ステップS370)。次に、撮像制御部40は、撮像部20に領域ARを含む範囲であってシャフトS2の上側の端部に設けられたフランジの上面を含む範囲を撮像させる(ステップS380)。次に、画像取得部41は、ステップS380において撮像部20が撮像した撮像画像を撮像部20から取得する(ステップS385)。前述したように、当該フランジの上面には、マーカーMK2が設けられている。このため、撮像画像には、マーカーMK2が含まれている(撮像されている)。
次に、位置算出部42は、ステップS385において画像取得部41が取得した撮像画像に基づいてマーカーMK2が示す位置、すなわち制御点T2の撮像部座標系CCにおける位置を算出する。また、位置算出部42は、順運動学に基づいて、現在の制御点T2の第2ロボット座標系RC2における位置を算出する(ステップS390)。次に、第2対応付部44は、ステップS390において算出した制御点T2の撮像部座標系CCにおける位置と制御点T2の第2ロボット座標系RC2における位置とを対応付ける(ステップS400)。
このように、基準位置毎にステップS370〜ステップS400の処理を繰り返すことにより。第2対応付部44は、撮像部座標系CCにおける各座標が示す位置と第2ロボット座標系RC2における各座標が示す位置とを対応付ける。すべての基準位置についてステップS370〜ステップS400の処理を繰り返した後、第2ロボット制御部46は、処理を終了する。
以上のように、制御装置30は、図4において説明した方法とは異なる方法によってダブルキャリブレーションを行う。なお、この一例におけるダブルキャリブレーションにおいて、マーカーMK2は、シャフトS2に取り付けられたエンドエフェクターによって把持又は吸着された対象物の一部に設けられている構成であってもよい。この場合、制御装置30は、制御点T2の位置とマーカーMK2の位置との相対的な位置を示す情報を用いて、ステップS390の処理を行う。なお、マーカーMK2は、当該対象物の一部そのものであってもよい。また、制御装置30は、ステップS390において、シャフトS2の上側の端部に設けられたフランジをマーカーMK2の代わりにパターンマッチング等により検出し、当該フランジの位置に基づいて制御点T2の撮像部座標系CCにおける位置を算出する構成であってもよい。当該フランジの位置は、当該フランジの上面の中心である。この場合、制御装置30は、当該フランジの位置と制御点T2の位置との相対的な位置に基づいて制御点T2の撮像部座標系CCにおける位置を算出する。
以上説明したように、実施形態における制御装置30は、撮像部(この一例において、撮像部20)により撮像した第1画像及び第1ロボット座標系(この一例において、第1ロボット座標系RC1)に基づいて第1ロボット(この一例において、第1ロボット11)を動作させ、第1ロボット座標系とは異なる第2ロボット座標系(この一例において、第2ロボット座標系RC2)及び撮像部により撮像した第2画像に基づいて第2ロボット(この一例において、第2ロボット12)を動作させる。これにより、制御装置30は、機械的なキャリブレーションを行うことなく、第1ロボットと第2ロボットを1台の撮像部により撮像した画像に基づいて高い精度で動作させることができる。
また、制御装置30は、撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第2ロボット座標系及び当該第1画像に基づいて第2ロボットを動作させる。これにより、制御装置30は、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを1台の撮像部により撮像した第1画像に基づいて動作させることができる。
また、制御装置30は、第1ロボットに設けられた撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、第2ロボット座標系及び撮像部により撮像した第2画像に基づいて第2ロボットを動作させる。これにより、制御装置30は、機械的なキャリブレーションを行うことなく、容易に第1ロボットと第2ロボットを第1ロボットに設けられた撮像部により撮像した画像に基づいて動作させることができる。
また、制御装置30は、撮像部を移動させることにより、第1ロボット座標系と撮像部の撮像部座標系とを対応付けるとともに、第2ロボット座標系と撮像部座標系とを対応付ける。これにより、制御装置30は、第1画像及び第1ロボット座標系に基づいて第1ロボットを高い精度で動作させることができるとともに、第2画像及び第2ロボット座標系に基づいて第2ロボットを高い精度で動作させることができる。
また、制御装置30は、撮像部を移動させることにより、第1ロボット座標系と撮像部の撮像部座標系とを対応付ける。これにより、制御装置30は、第1画像及び第1ロボット座標系に基づいて、第1ロボットを高い精度で動作させることができる。
また、制御装置30は、撮像部を固定して第2ロボットにより対象物を移動させることにより、第2ロボット座標系と撮像部座標系とを対応付ける。これにより、制御装置30は、第2画像及び第2ロボット座標系に基づいて、第2ロボットを高い精度で動作させることができる。
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない限り、変更、置換、削除等されてもよい。
また、以上に説明した装置(例えば、制御装置30)における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここでいう「コンピューターシステム」とは、OS(Operating System)や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD(Compact Disk)−ROM等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
1…ロボットシステム、11…第1ロボット、12…第2ロボット、20…撮像部、30…制御装置、31…CPU、32…記憶部、33…入力受付部、34…通信部、35…表示部、36…制御部、40…撮像制御部、41…画像取得部、42…位置算出部、43…第1対応付部、44…第2対応付部、45…第1ロボット制御部、46…第2ロボット制御部
Claims (7)
- 撮像部により撮像した第1画像及び第1ロボット座標系に基づいて第1ロボットを動作させ、
前記第1ロボット座標系とは異なる第2ロボット座標系及び前記撮像部により撮像した第2画像に基づいて第2ロボットを動作させる、
制御装置。 - 前記第1画像と前記第2画像は同じ画像である、
請求項1に記載の制御装置。 - 前記撮像部は、前記第1ロボットに設けられている、
請求項1又は2に記載の制御装置。 - 前記撮像部を移動させることにより、前記第1ロボット座標系と前記撮像部の撮像部座標系とを対応付けるとともに、前記第2ロボット座標系と前記撮像部座標系とを対応付ける、
請求項3に記載の制御装置。 - 前記撮像部を移動させることにより、前記第1ロボット座標系と前記撮像部の撮像部座標系とを対応付ける、
請求項3に記載の制御装置。 - 前記撮像部を固定して前記第2ロボットにより対象物を移動させることにより、前記第2ロボット座標系と前記撮像部座標系とを対応付ける、
請求項5に記載の制御装置。 - 前記第1ロボットと、
前記第2ロボットと、
請求項1から6のうちいずれか一項に記載の制御装置と、
を備えるロボットシステム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015255908A JP2017119321A (ja) | 2015-12-28 | 2015-12-28 | 制御装置、及びロボットシステム |
CN201611217429.1A CN106926237A (zh) | 2015-12-28 | 2016-12-26 | 机器人、机器人控制装置以及机器人系统 |
US15/391,137 US20170182665A1 (en) | 2015-12-28 | 2016-12-27 | Robot, robot control device, and robot system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015255908A JP2017119321A (ja) | 2015-12-28 | 2015-12-28 | 制御装置、及びロボットシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017119321A true JP2017119321A (ja) | 2017-07-06 |
Family
ID=59271881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015255908A Pending JP2017119321A (ja) | 2015-12-28 | 2015-12-28 | 制御装置、及びロボットシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2017119321A (ja) |
-
2015
- 2015-12-28 JP JP2015255908A patent/JP2017119321A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10589424B2 (en) | Robot control device, robot, and robot system | |
US20170182665A1 (en) | Robot, robot control device, and robot system | |
CN107414842B (zh) | 控制装置、机器人以及机器人系统 | |
US20170277167A1 (en) | Robot system, robot control device, and robot | |
CN107336229A (zh) | 机器人以及机器人系统 | |
JP2017159426A (ja) | ロボット制御装置、ロボット、及びロボットシステム | |
US11440197B2 (en) | Robot system and imaging method | |
US20170203434A1 (en) | Robot and robot system | |
US20150343634A1 (en) | Robot, robot system, and control method | |
US11351672B2 (en) | Robot, control device, and robot system | |
US20180215044A1 (en) | Image processing device, robot control device, and robot | |
US20180272537A1 (en) | Robot control device, robot, and robot system | |
JP2016203280A (ja) | ロボット、及び制御装置 | |
US20180056517A1 (en) | Robot, robot control device, and robot system | |
JP2017219365A (ja) | 位置姿勢算出装置、ロボット制御装置、及びロボット | |
JP2017047479A (ja) | ロボット、制御装置、及びロボットシステム | |
JP2018017610A (ja) | 三次元計測装置、ロボット、ロボット制御装置、及びロボットシステム | |
JP2017202549A (ja) | ロボット制御装置、ロボット、及びロボットシステム | |
JP2016120530A (ja) | ロボット、及びロボット校正システム | |
JP2017119321A (ja) | 制御装置、及びロボットシステム | |
JP2015157343A (ja) | ロボット、ロボットシステム、制御装置、および制御方法 | |
JP2018015856A (ja) | ロボット、ロボット制御装置、及びロボットシステム | |
JP2019030935A (ja) | ロボット制御装置、ロボット、ロボットシステム、及びロボット制御方法 | |
JP2019027921A (ja) | 三次元形状測定装置、ロボットシステム、及び三次元形状測定方法 | |
JP2018001321A (ja) | ロボット、ロボット制御装置、及びロボットシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20181026 |