JP2023175167A - キャリブレーション方法およびロボットシステム - Google Patents

キャリブレーション方法およびロボットシステム Download PDF

Info

Publication number
JP2023175167A
JP2023175167A JP2022087478A JP2022087478A JP2023175167A JP 2023175167 A JP2023175167 A JP 2023175167A JP 2022087478 A JP2022087478 A JP 2022087478A JP 2022087478 A JP2022087478 A JP 2022087478A JP 2023175167 A JP2023175167 A JP 2023175167A
Authority
JP
Japan
Prior art keywords
camera
robot
reference point
coordinate system
state
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
Application number
JP2022087478A
Other languages
English (en)
Inventor
健太郎 塚本
Kentaro Tsukamoto
健治 松浦
Kenji Matsuura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2022087478A priority Critical patent/JP2023175167A/ja
Priority to EP23173497.1A priority patent/EP4286107A1/en
Priority to US18/323,504 priority patent/US20230381969A1/en
Priority to CN202310620897.7A priority patent/CN117140501A/zh
Publication of JP2023175167A publication Critical patent/JP2023175167A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39016Simultaneous calibration of manipulator and camera
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39045Camera on end effector detects reference pattern
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39057Hand eye calibration, eye, camera on hand, end effector

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Multimedia (AREA)
  • Manipulator (AREA)

Abstract

【課題】容易にロボット座標系とカメラ座標系とのキャリブレーションを行うことができるキャリブレーション方法およびロボットシステムを提供すること。【解決手段】所定平面上の基準点がカメラの画像中心に位置する第1状態とし、所定平面に直交しアームの制御点を通る第1仮想軸まわりにカメラを第1回転角度だけ回転させた第2状態とし、基準点がカメラの画像中心に位置する第3状態とし、第1、第3状態の情報および第1回転角度に基づいて、基準点の仮の位置である参照点を導出し、所定平面に直交し参照点を通る第2仮想軸まわりにカメラを第2回転角度だけ回転させた第4状態とし、基準点がカメラの画像中心に位置する第5状態とし、第1、第5状態の情報および第1、第2回転角度または第3、第5状態の情報および第2回転角度から基準点の位置を導出し、導出した基準点の位置に基づいて、ロボット座標系とカメラ座標系とのキャリブレーションを行う。【選択図】図5

Description

本発明は、キャリブレーション方法およびロボットシステムに関する。
従来、アームに装着されるツールを用いてワークを処理する前に、アームに対するツールのオフセットを設定する処理が行われている。特許文献1には、アームに装着されたツールを実空間の基準点に位置合わせする操作を、アームの姿勢を変えて複数回実行した結果に基づいて、アームに対するツールのオフセットを導出する方法が開示されている。
特開平8-85083号公報
特許文献1に記載された技術によると、ツールで基準点を触るようにアームをオペレーターが操作することによって基準点の位置を教示する必要がある。しかし、アームが基準点に触るか触らないかの境界の状態を目視で特定しながら、アームを正確に操作することは容易ではない。すなわち、特許文献1に記載された技術では、基準点の位置を正確に教示することは容易ではないという問題がある。そして、基準点の位置を正確に教示しながらツールのオフセットを設定するとすれば、設定に要する所要時間が長引くという問題があり、設定対象のロボットが増えるほど、この問題は深刻になる。
本発明のキャリブレーション方法は、アームを備えるロボットの座標系であるロボット座標系と、前記アームに取り付けられているカメラの座標系であるカメラ座標系と、のキャリブレーション方法であって、
前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第1状態とする工程と、
前記ロボットを動かし、前記所定平面に直交し前記アームに設定されている制御点を通る第1仮想軸まわりに前記カメラを第1回転角度だけ回転させた第2状態とする工程と、
前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第3状態とする工程と、
前記第1状態の情報、前記第3状態の情報および前記第1回転角度に基づいて、前記基準点の仮の位置である参照点を導出する工程と、
前記ロボットを動かし、前記所定平面に直交し前記参照点を通る第2仮想軸まわりに前記カメラを第2回転角度だけ回転させた第4状態とする工程と、
前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第5状態とする工程と、
前記第1状態の情報、前記第5状態の情報、前記第1回転角度および前記第2回転角度、または、前記第3状態の情報、前記第5状態の情報および前記第2回転角度から前記基準点の位置を導出する工程と、
導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を含んでいる。
本発明のキャリブレーション方法は、アームを備えるロボットの座標系であるロボット座標系と、前記アームに取り付けられているカメラの座標系であるカメラ座標系と、のキャリブレーション方法であって、
前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第1状態とする工程と、
前記ロボットを動かし、前記所定平面に直交し前記アームに設定されている制御点を通る第1仮想軸まわりに前記カメラを第1回転角度だけ回転させた第4状態とする工程と、
前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第5状態とする工程と、
前記第1状態の情報、前記第5状態の情報および前記第1回転角度から前記基準点の位置を導出する工程と、
導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を含んでいる。
本発明のキャリブレーション方法は、アームを備えるロボットの座標系であるロボット座標系と、前記アームに取り付けられているカメラの座標系であるカメラ座標系と、のキャリブレーション方法であって、
前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第6状態とする工程と、
前記基準点の仮の位置である参照点を導出する工程と、
前記ロボットを動かし、前記所定平面に直交し前記参照点を通る第3仮想軸まわりに前記カメラを第3回転角度だけ回転させた第7状態とする工程と、
前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第8状態とする工程と、
前記第6状態の情報、前記第8状態の情報および前記第3回転角度から前記基準点の位置を導出する工程と、
導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を含んでいる。
本発明のロボットシステムは、アームを備えるロボットと、
前記アームに取り付けられているカメラと、
前記ロボットの駆動を制御する制御装置と、を有し、
前記制御装置は、前記ロボットの座標系であるロボット座標系と、前記カメラの座標系であるカメラ座標系と、のキャリブレーションを行うために、
前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第1状態とする工程と、
前記ロボットを動かし、前記所定平面に直交し前記アームに設定されている制御点を通る第1仮想軸まわりに前記カメラを第1回転角度だけ回転させた第2状態とする工程と、
前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第3状態とする工程と、
前記第1状態の情報、前記第3状態の情報および前記第1回転角度に基づいて、前記基準点の仮の位置である参照点を導出する工程と、
前記ロボットを動かし、前記所定平面に直交し前記参照点を通る第2仮想軸まわりに前記カメラを第2回転角度だけ回転させた第4状態とする工程と、
前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第5状態とする工程と、
前記第1状態の情報、前記第5状態の情報、前記第1回転角度および前記第2回転角度、または、前記第3状態の情報、前記第5状態の情報および前記第2回転角度から前記基準点の位置を導出する工程と、
導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を実行する。
第1実施形態に係るロボットシステムの全体構成図である。 キャリブレーションの工程を示すフローチャートである。 キャリブレーション開始時のロボットシステムの状態を示す図である。 キャリブレーション開始時にカメラで撮像される画像を示す図である。 第1並進工程終了時のロボットシステムの状態を示す図である。 第1並進工程終了時にカメラで撮像される画像を示す図である。 第1並進工程を詳細に示すフローチャートである。 第1回転工程終了時のロボットシステムの状態を示す図である。 第1回転工程終了時にカメラで撮像される画像を示す図である。 第2並進工程終了時のロボットシステムの状態を示す図である。 第2並進工程終了時にカメラで撮像される画像を示す図である。 第2並進工程を詳細に示すフローチャートである。 第2回転工程終了時のロボットシステムの状態を示す図である。 第2回転工程終了時にカメラで撮像される画像を示す図である。 第3並進工程終了時のロボットシステムの状態を示す図である。 第3並進工程終了時にカメラで撮像される画像を示す図である。 第3並進工程を詳細に示すフローチャートである。 ロボットシステムが行う作業の一例を示す図である。 第2実施形態に係るロボットシステムの全体構成図である。 第3実施形態に係るロボットシステムが行うキャリブレーション方法を示すフローチャートである。 第1並進工程終了時のロボットシステムの状態を示す図である。 第1並進工程終了時にカメラで撮像される画像を示す図である。 第1回転工程終了時のロボットシステムの状態を示す図である。 第1回転工程終了時にカメラで撮像される画像を示す図である。 第2並進工程終了時のロボットシステムの状態を示す図である。 第2並進工程終了時にカメラで撮像される画像を示す図である。
以下、本発明のキャリブレーション方法およびロボットシステムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
<第1実施形態>
図1は、第1実施形態に係るロボットシステムの全体構成図である。図2は、キャリブレーションの工程を示すフローチャートである。図3は、キャリブレーション開始時のロボットシステム状態を示す図である。図4は、キャリブレーション開始時にカメラで撮像される画像を示す図である。図5は、第1並進工程終了時のロボットシステムの状態を示す図である。図6は、第1並進工程終了時にカメラで撮像される画像を示す図である。図7は、第1並進工程を詳細に示すフローチャートである。図8は、第1回転工程終了時のロボットシステムの状態を示す図である。図9は、第1回転工程終了時にカメラで撮像される画像を示す図である。図10は、第2並進工程終了時のロボットシステムの状態を示す図である。図11は、第2並進工程終了時にカメラで撮像される画像を示す図である。図12は、第2並進工程を詳細に示すフローチャートである。図13は、第2回転工程終了時のロボットシステムの状態を示す図である。図14は、第2回転工程終了時にカメラで撮像される画像を示す図である。図15は、第3並進工程終了時のロボットシステムの状態を示す図である。図16は、第3並進工程終了時にカメラで撮像される画像を示す図である。図17は、第3並進工程を詳細に示すフローチャートである。図18は、ロボットシステムが行う作業の一例を示す図である。
図1に示すロボットシステム1は、ロボット2と、カメラ4と、カメラ4が撮像した画像に基づいてロボット2の駆動を制御する制御装置5と、を有している。なお、これら各部は、有線または無線により通信可能とされている。通信は、インターネットのようなネットワークを介してなされてもよい。
-ロボット2-
ロボット2は、例えば、精密機器やこれを構成する部品の給材、除材、搬送および組立等の作業を行うロボットである。ただし、ロボット2の用途としては、特に限定されない。ロボット2は、6つの回動軸を有する6軸ロボットであり、床、天井等に固定されているベース21と、ベース21に連結されているアーム22と、を有している。
アーム22は、ベース21に対して第1回動軸O1まわりに回動自在に連結されている第1アーム221と、第1アーム221に対して第2回動軸O2まわりに回動自在に連結されている第2アーム222と、第2アーム222に対して第3回動軸O3まわりに回動自在に連結されている第3アーム223と、第3アーム223に対して第4回動軸O4まわりに回動自在に連結されている第4アーム224と、第4アーム224に対して第5回動軸O5まわりに回動自在に連結されている第5アーム225と、第5アーム225に対して第6回動軸O6まわりに回動自在に連結されている第6アーム226と、を有している。
また、第6アーム226の先端部には、ツール取付面226aが設けられ、このツール取付面226aにツール24が装着され、さらに、このツール24にカメラ4が装着されている。なお、ツール24は、ロボット2に実行させる作業に応じて適宜選択することができ、本実施形態では開閉する一対の爪部を有するハンドである。また、ツール24は、第6回動軸O6に直交して配置されている。ツール24が第6回動軸O6に直交しているというのは、ツール取付面226aに対する、ツール24の先端位置を通る垂線が、第6回動軸O6とが直交している状態を指す。ここで、「直交」とは、誤差を含む状態でもよく、以下においても同様である。
また、ロボット2では、アーム22の先端、具体的には、ツール取付面226aの中心に制御点としてのツールセンターポイント(以下、「TCP」とも言う)が設定されている。TCPの位置と姿勢は、ツール24の位置と姿勢の基準となる。ただし、TCPの位置は、特に限定されない。
ロボット2を制御する際に用いられるロボット2の座標系は、互いに直交するX軸、Y軸およびZ軸によって定まる3次元の直交座標系である。本実施形態では、Z軸が鉛直方向(第1回動軸O1)に沿うように直交座標系が設定されている。以下、このようなロボット2の座標系を「ロボット座標系」とも言う。
また、ロボット2は、ベース21に対して第1アーム221を回動させる第1駆動装置251と、第1アーム221に対して第2アーム222を回動させる第2駆動装置252と、第2アーム222に対して第3アーム223を回動させる第3駆動装置253と、第3アーム223に対して第4アーム224を回動させる第4駆動装置254と、第4アーム224に対して第5アーム225を回動させる第5駆動装置255と、第5アーム225に対して第6アーム226を回動させる第6駆動装置256と、を有している。第1~第6駆動装置251~256は、それぞれ、例えば、モーターと、モーターの駆動を制御するコントローラーと、モーターの回転量を検出するエンコーダーと、を有している。第1~第6駆動装置251~256の駆動は、制御装置5によって独立して制御される。
本実施形態のように、ロボット2として6軸ロボットを用いることにより、複雑な動きが可能で、幅広い作業に対応可能なロボット2となる。ただし、ロボット2としては、特に限定されず、例えば、アーム22が有するアームの数が1本~5本あるいは7本以上であってもよい。また、ロボット2は、例えば、スカラロボット(水平多関節ロボット)、2つのアーム22を有する双腕ロボット等であってもよい。また、ロボット2は、床、天井等に固定されない自走式のロボットであってもよい。
-カメラ4-
カメラ4は、Z軸に対して垂直な所定平面F内における対象物の大きさ、形状および位置を認識するために用いられる。カメラ4は、レンズ42、エリアイメージセンサー41および図示しないAD変換器等を備えるデジタルカメラである。また、カメラ4は、ツール24に装着されている。また、カメラ4は、第6回動軸O6に対してオフセットして配置され、かつ、その光軸は、第6回動軸O6に直交している。ただし、カメラ4の配置および光軸の向きは、特に限定されない。
また、カメラ4の座標系は、互いに直交するA軸、B軸およびC軸によって定まる3次元の直交座標系である。本実施形態では、A軸がカメラ4で撮像される画像Pの水平方向に沿い、B軸が画像Pの水平方向およびA軸の垂直方向に沿い、C軸が画像Pの垂直方向に沿うように直交座標系が設定されている。以下、カメラ4で撮像される画像Pの座標系を「カメラ座標系」とも言う。
なお、カメラ4では、画像Pの中心Poが光学系の中心に対応するようにエリアイメージセンサー41とレンズ42の位置関係が定められている。すなわち、レンズ42の光軸上の点は画像Pの中心Poに撮像される。カメラ座標系では、レンズ42の光軸に垂直な実空間内の平面の座標系は、レンズ42の光学特性(焦点距離、歪み等)と、エリアイメージセンサー41の画素数および大きさと、に応じて非線形変換された2次元の直交座標系となる。したがって、カメラ4で撮像される画像Pに基づいて所定平面F内の対象物の大きさ、形状および位置を認識し、その認識結果に基づいてロボット2の駆動を制御するためには、カメラ座標系をロボット座標系と関係づける処理、すなわちキャリブレーション(校正)が必要になる。このキャリブレーション方法の詳細については、後述する。
-制御装置5-
制御装置5は、ロボット2のベース21の内部に収納されている。制御装置5は、カメラ4で撮像した画像Pに基づいて対象物の位置および姿勢を検出し、その検出結果に基づいてアーム22およびツール24の駆動を制御する。これにより、ロボット2に所望の作業を行わせることができる。制御装置5は、例えば、コンピューターから構成され、情報を処理するプロセッサーと、プロセッサーに通信可能に接続されたメモリーと、外部インターフェースと、を有している。メモリーにはプロセッサーにより実行可能な各種プログラムが保存され、プロセッサーは、メモリーに記憶された各種プログラム等を読み込んで実行する。
なお、制御装置5が、ロボット2のベース21の内部に収納された構成を示したが、これに限らない。制御装置5がロボット2のベース21の外部に設けられていてもよい。この場合、制御装置5とロボット2とは、ケーブル等を用いて電気的に接続される。
以上、ロボットシステム1の構成について説明した。次に、ロボット2に設定されたロボット座標系とカメラ4に設定されたカメラ座標系とのキャリブレーションについて説明する。ロボット座標系とカメラ座標系とのキャリブレーションは、オペレーターがキャリブレーション開始指示を制御装置5に入力することによって起動し、それ以後、オペレーターに一切の操作を要求することなく、あるいは、簡単な操作で完了する。なお、オペレーターは、キャリブレーション開始指示を入力する前に、カメラ4の向きを実作業中の向きに合わせ、かつ、カメラ4がマーカーMを撮像可能な位置にTCPを移動させておくことが望ましい。このように、カメラ4がマーカーMを撮像可能な位置にTCPを移動させておくことにより、マーカーMの探索が不要となり、キャリブレーションを短時間かつスムーズに行うことができる。なお、カメラ4の実作業中の向きは、作業内容によって異なるが、一般的にはZ軸に沿っている。そのため、本実施形態でも、カメラ4の光軸をZ軸に沿わせている。つまり、カメラ4の光軸は、後述する所定平面Fに直交している。
ロボット座標系とカメラ座標系とのキャリブレーション方法(以下、単に「キャリブレーション方法」とも言う。)は、図2に示すように、第1並進工程S1と、第1回転工程S2と、第2並進工程S3と、参照点導出工程S4と、第2回転工程S5と、第3並進工程S6と、基準点導出工程S7と、キャリブレーション工程S8と、を含んでいる。このようなキャリブレーション方法は、図1に示すように、所定平面F上に位置するマーカーMを用いて行われる。マーカーMとしては、特に限定されず、例えば、所定平面F上に載置された物体であってもよいし、所定平面Fに貼着されたシールであってもよいし、所定平面Fに印刷、塗装等された印であってもよい。
なお、本実施形態では、所定平面Fは、ロボット座標系の原点を通りZ軸に直交するX-Y平面であるが、所定平面Fの向きや位置は、特に限定されない。以下、キャリブレーション方法の各工程S1~S8について、詳細に説明する。
[第1並進工程S1]
図3および図4に、オペレーターからのキャリブレーション開始指示を取得する前の準備状態を示す。制御装置5は、オペレーターからのキャリブレーション開始指示を取得すると、第1並進工程S1を開始する。本工程S1では、制御装置5は、図5および図6に示すように、カメラ4で撮像される画像Pの所定位置、本実施形態では画像Pの中心PoにマーカーMの中心である基準点Moが位置するようにTCPを移動させる。以下では、この状態を「第1状態」とも言う。なお、本実施形態では、画像Pは、「カメラ4の視野」と同義である。
具体的には、キャリブレーション開始指示が入力されると、図7に示すように、制御装置5は、カメラ4に撮像を指示してカメラ4から画像P1を取得する。次に、制御装置5は、取得した画像P1から基準点Moのカメラ座標系での位置を検出する。なお、基準点Moの検出には、予め用意されているマーカーMのテンプレートが用いられる。つまり、テンプレートマッチングにより、基準点Moを検出する。ただし、基準点Moの位置の検出方法は、特に限定されない。次に、制御装置5は、予め決められた距離だけTCPをX軸方向およびY軸方向にそれぞれ並進させた後、カメラ4に撮像を指示し、カメラ4から画像P2を取得する。次に、制御装置5は、取得した画像P2から基準点Moのカメラ座標系での位置を検出する。
次に、制御装置5は、画像P1撮像時のTCPのロボット座標系での座標と、画像P1から検出した基準点Moのカメラ座標系での座標と、画像P2撮像時のTCPのロボット座標系での座標と、画像P2から検出した基準点Moのカメラ座標系での座標と、に基づいて、カメラ座標系における基準点Moの変位を、ロボット座標系における基準点Moの変位に変換する座標変換行列を導出する。
次に、制御装置5は、画像P2に基づいて、画像Pの中心Poに対する基準点Moのずれを導出し、導出したずれを、座標変換行列を用いてロボット座標系のX軸方向およびY軸方向のずれに変換する。そして、制御装置5は、画像Pの中心Poに基準点Moを位置させるためのTCPの目標値(X軸方向への移動量およびY軸方向への移動量)を導出する。次に、制御装置5は、導出した前記目標値に基づいてアーム22を動かす。その結果、TCPがX軸方向およびY軸方向にそれぞれ並進し、画像Pの中心Poに基準点Moが位置する状態となる。
ここで、画像Pの中心Poは、レンズ42の光軸上に位置するため、他の部分よりもレンズ42の歪みの影響を受け難い。したがって、画像Pの所定位置を中心Poとすることにより、より正確な座標変換行列を導出することができる。そのため、より精度の高いキャリブレーションが可能となる。ただし、画像Pの所定位置としては中心Poに限定されず、中心Poから離間した位置であってもよい。
また、画像Pの中心Poに基準点Moを移動させる方法としては、特に限定されない。例えば、基準点Moを中心Poまで移動させる過程において複数の画像Pを撮像し、撮像した複数の画像Pに基づいて、画像Pの中心Poに基準点Moが位置するようにフィードバック制御してもよい。具体的には、制御装置5は、まず、カメラ4から画像Pを取得して、画像Pの中心Poに基準点Moが移動するように目標値を導出し、導出した目標値に基づいてTCPを動かす。次に、制御装置5は、カメラ4から画像Pを取得して、画像Pの中心Poと基準点Moの距離を導出し、中心Poと基準点Moとの離間距離が予め決められた閾値未満であるか否かを判定する。中心Poと基準点Moの離間距離が閾値未満でなければ、制御装置5は、中心Poと基準点Moの離間距離が閾値未満になるまで、中心Poに基準点Moが移動するように繰り返し目標値を導出してTCPを動かす。このような方法によっても、正確かつ簡単に、画像Pの中心Poに基準点Moを移動させることができる。
[第1回転工程S2]
第1回転工程S2では、制御装置5は、図8および図9に示すように、ロボット2のアーム22を動かし、所定平面Fに直交しTCPを通る第1仮想軸Jaまわりにカメラ4を第1回転角度θ1だけ回転させる。言い換えると、TCPを回転中心として、カメラ4をZ軸まわりに第1回転角度θ1だけ回転させる。以下では、回転後の状態を「第2状態」とも言う。
この工程において、カメラ4は、第1仮想軸Jaを中心とする円弧の軌跡を描く。円弧の半径r1は、第1仮想軸Jaからカメラ4までの距離(TCPからカメラ4の光軸までの距離)と等しく、円弧の中心角は、第1回転角度θ1と等しい。
なお、第1回転角度θ1(ただし、0<θ1<360である。)としては、小さくてよく、例えば、45°以下であることが好ましく、30°以下であることがより好ましく、15°以下であることがさらに好ましい。特に、本実施形態では、第1回転角度θ1=5°である。このように、第1回転角度θ1を比較的小さい角度とすることにより、第1状態から第2状態へ移行する際のカメラ4の移動量が抑えられ、第2状態においても画像P内にマーカーMを留めることができる。その結果、次の第2並進工程S3を容易に行うことができる。また、第1回転工程S2を短時間で終えることができるため、キャリブレーションにかかる時間を短縮することもできる。なお、第2状態においても画像P内にマーカーMを留めることができれば、第1回転角度θ1は、特に限定されない。
[第2並進工程S3]
第2並進工程S3では、制御装置5は、図10および図11に示すように、カメラ4で撮像される画像Pの中心Poに基準点Moが位置するようにTCPを移動させる。以下では、この状態を「第3状態」とも言う。
具体的には、第1回転工程S2を終えると、図12に示すように、制御装置5は、カメラ4に撮像を指示してカメラ4から画像P3を取得する。次に、制御装置5は、取得した画像P3に基づいて、画像Pの中心Poに対する基準点Moのずれを導出する。次に、制御装置5は、導出したずれを、第1並進工程S1で導出した座標変換行列を用いてロボット座標系のX軸方向およびY軸方向のずれに変換する。そして、制御装置5は、画像Pの中心Poに基準点Moを位置させるためのTCPの目標値を導出する。次に、制御装置5は、導出した目標値に基づいてアーム22を動かす。その結果、TCPがX軸方向およびY軸方向にそれぞれ並進し、画像Pの中心Poに基準点Moが位置する状態となる。
ただし、画像Pの中心Poに基準点Moを位置させる方法としては、特に限定されず、例えば、基準点Moを中心Poまで移動させる過程において複数の画像Pを撮像し、撮像した複数の画像Pに基づいて、画像Pの中心Poに基準点Moが位置するようにフィードバック制御してもよい。フィードバック制御については、第1並進工程S1で説明した方法と同様であるため、具体的な説明を省略する。
[参照点導出工程S4]
参照点導出工程S4では、第1状態の情報、第3状態の情報および第1回転角度θ1に基づいて、基準点Moの仮の位置である参照点Qを求める。具体的には、制御装置5は、第1状態および第3状態について、それぞれ、TCPのロボット座標系での座標(X,Y)を、基準点Moのロボット座標系での座標(X,Y)、第1回転角度θ1および半径r1で表した連立方程式を立てる。次に、制御装置5は、この連立方程式を解き、基準点Moのロボット座標系での座標(X,Y)を導出する。このようにして導出された基準点Moの座標(X,Y)は、基準点Moの仮の位置であり、以下では「参照点Q」とも言う。このように、基準点Moの仮の位置である参照点Qを導出することにより、後の工程をスムーズに行うことができる。
ここで、第1回転角度θ1が大きい程(180°に近い程)、第1状態と第2状態との差が大きくなり、その分、参照点Qの導出精度が高くなる。しかしながら、前述したように参照点Qは、基準点Moの仮の位置であるため、その導出精度は、高い必要がない。そこで、前述した第1回転工程S2では、参照点Qの導出精度よりもマーカーMを画像P内にとどめることを優先して、第1角度θ1を小さく設定し、本実施形態では、第1回転角度θ1=5°に設定している。
[第2回転工程S5]
第2回転工程S5では、制御装置5は、図13および図14に示すように、ロボット2のアーム22を動かし、所定平面Fに直交し参照点Qを通る第2仮想軸Jbまわりにカメラ4を第2回転角度θ2だけ回転させる。言い換えると、参照点Qを回転中心として、カメラ4をZ軸まわりに第2回転角度θ2だけ回転させる。以下では、この状態を「第4状態」とも言う。図13、図14では、基準点Moと参照点Qが一致している図を示しているが、参照点Qは、基準点Moの仮の位置であるので、導出精度によっては、ずれていることもある。
この工程において、カメラ4は、第2仮想軸Jbを中心とする円弧の軌跡を描く。円弧の半径r2は、第2仮想軸Jbからカメラ4までの距離(第2仮想軸Jbからカメラ4の光軸までの距離)と等しく、円弧の中心角は、第2回転角度θ2と等しい。
なお、第2回転角度θ2(ただし、0<θ2<360である。)としては、特に限定されないが、前述した第1回転角度θ1よりも大きいことが好ましい。ここで、前記「大きい」とは、180°との差が小さいことを意味する。つまり、|180°-θ1|>|180°-θ2|であることが好ましい。具体的には、60°≦θ2≦300°であることが好ましく、120°≦θ2≦240°であることがより好ましく、170°≦θ2≦190°であることがさらに好ましい。特に、本実施形態では、第2回転角度θ2=180°である。これにより、第1状態と後述する第5状態との差が大きくなり、その分、後の基準点導出工程S7において、基準点Moの位置を精度よく導出することができる。
ここで、第4状態では、画像Pの中心Po付近に参照点Qが位置しているため、本工程S5では、カメラ4が画像Pの中心Po付近を回転中心としてZ軸まわりに回転する。したがって、第2回転角度θ2を大きくしても、マーカーMを画像P内に留めることができる。これにより、次の第3並進工程S6を容易に行うことができる。また、第2回転角度θ2を大きくする程、第4状態と第5状態との差が大きくなり、後の基準点導出工程S7において、基準点Moをより精度よく導出することができる。
[第3並進工程S6]
第3並進工程S6では、制御装置5は、図15および図16に示すように、ロボット2のアーム22を動かして、基準点Moがカメラ4の画像Pの中心Poに位置するようにTCPを移動させる。以下では、この状態を「第5状態」とも言う。
具体的には、第2回転工程S5を終えると、図17に示すように、制御装置5は、カメラ4に撮像を指示してカメラ4から画像P4を取得する。次に、制御装置5は、取得した画像P4に基づいて、画像Pの中心Poに対する基準点Moのずれを導出する。次に、制御装置5は、導出したずれを、第1並進工程S1で導出した座標変換行列を用いてロボット座標系のX軸方向およびY軸方向のずれに変換する。そして、制御装置5は、画像Pの中心Poに基準点Moを位置させるためのTCPの目標値を導出する。次に、制御装置5は、導出した目標値に基づいてアーム22を動かす。その結果、TCPがX軸方向およびY軸方向にそれぞれ並進し、画像Pの中心Poに基準点Moが位置する状態となる。
ただし、画像Pの中心Poに基準点Moを位置させる方法としては、特に限定されず、例えば、基準点Moを中心Poまで移動させる過程において複数の画像Pを撮像し、撮像した複数の画像Pに基づいて、画像Pの中心Poに基準点Moが位置するようにフィードバック制御してもよい。フィードバック制御については、第1並進工程S1で説明した方法と同様であるため、ここでの具体的な説明を省略する。
なお、参照点Qの導出精度によっては、基準点Moが中心Poと一致し、第2回転工程S5後においても、基準点Moが中心Poからずれない場合もある。このような場合には、TCPをX軸方向およびY軸方向に並進させる必要はない。
[基準点導出工程S7]
基準点導出工程S7では、第1状態の情報と、第5状態の情報と、第1状態から第5状態になるまでに回転した総回転角度θt、すなわち、第1回転角度θ1と第2回転角度θ2との和に基づいて、基準点Moの位置を求める。具体的には、制御装置5は、第3状態および第5状態について、それぞれ、TCPのロボット座標系での座標(X,Y)を、基準点Moのロボット座標系での座標(X,Y)と、総回転角度θtと、円弧の半径r2と、で表した連立方程式を立てる。次に、制御装置5は、この連立方程式を解き、基準点Moのロボット座標系での座標(X,Y)を導出する。
前述したように、第2回転角度θ2を第1回転角度θ1よりも大きく設定していることから、本工程S7では、参照点導出工程S4よりも精度よく基準点Moの位置を導出することができる。
なお、上記では、第1状態の情報と、第5状態の情報と、総回転角度θtと、に基づいて、基準点Moの位置を求めるものを説明したが、これに限らない。たとえば、基準点導出工程S7では、第3状態の情報と、第5状態の情報と、第2回転角度θ2と、に基づいて、基準点Moの位置を求めてもよい。
[キャリブレーション工程S8]
キャリブレーション工程S8では、基準点導出工程S7において導出した基準点Moのロボット座標系での位置に基づいて、ロボット座標系と画像座標系とのキャリブレーションを行う。
以上により、ロボット座標系と画像座標系とのキャリブレーションが終了する。このようなキャリブレーション方法によれば、カメラ4でマーカーMを撮像可能な位置にTCPを動かしさえすれば、ロボット座標系とカメラ座標系とのキャリブレーションを自動的に行うことができる。したがって、ロボット座標系とカメラ座標系とのキャリブレーションが容易に短時間で実行可能になる。また、このキャリブレーション方法によれば、例えば、TCPとカメラ4との相対的位置関係が未知であっても、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
さらには、並進動作(第1、第2、第3並進工程S1、S3、S6)と、回転動作(第1、第2回転工程S2、S5)との組み合わせによってキャリブレーションが行われるため、キャリブレーション中のロボット2の動作が単純である。このように、ロボット2の動きが単純であるため、ロボット座標系とカメラ座標系とのキャリブレーションを短時間かつ精度よく行うことができる。さらには、回転動作がZ軸まわりの回転であるため、本実施形態のように、カメラ4の光軸が第6回動軸O6に直交する構成においても、画像P内にマーカーMを留めることができ、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
次に、ロボットシステム1が行う作業の一例として、図18に示すように、テーブルT上に山積みにされたワークWを搬送して目的地まで搬送する作業を説明する。制御装置5は、まず、テーブルT上に山積みにされた対象物としてのワークWをカメラ4で撮像できるように、TCPを動かす。この状態では、カメラ4の光軸がZ軸に沿っている。次に、カメラ4に撮像を指示してカメラ4から少なくとも1つのワークWを含む画像Pを取得する。次に、制御装置5は、取得した画像Pから少なくとも1つのワークWを抽出すると共に、例えば、テンプレートマッチング等によって抽出したワークの位置および姿勢を検出する。次に、制御装置5は、抽出したワークWをツール24で把持するために取るべきTCPの位置および姿勢を導出し、TCPが導出した位置および姿勢となるように、ロボット2を動かす。次に、制御装置5は、ツール24を動かしてワークWを把持する。次に、制御装置5は、ロボット2を動かしてワークWを目的地まで搬送する。
以上、ロボットシステム1について説明した。このようなロボットシステム1が行うキャリブレーション方法は、前述したように、アーム22を備えるロボット2の座標系であるロボット座標系と、アーム22に取り付けられているカメラ4の座標系であるカメラ座標系と、のキャリブレーション方法であって、ロボット2を動かし、所定平面F上に位置する基準点Moがカメラ4の画像Pの所定位置である中心Poに位置する第1状態とする工程である第1並進工程S1と、ロボット2を動かし、所定平面Fに直交しアーム22に設定されている制御点であるTCPを通る第1仮想軸Jaまわりにカメラ4を第1回転角度θ1だけ回転させた第2状態とする工程である第1回転工程S2と、ロボット2を動かし、基準点Moがカメラ4の画像Pの中心Poに位置する第3状態とする工程である第2並進工程S3と、第1状態の情報、第3状態の情報および第1回転角度θ1に基づいて、基準点Moの仮の位置である参照点Qを導出する工程である参照点導出工程S4と、ロボット2を動かし、所定平面Fに直交し参照点Qを通る第2仮想軸Jbまわりにカメラ4を第2回転角度θ2だけ回転させた第4状態とする工程である第2回転工程S5と、ロボット2を動かし、基準点Moがカメラ4の画像Pの中心Poに位置する第5状態とする工程である第3並進工程S6と、第1状態の情報、第5状態の情報、第1回転角度θ1および第2回転角度θ2、または、第3状態の情報、第5状態の情報および第2回転角度θ2から基準点Moの位置を導出する工程である基準点導出工程S7と、導出した基準点Moの位置に基づいて、ロボット座標系とカメラ座標系とのキャリブレーションを行う工程であるキャリブレーション工程S8と、を含んでいる。
このようなキャリブレーション方法によれば、カメラ4でマーカーMを撮像可能な位置にTCPを動かしさえすれば、ロボット座標系とカメラ座標系とのキャリブレーションを自動的に行うことができる。したがって、ロボット座標系とカメラ座標系とのキャリブレーションが容易に短時間で実行可能になる。また、このキャリブレーション方法によれば、例えば、TCPとカメラ4との相対的位置関係が未知であっても、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
さらには、並進動作(第1、第2、第3並進工程S1、S3、S6)と、回転動作(第1、第2回転工程S2、S5)との組み合わせによってキャリブレーションが行われるため、キャリブレーション中のロボット2の動作が単純である。このように、ロボット2の動きが単純であるため、ロボット座標系とカメラ座標系とのキャリブレーションを短時間かつ精度よく行うことができる。さらには、回転動作がZ軸まわりの回転であるため、本実施形態のように、カメラ4の光軸が第6回動軸O6に直交する構成においても、画像P内にマーカーMを留めることができ、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
また、前述したように、第1状態では、カメラ4の光軸は、所定平面Fに直交している。これにより、カメラ4の向きを実作業に合わせることができ、実作業と同じ条件でロボット座標系とカメラ座標系とのキャリブレーションを行うことができる。そのため、実作業をより精度よく行うことができる。
また、前述したように、第2回転角度θ2は、第1回転角度θ1よりも大きい。これにより、基準点導出工程S7において、参照点導出工程S4よりも精度よく基準点Moの位置を導出することができる。
また、前述したように、前記所定位置は、画像Pの中心Poである。画像Pの中心Poは、レンズ42の光軸上に位置するため、他の部分よりもレンズ42の歪みの影響を受け難い。したがって、所定位置を画像Pの中心Poとすることにより、より正確な座標変換行列を導出することができる。そのため、より精度の高いキャリブレーションが可能となる。
また、前述したように、第2状態では、基準点Moがカメラ4の画像P内に位置している。これにより、次の第2並進工程S3を容易に行うことができる。
また、前述したように、第4状態では、基準点Moがカメラ4の画像P内に位置している。これにより、次の第3並進工程S6を容易に行うことができる。
また、前述したように、ロボットシステム1は、アーム22を備えるロボット2と、アーム22に取り付けられているカメラ4と、ロボット2の駆動を制御する制御装置5と、を有している。そして、制御装置5は、ロボット2の座標系であるロボット座標系と、カメラ4の座標系であるカメラ座標系と、のキャリブレーションを行うために、ロボット2を動かし、所定平面F上に位置する基準点Moがカメラ4の画像Pの所定位置である中心Poに位置する第1状態とする工程である第1並進工程S1と、ロボット2を動かし、所定平面Fに直交しアーム22に設定されている制御点であるTCPを通る第1仮想軸Jaまわりにカメラ4を第1回転角度θ1だけ回転させた第2状態とする工程である第1回転工程S2と、ロボット2を動かし、基準点Moがカメラ4の画像Pの中心Poに位置する第3状態とする工程である第2並進工程S3と、第1状態の情報、第3状態の情報および第1回転角度θ1に基づいて、基準点Moの仮の位置である参照点Qを導出する工程である参照点導出工程S4と、ロボット2を動かし、所定平面Fに直交し参照点Qを通る第2仮想軸Jbまわりにカメラ4を第2回転角度θ2だけ回転させた第4状態とする工程である第2回転工程S5と、ロボット2を動かし、基準点Moがカメラ4の画像Pの中心Poに位置する第5状態とする工程である第3並進工程S6と、第1状態の情報、第5状態の情報、第1回転角度θ1および第2回転角度θ2、または、第3状態の情報、第5状態の情報および第2回転角度θ2から基準点Moの位置を導出する工程である基準点導出工程S7と、導出した基準点Moの位置に基づいて、ロボット座標系とカメラ座標系とのキャリブレーションを行う工程であるキャリブレーション工程S8と、を実行する。
このようなロボットシステム1によれば、カメラ4でマーカーMを撮像可能な位置にTCPを動かしさえすれば、ロボット座標系とカメラ座標系とのキャリブレーションを自動的に行うことができる。したがって、ロボット座標系とカメラ座標系とのキャリブレーションが容易に短時間で実行可能になる。また、このキャリブレーション方法によれば、例えば、TCPとカメラ4との相対的位置関係が未知であっても、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
さらには、並進動作(第1、第2、第3並進工程S1、S3、S6)と、回転動作(第1、第2回転工程S2、S5)との組み合わせによってキャリブレーションが行われるため、キャリブレーション中のロボット2の動作が単純である。このように、ロボット2の動きが単純であるため、ロボット座標系とカメラ座標系とのキャリブレーションを短時間かつ精度よく行うことができる。さらには、回転動作がZ軸まわりの回転であるため、本実施形態のように、カメラ4の光軸が第6回動軸O6に直交する構成においても、画像P内にマーカーMを留めることができ、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
なお、上記では、第2並進工程S3と、参照点導出工程S4と、第2回転工程S5と、を含むキャリブレーション方法について説明したが、これに限らない。第1並進工程S1、第1回転工程S2、第3並進工程S6、基準点導出工程S7、キャリブレーション工程S8によるキャリブレーション方法としてもよい。
つまり、ロボットシステム1が行うキャリブレーション方法は、アーム22を備えるロボット2の座標系であるロボット座標系と、アーム22に取り付けられているカメラ4の座標系であるカメラ座標系と、のキャリブレーション方法であって、ロボット2を動かし、所定平面F上に位置する基準点Moがカメラ4の画像Pの所定位置である中心Poに位置する第1状態とする工程である第1並進工程S1と、ロボット2を動かし、所定平面Fに直交しアーム22に設定されている制御点であるTCPを通る第1仮想軸Jaまわりにカメラ4を第1回転角度θ1だけ回転させた第4状態とする工程である第1回転工程S2と、ロボット2を動かし、基準点Moがカメラ4の画像Pの中心Poに位置する第5状態とする工程である第3並進工程S6と、第1状態の情報、第5状態の情報および第1回転角度θ1から基準点Moの位置を導出する工程である基準点導出工程S7と、導出した基準点Moの位置に基づいて、ロボット座標系とカメラ座標系とのキャリブレーションを行う工程であるキャリブレーション工程S8と、を含んでいてもよい。このような方法によっても本実施形態と同様の効果を発揮することができる。
この場合、第1回転角度θ1は、60°≦θ1≦300°であることが好ましく、120°≦θ1≦240°であることがより好ましく、170°≦θ1≦190°であることがさらに好ましい。これにより、第1状態と第5状態との差が大きくなり、その分、後の基準点導出工程S7において、基準点Moの位置を精度よく導出することができる。
また、上記では、カメラ4の光軸は、所定平面Fに直交している例を説明したが、これに限らない。カメラ4の光軸は、予定平面Fの垂線に対して傾いていてもよい。この場合においても、上記のキャリブレーション方法を実行することにより、同様の効果を発揮することができる。
<第2実施形態>
図19は、第2実施形態に係るロボットシステムの全体構成図である。
本実施形態のロボットシステム1は、アーム22に装着されるツール24およびカメラ4の向きが異なること以外は、前述した第1実施形態のロボットシステム1と同様である。以下の説明では、本実施形態に関し、前述した実施形態との相違点を中心に説明し、同様の事項に関してはその説明を省略する。また、本実施形態の図において、前述した実施形態と同様の構成については、同一符号を付している。
図19に示すように、本実施形態のロボットシステム1では、ツール24およびカメラ4は、それぞれ、第6回動軸O6に沿って配置されている。また、ツール24およびカメラ4は、第6回動軸O6からオフセットして配置され、第6回動軸O6の両側に位置している。ツール24が第6回動軸O6に沿っているというのは、ツール取付面226aに対する、ツール24の先端位置を通る垂線が、第6回動軸O6とが平行である状態を指す。カメラ4が第6回動軸O6に沿っているというのは、カメラ4の光軸と、第6回動軸O6とが平行である状態を指す。
このような第2実施形態によっても、前述した第1実施形態と同様のキャリブレーション方法を実行することにより、第1実施形態と同様の効果を発揮することができる。
<第3実施形態>
図20は、第3実施形態に係るロボットシステムが行うキャリブレーション方法を示すフローチャートである。図21は、第1並進工程終了時のロボットシステムの状態を示す図である。図22は、第1並進工程終了時にカメラで撮像される画像を示す図である。図23は、第1回転工程終了時のロボットシステムの状態を示す図である。図24は、第1回転工程終了時にカメラで撮像される画像を示す図である。図25は、第2並進工程終了時のロボットシステムの状態を示す図である。図26は、第2並進工程終了時にカメラで撮像される画像を示す図である。
本実施形態のロボットシステム1は、キャリブレーション方法が異なること以外は、前述した第1実施形態のロボットシステム1と同様である。以下の説明では、本実施形態に関し、前述した実施形態との相違点を中心に説明し、同様の事項に関してはその説明を省略する。また、本実施形態の各図において、前述した実施形態と同様の構成については、同一符号を付している。
本実施形態のキャリブレーション方法は、図20に示すように、第1並進工程S9と、参照点導出工程S10と、第1回転工程S11と、第2並進工程S12と、基準点導出工程S13と、キャリブレーション工程S14と、を含んでいる。
[第1並進工程S9]
制御装置5は、オペレーターからのキャリブレーション開始指示を取得すると、第1並進工程S9を開始する。本工程S9では、制御装置5は、図21および図22に示すように、カメラ4で撮像される画像Pの所定位置、本実施形態では画像Pの中心PoにマーカーMの中心である基準点Moが位置するようにTCPを移動させる。以下では、この状態を「第6状態」とも言う。
[参照点導出工程S10]
参照点導出工程S10では、基準点Moの仮の位置である参照点Qを求める。参照点Qの求め方は、特に限定されない。例えば、予めオペ―レーターが参照点Qの位置情報を入力しておき、その位置情報に基づいて参照点Qを求めてもよい。また、例えば、ツール24をマーカーMに接触させるタッチアップ動作によって、参照点Qを求めてもよい。
[第1回転工程S11]
第1回転工程S11では、制御装置5は、図23および図24に示すように、ロボット2のアーム22を動かし、所定平面Fに直交し参照点Qを通る第3仮想軸Jcまわりにカメラ4を第3回転角度θ3だけ回転させる。言い換えると、参照点Qを回転中心として、カメラ4をZ軸まわりに第3回転角度θ3だけ回転させる。以下では、この状態を「第7状態」とも言う。
なお、第3回転角度θ3(ただし、0<θ3<360である。)としては、特に限定されないが、例えば、60°≦θ3≦300°であることが好ましく、120°≦θ3≦240°であることがより好ましく、170°≦θ3≦190°であることがさらに好ましい。特に、本実施形態では、第3回転角度θ3=180°である。これにより、第6状態と後述する第8状態との差が大きくなり、その分、後の基準点導出工程S13において、基準点Moの位置を精度よく導出することができる。
[第2並進工程S12]
第2並進工程S12では、制御装置5は、図25および図26に示すように、ロボット2を、参照点Qがカメラ4の画像Pの中心Poに位置するようにTCPを移動させる。以下では、この状態を「第8状態」とも言う。
[基準点導出工程S13]
基準点導出工程S13では、第6状態の情報、第8状態の情報および第3回転角度θ3に基づいて、基準点Moの位置を求める。
[キャリブレーション工程S14]
キャリブレーション工程S14では、基準点導出工程S13において導出した基準点Moのロボット座標系での位置に基づいて、ロボット座標系と画像座標系とのキャリブレーションを行う。
以上により、ロボット座標系と画像座標系とのキャリブレーションが終了する。このようなキャリブレーション方法によれば、ロボット座標系とカメラ座標系とのキャリブレーションを自動的に行うことができる。したがって、ロボット座標系とカメラ座標系とのキャリブレーションが容易に短時間で実行可能になる。また、このキャリブレーション方法によれば、例えば、TCPとカメラ4との相対的位置関係が未知であっても、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
さらには、並進動作と、回転動作との組み合わせによってキャリブレーションが行われるため、キャリブレーション中のロボット2の動作が単純である。このように、ロボット2の動きが単純であるため、ロボット座標系とカメラ座標系とのキャリブレーションを短時間かつ精度よく行うことができる。さらには、回転動作がZ軸まわりの回転であるため、本実施形態のように、カメラ4の光軸が第6回動軸O6に直交する構成においても、画像P内にマーカーMを留めることができ、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
以上のように、本実施形態のキャリブレーション方法は、アーム22を備えるロボット2の座標系であるロボット座標系と、アーム22に取り付けられているカメラ4の座標系であるカメラ座標系と、のキャリブレーション方法であって、ロボット2を動かし、所定平面F上に位置する基準点Moがカメラ4の画像Pの所定位置である中心Poに位置する第6状態とする工程である第1並進工程S9と、基準点Moの仮の位置である参照点Qを導出する工程である参照点導出工程S10と、ロボット2を動かし、所定平面Fに直交し参照点Qを通る第3仮想軸Jcまわりにカメラ4を第3回転角度θ3だけ回転させた第7状態とする工程である第1回転工程S11と、ロボット2を動かし、基準点Moがカメラ4の画像Pの中心Poに位置する第8状態とする工程である第2並進工程S12と、第6状態の情報、第8状態の情報および第3回転角度θ3から基準点Moの位置を導出する工程である基準点導出工程S13と、導出した基準点Moの位置に基づいて、ロボット座標系とカメラ座標系とのキャリブレーションを行う工程であるキャリブレーション工程S14と、を含んでいる。
このようなキャリブレーション方法によれば、ロボット座標系とカメラ座標系とのキャリブレーションを自動的に行うことができる。したがって、ロボット座標系とカメラ座標系とのキャリブレーションが容易に短時間で実行可能になる。また、このキャリブレーション方法によれば、例えば、TCPとカメラ4との相対的位置関係が未知であっても、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
さらには、並進動作と、回転動作との組み合わせによってキャリブレーションが行われるため、キャリブレーション中のロボット2の動作が単純である。このように、ロボット2の動きが単純であるため、ロボット座標系とカメラ座標系とのキャリブレーションを短時間かつ精度よく行うことができる。さらには、回転動作がZ軸まわりの回転であるため、本実施形態のように、カメラ4の光軸が第6回動軸O6に直交する構成においても、画像P内にマーカーMを留めることができ、ロボット座標系とカメラ座標系とのキャリブレーションを行うことができるという利点もある。
このような第3実施形態によっても、前述した第1実施形態と同様の効果を発揮することができる。
以上、本発明のキャリブレーション方法およびロボットシステムを図示の実施形態に基づいて説明したが、本発明は、これに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。
1…ロボットシステム、2…ロボット、21…ベース、22…アーム、221…第1アーム、222…第2アーム、223…第3アーム、224…第4アーム、225…第5アーム、226…第6アーム、226a…ツール取付面、24…ツール、251…第1駆動装置、252…第2駆動装置、253…第3駆動装置、254…第4駆動装置、255…第5駆動装置、256…第6駆動装置、4…カメラ、41…エリアイメージセンサー、42…レンズ、5…制御装置、F…所定平面、Ja…第1仮想軸、Jb…第2仮想軸、Jc…第3仮想軸、M…マーカー、Mo…基準点、O1…第1回動軸、O2…第2回動軸、O3…第3回動軸、O4…第4回動軸、O5…第5回動軸、O6…第6回動軸、P…画像、P1…画像、P2…画像、P3…画像、P4…画像、Po…中心、Q…参照点、S1…第1並進工程、S2…第1回転工程、S3…第3並進工程、S4…参照点導出工程、S5…第2回転工程、S6…第3並進工程、S7…基準点導出工程、S8…キャリブレーション工程、S9…第1並進工程、S10…参照点導出工程、S11…第1回転工程、S12…第2並進工程、S13…基準点導出工程、S14…キャリブレーション工程、T…テーブル、W…ワーク、θ1…第1回転角度、θ2…第2回転角度、θ3…第3回転角度、θt…総回転角度

Claims (9)

  1. アームを備えるロボットの座標系であるロボット座標系と、前記アームに取り付けられているカメラの座標系であるカメラ座標系と、のキャリブレーション方法であって、
    前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第1状態とする工程と、
    前記ロボットを動かし、前記所定平面に直交し前記アームに設定されている制御点を通る第1仮想軸まわりに前記カメラを第1回転角度だけ回転させた第2状態とする工程と、
    前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第3状態とする工程と、
    前記第1状態の情報、前記第3状態の情報および前記第1回転角度に基づいて、前記基準点の仮の位置である参照点を導出する工程と、
    前記ロボットを動かし、前記所定平面に直交し前記参照点を通る第2仮想軸まわりに前記カメラを第2回転角度だけ回転させた第4状態とする工程と、
    前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第5状態とする工程と、
    前記第1状態の情報、前記第5状態の情報、前記第1回転角度および前記第2回転角度、または、前記第3状態の情報、前記第5状態の情報および前記第2回転角度から前記基準点の位置を導出する工程と、
    導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を含んでいることを特徴とするキャリブレーション方法。
  2. 前記第1状態では、前記カメラの光軸は、前記所定平面に直交している請求項1に記載のキャリブレーション方法。
  3. 前記第2回転角度は、前記第1回転角度よりも大きい請求項1に記載のキャリブレーション方法。
  4. 前記所定位置は、前記画像の中心である請求項1に記載のキャリブレーション方法。
  5. 前記第2状態では、前記基準点が前記カメラの画像内に位置している請求項1に記載のキャリブレーション方法。
  6. 前記第4状態では、前記基準点が前記カメラの画像内に位置している請求項1に記載のキャリブレーション方法。
  7. アームを備えるロボットの座標系であるロボット座標系と、前記アームに取り付けられているカメラの座標系であるカメラ座標系と、のキャリブレーション方法であって、
    前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第1状態とする工程と、
    前記ロボットを動かし、前記所定平面に直交し前記アームに設定されている制御点を通る第1仮想軸まわりに前記カメラを第1回転角度だけ回転させた第4状態とする工程と、
    前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第5状態とする工程と、
    前記第1状態の情報、前記第5状態の情報および前記第1回転角度から前記基準点の位置を導出する工程と、
    導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を含んでいることを特徴とするキャリブレーション方法。
  8. アームを備えるロボットの座標系であるロボット座標系と、前記アームに取り付けられているカメラの座標系であるカメラ座標系と、のキャリブレーション方法であって、
    前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第6状態とする工程と、
    前記基準点の仮の位置である参照点を導出する工程と、
    前記ロボットを動かし、前記所定平面に直交し前記参照点を通る第3仮想軸まわりに前記カメラを第3回転角度だけ回転させた第7状態とする工程と、
    前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第8状態とする工程と、
    前記第6状態の情報、前記第8状態の情報および前記第3回転角度から前記基準点の位置を導出する工程と、
    導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を含んでいることを特徴とするキャリブレーション方法。
  9. アームを備えるロボットと、
    前記アームに取り付けられているカメラと、
    前記ロボットの駆動を制御する制御装置と、を有し、
    前記制御装置は、前記ロボットの座標系であるロボット座標系と、前記カメラの座標系であるカメラ座標系と、のキャリブレーションを行うために、
    前記ロボットを動かし、所定平面上に位置する基準点が前記カメラの画像の所定位置に位置する第1状態とする工程と、
    前記ロボットを動かし、前記所定平面に直交し前記アームに設定されている制御点を通る第1仮想軸まわりに前記カメラを第1回転角度だけ回転させた第2状態とする工程と、
    前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第3状態とする工程と、
    前記第1状態の情報、前記第3状態の情報および前記第1回転角度に基づいて、前記基準点の仮の位置である参照点を導出する工程と、
    前記ロボットを動かし、前記所定平面に直交し前記参照点を通る第2仮想軸まわりに前記カメラを第2回転角度だけ回転させた第4状態とする工程と、
    前記ロボットを動かし、前記基準点が前記カメラの画像の前記所定位置に位置する第5状態とする工程と、
    前記第1状態の情報、前記第5状態の情報、前記第1回転角度および前記第2回転角度、または、前記第3状態の情報、前記第5状態の情報および前記第2回転角度から前記基準点の位置を導出する工程と、
    導出した前記基準点の位置に基づいて、前記ロボット座標系と前記カメラ座標系とのキャリブレーションを行う工程と、を実行することを特徴とするロボットシステム。
JP2022087478A 2022-05-30 2022-05-30 キャリブレーション方法およびロボットシステム Pending JP2023175167A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2022087478A JP2023175167A (ja) 2022-05-30 2022-05-30 キャリブレーション方法およびロボットシステム
EP23173497.1A EP4286107A1 (en) 2022-05-30 2023-05-15 Calibration method and robot system
US18/323,504 US20230381969A1 (en) 2022-05-30 2023-05-25 Calibration Method And Robot System
CN202310620897.7A CN117140501A (zh) 2022-05-30 2023-05-29 校准方法及机器人系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022087478A JP2023175167A (ja) 2022-05-30 2022-05-30 キャリブレーション方法およびロボットシステム

Publications (1)

Publication Number Publication Date
JP2023175167A true JP2023175167A (ja) 2023-12-12

Family

ID=86387215

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022087478A Pending JP2023175167A (ja) 2022-05-30 2022-05-30 キャリブレーション方法およびロボットシステム

Country Status (4)

Country Link
US (1) US20230381969A1 (ja)
EP (1) EP4286107A1 (ja)
JP (1) JP2023175167A (ja)
CN (1) CN117140501A (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2774939B2 (ja) 1994-09-16 1998-07-09 株式会社神戸製鋼所 ロボットのツールパラメータ導出方法及び較正方法
JP4267005B2 (ja) * 2006-07-03 2009-05-27 ファナック株式会社 計測装置及びキャリブレーション方法
CN104354167B (zh) * 2014-08-29 2016-04-06 广东正业科技股份有限公司 一种机器人手眼标定方法及装置
JP6886620B2 (ja) * 2017-08-09 2021-06-16 オムロン株式会社 キャリブレーション方法、キャリブレーションシステム及びプログラム
US11820024B2 (en) * 2019-06-17 2023-11-21 Siemens Ltd., China Coordinate system calibration method, device, and computer readable medium
JP7507073B2 (ja) 2020-12-01 2024-06-27 株式会社日立製作所 エレベーターのロープ支持機構、及び、エレベーターのロープ端末処理方法

Also Published As

Publication number Publication date
CN117140501A (zh) 2023-12-01
EP4286107A1 (en) 2023-12-06
US20230381969A1 (en) 2023-11-30

Similar Documents

Publication Publication Date Title
JP6484213B2 (ja) 複数のロボットを含むロボットシステム、ロボット制御装置、及びロボット制御方法
US20200298411A1 (en) Method for the orientation of an industrial robot, and industrial robot
US9517563B2 (en) Robot system using visual feedback
JP6429473B2 (ja) ロボットシステム、ロボットシステムの校正方法、プログラム、およびコンピュータ読み取り可能な記録媒体
US9884425B2 (en) Robot, robot control device, and robotic system
JP5292998B2 (ja) ロボット装置の制御方法及びロボット装置
JP2019093481A (ja) ロボットシステム及びロボットシステムの制御方法
WO2018043525A1 (ja) ロボットシステム、ロボットシステム制御装置、およびロボットシステム制御方法
JP2015042437A (ja) ロボットシステム及びロボットシステムの校正方法
JP6860843B2 (ja) ロボットシステム、ロボット制御装置、及びロボット制御方法
JP5618770B2 (ja) ロボットの校正装置および校正方法
JP4289619B2 (ja) 多関節ロボットのツール位置補正方法
US7957834B2 (en) Method for calculating rotation center point and axis of rotation, method for generating program, method for moving manipulator and positioning device, and robotic system
CN116423526B (zh) 一种机械臂工具坐标的自动标定方法及系统、存储介质
US20230123629A1 (en) 3d computer-vision system with variable spatial resolution
JP2014240106A (ja) ロボット、ロボット制御装置およびロボットの駆動方法
JP2006297559A (ja) キャリブレーションシステムおよびロボットのキャリブレーション方法
JP2023175167A (ja) キャリブレーション方法およびロボットシステム
JP2016203282A (ja) エンドエフェクタの姿勢変更機構を備えたロボット
JP6273783B2 (ja) ツール先端点情報補正プログラム、ツール先端点情報補正装置、及び、ツール先端点情報補正方法
WO2023032400A1 (ja) 自動搬送装置、及びシステム
CN113492401B (zh) 校正方法
US20240269853A1 (en) Calibration method, calibration device, and robotic system
JP2022125537A (ja) 校正方法
JP2023153555A (ja) 撮像装置の位置推定方法