JP6425385B2 - Robot control method, robot control device, program, recording medium, and part manufacturing method - Google Patents

Robot control method, robot control device, program, recording medium, and part manufacturing method Download PDF

Info

Publication number
JP6425385B2
JP6425385B2 JP2014010908A JP2014010908A JP6425385B2 JP 6425385 B2 JP6425385 B2 JP 6425385B2 JP 2014010908 A JP2014010908 A JP 2014010908A JP 2014010908 A JP2014010908 A JP 2014010908A JP 6425385 B2 JP6425385 B2 JP 6425385B2
Authority
JP
Japan
Prior art keywords
robot
imaging
camera
acceleration
predetermined time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014010908A
Other languages
Japanese (ja)
Other versions
JP2015136778A (en
JP2015136778A5 (en
Inventor
洋佑 大木
洋佑 大木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2014010908A priority Critical patent/JP6425385B2/en
Publication of JP2015136778A publication Critical patent/JP2015136778A/en
Publication of JP2015136778A5 publication Critical patent/JP2015136778A5/en
Application granted granted Critical
Publication of JP6425385B2 publication Critical patent/JP6425385B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボットをワークの位置及び姿勢に基づいて制御するロボット制御方法、ロボット制御装置、プログラム、記録媒体、及び部品の製造方法に関する。 The present invention relates to a robot control method for controlling a robot based on the position and posture of a workpiece, a robot control device, a program, a recording medium, and a method of manufacturing parts.

ロボットによる部品組立作業は予め位置と姿勢を設定された教示点上を繰返し動作するものが殆どであったが、最近では精密な組立作業や加工作業を行うためにカメラを用いてワークの位置及び姿勢を認識することが行われている。その際、ワークの認識精度を向上させる手段として、振動による撮像ブレの無い画像を取得することが望まれる。すなわち、カメラと撮像対象であるワークの相対位置関係が不変であることと、カメラに内蔵されている視覚センサにおけるワークの存在する座標が把握されていることが挙げられる。   Most of the parts assembly work by the robot was to repeatedly operate on the teaching point where the position and attitude were set in advance, but recently, the position of the work and the position of the work using the camera to perform precise assembly work and processing work It is done to recognize the posture. At that time, as a means for improving the recognition accuracy of the workpiece, it is desirable to acquire an image free from imaging blurring due to vibration. That is, the relative positional relationship between the camera and the work to be imaged is invariable, and the coordinates of the work in the visual sensor incorporated in the camera are known.

振動による撮像ブレ対策として、撮像時間を短縮化する方法が考えられる。撮像時間を短縮化すると、視覚センサが受光できる光量が減少するため、レンズの開口径(絞り値、F値ともいう)を大きくする必要がある。しかし、撮像対象であるワークの表面形状によっては認識に必要十分な光量を確保できないことがある。   A method of shortening the imaging time can be considered as a countermeasure against the imaging blur due to the vibration. Since shortening the imaging time reduces the amount of light that can be received by the visual sensor, it is necessary to increase the aperture diameter (also referred to as the aperture value or F value) of the lens. However, depending on the surface shape of the workpiece to be imaged, it may not be possible to secure a sufficient amount of light for recognition.

そこで、組立要求精度に応じて設定した範囲に振動が収束した瞬間にカメラのシャッターを切る(撮像を開始する)方法が提案されている(特許文献1参照)。   Therefore, a method has been proposed in which the shutter of the camera is started (imaging starts) at the moment when the vibration converges to the range set according to the assembly request accuracy (see Patent Document 1).

特開2011−11330号公報Unexamined-Japanese-Patent No. 2011-11330

しかしながら、振動が収束したことを確認して撮像を開始する特許文献1の方法では、カメラの撮像開始後に外乱等により振動が生じた場合、撮像した画像にブレが生じる可能性があった。そのため、画像処理装置がブレのある撮像画像に対して画像処理を行ってもワークの位置及び姿勢を認識できないといった問題が発生していた。   However, in the method of Patent Document 1 that confirms that the vibration has converged and starts imaging, when vibration occurs due to a disturbance or the like after the start of imaging of the camera, there is a possibility that blurring occurs in the captured image. Therefore, there has been a problem that even if the image processing apparatus performs image processing on a blurred captured image, it can not recognize the position and posture of the workpiece.

本発明は、ワークを撮像した撮像画像にブレが生じるのをより効果的に低減することを目的とする。   An object of the present invention is to more effectively reduce the occurrence of blurring in a captured image obtained by capturing a workpiece.

本発明は、ロボットの振動を検出する検出部の検出結果と、ワークを撮像した撮像画像を用いて求められた前記ワークの位置及び姿勢に基づいて、前記ロボットを制御するロボット制御方法において、カメラによる所定時間の撮像を制御する第1制御工程と、前記カメラによる前記所定時間の撮像中に、前記検出部が、あらかじめ定めた閾値よりも大きな振動を検出しなかった場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用し、前記カメラによる前記所定時間の撮像中に、前記検出部が、あらかじめ定めた閾値よりも大きな振動を検出した場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用することなく、再度、前記カメラによる前記所定時間の撮像を行うように制御する第2制御工程と、を備えたことを特徴とする。 The present invention relates to a camera control method for controlling a robot based on a detection result of a detection unit for detecting a vibration of the robot and a position and a posture of the workpiece obtained using a captured image obtained by capturing the workpiece. Control step of controlling imaging for a predetermined period of time, and when the detection unit does not detect a vibration larger than a predetermined threshold during imaging of the predetermined period of time by the camera, the predetermined period of time The information on the position and orientation of the workpiece obtained using the captured image obtained by the imaging of is used to control the robot, and the detection unit determines in advance during imaging of the predetermined time by the camera. when detecting a large vibration than the threshold value, related to the position and orientation of the workpiece obtained by using the captured image obtained by the imaging of the predetermined time period Without utilizing information on the control of the robot, again, characterized by comprising a second control step of controlling to perform image capturing of the predetermined time by the camera.

本発明によれば、カメラによる撮像中にロボットの振動が収束していることを確認して撮像を完了するので、ワークを撮像した撮像画像にブレが生じるのをより効果的に低減することができる。これにより、撮像画像からワークの位置及び姿勢を精度よく認識することができ、ロボットによる作業精度が向上する。   According to the present invention, it is confirmed that vibration of the robot has converged during imaging by a camera to complete imaging, so that occurrence of blurring in a captured image obtained by imaging a workpiece can be more effectively reduced. it can. As a result, the position and orientation of the workpiece can be accurately recognized from the captured image, and the working accuracy of the robot is improved.

第1実施形態に係るロボット装置の概略構成を示す斜視図である。It is a perspective view showing a schematic structure of a robot device concerning a 1st embodiment. 第1実施形態に係るロボット装置を示すブロック図である。It is a block diagram showing a robot device concerning a 1st embodiment. 第1実施形態に係るロボット制御方法の各工程を示すフローチャートである。It is a flowchart which shows each process of the robot control method which concerns on 1st Embodiment. ロボットの動作停止後に発生するロボットの残留振動による位置、速度及び加速度の時間変化を示したグラフである。It is the graph which showed the time change of the position, velocity, and acceleration by the residual vibration of the robot which occurs after the operation stop of a robot. 第2実施形態に係るロボット装置の概略構成を示す斜視図である。It is a perspective view showing a schematic structure of a robot apparatus concerning a 2nd embodiment. 第2実施形態に係るロボット装置を示すブロック図である。It is a block diagram showing a robot apparatus concerning a 2nd embodiment. 第2実施形態に係るロボット制御方法の各工程を示すフローチャートである。It is a flowchart which shows each process of the robot control method which concerns on 2nd Embodiment. ロボットの動作停止後に発生するロボットの残留振動による位置、速度及び加速度の時間変化を示したグラフである。It is the graph which showed the time change of the position, velocity, and acceleration by the residual vibration of the robot which occurs after the operation stop of a robot. 第3実施形態に係るロボット装置の概略構成を示す斜視図である。It is a perspective view showing a schematic structure of a robot apparatus concerning a 3rd embodiment.

以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

[第1実施形態]
図1は、本発明の第1実施形態に係るロボット装置の概略構成を示す斜視図である。ロボット装置100は、1つのロボット200を備えた、いわゆる単腕ロボット装置である。ロボット装置100は、ロボット200の作業対象であるワークWを撮像するカメラ300を備えている。また、ロボット装置100は、カメラ300で撮像した撮像画像を取り込んで、所定の画像処理を施す画像処理装置(画像処理部)400と、ロボット200を制御するロボット制御装置500と、を備えている。第1実施形態では、画像処理装置400とロボット制御装置500により、制御システム(制御部)600が構成されている。
First Embodiment
FIG. 1 is a perspective view showing a schematic configuration of a robot apparatus according to a first embodiment of the present invention. The robot apparatus 100 is a so-called single arm robot apparatus provided with one robot 200. The robot apparatus 100 includes a camera 300 that captures an image of a workpiece W that is a work target of the robot 200. The robot apparatus 100 further includes an image processing apparatus (image processing unit) 400 that performs predetermined image processing by capturing an image captured by the camera 300, and a robot control apparatus 500 that controls the robot 200. . In the first embodiment, a control system (control unit) 600 is configured by the image processing apparatus 400 and the robot control apparatus 500.

ロボット200は、垂直多関節(例えば6軸)のロボットアーム201と、ロボットアーム201の先端に取り付けられた、ワークWを把持するためのロボットハンド(エンドエフェクタ)202と、を有している。ロボットアーム201は、複数のリンク211〜216が関節で連結されて構成されている。ロボットアーム201の基端は、床Fに配置された架台700上に固定されている。   The robot 200 includes a robot arm 201 having a vertical articulated joint (for example, six axes), and a robot hand (end effector) 202 attached to the tip of the robot arm 201 for gripping the workpiece W. The robot arm 201 is configured by connecting a plurality of links 211 to 216 via joints. The proximal end of the robot arm 201 is fixed on a gantry 700 disposed on the floor F.

ロボットハンド202とロボットアーム201との間には、ロボットハンド202に作用する力(例えばロボットハンド202がワークWを把持したときの力)を検出する力覚センサ250が設けられている。   Between the robot hand 202 and the robot arm 201, a force sensor 250 for detecting a force acting on the robot hand 202 (for example, a force when the robot hand 202 grips the workpiece W) is provided.

カメラ300は、CCDイメージセンサやCMOSイメージセンサ等の撮像素子(視覚センサ)を有するデジタルカメラである。カメラ300は、支柱によりロボットアーム201のリンク216に固定されており、カメラ300の内部には、ロボット200の加速度(カメラ300の加速度)を検出する加速度センサ(検出部)260が搭載されている。カメラ300及び加速度センサ260は、画像処理装置400に接続されている。   The camera 300 is a digital camera having an imaging element (vision sensor) such as a CCD image sensor or a CMOS image sensor. The camera 300 is fixed to the link 216 of the robot arm 201 by a support, and an acceleration sensor (detection unit) 260 for detecting the acceleration of the robot 200 (the acceleration of the camera 300) is mounted inside the camera 300. . The camera 300 and the acceleration sensor 260 are connected to the image processing apparatus 400.

画像処理装置400は、カメラ300で撮像した撮像画像に対してパターンマッチング等を行い、ワークWの位置及び姿勢を求める画像処理を実行する。また、加速度センサ260で検出された加速度の情報は、画像処理装置400を通じてロボット制御装置500に出力される。   The image processing apparatus 400 performs pattern matching and the like on the captured image captured by the camera 300, and executes image processing for obtaining the position and orientation of the workpiece W. Further, information on the acceleration detected by the acceleration sensor 260 is output to the robot control device 500 through the image processing device 400.

図2は、本発明の第1実施形態に係るロボット装置100を示すブロック図である。ロボット制御装置500は、演算部としてのCPU(Central Processing Unit)501を備えている。また、ロボット制御装置500は、記憶部として、ROM(Read Only Memory)502、RAM(Random Access Memory)503、HDD(Hard Disk Drive)504を備えている。また、ロボット制御装置500は、記録ディスクドライブ505、計時部であるタイマ506及び各種のインタフェース511〜514を備えている。なお、タイマ506は、CPU501が備えていてもよい。   FIG. 2 is a block diagram showing a robot apparatus 100 according to the first embodiment of the present invention. The robot control device 500 includes a CPU (Central Processing Unit) 501 as an arithmetic unit. The robot control device 500 further includes a read only memory (ROM) 502, a random access memory (RAM) 503, and a hard disk drive (HDD) 504 as a storage unit. The robot control device 500 further includes a recording disk drive 505, a timer 506 which is a clock unit, and various interfaces 511 to 514. The timer 506 may be included in the CPU 501.

CPU501には、ROM502、ROM503、HDD504、記録ディスクドライブ505及び各種のインタフェース511〜514が、バス520を介して接続されている。ROM502には、BIOS等の基本プログラムが格納されている。RAM503は、CPU501の演算処理結果等、各種データを一時的に記憶する記憶装置である。   A ROM 502, a ROM 503, an HDD 504, a recording disk drive 505, and various interfaces 511 to 514 are connected to the CPU 501 via a bus 520. The ROM 502 stores a basic program such as a BIOS. The RAM 503 is a storage device that temporarily stores various data such as the calculation processing result of the CPU 501.

HDD504は、CPU501の演算処理結果や外部から取得した各種データ等を記憶する記憶装置であると共に、CPU501に、後述する各種演算処理を実行させるためのプログラム530を記録するものである。CPU501は、HDD504に記録(格納)されたプログラム530に基づいてロボット制御方法の各工程を実行する。   The HDD 504 is a storage device that stores the calculation processing result of the CPU 501, various data acquired from the outside, and the like, and records a program 530 for causing the CPU 501 to execute various calculation processing to be described later. The CPU 501 executes each step of the robot control method based on the program 530 recorded (stored) in the HDD 504.

記録ディスクドライブ505は、記録ディスク531に記録された各種データやプログラム等を読み出すことができる。タイマ506は、CPU501の制御により計時するものである。   The recording disk drive 505 can read various data and programs recorded on the recording disk 531. The timer 506 measures time under the control of the CPU 501.

インタフェース511には、画像処理装置400が接続されている。画像処理装置400は、カメラ300から取得した撮像画像からワークWの位置及び姿勢を求める画像処理を行い、ワークWの位置及び姿勢を示すデータを、インタフェース511及びバス520を介してCPU501に出力する。   An image processing apparatus 400 is connected to the interface 511. The image processing apparatus 400 performs image processing for obtaining the position and orientation of the workpiece W from the captured image acquired from the camera 300, and outputs data indicating the position and orientation of the workpiece W to the CPU 501 via the interface 511 and the bus 520. .

検出部である加速度センサ260は、ロボット200の振動に関する情報として、ロボットの加速度の情報を検出する。加速度の情報は、画像処理装置400、インタフェース511及びバス520を介してCPU501に出力される。   The acceleration sensor 260, which is a detection unit, detects information on the acceleration of the robot as information on the vibration of the robot 200. Information on acceleration is output to the CPU 501 via the image processing apparatus 400, the interface 511, and the bus 520.

インタフェース512には、力覚センサ250が接続されている。力覚センサ250により検出された力の情報は、インタフェース512及びバス520を介してCPU501に出力される。   A force sensor 250 is connected to the interface 512. Information on the force detected by the force sensor 250 is output to the CPU 501 via the interface 512 and the bus 520.

インタフェース513には、ロボットアーム201が接続されている。CPU501は、組立用のプログラム530に基づいて軌道計算を行い、位置指令(関節角度指令)を所定時間間隔でインタフェース513を介してロボットアーム201の各関節の駆動部に出力する。各関節の駆動部は、入力した位置指令に基づき、各関節を駆動する。   The robot arm 201 is connected to the interface 513. The CPU 501 performs trajectory calculation based on the assembly program 530, and outputs position commands (joint angle commands) to the drive units of the joints of the robot arm 201 via the interface 513 at predetermined time intervals. The drive unit of each joint drives each joint based on the input position command.

インタフェース514には、ロボットハンド202が接続されており、CPU501は、組立用のプログラム530に基づいてロボットハンド202の把持動作を制御する。   The robot hand 202 is connected to the interface 514, and the CPU 501 controls the gripping operation of the robot hand 202 based on the program 530 for assembly.

なお、バス520には、不図示のインタフェースを介して、書き換え可能な不揮発性メモリや外付けHDD等の不図示の外部記憶装置が接続されていてもよい。   Note that an external storage device (not shown) such as a rewritable non-volatile memory or an external HDD may be connected to the bus 520 via an interface (not shown).

第1実施形態では、画像処理装置400が、ワークWを撮像したカメラ300から取得した撮像画像を用いてワークWの位置及び姿勢を求める画像処理を行う。そして、ロボット制御装置500のCPU501が、HDD504に格納されたプログラム530を読み出して実行することで、ロボット200の動作を、画像処理装置400から取得したワークWの位置及び姿勢のデータに基づいて制御する。   In the first embodiment, the image processing apparatus 400 performs image processing for obtaining the position and orientation of the workpiece W using the captured image acquired from the camera 300 that captured the workpiece W. Then, the CPU 501 of the robot control device 500 reads and executes the program 530 stored in the HDD 504 to control the operation of the robot 200 based on the data of the position and orientation of the workpiece W acquired from the image processing device 400. Do.

また、CPU501は、加速度センサ260から取得した検出結果(加速度の情報)から、ロボット200の位置、及びロボット200の速度の2つの情報を、演算(積分)により求める。   Further, the CPU 501 obtains two pieces of information of the position of the robot 200 and the velocity of the robot 200 by calculation (integration) from the detection result (information of acceleration) acquired from the acceleration sensor 260.

つまり、第1実施形態では、CPU501が加速度センサ260で得られた加速度情報を用いて演算処理(積分)を行うことで、ロボット200の速度及び位置を求める方式とする。   That is, in the first embodiment, the CPU 501 performs arithmetic processing (integral) using the acceleration information obtained by the acceleration sensor 260 to obtain the speed and position of the robot 200.

ロボットアーム201は、画像処理装置400から送られたワークWの位置及び姿勢の情報と加速度センサ260の検出信号、ロボット制御装置500に組み込まれた組立用のプログラム530によって、ワークWの組立作業を行う。   The robot arm 201 assembles the work W by the information on the position and attitude of the work W sent from the image processing apparatus 400, the detection signal of the acceleration sensor 260, and the program 530 for assembly incorporated in the robot control device 500. Do.

ここで、ロボット200の位置とは、ロボット200の手先(即ちロボットハンド202)の位置である。また、ロボット200の速度とは、ロボット200の手先の速度であり、ロボット200の加速度とは、ロボットの手先の加速度である。   Here, the position of the robot 200 is the position of the hand of the robot 200 (that is, the robot hand 202). Further, the velocity of the robot 200 is the velocity of the hand of the robot 200, and the acceleration of the robot 200 is the acceleration of the hand of the robot.

なお、図示は省略するが、画像処理装置400は、演算部(CPU)と、演算部に画像処理を実行させるプログラムを記憶した記憶部とを有している。   Although not shown, the image processing apparatus 400 includes an operation unit (CPU) and a storage unit storing a program that causes the operation unit to execute image processing.

図3は、本発明の第1実施形態に係るロボット制御方法の各工程を示すフローチャートである。図4は、ロボット200の動作停止(時刻t0)後に発生するロボット200の残留振動による位置P、速度V及び加速度Aの時間変化を示したグラフである。図4には、X軸に時間、Y軸に位置P、速度V、加速度Aの振動波形を示している。   FIG. 3 is a flowchart showing each step of the robot control method according to the first embodiment of the present invention. FIG. 4 is a graph showing temporal changes in the position P, the velocity V, and the acceleration A due to the residual vibration of the robot 200 generated after the operation of the robot 200 is stopped (time t0). In FIG. 4, the X-axis represents time, the Y-axis represents position P, velocity V, and acceleration A.

CPU501は、ワークWの撮像を行う所定の位置及び姿勢にロボット200の動作を制御し、次いで、ロボット200に動作停止信号を送り、ロボット200の動作を停止させる(S11)。つまり、CPU501は、カメラ300によりワークWを撮像する位置及び姿勢にロボット200を動作させてその位置及び姿勢でロボット200を停止させる。   The CPU 501 controls the operation of the robot 200 to a predetermined position and posture for imaging the workpiece W, and then sends an operation stop signal to the robot 200 to stop the operation of the robot 200 (S11). That is, the CPU 501 causes the robot 200 to move to a position and orientation at which the camera 300 picks up an image of the workpiece W, and stops the robot 200 at that position and orientation.

次に、CPU501は、カメラ300にワークWの撮像を開始させる(S12:撮像開始工程)。即ち、CPU501は、画像処理装置400を介してカメラ300にシャッターを開くトリガ信号を出力する。このトリガ信号を入力したカメラ300は、シャッターを開く。これと同時にCPU501は、タイマ506に計時を開始させる。   Next, the CPU 501 causes the camera 300 to start imaging of the work W (S12: imaging start step). That is, the CPU 501 outputs a trigger signal for opening the shutter to the camera 300 via the image processing apparatus 400. The camera 300 which has received this trigger signal opens the shutter. At the same time, the CPU 501 causes the timer 506 to start timing.

カメラ300の撮像開始のタイミングは、ステップS11のJOB動作開始後であり、ロボットハンド202でワークWを把持する前までに撮像を完了するものである。   The imaging start timing of the camera 300 is after the start of the JOB operation in step S11, and imaging is completed before the robot hand 202 grips the work W.

ところで、CPU501は、ステップS11により、図4の時刻t0のタイミングでロボット200に動作停止信号を送り、ロボット200が停止したと判断する。しかし、実際にはロボット200は動作停止に伴う振動が残留しているため、ロボットアーム201の先端、つまりロボットアーム201の先端に取り付けられたロボットハンド202とカメラ300の位置、速度及び加速度は絶えず変化している。   By the way, in step S11, the CPU 501 sends an operation stop signal to the robot 200 at the timing of time t0 in FIG. 4 and determines that the robot 200 has stopped. However, in fact, since the vibration accompanying the stop of the operation of the robot 200 remains, the position, velocity and acceleration of the robot hand 202 and the camera 300 attached to the tip of the robot arm 201, that is, the tip of the robot arm 201 are constantly It is changing.

ロボット200の残留振動によるロボット200の位置を実位置Pn1、ロボット200の速度を実速度Vn1、ロボット200の加速度を実加速度An1とする。実位置Pn1、実速度Vn1、実加速度An1は、図4に示すように、時刻t0では大きな振幅であるが、時刻t1から時刻t2と時間が経過するにつれて、徐々に減衰していく。前述の残留振動の影響で、カメラ300でワークWを撮像するには、ロボット200が動作を停止した時点(図4の時刻t0)から振動が収束するまで待つ必要がある。   The position of the robot 200 due to the residual vibration of the robot 200 is an actual position Pn1, the velocity of the robot 200 is an actual velocity Vn1, and the acceleration of the robot 200 is an actual acceleration An1. As shown in FIG. 4, the actual position Pn1, the actual velocity Vn1, and the actual acceleration An1 have large amplitudes at time t0, but gradually attenuate as time passes from time t1 to time t2. Under the influence of the above-mentioned residual vibration, in order to image the workpiece W with the camera 300, it is necessary to wait until the vibration converges from the time when the robot 200 stops its operation (time t0 in FIG. 4).

CPU501は、カメラ300による撮像中に、加速度センサ260から検出結果である加速度の情報を取得する(S13:検出工程)。   The CPU 501 acquires information on acceleration which is a detection result from the acceleration sensor 260 during imaging by the camera 300 (S13: detection step).

次いで、CPU501は、取得した加速度An1の情報から、ロボット200の位置Pn1及び速度Vn1の2つの情報を演算(積分)により求める。そして、CPU501は、これら加速度An1、速度Vn1、位置Pn1を閾値判定することにより、ロボット200の振動が収束しているか否かを判断する(S14〜S16:判断工程)。   Next, the CPU 501 obtains two pieces of information of the position Pn1 and the velocity Vn1 of the robot 200 by calculation (integration) from the acquired information of the acceleration An1. Then, the CPU 501 determines whether the vibration of the robot 200 has converged by determining the acceleration An1, the velocity Vn1, and the position Pn1 as a threshold (S14 to S16: determination step).

CPU501は、ステップS14〜S16の判断の結果、ロボット200の振動が収束していると判断した場合(S14〜S16:全て「OK」)、カメラ300により撮像を開始してから所定時間経過したか否かを判断する(S17)。つまり、CPU501は、タイマ506の計時時間が所定時間に達したか否かを判断する。所定時間は、シャッタースピード(撮像時間)であり、予め設定された時間(例えば、1/10秒)である。   If the CPU 501 determines that the vibration of the robot 200 has converged as a result of the determinations in steps S14 to S16 (S14 to S16: all “OK”), has a predetermined time elapsed since the start of imaging by the camera 300? It is determined whether or not it is (S17). That is, the CPU 501 determines whether the time measured by the timer 506 has reached a predetermined time. The predetermined time is a shutter speed (imaging time), and is a preset time (for example, 1/10 second).

CPU501は、撮像を開始してから所定時間が経過するまでの間は、ステップS13〜S16を繰り返し実行する。   The CPU 501 repeatedly executes steps S13 to S16 until a predetermined time has elapsed since the start of imaging.

CPU501は、ロボット200の振動が収束していると判断している条件の下、撮像開始から所定時間が経過したと判断した場合(S17:Yes)、カメラ300による撮像を完了させる(S18)。つまり、CPU501は、カメラ300のシャッターを閉じるトリガ信号を出力し、トリガ信号を受けたカメラ300は、シャッターを閉じる。CPU501は、カメラ300による撮像完了後、画像処理装置400に画像処理を行わせる(S19:画像処理工程)。   When it is determined that the predetermined time has elapsed from the start of imaging under the condition that it is determined that the vibration of the robot 200 has converged (S17: Yes), the CPU 501 completes the imaging by the camera 300 (S18). That is, the CPU 501 outputs a trigger signal for closing the shutter of the camera 300, and the camera 300 that has received the trigger signal closes the shutter. After the imaging by the camera 300 is completed, the CPU 501 causes the image processing apparatus 400 to perform image processing (S19: image processing step).

つまり、ステップS19では、CPU501は、画像処理装置400にカメラ300から得た画像に対してパターンマッチング処理を行わせ、画像処理装置400から、ワークWの位置及び姿勢の情報を取得する。そして、CPU501は、ワークWの位置及び姿勢に基づき、ロボット200の動作を制御する。   That is, in step S19, the CPU 501 causes the image processing apparatus 400 to perform pattern matching processing on the image obtained from the camera 300, and acquires information on the position and orientation of the workpiece W from the image processing apparatus 400. Then, the CPU 501 controls the operation of the robot 200 based on the position and attitude of the workpiece W.

CPU501は、ステップS14〜S16の判断の結果、ロボット200の振動が収束していないと判断した場合(S14〜S16のうち少なくとも1つが「NG」)、カメラ300による撮像を強制的に終了(つまり中止)させる(S20)。この場合、撮像途中の画像は、破棄される。   If the CPU 501 determines that the vibration of the robot 200 has not converged as a result of the determinations in steps S14 to S16 (at least one of S14 to S16 is "NG"), the imaging by the camera 300 is forcibly ended (that is, Cancel) (S20). In this case, the image being captured is discarded.

このステップS20の処理は、時間短縮の観点から、撮像を開始してから所定時間が経過するのを待たずに行うのが好ましいが、所定時間経過してから撮像を終了してもよい。   Although it is preferable that the process of step S20 is performed without waiting for a predetermined time to elapse after the start of imaging from the viewpoint of shortening the time, the imaging may be ended after the predetermined time has elapsed.

そして、CPU501は、再度、ステップS12の処理に戻って撮像を開始させる撮像開始工程を実行する。CPU501は、ステップS12の処理に戻ることで、ステップS14〜S16が「OK」の間は、ステップS13〜S17を繰り返し実行することとなる。なお、CPU501は、ステップS20で撮像を終了したら、直ちにステップS12にて撮像を開始してもよいが、ステップS20で撮像を終了してから所定の待機時間経過後、ステップS12にて撮像を開始してもよい。CPU501は、この所定の待機時間の計時もタイマ506に行わせる。   Then, the CPU 501 returns to the process of step S12 again and executes an imaging start step of starting imaging. By returning to the process of step S12, the CPU 501 repeatedly executes steps S13 to S17 while steps S14 to S16 are "OK". Note that the CPU 501 may immediately start imaging in step S12 when imaging ends in step S20, but starts imaging in step S12 after a predetermined standby time has elapsed after ending imaging in step S20. You may The CPU 501 also causes the timer 506 to count the predetermined standby time.

ここで、ステップS14〜S16の処理について具体的に説明する。検出部は、ロボット200の振動に関する情報として、ロボット200の位置、速度及び加速度のうち少なくとも1つの情報を検出すればよく、第1実施形態では、ロボット200の加速度を検出する加速度センサ260である。   Here, the processes of steps S14 to S16 will be specifically described. The detection unit may detect at least one of the position, velocity, and acceleration of the robot 200 as the information related to the vibration of the robot 200. In the first embodiment, the detection unit is an acceleration sensor 260 that detects the acceleration of the robot 200. .

そして、判断工程では、ロボット200の位置、速度及び加速度のうち、少なくとも1つを閾値判定すればよいが、特に、ロボット200の加速度を閾値判定するのが好ましい。第1実施形態では、ロボット200の位置、速度及び加速度のうち全てを閾値判定する。したがって、第1実施形態では、CPU501は、ロボット200の加速度の情報に基づいて、残り2つの情報、即ちロボット200の速度及び位置を算出している。   Then, in the determination step, at least one of the position, velocity, and acceleration of the robot 200 may be determined as a threshold, but in particular, it is preferable to determine the acceleration of the robot 200 as a threshold. In the first embodiment, all of the position, velocity, and acceleration of the robot 200 are thresholded. Therefore, in the first embodiment, the CPU 501 calculates the remaining two pieces of information, that is, the velocity and the position of the robot 200, based on the information of the acceleration of the robot 200.

まず、CPU501は、加速度の情報に基づいて算出した実位置Pn1(位置の情報)について閾値判定する(S14)。即ち、CPU501は、算出した実位置Pn1が、予め設定した上限位置閾値+Δp11と下限位置閾値−Δp12との間の所定位置範囲内(位置閾値許容範囲内)であるか否かを判断する。   First, the CPU 501 performs threshold determination on the actual position Pn1 (information of position) calculated based on the information of acceleration (S14). That is, the CPU 501 determines whether or not the calculated actual position Pn1 is within a predetermined position range (within the position threshold allowable range) between the upper limit position threshold + Δp11 and the lower limit position threshold −Δp12 set in advance.

ロボット200には動作停止に伴う振動が残留しているため、ロボット200に取り付けられたカメラ300の位置は絶えず変化している。この残留振動によるロボット200の位置(実位置)Pn1は、時間が経過するにつれて、徐々に減衰していく。カメラ300でワークWを撮像するには、ロボット200が動作を停止した時点から振動が収束するまで待つ必要がある。したがって、第1実施形態では、ステップS14でロボット200の実位置Pn1の閾値判定を行う。   Since the vibration accompanying the stop of the operation remains in the robot 200, the position of the camera 300 attached to the robot 200 is constantly changing. The position (actual position) Pn1 of the robot 200 due to the residual vibration gradually attenuates as time passes. In order to image the workpiece W with the camera 300, it is necessary to wait until the vibration converges from the time when the robot 200 stops its operation. Therefore, in the first embodiment, the threshold determination of the actual position Pn1 of the robot 200 is performed in step S14.

また、CPU501は、加速度の情報に基づいて算出した実速度Vn1(速度の情報)について閾値判定する(S15)。即ち、CPU501は、算出した実速度Vn1が、予め設定した上限速度閾値+Δv11と下限速度閾値−Δv12との間の所定速度範囲内(速度閾値許容範囲内)であるか否かを判断する。   Further, the CPU 501 makes a threshold determination on the actual velocity Vn1 (information on velocity) calculated based on the information on acceleration (S15). That is, the CPU 501 determines whether or not the calculated actual speed Vn1 is within a predetermined speed range (within the speed threshold allowable range) between the upper limit speed threshold + Δv11 and the lower limit speed threshold −Δv12 set in advance.

即ち、ステップS14で実位置Pn1が位置閾値の条件を満たしたとしても、ロボット200に移動速度が残留している場合がある。このとき、カメラ300で撮像を行ってもワークWがブレた画像となる可能性が極めて高くなるため、ステップS15でロボット200の実速度Vn1の閾値判定を行う。   That is, even if the actual position Pn1 satisfies the condition of the position threshold in step S14, the movement speed may remain in the robot 200. At this time, there is a high possibility that the workpiece W will be blurred even if the camera 300 captures an image, so that the threshold determination of the actual velocity Vn1 of the robot 200 is performed in step S15.

更にまた、CPU501は、検出した実加速度An1(加速度の情報)について閾値判定する(S16)。即ち、CPU501は、検出した実加速度An1が、予め設定した上限加速度閾値+Δa11と下限加速度閾値−Δa12との間の所定加速度範囲内(加速度閾値許容範囲内)であるか否かを判断する。   Furthermore, the CPU 501 determines a threshold value for the detected actual acceleration An1 (information on acceleration) (S16). That is, the CPU 501 determines whether the detected actual acceleration An1 is within a predetermined acceleration range (within the acceleration threshold allowable range) between the upper limit acceleration threshold + Δa11 and the lower limit acceleration threshold −Δa12 set in advance.

ステップS14の位置閾値及びステップS15の速度閾値を満足した場合であっても、一時的に実加速度An1が上昇することがある。これは、ロボット200に想定外の振動が発生している場合等である。このとき、カメラでワークを撮像したとしても、ワークの認識結果を劣化させる可能性があるため、ステップS16でロボット200の実加速度An1の閾値判定を行う。   Even when the position threshold in step S14 and the velocity threshold in step S15 are satisfied, the actual acceleration An1 may temporarily rise. This is the case where an unexpected vibration is generated in the robot 200 or the like. At this time, even if the workpiece is imaged by the camera, there is a possibility that the recognition result of the workpiece is deteriorated. Therefore, in step S16, the threshold determination of the actual acceleration An1 of the robot 200 is performed.

第1実施形態では、CPU501は、ロボット200の振動が収束しているか否かの判断として、ロボット200の位置、速度、加速度が、それぞれ所定位置範囲内、所定速度範囲内、所定加速度範囲内であるか否かを判断する。   In the first embodiment, the CPU 501 determines the position, velocity, and acceleration of the robot 200 within the predetermined position range, within the predetermined velocity range, and within the predetermined acceleration range, respectively, as a determination as to whether or not the vibration of the robot 200 has converged. Determine if there is.

そして、CPU501は、ロボット200の位置が所定位置範囲内であり、速度が所定速度範囲内であり、加速度が所定加速度範囲内である場合、即ちステップS14〜S16のいずれも「OK」の場合には、ロボット200の振動が収束していると判断する。CPU501は、ロボット200の位置、速度、加速度のうち少なくとも1つでも所定位置範囲内、所定速度範囲内、所定加速度範囲内ではない場合、即ちステップS14〜S16の少なくとも1つでも「NG」の場合には、振動が収束していないと判断する。   Then, when the position of the robot 200 is within the predetermined position range, the speed is within the predetermined speed range, and the acceleration is within the predetermined acceleration range, that is, all of the steps S14 to S16 are “OK”. , Determines that the vibration of the robot 200 has converged. If at least one of the position, velocity, and acceleration of the robot 200 is within the predetermined position range, within the predetermined velocity range, and not within the predetermined acceleration range, that is, if at least one of steps S14 to S16 is "NG". It is determined that the vibration has not converged.

なお、これらステップS14〜S16の判定の順番は、これに限らず、どのステップから行ってもよく、同時にできる場合は、同時に行ってもよい。但し、実加速度An1、実速度Vn1、実位置Pn1の順に閾値判定を行うと、閾値判定に要する時間を短縮することができるため、好ましい。   The order of determination in steps S14 to S16 is not limited to this, and may be performed from any step, and may be performed simultaneously if it can be performed simultaneously. However, it is preferable to perform threshold determination in the order of the actual acceleration An1, the actual velocity Vn1, and the actual position Pn1, because the time required for the threshold determination can be shortened.

上限位置閾値+Δp11、下限位置閾値−Δp12は、カメラ300で撮像した画像内にワークWが収まる時の許容値から決定される。なお、上限位置閾値+Δp11、下限位置閾値−Δp12は、画像処理への要求精度により決定されるものである。上限速度閾値+Δv11、下限速度閾値−Δv12は、カメラ300のシャッタースピードと画像処理への要求精度により決定される。上限加速度閾値+Δa11、下限加速度閾値−Δa12は、カメラ300の許容振動振幅を目安に決定される。   The upper limit position threshold value + Δp11 and the lower limit position threshold value −Δp12 are determined from the allowable value when the work W fits in the image captured by the camera 300. The upper limit position threshold + Δp11 and the lower limit position threshold −Δp12 are determined based on the required accuracy for image processing. The upper limit speed threshold + Δv11 and the lower limit speed threshold −Δv12 are determined by the shutter speed of the camera 300 and the required accuracy for image processing. The upper limit acceleration threshold + Δa 11 and the lower limit acceleration threshold −Δa 12 are determined with the allowable vibration amplitude of the camera 300 as a guide.

以下、図4を例にステップS14〜S16の動作について説明する。なお、図4の時刻t1の時点でカメラ300の撮像を開始するものとする。   Hereinafter, the operation of steps S14 to S16 will be described by taking FIG. 4 as an example. In addition, imaging of the camera 300 shall be started at the time of time t1 of FIG.

時刻t1の時点で、実位置Pn1が位置閾値許容範囲−Δp12≦Pn1≦+Δp11の条件、実加速度An1が加速度閾値許容範囲−Δa12≦An1≦+Δa11の条件を満たしている。しかし、実速度Vn1が速度閾値許容範囲−Δv12≦Vn1≦+Δv11の条件を満たしていない。   At time t1, the actual position Pn1 satisfies the condition of the position threshold allowable range −Δp12 ≦ Pn1 ≦ + Δp11, and the actual acceleration An1 satisfies the condition of the acceleration threshold allowable range −Δa12 ≦ An1 ≦ + Δa11. However, the actual velocity Vn1 does not satisfy the condition of the velocity threshold allowable range −Δv12 ≦ Vn1 ≦ + Δv11.

また、時刻t2においても、実位置Pn1が位置閾値許容範囲−Δp12≦Pn1≦+Δp11の条件、実速度Vn1が速度閾値許容範囲−Δv12≦Vn1≦+Δv11の条件を満たしている。しかし、時刻t2では、振動が時刻t1の時点よりは減衰しているものの、実加速度An1が加速度閾値許容範囲−Δa12≦An1≦+Δa11の条件を満たしていない。これは、ロボット200に想定外の振動が発生しているためと考えられる。このとき、カメラ300でワークWを撮像したとしても、ワークWの認識結果を劣化させる可能性がある。そのため、検出した実加速度An1をフィードバックして撮像完了のタイミングを決定する。一般に、振動振幅は、「系を押す力」と「系の弾性係数」から予測できるものであるが、ロボットアーム201の弾性係数は姿勢や減速機の構造など非線形な部分が有るため、測定結果に誤差を生じる原因となる。   Further, also at time t2, the actual position Pn1 satisfies the condition of the position threshold allowable range −Δp12 ≦ Pn1 ≦ + Δp11, and the actual velocity Vn1 satisfies the condition of the speed threshold allowable range −Δv12 ≦ Vn1 ≦ + Δv11. However, at time t2, although the vibration is attenuated from the time t1, the actual acceleration An1 does not satisfy the condition of the acceleration threshold allowable range −Δa12 ≦ An1 ≦ + Δa11. This is considered to be because an unexpected vibration is generated in the robot 200. At this time, even if the workpiece W is imaged by the camera 300, the recognition result of the workpiece W may be degraded. Therefore, the detected actual acceleration An1 is fed back to determine the timing of imaging completion. Generally, the vibration amplitude can be predicted from “force pushing the system” and “elastic coefficient of the system”, but the elastic coefficient of the robot arm 201 has non-linear portions such as the posture and the structure of the reduction gear, so the measurement results Cause an error.

以上、時刻t1から時刻t3に至る前までは、CPU501は、振動が収束していないと判断し続け、カメラ300による撮像を開始しても、撮像を中止させて、撮像画像は廃棄し続ける。   As described above, from time t1 to time t3, the CPU 501 continues to determine that the vibration has not converged, and even if imaging with the camera 300 is started, imaging is stopped and the captured image is continuously discarded.

次に、CPU501は、時刻t3でステップS14〜S16の3つの条件を満たす。しかし、カメラ300による撮像を開始した時刻t3から撮像時間Tsが経過するまでに、時刻t4において、外乱等の振動により、実位置Pn1及び実加速度An1が閾値判定において条件を満たさなくなり、ステップS14(S16)で「NG」と判定される。したがって、時刻t3から時刻t4にかけて取り込んだ撮像画像はステップS20にて廃棄される。時刻t5においては、実速度Vn1も閾値判定において条件を満たさなくなる。時刻t6においては、実位置Pn1,実速度Vn1が条件を満たしているが、実加速度An1が依然として条件を満たしていない。   Next, the CPU 501 satisfies the three conditions of steps S14 to S16 at time t3. However, at time t4, the actual position Pn1 and the actual acceleration An1 no longer satisfy the condition in the threshold determination at time t4 until the imaging time Ts elapses from time t3 at which imaging by the camera 300 is started. At S16), it is determined as "NG". Therefore, the captured image captured from time t3 to time t4 is discarded in step S20. At time t5, the actual velocity Vn1 also fails to satisfy the condition in the threshold determination. At time t6, although the actual position Pn1 and the actual velocity Vn1 satisfy the condition, the actual acceleration An1 still does not satisfy the condition.

そして、CPU501は、時刻t7において、実位置Pn1、実速度Vn1、実加速度An1の3つが条件を満たしていると判断し、時刻t7から所定時間(撮像時間)Ts経過した時点で撮像を完了する(S18)。   Then, at time t7, the CPU 501 determines that three of the actual position Pn1, the actual velocity Vn1, and the actual acceleration An1 satisfy the conditions, and imaging is completed when a predetermined time (imaging time) Ts elapses from time t7. (S18).

以上、第1実施形態によれば、CPU501が、カメラ300による撮像中にロボット200の振動が収束していることを確認して撮像を完了させるので、ワークWを撮像した撮像画像にブレが生じるのをより効果的に低減することができる。これにより、撮像画像からワークWの位置及び姿勢を精度よく認識することができ、ロボット200による作業精度が向上する。   As described above, according to the first embodiment, since the CPU 501 confirms that the vibration of the robot 200 has converged during imaging by the camera 300 and completes the imaging, blurring occurs in the captured image obtained by imaging the workpiece W. Can be reduced more effectively. Thereby, the position and posture of the workpiece W can be accurately recognized from the captured image, and the working accuracy of the robot 200 is improved.

また、第1実施形態によれば、CPU501が、ロボット200の振動が収束していないと判断した場合、カメラ300による撮像を終了させて、再度、カメラ300による撮像を開始している。つまり、ロボット200の振動が収束するまで、ワークWを撮り直すこととなり、撮像画像にブレが生じるのをより効果的に低減することができる。これにより、撮像画像からワークWの位置及び姿勢を精度よく認識することができ、ロボット200による作業精度が向上する。   Further, according to the first embodiment, when the CPU 501 determines that the vibration of the robot 200 has not converged, the imaging by the camera 300 is ended, and the imaging by the camera 300 is started again. That is, the work W is to be photographed again until the vibration of the robot 200 converges, and it is possible to more effectively reduce the occurrence of blurring in the captured image. Thereby, the position and posture of the workpiece W can be accurately recognized from the captured image, and the working accuracy of the robot 200 is improved.

また、第1実施形態によれば、CPU501が、カメラ300による撮像中、ステップS13〜S16を繰り返し実行するので、より効果的に撮像画像にブレが生じるのを低減することができる。   Further, according to the first embodiment, since the CPU 501 repeatedly executes steps S13 to S16 during imaging by the camera 300, it is possible to more effectively reduce the occurrence of blurring in the captured image.

また、第1実施形態によれば、ロボット200の振動に関する情報として、ロボット200の加速度を検出しているので、正確にロボット200の振動を把握することができる。また、第1実施形態によれば、ロボット200の位置及び速度も演算により求めているので、より正確にロボット200の振動を把握することができる。   Further, according to the first embodiment, since the acceleration of the robot 200 is detected as the information on the vibration of the robot 200, the vibration of the robot 200 can be accurately grasped. Further, according to the first embodiment, since the position and the velocity of the robot 200 are also obtained by calculation, the vibration of the robot 200 can be more accurately grasped.

そして、第1実施形態によれば、カメラ300の撮像中において、ロボット200が位置閾値以内であり、速度閾値以内であり、加速度閾値以内であるときのみ、所定時間経過したら撮像完了とし、撮像画像が画像処理装置400にて取得される。これにより、カメラ300の撮像完了タイミングを早めつつ、カメラ300の撮像中に入力する外乱による振動により画像に生じるブレを低減することができる。また、画像処理装置400でワークWの認識異常の発生を防止できるため、画像処理装置400での異常による装置停止の頻度を低減する効果が期待できる。   Then, according to the first embodiment, only when the robot 200 is within the position threshold, within the velocity threshold and within the acceleration threshold and within the acceleration threshold during imaging by the camera 300, imaging is completed when a predetermined time has elapsed, and the captured image Is acquired by the image processing apparatus 400. Accordingly, it is possible to reduce blurring that occurs in an image due to vibration due to a disturbance input during imaging of the camera 300 while advancing the imaging completion timing of the camera 300. Further, since the occurrence of recognition abnormality of the work W can be prevented by the image processing apparatus 400, an effect of reducing the frequency of the apparatus stop due to the abnormality in the image processing apparatus 400 can be expected.

また、画像処理装置400においては、エラー画像(ブレが生じた撮像画像)の画像補正処理を行う必要がないので、ワークWの位置及び姿勢を求める画像処理に要する時間を短縮することができる。   Further, in the image processing apparatus 400, since it is not necessary to perform the image correction process of the error image (the captured image in which the blur occurs), the time required for the image process for obtaining the position and the attitude of the workpiece W can be shortened.

[第2実施形態]
次に、本発明の第2実施形態に係るロボット装置におけるロボット制御方法について説明する。図5は、本発明の第2実施形態に係るロボット装置の概略構成を示す斜視図である。なお、第2実施形態のロボット装置100Aにおいて、上記第1実施形態のロボット装置100の構成と同様の構成については、同一符号を付して説明を省略する。
Second Embodiment
Next, a robot control method in a robot apparatus according to a second embodiment of the present invention will be described. FIG. 5 is a perspective view showing a schematic configuration of a robot apparatus according to a second embodiment of the present invention. In the robot apparatus 100A of the second embodiment, the same components as those of the robot apparatus 100 of the first embodiment are denoted by the same reference numerals and the description thereof will be omitted.

ロボット装置100Aは、2つのロボット200,200を備えた、いわゆる双腕ロボット装置である。ロボット装置100Aは、上記第1実施形態と同様のカメラ300及び画像処理装置(画像処理部)400と、ロボット200,200を制御するロボット制御装置500Aと、を備えている。第2実施形態では、画像処理装置400とロボット制御装置500Aにより、制御システム(制御部)600Aが構成されている。 The robot apparatus 100A is a so-called dual arm robot apparatus provided with two robots 200 1 and 200 2 . The robot apparatus 100A includes a camera 300 and an image processing apparatus (image processing unit) 400 similar to those in the first embodiment, and a robot control apparatus 500A that controls the robots 200 1 and 200 2 . In the second embodiment, a control system (control unit) 600A is configured by the image processing apparatus 400 and the robot control apparatus 500A.

ロボット200は、上記第1実施形態のロボットアーム201と同様の構成のロボットアーム201と、上記第1実施形態のロボットハンド202と同様の構成のロボットハンド202とを有している。ロボット200は、上記第1実施形態のロボットアーム201と同様の構成のロボットアーム201と、ロボットアーム201の先端に取り付けられたロボットハンド(エンドエフェクタ)202とを有している。ロボットハンド202は、ワークWを把持可能に構成されている。 Robot 200 1 includes a robot arm 201 1 of the same structure as the robot arm 201 of the first embodiment, and a robot hand 202 1 of the same structure as the robot hand 202 of the first embodiment. Robot 200 2 includes a robot arm 201 2 of the same structure as the robot arm 201 of the first embodiment, and a robot hand (end effector) 202 2 attached to the tip of the robot arm 201 2. The robot hand 202 2 is able to hold a work W.

カメラ300は、複数のロボット200,200のうちいずれか1つ、第2実施形態ではロボット200の先端に取り付けられている。したがって、ロボット200のロボットハンド202で把持したワークWをロボット200に取り付けられたカメラ300で撮像することが可能である。 Camera 300, one of a plurality of robots 200 1, 200 2, the second embodiment is attached to the tip of the robot 200 1. Therefore, it is possible to image the workpiece W gripped by the robot 200 2 of the robot hand 202 2 with the camera 300 attached to the robot 200 1.

ロボットハンド202とロボットアーム201との間には、上記第1実施形態の力覚センサ250と同様の構成の力覚センサ250が設けられている。 Between the robot hand 202 1 and the robot arm 201 1, the force sensor 250 1 having the same configuration as the force sensor 250 of the first embodiment are provided.

カメラ300には、加速度センサ(検出部)260が設けられている。また、ロボットハンド202とロボットアーム201との間には、上記第1実施形態の力覚センサ250と同様の構成の力覚センサ(検出部)250が設けられている。つまり、第2実施形態では、ロボットが複数存在し、検出部が各ロボットに対応して設けられている。 The camera 300 is provided with an acceleration sensor (detection unit) 260. Between the robot hand 202 2 and the robot arm 201 2, the force sensor (detecting section) of the same configuration as the force sensor 250 of the first embodiment 250 2 are provided. That is, in the second embodiment, there are a plurality of robots, and a detection unit is provided corresponding to each robot.

図6は、本発明の第2実施形態に係るロボット装置100Aを示すブロック図である。ロボット制御装置500Aは、演算部としてCPU501、記憶部として、ROM502、RAM503、HDD504を備えている。また、ロボット制御装置500は、記録ディスクドライブ505、タイマ506及び各種のインタフェース511〜517を備えている。なお、タイマ506は、CPU501が備えていてもよい。   FIG. 6 is a block diagram showing a robot apparatus 100A according to a second embodiment of the present invention. The robot control device 500A includes a CPU 501 as an operation unit, and a ROM 502, a RAM 503, and an HDD 504 as a storage unit. The robot control device 500 further includes a recording disk drive 505, a timer 506, and various interfaces 511 to 517. The timer 506 may be included in the CPU 501.

CPU501には、ROM502、ROM503、HDD504、記録ディスクドライブ505及び各種のインタフェース511〜517が、バス520を介して接続されている。   A ROM 502, a ROM 503, an HDD 504, a recording disk drive 505, and various interfaces 511 to 517 are connected to the CPU 501 via a bus 520.

HDD504には、CPU501に、後述する各種演算処理を実行させるためのプログラム530Aが記録(格納)されている。CPU501は、HDD504に記録(格納)されたプログラム530Aに基づいてロボット制御方法の各工程を実行する。   In the HDD 504, a program 530A for causing the CPU 501 to execute various arithmetic processing to be described later is recorded (stored). The CPU 501 executes each step of the robot control method based on the program 530A recorded (stored) in the HDD 504.

上記第1実施形態と同様、インタフェース511には、画像処理装置400が接続されている。   As in the first embodiment, the image processing apparatus 400 is connected to the interface 511.

インタフェース512には力覚センサ250が、インタフェース513にはロボットアーム201が、インタフェース514にはロボットハンド202がそれぞれ接続されている。また、インタフェース515には力覚センサ250が、インタフェース516にはロボットアーム201が、インタフェース517にはロボットハンド202がそれぞれ接続されている。 Force sensor 250 1 to the interface 512, the robot arm 201 1 to the interface 513, the robot hand 202 1 is connected to the interface 514. Further, the force sensor 250 2 to the interface 515, the robot arm 201 2 interface 516, the robot hand 202 2 are connected to the interface 517.

CPU501は、プログラム530Aを読み出して実行することで、ロボット200,200の動作を、画像処理装置400から取得したワークWの位置及び姿勢のデータに基づいて制御する。 The CPU 501 reads out and executes the program 530A to control the operation of the robots 200 1 and 200 2 based on the data of the position and orientation of the workpiece W acquired from the image processing apparatus 400.

第2実施形態では、CPU501は、加速度センサ260から取得した検出結果(加速度の情報)から、ロボット200の位置、及びロボット200の速度の2つの情報を、演算(演算)により求める。 In the second embodiment, CPU 501, from the detection result obtained from the acceleration sensor 260 (acceleration information), the position of the robot 200 1, and the two pieces of information of the velocity of the robot 200 1, obtained by calculation (computation).

また、CPU501は、力覚センサ250から取得した力の情報をロボット200の加速度の情報に変換して、当該加速度の情報を力覚センサ250から検出結果とする。そして、CPU501は、ロボット200の位置、及びロボット200の速度の2つの情報を、加速度の情報から演算(積分)により求める。 Further, CPU 501 converts the force information obtained from the force sensor 250 2 in the acceleration information of the robot 200 2, and the detection result information of the acceleration from the force sensor 250 2. Then, CPU 501, the position of the robot 200 2, and two pieces of information of the velocity of the robot 200 2, obtained by calculation from the acceleration information (integration).

ここで、ロボット200,200の位置とは、ロボット200,200の手先(即ちロボットハンド202,202)の位置である。また、ロボット200,200の速度とは、ロボット200,200の手先の速度であり、ロボット200,200の加速度とは、ロボット200,200の手先の加速度である。 Here, the positions of the robots 200 1 and 200 2 are the positions of the hands of the robots 200 1 and 200 2 (that is, the robot hands 202 1 and 202 2 ). Also, the robot 200 1, 200 2 speed, the speed of the hand of the robot 200 1, 200 2, the robot 200 1, 200 2 of the acceleration, the acceleration of the hand of the robot 200 1, 200 2.

図7は、本発明の第2実施形態に係るロボット制御方法の各工程を示すフローチャートである。図8は、ロボット200の動作停止(時刻t0)後に発生するロボット200の残留振動による位置P、速度V及び加速度Aの時間変化を示したグラフである。図8には、X軸に時間、Y軸に位置P、速度V、加速度Aの振動波形を示している。 FIG. 7 is a flowchart showing each step of the robot control method according to the second embodiment of the present invention. Figure 8 is a graph showing the time change of the position P, the speed V and acceleration A according to the residual vibration of the robot 200 2 which occurs after the operation stop of the robot 200 2 (time t0). In FIG. 8, the X-axis represents time, the Y-axis represents position P, velocity V, and acceleration A.

図7のフローチャートでは、ロボット200のロボットハンド202に把持されたワークWを、ロボット200に取り付けられたカメラ300で撮像を行う場合について説明する。なお、ロボット200及びロボット200の関係は逆でもよい。 In the flowchart of FIG. 7, the workpiece W held by the robot hand 202 2 of the robot 200 2 will be described when performing imaging by the camera 300 attached to the robot 200 1. The relationship between the robot 200 1 and the robot 200 2 may be reversed.

CPU501は、ワークWの撮像を行う所定の位置及び姿勢にロボット200,200の動作を制御し、次いで、ロボット200,200に動作停止信号を送り、ロボット200,200の動作を停止させる(S21)。つまり、CPU501は、カメラ300によりワークWを撮像する位置及び姿勢にロボット200,200を動作させてその位置及び姿勢でロボット200,200を停止させる。 CPU501 controls the operation of the robot 200 1, 200 2 at a predetermined position and orientation for imaging the workpiece W, then sends an operation stop signal to the robot 200 1, 200 2, the operation of the robot 200 1, 200 2 Stop (S21). That is, the CPU 501 causes the robots 200 1 and 200 2 to move to positions and orientations at which the camera 300 captures an image of the workpiece W, and stops the robots 200 1 and 200 2 at those positions and orientations.

次に、CPU501は、カメラ300にワークWの撮像を開始させる(S22:撮像開始工程)。即ち、CPU501は、画像処理装置400を介してカメラ300にシャッターを開くトリガ信号を出力する。このトリガ信号を入力したカメラ300は、シャッターを開く。これと同時にCPU501は、タイマ506に計時を開始させる。   Next, the CPU 501 causes the camera 300 to start imaging of the work W (S22: imaging start step). That is, the CPU 501 outputs a trigger signal for opening the shutter to the camera 300 via the image processing apparatus 400. The camera 300 which has received this trigger signal opens the shutter. At the same time, the CPU 501 causes the timer 506 to start timing.

カメラ300の撮像開始のタイミングは、ステップS11のJOB動作開始後であり、ロボットハンド202でワークWを把持する前までに撮像を完了するものである。   The imaging start timing of the camera 300 is after the start of the JOB operation in step S11, and imaging is completed before the robot hand 202 grips the work W.

ロボット200及びロボット200は動作停止による振動が残留している。これにより、カメラ300に対するロボットハンド202で把持しているワークWの相対位置関係が常に変化するため、この状態で撮像した画像のブレは大きくなる。 Robot 200 1 and the robot 200 2 vibration by the operation stop is left. Thus, the relative positional relationship between the workpiece W that are gripped by the robot hand 202 2 with respect to the camera 300 is constantly changing, blurring of an image captured in this state is increased.

CPU501は、カメラ300による撮像中に、加速度センサ260及び力覚センサ250から検出結果である、ロボット200,200の加速度An1,An2の情報を取得する(S23:検出工程)。 CPU501, during imaging by the camera 300, a detection result from the acceleration sensor 260 and the force sensor 250 2, to obtain information of the robot 200 1, 200 2 acceleration An1, An2 (S23: detection step).

CPU501は、取得した加速度An1,An2の情報から、ロボット200,200の位置Pn1,Pn2及び速度Vn1,Vn2の情報を演算(積分)により求める。そして、CPU501は、これら加速度An1,An2、速度Vn1,Vn2、位置Pn1,Pn2を閾値判定することにより、ロボット200,200の振動が全て収束しているか否かを判断する(S24〜S32:判断工程)。 The CPU 501 obtains information on the positions Pn1 and Pn2 and the speeds Vn1 and Vn2 of the robots 200 1 and 200 2 by calculation (integration) from the acquired information on the accelerations An1 and An2. Then, the CPU 501 determines whether all the vibrations of the robots 200 1 and 200 2 have converged by making a threshold determination on the accelerations An1 and An2, the velocities Vn1 and Vn2, and the positions Pn1 and Pn2 (S24 to S32). : Judgment process).

CPU501は、ステップS24〜S32の判断の結果、ロボット200,200の振動が全て収束していると判断した場合(S24〜S32:全て「OK」)、カメラ300により撮像を開始してから所定時間経過したか否かを判断する(S33)。つまり、CPU501は、タイマ506の計時時間が所定時間に達したか否かを判断する。所定時間は、シャッタースピード(撮像時間)であり、予め設定された時間(例えば、1/10秒)である。 When the CPU 501 determines that all the vibrations of the robots 200 1 and 200 2 have converged as a result of the determinations in steps S 24 to S 32 (S 24 to S 32: all “OK”), the imaging by the camera 300 is started. It is determined whether a predetermined time has elapsed (S33). That is, the CPU 501 determines whether the time measured by the timer 506 has reached a predetermined time. The predetermined time is a shutter speed (imaging time), and is a preset time (for example, 1/10 second).

CPU501は、撮像を開始してから所定時間が経過するまでの間は、ステップS23〜S32を繰り返し実行する。   The CPU 501 repeatedly executes steps S23 to S32 until a predetermined time has elapsed since the start of imaging.

CPU501は、ロボット200の振動が収束していると判断している条件の下、撮像開始から所定時間が経過したと判断した場合(S33:Yes)、カメラ300による撮像を完了させる(S34)。つまり、CPU501は、カメラ300のシャッターを閉じるトリガ信号を出力し、トリガ信号を受けたカメラ300は、シャッターを閉じる。CPU501は、カメラ300による撮像完了後、画像処理装置400に画像処理を行わせる(S35:画像処理工程)。   When it is determined that the predetermined time has elapsed from the start of imaging under the condition that it is determined that the vibration of the robot 200 has converged (S33: Yes), the CPU 501 completes the imaging by the camera 300 (S34). That is, the CPU 501 outputs a trigger signal for closing the shutter of the camera 300, and the camera 300 that has received the trigger signal closes the shutter. After the imaging by the camera 300 is completed, the CPU 501 causes the image processing apparatus 400 to perform image processing (S35: image processing step).

つまり、ステップS35では、CPU501は、画像処理装置400にカメラ300から得た画像に対してパターンマッチング処理を行わせ、画像処理装置400から、ワークWの位置及び姿勢の情報を取得する。そして、CPU501は、ワークWの位置及び姿勢に基づき、ロボット200,200の動作を制御する。 That is, in step S35, the CPU 501 causes the image processing apparatus 400 to perform pattern matching processing on the image obtained from the camera 300, and acquires information on the position and orientation of the workpiece W from the image processing apparatus 400. Then, the CPU 501 controls the operation of the robots 200 1 and 200 2 based on the position and posture of the workpiece W.

CPU501は、ステップS24〜S32の判断の結果、ロボット200,200のうち少なくとも1つのロボットにおいて振動が収束していないと判断した場合、カメラ300による撮像を強制的に終了(つまり中止)させる(S36)。つまり、CPU501は、ステップS24〜S32のうち少なくとも1つが「NG」)の場合、カメラ300による撮像を強制的に終了(つまり中止)させる。この場合、撮像途中の画像は、破棄される。 If it is determined that the vibration has not converged in at least one of the robots 200 1 and 200 2 as a result of the determination in steps S 24 to S 32, the CPU 501 forcibly ends (that is, cancels) imaging by the camera 300. (S36). That is, when at least one of steps S24 to S32 is "NG", the CPU 501 forcibly ends (that is, cancels) the imaging by the camera 300. In this case, the image being captured is discarded.

このステップS36の処理は、時間短縮の観点から、撮像を開始してから所定時間が経過するのを待たずに行うのが好ましいが、所定時間経過してから撮像を終了してもよい。   Although it is preferable to perform the process of step S36 without waiting for a predetermined time to elapse after the start of imaging from the viewpoint of shortening the time, the imaging may be ended after a predetermined time has elapsed.

そして、CPU501は、再度、ステップS22の処理に戻って撮像を開始させる撮像開始工程を実行する。CPU501は、ステップS22の処理に戻ることで、ステップS24〜S32が「OK」の間は、ステップS23〜S33を繰り返し実行することとなる。なお、CPU501は、ステップS36で撮像を終了したら、直ちにステップS22にて撮像を開始してもよいが、ステップS36で撮像を終了してから所定の待機時間経過後、ステップS22にて撮像を開始してもよい。CPU501は、この所定の待機時間の計時もタイマ506に行わせる。   Then, the CPU 501 returns to the process of step S22 again and executes an imaging start step of starting imaging. By returning to the process of step S22, the CPU 501 repeatedly executes steps S23 to S33 while steps S24 to S32 are "OK". It should be noted that the CPU 501 may immediately start imaging in step S22 when imaging is completed in step S36, but starts imaging in step S22 after a predetermined standby time has elapsed after completing imaging in step S36. You may The CPU 501 also causes the timer 506 to count the predetermined standby time.

ここで、ステップS24〜S32の処理について具体的に説明する。ロボット200用の検出部は、ロボット200の振動に関する情報として、ロボット200の位置、速度及び加速度のうち少なくとも1つの情報を検出すればよい。第2実施形態では、ロボット200の加速度を検出する加速度センサ260である。 Here, the processes of steps S24 to S32 will be specifically described. Detector for the robot 200 1, as the information about the vibration of the robot 200 1, the position of the robot 200 1 may detect at least one information of the velocity and acceleration. In the second embodiment, an acceleration sensor 260 for detecting acceleration of the robot 200 1.

そして、判断工程では、ロボット200の位置、速度及び加速度のうち、少なくとも1つを閾値判定すればよいが、特に、ロボット200の加速度を閾値判定するのが好ましい。第2実施形態では、ロボット200の位置、速度及び加速度のうち全てを閾値判定する。したがって、第2実施形態では、CPU501は、ロボット200の加速度の情報に基づいて、残り2つの情報、即ちロボット200の速度及び位置を算出している。 Then, in the determining step, the position of the robot 200 1, of the velocity and acceleration may be a threshold determined at least one, but particularly preferred to threshold determination acceleration of the robot 200 1. In the second embodiment, the position of the robot 200 1, the threshold is determined for all of the velocity and acceleration. Therefore, in the second embodiment, CPU 501, based on the acceleration information of the robot 200 1, are calculated remaining two information, i.e., the speed and position of the robot 200 1.

また、ロボット200用の検出部は、ロボット200の振動に関する情報として、ロボット200の位置、速度及び加速度のうち少なくとも1つの情報を検出すればよい。第2実施形態では、実質的にロボット200の加速度を検出する力覚センサ250である。 The detecting unit of the robot 200 2, as the information about the vibration of the robot 200 2, the position of the robot 200 2, may be detected at least one information of the velocity and acceleration. In the second embodiment, a force sensor 250 2 for detecting an acceleration of substantially the robot 200 2.

そして、判断工程では、ロボット200の位置、速度及び加速度のうち、少なくとも1つを閾値判定すればよいが、特に、ロボット200の加速度を閾値判定するのが好ましい。第2実施形態では、ロボット200の位置、速度及び加速度のうち全てを閾値判定する。したがって、第2実施形態では、CPU501は、ロボット200の加速度の情報に基づいて、残り2つの情報、即ちロボット200の速度及び位置を算出している。 Then, in the determining step, the position of the robot 200 2, of the velocity and acceleration may be a threshold determined at least one, but particularly preferred to threshold determination acceleration of the robot 200 2. In the second embodiment, the position of the robot 200 2, the threshold is determined for all of the velocity and acceleration. Therefore, in the second embodiment, CPU 501, based on the acceleration information of the robot 200 2, are calculated remaining two information, i.e., the speed and position of the robot 200 2.

まず、CPU501は、加速度センサ260から得られた加速度の情報に基づいて算出したロボット200の実位置Pn1(第1位置の情報)について閾値判定する(S24)。このステップS24は、上記第1実施形態のステップS14と同様の処理を行う。 First, CPU 501, the threshold determines the actual position of the robot 200 1 Pn1 (information of the first position) calculated based on the acceleration of the information obtained from the acceleration sensor 260 (S24). This step S24 performs the same processing as step S14 of the first embodiment.

また、CPU501は、加速度センサ260から得られた加速度の情報に基づいて算出したロボット200の実速度Vn1(第1速度の情報)について閾値判定する(S25)。このステップS25は、上記第1実施形態のステップS15と同様の処理を行う。 Further, CPU 501 is a threshold determines the actual speed of the robot 200 1 calculated based on the acceleration of the information obtained from the acceleration sensor 260 Vn1 (information of the first speed) (S25). This step S25 performs the same processing as step S15 of the first embodiment.

更にまた、CPU501は、加速度センサ260から得られたロボット200の実加速度An1(第1加速度の情報)について閾値判定する(S26)。このステップS26は、上記第1実施形態のステップS16と同様の処理を行う。 Furthermore, CPU 501 is a threshold determines the actual acceleration An1 of the robot 200 1 obtained from the acceleration sensor 260 (information of the first acceleration) (S26). This step S26 performs the same processing as step S16 of the first embodiment.

次に、CPU501は、力覚センサ250から得られた加速度の情報に基づいて算出したロボット200の実位置Pn2(第2位置の情報)について閾値判定する(S27)。即ち、CPU501は、算出した実位置Pn2が、予め設定した上限位置閾値+Δp21と下限位置閾値−Δp22との間の所定位置範囲内(位置閾値許容範囲内)であるか否かを判断する。 Next, CPU 501, the threshold determines the actual position of the robot 200 2 Pn2 (information of the second position) calculated based on the acceleration of the information obtained from the force sensor 250 2 (S27). That is, the CPU 501 determines whether or not the calculated actual position Pn2 is within a predetermined position range (within the position threshold allowable range) between the upper limit position threshold + Δp21 and the lower limit position threshold −Δp22 set in advance.

また、CPU501は、力覚センサ250から得られた加速度の情報に基づいて算出したロボット200の実速度Vn2(第2速度の情報)について閾値判定する(S28)。即ち、CPU501は、算出した実速度Vn2が、予め設定した上限速度閾値+Δv21と下限速度閾値−Δv22との間の所定速度範囲内(速度閾値許容範囲内)であるか否かを判断する。 Further, CPU 501 may force sensor 250 2 actual speed of the robot 200 2 calculated based on the acceleration information obtained from Vn2 (second speed information) threshold determines (S28) for. That is, the CPU 501 determines whether or not the calculated actual speed Vn2 is within a predetermined speed range (within the speed threshold allowable range) between the upper limit speed threshold + Δv21 set in advance and the lower limit speed threshold −Δv22.

更にまた、CPU501は、力覚センサ250から得られたロボット200の実加速度An2(第2加速度の情報)について閾値判定する(S29)。即ち、CPU501は、検出した実加速度An2が、予め設定した上限加速度閾値+Δa21と下限加速度閾値−Δa22との間の所定加速度範囲内(加速度閾値許容範囲内)であるか否かを判断する。 Furthermore, CPU 501 is a threshold determines the actual acceleration An2 of the robot 200 2 obtained from the force sensor 250 2 (information of the second acceleration) (S29). That is, the CPU 501 determines whether the detected actual acceleration An2 is within a predetermined acceleration range (within the acceleration threshold allowable range) between the upper limit acceleration threshold + Δa21 and the lower limit acceleration threshold −Δa22 set in advance.

また、CPU501は、実位置Pn1と実位置Pn2との合計が所定位置範囲内(位置閾値許容範囲内)であるか否かを判断する(S30)。また、CPU501は、実速度Vn1と実速度Vn2との合計が所定速度範囲内(速度閾値許容範囲内)であるか否かを判断する(S31)。また、CPU501は、実加速度An1と実加速度An2との合計が所定加速度範囲内(加速度閾値許容範囲内)であるか否かを判断する(S32)。   Further, the CPU 501 determines whether the sum of the actual position Pn1 and the actual position Pn2 is within a predetermined position range (within the position threshold allowable range) (S30). Further, the CPU 501 determines whether or not the sum of the actual velocity Vn1 and the actual velocity Vn2 is within a predetermined velocity range (within an allowable velocity threshold range) (S31). Further, the CPU 501 determines whether the sum of the actual acceleration An1 and the actual acceleration An2 is within a predetermined acceleration range (within the acceleration threshold allowable range) (S32).

つまり、第2実施形態では、CPU501は、ロボット200の振動が収束しているか否かの判断として、ロボット200の位置、速度、加速度が、それぞれ所定位置範囲内、所定速度範囲内、所定加速度範囲内であるか否かを判断する。そしてCPU501は、ロボット200の位置が所定位置範囲内であり、速度が所定速度範囲内であり、加速度が所定加速度範囲内である場合、即ちステップS24〜S26のいずれも「OK」の場合には、ロボット200の振動が収束していると判断する。CPU501は、ロボット200の位置、速度、加速度のうち少なくとも1つでも所定位置範囲内、所定速度範囲内、所定加速度範囲内ではない場合、即ちステップS24〜S26の少なくとも1つでも「NG」の場合には、振動が収束していないと判断する。 That is, in the second embodiment, CPU 501 may, as a determination of whether or not the vibration of the robot 200 1 has converged, the position of the robot 200 1, speed, acceleration, respectively within a predetermined position range, within a predetermined speed range, a predetermined It is determined whether or not it is within the acceleration range. Then CPU501, the position of the robot 200 1 is within a predetermined position range, the speed is within a predetermined speed range, if the acceleration is within a predetermined acceleration range, i.e. none of the steps S24~S26 in the case of "OK" determines that the vibration of the robot 200 1 are converged. If at least one of the position, velocity, and acceleration of the robot 2001 is within the predetermined position range, within the predetermined velocity range, and not within the predetermined acceleration range, that is, at least one of steps S24 to S26 is also "NG". In the case, it is determined that the vibration has not converged.

また、CPU501は、ステップS27〜S29において、ロボット200についてもステップS24〜S26と同様に閾値判定する。 Further, CPU 501 in step S27 to S29, similarly the threshold determining step S24~S26 also the robot 200 2.

ここで、カメラ300は、ロボット200に取り付けられているため、ロボット200のロボットハンド202に把持されているワークWを撮像した撮像画像には、両方のロボット2001,2002の振動によるブレが発生する。 Here, the camera 300 and is attached to the robot 200 1, the captured image captured the workpiece W that are gripped by the robot hand 202 2 of the robot 200 2, blurring caused by vibration of both the robot 2001, 2002 Occurs.

そこで、第2実施形態では、位置Pn1と位置Pn2との位置合計、速度Vn1と速度Vn2との速度合計、加速度An1と加速度An2との加速度合計についても、ステップS30〜S32において、ステップS24〜S26と同様に、閾値判定する。   Therefore, in the second embodiment, steps S24 to S26 are also performed in steps S30 to S32 for the position sum of the position Pn1 and the position Pn2, the velocity sum of the velocity Vn1 and the velocity Vn2, and the acceleration total of the acceleration An1 and the acceleration An2. Similarly to the above, the threshold is determined.

具体的には、位置合計は、位置Pn1の絶対値と位置Pn2の絶対値との合計値、速度合計は、速度Vn1の絶対値と速度Vn2の絶対値との合計値、加速度合計は、加速度An1の絶対値と加速度An2の絶対値との合計値である。そして、これら合計値の少なくとも1つが、閾値を上回る場合、振動が収束していないと判断し、全ての合計値が閾値を下回る場合、振動が収束していると判断する。   Specifically, the position total is the sum of the absolute value of the position Pn1 and the absolute value of the position Pn2, the velocity total is the sum of the absolute value of the velocity Vn1 and the absolute value of the velocity Vn2, the acceleration total is the acceleration It is the sum of the absolute value of An1 and the absolute value of the acceleration An2. Then, when at least one of these total values exceeds the threshold, it is determined that the vibration has not converged, and when all the total values are less than the threshold, it is determined that the vibration has converged.

第2実施形態ではワークWを把持するロボット200とワークWを撮像するカメラ300を取付けたロボット200を用いて組立動作を行う。これにより、ロボット200とロボット200でそれぞれ異なる組立動作を行うことにより、その動作に応じた振動変位がロボット200とロボット200に生じる。 In the second embodiment the assembly operation using the robot 200 1 fitted with a camera 300 for imaging the robot 200 2 and the workpiece W which holds the workpiece W. Thus, by performing different assembly operations, respectively robot 200 1 and the robot 200 2, vibration displacement in accordance with the operation occurs in the robot 200 1 and the robot 200 2.

そのため、ロボット200に予め設定する位置閾値の上限+Δp11及び下限−Δp12と、ロボット200に予め設定する位置閾値の上限+Δp21及び下限−Δp22は、第1実施形態の位置閾値より小さくする必要がある。つまり、ロボット200の実位置Pn1と、ロボット200の実位置Pn2の合計が、画像処理への要求精度の許容値を超えないようにする必要があり、ステップS30では、位置合計の閾値判定を行う。 Therefore, a position upper threshold + Derutapi11 and lower -Δp12 presetting the robot 200 1, the upper limit + Derutapi21 and lower -Δp22 position threshold value previously set in the robot 200 2, is necessary to reduce the position threshold of the first embodiment is there. That is, the actual position Pn1 of the robot 200 1, the sum of the actual position Pn2 of the robot 200 2, should not exceed the required accuracy of the tolerance to the image processing, in step S30, the threshold determination of the position total I do.

また、第2実施形態ではワークWを把持するロボット200とワークWを撮像するカメラ300を取付けたロボット200を用いて組立動作を行う。そのため、位置閾値のときと同様にロボット200に予め設定する速度閾値の上限+Δv11及び下限−Δv12と、ロボット200に予め設定する速度閾値の上限+Δv21及び下限−Δv22は、第1実施形態の速度閾値より小さくする必要がある。つまり、ロボット200の実速度Vn1と、ロボット200の実速度Vn2の合計が、画像処理への要求精度の許容値を超えないようにする必要があり、ステップS31では、速度合計の閾値判定を行う。 In the second embodiment the assembly operation using the robot 200 1 fitted with a camera 300 for imaging the robot 200 2 and the workpiece W which holds the workpiece W. Therefore, the upper limit + .DELTA.V11 and lower -Δv12 speed threshold value presetting the robot 200 1 as in the case of position threshold, the upper limit + Derutabui21 and lower -Δv22 speed threshold value presetting the robot 200 2, the first embodiment It needs to be smaller than the speed threshold. That is, the actual speed Vn1 of the robot 200 1, the sum of the actual speed Vn2 of the robot 200 2, should not exceed the required accuracy of the tolerance to the image processing, in step S31, the threshold determination of the speed Total I do.

更にまた、第2実施形態ではワークWを把持するロボット200とワークWを撮像するカメラ300を取付けたロボット200を用いて組立動作を行う。位置閾値及び速度閾値のときと同様、ロボット200に設定する加速度閾値の上限+Δa11及び下限−Δa12と、ロボット200に設定する加速度閾値の上限+Δa21及び下限−Δa22は、第1実施形態の加速度閾値より小さくする必要がある。つまり、ロボット200の実加速度An1と、ロボット200の実加速度An2の合計が、画像処理への要求精度の許容値を超えないようにする必要があり、ステップS32では、加速度合計の閾値判定を行う。 Furthermore, in the second embodiment the assembly operation using the robot 200 1 fitted with a camera 300 for imaging the robot 200 2 and the workpiece W which holds the workpiece W. Similar to the case of the position threshold value and the speed threshold, the upper limit + Derutaei11 and lower -Δa12 acceleration threshold to be set in the robot 200 1, the upper limit + Derutaei21 and lower -Δa22 acceleration threshold to be set in the robot 200 2, acceleration of the first embodiment It needs to be smaller than the threshold. That is, the actual acceleration An1 of the robot 200 1, the sum of the actual acceleration An2 of the robot 200 2, should not exceed the required accuracy of the tolerance to the image processing, in step S32, the threshold determination of the acceleration sum I do.

なお、これらステップS24〜S32の判定の順番は、これに限らず、どのステップから行ってもよく、同時にできる場合は、同時に行ってもよい。但し、実加速度An1、実速度Vn1、実位置Pn1の順に閾値判定を行うと、閾値判定に要する時間を短縮することができるため、好ましい。また、実加速度An2、実速度Vn2、実位置Pn2の順に閾値判定を行うと、閾値判定に要する時間を短縮することができるため、好ましい。   In addition, the order of determination of these steps S24 to S32 is not limited to this, and may be performed from any step, and may be performed simultaneously if it can be performed simultaneously. However, it is preferable to perform threshold determination in the order of the actual acceleration An1, the actual velocity Vn1, and the actual position Pn1, because the time required for the threshold determination can be shortened. Moreover, it is preferable to perform threshold determination in the order of the actual acceleration An2, the actual velocity Vn2, and the actual position Pn2 because the time required for the threshold determination can be shortened.

以下、図8を例にステップS27〜S29の動作について説明する。図8の時刻t11の時点でカメラ300の撮像を開始するものとする。   Hereinafter, the operation of steps S27 to S29 will be described by taking FIG. 8 as an example. It is assumed that imaging of the camera 300 is started at time t11 in FIG.

実位置Pn2,実速度Vn2,実加速度An2は、図8に示すように、時刻t0では大きな振幅であるが、時刻t11から時刻t15と時間が経過するにつれて、徐々に減衰していく。実位置Pn2及び実速度PVn2は、ロボットハンド202の基端とロボットアーム201の先端との間に設けられた力覚センサ250から検出された加速度の情報に基づいて得られる。 As shown in FIG. 8, the actual position Pn2, the actual velocity Vn2 and the actual acceleration An2 have large amplitudes at time t0, but gradually attenuate as time passes from time t11 to time t15. Actual position Pn2 and actual speed PVn2 is obtained based on the acceleration information detected from the force sensor 250 2 provided between the tip of the robot hand 202 second proximal end and the robot arm 201 2.

カメラ300の撮像中に図8の時刻t11〜t14では、実位置Pn2,実速度Vn2,実加速度An2の少なくとも1つが閾値判定で「NG」であるため、画像を廃棄し、再度ステップS22の撮像開始からやり直すことになる。そして、時刻t15でロボット200の実位置Pn2,実速度Vn2,実加速度An2の全てが閾値以内となり、閾値判定で「OK」となるため、画像取得を許可する。しかし、所定時間(撮像時間)Tsが経過する前に、時刻t16で実位置Pn2,実加速度An2が「NG」となり、画像を廃棄し、再度ステップS22の撮像開始からやり直すことになる。 Since at least one of the actual position Pn2, the actual velocity Vn2, and the actual acceleration An2 is “NG” in the threshold determination at time t11 to t14 in FIG. 8 during imaging by the camera 300, the image is discarded and imaging in step S22 is performed again. We will start over again. The actual position of the robot 200 2 at time t15 Pn2, actual speed Vn2, all actual acceleration An2 becomes within the threshold, since the "OK" in the threshold determination, to permit image acquisition. However, before the predetermined time (imaging time) Ts elapses, the actual position Pn2 and the actual acceleration An2 become “NG” at time t16, the image is discarded, and the process is restarted from the imaging start in step S22 again.

更に、時刻t17でもロボット200の実位置Pn2,実速度Vn2,実加速度An2の全てが閾値以内となり、閾値判定で「OK」となるため、画像取得を許可するが、所定時間(撮像時間)Tsが経過する前に「NG」となり、再度撮像開始からやり直す。 Furthermore, time t17 even the actual position of the robot 200 2 Pn2, actual speed Vn2, all actual acceleration An2 becomes within the threshold, since the "OK" in the threshold determination, but permits an image acquisition for a predetermined time (imaging time) It becomes "NG" before Ts elapses, and restarts from the imaging start again.

最後に、時刻t18でロボット200の実位置Pn2,実速度Vn2,実加速度An2の全てが閾値判定で「OK」となり、時刻t8から所定時間(撮像時間)Tsが経過した時点で撮像完了となり、撮像画像が取得される。 Finally, the actual position of the robot 200 2 at time t18 Pn2, actual speed Vn2, "OK" and all the threshold determination of the actual acceleration An2, from time t8 predetermined time (imaging time) Ts becomes imaging completed when has elapsed , A captured image is acquired.

ステップS24〜S32では、ロボット200の位置閾値、速度閾値及び加速度閾値の3つを判定し、ロボット200の位置閾値、速度閾値及び加速度閾値の3つを判定し、合計位置閾値、合計速度閾値及び合計加速度閾値の3つを判定する。つまり、全9つの閾値判定を行う。ロボット制御装置500AのCPU501は、9つの閾値判定の全てが「OK」であると判断した場合に、カメラ300の撮像完了を許可する。 In step S24~S32, it determines three positions threshold, speed threshold and the acceleration threshold of the robot 200 1 determines the three positions threshold, speed threshold and the acceleration threshold of the robot 200 2, total position threshold, the total rate Determine the threshold and the total acceleration threshold. That is, all nine threshold determinations are performed. The CPU 501 of the robot control device 500A permits the imaging completion of the camera 300 when it is determined that all the nine threshold determinations are "OK".

そして、ステップS34でカメラ300での撮像を完了して得られた画像が、画像処理装置400に送られ、パターンマッチング等の画像処理を行うステップS35を経て、ワークWの位置及び姿勢を認識する。また、ロボット制御装置500Aを介して、ロボット200へ動作完了信号を送り、ワークWが撮像可能状態であることの確認を完了する。画像処理装置400で認識したワークWの位置及び姿勢の情報はロボット制御装置500Aに送られ共有する。 Then, the image obtained by completing the imaging with the camera 300 in step S34 is sent to the image processing apparatus 400, and the position and posture of the workpiece W are recognized through step S35 in which image processing such as pattern matching is performed. . Further, through the robot control device 500A, it sends an operation completion signal to the robot 200 2, completing the confirmation that the workpiece W is captured state. The information on the position and orientation of the workpiece W recognized by the image processing apparatus 400 is sent to the robot control apparatus 500A and shared.

以上、第2実施形態の双腕ロボット装置100Aによれば、上記第1実施形態の単腕ロボット装置100と同様の作用効果を奏する。即ち、CPU501が、カメラ300による撮像中にロボット200,200の振動が収束していることを確認して撮像を完了させるので、ワークWを撮像した撮像画像にブレが生じるのをより効果的に低減することができる。これにより、撮像画像からワークWの位置及び姿勢を精度よく認識することができ、ロボット200,200による作業精度が向上する。 As described above, according to the double-arm robot apparatus 100A of the second embodiment, the same function and effect as the single-arm robot apparatus 100 of the first embodiment can be obtained. That is, since the CPU 501 confirms that the vibrations of the robots 200 1 and 200 2 have converged during imaging by the camera 300 and completes the imaging, it is more effective that blurring occurs in the imaged image of the workpiece W Can be reduced. Thus, the position and orientation of the workpiece W can be accurately recognized from the captured image, and the working accuracy of the robots 200 1 and 200 2 is improved.

また、第2実施形態の双腕ロボット装置100Aにおける組立動作では、ロボット200及びロボット200が位置閾値、速度閾値及び加速度閾値の条件を満たしていることを確認する。そのため、ロボット200にはカメラを搭載しなくても良くなり、ロボット200のハンド部分の重量を軽くすることができる。これにより、駆動モータの加速性に余裕ができ、ロボットアーム201の加速性が増すので、より安定な作業を実現することができる。 Further, in the assembling operation in the double-arm robot apparatus 100A of the second embodiment, to confirm that the robot 200 1 and the robot 200 2 satisfies the condition of the position threshold, the speed threshold and the acceleration threshold. Therefore, the robot 200 2 better without mounting the camera, it is possible to reduce the weight of the hand portion of the robot 200 2. This allows room for the acceleration of the drive motor, the acceleration of the robot arm 201 2 is increased, it is possible to realize a more stable operation.

[第3実施形態]
次に、本発明の第3実施形態に係るロボット装置について説明する。図9は、本発明の第3実施形態に係るロボット装置の概略構成を示す斜視図である。なお、第3実施形態のロボット装置100Bにおいて、上記第1,第2実施形態のロボット装置100,100Aの構成と同様の構成については、同一符号を付して説明を省略する。
Third Embodiment
Next, a robot apparatus according to a third embodiment of the present invention will be described. FIG. 9 is a perspective view showing a schematic configuration of a robot apparatus according to a third embodiment of the present invention. In the robot apparatus 100B of the third embodiment, the same components as those of the robot apparatuses 100 and 100A of the first and second embodiments are denoted by the same reference numerals and the description thereof will be omitted.

図9に示すロボット装置100Bは、カメラ300の代わりに、ワークトレイTrに置かれているワークWの位置や数量を監視しているワーク監視用のカメラ300Bを備えている。カメラ300Bは、ワークトレイTrを撮像できる位置に、床Fに配置された支持部材301によって支持(固定)されている。この場合、カメラ300Bとロボット200を用いて、図7の手順により組立動作を行う。 The robot apparatus 100B shown in FIG. 9 includes a camera 300B for workpiece monitoring that monitors the position and quantity of the workpiece W placed on the workpiece tray Tr, instead of the camera 300. The camera 300 </ b> B is supported (fixed) by a support member 301 disposed on the floor F at a position at which the work tray Tr can be imaged. In this case, by using the camera 300B and the robot 200 2, to assemble the operation by the procedure of FIG.

ワーク監視用のカメラ300Bとロボット200における組立動作では、カメラ300B及びロボット200が位置閾値、速度閾値及び加速度閾値の条件を満たしていることをロボット制御装置500Aで確認する。そのため、ロボット200がワークトレイTrに置かれたワークWを精度よく把持することが可能となるので、より安定した作業を実現することができる。 In the assembled operations in the camera 300B and the robot 200 2 for work monitoring to ensure that the camera 300B and the robot 200 2 satisfies the condition of the position threshold, the speed threshold and the acceleration threshold in the robot controller 500A. Therefore, it becomes possible to robot 200 2 grasps precisely the workpiece W placed on the work tray Tr, it is possible to realize a more stable operation.

なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。   The present invention is not limited to the embodiments described above, and many modifications can be made within the technical concept of the present invention.

上記実施形態では、ロボットアームが、垂直型のロボットアームの場合について説明したが、多軸の直交ロボットでもよい。   In the above embodiment, the robot arm is a vertical robot arm, but may be a multi-axis orthogonal robot.

また、上記実施形態では、エンドエフェクタがロボットハンドである場合について説明したが、ワークに作業を施すツールであってもよい。   Moreover, although the case where the end effector is a robot hand has been described in the above embodiment, it may be a tool for performing work on a work.

また、上記実施形態では、加速度センサにより加速度を検出したが、これに限定するものではなく、ロボットハンドに搭載(内蔵)した力覚センサを用いて、ロボットハンドに掛る外力による振動を検出してもよい。   Further, in the above embodiment, although the acceleration is detected by the acceleration sensor, the present invention is not limited to this, and a force sensor mounted (embedded) in the robot hand is used to detect the vibration due to the external force applied to the robot hand It is also good.

また、上記第2及び第3実施形態では、ロボットが2つの場合について説明したが、ロボットが3つ以上の場合についても本発明は適用可能である。   Further, in the second and third embodiments, the case of two robots has been described, but the present invention is also applicable to the case of three or more robots.

また、上記実施形態では、制御部である制御システムが、ロボット制御装置と画像処理装置とに2つのコンピュータで構成されている場合について説明したが、これに限定するものではなく、1つのコンピュータで構成されていてもよい。   Further, in the above embodiment, the case where the control system which is the control unit is configured by the robot control device and the image processing device by two computers has been described, but the present invention is not limited to this. It may be configured.

また、上記実施形態の各処理動作は具体的にはCPU501により実行されるものである。従って上述した機能を実現するプログラムを記録した記録媒体をロボット制御装置に供給し、ロボット制御装置のコンピュータ(CPUやMPU)が記録媒体に格納されたプログラムを読み出し実行することによって達成されるようにしてもよい。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、プログラム自体及びそのプログラムを記録した記録媒体は本発明を構成することになる。   Further, each processing operation of the above embodiment is specifically executed by the CPU 501. Therefore, a recording medium recording a program for realizing the above-described function is supplied to the robot control device, and a computer (CPU or MPU) of the robot control device reads out and executes the program stored in the recording medium. May be In this case, the program itself read from the recording medium implements the functions of the above-described embodiments, and the program itself and the recording medium recording the program constitute the present invention.

また、上記実施形態では、コンピュータ読み取り可能な記録媒体がHDD504であり、HDD504にプログラム530,530Aが格納される場合について説明したが、これに限定するものではない。プログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、図2及び図6に示すROM502、記録ディスク531、不図示の外部記憶装置等を用いてもよい。具体例を挙げて説明すると、記録媒体として、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、書き換え可能な不揮発性のメモリ(例えばUSBメモリ)、ROM等を用いることができる。   In the above embodiment, the case where the computer readable recording medium is the HDD 504 and the programs 530 and 530A are stored in the HDD 504 is described, but the present invention is not limited to this. The program may be recorded on any recording medium as long as it is a computer readable recording medium. For example, as a recording medium for supplying the program, the ROM 502 shown in FIGS. 2 and 6, the recording disk 531, an external storage device (not shown) or the like may be used. A specific example will be described. As a recording medium, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, magnetic tape, rewritable nonvolatile memory (for example, USB memory), ROM, etc. It can be used.

また、上記実施形態におけるプログラムを、ネットワークを介してダウンロードしてコンピュータにより実行するようにしてもよい。   Further, the program in the above embodiment may be downloaded via a network and executed by a computer.

また、コンピュータが読み出したプログラムコードを実行することにより、上記実施形態の機能が実現されるだけに限定するものではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。   Further, the present invention is not limited to the implementation of the functions of the above embodiments by executing the program code read by the computer. The case where the OS (Operating System) or the like operating on the computer performs a part or all of the actual processing based on the instruction of the program code and the processing of the above-described embodiment is realized by the processing is also included. .

さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上記実施形態の機能が実現される場合も含まれる。   Furthermore, the program code read out from the recording medium may be written to a memory provided to a function expansion board inserted into the computer or a function expansion unit connected to the computer. Based on the instruction of the program code, the CPU included in the function expansion board or the function expansion unit performs a part or all of the actual processing, and the processing of the above embodiment is realized.

また、上記実施形態では、コンピュータがHDD等の記録媒体に記録されたプログラムを実行することにより、画像処理を行う場合について説明したが、これに限定するものではない。プログラムに基づいて動作する制御部の一部又は全部の機能をASICやFPGA等の専用LSIで構成してもよい。なお、ASICはApplication Specific Integrated Circuit、FPGAはField−Programmable Gate Arrayの頭字語である。   Further, in the above embodiment, the case where the computer executes image processing by executing a program recorded in a recording medium such as an HDD has been described, but the present invention is not limited to this. Some or all of the functions of the control unit that operates based on a program may be configured by a dedicated LSI such as an ASIC or an FPGA. ASIC is an acronym of Application Specific Integrated Circuit, and FPGA is an acronym of Field-Programmable Gate Array.

100…ロボット装置、200…ロボット、201…ロボットアーム、202…エンドエフェクタ(ロボットハンド)、260…検出部(加速度センサ)、300…カメラ、400…画像処理装置、500…ロボット制御装置、530…プログラム、600…制御システム(制御部) DESCRIPTION OF SYMBOLS 100 ... Robot apparatus, 200 ... Robot, 201 ... Robot arm, 202 ... End effector (robot hand), 260 ... Detection part (acceleration sensor) 300 ... Camera, 400 ... Image processing apparatus, 500 ... Robot control apparatus, 530 ... Program, 600 ... control system (control unit)

Claims (11)

ロボットの振動を検出する検出部の検出結果と、ワークを撮像した撮像画像を用いて求められた前記ワークの位置及び姿勢に基づいて、前記ロボットを制御するロボット制御方法において、
カメラによる所定時間の撮像を制御する第1制御工程と、
前記カメラによる前記所定時間の撮像中に、前記検出部が、あらかじめ定めた閾値よりも大きな振動を検出しなかった場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用し、
前記カメラによる前記所定時間の撮像中に、前記検出部が、あらかじめ定めた閾値よりも大きな振動を検出した場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用することなく、再度、前記カメラによる前記所定時間の撮像を行うように制御する第2制御工程と、を備えたことを特徴とするロボット制御方法。
A robot control method for controlling the robot based on a detection result of a detection unit that detects a vibration of the robot and a position and a posture of the workpiece obtained using a captured image obtained by capturing the workpiece.
A first control step of controlling imaging of a predetermined time by a camera;
If the detection unit does not detect a vibration larger than a predetermined threshold during imaging of the predetermined time by the camera, it is determined using a captured image obtained by imaging of the predetermined time Information on the position and attitude of the work is used to control the robot,
When the detection unit detects a vibration larger than a predetermined threshold during imaging of the predetermined time by the camera, the work obtained using the captured image obtained by imaging of the predetermined time A second control step of performing control so that imaging of the predetermined time by the camera is performed again without using information related to the position and attitude of the robot for controlling the robot .
前記検出部は、前記ロボットの位置、前記ロボットの速度、前記ロボットの加速度のうち少なくとも1つの値を検出し、
前記第2制御工程において、
前記検出部により検出された、前記ロボットの位置、前記ロボットの速度、前記ロボットの加速度のうち少なくとも1つの値から、残りの2つの値を演算により求め、
前記カメラによる前記所定時間の撮像中に、前記ロボットの位置の値、前記ロボットの速度の値、前記ロボットの加速度の値、それぞれの値が、あらかじめ定めたそれぞれの閾値よりも小さい場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用し、
前記カメラによる前記所定時間の撮像中に、前記ロボットの位置の値、前記ロボットの速度の値、前記ロボットの加速度の値、それぞれの値が、あらかじめ定めたそれぞれの閾値よりも大きい場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用することなく、再度、前記カメラによる前記所定時間の撮像を行うように制御することを特徴とする請求項1に記載のロボット制御方法。
The detection unit detects at least one of the position of the robot, the velocity of the robot, and the acceleration of the robot.
In the second control step,
The remaining two values are determined by calculation from at least one value of the position of the robot, the velocity of the robot, and the acceleration of the robot detected by the detection unit,
When the value of the position of the robot, the value of the velocity of the robot, and the value of the acceleration of the robot are smaller than predetermined threshold values during imaging of the predetermined time by the camera, The information on the position and posture of the work obtained using the captured image obtained by imaging for the predetermined time is used for control of the robot,
If the value of the position of the robot, the value of the velocity of the robot, the value of the acceleration of the robot, and the respective values are larger than predetermined threshold values during imaging of the predetermined time by the camera, In order to perform imaging of the predetermined time by the camera again without using information on the position and orientation of the work obtained using the captured image obtained by imaging of the predetermined time for control of the robot The robot control method according to claim 1, wherein the control is performed.
前記ロボットは複数存在し、
前記検出部は、複数存在している前記ロボットそれぞれに設けられていることを特徴とする請求項1または請求項2に記載のロボット制御方法。
There are a plurality of the robots,
The robot control method according to claim 1, wherein the detection unit is provided for each of the plurality of robots.
前記カメラが、前記ロボットに取り付けられていることを特徴とする請求項1から請求項3のいずれか1項に記載のロボット制御方法。   The robot control method according to any one of claims 1 to 3, wherein the camera is attached to the robot. 前記カメラが、前記複数のロボットのうちいずれかのロボットに取り付けられていることを特徴とする請求項1から請求項4のいずれか1項に記載のロボット制御方法。   The robot control method according to any one of claims 1 to 4, wherein the camera is attached to any one of the plurality of robots. 前記カメラが、床に配置される支持部材に支持されていることを特徴とする請求項1から請求項5のいずれか1項に記載のロボット制御方法。   The robot control method according to any one of claims 1 to 5, wherein the camera is supported by a support member disposed on a floor. ロボットの振動を検出する検出部の検出結果と、ワークを撮像した撮像画像を用いて求められた前記ワークの位置及び姿勢に基づいて、前記ロボットを制御するロボット制御装置において、
カメラによる所定時間の撮像を制御する撮像制御手段と、
前記カメラによる前記所定時間の撮像中に、前記検出部が、あらかじめ定めた閾値よりも大きな振動を検出しなかった場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用し、
前記カメラによる前記所定時間の撮像中に、前記検出部が、あらかじめ定めた閾値よりも大きな振動を検出した場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用することなく、再度、前記カメラによる前記所定時間の撮像を行うように前記撮像制御手段を制御する制御部と、を備えたことを特徴とするロボット制御装置。
A robot control apparatus that controls the robot based on a detection result of a detection unit that detects a vibration of the robot and a position and a posture of the workpiece obtained using a captured image obtained by capturing the workpiece.
Imaging control means for controlling imaging of a predetermined time by the camera;
If the detection unit does not detect a vibration larger than a predetermined threshold during imaging of the predetermined time by the camera, it is determined using a captured image obtained by imaging of the predetermined time Information on the position and attitude of the work is used to control the robot,
When the detection unit detects a vibration larger than a predetermined threshold during imaging of the predetermined time by the camera, the work obtained using the captured image obtained by imaging of the predetermined time A control unit that controls the imaging control unit to perform imaging of the predetermined time by the camera again without using information related to the position and orientation of the robot for controlling the robot. Robot control unit.
前記検出部は、前記ロボットの位置、前記ロボットの速度、前記ロボットの加速度のうち少なくとも1つの値を検出し、
前記制御部は、
前記検出部により検出された、前記ロボットの位置、前記ロボットの速度、前記ロボットの加速度のうち少なくとも1つの値から、残りの2つの値を演算により求め、
前記カメラによる前記所定時間の撮像中に、前記ロボットの位置の値、前記ロボットの速度の値、前記ロボットの加速度の値、それぞれの値が、あらかじめ定めたそれぞれの閾値よりも小さい場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用し、
前記カメラによる前記所定時間の撮像中に、前記ロボットの位置の値、前記ロボットの速度の値、前記ロボットの加速度の値、それぞれの値が、あらかじめ定めたそれぞれの閾値よりも大きい場合には、当該所定時間の撮像で得られた撮像画像を用いて求められた前記ワークの位置および姿勢に関する情報を前記ロボットの制御に利用することなく、再度、前記カメラによる前記所定時間の撮像を行うように前記撮像制御手段を制御することを特徴とする請求項7に記載のロボット制御装置。
The detection unit detects at least one of the position of the robot, the velocity of the robot, and the acceleration of the robot.
The control unit
The remaining two values are determined by calculation from at least one value of the position of the robot, the velocity of the robot, and the acceleration of the robot detected by the detection unit,
During imaging between the plant scheduled by the camera, the value of the position of the robot, the rate of the value of the robot, acceleration values of the robot, if each value is less than the respective threshold determined in advance Using the information on the position and orientation of the work obtained using the captured image obtained by imaging for the predetermined time for control of the robot,
During imaging between the plant scheduled by the camera, the value of the position of the robot, the rate of the value of the robot, acceleration values of the robot, if each value is greater than the respective threshold value for the predetermined In order to perform imaging of the predetermined time by the camera again without using information on the position and orientation of the work obtained using the captured image obtained by imaging of the predetermined time for control of the robot The robot control apparatus according to claim 7, wherein the imaging control means is controlled on the basis of
コンピュータに請求項1乃至6のいずれか1項に記載のロボット制御方法の各工程を実行させるためのプログラム。   The program for making a computer perform each process of the robot control method of any one of Claims 1-6. 請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   The computer-readable recording medium which recorded the program of Claim 9. 請求項1乃至6のいずれか1項に記載のロボット制御方法を用いて組立作業または加工作業を行うことを特徴とする部品の製造方法。   A method of manufacturing a part comprising performing an assembly operation or a processing operation using the robot control method according to any one of claims 1 to 6.
JP2014010908A 2014-01-24 2014-01-24 Robot control method, robot control device, program, recording medium, and part manufacturing method Active JP6425385B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014010908A JP6425385B2 (en) 2014-01-24 2014-01-24 Robot control method, robot control device, program, recording medium, and part manufacturing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014010908A JP6425385B2 (en) 2014-01-24 2014-01-24 Robot control method, robot control device, program, recording medium, and part manufacturing method

Publications (3)

Publication Number Publication Date
JP2015136778A JP2015136778A (en) 2015-07-30
JP2015136778A5 JP2015136778A5 (en) 2017-03-02
JP6425385B2 true JP6425385B2 (en) 2018-11-21

Family

ID=53768144

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014010908A Active JP6425385B2 (en) 2014-01-24 2014-01-24 Robot control method, robot control device, program, recording medium, and part manufacturing method

Country Status (1)

Country Link
JP (1) JP6425385B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6700726B2 (en) * 2015-11-06 2020-05-27 キヤノン株式会社 Robot controller, robot control method, robot control system, and computer program
JP7106816B2 (en) * 2017-03-31 2022-07-27 セイコーエプソン株式会社 Controllers, control systems and robot systems
JP6939024B2 (en) 2017-03-31 2021-09-22 セイコーエプソン株式会社 Robot control devices, robots and robot systems
DE102017207069A1 (en) * 2017-04-27 2018-10-31 Robert Bosch Gmbh Test device for optical inspection of an object, production plant with the test device and method for optical testing of the object with the test device
JP6836564B2 (en) * 2018-10-05 2021-03-03 ファナック株式会社 Sensor bracket and robot system
JP6898374B2 (en) * 2019-03-25 2021-07-07 ファナック株式会社 Motion adjustment device for adjusting the operation of the robot device and motion adjustment method for adjusting the motion of the robot device
WO2023199478A1 (en) * 2022-04-14 2023-10-19 三菱電機株式会社 Robot control device and picking system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0612112A (en) * 1992-06-24 1994-01-21 Fanuc Ltd Position and attitude detecting method for object in image processor
JPH08285526A (en) * 1995-04-19 1996-11-01 Fanuc Ltd Image recognition system
JP2005074617A (en) * 2003-09-04 2005-03-24 Yaskawa Electric Corp Production system
JP3946711B2 (en) * 2004-06-02 2007-07-18 ファナック株式会社 Robot system
US9333654B2 (en) * 2008-03-31 2016-05-10 Abb Research Ltd. Robot parts assembly on a workpiece moving on an assembly line
JP2010125582A (en) * 2008-12-01 2010-06-10 Seiko Epson Corp Robot arm device, and method and program for controlling robot arm device
JP5549129B2 (en) * 2009-07-06 2014-07-16 セイコーエプソン株式会社 Position control method, robot
JP5417161B2 (en) * 2009-12-28 2014-02-12 川崎重工業株式会社 Robot vibration control method and robot control apparatus
JP5755038B2 (en) * 2010-06-28 2015-07-29 キヤノン株式会社 Assembly equipment and production system
JP5906825B2 (en) * 2012-03-08 2016-04-20 セイコーエプソン株式会社 robot

Also Published As

Publication number Publication date
JP2015136778A (en) 2015-07-30

Similar Documents

Publication Publication Date Title
JP6425385B2 (en) Robot control method, robot control device, program, recording medium, and part manufacturing method
US10486309B2 (en) Robot controlling method, robot apparatus, program, recording medium, and method for manufacturing assembly component
JP4837113B2 (en) Fitting device using robot
US9849592B2 (en) Robot apparatus, robot control method, program, and recording medium
US20190270207A1 (en) Robot hand, robot and robot system capable of gripping workpiece, and method of rotating and inserting workpiece into hole
JP5652042B2 (en) Robot apparatus, control method and program for robot apparatus
JP5306313B2 (en) Robot controller
KR101939438B1 (en) Control of a flexibly regulated robot
WO2010050119A1 (en) Robot control apparatus
JP4598849B2 (en) Fitting device for correcting clogged fitting
JP6392825B2 (en) Robot controller with learning control function
US20150120058A1 (en) Robot, robot system, and robot control apparatus
US11027424B2 (en) Robot hand, robot apparatus, and method of controlling robot hand
CN101323111A (en) Fitting apparatus for fitting two workpieces to each other
EP3476550B1 (en) Robot system, robot controller, and method for withdrawing robot
JP2015030086A (en) Robot control method, robot system, program and recording medium
US8543239B2 (en) Robot control apparatus
JP2009083094A (en) Control method of robot device, and the robot device
JP2018051635A (en) Robot control device, robot and robot system
JP5874260B2 (en) Robot equipment
JP2017087325A (en) Robot control device, robot control method, robot control system, and computer program
US20150343642A1 (en) Robot, robot system, and control method
JP5195465B2 (en) Robot control apparatus and method
JP2015186834A (en) Robot control apparatus, holding unit control device, robot, holding unit, robot control method and program
JP2003305678A (en) Robot and control method for robot

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180710

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180905

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180925

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181023

R151 Written notification of patent or utility model registration

Ref document number: 6425385

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151