JP2015089598A - Teaching device, robot, robot system, method and program - Google Patents

Teaching device, robot, robot system, method and program Download PDF

Info

Publication number
JP2015089598A
JP2015089598A JP2013230029A JP2013230029A JP2015089598A JP 2015089598 A JP2015089598 A JP 2015089598A JP 2013230029 A JP2013230029 A JP 2013230029A JP 2013230029 A JP2013230029 A JP 2013230029A JP 2015089598 A JP2015089598 A JP 2015089598A
Authority
JP
Japan
Prior art keywords
guide
data
teaching
teaching data
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013230029A
Other languages
Japanese (ja)
Other versions
JP6326765B2 (en
Inventor
松本 茂之
Shigeyuki Matsumoto
茂之 松本
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 JP2013230029A priority Critical patent/JP6326765B2/en
Publication of JP2015089598A publication Critical patent/JP2015089598A/en
Application granted granted Critical
Publication of JP6326765B2 publication Critical patent/JP6326765B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To realize stable visual servo control not influenced by working environment.SOLUTION: A teaching device includes: a first guide setting section for accepting a setting of a first guide with respect to image data of a first object; a second guide setting section for accepting a setting of a second guide with respect to image data of a second object; a display section for displaying the first guide and the second guide; a teaching data generation section for generating teaching data in which the first guide and the second guide indicate a predetermined positional relationship; and a teaching data transmission section for transmitting the generated teaching data to a robot performing visual servo control on the basis of the teaching data.

Description

本発明は、教示装置、ロボット、ロボットシステム、方法、及びプログラムに関する。   The present invention relates to a teaching device, a robot, a robot system, a method, and a program.

特許文献1には、マーカー付き参照画像(目標画像)とマーカー付き撮像画像(現在画像)とに基づいて、ビジュアルサーボを行うことが記載されている。   Patent Literature 1 describes that visual servoing is performed based on a reference image with a marker (target image) and a captured image with a marker (current image).

特許文献1に記載されているようなビジュアルサーボでは、ロボットの目標の位置及び姿勢を含む目標画像と、ロボットの現在の位置及び姿勢を含む撮像画像との差異の評価値が小さくなるようにロボットの動作が制御される。   In the visual servo as described in Patent Document 1, the robot is designed so that the evaluation value of the difference between the target image including the target position and posture of the robot and the captured image including the current position and posture of the robot is small. Is controlled.

特開2012−254518号公報JP 2012-254518 A

しかしながら、上記のようなビジュアルサーボは、目標画像を教示した時とビジュアルサーボの実行時とで作業環境が異なる場合には、目標画像と撮像画像との差異を精度よく評価できなかったり、当該差異の評価値が所定の範囲内に収まらなかったりするため、ロボットの制御を適切に行えないという問題がある。作業環境が異なる場合とは、例えば、カメラの位置や姿勢が変化したり、照明の明るさが変化したりする場合である。   However, the visual servo as described above cannot accurately evaluate the difference between the target image and the captured image when the work environment differs between when the target image is taught and when the visual servo is executed. There is a problem that the robot cannot be controlled properly because the evaluation value of the above does not fall within a predetermined range. The case where the work environment is different is, for example, a case where the position or posture of the camera changes or the brightness of the illumination changes.

そこで、本発明は、作業環境に影響されない安定した視覚サーボを実現することを目的とする。   Accordingly, an object of the present invention is to realize a stable visual servo that is not affected by the work environment.

上記の課題を解決する本発明の第一態様は、教示装置であって、第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定部と、前記第一ガイド及び前記第二ガイドを表示する表示部と、前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信部と、を有する。本発明の第一態様によれば、二つの対象物に対してガイドが設定され、例えば、これらの設定されたガイドを近付けるような視覚サーボの教示データが、ロボットに送られる。ロボットは、撮像画像に対してこれらのガイドを生成し、これらのガイドを用いた視覚サーボを実行することができる。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   A first aspect of the present invention that solves the above-described problem is a teaching device, in which a first guide setting unit that receives setting of a first guide for image data of a first object, and a second object A second guide setting unit that receives setting of a second guide for image data, a display unit that displays the first guide and the second guide, and a predetermined positional relationship between the first guide and the second guide And a teaching data transmission unit that transmits the generated teaching data to a robot that performs visual servoing based on the teaching data. According to the first aspect of the present invention, guides are set for two objects, and for example, visual servo teaching data that brings these set guides close is sent to the robot. The robot can generate these guides for the captured image and perform visual servoing using these guides. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

前記第一ガイド設定部は、前記第一対象物の画像データの特徴と関連付けて前記第一ガイドの設定を受け付け、前記第二ガイド設定部は、前記第二対象物の画像データの特徴と関連付けて前記第二ガイドの設定を受け付け、前記教示データ生成部は、前記第一対象物の画像データの特徴及び前記第一ガイドと、前記第二対象物の画像データの特徴及び前記第二ガイドとを示す教示データを生成する、ようにしてもよい。これにより、ロボットは、撮像画像に含まれる対象物の画像の特徴に基づいて、簡単に精度よくガイドを生成することができる。   The first guide setting unit receives the setting of the first guide in association with the feature of the image data of the first object, and the second guide setting unit is associated with the feature of the image data of the second object. Receiving the setting of the second guide, the teaching data generation unit, the feature of the image data of the first object and the first guide, the feature of the image data of the second object and the second guide May be generated. Thereby, the robot can generate a guide easily and accurately based on the feature of the image of the object included in the captured image.

前記第一ガイド設定部は、前記第一対象物の画像データの複数の特徴それぞれと関連付けて複数の前記第一ガイドの設定を受け付け、前記教示データ生成部は、前記第一対象物の画像データの複数の特徴及び前記複数の第一ガイドを示す教示データを生成する、ようにしてもよい。これにより、ロボットは、撮像画像に含まれる対象物に対して、複数のガイドを生成できるようになるため、作業環境の変化に影響されにくい安定した視覚サーボを実現することができる。   The first guide setting unit receives a plurality of settings of the first guide in association with a plurality of features of the image data of the first object, and the teaching data generation unit is configured to receive the image data of the first object. Teaching data indicating the plurality of features and the plurality of first guides may be generated. Thereby, since the robot can generate a plurality of guides for the object included in the captured image, it is possible to realize a stable visual servo that is not easily affected by changes in the work environment.

前記第一ガイド設定部は、複数の画像処理のそれぞれを用いて前記第一対象物の画像データの複数の特徴を抽出し、前記抽出された複数の特徴のそれぞれと関連付ける前記複数の第一ガイドの設定を受け付ける、ようにしてもよい。これにより、ロボットは、撮像画像に含まれる対象物に対して、異なる画像処理により複数のガイドを生成できるようになるため、作業環境の変化に影響されにくい安定した視覚サーボを実現することができる。   The first guide setting unit extracts a plurality of features of image data of the first object using each of a plurality of image processes, and associates the plurality of first guides with each of the extracted features. You may make it accept the setting of. As a result, the robot can generate a plurality of guides by different image processing for the object included in the captured image, and thus can realize a stable visual servo that is not easily affected by changes in the work environment. .

前記第一ガイド設定部は、所定の画像処理を用いて前記第一対象物の画像データの特徴を抽出し、前記抽出された特徴から、複数の特徴の指定と前記指定された複数の特徴のそれぞれと関連付ける前記複数の第一ガイドの設定を受け付ける、ようにしてもよい。これにより、ロボットは、撮像画像に含まれる対象物に対して、同じ画像処理により複数のガイドを生成できるようになるため、作業環境の変化に影響されにくい安定した視覚サーボを実現することができる。   The first guide setting unit extracts features of the image data of the first object using predetermined image processing, and specifies a plurality of features and a plurality of the specified features from the extracted features. You may make it receive the setting of the said some 1st guide linked | related with each. As a result, the robot can generate a plurality of guides for the object included in the captured image by the same image processing, and thus can realize a stable visual servo that is not easily affected by changes in the work environment. .

上記の課題を解決する本発明の第二態様は、教示装置であって、第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、撮像装置の撮像範囲に対して、第二ガイドの設定を受け付ける第二ガイド設定部と、前記第一ガイド及び前記第二ガイドを表示する表示部と、前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信部と、を有する。本発明の第二態様によれば、一つの対象物に対してガイドが設定され、また、撮像範囲に対してガイドが設定され、例えば、これらの設定されたガイドを近付けるような視覚サーボの教示データが、ロボットに送られる。ロボットは、撮像画像に対してこれらのガイドを生成し、これらのガイドを用いた視覚サーボを実行することができる。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。また、撮像範囲に対するガイドを使うため、撮像画像から特徴を抽出するような画像処理が必要なくなり、処理負荷が軽減される。   A second aspect of the present invention that solves the above problem is a teaching device, and a first guide setting unit that receives setting of a first guide for image data of a first object, and an imaging range of the imaging device On the other hand, the second guide setting unit for receiving the setting of the second guide, the display unit for displaying the first guide and the second guide, and the first guide and the second guide exhibit a predetermined positional relationship. A teaching data generation unit that generates teaching data; and a teaching data transmission unit that transmits the generated teaching data to a robot that performs visual servoing based on the teaching data. According to the second aspect of the present invention, a guide is set for one object, and a guide is set for the imaging range. For example, the teaching of the visual servo such that these set guides are brought close to each other. Data is sent to the robot. The robot can generate these guides for the captured image and perform visual servoing using these guides. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized. In addition, since the guide for the imaging range is used, image processing for extracting features from the captured image is not necessary, and the processing load is reduced.

上記の課題を解決する本発明の第三態様は、教示装置の教示方法であって、第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定ステップと、第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定ステップと、前記第一ガイド及び前記第二ガイドを表示する表示ステップと、前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成ステップと、前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信ステップと、を有する。本発明の第三態様によれば、二つの対象物に対してガイドが設定され、例えば、これらの設定されたガイドを近付けるような視覚サーボの教示データが、ロボットに送られる。ロボットは、撮像画像に対してこれらのガイドを生成し、これらのガイドを用いた視覚サーボを実行することができる。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   A third aspect of the present invention that solves the above problem is a teaching method of a teaching device, in which a first guide setting step for receiving setting of a first guide for image data of a first object, A second guide setting step for receiving setting of a second guide for the image data of the object; a display step for displaying the first guide and the second guide; and the first guide and the second guide are predetermined. Teaching data generation step for generating teaching data indicating the positional relationship between the teaching data and the teaching data transmission step for transmitting the generated teaching data to a robot that performs visual servoing based on the teaching data. According to the third aspect of the present invention, guides are set for two objects, and for example, visual servo teaching data that brings these set guides close is sent to the robot. The robot can generate these guides for the captured image and perform visual servoing using these guides. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

上記の課題を解決する本発明の第四態様は、プログラムであって、第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定部と、前記第一ガイド及び前記第二ガイドを表示する表示部と、前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信部として、コンピューターを機能させる。本発明の第四態様によれば、二つの対象物に対してガイドが設定され、例えば、これらの設定されたガイドを近付けるような視覚サーボの教示データが、ロボットに送られる。ロボットは、撮像画像に対してこれらのガイドを生成し、これらのガイドを用いた視覚サーボを実行することができる。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   A fourth aspect of the present invention that solves the above problem is a program, a first guide setting unit that receives setting of a first guide for image data of a first object, and an image of a second object A second guide setting unit that receives the setting of the second guide, a display unit that displays the first guide and the second guide, and the first guide and the second guide have a predetermined positional relationship with respect to the data. A computer is caused to function as a teaching data generation unit that generates teaching data to be shown and a teaching data transmission unit that transmits the generated teaching data to a robot that performs visual servoing based on the teaching data. According to the fourth aspect of the present invention, guides are set for two objects, and for example, visual servo teaching data that brings these set guides close is sent to the robot. The robot can generate these guides for the captured image and perform visual servoing using these guides. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

上記の課題を解決する本発明の第五態様は、ロボットであって、第一対象物の画像データに対して設定される第一ガイドと、第二対象物の画像データに対して設定される第二ガイドとが、所定の位置関係を示す教示データを格納する教示データ格納部と、前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得部と、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成部と、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成部と、前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御部と、を有する。本発明の第五態様によれば、撮像画像に含まれる二つの対象物に対してガイドが生成され、これらのガイドを用いた視覚サーボが実行される。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   A fifth aspect of the present invention that solves the above problem is a robot, which is set for the first guide set for the image data of the first object and for the image data of the second object. A second guide includes a teaching data storage unit that stores teaching data indicating a predetermined positional relationship, an image acquisition unit that acquires a captured image including the first object and the second object, and the teaching data A first guide generating unit that generates the first guide for the image data of the first object included in the acquired captured image, and the acquired based on the teaching data. A second guide generating unit that generates the second guide for the image data of the second object included in the captured image, and the generated first guide and the generated based on the teaching data A second guide, the predetermined guide Having a visual servo control unit which performs control based on visual servo such that the location relationship. According to the fifth aspect of the present invention, guides are generated for two objects included in the captured image, and visual servoing using these guides is executed. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

前記教示データには、前記第一対象物の画像データの特徴と関連付けて前記第一ガイドが示され、また、前記第二対象物の画像データの特徴と関連付けて前記第二ガイドが示され、前記第一ガイド生成部は、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データの特徴に関連付けて、前記第一ガイドを生成し、前記第二ガイド生成部は、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データの特徴に関連付けて、前記第二ガイドを生成する、ようにしてもよい。これにより、撮像画像に含まれる対象物の画像の特徴に基づいて、簡単に精度よくガイドを生成することができる。   In the teaching data, the first guide is shown in association with the feature of the image data of the first object, and the second guide is shown in association with the feature of the image data of the second object, The first guide generation unit generates the first guide based on the teaching data in association with the feature of the image data of the first object included in the acquired captured image, and the second guide The generation unit may generate the second guide in association with the feature of the image data of the second object included in the acquired captured image based on the teaching data. Thereby, a guide can be easily and accurately generated based on the characteristics of the image of the object included in the captured image.

前記教示データには、前記第一対象物の画像データの複数の特徴それぞれと関連付けて複数の前記第一ガイドが示され、前記第一ガイド生成部は、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データの複数の特徴のいずれか一つと関連付けて、前記第一ガイドを生成する、ようにしてもよい。これにより、撮像画像に含まれる対象物に対して、複数のガイドを生成できるようになるため、作業環境の変化に影響されにくい安定した視覚サーボを実現することができる。   The teaching data indicates a plurality of the first guides associated with each of a plurality of features of the image data of the first object, and the first guide generating unit is acquired based on the teaching data. The first guide may be generated in association with any one of a plurality of features of the image data of the first object included in the captured image. As a result, a plurality of guides can be generated for the object included in the captured image, so that stable visual servoing that is less affected by changes in the work environment can be realized.

上記の課題を解決する本発明の第六態様は、ロボットであって、第一対象物の画像データに対して設定される第一ガイドと、撮像装置の撮像範囲に対して設定される第二ガイドとが、所定の位置関係を示す教示データを格納する教示データ格納部と、前記第一対象物と前記第二対象物とを含む撮像画像を前記撮像装置から取得する画像取得部と、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成部と、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成部と、前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御部と、を有する。本発明の第六態様によれば、撮像画像に含まれる対象物に対するガイドと、撮像範囲に対するガイドとが生成され、これらのガイドを用いた視覚サーボが実行される。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。また、撮像範囲に対するガイドを使うため、撮像画像から特徴を抽出するような画像処理が必要なくなり、処理負荷が軽減される。   A sixth aspect of the present invention that solves the above problem is a robot, which is a first guide set for the image data of the first object and a second set for the imaging range of the imaging device. A teaching data storage unit for storing teaching data indicating a predetermined positional relationship with the guide, an image acquisition unit for acquiring a captured image including the first object and the second object from the imaging device, A first guide generation unit that generates the first guide for the image data of the first object included in the acquired captured image based on the teaching data, and the acquisition based on the teaching data A second guide generation unit that generates the second guide for the image data of the second object included in the captured image, and the generated first guide and the generation based on the teaching data With the second guide Having a visual servo control unit which performs control based on visual servo so that the predetermined positional relationship. According to the sixth aspect of the present invention, a guide for an object included in a captured image and a guide for an imaging range are generated, and visual servoing using these guides is executed. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized. In addition, since the guide for the imaging range is used, image processing for extracting features from the captured image is not necessary, and the processing load is reduced.

上記の課題を解決する本発明の第七態様は、ロボットの制御方法であって、第一対象物の画像データに対して設定される第一ガイドと、第二対象物の画像データに対して設定される第二ガイドとが、所定の位置関係を示す教示データをする教示データ格納ステップと、前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得ステップと、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成ステップと、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成ステップと、前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御ステップと、を有する。本発明の第七態様によれば、撮像画像に含まれる二つの対象物に対してガイドが生成され、これらのガイドを用いた視覚サーボが実行される。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   A seventh aspect of the present invention that solves the above problem is a robot control method, wherein the first guide is set for the image data of the first object, and the image data of the second object. The second guide to be set includes a teaching data storage step for teaching data indicating a predetermined positional relationship, an image acquisition step for acquiring a captured image including the first object and the second object, A first guide generation step for generating the first guide for the image data of the first object included in the acquired captured image based on the teaching data, and the acquisition based on the teaching data A second guide generation step of generating the second guide for the image data of the second object included in the captured image, and the generated first guide and the generation based on the teaching data The And a second guide has a a visual servo control step of performing control based on visual servo so that the predetermined positional relationship. According to the seventh aspect of the present invention, guides are generated for two objects included in the captured image, and visual servoing using these guides is executed. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

上記の課題を解決する本発明の第八態様は、ロボットシステムであって、第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定部と、前記第一ガイド及び前記第二ガイドを表示する表示部と、前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、前記生成された教示データを格納する教示データ格納部と、前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得部と、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成部と、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成部と、前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御部と、を有する。本発明の第八態様によれば、撮像画像に含まれる二つの対象物に対してガイドが生成され、これらのガイドを用いた視覚サーボが実行される。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   An eighth aspect of the present invention that solves the above problem is a robot system, wherein the first guide setting unit that receives the setting of the first guide for the image data of the first object, and the second object A second guide setting unit that receives setting of a second guide for image data, a display unit that displays the first guide and the second guide, and a predetermined positional relationship between the first guide and the second guide A teaching data generation unit that generates teaching data indicating a teaching data, a teaching data storage unit that stores the generated teaching data, and an image acquisition unit that acquires a captured image including the first object and the second object A first guide generating unit that generates the first guide for the image data of the first object included in the acquired captured image based on the teaching data, and based on the teaching data , The above A second guide generation unit that generates the second guide for the image data of the second object included in the captured image, and the generated first guide and the generation based on the teaching data And a visual servo controller that performs control based on visual servo so that the predetermined positional relationship is obtained. According to the eighth aspect of the present invention, guides are generated for the two objects included in the captured image, and visual servoing using these guides is executed. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

上記の課題を解決する本発明の第九態様は、ロボットシステムの制御方法であって、第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定ステップと、第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定ステップと、前記第一ガイド及び前記第二ガイドを表示する表示ステップと、前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成ステップと、前記生成された教示データを格納する教示データ格納ステップと、前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得ステップと、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成ステップと、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成ステップと、前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御ステップと、を有する。本発明の第九態様によれば、撮像画像に含まれる二つの対象物に対してガイドが生成され、これらのガイドを用いた視覚サーボが実行される。従って、目標画像と撮像画像の二つの画像の差異を評価する必要がなく、作業環境に影響されない安定した視覚サーボを実現することができる。   A ninth aspect of the present invention that solves the above problem is a control method of a robot system, wherein a first guide setting step for receiving a setting of a first guide for image data of a first object, A second guide setting step for receiving setting of a second guide for the image data of the object; a display step for displaying the first guide and the second guide; and the first guide and the second guide are predetermined. A teaching data generating step for generating teaching data indicating the positional relationship of the teaching data, a teaching data storing step for storing the generated teaching data, and a captured image including the first object and the second object. Based on the image acquisition step and the teaching data, a first guide for generating the first guide is generated for the image data of the first object included in the acquired captured image. Generation step, a second guide generation step for generating the second guide for the image data of the second object included in the acquired captured image based on the teaching data, and the teaching data And a visual servo control step of performing control based on visual servo so that the generated first guide and the generated second guide have the predetermined positional relationship. According to the ninth aspect of the present invention, guides are generated for two objects included in a captured image, and visual servoing using these guides is executed. Therefore, it is not necessary to evaluate the difference between the target image and the captured image, and a stable visual servo that is not affected by the work environment can be realized.

本発明の実施形態に係るロボットシステムの概略構成の一例を示す図である。It is a figure which shows an example of schematic structure of the robot system which concerns on embodiment of this invention. ロボットシステムの機能構成の一例を示す図である。It is a figure which shows an example of a function structure of a robot system. (A)対象物ガイドデータのデータ構造の一例を示す図である。(B)固定ガイドデータのデータ構造の一例を示す図である。(A) It is a figure which shows an example of the data structure of target object guide data. (B) It is a figure which shows an example of the data structure of fixed guide data. 教示データのデータ構造の一例を示す図である。It is a figure which shows an example of the data structure of teaching data. 教示装置の機能を実現するハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions which implement | achieve the function of a teaching apparatus. 教示処理の一例を示すフロー図である。It is a flowchart which shows an example of a teaching process. ロボットが行う第一の作業例を示す図である。It is a figure which shows the 1st example of work which a robot performs. (A)部品W1に設定されるガイドの一例を示す図である。(B)部品W2に設定されるガイドの一例を示す図である。(C)固定ガイドの一例を説明する図である。(A) It is a figure which shows an example of the guide set to the components W1. (B) It is a figure which shows an example of the guide set to the component W2. (C) It is a figure explaining an example of a fixed guide. 第一の作業例における視覚サーボ処理の一例を示すフロー図である。It is a flowchart which shows an example of the visual servo process in a 1st operation example. 第一の作業例における視覚サーボの経過を視覚的に説明する図(その1)である。It is FIG. (The 1) which illustrates visually progress of the visual servo in a 1st operation example. 第一の作業例における視覚サーボの経過を視覚的に説明する図(その2)である。It is FIG. (The 2) which illustrates visually progress of the visual servo in a 1st operation example. ロボットが行う第二の作業例を示す図である。It is a figure which shows the 2nd example of work which a robot performs. (A)部品W3に設定されるガイドの一例を示す図である。(B)部品W4に設定されるガイドの一例を示す図である。(A) It is a figure which shows an example of the guide set to the component W3. (B) It is a figure which shows an example of the guide set to the components W4. 第二の作業例における視覚サーボ処理の一例を示すフロー図である。It is a flowchart which shows an example of the visual servo process in a 2nd operation example. 第二の作業例における視覚サーボの経過を視覚的に説明する図(その1)である。It is FIG. (The 1) which illustrates visually progress of the visual servo in a 2nd operation example. 第二の作業例における視覚サーボの経過を視覚的に説明する図(その2)である。It is FIG. (The 2) which illustrates visually progress of the visual servo in a 2nd operation example. (A1)〜(A3)部品W3に設定される複数のガイドの例を示す図である。(A1)-(A3) It is a figure which shows the example of the some guide set to the component W3. (A1)〜(A3)部品W4に設定される複数のガイドの例を示す図である。(A1)-(A3) It is a figure which shows the example of the some guide set to the component W4. 第二の作業例における視覚サーボ処理の変形例を示すフロー図である。It is a flowchart which shows the modification of the visual servo process in a 2nd operation example. 第二の作業例における視覚サーボの変形例の経過を視覚的に説明する図(その1)である。It is FIG. (1) which illustrates visually progress of the modification of the visual servo in a 2nd operation example. 第二の作業例における視覚サーボの変形例の経過を視覚的に説明する図(その2)である。It is FIG. (2) which illustrates visually progress of the modification of the visual servo in a 2nd operation example.

<本発明の実施形態>
本発明の実施形態について、図面を参照して説明する。
<Embodiment of the present invention>
Embodiments of the present invention will be described with reference to the drawings.

図1は、本発明の実施形態に係るロボットシステムの概略構成の一例を示す図である。   FIG. 1 is a diagram illustrating an example of a schematic configuration of a robot system according to an embodiment of the present invention.

ロボットシステム1は、ロボット2と、教示装置4と、撮像装置5とを有する。ロボット2は、制御部3を有する。ロボット2と教示装置4は、通信可能に接続される。また、ロボット2と撮像装置5は、通信可能に接続される。   The robot system 1 includes a robot 2, a teaching device 4, and an imaging device 5. The robot 2 has a control unit 3. The robot 2 and the teaching device 4 are connected to be communicable. In addition, the robot 2 and the imaging device 5 are connected to be communicable.

ロボット2は、制御部3により制御され、目的の作業を行う。ロボット2は、例えば、作業台Tの近くに配置され、作業台T上の所定の作業領域内で作業を行う。ロボット2の作業内容は、特に限定されないが、例えば、複数のワークWを嵌め合わせる作業が考えられる。   The robot 2 is controlled by the control unit 3 and performs a desired work. The robot 2 is disposed near the work table T, for example, and performs work in a predetermined work area on the work table T. Although the work content of the robot 2 is not particularly limited, for example, a work of fitting a plurality of works W is conceivable.

ロボット2は、胴部20と、アーム21と、ハンド22と、脚部24と、頭部25とを有する。   The robot 2 includes a body part 20, an arm 21, a hand 22, a leg part 24, and a head part 25.

アーム21は、胴部20に設けられる。アーム(「マニピュレーター」ともいう。)21は、一以上のジョイント(「回転軸」ともいう。)21a及び一以上のアーム部材(「リンク」ともいう。)21bを含む。   The arm 21 is provided on the trunk portion 20. The arm (also referred to as “manipulator”) 21 includes one or more joints (also referred to as “rotating shafts”) 21 a and one or more arm members (also referred to as “links”) 21 b.

ジョイント21aには、それらを動作させるためのアクチュエーター(図示せず)が設けられる。アクチュエーターは、例えば、サーボモーターやエンコーダーなどを備える。エンコーダーが出力するエンコーダー値は、制御部3によるロボット2のフィードバック制御などに使用される。   The joint 21a is provided with an actuator (not shown) for operating them. The actuator includes, for example, a servo motor and an encoder. The encoder value output by the encoder is used for feedback control of the robot 2 by the control unit 3.

また、アーム21の先端には、力覚センサー21cが設けられる。力覚センサーは、ロボット2が出している力に対する反力として受けている力や、モーメントを検出するセンサーである。力覚センサーとしては、例えば、並進3軸方向の力成分と、回転3軸回りのモーメント成分の6成分を同時に検出することができる6軸力覚センサーを用いることができる。なお、力覚センサーは、6軸に限らず、例えば3軸でもよい。   A force sensor 21 c is provided at the tip of the arm 21. The force sensor is a sensor that detects a force and a moment received as a reaction force to the force generated by the robot 2. As the force sensor, for example, a six-axis force sensor that can simultaneously detect six components, ie, a force component in the translational three-axis direction and a moment component around the three rotation axes, can be used. The force sensor is not limited to six axes, and may be, for example, three axes.

各回転軸を連動させることにより、アーム部材21bの姿勢を変化させ、アーム21の先端部などに設定された注目位置(「エンドポイント」ともいう。)を、所定の可動範囲内で自在に移動させたり自由な方向へ向けたりすることができる。なお、エンドポイントの位置は、アームの先端部に限定されず、例えば、エンドエフェクターの先端部などに設定されてもよい。   By linking each rotation shaft, the posture of the arm member 21b is changed, and the position of interest (also referred to as “end point”) set at the tip of the arm 21 is freely moved within a predetermined movable range. And can be directed in any direction. Note that the position of the end point is not limited to the tip of the arm, and may be set to the tip of the end effector, for example.

なお、アーム21は、マニピュレーターの一種ということができる。マニピュレーターは、エンドポイントの位置を移動させる機構であり、アームに限られず様々な形態をとることができる。また、マニピュレーターは、図示するように2本に限られず、1本あるいは3本以上設けるようにしてもよい。   The arm 21 can be said to be a kind of manipulator. The manipulator is a mechanism that moves the position of the end point, and is not limited to an arm and can take various forms. Further, the number of manipulators is not limited to two as shown in the figure, and one or three or more manipulators may be provided.

ハンド22は、アーム21の先端に設けられる。ハンド22は、例えば、複数の指を備え、少なくとも2本の指で作業対象物を把持したり解放したりすることができる。ハンド22は、アーム21の先端部に対して着脱可能であってもよい。   The hand 22 is provided at the tip of the arm 21. The hand 22 includes, for example, a plurality of fingers, and can hold or release the work object with at least two fingers. The hand 22 may be detachable from the tip of the arm 21.

なお、ハンド22は、エンドエフェクターの一種ということができる。エンドエフェクターは、作業対象物を把持したり、持ち上げたり、吊り上げたり、吸着したり、ワークを加工したりするための部材である。エンドエフェクターは、ハンド、フック、吸盤など、様々な形態をとることができる。また、エンドエフェクターは、一本のアームに対して複数設けるようにしてもよい。   The hand 22 can be said to be a kind of end effector. The end effector is a member for gripping, lifting, lifting, adsorbing, or processing a work object. The end effector can take various forms such as a hand, a hook, and a suction cup. Further, a plurality of end effectors may be provided for one arm.

なお、ロボット2の構成は図示した例に限られない。例えば、図1ではジョイント数が6個(6軸)の例が示されているが、ジョイントの数(「軸数」ともいう。)やリンクの数を増減させてもよい。また、ジョイント、リンク、ハンド等の各種部材の形状、大きさ、配置、構造等も適宜変更してよい。   The configuration of the robot 2 is not limited to the illustrated example. For example, FIG. 1 shows an example in which the number of joints is six (six axes), but the number of joints (also referred to as “number of axes”) and the number of links may be increased or decreased. In addition, the shape, size, arrangement, structure, and the like of various members such as joints, links, and hands may be changed as appropriate.

制御部3は、ロボット2の全体を制御する。例えば、制御部3は、教示装置4から出力される教示データに基づいて、ロボット2を動作させる制御命令を生成し、生成した制御命令に従ってアクチュエーターを駆動させることでロボット2を動作させる。また、制御部3は、撮像装置5を制御し、撮像画像を取得する。詳細は後述するが、制御部3は、視覚サーボにより、ロボット2を動作させる。   The control unit 3 controls the entire robot 2. For example, the control unit 3 generates a control command for operating the robot 2 based on the teaching data output from the teaching device 4, and operates the robot 2 by driving an actuator according to the generated control command. In addition, the control unit 3 controls the imaging device 5 and acquires a captured image. Although details will be described later, the control unit 3 operates the robot 2 by visual servo.

撮像装置5は、例えば作業台T上の作業領域を撮像して、撮像画像データを生成し、ロボット2に出力する。撮像装置5は、例えば、CCD(Charge Coupled Device)、CMOS(Complementary Metal Oxide Semiconductor)等を有するカメラである。   The imaging device 5 captures, for example, a work area on the work table T, generates captured image data, and outputs the captured image data to the robot 2. The imaging device 5 is a camera having, for example, a CCD (Charge Coupled Device), a CMOS (Complementary Metal Oxide Semiconductor), or the like.

教示装置4は、ユーザーの操作に従って、ロボット2に実行させる作業内容を示す教示データを生成する。また、教示装置4は、生成した教示データをロボット2の制御部3に出力することにより、ロボット2に対して教示を行う。教示装置4については、後に詳述する。   The teaching device 4 generates teaching data indicating work contents to be executed by the robot 2 in accordance with a user operation. Further, the teaching device 4 teaches the robot 2 by outputting the generated teaching data to the control unit 3 of the robot 2. The teaching device 4 will be described in detail later.

上記のロボットシステム1の構成は、本実施形態の特徴を説明するにあたって主要構成を説明したのであって、上記の構成例に限られない。また、一般的なロボットシステムが備える構成を排除するものではない。   The configuration of the robot system 1 described above is the main configuration in describing the features of the present embodiment, and is not limited to the above configuration example. Further, the configuration of a general robot system is not excluded.

例えば、撮像装置5の設置位置は、特に限定されず、天井、壁などに設置することができる。また、撮像装置5は、ロボット2の頭部25、アーム21の先端部分、胴部20などに設けられてもよい。また、例えば、撮像装置5に加えて、他の撮像装置を設けるようにしてもよい。また、例えば、制御部3は、制御装置としてロボット2と別に設けられ、ロボット2に外部から接続するようにしてもよい。また、例えば、制御部3と教示装置4は、制御装置として一体となっていてもよい。   For example, the installation position of the imaging device 5 is not particularly limited, and can be installed on a ceiling, a wall, or the like. In addition, the imaging device 5 may be provided on the head 25 of the robot 2, the tip of the arm 21, the trunk 20, and the like. For example, in addition to the imaging device 5, another imaging device may be provided. For example, the control unit 3 may be provided separately from the robot 2 as a control device and connected to the robot 2 from the outside. For example, the control unit 3 and the teaching device 4 may be integrated as a control device.

図2は、ロボットシステムの機能構成の一例を示す図である。   FIG. 2 is a diagram illustrating an example of a functional configuration of the robot system.

教示装置4は、入力部40と、表示部41と、ガイド設定部(「第一ガイド設定部」、「第二ガイド設定部」ともいう。)42と、教示データ生成部43と、教示データ送信部44と、モデルデータ格納部45と、ガイドデータ格納部46と、教示データ格納部47とを有する。   The teaching device 4 includes an input unit 40, a display unit 41, a guide setting unit (also referred to as “first guide setting unit” and “second guide setting unit”) 42, a teaching data generation unit 43, and teaching data. The transmitter 44, the model data storage 45, the guide data storage 46, and the teaching data storage 47 are provided.

入力部40は、ユーザーの操作を受け付ける。表示部41は、ユーザーに対してインターフェイス画面などを表示する。   The input unit 40 receives user operations. The display unit 41 displays an interface screen and the like for the user.

ガイド設定部42は、作業対象物の任意の位置に対して仮想的なガイド(「対象物ガイド」ともいう。)を設定する。対象物ガイドは、視覚サーボにおいて、作業対象物の代わりに当該作業対象物の現在位置を示す画像として使用される。   The guide setting unit 42 sets a virtual guide (also referred to as “target guide”) for an arbitrary position of the work target. The object guide is used as an image indicating the current position of the work object instead of the work object in the visual servo.

具体的には、モデルデータ格納部45には、入力部40等を介したユーザーの操作により、作業対象物を2次元あるいは3次元で表す画像データなどのモデルデータが予め格納されている。ガイド設定部42は、モデルデータ格納部45から、作業対象物のモデルデータを取得する。また、ガイド設定部42は、取得した作業対象物のモデルデータに対して、当該モデルの特徴位置を抽出する所定の画像処理(例えば、エッジ検出、輪郭検出、コーナー検出など)を実行し、当該作業対象物の特徴位置を抽出する。なお、特徴位置は、1点に限らず複数点の集合であってもよく、単に「特徴」と呼んでもよい。   Specifically, model data such as image data representing a work object in two dimensions or three dimensions is stored in advance in the model data storage unit 45 by a user operation via the input unit 40 or the like. The guide setting unit 42 acquires model data of the work object from the model data storage unit 45. Further, the guide setting unit 42 performs predetermined image processing (for example, edge detection, contour detection, corner detection, etc.) for extracting the feature position of the model on the acquired model data of the work target, The feature position of the work object is extracted. The feature position is not limited to one point, and may be a set of a plurality of points, or simply referred to as “feature”.

また、ガイド設定部42は、抽出した作業対象物の特徴位置に対して、所定の位置関係を有するガイド位置を設定する。例えば、ガイド設定部42は、作業対象物のモデルデータとともに当該作業対象物の特徴位置を示す画像を表示部41に表示させる。また、ガイド設定部42は、表示された画像上でガイド位置の指定を、入力部40を介して受け付ける。ガイド設定部42は、表示された特徴位置に対する指定されたガイド位置の相対位置関係を示す対象物ガイドデータを、ガイドデータ格納部46に格納する。なお、対象物のガイド位置は、1点に限らず複数点の集合であってもよく、単に「対象物ガイド」と呼んでもよい。   The guide setting unit 42 sets a guide position having a predetermined positional relationship with respect to the extracted feature position of the work object. For example, the guide setting unit 42 causes the display unit 41 to display an image indicating the feature position of the work object together with the model data of the work object. In addition, the guide setting unit 42 receives the designation of the guide position on the displayed image via the input unit 40. The guide setting unit 42 stores object guide data indicating the relative positional relationship of the designated guide position with respect to the displayed feature position in the guide data storage unit 46. The guide position of the object is not limited to one point, and may be a set of a plurality of points, or simply referred to as “object guide”.

図3(A)は、対象物ガイドデータのデータ構造の一例を示す図である。図3(A)に示すように、対象物ガイドデータには、それぞれの対象物ガイドごとに、当該対象物ガイドの識別情報であるID451と、当該対象物ガイドのガイド位置452と、当該対象物ガイドの基準位置である対象物の特徴位置453とが関連付けられたレコードが格納される。なお、特徴位置453には、当該特徴位置を抽出するために使用される画像処理アルゴリズムに関する情報が含まれる。   FIG. 3A is a diagram illustrating an example of a data structure of the object guide data. As shown in FIG. 3A, the object guide data includes, for each object guide, an ID 451 that is identification information of the object guide, a guide position 452 of the object guide, and the object. A record in which the characteristic position 453 of the object that is the reference position of the guide is associated is stored. Note that the feature position 453 includes information regarding an image processing algorithm used for extracting the feature position.

図2の説明に戻る。ガイド設定部42は、撮像装置5の撮像範囲内の任意の位置に対して仮想的なガイド(固定ガイド)を設定する。固定ガイドは、視覚サーボにおいて、作業の目標位置を示す画像として、使用される。   Returning to the description of FIG. The guide setting unit 42 sets a virtual guide (fixed guide) for an arbitrary position within the imaging range of the imaging device 5. The fixed guide is used as an image showing the target position of work in the visual servo.

具体的には、ガイド設定部42は、例えば、撮像範囲を示す画像を表示部41に表示させる。また、ガイド設定部42は、表示された画像上でガイド位置の指定を、入力部40を介して受け付ける。ガイド設定部42は、指定されたガイド位置を示す固定ガイドデータを、ガイドデータ格納部46に格納する。なお、固定のガイド位置は、1点に限らず複数点の集合であってもよく、単に「固定ガイド」と呼んでもよい。   Specifically, the guide setting unit 42 causes the display unit 41 to display an image indicating the imaging range, for example. In addition, the guide setting unit 42 receives the designation of the guide position on the displayed image via the input unit 40. The guide setting unit 42 stores fixed guide data indicating the designated guide position in the guide data storage unit 46. The fixed guide position is not limited to one point, and may be a set of a plurality of points, or simply referred to as a “fixed guide”.

図3(B)は、固定ガイドデータのデータ構造の一例を示す図である。図3(B)に示すように、固定ガイドデータには、それぞれの固定ガイドごとに、当該固定ガイドの識別情報であるID461と、当該固定ガイドのガイド位置462とが関連付けられたレコードが格納される。   FIG. 3B is a diagram illustrating an example of a data structure of fixed guide data. As shown in FIG. 3B, for each fixed guide, a record in which an ID 461 that is identification information of the fixed guide and a guide position 462 of the fixed guide are associated is stored for each fixed guide. The

図2の説明に戻る。教示データ生成部43は、対象物ガイド及び固定ガイドが、所定の位置関係(同じ位置で一致する場合を含む。)となることを目標とする教示データを生成する。また、教示データ生成部43は、一の対象物ガイド及び他の対象物ガイドが、所定の位置関係(同じ位置で一致する場合を含む。)となることを目標とする教示データを生成する。   Returning to the description of FIG. The teaching data generation unit 43 generates teaching data for the purpose that the object guide and the fixed guide have a predetermined positional relationship (including a case where they coincide with each other at the same position). In addition, the teaching data generation unit 43 generates teaching data for which one object guide and another object guide have a predetermined positional relationship (including the case where they coincide at the same position).

具体的には、教示データ生成部43は、例えば、対象物ガイドの指定、固定ガイドの指定、目標位置の指定、対象物ガイドを目標位置に移動させる命令などを、入力部40を介して受け付ける。また、例えば、教示データ生成部43は、命令が複数ある場合には、各命令の工程順序を受け付ける。教示データ生成部43は、受け付けた各情報を含む教示データを生成し、教示データ格納部47に格納する。   Specifically, the teaching data generation unit 43 receives, for example, an object guide designation, a fixed guide designation, a target position designation, and a command for moving the object guide to the target position via the input unit 40. . Further, for example, when there are a plurality of instructions, the teaching data generation unit 43 receives the process order of each instruction. The teaching data generation unit 43 generates teaching data including each received information and stores it in the teaching data storage unit 47.

図4は、教示データのデータ構造の一例を示す図である。図4に示すように、教示データには、工程順に、工程番号471と、教示内容472とが関連付けられたレコードが格納される。なお、教示内容472には、指定されたガイドに対応するガイドデータ(対象物ガイドデータ、固定ガイドデータ)が含まれる。   FIG. 4 is a diagram illustrating an example of the data structure of teaching data. As shown in FIG. 4, the teaching data stores a record in which a process number 471 and a teaching content 472 are associated with each other in the order of processes. The teaching content 472 includes guide data (object guide data, fixed guide data) corresponding to the designated guide.

図2の説明に戻る。教示データ送信部44は、教示データ生成部43により生成された教示データを、教示データ格納部47から取得し、ロボット2の制御部3に対して送信する。   Returning to the description of FIG. The teaching data transmission unit 44 acquires the teaching data generated by the teaching data generation unit 43 from the teaching data storage unit 47 and transmits it to the control unit 3 of the robot 2.

モデルデータ格納部45には、上述のようにモデルデータが格納される。ガイドデータ格納部46には、上述のようにガイドデータが格納される。教示データ格納部47には、上述のようにガイドデータが格納される。   The model data storage unit 45 stores model data as described above. The guide data storage unit 46 stores guide data as described above. The teaching data storage unit 47 stores guide data as described above.

ロボット2の制御部3は、教示データ受信部30と、視覚サーボ制御部31と、画像取得部34と、教示データ格納部35とを有する。視覚サーボ制御部31は、特徴抽出部32と、ガイド生成部(「第一ガイド生成部」、「第二ガイド生成部」ともいう。)33とを有する。   The control unit 3 of the robot 2 includes a teaching data receiving unit 30, a visual servo control unit 31, an image acquisition unit 34, and a teaching data storage unit 35. The visual servo control unit 31 includes a feature extraction unit 32 and a guide generation unit (also referred to as “first guide generation unit” or “second guide generation unit”) 33.

教示データ受信部30は、教示装置4から教示データを受信し、教示データ格納部35に格納する。   The teaching data receiving unit 30 receives teaching data from the teaching device 4 and stores it in the teaching data storage unit 35.

視覚サーボ制御部31は、教示データ格納部35に格納されている教示データに基づいて、ロボット2の動作を制御する。そのため、視覚サーボ制御部31は、特徴抽出部32と、ガイド生成部33とを有する。   The visual servo control unit 31 controls the operation of the robot 2 based on the teaching data stored in the teaching data storage unit 35. Therefore, the visual servo control unit 31 includes a feature extraction unit 32 and a guide generation unit 33.

具体的には、視覚サーボ制御部31は、教示データに基づいて、移動させる作業対象物と、当該作業対象物を移動させる目標位置とを特定する。また、視覚サーボ制御部31は、画像取得部34から撮像画像を取得する。また、視覚サーボ制御部31は、教示データに基づいて、特徴抽出部32により、撮像画像に対して、移動させる作業対象物の特徴位置を抽出する所定の画像処理(例えば、エッジ検出、輪郭検出、コーナー検出など)を実行し、当該作業対象物の特徴位置を抽出する。また、視覚サーボ制御部31は、教示データに基づいて、ガイド生成部33により、抽出された特徴位置と所定の相対位置関係にあるガイド位置に、移動させる作業対象物の対象物ガイドを生成する。   Specifically, the visual servo control unit 31 specifies a work object to be moved and a target position to move the work object based on the teaching data. Further, the visual servo control unit 31 acquires a captured image from the image acquisition unit 34. Further, the visual servo control unit 31 performs predetermined image processing (for example, edge detection, contour detection) in which the feature extraction unit 32 extracts the feature position of the work object to be moved from the captured image based on the teaching data. , Corner detection, etc.) and the feature position of the work object is extracted. Further, the visual servo control unit 31 generates an object guide of the work object to be moved to the guide position having a predetermined relative positional relationship with the extracted feature position by the guide generation unit 33 based on the teaching data. .

また、視覚サーボ制御部31は、目標位置が撮像範囲内の所定位置である場合は、教示データに基づいて、ガイド生成部33により、撮像画像の指定された位置に、目標位置である固定ガイドを生成する。一方、視覚サーボ制御部31は、目標位置が作業対象物である場合には、教示データに基づいて、特徴抽出部32により、撮像画像に対して、目標位置である作業対象物の特徴位置を抽出する所定の画像処理(例えば、エッジ検出、輪郭検出、コーナー検出など)を実行し、当該作業対象物の特徴位置を抽出する。また、視覚サーボ制御部31は、教示データに基づいて、ガイド生成部33により、抽出された特徴位置と所定の相対位置関係にあるガイド位置に、目標位置である対象物ガイドを生成する。   In addition, when the target position is a predetermined position within the imaging range, the visual servo control unit 31 uses the guide generation unit 33 based on the teaching data to fix the fixed guide that is the target position at the specified position of the captured image. Is generated. On the other hand, when the target position is the work object, the visual servo control unit 31 uses the feature extraction unit 32 to set the feature position of the work object that is the target position with respect to the captured image based on the teaching data. Predetermined image processing (for example, edge detection, contour detection, corner detection, etc.) to be extracted is executed, and the feature position of the work object is extracted. Further, the visual servo control unit 31 generates an object guide as a target position at a guide position having a predetermined relative positional relationship with the extracted feature position by the guide generation unit 33 based on the teaching data.

また、視覚サーボ制御部31は、撮像画像上に生成された、移動させる対象物ガイドと、目標位置であるガイド(固定ガイド、又は対象物ガイド)とに基づいて、これらのガイドが教示データで教示される所定の位置関係となるように、視覚サーボを行う。   Further, the visual servo control unit 31 is based on an object guide to be moved and a guide (fixed guide or object guide) that is a target position generated on the captured image, and these guides are teaching data. Visual servo is performed so that the predetermined positional relationship is taught.

ここで、視覚サーボ制御部31は、撮像画像から、生成されたガイド以外の画像情報(すなわち、撮像画像に元々含まれる画像情報であり、ガイド画像の背景)を削除し、ガイドのみを含む画像に基づいて視覚サーボを行う。もちろん、撮像画像と同じ大きさの画像を生成し、この画像上にガイドを生成するようにしてもよい。   Here, the visual servo control unit 31 deletes image information other than the generated guide from the captured image (that is, image information originally included in the captured image and the background of the guide image), and includes only the guide. Based on the visual servo. Of course, an image having the same size as the captured image may be generated, and a guide may be generated on the image.

本実施形態の視覚サーボでは、目標画像の代わりに、撮像画像に基づいて生成される目標位置のガイドのみを含む画像が用いられる。また、現在画像の代わりに、撮像画像に基づいて生成される作業対象物のガイドのみを含む画像が用いられる。そして、これらのガイドが、視覚サーボ系への入力情報(制御量)として用いられる。視覚サーボ制御部31は、これらのガイドに基づいて、ガイドが一致するか否かを比較する。ガイドが一致する場合、視覚サーボを終了する。ガイドが一致しない場合、制御命令を生成し、ロボット2を動作させる。   In the visual servo of this embodiment, an image including only a guide for a target position generated based on a captured image is used instead of the target image. Further, instead of the current image, an image including only a work target guide generated based on the captured image is used. These guides are used as input information (control amount) to the visual servo system. The visual servo control unit 31 compares the guides with each other based on these guides. If the guides match, the visual servo is terminated. If the guides do not match, a control command is generated and the robot 2 is operated.

特徴抽出部32は、教示データに含まれるガイドデータを参照し、指定されたガイドIDに関連付けられた特徴位置から、所定の画像処理アルゴリズムを特定する。また、特徴抽出部32は、特定した画像処理アルゴリズムを撮像画像に対して実行し、作業対象物の特徴位置を抽出及び特定する。   The feature extraction unit 32 refers to the guide data included in the teaching data, and specifies a predetermined image processing algorithm from the feature position associated with the designated guide ID. The feature extraction unit 32 executes the specified image processing algorithm on the captured image, and extracts and specifies the feature position of the work target.

ガイド生成部33は、教示データに含まれるガイドデータを参照し、指定された対象物ガイドのガイドIDに関連付けられたガイド位置を特定する。また、ガイド生成部33は、特定したガイド位置に基づいて、特徴抽出部32により特定された作業対象物の特徴位置と所定の相対位置関係にあるガイド位置に、対象物ガイドを生成する。また、ガイド生成部33は、指定された固定ガイドのガイドIDに関連付けられたガイド位置に、固定ガイドを生成する。   The guide generation unit 33 refers to the guide data included in the teaching data, and specifies the guide position associated with the guide ID of the designated object guide. Further, the guide generation unit 33 generates an object guide at a guide position having a predetermined relative positional relationship with the feature position of the work object specified by the feature extraction unit 32 based on the specified guide position. In addition, the guide generation unit 33 generates a fixed guide at the guide position associated with the guide ID of the designated fixed guide.

画像取得部34は、撮像装置5を制御して撮像を行わせ、撮像画像を取得する。   The image acquisition unit 34 controls the imaging device 5 to perform imaging and acquires a captured image.

教示データ格納部35には、上述のように教示データが格納される。   The teaching data storage unit 35 stores teaching data as described above.

図5は、教示装置の機能を実現するハードウェア構成の一例を示す図である。   FIG. 5 is a diagram illustrating an example of a hardware configuration for realizing the function of the teaching apparatus.

教示装置4は、例えば、図5に示すような、CPU(Central Processing Unit)等の演算装置90と、RAM(Random Access Memory)などの主記憶装置91と、HDD(Hard Disk Drive)等の補助記憶装置92と、有線又は無線により通信ネットワークと接続するための通信インターフェイス(I/F)93と、マウス、キーボード、タッチセンサーやタッチパネルなどの入力装置94と、液晶ディスプレイなどの表示装置95と、DVD(Digital Versatile Disk)などの持ち運び可能な記憶媒体に対する情報の読み書きを行う読み書き装置96と、を備えるコンピューター9で実現することができる。   The teaching device 4 includes, for example, an arithmetic device 90 such as a CPU (Central Processing Unit), a main storage device 91 such as a RAM (Random Access Memory), and an auxiliary device such as an HDD (Hard Disk Drive) as shown in FIG. A storage device 92, a communication interface (I / F) 93 for connecting to a communication network by wire or wireless, an input device 94 such as a mouse, keyboard, touch sensor, or touch panel, a display device 95 such as a liquid crystal display, This can be realized by a computer 9 including a read / write device 96 that reads / writes information from / to a portable storage medium such as a DVD (Digital Versatile Disk).

例えば、ガイド設定部42、教示データ生成部43、教示データ送信部44などは、補助記憶装置92などから主記憶装置91にロードされた所定のプログラムを演算装置90が実行することで実現される。モデルデータ格納部45、ガイドデータ格納部46、教示データ格納部47などは、例えば、演算装置90が主記憶装置91又は補助記憶装置92を利用することで実現される。ロボット2との通信は、例えば、演算装置90が通信I/F93を利用することで実現される。入力部40は、例えば、演算装置90が入力装置94を利用することで実現される。表示部41は、例えば、演算装置90が表示装置95を利用することで実現される。なお、上記の所定のプログラムは、例えば、読み書き装置96により読み取られた記憶媒体からインストールされてもよいし、通信I/F93を介してネットワークからインストールされてもよい。   For example, the guide setting unit 42, the teaching data generation unit 43, the teaching data transmission unit 44, and the like are realized by the arithmetic device 90 executing a predetermined program loaded from the auxiliary storage device 92 or the like to the main storage device 91. . The model data storage unit 45, the guide data storage unit 46, the teaching data storage unit 47, and the like are realized by the arithmetic device 90 using the main storage device 91 or the auxiliary storage device 92, for example. Communication with the robot 2 is realized, for example, when the arithmetic device 90 uses the communication I / F 93. The input unit 40 is realized, for example, when the arithmetic device 90 uses the input device 94. The display unit 41 is realized, for example, when the arithmetic device 90 uses the display device 95. The predetermined program may be installed from, for example, a storage medium read by the read / write device 96, or may be installed from a network via the communication I / F 93.

制御部3は、例えば、演算装置、記憶装置、処理回路、駆動回路などを備えるコントローラー基板等により実現することができる。例えば、教示データ受信部30、視覚サーボ制御部31、画像取得部34などは、記憶装置にロードされた所定のプログラムを演算装置が実行することで実現される。教示データ格納部35は、例えば、演算装置が記憶装置を利用することで実現される。   The control unit 3 can be realized by, for example, a controller board including an arithmetic device, a storage device, a processing circuit, a drive circuit, and the like. For example, the teaching data receiving unit 30, the visual servo control unit 31, the image acquisition unit 34, and the like are realized by the arithmetic device executing a predetermined program loaded in the storage device. The teaching data storage unit 35 is realized, for example, when the arithmetic device uses a storage device.

上述したロボットシステム1の機能構成は、ロボットシステム1の構成を理解容易にするために、主な処理内容に応じて分類したものである。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。ロボットシステム1の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、1つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。   The functional configuration of the robot system 1 described above is classified according to main processing contents in order to facilitate understanding of the configuration of the robot system 1. The present invention is not limited by the way of classification and names of the constituent elements. The configuration of the robot system 1 can be classified into more components depending on the processing content. Moreover, it can also classify | categorize so that one component may perform more processes. Further, the processing of each component may be executed by one hardware or may be executed by a plurality of hardware.

また、教示装置4及び制御部3の機能及び処理の分担は、説明した例に限られない。例えば、教示装置4の少なくとも一部の機能は、制御部3に含まれ、制御部3により実現されてもよい。また、例えば、制御部3の少なくとも一部の機能は、教示装置4に含まれ、教示装置4により実現されてもよい。   Further, the functions and processing sharing of the teaching device 4 and the control unit 3 are not limited to the example described. For example, at least some of the functions of the teaching device 4 may be included in the control unit 3 and realized by the control unit 3. For example, at least a part of the functions of the control unit 3 may be included in the teaching device 4 and realized by the teaching device 4.

次に、ロボットシステム1により実現される処理及び動作について、説明する。   Next, processes and operations realized by the robot system 1 will be described.

まず、図6〜図11を参照して、ロボット2が行う第一の作業例に基づいて説明する。それから、図12〜図16を参照して、ロボット2が行う第二の作業例に基づいて説明する。   First, a description will be given based on a first working example performed by the robot 2 with reference to FIGS. Then, with reference to FIGS. 12 to 16, a description will be given based on a second work example performed by the robot 2.

図7は、ロボットが行う第一の作業例を示す図である。第一の作業例は、部品W1に形成されている凹部に部品W2を嵌め込む、という作業である。なお、ロボット2は、部品をハンド22で把持することで、部品を移動させることができるため、把持動作に関する説明は省略する。   FIG. 7 is a diagram illustrating a first work example performed by the robot. The first work example is a work of fitting the part W2 into the recess formed in the part W1. Since the robot 2 can move the component by gripping the component with the hand 22, the description regarding the gripping operation is omitted.

図6は、教示処理の一例を示すフロー図である。なお、モデルデータ格納部45には、部品W1と部品W2のモデルデータが予め格納されている。   FIG. 6 is a flowchart showing an example of the teaching process. In the model data storage unit 45, model data of the parts W1 and W2 are stored in advance.

まず、ガイド設定部42は、対象物ガイドの設定を受け付ける(ステップS100)。具体的には、ガイド設定部42は、ユーザーから入力部40を介して、モデルデータ格納部45に格納されているモデルデータの中から、作業に必要な部品(部品W1、部品W2)のモデルデータの選択を受け付ける。なお、ガイド設定部42は、例えば、作業に必要な部品を含む画像を撮像装置5等から取得し、取得した画像から画像処理により部品を認識し、認識した部品に対応するモデルデータを、モデルデータ格納部45に格納されているモデルデータの中から選択するようにしてもよい。   First, the guide setting unit 42 receives the setting of the object guide (step S100). Specifically, the guide setting unit 42 receives the model of the parts (part W1, part W2) necessary for the work from the model data stored in the model data storage unit 45 via the input unit 40 from the user. Accept data selection. The guide setting unit 42 acquires, for example, an image including a component necessary for the operation from the imaging device 5 and the like, recognizes the component by image processing from the acquired image, and stores model data corresponding to the recognized component as a model. You may make it select from the model data stored in the data storage part 45. FIG.

また、ガイド設定部42は、選択された各モデルデータに対して、特徴位置を抽出する所定の画像処理を実行し、特徴位置を抽出する。なお、ガイド設定部42は、各モデルデータに対して、使用する画像処理アルゴリズムの選択及び設定を、ユーザーから受け付けるようにしてもよい。また、ガイド設定部42は、モデルデータとともに抽出した特徴位置を示す画像を、表示部41に表示させる。例えば、図8(A)(部品W1に設定されるガイドの一例を示す図)に示すように、部品W1のモデルデータW1とともに、抽出された特徴位置F1(破線で示す。)が表示される。また、例えば、図8(B)(部品W2に設定されるガイドの一例を示す図)に示すように、部品W2のモデルデータW2とともに、抽出された特徴位置F2(破線で示す。)が表示される。   In addition, the guide setting unit 42 performs predetermined image processing for extracting a feature position on each selected model data, and extracts the feature position. The guide setting unit 42 may accept selection and setting of the image processing algorithm to be used for each model data from the user. Further, the guide setting unit 42 causes the display unit 41 to display an image indicating the feature position extracted together with the model data. For example, as shown in FIG. 8A (a diagram showing an example of a guide set for the part W1), the extracted feature position F1 (shown by a broken line) is displayed together with the model data W1 of the part W1. . Further, for example, as shown in FIG. 8B (a diagram showing an example of a guide set for the part W2), the extracted feature position F2 (indicated by a broken line) is displayed together with the model data W2 of the part W2. Is done.

また、ガイド設定部42は、表示されている画像に対して、ガイド位置の指定を、ユーザーから入力部40を介して受け付ける。例えば、図8(A)では、部品W1の凹部に対応させてガイドG1が設定されている。また、例えば、図8(B)では、部品W2の一端(部品W1の凹部に挿入される側)に対応させてガイドG2が設定されている。   In addition, the guide setting unit 42 receives a guide position designation for the displayed image from the user via the input unit 40. For example, in FIG. 8A, the guide G1 is set so as to correspond to the concave portion of the component W1. Further, for example, in FIG. 8B, the guide G2 is set corresponding to one end of the component W2 (the side inserted into the concave portion of the component W1).

ここで、対象物ガイドは、基準位置と方向成分を有する。ガイドの基準位置は、例えば、モデルデータが3次元である場合にはXYZ座標の値を持ち、モデルデータが2次元である場合にはXY座標の値を持つ。また、ガイドの方向成分は、ガイドの基準位置を原点とする3次元のXYZ軸方向、又は2次元のXY軸方向である。ガイド設定部42は、ガイド位置として、対象物ガイドの基準位置及び方向成分の指定を、ユーザーから入力部40を介して受け付ける。   Here, the object guide has a reference position and a direction component. The reference position of the guide has, for example, an XYZ coordinate value when the model data is three-dimensional, and an XY coordinate value when the model data is two-dimensional. The guide direction component is a three-dimensional XYZ-axis direction or a two-dimensional XY-axis direction with the reference position of the guide as the origin. The guide setting unit 42 receives designation of the reference position and direction component of the object guide as a guide position from the user via the input unit 40.

ガイド設定部42は、モデルデータに対するガイド位置(基準位置、方向成分)が指定されると、指定されたガイド位置の基準位置を、抽出された特徴位置に対する相対位置を示す情報に変換する。そして、ガイド設定部42は、当該対象物ガイドに対して割り当てたID又はユーザーから指定されたIDと、ガイド位置(変換された基準位置、方向成分)と、抽出された特徴位置(特徴位置を特定する情報、当該特徴位置を抽出するために使用される画像処理アルゴリズムに関する情報)とを関連付けたレコードを、ガイドデータ格納部46の対象物ガイドデータに追加する。   When the guide position (reference position, direction component) with respect to the model data is designated, the guide setting unit 42 converts the reference position of the designated guide position into information indicating the relative position with respect to the extracted feature position. Then, the guide setting unit 42 assigns the ID assigned to the object guide or the ID specified by the user, the guide position (converted reference position, direction component), and the extracted feature position (feature position). A record associating information to be identified and information relating to an image processing algorithm used for extracting the feature position) is added to the object guide data in the guide data storage unit 46.

それから、ガイド設定部42は、固定ガイドの設定を受け付ける(ステップS110)。具体的には、ガイド設定部42は、例えば、撮像装置5の撮像範囲を示す画像を表示部41に表示させる。また、ガイド設定部42は、表示されている画像に対して、ガイド位置の指定を、ユーザーから入力部40を介して受け付ける。例えば、図8(C)(固定ガイドの一例を説明する図)では、撮像範囲の中心付近に、固定ガイドSG1が設定されている。   Then, the guide setting unit 42 receives a fixed guide setting (step S110). Specifically, for example, the guide setting unit 42 causes the display unit 41 to display an image indicating the imaging range of the imaging device 5. In addition, the guide setting unit 42 receives a guide position designation for the displayed image from the user via the input unit 40. For example, in FIG. 8C (a diagram illustrating an example of the fixed guide), the fixed guide SG1 is set near the center of the imaging range.

ここで、固定ガイドは、対象物ガイドと同様に、基準位置と方向成分を有する。ガイド設定部42は、ガイド位置として、固定ガイドの基準位置及び方向成分の指定を、ユーザーから入力部40を介して受け付ける。   Here, the fixed guide has a reference position and a direction component in the same manner as the object guide. The guide setting unit 42 receives designation of the reference position and direction component of the fixed guide as a guide position from the user via the input unit 40.

ガイド設定部42は、撮像範囲に対するガイド位置(基準位置、方向成分)が決定されると、当該固定ガイドに対して割り当てたID又はユーザーから指定されたIDと、ガイド位置(基準位置、方向成分)とを関連付けたレコードを、ガイドデータ格納部46の固定ガイドデータに追加する。   When the guide position (reference position, direction component) for the imaging range is determined, the guide setting unit 42 assigns the ID assigned to the fixed guide or the ID specified by the user and the guide position (reference position, direction component). ) Is added to the fixed guide data in the guide data storage unit 46.

それから、教示データ生成部43は、教示データを生成する(ステップS120)。具体的には、教示データ生成部43は、第一の作業例を実現するロボット2の各工程の設定を、ユーザーから入力部40を介して受け付ける。教示データ生成部43は、例えば下記のように、ガイドの指定及びガイドを目標位置に移動させる命令を含む教示を受け付け、工程番号471と教示内容472(下記では、「工程番号:教示内容」と表す。)として、教示データ格納部47の教示データに追加する。
工程1:固定ガイドSG1(基準位置)に、対象物ガイドG1(基準位置)を、一致させる。
工程2:固定ガイドSG1(基準位置)に、所定のオフセット距離(基準位置からX方向にmピクセル)で、対象物ガイドG2(基準位置)を一致させる。
工程3:対象物ガイドG2(基準位置)を、所定の距離(X方向にnピクセル)移動する。
なお、工程3は、部品W2を部品W1に嵌め込む動作の準備動作である。
Then, the teaching data generation unit 43 generates teaching data (step S120). Specifically, the teaching data generation unit 43 receives settings of each process of the robot 2 that realizes the first work example from the user via the input unit 40. The teaching data generation unit 43 receives a teaching including a designation of a guide and a command to move the guide to a target position, for example, as described below, and receives a process number 471 and a teaching content 472 (in the following, “process number: teaching content”). To the teaching data in the teaching data storage unit 47.
Step 1: The object guide G1 (reference position) is matched with the fixed guide SG1 (reference position).
Step 2: The object guide G2 (reference position) is matched with the fixed guide SG1 (reference position) at a predetermined offset distance (m pixels from the reference position in the X direction).
Step 3: Move the object guide G2 (reference position) by a predetermined distance (n pixels in the X direction).
Step 3 is a preparatory operation for the operation of fitting the component W2 into the component W1.

また、教示データ生成部43は、各工程の教示内容472に、当該教示内容で指定されているガイド(固定ガイドSG1、対象物ガイドG1、対象物ガイドG2)のガイドデータを設定する。   In addition, the teaching data generation unit 43 sets the guide data of the guides (fixed guide SG1, object guide G1, object guide G2) specified by the instruction contents in the instruction contents 472 of each step.

それから、教示データ送信部44は、ステップS120で生成された教示データを、ロボット2に送信し(ステップS130)、図6に示すフローチャートの処理を終了する。   Then, the teaching data transmission unit 44 transmits the teaching data generated in step S120 to the robot 2 (step S130), and ends the processing of the flowchart shown in FIG.

以上のようにして、ガイド位置の設定、及びロボット2の作業内容を示す教示データの設定が行われ、ロボット2に対して教示される。なお、ステップS100とステップS110の順序は逆でもよい。また、ステップS130は、ユーザーが指定した任意のタイミングで実行されてもよい。   As described above, the setting of the guide position and the teaching data indicating the work contents of the robot 2 are set, and the robot 2 is taught. Note that the order of step S100 and step S110 may be reversed. Further, step S130 may be executed at an arbitrary timing designated by the user.

図9は、第一の作業例における視覚サーボ処理の一例を示すフロー図である。図10(第一の作業例における視覚サーボの経過を視覚的に説明する図(その1))、及び図11(第一の作業例における視覚サーボの経過を視覚的に説明する図(その2))を参照しながら説明する。なお、説明を分かり易くするため、図10及び図11では、ロボット2のハンド22等は省略している。   FIG. 9 is a flowchart showing an example of visual servo processing in the first work example. FIG. 10 (a diagram for visually explaining the progress of visual servo in the first work example (part 1)) and FIG. 11 (a diagram for visually explaining the progress of visual servo in the first work example (part 2) )) To explain. For easy understanding, the hand 22 and the like of the robot 2 are omitted in FIGS. 10 and 11.

教示装置4から送信された教示データは、教示データ受信部30により受信され、教示データ格納部35に格納されているものとする。視覚サーボ制御部31は、教示データの各工程の教示内容に基づいて、ロボット2の動作を制御する。なお、ステップS200〜S250は、上述の「工程1」に対応する。また、ステップS260〜S310は、上述の「工程2」に対応する。また、ステップS320は、上述の「工程3」に対応する。   It is assumed that the teaching data transmitted from the teaching device 4 is received by the teaching data receiving unit 30 and stored in the teaching data storage unit 35. The visual servo control unit 31 controls the operation of the robot 2 based on the teaching content of each process of the teaching data. Steps S200 to S250 correspond to the above-mentioned “Step 1”. Steps S260 to S310 correspond to the above-mentioned “Step 2”. Step S320 corresponds to the above-mentioned “Step 3”.

まず、画像取得部34は、撮像装置5を制御して撮像を行わせ、撮像画像を取得する(ステップS200)。   First, the image acquisition unit 34 controls the imaging device 5 to perform imaging and acquires a captured image (step S200).

それから、視覚サーボ制御部31は、固定ガイドSG1を生成する(ステップS210)。具体的には、ガイド生成部33は、工程1の教示データに含まれるガイドデータから、固定ガイドSG1のガイド位置を取得する。また、ガイド生成部33は、取得したガイド位置に基づいて、ステップS200で取得した撮像画像上に、固定ガイドSG1を生成する(図10(A))。   Then, the visual servo control unit 31 generates the fixed guide SG1 (step S210). Specifically, the guide generation unit 33 acquires the guide position of the fixed guide SG1 from the guide data included in the teaching data in step 1. Further, the guide generation unit 33 generates the fixed guide SG1 on the captured image acquired in step S200 based on the acquired guide position (FIG. 10A).

それから、視覚サーボ制御部31は、部品W1の特徴を抽出する(ステップS220)。具体的には、特徴抽出部32は、工程1の教示データに含まれるガイドデータから、部品W1の特徴位置を取得する。また、特徴抽出部32は、ステップS200で取得された撮像画像に対して、取得した特徴位置から特定される画像処理アルゴリズムを実行し、特徴を抽出する。また、特徴抽出部32は、抽出した特徴の中から、取得した部品W1の特徴位置と合致する特徴を特定する。なお、特徴位置の合致は、例えば、部品W1の特徴位置を構成する各画素の配置と、抽出した特徴を構成する各画素の配置との一致率(例えば90%以上の一致率)で判断することができる。このようにして、撮像画像上に、部品W1の特徴位置F1が抽出及び特定される(図10(A))。   Then, the visual servo control unit 31 extracts the feature of the part W1 (step S220). Specifically, the feature extraction unit 32 acquires the feature position of the part W1 from the guide data included in the teaching data in step 1. In addition, the feature extraction unit 32 executes the image processing algorithm specified from the acquired feature position on the captured image acquired in step S200, and extracts the feature. In addition, the feature extraction unit 32 specifies a feature that matches the acquired feature position of the component W1 from the extracted features. The coincidence of the feature positions is determined by, for example, the coincidence rate (for example, a coincidence rate of 90% or more) between the arrangement of each pixel constituting the feature position of the component W1 and the arrangement of each pixel constituting the extracted feature. be able to. In this way, the feature position F1 of the component W1 is extracted and specified on the captured image (FIG. 10A).

それから、視覚サーボ制御部31は、部品W1に対応するガイドG1を生成する(ステップS230)。具体的には、ガイド生成部33は、工程1の教示データに含まれるガイドデータから、部品W1のガイド位置(特徴位置に対する相対位置を示す。)を取得する。また、ガイド生成部33は、ステップS220で抽出及び特定された部品W1の特徴位置F1を基準に、取得したガイド位置が示す位置に、対象物ガイドG1を設定する。このようにして、撮像画像上に、特徴位置F1を基準として、対象物ガイドG1が設定される(図10(A))。   Then, the visual servo control unit 31 generates a guide G1 corresponding to the part W1 (step S230). Specifically, the guide generation unit 33 acquires the guide position (indicating a relative position with respect to the feature position) of the component W1 from the guide data included in the teaching data in step 1. In addition, the guide generation unit 33 sets the object guide G1 at the position indicated by the acquired guide position with reference to the characteristic position F1 of the component W1 extracted and specified in step S220. In this way, the object guide G1 is set on the captured image with the feature position F1 as a reference (FIG. 10A).

それから、視覚サーボ制御部31は、視覚サーボを実行する(ステップS240)。具体的には、視覚サーボ制御部31は、撮像画像から、生成されたガイド以外の画像情報を削除する。それから、視覚サーボ制御部31は、工程1の教示データに基づいて、固定ガイドSG1(基準位置)に、対象物ガイドG1(基準位置)を、一致させるように、視覚サーボを実行する(図10(A))。なお、視覚サーボ制御部31は、対象物ガイドG1が固定ガイドSG1から所定距離内に位置しない場合には、制御命令を生成してロボットのアームを動作させる(エンドポイントを移動させる)。一方、視覚サーボ制御部31は、対象物ガイドG1が固定ガイドSG1から所定距離内に位置する場合には、制御命令を生成せずに、工程1の視覚サーボは収束していると判断する(図10(B))。   Then, the visual servo control unit 31 executes visual servo (step S240). Specifically, the visual servo control unit 31 deletes image information other than the generated guide from the captured image. Then, the visual servo control unit 31 executes the visual servo so that the object guide G1 (reference position) matches the fixed guide SG1 (reference position) based on the teaching data in step 1 (FIG. 10). (A)). When the object guide G1 is not located within a predetermined distance from the fixed guide SG1, the visual servo control unit 31 generates a control command and operates the robot arm (moves the end point). On the other hand, when the object guide G1 is located within a predetermined distance from the fixed guide SG1, the visual servo control unit 31 determines that the visual servo in step 1 has converged without generating a control command ( FIG. 10B).

それから、視覚サーボ制御部31は、視覚サーボが収束しているか否かを判定する(ステップS250)。具体的には、視覚サーボ制御部31は、ステップS240において収束していると判断した場合には(ステップS250:Y)、処理をステップS260に進める。一方、ステップS240において収束していないと判断した場合には(ステップS250:N)、処理をステップS200に戻す。   Then, the visual servo control unit 31 determines whether or not the visual servo has converged (step S250). Specifically, when it is determined that the visual servo control unit 31 has converged in step S240 (step S250: Y), the process proceeds to step S260. On the other hand, if it is determined in step S240 that it has not converged (step S250: N), the process returns to step S200.

ステップS240の視覚サーボが収束している場合(ステップS250:Y)、画像取得部34は、撮像装置5を制御して撮像を行わせ、撮像画像を取得する(ステップS260)。   When the visual servo of step S240 has converged (step S250: Y), the image acquisition unit 34 controls the imaging device 5 to perform imaging and acquires a captured image (step S260).

それから、視覚サーボ制御部31は、固定ガイドSG1を生成する(ステップS270)。具体的には、ガイド生成部33は、工程2の教示データに含まれるガイドデータから、固定ガイドSG1のガイド位置を取得する。また、ガイド生成部33は、取得したガイド位置に基づいて、ステップS260で取得した撮像画像上に、固定ガイドSG1を生成する(図10(B))。   Then, the visual servo control unit 31 generates the fixed guide SG1 (step S270). Specifically, the guide generation unit 33 acquires the guide position of the fixed guide SG1 from the guide data included in the teaching data in step 2. Further, the guide generation unit 33 generates the fixed guide SG1 on the captured image acquired in step S260 based on the acquired guide position (FIG. 10B).

それから、視覚サーボ制御部31は、部品W2の特徴を抽出する(ステップS280)。具体的には、特徴抽出部32は、工程2の教示データに含まれるガイドデータから、部品W2の特徴位置を取得する。また、特徴抽出部32は、ステップS260で取得された撮像画像に対して、取得した特徴位置から特定される画像処理アルゴリズムを実行し、特徴を抽出する。また、特徴抽出部32は、抽出した特徴の中から、取得した部品W2の特徴位置と合致する特徴を特定する。なお、特徴位置の合致は、例えば、部品W2の特徴位置を構成する各画素の配置と、抽出した特徴を構成する各画素の配置との一致率(例えば90%以上の一致率)で判断することがきる。このようにして、撮像画像上に、部品W2の特徴位置F2が抽出及び特定される(図10(B))。   Then, the visual servo control unit 31 extracts the feature of the part W2 (step S280). Specifically, the feature extraction unit 32 acquires the feature position of the component W2 from the guide data included in the teaching data in step 2. In addition, the feature extraction unit 32 executes the image processing algorithm specified from the acquired feature position on the captured image acquired in step S260, and extracts the feature. In addition, the feature extraction unit 32 specifies a feature that matches the acquired feature position of the component W2 from the extracted features. The coincidence of the feature positions is determined by, for example, the coincidence rate (for example, a coincidence rate of 90% or more) between the arrangement of each pixel constituting the feature position of the component W2 and the arrangement of each pixel constituting the extracted feature. I can do it. In this way, the characteristic position F2 of the component W2 is extracted and specified on the captured image (FIG. 10B).

それから、視覚サーボ制御部31は、部品W2に対応するガイドG2を生成する(ステップS290)。具体的には、ガイド生成部33は、工程2の教示データに含まれるガイドデータから、部品W2のガイド位置(特徴位置に対する相対位置を示す。)を取得する。また、ガイド生成部33は、ステップS280で抽出及び特定された部品W2の特徴位置F2を基準に、取得したガイド位置が示す位置に、対象物ガイドG2を設定する。このようにして、撮像画像上に、特徴位置F2を基準として、対象物ガイドG2が設定される(図10(B))。   Then, the visual servo control unit 31 generates a guide G2 corresponding to the part W2 (step S290). Specifically, the guide generation unit 33 acquires the guide position (indicating a relative position with respect to the feature position) of the component W2 from the guide data included in the teaching data in step 2. In addition, the guide generation unit 33 sets the object guide G2 at the position indicated by the acquired guide position on the basis of the characteristic position F2 of the component W2 extracted and specified in step S280. In this way, the object guide G2 is set on the captured image with the feature position F2 as a reference (FIG. 10B).

それから、視覚サーボ制御部31は、視覚サーボを実行する(ステップS300)。具体的には、視覚サーボ制御部31は、撮像画像から、生成されたガイド以外の画像情報を削除する。それから、視覚サーボ制御部31は、工程2の教示データに基づいて、固定ガイドSG1(基準位置)に、所定のオフセット距離(基準位置からX方向にmピクセル)で、対象物ガイドG2(基準位置)を一致させるように、視覚サーボを実行する(図10(B))。なお、視覚サーボ制御部31は、対象物ガイドG2が、固定ガイドSG1を基準とするオフセット位置E1から所定距離内に位置しない場合には、制御命令を生成してロボットのアームを動作させる(エンドポイントを移動させる)。一方、視覚サーボ制御部31は、対象物ガイドG2が、オフセット位置E1から所定距離内に位置する場合には、制御命令を生成せずに、工程2の視覚サーボは収束していると判断する(図11(A))。   Then, the visual servo control unit 31 executes visual servo (step S300). Specifically, the visual servo control unit 31 deletes image information other than the generated guide from the captured image. Then, based on the teaching data in step 2, the visual servo control unit 31 moves the object guide G2 (reference position) to the fixed guide SG1 (reference position) with a predetermined offset distance (m pixels in the X direction from the reference position). ) Is executed so as to match (FIG. 10B). When the object guide G2 is not located within a predetermined distance from the offset position E1 with reference to the fixed guide SG1, the visual servo control unit 31 generates a control command to operate the robot arm (end). Move point). On the other hand, when the object guide G2 is located within a predetermined distance from the offset position E1, the visual servo control unit 31 determines that the visual servo in step 2 has converged without generating a control command. (FIG. 11 (A)).

それから、視覚サーボ制御部31は、視覚サーボが収束しているか否かを判定する(ステップS310)。具体的には、視覚サーボ制御部31は、ステップS300において収束していると判断した場合には(ステップS310:Y)、処理をステップS320に進める。一方、ステップS300において収束していないと判断した場合には(ステップS310:N)、処理をステップS260に戻す。   Then, the visual servo control unit 31 determines whether or not the visual servo has converged (step S310). Specifically, when it is determined that the visual servo control unit 31 has converged in step S300 (step S310: Y), the process proceeds to step S320. On the other hand, if it is determined in step S300 that it has not converged (step S310: N), the process returns to step S260.

ステップS300の視覚サーボが収束した場合(ステップS310:Y)、視覚サーボ制御部31は、ロボットの所定の動作を行う(ステップS320)。具体的には、視覚サーボ制御部31は、工程3の教示データに基づいて、対象物ガイドG2(基準位置)が、所定の距離(X方向にnピクセル)移動するように、ロボットのアームを動作させる(図11(B))。ステップS320の処理は、視覚サーボで行ってもよいし、位置制御で行ってもよい。そして、視覚サーボ制御部31は、図9に示すフローチャートの処理を終了する。なお、図9に示すフローチャートの終了後、制御部3は、例えば、位置制御、インピーダンス制御などによりロボット2を制御し、部品W2を部品W1に嵌め込む。   When the visual servo in step S300 converges (step S310: Y), the visual servo control unit 31 performs a predetermined operation of the robot (step S320). Specifically, the visual servo control unit 31 moves the arm of the robot so that the object guide G2 (reference position) moves a predetermined distance (n pixels in the X direction) based on the teaching data in step 3. Operate (FIG. 11B). The process of step S320 may be performed by visual servoing or position control. Then, the visual servo control unit 31 ends the process of the flowchart shown in FIG. In addition, after completion | finish of the flowchart shown in FIG. 9, the control part 3 controls the robot 2 by position control, impedance control, etc., for example, and inserts the components W2 in the components W1.

以上のようにして、撮像画像に対して対象物ガイドと固定ガイドが生成され、これらのガイドを一致させるような視覚サーボが実行される。   As described above, the object guide and the fixed guide are generated for the captured image, and the visual servo is performed so as to match these guides.

図12は、ロボットが行う第二の作業例を示す図である。第二の作業例は、部品W4に形成されているネジ穴にネジW3bを挿入して締める、というものである。ネジW3bの移動及びネジ締めには、ドライバーW3aを使用する。視覚サーボでネジW3bの移動を開始する事前に、ドライバーW3aの磁性を帯びた先端にネジW3aの頭を固定する。なお、ロボット2は、部品又はドライバーW3aをハンド22で把持することで、部品を移動させることができるため、把持動作に関する説明は省略する。   FIG. 12 is a diagram illustrating a second work example performed by the robot. The second work example is to insert and tighten the screw W3b into the screw hole formed in the component W4. A driver W3a is used to move and tighten the screw W3b. Before starting the movement of the screw W3b by visual servo, the head of the screw W3a is fixed to the magnetic tip of the driver W3a. Since the robot 2 can move the component by gripping the component or the driver W3a with the hand 22, the description regarding the gripping operation is omitted.

教示処理は、図6と基本的に同様であるが、固定ガイドの設定(図6のステップS110)が不要である。なお、モデルデータ格納部45には、部品W4のモデルデータと、ドライバーW3aにネジW3bが固定された状態(以下、「部品W3」と呼ぶ。)のモデルデータが予め格納されている。   The teaching process is basically the same as that shown in FIG. 6, but the setting of the fixed guide (step S110 in FIG. 6) is not necessary. The model data storage unit 45 stores in advance model data of the part W4 and model data in a state where the screw W3b is fixed to the driver W3a (hereinafter referred to as “part W3”).

まず、ガイド設定部42は、ユーザーから入力部40を介して、モデルデータ格納部45に格納されているモデルデータの中から、作業に必要な各部品(部品W3、部品W4)のモデルデータの選択を受け付ける。   First, the guide setting unit 42 receives model data of each part (part W3, part W4) necessary for the work from the model data stored in the model data storage unit 45 via the input unit 40 from the user. Accept selection.

また、ガイド設定部42は、選択された各モデルデータに対して、特徴位置を抽出する所定の画像処理を実行し、特徴位置を抽出する。なお、ガイド設定部42は、各モデルデータに対して、使用する画像処理アルゴリズムの選択及び設定を、ユーザーから受け付けるようにしてもよい。また、ガイド設定部42は、モデルデータとともに抽出した特徴位置を示す画像を、表示部41に表示させる。例えば、図13(A)(部品W3に設定されるガイドの一例を示す図)に示すように、部品W3のモデルデータW3とともに、抽出された特徴位置F3(破線で示す。)が表示される。また、例えば、図13(B)(部品W4に設定されるガイドの一例を示す図)に示すように、部品W4のモデルデータW4とともに、抽出された特徴位置F4(破線で示す。)が表示される。   In addition, the guide setting unit 42 performs predetermined image processing for extracting a feature position on each selected model data, and extracts the feature position. The guide setting unit 42 may accept selection and setting of the image processing algorithm to be used for each model data from the user. Further, the guide setting unit 42 causes the display unit 41 to display an image indicating the feature position extracted together with the model data. For example, as shown in FIG. 13A (a diagram showing an example of a guide set for the part W3), the extracted feature position F3 (shown by a broken line) is displayed together with the model data W3 of the part W3. . Further, for example, as shown in FIG. 13B (a diagram showing an example of a guide set for the component W4), the extracted feature position F4 (shown by a broken line) is displayed together with the model data W4 of the component W4. Is done.

また、ガイド設定部42は、表示されている画像に対して、ガイド位置の指定を、ユーザーから入力部40を介して受け付ける。例えば、図13(A)では、部品W3のネジの先端部分に対応させてガイドG3が設定されている。また、例えば、図13(B)では、部品W4のネジ穴に対応させてガイドG4が設定されている。   In addition, the guide setting unit 42 receives a guide position designation for the displayed image from the user via the input unit 40. For example, in FIG. 13A, the guide G3 is set so as to correspond to the tip of the screw of the component W3. For example, in FIG. 13B, the guide G4 is set in correspondence with the screw hole of the component W4.

ガイド設定部42は、モデルデータに対するガイド位置(基準位置、方向成分)が指定されると、指定されたガイド位置の基準位置を、抽出された特徴位置に対する相対位置を示す情報に変換する。そして、ガイド設定部42は、当該対象物ガイドに対して割り当てたID又はユーザーから指定されたIDと、ガイド位置(変換された基準位置、方向成分)と、抽出された特徴位置(特徴位置を特定する情報、当該特徴位置を抽出するために使用される画像処理アルゴリズムに関する情報)とを関連付けたレコードを、ガイドデータ格納部46の対象物ガイドデータに追加する。   When the guide position (reference position, direction component) with respect to the model data is designated, the guide setting unit 42 converts the reference position of the designated guide position into information indicating the relative position with respect to the extracted feature position. Then, the guide setting unit 42 assigns the ID assigned to the object guide or the ID specified by the user, the guide position (converted reference position, direction component), and the extracted feature position (feature position). A record associating information to be identified and information relating to an image processing algorithm used for extracting the feature position) is added to the object guide data in the guide data storage unit 46.

それから、教示データ生成部43は、第二の作業例を実現するロボット2の各工程の設定を、ユーザーから入力部40を介して受け付ける。教示データ生成部43は、例えば下記のように、ガイドの指定及びガイドを目標位置に移動させる命令を含む教示を受け付け、工程番号471と教示内容472として、教示データ格納部47の教示データに追加する。
工程1:対象物ガイドG4(基準位置)に、所定のオフセット距離(基準位置からZ方向にmピクセル)で、対象物ガイドG3(基準位置)を一致させる。
工程2:対象物ガイドG3(基準位置)を、所定の距離(Z方向にnピクセル)移動する。
なお、工程2は、部品W3の部品W4に対するネジ締め動作の準備動作である。
Then, the teaching data generation unit 43 receives settings of each process of the robot 2 that realizes the second work example from the user via the input unit 40. The teaching data generation unit 43 receives a teaching including a designation of a guide and a command for moving the guide to a target position, for example, as described below, and adds it to the teaching data of the teaching data storage unit 47 as a process number 471 and a teaching content 472. To do.
Step 1: Match the object guide G3 (reference position) with the object guide G4 (reference position) at a predetermined offset distance (m pixels from the reference position in the Z direction).
Step 2: Move the object guide G3 (reference position) by a predetermined distance (n pixels in the Z direction).
Step 2 is a preparatory operation for the screw tightening operation for the component W4 of the component W3.

また、教示データ生成部43は、各工程の教示内容472に、当該教示内容で指定されているガイド(対象物ガイドG3、対象物ガイドG4)のガイドデータを設定する。   In addition, the teaching data generation unit 43 sets the guide data of the guides (target object guide G3, target object guide G4) specified by the teaching contents in the teaching contents 472 of each step.

それから、教示データ送信部44は、生成された教示データを、ロボット2に送信する。   Then, the teaching data transmission unit 44 transmits the generated teaching data to the robot 2.

図14は、第二の作業例における視覚サーボ処理の一例を示すフロー図である。図15(第二の作業例における視覚サーボの経過を視覚的に説明する図(その1))、及び図16(第二の作業例における視覚サーボの経過を視覚的に説明する図(その2))を参照しながら説明する。なお、説明を分かり易くするため、図15及び図16では、ロボット2のハンド22等は省略している。   FIG. 14 is a flowchart showing an example of visual servo processing in the second work example. FIG. 15 (a diagram for visually explaining the progress of visual servo in the second work example (part 1)) and FIG. 16 (a diagram for visually explaining the progress of visual servo in the second work example (part 2) )) To explain. For easy understanding, the hand 22 and the like of the robot 2 are omitted in FIGS. 15 and 16.

教示装置4から送信された教示データは、教示データ受信部30により受信され、教示データ格納部35に格納されているものとする。視覚サーボ制御部31は、教示データの各工程の教示内容に基づいて、ロボット2の動作を制御する。なお、ステップS400〜S470は、上述の「工程1」に対応する。また、ステップS480は、上述の「工程2」に対応する。   It is assumed that the teaching data transmitted from the teaching device 4 is received by the teaching data receiving unit 30 and stored in the teaching data storage unit 35. The visual servo control unit 31 controls the operation of the robot 2 based on the teaching content of each process of the teaching data. Steps S400 to S470 correspond to the above-mentioned “Step 1”. Step S480 corresponds to the above-mentioned “Step 2”.

まず、画像取得部34は、撮像装置5を制御して撮像を行わせ、撮像画像を取得する(ステップS400)。   First, the image acquisition unit 34 controls the imaging device 5 to perform imaging and acquires a captured image (step S400).

それから、視覚サーボ制御部31は、部品W4の特徴を抽出する(ステップS410)。具体的には、特徴抽出部32は、工程1の教示データに含まれるガイドデータから、部品W4の特徴位置を取得する。また、特徴抽出部32は、ステップS400で取得された撮像画像に対して、取得した特徴位置から特定される画像処理アルゴリズムを実行し、特徴を抽出する。また、特徴抽出部32は、抽出した特徴の中から、取得した部品W4の特徴位置と合致する特徴位置を特定する。このようにして、撮像画像上に、部品W4の特徴位置F4が抽出される(図15(A))。   Then, the visual servo control unit 31 extracts the feature of the part W4 (step S410). Specifically, the feature extraction unit 32 acquires the feature position of the component W4 from the guide data included in the teaching data in step 1. In addition, the feature extraction unit 32 executes an image processing algorithm specified from the acquired feature position on the captured image acquired in step S400, and extracts the feature. In addition, the feature extraction unit 32 specifies a feature position that matches the acquired feature position of the component W4 from the extracted features. In this way, the feature position F4 of the component W4 is extracted on the captured image (FIG. 15A).

それから、視覚サーボ制御部31は、部品W4に対応するガイドG4を生成する(ステップS420)。具体的には、ガイド生成部33は、工程1の教示データに含まれるガイドデータから、部品W4のガイド位置(特徴位置に対する相対位置を示す。)を取得する。また、ガイド生成部33は、ステップS410で抽出及び特定された部品W4の特徴位置F4を基準に、取得したガイド位置が示す位置に、対象物ガイドG4を設定する。このようにして、撮像画像上に、特徴位置F4を基準として、対象物ガイドG4が設定される(図15(A))。   Then, the visual servo control unit 31 generates a guide G4 corresponding to the component W4 (step S420). Specifically, the guide generation unit 33 acquires the guide position (indicating a relative position with respect to the feature position) of the component W4 from the guide data included in the teaching data in step 1. In addition, the guide generation unit 33 sets the object guide G4 at the position indicated by the acquired guide position with reference to the characteristic position F4 of the component W4 extracted and specified in step S410. In this way, the object guide G4 is set on the captured image with the feature position F4 as a reference (FIG. 15A).

それから、視覚サーボ制御部31は、部品W3の特徴を抽出する(ステップS430)。具体的には、特徴抽出部32は、工程1の教示データに含まれるガイドデータから、部品W3の特徴位置を取得する。また、特徴抽出部32は、ステップS400で取得された撮像画像に対して、取得した特徴位置から特定される画像処理アルゴリズムを実行し、特徴を抽出する。また、特徴抽出部32は、抽出した特徴の中から、取得した部品W3の特徴位置と合致する特徴位置を特定する。このようにして、撮像画像上に、部品W3の特徴位置F3が抽出される(図15(B))。   Then, the visual servo control unit 31 extracts the feature of the part W3 (step S430). Specifically, the feature extraction unit 32 acquires the feature position of the part W3 from the guide data included in the teaching data in step 1. In addition, the feature extraction unit 32 executes an image processing algorithm specified from the acquired feature position on the captured image acquired in step S400, and extracts the feature. In addition, the feature extraction unit 32 specifies a feature position that matches the acquired feature position of the component W3 from the extracted features. In this way, the feature position F3 of the component W3 is extracted on the captured image (FIG. 15B).

それから、視覚サーボ制御部31は、部品W3に対応するガイドG3を生成する(ステップS440)。具体的には、ガイド生成部33は、工程1の教示データに含まれるガイドデータから、部品W3のガイド位置(特徴位置に対する相対位置を示す。)を取得する。また、ガイド生成部33は、ステップS430で抽出及び特定された部品W3の特徴位置F3を基準に、取得したガイド位置が示す位置に、対象物ガイドG3を設定する。このようにして、撮像画像上に、特徴位置F3を基準として、対象物ガイドG3が設定される(図15(B))。   Then, the visual servo control unit 31 generates a guide G3 corresponding to the part W3 (step S440). Specifically, the guide generation unit 33 acquires the guide position (indicating a relative position with respect to the feature position) of the component W3 from the guide data included in the teaching data in step 1. In addition, the guide generation unit 33 sets the object guide G3 at the position indicated by the acquired guide position with reference to the characteristic position F3 of the component W3 extracted and specified in step S430. In this way, the object guide G3 is set on the captured image with the feature position F3 as a reference (FIG. 15B).

それから、視覚サーボ制御部31は、視覚サーボを実行する(ステップS460)。具体的には、視覚サーボ制御部31は、撮像画像から、生成されたガイド以外の画像情報を削除する。それから、視覚サーボ制御部31は、工程1の教示データに基づいて、対象物ガイドG4(基準位置)に、所定のオフセット距離(基準位置からZ方向にmピクセル)で、対象物ガイドG3(基準位置)を一致させるように、視覚サーボを実行する(図15(B))。なお、視覚サーボ制御部31は、対象物ガイドG3が、対象物ガイドG4を基準とするオフセット位置E4から所定距離内に位置しない場合には、制御命令を生成してロボットのアームを動作させる(エンドポイントを移動させる)。一方、視覚サーボ制御部31は、対象物ガイドG3が、オフセット位置E4から所定距離内に位置する場合には、制御命令を生成せずに、工程1の視覚サーボは収束していると判断する(図16(A))。   Then, the visual servo control unit 31 executes visual servo (step S460). Specifically, the visual servo control unit 31 deletes image information other than the generated guide from the captured image. Then, based on the teaching data in step 1, the visual servo control unit 31 moves the object guide G3 (reference position) to the object guide G4 (reference position) with a predetermined offset distance (m pixels in the Z direction from the reference position). The visual servo is executed so as to match the position) (FIG. 15B). When the object guide G3 is not located within a predetermined distance from the offset position E4 with reference to the object guide G4, the visual servo control unit 31 generates a control command to operate the robot arm ( Move the endpoint). On the other hand, when the object guide G3 is located within a predetermined distance from the offset position E4, the visual servo control unit 31 determines that the visual servo in step 1 has converged without generating a control command. (FIG. 16 (A)).

それから、視覚サーボ制御部31は、視覚サーボが収束しているか否かを判定する(ステップS470)。具体的には、視覚サーボ制御部31は、ステップS460において収束していると判断した場合には(ステップS470:Y)、処理をステップS480に進める。一方、ステップS460において収束していないと判断した場合には(ステップS470:N)、処理をステップS400に戻す。   Then, the visual servo control unit 31 determines whether or not the visual servo has converged (step S470). Specifically, when it is determined that the visual servo control unit 31 has converged in step S460 (step S470: Y), the process proceeds to step S480. On the other hand, if it is determined in step S460 that convergence has not occurred (step S470: N), the process returns to step S400.

ステップS460の視覚サーボが収束した場合(ステップS470:Y)、視覚サーボ制御部31は、ロボットの所定の動作を行う(ステップS480)。具体的には、視覚サーボ制御部31は、工程2の教示データに基づいて、対象物ガイドG3(基準位置)を、所定の距離(Z方向にnピクセル)移動するように、ロボットのアームを動作させる(図16(B))。そして、視覚サーボ制御部31は、図14に示すフローチャートの処理を終了する。なお、図14に示すフローチャートの終了後、制御部3は、例えば、位置制御、インピーダンス制御などによりロボット2を制御するとともに、ハンド22を回転させるか、またはドライバーW3aの押し付け動作によってネジ締めを行うことができる場合にはハンド22を押し付け、ネジW3bを部品W4に取り付ける。   When the visual servo in step S460 converges (step S470: Y), the visual servo control unit 31 performs a predetermined operation of the robot (step S480). Specifically, the visual servo control unit 31 moves the arm of the robot so as to move the object guide G3 (reference position) by a predetermined distance (n pixels in the Z direction) based on the teaching data in step 2. Operate (FIG. 16B). Then, the visual servo control unit 31 ends the process of the flowchart shown in FIG. After the end of the flowchart shown in FIG. 14, the control unit 3 controls the robot 2 by, for example, position control, impedance control, etc., and rotates the hand 22 or tightens the screw by the pressing operation of the driver W3a. If possible, the hand 22 is pressed and the screw W3b is attached to the component W4.

以上のようにして、撮像画像に対して複数の対象物ガイドが生成され、これらのガイドを一致させるような視覚サーボが実行される。   As described above, a plurality of object guides are generated for the captured image, and visual servoing is performed to match these guides.

本実施形態によれば、撮像画像(現在画像)に対してガイドが二つ生成され、これらのガイドを用いて視覚サーボ制御が実行される。目標画像と現在画像の二つの画像の差異を評価する必要がないため、明るさなどの作業環境が変化する場合であっても、精度が高く安定した視覚サーボを実現することができる。   According to the present embodiment, two guides are generated for the captured image (current image), and visual servo control is executed using these guides. Since there is no need to evaluate the difference between the target image and the current image, it is possible to realize a highly accurate and stable visual servo even when the work environment such as brightness changes.

また、本実施形態によれば、特徴を抽出するための画像処理アルゴリズムが、作業環境に応じてユーザーにより設定される。また、当該設定された画像処理アルゴリズムによりガイドが設定される。これにより、目標画像と現在画像の差異を精度よく評価できないような作業環境であっても、ガイドを精度よく生成できるため、作業環境に影響されない安定した視覚サーボを実現できる。   Further, according to the present embodiment, an image processing algorithm for extracting features is set by the user according to the work environment. Further, the guide is set by the set image processing algorithm. As a result, even in a work environment where the difference between the target image and the current image cannot be evaluated with high accuracy, the guide can be generated with high accuracy, so that stable visual servoing that is not affected by the work environment can be realized.

また、本実施形態によれば、撮像画像(現在画像)に対して目標位置であるガイドが生成されるため、予め目標画像を用意しておく必要がない。そのため、より簡単に精度が高い安定した視覚サーボを実現することができる。   In addition, according to the present embodiment, since a guide that is a target position is generated for a captured image (current image), it is not necessary to prepare a target image in advance. Therefore, a stable visual servo with high accuracy can be realized more easily.

また、本実施形態では、固定ガイドは、撮像範囲に対して所定位置に生成されるため、撮像装置の配置や撮像方向の変化に影響されない。また、撮像画像から特徴を抽出するような画像処理が必要なくなるため、処理負荷が軽減される。さらに、撮像装置の配置及び撮像方向に対して、ロボットの機械的な精度が高い姿勢(例えば、自重によるアームのたわみの影響が小さい)を取り得る空間的範囲が分かる場合には、その範囲内に目標位置であるガイド(固定ガイド又は対象物ガイド)を設定することで、簡単に精度が高い安定したロボット動作を実現できる。   Further, in the present embodiment, the fixed guide is generated at a predetermined position with respect to the imaging range, and thus is not affected by the arrangement of the imaging device or the change in the imaging direction. Further, the processing load is reduced because image processing for extracting features from the captured image is not necessary. Furthermore, if a spatial range in which the posture of the robot with high mechanical accuracy (for example, the influence of deflection of the arm due to its own weight is small) can be taken with respect to the arrangement and imaging direction of the imaging device, By setting a guide (fixed guide or object guide) that is a target position, a stable robot operation with high accuracy can be realized easily.

<本発明の実施形態の変形例>
次に、上記の実施形態の視覚サーボ処理の変形例について説明する。なお、変形例の記載にあたっては、上記の実施形態と同一の構成、処理については同一の符号を付し、その説明を省略する。
<Modification of Embodiment of the Present Invention>
Next, a modified example of the visual servo process of the above embodiment will be described. In the description of the modification, the same configurations and processes as those in the above embodiment are denoted by the same reference numerals, and the description thereof is omitted.

本変形例では、一つの作業対象物について、特徴位置を抽出する画像処理アルゴリズムを複数設定可能とする。また、それぞれの画像処理アルゴリズムについて、ガイド位置を設定可能とする。また、ある画像処理アルゴリズムを用いた特徴位置の抽出及び特定に失敗した場合に、他の画像処理アルゴリズムを用いる。   In this modification, it is possible to set a plurality of image processing algorithms for extracting feature positions for one work object. In addition, the guide position can be set for each image processing algorithm. In addition, when extraction and identification of a feature position using a certain image processing algorithm fails, another image processing algorithm is used.

以下、図17〜図21を参照して、ロボット2が行う第二の作業例に基づいて説明する。なお、モデルデータ格納部45には、部品W4のモデルデータと、ドライバーW3aにネジW3bが固定された状態(以下、「部品W3」と呼ぶ。)のモデルデータが予め格納されている。また、部品W3およびそのモデルデータには、特徴抽出に使用されるマーカーが付されているものとする。   Hereinafter, with reference to FIGS. 17 to 21, a description will be given based on a second working example performed by the robot 2. The model data storage unit 45 stores in advance model data of the part W4 and model data in a state where the screw W3b is fixed to the driver W3a (hereinafter referred to as “part W3”). In addition, it is assumed that a marker used for feature extraction is attached to the part W3 and its model data.

ガイド設定部42は、ユーザーにより選択されたモデルデータに対して、使用する複数の画像処理アルゴリズムの選択及び設定を、ユーザーから受け付ける。また、ガイド設定部42は、それぞれの画像処理アルゴリズムについて、モデルデータとともに抽出した特徴位置を示す画像を、表示部41に表示させる。また、ガイド設定部42は、それぞれの画像処理アルゴリズムについて、表示されている画像に対して、ガイド位置の指定を、ユーザーから入力部40を介して受け付ける。   The guide setting unit 42 receives, from the user, selection and setting of a plurality of image processing algorithms to be used for the model data selected by the user. Further, the guide setting unit 42 causes the display unit 41 to display an image indicating the feature position extracted together with the model data for each image processing algorithm. Further, the guide setting unit 42 receives a guide position designation for the displayed image for each image processing algorithm from the user via the input unit 40.

例えば、図17(A1)では、ガイド設定部42は、部品W3のモデルデータに対して、予めモデルデータ格納部45に格納されているネジW3bのモデルデータにより、マッチングを行い、ネジW3bの特徴位置F3a(破線で示す。)を抽出する。また、ガイド設定部42は、特徴位置F3aに対応するガイドG3a(X印で示す。)の指定をユーザーから受け付ける。本図では、部品W3のネジの先端部分に対応させてガイドG3aが設定されている。   For example, in FIG. 17A1, the guide setting unit 42 matches the model data of the part W3 with the model data of the screw W3b stored in advance in the model data storage unit 45, and the feature of the screw W3b. A position F3a (indicated by a broken line) is extracted. In addition, the guide setting unit 42 receives designation of a guide G3a (indicated by an X) corresponding to the feature position F3a from the user. In this figure, a guide G3a is set corresponding to the tip of the screw of the component W3.

また、例えば、図17(A2)では、ガイド設定部42は、部品W3のモデルデータに対して、エッジ検出などの画像処理を行い、特徴位置F3b(破線で示す。)を抽出する。また、ガイド設定部42は、特徴位置F3bに対応するガイドG3b(X印で示す。)の指定をユーザーから受け付ける。本図では、部品W3のネジの先端部分に対応させてガイドG3bが設定されている。   For example, in FIG. 17A2, the guide setting unit 42 performs image processing such as edge detection on the model data of the component W3, and extracts a feature position F3b (shown by a broken line). In addition, the guide setting unit 42 receives a designation of a guide G3b (indicated by an X) corresponding to the feature position F3b from the user. In this figure, a guide G3b is set corresponding to the tip of the screw of the component W3.

また、例えば、図17(A3)では、ガイド設定部42は、部品W3のモデルデータに対して、マーカーを検出する画像処理(例えば、マーカーの色を検出する)を行い、特徴位置F3c(破線で示す。)を抽出する。また、ガイド設定部42は、特徴位置F3cに対応するガイドG3c(X印で示す。)の指定をユーザーから受け付ける。本図では、ガイドG3cは、マーカー上に設定されている。   Further, for example, in FIG. 17A3, the guide setting unit 42 performs image processing (for example, detecting the color of the marker) to detect the marker on the model data of the part W3, and the feature position F3c (broken line) Is extracted). In addition, the guide setting unit 42 receives a designation of a guide G3c (indicated by an X) corresponding to the feature position F3c from the user. In this figure, the guide G3c is set on the marker.

例えば、図18(A1)では、ガイド設定部42は、部品W4のモデルデータに対して、予めモデルデータ格納部45に格納されているネジ穴のモデルデータにより、マッチングを行い、ネジ穴の特徴位置F4a(破線で示す。)として抽出する。また、ガイド設定部42は、特徴位置F4aに対してガイドG4a(X印で示す。)の指定をユーザーから受け付ける。本図では、部品W4のネジ穴に対応させてガイドG4aが設定されている。   For example, in FIG. 18A1, the guide setting unit 42 matches the model data of the part W4 with the model data of the screw holes stored in advance in the model data storage unit 45, and the feature of the screw holes. Extracted as a position F4a (indicated by a broken line). In addition, the guide setting unit 42 receives designation of a guide G4a (indicated by an X) from the user for the feature position F4a. In this figure, a guide G4a is set corresponding to the screw hole of the component W4.

また、例えば、図18(A2)では、ガイド設定部42は、部品W4のモデルデータに対して、エッジ検出などの画像処理を行い、特徴位置F4b(破線で示す。)を抽出する。また、ガイド設定部42は、特徴位置F4bに対してガイドG4b(X印で示す。)の指定をユーザーから受け付ける。本図では、部品W4のネジ穴に対応させてガイドG4bが設定されている。   For example, in FIG. 18A2, the guide setting unit 42 performs image processing such as edge detection on the model data of the component W4, and extracts a feature position F4b (indicated by a broken line). Further, the guide setting unit 42 receives designation of a guide G4b (indicated by an X) from the user for the feature position F4b. In this figure, a guide G4b is set corresponding to the screw hole of the component W4.

また、例えば、図18(A3)では、ガイド設定部42は、部品W4のモデルデータに対して、図18(A2)の場合とは異なるエッジ検出などの画像処理を行い、特徴位置F4c(破線で示す。)を抽出する。また、ガイド設定部42は、特徴位置F4cに対してガイドG4c(X印で示す。)の指定をユーザーから受け付ける。本図では、ガイドG4cは、部品W4のネジ穴から、一定距離離れた位置に設定されている。   Also, for example, in FIG. 18 (A3), the guide setting unit 42 performs image processing such as edge detection different from that in FIG. 18 (A2) on the model data of the component W4, and the feature position F4c (broken line) Is extracted). In addition, the guide setting unit 42 receives designation of a guide G4c (indicated by an X) from the user for the feature position F4c. In this figure, the guide G4c is set at a position away from the screw hole of the component W4 by a certain distance.

ガイド設定部42は、モデルデータに対するガイド位置(基準位置、方向成分)が指定されると、指定されたガイド位置の基準位置を、抽出された特徴位置に対する相対位置を示す情報に変換する。そして、ガイド設定部42は、当該対象物ガイドに対して割り当てたID又はユーザーから指定されたIDと、ガイド位置(変換された基準位置、方向成分)と、抽出された特徴位置(特徴位置を特定する情報、当該特徴位置を抽出するために使用される画像処理アルゴリズムに関する情報)とを関連付けたレコードを、ガイドデータ格納部46の対象物ガイドデータに追加する。このようにして、一つの対象物について、画像処理アルゴリズムが異なる複数の対象物ガイドが設定される。   When the guide position (reference position, direction component) with respect to the model data is designated, the guide setting unit 42 converts the reference position of the designated guide position into information indicating the relative position with respect to the extracted feature position. Then, the guide setting unit 42 assigns the ID assigned to the object guide or the ID specified by the user, the guide position (converted reference position, direction component), and the extracted feature position (feature position). A record associating information to be identified and information relating to an image processing algorithm used for extracting the feature position) is added to the object guide data in the guide data storage unit 46. In this way, a plurality of object guides having different image processing algorithms are set for one object.

また、ガイド設定部42は、各対象物に設定される複数種類の対象物ガイドについて、使用する優先順位の指定をユーザーから受け付け、ガイドデータとともに格納する。例えば、部品W3のガイドについては、図17(A1)、(A2)、(A3)の順で優先順位が指定される。また、例えば、部品W4のガイドについては、図18(A1)、(A2)、(A3)の順で優先順位が指定される。   In addition, the guide setting unit 42 receives designation of priority to be used from a user for a plurality of types of object guides set for each object, and stores them together with guide data. For example, for the guide of the part W3, the priority order is specified in the order of FIGS. 17A1, 17A2, and A3. For example, for the guide of the component W4, the priority order is designated in the order of FIGS. 18A1, 18A2, and A3.

教示データ生成部43は、第二の作業例を実現するロボット2の各工程の設定を、ユーザーから入力部40を介して受け付ける。教示データ生成部43は、上述した第二作業例の工程と同様の教示を受け付け、工程番号471と教示内容472として、教示データ格納部47の教示データに追加する。   The teaching data generation unit 43 receives settings of each process of the robot 2 that realizes the second work example from the user via the input unit 40. The teaching data generation unit 43 receives the same teaching as the process of the second working example described above, and adds it to the teaching data of the teaching data storage unit 47 as a process number 471 and a teaching content 472.

また、教示データ生成部43は、各工程の教示内容472に、当該教示内容で指定されているガイド(対象物ガイドG3a、G3b、G3c、対象物ガイドG4a、G4b、G4c)のガイドデータを設定する。また、教示データ生成部43は、各工程の教示内容に472に、各対象物ガイドの優先順位を設定する。   In addition, the teaching data generation unit 43 sets the guide data of the guides (object guides G3a, G3b, G3c, object guides G4a, G4b, G4c) specified by the teaching contents in the teaching contents 472 of each step. To do. Further, the teaching data generation unit 43 sets the priority order of each object guide to 472 in the teaching contents of each process.

また、教示データ生成部43は、複数のガイドを用いた視覚サーボの目標条件の設定を、ユーザーから入力部40を介して受け付け、教示データに設定する。目標条件は、例えば、対象物ガイドG3a、G3b、及びG3cのいずれかと、対象物ガイドG4a、G4b、及びG4cのいずれかの組み合わせである。組み合わせを複数設定できるようにしてもよい。   In addition, the teaching data generation unit 43 receives setting of visual servo target conditions using a plurality of guides from the user via the input unit 40, and sets the setting to teaching data. The target condition is, for example, any one of the object guides G3a, G3b, and G3c and any combination of the object guides G4a, G4b, and G4c. A plurality of combinations may be set.

それから、教示データ送信部44は、生成された教示データを、ロボット2に送信する。   Then, the teaching data transmission unit 44 transmits the generated teaching data to the robot 2.

図19は、第二の作業例における視覚サーボ処理の変形例を示すフロー図である。図20(第二の作業例における視覚サーボの変形例の経過を視覚的に説明する図(その1))、及び図21(第二の作業例における視覚サーボの変形例の経過を視覚的に説明する図(その2))を参照しながら説明する。なお、説明を分かり易くするため、図20及び図21では、ロボット2のハンド22等は省略している。   FIG. 19 is a flowchart showing a modification of the visual servo process in the second work example. FIG. 20 (a diagram for visually explaining the progress of the visual servo modification in the second work example (part 1)) and FIG. 21 (the visual progress of the visual servo modification in the second work example) This will be described with reference to the diagram (part 2) to be described. For ease of explanation, the hand 22 and the like of the robot 2 are omitted in FIGS.

なお、ステップS500〜S630は、上述の「工程1」に対応する。また、ステップS640は、上述の「工程2」に対応する。   Steps S500 to S630 correspond to the above-mentioned “Step 1”. Step S640 corresponds to the above-mentioned “Step 2”.

まず、画像取得部34は、撮像装置5を制御して撮像を行わせ、撮像画像を取得する(ステップS500)。   First, the image acquisition unit 34 controls the imaging device 5 to perform imaging and acquires a captured image (step S500).

それから、視覚サーボ制御部31は、部品W4から抽出する特徴を選択する(ステップS510)。具体的には、特徴抽出部32は、工程1の教示データに含まれる部品W4の複数のガイドデータから、指定された優先順位に従って、未選択のガイドデータを選択する。なお、優先順位は、例えば、図18(A1)、(A2)、(A3)の順で指定されている。   Then, the visual servo control unit 31 selects a feature to be extracted from the part W4 (step S510). Specifically, the feature extraction unit 32 selects unselected guide data from a plurality of guide data of the part W4 included in the teaching data in step 1 in accordance with the designated priority order. For example, the priority order is specified in the order of (A1), (A2), and (A3) in FIG.

それから、視覚サーボ制御部31は、部品W4の特徴を抽出する(ステップS520)。具体的には、特徴抽出部32は、ステップS510で選択した部品W4のガイドデータから、部品W4の特徴位置を取得する。また、特徴抽出部32は、ステップS500で取得された撮像画像に対して、取得した特徴位置で指定されている画像処理アルゴリズムを実行し、特徴を抽出する。また、特徴抽出部32は、抽出した特徴の中から、取得した部品W4の特徴位置と合致する特徴位置を特定する。   Then, the visual servo control unit 31 extracts the feature of the component W4 (step S520). Specifically, the feature extraction unit 32 acquires the feature position of the component W4 from the guide data of the component W4 selected in step S510. In addition, the feature extraction unit 32 executes the image processing algorithm specified by the acquired feature position on the captured image acquired in step S500, and extracts the feature. In addition, the feature extraction unit 32 specifies a feature position that matches the acquired feature position of the component W4 from the extracted features.

ここで、ステップS520の処理では、照明の明るさや、部品W3及び部品W4の位置関係などの作業環境によって、部品W4の特徴位置が特定できないことがある。例えば、図20(A)に示すように、部品W4のネジ穴が部品W3により隠れている場合、上述した図18(A1)の特徴位置F4aや、図18(A2)の特徴位置F4bを抽出及び特定することができない。   Here, in the process of step S520, the feature position of the part W4 may not be specified depending on the work environment such as the brightness of illumination and the positional relationship between the part W3 and the part W4. For example, as shown in FIG. 20A, when the screw hole of the component W4 is hidden by the component W3, the feature position F4a in FIG. 18A1 and the feature position F4b in FIG. 18A2 are extracted. And cannot be specified.

それから、視覚サーボ制御部31は、対象物W4の特徴抽出に成功したか否かを判定する(ステップS530)。すなわち、特徴抽出部32は、ステップS520の結果に基づいて、ステップS510で選択した部品W4の特徴位置の抽出及び特定に成功したか否かを判定する。   Then, the visual servo control unit 31 determines whether or not the feature extraction of the object W4 has been successful (step S530). That is, the feature extraction unit 32 determines whether the feature position of the part W4 selected in step S510 has been successfully extracted and specified based on the result of step S520.

部品W4の特徴位置の抽出に失敗した場合(ステップS530:N)、視覚サーボ制御部31は、他に部品W4の特徴があるか否かを判定する(ステップS540)。具体的には、特徴抽出部32は、工程1の教示データに含まれる部品W4の複数のガイドデータに、未選択のガイドデータがあるか否かを判定する。   If extraction of the feature position of the part W4 fails (step S530: N), the visual servo control unit 31 determines whether there is another feature of the part W4 (step S540). Specifically, the feature extraction unit 32 determines whether or not there is unselected guide data in the plurality of guide data of the part W4 included in the teaching data in step 1.

未選択の特徴がない場合(ステップS540:N)、視覚サーボ制御部31は、図19に示すフローチャートの処理を終了する。未選択の特徴がある場合(ステップS540:Y)、視覚サーボ制御部31は、処理をステップS510に戻す。   If there is no unselected feature (step S540: N), the visual servo control unit 31 ends the process of the flowchart shown in FIG. If there is an unselected feature (step S540: Y), the visual servo control unit 31 returns the process to step S510.

一方、部品W4の特徴位置の抽出に成功した場合(ステップS530:Y)、視覚サーボ制御部31は、部品W4に対応するガイドG4を生成する(ステップS550)。具体的には、ガイド生成部33は、ステップS510で最後に選択した部品W4のガイドデータから、部品W4のガイド位置(特徴位置に対する相対位置を示す。)を取得する。また、ガイド生成部33は、ステップS520で最後に抽出及び特定された部品W4の特徴位置F4を基準に、取得したガイド位置が示す位置に、対象物ガイドG4を設定する。このようにして、撮像画像上に、選択された特徴位置F4を基準として、対象物ガイドG4が設定される。   On the other hand, when the feature position of the part W4 is successfully extracted (step S530: Y), the visual servo control unit 31 generates a guide G4 corresponding to the part W4 (step S550). Specifically, the guide generation unit 33 acquires the guide position of the component W4 (indicating a relative position with respect to the feature position) from the guide data of the component W4 last selected in step S510. Further, the guide generation unit 33 sets the object guide G4 at the position indicated by the acquired guide position with reference to the characteristic position F4 of the component W4 extracted and specified last in step S520. In this way, the object guide G4 is set on the captured image with the selected feature position F4 as a reference.

例えば、図20(B)では、図18(A1)の特徴位置F4aや、図18(A2)の特徴位置F4bの代わりに、図18(A3)の特徴位置F4cが特定され、当該特徴位置に対応するガイドG4cが設定された場合を示している。   For example, in FIG. 20B, the feature position F4c in FIG. 18A3 is specified instead of the feature position F4a in FIG. 18A1 and the feature position F4b in FIG. The case where the corresponding guide G4c is set is shown.

それから、視覚サーボ制御部31は、部品W3から抽出する特徴を決定する(ステップS560)。具体的には、特徴抽出部32は、工程1の教示データに含まれる部品W3の複数のガイドデータから、指定された優先順位に従って、未選択のガイドデータを決定する。なお、優先順位は、例えば、図17(A1)、(A2)、(A3)の順で指定されている。   Then, the visual servo control unit 31 determines a feature to be extracted from the part W3 (step S560). Specifically, the feature extraction unit 32 determines unselected guide data from a plurality of guide data of the part W3 included in the teaching data of step 1 in accordance with the designated priority order. For example, the priority order is specified in the order of (A1), (A2), and (A3) in FIG.

それから、視覚サーボ制御部31は、部品W3の特徴を抽出する(ステップS570)。具体的には、特徴抽出部32は、ステップS560で選択した部品W3のガイドデータから、部品W3の特徴位置を取得する。また、特徴抽出部32は、ステップS500で取得された撮像画像に対して、取得した特徴位置で指定されている画像処理アルゴリズムを実行し、特徴を抽出する。また、特徴抽出部32は、抽出した特徴の中から、取得した部品W3の特徴位置と合致する特徴位置を特定する。   Then, the visual servo control unit 31 extracts the feature of the part W3 (step S570). Specifically, the feature extraction unit 32 acquires the feature position of the component W3 from the guide data of the component W3 selected in step S560. In addition, the feature extraction unit 32 executes the image processing algorithm specified by the acquired feature position on the captured image acquired in step S500, and extracts the feature. In addition, the feature extraction unit 32 specifies a feature position that matches the acquired feature position of the component W3 from the extracted features.

ここで、ステップS570の処理では、照明の明るさや、部品W3及び部品W4の位置関係などの作業環境によって、部品W3の特徴位置が特定できないことがある。   Here, in the process of step S570, the characteristic position of the part W3 may not be specified depending on the work environment such as the brightness of illumination and the positional relationship between the part W3 and the part W4.

それから、視覚サーボ制御部31は、対象物W3の特徴抽出に成功したか否かを判定する(ステップS580)。すなわち、特徴抽出部32は、ステップS570の結果に基づいて、ステップS560で選択した部品W3の特徴位置の抽出及び特定に成功したか否かを判定する。   Then, the visual servo control unit 31 determines whether or not the feature extraction of the object W3 has succeeded (step S580). That is, the feature extraction unit 32 determines whether or not the feature position of the part W3 selected in step S560 has been successfully extracted and specified based on the result of step S570.

部品W3の特徴位置の抽出に失敗した場合(ステップS580:N)、視覚サーボ制御部31は、他に部品W3の特徴があるか否かを判定する(ステップS590)。具体的には、特徴抽出部32は、工程1の教示データに含まれる部品W3の複数のガイドデータに、未選択のガイドデータがあるか否かを判定する。   If extraction of the feature position of the part W3 fails (step S580: N), the visual servo control unit 31 determines whether there is another feature of the part W3 (step S590). Specifically, the feature extraction unit 32 determines whether or not there is unselected guide data in the plurality of guide data of the part W3 included in the teaching data in step 1.

未選択の特徴がない場合(ステップS590:N)、視覚サーボ制御部31は、図19に示すフローチャートの処理を終了する。未選択の特徴がある場合(ステップS590:Y)、視覚サーボ制御部31は、処理をステップS560に戻す。   When there is no unselected feature (step S590: N), the visual servo control unit 31 ends the process of the flowchart shown in FIG. If there is an unselected feature (step S590: Y), the visual servo control unit 31 returns the process to step S560.

一方、部品W3の特徴位置の抽出に成功した場合(ステップS580:Y)、視覚サーボ制御部31は、部品W3に対応するガイドG3を生成する(ステップS600)。具体的には、ガイド生成部33は、ステップS560で最後に選択した部品W3のガイドデータから、部品W3のガイド位置(特徴位置に対する相対位置を示す。)を取得する。また、ガイド生成部33は、ステップS570で最後に抽出及び特定された部品W3の特徴位置F3を基準に、取得したガイド位置が示す位置に、対象物ガイドG3を設定する。このようにして、撮像画像上に、選択された特徴位置F3を基準として、対象物ガイドG3が設定される。   On the other hand, if the feature position of the part W3 is successfully extracted (step S580: Y), the visual servo control unit 31 generates a guide G3 corresponding to the part W3 (step S600). Specifically, the guide generation unit 33 acquires the guide position (indicating a relative position with respect to the feature position) of the component W3 from the guide data of the component W3 last selected in step S560. In addition, the guide generation unit 33 sets the object guide G3 at the position indicated by the acquired guide position with reference to the feature position F3 of the part W3 extracted and specified last in step S570. In this way, the object guide G3 is set on the captured image with the selected feature position F3 as a reference.

例えば、図21(A)では、図17(A1)の特徴位置F3aや、図17(A2)の特徴位置F3bの代わりに、図17(A3)の特徴位置F3cが特定され、当該特徴位置に対応するガイドG3cが設定された場合を示している。   For example, in FIG. 21A, the feature position F3c in FIG. 17A3 is specified in place of the feature position F3a in FIG. 17A1 and the feature position F3b in FIG. The case where the corresponding guide G3c is set is shown.

それから、視覚サーボ制御部31は、視覚サーボを実行する(ステップS610)。具体的には、視覚サーボ制御部31は、撮像画像から、生成されたガイド以外の画像情報を削除する。それから、視覚サーボ制御部31は、工程1の教示データに基づいて、対象物ガイドG4(基準位置)に、所定のオフセット距離(基準位置からZ方向にmピクセル)で、対象物ガイドG3(基準位置)を一致させるように、視覚サーボを実行する。なお、対象物ガイドG4は、ステップS550で最後に生成されたものであり、対象物ガイドG3は、ステップS600で最後に生成されたものである。視覚サーボ制御部31は、対象物ガイドG3が、対象物ガイドG4を基準とするオフセット位置から所定距離内に位置しない場合には、制御命令を生成してロボットのアームを動作させる(エンドポイントを移動させる)。一方、視覚サーボ制御部31は、対象物ガイドG3が、オフセット位置から所定距離内に位置する場合には、制御命令を生成せずに、工程1の視覚サーボは収束していると判断する。   Then, the visual servo control unit 31 executes visual servo (step S610). Specifically, the visual servo control unit 31 deletes image information other than the generated guide from the captured image. Then, based on the teaching data in step 1, the visual servo control unit 31 moves the object guide G3 (reference position) to the object guide G4 (reference position) with a predetermined offset distance (m pixels in the Z direction from the reference position). The visual servo is executed so that the position) matches. Note that the object guide G4 is the last generated in step S550, and the object guide G3 is the last generated in step S600. When the object guide G3 is not located within a predetermined distance from the offset position with respect to the object guide G4, the visual servo control unit 31 generates a control command to operate the robot arm (the end point is set). Move). On the other hand, when the object guide G3 is located within a predetermined distance from the offset position, the visual servo control unit 31 determines that the visual servo in step 1 has converged without generating a control command.

例えば、図21(A)では、図18(A3)のガイドG4cからの所定のオフセット位置E4cに、図17(A3)のガイドG3cを一致させる場合を示している。また、図21(B)では、ガイドG3cがガイドG4cを基準とするオフセット位置E4cに収束した場合を示している。   For example, FIG. 21A shows a case where the guide G3c in FIG. 17A3 is made to coincide with a predetermined offset position E4c from the guide G4c in FIG. 18A3. FIG. 21B shows a case where the guide G3c converges to an offset position E4c with reference to the guide G4c.

それから、視覚サーボ制御部31は、視覚サーボが収束しているか否かを判定する(ステップS620)。具体的には、視覚サーボ制御部31は、ステップS610において収束していると判断した場合には(ステップS620:Y)、処理をステップS630に進める。一方、ステップS610において収束していないと判断した場合には(ステップS620:N)、処理をステップS500に戻す。   Then, the visual servo control unit 31 determines whether or not the visual servo has converged (step S620). Specifically, when it is determined that the visual servo control unit 31 has converged in step S610 (step S620: Y), the process proceeds to step S630. On the other hand, if it is determined in step S610 that it has not converged (step S620: N), the process returns to step S500.

ステップS610の視覚サーボが収束した場合(ステップS620:Y)、視覚サーボ制御部31は、視覚サーボが目標条件を満たしているか否かを判定する(ステップS630)。具体的には、視覚サーボ制御部31は、例えば、ステップS610で最後に使用したガイドG4とガイドG3の組み合わせが、教示データで指定されている対象物ガイドの組み合わせと同じであるか否かを判定する。使用した対象物ガイドの組み合わせが指定された対象物ガイドの組み合わせと異なる場合(ステップS630:N)、視覚サーボ制御部31は、処理をステップS500に戻す。   When the visual servo in step S610 has converged (step S620: Y), the visual servo control unit 31 determines whether or not the visual servo satisfies the target condition (step S630). Specifically, for example, the visual servo control unit 31 determines whether or not the combination of the guide G4 and the guide G3 used last in step S610 is the same as the combination of the object guides specified in the teaching data. judge. When the combination of used object guides is different from the specified combination of object guides (step S630: N), the visual servo control unit 31 returns the process to step S500.

使用した対象物ガイドの組み合わせが指定された対象物ガイドの組み合わせと同じである場合(ステップS630:Y)、視覚サーボ制御部31は、ロボットの所定の動作を行う(ステップS640)。具体的には、視覚サーボ制御部31は、工程2の教示データに基づいて、対象物ガイドG3(基準位置)を、所定の距離(Z方向にnピクセル)移動するように、ロボットのアームを動作させる(図16(B))。なお、対象物ガイドG3は、ステップS600で最後に生成されたものである。そして、視覚サーボ制御部31は、図19に示すフローチャートの処理を終了する。なお、図19に示すフローチャートの終了後、制御部3は、例えば、位置制御、インピーダンス制御などによりロボット2を制御するとともに、ハンド22を回転させるか、またはドライバーW3aの押し付け動作によってネジ締めを行うことができる場合にはハンド22を押し付け、ネジW3bを部品W4に取り付ける。   When the combination of the used object guides is the same as the specified object guide combination (step S630: Y), the visual servo control unit 31 performs a predetermined operation of the robot (step S640). Specifically, the visual servo control unit 31 moves the arm of the robot so as to move the object guide G3 (reference position) by a predetermined distance (n pixels in the Z direction) based on the teaching data in step 2. Operate (FIG. 16B). Note that the object guide G3 is generated last in step S600. Then, the visual servo control unit 31 ends the process of the flowchart shown in FIG. After the end of the flowchart shown in FIG. 19, the control unit 3 controls the robot 2 by, for example, position control, impedance control, etc., and rotates the hand 22 or tightens the screw by pressing the driver W3a. If possible, the hand 22 is pressed and the screw W3b is attached to the component W4.

以上のようにして、ガイドの設定に失敗した場合には、他のガイドが設定され、視覚サーボが実行される。   As described above, when the guide setting fails, another guide is set and the visual servo is executed.

上記の実施形態の変形例によれば、特徴を抽出するための画像処理アルゴリズムが、作業環境に応じてユーザーにより複数設定される。また、ある画像処理アルゴリズムによりガイドの設定に失敗しても、他の画像処理アルゴリズムによりガイドが設定される。これにより、作業環境が変化することによってガイドが生成できなくなることを防ぎ、視覚サーボを継続することができる。また、作業環境に影響されない安定した視覚サーボを実現できる。   According to the modification of the above embodiment, a plurality of image processing algorithms for extracting features are set by the user according to the work environment. Further, even if the guide setting fails due to an image processing algorithm, the guide is set according to another image processing algorithm. Thus, it is possible to prevent the guide from being generated due to a change in the work environment, and to continue the visual servoing. In addition, a stable visual servo that is not affected by the work environment can be realized.

なお、上記の実施形態の変形例では、部品W3と部品W4の両方にそれぞれ複数のガイドを用意しているが、一方の部品には一つのガイドを用意するようにしてもよい。また、上記の実施形態の変形例は、第二の作業例に限られず、第一の作業例についても同様に適用できる。すなわち、部品W1及び部品W2の少なくとも一方に対して複数のガイドを用意し、あるガイドデータに基づく特徴抽出に失敗した場合に他のガイドデータに基づく特徴抽出を行うようにすればよい。また、対象物ガイドG1と固定ガイドSG1に基づく視覚サーボの目標条件と、対象物ガイドG2と固定ガイドSG1に基づく視覚サーボの目標条件とをそれぞれ設定し、それぞれの視覚サーボの収束判定の直後に目標条件の判定を行うようにすればよい。   In the modification of the above embodiment, a plurality of guides are prepared for both the component W3 and the component W4. However, one guide may be prepared for one component. Moreover, the modification of said embodiment is not restricted to a 2nd operation example, It can apply similarly also to a 1st operation example. That is, a plurality of guides may be prepared for at least one of the parts W1 and W2, and when feature extraction based on certain guide data fails, feature extraction based on other guide data may be performed. In addition, a visual servo target condition based on the object guide G1 and the fixed guide SG1 and a visual servo target condition based on the object guide G2 and the fixed guide SG1 are set, respectively, immediately after the convergence determination of each visual servo. The target condition may be determined.

<その他の変形例>
上記の実施形態及びその変形例では、ガイド設定部42は、所定の画像処理アルゴリズム(ユーザーにより指定されてもよい。)により抽出される特徴位置に対して、一つガイド位置を設定している。しかし、ガイド設定部42は、抽出された特徴位置(例えば、エッジなど)を表示部41に表示し、抽出された特徴位置の中から任意の特徴位置(例えば、抽出されたエッジの一部など)の指定を、ユーザーから入力部40を介して受け付けてもよい。そして、ガイド設定部42は、指定された特徴位置に対して、ガイド位置の指定を受け付け、ガイドデータを生成するようにしてもよい。この場合、ガイドデータには、ガイド位置(変換された基準位置、方向成分)と、ユーザーにより指定された特徴位置(特徴位置を特定する情報、当該特徴位置を抽出するために使用される画像処理アルゴリズムに関する情報)とが含まれる。もちろん、抽出された特徴位置の中から、任意の複数の特徴位置を受け付け、それぞれの指定された特徴位置に対してガイド位置の指定を受け付けるようにしてもよい。このようにすることで、特徴位置およびガイドの設定の柔軟性を高めることができる。
<Other variations>
In the above-described embodiment and its modifications, the guide setting unit 42 sets one guide position for the feature position extracted by a predetermined image processing algorithm (which may be specified by the user). . However, the guide setting unit 42 displays the extracted feature position (for example, an edge or the like) on the display unit 41, and selects an arbitrary feature position (for example, a part of the extracted edge or the like) from the extracted feature position. ) May be received from the user via the input unit 40. Then, the guide setting unit 42 may receive the designation of the guide position for the designated feature position and generate guide data. In this case, the guide data includes a guide position (converted reference position and direction component), a feature position specified by the user (information specifying the feature position, and image processing used to extract the feature position. Information on the algorithm). Of course, an arbitrary plurality of feature positions may be received from the extracted feature positions, and a guide position specification may be received for each specified feature position. By doing in this way, the flexibility of the setting of a characteristic position and a guide can be improved.

図示した各フローチャートの各処理単位は、教示装置4及び制御部3の処理を理解容易にするために、主な処理内容に応じて分割したものである。処理単位の分割の仕方や名称によって、本願発明が制限されることはない。教示装置4及び制御部3の処理は、処理内容に応じて、さらに多くの処理単位に分割することもできる。また、1つの処理単位がさらに多くの処理を含むように分割することもできる。   Each processing unit in each illustrated flowchart is divided according to main processing contents in order to facilitate understanding of the processing of the teaching device 4 and the control unit 3. The present invention is not limited by the way of dividing the processing unit or the name. The processing of the teaching device 4 and the control unit 3 can be divided into more processing units depending on the processing content. Moreover, it can also divide | segment so that one process unit may contain many processes.

以上、本発明について実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に多様な変更または改良を加えることが可能であることが当業者には明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。本発明の提供の態様にも、様々な態様が取り得る。本発明は、例えば、ロボットと、制御部(制御装置)と、教示装置とを別個に有するロボットシステムとして提供してもよいし、ロボットの制御部に教示装置の機能が含まれるロボットとして提供してもよいし、ロボットと、教示装置の機能を含む制御部(制御装置)とを別個に有するロボットシステムとして提供してもよい。また、本発明は、教示方法、教示装置のプログラム、ロボットの制御方法、ロボットの制御プログラム、ロボットシステムの制御方法、プログラムを記憶した記憶媒体などとしても提供することもできる。   As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be made to the above embodiment. In addition, it is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention. Various aspects of the provided aspects of the invention can also be employed. The present invention may be provided, for example, as a robot system having a robot, a control unit (control device), and a teaching device separately, or as a robot in which the function of the teaching device is included in the control unit of the robot. Alternatively, it may be provided as a robot system having a robot and a control unit (control device) including the function of the teaching device separately. The present invention can also be provided as a teaching method, a teaching device program, a robot control method, a robot control program, a robot system control method, a storage medium storing the program, and the like.

1:ロボットシステム
2:ロボット
3:制御部
4:教示装置
5:撮像装置
9:コンピューター
20:胴部
21:アーム
21a:ジョイント
21b:アーム部材
21c:力覚センサー
22:ハンド
24:脚部
25:頭部
30:教示データ受信部
31:視覚サーボ制御部
32:特徴抽出部
33:ガイド生成部
34:画像取得部
35:教示データ格納部
40:入力部
41:表示部
42:ガイド設定部
43:教示データ生成部
44:教示データ送信部
45:モデルデータ格納部
46:ガイドデータ格納部
47:教示データ格納部
90:演算装置
91:主記憶装置
92:補助記憶装置
93:通信I/F
94:入力装置
95:表示装置
96:読み書き装置
451:ID
452:ガイド位置
453:特徴位置
461:ID
462:ガイド位置
471:工程番号
472:教示内容
E:オフセット位置
F:特徴位置
G:対象物ガイド
SG:固定ガイド
T:作業台
W:ワーク、対象物、部品、モデルデータ
1: Robot system 2: Robot 3: Control unit 4: Teaching device 5: Imaging device 9: Computer 20: Body 21: Arm 21a: Joint 21b: Arm member 21c: Force sensor 22: Hand 24: Leg 25: Head 30: Teaching data receiving unit 31: Visual servo control unit 32: Feature extraction unit 33: Guide generation unit 34: Image acquisition unit 35: Teaching data storage unit 40: Input unit 41: Display unit 42: Guide setting unit 43: Teaching data generating unit 44: Teaching data transmitting unit 45: Model data storing unit 46: Guide data storing unit 47: Teaching data storing unit 90: Computing device 91: Main storage device 92: Auxiliary storage device 93: Communication I / F
94: Input device 95: Display device 96: Read / write device 451: ID
452: Guide position 453: Feature position 461: ID
462: Guide position 471: Process number 472: Teaching content E: Offset position F: Feature position G: Object guide SG: Fixed guide T: Worktable W: Workpiece, object, parts, model data

Claims (15)

第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、
第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定部と、
前記第一ガイド及び前記第二ガイドを表示する表示部と、
前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、
前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信部と、
を有することを特徴とする教示装置。
A first guide setting unit for receiving settings of the first guide for the image data of the first object;
A second guide setting unit that receives a setting of the second guide for the image data of the second object;
A display unit for displaying the first guide and the second guide;
A teaching data generation unit that generates teaching data in which the first guide and the second guide indicate a predetermined positional relationship;
A teaching data transmitting unit that transmits the generated teaching data to a robot that performs visual servoing based on the teaching data;
A teaching device comprising:
請求項1に記載の教示装置であって、
前記第一ガイド設定部は、前記第一対象物の画像データの特徴と関連付けて前記第一ガイドの設定を受け付け、
前記第二ガイド設定部は、前記第二対象物の画像データの特徴と関連付けて前記第二ガイドの設定を受け付け、
前記教示データ生成部は、前記第一対象物の画像データの特徴及び前記第一ガイドと、前記第二対象物の画像データの特徴及び前記第二ガイドとを示す教示データを生成する、
ことを特徴とする教示装置。
The teaching device according to claim 1,
The first guide setting unit accepts the setting of the first guide in association with the characteristics of the image data of the first object,
The second guide setting unit accepts the setting of the second guide in association with the characteristics of the image data of the second object,
The teaching data generation unit generates teaching data indicating the characteristics of the image data of the first object and the first guide, and the characteristics of the image data of the second object and the second guide.
A teaching device.
請求項2に記載の教示装置であって、
前記第一ガイド設定部は、前記第一対象物の画像データの複数の特徴それぞれと関連付けて複数の前記第一ガイドの設定を受け付け、
前記教示データ生成部は、前記第一対象物の画像データの複数の特徴及び前記複数の第一ガイドを示す教示データを生成する、
ことを特徴とする教示装置。
The teaching device according to claim 2,
The first guide setting unit receives a plurality of settings of the first guide in association with a plurality of features of the image data of the first object,
The teaching data generation unit generates teaching data indicating a plurality of features of the image data of the first object and the plurality of first guides.
A teaching device.
請求項3に記載の教示装置であって、
前記第一ガイド設定部は、複数の画像処理のそれぞれを用いて前記第一対象物の画像データの複数の特徴を抽出し、前記抽出された複数の特徴のそれぞれと関連付ける前記複数の第一ガイドの設定を受け付ける、
ことを特徴とする教示装置。
The teaching device according to claim 3,
The first guide setting unit extracts a plurality of features of image data of the first object using each of a plurality of image processes, and associates the plurality of first guides with each of the extracted features. Accept settings for
A teaching device.
請求項3に記載の教示装置であって、
前記第一ガイド設定部は、所定の画像処理を用いて前記第一対象物の画像データの特徴を抽出し、前記抽出された特徴から、複数の特徴の指定と前記指定された複数の特徴のそれぞれと関連付ける前記複数の第一ガイドの設定を受け付ける、
ことを特徴とする教示装置。
The teaching device according to claim 3,
The first guide setting unit extracts features of the image data of the first object using predetermined image processing, and specifies a plurality of features and a plurality of the specified features from the extracted features. Accept settings of the plurality of first guides to be associated with each;
A teaching device.
第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、
撮像装置の撮像範囲に対して、第二ガイドの設定を受け付ける第二ガイド設定部と、
前記第一ガイド及び前記第二ガイドを表示する表示部と、
前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、
前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信部と、
を有することを特徴とする教示装置。
A first guide setting unit for receiving settings of the first guide for the image data of the first object;
A second guide setting unit that receives the setting of the second guide for the imaging range of the imaging device;
A display unit for displaying the first guide and the second guide;
A teaching data generation unit that generates teaching data in which the first guide and the second guide indicate a predetermined positional relationship;
A teaching data transmitting unit that transmits the generated teaching data to a robot that performs visual servoing based on the teaching data;
A teaching device comprising:
教示装置の教示方法であって、
第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定ステップと、
第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定ステップと、
前記第一ガイド及び前記第二ガイドを表示する表示ステップと、
前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成ステップと、
前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信ステップと、
を有することを特徴とする教示方法。
A teaching method for a teaching device, comprising:
A first guide setting step for accepting the setting of the first guide for the image data of the first object;
A second guide setting step for accepting the setting of the second guide for the image data of the second object;
A display step for displaying the first guide and the second guide;
A teaching data generation step for generating teaching data in which the first guide and the second guide indicate a predetermined positional relationship;
A teaching data transmission step of transmitting the generated teaching data to a robot that performs visual servoing based on the teaching data;
A teaching method characterized by comprising:
第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、
第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定部と、
前記第一ガイド及び前記第二ガイドを表示する表示部と、
前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、
前記生成された教示データを、当該教示データに基づく視覚サーボを行うロボットに送信する教示データ送信部として、
コンピューターを機能させることを特徴とするプログラム。
A first guide setting unit for receiving settings of the first guide for the image data of the first object;
A second guide setting unit that receives a setting of the second guide for the image data of the second object;
A display unit for displaying the first guide and the second guide;
A teaching data generation unit that generates teaching data in which the first guide and the second guide indicate a predetermined positional relationship;
As a teaching data transmission unit that transmits the generated teaching data to a robot that performs visual servoing based on the teaching data,
A program characterized by operating a computer.
第一対象物の画像データに対して設定される第一ガイドと、第二対象物の画像データに対して設定される第二ガイドとが、所定の位置関係を示す教示データを格納する教示データ格納部と、
前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得部と、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成部と、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成部と、
前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御部と、
を有することを特徴とするロボット。
Teaching data for storing teaching data indicating a predetermined positional relationship between a first guide set for the image data of the first object and a second guide set for the image data of the second object A storage unit;
An image acquisition unit for acquiring a captured image including the first object and the second object;
A first guide generating unit that generates the first guide for the image data of the first object included in the acquired captured image based on the teaching data;
A second guide generating unit that generates the second guide for the image data of the second object included in the acquired captured image based on the teaching data;
A visual servo control unit that performs control based on visual servo so that the generated first guide and the generated second guide have the predetermined positional relationship based on the teaching data;
A robot characterized by comprising:
請求項9に記載のロボットであって、
前記教示データには、前記第一対象物の画像データの特徴と関連付けて前記第一ガイドが示され、また、前記第二対象物の画像データの特徴と関連付けて前記第二ガイドが示され、
前記第一ガイド生成部は、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データの特徴に関連付けて、前記第一ガイドを生成し、
前記第二ガイド生成部は、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データの特徴に関連付けて、前記第二ガイドを生成する、
ことを特徴とするロボット。
The robot according to claim 9,
In the teaching data, the first guide is shown in association with the feature of the image data of the first object, and the second guide is shown in association with the feature of the image data of the second object,
The first guide generation unit generates the first guide in association with the characteristics of the image data of the first object included in the acquired captured image based on the teaching data,
The second guide generation unit generates the second guide in association with the feature of the image data of the second object included in the acquired captured image based on the teaching data.
A robot characterized by that.
請求項10に記載のロボットであって、
前記教示データには、前記第一対象物の画像データの複数の特徴それぞれと関連付けて複数の前記第一ガイドが示され、
前記第一ガイド生成部は、前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データの複数の特徴のいずれか一つと関連付けて、前記第一ガイドを生成する、
ことを特徴とするロボット。
The robot according to claim 10,
In the teaching data, a plurality of the first guides are shown in association with a plurality of features of the image data of the first object,
The first guide generation unit generates the first guide in association with any one of a plurality of features of image data of the first object included in the acquired captured image based on the teaching data. To
A robot characterized by that.
第一対象物の画像データに対して設定される第一ガイドと、撮像装置の撮像範囲に対して設定される第二ガイドとが、所定の位置関係を示す教示データを格納する教示データ格納部と、
前記第一対象物と前記第二対象物とを含む撮像画像を前記撮像装置から取得する画像取得部と、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成部と、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成部と、
前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御部と、
を有することを特徴とするロボット。
A teaching data storage unit that stores teaching data indicating a predetermined positional relationship between a first guide set for the image data of the first object and a second guide set for the imaging range of the imaging device When,
An image acquisition unit that acquires a captured image including the first object and the second object from the imaging device;
A first guide generating unit that generates the first guide for the image data of the first object included in the acquired captured image based on the teaching data;
A second guide generating unit that generates the second guide for the image data of the second object included in the acquired captured image based on the teaching data;
A visual servo control unit that performs control based on visual servo so that the generated first guide and the generated second guide have the predetermined positional relationship based on the teaching data;
A robot characterized by comprising:
ロボットの制御方法であって、
第一対象物の画像データに対して設定される第一ガイドと、第二対象物の画像データに対して設定される第二ガイドとが、所定の位置関係を示す教示データをする教示データ格納ステップと、
前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得ステップと、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成ステップと、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成ステップと、
前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御ステップと、
を有することを特徴とする制御方法。
A robot control method,
Teaching data storage in which a first guide set for the image data of the first object and a second guide set for the image data of the second object provide teaching data indicating a predetermined positional relationship Steps,
An image acquisition step of acquiring a captured image including the first object and the second object;
A first guide generating step for generating the first guide for the image data of the first object included in the acquired captured image based on the teaching data;
A second guide generating step for generating the second guide for the image data of the second object included in the acquired captured image based on the teaching data;
A visual servo control step for performing control based on visual servo so that the generated first guide and the generated second guide are in the predetermined positional relationship based on the teaching data;
A control method characterized by comprising:
第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定部と、
第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定部と、
前記第一ガイド及び前記第二ガイドを表示する表示部と、
前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成部と、
前記生成された教示データを格納する教示データ格納部と、
前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得部と、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成部と、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成部と、
前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御部と、
を有することを特徴とするロボットシステム。
A first guide setting unit for receiving settings of the first guide for the image data of the first object;
A second guide setting unit that receives a setting of the second guide for the image data of the second object;
A display unit for displaying the first guide and the second guide;
A teaching data generation unit that generates teaching data in which the first guide and the second guide indicate a predetermined positional relationship;
A teaching data storage unit for storing the generated teaching data;
An image acquisition unit for acquiring a captured image including the first object and the second object;
A first guide generating unit that generates the first guide for the image data of the first object included in the acquired captured image based on the teaching data;
A second guide generating unit that generates the second guide for the image data of the second object included in the acquired captured image based on the teaching data;
A visual servo control unit that performs control based on visual servo so that the generated first guide and the generated second guide have the predetermined positional relationship based on the teaching data;
A robot system characterized by comprising:
ロボットシステムの制御方法であって、
第一対象物の画像データに対して、第一ガイドの設定を受け付ける第一ガイド設定ステップと、
第二対象物の画像データに対して、第二ガイドの設定を受け付ける第二ガイド設定ステップと、
前記第一ガイド及び前記第二ガイドを表示する表示ステップと、
前記第一ガイド及び前記第二ガイドが所定の位置関係を示す教示データを生成する教示データ生成ステップと、
前記生成された教示データを格納する教示データ格納ステップと、
前記第一対象物と前記第二対象物とを含む撮像画像を取得する画像取得ステップと、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第一対象物の画像データに対して、前記第一ガイドを生成する第一ガイド生成ステップと、
前記教示データに基づいて、前記取得された撮像画像に含まれる前記第二対象物の画像データに対して、前記第二ガイドを生成する第二ガイド生成ステップと、
前記教示データに基づいて、前記生成された第一ガイドと前記生成された第二ガイドとが、前記所定の位置関係となるように視覚サーボに基づく制御を行う視覚サーボ制御ステップと、
を有することを特徴とする制御方法。
A control method for a robot system,
A first guide setting step for accepting the setting of the first guide for the image data of the first object;
A second guide setting step for accepting the setting of the second guide for the image data of the second object;
A display step for displaying the first guide and the second guide;
A teaching data generation step for generating teaching data in which the first guide and the second guide indicate a predetermined positional relationship;
A teaching data storage step for storing the generated teaching data;
An image acquisition step of acquiring a captured image including the first object and the second object;
A first guide generating step for generating the first guide for the image data of the first object included in the acquired captured image based on the teaching data;
A second guide generating step for generating the second guide for the image data of the second object included in the acquired captured image based on the teaching data;
A visual servo control step for performing control based on visual servo so that the generated first guide and the generated second guide are in the predetermined positional relationship based on the teaching data;
A control method characterized by comprising:
JP2013230029A 2013-11-06 2013-11-06 Teaching apparatus, robot, robot system, method, and program Expired - Fee Related JP6326765B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013230029A JP6326765B2 (en) 2013-11-06 2013-11-06 Teaching apparatus, robot, robot system, method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013230029A JP6326765B2 (en) 2013-11-06 2013-11-06 Teaching apparatus, robot, robot system, method, and program

Publications (2)

Publication Number Publication Date
JP2015089598A true JP2015089598A (en) 2015-05-11
JP6326765B2 JP6326765B2 (en) 2018-05-23

Family

ID=53193364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013230029A Expired - Fee Related JP6326765B2 (en) 2013-11-06 2013-11-06 Teaching apparatus, robot, robot system, method, and program

Country Status (1)

Country Link
JP (1) JP6326765B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106737665A (en) * 2016-11-30 2017-05-31 天津大学 The mechanical arm control system and implementation method matched based on binocular vision and SIFT feature
CN107303672A (en) * 2016-04-19 2017-10-31 上海技美科技股份有限公司 The method that common collaboration robot, robot system and common collaboration robot perform operation task
CN107303674A (en) * 2016-04-19 2017-10-31 上海技美科技股份有限公司 Robot system
CN107303670A (en) * 2016-04-19 2017-10-31 上海技美科技股份有限公司 Common collaboration robot, robot system and common collaboration robot perform the control method of operation task
CN108120370A (en) * 2016-11-26 2018-06-05 沈阳新松机器人自动化股份有限公司 Position of mobile robot acquisition methods and device
JP2020199631A (en) * 2020-08-28 2020-12-17 株式会社Fuji Job creating device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023021703A1 (en) * 2021-08-20 2023-02-23 ファナック株式会社 Device for teaching position and posture for robot to grasp workpiece, robot system, and method

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002018754A (en) * 2000-07-10 2002-01-22 Toyota Central Res & Dev Lab Inc Robot device and its control method
JP2011115877A (en) * 2009-12-02 2011-06-16 Canon Inc Double arm robot
JP2012161850A (en) * 2011-02-03 2012-08-30 Seiko Epson Corp Robotic device, device, program and method for detecting position
JP2012254518A (en) * 2011-05-16 2012-12-27 Seiko Epson Corp Robot control system, robot system and program
JP2013013950A (en) * 2011-07-01 2013-01-24 Seiko Epson Corp Robot, robot control device, robot control method and robot control program
JP2013158847A (en) * 2012-02-01 2013-08-19 Seiko Epson Corp Robot control device, robot control method, robot control program and robot system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002018754A (en) * 2000-07-10 2002-01-22 Toyota Central Res & Dev Lab Inc Robot device and its control method
JP2011115877A (en) * 2009-12-02 2011-06-16 Canon Inc Double arm robot
JP2012161850A (en) * 2011-02-03 2012-08-30 Seiko Epson Corp Robotic device, device, program and method for detecting position
JP2012254518A (en) * 2011-05-16 2012-12-27 Seiko Epson Corp Robot control system, robot system and program
JP2013013950A (en) * 2011-07-01 2013-01-24 Seiko Epson Corp Robot, robot control device, robot control method and robot control program
JP2013158847A (en) * 2012-02-01 2013-08-19 Seiko Epson Corp Robot control device, robot control method, robot control program and robot system

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107303672A (en) * 2016-04-19 2017-10-31 上海技美科技股份有限公司 The method that common collaboration robot, robot system and common collaboration robot perform operation task
CN107303674A (en) * 2016-04-19 2017-10-31 上海技美科技股份有限公司 Robot system
CN107303670A (en) * 2016-04-19 2017-10-31 上海技美科技股份有限公司 Common collaboration robot, robot system and common collaboration robot perform the control method of operation task
CN108120370A (en) * 2016-11-26 2018-06-05 沈阳新松机器人自动化股份有限公司 Position of mobile robot acquisition methods and device
CN106737665A (en) * 2016-11-30 2017-05-31 天津大学 The mechanical arm control system and implementation method matched based on binocular vision and SIFT feature
CN106737665B (en) * 2016-11-30 2019-07-19 天津大学 Based on binocular vision and the matched mechanical arm control system of SIFT feature and implementation method
JP2020199631A (en) * 2020-08-28 2020-12-17 株式会社Fuji Job creating device
JP7105281B2 (en) 2020-08-28 2022-07-22 株式会社Fuji work system

Also Published As

Publication number Publication date
JP6326765B2 (en) 2018-05-23

Similar Documents

Publication Publication Date Title
JP6326765B2 (en) Teaching apparatus, robot, robot system, method, and program
US11090814B2 (en) Robot control method
JP6361213B2 (en) Robot control apparatus, robot, robot system, teaching method, and program
US10532461B2 (en) Robot and robot system
US20180029232A1 (en) Control apparatus and robot
CN107116565B (en) Control device, robot, and robot system
JP6648469B2 (en) Robot system and robot controller
JP2020075354A (en) External input device, robot system, control method for robot system, control program, and recording medium
JP6445092B2 (en) Robot system displaying information for teaching robots
CN108972538B (en) Robot control device, robot, and robot system
JP2017170571A (en) Robot, robot control apparatus, and robot system
JP2015071206A (en) Control device, robot, teaching data generation method, and program
JP6897396B2 (en) Control devices, robot systems and control methods
JP2015112654A (en) Control apparatus, robot, teaching data generation method, and robot system
TW202122225A (en) System and method for robotic bin picking using advanced scanning techniques
US20180085920A1 (en) Robot control device, robot, and robot system
JP2018144228A (en) Robot control apparatus, robot, robot system, teaching method, and program
JP2015186834A (en) Robot control apparatus, holding unit control device, robot, holding unit, robot control method and program
JP2018122376A (en) Image processing device, robot control device, and robot
JP2017148909A (en) Control device, robot, and robot system
JP2015074061A (en) Robot control device, robot system, robot, robot control method and robot control program
US20230321823A1 (en) Robot control device, and robot system
JP2017159429A (en) Robot control device, information processing device, and robot system
JP2019111588A (en) Robot system, information processor, and program
JP2019042836A (en) Robot control device, robot, robot system and robot control method

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160616

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20160624

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161005

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170817

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171013

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180402

R150 Certificate of patent or registration of utility model

Ref document number: 6326765

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees