JP7481432B2 - ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラム - Google Patents

ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP7481432B2
JP7481432B2 JP2022512158A JP2022512158A JP7481432B2 JP 7481432 B2 JP7481432 B2 JP 7481432B2 JP 2022512158 A JP2022512158 A JP 2022512158A JP 2022512158 A JP2022512158 A JP 2022512158A JP 7481432 B2 JP7481432 B2 JP 7481432B2
Authority
JP
Japan
Prior art keywords
robot
change
posture
position data
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022512158A
Other languages
English (en)
Other versions
JPWO2021200743A1 (ja
Inventor
万峰 傅
恭平 小窪
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Publication of JPWO2021200743A1 publication Critical patent/JPWO2021200743A1/ja
Application granted granted Critical
Publication of JP7481432B2 publication Critical patent/JP7481432B2/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/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • B25J13/089Determining the position of the robot with reference to its environment
    • 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
    • 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/0081Programme-controlled manipulators with master teach-in means
    • 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/40383Correction, modification program by detection type workpiece
    • 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/40387Modify without repeating teaching operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

本発明は、ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラムに関する。
ロボットの教示位置を修正するための装置が知られている(例えば、特許文献1)。
特開2018-202559号公報
従来、ロボットの教示位置修正に掛かる作業を、より簡単化する技術が求められている。
本開示の一態様において、ワークに対して所定の位置に配置された指標を用いて、ロボットに対するワークの配置が変化したときに該ロボットの教示位置を修正するための装置は、ワークの配置変化前に、ロボットの手先部を第1の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第1位置データを取得する第1位置データ取得部と、配置変化後に、手先部を第1の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第2位置データを取得する第2位置データ取得部と、第1位置データ及び第2位置データに基づいて、配置変化によるロボットに対するワークの姿勢の変化量を示す姿勢変化データを取得する姿勢変化データ取得部と、手先部を、姿勢変化データを用いて第1の姿勢から補正された第2の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第3位置データを取得する第3位置データ取得部と、第1位置データ及び第3位置データに基づいて、配置変化によるロボットに対するワークの位置の変化量を示す位置変化データを取得する位置変化データ取得部とを備える。
本開示の他の態様において、ワークに対して所定の位置に配置された指標を用いて、ロボットに対するワークの配置が変化したときに該ロボットの教示位置を修正する方法は、ワークの配置変化前に、ロボットの手先部を第1の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第1位置データを取得し、配置変化後に、手先部を第1の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第2位置データを取得し、第1位置データ及び第2位置データに基づいて、配置変化によるロボットに対するワークの姿勢の変化量を示す姿勢変化データを取得し、手先部を、姿勢変化データを用いて第1の姿勢から補正された第2の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第3位置データを取得し、第1位置データ及び第3位置データに基づいて、配置変化によるロボットに対するワークの位置の変化量を示す位置変化データを取得する。
本開示のさらに他の態様において、コンピュータプログラムは、ワークに対して所定の位置に配置された指標を用いて、ロボットに対するワークの配置が変化したときに該ロボットの教示位置を修正するために、コンピュータを、ワークの配置変化前に、ロボットの手先部を第1の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第1位置データを取得する第1位置データ取得部、配置変化後に、手先部を第1の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第2位置データを取得する第2位置データ取得部、第1位置データ及び第2位置データに基づいて、配置変化によるロボットに対するワークの姿勢の変化量を示す姿勢変化データを取得する姿勢変化データ取得部、手先部を、姿勢変化データを用いて第1の姿勢から補正された第2の姿勢に配置させた状態で指標に対して所定の位置関係に配置したときのロボットの第3位置データを取得する第3位置データ取得部、及び、第1位置データ及び第3位置データに基づいて、配置変化によるロボットに対するワークの位置の変化量を示す位置変化データを取得する位置変化データ取得部として機能させる。
本開示によれば、実機タッチアップ動作を行うことなく、第3位置データによって、教示位置修正用の位置変化データを取得できる。したがって、教示位置修正に掛かる作業を簡単化することができる。
一実施形態に係るロボットシステムの図である。 図1に示すロボットシステムのブロック図である。 図1に示す手先部の拡大図である。 図3に示す手先部を、MIF座標系のz軸プラス方向から見た図である。 一実施形態に係るワーク及び指標を説明するための図である。 事前フローの一例を示すフローチャートである。 図6中ステップS2、及び図10中のステップS2’のフローの一例を示すフローチャートである。 図7中のステップS12で視覚センサが撮像した画像データの例を示す。 教示位置修正フローの一例を示すフローチャートである。 図9中のステップS23のフローの一例を示すフローチャートである。 他の実施形態に係るロボットシステムのブロック図である。
以下、本開示の実施の形態を図面に基づいて詳細に説明する。なお、以下に説明する種々の実施形態において、同様の要素には同じ符号を付し、重複する説明を省略する。まず、図1~図4を参照して、一実施形態に係るロボットシステム10について説明する。ロボットシステム10は、ロボット12、視覚センサ14、制御装置16、及び教示装置18を備える。
本実施形態においては、ロボット12は、垂直多関節ロボットであって、ロボットベース20、旋回胴22、ロボットアーム24、及び手首部26を有する。ロボットベース20は、作業セルの床に固定されている。旋回胴22は、鉛直軸周りに旋回可能となるようにロボットベース20に設けられている。ロボットアーム24は、旋回胴22に水平軸周りに回動可能に設けられた下腕部28と、該下腕部28の先端部に回動可能に設けられた上腕部30とを有する。
手首部26は、上腕部30の先端部に回動可能に連結された手首ベース32と、該手首ベース32に軸線Aの周りに回動可能に設けられた手首フランジ34を有する。手首フランジ34は、軸線Aを中心軸とする円筒状の部材であって、その先端側に取付面34aを有する。
取付面34aには、ワークに対する作業を行うエンドエフェクタ36が着脱可能に取り付けられる。エンドエフェクタ36は、例えば、ロボットハンド、溶接ガン、レーザ加工ヘッド、塗材塗布器等であって、ワークWに対して所定の作業(ワークハンドリング、溶接、レーザ加工、塗工等)を行う。手首フランジ34と、該手首フランジ34の先端側に取り付けられるエンドエフェクタ36とは、ロボット12の手先部38を構成する。
ロボット12の各構成要素(すなわち、ロボットベース20、旋回胴22、ロボットアーム24、及び手首部26)には、サーボモータ39(図2)がそれぞれ内蔵されている。サーボモータ39は、制御装置16からの指令に応じてロボット12の各可動要素(すなわち、旋回胴22、ロボットアーム24、及び手首部26)を駆動する。
ロボット12には、ロボット座標系C1(図1)が設定されている。ロボット座標系C1は、ロボット12の各可動要素の動作を自動制御するための座標系であって、3次元空間内に固定されている。本実施形態においては、ロボット座標系C1は、その原点が、ロボットベース20の中心に配置され、そのz軸が、旋回胴22の旋回軸に一致するように、ロボット12に対して設定されている。
一方、図1、図3及び図4に示すように、手先部38には、メカニカルインターフェース(以下、「MIF」と略称する)座標系C2が設定されている。MIF座標系C2は、ロボット座標系C1における手先部38(すなわち、エンドエフェクタ36)の位置及び姿勢を制御するための座標系である。
本実施形態においては、MIF座標系C2は、その原点が、手首フランジ34の取付面34aの中心に配置され、そのz軸が軸線Aに一致するように、手先部38に対して設定されている。手先部38を移動させるとき、プロセッサ40は、ロボット座標系C1にMIF座標系C2を設定し、設定したMIF座標系C2によって表される位置及び姿勢に手先部38を配置させるように、ロボット12の各サーボモータ39を制御する。こうして、プロセッサ40は、ロボット座標系C1における任意の位置及び姿勢に手先部38を位置決めできる。
視覚センサ14は、例えば、カメラ又は3次元視覚センサであって、光学系(集光レンズ、フォーカスレンズ等)、及び撮像センサ(CCD、CMOS等)を有する。視覚センサ14は、物体を撮像し、撮像した画像データを制御装置16へ送信する。視覚センサ14は、手先部38に対して所定の位置に固定されている。
より具体的には、図4に示すように、視覚センサ14は、手首フランジ34に内蔵されて移動不能に固定されており、被写体像が、取付面34aに形成された開口34bを通して、光軸Oに沿って視覚センサ14の光学系に入射するように、配置されている。視覚センサ14には、センサ座標系C3が設定されている。
センサ座標系C3は、視覚センサ14が撮像した画像データの各画素の座標を規定する座標系であって、そのx-y平面が視覚センサ14の光軸Oと直交するように、視覚センサ14に対して設定されている。ここで、本実施形態においては、MIF座標系C2とセンサ座標系C3との位置関係は、キャリブレーションされておらず、未知であるとする。
制御装置16は、ロボット12及び視覚センサ14の動作を制御する。具体的には、制御装置16は、プロセッサ40、メモリ42、及びI/Oインターフェース44を有するコンピュータである。プロセッサ40は、CPU又はGPU等を有し、バス46を介して、メモリ42及びI/Oインターフェース44と通信可能に接続されている。プロセッサ40は、メモリ42及びI/Oインターフェース44と通信しつつ、ロボット12及び視覚センサ14へ指令を送り、ロボット12及び視覚センサ14の動作を制御する。
メモリ42は、RAM又はROM等を有し、各種データを一時的又は恒久的に記憶する。I/Oインターフェース44は、例えば、イーサネット(登録商標)ポート、USBポート、光ファイバコネクタ、又はHDMI(登録商標)端子等を有し、プロセッサ40からの指令の下、外部機器とデータを無線又は有線で通信する。上述のサーボモータ39及び視覚センサ14は、I/Oインターフェース44に無線又は有線で通信可能に接続されている。
教示装置18は、例えば、ロボット12に所定の作業を実行させるための動作を教示するのに用いられる手持ち式装置(教示ペンダント、又は、タブレット携帯機器のような携帯機器)である。具体的には、教示装置18は、プロセッサ50、メモリ52、I/Oインターフェース54、入力装置56、及び表示装置58を有するコンピュータである。プロセッサ50は、CPU又はGPU等を有し、バス60を介して、メモリ52、入力装置56、表示装置58、及びI/Oインターフェース54と通信可能に接続されている。
メモリ52は、RAM又はROM等を有し、各種データを一時的又は恒久的に記憶する。I/Oインターフェース54は、例えば、イーサネット(登録商標)ポート、USBポート、光ファイバコネクタ、又はHDMI(登録商標)端子等を有し、プロセッサ50からの指令の下、外部機器とデータを無線又は有線で通信する。I/Oインターフェース54は、制御装置16のI/Oインターフェース44に接続され、制御装置16と教示装置18とは、互いに通信可能である。
入力装置56は、押しボタン、スイッチ、又はタッチパネル等を有し、オペレータからの入力を受け付けて、入力情報をプロセッサ50に送信する。表示装置58は、LCD又は有機ELディスプレイ等を有し、プロセッサ50からの指令の下、各種情報を表示する。オペレータは、入力装置56を操作することでロボット12をジョグ操作し、ロボット12に動作を教示することができる。
ロボット12を教示することによって、オペレータは、ロボット12に所定の作業を実行させるための作業プログラムWPを構築できる。この作業プログラムWPには、作業のためにロボット12の手先部38(具体的には、エンドエフェクタ36)を位置決めすべき教示位置TPが規定されている。作業プログラムWPは、メモリ42及び52に予め格納される。
プロセッサ50は、ロボット12を動作させるための指令を制御装置16に送信し、制御装置16のプロセッサ40は、教示装置18からの指令に応じて、ロボット12を制御する。こうして、プロセッサ50は、制御装置16を介してロボット12の動作を制御できる。
図1及び図5に示すように、本実施形態においては、ロボット12の作業対象となるワークWは、保持構造Bの予め定められた位置に、治具(図示せず)等によって固定される。ワークWには、ワーク座標系C4が設定されている。ワーク座標系C4は、ロボット座標系C1におけるワークWの位置及び姿勢を規定する座標系であって、ワークW(又は、ロボット座標系C1)に対して固定されている。本実施形態においては、ワーク座標系C4は、その原点がワークWの上面の一頂角に配置され、そのx-y平面が、ワークWの上面と平行となるように、ワークWに対して配置されている。
ここで、ロボット12、ワークW、及び保持構造Bを他の製造ラインへ移設したり、又は、ロボット12、ワークW、及び保持構造Bの少なくとも1つを交換したりする場合がある。このような場合、ロボット12(又は、ロボット座標系C1)に対するワークWの配置が変化し、その結果、作業プログラムWPに従ってロボット12を動作させて手先部38を教示位置TPへ位置決めしたとしても、ワークW上の目標位置に対して作業を正確に実行できない可能性がある。
そこで、本実施形態においては、教示装置18は、ワークWに対して所定の位置に配置された指標ID、ID、IDを用いて、作業プログラムWPに規定されていたロボット12の教示位置TPを修正する。図5に示すように、本実施形態においては、計3個の指標ID、ID、及びIDが、保持構造Bの上面に設けられている。
第1の指標ID、第2の指標ID、及び第3の指標IDの各々は、円線Dと、互いに直交する2つの直線E及びFから構成されている。これら指標ID、ID、及びIDは、例えば、塗料を用いた模様、又は、保持構造Bの上面に形成された刻印(凹凸)等、視覚的に認識可能な特徴として、保持構造Bに設けられる。
次に、教示装置18の動作フローについて説明する。まず、教示装置18のプロセッサ50は、ロボット12とワークWとの配置を変える(つまり、ロボット12、ワークW、又は保持機構Bの移設又は交換)前に、図6に示す事前フローを実行する。図6に示す事前フローは、プロセッサ50が、オペレータ、上位コントローラ、又は教示位置修正用のコンピュータプログラムCPから、事前フロー開始指令を受け付けたときに、開始する。
ステップS1において、プロセッサ50は、第nの指標IDを特定する番号「n」(本実施形態では、n=1,2,3)を「1」にセットする。ステップS2において、プロセッサ50は、手先部38を第nの指標IDに対して所定の位置関係に配置するプロセスを実行する。このステップS2について、図7を参照して説明する。
ステップS11において、プロセッサ50は、手先部38を、第nの指標IDに対する初期位置PA_n、及び、第1の姿勢OR1に配置する。ここで、初期位置PA_nは、第nの指標IDが視覚センサ14の視野内に入る手先部38の位置として、予め定められる。また、第1の姿勢OR1は、ロボット座標系C1の座標(W1,P1,R1)として定められる。
ここで、座標W1は、ロボット座標系C1のx軸周りの角度を示し、座標P1は、ロボット座標系C1のy軸周りの角度を示し、座標R1は、ロボット座標系C1のz軸周りの角度を示す。この初期位置PA_n及び第1の姿勢OR1のデータ(つまり、ロボット座標系C1の座標)は、コンピュータプログラムCPに規定される。
プロセッサ50は、制御装置16を介してロボット12を制御し、該ロボット12を動作させて、手先部38を初期位置PA_n及び第1の姿勢OR1に配置させる。このとき、視覚センサ14は、ロボット12によって手先部38とともに移動され、第nの指標IDを視野に収める位置に配置される。
仮に、このステップS11の開始時点でn=1にセットされていた場合、プロセッサ50は、ロボット12を動作させて手先部38を、第1の指標IDに対する初期位置PA_1、及び第1の姿勢OR1に配置する。このように、本実施形態においては、プロセッサ50は、手先部38及び視覚センサ14を移動させるようにロボット12の動作を制御するロボット制御部72(図2)として機能する。
ステップS12において、プロセッサ50は、視覚センサ14を動作させて第nの指標IDを撮像する。このときに視覚センサ14が撮像した画像データJDの例を図8に示す。図8に示すように、本実施形態においては、センサ座標系C3の原点は、画像データJDの中心(具体的には、中心にある画素)に配置されている。
プロセッサ50は、制御装置16を介して、視覚センサ14から画像データJDを取得し、メモリ52に記憶する。したがって、プロセッサ50は、視覚センサ14によって第nの指標IDを撮像した画像データJDを取得する画像取得部74(図2)として機能する。なお、プロセッサ50は、制御装置16を介することなく、視覚センサ14から、画像データJDを直接取得してもよい。この場合、I/Oインターフェース54は、視覚センサ14と有線又は無線で通信可能に接続され得る。
ステップS13において、プロセッサ50は、直近のステップS12で取得した画像データJDにおいて第nの指標IDの位置IPが予め定めた目標位置POに配置され、且つ、第nの指標IDのサイズSZが予め定めた目標値TSに一致しているか否かを判定する。
具体的には、プロセッサ50は、取得した画像データJDを解析し、該画像データJDに写る第nの指標IDの直線E及びFの交点Gを特定する。そして、プロセッサ50は、センサ座標系C3における交点Gの座標(x,y)を、位置IPを示すデータとして取得する。ここで、本実施形態においては、目標位置POは、センサ座標系C3の原点として設定される。
一例として、プロセッサ50は、センサ座標系C3における位置IPのx座標が、-xth≦x≦xthの範囲(つまり、範囲[-xth,xth])内にあり、且つ、y座標が、-yth≦y≦ythの範囲(つまり、範囲[-yth,yth])内にある場合に、位置IPが目標位置POに配置されていると判定する。他の例として、プロセッサ50は、センサ座標系C3の原点と交点Gとの距離δ=(x+y1/2を算出し、該距離δが閾値δGth以下である場合に、位置IPが目標位置POに配置されていると判定する。
このように、本実施形態においては、プロセッサ50は、画像データJDにおいて第nの指標IDの位置IPが目標位置POに配置されているか否かを判定する画像判定部76(図2)として機能する。なお、目標位置POは、センサ座標系C3の原点以外の如何なる位置:座標(x,y)に設定されてもよい。この場合、上述の範囲[-xth,xth]及び[-yth,yth]は、[-xth+x,xth+x]及び[-yth+y,yth+y]に設定され得る。
また、プロセッサ50は、画像データJDを解析し、該画像データJDに写る第nの指標IDの円Dを特定する。そして、プロセッサ50は、センサ座標系C3における円Dの面積(又は、円Dの画像領域内に含まれる画素数)を、サイズSZを示すデータとして取得する。そして、プロセッサ50は、サイズSZが、目標値TSを基準に予め定めた範囲(例えば、[0.95×TS,1.05×TS])内にある場合に、該サイズSZが目標値TSに一致していると判定する。
このステップS13において、プロセッサ50は、位置IPが目標位置POに配置され、且つ、サイズSZが目標値TSに一致している場合にYESと判定し、図7のステップS2を終了し、図6中のステップS3へ進む。一方、プロセッサ50は、位置IPが目標位置POに配置されていない、又は、サイズSZが目標値TSに一致していない場合にNOと判定し、ステップS14へ進む。
このステップS13でYESと判定されたとき、手先部38は、第1の姿勢OR1に配置された状態で第nの指標IDに対して所定の位置関係に配置され、該所定の位置関係とは、ステップS13でYESと判定された画像データJDを視覚センサ14が撮像したときの手先部38と第nの指標IDとの位置関係である。すなわち、手先部38は、第1の姿勢OR1に配置された状態で、第nの指標IDに対し、視覚センサ14の光軸Oが交点Gを通過し、且つ該視覚センサ14が交点Gから所定の距離だけ離隔した位置関係に、配置される。
ステップS14において、プロセッサ50は、手先部38を、第1の姿勢OR1に配置させた状態で、距離dだけ方向Hへ並進移動させる。ここで、プロセッサ50は、1回目に実行するステップS14では、手先部38を、予め定めた(又はランダムに選択した)距離d及び方向Hだけ並進移動させてもよい。
その後、2回目以降に実行するステップS12で撮像した画像データJDにおいて、並進移動の結果としてセンサ座標系C3において変位した第nの指標IDの変位量及びその方向から、2回目以降に実行するステップS14で手先部38を並進移動させる距離d及び方向Hを決定してもよい。
具体的には、プロセッサ50は、位置IP及びサイズSZを目標位置PO及び目標値TSにそれぞれ近づけることができるように、距離d及び方向Hを決定する。ステップS14の実行後、プロセッサ50は、ステップS12へ戻り、ステップS13でYESと判定するまで、ステップS12~S14をループする。
再度、図6を参照し、ステップS3において、プロセッサ50は、ステップS13でYESと判定したときのロボット12の位置データPD_(第1位置データ)を取得する。例えば、プロセッサ50は、ステップS13でYESと判定した時点で、位置データPD_として、ロボット座標系C1における、MIF座標系C2の原点の座標(x_,y_,z_)を取得し、メモリ52に記憶する。
なお、プロセッサ50は、ロボット12の各サーボモータ39に設けられた回転検出器(エンコーダ、ホール素子等)からの位置フィードバックに基づいて、座標(x_、y_、z_)を求めてもよい。このように、本実施形態においては、プロセッサ50は、位置データPD_(第1位置データ)を取得する第1位置データ取得部78(図2)として機能する。
ステップS4において、プロセッサ50は、第nの指標IDを特定する番号「n」を「1」だけインクリメントする(n=n+1)。ステップS5において、プロセッサ50は、第nの指標IDを特定する番号「n」が、「4」となった(n=4)か否かを判定する。この数「4」は、指標IDの総数+1の数である。プロセッサ50は、n=4の場合にYESと判定し、図6に示す事前フローを終了する一方、n≦3の場合はNOと判定し、ステップS2へ戻る。そして、プロセッサ50は、ステップS5でYESと判定するまで、ステップS2~S5をループする。
図6の事前フローを終了した時点で、第1の指標IDに関して取得した位置データPD_:座標(x_、y_、z_)、第2の指標IDに関して取得した位置データPD_:座標(x_、y_、z_)、及び、第3の指標IDに関して取得した位置データPD_:座標(x_、y_、z_)が取得され、メモリ52に記憶されることになる。
ロボット12とワークWとの配置を変えた(つまり、ロボット12、ワークW、又は保持機構Bの移設又は交換)後、プロセッサ50は、図9に示す教示位置修正フローを実行する。なお、配置変化後のワークWに対しても、図5に示すように配置変化前と同じ位置に、第1の指標ID、第2の指標ID、及び第3の指標IDが設けられる。図9に示す教示位置修正フローは、プロセッサ50が、オペレータ、上位コントローラ、又はコンピュータプログラムCPから、位置修正フロー開始指令を受け付けたときに、開始する。
ステップS21において、プロセッサ50は、第2位置データ取得プロセスを実行する。このステップS21のフローは、図6に示すフローと同じである。すなわち、プロセッサ50は、配置変化後の第nの指標IDについて、ステップS1~S5を実行する。ステップS21で実行するステップS3において、プロセッサ50は、手先部38を第1の姿勢OR1に配置させた状態で、配置変化後の第nの指標IDに対して上記所定の位置関係(つまり、ステップS13でYESと判定したときの位置関係)に配置したときのロボット12の位置データPD_(第2位置データ)を取得する。
ステップS21の結果、第1の指標IDに関して取得した位置データPD_:座標(x_、y_、z_)、第2の指標IDに関して取得した位置データPD_:座標(x_、y_、z_)、及び、第3の指標IDに関して取得した位置データPD_:座標(x_、y_、z_)が取得され、メモリ52に記憶される。このように、本実施形態においては、プロセッサ50は、位置データPD_(第2位置データ)を取得する第2位置データ取得部80(図2)として機能する。
ステップS22において、プロセッサ50は、位置データPD_及びPD_に基づいて、姿勢変化データを取得する。具体的には、プロセッサ50は、まず、以下の行列V1を求める。
Figure 0007481432000001
ここで、nは、上述の位置データPD_及びPD_を用いて、n=(PD_-PD_)/|PD_-PD_|なる式から求めることができる。(PD_-PD_)は、座標(x_、y_、z_)から座標(x_、y_、z_)へのベクトルVT1であって、nは、該ベクトルVT1の単位ベクトルを表す。
また、aは、a=r/|r|なる式から求めることができ、rは、上述の位置データPD_及びPD_と、単位ベクトルnとを用いて、r=(PD_-PD_)・nなる式から求めることができる。ここで、(PD_-PD_)は、座標(x_、y_、z_)から座標(x_、y_、z_)へのベクトルVT2であって、rは、該ベクトルVT2と、上述の単位ベクトルnとに直交するベクトルである(つまり、rは、ベクトルVT2:(PD_-PD_)とベクトルnとの外積である)。このように、プロセッサ50は、位置データPD_に基づいて、行列V1の各パラメータを算出できる。
次に、プロセッサ50は、以下の行列V2を求める。
Figure 0007481432000002
ここで、nは、上述の位置データPD_及びPD_を用いて、n=(PD_-PD_)/|PD_-PD_|なる式から求めることができる。ここで、(PD_-PD_)は、座標(x_、y_、z_)から座標(x_、y_、z_)へのベクトルVT3であって、nは、該ベクトルVT3の単位ベクトルを表す。
また、aは、a=r/|r|なる式から求めることができ、rは、上述の位置データPD_及びPD_と、単位ベクトルnとを用いて、r=(PD_-PD_)・nなる式から求めることができる。
ここで、(PD_-PD_)は、座標(x_、y_、z_)から座標(x_、y_、z_)へのベクトルVT4であって、rは、該ベクトルVT4と、上述の単位ベクトルnとに直交するベクトルである(つまり、rは、ベクトルVT4:(PD_-PD_)とベクトルnとの外積である)。このように、プロセッサ50は、位置データPD_に基づいて、行列V2の各パラメータを算出できる。
次いで、プロセッサ50は、算出した行列V1及びV2を用いて、M1=inv(V2)・V1なる式から行列M1を求める。この行列M1は、配置変化によるロボット12(又は、ロボット座標系C1)に対するワークWの姿勢の変化量を示す姿勢変化データに相当する。このように、本実施形態においては、プロセッサ50は、位置データPD_及びPD_に基づいて、姿勢変化データM1を取得する姿勢変化データ取得部82(図2)として機能する。
ステップS23において、プロセッサ50は、第3位置データ取得プロセスを実行する。このステップS23について、図10を参照して説明する。ステップS31において、プロセッサ50は、第1の姿勢OR1を補正する。具体的には、プロセッサ50は、姿勢変化データM1を用いて手先部38(又は、ツール座標系C2)の第1の姿勢OR1(W1,P1,R1)を補正することにより、手先部38の第2の姿勢OR2(W2,P2,R2)を求める。
この第2の姿勢OR2の各座標(W2,P2,R2)は、第1の姿勢OR1の座標(W1,P1,R1)を、ステップS22で求めた行列M1(=inv(V2)・V1)で変換することで、求めることができる(すなわち、OR2=M1・OR1)。この第2の姿勢OR2は、配置変化によるロボット12(又は、ロボット座標系C1)に対するワークWの姿勢の変化量に対応するように第1の姿勢OR1から補正された手先部38の姿勢(つまり、ツール座標系C2の各軸の方向)である。
次いで、プロセッサ50は、ステップS2’を実行する。このステップS2’は、図7に示すステップS11~S14を含むものであるが、上述のステップS2と、以下の点で相違する。すなわち、ステップS2’においては、プロセッサ50は、手先部38を、ステップS31で補正した後の第2の姿勢OR2に配置した状態で、ステップS11~S14を実行する。
具体的には、プロセッサ50は、ステップS11において、手先部38を、第2の姿勢OR2に配置させた状態で、1つの指標IDに対する初期位置PA_nに配置する。該1つの指標IDは、3つの指標ID、ID及びIDの中から選択された1つの指標であって、オペレータによって予め指定され得る。
次いで、プロセッサ50は、手先部38を第2の姿勢OR2に配置させた状態で、該1つの指標IDに関してステップS12~S14を実行する。その結果、手先部38は、第2の姿勢OR2に配置された状態で、1つの指標IDに対して所定の位置関係(つまり、ステップS13でYESと判定された画像データJDを視覚センサ14が撮像したときの手先部38と1つの指標IDとの位置関係)に配置される。
再度、図10を参照して、ステップS2’の終了後、プロセッサ50は、ステップS3を実行し、このときのロボット12の位置データPD_(第3位置データ)を取得する。具体的には、プロセッサ50は、位置データPD_として、ステップS2’中のステップS13でYESと判定した時点での、ロボット座標系C1における、MIF座標系C2の原点の座標(x_,y_,z_)を取得し、メモリ52に記憶する。
このように、本実施形態においては、プロセッサ50は、手先部38を第2の姿勢OR2に配置させた状態で1つの指標IDに対して所定の位置関係に配置したときのロボット12の第3位置データPD_を取得する第3位置データ取得部84(図2)として機能する。
再度、図9を参照し、ステップS24において、プロセッサ50は、位置データPD_(第1位置データ)及び位置データPD_(第3位置データ)に基づいて、位置変化データを取得する。具体的には、プロセッサ50は、M2=Winv(M1・W)なる式から行列M2を求める。
ここで、Wは、上述のステップS2’で選択された1つの指標IDに関して取得された第1位置データPD_と、第1の姿勢OR1とを表す位置姿勢データである。仮に、ステップS2’で1つの指標IDとして第1の指標IDが選択された場合、位置姿勢データWは、座標(x_,y_,z_,W1,P1,R1)として表される。
また、Wは、図10中のステップS3で取得された第3位置データPD_と、ステップS31で取得された第2の姿勢OR2とを表す位置姿勢データである。仮に、1つの指標IDとして第1の指標IDが選択された場合、位置姿勢データWは、座標(x_,y_,z_,W2,P2,R2)として表される。
この行列M2は、配置変化によるロボット12(ロボット座標系C1)に対するワークWの位置の変化量を示す位置変化データに相当する。このように、本実施形態においては、プロセッサ50は、位置データPD_及びPD_に基づいて位置変化データM2を取得する位置変化データ取得部86(図2)として機能する。
ステップS25において、プロセッサ50は、姿勢変化データM1及び位置変化データM2に基づいて、作業プログラムWPに規定された教示位置TPを修正するための変換データを取得する。具体的には、プロセッサ50は、変換データとして、M3=M2・M1なる式から行列M3を求める。このように、本実施形態においては、プロセッサ50は、姿勢変化データM1及び位置変化データM2に基づいて変換データM3を取得する変換データ取得部88(図2)として機能する。
ステップS26において、プロセッサ50は、教示位置TPを修正する。具体的には、プロセッサ50は、ステップS25で取得した変換データM3を用いて、元の教示位置TPを、新たな教示位置TPへ、TP=M3・TPなる式によって変換し、メモリ52に記憶する。こうして、プロセッサ50は、予め作業プログラムWPに規定された教示位置TPを教示位置TPへ修正する。
修正後の教示位置TPは、配置変化によって生じた、ロボット12(ロボット座標系C1)に対するワークWの位置及び姿勢の変化量がキャンセルされたものとなる。つまり、配置変化前の教示位置TPに手先部38を位置決めしたときのワークWに対する手先部38の位置及び姿勢と、配置変化後の教示位置TPに手先部38を位置決めしたときのワークWに対する手先部38の位置及び姿勢とを、互いに一致させることできる。
以上のように、本実施形態においては、プロセッサ50は、ロボット制御部72、画像取得部74、画像判定部76、第1位置データ取得部78、第2位置データ取得部80、姿勢変化データ取得部82、第3位置データ取得部84、位置変化データ取得部86、及び変換データ取得部88として機能し、第nの指標IDを用いて教示位置TPを修正する。
よって、ロボット制御部72、画像取得部74、画像判定部76、第1位置データ取得部78、第2位置データ取得部80、姿勢変化データ取得部82、第3位置データ取得部84、位置変化データ取得部86、及び変換データ取得部88は、第nの指標IDを用いて教示位置TPを修正するための装置70(図1)を構成する。
本実施形態によれば、手先部38を第2の姿勢OR2に補正した状態で取得した第3位置データPD_に基づいて、教示位置TPの修正のために必要となる位置変化データM2を取得している。この構成によれば、従来必要となっていた、実機のロボット12による実機タッチアップ動作を不要とすることができる。
この実機タッチアップ動作とは、手先部38に装着したピンの先端を、保持構造Bに固設された相手側ピンの先端に当接させる動作である。上述の特許文献1を含む従来技術では、ロボットに実際の作業を実行させるためには、教示位置修正用の行列を取得した後に、実機タッチアップ動作を行うことが必要であった。
本実施形態によれば、実機タッチアップ動作を行わずに、ステップS23で第3位置データPD_を取得するだけで、位置変化データM2を取得できるとともに、MIF座標系C2とセンサ座標系C3との位置関係をキャリブレーションする作業も不要とできる。したがって、教示位置修正に掛かる作業を簡単化することができる。
また、本実施形態によれば、上述のステップS23において、選択された1つの指標IDに関して1つの位置データPD_を取得するだけで、位置変化データM2を取得できる。この構成によれば、位置変化データM2の取得に要する作業工程を削減することができるので、図9に示す教示位置修正フローのプロセスを簡易化し、以って、教示位置修正に掛かる作業を簡単化できる。
また、本実施形態においては、プロセッサ50は、上述のステップS2及びS2’を実行することによって、視覚センサ14が撮像した画像データJDを用いて手先部38を第nの指標IDに対して所定の位置関係(つまり、ステップS13でYESと判定された画像データJDを視覚センサ14が撮像したときの手先部38と指標IDとの位置関係)に配置している。この構成によれば、手先部38を所定の位置関係に、比較的簡単なアルゴリズムによって正確に配置させることができる。
なお、プロセッサ50は、図6、図7、図9、及び図10に示すフローを、コンピュータプログラムCPに従って実行してもよい。このコンピュータプログラムCPは、メモリ52に予め格納されてもよい。この場合、コンピュータプログラムCPは、プロセッサ50を、ロボット制御部72、画像取得部74、画像判定部76、第1位置データ取得部78、第2位置データ取得部80、姿勢変化データ取得部82、第3位置データ取得部84、位置変化データ取得部86、及び変換データ取得部88として機能させる。
なお、配置変化によってワークWの位置及び姿勢が変化した場合に、上述のステップS26において、プロセッサ50は、教示位置TPを修正するとともに、姿勢変化データM1及び位置変化データM2に基づいて、ロボット座標系C1においてワーク座標系C4の位置(原点位置)及び姿勢(各軸の方向)を修正してもよい。これにより、配置変化後のワークWに対してワーク座標系C4を自動的且つ正確に設定し直すことができる。
なお、視覚センサ14は、物体を撮像するとともに、該物体までの距離を測定する3次元視覚センサであってもよく、上述のステップS12において、第nの指標IDを撮像して画像データJDを取得するとともに、視覚センサ14(センサ座標系C3の原点)から第nの指標ID(例えば交点G)までの距離kを計測してもよい。
この場合において、プロセッサ50は、上述のステップS13において、直近に取得した画像データJDにおいて第nの指標IDの位置IPが目標位置POに配置され、且つ、距離kが予め定めた範囲[kth1,kth2]内にあるか否かを判定してもよい。この場合、指標IDの円DのサイズSZを用いることなく、手先部38を第nの指標IDに対して所定の位置関係に配置できるので、指標IDから円Dを省略することができる。
また、視覚センサ14は、光軸Oに沿って光(例えばレーザ光)を出射する光学系(レーザダイオード等)、及び、物体で反射した該光を受光して光電変換する撮像センサ(CCD、CMOS等)を有するレーザスキャナ式の3次元センサであってもよい。また、視覚センサ14は、2次元カメラから構成されるとともに、ロボット12の手先部38に対し、レーザ光を出射可能なレーザ装置(例えば、レーザポインタ)がさらに固定されてもよい。
この場合、視覚センサ14は、上述のステップS12において、指標IDとともにレーザ装置からのレーザ光の照射点が写る画像データJDを撮像し、プロセッサ50は、ステップS13において、該レーザ光の照射点が交点Gに配置されているか否かを判定してもよい。
又は、ロボットシステム10から視覚センサ14を省略し、ステップS12で、上記したレーザ装置(レーザポインタ)からのレーザ光の照射点が指標IDの交点Gに配置されているか否かを、オペレータが目視で判定してもよい。また、オペレータは、このときのレーザ装置から交点Gまでの距離を手動で計測し、該距離が予め定めた目標範囲内となっているか否かを判定してもよい。
そして、オペレータは、ステップS14で、教示装置18の入力装置56を操作してロボット12を手動でジョグ操作してもよい。すなわち、この場合、ステップS2,S2’をオペレータが実行することになる。このような方法によっても、手先部38を指標IDに対して所定の位置関係に配置させることができる。この場合、装置70から、ロボット制御部72、画像取得部74、及び画像判定部76を省略できる。
また、装置70から変換データ取得部88を省略することもできる。例えば、工場内にある教示装置18を、通信ネットワーク(インターネット、LAN等)を介して、工場とは別の施設にある外部機器(例えば、PC)に通信可能に接続し、教示装置18は、装置70として機能して取得した姿勢変化データM1及び位置変化データM2を、該外部機器に送信してもよい。そして、別の施設において、オペレータは、外部機器を操作して、教示装置18から受信した姿勢変化データM1及び位置変化データM2を用いて、変換データM3を取得してもよい。
なお、ワークWに対して、4つ以上の指標IDを設けてもよい。また、指標IDは、図5に示すような人工的な模様に限らず、例えば、保持構造B又はワークWに形成された穴、エッジ、凹凸部等、視覚的に認識可能な如何なる視覚的特徴を指標として用いてもよい。また、ロボット座標系C1、IMF座標系C2、センサ座標系C3、又はワーク座標系C4の原点位置及び各軸の方向は、上記した形態に限定されない。
また、第1位置データPD_、第2位置データPD_、及び第3位置データPD_として、MIF座標系C2の原点に限らず、MIF座標系C2の原点(又は手先部38)に対して既知の位置にある任意の点の位置データを取得してもよい。例えば、MIF座標系C2に対して既知の位置にツール座標系C5を設定する。
このツール座標系C5は、ロボット座標系C1におけるエンドエフェクタ36の位置及び姿勢を規定するための座標系であって、その原点が、エンドエフェクタ36の作業点(例えば、ロボットハンドのワーク把持位置、溶接ガンの溶接点、レーザ加工ヘッドのレーザ出射口、塗材塗布器の塗料出射口等)に配置される。
ロボット座標系C1におけるツール座標系C5の原点の座標は、ロボット座標系C1におけるMIF座標系C2の原点の座標を(x,y,z)とすると、(x+α,y+β,z+γ)で表わされ得る。プロセッサ50は、第1位置データPD_、第2位置データPD_、及び第3位置データPD_として、ツール座標系C5の原点の座標を取得してもよい。
なお、上述の実施形態においては、装置70(すなわち、ロボット制御部72、画像取得部74、画像判定部76、第1位置データ取得部78、第2位置データ取得部80、姿勢変化データ取得部82、第3位置データ取得部84、位置変化データ取得部86、及び変換データ取得部88)が、プロセッサ50が実行する機能として教示装置18に実装されている場合について述べた。しかしながら、装置70は、制御装置16に実装されてもよい。このような形態を図11に示す。
図11に示すロボットシステム10’においては、制御装置16のプロセッサ40が、図6、図7、図9、及び図10に示すフローを実行し、ロボット制御部72、画像取得部74、画像判定部76、第1位置データ取得部78、第2位置データ取得部80、姿勢変化データ取得部82、第3位置データ取得部84、位置変化データ取得部86、及び変換データ取得部88として機能する。
この場合において、プロセッサ40は、図6、図7、図9、及び図10に示すフローを、メモリ42に予め格納されたコンピュータプログラムCPに従って実行してもよい。なお、ロボットシステム10’は、教示装置18を備えてもよいし、備えていなくてもよい。また、ロボット12は、垂直多関節ロボットに限らず、例えば、水平多関節ロボット、パラレルリンクロボット等、エンドエフェクタ36を移動可能な如何なるタイプのロボットであってもよい。この場合、エンドエフェクタ36と、該エンドエフェクタ36が取り付けられるロボットの部材(手首フランジ34)とが、手先部38を構成する。以上、実施形態を通じて本開示を説明したが、上述の実施形態は、特許請求の範囲に係る発明を限定するものではない。
10,10’ ロボットシステム
12 ロボット
14 視覚センサ
16 制御装置
18 教示装置
38 手先部
40,50 プロセッサ
70 装置
72 ロボット制御部
74 画像取得部
76 画像判定部
78 第1位置データ取得部
80 第2位置データ取得部
82 姿勢変化データ取得部
84 第3位置データ取得部
86 位置変化データ取得部
88 変換データ取得部

Claims (8)

  1. ワークに対して所定の位置に配置された指標を用いて、ロボットに対する前記ワークの配置が変化したときに該ロボットの教示位置を修正するための装置であって、
    前記ワークの配置変化の前に、前記ロボットの手先部を第1の姿勢に配置させた状態で前記指標に対して所定の位置関係に配置したときの前記ロボットの第1位置データを取得する第1位置データ取得部と、
    前記配置変化の後に、前記手先部を前記第1の姿勢に配置させた状態で前記指標に対して前記所定の位置関係に配置したときの前記ロボットの第2位置データを取得する第2位置データ取得部と、
    前記第1位置データ及び前記第2位置データに基づいて、前記配置変化による前記ロボットに対する前記ワークの姿勢の変化量を示す姿勢変化データを取得する姿勢変化データ取得部と、
    前記手先部を、前記姿勢変化データを用いて前記第1の姿勢から補正された第2の姿勢に配置させた状態で前記指標に対して前記所定の位置関係に配置したときの前記ロボットの第3位置データを取得する第3位置データ取得部と、
    前記第1位置データ及び前記第3位置データに基づいて、前記配置変化による前記ロボットに対する前記ワークの位置の変化量を示す位置変化データを取得する位置変化データ取得部と、を備える、装置。
  2. 前記手先部、及び該手先部に対して固定された視覚センサを移動させるように前記ロボットの動作を制御するロボット制御部と、
    前記ロボットの動作により移動させた前記視覚センサによって前記指標を撮像した画像データを取得する画像取得部と、
    前記画像データにおいて前記指標の位置が予め定めた目標位置に配置されているか否かを判定する画像判定部と、を備え、
    前記所定の位置関係は、前記画像判定部によって前記指標の位置が前記目標位置に配置されていると判定された前記画像データを前記視覚センサが撮像したときの前記手先部と前記指標との位置関係である、請求項1に記載の装置。
  3. 前記ワークに対して複数の前記指標が配置され、
    前記第1位置データ取得部は、前記手先部を前記第1の姿勢に配置させた状態で各々の前記指標に対して前記所定の位置関係に配置したときの前記第1位置データをそれぞれ取得し、
    前記第2位置データ取得部は、前記手先部を前記第1の姿勢に配置させた状態で各々の前記指標に対して前記所定の位置関係に配置したときの前記第2位置データをそれぞれ取得し、
    前記姿勢変化データ取得部は、前記第1位置データ取得部が取得した複数の前記第1位置データ、及び、前記第2位置データ取得部が取得した複数の前記第2位置データに基づいて、前記姿勢変化データを取得し、
    前記第3位置データ取得部は、前記手先部を前記第2の姿勢に配置させた状態で1つの前記指標に対して前記所定の位置関係に配置したときの前記第3位置データを取得し、
    前記位置変化データ取得部は、前記第1位置データ取得部が前記1つの指標に関して取得した1つの前記第1位置データ、及び、前記第3位置データ取得部が取得した1つの前記第3位置データに基づいて、前記位置変化データを取得する、請求項1又は2に記載の装置。
  4. 前記姿勢変化データ及び前記位置変化データに基づいて、前記ロボットの作業プログラムに規定された前記教示位置を修正するための変換データを取得する変換データ取得部をさらに備える、請求項1~3のいずれか1項に記載の装置。
  5. 請求項1~4のいずれか1項に記載の装置を備える、前記ロボットの教示装置。
  6. ロボットと、
    請求項1~4のいずれか1項に記載の装置と、を備える、ロボットシステム。
  7. ワークに対して所定の位置に配置された指標を用いて、ロボットに対する前記ワークの配置が変化したときに該ロボットの教示位置を修正する方法であって、
    前記ワークの配置変化の前に、前記ロボットの手先部を第1の姿勢に配置させた状態で前記指標に対して所定の位置関係に配置したときの前記ロボットの第1位置データを取得し、
    前記配置変化の後に、前記手先部を前記第1の姿勢に配置させた状態で前記指標に対して前記所定の位置関係に配置したときの前記ロボットの第2位置データを取得し、
    前記第1位置データ及び前記第2位置データに基づいて、前記配置変化による前記ロボットに対する前記ワークの姿勢の変化量を示す姿勢変化データを取得し、
    前記手先部を、前記姿勢変化データを用いて前記第1の姿勢から補正された第2の姿勢に配置させた状態で前記指標に対して前記所定の位置関係に配置したときの前記ロボットの第3位置データを取得し、
    前記第1位置データ及び前記第3位置データに基づいて、前記配置変化による前記ロボットに対する前記ワークの位置の変化量を示す位置変化データを取得する、方法。
  8. ワークに対して所定の位置に配置された指標を用いて、ロボットに対する前記ワークの配置が変化したときに該ロボットの教示位置を修正するために、コンピュータを、
    前記ワークの配置変化の前に、前記ロボットの手先部を第1の姿勢に配置させた状態で前記指標に対して所定の位置関係に配置したときの前記ロボットの第1位置データを取得する第1位置データ取得部、
    前記配置変化の後に、前記手先部を前記第1の姿勢に配置させた状態で前記指標に対して前記所定の位置関係に配置したときの前記ロボットの第2位置データを取得する第2位置データ取得部、
    前記第1位置データ及び前記第2位置データに基づいて、前記配置変化による前記ロボットに対する前記ワークの姿勢の変化量を示す姿勢変化データを取得する姿勢変化データ取得部、
    前記手先部を、前記姿勢変化データを用いて前記第1の姿勢から補正された第2の姿勢に配置させた状態で前記指標に対して前記所定の位置関係に配置したときの前記ロボットの第3位置データを取得する第3位置データ取得部、及び、
    前記第1位置データ及び前記第3位置データに基づいて、前記配置変化による前記ロボットに対する前記ワークの位置の変化量を示す位置変化データを取得する位置変化データ取得部
    として機能させる、コンピュータプログラム。
JP2022512158A 2020-04-02 2021-03-26 ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラム Active JP7481432B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020067082 2020-04-02
JP2020067082 2020-04-02
PCT/JP2021/013092 WO2021200743A1 (ja) 2020-04-02 2021-03-26 ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JPWO2021200743A1 JPWO2021200743A1 (ja) 2021-10-07
JP7481432B2 true JP7481432B2 (ja) 2024-05-10

Family

ID=77929952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022512158A Active JP7481432B2 (ja) 2020-04-02 2021-03-26 ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US20230158687A1 (ja)
JP (1) JP7481432B2 (ja)
CN (1) CN115362049A (ja)
DE (1) DE112021002043T5 (ja)
WO (1) WO2021200743A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017077614A (ja) 2015-10-22 2017-04-27 キヤノン株式会社 教示点補正方法、プログラム、記録媒体、ロボット装置、撮影点作成方法、及び撮影点作成装置
JP2018202559A (ja) 2017-06-06 2018-12-27 ファナック株式会社 教示位置修正装置および教示位置修正方法
JP2019188542A (ja) 2018-04-26 2019-10-31 セイコーエプソン株式会社 制御装置、ロボット、及びロボットシステム
JP2019214105A (ja) 2018-06-13 2019-12-19 キヤノン株式会社 ロボット制御装置およびロボット制御方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017077614A (ja) 2015-10-22 2017-04-27 キヤノン株式会社 教示点補正方法、プログラム、記録媒体、ロボット装置、撮影点作成方法、及び撮影点作成装置
JP2018202559A (ja) 2017-06-06 2018-12-27 ファナック株式会社 教示位置修正装置および教示位置修正方法
JP2019188542A (ja) 2018-04-26 2019-10-31 セイコーエプソン株式会社 制御装置、ロボット、及びロボットシステム
JP2019214105A (ja) 2018-06-13 2019-12-19 キヤノン株式会社 ロボット制御装置およびロボット制御方法

Also Published As

Publication number Publication date
DE112021002043T5 (de) 2023-04-13
JPWO2021200743A1 (ja) 2021-10-07
US20230158687A1 (en) 2023-05-25
CN115362049A (zh) 2022-11-18
WO2021200743A1 (ja) 2021-10-07

Similar Documents

Publication Publication Date Title
US11247340B2 (en) Method and apparatus of non-contact tool center point calibration for a mechanical arm, and a mechanical arm system with said calibration function
JP6966582B2 (ja) ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法
JP6468741B2 (ja) ロボットシステム及びロボットシステムの校正方法
JP6429473B2 (ja) ロボットシステム、ロボットシステムの校正方法、プログラム、およびコンピュータ読み取り可能な記録媒体
JP7207851B2 (ja) 制御方法、ロボットシステム、物品の製造方法、プログラム及び記録媒体
JP7237483B2 (ja) ロボットシステムの制御方法、制御プログラム、記録媒体、制御装置、ロボットシステム、物品の製造方法
US20180024521A1 (en) Control device, robot, and robot system
JP4191080B2 (ja) 計測装置
US8406923B2 (en) Apparatus for determining pickup pose of robot arm with camera
JP5670416B2 (ja) ロボットシステム表示装置
US20160184996A1 (en) Robot, robot system, control apparatus, and control method
US9884425B2 (en) Robot, robot control device, and robotic system
JP6869159B2 (ja) ロボットシステム
TWI724977B (zh) 機器手臂的座標系校正設備及校正方法
JP2010188439A (ja) パラメータ算出方法及びパラメータ算出装置
JP2019069493A (ja) ロボットシステム
JP6897396B2 (ja) 制御装置、ロボットシステムおよび制御方法
CN110712194A (zh) 物体检查装置、物体检查系统以及调整检查位置的方法
CN109531604B (zh) 进行校准的机器人控制装置、测量系统以及校准方法
JP2018051634A (ja) ロボット制御装置、ロボット、ロボットシステムおよび姿勢特定装置
JP2018001332A (ja) ロボット、制御装置、及びロボットシステム
JP7481432B2 (ja) ロボットの教示位置を修正するための装置、教示装置、ロボットシステム、教示位置修正方法、及びコンピュータプログラム
US20230339117A1 (en) Device for obtaining position of visual sensor in control coordinate system of robot, robot system, method, and computer program
JP7057841B2 (ja) ロボット制御システム及びロボット制御方法
CN115446847A (zh) 用于提高机器人系统的3d眼手协调准确度的系统和方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231205

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240425

R150 Certificate of patent or registration of utility model

Ref document number: 7481432

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150