JP2015136763A - Control device, robot system, robot and robot control method - Google Patents

Control device, robot system, robot and robot control method Download PDF

Info

Publication number
JP2015136763A
JP2015136763A JP2014010149A JP2014010149A JP2015136763A JP 2015136763 A JP2015136763 A JP 2015136763A JP 2014010149 A JP2014010149 A JP 2014010149A JP 2014010149 A JP2014010149 A JP 2014010149A JP 2015136763 A JP2015136763 A JP 2015136763A
Authority
JP
Japan
Prior art keywords
marker
captured image
robot
end effector
region
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014010149A
Other languages
Japanese (ja)
Inventor
良至 岸
Ryoji Kishi
良至 岸
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 JP2014010149A priority Critical patent/JP2015136763A/en
Publication of JP2015136763A publication Critical patent/JP2015136763A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a control device capable of specifying whether or not an end effector of a robot is positioned in a first region, and further to provide a robot system, a robot, a robot control method and the like.SOLUTION: A control device 100 includes: a captured image reception section 110 receiving a captured image obtained by a first region being imaged by an image section; and a processing section 130 activating a robot 300 provided with an end effector 310 operating in the first region. Further, the processing section 130 determines whether or not the end effector 310 is in the first region on the basis of information of a marker 50 imaged in the captured image.

Description

本発明は、制御装置、ロボットシステム、ロボット及びロボット制御方法等に関係する。   The present invention relates to a control device, a robot system, a robot, a robot control method, and the like.

近年、生産現場において、人が行ってきた作業を機械化・自動化するために、産業用ロボットを導入することが多くなってきた。しかし、ロボットの位置決めを行うにあたっては、精密なキャリブレーションが前提となり、ロボット導入の障壁となっている。   In recent years, industrial robots have been increasingly introduced to mechanize and automate work performed by humans at production sites. However, precise positioning is a prerequisite for positioning the robot, which is a barrier to robot introduction.

ここで、ロボットの位置決めを行う手法の一つとしてビジュアルサーボがある。ビジュアルサーボは、参照画像(ゴール画像、目標画像)と撮像画像(現在の画像)との差に基づいて、ロボットを制御する技術である。ある種のビジュアルサーボは、キャリブレーションに精密さを求めない点で有用であり、ロボット導入障壁を下げる技術として注目されている。   Here, visual servoing is one of the methods for positioning the robot. Visual servo is a technique for controlling a robot based on a difference between a reference image (goal image, target image) and a captured image (current image). Certain types of visual servos are useful in that they do not require precision in calibration, and are attracting attention as a technology that lowers the barrier for robot introduction.

このビジュアルサーボに関する技術としては、例えば特許文献1に記載される従来技術がある。   As a technique related to this visual servo, there is a conventional technique described in Patent Document 1, for example.

特開2003−305675号公報JP 2003-305675 A

ビジュアルサーボでは、撮像画像において物体検出処理を行い、例えば作業対象物又はロボットのエンドエフェクターなどの検出対象物を検出し、検出結果に基づいて、ロボットを制御する。そのため、ビジュアルサーボを行う際には、検出対象物が撮像画像に映っている必要がある。すなわち、撮像画像に映る実空間上の範囲(撮像範囲)を、ロボットの作業範囲とすると、正常にビジュアルサーボを行うためには、作業範囲内に検出対象物が位置している必要がある。   In visual servoing, an object detection process is performed on a captured image, for example, a detection target such as a work target or a robot end effector is detected, and the robot is controlled based on the detection result. Therefore, when visual servoing is performed, it is necessary that the detection target is reflected in the captured image. That is, assuming that the range in real space (imaging range) reflected in the captured image is the robot work range, the detection target must be positioned within the work range in order to perform visual servo normally.

しかし、検出対象物が撮像画像に映っている場合でも、検出対象物が映っていないと判定してしまう場合や、検出対象物が撮像画像に映っていないにも関わらず、検出対象物が映っていると誤って判定してしまう場合がある。このような場合には、正常にロボットを制御することができない。   However, even if the detection target is reflected in the captured image, it may be determined that the detection target is not reflected, or the detection target is not reflected in the captured image. It may be mistakenly determined that In such a case, the robot cannot be controlled normally.

本発明の一態様は、第1の領域が撮像部により撮像されて得られる撮像画像を受け付ける撮像画像受付部と、前記第1の領域で動作するエンドエフェクターを備えるロボットを動作させる処理部と、を含み、前記処理部は、前記撮像画像に映るマーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域内にあるか否かを判定する制御装置に関係する。   According to one aspect of the present invention, a captured image receiving unit that receives a captured image obtained by imaging a first region by an imaging unit, a processing unit that operates a robot including an end effector that operates in the first region, The processing unit is related to a control device that determines whether or not the end effector is in the first region based on information on a marker reflected in the captured image.

本発明の一態様では、撮像画像においてマーカーが認識できたか否かに基づいて、ロボットのエンドエフェクターが第1の領域内にあるか否かを判定する。   In one aspect of the present invention, it is determined whether or not the end effector of the robot is in the first region based on whether or not the marker is recognized in the captured image.

よって、ロボットのエンドエフェクターが第1の領域内に位置するか否かを特定することが可能となる。   Therefore, it is possible to specify whether or not the end effector of the robot is located in the first region.

また、本発明の一態様では、前記撮像画像受付部は、少なくとも一つの前記マーカーを第2の領域に配置して撮像されて得られた前記撮像画像を受け付け、前記処理部は、前記撮像画像に基づいて、前記第2の領域に配置された前記マーカーの認識処理を行い、前記認識処理の結果に基づいて、前記エンドエフェクターが前記第1の領域内に位置するか否かを判定して、ビジュアルサーボ又は検査処理を行ってもよい。   Moreover, in one aspect of the present invention, the captured image reception unit receives the captured image obtained by capturing at least one marker in the second area, and the processing unit receives the captured image. And performing recognition processing of the marker arranged in the second region, and determining whether or not the end effector is located in the first region based on the result of the recognition processing. Visual servo or inspection processing may be performed.

これにより、マーカー認識処理の結果に基づいて、ビジュアルサーボ又は検査処理を行うこと等が可能になる。   This makes it possible to perform visual servoing or inspection processing based on the result of the marker recognition processing.

また、本発明の一態様では、前記処理部は、前記マーカーの前記認識処理を行うことにより、前記マーカーの少なくとも一部の領域が、前記ロボットの作業対象物又は前記エンドエフェクターにより遮蔽されている状態であるマーカー遮蔽状態を検出し、検出した前記マーカー遮蔽状態に基づいて、前記エンドエフェクターが前記第1の領域内に位置するか否かを判定してもよい。   In one embodiment of the present invention, the processing unit performs the recognition process of the marker so that at least a part of the area of the marker is shielded by the work object of the robot or the end effector. A marker shielding state that is a state may be detected, and based on the detected marker shielding state, it may be determined whether or not the end effector is located in the first region.

これにより、マーカーの配置とマーカー遮蔽状態とに基づいて、エンドエフェクターが第1の領域内に位置するか否かを判定すること等が可能になる。   Accordingly, it is possible to determine whether or not the end effector is located in the first region based on the marker arrangement and the marker shielding state.

また、本発明の一態様では、前記処理部は、前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていると判定した場合には、前記エンドエフェクターが前記第1の領域内に位置すると判定し、前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていないと判定した場合には、前記エンドエフェクターが前記第1の領域外に位置すると判定してもよい。   In one aspect of the present invention, when the processing unit determines that at least a partial region of the marker is shielded by the work object or the end effector, the end effector is the first effector. And determining that at least a part of the area of the marker is not shielded by the work object or the end effector, the end effector is outside the first area. You may determine that it is located in.

これにより、作業対象物又はエンドエフェクターによるマーカー遮蔽状態の有無に基づいて、エンドエフェクターが第1の領域内に位置するか否かを判定すること等が可能になる。   Accordingly, it is possible to determine whether or not the end effector is positioned in the first region based on the presence or absence of the marker shielding state by the work object or the end effector.

また、本発明の一態様では、前記第2の領域は、前記撮像部の位置から前記撮像画像の撮像方向に向かって、前記第1の領域の後方に位置する領域であってもよい。   In the aspect of the invention, the second region may be a region located behind the first region from the position of the imaging unit toward the imaging direction of the captured image.

これにより、例えばロボットの作業範囲の背景にマーカーを配置すること等が可能になる。   Thereby, for example, it is possible to place a marker on the background of the work range of the robot.

また、本発明の一態様では、前記撮像画像受付部は、前記第1の領域内には前記マーカーが非配置であり、前記第1の領域外の前記第2の領域に前記マーカーを配置して撮像されて得られた前記撮像画像を受け付け、前記処理部は、前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていると判定した場合には、前記エンドエフェクターが前記第1の領域外に位置すると判定し、前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていないと判定した場合には、前記エンドエフェクターが前記第1の領域内に位置すると判定してもよい。   In the aspect of the invention, the captured image reception unit may be configured such that the marker is not arranged in the first area, and the marker is arranged in the second area outside the first area. And when the processing unit determines that at least a partial area of the marker is shielded by the work object or the end effector, the end When it is determined that the effector is located outside the first region, and it is determined that at least a partial region of the marker is not shielded by the work object or the end effector, the end effector is the first effector. It may be determined that it is located within one region.

これにより、ビジュアルサーボや検査処理を行う際に、第2の領域に配置したマーカーが物体検出処理に影響を与えることを防ぎつつ、作業対象物又はエンドエフェクターによるマーカー遮蔽状態の有無に基づいて、エンドエフェクターが第1の領域内に位置するか否かを判定すること等が可能になる。   Thereby, when performing visual servo and inspection processing, while preventing the marker placed in the second area from affecting the object detection processing, based on the presence or absence of marker shielding state by the work object or the end effector, It becomes possible to determine whether or not the end effector is positioned within the first region.

また、本発明の一態様では、前記処理部は、前記第1の領域に対応する領域を注目領域として前記撮像画像に設定して、前記注目領域において前記ビジュアルサーボ又は前記検査処理を行ってもよい。   In the aspect of the invention, the processing unit may set the captured image as a region of interest corresponding to the first region, and perform the visual servo or the inspection process in the region of interest. Good.

これにより、撮像画像において、マーカーが映っていない領域の画像に基づいて、ビジュアルサーボ又は検査処理を行うこと等が可能になる。   This makes it possible to perform visual servoing or inspection processing based on an image of a region where no marker is shown in the captured image.

また、本発明の一態様では、前記撮像画像受付部は、複数のマーカーを前記第2の領域にアレイ配置して撮像されて得られた前記撮像画像を受け付けてもよい。   In one aspect of the present invention, the captured image reception unit may receive the captured image obtained by imaging a plurality of markers arranged in the second region.

これにより、マーカーを一つだけ配置する場合よりも、エンドエフェクターが第1の領域内に位置するか否かをより細かく判定すること等が可能になる。   Thereby, it becomes possible to determine in more detail whether or not the end effector is located in the first region than when only one marker is arranged.

また、本発明の一態様では、前記撮像画像受付部は、複数の異なるマーカーを前記第2の領域に配置して撮像されて得られた前記撮像画像を受け付けてもよい。   In one aspect of the present invention, the captured image reception unit may receive the captured image obtained by capturing a plurality of different markers in the second region.

これにより、認識したマーカーの種類により、撮像画像に映っている領域を特定すること等が可能になる。   Thereby, it becomes possible to specify the region shown in the captured image, etc., according to the recognized marker type.

また、本発明の一態様では、前記処理部は、前記撮像画像における前記複数の異なるマーカーの前記認識処理の結果に基づいて、前記撮像画像の撮像方向を特定してもよい。   In the aspect of the invention, the processing unit may specify the imaging direction of the captured image based on the recognition processing result of the plurality of different markers in the captured image.

これにより、撮像部の向きを調整すること等が可能になる。   This makes it possible to adjust the orientation of the imaging unit.

また、本発明の一態様では、前記処理部は、前記撮像画像における前記複数のマーカーの前記認識処理の結果に基づいて、前記ロボットの作業対象物又は前記ロボットの前記エンドエフェクターの位置姿勢の特定処理を行ってもよい。   In the aspect of the invention, the processing unit may specify the position and orientation of the work target of the robot or the end effector of the robot based on the recognition processing result of the plurality of markers in the captured image. Processing may be performed.

これにより、作業対象物又はエンドエフェクターの実際の位置姿勢と、作業対象物又はエンドエフェクターの目標位置姿勢とを比較すること等が可能になる。   This makes it possible to compare the actual position and orientation of the work object or end effector with the target position and orientation of the work object or end effector.

また、本発明の一態様では、前記処理部は、前記ビジュアルサーボとして、前記撮像画像が参照画像に一致又は近付くように前記ロボットを制御する処理を行ってもよい。   In the aspect of the invention, the processing unit may perform a process of controlling the robot so that the captured image matches or approaches a reference image as the visual servo.

これにより、ロボットの位置姿勢を目標の位置姿勢にすることが可能になる。   As a result, the position and orientation of the robot can be set to the target position and orientation.

また、本発明の他の態様は、第1の領域で動作するエンドエフェクターを備えるロボットと、マーカーと、前記第1の領域を撮像する撮像部と、を含み、前記ロボットは、前記撮像部が撮像した撮像画像に映る前記マーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域にあるか否かを判定するロボットシステムに関係する。   Another aspect of the present invention includes a robot including an end effector that operates in a first area, a marker, and an imaging unit that images the first area. The present invention relates to a robot system that determines whether or not the end effector is in the first region based on information of the marker reflected in a captured image.

また、本発明の他の態様は、第1の領域で動作するエンドエフェクターを含み、撮像部が撮像した撮像画像に映るマーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域にあるか否かを判定するロボットに関係する。   Further, another aspect of the present invention includes an end effector that operates in the first area, and whether the end effector is in the first area based on marker information reflected in a captured image captured by the imaging unit. It relates to a robot that determines whether or not.

また、本発明の他の態様は、第1の領域で動作するエンドエフェクターを備えるロボットを動作させるロボット制御方法であって、マーカーを撮像することと、撮像画像に映るマーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域にあるか否かを判定することと、を含むロボット制御方法に関係する。   Another aspect of the present invention is a robot control method for operating a robot including an end effector that operates in the first region, based on imaging a marker and marker information reflected in the captured image. Determining whether or not the end effector is in the first region.

本発明の幾つかの態様によれば、ロボットのエンドエフェクターが第1の領域内に位置するか否かを特定することができる制御装置、ロボットシステム、ロボット及びロボット制御方法等を提供することができる。   According to some aspects of the present invention, it is possible to provide a control device, a robot system, a robot, a robot control method, and the like that can specify whether or not an end effector of a robot is located in the first region. it can.

また、本発明の幾つかの態様によれば、撮像画像において物体検出処理を行った結果、ロボットのエンドエフェクターを非検出又は誤検出してしまう場合でも、エンドエフェクターが第1の領域内に位置するか否かを特定することができる制御装置、ロボットシステム、ロボット及びロボット制御方法等を提供することができる。   In addition, according to some aspects of the present invention, even if the end effector of the robot is not detected or erroneously detected as a result of performing the object detection process on the captured image, the end effector is positioned in the first region. It is possible to provide a control device, a robot system, a robot, a robot control method, and the like that can specify whether or not to do so.

本実施形態のシステム構成例。The system configuration example of this embodiment. 図2(A)〜図2(D)は、背景に一つのマーカーを配置した場合の処理の説明図。FIGS. 2A to 2D are explanatory diagrams of processing when one marker is arranged on the background. 図3(A)〜図3(F)は、マーカーの説明図。FIGS. 3A to 3F are explanatory diagrams of markers. 本実施形態の処理の流れを説明するフローチャート。The flowchart explaining the flow of a process of this embodiment. 図5(A)〜図5(F)は、背景に複数のマーカーをアレイ配置した場合の処理の説明図。FIGS. 5A to 5F are explanatory diagrams of processing when a plurality of markers are arranged in the background. 第1の実施例の処理の流れを説明するフローチャート。The flowchart explaining the flow of a process of 1st Example. 図7(A)、図7(B)は、マーカーの配置位置の説明図。FIG. 7A and FIG. 7B are explanatory diagrams of marker placement positions. 図8(A)〜図8(C)は、作業範囲外にのみマーカーを配置する場合の処理の説明図。FIG. 8A to FIG. 8C are explanatory diagrams of processing when a marker is arranged only outside the work range. 第2の実施例の処理の流れを説明するフローチャート。The flowchart explaining the flow of a process of 2nd Example. 図10(A)、図10(B)は、複数の異なるマーカーを配置する場合の説明図。10A and 10B are explanatory diagrams in the case where a plurality of different markers are arranged. 図11(A)〜図11(D)は、検出対象物の位置姿勢の特定処理の説明図。FIG. 11A to FIG. 11D are explanatory diagrams of a process for specifying the position and orientation of the detection target. 第3の実施例の処理の流れを説明するフローチャート。The flowchart explaining the flow of a process of a 3rd Example. 図13(A)、図13(B)は、ロボットシステム及びロボットの構成例。FIG. 13A and FIG. 13B are configuration examples of a robot system and a robot. ネットワークを介してロボットを制御するロボットシステムの構成例。1 is a configuration example of a robot system that controls a robot via a network. 位置ベースビジュアルサーボのフローチャート。Flow chart of position-based visual servo. 図16(A)、図16(B)は参照画像と撮像画像の説明図。16A and 16B are explanatory diagrams of a reference image and a captured image. 特徴ベースビジュアルサーボのフローチャート。Flow chart of feature-based visual servo.

以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また、本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。   Hereinafter, this embodiment will be described. In addition, this embodiment demonstrated below does not unduly limit the content of this invention described in the claim. In addition, all the configurations described in the present embodiment are not necessarily essential configuration requirements of the present invention.

1.本実施形態の手法
正常にビジュアルサーボを行うためには、実空間上のロボットの作業範囲(第1の領域)内に検出対象物が位置している必要がある。そして、作業範囲外に検出対象物が位置している場合には、作業範囲内に検出対象物が位置するように、ロボットを移動するなどして、その後にビジュアルサーボを再開する必要がある。このような制御を行うためには、ロボットの作業範囲内に検出対象物が位置しているか否かを判定する必要がある。
1. Method of this Embodiment In order to perform visual servo normally, the detection target must be located within the work range (first region) of the robot in real space. When the detection target is located outside the work range, it is necessary to restart the visual servo after that, for example, by moving the robot so that the detection target is located within the work range. In order to perform such control, it is necessary to determine whether or not the detection target is located within the robot work range.

そこで、本実施形態では、検出対象物の背景(第2の領域)にマーカーを配置し、配置したマーカーの検出結果に基づいて、検出対象物が作業範囲内にあるか否かを判定する。   Therefore, in the present embodiment, a marker is arranged on the background (second region) of the detection object, and it is determined whether or not the detection object is within the work range based on the detection result of the arranged marker.

ここで、作業範囲とは、ビジュアルサーボによりロボットが作業を行う際に、検出対象物がその範囲内に位置する必要がある実空間上の範囲のことである。また、作業範囲は、第1の領域の具体例である。前述したように、ビジュアルサーボを行う際には、検出対象物が撮像画像に映っている必要があるため、作業範囲は、撮像範囲と同じ範囲であることが多い。また、撮像範囲とは、撮像部により撮像された撮像画像に映る実空間上の範囲のことである。例えば、撮像範囲は、後述する図2(A)に示す範囲WAのことである。図2(A)の場合には、作業範囲は撮像範囲と同一の範囲である。ただし、後述する図7(A)及び図7(B)のように、作業範囲は必ずしも撮像範囲と同一の範囲であるとは限らない。なお、本実施形態における検出対象物とは、主にロボットの作業対象物又はロボットのエンドエフェクターのことを指す。   Here, the work range is a range in the real space where the detection target needs to be positioned within the range when the robot performs work by visual servo. The work range is a specific example of the first area. As described above, when visual servoing is performed, it is necessary for the detection target to be reflected in the captured image, so the work range is often the same as the imaging range. The imaging range is a range in real space that appears in the captured image captured by the imaging unit. For example, the imaging range is a range WA shown in FIG. In the case of FIG. 2A, the work range is the same as the imaging range. However, as shown in FIGS. 7A and 7B described later, the work range is not necessarily the same as the imaging range. Note that the detection target in the present embodiment mainly refers to a robot work target or a robot end effector.

次に、本実施形態の制御装置100の構成例を図1に示す。本実施形態の制御装置100は、第1の領域が撮像部200により撮像されて得られる撮像画像を受け付ける撮像画像受付部110と、第1の領域で動作するエンドエフェクターを備えるロボットを動作させる処理部130とを含む。   Next, a configuration example of the control device 100 of this embodiment is shown in FIG. The control device 100 according to the present embodiment is a process for operating a robot including a captured image receiving unit 110 that receives a captured image obtained by imaging the first region by the imaging unit 200 and an end effector that operates in the first region. Part 130.

そして、処理部130は、撮像画像に映るマーカーの情報に基づいて、エンドエフェクター310が第1の領域内にあるか否かを判定する。   Then, the processing unit 130 determines whether or not the end effector 310 is in the first region based on the marker information shown in the captured image.

具体的に、撮像画像受付部110は、少なくとも一つのマーカー50を第2の領域に配置して撮像されて得られた撮像画像を受け付ける。例えば、撮像画像受付部110は、作業対象物の背景又はロボット300のエンドエフェクター310の背景に、少なくとも一つのマーカー50を配置して撮像して得られた撮像画像を取得する。   Specifically, the captured image reception unit 110 receives a captured image obtained by imaging at least one marker 50 arranged in the second region. For example, the captured image reception unit 110 acquires a captured image obtained by capturing and imaging at least one marker 50 on the background of the work target or the end effector 310 of the robot 300.

さらに、処理部130は、撮像画像に基づいて、ビジュアルサーボ又は検査処理を行う。この際に、処理部130は、背景(第2の領域)に配置されたマーカー50の認識処理を行い、認識処理の結果に基づいて、作業対象物又はエンドエフェクター310が作業範囲内に位置するか否かの判定処理を行う。なお、作業対象物とは、例えばワークやパレット等である。   Further, the processing unit 130 performs visual servoing or inspection processing based on the captured image. At this time, the processing unit 130 performs recognition processing of the marker 50 arranged in the background (second region), and the work target or the end effector 310 is located within the work range based on the result of the recognition processing. Whether to determine whether or not. The work target is, for example, a work or a pallet.

ここで、図2(A)〜図2(D)を用いて具体例を説明する。図2(A)には、ロボットのエンドエフェクターEE(把持部)が作業対象物OBを把持し、把持した作業対象物OBを穴HLに入れる作業を、ビジュアルサーボにより行う様子を示す。なお、AMはロボットのアームである。   Here, a specific example will be described with reference to FIGS. FIG. 2A shows a state where the end effector EE (gripping unit) of the robot grips the work object OB and puts the grasped work object OB into the hole HL by visual servoing. Note that AM is a robot arm.

このビジュアルサーボは、撮像部CMにより撮像される図2(B)〜図2(D)のような撮像画像(IM1〜IM3)に基づいて行う。これらの撮像画像には、図2(A)の撮像範囲WA(作業範囲)内の様子が映し出されている。そして、作業対象物OB及びエンドエフェクターEEの背景BGには、マーカーMKが配置されており、遮蔽物がない時にこのマーカーMK全体が撮像画像に映るように、撮像部CMの画角が調整されている。   This visual servoing is performed based on captured images (IM1 to IM3) as shown in FIGS. 2B to 2D captured by the imaging unit CM. In these captured images, a state within the imaging range WA (working range) in FIG. A marker MK is arranged on the background BG of the work object OB and the end effector EE, and the angle of view of the imaging unit CM is adjusted so that the entire marker MK is reflected in the captured image when there is no shielding object. ing.

この場合には、撮像画像に映る撮像範囲WAが、作業範囲として設定されているため、検出対象物が撮像画像に映っていれば、検出対象物が作業範囲内に位置するし、検出対象物が撮像画像に映っていなければ、検出対象物が作業範囲外に位置すると判定できる。ただし、本実施形態では、前述したように、マーカーMKの認識処理の結果に基づいて、検出対象物が作業範囲内に位置するか否かを判定する。   In this case, since the imaging range WA reflected in the captured image is set as the work range, if the detection target is reflected in the captured image, the detection target is located within the work range, and the detection target Can be determined that the detection target is located outside the work range. However, in the present embodiment, as described above, it is determined whether or not the detection target is located within the work range based on the result of the marker MK recognition process.

具体的には、図2(B)の撮像画像IM1や、図2(C)の撮像画像IM2のように、作業対象物OBによりマーカーMKの一部が遮蔽されており、マーカーMKが正しく認識できない場合には、作業対象物OBが作業範囲内に位置すると判定する。   Specifically, as in the captured image IM1 in FIG. 2B and the captured image IM2 in FIG. 2C, a part of the marker MK is shielded by the work object OB, and the marker MK is correctly recognized. If not, it is determined that the work object OB is located within the work range.

一方で、図2(D)の撮像画像IM3のように、作業対象物OBによりマーカーMKが遮蔽されておらず、マーカーMKが正しく認識できる場合には、作業対象物OBが作業範囲外に位置すると判定する。   On the other hand, when the marker MK is not shielded by the work object OB and can be correctly recognized as in the captured image IM3 of FIG. 2D, the work object OB is positioned outside the work range. Judge that.

このように本実施形態によれば、検出対象物(作業対象物又はロボットのエンドエフェクター)が作業範囲内に位置するか否かを特定することが可能となる。   As described above, according to the present embodiment, it is possible to specify whether or not the detection target (work target or robot end effector) is positioned within the work range.

ここで、撮像画像受付部110は、例えば有線及び無線の少なくとも一方を含むネットワークにより撮像部200と通信を行う通信部(インターフェース部)であってもよいし、撮像部200そのものであってもよい。   Here, the captured image reception unit 110 may be a communication unit (interface unit) that communicates with the imaging unit 200 via a network including at least one of wired and wireless, or may be the imaging unit 200 itself. .

また、処理部130の機能は、各種プロセッサー(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムなどにより実現できる。   The function of the processing unit 130 can be realized by hardware such as various processors (CPU and the like), ASIC (gate array and the like), a program, and the like.

そして、制御装置100は、図1の構成に限定されず、これらの一部の構成要素を省略したり、他の構成要素を追加したりするなどの種々の変形実施が可能である。さらに、本実施形態の制御装置100は、後述する図13(B)に示すように、ロボット300に含まれており、ロボット300と一体に構成されていてもよい。さらに、後述する図14に示すように、制御装置100の機能は、サーバー500と、各ロボット300が有する端末装置330(制御部)とにより、実現されてもよい。   And the control apparatus 100 is not limited to the structure of FIG. 1, Various deformation | transformation implementations, such as abbreviate | omitting some of these components and adding another component, are possible. Furthermore, the control apparatus 100 of this embodiment is included in the robot 300 as shown in FIG. 13B described later, and may be configured integrally with the robot 300. Furthermore, as illustrated in FIG. 14 described later, the function of the control device 100 may be realized by a server 500 and a terminal device 330 (control unit) included in each robot 300.

そして、撮像画像とは、撮像部200によって撮像することにより得られる画像のことをいう。また、撮像画像は、外部の記憶部に記憶された画像や、ネットワークを介して取得される画像であってもよい。   The captured image refers to an image obtained by capturing with the image capturing unit 200. The captured image may be an image stored in an external storage unit or an image acquired via a network.

また、作業対象物の背景又はロボット300のエンドエフェクター310の背景とは、例えば撮像部200の位置から見て、作業対象物又はエンドエフェクター310の後ろにある壁、板、柱、台、スクリーン及びディスプレイ(表示部)などであり、図2(A)ではBGのことである。なお、背景はマーカー50を配置することができればよく、これらに限定されない。背景がスクリーンやディスプレイなどの表示部である場合には、表示部がマーカーを表示する。ただし、作業対象物の背景又はエンドエフェクター310の背景は、マーカー50が撮像画像に映るように、撮像範囲内の領域である必要がある。   The background of the work object or the background of the end effector 310 of the robot 300 is, for example, a wall, a plate, a column, a stand, a screen, and the back of the work object or the end effector 310 when viewed from the position of the imaging unit 200 A display (display unit) or the like, which is BG in FIG. The background is not limited to this as long as the marker 50 can be arranged. When the background is a display unit such as a screen or a display, the display unit displays a marker. However, the background of the work object or the background of the end effector 310 needs to be an area within the imaging range so that the marker 50 appears in the captured image.

ここで、作業対象物の背景又はエンドエフェクター310の背景は、第2の領域の具体例である。つまり、第2の領域が、作業対象物の背景又はエンドエフェクター310の背景である場合には、第2の領域は、撮像部200の位置から撮像画像の撮像方向に向かって、第1の領域の後方に位置する領域であると言える。   Here, the background of the work object or the background of the end effector 310 is a specific example of the second region. That is, when the second area is the background of the work object or the background of the end effector 310, the second area is the first area from the position of the imaging unit 200 toward the imaging direction of the captured image. It can be said that this is an area located behind.

ここで、マーカー50とは、目印として利用することができる文字、図形、記号、模様もしくは立体的形状もしくはこれらの結合又はこれらと色彩との結合を形成する有体物で、物体に固定可能なものである。例えば、シールやステッカー、ラベル等である。なお、マーカー50の形状や、色彩、模様等がどのようなものであるかは問わないが、マーカーを安定して検出する上で、他の領域と区別しやすいもの、例えば白い領域に対し黒色からなる画像やシールなどが望ましい。具体例としては、図3(A)〜図3(D)に示すようなマーカーMK1〜マーカーMK4や、図3(E)に示す地図記号などのマーカーMK5〜マーカーMK8、図3(F)に示す文字や数字などのマーカーMK11〜マーカーMK13などが挙げられる。さらに、マーカー50は、QR(Quick Response)コードや、AR(Augmented Reality)マーカーなどであってもよい。また、例外としてマーカー50は、表示部に表示可能な画像であってもよい。   Here, the marker 50 is a tangible object that can be used as a mark, a character, a figure, a symbol, a pattern, a three-dimensional shape, a combination thereof, or a combination of these and a color, and can be fixed to an object. is there. For example, stickers, stickers, labels, and the like. It does not matter what the shape, color, pattern, etc. of the marker 50 is, but it is easy to distinguish the marker from other regions for stable detection of the marker, for example, black for a white region Images and stickers made of are desirable. Specific examples include markers MK1 to MK4 as shown in FIGS. 3A to 3D, markers MK5 to MK8 such as map symbols shown in FIG. 3E, and FIG. Examples thereof include markers MK11 to MK13 such as letters and numbers shown. Furthermore, the marker 50 may be a QR (Quick Response) code, an AR (Augmented Reality) marker, or the like. As an exception, the marker 50 may be an image that can be displayed on the display unit.

このように、検出対象物よりも検出が容易なものをマーカーとして用いるため、検出対象物の認識率(検出率)よりも高い認識率でマーカーを認識でき、検出対象物が作業範囲内に位置するか否かをより確実に判定することが可能となる。   As described above, since a marker that is easier to detect than the detection target is used as a marker, the marker can be recognized at a recognition rate higher than the detection target recognition rate (detection rate), and the detection target is positioned within the work range. It is possible to more reliably determine whether or not to do so.

そして、処理部130は、ビジュアルサーボとして、撮像画像が参照画像に一致又は近付くようにロボット300を制御する処理を行う。   Then, the processing unit 130 performs a process of controlling the robot 300 as a visual servo so that the captured image matches or approaches the reference image.

これにより、ロボット300の位置姿勢を目標の位置姿勢にすることが可能になる。すなわち、ロボット300が目標姿勢をとっている状態で撮像可能な画像を参照画像としておき、参照画像と一致又は近い撮像画像を撮像できるようにロボット300を制御すれば、ロボット300が目標姿勢をとるように制御することが可能になる。なお、ビジュアルサーボについては、後段においてさらに詳しい説明を行う。   Thereby, the position and orientation of the robot 300 can be set to the target position and orientation. That is, if an image that can be captured with the robot 300 in the target posture is set as a reference image, and the robot 300 is controlled so that a captured image that matches or is close to the reference image is controlled, the robot 300 takes the target posture. It becomes possible to control. The visual servo will be described in more detail later.

また、本実施形態の比較例として、前述したように、撮像画像に対する物体検出処理において、検出対象物そのものが検出できたか否かにより、検出対象物が作業範囲内にあるか否かを判定する手法も考えられる。このような手法に対して、本実施形態の手法は以下で説明する点において優れている。   As a comparative example of the present embodiment, as described above, whether or not the detection target is within the work range is determined based on whether or not the detection target itself has been detected in the object detection process for the captured image. A method is also conceivable. In contrast to such a method, the method of the present embodiment is superior in the points described below.

ここで、比較例に対する本実施形態の優位点を説明する前に、物体検出処理の結果について説明しておく。   Here, the results of the object detection process will be described before describing the advantages of the present embodiment over the comparative example.

動作が不安定なビジュアルサーボにおいて、検出対象物を撮像している撮像部の画角から、サーボ中に検出対象物が外れてしまう事がある。このように、ビジュアルサーボが上手くいかないのは、物体検出処理が失敗していることが原因である可能性が高い。   In a visual servo whose operation is unstable, the detection target may be detached during the servo from the angle of view of the imaging unit that images the detection target. As described above, the reason why the visual servo is not successful is highly likely that the object detection process has failed.

ここで、物体検出処理を行った結果は、大きく分けると以下の4つのケースに大別できる。第1のケースは、検出対象物が撮像画像に映っており、検出対象物が正しく検出できたという結果が得られた場合である。この第1のケースでは、この後、問題なくビジュアルサーボを継続することができる。   Here, the results of the object detection process can be roughly divided into the following four cases. The first case is a case where the detection object is reflected in the captured image, and a result that the detection object has been detected correctly is obtained. In this first case, the visual servo can be continued without any problem thereafter.

次に、第2のケースは、第1のケースとは逆に、検出対象物が撮像画像に映っていないため、検出対象物を検出できなかったという結果が得られた場合である。第2のケースでは、このままではビジュアルサーボを行うことができないが、撮像画像に検出対象物が映る状態にロボットを移動させる等して、ビジュアルサーボを再開することができる。   Next, in contrast to the first case, the second case is a case where the detection target is not reflected in the captured image, and the result that the detection target cannot be detected is obtained. In the second case, visual servoing cannot be performed as it is, but visual servoing can be resumed by moving the robot to a state in which the detection target appears in the captured image.

以上の第1のケースと第2のケースは、検出対象物が検出できたかどうかの差はあるものの、どちらも物体検出処理自体は正常に行われており、正しい結果が得られている。問題となるのは、以下の2つのケース(第3のケースと第4のケース)である。   In the first case and the second case described above, although there is a difference in whether or not the detection target can be detected, the object detection process itself is normally performed, and a correct result is obtained. The following two cases (third case and fourth case) are problematic.

第3のケースは、検出対象物が撮像画像に映っているにも関わらず、検出対象物が映っていないと誤って判定し、その結果、検出対象物が検出できなかったという結果が得られた場合である。   In the third case, although the detection object is reflected in the captured image, it is erroneously determined that the detection object is not reflected, and as a result, the detection object cannot be detected. This is the case.

一方で、第4のケースは、第3のケースの逆であり、検出対象物が撮像画像に映っていないにも関わらず、検出対象物が映っていると誤って判定し、本来の検出対象物ではないものを検出対象物として検出してしまったという結果が得られた場合である。   On the other hand, the fourth case is the reverse of the third case, and it is erroneously determined that the detection target is reflected even though the detection target is not reflected in the captured image, and the original detection target is detected. This is a case where a result that a non-object is detected as a detection target is obtained.

すなわち、第3のケースと第4のケースではどちらの場合も、撮像画像に検出対象物が映っているか否かの判定を間違えており、物体検出処理自体が正常に行われていない。そのため、これらの場合に得られた物体検出処理の結果に基づいて、ビジュアルサーボを正常に行うことはできない。   That is, in both the third case and the fourth case, it is wrong to determine whether or not the detection target is reflected in the captured image, and the object detection process itself is not normally performed. Therefore, visual servoing cannot be normally performed based on the result of the object detection process obtained in these cases.

以上をまとめると、物体検出処理により得られた結果に基づいて、その後ビジュアルサーボを正常に継続可能な場合は、第1のケースのみである。   In summary, based on the result obtained by the object detection process, the visual servo can be continued normally thereafter only in the first case.

ただし、前述したように、第2のケースでは、物体検出処理自体には問題がないため、撮像画像に検出対象物が映る状態にロボットを移動させた後に、ビジュアルサーボを再開するなどの対処ができる。一方で、第3のケースと第4のケースでは、物体検出処理自体に問題があるため、物体検出処理の方法を変えるなどしない限り、ビジュアルサーボを正常に継続することができない。   However, as described above, in the second case, there is no problem in the object detection process itself, and therefore, it is possible to take measures such as restarting the visual servo after moving the robot to a state in which the detection target appears in the captured image. it can. On the other hand, in the third case and the fourth case, since there is a problem in the object detection process itself, the visual servo cannot be normally continued unless the method of the object detection process is changed.

つまり、検出対象物が正しく検出できなかった場合でも、今回が第2のケースであるのか、又は第3のケース若しくは第4のケースであるのかが判定できれば、その後にロボットをどのように制御すればよいかも判定することができる。   That is, even if the detection object cannot be detected correctly, if it can be determined whether this time is the second case, the third case, or the fourth case, how the robot is controlled thereafter. It can be determined whether it should be.

しかし、前述した比較例では、検出対象物の検出結果に基づいて、検出対象物が作業範囲内に位置するか否かを判定するため、今回の物体検出処理の結果が、これらの4つのケースのいずれに属するかを正しく判別することができない。これに対して本実施形態では、今回の物体検出処理の結果が、これらの4つのケースのいずれに属するかを正しく判別し、各ケースに適した処理を行うことができる。本実施形態は、この点において比較例よりも優れている。   However, in the comparative example described above, based on the detection result of the detection object, it is determined whether or not the detection object is located within the work range. It is not possible to correctly determine which one belongs to. On the other hand, in the present embodiment, it is possible to correctly determine which of the four cases the result of the current object detection process belongs, and to perform processing suitable for each case. The present embodiment is superior to the comparative example in this respect.

具体的に、本実施形態の処理の流れを図4のフローチャートを用いて説明する。   Specifically, the processing flow of this embodiment will be described with reference to the flowchart of FIG.

まず、前述した図2(A)〜図2(D)に示すように、作業対象物OBの背景BG(又はロボットのエンドエフェクターEEの背景BG)に、少なくとも一つのマーカーMKを配置して撮像して得られた撮像画像(IM1〜IM3)を取得する(S101)。   First, as shown in FIGS. 2A to 2D described above, at least one marker MK is arranged on the background BG of the work object OB (or the background BG of the end effector EE of the robot) and imaged. The captured images (IM1 to IM3) obtained in this way are acquired (S101).

次に、取得した撮像画像において物体検出処理を行い(S102)、さらに撮像画像に基づいて、背景BGに配置されたマーカーMKの認識処理を行う(S103)。   Next, object detection processing is performed on the acquired captured image (S102), and recognition processing of the marker MK arranged on the background BG is performed based on the captured image (S103).

そして、ステップS102において、検出対象物が検出できたか否かを判定する(S104)。検出対象物が検出できたと判定した場合には、さらにステップS103の認識処理の結果に基づいて、検出対象物(作業対象物又はエンドエフェクター)が作業範囲内に位置するか否かの判定処理を行う(S105)。   In step S102, it is determined whether or not the detection target has been detected (S104). If it is determined that the detection target has been detected, a determination process is performed to determine whether or not the detection target (work target or end effector) is located within the work range based on the result of the recognition process in step S103. It performs (S105).

ステップS105において、検出対象物が作業範囲内に位置すると判定した場合、つまり前述した第1のケースである場合には、正常に物体検出ができているため、判定処理の結果に基づいて、ビジュアルサーボ又は検査処理を行う(S106)。   If it is determined in step S105 that the detection target is located within the work range, that is, in the case of the first case described above, since the object is detected normally, the visual is determined based on the result of the determination process. Servo or inspection processing is performed (S106).

そして、ビジュアルサーボが収束したか否か、又は検査処理が完了したか否かを判定し(S107)、ビジュアルサーボが収束した、又は検査処理が完了したと判定した場合には、処理を終了する。一方、ビジュアルサーボが収束していない、又は検査処理が完了していないと判定した場合には、ステップS101に戻り、処理を繰り返す。   Then, it is determined whether the visual servo has converged or whether the inspection process has been completed (S107). If it is determined that the visual servo has converged or the inspection process has been completed, the process ends. . On the other hand, if it is determined that the visual servo has not converged or the inspection process has not been completed, the process returns to step S101 and the process is repeated.

一方で、ステップS105において、検出対象物が作業範囲内に位置していないと判定した場合には、ステップS102で誤検出が発生していた第4のケースであると判定できる。この場合には、正常に物体検出ができていないため、エラーが発生したものとして処理を終了する。又はこの場合には、物体検出処理の方法を変更して、再度ステップS101に戻り、処理を繰り返しても良い。   On the other hand, if it is determined in step S105 that the detection target is not located within the work range, it can be determined that the fourth case in which erroneous detection has occurred in step S102. In this case, since the object cannot be detected normally, it is determined that an error has occurred, and the process ends. Alternatively, in this case, the object detection processing method may be changed, and the process may be repeated by returning to step S101 again.

そして、ステップS104において、検出対象物が検出できなかったと判定した場合にも、ステップS105と同様に、ステップS103の認識処理の結果に基づいて、検出対象物が作業範囲内に位置するか否かの判定処理を行う(S108)。   Even when it is determined in step S104 that the detection target has not been detected, whether or not the detection target is positioned within the work range based on the recognition processing result in step S103, as in step S105. The determination process is performed (S108).

ステップS108において、検出対象物が作業範囲内に位置すると判定した場合には、ステップS102で検出ミスが発生していた第3のケースであると判定できる。この場合にも第4のケースと同様に、正常に物体検出ができていないため、エラーが発生したものとして処理を終了する。このように、第3のケースや第4のケースで行うエラー検出処理は、比較例では行うことができず、このようなエラー検出処理を行うことができるのは、本実施形態の優位点である。   If it is determined in step S108 that the detection target is located within the work range, it can be determined that the third case in which a detection error has occurred in step S102. Also in this case, as in the fourth case, since the object detection has not been performed normally, the processing is terminated assuming that an error has occurred. As described above, the error detection processing performed in the third case and the fourth case cannot be performed in the comparative example, and such error detection processing can be performed because of the advantage of this embodiment. is there.

一方で、ステップS108において、検出対象物が作業範囲内に位置していないと判定した場合、つまり前述した第2のケースである場合には、物体検出処理自体は正常であるため、検出対象物が作業範囲内に位置するようにロボットを制御した後に(S109)、ステップS101に戻り、処理を繰り返す。比較例では第2のケースであることを判別できないため、第2のケースの時にだけステップS109の処理を行うことができない。したがって、第2のケースの時にだけステップS109の処理を行うことができる点も本実施形態の優位点である。以上が本実施形態の処理の流れと、特筆すべき優位点である。   On the other hand, if it is determined in step S108 that the detection target is not located within the work range, that is, in the second case described above, the object detection process itself is normal, and thus the detection target After the robot is controlled to be positioned within the work range (S109), the process returns to step S101 and the process is repeated. In the comparative example, since it is not possible to determine that it is the second case, the process of step S109 cannot be performed only in the second case. Therefore, the advantage of this embodiment is that the process of step S109 can be performed only in the second case. The above is the processing flow of this embodiment and the notable advantages.

次に、図4のフローチャートのステップS105及びステップS108の処理の詳細について説明する。   Next, details of the processing in steps S105 and S108 in the flowchart of FIG. 4 will be described.

処理部130は、マーカー50の認識処理の結果として、マーカー50の少なくとも一部の領域が、作業対象物又はエンドエフェクター310により遮蔽されている状態であるマーカー遮蔽状態を検出し、検出したマーカー遮蔽状態に基づいて、作業対象物又はエンドエフェクター310が作業範囲内に位置するか否かの判定処理を行う。   The processing unit 130 detects a marker shielding state in which at least a part of the marker 50 is shielded by the work object or the end effector 310 as a result of the recognition process of the marker 50, and the detected marker shielding is performed. Based on the state, it is determined whether or not the work object or the end effector 310 is located within the work range.

例えば、前述した図2(B)や図2(C)の例のように、マーカー遮蔽状態が検出された場合には、作業対象物OB(検出対象物)が作業範囲内に位置すると判定し、図2(D)の例のように、マーカー遮蔽状態が検出されない場合には、作業対象物OBが作業範囲外に位置すると判定する。   For example, when the marker shielding state is detected as in the examples of FIGS. 2B and 2C described above, it is determined that the work object OB (detection object) is located within the work range. As in the example of FIG. 2D, when the marker shielding state is not detected, it is determined that the work object OB is located outside the work range.

ただし、検出対象物が作業範囲内に位置するか否かの判定処理の内容はこれに限定されず、マーカー50の配置によって、具体的な処理の内容が異なる。   However, the content of the determination process for determining whether or not the detection target is located within the work range is not limited to this, and the specific content of the process varies depending on the arrangement of the markers 50.

以下で説明する第1の実施例では、後述する図5(A)のように、作業範囲WA内での検出対象物の背景BGに複数のマーカー(MK11〜MK53)をアレイ配置して、後述する図5(B)〜図5(D)のように、複数のマーカーのいずれかがマーカー遮蔽状態であることが検出された場合には、検出対象物が作業範囲WA内に位置すると判定し、後述する図5(E)のように、複数のマーカーのいずれにもマーカー遮蔽状態が検出されない場合には、検出対象物が作業範囲WA外に位置すると判定する。なお、図5(A)〜図5(D)は、検出対象物が作業対象物OBのみである場合の例であり、エンドエフェクターEEによりマーカー遮蔽状態が発生することについては考慮しない。次に説明する図7(A)、図8(A)及び図8(B)についても同様である。   In the first embodiment described below, as shown in FIG. 5A described later, a plurality of markers (MK11 to MK53) are arranged in an array on the background BG of the object to be detected within the work range WA. When it is detected that any of the plurality of markers is in the marker shielding state as shown in FIGS. 5B to 5D, it is determined that the detection target is located within the work range WA. As shown in FIG. 5E described later, when the marker shielding state is not detected in any of the plurality of markers, it is determined that the detection target is located outside the work range WA. 5A to 5D are examples in which the detection target is only the work target OB, and the occurrence of the marker shielding state by the end effector EE is not considered. The same applies to FIGS. 7A, 8A, and 8B described below.

一方で、以下で説明する第2の実施例では、後述する図7(A)のように、作業範囲WA内(及びその背景)にはマーカーを配置せず、作業範囲WA外の背景BGに複数のマーカーを配置しておく。そして、第1の実施例とは逆に、後述する図8(A)のように、複数のマーカーのいずれにもマーカー遮蔽状態が検出されない場合には、検出対象物が作業範囲WA内に位置すると判定し、後述する図8(B)のように、複数のマーカーのいずれかがマーカー遮蔽状態であることが検出された場合には、検出対象物が作業範囲WA外に位置すると判定する。   On the other hand, in the second embodiment described below, as shown in FIG. 7A described later, no marker is arranged in the work area WA (and its background), and the background BG outside the work area WA is arranged. Place multiple markers. Contrary to the first embodiment, as shown in FIG. 8A described later, when the marker shielding state is not detected in any of the plurality of markers, the detection target is positioned within the work range WA. Then, when it is detected that any one of the plurality of markers is in the marker shielding state as shown in FIG. 8B described later, it is determined that the detection target is located outside the work range WA.

ここで、マーカー遮蔽状態とは、撮像部200からマーカー50を見た時に、マーカー50の全体領域又は一部の領域が、作業対象物又はエンドエフェクター310により遮蔽されている状態のことである。また、マーカー遮蔽状態とは、撮像画像を撮像する際に、作業対象物又はエンドエフェクター310によりオクルージョンが発生して、取得した撮像画像においてマーカー50が認識できない状態とも言える。例えば、前述した図2(B)や図2(C)は、マーカー遮蔽状態の例であって、図2(D)は、マーカー遮蔽状態ではない例である。   Here, the marker shielding state is a state in which the entire region or a partial region of the marker 50 is shielded by the work object or the end effector 310 when the marker 50 is viewed from the imaging unit 200. The marker occlusion state can also be said to be a state where the marker 50 cannot be recognized in the acquired captured image due to the occurrence of occlusion by the work object or the end effector 310 when capturing the captured image. For example, FIG. 2B and FIG. 2C described above are examples of the marker shielding state, and FIG. 2D is an example not of the marker shielding state.

また、マーカー50の少なくとも一部の領域とは、例えば、前述した図2(A)のように、マーカーMKが一つだけ配置されている場合には、そのマーカーMKの全体領域のうちの少なくとも一部の領域のことであり、マーカーMKの全体領域であってもよい。そして、後述する図5(A)のように、複数のマーカー(MK11〜MK53)が配置されている場合には、複数配置されたマーカーのうち、一部のマーカーの全体の領域又は一部の領域のことをいう。   Further, at least a part of the region of the marker 50 is, for example, when at least one marker MK is arranged as shown in FIG. 2A described above, at least of the entire region of the marker MK. This is a partial area, and may be the entire area of the marker MK. And when several markers (MK11-MK53) are arrange | positioned like FIG. 5 (A) mentioned later, the whole area | region of one part marker, or one part of some markers are arranged. Refers to an area.

これにより、マーカーの配置とマーカー遮蔽状態とに基づいて、検出対象物が作業範囲内に位置するか否かを判定すること等が可能になる。   Accordingly, it is possible to determine whether or not the detection target is located within the work range based on the marker arrangement and the marker shielding state.

さらに、第3の実施例では、後述する図10(A)及び図10(B)に示すように、複数の異なるマーカー(MK11〜MKij)を背景BGに配置し、検出対象物が作業範囲内に位置するか否か判定することに加えて、配置した複数のマーカーのうち、マーカー遮蔽状態のマーカーに基づいて、検出対象物の位置姿勢を特定する。   Further, in the third embodiment, as shown in FIGS. 10A and 10B described later, a plurality of different markers (MK11 to MKij) are arranged on the background BG, and the detection target is within the working range. In addition to determining whether or not the detection target is located, the position and orientation of the detection target are specified based on the marker in the marker shielding state among the plurality of arranged markers.

2.第1の実施例
次に、第1の実施例を図5(A)〜図5(F)と、図6のフローチャートを用いて説明する。
2. First Example Next, a first example will be described with reference to FIGS. 5A to 5F and the flowchart of FIG.

まず、第1の実施例では、撮像画像受付部110は、複数のマーカー50を背景(第2の領域)にアレイ配置して撮像されて得られた撮像画像を受け付ける(S201)。   First, in the first example, the captured image reception unit 110 receives a captured image obtained by imaging a plurality of markers 50 arranged in the background (second region) (S201).

例えば、図5(A)のように、作業範囲WA内での検出対象物の背景BGに複数のマーカー(MK11〜MK53)をアレイ配置しておく。そして、その状態でロボットを制御している様子を撮像部CMにより撮像して、図5(B)〜図5(E)に示すような撮像画像IM1〜IM4を取得する。   For example, as shown in FIG. 5A, a plurality of markers (MK11 to MK53) are arranged in an array on the background BG of the detection object within the work range WA. Then, the state in which the robot is controlled in that state is imaged by the imaging unit CM, and captured images IM1 to IM4 as shown in FIGS. 5B to 5E are acquired.

ここで、図2(A)のように、マーカーMKを一つだけ配置する場合には、例えば図5(F)に示すように、作業対象物OBが撮像画像IM5の右上端に映っている際に、作業対象物OBが作業範囲WA内に位置するにも関わらず、マーカー遮蔽状態が発生しない。そのため、作業対象物OBが作業範囲WA内に位置しないと判定してしまう。   Here, when only one marker MK is arranged as shown in FIG. 2A, for example, as shown in FIG. 5F, the work object OB is shown in the upper right corner of the captured image IM5. At this time, although the work object OB is located in the work range WA, the marker shielding state does not occur. For this reason, it is determined that the work object OB is not located within the work range WA.

これに対して、本例の場合には、作業範囲WAの背景BGの右上端にマーカーMK51が配置されているため、作業対象物OBが図5(F)に示すような位置にある場合でも、マーカーMK51においてマーカー遮蔽状態が発生し、作業対象物OBが作業範囲WA内に位置すると正しく判定することができる。   On the other hand, in the case of this example, since the marker MK51 is arranged at the upper right end of the background BG of the work range WA, even when the work object OB is at the position shown in FIG. It can be correctly determined that a marker shielding state occurs in the marker MK51 and the work object OB is located within the work range WA.

なお、前述したように本例では、検出対象物として作業対象物OBのみを考慮する。従って、エンドエフェクターEEによりマーカー遮蔽状態が発生することについては考慮しない。   As described above, in this example, only the work object OB is considered as the detection object. Therefore, it does not consider that the marker shielding state is generated by the end effector EE.

これにより、図2(A)のように、マーカーを一つだけ配置する場合よりも、検出対象物が作業範囲内に位置するか否かをより細かく判定すること等が可能になる。   Thereby, as shown in FIG. 2A, it is possible to determine more precisely whether or not the detection target is located within the work range than when only one marker is arranged.

次に、処理部130は、取得した撮像画像に基づいて、マーカー認識処理を行う(S202)。   Next, the processing unit 130 performs marker recognition processing based on the acquired captured image (S202).

そして、処理部130は、マーカー50の少なくとも一部の領域が、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)により遮蔽されていると判定した場合、すなわち認識できなかったマーカーがあると判定した場合には、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)が作業範囲(第1の領域)内に位置すると判定する(S203)。   When the processing unit 130 determines that at least a part of the area of the marker 50 is shielded by the detection target (work target, or in some cases, the end effector 310), that is, the marker that cannot be recognized. If it is determined that there is an object, it is determined that the detection object (work object, or in some cases, the end effector 310) is located within the work range (first region) (S203).

例えば、図5(B)の撮像画像IM1では、作業対象物OBによりマーカーMK31〜マーカーMK33の全体と、マーカーMK41〜マーカーMK43の一部の領域に、マーカー遮蔽状態が発生している。同様に、図5(C)の撮像画像IM2では、作業対象物OBによりマーカーMK51〜マーカーMK53の全体と、マーカーMK41〜マーカーMK43の一部の領域に、マーカー遮蔽状態が発生している。さらに、図5(D)の撮像画像IM3では、作業対象物OBによりマーカーMK51〜マーカーMK53の一部の領域に、マーカー遮蔽状態が発生している。そのため、図5(B)〜図5(D)のような撮像画像が得られた場合には、検出対象物が作業範囲WA内に位置すると判定する。   For example, in the captured image IM1 in FIG. 5B, the marker shielding state is generated in the entire area of the markers MK31 to MK33 and a part of the markers MK41 to MK43 by the work object OB. Similarly, in the captured image IM2 of FIG. 5C, a marker shielding state is generated in the entire area of the markers MK51 to MK53 and a partial area of the markers MK41 to MK43 by the work object OB. Furthermore, in the captured image IM3 in FIG. 5D, a marker shielding state is generated in a partial region of the markers MK51 to MK53 due to the work object OB. Therefore, when a captured image as shown in FIGS. 5B to 5D is obtained, it is determined that the detection target is located within the work range WA.

よって、これらの場合には、正常にビジュアルサーボを行うことが可能であると考えられるため、撮像画像に基づいてビジュアルサーボを行い(S205)、ビジュアルサーボが収束したか否かを判定する(S206)。そして、ビジュアルサーボが収束したと判定した場合には、処理を終了する。一方、ビジュアルサーボが収束していないと判定した場合には、ステップS201に戻り、処理を繰り返す。   Therefore, in these cases, it is considered that visual servo can be normally performed. Therefore, visual servo is performed based on the captured image (S205), and it is determined whether the visual servo has converged (S206). ). If it is determined that the visual servo has converged, the process is terminated. On the other hand, if it is determined that the visual servo has not converged, the process returns to step S201 and the process is repeated.

一方で、処理部130は、マーカー50の少なくとも一部の領域が、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)により遮蔽されていないと判定した場合、すなわち認識できなかったマーカーがないと判定した場合には、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)が作業範囲(第1の領域)外に位置すると判定する(S203)。   On the other hand, when the processing unit 130 determines that at least a part of the region of the marker 50 is not shielded by the detection target (work target, or in some cases, the end effector 310), that is, it cannot be recognized. If it is determined that there is no marker, it is determined that the detection target (work target, or possibly the end effector 310) is located outside the work range (first region) (S203).

例えば、図5(E)の撮像画像IM4では、マーカーMK11〜マーカーMK53のどのマーカーにも、作業対象物OBによるマーカー遮蔽状態が発生していない。よって、この場合には、検出対象物が作業範囲外に位置すると判定できる。   For example, in the captured image IM4 of FIG. 5E, the marker shielding state by the work object OB does not occur in any of the markers MK11 to MK53. Therefore, in this case, it can be determined that the detection target is located outside the work range.

そのため、検出対象物が作業範囲内に位置するように、ロボットを制御して移動させ(S204)、ステップS201に戻り、処理を繰り返す。   Therefore, the robot is controlled and moved so that the detection target is located within the work range (S204), the process returns to step S201, and the process is repeated.

これにより、検出対象物によるマーカー遮蔽状態の有無に基づいて、検出対象物が作業範囲内に位置するか否かを判定すること等が可能になる。前述したように、マーカーは検出対象物よりも認識が容易なため、検出対象物が作業範囲内に位置するか否かをより容易に判定すること等が可能になる。   Accordingly, it is possible to determine whether or not the detection target is located within the work range based on the presence or absence of the marker shielding state by the detection target. As described above, since the marker is easier to recognize than the detection object, it is possible to more easily determine whether or not the detection object is located within the work range.

また、前述した図5(C)や図5(D)では、撮像画像において右端のマーカーだけがマーカー遮蔽状態になっているため、このままロボットを制御した場合に、検出対象物が作業範囲外に出てしまう可能性が高いと判定することも可能である。   Further, in FIGS. 5C and 5D described above, only the rightmost marker in the captured image is in the marker occlusion state. Therefore, when the robot is controlled as it is, the detection target is out of the work range. It is also possible to determine that there is a high possibility of exiting.

3.第2の実施例
次に、図7(A)及び図7(B)と、図8(A)〜図8(C)と、図9のフローチャートを用いて、第2の実施例を説明する。
3. Second Embodiment Next, a second embodiment will be described with reference to FIGS. 7A and 7B, FIGS. 8A to 8C, and the flowchart of FIG. .

前提として、本例では作業範囲を、撮像範囲と異なる範囲として設定しておく。例えば、図7(A)に示すように、撮像部CMにより撮像される撮像範囲がPAである場合には、この撮像範囲PAの中に、作業範囲WAを設定しておく。そして、撮像部CMにより撮像された図7(B)に示す撮像画像IMでは、撮像画像IMの全体が撮像範囲PAに相当し、その中に設定された領域ROIが作業範囲WAに相当する。なお、後述するように、この領域ROIは、注目領域として撮像画像に設定されるものである。   As a premise, in this example, the work range is set as a range different from the imaging range. For example, as shown in FIG. 7A, when the imaging range captured by the imaging unit CM is PA, a work range WA is set in the imaging range PA. In the captured image IM shown in FIG. 7B captured by the imaging unit CM, the entire captured image IM corresponds to the imaging range PA, and the region ROI set therein corresponds to the work range WA. As will be described later, this region ROI is set as a region of interest in the captured image.

以上の前提の下に、撮像画像受付部110は、作業範囲(第1の領域)内にはマーカー50が非配置であり、作業範囲外にマーカー50を配置して撮像されて得られた撮像画像を受け付ける(S301)。   Under the above premise, the captured image receiving unit 110 is an image obtained by imaging with the marker 50 placed outside the work range, with the marker 50 not placed in the work range (first area). An image is received (S301).

例えば、本例では図7(A)のように、作業範囲WA内(及びその背景)にはマーカーを配置せず、作業範囲WA外の背景BGに複数のマーカーMKを配置しておく。そして、撮像部CMにより撮像を行い、図7(B)に示すような撮像画像IMを取得する。すなわち、ビジュアルサーボにより作業を行う位置の周辺には、マーカーを配置せず、撮像画像IMの中心付近にはマーカーが映らないようにし、撮像画像IMの端付近にマーカーが映るようにする。   For example, in this example, as shown in FIG. 7A, a marker is not arranged in the work area WA (and its background), but a plurality of markers MK are arranged in the background BG outside the work area WA. Then, imaging is performed by the imaging unit CM, and a captured image IM as illustrated in FIG. 7B is acquired. That is, no marker is arranged around the position where the work is performed by the visual servo, the marker is not reflected near the center of the captured image IM, and the marker is reflected near the end of the captured image IM.

これにより、処理部130は、マーカー認識処理を行った後に(S302)、以下のような判定処理を行うことが可能になる。   Thus, the processing unit 130 can perform the following determination process after performing the marker recognition process (S302).

すなわち、処理部130は、マーカー50の少なくとも一部の領域が、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)により遮蔽されていると判定した場合、つまり認識できなかったマーカーがあると判定した場合には、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)が作業範囲(第1の領域)外に位置すると判定する(S303)。   That is, when the processing unit 130 determines that at least a part of the area of the marker 50 is shielded by the detection target (work target, or in some cases, the end effector 310), that is, the marker that cannot be recognized. If it is determined that there is an object, it is determined that the detection object (work object, or in some cases, the end effector 310) is located outside the work range (first region) (S303).

例えば、図8(A)に示すような撮像画像IM1では、作業対象物OBにより、P1の位置に配置されたマーカーにおいてマーカー遮蔽状態が発生している。そのため、検出対象物が作業範囲外に位置すると判定する。   For example, in the captured image IM1 as shown in FIG. 8A, a marker shielding state occurs at the marker arranged at the position P1 due to the work object OB. Therefore, it is determined that the detection target is located outside the work range.

よって、検出対象物が作業範囲内に位置するように、ロボットを制御して移動させ(S304)、ステップS301に戻り、処理を繰り返す。   Therefore, the robot is controlled and moved so that the detection target is positioned within the work range (S304), the process returns to step S301, and the process is repeated.

一方で、処理部130は、マーカー50の少なくとも一部の領域が、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)により遮蔽されていないと判定した場合、つまり認識できなかったマーカーがないと判定した場合には、検出対象物(作業対象物、又、場合によってはエンドエフェクター310)が作業範囲(第1の領域)内に位置すると判定する(S303)。   On the other hand, when the processing unit 130 determines that at least a part of the region of the marker 50 is not shielded by the detection target (work target or the end effector 310 in some cases), that is, it cannot be recognized. If it is determined that there is no marker, it is determined that the detection target (work target, or in some cases, the end effector 310) is located within the work range (first region) (S303).

例えば、図8(B)に示すような撮像画像IM2では、作業対象物OBにより、どのマーカーにおいてもマーカー遮蔽状態が発生していない。そのため、検出対象物が作業範囲内に位置すると判定する。なお、前述したように本例でも、検出対象物としては作業対象物OBのみを考慮し、エンドエフェクターEEによりマーカー遮蔽状態が発生することについては考慮しない。   For example, in the captured image IM2 as shown in FIG. 8B, the marker occlusion state does not occur in any marker due to the work object OB. Therefore, it is determined that the detection target is located within the work range. As described above, also in this example, only the work object OB is considered as the detection object, and the occurrence of the marker shielding state by the end effector EE is not considered.

よって、図8(B)の場合には、正常にビジュアルサーボを行うことが可能であると考えられるため、撮像画像に基づいてビジュアルサーボを行い(S305)、ビジュアルサーボが収束したか否かを判定する(S306)。そして、ビジュアルサーボが収束したと判定した場合には、処理を終了する。一方、ビジュアルサーボが収束していないと判定した場合には、ステップS301に戻り、処理を繰り返す。   Therefore, in the case of FIG. 8B, since it is considered that visual servo can be normally performed, visual servo is performed based on the captured image (S305), and whether or not the visual servo has converged is determined. Determination is made (S306). If it is determined that the visual servo has converged, the process is terminated. On the other hand, if it is determined that the visual servo has not converged, the process returns to step S301 and the process is repeated.

また、前述したステップS305では、処理部130は、作業範囲(第1の領域)に対応する領域を注目領域として撮像画像に設定して、注目領域においてビジュアルサーボ又は検査処理を行う。   In step S305 described above, the processing unit 130 sets a region corresponding to the work range (first region) as a region of interest as a captured image, and performs visual servoing or inspection processing in the region of interest.

例えば、図8(B)のような撮像画像IM2が取得された場合には、図8(C)に示すような、注目領域ROIを切り出した画像に基づいて、ビジュアルサーボを行う。   For example, when the captured image IM2 as shown in FIG. 8B is acquired, visual servoing is performed based on an image obtained by cutting out the attention area ROI as shown in FIG. 8C.

これにより、撮像画像において、マーカーが映っていない領域の画像に基づいて、ビジュアルサーボ又は検査処理を行うこと等が可能になる。   This makes it possible to perform visual servoing or inspection processing based on an image of a region where no marker is shown in the captured image.

また、逆に、撮像画像の全体を見た場合には、マーカーが検出できるため、ビジュアルサーボが上手く行かず、撮像範囲の外に検出対象物が出そうになってしまっていることを検出することができる。   Conversely, when the entire captured image is viewed, the marker can be detected, so the visual servo does not go well, and it detects that the detection target is about to come out of the imaging range. be able to.

以上のように本例では、ビジュアルサーボや検査処理を行う際に、背景に配置したマーカーが物体検出処理において、邪魔になることを防ぐことができる。つまり、物体検出処理において、検出対象物の誤検出してしまったり、ビジュアルサーボが収束しなかったりすることを抑制することができる。そして、それに加えて、検出対象物によるマーカー遮蔽状態の有無に基づいて、検出対象物が作業範囲内に位置するか否かを判定すること等が可能になる。   As described above, in this example, when visual servoing or inspection processing is performed, it is possible to prevent a marker placed on the background from interfering with object detection processing. That is, in the object detection process, it is possible to prevent the detection target from being erroneously detected or the visual servo from not converging. In addition to this, it is possible to determine whether or not the detection object is located within the work range based on the presence or absence of the marker shielding state by the detection object.

4.第3の実施例
第3の実施例では、例えば図10(A)に示す背景BGに、それぞれ模様や色などが異なるマーカー(MK11〜MKij(i、jは2以上の整数))をあらかじめ配置しておく。なお、図10(A)では、図示の都合上、各マーカーを記号で示すが、実際には前述した図3(A)〜図3(D)に示すようなそれぞれ異なる模様又は色のマーカーが配置されているものとする。
4). Third Example In the third example, for example, markers (MK11 to MKij (i and j are integers of 2 or more)) having different patterns and colors are arranged in advance on the background BG shown in FIG. Keep it. In FIG. 10A, for convenience of illustration, each marker is indicated by a symbol. However, in actuality, markers with different patterns or colors as shown in FIGS. 3A to 3D described above are actually used. It is assumed that it is arranged.

そして、図10(B)に示すように、撮像画像受付部110(CM)は、複数の異なるマーカー50(MK11〜MKij)を背景BG(第2の領域)に配置して撮像されて得られた撮像画像を受け付ける。なお、図10(B)には、図示の都合上、マーカーの詳細は省略して図示するが、実際には図10(A)に示すようなマーカー(MK11〜MKij)が背景BGに配置されているものとする。   As shown in FIG. 10B, the captured image receiving unit 110 (CM) is obtained by arranging a plurality of different markers 50 (MK11 to MKij) in the background BG (second region). The captured image is received. In FIG. 10B, the details of the markers are omitted for the sake of illustration, but in reality, markers (MK11 to MKij) as shown in FIG. 10A are arranged on the background BG. It shall be.

これにより、処理部130がマーカー認識処理を行って、認識したマーカーの種類により、撮像画像に映っている領域を特定すること等が可能になる。   Thus, the processing unit 130 performs a marker recognition process, and it is possible to specify an area shown in the captured image based on the recognized marker type.

すなわち、処理部130は、撮像画像における複数の異なるマーカー50の認識処理の結果に基づいて、撮像画像の撮像方向を特定することができる。具体的には、処理部130は、マーカー認識処理において認識したマーカーの種類と、予め決めて記憶しておく各マーカーの配置位置に基づいて、撮像画像の撮像方向(撮像画像に映る領域、撮像範囲)を特定することができる。   In other words, the processing unit 130 can specify the imaging direction of the captured image based on the result of recognition processing of a plurality of different markers 50 in the captured image. Specifically, the processing unit 130 captures the captured image (the region reflected in the captured image, the captured image based on the type of the marker recognized in the marker recognition process, and the arrangement position of each marker determined and stored in advance. Range) can be specified.

例えば、図10(B)において、撮像画像の左上端に映るマーカーがMK11である場合には、撮像画像に映る領域はPA1であり、撮像方向はDR1であると特定できる。また、撮像画像の左上端に映るマーカーがMK94である場合には、撮像画像に映る領域がPA2であり、撮像方向はDR2であると特定できる。   For example, in FIG. 10B, when the marker shown at the upper left corner of the captured image is MK11, the region reflected in the captured image can be specified as PA1, and the imaging direction can be specified as DR1. Further, when the marker shown at the upper left corner of the captured image is MK94, the area reflected in the captured image is PA2, and the imaging direction can be specified as DR2.

ここで、撮像方向とは、カメラが撮像する方向を意味し、例えば、カメラの撮像レンズの中心点を通る光軸の方向のことをいう。   Here, the imaging direction means a direction in which the camera captures an image, for example, the direction of the optical axis passing through the center point of the imaging lens of the camera.

これにより、撮像部200の向き(撮像方向)を調整すること等が可能になる。   Thereby, it is possible to adjust the orientation (imaging direction) of the imaging unit 200 and the like.

さらに、処理部130は、撮像画像における複数のマーカー50の認識処理の結果に基づいて、ロボット300の作業対象物又はロボット300のエンドエフェクター310の位置姿勢の特定処理を行うことができる。なお、位置姿勢とは、位置及び姿勢のことをいう。   Further, the processing unit 130 can perform a process of specifying the position and orientation of the work object of the robot 300 or the end effector 310 of the robot 300 based on the recognition processing result of the plurality of markers 50 in the captured image. Note that the position and orientation refers to the position and orientation.

例えば、図10(A)に示すように複数の異なるマーカー(MK11〜MKij)が背景BGに配置されている場合に、マーカー認識処理を行った結果、図11(A)に示すように、領域AR1内のマーカーだけが認識できた場合には、認識できなかったマーカーが配置されている領域に対応する位置に、検出対象物OBが位置することが特定できる。   For example, when a plurality of different markers (MK11 to MKij) are arranged on the background BG as shown in FIG. 10A, as a result of performing the marker recognition process, as shown in FIG. When only the marker in AR1 can be recognized, it can be specified that the detection object OB is located at a position corresponding to the area where the marker that could not be recognized is arranged.

そして、撮像画像においてマーカーが認識できない領域は、検出対象物の位置姿勢によって変わる。例えば、検出対象物OBが図11(B)のように斜めに傾いて位置している場合には、領域AR2と領域AR3に配置されたマーカーだけが認識できる。そのため、認識できなかったマーカーの種類に基づいて、図11(B)のように検出対象物OBが斜めに傾いて位置していることが特定できる。   The region where the marker cannot be recognized in the captured image varies depending on the position and orientation of the detection target. For example, when the detection object OB is tilted as shown in FIG. 11B, only the markers arranged in the areas AR2 and AR3 can be recognized. Therefore, based on the type of marker that could not be recognized, it can be specified that the detection object OB is inclined and positioned as shown in FIG.

さらに、撮像画像においてマーカーが認識できない領域は、撮像部200に対する奥行き方向の位置によっても変わる。具体的には、検出対象物が撮像部200と近い手前に位置する場合の方が、マーカーが検出できない領域が広くなる。例えば、検出対象物OBが図11(C)のように手前に位置する場合には、領域AR4に配置されたマーカーだけが認識でき、逆に、検出対象物OBが図11(D)のように奥に位置する場合には、領域AR5に配置されたマーカーだけが認識できる。よって、検出対象物の奥行き方向での位置も特定することができる。   Further, the region where the marker cannot be recognized in the captured image also varies depending on the position in the depth direction with respect to the imaging unit 200. Specifically, the region where the marker cannot be detected becomes wider when the detection target is located in front of the imaging unit 200. For example, when the detection object OB is positioned at the front as shown in FIG. 11C, only the marker arranged in the area AR4 can be recognized, and conversely, the detection object OB is as shown in FIG. 11D. If it is located in the back, only the marker placed in the area AR5 can be recognized. Therefore, the position of the detection target in the depth direction can also be specified.

これにより、実際の検出対象物の位置姿勢と、検出対象物の目標位置姿勢とを比較すること等が可能になる。そして、例えばこの比較結果を用いて、ロボットを移動させたり、ビジュアルサーボの結果が期待通りであるかを検査したりすること等が可能になる。すなわち、背景に配置した複数のマーカーのうち、どのマーカーが認識できる時にビジュアルサーボが収束した状態になるかを、事前に知っていれば、撮像画像に基づいて、ビジュアルサーボが収束しているか否かを判定することが可能になる。   This makes it possible to compare the actual position and orientation of the detection object with the target position and orientation of the detection object. Then, for example, using this comparison result, it is possible to move the robot, check whether the result of the visual servo is as expected, or the like. That is, if you know in advance which of the multiple markers placed in the background the visual servo will converge when it can be recognized, whether the visual servo has converged based on the captured image It becomes possible to determine.

具体的に、ビジュアルサーボの結果の検査処理を行う場合の処理の流れを、図12のフローチャートを用いて説明する。   Specifically, the flow of processing when the visual servo result inspection processing is performed will be described with reference to the flowchart of FIG.

まず、処理部130がビジュアルサーボを行い(S401)、ビジュアルサーボが収束したか否かを判定する(S402)。そして、ビジュアルサーボが収束していないと判定した場合には、ビジュアルサーボが収束するまで処理を繰り返す。   First, the processing unit 130 performs visual servoing (S401), and determines whether the visual servo has converged (S402). If it is determined that the visual servo has not converged, the process is repeated until the visual servo has converged.

一方で、ビジュアルサーボが収束したと判定した場合には、撮像画像受付部110が、図10(B)に示すように、複数の異なるマーカー50(MK11〜MKij)を背景BGに配置して撮像して得られた撮像画像を取得する(S403)。   On the other hand, when it is determined that the visual servo has converged, the captured image reception unit 110 captures images by arranging a plurality of different markers 50 (MK11 to MKij) on the background BG, as shown in FIG. The captured image obtained in this way is acquired (S403).

そして、処理部130は、マーカー認識処理を行い(S404)、マーカー認識処理の結果、認識できなかったマーカーの配置位置が、ビジュアルサーボが正しく収束した時に、マーカー遮蔽状態が発生するマーカーの配置位置と一致している否かを判定する検査処理を行う(S405)。   Then, the processing unit 130 performs a marker recognition process (S404). As a result of the marker recognition process, the marker placement position where the marker occlusion state occurs when the marker placement position that could not be recognized converges correctly in the visual servo. In step S405, an inspection process is performed to determine whether or not they match.

そして、検査処理において、認識できなかったマーカーの配置位置が、ビジュアルサーボが正しく収束した時に、マーカー遮蔽状態が発生するマーカーの配置位置と一致していると判定した場合には、処理を終了する。一方、配置位置が一致していないと判定した場合には、ステップS401に戻り、再度ビジュアルサーボを行う。以上が、一連の処理の流れである。   In the inspection process, when it is determined that the marker arrangement position that could not be recognized matches the marker arrangement position where the marker occlusion state occurs when the visual servo converges correctly, the process ends. . On the other hand, if it is determined that the arrangement positions do not match, the process returns to step S401 to perform visual servo again. The above is the flow of a series of processes.

なお、本例では、図10(A)に示すように、複数の異なるマーカーがアレイ配置されている場合について説明したが、一つのマーカーにおいて、マーカーのどの領域が遮蔽されているかを検出できる場合には、一つのマーカーのマーカー遮蔽状態に基づいて、検出対象物の位置姿勢の特定処理を行ってもよい。   In this example, as shown in FIG. 10A, the case where a plurality of different markers are arranged in the array has been described. However, when one marker can detect which region of the marker is shielded. Alternatively, the position and orientation of the detection target may be specified based on the marker shielding state of one marker.

また、以上の本実施形態で用いる撮像部(カメラ)200は、例えばCCD(charge-coupled device)等の撮像素子と光学系とを含む。撮像部200は、例えば天井や作業台の上などに、ビジュアルサーボにおける検出対象物(作業対象物又はロボット300のエンドエフェクター310)が、撮像部200の画角内に入るような角度で配置される。そして、撮像部200は、撮像画像の情報を制御装置100等に出力する。ただし、本実施形態においては、撮像画像の情報をそのまま制御装置100に出力するものとするが、これに限定されるものではない。例えば、撮像部200は、画像処理用等に用いられるデバイス(プロセッサー)を含むことができる。   Further, the imaging unit (camera) 200 used in the above-described embodiment includes an imaging element such as a charge-coupled device (CCD) and an optical system. The imaging unit 200 is arranged at an angle such that the detection target (work target or the end effector 310 of the robot 300) in the visual servo is within the angle of view of the imaging unit 200, for example, on a ceiling or a work table. The Then, the imaging unit 200 outputs information of the captured image to the control device 100 or the like. However, in the present embodiment, the information of the captured image is output as it is to the control device 100, but the present invention is not limited to this. For example, the imaging unit 200 can include a device (processor) used for image processing or the like.

5.ロボットシステム及びロボット
次に、図13(A)及び図13(B)に、本実施形態の制御装置100が適用されるロボットシステム及びロボット300の構成例を示す。図13(A)及び図13(B)のどちらの場合にも、ロボット300は、エンドエフェクター310を有する。また、ロボットシステムは、ロボット300と、マーカー50と、撮像部200と、を含む。
5. Robot System and Robot Next, FIGS. 13A and 13B show a configuration example of the robot system and the robot 300 to which the control device 100 of the present embodiment is applied. In both cases of FIG. 13A and FIG. 13B, the robot 300 includes an end effector 310. Further, the robot system includes a robot 300, a marker 50, and an imaging unit 200.

エンドエフェクター310とは、ワーク(作業対象物)を把持したり、持ち上げたり、吊り上げたり、吸着させたり、ワークに加工を施したりするために、アームのエンドポイントに取り付ける部品のことをいう。エンドエフェクター310は、例えばハンド(把持部)であってもよいし、フックであってもよいし、吸盤等であってもよい。さらに、1本のアームに対して、複数のエンドエフェクターを設けても良い。なお、アームとは、ロボット300のパーツであって、一つ以上の関節を含む可動パーツのことをいう。   The end effector 310 is a component attached to an end point of an arm in order to grip, lift, lift, attract, or process a workpiece (work object). The end effector 310 may be, for example, a hand (gripping unit), a hook, a suction cup, or the like. Further, a plurality of end effectors may be provided for one arm. The arm is a part of the robot 300 and refers to a movable part including one or more joints.

例えば、図13(A)のロボットは、ロボット本体300(ロボット)と制御装置100とが別体に構成されている。この場合には、制御装置100の一部又は全部の機能は、例えばPC(Personal Computer)により実現される。   For example, in the robot of FIG. 13A, the robot main body 300 (robot) and the control device 100 are configured separately. In this case, some or all of the functions of the control device 100 are realized by, for example, a PC (Personal Computer).

また、本実施形態のロボットは図13(A)の構成に限定されず、図13(B)のようにロボット本体300と制御装置100とが一体に構成されていてもよい。すなわち、ロボット300は、制御装置100を含んでいても良い。具体的には図13(B)に示したように、ロボット300は、ロボット本体(アーム及びエンドエフェクター310を有する)及びロボット本体を支えるベースユニット部を有し、当該ベースユニット部に制御装置100が格納されるものであってもよい。図13(B)のロボット300には、ベースユニット部に車輪等が設けられ、ロボット全体が移動可能な構成となっている。なお、図13(A)は単腕型の例であるが、ロボット300は図13(B)に示すように双腕型等の多腕型のロボットであってもよい。また、ロボット300は、人手により移動させられるものであってもよいし、車輪を駆動させるモーターを設け、当該モーターを制御装置100により制御することにより、移動させられるものであってもよい。また、制御装置100は、図13(B)のようにロボット300の下に設けられたベースユニット部に設けられるとは限られない。   Further, the robot according to the present embodiment is not limited to the configuration shown in FIG. 13A, and the robot body 300 and the control device 100 may be configured integrally as shown in FIG. 13B. That is, the robot 300 may include the control device 100. Specifically, as illustrated in FIG. 13B, the robot 300 includes a robot body (having an arm and an end effector 310) and a base unit portion that supports the robot body, and the control device 100 is included in the base unit portion. May be stored. The robot 300 in FIG. 13B has a structure in which wheels and the like are provided in the base unit portion so that the entire robot can move. Although FIG. 13A shows an example of a single arm type, the robot 300 may be a multi-arm type robot such as a double arm type as shown in FIG. 13B. The robot 300 may be moved manually, or may be moved by providing a motor for driving wheels and controlling the motor by the control device 100. Moreover, the control apparatus 100 is not necessarily provided in the base unit part provided under the robot 300 as shown in FIG.

また、図14に示すように、制御装置100の機能は、有線及び無線の少なくとも一方を含むネットワーク400を介して、ロボット300と通信接続されたサーバー500により実現されてもよい。   As illustrated in FIG. 14, the function of the control device 100 may be realized by a server 500 that is connected to the robot 300 via a network 400 including at least one of wired and wireless.

或いは本実施形態では、本発明の制御装置の処理の一部を、サーバー500側の制御装置が行ってもよい。この場合には、ロボット300側に設けられた制御装置との分散処理により、当該処理を実現する。なお、ロボット300側の制御装置は、例えばロボット300に設置される端末装置330(制御部)により実現される。   Alternatively, in the present embodiment, a part of the processing of the control device of the present invention may be performed by the control device on the server 500 side. In this case, the processing is realized by distributed processing with the control device provided on the robot 300 side. The control device on the robot 300 side is realized by a terminal device 330 (control unit) installed in the robot 300, for example.

そして、この場合に、サーバー500側の制御装置は、本発明の制御装置における各処理のうち、サーバー500の制御装置に割り当てられた処理を行う。一方、ロボット300に設けられた制御装置は、本発明の制御装置の各処理のうち、ロボット300の制御装置に割り当てられた処理を行う。なお、本発明の制御装置の各処理は、サーバー500側に割り当てられた処理であってもよいし、ロボット300側に割り当てられた処理であってもよい。   In this case, the control device on the server 500 side performs a process assigned to the control device of the server 500 among the processes in the control device of the present invention. On the other hand, the control device provided in the robot 300 performs the process assigned to the control device of the robot 300 among the processes of the control device of the present invention. Each process of the control apparatus of the present invention may be a process assigned to the server 500 side or a process assigned to the robot 300 side.

これにより、例えば端末装置330よりも処理能力の高いサーバー500が、処理量の多い処理を行うこと等が可能になる。さらに、例えばサーバー500が各ロボット300の動作を一括して制御することができ、例えば複数のロボット300に協調動作をさせること等が容易になる。   Thereby, for example, the server 500 having a higher processing capability than the terminal device 330 can perform processing with a large processing amount. Further, for example, the server 500 can collectively control the operations of the robots 300, and for example, it is easy to cause a plurality of robots 300 to perform cooperative operations.

また近年は、多品種少数の部品を製造することが増えてきている。そして、製造する部品の種類を変更する場合には、ロボットが行う動作を変更する必要がある。図14に示すような構成であれば、複数のロボット300の各ロボットへ教示作業をし直さなくても、サーバー500が一括して、ロボット300が行う動作を変更すること等が可能になる。   In recent years, the production of a small number of various types of parts has been increasing. And when changing the kind of components to manufacture, it is necessary to change the operation | movement which a robot performs. With the configuration as shown in FIG. 14, it is possible to change the operation performed by the robot 300 in a batch without the server 500 performing the teaching operation on each robot of the plurality of robots 300 again.

さらに、図14に示すような構成であれば、各ロボット300に対して一つの制御装置100を設ける場合に比べて、制御装置100のソフトウェアアップデートを行う際の手間を大幅に減らすこと等が可能になる。   Furthermore, with the configuration as shown in FIG. 14, it is possible to significantly reduce the trouble of performing software update of the control device 100 as compared with the case where one control device 100 is provided for each robot 300. become.

6.ビジュアルサーボ
ここでは、ビジュアルサーボの概要と、位置ベースビジュアルサーボの流れ、特徴ベースビジュアルサーボの流れについて説明する。
6). Visual Servo Here, the outline of visual servo, the flow of position-based visual servo, and the flow of feature-based visual servo will be described.

ビジュアルサーボとは、目標物の位置の変化を視覚情報として計測し、それをフィードバック情報として用いることによって目標物を追跡するサーボ系の一種である。ビジュアルサーボは、サーボ系への入力情報(制御量)によって、位置ベースビジュアルサーボと特徴ベースビジュアルサーボの二つに大別される。位置ベースビジュアルサーボは、物体の位置情報や姿勢情報がサーボ系への入力情報となり、特徴ベースビジュアルサーボは、画像の特徴量がサーボ系への入力情報となる。他にも、位置ベースと特徴ベースをハイブリッドした手法もある。本発明で扱うビジュアルサーボは、これら全ての手法を対象とする。   The visual servo is a kind of servo system that tracks a target by measuring a change in the position of the target as visual information and using it as feedback information. Visual servo is roughly classified into position-based visual servo and feature-based visual servo according to input information (control amount) to the servo system. In the position-based visual servo, the position information and posture information of the object are input information to the servo system, and in the feature-based visual servo, the feature amount of the image is input information to the servo system. In addition, there is a method that hybridizes the position base and the feature base. The visual servo handled in the present invention covers all these methods.

これらのビジュアルサーボは、参照画像と撮像画像を元にサーボ系への入力情報を求める点で共通している。   These visual servos are common in that the input information to the servo system is obtained based on the reference image and the captured image.

6.1 位置ベースビジュアルサーボの流れ
まず、図15のフローチャートにおいて、位置ベースビジュアルサーボの流れを示す。位置ベースビジュアルサーボでは、まず参照画像を設定する(S1)。ここで、参照画像とは、目標画像やゴール画像とも呼ばれ、ビジュアルサーボの制御目標となる画像であり、ロボット300の目標状態を表す画像をいう。すなわち、参照画像とは、ロボット300の目標位置や目標姿勢を表す画像、もしくはロボット300が目標位置に位置する状態を表す画像である。また、参照画像はあらかじめ用意しておき、記憶部に記憶しておく必要がある。
6.1 Flow of Position-Based Visual Servo First, the flow of position-based visual servo is shown in the flowchart of FIG. In the position-based visual servo, first, a reference image is set (S1). Here, the reference image is also referred to as a target image or a goal image, and is an image serving as a visual servo control target, which is an image representing the target state of the robot 300. That is, the reference image is an image that represents the target position or target posture of the robot 300 or an image that represents a state where the robot 300 is located at the target position. Also, the reference image must be prepared in advance and stored in the storage unit.

次に、撮像部200によって作業スペースを撮像し、撮像画像を取得する(S2)。撮像画像は、作業スペースの現在の状態を表しており、撮像画像内にロボット300やワークが映りこんでいる場合には、ロボット300やワークの現在の状態を表している。なお、撮像部200の性能によっては処理遅延が生じるが、ここでは、処理遅延が生じている場合でも、撮像画像には現在の状態が映されているものとして扱う。   Next, a work space is imaged by the imaging unit 200, and a captured image is acquired (S2). The captured image represents the current state of the work space. When the robot 300 and the workpiece are reflected in the captured image, the captured image represents the current state of the robot 300 and the workpiece. Although a processing delay occurs depending on the performance of the imaging unit 200, it is assumed here that the captured image shows the current state even when the processing delay occurs.

例えば、図16(A)に参照画像RIMの具体例を、図16(B)に撮像画像PIMの具体例を示す。撮像画像PIMにおいて、ロボットRBはアームAMとハンドHD(もしくはエンドポイントEP)を上方へ向けているが、参照画像RIMでは、ロボットRBはアームAMを折り曲げて、ハンドHDをワークWKに近づけている。したがって、この具体例においては、ロボットRBのアームAMを折り曲げ、ハンドHDをワークWKに近づけるようにロボットRBを制御することになる。   For example, FIG. 16A shows a specific example of the reference image RIM, and FIG. 16B shows a specific example of the captured image PIM. In the captured image PIM, the robot RB points the arm AM and the hand HD (or end point EP) upward, but in the reference image RIM, the robot RB bends the arm AM and brings the hand HD closer to the work WK. . Therefore, in this specific example, the robot RB is controlled so that the arm AM of the robot RB is bent and the hand HD is brought close to the work WK.

次に、制御指令を生成する(S3)。例えば、制御指令生成は、参照画像と撮像画像に基づいて、座標変換の一つであるホモグラフィー等を用いることにより行われる。この場合には、ホモグラフィー行列を求め、ホモグラフィー行列からロボット300の制御信号として速度指令を生成する。   Next, a control command is generated (S3). For example, the control command generation is performed by using homography, which is one of coordinate transformations, based on the reference image and the captured image. In this case, a homography matrix is obtained, and a speed command is generated as a control signal for the robot 300 from the homography matrix.

ここで、制御信号(制御指令)とは、ロボット300を制御するための情報を含む信号のことをいう。例えば、制御信号としては速度指令などがある。また、速度指令とは、ロボット300の各部を制御するための情報として、ロボット300のアームのエンドポイント等の移動速度や回転速度を与える指令の方法を指す。   Here, the control signal (control command) refers to a signal including information for controlling the robot 300. For example, the control signal includes a speed command. The speed command refers to a command method for giving a moving speed or a rotating speed of an end point or the like of the arm of the robot 300 as information for controlling each part of the robot 300.

そして、生成された制御信号に基づいて、制御量(ここではロボット300の位置や姿勢)が目標値に収束したか否かを判定する(S4)。例えば、ホモグラフィーを用いる場合において、速度指令により表される速度ベクトルが0である場合には、制御量である位置や姿勢が目標状態に到達したとみなすことができるため、制御量が目標値に収束したと判定し、速度ベクトルが0でない場合には、制御量が目標値に収束していないと判定する。ここで、収束とは、目標値に限りなく近づくこと、又は目標値に到達することを意味する。   Then, based on the generated control signal, it is determined whether or not the control amount (here, the position and posture of the robot 300) has converged to the target value (S4). For example, in the case of using homography, when the velocity vector represented by the velocity command is 0, it can be considered that the position or orientation that is the controlled variable has reached the target state. If the speed vector is not 0, it is determined that the control amount has not converged to the target value. Here, convergence means approaching the target value as much as possible, or reaching the target value.

制御量が目標値に収束したと判定した場合にはビジュアルサーボを終了する。一方、制御量が目標値に収束していないと判定した場合には、処理部130はロボット300に制御指令を送出する(S5)。   If it is determined that the control amount has converged to the target value, the visual servo is terminated. On the other hand, if it is determined that the control amount has not converged to the target value, the processing unit 130 sends a control command to the robot 300 (S5).

位置ベースビジュアルサーボでは、制御量が目標値に収束するまで以上の処理を繰り返す。   In the position-based visual servo, the above processing is repeated until the control amount converges to the target value.

6.2 特徴ベースビジュアルサーボの流れ
次に、図17のフローチャートにおいて、特徴ベースビジュアルサーボの流れを示す。位置ベースビジュアルサーボと同様に、まず参照画像を設定し(S10)、次に、撮像部200によって作業スペースを撮像し、撮像画像を取得する(S11)。なお、特徴ベースビジュアルサーボを用いる場合には、参照画像を設定する際に参照画像の特徴抽出を行い、特徴量を算出しておくことが望ましい。または、参照画像の特徴を抽出した参照画像情報を記憶部に記憶しておいてもよい。画像の特徴抽出については、例えば、コナー検出やガウスフィルター等を用いて行なう。
6.2 Flow of Feature-Based Visual Servo Next, the flow of feature-based visual servo is shown in the flowchart of FIG. As with the position-based visual servo, a reference image is first set (S10), and then the work space is imaged by the imaging unit 200 to obtain a captured image (S11). Note that when feature-based visual servoing is used, it is desirable to perform feature extraction of the reference image and calculate the feature amount when setting the reference image. Alternatively, reference image information obtained by extracting features of the reference image may be stored in the storage unit. The feature extraction of the image is performed using, for example, corner detection or a Gaussian filter.

次に、撮像画像の特徴を抽出する(S12)。なお、参照画像の特徴抽出は、参照画像設定の際に行っておくことが望ましいが、本ステップで行ってもよい。特徴抽出では、ビジュアルサーボ系への入力情報(制御量)として、画像の特徴量を求める。   Next, the feature of the captured image is extracted (S12). Note that the feature extraction of the reference image is preferably performed at the time of setting the reference image, but may be performed in this step. In the feature extraction, an image feature amount is obtained as input information (control amount) to the visual servo system.

そして、画像の特徴量に基づいて、参照画像と撮像画像が一致するか否かを比較する(S13)。画像が一致すると判定した場合(S14)には、ビジュアルサーボを終了する。一方、画像が一致しないと判定した場合(S14)には、制御指令を生成し(S15)、ロボット300に制御指令を送出する(S16)。   Then, based on the feature amount of the image, it is compared whether or not the reference image matches the captured image (S13). If it is determined that the images match (S14), the visual servo is terminated. On the other hand, if it is determined that the images do not match (S14), a control command is generated (S15), and the control command is sent to the robot 300 (S16).

特徴ベースビジュアルサーボでは、制御量が目標値に収束するまで以上の処理を繰り返す。   In the feature-based visual servo, the above processing is repeated until the control amount converges to the target value.

なお、本実施形態の制御装置、ロボットシステム及びロボット等は、その処理の一部または大部分をプログラムにより実現してもよい。この場合には、CPU等のプロセッサーがプログラムを実行することで、本実施形態の制御装置、ロボットシステム及びロボット等が実現される。具体的には、情報記憶媒体に記憶されたプログラムが読み出され、読み出されたプログラムをCPU等のプロセッサーが実行する。ここで、情報記憶媒体(コンピューターにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(DVD、CD等)、HDD(ハードディスクドライブ)、或いはメモリー(カード型メモリー、ROM等)などにより実現できる。そして、CPU等のプロセッサーは、情報記憶媒体に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち、情報記憶媒体には、本実施形態の各部としてコンピューター(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピューターに実行させるためのプログラム)が記憶される。   Note that a part or most of the processing of the control device, the robot system, the robot, and the like of the present embodiment may be realized by a program. In this case, a control device, a robot system, a robot, and the like according to the present embodiment are realized by a processor such as a CPU executing a program. Specifically, a program stored in the information storage medium is read, and a processor such as a CPU executes the read program. Here, the information storage medium (computer-readable medium) stores programs, data, and the like, and functions as an optical disk (DVD, CD, etc.), HDD (hard disk drive), or memory (card type). It can be realized by memory, ROM, etc. A processor such as a CPU performs various processes according to the present embodiment based on a program (data) stored in the information storage medium. That is, in the information storage medium, a program for causing a computer (an apparatus including an operation unit, a processing unit, a storage unit, and an output unit) to function as each unit of the present embodiment (a program for causing the computer to execute processing of each unit) Is memorized.

以上のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、制御装置、ロボットシステム及びロボット等の構成、動作も本実施形態で説明したものに限定されず、種々の変形実施が可能である。   Although the present embodiment has been described in detail as described above, it will be easily understood by those skilled in the art that many modifications can be made without departing from the novel matters and effects of the present invention. Accordingly, all such modifications are intended to be included in the scope of the present invention. For example, a term described at least once together with a different term having a broader meaning or the same meaning in the specification or the drawings can be replaced with the different term in any part of the specification or the drawings. Further, the configurations and operations of the control device, the robot system, and the robot are not limited to those described in the present embodiment, and various modifications can be made.

50 マーカー、100 制御装置、110 撮像画像受付部、
130 処理部、200 撮像部、300 ロボット、310 エンドエフェクター、
330 端末装置、400 ネットワーク、500 サーバー
50 markers, 100 control device, 110 captured image reception unit,
130 processing unit, 200 imaging unit, 300 robot, 310 end effector,
330 terminal devices, 400 networks, 500 servers

Claims (15)

第1の領域が撮像部により撮像されて得られる撮像画像を受け付ける撮像画像受付部と、
前記第1の領域で動作するエンドエフェクターを備えるロボットを動作させる処理部と、
を含み、
前記処理部は、
前記撮像画像に映るマーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域内にあるか否かを判定することを特徴する制御装置。
A captured image receiving unit that receives a captured image obtained by imaging the first region by the imaging unit;
A processing unit for operating a robot including an end effector operating in the first region;
Including
The processor is
A control device that determines whether or not the end effector is in the first region based on information of a marker reflected in the captured image.
請求項1において、
前記撮像画像受付部は、
少なくとも一つの前記マーカーを第2の領域に配置して撮像されて得られた前記撮像画像を受け付け、
前記処理部は、
前記撮像画像に基づいて、前記第2の領域に配置された前記マーカーの認識処理を行い、前記認識処理の結果に基づいて、前記エンドエフェクターが前記第1の領域内に位置するか否かを判定して、ビジュアルサーボ又は検査処理を行うことを特徴とする制御装置。
In claim 1,
The captured image reception unit
Receiving the captured image obtained by imaging at least one of the markers arranged in the second region;
The processor is
Based on the captured image, recognition processing of the marker arranged in the second area is performed, and based on the result of the recognition processing, whether or not the end effector is positioned in the first area. A control device that performs visual servoing or inspection processing by determining.
請求項2において、
前記処理部は、
前記マーカーの前記認識処理を行うことにより、前記マーカーの少なくとも一部の領域が、前記ロボットの作業対象物又は前記エンドエフェクターにより遮蔽されている状態であるマーカー遮蔽状態を検出し、検出した前記マーカー遮蔽状態に基づいて、前記エンドエフェクターが前記第1の領域内に位置するか否かを判定することを特徴とする制御装置。
In claim 2,
The processor is
By performing the recognition process of the marker, a marker shielding state in which at least a part of the marker is shielded by the robot work object or the end effector is detected, and the detected marker A control device that determines whether or not the end effector is located in the first region based on a shielding state.
請求項3において、
前記処理部は、
前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていると判定した場合には、前記エンドエフェクターが前記第1の領域内に位置すると判定し、
前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていないと判定した場合には、前記エンドエフェクターが前記第1の領域外に位置すると判定することを特徴とする制御装置。
In claim 3,
The processor is
If it is determined that at least a partial area of the marker is shielded by the work object or the end effector, it is determined that the end effector is located within the first area;
When it is determined that at least a part of the area of the marker is not shielded by the work object or the end effector, it is determined that the end effector is located outside the first area. Control device.
請求項2乃至4のいずれかにおいて、
前記第2の領域は、
前記撮像部の位置から前記撮像画像の撮像方向に向かって、前記第1の領域の後方に位置する領域であることを特徴とする制御装置。
In any of claims 2 to 4,
The second region is
The control device, wherein the control device is a region located behind the first region from the position of the imaging unit toward the imaging direction of the captured image.
請求項3において、
前記撮像画像受付部は、
前記第1の領域内には前記マーカーが非配置であり、前記第1の領域外の前記第2の領域に前記マーカーを配置して撮像されて得られた前記撮像画像を受け付け、
前記処理部は、
前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていると判定した場合には、前記エンドエフェクターが前記第1の領域外に位置すると判定し、
前記マーカーの少なくとも一部の領域が、前記作業対象物又は前記エンドエフェクターにより遮蔽されていないと判定した場合には、前記エンドエフェクターが前記第1の領域内に位置すると判定することを特徴とする制御装置。
In claim 3,
The captured image reception unit
The marker is non-arranged in the first region, and the captured image obtained by imaging by placing the marker in the second region outside the first region is received,
The processor is
If it is determined that at least a partial area of the marker is shielded by the work object or the end effector, it is determined that the end effector is located outside the first area;
When it is determined that at least a part of the area of the marker is not shielded by the work object or the end effector, it is determined that the end effector is located in the first area. Control device.
請求項2乃至6のいずれかにおいて、
前記処理部は、
前記第1の領域に対応する領域を注目領域として前記撮像画像に設定して、前記注目領域において前記ビジュアルサーボ又は前記検査処理を行うことを特徴とする制御装置。
In any one of Claims 2 thru | or 6.
The processor is
A control apparatus, wherein an area corresponding to the first area is set as an attention area in the captured image, and the visual servo or the inspection process is performed in the attention area.
請求項2乃至7のいずれかにおいて、
前記撮像画像受付部は、
複数のマーカーを前記第2の領域にアレイ配置して撮像されて得られた前記撮像画像を受け付けることを特徴とする制御装置。
In any one of Claims 2 thru | or 7,
The captured image reception unit
A control apparatus that receives the captured image obtained by imaging a plurality of markers arranged in an array in the second region.
請求項2乃至8のいずれかにおいて、
前記撮像画像受付部は、
複数の異なるマーカーを前記第2の領域に配置して撮像されて得られた前記撮像画像を受け付けることを特徴とする制御装置。
In any of claims 2 to 8,
The captured image reception unit
A control apparatus that receives the captured image obtained by imaging a plurality of different markers arranged in the second region.
請求項9において、
前記処理部は、
前記撮像画像における前記複数の異なるマーカーの前記認識処理の結果に基づいて、前記撮像画像の撮像方向を特定することを特徴とする制御装置。
In claim 9,
The processor is
A control device that identifies an imaging direction of the captured image based on a result of the recognition processing of the plurality of different markers in the captured image.
請求項8乃至10のいずれかにおいて、
前記処理部は、
前記撮像画像における前記複数のマーカーの前記認識処理の結果に基づいて、前記ロボットの作業対象物又は前記ロボットの前記エンドエフェクターの位置姿勢の特定処理を行うことを特徴とする制御装置。
In any one of Claims 8 thru | or 10.
The processor is
A control device that performs a process of specifying a position and orientation of a work object of the robot or the end effector of the robot based on a result of the recognition process of the plurality of markers in the captured image.
請求項2乃至11のいずれかにおいて、
前記処理部は、
前記ビジュアルサーボとして、前記撮像画像が参照画像に一致又は近付くように前記ロボットを制御する処理を行うことを特徴とする制御装置。
In any of claims 2 to 11,
The processor is
A control apparatus that performs processing for controlling the robot so that the captured image matches or approaches a reference image as the visual servo.
第1の領域で動作するエンドエフェクターを備えるロボットと、
マーカーと、
前記第1の領域を撮像する撮像部と、
を含み、
前記ロボットは、
前記撮像部が撮像した撮像画像に映る前記マーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域にあるか否かを判定することを特徴するロボットシステム。
A robot comprising an end effector operating in a first region;
Markers,
An imaging unit for imaging the first region;
Including
The robot is
A robot system that determines whether or not the end effector is in the first region based on information of the marker reflected in a captured image captured by the imaging unit.
第1の領域で動作するエンドエフェクターを含み、
撮像部が撮像した撮像画像に映るマーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域にあるか否かを判定することを特徴とするロボット。
Including an end effector operating in a first region;
A robot that determines whether or not the end effector is in the first region based on information of a marker reflected in a captured image captured by an imaging unit.
第1の領域で動作するエンドエフェクターを備えるロボットを動作させるロボット制御方法であって、
マーカーを撮像することと、
撮像画像に映るマーカーの情報に基づいて、前記エンドエフェクターが前記第1の領域にあるか否かを判定することと、
を含むロボット制御方法。
A robot control method for operating a robot having an end effector operating in a first region,
Imaging the marker;
Determining whether the end effector is in the first region based on information of a marker reflected in a captured image;
A robot control method including:
JP2014010149A 2014-01-23 2014-01-23 Control device, robot system, robot and robot control method Pending JP2015136763A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014010149A JP2015136763A (en) 2014-01-23 2014-01-23 Control device, robot system, robot and robot control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014010149A JP2015136763A (en) 2014-01-23 2014-01-23 Control device, robot system, robot and robot control method

Publications (1)

Publication Number Publication Date
JP2015136763A true JP2015136763A (en) 2015-07-30

Family

ID=53768135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014010149A Pending JP2015136763A (en) 2014-01-23 2014-01-23 Control device, robot system, robot and robot control method

Country Status (1)

Country Link
JP (1) JP2015136763A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019098431A (en) * 2017-11-29 2019-06-24 株式会社東芝 Information processing apparatus and sorting system
JP7054036B1 (en) 2021-07-09 2022-04-13 株式会社不二越 Robot vision system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019098431A (en) * 2017-11-29 2019-06-24 株式会社東芝 Information processing apparatus and sorting system
JP7062418B2 (en) 2017-11-29 2022-05-16 株式会社東芝 Information processing equipment and sorting system
JP7054036B1 (en) 2021-07-09 2022-04-13 株式会社不二越 Robot vision system
WO2023282032A1 (en) * 2021-07-09 2023-01-12 株式会社不二越 Robot vision system
JP2023010327A (en) * 2021-07-09 2023-01-20 株式会社不二越 robot vision system

Similar Documents

Publication Publication Date Title
JP2012254518A (en) Robot control system, robot system and program
CN111452040B (en) System and method for associating machine vision coordinate space in a pilot assembly environment
CN109807885B (en) Visual calibration method and device for manipulator and intelligent terminal
CN110163912B (en) Two-dimensional code pose calibration method, device and system
JP6299234B2 (en) Display control method, information processing apparatus, and display control program
JP4878385B2 (en) Object control system, object control method, program, and rotation center position specifying device
CN107705304B (en) Positioning method and device
JP6424432B2 (en) Control device, robot system, robot and robot control method
CN111195897A (en) Calibration method and device for mechanical arm system
JP2014188617A (en) Robot control system, robot, robot control method, and program
JP6208419B2 (en) Calculation device, transfer robot system, and calculation method
CN114080590A (en) Robotic bin picking system and method using advanced scanning techniques
JP6390088B2 (en) Robot control system, robot, program, and robot control method
JP2015136763A (en) Control device, robot system, robot and robot control method
JP2015003348A (en) Robot control system, control device, robot, control method for robot control system and robot control method
CN104424601B (en) Centering assembly method and device for special-shaped body assembly parts
CN111199533B (en) Image processing apparatus and method
CN108711174B (en) Approximate parallel vision positioning system for mechanical arm
JP2020126414A (en) Machine learning tutor data creation assisting method and machine learning tutor data creation assisting program
JP2015160256A (en) Robot system, processor and control method
WO2018096669A1 (en) Laser processing device, laser processing method, and laser processing program
JP2012236266A (en) Robot control system, robot system, and program
WO2019176450A1 (en) Information processing device, information processing method, and program
WO2014091897A1 (en) Robot control system
CN113858214A (en) Positioning method and control system for robot operation

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160617

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20160624