JP2021079466A - マスタスレーブシステム、制御方法及び制御装置 - Google Patents

マスタスレーブシステム、制御方法及び制御装置 Download PDF

Info

Publication number
JP2021079466A
JP2021079466A JP2019207272A JP2019207272A JP2021079466A JP 2021079466 A JP2021079466 A JP 2021079466A JP 2019207272 A JP2019207272 A JP 2019207272A JP 2019207272 A JP2019207272 A JP 2019207272A JP 2021079466 A JP2021079466 A JP 2021079466A
Authority
JP
Japan
Prior art keywords
coordinate system
relationship
slave
master
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019207272A
Other languages
English (en)
Other versions
JP7277340B2 (ja
Inventor
掃部 雅幸
Masayuki Kamon
雅幸 掃部
大樹 高橋
Daiki Takahashi
大樹 高橋
開 清水
Kai Shimizu
開 清水
裕規 高山
Yuki Takayama
裕規 高山
藤森 潤
Jun Fujimori
潤 藤森
博貴 木下
Hirotaka Kinoshita
博貴 木下
政彦 赤松
Masahiko Akamatsu
政彦 赤松
崇功 上月
Takayoshi Kozuki
崇功 上月
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawasaki Heavy Industries Ltd
Original Assignee
Kawasaki Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawasaki Heavy Industries Ltd filed Critical Kawasaki Heavy Industries Ltd
Priority to JP2019207272A priority Critical patent/JP7277340B2/ja
Priority to US17/776,606 priority patent/US20220401169A1/en
Priority to EP20886827.3A priority patent/EP4059668A4/en
Priority to PCT/JP2020/042379 priority patent/WO2021095833A1/ja
Priority to CN202080074458.5A priority patent/CN114599485B/zh
Publication of JP2021079466A publication Critical patent/JP2021079466A/ja
Application granted granted Critical
Publication of JP7277340B2 publication Critical patent/JP7277340B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/02Hand grip control means
    • B25J13/025Hand grip control means comprising haptic means
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B34/00Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
    • A61B34/30Surgical robots
    • A61B34/37Master-slave robots
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • 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/1689Teleoperation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • G01B11/026Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness by measuring distance between sensor and object
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/02Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness
    • G01B11/03Measuring arrangements characterised by the use of optical techniques for measuring length, width or thickness by measuring coordinates of points
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/14Measuring arrangements characterised by the use of optical techniques for measuring distance or clearance between spaced objects or spaced apertures
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J3/00Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
    • 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
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40182Master has different configuration than slave manipulator
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40183Tele-machining
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40194Force reflective, impedance shaping tele operation
    • 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/40Robotics, robotics mapping to robotics vision
    • G05B2219/40195Tele-operation, computer assisted manual operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Surgery (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Manipulator (AREA)

Abstract

【課題】スレーブ装置が作用を加える対象が変わる場合でもマスタ装置の操作を容易にするマスタスレーブシステム等を提供する。【解決手段】マスタスレーブシステムは、マスタ装置とスレーブ装置と制御装置とを備える。前記制御装置は、スレーブ座標系と対象物座標系との第1座標系関係を決定する第1決定部と、マスタ座標系と前記対象物座標系との第2座標系関係を決定する第2決定部と、前記マスタ装置の操作情報と前記第1座標系関係と前記第2座標系関係とに従って、前記スレーブ装置に動作させる動作指令を出力する動作指令部とを含む。前記対象物座標系が移動された場合、前記第1決定部は、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、前記第2決定部は、移動後の前記第2座標系関係を移動前の前記第2座標系関係と同様の関係に決定する。【選択図】図6

Description

本開示は、マスタスレーブシステム、制御方法及び制御装置に関する。
従来、ロボットは、人の行為を代替するために用いられてきた。例えば、特許文献1は、リモート教示された教示点を修正する工業用ロボットを開示している。工業用ロボットは、ロボット座標系からワーク座標系への座標変換及びその逆変換を行うことができ、リモート教示された教示点を、ワーク座標系に予め設定された仮想空間格子のうちの最も近い格子点に修正変更する。工業用ロボットは、格子点で停止するように規制する機能を有する。
特開2009−274191号公報
例えば、ロボットを用いて対象物の湾曲した表面に対して研削等の作用を加える作業を行う場合、作業の進捗に従って対象領域の位置及び姿勢が変わる。ロボットの操作者は、対象領域の位置及び姿勢の変化に対応して操作装置を操作することになる。例えば、対象領域の姿勢が大きく変わる場合、操作者は、操作装置を無理な姿勢で操作する必要が生じ得る。よって、操作者による操作装置の操作が困難になる。
本開示は、ロボット等のスレーブ装置が作用を加える対象が変わる場合でも操作装置等のマスタ装置の操作を容易にするマスタスレーブシステム、制御方法及び制御装置を提供することを目的とする。
上記目的を達成するために、本開示の一態様に係るマスタスレーブシステムは、操作端と、前記操作端に力が加えられることで入力される情報である操作情報を検出し出力する操作検出部とを備えるマスタ装置と、対象物に作用を加える作用部と前記作用部を移動させる動作部とを備えるスレーブ装置と、制御装置とを備え、前記制御装置は、前記スレーブ装置に設定されたスレーブ座標系と前記対象物に設定された対象物座標系との関係である第1座標系関係を決定する第1決定部と、前記マスタ装置に設定されたマスタ座標系と前記対象物座標系との関係である第2座標系関係を決定する第2決定部と、前記操作情報と前記第1座標系関係と前記第2座標系関係とに従って、前記動作部によって前記作用部に動作させる動作指令を出力する動作指令部とを含み、前記第1決定部は、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、前記第2決定部は、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記マスタ座標系との移動後の前記第2座標系関係を、移動前の前記第2座標系関係と同様の関係に決定する。
本開示によれば、スレーブ装置が作用を加える対象が変わる場合でもマスタ装置の操作を容易にすることが可能になる。
実施の形態に係るロボットシステムの一例を示す概略図 実施の形態に係るエンドエフェクタの構成の一例を示す側面図である。 実施の形態に係る操作入力装置の操作装置の構成の一例を示す斜視図 実施の形態に係るロボットシステムの機能的な構成の一例を示すブロック図 実施の形態に係る制御装置のハードウェア構成の一例を示すブロック図 図1のロボットシステムにおける各座標系の一例を示す図 図6のロボットシステムにおける各座標系の移動例を示す図 図6のロボットシステムにおける各座標系の移動例を示す図 実施の形態に係るロボットシステムの動作の一例を示すフローチャート 図6のロボットシステムにおける各座標系の移動例を示す図 実施の形態に係るロボットシステムの動作の一例を示すフローチャート
まず、本開示の態様例を説明する。本開示の一態様に係るマスタスレーブシステムは、操作端と、前記操作端に力が加えられることで入力される情報である操作情報を検出し出力する操作検出部とを備えるマスタ装置と、対象物に作用を加える作用部と前記作用部を移動させる動作部とを備えるスレーブ装置と、制御装置とを備え、前記制御装置は、前記スレーブ装置に設定されたスレーブ座標系と前記対象物に設定された対象物座標系との関係である第1座標系関係を決定する第1決定部と、前記マスタ装置に設定されたマスタ座標系と前記対象物座標系との関係である第2座標系関係を決定する第2決定部と、前記操作情報と前記第1座標系関係と前記第2座標系関係とに従って、前記動作部によって前記作用部に動作させる動作指令を出力する動作指令部とを含み、前記第1決定部は、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、前記第2決定部は、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記マスタ座標系との移動後の前記第2座標系関係を、移動前の前記第2座標系関係と同様の関係に決定する。
上記態様によると、制御装置は、対象物の位置が変わる等の要因に対応して対象物座標系が移動されると、スレーブ装置と対象物との相対的な位置が変わるため、スレーブ座標系と対象物座標系との第1座標系関係を変更する。しかしながら、制御装置は、マスタ座標系と対象物座標系との第2座標系関係を移動前のまま維持する。例えば、制御装置は、対象物座標系の移動前、マスタ座標系における第1方向に操作端に力が加えられる操作情報に対して、対象物座標系における第2方向に作用部を動作させる動作指令を出力するとする。この場合、制御装置は、移動後、マスタ座標系における第1方向に操作端に力が加えられる操作情報に対して、対象物座標系における第2方向に作用部を動作させる動作指令を出力する。よって、制御装置は、移動前後で同じ操作が入力された場合、対象物座標系に対する作用部の動作を移動前後で変えない。従って、操作者は、対象物座標系が移動した場合でも、対象物座標系の移動に合わせてマスタ装置に入力する操作を変える必要がない。これにより、スレーブ装置が作用を加える対象が変わる場合でもマスタ装置の操作が容易になる。
本開示の一態様に係るマスタスレーブシステムは、前記対象物までの距離である対象物距離を検出する距離検出装置をさらに備え、前記制御装置は、前記距離検出装置によって検出された前記対象物距離に基づき、前記対象物座標系を決定する座標系決定部をさらに含んでもよい。上記態様によると、制御装置は、対象物座標系を移動する場合、距離検出装置の検出結果に基づき、移動後の対象物座標系を自身で決定することができる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記距離検出装置は、前記対象物距離を所定の時間間隔で検出し、前記座標系決定部は、検出された前記対象物距離に対応して前記対象物座標系を変えるように決定してもよい。上記態様によると、制御装置は、距離検出装置によって所定の時間間隔で検出される対象物距離に基づき、対象物座標系を変えることができる。例えば、制御装置は、対象物の状態に対応してリアルタイムに対象物座標系を変えることができる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記距離検出装置は、前記対象物距離を所定のタイミングで検出し、前記座標系決定部は、検出された前記対象物距離に対応して前記対象物座標系を変えるように決定してもよい。上記態様によると、制御装置は、距離検出装置によって所定のタイミングで検出される対象物距離に基づき、対象物座標系を変えることができる。よって、制御装置の処理量の低減が可能になる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記距離検出装置は、被写体までの距離を検出するための画像を撮像することができる撮像装置であり、前記制御装置は、前記撮像装置によって撮像された前記対象物の画像を画像処理することで、前記対象物距離を検出する画像処理部をさらに含んでもよい。上記態様によると、対象物の画像を画像処理することで、対象物の各位置での3次元位置の検出が可能である。よって、制御装置は、対象物の形状、位置及び姿勢に対応した対象物座標系を決定することができる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記対象物座標系の移動は、前記対象物座標系の位置及び姿勢の移動を含んでもよい。上記態様によると、制御装置は、対象物座標系の位置及び姿勢の移動に対応した処理を行うことができる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記操作検出部は、前記操作端に加えられる力の方向及び大きさを前記操作情報として検出し、前記動作指令部は、前記作用部の位置、姿勢及び前記対象物への作用力を含む前記動作指令を生成してもよい。上記態様によると、操作端に加えられる力の方向及び大きさの指令は、作用部の移動方向、移動速度及び当該移動方向での作用力等の指令に変換され得る。よって、操作者は、操作端に力を加えることで作用部の動作を制御することができる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記操作検出部は、前記操作端に加えられる3軸方向の力の大きさ及び3軸周りの力のモーメントを前記操作情報として検出してもよい。上記態様によると、操作端に加えられる3軸方向の力の大きさの指令は、当該3軸方向の作用部の移動速度及び作用力の指令に変換され得る。操作端に加えられる3軸周りの力のモーメントの指令は、当該3軸周りの作用部の回転速度及び回転力の指令に変換され得る。よって、操作者は、操作端に力を加えることで作用部の位置及び姿勢を制御することができる。
本開示の一態様に係るマスタスレーブシステムにおいて、前記作用部は、研削装置を含み、前記動作部は、ロボットアームを含んでもよい。上記態様によると、マスタスレーブシステムは、ロボットアームを用いて研削装置の位置及び姿勢を変化させつつ、研削装置での研削作業を可能にする。
本開示の一態様に係る制御方法は、マスタ装置によって操作されるスレーブ装置を制御する制御方法であって、前記スレーブ装置の処理の対象物に設定された対象物座標系と前記スレーブ装置に設定されたスレーブ座標系との関係である第1座標系関係を決定することと、前記マスタ装置に設定されたマスタ座標系と前記対象物座標系との関係である第2座標系関係を決定することと、前記マスタ装置の操作端に力が加えられることで前記マスタ装置に入力される情報である操作情報と、前記第1座標系関係と、前記第2座標系関係とに従って、前記対象物に対して前記スレーブ装置に動作させる動作指令を出力することとを含み、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、移動後の前記対象物座標系と前記マスタ座標系との移動後の前記第2座標系関係を、移動前の前記第2座標系関係と同様の関係に決定する。上記態様によると、本開示の一態様に係るマスタスレーブシステムと同様の効果が得られる。
本開示の一態様に係る制御方法は、前記対象物までの距離である対象物距離を取得することと、前記対象物距離に基づき、前記対象物座標系を決定することとをさらに含んでもよい。
本開示の一態様に係る制御方法において、所定の時間間隔で検出された前記対象物距離を取得し、検出された前記対象物距離に対応して前記対象物座標系を変えるように決定してもよい。
本開示の一態様に係る制御方法において、所定のタイミングで検出された前記対象物距離を取得し、検出された前記対象物距離に対応して前記対象物座標系を変えるように決定してもよい。
本開示の一態様に係る制御方法は、被写体までの距離を検出するための画像を撮像することができる撮像装置によって撮像された前記対象物の画像を取得することと、前記対象物の画像を画像処理することで、前記対象物までの距離を検出することとをさらに含んでもよい。
本開示の一態様に係る制御方法において、前記対象物座標系の移動は、前記対象物座標系の位置及び姿勢の移動を含んでもよい。
本開示の一態様に係る制御方法において、前記操作情報は、前記操作端に加えられる力の方向及び大きさを含み、前記動作指令は、前記対象物に作用を加える前記スレーブ装置の作用部の位置、姿勢及び前記対象物への作用力を含んでもよい。
本開示の一態様に係る制御方法において、前記操作情報は、前記操作端に加えられる3軸方向の力の大きさ及び3軸周りの力のモーメントを含んでもよい。
本開示の一態様に係る制御装置は、本開示の一態様に係る制御方法を実行する制御装置である。上記態様によると、本開示の一態様に係る制御方法と同様の効果が得られる。
(実施の形態)
以下において、本開示の実施の形態を、図面を参照しつつ説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、添付の図面における各図は、模式的な図であり、必ずしも厳密に図示されたものでない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。また、本明細書及び特許請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
[ロボットシステムの構成]
実施の形態に係るロボットシステム1の構成を説明する。図1は、実施の形態に係るロボットシステム1の一例を示す概略図である。図1に示すように、実施の形態に係るロボットシステム1は、ロボット10と、制御装置20と、撮像装置30と、操作入力装置40と、提示装置50とを備える。ロボットシステム1は、マスタスレーブシステムを構成し、ロボット10はスレーブ装置を構成し、操作入力装置40はマスタ装置を構成する。制御装置20は、ロボットシステム1の全体の動作を制御する。制御装置20は、ロボット10と操作入力装置40との間でバイラテラル制御を行う。
ロボット10は、本実施の形態では産業用ロボットである。ロボット10は、基台13上に固定して配置されるが、搬送装置等の移動可能な装置に配置され、移動できるように構成されてもよい。ロボット10は、処理の対象物に対して作用を加える作用部としてのエンドエフェクタ11と、当該作用を実行するようにエンドエフェクタ11を動かす動作部としてのロボットアーム12とを備える。本実施の形態では、エンドエフェクタ11は、対象物に対して研削の作用を加えるように構成されるとして、以下の説明を行う。このようなエンドエフェクタ11は、対象物に対して研削を施す研削装置11aを備え、ロボットアーム12の先端に取り付けられる。なお、エンドエフェクタ11の作用は、研削に限定されず、いかなる作用であってもよい。例えば、エンドエフェクタ11の作用は、作用の進捗に伴って、作用対象の位置及び姿勢の少なくとも一方が変わる作用であってもよい。
本明細書及び特許請求の範囲において、「研削」は、対象物の不要な部分を除去することで所要の寸法及び形状等にする加工である切削と、対象物の表面を削り取ることで所要の寸法、形状及び表面粗さ等にする加工である研削と、対象物の表面を滑らかにする加工である研磨とを含み得る。
研削装置11aの例は、グラインダ、オービタルサンダ、ランダムオービットサンダ、デルタサンダ及びベルトサンダ等の電力又は空気圧を動力源とする研削装置であるが、これに限定されない。グラインダは、円盤状の研削砥石を回転させるタイプ、円錐状又は柱状の研削砥石を回転させるタイプ等のグラインダであってもよい。
本実施の形態では、「研削」は、金属製の対象物Wの研削対象領域WA内の不要な部分を削り取り、研削対象領域WAの表面を滑らかにする加工であるとし、研削装置11aは、円盤状の研削砥石11bを備える電動ディスクグラインダであるとして以下の説明を行う。研削対象領域WA内の不要な部分の例は、対象物Wの溶接ビードのような溶接痕等である。研削装置11aは、回転する研削砥石11bが研削対象領域WA内の溶接痕等に押し当てられることで、当該溶接痕及びその周辺を研削する。図1に示される対象物Wは、大型タンクの壁である。
ロボットアーム12は、その先端の研削装置11aの位置及び/又は姿勢を変更することができる構成を有すれば、特に限定されないが、本実施の形態では、垂直多関節型ロボットアームである。なお、ロボットアーム12は、例えば、水平多関節型、極座標型、円筒座標型、直角座標型、又はその他の型式のロボットアームとして構成されてもよい。
ロボットアーム12は基台13に固定される。ロボットアーム12は、その基部から先端に向かって順に配置されたリンク12a〜12fと、リンク12a〜12fを順次回転可能に接続する関節JT1〜JT6と、関節JT1〜JT6それぞれを回転駆動するアーム駆動装置M1〜M6とを備える。リンク12aは関節JT1を介して基台13に取り付けられる。リンク12fの先端部はメカニカルインタフェースを構成し、エンドエフェクタ11と接続される。アーム駆動装置M1〜M6の動作は制御装置20によって制御される。アーム駆動装置M1〜M6はそれぞれ、電力を動力源とし、これらを駆動する電気モータとしてサーボモータMa(図4参照)を有するが、これに限定されない。なお、ロボットアーム12の関節の数量は6つに限定されず、7つ以上又は5つ以下であってもよい。
図2は、実施の形態に係るエンドエフェクタ11の構成の一例を示す側面図である。図2に示すように、エンドエフェクタ11は、研削装置11aと、研削砥石11bと、取付具11cと、力センサ11eとを備える。取付具11cは、研削装置11aを支持し且つリンク12fと接続されるように構成され、研削装置11aをリンク12fに取り付ける。力センサ11eは、取付具11cとリンク12fとの間に配置され、取付具11cからリンク12fに作用する力である反力を検出し制御装置20に出力する。反力は、研削作業時に研削装置11aが対象物Wから受ける力である。本実施の形態では、力センサ11eは、直交する3軸方向の力と当該3軸周りの回転力であるモーメントとの6軸の力を検出するが、これに限定されず、例えば、1軸、2軸又は3軸方向の力のみを検出してもよい。例えば、上記3軸の1つは、リンク12fの捻れ回転軸S6と同一であってもよい。
図1及び図2に示すように、撮像装置30は、ロボットアーム12のリンク12eに配置される。撮像装置30は、カメラ(図示略)を備え、被写体を照明するためのLED(light emitting diode)及びストロボ等の光源をさらに備えてもよい。撮像装置30のカメラは、捻れ回転軸S6の軸方向に沿い且つエンドエフェクタ11に向かう方向に指向され、研削対象領域WA及びその周辺を撮像することができる。なお、撮像装置30の位置は、研削対象領域WAを撮像できる位置であればよく、リンク12e以外のロボットアーム12上の位置、又は、ロボットアーム12の外部の位置であってもよい。撮像装置30は、制御装置20の指令に従って、カメラに撮像動作をさせる。撮像装置30は、カメラによって撮像された画像の信号等を制御装置20に送る。なお、以下の説明において、カメラが撮像することを、撮像装置30が撮像すると表現する場合がある。
撮像装置30のカメラは、被写体までの距離等の撮像装置30に対する被写体の3次元空間内の位置である3次元位置等を検出するための画像を撮像する。例えば、当該カメラは、デジタル画像を撮像するカメラであり、ステレオカメラ、単眼カメラ、TOFカメラ(トフカメラ:Time-of-Flight-Camera)、縞投影等のパターン光投影カメラ、又は光切断法を用いたカメラ等の構成を有してもよい。本実施の形態では、撮像装置30のカメラはステレオカメラである。撮像装置30は距離検出装置の一例である。
図3は、実施の形態に係る操作入力装置40の操作装置400の構成の一例を示す斜視図である。図4は、実施の形態に係るロボットシステム1の機能的な構成の一例を示すブロック図である。図1、図3及び図4に示すように、操作入力装置40は、ロボット10から離れて配置され、ロボットシステム1を管理及び/又は操作するユーザPによる指令、データ及び情報等の入力を受け付け、当該指令、データ及び情報等を制御装置20に出力する。操作入力装置40は制御装置20と有線通信又は無線通信を介して接続される。有線通信及び無線通信の形式はいかなる形式であってもよい。
操作入力装置40は、操作装置400と、入力装置410と、操作制御装置420とを備える。操作制御装置420は、操作入力装置40全体の動作を制御し、制御装置20と情報、指令及びデータ等の送受信を行う。操作装置400は、ロボット10を手動運転で操作するための入力を受け付け、入力された情報である操作情報を操作制御装置420に出力する。また、操作装置400は、操作制御装置420の制御によって、操作装置400を操作しているユーザPに、操作力に対する反力を与える。入力装置410は、情報、指令及びデータ等の入力を受け付け、操作制御装置420に出力する。例えば、入力装置410は、レバー、ボタン、キー、タッチパネル、ジョイスティック、モーションキャプチャ等の既知の入力装置を備えてもよい。入力装置410は、撮像装置30の動作、制御モードの切り替え、研削の対象物の情報及び研削対象領域の情報等の入力を受け付ける。研削対象領域の情報は、研削対象領域の数量、位置、姿勢、形状及び寸法等の情報を含んでもよい。
図3に示すように、操作装置400は、把持部401と、支持部402と、アーム403と、モータ404と、力センサ405とを備える。把持部401は、ユーザPによって把持可能であるように構成される。本実施の形態では、把持部401は、研削装置11aであるグラインダと同様の形状を有するが、これに限定されない。把持部401は、ユーザPが握ることができる2つのハンドル部401a及び401bを含む。ユーザPは、研削装置11aを把持して実際に研削するようにハンドル部401a及び401bを握った状態で把持部401を移動させることによって、ロボット10を操作し研削動作させる。また、把持部401は、研削装置11aの操作等のための押しボタン等の入力部401cを含む。把持部401は操作端の一例である。
支持部402は、把持部401を支持する。力センサ405は、把持部401と支持部402との間に配置され、この間に作用する力を検出する。具体的には、力センサ405は、直交する3軸方向の力と当該3軸周りの回転力であるモーメントとの6軸の力を検出する。例えば、上記3軸の1つは、把持部401から支持部402に向かう軸であってもよい。力センサ405は操作検出部の一例である。
支持部402は、6つのアーム403によって移動可能に支持されている。6つのアーム403は、3つのペアで構成される。3つのペアのアーム403は、支持部402から3方向に放射状に延びる。各アーム403は、関節403aを有し、関節403aを中心に屈曲可能である。各アーム403の一端は、ボールジョイント等の自在継手を介して、直交する3軸周りに回動可能に支持部402と接続される。各アーム403の他端は、支持部402の下方の支持台406の表面406a上に配置されたモータ404の回転軸と、減速機等(図示略)を介して接続される。各アーム403の関節403aは、当該アーム403を構成する2つの柱状部材を、ボールジョイント等の自在継手を介して、直交する3軸周りに回動可能に接続する。
6つのモータ404が支持台406上に配置されている。6つのモータ404は、3つのペアで構成される。各ペアのモータ404は、それぞれの回転軸が同軸となるように配置され、1つのペアのアーム403と接続される。3つのペアのモータ404は、それぞれの回転軸が三角形の各辺を構成するように配置されている。各モータ404は、サーボモータ等で構成される。
上述のような把持部401は、3次元空間内で様々な位置及び姿勢をとることができる。そして、把持部401の位置及び姿勢に対応して、各アーム403が動作し各モータ404を回転させる。把持部401の位置及び姿勢に対応する6つのモータ404の回転量つまり回転角は、一義的に定まる。
本実施の形態では、制御装置20は、操作装置400とロボット10との間で位置、姿勢及び力の状態を対応させるようにバイラテラル方式での力覚制御を行う。各モータ404は、サーボモータの回転子の回転量を検出するエンコーダ等の回転センサ(図示略)と、サーボモータの駆動電流を検出する電流センサ(図示略)とを備える。操作制御装置420は、力センサ405の6軸の力の検出信号(以下、「力信号」とも呼ぶ)を含む操作情報を、位置、姿勢、位置及び姿勢の移動速度並びに力を指令する操作指令として制御装置20に出力し、制御装置20は、各モータ404の回転センサ及び電流センサの検出信号(以下、「回転信号」及び「電流信号」とも呼ぶ)を、ユーザPの操作力に対する反力をモータ404に発生させるためのフィードバック情報として用いる。操作指令は、操作情報の一例である。
制御装置20は、操作指令を用いて後述する動作指令等を生成する。動作指令は、操作指令に従ったエンドエフェクタ11の3次元位置、姿勢、位置及び姿勢の移動速度並びに作用力等の指令を含む。さらに、制御装置20は、エンドエフェクタ11の力センサ11eの検出信号が示す6軸の力データと操作装置400のフィードバック情報とに基づいて、各モータ404の出力トルクを制御する。つまり、制御装置20は6つのモータ404をサーボ制御する。制御装置20は、ユーザPによる把持部401の操作力に対し、上記力データに対応した反力を発生させるように各モータ404の出力トルクを制御する。
また、操作装置400の構成は、図3の構成に限定されず、例えば、ユーザPによって特定の部位に力を加える操作が行われると、当該操作の操作情報を検出することができる構成であればよい。例えば、操作装置400において、把持部401が固定されており、把持部401に加えられる力が力センサ405によって検出され、力センサ405の力信号が操作情報として検出されてもよい。又は、操作装置400において、力が加えられることによって移動する把持部401の位置及び姿勢の移動量が操作情報として検出されてもよい。上記移動量は各モータ404の回転量から検出されてもよい。さらに、操作情報として、把持部401に加えられる力が、各モータ404の負荷から検出されてもよい。又は、操作装置400は、ロボットアーム12と類似するマスタロボットで構成され、ロボット10がスレーブロボットとして制御されるように構成されてもよい。又は、操作装置400は、ジョイスティック等であってもよい。
提示装置50は、制御装置20から受け取るロボットシステム1を動作させるための画像及び音声等を、ロボットシステム1のユーザPに提示する。提示装置50の例は、液晶ディスプレイ(Liquid Crystal Display)及び有機又は無機ELディスプレイ(Electro-Luminescence Display)等であるが、これらに限定されない。提示装置50は、音声を発するスピーカを備えてもよい。例えば、提示装置50は、撮像装置30によって撮像された画像を、操作入力装置40を操作するユーザPに提示する。
[制御装置のハードウェア構成]
制御装置20のハードウェア構成を説明する。図5は、実施の形態に係る制御装置20のハードウェア構成の一例を示すブロック図である。図5に示すように、制御装置20は、CPU(Central Processing Unit)201と、ROM(Read Only Memory)202と、RAM(Random Access Memory)203と、メモリ204と、入出力I/F(インタフェース:Interface)205及び206と、駆動I/F207及び208と、撮像素子I/F209とを構成要素として含む。上記構成要素はそれぞれ、バス、有線通信又は無線通信を介して接続されている。なお、上記構成要素の全てが必須ではない。
例えば、CPU201はプロセッサであり、制御装置20の動作の全体を制御する。ROM202は不揮発性半導体メモリ等で構成され、CPU201に動作を制御させるためのプログラム及びデータ等を格納する。RAM203は揮発性半導体メモリ等で構成され、CPU201で実行するプログラム及び処理途中又は処理済みのデータ等を一時的に格納する。メモリ204は、揮発性メモリ及び不揮発性メモリなどの半導体メモリ、ハードディスク(HDD:Hard Disc Drive)及びSSD(Solid State Drive)等の記憶装置で構成され、種々の情報を記憶する。
例えば、CPU201が動作するためのプログラムは、ROM202又はメモリ204に予め保持されている。CPU201は、ROM202又はメモリ204からプログラムをRAM203に読み出して展開する。CPU201は、RAM203に展開されたプログラム中のコード化された各命令を実行する。
制御装置20の各機能は、CPU201、ROM202及びRAM203等からなるコンピュータシステムにより実現されてもよく、電子回路又は集積回路等の専用のハードウェア回路により実現されてもよく、上記コンピュータシステム及びハードウェア回路の組み合わせにより実現されてもよい。
このような制御装置20は、例えば、マイクロコントローラ、MPU(Micro Processing Unit)、LSI(Large Scale Integration:大規模集積回路)、システムLSI、PLC(Programmable Logic Controller)、論理回路等で構成されてもよい。制御装置20の複数の機能は、個別に1チップ化されることで実現されてもよく、一部又は全てを含むように1チップ化されることで実現されてもよい。また、回路はそれぞれ、汎用的な回路でもよく、専用の回路でもよい。LSIとして、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続及び/又は設定を再構成可能なリコンフィギュラブルプロセッサ、又は、特定用途向けに複数の機能の回路が1つにまとめられたASIC(Application Specific Integrated Circuit)等が利用されてもよい。
撮像素子I/F209は、CPU201の指令に従って、撮像装置30のカメラの撮像素子(図示略)の駆動を制御する。撮像素子I/F209は、撮像装置30によって撮像された画像の信号をRAM203又はメモリ204に取り込む。制御装置20の内部又は外部において、撮像装置30の駆動のための回路等が、撮像素子I/F209と撮像装置30との間に設けられてもよい。
第1入出力I/F205は、操作入力装置40と接続され、情報、データ及び指令等の信号を入出力する。信号を変換及び増幅等する回路等が、制御装置20の内部又は外部における第1入出力I/F205と操作入力装置40との間に設けられもよい。
第2入出力I/F206は、提示装置50と接続され、画面データ、音声データ、情報及び指令等の信号を入出力する。信号を変換及び増幅等する回路等が、制御装置20の内部又は外部における第2入出力I/F206と提示装置50との間に設けられもよい。
第1駆動I/F207は、ロボット10のアーム駆動装置M1〜MA6と接続され、情報及び指令等の信号を入出力する。アーム駆動回路(図示略)が、制御装置20の内部又は外部における第1駆動I/F207とアーム駆動装置M1〜MA6との間に設けられる。アーム駆動回路は、CPU201の指令に従って、アーム駆動装置M1〜MA6のサーボモータMaに電力を供給し各サーボモータMaの駆動を制御する。
第2駆動I/F208は、エンドエフェクタ11の研削装置11aと接続され、情報及び指令等の信号を入出力する。研削駆動回路(図示略)が、制御装置20の内部又は外部における第2駆動I/F208と研削装置11aとの間に設けられる。研削駆動回路は、CPU201の指令に従って、研削装置11aに電力を供給し研削装置11aの駆動を制御する。
[ロボットシステムの機能的構成]
ロボットシステム1の機能的構成を説明する。図4に示すように、操作入力装置40の操作制御装置420は、入力処理部421と動作制御部422とを機能的構成要素として含む。制御装置20は、撮像制御部20aと、画像処理部20b及び20cと、座標系検出部20dと、決定部20e及び20fと、動作指令部20g及び20hと、動作制御部20iと、動作情報処理部20jと、記憶部20pとを機能的構成要素として含む。上記機能的構成要素の全てが必須ではない。
操作制御装置420の入力処理部421及び動作制御部422の機能は、CPU等のコンピュータシステム、ハードウェア回路、又は、コンピュータシステム及びハードウェア回路の組み合わせによって実現される。制御装置20の記憶部20pを除く機能的構成要素の機能は、CPU201等によって実現され、記憶部20pの機能は、メモリ204、ROM202及び/又はRAM203によって実現される。
操作制御装置420の入力処理部421は、入力装置410、力センサ405及びモータ404から受け取る情報、データ及び指令等を制御装置20に出力する。例えば、入力処理部421は、入力装置410から、撮像装置30の動作の指令、対象物座標系の変更の指令、制御モードの切り替えの指令、研削の対象物の情報及び研削対象領域の情報等を受け取る。撮像装置30の動作の指令は、撮像開始、撮像終了及び撮像タイミングの指令等を含む。対象物座標系の切り替えの指令は、研削の対象領域に設定される座標系である対象物座標系を変更する指令、変更された対象物座標系を元に戻す指令等を含む。制御モードの切り替えの指令は、対象物座標系を自動的に変更する制御モードと自動的な変更を実行しない制御モードの指令との切り替え等を含む。
また、入力処理部421は、力センサ405の力信号から6軸の力の検出値を検出する。さらに、入力処理部421は、6軸の力の検出値、又は、6軸の力の検出値の演算処理値を制御装置20に出力する。例えば、入力処理部421は、6軸の力の検出値を演算処理することで、エンドエフェクタ11に対する操作指令を生成し制御装置20に出力する。操作指令は、エンドエフェクタ11の位置の変化量、変化方向及び変化速度、並びに、姿勢の変化量、変化方向及び変化速度等を指令する操作位置指令と、エンドエフェクタ11が対象物に加える作用力の大きさ及び方向等を指令する操作力指令とを含む。
また、入力処理部421は、各モータ404から回転センサ及び電流センサの検出信号を受け取り、当該検出信号から各モータ404の回転量及び電流値を検出し、フィードバック情報として制御装置20に出力する。
動作制御部422は、制御装置20の第2動作指令部20hから受け取るモータ動作指令に従って、各モータ404の駆動を制御する。動作制御部422は、上記動作指令に従って、各モータ404に回転負荷(「負荷トルク」とも呼ばれる)を発生させる。この回転負荷は、ユーザPが操作装置400の把持部401に与える操作力に対して反力として作用する。これにより、ユーザPは、例えば、対象物から反力を受けているように把持部401から反力を感じつつ、把持部401を操作することができる。
制御装置20の記憶部20pは、種々の情報を記憶し、記憶している情報の読み出しを可能にする。例えば、記憶部20pは、操作入力装置40の入力装置410を介して入力される情報等を記憶する。また、記憶部20pは、画像処理に用いられる情報として、撮像装置30のカメラの外部パラメタと内部パラメタと含むカメラパラメタを記憶する。外部パラメタの例は、カメラの位置(3次元位置)及び向き(光軸中心の向き)等を示すパラメタである。内部パラメタの例は、カメラのレンズの歪み、焦点距離、撮像素子の1画素のサイズ及び光軸中心の画素座標等を示すパラメタである。また、記憶部20pは、ロボット10によって研削処理される対象物と当該対象物の研削対象領域の位置、形状及び寸法等とを関連付けて記憶してもよい。また、記憶部20pは、撮像装置30によって撮像された画像データ、当該画像データの処理画像データ及び/又はプログラム等を記憶してもよい。
また、記憶部20pは、第1座標系関係20paと第2座標系関係20pbとを記憶する。第1座標系関係20paは、ロボット10に設定されたロボット座標系Crと対象物に設定された対象物座標系Cwとの関係である。第2座標系関係20pbは、操作装置400に設定された操作座標系Ccと対象物座標系Cwとの関係である。なお、記憶部20pは、ロボット座標系Cr、操作座標系Cc及び対象物座標系Cwも記憶していてもよい。ロボット座標系Crはスレーブ座標系の一例であり、操作座標系Ccはマスタ座標系の一例である。
ここで、各座標系を説明する。図6は、図1のロボットシステム1における各座標系の一例を示す図である。図6に示すように、ロボット座標系Crは、ロボット10を基準とする座標系である。本実施の形態では、ロボット座標系Crは、ロボットアーム12が据え付けられる基台13を基準とする座標系である。ロボット座標系Crでは、Xr軸、Yr軸及びZr軸が定義される。例えば、Xr軸及びYr軸は、基台13の表面13aに沿って延び且つ互いに直交する。Zr軸は、Xr軸及びYr軸に垂直に、つまり表面13aに垂直に延びる。例えば、ロボット座標系Crの原点Orは、関節JT1の回転中心軸S1と表面13aとの交点である。表面13aから上方に向かう方向はZr軸正方向であり、その反対方向はZr軸負方向である。ロボット座標系Crの原点Orの位置並びにXr軸、Yr軸及びZr軸の方向ベクトルは、ワールド座標系を用いて定義される。
これに限定されないが、本実施の形態では、ロボット10が配置される空間に設定されるワールド座標系のX軸、Y軸及びZ軸はそれぞれ、ロボット座標系CrのXr軸、Yr軸及びZr軸と同じである。
対象物座標系Cwは、対象物Wの特定の点及び面を基準とする座標系である。本実施の形態では、対象物座標系Cwは、研削対象領域WAがある対象物Wの表面に沿う面を基準面とし、研削対象領域WA内の特定の点を基準点とする。図6では、対象物Wの内表面W1上の研削対象領域WA内の点Ow1が基準点であり、点Ow1を通り且つ内表面W1に平行な平面PL1が基準面である。対象物座標系Cwでは、Xw軸、Yw軸及びZw軸が定義され、対象物座標系Cwの1つである対象物座標系Cw1では、Xw1軸、Yw1軸及びZw1軸が定義される。Xw1軸及びYw1軸は、平面PL1に含まれ且つ点Ow1で互いに直交する。Zw1軸は、点Ow1でXw1軸及びYw1軸と直交する。内表面W1から内方に向かう方向はZw1軸正方向であり、その反対方向はZw1軸負方向である。対象物座標系Cwの原点Owの位置並びにXw軸、Yw軸及びZw軸の方向ベクトルは、ワールド座標系を用いて定義される。
操作座標系Ccは、操作装置400を基準とする座標系である。本実施の形態では、操作座標系Ccは、操作装置400に対して固定された面を基準面とし、基準面上の特定の点を基準点とする。図6では、支持台406の表面406aが基準面であり、表面406a上の特定の点Ocが基準点である。操作座標系Ccでは、Xc軸、Yc軸及びZc軸が定義される。Xc軸及びYc軸は、表面406aに含まれ且つ点Ocで互いに直交する。Zc軸は、点OcでXc軸及びYc軸と直交する。表面406aから把持部401に向かう方向はZc軸正方向であり、その反対方向はZc軸負方向である。操作座標系Ccは、ワールド座標系と関連付けられてもよく関連付けられなくてもよい。
第1座標系関係20paは、ロボット座標系Crと対象物座標系Cwとの関係である。例えば、第1座標系関係20paは、ロボット座標系Crと対象物座標系Cwとの位置及び姿勢の関係であってもよい。例えば、上記関係は、座標軸の位置及び姿勢の関係であってもよい。座標軸の位置及び姿勢の関係は、ワールド座標系を基準とするロボット座標系CrのXr軸、Yr軸及びZr軸と、対象物座標系CwのXw軸、Yw軸及びZw軸との位置及び姿勢の関係であってもよい。又は、座標軸の位置及び姿勢の関係は、ロボット座標系を基準とするXr軸、Yr軸及びZr軸とXw軸、Yw軸及びZw軸との位置及び姿勢の関係であってもよい。
例えば、図6では、第1座標系関係20paは、Xr軸とXw1軸とが平行であり且つ同じ向きであることと、Yr軸とYw1軸とが平行であり且つ同じ向きであることと、Zr軸とZw1軸とが平行であり且つ同じ向きであることとを示す。さらに、第1座標系関係20paは、ロボット座標系Crの原点Orと対象物座標系Cw1の原点Ow1との位置関係も示す。例えば、ロボット10がエンドエフェクタ11をYr軸正方向に移動させる場合、エンドエフェクタ11はYw1軸正方向に移動する。
第2座標系関係20pbは、操作座標系Ccと対象物座標系Cwとの関係である。例えば、第2座標系関係20pbは、操作座標系Ccと対象物座標系Cwとの間での座標の対応関係であってもよい。座標の対応関係は、操作座標系CcのXc軸、Yc軸及びZc軸と対象物座標系CwのXw軸、Yw軸及びZw軸との対応関係等の座標軸の対応関係であってもよく、操作座標系Ccと対象物座標系Cwとの間の座標点の対応関係であってもよい。座標軸の対応関係の例は、Xc軸がXw軸に対応し、Yc軸がYw軸に対応し、Zc軸がZw軸に対応する関係である。なお、Xc軸、Yc軸及びZc軸はそれぞれ、上記と異なるXw軸、Yw軸及びZw軸と対応してもよく、Xw軸、Yw軸及びZw軸以外の対象物座標系Cw内の軸と対応してもよい。座標点の対応関係の例は、操作座標系Ccの座標点(Xck,Yck,Zck)(k:1以上の整数)がそれぞれ対象物座標系Cwの座標点(Xwk,Ywk,Zwk)に対応する関係である。
例えば、図6では、第2座標系関係20pbは、Xc軸正方向及び負方向がそれぞれXw1軸正方向及び負方向に対応し、Yc軸正方向及び負方向がそれぞれがYw1軸正方向及び負方向に対応し、Zc軸正方向及び負方向がそれぞれがZw1軸正方向及び負方向に対応することを示す。例えば、把持部401をYc軸正方向に移動させる指令は、エンドエフェクタ11をYw1軸正方向に移動させる指令である。
撮像制御部20aは、撮像装置30の動作を制御し、撮像装置30によって撮像された画像データを取得する。撮像制御部20aは、ステレオカメラを備える撮像装置30によって同時刻に撮像された2つの画像データを対応付けて画像処理部20b及び20c等に出力する。撮像装置30によって画像を撮像すること、及び、撮像装置30によって撮像された画像データを取得することは、撮像装置30によって撮像された1つの静止画像データを取得すること、及び、撮像装置30によって撮像された動画データから1フレームの静止画像データを取得することを含む。例えば、撮像制御部20aは、所定のタイミング又は所定の時間周期等で撮像装置30に撮像させる。例えば、所定のタイミングは、予め設定されたタイミング、及び操作入力装置40を介してユーザPによって指定されたタイミング等であってもよい。例えば、予め設定されたタイミングは、時間的なタイミング、及び研削作業の進捗に対応したタイミング等であってもよい。
第1画像処理部20bは、撮像制御部20aから取得された画像データを処理することで、当該画像データに写し出される被写体の各位置の3次元位置を検出し、各位置の3次元位置を表す画像データである3次元画像データを生成する。具体的には、第1画像処理部20bは、撮像装置30によって同時刻に撮像された2つの画像データそれぞれに写し出される対象物Wの研削対象領域WAを特定する。例えば、第1画像処理部20bは、記憶部20pに記憶される研削対象領域WAの形状とのパターンマッチング手法等で比較することにより、各画像データにおいて研削対象領域WAのエッジを抽出してもよい。さらに、第1画像処理部20bは、記憶部20pに記憶されるカメラパラメタを用いたステレオマッチング手法等で画像処理することにより、当該2つの画像データの少なくとも一方の研削対象領域WA内において、少なくとも3つの画素に写し出される被写体と撮像装置30との距離を検出する。さらに、第1画像処理部20bは、距離が検出された各画素に写し出される被写体について、ロボットシステム1が存在する3次元空間内での3次元位置を検出する。第1画像処理部20bは検出結果を座標系検出部20dに出力する。
第2画像処理部20cは、撮像制御部20aから取得された画像データを提示装置50に出力し表示させる。第2画像処理部20cは、第1画像処理部20bから処理済みの画像データを取得し、研削対象領域WAの3次元形状を表す画像データを提示装置50に出力してもよい。例えば、上記画像データは、各画素の画素値が撮像装置30から被写体までの距離値である距離画像等であってもよい。距離値は、画素の濃淡又は色で表されてもよい。
座標系検出部20dは、第1画像処理部20bから取得される研削対象領域WAの少なくとも3つの画素の3次元位置を用いて、研削対象領域WAの新たな対象物座標系Cwdを検出し、決定部20e及び20fに出力する。このとき、座標系検出部20dは、新たな対象物座標系Cwdの原点Owdの位置、並びに、Xwd軸、Ywd軸及びZwd軸の方向ベクトルをワールド座標系で検出する。座標系検出部20dは座標系決定部の一例である。
具体的には、座標系検出部20dは、少なくとも3つの画素に写し出される被写体の3次元位置が3次元空間内で形成する平面を検出し、当該平面を対象物座標系CwdのXwdYwd平面に決定し、当該平面に垂直な軸をZwd軸に決定する。例えば、座標系検出部20dは、上記平面に沿ったXr軸方向の軸をXwd軸に決定し、Xr軸正方向に向かう方向をXwd軸正方向に決定してもよい。さらに、座標系検出部20dは、上記平面に沿ったYr軸方向の軸をYwd軸に決定し、Yr軸正方向に向かう方向をYwd軸正方向に決定してもよい。さらに、座標系検出部20dは、Zwd軸について、上記平面から基台13に向かう方向をZwd軸正方向に決定してもよい。
なお、上記平面の検出方法は、既知のいかなる方法であってもよい。例えば、座標系検出部20dは、少なくとも3つの画素に写し出される被写体の3次元位置を通る平面をXwdYwd平面に決定してもよい。又は、座標系検出部20dは、少なくとも3つの画素に写し出される被写体の3次元位置又はその近傍を通る平面、つまり、少なくとも3つの上記3次元位置に近似する平面をXwdYwd平面に決定してもよい。又は、例えば、座標系検出部20dは、少なくとも3つの画素に写し出される被写体の3次元位置を通る曲面を検出し、当該曲面の法線に垂直であり且つ当該曲面と交点を有する平面をXwdYwd平面に決定してもよい。例えば、図7では、座標系検出部20dは、3つの画素に写し出される被写体の3次元位置を通る平面を検出し、当該平面の法線方向であるYr軸方向で対象物Wの内表面W2と接する平面PL2をXw2Yw2平面に決定する。内表面W2は、鉛直方向に延びる曲面である。なお、図7は、図6のロボットシステム1における各座標系の移動例を示す図である。
座標系検出部20dは、対象物座標系Cwを変更する指令を操作入力装置40を介して受け取った場合、第1画像処理部20bから取得される少なくとも3つの画素の3次元位置から検出される対象物座標系Cwdを新たな対象物座標系Cwに決定し決定部20e及び20fに出力する。
又は、座標系検出部20dは、対象物座標系Cwを自動的に変更する制御モードにおいて、第1画像処理部20bから取得される少なくとも3つの画素の3次元位置から対象物座標系Cwdを検出し、現状の対象物座標系Cwpと検出された対象物座標系Cwdとの差異を検出する。座標系検出部20dは、対象物座標系Cwd及びCwpそれぞれの原点Owd及びOwpの位置の差異が第1閾値以上であることと、対象物座標系Cwd及びCwpの姿勢の差異が第2閾値以上であることとの一方又は両方が満たされる場合、検出された対象物座標系Cwdを新たな対象物座標系に決定し決定部20e及び20fに出力する。例えば、対象物座標系Cwd及びCwpの姿勢の差異が第2閾値以上であることは、それぞれのXwd軸及びXwp軸の方向角の差異、Ywd軸及びYwp軸の方向角の差異、及び、Zwd軸及びZwp軸の方向角の差異のうちの1つ、2つ又は3つが第2閾値以上であることであってもよい。
例えば、図7及び図8に示すように、図7のXw2軸、Yw2軸及びZw2軸の現状の対象物座標系Cw2に対して、検出後の対象物座標系Cw3がXw3軸、Yw3軸及びZw3軸で構成される場合、対象物座標系Cw2及びCw3間でのYw軸及びZw軸の方向角の差異が第2閾値以上である。一方、対象物座標系Cw2及びCw3間での原点Owの位置の差異は第1閾値未満である。この場合、座標系検出部20dは、対象物座標系Cw3を新たな対象物座標系に決定する。なお、図8は、図6のロボットシステム1における各座標系の移動例を示す図である。
第1決定部20eは、座標系検出部20dの検出結果に基づき新たな第1座標系関係20paを決定し、記憶部20pに記憶される第1座標系関係20paを更新する。第1決定部20eは、座標系検出部20dから新たな対象物座標系Cwdを受け取ると、新たな対象物座標系Cwdとロボット座標系Crとの関係を新たな第1座標系関係20paに決定する。例えば、第1決定部20eは、新たな対象物座標系Cwdとロボット座標系Crとの位置及び姿勢の関係に基づき、新たな第1座標系関係20paを決定してもよい。例えば、第1決定部20eは、新たな対象物座標系Cwdとロボット座標系Crとの新たな関係を示す関係式を演算し、現状の対象物座標系Cwpとロボット座標系Crとの現状の関係を示す関係式を新たな関係式で置き換える。例えば、第1決定部20eは、現状の関係式を「Cwp=M1p・Cr」として関数「M1p」を演算し、新たな関係式を「Cwd=M1d・Cr」として関数「M1d」を演算し、関係式の置き換え、つまり更新をする。例えば、関数「M1d」及び「M1p」は、座標軸を平行移動及び回転等する座標変換の関数であってもよい。
よって、第1決定部20eは、対象物座標系Cwpが対象物座標系Cwdに移動された場合、移動後の対象物座標系Cwdとロボット座標系Crとの関係を新たな第1座標系関係20paに決定する。なお、対象物座標系Cwpが移動されるとは、対象物座標系Cwpの位置及び姿勢の少なくとも一方が移動されることであってもよい。
第2決定部20fは、座標系検出部20dの検出結果に基づき新たな第2座標系関係20pbを決定し、記憶部20pに記憶される第2座標系関係20pbを更新する。第2決定部20fは、座標系検出部20dから新たな対象物座標系Cwdを受け取ると、新たな対象物座標系Cwdと操作座標系Ccとの関係を、現状の対象物座標系Cwpと操作座標系Ccとの関係と同様の関係として、新たな第2座標系関係20pbに決定する。例えば、第2決定部20fは、新たな対象物座標系Cwdと操作座標系Ccとの座標軸及び/又は座標点の対応関係を、現状の対象物座標系Cwpと操作座標系Ccとの座標軸及び/又は座標点の対応関係と同様の関係として、新たな第2座標系関係20pbに決定してもよい。例えば、第2決定部20fは、記憶部20pに記憶された関数「M2」を用いて、現状の対象物座標系Cwpと操作座標系Ccとの現状の関係式を「Cwp=M2・Cc」と定義し、新たな対象物座標系Cwdと操作座標系Ccとの新たな関係式を「Cwd=M2・Cc」と定義し、関係式の置き換え、つまり更新をする。例えば、関数「M2」は、各座標軸方向に定数倍する等の関数であってもよい。
例えば、本実施の形態では、操作座標系CcのXc軸正方向、Yc軸正方向及びZc軸正方向の移動はそれぞれ、対象物座標系CwpのXwp軸正方向、Ywp軸正方向及びZwp軸正方向の移動に対応し、Xc軸正方向、Yc軸正方向及びZc軸正方向の移動量の定数Kt倍は、Xwp軸正方向、Ywp軸正方向及びZwp軸正方向の移動量に対応する。また、Xc軸、Yc軸及びZc軸周りの回転及び回転方向はそれぞれ、Xwp軸、Ywp軸及びZwp軸周りの回転及び回転方向に対応し、Xc軸、Yc軸及びZc軸周りの回転量の定数Kr倍は、Xwp軸、Ywp軸及びZwp軸周りの回転量に対応する。
また、Xc軸正方向、Yc軸正方向及びZc軸正方向の移動はそれぞれ、対象物座標系CwdのXwd軸正方向、Ywd軸正方向及びZwd軸正方向の移動に対応し、Xc軸正方向、Yc軸正方向及びZc軸正方向の移動量の定数Kt倍は、Xwd軸正方向、Ywd軸正方向及びZwd軸正方向の移動量に対応する。また、Xc軸、Yc軸及びZc軸周りの回転及び回転方向はそれぞれ、Xwd軸、Ywd軸及びZwd軸周りの回転及び回転方向に対応し、Xc軸、Yc軸及びZc軸周りの回転量の定数Kr倍は、Xwd軸、Ywd軸及びZwd軸周りの回転量に対応する。
よって、第2決定部20fは、対象物座標系Cwpが対象物座標系Cwdに移動された場合、移動前の対象物座標系Cwpと操作座標系Ccとの関係と同様の関係に、新たな第2座標系関係20pbを決定する、つまり、移動の前後で第2座標系関係20pbを維持する。
第1動作指令部20gは、第1座標系関係20paと第2座標系関係20pbとに基づき、操作座標系Ccでの情報をロボット座標系Crの情報に変換する演算を実行し、変換後の情報を含む動作指令を動作制御部20iに出力する。具体的には、第1動作指令部20gは、操作入力装置40から操作指令を受け取り、当該操作指令に含まれる操作座標系Ccでの操作位置指令及び操作力指令を、ロボット座標系Crでの位置指令及び力指令に変換する。例えば、第1動作指令部20gは、関係式「Cwd=M1d・Cr」と関係式「Cwd=M2・Cc」とを用いて、関係式「M1d・Cr=M2・Cc」を演算し、さらに、関係式「Cr=M1d−1M2・Cc」を演算する。第1動作指令部20gは、関係式「Cr=M1d−1M2・Cc」に操作位置指令及び操作力指令を入力することで、ロボット座標系Crでのエンドエフェクタ11の位置指令及び力指令を演算する。第1動作指令部20gは、エンドエフェクタ11の位置指令及び力指令を含む動作指令を動作制御部20iに出力する。
なお、本実施の形態では、ロボット座標系Crはワールド座標系と同じであるが、ロボット座標系Crとワールド座標系とが異なる場合、第1動作指令部20gは、ロボット座標系Crとワールド座標系との関係をさらに用いて、操作座標系Ccでの情報をロボット座標系Crの情報に変換してもよい。
ここで、エンドエフェクタ11の位置指令は、エンドエフェクタ11の位置を表す。エンドエフェクタ11の力指令は、エンドエフェクタ11が対象物に加える力を表す。位置指令は、エンドエフェクタ11の3次元位置及び3次元姿勢の指令を含んでもよい。さらに、位置指令は、3次元位置及び3次元姿勢の指令の実行時刻を含んでもよい。力指令は、力の大きさ及び力の方向の指令を含んでもよい。さらに、力指令は、力の大きさ及び方向の指令の実行時刻を含んでもよい。3次元姿勢は3次元空間内での姿勢である。本明細書及び特許請求の範囲において、「力」とは、力の大きさ及び方向のうちの少なくとも力の大きさを含み、「位置」とは、3次元位置及び3次元姿勢のうちの少なくとも3次元位置を含み得ることを意味する。また、動作指令は、研削装置11aの駆動及び駆動停止の指令等を含んでもよい。
動作制御部20iは、動作指令に従ってロボット10の各部を動作させるための制御指令を生成し、ロボット10に出力する。動作制御部20iは、ロボット10の各部の動作状態の情報を動作情報処理部20jから取得し、当該情報をフィードバック情報として用いて制御指令を生成する。具体的には、動作制御部20iは、ロボットアーム12のアーム駆動装置M1〜M6のサーボモータMaとエンドエフェクタ11の研削装置11aのモータ(図示略)とを動作させるための制御指令を生成する。
動作情報処理部20jは、ロボット10の動作情報を検出し処理する。動作情報処理部20jは、研削装置11aの通電状態等に基づき研削装置11aのON状態及びOFF状態を動作情報として検出する。動作情報処理部20jは、アーム駆動装置M1〜M6それぞれのサーボモータMaの回転センサMbの検出値と、当該サーボモータMaの電流センサMcの検出値と、エンドエフェクタ11の力センサ11eの検出値とを動作情報として取得する。動作情報処理部20jは、上記動作情報をフィードバック情報として動作制御部20i及び第2動作指令部20hに出力する。
第2動作指令部20hは、ユーザPの操作力に対する反力を操作装置400の把持部401に与えるために、動作情報処理部20jから受け取る動作情報を用いて、各モータ404を動作させる指令であるモータ動作指令を生成し操作入力装置40に出力する。具体的には、第2動作指令部20hは、動作情報に含まる力データである力センサ11eによって検出された力の大きさ及び方向に対応する反力を把持部401に与えるような各モータ404のモータ動作指令を生成する。なお、第2動作指令部20hは、動作情報に含まる位置データであるエンドエフェクタ11の位置及び姿勢に対応する位置及び姿勢に把持部401を移動させるような各モータ404のモータ動作指令を生成してもよい。なお、第2動作指令部20hは、把持部401に与える反力、位置及び姿勢の指令を操作入力装置40に出力し、操作制御装置420が当該指令に基づきモータ動作指令を生成してもよい。
[ロボットシステムの動作]
[操作入力装置の操作によるロボットの動作]
操作入力装置40の操作装置400の操作によるロボット10の動作を説明する。図1及び図3に示すように、例えば、ユーザPは、把持部401のハンドル部401a及び401bを握り、エンドエフェクタ11の研削装置11aの目的の位置への移動方向及び目的の姿勢への回動方向へ、把持部401を移動させ姿勢を変える。また、ユーザPは、把持部401の入力部401cへの入力を与えることで、研削装置11aを起動させる。
支持部402は、把持部401と一緒に移動し且つ姿勢を変え、6つのアーム403それぞれに屈曲及び姿勢変化等の動作をさせ、当該アーム403と接続されたモータ404の回転軸を回転させる。操作制御装置420は、当該モータ404の回転センサの回転信号及び力センサ405の力信号に基づく操作指令を制御装置20に出力する。
制御装置20は、操作指令に基づき動作指令等を生成し、当該動作指令等に従ってロボット10を動作させる。制御装置20は、エンドエフェクタ11の位置の変化、姿勢の変化及び研削装置11aを介した対象物Wへの作用力が上記力信号を反映するように、ロボットアーム12を動作させる。これにより、ユーザPは、操作装置400の把持部401を操作して、ロボット10に意図する動作をさせることができる。
さらに、制御装置20は、エンドエフェクタ11の力センサ11eの検出信号に基づく力データに対応する反力を把持部401に与えるために、当該反力に対応する回転負荷(「負荷トルク」とも呼ばれる)を各モータ404に発生させる。これにより、ユーザPは、例えば、対象物Wから反力を受けているように把持部401から反力を感じつつ、把持部401の位置及び姿勢を操作することができる。
把持部401の反力は、力センサ11eによって検出される力の大きさ及び方向を反映する。このような把持部401の反力は、対象物の表面状態に応じて異なる研削中の研削装置11aの状態を、ユーザPの手に感じさせることができる。例えば、把持部401の反力は、ユーザPが研削装置11aを手持ちし研削する場合にユーザPの手が受ける感触を、ユーザPの手に感じさせることができる。さらに、把持部401の反力は、研削中の研削装置11aの振動をユーザPの手に感じさせ得る。
また、力センサ405の力信号が示す位置の変化量、姿勢の変化量及び力の大きさ等の指令に対して、エンドエフェクタ11の位置の変化量、姿勢の変化量及び作用力の大きさ等の指令は、割り増しされる。これにより、ロボットアーム12は、把持部401の可動範囲を大きく超えてエンドエフェクタ11の位置及び姿勢を変えることができる。さらに、エンドエフェクタ11は、把持部401に加えられる力を大きく超えた作用力を発生させることができる。
[対象物座標系の自動変更の制御モードでのロボットシステムの動作]
対象物座標系を自動的に変更する制御モードでのロボットシステム1の動作を説明する。図9は、実施の形態に係るロボットシステム1の動作の一例を示すフローチャートである。
図9に示すように、ステップS101において、ユーザPは操作入力装置40の入力装置410に、対象物座標系を自動的に変更する制御モードである自動変更モードを実行する指令を入力し、操作制御装置420は当該指令を受け付け制御装置20に出力する。
次いで、ステップS102において、ユーザPによって入力される操作装置400の操作指令に従って、制御装置20は、ロボットアーム12にエンドエフェクタ11を対象物Wの研削対象領域WAの正面に移動させる。
次いで、ステップS103において、ユーザPは入力装置410に研削を開始する指令を入力し、操作制御装置420は当該指令を受け付け制御装置20に出力する。
次いで、ステップS104において、制御装置20は、撮像装置30の撮像タイミングであるか否かを判定し、撮像タイミングである場合(ステップS104でYes)にステップS105に進み、撮像タイミングでない場合(ステップS104でNo)にステップS110に進む。なお、ステップS103の次のステップS104では、撮像タイミングである。制御装置20は、時間を測定するタイマ又はクロック等を備え、所定の時間周期毎の撮像タイミングを計時してもよい。
ステップS105において、制御装置20は、撮像装置30に研削対象領域WAを撮像させる。次いで、ステップS106において、制御装置20は、研削対象領域WAの画像データを処理することで、当該画像データの3次元画像データを生成する。次いで、ステップS107において、制御装置20は、3次元画像データを用いて、新たな対象物座標系Cwdを検出する。
次いで、ステップS108において、制御装置20は、新たな対象物座標系Cwdと現状の対象物座標系Cwpとの差異が閾値以上であるか否かを判定する。制御装置20は、閾値以上である場合(ステップS108でYes)にステップS109に進み、閾値未満である場合(ステップS108でNo)にステップS110に進む。
ステップS109において、制御装置20は、新たな対象物座標系Cwdに基づき、記憶部20pに記憶される第1座標系関係20pa及び第2座標系関係20pbを更新し記憶部20pに記憶させる。
次いで、ステップS110において、制御装置20は、ユーザPによって入力される操作装置400の操作指令と記憶部20pの第1座標系関係20pa及び第2座標系関係20pbとに従って、ロボットアーム12を動作させ、エンドエフェクタ11の研削装置11aに研削対象領域WAを研削させる。
次いで、ステップS111において、制御装置20は、入力装置410を介して研削作業を終了する指令を受け付けたか否かを判定し、受け付けた場合(ステップS111でYes)に一連の処理を終了し、受け付けていない場合(ステップS111でNo)にステップS104に戻る。
上記から、研削作業の進捗に伴って研削対象領域WAの位置及び/又は姿勢が変化した場合、制御装置20は、ステップS104〜S111の処理を繰り返すことによって、対象物座標系Cwを移動させ、当該対象物座標系Cwに合わせて第1座標系関係20pa及び第2座標系関係20pbを更新する。制御装置20は、更新後の第1座標系関係20pa及び第2座標系関係20pbに基づき、操作装置400に入力される操作指令に従ってロボット10の動作を制御する。さらに、制御装置20は、所定の時間周期毎に研削対象領域WAの位置及び/又は姿勢の変化を検出することで、研削対象領域WAの状態に対応して第1座標系関係20pa及び第2座標系関係20pbを更新することができる。例えば、所定の時間周期の長さによっては、制御装置20は研削対象領域WAの状態にリアルタイムに対応して第1座標系関係20pa及び第2座標系関係20pbを更新することができる。
例えば、図6の対象物座標系Cw1は、図7の対象物座標系Cw2及び図10の対象物座標系Cw4に移動し得る。なお、図10は、図6のロボットシステム1における各座標系の移動例を示す図である。対象物座標系Cw4は、対象物Wの天井の内表面W3を基準面PL4とする座標系である。これにより、図6、図7及び図10のそれぞれの場合において、ユーザPが、操作装置400において、例えば、把持部401にYc軸正方向への力を加えると、制御装置20は、ロボット10にエンドエフェクタ11をYw1軸正方向、Yw2軸正方向及びYw4軸正方向に移動させる。よって、ロボット10が作用を加える対象である研削対象領域WAの位置及び/又は姿勢が変わる場合でも、ユーザPは姿勢を変えずに操作装置400を操作することができる。
[対象物座標系の非自動変更の制御モードでのロボットシステムの動作]
対象物座標系を自動的に変更しない制御モードでのロボットシステム1の動作を説明する。図11は、実施の形態に係るロボットシステム1の動作の一例を示すフローチャートである。
図11に示すように、ステップS201において、ユーザPは操作入力装置40の入力装置410に、対象物座標系を自動的に変更しない制御モードである非自動変更モードを実行する指令を入力し、操作制御装置420は当該指令を受け付け制御装置20に出力する。
次いで、ステップS202において、ユーザPによって入力される操作装置400の操作指令に従って、制御装置20は、ロボットアーム12にエンドエフェクタ11を対象物Wの研削対象領域WAの正面に移動させる。
次いで、ステップS203において、ユーザPは入力装置410に研削を開始する指令を入力し、操作制御装置420は当該指令を受け付け制御装置20に出力する。
次いで、ステップS204において、制御装置20は、入力装置410を介して撮像装置30に撮像させる指令を受け付けたか否かを判定し、受け付けた場合(ステップS204でYes)にステップS205に進み、受け付けていない場合(ステップS204でNo)にステップS210に進む。なお、ステップS203の次のステップS204では、ユーザPは、入力装置410に撮像の指令を入力する。
ステップS205〜ステップS210の処理はそれぞれ、ステップS105〜S110の処理と同様である。
次いで、ステップS211において、制御装置20は、入力装置410を介して研削作業を終了する指令を受け付けたか否かを判定し、受け付けた場合(ステップS211でYes)に一連の処理を終了し、受け付けていない場合(ステップS211でNo)にステップS204に戻る。
上記から、制御装置20は、入力装置410を介して撮像装置30に撮像させる指令を受け付けると対象物座標系Cwを検出し、対象物座標系Cwの位置及び/又は姿勢の変化に対応して第1座標系関係20pa及び第2座標系関係20pbを更新する。つまり、制御装置20は、ユーザPの要求に対応して第1座標系関係20pa及び第2座標系関係20pbを更新する。そして、制御装置20は、更新後の第1座標系関係20pa及び第2座標系関係20pbに基づき、操作装置400に入力される操作指令に従ってロボット10の動作を制御する。
なお、ステップS204〜S205の処理をステップS101〜S111に組み込むことで、自動変更モードにおいても、制御装置20が、ユーザPの要求に対応して第1座標系関係20pa及び第2座標系関係20pbを更新するように構成されてもよい。
(その他の実施の形態)
以上、本開示の実施の形態の例について説明したが、本開示は、上記実施の形態に限定されない。すなわち、本開示の範囲内で種々の変形及び改良が可能である。例えば、各種変形を実施の形態に施したもの、及び、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
例えば、実施の形態では、制御装置20は、対象物の3次元画像データを用いて対象物座標系を検出するように構成されていたが、これに限定されない。例えば、対象物座標系Cw1〜Cw4等の複数の対象物座標系の情報が予め設定され、記憶部20pに記憶されていてもよい。制御装置20は、操作入力装置40を介してユーザPによって指定等された対象物座標系を記憶部20pから読み出し、当該対象物座標系を用いて第1座標系関係20pa及び第2座標系関係20pbを更新するように構成されてもよい。
また、実施の形態では、制御装置20は、所定の時間周期で撮像される研削対象領域WAの3次元画像データに基づき、研削対象領域WAの位置及び/又は姿勢の変化を連続的に検出することで、研削対象領域WAの状態に対応して対象物座標系を変更するように構成されていた。又は、制御装置20は、操作入力装置40を介して指令が入力されるタイミングである所定のタイミングで撮像される研削対象領域WAの3次元画像データに基づき、研削対象領域WAの状態に対応して対象物座標系を変更するように構成されていた。しかしながら、対象物座標系を変更するタイミングは、上記タイミングに限定されない。
例えば、制御装置20は、研削対象領域WAに対する研削作業の進捗に対応した所定のタイミング、及び、予め時間的に設定された所定のタイミング等の所定のタイミングで撮像装置30に研削対象領域WAを撮像させ、研削対象領域WAの3次元画像データに基づき、研削対象領域WAの状態に対応して対象物座標系を変更するように構成されてもよい。例えば、研削作業の進捗は、研削された面積の進捗、所定の方向への研削の進捗、及び研削作業時間の進捗等であってもよい。
また、実施の形態に係るロボットシステム1は、距離検出装置として撮像装置30を備えていたが、これに限定されない。距離検出装置は、対象物までの距離を検出することができればよい。例えば、距離検出装置は、光波、レーザ又は超音波等を用いて距離を検出するセンサであってもよい。
また、実施の形態では、本開示の技術が適用可能である機械装置として、産業用ロボットであるロボット10を例示したが、本開示の技術が適用可能である機械装置は、産業用ロボット以外の機械装置であってもよい。例えば、当該機械装置は、サービスロボット、建設機械、トンネル掘削機、クレーン、荷役搬送車、及びヒューマノイド等であってもよい。サービスロボットは、介護、医療、清掃、警備、案内、救助、調理、商品提供等の様々なサービス業で使用されるロボットである。
また、本開示の技術は、制御方法であってもよい。例えば、本開示の一態様に係る制御方法は、マスタ装置によって操作されるスレーブ装置を制御する制御方法であって、前記スレーブ装置の処理の対象物に設定された対象物座標系と前記スレーブ装置に設定されたスレーブ座標系との関係である第1座標系関係を決定することと、前記マスタ装置に設定されたマスタ座標系と前記対象物座標系との関係である第2座標系関係を決定することと、前記マスタ装置の操作端に力が加えられることで前記マスタ装置に入力される情報である操作情報と、前記第1座標系関係と、前記第2座標系関係とに従って、前記対象物に対して前記スレーブ装置に動作させる動作指令を出力することとを含み、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、移動後の前記対象物座標系と前記マスタ座標系との移動後の前記第2座標系関係を、移動前の前記第2座標系関係と同様の関係に決定する。上記制御方法は、CPU、LSIなどの回路、ICカード又は単体のモジュール等によって、実現されてもよい。
また、本開示の技術は、上記制御方法を実行するためのプログラムであってもよく、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。
また、機能ブロック図におけるブロックの分割は一例であり、複数のブロックを一つのブロックとして実現する、一つのブロックを複数に分割する、及び/又は、一部の機能を他のブロックに移してもよい。また、類似する機能を有する複数のブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
1 ロボットシステム
10 ロボット(スレーブ装置)
11 エンドエフェクタ(作用部)
12 ロボットアーム(動作部)
20 制御装置
20d 座標系検出部(座標系決定部)
20e 第1決定部
20f 第2決定部
20g,20h 動作指令部
30 撮像装置(距離検出装置)
40 操作入力装置(マスタ装置)
400 操作装置
401 把持部(操作端)
405 力センサ(操作検出部)

Claims (18)

  1. 操作端と、前記操作端に力が加えられることで入力される情報である操作情報を検出し出力する操作検出部とを備えるマスタ装置と、
    対象物に作用を加える作用部と前記作用部を移動させる動作部とを備えるスレーブ装置と、
    制御装置とを備え、
    前記制御装置は、
    前記スレーブ装置に設定されたスレーブ座標系と前記対象物に設定された対象物座標系との関係である第1座標系関係を決定する第1決定部と、
    前記マスタ装置に設定されたマスタ座標系と前記対象物座標系との関係である第2座標系関係を決定する第2決定部と、
    前記操作情報と前記第1座標系関係と前記第2座標系関係とに従って、前記動作部によって前記作用部に動作させる動作指令を出力する動作指令部とを含み、
    前記第1決定部は、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、
    前記第2決定部は、前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記マスタ座標系との移動後の前記第2座標系関係を、移動前の前記第2座標系関係と同様の関係に決定する
    マスタスレーブシステム。
  2. 前記対象物までの距離である対象物距離を検出する距離検出装置をさらに備え、
    前記制御装置は、前記距離検出装置によって検出された前記対象物距離に基づき、前記対象物座標系を決定する座標系決定部をさらに含む
    請求項1に記載のマスタスレーブシステム。
  3. 前記距離検出装置は、前記対象物距離を所定の時間間隔で検出し、
    前記座標系決定部は、検出された前記対象物距離に対応して前記対象物座標系を変えるように決定する
    請求項2に記載のマスタスレーブシステム。
  4. 前記距離検出装置は、前記対象物距離を所定のタイミングで検出し、
    前記座標系決定部は、検出された前記対象物距離に対応して前記対象物座標系を変えるように決定する
    請求項2に記載のマスタスレーブシステム。
  5. 前記距離検出装置は、被写体までの距離を検出するための画像を撮像することができる撮像装置であり、
    前記制御装置は、前記撮像装置によって撮像された前記対象物の画像を画像処理することで、前記対象物距離を検出する画像処理部をさらに含む
    請求項2〜4のいずれか一項に記載のマスタスレーブシステム。
  6. 前記対象物座標系の移動は、前記対象物座標系の位置及び姿勢の移動を含む
    請求項1〜5のいずれか一項に記載のマスタスレーブシステム。
  7. 前記操作検出部は、前記操作端に加えられる力の方向及び大きさを前記操作情報として検出し、
    前記動作指令部は、前記作用部の位置、姿勢及び前記対象物への作用力を含む前記動作指令を生成する
    請求項1〜6のいずれか一項に記載のマスタスレーブシステム。
  8. 前記操作検出部は、前記操作端に加えられる3軸方向の力の大きさ及び3軸周りの力のモーメントを前記操作情報として検出する
    請求項7に記載のマスタスレーブシステム。
  9. 前記作用部は、研削装置を含み、
    前記動作部は、ロボットアームを含む
    請求項1〜8のいずれか一項に記載のマスタスレーブシステム。
  10. マスタ装置によって操作されるスレーブ装置を制御する制御方法であって、
    前記スレーブ装置の処理の対象物に設定された対象物座標系と前記スレーブ装置に設定されたスレーブ座標系との関係である第1座標系関係を決定することと、
    前記マスタ装置に設定されたマスタ座標系と前記対象物座標系との関係である第2座標系関係を決定することと、
    前記マスタ装置の操作端に力が加えられることで前記マスタ装置に入力される情報である操作情報と、前記第1座標系関係と、前記第2座標系関係とに従って、前記対象物に対して前記スレーブ装置に動作させる動作指令を出力することとを含み、
    前記対象物座標系が移動された場合、移動後の前記対象物座標系と前記スレーブ座標系とに基づき、移動後の前記第1座標系関係を新たに決定し、移動後の前記対象物座標系と前記マスタ座標系との移動後の前記第2座標系関係を、移動前の前記第2座標系関係と同様の関係に決定する
    制御方法。
  11. 前記対象物までの距離である対象物距離を取得することと、
    前記対象物距離に基づき、前記対象物座標系を決定することとをさらに含む
    請求項10に記載の制御方法。
  12. 所定の時間間隔で検出された前記対象物距離を取得し、
    検出された前記対象物距離に対応して前記対象物座標系を変えるように決定する
    請求項11に記載の制御方法。
  13. 所定のタイミングで検出された前記対象物距離を取得し、
    検出された前記対象物距離に対応して前記対象物座標系を変えるように決定する
    請求項11に記載の制御方法。
  14. 被写体までの距離を検出するための画像を撮像することができる撮像装置によって撮像された前記対象物の画像を取得することと、
    前記対象物の画像を画像処理することで、前記対象物までの距離を検出することとをさらに含む
    請求項10〜13のいずれか一項に記載の制御方法。
  15. 前記対象物座標系の移動は、前記対象物座標系の位置及び姿勢の移動を含む
    請求項10〜14のいずれか一項に記載の制御方法。
  16. 前記操作情報は、前記操作端に加えられる力の方向及び大きさを含み、
    前記動作指令は、前記対象物に作用を加える前記スレーブ装置の作用部の位置、姿勢及び前記対象物への作用力を含む
    請求項10〜15のいずれか一項に記載の制御方法。
  17. 前記操作情報は、前記操作端に加えられる3軸方向の力の大きさ及び3軸周りの力のモーメントを含む
    請求項16に記載の制御方法。
  18. 請求項10〜17のいずれか一項に記載の制御方法を実行する制御装置。
JP2019207272A 2019-11-15 2019-11-15 マスタスレーブシステム、制御方法及び制御装置 Active JP7277340B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2019207272A JP7277340B2 (ja) 2019-11-15 2019-11-15 マスタスレーブシステム、制御方法及び制御装置
US17/776,606 US20220401169A1 (en) 2019-11-15 2020-11-13 Master-slave system and controlling method
EP20886827.3A EP4059668A4 (en) 2019-11-15 2020-11-13 MASTER/SLAVE SYSTEM AND METHOD FOR CONTROLLING THE SAME
PCT/JP2020/042379 WO2021095833A1 (ja) 2019-11-15 2020-11-13 マスタスレーブシステム及び制御方法
CN202080074458.5A CN114599485B (zh) 2019-11-15 2020-11-13 主从系统以及控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019207272A JP7277340B2 (ja) 2019-11-15 2019-11-15 マスタスレーブシステム、制御方法及び制御装置

Publications (2)

Publication Number Publication Date
JP2021079466A true JP2021079466A (ja) 2021-05-27
JP7277340B2 JP7277340B2 (ja) 2023-05-18

Family

ID=75912761

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019207272A Active JP7277340B2 (ja) 2019-11-15 2019-11-15 マスタスレーブシステム、制御方法及び制御装置

Country Status (5)

Country Link
US (1) US20220401169A1 (ja)
EP (1) EP4059668A4 (ja)
JP (1) JP7277340B2 (ja)
CN (1) CN114599485B (ja)
WO (1) WO2021095833A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06143161A (ja) * 1992-10-29 1994-05-24 Kobe Steel Ltd マニピュレータの制御方法及びその装置
JPH09216183A (ja) * 1996-02-13 1997-08-19 Kawasaki Heavy Ind Ltd ロボット3次元位置姿勢教示システム
JP2000042960A (ja) * 1998-07-29 2000-02-15 Gifu Prefecture マニピュレータの遠隔操作装置
JP2003181785A (ja) * 2001-12-20 2003-07-02 Yaskawa Electric Corp 遠隔操作装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2664205B2 (ja) * 1988-06-10 1997-10-15 株式会社日立製作所 マニピュレータ制御システム
DE4428734A1 (de) * 1993-08-13 1995-02-23 Fraunhofer Ges Forschung Verfahren zur Bearbeitung eines Objektes, insbesondere eines Flugzeugs
EP0816020A4 (en) * 1994-09-21 1999-04-21 Komatsu Mfg Co Ltd MASTER / SLAVE MANIPULATOR AND ITS CONTROL METHOD
CN100431809C (zh) * 2007-01-22 2008-11-12 北京航空航天大学 六自由度力觉人机交互装置
ATE532610T1 (de) * 2008-04-30 2011-11-15 Abb Technology Ab Verfahren und system zur bestimmung der beziehung zwischen einem roboterkoordinatensystem und einem lokalen koordinatensystem, das im arbeitsbereich des roboters positioniert ist
JP2009274191A (ja) 2008-05-17 2009-11-26 National Univ Corp Shizuoka Univ 作業用ロボットおよび同作業用ロボットに適用されるコンピュータプログラム
JP2012171088A (ja) * 2011-02-24 2012-09-10 Olympus Corp マスタ操作入力装置及びマスタスレーブマニピュレータ
JP6143161B2 (ja) 2012-03-30 2017-06-07 日東電工株式会社 表示装置
JP6811635B2 (ja) * 2017-02-10 2021-01-13 川崎重工業株式会社 ロボットシステム及びその制御方法
JP6886869B2 (ja) * 2017-06-09 2021-06-16 川崎重工業株式会社 動作予測システム及び動作予測方法
JP6756698B2 (ja) * 2017-12-27 2020-09-16 ファナック株式会社 研磨装置
JP2019162712A (ja) * 2018-03-20 2019-09-26 ファナック株式会社 制御装置、機械学習装置及びシステム
CN109048897B (zh) * 2018-08-14 2021-01-15 清华大学深圳研究生院 一种主从机器人遥操作的方法
JP6670974B1 (ja) * 2019-12-02 2020-03-25 ジック株式会社 ロボット用の座標系アライメント方法及びアライメントシステム並びにアライメント装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06143161A (ja) * 1992-10-29 1994-05-24 Kobe Steel Ltd マニピュレータの制御方法及びその装置
JPH09216183A (ja) * 1996-02-13 1997-08-19 Kawasaki Heavy Ind Ltd ロボット3次元位置姿勢教示システム
JP2000042960A (ja) * 1998-07-29 2000-02-15 Gifu Prefecture マニピュレータの遠隔操作装置
JP2003181785A (ja) * 2001-12-20 2003-07-02 Yaskawa Electric Corp 遠隔操作装置

Also Published As

Publication number Publication date
WO2021095833A1 (ja) 2021-05-20
US20220401169A1 (en) 2022-12-22
EP4059668A1 (en) 2022-09-21
CN114599485B (zh) 2023-07-11
EP4059668A4 (en) 2023-12-13
JP7277340B2 (ja) 2023-05-18
CN114599485A (zh) 2022-06-07

Similar Documents

Publication Publication Date Title
JP7518610B2 (ja) 制御装置、制御システム、ロボットシステム及び制御方法
JP6733239B2 (ja) 制御装置及びロボットシステム
US8306661B2 (en) Method and system for establishing no-entry zone for robot
US20180029221A1 (en) Robot and robot system
JP7339806B2 (ja) 制御システム、ロボットシステム及び制御方法
JP2017170571A (ja) ロボット、ロボット制御装置、及びロボットシステム
US11691290B2 (en) Robot control method and robot system
CN111590567B (zh) 一种基于Omega手柄的空间机械臂遥操作规划方法
JP2017052015A (ja) 制御装置、ロボットおよびロボットシステム
JP6939104B2 (ja) 制御装置、ロボットシステムおよびロボット制御方法
US20180085920A1 (en) Robot control device, robot, and robot system
WO2020179416A1 (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
KR102701952B1 (ko) 제어 방법, 제어 장치, 로봇 시스템, 프로그램 및 기록 매체
JP7288521B2 (ja) マスタスレーブシステム及び制御方法
WO2021095833A1 (ja) マスタスレーブシステム及び制御方法
US11759955B2 (en) Calibration method
WO2021256464A1 (ja) 撮像システム及びロボットシステム
WO2023013559A1 (ja) ロボットシステム、ロボットの加工方法及び加工プログラム
WO2023013560A1 (ja) ロボットシステム、ロボットの加工方法及び加工プログラム
WO2021210514A1 (ja) ロボットの制御装置及び制御方法、ロボットシステム、ロボットの動作プログラムを生成する装置及び方法
JP2019042902A (ja) 撮像方法及びロボットシステム
JP2022164073A (ja) ロボットシステム、その制御方法及び制御プログラム
JP2022030207A (ja) 教示方法およびロボットシステム
JP2020157475A (ja) 制御装置、ロボットシステム及びロボット制御方法
JP2024102426A (ja) 画像の生成方法、自由視点画像の生成方法、および、提供方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220817

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: 20230411

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230508

R150 Certificate of patent or registration of utility model

Ref document number: 7277340

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150