JP2015182145A - Control method of robot system and robot system - Google Patents

Control method of robot system and robot system Download PDF

Info

Publication number
JP2015182145A
JP2015182145A JP2014057838A JP2014057838A JP2015182145A JP 2015182145 A JP2015182145 A JP 2015182145A JP 2014057838 A JP2014057838 A JP 2014057838A JP 2014057838 A JP2014057838 A JP 2014057838A JP 2015182145 A JP2015182145 A JP 2015182145A
Authority
JP
Japan
Prior art keywords
arm
hand
control
time
arm movement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014057838A
Other languages
Japanese (ja)
Inventor
謙太 松原
Kenta Matsubara
謙太 松原
勉 尾坂
Tsutomu Ozaka
勉 尾坂
正和 ▲高▼橋
正和 ▲高▼橋
Masakazu Takahashi
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 JP2014057838A priority Critical patent/JP2015182145A/en
Publication of JP2015182145A publication Critical patent/JP2015182145A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To control a picking operation for gripping a workpiece optimally and at a high speed by performing control of a robot system while selecting either full-close control or semi-close control in accordance with assembling conditions, characteristics of the workpiece or the like.SOLUTION: A robot system includes a hand 102 which grips an object and an arm (100) which supports the hand 102 and is moved. Therein, encoders 10, 16 are provided respectively on input and output sides of a reduction gear 11 and either full-close control in which an operation of the arm is controlled based on a detection value of the encoder 16 or semi-close control in which the operation of the arm is controlled based on a detection value of the encoder 10 is determined. Information concerning at least position and size of a gripping object is recognized, full-close control calculation 404 and semi-close control calculation 411 are performed and such a control mode that a picking operation time is shorter is selected from the full-close control or the semi-close control.

Description

本発明は、複数の制御態様から1の制御態様をその移動制御態様として選択可能なアームと、前記アームにより移動されるハンドを備えたロボットシステムの制御方法、同ロボットシステムに関する。   The present invention relates to a control method for a robot system including an arm capable of selecting one of the plurality of control modes as the movement control mode, and a hand moved by the arm, and the robot system.

従来より、工場の生産ラインにおいて、作業の自動化、省人化を図るために、ロボットを用いた自動組立が利用されている。現在では、より複雑な動作を行うために、多関節ロボットアームを備えたロボットが実用化され、広く普及している。この種のロボットシステムでは、生産性向上のため、サイクルタイム(タクトタイム)の短縮を図るため、例えばワークをロボットハンドにより把持するピッキングの動作時間の短縮が求められている。   Conventionally, automatic assembly using a robot has been used in a production line of a factory in order to automate operations and save labor. Currently, in order to perform more complex operations, robots equipped with articulated robot arms have been put into practical use and are widely used. In this type of robot system, in order to reduce the cycle time (tact time) in order to improve productivity, for example, it is required to reduce the operation time of picking for gripping a workpiece with a robot hand.

従来より、ピッキング動作時間を短縮するため、様々な技術が提案されている。例えば特許文献1には、3軸マニピュレータを用いたピッキング装置において、出庫棚から出荷箱までの一連の動作を連続で実行する制御が開示されている。この特許文献1では、各動作毎に各軸均一の停止位置決め精度を設定するのではなく、各動作に必要限求められる停止位置決め精度を設定することにより、ピッキングのサイクルタイムのアップを図っている。   Conventionally, various techniques have been proposed to shorten the picking operation time. For example, Patent Document 1 discloses control for continuously executing a series of operations from a delivery shelf to a shipping box in a picking apparatus using a three-axis manipulator. In Patent Document 1, the stop positioning accuracy that is uniform for each axis is not set for each operation, but the stop positioning accuracy required for each operation is set to increase the picking cycle time. .

また特許文献2では、ロボットアームの速度や位置決め精度を向上し、ロボットアームの振動を抑制するために、高精度位置決めモード、高速動作可能モード、のようなモード切替えを行う技術が開示されている。   Patent Document 2 discloses a technique for switching modes such as a high-accuracy positioning mode and a high-speed operable mode in order to improve the speed and positioning accuracy of the robot arm and suppress the vibration of the robot arm. .

特許第3186899号公報Japanese Patent No. 3186899 特開2011−176913号公報JP 2011-176913 A

上記特許文献1、2に記載の技術はいずれも、精度が厳密に必要とされる動作とそれほど精度が要求されない動作を判別して、ロボットの動作を制御することで作業時間短縮を図ることに主眼をおいている。一方、ロボットハンドにより対象物をピッキングするロボットシステムにおいては、次のような技術課題がある。   In any of the techniques described in Patent Documents 1 and 2 described above, it is possible to discriminate between operations that require strict accuracy and operations that do not require that much accuracy, and to reduce the work time by controlling the operation of the robot. Focus on it. On the other hand, a robot system that picks an object with a robot hand has the following technical problems.

例えば、複雑な動作を行う多関節ロボットアームの精密組み付け作業では、ハンドでワークを把持する場合、ロボットアームの位置決めバラつきの影響を考慮し、ハンド開量は、ハンドで把持するワークに対し遊びを持たせる必要がある。しかし、この遊びを大きく取るとハンドの把持制御に要する時間が長くなる傾向がある。従って、ピッキング動作の所要時間のうち、ハンドの把持制御に関しては、ワークのサイズや要求される組み付け精度などによって定まるハンド開量を把持制御時間の長短に影響するパラメータとして考えることができる。   For example, in the precise assembly work of an articulated robot arm that performs complex operations, when gripping a workpiece with a hand, the amount of opening of the hand takes into account play with respect to the workpiece gripped with the hand in consideration of the effects of positioning variations of the robot arm. It is necessary to have it. However, if this play is made large, the time required for hand grip control tends to be long. Therefore, of the time required for the picking operation, regarding the hand grip control, the amount of hand opening determined by the size of the workpiece and the required assembly accuracy can be considered as a parameter that affects the length of the grip control time.

また、ピッキング動作には、例えばロボットアームによりロボットハンドをワークの取り出し位置まで移動させる動作も含まれる。従って、ピッキング動作の所要時間のうち、例えばロボットアームでロボットハンドを待機位置から取り出し位置までの移動させる距離を移動制御時間の長短に影響するパラメータとして考えることができる。   In addition, the picking operation includes an operation of moving the robot hand to a workpiece take-out position by a robot arm, for example. Therefore, of the time required for the picking operation, for example, the distance by which the robot hand moves from the standby position to the take-out position with the robot arm can be considered as a parameter that affects the length of the movement control time.

一方、ロボットの機構部、例えばロボットアームの関節は、波動歯車などを用いた減速機を介してACやDCのサーボモータ、あるいはパルスモータなどのモータによって駆動される。この種の駆動機構の制御においては、モータや減速機の回転軸に設けられたエンコーダを用いて対象物の位置や姿勢を閉(クローズド)ループ制御する。このような閉ループ制御において、対象物の位置や姿勢に相当する実際値を検出するこれらエンコーダの出力を用いる場合、そのエンコーダが機構の位置のどのような位置に設けられているかによって、制御の特性が異なってくる。   On the other hand, a robot mechanism, for example, a joint of a robot arm, is driven by a motor such as an AC or DC servo motor or a pulse motor via a speed reducer using wave gears. In this type of drive mechanism control, the position and posture of the object are closed (closed) loop control using an encoder provided on the rotating shaft of a motor or speed reducer. In such closed-loop control, when using the output of these encoders that detect actual values corresponding to the position and orientation of the object, the control characteristics depend on the position of the mechanism in the encoder. Will be different.

一般に、駆動機構の入力側、例えばモータの駆動軸(あるいは減速機の入力軸)に設けたエンコーダを用いる閉ループ制御はセミクローズ(ド)制御と呼ばれている。また、駆動対象に近い側、例えば減速機の出力軸に設けたエンコーダを用いる閉ループ制御はフルクローズ(ド)制御などと呼ばれる。これらセミクローズ制御およびフルクローズ制御には、制御の速度や精度に関して、それぞれ概ね次のような特徴がある。   Generally, closed loop control using an encoder provided on the input side of the drive mechanism, for example, the drive shaft of the motor (or the input shaft of the speed reducer) is called semi-closed control. Closed loop control using an encoder provided on the side close to the drive target, for example, the output shaft of the reduction gear, is called full-closed control. These semi-closed control and full-closed control generally have the following characteristics regarding the speed and accuracy of control.

例えば、セミクローズ制御は、駆動精度はそれ程高くないが位置や姿勢の制御速度は高速であり、目標の位置(姿勢)付近でのハンチングなどの誤動作を生じない特徴がある。一方、フルクローズ制御は、駆動精度が高いかわりにセミクローズ制御ほど高い制御速度は得られない。また、目標の位置(姿勢)付近でのハンチングなどの誤動作の影響を回避するために様々な付加的な制御を行うなどの必要があり、この点でも高速な駆動制御を行なうのが難しい、といった特徴がある。   For example, the semi-closed control is not so high in driving accuracy but has a high position and orientation control speed, and does not cause malfunction such as hunting near the target position (orientation). On the other hand, the full-closed control cannot obtain a higher control speed than the semi-closed control, although the driving accuracy is high. In addition, it is necessary to perform various additional controls to avoid the effects of malfunctions such as hunting near the target position (posture), and it is difficult to perform high-speed drive control in this respect as well. There are features.

ここで、ピッキング動作時間を短縮する観点から、アーム移動制御態様として、フルクローズ制御またはセミクローズ制御のいずれを選択すべきかを考えると、一見、セミクローズ制御の方が有利であるように思われる。しかしながら、ピッキング動作全体を考えると、必ずしもフルクローズ制御よりもセミクローズ制御の方がピッキング動作の総所要時間が短くなる、とはいえない可能性がある。   Here, from the viewpoint of shortening the picking operation time, it seems that the semi-closed control is more advantageous at first glance when considering whether to select the full-closed control or the semi-closed control as the arm movement control mode. . However, considering the entire picking operation, it may not necessarily be said that the semi-closed control requires a shorter total time for the picking operation than the full-closed control.

例えば、要求されたピッキング動作においてロボットアームによるハンドの移動距離がごく小さい場合と、かなり大きい場合などが考えられる。そして、ハンドの開量も、対象物のサイズによって最小限度の大きさは決定できたとしても、上記のハンド開量に関する遊び量についてはワークが精密部品や壊れ易い部品であるか、などによって調節しなければならない可能性がある。また、ハンド開量については、それ以前のアーム移動がフルクローズ制御でセミクローズ制御のいずれで行われたかによって精度が異なるのであればそれに応じた遊び量(余裕)を取る必要が出てくる可能性がある。   For example, there are cases where the moving distance of the hand by the robot arm in the requested picking operation is very small or quite large. Even if the opening amount of the hand can be determined to the minimum size depending on the size of the object, the play amount related to the opening amount of the hand is adjusted depending on whether the work is a precision part or a fragile part. You may have to do that. In addition, regarding the amount of opening of the hand, if the accuracy differs depending on whether the previous arm movement was performed by full-closed control or semi-closed control, it may be necessary to take a play amount (margin) accordingly. There is sex.

以上のように、ピッキング動作の総所要時間の短縮に関して、フルクローズ制御、セミクローズ制御のいずれが適しているかは、組み立て条件やワークのサイズ、特性などを含んで決定されるピッキング動作の態様によって様々に変化し得る。例えば、ピッキング制御に要する総所要時間のうち、ロボットアームの移動制御時間とハンドの把持制御時間のいずれが大きな比重を持つかはピッキング動作の態様によって異なり、一概に予想できない。また、ロボットアームおよびロボットハンドの制御条件は相互に独立してはおらず、動作前に両者の動作時間を見積もるにしても、アームおよびハンドの動作時間を単純に独立して計算することは適切ではない。   As described above, whether the full-closed control or the semi-closed control is suitable for shortening the total time required for the picking operation depends on the mode of the picking operation that is determined including the assembly conditions, workpiece size, characteristics, etc. Can vary. For example, of the total time required for picking control, which of the robot arm movement control time and the hand gripping control time has a large specific gravity differs depending on the mode of the picking operation, and cannot be generally predicted. Also, the control conditions of the robot arm and robot hand are not independent of each other, and it is not appropriate to simply calculate the arm and hand operating time independently even if the operating time of both is estimated before the operation. Absent.

本発明の課題は、組み立て条件やワークの特性などに応じて、ロボットシステムの制御をフルクローズ制御で行うかセミクローズ制御で行うかを選択し、ワークを把持するピッキング動作を最適かつ高速に制御できるようにすることにある。   The object of the present invention is to select whether to control the robot system with full-closed control or semi-closed control according to the assembly conditions and workpiece characteristics, and to control the picking operation for gripping the workpiece optimally and at high speed. There is to be able to do it.

上記課題を解決するため、本発明においては、対象物を把持するハンドと、前記ハンドを支持して移動するアームと、複数のアーム移動制御態様から選択した1のアーム移動制御態様によって前記アームの動作を制御する制御装置と、を有するロボットシステムの制御方法において、前記制御装置が、前記ハンドにより把持される対象物の少なくとも位置およびサイズに係わる情報を認識する対象物認識工程と、前記制御装置が、前記対象物認識工程で認識された前記対象物の位置まで前記ハンドを移動させるのに必要な前記アームの移動時間を前記複数のアーム移動制御態様ごとに取得するアーム移動時間計算工程と、前記制御装置が、前記対象物認識工程で認識された前記対象物のサイズに基づき取得した前記対象物の把持に必要な前記ハンドの開量に基づき、前記ハンドにより前記対象物を把持する動作におけるハンド把持時間を前記複数のアーム移動制御態様ごとに取得するハンド把持時間計算工程と、前記制御装置が、前記アーム移動時間計算工程、および前記ハンド把持時間計算工程により前記複数のアーム移動制御態様ごとに取得した前記アームの移動時間および前記ハンド把持時間から、前記アームで前記ハンドを前記対象物の位置まで移動させ前記ハンドにより前記対象物を把持させるピッキング動作に必要なピッキング動作時間を前記複数のアーム移動制御態様ごとに取得するピッキング動作時間計算工程と、を備え、前記制御装置は、前記アームの動作を制御するアーム移動制御態様として、前記複数のアーム移動制御態様から、前記ピッキング動作時間計算工程で前記複数のアーム移動制御態様ごとに取得したピッキング動作時間が短いアーム移動制御態様を選択する構成を採用した。   In order to solve the above-described problems, in the present invention, the arm is controlled by a hand that holds an object, an arm that supports and moves the hand, and one arm movement control mode selected from a plurality of arm movement control modes. An object recognition step for recognizing information relating to at least a position and a size of an object to be gripped by the hand; and An arm movement time calculation step for acquiring the movement time of the arm necessary for moving the hand to the position of the object recognized in the object recognition step for each of the plurality of arm movement control modes; The control device is required for gripping the object acquired based on the size of the object recognized in the object recognition step. A hand gripping time calculation step for acquiring a hand gripping time for each of the plurality of arm movement control modes based on an opening amount of the hand for gripping the object by the hand, and the control device calculates the arm movement time. And by moving the hand to the position of the object by the arm from the arm movement time and the hand gripping time acquired for each of the plurality of arm movement control modes by the step and the hand gripping time calculating step. A picking operation time calculating step for obtaining a picking operation time required for the picking operation for gripping the object for each of the plurality of arm movement control modes, and the control device moves the arm to control the operation of the arm. As a control mode, from the plurality of arm movement control modes, the picking operation time meter Picking motion time obtained for each of the plurality of arm movement control aspects in a process is adopted a configuration of selecting a shorter arm movement control mode.

あるいは、対象物を把持するハンドと、前記ハンドを支持して移動するアームと、複数のアーム移動制御態様から選択した1のアーム移動制御態様によって前記アームの動作を制御する制御装置と、を有するロボットシステムにおいて、前記制御装置は、前記ハンドにより把持される対象物の少なくとも位置およびサイズに係わる情報を認識し、認識した前記対象物の位置まで前記ハンドを移動させるのに必要な前記アームの移動時間を前記複数のアーム移動制御態様ごとに取得し、認識した前記対象物のサイズに基づき取得した前記対象物の把持に必要な前記ハンドの開量に基づき、前記ハンドにより前記対象物を把持する動作におけるハンド把持時間を前記複数のアーム移動制御態様ごとに取得し、前記複数のアーム移動制御態様ごとに取得した前記アームの移動時間および前記ハンド把持時間から、前記アームで前記ハンドを前記対象物の位置まで移動させ前記ハンドにより前記対象物を把持させるピッキング動作に必要なピッキング動作時間を前記複数のアーム移動制御態様ごとに取得し、前記アームの動作を制御するアーム移動制御態様として、前記複数のアーム移動制御態様から、前記複数のアーム移動制御態様ごとに取得したピッキング動作時間が短いアーム移動制御態様を選択する構成を採用した。   Or it has a hand which grasps a subject, an arm which supports and moves the hand, and a control device which controls operation of the arm by one arm movement control mode selected from a plurality of arm movement control modes In the robot system, the control device recognizes information related to at least a position and a size of an object held by the hand, and moves the arm necessary to move the hand to the recognized position of the object. Time is acquired for each of the plurality of arm movement control modes, and the object is gripped by the hand based on the opening amount of the hand necessary for gripping the object acquired based on the recognized size of the object. The hand holding time in operation is acquired for each of the plurality of arm movement control modes, and for each of the plurality of arm movement control modes. From the obtained movement time of the arm and the hand gripping time, the picking operation time required for the picking operation in which the arm is moved to the position of the target object by the arm and the target is gripped by the hand is determined by the plurality of arms. As an arm movement control mode acquired for each movement control mode and controlling the operation of the arm, an arm movement control mode with a short picking operation time acquired for each of the plurality of arm movement control modes from the plurality of arm movement control modes. The configuration to select is adopted.

上記構成によれば、アーム移動制御態様として、複数のアーム移動制御態様からピッキング動作時間が短いアーム移動制御態様を選択する。特に、複数のアーム移動制御態様ごとにアーム移動時間とハンド把持時間を加算してピッキング動作の所要時間を取得し、複数のアーム移動制御態様から所要時間が短い制御態様を選択する。このため、組み立て条件やワークの特性などに応じて、適切に複数のアーム移動制御態様から1のアーム移動制御態様を選択でき、ピッキング動作の所要時間を短縮することができる、という優れた効果がある。   According to the above configuration, the arm movement control mode having a short picking operation time is selected from the plurality of arm movement control modes as the arm movement control mode. In particular, the time required for the picking operation is obtained by adding the arm movement time and the hand gripping time for each of the plurality of arm movement control modes, and a control mode with a short required time is selected from the plurality of arm movement control modes. For this reason, according to an assembly condition, the characteristic of a workpiece | work, etc., the outstanding effect that one arm movement control aspect can be selected from several arm movement control aspects appropriately, and the time required for a picking operation | movement can be shortened. is there.

本発明を採用したロボットシステムの概略構成を示した斜視図である。It is the perspective view which showed schematic structure of the robot system which employ | adopted this invention. 図1のロボットシステムの駆動機構の構造例を示した断面図である。It is sectional drawing which showed the structural example of the drive mechanism of the robot system of FIG. 本発明を採用したロボットシステムの第1実施例に係る制御系の構成を示したブロック図である。It is the block diagram which showed the structure of the control system which concerns on 1st Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第1実施例に係る制御系の機能を示した説明図である。It is explanatory drawing which showed the function of the control system which concerns on 1st Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第1実施例に係る制御手順を示したフローチャート図である。It is the flowchart figure which showed the control procedure which concerns on 1st Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第2実施例に係る制御系の機能を示した説明図である。It is explanatory drawing which showed the function of the control system which concerns on 2nd Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第2実施例に係る制御手順を示したフローチャート図である。It is the flowchart figure which showed the control procedure which concerns on 2nd Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第3実施例に係る制御系の機能を示した説明図である。It is explanatory drawing which showed the function of the control system which concerns on 3rd Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第3実施例に係る制御手順を示したフローチャート図である。It is the flowchart figure which showed the control procedure which concerns on 3rd Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムにおいて、ワークをトレーに設置した時の様子を示した説明図である。It is explanatory drawing which showed the mode when the workpiece | work was installed in the tray in the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第4実施例に係る制御系の機能を示した説明図である。It is explanatory drawing which showed the function of the control system which concerns on 4th Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第4実施例に係る制御手順を示したフローチャート図である。It is the flowchart figure which showed the control procedure which concerns on 4th Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムで用いられるワークおよびワーク供給台を示したもので、(a)は円錐台状のワーク供給台の構成例を示した説明図、(b)は同ワーク供給台にリング状のワークを載置した状態を示した説明図である。The workpiece | work and workpiece | work supply stand used with the robot system which employ | adopted this invention are shown, (a) is explanatory drawing which showed the structural example of the truncated cone-shaped workpiece supply stand, (b) is the workpiece supply stand. It is explanatory drawing which showed the state which mounted the ring-shaped workpiece | work. 本発明を採用したロボットシステムの第5実施例に係る制御系の機能を示した説明図である。It is explanatory drawing which showed the function of the control system which concerns on 5th Example of the robot system which employ | adopted this invention. 本発明を採用したロボットシステムの第5実施例に係る制御手順を示したフローチャート図である。It is the flowchart figure which showed the control procedure which concerns on 5th Example of the robot system which employ | adopted this invention.

以下、本発明を実施するに好適な実施の形態につき、添付図面に示した実施例を用いて詳細に説明する。   DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments for carrying out the present invention will be described in detail with reference to examples shown in the accompanying drawings.

図1は、本発明の第1実施例に係るロボット装置の概略構成を示す斜視図である。図1に示すロボット装置500は、例えば機械や電子機器の組立などの作業を行う産業ロボット装置として構成されている。図1のロボット装置500は、垂直六軸多関節型のロボットアーム100と、ロボットアーム100を制御する制御装置200と、制御装置200に接続されたティーチングペンダント300と、カメラ310を備えている。   FIG. 1 is a perspective view showing a schematic configuration of the robot apparatus according to the first embodiment of the present invention. A robot apparatus 500 shown in FIG. 1 is configured as an industrial robot apparatus that performs operations such as assembly of machines and electronic devices. 1 includes a vertical six-axis articulated robot arm 100, a control device 200 for controlling the robot arm 100, a teaching pendant 300 connected to the control device 200, and a camera 310.

ロボットアーム100は、作業台に固定されるベース部101に組み立てられている。ロボットアーム100は、変位や力を伝達する複数のリンク121〜126と、これらのリンク121〜126を旋回又は回転可能に連結する複数の関節111〜116とともにロボットの本体部分であるロボット本体100Aを構成する。   The robot arm 100 is assembled to a base portion 101 that is fixed to a work table. The robot arm 100 includes a plurality of links 121 to 126 that transmit displacement and force, and a plurality of joints 111 to 116 that connect the links 121 to 126 so as to be able to rotate or rotate. Configure.

ロボットアーム100の先端のリンク126には、ハンド102(ロボットハンド)が連結されている。ハンド102は、組立作業などの操作の対象物としてワーク103を把持し、操作するためのエンドエフェクタ(ツール)である。   A hand 102 (robot hand) is connected to the link 126 at the tip of the robot arm 100. The hand 102 is an end effector (tool) for gripping and operating the workpiece 103 as an operation target such as assembly work.

各関節111〜116は、減速機(後述する図2の11)を介して回転駆動手段であるサーボモータ(図2の1)により駆動される。減速機(図2の11)はサーボモータのトルクを増大させるためにサーボモータの出力を減速するためのものである。このようなロボットアームの関節に用いられる減速機(図2の11)には、例えば小型軽量で減速比の大きい波動歯車減速機が好適である。   Each of the joints 111 to 116 is driven by a servo motor (1 in FIG. 2) which is a rotation driving means via a speed reducer (11 in FIG. 2 described later). The reduction gear (11 in FIG. 2) is for decelerating the output of the servo motor in order to increase the torque of the servo motor. As the speed reducer (11 in FIG. 2) used for such a robot arm joint, for example, a wave gear speed reducer with a small and light weight and a large reduction ratio is suitable.

以下、各関節111〜116を代表して、関節112を例に説明する。図2は、図1に示す関節112の近傍のロボットアーム100の断面を示している。図2に示すように、関節112には、サーボモータ1と、サーボモータ1の出力(回転角度)を減速する減速機11とが設けられている。サーボモータ1は、例えばブラシレスDCサーボモータやACサーボモータから構成される。   Hereinafter, the joint 112 will be described as an example, representing the joints 111 to 116. FIG. 2 shows a cross section of the robot arm 100 in the vicinity of the joint 112 shown in FIG. As shown in FIG. 2, the joint 112 is provided with a servo motor 1 and a speed reducer 11 that decelerates the output (rotation angle) of the servo motor 1. The servo motor 1 is composed of, for example, a brushless DC servo motor or an AC servo motor.

サーボモータ1の回転機構は、主に回転軸2とロータマグネット3から構成されている。また、サーボモータ1のモータハウジング4,5には、回転軸2を回転自在に支持する軸受6,7が設けられており、モータハウジング4には、ステータコイル8が取付けられている。サーボモータ1はモータカバー9に収容されている。   The rotating mechanism of the servo motor 1 is mainly composed of a rotating shaft 2 and a rotor magnet 3. The motor housings 4 and 5 of the servo motor 1 are provided with bearings 6 and 7 that rotatably support the rotary shaft 2, and a stator coil 8 is attached to the motor housing 4. The servo motor 1 is accommodated in a motor cover 9.

減速機11の入力側、すなわちモータ1の回転軸2の一端部には、エンコーダ10(第1のエンコーダ)が設けられている。このエンコーダ10は例えば回転軸2の回転角度を検出するロータリエンコーダにより構成される。エンコーダ10はサーボモータ1の回転軸2の回転に伴って、入力側パルス信号を生成し、図1の制御装置200に出力する。このようにして、エンコーダ10によって、減速機11の入力側の駆動軸の駆動量を検出することができる。なお、必要に応じて、サーボモータ1とエンコーダ10との間に、不図示のブレーキユニットを設けてもよい。このようなブレーキユニットを設ける主な目的は電源OFF時のロボット本体100Aの姿勢の保持にある。   An encoder 10 (first encoder) is provided on the input side of the speed reducer 11, that is, on one end of the rotating shaft 2 of the motor 1. The encoder 10 is constituted by a rotary encoder that detects the rotation angle of the rotary shaft 2, for example. The encoder 10 generates an input-side pulse signal with the rotation of the rotating shaft 2 of the servo motor 1 and outputs it to the control device 200 of FIG. In this way, the encoder 10 can detect the drive amount of the drive shaft on the input side of the speed reducer 11. Note that a brake unit (not shown) may be provided between the servo motor 1 and the encoder 10 as necessary. The main purpose of providing such a brake unit is to maintain the posture of the robot body 100A when the power is turned off.

一方、サーボモータ1の回転軸2の他方の端部には減速比Nの減速機11が取付けられている。波動歯車減速機を用いる場合、減速機11は入力部であるウェブジェネレータ12、サーキュラスプライン13、フレックススプライン14から構成される。動力伝達部として機能するフレックススプライン14は、ウェブジェネレータ12とサーキュラスプライン13との間に配置される。   On the other hand, a reduction gear 11 having a reduction ratio N is attached to the other end of the rotary shaft 2 of the servo motor 1. When a wave gear reducer is used, the reducer 11 includes a web generator 12, a circular spline 13, and a flex spline 14 that are input units. The flex spline 14 that functions as a power transmission unit is disposed between the web generator 12 and the circular spline 13.

フレックススプライン14は、リンク121に連結されており、減速機11の減速比Nで減速される。減速機11の出力部であるサーキュラスプライン13は、関節112を駆動するリンク122に結合されている。一方、入力側のウェブジェネレータ12は、サーボモータ1の回転軸2に結合されている。   The flex spline 14 is connected to the link 121 and is decelerated at a reduction ratio N of the reduction gear 11. The circular spline 13 that is the output part of the speed reducer 11 is coupled to a link 122 that drives the joint 112. On the other hand, the input-side web generator 12 is coupled to the rotating shaft 2 of the servo motor 1.

以上の構成において、サーボモータ1の回転軸2とウェブジェネレータ12との結合部が、減速機11の入力軸、フレックススプライン14とリンク121との結合部が減速機11の出力軸として機能する。このような構成では、減速機11の出力軸の回転角度が、実出力角度、すなわち関節112の角度となる。   In the above configuration, the connecting portion between the rotating shaft 2 of the servo motor 1 and the web generator 12 functions as an input shaft of the speed reducer 11, and the connecting portion between the flex spline 14 and the link 121 functions as an output shaft of the speed reducer 11. In such a configuration, the rotation angle of the output shaft of the speed reducer 11 becomes the actual output angle, that is, the angle of the joint 112.

リンク121とリンク122との間には、クロスローラベアリング15が設けられており、リンク121とリンク122とは、クロスローラベアリング15を介して回転自在に結合されている。以上の構成において、サーボモータ1の回転軸2の回転は、減速機11を介して1/Nに減速され、リンク121とリンク122とが相対的に回転する。   A cross roller bearing 15 is provided between the link 121 and the link 122, and the link 121 and the link 122 are rotatably coupled via the cross roller bearing 15. In the above configuration, the rotation of the rotating shaft 2 of the servo motor 1 is decelerated to 1 / N via the speed reducer 11, and the link 121 and the link 122 rotate relatively.

減速機11の出力側の駆動軸には、エンコーダ16(第2のエンコーダ)が設けられ、関節112のリンク121とリンク122の相対的な回転角度を検出する。エンコーダ16は、関節112の駆動に伴って出力側パルス信号を生成し、制御装置200(図1)に出力する。すなわち、エンコーダ16は、減速機11の出力側の駆動軸の駆動量を検出することができる。エンコーダ10とエンコーダ16は、一般的なロータリエンコーダと同様に光学式あるいは磁気式ロータリエンコーダなどから構成することができる。   The drive shaft on the output side of the speed reducer 11 is provided with an encoder 16 (second encoder), which detects the relative rotation angles of the link 121 and the link 122 of the joint 112. The encoder 16 generates an output side pulse signal as the joint 112 is driven, and outputs it to the control device 200 (FIG. 1). That is, the encoder 16 can detect the drive amount of the drive shaft on the output side of the speed reducer 11. The encoder 10 and the encoder 16 can be composed of an optical or magnetic rotary encoder or the like, like a general rotary encoder.

上記の図2では、ロボットアーム100の関節112を例にサーボモータ1および減速機11廻りの構造につき説明したが、他の関節111、113〜116についても上記と同様の構成が設けられる。本実施例では、ロボットアーム100の関節111〜116はセミクローズ制御(第1のアーム移動制御態様)、またはフルクローズ制御(第2のアーム移動制御態様)のいずれかにより制御される。減速機11の入力側(サーボモータ1の回転軸)に設けられたエンコーダ10はセミクローズ制御で、また減速機11の出力側に設けられたエンコーダ16はフルクローズ制御で用いられる。   In FIG. 2 described above, the structure around the servo motor 1 and the speed reducer 11 has been described by taking the joint 112 of the robot arm 100 as an example, but the other joints 111 and 113 to 116 have the same configuration as described above. In this embodiment, the joints 111 to 116 of the robot arm 100 are controlled by either semi-closed control (first arm movement control mode) or full-closed control (second arm movement control mode). The encoder 10 provided on the input side of the speed reducer 11 (rotary shaft of the servo motor 1) is used for semi-closed control, and the encoder 16 provided on the output side of the speed reducer 11 is used for full closed control.

本実施例(あるいは後述の他の実施例も同様)では、ピッキング動作を行う場合、少なくともロボットアーム100について、セミクローズ制御またはフルクローズ制御のいずれの制御態様で制御するか否かを決定する。   In this embodiment (or in other embodiments described later), when performing the picking operation, it is determined whether or not at least the robot arm 100 is controlled in either a semi-closed control mode or a full-closed control mode.

また、ハンド102の駆動機構は本実施例では詳細に図示しないが、ハンド102がサーボモータで駆動される場合には、図2と同等のモータおよび減速機を設けることができる。その場合、上記同様に減速機の入力側および出力側にセミクローズ制御、およびフルクローズ制御のためのエンコーダ10とエンコーダ16をそれぞれ設けることができる。このような構成においては、ハンド102についても、セミクローズ制御またはフルクローズ制御のいずれかの制御態様を選択する制御を行なう可能性がある。しかしながら、以下の実施例1〜5ではアームの移動制御に用いる制御態様として、セミクローズ制御またはフルクローズ制御のいずれを用いるのが有利(高速)かを選択する制御につき説明する。   The driving mechanism of the hand 102 is not illustrated in detail in the present embodiment, but when the hand 102 is driven by a servo motor, a motor and a speed reducer equivalent to those in FIG. 2 can be provided. In that case, similarly to the above, the encoder 10 and the encoder 16 for semi-closed control and full-closed control can be provided on the input side and output side of the reduction gear, respectively. In such a configuration, there is a possibility that the hand 102 may also perform control for selecting either a semi-closed control or a full-closed control mode. However, in the following first to fifth embodiments, control for selecting whether semi-closed control or full-closed control is advantageous (high speed) as a control mode used for arm movement control will be described.

図3は、ロボット装置500の制御装置200の構成を示すブロック図である。制御装置200は、制御部としてのCPU201、ROM202、RAM203、記憶部としてのHDD204、記録ディスクドライブ205および各種のインタフェース210〜215を有する。   FIG. 3 is a block diagram illustrating a configuration of the control device 200 of the robot apparatus 500. The control device 200 includes a CPU 201 as a control unit, a ROM 202, a RAM 203, an HDD 204 as a storage unit, a recording disk drive 205, and various interfaces 210 to 215.

CPU201には、ROM202、RAM203、HDD204、記録ディスクドライブ205およびインタフェース210〜215が、バス216を介して接続されている。ROM202には、BIOSなどの基本プログラムが格納されている。RAM203は、CPU201の演算処理結果を一時的に記憶する記憶装置である。記録ディスクドライブ205にはティーチングペンダントから取得した教示データや、動作手順の動作プログラムを記憶する。   A ROM 202, a RAM 203, an HDD 204, a recording disk drive 205, and interfaces 210 to 215 are connected to the CPU 201 via a bus 216. The ROM 202 stores basic programs such as BIOS. The RAM 203 is a storage device that temporarily stores the arithmetic processing result of the CPU 201. The recording disk drive 205 stores teaching data acquired from the teaching pendant and an operation program for the operation procedure.

HDD204は、CPU201の演算処理結果である各種のデータなどを記憶する記憶部を構成するとともに、本ロボットシステムの制御装置であるCPU201に後述の各制御手順を実行させるためのプログラム330を記録する。CPU201は、HDD204に記録(格納)されたプログラム330に基づいて各種演算処理を実行する。記録ディスクドライブ205は、記録ディスク331に記録された各種データやプログラムなどを読み出すことができる。   The HDD 204 constitutes a storage unit that stores various types of data that are the calculation processing results of the CPU 201, and records a program 330 for causing the CPU 201, which is a control device of the robot system, to execute each control procedure described later. The CPU 201 executes various arithmetic processes based on the program 330 recorded (stored) in the HDD 204. The recording disk drive 205 can read various data and programs recorded on the recording disk 331.

インタフェース210には、カメラ310が接続されている。カメラ310は、ロボット操作の対象物としてのワーク103を撮影する。カメラ310で撮影された画像にパターンマッチングなどの画像処理を加えることにより、対象物認識を行うことができ、例えば、ワーク103の位置やサイズなどの情報を取得することができる。CPU201は、インタフェース210およびバス216を介してカメラ310から撮影画像のデータ信号を入力することができる。   A camera 310 is connected to the interface 210. The camera 310 images the workpiece 103 as an object for robot operation. By adding image processing such as pattern matching to the image photographed by the camera 310, object recognition can be performed. For example, information such as the position and size of the workpiece 103 can be acquired. The CPU 201 can input a captured image data signal from the camera 310 via the interface 210 and the bus 216.

インタフェース211には、ティーチングペンダント300が接続されている。ティーチングペンダント300は、ディスプレイ、ファンクションキーなどのユーザーインターフェース手段を有し、ロボット本体100Aに実行させる動作を教示するのに用いられる。ティーチングペンダント300は、ユーザの教示操作に応じて、例えばロボット本体100Aの各関節111〜116の目標関節角度が順次出力される。CPU201は、この目標関節角度データをインタフェース211およびバス216を介して入力することができる。   A teaching pendant 300 is connected to the interface 211. The teaching pendant 300 has user interface means such as a display and function keys, and is used to teach an operation to be executed by the robot body 100A. The teaching pendant 300 sequentially outputs, for example, target joint angles of the joints 111 to 116 of the robot main body 100A in accordance with the teaching operation of the user. The CPU 201 can input this target joint angle data via the interface 211 and the bus 216.

インタフェース212には、ロボットアーム100(あるいはさらにハンド102)の関節に設けられた各エンコーダが接続される。ここでは、ロボットアーム100の関節(あるいはさらにハンド102)に設けられる全てのエンコーダを代表して、図2に示した減速機11の入力側および出力側のエンコーダ10,16の参照符号を用いている。エンコーダ10,16からは駆動軸の角度を示すパルス信号が出力され、CPU201は、インタフェース212およびバス216を介してエンコーダ10,16の出力値を入力することができる。   Each encoder provided at the joint of the robot arm 100 (or the hand 102) is connected to the interface 212. Here, the reference numerals of the encoders 10 and 16 on the input side and the output side of the speed reducer 11 shown in FIG. 2 are used to represent all the encoders provided in the joint (or further, the hand 102) of the robot arm 100. Yes. A pulse signal indicating the angle of the drive shaft is output from the encoders 10 and 16, and the CPU 201 can input the output values of the encoders 10 and 16 via the interface 212 and the bus 216.

インタフェース213には、モニタ301が接続されており、このモニタ301によって設定状態や現在の動作状態を示す各種の画像や文字を表示することができる。また、インタフェース214には、書き換え可能な不揮発性メモリ(フラッシュメモリなど)や外付けHDDなどの外部記憶装置312が接続される。   A monitor 301 is connected to the interface 213, and various images and characters indicating the setting state and the current operation state can be displayed on the monitor 301. The interface 214 is connected to an external storage device 312 such as a rewritable nonvolatile memory (flash memory or the like) or an external HDD.

なお、本実施例ないし後述の実施例における制御手順(制御工程)を実施するためのCPU201(制御装置)のプログラムは上述のHDD204以外の記録媒体に格納してもよい。例えば、同プログラムは上記のROM202になどに格納することができる他、光学ディスクや外付けHDDなどの記録媒体に格納した状態で供給し、記録ディスクドライブ205、あるいは外部記憶装置312などを介してインストールすることができる。この種のプログラム供給用のコンピュータ読み取り可能な記録媒体としては上記の光学ディスクに限らず、フラッシュメモリのような半導体メモリデバイスなど、任意の記録媒体を用いることができる。   Note that a program of the CPU 201 (control device) for performing a control procedure (control process) in the present embodiment or the later-described embodiments may be stored in a recording medium other than the HDD 204 described above. For example, the program can be stored in the ROM 202 or the like, or supplied in a state stored in a recording medium such as an optical disk or an external HDD, and is supplied via the recording disk drive 205 or the external storage device 312. Can be installed. This kind of computer-readable recording medium for supplying a program is not limited to the optical disk described above, and any recording medium such as a semiconductor memory device such as a flash memory can be used.

インタフェース215には、ロボット装置500の各関節111〜116あるいはさらにハンド102などを駆動するサーボモータを制御するサーボ制御装置313が接続されている。サーボ制御装置313は各関節111〜116などを駆動するサーボモータを駆動するが、これらのサーボモータ廻りの構造は例えば図2に示したサーボモータ1と同等である。なお図2では、図2に示したサーボモータ1と同じ参照符号によりサーボモータを示している。   The interface 215 is connected to a servo control device 313 that controls a servo motor that drives each of the joints 111 to 116 of the robot device 500 or the hand 102. The servo control device 313 drives servo motors that drive the joints 111 to 116 and the like. The structure around these servo motors is the same as that of the servo motor 1 shown in FIG. In FIG. 2, the servo motor is indicated by the same reference numeral as that of the servo motor 1 shown in FIG.

CPU201は、サーボ制御装置313およびインタフェース215を介してロボット装置500の各部のサーボモータを駆動制御することができる。例えば、上記のサーボモータ1の場合、サーボモータ1の回転軸2の回転角度の制御量を示す駆動指令のデータを所定時間間隔でバス216およびインタフェース215を介してサーボ制御装置313に出力する。この動作は他の関節のサーボモータでも同様である。これにより、CPU201から入力を受けた駆動指令に基づき、サーボ制御装置313はサーボモータ1への電流の出力量を演算し、サーボモータ1へ電流を供給する。以上のようにして、CPU201は、サーボ制御装置313を介して、制御対象の関節の角度が目標関節角度となるよう、その関節のサーボモータの駆動を制御することができる。   The CPU 201 can drive and control the servo motors of the respective units of the robot apparatus 500 via the servo control device 313 and the interface 215. For example, in the case of the servo motor 1 described above, drive command data indicating the control amount of the rotation angle of the rotation shaft 2 of the servo motor 1 is output to the servo control device 313 via the bus 216 and the interface 215 at predetermined time intervals. This operation is the same for the servo motors of other joints. Thus, based on the drive command received from the CPU 201, the servo control device 313 calculates the amount of current output to the servo motor 1 and supplies the servo motor 1 with current. As described above, the CPU 201 can control the drive of the servo motor of the joint via the servo control device 313 so that the angle of the joint to be controlled becomes the target joint angle.

図4は、本発明の第1実施例に係るロボット装置の制御系の制御機能ないし制御工程をブロック表現で示したものである。図4に示した各制御機能ないし各制御工程は、図3のCPU201がプログラム330を実行することにより実現される。また、図4では、上で説明済みのハードウェアブロックには、同一の参照符号を付してある。以下、図4の各ブロック表現で示した制御機能ないし制御工程につき説明する。   FIG. 4 is a block diagram showing the control function or control process of the control system of the robot apparatus according to the first embodiment of the present invention. Each control function or each control process shown in FIG. 4 is realized by the CPU 201 in FIG. In FIG. 4, the same reference numerals are assigned to the hardware blocks described above. Hereinafter, the control function or the control process shown in each block representation of FIG. 4 will be described.

図4において、カメラ310はピッキング動作において、ハンド102で把持するワーク付近の画像を撮影する。このワークの位置は、例えばピッキング動作においては、ロボットアーム100によりハンド102を移動させる目標位置である。   In FIG. 4, the camera 310 captures an image in the vicinity of the work gripped by the hand 102 in the picking operation. The position of the work is a target position where the robot arm 100 moves the hand 102 in, for example, a picking operation.

CPU201は、カメラ310で撮影された画像データに対してパターンマッチなどの画像処理(401)を行うことにより、ワーク位置を特定(402)することができる。   The CPU 201 can specify (402) the work position by performing image processing (401) such as pattern matching on the image data captured by the camera 310.

ピッキング動作において、ハンド102でワークを把持する際のハンド102の開量は、ワークのサイズから決定しなければならない。ワークのサイズはカメラ310で撮影した画像から求めてもよいが、本実施例では、ワークのサイズを取得、例えばワークのサイズを記録ディスク331などから読み込んで、そのワークサイズを記憶する(403)。   In the picking operation, the opening amount of the hand 102 when the hand 102 grips the work must be determined from the size of the work. Although the size of the work may be obtained from an image photographed by the camera 310, in this embodiment, the size of the work is acquired, for example, the size of the work is read from the recording disk 331 and the work size is stored (403). .

本実施例では、CPU201は、ピッキング動作に先立って、フルクローズ制御計算(404)、およびセミクローズ制御計算(411)を行い、そのピッキング動作に要するピッキング動作時間を計算する。ここでは、フルクローズ制御、およびセミクローズ制御の各制御態様におけるアーム移動時間、およびハンド把持時間からピッキング動作時間を計算する。ピッキング動作は、ワークまでハンド102をロボットアーム100で移動するアーム移動、およびハンド102でワークを把持する把持動作から成る。この場合、アーム移動時間は、先に特定したワークの位置(402)に基づき計算できる。また、ハンド把持時間は先に取得し記憶(403)したワークサイズから適切なハンド開量を求め、このハンド開量に基づき計算できる。このようにして、フルクローズ制御、およびセミクローズ制御の各制御態様ごとにアーム移動時間、およびハンド把持時間を計算し、各制御態様ごとのピッキング動作時間を計算することができる。   In this embodiment, the CPU 201 performs a full-closed control calculation (404) and a semi-closed control calculation (411) prior to the picking operation, and calculates the picking operation time required for the picking operation. Here, the picking operation time is calculated from the arm moving time and the hand gripping time in each control mode of the full-closed control and the semi-closed control. The picking operation includes an arm movement in which the hand 102 is moved by the robot arm 100 up to the workpiece, and a gripping operation in which the hand 102 grips the workpiece. In this case, the arm movement time can be calculated based on the workpiece position (402) specified earlier. Further, the hand gripping time can be calculated based on the hand opening amount obtained by obtaining an appropriate hand opening amount from the work size previously obtained and stored (403). In this manner, the arm movement time and the hand gripping time can be calculated for each control mode of the full-closed control and the semi-closed control, and the picking operation time for each control mode can be calculated.

ここで、フルクローズ制御とは、減速機11の出力軸の角度を検出するエンコーダ16から得られる値を用いて、アームの位置決めを制御する制御態様である。一般に、フルクローズ制御は、減速機の捩れなどの機構系の誤差をキャンセルし、セミクローズ制御よりは比較的高精度な位置決めが可能である。また、フルクローズ制御では、制御系のループにある減速機の捩れなどの要因で制御系が振動的になり位置決めに時間がかかる傾向がある。すなわち、フルクローズ制御の場合、機構制御を行えるが、移動時間が長くなる傾向がある。   Here, the full-closed control is a control mode in which the arm positioning is controlled using a value obtained from the encoder 16 that detects the angle of the output shaft of the speed reducer 11. In general, full-closed control cancels mechanical errors such as torsion of the speed reducer, and positioning with higher accuracy than semi-closed control is possible. In full-closed control, the control system tends to vibrate due to factors such as torsion of the speed reducer in the control system loop, and positioning tends to take time. That is, in the case of full-closed control, mechanism control can be performed, but the movement time tends to be long.

また、セミクローズ制御とは、サーボモータ1の入力軸の角度を検出するエンコーダ10から得られる値を用いて、アームの位置決めを制御する制御態様である。一般に、セミクローズ制御は、減速機の捩れなどの機構系の誤差をキャンセルできないため、フルクローズ制御と比較すると、位置決め精度は低くなる。また、セミクローズ制御は制御系のループに減速機の捩れなどが無いので制御系としての振動は少なく、高速駆動が可能であり、位置決め精度は低くなるが、移動時間が短くて済む傾向がある。   The semi-closed control is a control mode in which the arm positioning is controlled using a value obtained from the encoder 10 that detects the angle of the input shaft of the servo motor 1. In general, the semi-closed control cannot cancel mechanical errors such as torsion of the speed reducer, so that the positioning accuracy is lower than that of the full-closed control. Semi-closed control has no reduction gear torsion in the loop of the control system, so there is little vibration as the control system, high speed drive is possible, positioning accuracy is low, but movement time tends to be short .

さて、図4のフルクローズ制御計算(404)、およびセミクローズ制御計算(411)において、アーム移動量計算(405、412)を行う。このアーム移動量計算(405、412)では、アーム動作開始位置から、ワーク位置特定(402)で特定された目標位置までの移動量を各々の制御方法(制御態様)ごとに計算する。例えば、カメラ310の撮影倍率は既知であるから、ワーク位置特定(402)のための画像処理で得た位置情報に基づき、アーム動作開始位置からワークの位置までの距離を計算することができる。なお、カメラ310の撮影倍率などの定数条件は例えばROM202やRAM203を参照することにより取得できるものとする。   Now, arm movement amount calculation (405, 412) is performed in the full-closed control calculation (404) and the semi-closed control calculation (411) of FIG. In this arm movement amount calculation (405, 412), the movement amount from the arm operation start position to the target position specified by the workpiece position specification (402) is calculated for each control method (control mode). For example, since the photographing magnification of the camera 310 is known, the distance from the arm operation start position to the work position can be calculated based on the position information obtained by the image processing for the work position specification (402). It should be noted that constant conditions such as the shooting magnification of the camera 310 can be acquired by referring to the ROM 202 or RAM 203, for example.

本実施例では、ピッキング動作を制御するのに、フルクローズ制御またはセミクローズ制御のいずれの制御方式が適当かを選択するために、それぞれの所要時間を求めるべくフルクローズ制御計算(404)、およびセミクローズ制御計算(411)を行う。本実施例では、これらの計算(404、411)で得られた所要時間のうち、ピッキング動作の所要時間が短かい方の上記の2つの制御方式(制御態様)を選択する。   In this embodiment, a full-closed control calculation (404) to determine the required time for each to select whether a full-closed control or a semi-closed control is appropriate for controlling the picking operation, and Semi-closed control calculation (411) is performed. In the present embodiment, among the required times obtained by these calculations (404, 411), the above two control methods (control modes) having the shorter required time for the picking operation are selected.

フルクローズ制御計算(404)、およびセミクローズ制御計算(411)では、まず、アーム速度計算(406、413)において、ワーク位置特定(402)により特定された目標位置までのロボットアーム100の速度を各々の制御方法ごとに計算する。例えば、ロボットアーム100の各関節の駆動機構のギア比、アーム各部の寸法などは既知であるから、アーム動作開始位置からワークの位置までの距離を計算することができる。ここでも、上記ギア比やアーム各部の寸法などの定数条件は例えばROM202やRAM203を参照することにより取得できるものとする。   In the full-closed control calculation (404) and the semi-closed control calculation (411), first, in the arm speed calculation (406, 413), the speed of the robot arm 100 to the target position specified by the workpiece position specification (402) is calculated. Calculate for each control method. For example, since the gear ratio of the drive mechanism of each joint of the robot arm 100, the dimensions of each part of the arm, and the like are known, the distance from the arm operation start position to the workpiece position can be calculated. Here, the constant conditions such as the gear ratio and the dimensions of the arm portions can be obtained by referring to the ROM 202 or the RAM 203, for example.

さらに、フルクローズ制御計算(404)、およびセミクローズ制御計算(411)において、アーム移動時間計算(407、414)では、要求されているピッキング動作におけるアーム移動時間を各々の制御方法ごとに計算する。すなわち、アーム移動量計算(405、412)、アーム速度計算(406、413)で求めたアーム移動量をアーム速度で除する演算によりアーム移動時間を求めることができる。   Further, in the full-closed control calculation (404) and the semi-closed control calculation (411), in the arm movement time calculation (407, 414), the arm movement time in the required picking operation is calculated for each control method. . That is, the arm movement time can be obtained by a calculation that divides the arm movement amount obtained by the arm movement amount calculation (405, 412) and the arm speed calculation (406, 413) by the arm speed.

一方、フルクローズ制御計算(404)、およびセミクローズ制御計算(411)において、ハンド開量計算(408、415)では、ハンド102でワークを把持するのに必要なハンドの開量を各々の制御方法ごとに計算する。すなわち、ワーク位置特定(402)にて特定されたワークの位置、および記憶(403)したワークサイズに基づき、フルクローズ制御にした場合と、セミクローズ制御にした場合の、それぞれのハンドの開量を決定することができる。   On the other hand, in the full-closed control calculation (404) and the semi-closed control calculation (411), in the hand opening amount calculation (408, 415), the opening amount of the hand necessary for gripping the workpiece by the hand 102 is controlled. Calculate for each method. That is, the opening amount of each hand when full-closed control is performed and when semi-closed control is performed based on the workpiece position specified in the workpiece position specification (402) and the stored work size (403). Can be determined.

ハンド開量は、ハンド102でワークを把持する動作を開始する際にハンド102の把持部(爪)を開いておく量である。このハンド開量の大きさは、例えば、システム全体で、あるいは少なともロボットアーム100の移動制御にフルクローズ制御またはセミクローズ制御のいずれを採用するかにによって異なるものとなる。   The hand opening amount is an amount by which the gripping portion (claw) of the hand 102 is opened when the operation of gripping the workpiece with the hand 102 is started. The size of the hand opening amount varies depending on, for example, whether the full-closed control or the semi-closed control is used for the movement control of the robot arm 100 in the entire system or at least.

例えば、ロボットアーム100の位置決め精度は、制御方法の違いによって生じるアーム位置決めバラつきが影響し、アーム位置決めバラつきが小さいほど高精度となる。フルクローズ制御はアーム位置決め精度が高いため、ハンドの開量は少量で済む。逆に、セミクローズ制御はアームの位置決め精度が低いため、ハンドの開量は大きく見積る必要がある。フルクローズ制御計算(404)、およびセミクローズ制御計算(411)の各ハンド開量計算(408、415)では、それぞれの制御条件に応じて確実にワークを把持するのに必要なハンド開量をそれぞれ計算する。   For example, the positioning accuracy of the robot arm 100 is affected by the arm positioning variation caused by the difference in the control method. The smaller the arm positioning variation, the higher the accuracy. Since full-closed control has high arm positioning accuracy, the amount of opening of the hand is small. On the other hand, since the semi-closed control has low arm positioning accuracy, it is necessary to largely estimate the opening amount of the hand. In each hand opening amount calculation (408, 415) of the full-closed control calculation (404) and the semi-closed control calculation (411), the amount of hand opening required to securely hold the workpiece according to each control condition is calculated. Calculate each.

さらに、フルクローズ制御計算(404)、およびセミクローズ制御計算(411)において、ハンド把持時間計算(409、416)では、ハンド把持時間を各々の制御方法ごとに計算する。すなわち、上記のハンド開量計算(408、415)より計算されたフルクローズ制御の場合と、セミクローズ制御の場合のそれぞれのハンド開量からそれぞれの制御方法における把持時間を計算することができる。   Further, in the full-closed control calculation (404) and the semi-closed control calculation (411), in the hand holding time calculation (409, 416), the hand holding time is calculated for each control method. That is, the gripping time in each control method can be calculated from the respective hand opening amounts in the case of full-closed control and the case of semi-closed control calculated from the above-described hand opening amount calculation (408, 415).

そして、フルクローズ制御計算(404)、およびセミクローズ制御計算(411)では、最後にピッキング動作時間計算(410、417)において、要求されたピッキング動作に要するピッキング動作時間を各々の制御方法ごとに計算することができる。ここでは、ハンド把持時間計算(409、416)で取得したハンド把持時間と、アーム移動時間計算部(407、414)で取得したアームの移動時間を合計することにより、ピッキング動作時間を各々の制御態様ごとに求めることができる。   In the full-closed control calculation (404) and the semi-closed control calculation (411), the picking operation time required for the picking operation requested in the last picking operation time calculation (410, 417) is determined for each control method. Can be calculated. Here, the picking operation time is controlled by summing the hand gripping time acquired by the hand gripping time calculation (409, 416) and the arm moving time acquired by the arm moving time calculation unit (407, 414). It can be determined for each mode.

本実施例では、以上のようにして求めたフルクローズ制御、および、セミクローズ制御でピッキング動作時間に基づき、これらいずれの制御方式を実際のピッキング動作で採用すべきかを選択(418)する。ここでは、制御方法選択(418)では、フルクローズ制御計算(404)と、セミクローズ制御計算部(411)で取得したそれぞれの制御方法におけるピッキング動作時間を比較し、短い時間となった方の制御方法を選択する。   In this embodiment, based on the picking operation time in the full-closed control and semi-closed control obtained as described above, it is selected (418) which control method should be adopted in the actual picking operation. Here, in the control method selection (418), the picking operation time in each control method acquired by the full-closed control calculation (404) and the semi-closed control calculation unit (411) is compared, and the shorter one is obtained. Select the control method.

そして、制御方法切替(419)では、制御方法選択(418)によって選択した制御方法(フルクローズ制御またはセミクローズ制御)に切り替える。制御方法切替(419)は、実際にはサーボ制御装置313に対して選択した制御方法(フルクローズ制御またはセミクローズ制御)のいずれを用いるかを指定することにより実現される。サーボ制御装置313は、制御方法切替部419で切り替えられた制御方法で動作指令をサーボモータ1に出力する。サーボモータ1は、サーボ制御装置313から受信した命令に基づき動作し、ロボットアーム100の各関節(あるいはさらにハンド102)を制御する。   In the control method switching (419), the control method is switched to the control method (full-closed control or semi-closed control) selected by the control method selection (418). The control method switching (419) is actually realized by designating which of the selected control methods (full-closed control or semi-closed control) is used for the servo control device 313. The servo control device 313 outputs an operation command to the servo motor 1 by the control method switched by the control method switching unit 419. The servo motor 1 operates based on a command received from the servo control device 313, and controls each joint (or further, the hand 102) of the robot arm 100.

上述の通り、図2のサーボモータ1、エンコーダ10、16はロボットアーム100の各関節に設けられたものを代表して示したものである。従って、本実施例では、ロボットアーム100は、以上の制御によって選択されたフルクローズ制御またはセミクローズ制御のいずれかによって制御されることになる。   As described above, the servo motor 1 and the encoders 10 and 16 in FIG. 2 are representatively provided at each joint of the robot arm 100. Therefore, in this embodiment, the robot arm 100 is controlled by either the full-closed control or the semi-closed control selected by the above control.

上述のように、エンコーダ10は、サーボモータ1に取り付けられ、サーボモータ1の実動作状況を監視する。セミクローズ制御で駆動する際は、入力側のエンコーダ10の出力値を監視して位置制御を行う。すなわち、セミクローズ制御ではロボット各部の位置姿勢の指令値(目標値)を監視しつつロボット各部が制御される。また、エンコーダ16は、減速機11の出力側に取り付けられ、減速機の動作状況を監視する。フルクローズ制御で駆動する際は、減速機11の出力側のエンコーダ16の出力値を監視して位置制御を行う。すなわち、フルクローズ制御ではロボット各部の位置姿勢の実際値を監視しつつロボット各部が制御されることになる。   As described above, the encoder 10 is attached to the servo motor 1 and monitors the actual operation status of the servo motor 1. When driving with semi-closed control, the output value of the encoder 10 on the input side is monitored to perform position control. That is, in the semi-closed control, each part of the robot is controlled while monitoring the command value (target value) of the position and orientation of each part of the robot. The encoder 16 is attached to the output side of the speed reducer 11 and monitors the operation state of the speed reducer. When driving with full-closed control, the output value of the encoder 16 on the output side of the speed reducer 11 is monitored to perform position control. That is, in the full-closed control, each part of the robot is controlled while monitoring the actual value of the position and orientation of each part of the robot.

図5は、上記の制御を実現すべく、制御装置たるCPU201が実行するプログラムの流れを示したフローチャートである。図5に示す各処理ステップは、CPU201がプログラム330を読み出してプログラム330を実行することにより実現される。   FIG. 5 is a flowchart showing the flow of a program executed by the CPU 201 as a control device in order to realize the above control. Each processing step shown in FIG. 5 is realized by the CPU 201 reading the program 330 and executing the program 330.

ステップS1では、カメラ310により把持対象のワークを撮影する。ステップS2では、ステップS1で撮影された画像をCPU201がパターンマッチングなどの画像処理(401)を実行する。   In step S <b> 1, the workpiece to be grasped is photographed by the camera 310. In step S2, the CPU 201 executes image processing (401) such as pattern matching on the image photographed in step S1.

ステップS3では、CPU201はステップS2にて画像処理(401)結果に基づき、ワークの位置特定(402)を行い、ワークの位置、すなわちアーム移動目標位置を特定する。   In step S3, the CPU 201 specifies the position of the workpiece (402) based on the result of the image processing (401) in step S2, and specifies the position of the workpiece, that is, the arm movement target position.

ステップS4において、CPU201はステップS3で得られたワークの目標位置に基づき、アーム移動量計算(405、412)を行い、アームの現在位置からの移動量Alを計算する。   In step S4, the CPU 201 calculates the arm movement amount (405, 412) based on the target position of the workpiece obtained in step S3, and calculates the movement amount Al from the current position of the arm.

ステップS5において、CPU201はアーム速度計算(406、413)を行い、フルクローズ制御とセミクローズ制御に制御方法を切り替えて、それぞれの制御方法におけるアーム移動速度を計算する。ここではフルクローズ制御にて制御した場合のアーム移動速度Avf、セミクローズ制御にて制御した場合のアーム移動速度Avsを計算する。これらの移動速度は、フルおよびセミクローズ制御におけるクロック速度、減速機11のギア比、アーム各部の寸法比などに基づいて計算することができる。   In step S5, the CPU 201 performs arm speed calculation (406, 413), switches the control method between full-closed control and semi-closed control, and calculates the arm moving speed in each control method. Here, the arm moving speed Avf when controlled by the full-closed control and the arm moving speed Avs when controlled by the semi-closed control are calculated. These moving speeds can be calculated based on the clock speed in full and semi-closed control, the gear ratio of the speed reducer 11, the dimensional ratio of each part of the arm, and the like.

ステップS6において、CPU201は、ステップS4で計算された移動量Alに基づき、アーム移動時間計算(407、414)を行い、フルクローズ制御とセミクローズ制御に制御方法を切り替えて、それぞれの制御方法でのアーム移動時間を計算する。ここでは、フルクローズ制御にて制御した場合のアーム移動時間Atfと、セミクローズ制御にて制御した場合のアーム移動時間Atsを計算する。これらのアーム移動時間はステップS4で求めたアーム移動量AlをステップS5で求めたアーム移動速度AvfまたはAvsで除することにより取得できる。   In step S6, the CPU 201 performs arm movement time calculation (407, 414) based on the movement amount Al calculated in step S4, switches the control method between full-closed control and semi-closed control, and uses each control method. Calculate arm movement time. Here, the arm movement time Atf when controlled by full-closed control and the arm movement time Ats when controlled by semi-closed control are calculated. These arm movement times can be obtained by dividing the arm movement amount Al obtained in step S4 by the arm movement speed Avf or Avs obtained in step S5.

さらに、ステップS7では、CPU201は、記録ディスク331に記録されたワークサイズWを、記録ディスクドライブ205によって読み出し、記憶(403)する。本実施形態では、画像処理によって得たワークの画像からではなく、あらかじめ定められたワークの種別などに応じて記録ディスクドライブ205に記録されているワークサイズWを用いている。   In step S7, the CPU 201 reads the work size W recorded on the recording disk 331 by the recording disk drive 205 and stores it (403). In the present embodiment, the work size W recorded in the recording disk drive 205 is used according to a predetermined type of work, not from a work image obtained by image processing.

ステップS8では、CPU201は、ステップS5で読み出されたワークサイズWに基づき、ハンド開量計算(408、415)を行い、フルクローズ制御とセミクローズ制御に制御方法を切り替えて、それぞれの制御方法でのハンド開量を計算する。ここでは、フルクローズ制御にて制御した場合のハンド開量Hf、セミクローズ制御にて制御した場合のハンド開量Hsを計算する。ここで、ワークサイズバラつきをΔW、フルクローズ制御の場合のアーム位置決めバラつきをΔAf、セミクローズの場合のアーム位置決めバラつきをΔAsとする。その場合、アームがフルクローズ制御の場合のハンド開量Hf、およびセミクローズ制御の場合のハンド開量Hsを求める計算式は例えば以下の通りとなる。
Hf=W+ΔAf+ΔW …(1)
Hs=W+ΔAs+ΔW …(2)
In step S8, the CPU 201 performs hand opening amount calculation (408, 415) based on the work size W read in step S5, switches the control method between full-closed control and semi-closed control, and controls each control method. Calculate the amount of hand opening at. Here, the hand opening amount Hf when controlled by full-closed control and the hand opening amount Hs when controlled by semi-closed control are calculated. Here, it is assumed that the workpiece size variation is ΔW, the arm positioning variation in the case of full-closed control is ΔAf, and the arm positioning variation in the case of semi-closed is ΔAs. In this case, for example, the calculation formulas for obtaining the hand opening amount Hf when the arm is in the fully closed control and the hand opening amount Hs when the arm is in the semi-closed control are as follows.
Hf = W + ΔAf + ΔW (1)
Hs = W + ΔAs + ΔW (2)

すなわち、本実施例では、必要なハンド開量を定めるのに、それ迄のアーム移動がフルないしセミクローズ制御のいずれで行われるかによって、異なるアーム位置決めバラつきΔAfまたはΔAsを想定すべきである、との技術思想を採用している。また、ワークサイズWは実測しておらず、記録ディスクドライブ205などから読み出しているため、あらかじめ想定されるワークサイズバラつきΔWの分を必要なハンド開量に加算している。   That is, in this embodiment, in order to determine the necessary hand opening amount, different arm positioning variations ΔAf or ΔAs should be assumed depending on whether the arm movement until that time is performed under full or semi-closed control. The technical idea is adopted. In addition, since the work size W is not actually measured and is read from the recording disk drive 205 or the like, the amount of the expected work size variation ΔW is added to the necessary hand opening amount.

続いてステップS9では、CPU201は、ステップS8で計算されたフルクローズ制御のハンド開量Hfとセミクローズ制御のハンド開量Hsに基づきハンド把持時間計算(409、416)を行う。ここでは、フルクローズ制御のハンド把持時間Htfと、セミクローズ制御のハンド把持時間Htsを計算する。これらハンド把持時間HtfとHtsは、上記のハンド開量Hf、Hsと、ハンド102の駆動系に係る定数から計算することができる。ここで、ハンド102の駆動系に係る定数とは、ハンド102のサーボモータを制御するクロックの周波数、ハンド102の駆動系のギア比などである。   Subsequently, in step S9, the CPU 201 performs hand gripping time calculation (409, 416) based on the full-closed control hand opening amount Hf and the semi-closed control hand opening amount Hs calculated in step S8. Here, the hand gripping time Htf for full-closed control and the hand gripping time Hts for semi-closed control are calculated. These hand gripping times Htf and Hts can be calculated from the hand opening amounts Hf and Hs and constants related to the drive system of the hand 102. Here, the constants related to the drive system of the hand 102 are a clock frequency for controlling the servo motor of the hand 102, a gear ratio of the drive system of the hand 102, and the like.

ステップS10では、CPU201は、ピッキング動作時間計算(410、417)を行い、フルクローズ制御のピッキング動作時間Ptf、セミクローズ制御のピッキング動作時間Ptsを計算する。ここではステップS6で取得したフル、セミクローズ制御のアーム移動時間Atf、アーム移動時間Atsに、ステップS9で取得したフルおよびセミクローズ制御のハンド把持時間Htf、ハンド把持時間Htsにそれぞれ加算する演算を行う。フルクローズ制御のピッキング動作時間Ptf、セミクローズ制御のピッキング動作時間Ptsは例えば次の計算式により取得することができる。
Ptf=Atf+Htf …(3)
Pts=Ats+Hts …(4)
In step S10, the CPU 201 performs a picking operation time calculation (410, 417), and calculates a picking operation time Ptf for full-closed control and a picking operation time Pts for semi-closed control. Here, the full and semi-closed control arm movement time Atf and arm movement time Ats acquired in step S6 are respectively added to the full and semi-closed control hand holding time Hts and hand holding time Hts acquired in step S9. Do. The picking operation time Ptf for full-closed control and the picking operation time Pts for semi-closed control can be obtained, for example, by the following calculation formula.
Ptf = Atf + Htf (3)
Pts = Ats + Hts (4)

ステップS11では、CPU201は制御方法選択(418)を行う。すなわち、ステップS10にて計算されたフルクローズ制御のピッキング動作時間Ptfと、セミクローズ制御のピッキング動作時間Ptsを比較する。そして、フルクローズ制御のピッキング動作時間Ptfの方が短い場合、制御方式としてフルクローズ制御を選択し、セミクローズ制御のピッキング動作時間Ptsの方が短い場合、制御方式としてセミクローズ制御を選択する。ただし、制御方式を自動的に選択する他、例えば上記のようにして計算したピッキング動作時間Ptf、Ptsをティーチングペンダント300に表示させるなどして、ユーザに最終選択操作を行わせるようにしてもよい。   In step S11, the CPU 201 performs control method selection (418). That is, the picking operation time Ptsf for full-closed control calculated in step S10 is compared with the picking operation time Pts for semi-closed control. When the picking operation time Ptf of the full-closed control is shorter, the full-closed control is selected as the control method, and when the picking operation time Pts of the semi-closed control is shorter, the semi-closed control is selected as the control method. However, in addition to automatically selecting the control method, the user may perform the final selection operation by displaying the picking operation times Ptf and Pts calculated as described above on the teaching pendant 300, for example. .

ステップS12において、CPU201は、ステップS11で選択したフルまたはセミクローズ制御のいずれかの制御方式をサーボ制御装置313に指定する。これにより、サーボ制御装置313は指定された制御方式に応じて、以後サーボモータ1(ないしロボットアーム100各部のサーボモータ、あるいはさらにハンド102のサーボモータ)を制御し、ピッキング動作が行われる。   In step S12, the CPU 201 designates either the full or semi-closed control method selected in step S11 to the servo control device 313. As a result, the servo control device 313 subsequently controls the servo motor 1 (or the servo motor of each part of the robot arm 100 or further the servo motor of the hand 102) according to the designated control method, and the picking operation is performed.

以上のように、本実施例によれば、ロボットアーム100の移動量およびハンド102の開量に基づき、アーム移動時間、およびハンド把持時間を取得する。その場合、アーム移動時間、およびハンド把持時間は、ロボットアーム100(あるいはさらにハンド102)をフルクローズ制御またはセミクローズ制御した場合についてそれぞれ取得する。そしてロボットアーム100(あるいはさらにハンド102)の制御方式(制御態様)として、フルクローズ制御、セミクローズ制御のうちピッキング動作の所要時間が短かくて済む制御方式を選択でき、ピッキング動作を最適化でき、時間短縮が可能となる。   As described above, according to this embodiment, the arm movement time and the hand gripping time are acquired based on the movement amount of the robot arm 100 and the opening amount of the hand 102. In this case, the arm movement time and the hand gripping time are acquired for the case where the robot arm 100 (or the hand 102) is fully closed or semi-closed, respectively. As a control method (control mode) of the robot arm 100 (or further, the hand 102), a control method that requires a short time for the picking operation can be selected from full-closed control and semi-closed control, and the picking operation can be optimized. The time can be shortened.

また、本実施例では、必要なハンド開量を定めるのに、それまでのアーム移動がフルないしセミクローズ制御のいずれで行われるかによって、異なるアーム位置決めバラつきΔAfまたはΔAsを想定すべきである、との技術思想を採用している。例えば、ワークまでの距離が小さくアーム移動時間がピッキング動作の所要時間中で小さいファクタであるような場合には、相対的にハンド把持時間が大きなファクタを占めるようになる。このようなケースでは、アーム位置に誤差が生じやすく大きなハンド開量を取らなければならないセミクローズ制御の方よりもフルクローズ制御の方が時間短縮には有利である場合があり得る。本実施例ではこのようなケースにも対応でき、フルまたはセミクローズ制御方式から確実にピッキング動作の所要時間の短い制御態様を選択することができる。   Further, in the present embodiment, in order to determine the necessary hand opening amount, different arm positioning variations ΔAf or ΔAs should be assumed depending on whether the arm movement until that time is performed by full or semi-closed control. The technical idea is adopted. For example, when the distance to the workpiece is small and the arm movement time is a small factor in the time required for the picking operation, the hand gripping time becomes a relatively large factor. In such a case, there is a case where the full-closed control is more advantageous for shortening the time than the semi-closed control in which an error is likely to occur in the arm position and a large hand opening amount must be taken. In this embodiment, it is possible to cope with such a case, and it is possible to select a control mode in which the time required for the picking operation is short from the full or semi-closed control method.

また、本実施例ではワークサイズWを記録ディスクドライブ205などから読み出しているため、あらかじめ想定されるワークサイズバラつきΔWの分を必要なハンド開量に加算する制御を行っている。本実施例では、これらの条件を加味した計算を行った上、ロボットアーム100(あるいはさらにハンド102)の制御方式(制御態様)として、フルクローズ制御、セミクローズ制御のいずれか所要時間が短い制御態様を選択する。従って、本実施例ではよりきめ細かくピッキング動作を最適化でき、時間短縮が可能となる、という優れた効果がある。   Further, in this embodiment, since the work size W is read from the recording disk drive 205 or the like, control is performed to add an amount of the expected work size variation ΔW to the necessary hand opening amount. In the present embodiment, calculation taking these conditions into account is performed, and the control method (control mode) of the robot arm 100 (or further, the hand 102) is controlled with a short required time of either full-closed control or semi-closed control. Select an aspect. Therefore, this embodiment has an excellent effect that the picking operation can be optimized more finely and the time can be shortened.

上記の実施例1では、ハンド開量を計算するのに、記録ディスクドライブ205などに予め記憶したワークサイズWを用いている。これに対して、本実施例2では、ワークサイズはカメラ310で撮影した画像に対する画像処理を介して取得する例を示す。このようにワークサイズを画像処理を介して実測することにより、ワークサイズバラつき、ワーク位置バラつきを高精度に算出でき、ワーク毎に適切なハンド開量を設定することができ、さらなるピッキング動作時間の短縮を期待できる。   In the first embodiment, the work size W stored in advance in the recording disk drive 205 or the like is used to calculate the hand opening amount. On the other hand, in the second embodiment, an example in which the work size is acquired through image processing on an image captured by the camera 310 is shown. By actually measuring the workpiece size through image processing in this way, the workpiece size variation and workpiece position variation can be calculated with high accuracy, an appropriate hand opening amount can be set for each workpiece, and further picking operation time can be set. Shortening can be expected.

図6は、本実施例2に係るロボット装置の制御系の制御機能ないし制御工程を図4と同様の形式のブロック表現で示したものである。装置のハードウェア構成は上述の実施例1の図1〜図3に示したものと同様で、図6に示した各制御機能ないし各制御工程は、図3のCPU201がプログラム330を実行することにより実現される。なお、図6において上述の図4(実施例1)と同様の構成については、同一符号を付してその詳細な説明は省略するものとする。以下、図6の各ブロック表現で示した制御機能ないし制御工程につき説明する。   FIG. 6 shows a control function or a control process of the control system of the robot apparatus according to the second embodiment in block representation of the same format as FIG. The hardware configuration of the apparatus is the same as that shown in FIGS. 1 to 3 of the first embodiment, and the CPU 201 in FIG. 3 executes the program 330 in each control function or each control process shown in FIG. It is realized by. In FIG. 6, the same components as those in FIG. 4 (Embodiment 1) described above are denoted by the same reference numerals, and detailed description thereof is omitted. Hereinafter, the control function or control process shown by each block representation in FIG. 6 will be described.

図6において、図4(実施例1)と異なるのは、CPU201の画像処理(401)において、ワーク位置特定(402)とともにワークサイズ算出(421)を行なう点にある。このうちワーク位置特定(402)処理は実施例1と同様に行われる。ワークサイズ算出(421)では、カメラ310で取り込まれた画像に対する画像処理、たとえばパターンマッチングなどの処理を介して、カメラ310で撮影したワークのワークサイズを算出する。図6の他の制御機能(制御工程)ブロックの構成は図4と同様である。   6 is different from FIG. 4 (Embodiment 1) in that, in the image processing (401) of the CPU 201, work size calculation (421) is performed together with work position specification (402). Among these, the work position specifying (402) process is performed in the same manner as in the first embodiment. In the work size calculation (421), the work size of the work photographed by the camera 310 is calculated through image processing on the image captured by the camera 310, for example, processing such as pattern matching. The configuration of other control function (control process) blocks in FIG. 6 is the same as that in FIG.

図7は本実施例の制御を実現すべく、制御装置たるCPU201が実行するプログラムの流れを示したフローチャートである。図7に示す各処理ステップは、CPU201がプログラム330(図3)を読み出してプログラム330を実行することにより実現される。   FIG. 7 is a flowchart showing the flow of a program executed by the CPU 201 as a control device in order to realize the control of this embodiment. Each processing step shown in FIG. 7 is realized by the CPU 201 reading the program 330 (FIG. 3) and executing the program 330.

図7のステップS21、S22、S23の動作は、図5(実施例1)のステップS1、S2、S3と同様で、カメラ310によるワーク撮影、画像処理(401)、ワーク位置特定(402)を行う。   The operations in steps S21, S22, and S23 in FIG. 7 are the same as those in steps S1, S2, and S3 in FIG. 5 (Example 1), and work shooting by the camera 310, image processing (401), and work position specification (402) are performed. Do.

図7のステップS24において、CPU201は、ステップS22の画像処理(401)に基づきワークサイズ算出(421)を行い、ワークサイズWを算出する。このワークサイズWは、後述のハンド開量計算などで用いられるが、本実施例ではあらかじめ記憶した値ではなく、カメラ310の撮影画像に基づき実測された値である。   In step S24 of FIG. 7, the CPU 201 calculates a work size (421) based on the image processing (401) of step S22, and calculates a work size W. The work size W is used in hand opening amount calculation, which will be described later. In this embodiment, the work size W is not a value stored in advance, but a value actually measured based on a photographed image of the camera 310.

続くステップS25、S26、S27の動作は、図5(実施例1)のステップS4、S5、S6と同様である。   The subsequent operations in steps S25, S26, and S27 are the same as those in steps S4, S5, and S6 in FIG. 5 (Example 1).

ステップS25において、CPU201は、図5のステップS4と同様に、画像処理(401)から得たワークの目標位置に基づき、アーム移動量計算(405、412)を行い、アームの現在位置からの移動量Alを計算する。   In step S25, the CPU 201 performs arm movement amount calculation (405, 412) based on the target position of the workpiece obtained from the image processing (401), and moves the arm from the current position, as in step S4 of FIG. The quantity Al is calculated.

ステップS26において、CPU201は図5のステップS5と同様に、アーム速度計算(406、413)を行い、フルクローズ制御とセミクローズ制御に制御方法を切り替えて、それぞれの制御方法におけるアーム移動速度を計算する。ここではフルクローズ制御にて制御した場合のアーム移動速度Avf、セミクローズ制御にて制御した場合のアーム移動速度Avsを計算する。   In step S26, the CPU 201 calculates the arm speed (406, 413) as in step S5 of FIG. 5, switches the control method between full-closed control and semi-closed control, and calculates the arm moving speed in each control method. To do. Here, the arm moving speed Avf when controlled by the full-closed control and the arm moving speed Avs when controlled by the semi-closed control are calculated.

ステップS27において、CPU201は、図5のステップS6と同様に、ステップS4で計算された移動量Alに基づき、アーム移動時間計算(407、414)を行う。ここでは、フルクローズ制御にて制御した場合のアーム移動時間Atfと、セミクローズ制御にて制御した場合のアーム移動時間Atsを計算する。   In step S27, the CPU 201 performs arm movement time calculation (407, 414) based on the movement amount Al calculated in step S4, as in step S6 of FIG. Here, the arm movement time Atf when controlled by full-closed control and the arm movement time Ats when controlled by semi-closed control are calculated.

ステップS28において、CPU201は、ステップS24で実測したワークサイズWに基づき、ハンド開量計算(408、415)を行い、フルクローズ制御とセミクローズ制御に制御方法を切り替え、それぞれの制御方法でのハンド開量を計算する。ここではフルクローズ制御にて制御した場合のハンド開量Hf、セミクローズ制御にて制御した場合のハンド開量Hsを計算する。本実施例では、カメラ310にて撮影した画像よりワークサイズWを算出するため、ワークサイズバラつきΔWはハンド開量に影響しないため計算に用いない。ここでフルクローズ制御の場合のアーム位置決めバラつきをΔAf、セミクローズの場合のアーム位置決めバラつきをΔAsとする。その場合、フルクローズ制御の場合のハンド開量Hf、およびセミクローズ制御の場合のハンド開量Hsを求める計算式は例えば以下のようになる。
Hf=W+ΔAf …(5)
Hs=W+ΔAs …(6)
In step S28, the CPU 201 performs hand opening amount calculation (408, 415) based on the workpiece size W actually measured in step S24, and switches the control method between full-closed control and semi-closed control. Calculate the opening amount. Here, the hand opening amount Hf when controlled by full-closed control and the hand opening amount Hs when controlled by semi-closed control are calculated. In this embodiment, since the work size W is calculated from an image photographed by the camera 310, the work size variation ΔW is not used in the calculation because it does not affect the hand opening amount. Here, it is assumed that the arm positioning variation in the case of full-closed control is ΔAf, and the arm positioning variation in the case of semi-closed is ΔAs. In this case, the calculation formulas for obtaining the hand opening amount Hf in the case of the full-closed control and the hand opening amount Hs in the case of the semi-closed control are as follows, for example.
Hf = W + ΔAf (5)
Hs = W + ΔAs (6)

図7のステップS29〜S32の動作は、上述の実施例1のステップS9〜S12(図5)と同様である。   The operations in steps S29 to S32 in FIG. 7 are the same as those in steps S9 to S12 (FIG. 5) in the first embodiment.

ステップS29では、図5のステップS9と同様に、CPU201はステップS28で計算されたフルクローズ制御のハンド開量Hfとセミクローズ制御のハンド開量Hsに基づきハンド把持時間計算(409、416)を行い、ハンド把持時間を計算する。ここでは、フルクローズ制御のハンド把持時間Htfと、セミクローズ制御のハンド把持時間Htsを計算する。これらのハンド把持時間HtfとHtsは、上記のハンド開量Hf、Hsと、ハンド102の駆動系に係る上述の諸定数から計算することができる。   In step S29, as in step S9 of FIG. 5, the CPU 201 calculates a hand gripping time (409, 416) based on the hand opening amount Hf of the full-closed control and the hand opening amount Hs of the semi-closed control calculated in step S28. And calculate hand grip time. Here, the hand gripping time Htf for full-closed control and the hand gripping time Hts for semi-closed control are calculated. These hand gripping times Htf and Hts can be calculated from the above-mentioned hand opening amounts Hf and Hs and the above-mentioned various constants relating to the drive system of the hand 102.

ステップS30では、CPU201は、図5のステップS10と同様に、ピッキング動作時間計算(410、417)を行い、フルクローズ制御のピッキング動作時間Ptf、セミクローズ制御のピッキング動作時間Ptsを計算する。ここではステップS27で取得したフル、セミクローズ制御のアーム移動時間Atf、アーム移動時間Atsに、ステップS29で取得したフルおよびセミクローズ制御のハンド把持時間Htf、ハンド把持時間Htsをそれぞれ加算する演算を行う。フルクローズ制御のピッキング動作時間Ptf、およびセミクローズ制御のピッキング動作時間Ptsを取得する計算式は実施例1中の式(3)および式(4)(図7中にも記載)と同じである。   In step S30, the CPU 201 calculates the picking operation time (410, 417) in the same manner as in step S10 of FIG. 5, and calculates the picking operation time Ptf for full-closed control and the picking operation time Pts for semi-closed control. Here, the calculation is performed to add the full and semi-closed control arm movement time Atf and arm movement time Ats acquired in step S27 to the full and semi-closed control hand holding time Hts and hand holding time Hts acquired in step S29, respectively. Do. The calculation formulas for obtaining the picking operation time Ptsf of the full-closed control and the picking operation time Pts of the semi-closed control are the same as the formulas (3) and (4) in the first embodiment (also described in FIG. 7). .

ステップS31では、図5のステップS11と同様に、CPU201は制御方法選択(418)を行う。すなわち、ステップS30で取得したフルクローズ制御のピッキング動作時間Ptfと、セミクローズ制御のピッキング動作時間Ptsを比較する。そして、フルクローズ制御のピッキング動作時間Ptfの方が短い場合、制御方式としてフルクローズ制御を選択し、セミクローズ制御のピッキング動作時間Ptsの方が短い場合、制御方式としてセミクローズ制御を選択する。   In step S31, as in step S11 of FIG. 5, the CPU 201 performs control method selection (418). That is, the picking operation time Ptsf of the full-closed control acquired in step S30 is compared with the picking operation time Pts of the semi-closed control. When the picking operation time Ptf of the full-closed control is shorter, the full-closed control is selected as the control method, and when the picking operation time Pts of the semi-closed control is shorter, the semi-closed control is selected as the control method.

ステップS32では、図5のステップS12と同様に、CPU201は、ステップS11で選択したフルまたはセミクローズ制御のいずれかの制御方式をサーボ制御装置313に指定する。これにより、サーボ制御装置313は指定された制御方式に応じて、以後、サーボモータ1(ないしロボットアーム100各部のサーボモータ)を制御し、ピッキング動作が行われる。   In step S32, as in step S12 of FIG. 5, the CPU 201 designates either the full or semi-closed control method selected in step S11 to the servo control device 313. As a result, the servo control device 313 subsequently controls the servo motor 1 (or the servo motor of each part of the robot arm 100) according to the designated control method, and the picking operation is performed.

本実施例の基本的な作用効果は実施例1の最後で述べたものと同様であるため、ここではその記述を繰り返すのは省略するが、上述の実施例1の作用効果に加え、本実施例では次のような作用効果を期待できる。本実施例では、ワーク位置に加え、ワークサイズWをカメラ310で撮影した画像に基づき実測するようにしているため、ワークサイズバラつきやワーク位置バラつきを高精度に算出し、その結果をハンドの開量および把持時間計算に反映させることができる。   Since the basic operational effects of the present embodiment are the same as those described at the end of the first embodiment, the description thereof will not be repeated here, but in addition to the operational effects of the above-described first embodiment, the present embodiment will be described. In the example, the following effects can be expected. In this embodiment, in addition to the work position, the work size W is actually measured based on the image taken by the camera 310. Therefore, the work size variation and the work position variation are calculated with high accuracy, and the results are calculated. It can be reflected in the amount and grip time calculation.

すなわち、本実施例によれば、ワークに個体差がある場合でも、個々のワークに応じてワーク毎に適切なハンド開量を設定し、的確な把持が可能である。また、ピッキング動作時間の評価に係る把持時間計算をより正確に実現でき、ピッキング動作時間に基づき適切にフル、ないしセミクローズ制御を選択し、ピッキング動作の所要時間を短縮することができる。   That is, according to the present embodiment, even when there are individual differences in the work, an appropriate hand opening amount can be set for each work according to the individual work, and accurate gripping can be performed. In addition, the gripping time calculation related to the evaluation of the picking operation time can be more accurately realized, and the full or semi-closed control can be appropriately selected based on the picking operation time, thereby shortening the time required for the picking operation.

上述の実施例1および2では、ハンド102でワークを把持する時のハンド把持速度については考慮しておらず、その値は一定であることを前提として説明した。   In the above-described first and second embodiments, the hand gripping speed when gripping the workpiece with the hand 102 is not considered, and the description is made on the assumption that the value is constant.

しかしながら、ロボット制御の分野では、ワークが壊れやすい、などの条件がある場合に、従来よりハンド把持速度を遅くしてワークの破損を防ぐことが行われており、このようにワークの特性によってハンド把持速度を変更しなければならない場合がある。本実施例3では、ワーク(の種類、特性)に応じてハンド把持速度を変える制御を行う場合のピッキング制御につき説明する。   However, in the field of robot control, when there is a condition such as the work being fragile, the hand gripping speed is made slower than before to prevent the work from being damaged. It may be necessary to change the gripping speed. In the third embodiment, picking control in the case of performing control for changing the hand gripping speed in accordance with the workpiece (type and characteristics thereof) will be described.

図8は、本実施例3に係るロボット装置の制御系の制御機能ないし制御工程を図4や図6と同様の形式のブロック表現で示したものである。装置のハードウェア構成は上述の実施例1の図1〜図3に示したものと同様で、図8に示した各制御機能ないし各制御工程は、図3のCPU201がプログラム330を実行することにより実現される。なお、図8において上述の図4(実施例1)ないし図6(実施例2)と同様の構成については、同一符号を付してその詳細な説明は省略するものとする。以下、図6の各ブロック表現で示した制御機能ないし制御工程につき説明する。   FIG. 8 shows a control function or a control process of the control system of the robot apparatus according to the third embodiment in a block representation of the same format as in FIG. 4 and FIG. The hardware configuration of the apparatus is the same as that shown in FIGS. 1 to 3 of the first embodiment, and the CPU 201 in FIG. 3 executes the program 330 in each control function or each control process shown in FIG. It is realized by. In FIG. 8, the same components as those in FIG. 4 (Embodiment 1) to FIG. 6 (Embodiment 2) are denoted by the same reference numerals, and detailed description thereof is omitted. Hereinafter, the control function or control process shown by each block representation in FIG. 6 will be described.

図8に示したCPU201の画像処理(401)において、ワークサイズ算出(421)を行なうのは図6(実施例2)と同様であるが、本実施例ではさらにワーク種類特定(431)を行う。このワーク種類特定(431)では、例えばカメラ310から取り込んだ画像に対する画像処理に基づき、ワークの種類を特定する。ワークの種類は、パターンマッチングなどの処理によりワークの特徴部(例えば特徴的な形状、マークや刻印など)を画像認識することによって特定することができる。   In the image processing (401) of the CPU 201 shown in FIG. 8, the work size calculation (421) is performed in the same manner as in FIG. 6 (embodiment 2), but in this embodiment, the work type specification (431) is further performed. . In this work type specification (431), the type of work is specified based on, for example, image processing on an image captured from the camera 310. The type of the work can be specified by recognizing an image of a characteristic part of the work (for example, a characteristic shape, a mark, or an inscription) by a process such as pattern matching.

また、本実施例のHDD204(あるいは他の記憶手段)にはワークの種類に応じた適切なハンド把持速度を記憶(432)させておく。従って、ワーク種類特定(431)の処理で特定されたワークの種類から、例えば部品番号や型番によってインデックスされ、HDD204に記憶されているハンド把持速度から、そのワークの種類に適した把持速度の条件を取得することができる。HDD204から取得したワーク種類に応じた把持速度は、ハンド把持時間計算(後述のステップS51)で用いられる。   Also, an appropriate hand gripping speed corresponding to the type of work is stored (432) in the HDD 204 (or other storage means) of the present embodiment. Therefore, the gripping speed condition suitable for the type of the workpiece is determined from the workpiece gripping speed stored in the HDD 204 from the workpiece type identified by the workpiece type identification (431) processing, for example, by the part number or model number. Can be obtained. The gripping speed corresponding to the workpiece type acquired from the HDD 204 is used in hand gripping time calculation (step S51 described later).

図9は、本実施例の制御を実現すべく、制御装置たるCPU201が実行するプログラムの流れを示したフローチャートである。図9に示す各処理ステップは、CPU201がプログラム330(図3)を読み出してプログラム330を実行することにより実現される。   FIG. 9 is a flowchart showing a flow of a program executed by the CPU 201 as a control device in order to realize the control of the present embodiment. Each processing step shown in FIG. 9 is realized by the CPU 201 reading the program 330 (FIG. 3) and executing the program 330.

図9のステップS41、S42、S43の動作は、図5(実施例1)のステップS1、S2、S3と同様で、カメラ310によるワーク撮影、画像処理(401)、ワーク位置特定(402)を行う。   The operations in steps S41, S42, and S43 in FIG. 9 are the same as those in steps S1, S2, and S3 in FIG. 5 (Example 1). Work shooting by the camera 310, image processing (401), and work position specification (402) are performed. Do.

続いてステップS44において、CPU201は、ステップS42の画像処理(401)に基づきワークサイズ算出(421)を行い、ワークサイズWを算出する。このワークサイズWは、後述のハンド開量計算などで用いられるが、本実施例ではあらかじめ記憶した値ではなく、カメラ310の撮影画像に基づき実測された値である。   Subsequently, in step S44, the CPU 201 calculates a work size (421) based on the image processing (401) in step S42, and calculates a work size W. The work size W is used in hand opening amount calculation, which will be described later. In this embodiment, the work size W is not a value stored in advance, but a value actually measured based on a photographed image of the camera 310.

図9のステップS45では,CPU201は、ワーク種類特定(431)を行う。ここでは、カメラ310から取り込んだ画像に対する画像処理に基づき、ワーク種類を特定する。特定したワーク種類は、例えば部品番号や型番(あるいはこれに類似の情報)など、下記の把持速度をHDD204中から検索できる形式で表現することができる。   In step S45 of FIG. 9, the CPU 201 performs work type identification (431). Here, the work type is specified based on the image processing on the image captured from the camera 310. The identified workpiece type can be expressed in a format in which the following gripping speed such as a part number or model number (or similar information) can be searched from the HDD 204, for example.

続いて、ステップS46ではステップS45で特定したワーク種類に基づき、HDD204にワーク毎に記録されているハンド把持速度から特定したワークで用いるのに適切なハンド把持速度Hv’を読み込む。   Subsequently, in step S46, based on the work type specified in step S45, a hand holding speed Hv 'appropriate for use with the specified work is read from the hand holding speed recorded for each work in the HDD 204.

続くステップS47、S48、S49の動作は、図5(実施例1)のステップS4、S5、S6と同様である。まず、ステップS47において、図5のステップS4と同様に、CPU201はステップS43で得られたワークの目標位置に基づき、アーム移動量計算(405、412)を行い、アームの現在位置からの移動量Alを計算する。   The subsequent operations in steps S47, S48, and S49 are the same as those in steps S4, S5, and S6 in FIG. 5 (Example 1). First, in step S47, as in step S4 in FIG. 5, the CPU 201 calculates an arm movement amount (405, 412) based on the target position of the workpiece obtained in step S43, and moves the arm from the current position. Calculate Al.

続いてステップS48において、CPU201は、図5のステップS5と同様に、アーム速度計算(406、413)を行い、フルクローズ制御とセミクローズ制御に制御方法を切り替えて、それぞれの制御方法におけるアーム移動速度を計算する。ここではフルクローズ制御にて制御した場合のアーム移動速度Avf、セミクローズ制御にて制御した場合のアーム移動速度Avsを計算する。これらの移動速度は、フルおよびセミクローズ制御におけるクロック速度、減速機11のギア比、アーム各部の寸法比などに基づいて計算することができる。   Subsequently, in step S48, the CPU 201 performs arm speed calculation (406, 413) similarly to step S5 in FIG. 5, switches the control method between full-closed control and semi-closed control, and moves the arm in each control method. Calculate speed. Here, the arm moving speed Avf when controlled by the full-closed control and the arm moving speed Avs when controlled by the semi-closed control are calculated. These moving speeds can be calculated based on the clock speed in full and semi-closed control, the gear ratio of the speed reducer 11, the dimensional ratio of each part of the arm, and the like.

さらに、ステップS49において、CPU201は、図5のステップS6と同様に、ステップS47で計算された移動量Alに基づき、アーム移動時間計算(407、414)を行う。ここでは、フルクローズ制御、およびセミクローズ制御の各制御態様におけるアーム移動時間を計算する。ここでは、フルクローズ制御にて制御した場合のアーム移動時間Atfと、セミクローズ制御にて制御した場合のアーム移動時間Atsを計算する。これらのアーム移動時間は、ステップS47で求めたアーム移動量AlをステップS48で求めたアーム移動速度AvfまたはAvsで除することにより取得できる。   Furthermore, in step S49, the CPU 201 performs arm movement time calculation (407, 414) based on the movement amount Al calculated in step S47, as in step S6 of FIG. Here, the arm movement time in each control mode of full-closed control and semi-closed control is calculated. Here, the arm movement time Atf when controlled by full-closed control and the arm movement time Ats when controlled by semi-closed control are calculated. These arm movement times can be obtained by dividing the arm movement amount Al obtained in step S47 by the arm movement speed Avf or Avs obtained in step S48.

ステップS50〜S54は、図7(実施例2)のステップS28〜S32と同様である。まず、ステップS50では、CPU201は、図7のステップS28と同様に、ステップS44で実測したワークサイズWに基づき、ハンド開量計算(408、415)を行う。ここでは、フルクローズ制御にて制御した場合のハンド開量Hf、セミクローズ制御にて制御した場合のハンド開量Hsを計算する。実施例2と同様に、本実施例でもカメラ310にて撮影した画像よりワークサイズWを算出するため、ワークサイズバラつきΔWはハンド開量に影響しないため計算に用いない。ここでフルクローズ制御の場合のアーム位置決めバラつきをΔAf、セミクローズの場合のアーム位置決めバラつきをΔAsとする。その場合、フルクローズ制御の場合のハンド開量Hf、およびセミクローズ制御の場合のハンド開量Hsを求める計算式は上述の式(5)および式(6)と同じである。   Steps S50 to S54 are the same as steps S28 to S32 in FIG. 7 (Example 2). First, in step S50, the CPU 201 performs hand opening amount calculation (408, 415) based on the work size W measured in step S44, as in step S28 of FIG. Here, the hand opening amount Hf when controlled by full-closed control and the hand opening amount Hs when controlled by semi-closed control are calculated. Similarly to the second embodiment, in this embodiment, the work size W is calculated from an image captured by the camera 310. Therefore, the work size variation ΔW is not used for the calculation because it does not affect the hand opening amount. Here, it is assumed that the arm positioning variation in the case of full-closed control is ΔAf, and the arm positioning variation in the case of semi-closed is ΔAs. In this case, the calculation formulas for obtaining the hand opening amount Hf in the case of the full-closed control and the hand opening amount Hs in the case of the semi-closed control are the same as the above formulas (5) and (6).

ステップS51では、図7のステップS29と同様に、CPU201はステップS50で計算されたフルクローズ制御のハンド開量Hfとセミクローズ制御のハンド開量Hsに基づきハンド把持時間計算(409、416)を行い、ハンド把持時間を計算する。ここでは、フルクローズ制御のハンド把持時間Htfと、セミクローズ制御のハンド把持時間Htsを計算する。これらのハンド把持時間HtfとHtsは、上記のハンド開量Hf、Hsと、ハンド102の駆動系に係る上述の諸定数から計算することができる。   In step S51, as in step S29 of FIG. 7, the CPU 201 calculates hand gripping time (409, 416) based on the hand opening amount Hf of the full-closed control and the hand opening amount Hs of the semi-closed control calculated in step S50. And calculate hand grip time. Here, the hand gripping time Htf for full-closed control and the hand gripping time Hts for semi-closed control are calculated. These hand gripping times Htf and Hts can be calculated from the above-mentioned hand opening amounts Hf and Hs and the above-mentioned various constants relating to the drive system of the hand 102.

なお、ハンド102に関してフルないしセミクローズ制御のいずれかを選択できる構成においては、フルないしセミクローズ制御態様のいずれを選択するかについては、実施例1、実施例2と同様にアームと同じ制御態様を選択するものとする。従って、ステップS50の開量計算およびステップS51の把持時間計算においては、ハンド102を制御するフルないしセミクローズ制御においてそれぞれ異なる計算条件を用いることができるのも同様である。   In the configuration in which either full or semi-closed control can be selected for the hand 102, the same control mode as that of the arm is selected as in the case of the first and second embodiments. Shall be selected. Therefore, in the opening amount calculation in step S50 and the gripping time calculation in step S51, it is the same that different calculation conditions can be used in full or semi-closed control for controlling the hand 102.

ステップS52では、CPU201は、図7のステップS30と同様に、ピッキング動作時間計算(410、417)を行い、フルクローズ制御のピッキング動作時間Ptf、セミクローズ制御のピッキング動作時間Ptsを計算する。ここではステップS49で取得したフル、セミクローズ制御のアーム移動時間Atf、アーム移動時間Atsに、ステップS51で取得したフルおよびセミクローズ制御のハンド把持時間Htf、ハンド把持時間Htsをそれぞれ加算する演算を行う。フルクローズ制御のピッキング動作時間Ptf、およびセミクローズ制御のピッキング動作時間Ptsを取得する計算式は実施例1中の式(3)および式(4)(図9中にも記載)と同じである。   In step S52, the CPU 201 calculates the picking operation time (410, 417) as in step S30 of FIG. 7, and calculates the picking operation time Ptf for full-closed control and the picking operation time Pts for semi-closed control. Here, calculation is performed to add the full and semi-closed control arm movement time Atf and arm movement time Ats acquired in step S49 to the full and semi-closed control hand gripping time Hts and hand gripping time Hts acquired in step S51, respectively. Do. The calculation formulas for obtaining the picking operation time Ptsf of the full-closed control and the picking operation time Pts of the semi-closed control are the same as the formulas (3) and (4) in the first embodiment (also described in FIG. 9). .

ステップS53では、図7のステップS31と同様に、CPU201は制御方法選択(418)を行う。すなわち、ステップS52で取得したフルクローズ制御のピッキング動作時間Ptfと、セミクローズ制御のピッキング動作時間Ptsを比較する。そして、フルクローズ制御のピッキング動作時間Ptfの方が短い場合、制御方式としてフルクローズ制御を選択し、セミクローズ制御のピッキング動作時間Ptsの方が短い場合、制御方式としてセミクローズ制御を選択する。   In step S53, as in step S31 of FIG. 7, the CPU 201 performs control method selection (418). That is, the picking operation time Ptsf of the full-closed control acquired in step S52 is compared with the picking operation time Pts of the semi-closed control. When the picking operation time Ptf of the full-closed control is shorter, the full-closed control is selected as the control method, and when the picking operation time Pts of the semi-closed control is shorter, the semi-closed control is selected as the control method.

ステップS54では、図7のステップS32と同様に、CPU201は、ステップS53で選択したフルまたはセミクローズ制御のいずれかの制御方式をサーボ制御装置313に指定する。これにより、サーボ制御装置313は指定された制御方式に応じて、以後、サーボモータ1(ないしロボットアーム100各部のサーボモータ)を制御し、ピッキング動作が行われる。   In step S54, as in step S32 of FIG. 7, the CPU 201 designates either the full or semi-closed control method selected in step S53 to the servo control device 313. As a result, the servo control device 313 subsequently controls the servo motor 1 (or the servo motor of each part of the robot arm 100) according to the designated control method, and the picking operation is performed.

本実施例の基本的な作用効果は実施例1の最後で述べたものと同様である。また、ワークサイズWをカメラ310で撮影した画像に基づき実測するようにしているため、ワークに個体差がある場合でも、個々のワークに応じてワーク毎に適切なハンド開量を設定し、的確な把持が可能な点は実施例2と同様である。また、ピッキング動作時間の評価に係る把持時間計算をより正確に実現でき、ピッキング動作時間に基づき適切にフル、ないしセミクローズ制御を選択し、ピッキング動作の所要時間を短縮することができる点も実施例2と同様である。   The basic operational effects of the present embodiment are the same as those described at the end of the first embodiment. In addition, since the workpiece size W is actually measured based on the image taken by the camera 310, even if there are individual differences in the workpiece, an appropriate hand opening amount is set for each workpiece according to the individual workpiece, and the workpiece size W is accurately determined. The point that can be gripped is the same as in the second embodiment. In addition, it is possible to more accurately realize grip time calculation related to evaluation of picking operation time, and to select the appropriate full or semi-closed control based on the picking operation time and reduce the time required for picking operation Similar to Example 2.

さらに、本実施例では、ワーク種類をカメラ310で撮影した画像に基づき特定し、そのワーク種類に適したハンド把持速度を用いてハンド把持時間を計算するようにしている。このため、実際に操作されるワークに基づいてハンド把持時間を正確に計算し、ピッキング動作時間の評価を適切に行うことができ、アームを制御する制御態様としてフルまたはセミクローズ制御を適切に選択することができる。例えば、本実施例によれば、実際に操作されるワークに基づいてハンド把持速度が変更となってもアームを制御する制御態様としてフルまたはセミクローズ制御を適切に選択でき、ピッキング動作時間を短縮することができる。   Further, in this embodiment, the work type is specified based on the image taken by the camera 310, and the hand holding time is calculated using the hand holding speed suitable for the work type. For this reason, it is possible to accurately calculate the hand gripping time based on the actually operated workpiece and to properly evaluate the picking operation time, and to select full or semi-closed control appropriately as the control mode for controlling the arm can do. For example, according to the present embodiment, full or semi-closed control can be appropriately selected as a control mode for controlling the arm even if the hand gripping speed is changed based on the actually operated workpiece, and the picking operation time is shortened. can do.

上記実施例1〜3では、カメラ310によりワーク103を撮影し、画像処理に基づき少なくともワーク103の位置を特定してアーム移動距離/移動時間を計算していた。   In the first to third embodiments, the work 103 is photographed by the camera 310, and at least the position of the work 103 is specified based on image processing to calculate the arm movement distance / movement time.

本実施例では、図10に示すようにワーク103の位置が固定できる場所、例えば図10中のトレー503などにワークを設置する場合を想定する。このようにトレー503の位置がある程度、正確に規制されている場合には、カメラ310による撮影は必ずしも必要なく、既知のトレー503の位置に基づきアーム移動距離/移動時間を計算することができる。以下、本実施例では上記のような構成におけるピッキング動作の制御につき説明する。   In the present embodiment, it is assumed that the work is installed in a place where the position of the work 103 can be fixed as shown in FIG. 10, for example, the tray 503 in FIG. As described above, when the position of the tray 503 is accurately regulated to some extent, photographing by the camera 310 is not necessarily required, and the arm movement distance / movement time can be calculated based on the known position of the tray 503. Hereinafter, in this embodiment, control of the picking operation in the above configuration will be described.

図10において、ワーク103をトレー503に載せて位置を固定する構成を採用する場合、例えば後述のハンド開量計算において下記のようなパラメータを考慮する必要がある。例えば、ワーク103は、トレー503上面の凹部に載置される場合、ワーク位置バラつきΔXが発生するため、このバラつきを考慮してハンド開量を計算する必要がある。ここでトレーサイズ(上記凹部の幅)をXとすると、ワーク位置バラつきΔXの計算式は次のようになる。
ΔX=X−(W+ΔW) …(7)
このワーク位置バラつきΔXはトレー503各部の寸法などに応じて想定すべき最大の値である。
In FIG. 10, when the configuration in which the work 103 is placed on the tray 503 and the position is fixed is adopted, for example, the following parameters need to be taken into account in hand opening amount calculation described later. For example, when the workpiece 103 is placed in the recess on the upper surface of the tray 503, a workpiece position variation ΔX is generated. Therefore, it is necessary to calculate the hand opening amount in consideration of this variation. Here, when the tray size (the width of the concave portion) is X, the calculation formula of the workpiece position variation ΔX is as follows.
ΔX = X− (W + ΔW) (7)
This workpiece position variation ΔX is the maximum value that should be assumed according to the dimensions of each part of the tray 503.

図11は、本実施例4に係るロボット装置の制御系の制御機能ないし制御工程を図4、図6、図8などと同様の形式のブロック表現で示したものである。装置のハードウェア構成は上述の実施例1の図1〜図3に示したものと同様である。ただし、本実施例では、制御系の構成に関しては、図3のカメラ310とそのインタフェース201は必ずしも必要なく、除去することが可能である。その他の本実施例に必要な制御系の構成は図3のものと同様でよい。   FIG. 11 shows a control function or a control process of the control system of the robot apparatus according to the fourth embodiment in a block representation of the same format as that of FIGS. The hardware configuration of the apparatus is the same as that shown in FIGS. However, in the present embodiment, regarding the configuration of the control system, the camera 310 and its interface 201 in FIG. 3 are not necessarily required and can be removed. Other configurations of the control system necessary for this embodiment may be the same as those shown in FIG.

図11に示した各制御機能ないし各制御工程は、図3のCPU201がプログラム330を実行することにより実現される。なお、図11において上述の図4(実施例1)、図6(実施例2)、図8(実施例3)などと同様の構成については、同一符号を付してその詳細な説明は省略するものとする。以下、図11の各ブロック表現で示した制御機能ないし制御工程につき説明する。   Each control function or each control process shown in FIG. 11 is realized by the CPU 201 in FIG. In FIG. 11, the same components as those in FIG. 4 (Embodiment 1), FIG. 6 (Embodiment 2), FIG. 8 (Embodiment 3) and the like are denoted by the same reference numerals, and detailed description thereof is omitted. It shall be. Hereinafter, the control function or control process shown by each block representation in FIG. 11 will be described.

図11に示すように、本実施例ではHDD204(あるいは他の記憶手段)にワーク位置を記憶(441)するようにしている。このワーク位置は、図10のようなトレー503を用いる場合、トレー503の中心座標などの形式で記憶する。本実施例では、実施例1と同様に記録ディスク331などから読み込んだワークサイズWも記憶(403)しておく。図11の他の制御機能(制御工程)ブロックの構成は図4(あるいは図6、図8)と同様である。   As shown in FIG. 11, in this embodiment, the work position is stored (441) in the HDD 204 (or other storage means). This work position is stored in the form of the center coordinates of the tray 503 when the tray 503 as shown in FIG. 10 is used. In the present embodiment, the work size W read from the recording disk 331 or the like is also stored (403) as in the first embodiment. The configuration of other control function (control process) blocks in FIG. 11 is the same as that in FIG. 4 (or FIGS. 6 and 8).

本実施例において、HDD204に記憶(441)したワーク位置情報はロボットアーム100の動作目標位置として用いられる。なお、図10ではトレー503を1つしか図示していないが、例えば多数のトレーやパレットを用意してその上に載置(いわゆるパレタイズ)されたワークを順次取り扱うような動作を制御する場合も考えられる。その場合には、ピッキング動作を何回行ったかによって目標位置が変っていくので、HDD204には複数の目標位置を記録しておき、ピッキング動作の回数に応じて順次、次の目標位置を読み出すようにしても以下の制御を行うことができる。   In this embodiment, the work position information stored (441) in the HDD 204 is used as the operation target position of the robot arm 100. Although only one tray 503 is shown in FIG. 10, for example, a case where a large number of trays and pallets are prepared and an operation of sequentially handling a workpiece placed on the tray (so-called palletizing) is controlled. Conceivable. In this case, since the target position changes depending on how many times the picking operation is performed, a plurality of target positions are recorded in the HDD 204, and the next target position is sequentially read according to the number of picking operations. However, the following control can be performed.

図12は本実施例の制御を実現すべく、制御装置たるCPU201が実行するプログラムの流れを示したフローチャートである。図12に示す各処理ステップは、CPU201がプログラム330(図3)を読み出してプログラム330を実行することにより実現される。   FIG. 12 is a flowchart showing the flow of a program executed by the CPU 201 as a control device in order to realize the control of this embodiment. Each processing step shown in FIG. 12 is realized by the CPU 201 reading the program 330 (FIG. 3) and executing the program 330.

図12のステップS61において、CPU201(図3)は、HDD204に記憶(441)されているワークの位置情報を読み込み、アーム動作の目標位置を特定する。このステップS61は、図5(実施例1)のステップS1〜S3に相当するワーク位置(アーム目標位置)の特定処理である。また、ステップS62では、CPU201は図5のステップS7と同様に、ワークサイズWを読み出し、記憶(403)する。   In step S61 of FIG. 12, the CPU 201 (FIG. 3) reads the position information of the workpiece stored in the HDD 204 (441), and specifies the target position of the arm operation. This step S61 is a work position (arm target position) specifying process corresponding to steps S1 to S3 in FIG. 5 (Example 1). In step S62, the CPU 201 reads out and stores the work size W in the same manner as in step S7 of FIG. 5 (403).

図12のステップS63〜S65は、例えば図5(実施例1)のステップS4、S5、S6と同様である。ただし、本実施例ではアーム目標位置は画像処理に基づき取得したものではなく、上記のようにトレー503の位置などを基準として記憶したものである。   Steps S63 to S65 in FIG. 12 are the same as steps S4, S5, and S6 in FIG. 5 (Example 1), for example. However, in this embodiment, the arm target position is not acquired based on image processing, but is stored based on the position of the tray 503 and the like as described above.

まず、ステップS63において、CPU201は、ステップS61で取得したワークの目標位置に基づき、アーム移動量計算(405、412)を行い、アームの現在位置からの移動量Alを計算する。   First, in step S63, the CPU 201 performs arm movement amount calculation (405, 412) based on the target position of the workpiece acquired in step S61, and calculates the movement amount Al from the current position of the arm.

ステップS64において、CPU201は図5のステップS5と同様に、アーム速度計算(406、413)を行う。ここではフルクローズ制御にて制御した場合のアーム移動速度Avf、セミクローズ制御にて制御した場合のアーム移動速度Avsを計算する。   In step S64, the CPU 201 performs arm speed calculation (406, 413) as in step S5 of FIG. Here, the arm moving speed Avf when controlled by the full-closed control and the arm moving speed Avs when controlled by the semi-closed control are calculated.

ステップS65において、CPU201は、図5のステップS6と同様に、ステップS4で計算された移動量Alに基づき、アーム移動時間計算(407、414)を行う。ここでは、フルクローズ制御でアーム移動を制御した場合のアーム移動時間Atfと、セミクローズ制御でアーム移動を制御した場合のアーム移動時間Atsを計算する。   In step S65, the CPU 201 performs arm movement time calculation (407, 414) based on the movement amount Al calculated in step S4, as in step S6 of FIG. Here, the arm movement time Atf when the arm movement is controlled by the full-closed control and the arm movement time Ats when the arm movement is controlled by the semi-closed control are calculated.

ステップS66において、CPU201は、ステップS61で取得したワーク位置とステップS62で取得したワークサイズWに基づきハンド開量計算(408、415)を行い、それぞれの制御方法において必要なハンド開量を計算する。フルクローズ制御にて制御した場合のハンド開量Hf、セミクローズ制御にて制御した場合のハンド開量Hsを計算する。ここでトレー503に設置した時のワーク位置バラつきを上記のΔX、フルクローズ制御の場合のアーム位置決めバラつきをΔAf、セミクローズの場合のアーム位置決めバラつきをΔAsとする。その場合、フルクローズ制御の場合のハンド開量Hf、およびセミクローズ制御の場合のハンド開量Hsを求める計算式は例えば以下のようになる。
Hf=W+ΔAf+ΔX …(8)
Hs=W+ΔAs+ΔX …(9)
In step S66, the CPU 201 performs hand opening amount calculation (408, 415) based on the workpiece position acquired in step S61 and the workpiece size W acquired in step S62, and calculates the hand opening amount necessary for each control method. . The hand opening amount Hf when controlled by full-closed control and the hand opening amount Hs when controlled by semi-closed control are calculated. Here, it is assumed that the workpiece position variation when installed on the tray 503 is ΔX, the arm positioning variation for full-closed control is ΔAf, and the arm positioning variation for semi-closed is ΔAs. In this case, the calculation formulas for obtaining the hand opening amount Hf in the case of the full-closed control and the hand opening amount Hs in the case of the semi-closed control are as follows, for example.
Hf = W + ΔAf + ΔX (8)
Hs = W + ΔAs + ΔX (9)

図12のステップS67〜S70の処理は、図5(実施例1)のステップS9〜S12、図7(実施例2)のステップS29〜S32、図9(実施例3)のステップS51〜S54と同等である。   The processing in steps S67 to S70 in FIG. 12 includes steps S9 to S12 in FIG. 5 (Example 1), steps S29 to S32 in FIG. 7 (Example 2), and steps S51 to S54 in FIG. 9 (Example 3). It is equivalent.

すなわち、ステップS67ではステップS66で取得したハンド開量からフルおよびセミクローズ制御におけるハンド把持時間Htf、Htsをそれぞれ取得する。そして、ステップS68では、フルクローズ制御のピッキング動作時間Ptf、セミクローズ制御のピッキング動作時間Ptsを計算する。ステップS68ではステップS65で取得したフル、セミクローズ制御のアーム移動時間Atf、アーム移動時間Atsに、ステップS67で取得したフルおよびセミクローズ制御のハンド把持時間Htf、ハンド把持時間Htsをそれぞれ加算する演算を行う。   That is, in step S67, the hand gripping times Htf and Hts in full and semi-closed control are respectively acquired from the hand opening amount acquired in step S66. In step S68, a picking operation time Ptf for full-closed control and a picking operation time Pts for semi-closed control are calculated. In step S68, the full and semi-closed control arm movement time Atf and arm movement time Ats acquired in step S65 are respectively added to the full and semi-closed control hand gripping time Hts and hand gripping time Hts acquired in step S67. I do.

ステップS69では、ステップS68で取得したフルクローズ制御のピッキング動作時間Ptfと、セミクローズ制御のピッキング動作時間Ptsを比較する。そしてアームの制御方式として、フル、セミクローズ制御から短い方のピッキング動作時間を持つ制御方式を選択する。ステップS70では、ステップS69で選択したフルまたはセミクローズ制御のいずれかの制御方式をサーボ制御装置313に指定する。これにより、サーボ制御装置313は指定された制御方式に応じて、以後、サーボモータ1(ないしロボットアーム100各部のサーボモータ)を制御し、ピッキング動作が行われる。   In step S69, the picking operation time Ptsf for full-closed control acquired in step S68 is compared with the picking operation time Pts for semi-closed control. As the arm control method, a control method having a shorter picking operation time is selected from full or semi-closed control. In step S70, either the full or semi-closed control method selected in step S69 is designated to the servo control device 313. As a result, the servo control device 313 subsequently controls the servo motor 1 (or the servo motor of each part of the robot arm 100) according to the designated control method, and the picking operation is performed.

本実施例の基本的な作用効果は実施例1の最後で述べたものと同様である。本実施例ではカメラ310によるワーク撮影、およびその画像処理が必要なく、その分ハードウェアコストを低減できるとともに、ピッキング動作に必要な総所要時間を短縮することができる。本実施例の制御全体の態様は、実施例1からカメラ310によるワーク撮影とその画像処理を除いたものにほぼ相当するため、実施例1よりもさらに高速なピッキング動作を実現することができる。   The basic operational effects of the present embodiment are the same as those described at the end of the first embodiment. In this embodiment, the work shooting by the camera 310 and its image processing are not required, and accordingly, the hardware cost can be reduced and the total time required for the picking operation can be shortened. The overall control aspect of the present embodiment is substantially equivalent to that obtained by removing the work shooting by the camera 310 and its image processing from the first embodiment, so that a picking operation that is faster than the first embodiment can be realized.

また、本実施例によれば、複数の決まった位置にワークがパレタイズされているような状況にも対応できる。すなわち、記憶してあるワーク位置を読み出して利用することにより、例えば1つのピッキング動作ごとに変化していくアーム移動距離に応じて各ピッキング動作の総所要時間を評価することができる。このため、パレタイズ動作などにおいても各ピッキング動作ごとにフルまたはセミクローズ制御のいずれかの制御方式を適切に選択でき、高速なピッキングを実現することができる。   Further, according to the present embodiment, it is possible to cope with a situation in which a workpiece is palletized at a plurality of predetermined positions. That is, by reading out and using the stored work position, it is possible to evaluate the total time required for each picking operation in accordance with, for example, the arm movement distance that changes for each picking operation. For this reason, in the palletizing operation or the like, either the full or semi-closed control method can be appropriately selected for each picking operation, and high-speed picking can be realized.

上記実施例4では、トレー503によってワーク103の位置を固定し、例えばトレー503中心などの基準位置を用いてアームの動作目標位置を特定していた。   In the fourth embodiment, the position of the work 103 is fixed by the tray 503, and the arm operation target position is specified using a reference position such as the center of the tray 503, for example.

本実施例5では、ロボットの作業空間中の所定位置に図13(a)に示すような円錐台状の供給台501を配置する構成を考える。寸法精度のコントロールが厳密に行える構成であれば供給台501は上から下まで同一直径の円筒形状であってもよいが、円錐台状の供給台は、水平面方向の載置位置の誤差を見込む必要はあるがピッキング動作をスムーズに行なえる可能性がある。本実施例ではこのような円錐台状の供給台501を考える。   In the fifth embodiment, a configuration is considered in which a truncated cone-shaped supply base 501 as shown in FIG. 13A is arranged at a predetermined position in the robot work space. The supply base 501 may have a cylindrical shape with the same diameter from the top to the bottom as long as the dimensional accuracy can be controlled strictly. However, the truncated conical supply base allows for an error in the mounting position in the horizontal plane direction. Although necessary, there is a possibility that the picking operation can be performed smoothly. In the present embodiment, such a truncated cone-shaped supply base 501 is considered.

本実施例では、このような供給台501に図13(b)のように環(リング)状のワーク502、502…を積み重ねて載置し、ワーク502を順次上部からピックアップしていくピッキング動作を行う場合の制御を例示する。   In this embodiment, a picking operation in which ring-shaped workpieces 502, 502... Are stacked and placed on such a supply table 501 as shown in FIG. The control in the case of performing is illustrated.

このような構成によりワーク502、502…を供給する場合、積み重ねて設置されている環状のワーク502の位置を予め記憶しておくことができる。これによりハンドで順次ワーク502、502…を順次把持し、取り出すピッキング動作において、ピックアップ動作の回数に応じてアーム移動量とハンド開量を計算することができる。   When the workpieces 502, 502... Are supplied with such a configuration, the positions of the annular workpieces 502 that are installed in a stacked manner can be stored in advance. As a result, in the picking operation for sequentially grasping and taking out the workpieces 502, 502... With the hand, the arm movement amount and the hand opening amount can be calculated according to the number of pick-up operations.

なお、上述の実施例4までの構成では、アーム移動時間の評価では、アーム移動量は主に水平面内のアーム移動量のみを考慮していたが、本実施例のようなワーク供給方式ではアーム移動量は水平面内のみならず、垂直方向に関しても考慮する必要がある。従って、ワーク位置のバラつきを見込んでアーム移動量を定めるのであれば、水平面内のみならず、垂直方向に関するワーク位置のバラつきを考慮する必要がある。   In the configuration up to the fourth embodiment described above, in the arm movement time evaluation, the arm movement amount mainly considers only the arm movement amount in the horizontal plane. However, in the work supply method as in this embodiment, the arm movement amount is considered. The amount of movement must be considered not only in the horizontal plane but also in the vertical direction. Therefore, if the amount of movement of the arm is determined in consideration of the variation in the workpiece position, it is necessary to consider the variation in the workpiece position not only in the horizontal plane but also in the vertical direction.

ここで、図13(a)に示すような円錐台状の供給台501に図13(b)のように環状のワーク502を円錐台状の供給台501に載置する場合を考える。この場合、環状のワーク502は、内寸が全て同じだったとしても円錐台状の供給台501に積み重ねられる度に位置バラつきが発生する。   Here, consider a case where an annular workpiece 502 is placed on a truncated cone-shaped supply base 501 as shown in FIG. 13B on a truncated cone-shaped supply base 501 as shown in FIG. In this case, even if the inner workpieces 502 are all the same in size, a variation in position occurs every time they are stacked on the truncated cone-shaped supply table 501.

従って、本実施例のように円錐台状の供給台501を用いる場合には、ワーク502載置される高さに応じて生じるバラつきを考慮してハンド開量を計算する必要がある。また、ワーク502を順次取り出すピッキング動作を繰り返すと、環状のワーク502を取り出す位置が下がっていくため、アーム移動量の変化も考慮する必要がある。   Therefore, when the truncated cone-shaped supply base 501 is used as in the present embodiment, it is necessary to calculate the opening amount of the hand in consideration of variations that occur according to the height at which the workpiece 502 is placed. Further, when the picking operation for sequentially taking out the workpieces 502 is repeated, the position for taking out the annular workpiece 502 is lowered, so it is necessary to consider the change in the arm movement amount.

なお、本実施例において、装置のハードウェアおよび制御系の構成は上述の実施例1の図1〜図3に示したものと同様である。ただし、制御系の構成では、図3のカメラ310とそのインタフェース201は用いないため除去することが可能である。その他の本実施例に必要な制御系の構成は図3のものと同様でよい。   In this embodiment, the hardware of the apparatus and the configuration of the control system are the same as those shown in FIGS. However, in the configuration of the control system, the camera 310 and its interface 201 in FIG. 3 are not used and can be removed. Other configurations of the control system necessary for this embodiment may be the same as those shown in FIG.

図14は、本実施例5に係るロボット装置の制御系の制御機能ないし制御工程を上述の図4(実施例1)、図6(実施例2)、図8(実施例3)、図11(実施例4)などと同様の形式のブロック表現で示したものである。図14において上述の図4(実施例1)、図6(実施例2)、図8(実施例3)、図11(実施例4)などと同様の構成については、同一符号を付してその詳細な説明は省略するものとする。以下、図11の各ブロック表現で示した制御機能ないし制御工程につき説明する。   FIG. 14 illustrates the control function or control process of the control system of the robot apparatus according to the fifth embodiment described above with reference to FIG. 4 (first embodiment), FIG. 6 (second embodiment), FIG. 8 (third embodiment), and FIG. This is shown in block representation of the same format as in the fourth embodiment. In FIG. 14, the same components as those in FIG. 4 (Embodiment 1), FIG. 6 (Embodiment 2), FIG. 8 (Embodiment 3), FIG. Detailed description thereof will be omitted. Hereinafter, the control function or control process shown by each block representation in FIG. 11 will be described.

本実施例5では、あらかじめHDD204などにワーク位置とワークサイズを記憶(441、403)しておく。このワーク位置とワークサイズは、RAM203などに配置したカウンタなどにより計数されるピッキング動作回数カウント(451)によりインデックスできるよう記憶させておく。   In the fifth embodiment, the work position and work size are stored in advance in the HDD 204 or the like (441, 403). The work position and work size are stored so that they can be indexed by the picking operation count (451) counted by a counter or the like disposed in the RAM 203 or the like.

HDD204などに配置されるメモリ領域にワーク位置を記憶(441)させる場合、例えば図13(b)のように積層配置されたワーク502、502…の位置情報、すなわちアームの動作目標位置を順次記憶させる。この位置情報は高さ(例えば図の上下に沿ったZ軸)方向のアームの移動量を求めるのに用いられる。また、このようなワーク502、502…の位置情報は、例えばティーチングペンダント300などを用いて実際に用いるワーク502、502…の形状、サイズに応じて入力し、HDD204などに配置されるメモリ領域に記憶させることができる。   When the work position is stored (441) in a memory area arranged in the HDD 204 or the like, for example, the position information of the works 502, 502... Stacked as shown in FIG. Let This position information is used to determine the amount of movement of the arm in the direction of height (for example, the Z axis along the top and bottom in the figure). Also, such positional information of the workpieces 502, 502... Is input according to the shape and size of the workpieces 502, 502, etc. that are actually used by using the teaching pendant 300, for example, and stored in a memory area arranged in the HDD 204 or the like. It can be memorized.

このようなピッキング動作では、例えばピックアップの回数を重ねる度にアームの動作目標位置はその都度取り出されたワーク502の厚み分ずつ下方に下る。例えばHDD204などに配置されるメモリ領域には、このような高さ情報としてワーク位置を記憶(441)させ、ピッキング動作回数カウント(451)値に応じて順次取り出せるようにしておく。また、ワーク502、502…が全て同じ厚みであるなどの単純な作業では、ワーク位置の記憶(441)形式は、ワーク単体の高さ(厚み)と積層数を記録しておく、といったフォーマットであってもよい。   In such a picking operation, for example, every time the number of pick-ups is repeated, the target operation position of the arm is lowered by the thickness of the workpiece 502 taken out each time. For example, in a memory area arranged in the HDD 204 or the like, the work position is stored (441) as such height information so that it can be sequentially taken out in accordance with the picking operation count (451) value. Further, in a simple operation where the workpieces 502, 502,... Have the same thickness, the workpiece position storage (441) format is a format in which the height (thickness) of each workpiece and the number of layers are recorded. There may be.

また、供給台501が円錐台のように底部に向けて直径が大きくなる形状の場合、水平面(例えばXY平面)方向に関しては上方に積載されたワークほど位置精度が低くなる。そして、ピッキング動作を重ね、取り出されるワークの位置が下がるに従い、ワークの位置精度が上がっていく。従って、供給台501の形状に応じて、高さ情報に応じた水平面方向のワーク位置のバラつきを水平面(XY平面)方向のアーム移動距離の計算に反映できるよう、HDD204に記憶しておく。この場合には、高さ情報に基づきインデックスした水平面方向のワーク位置のバラつきを読み出すことができる。   Further, when the supply base 501 has a shape that increases in diameter toward the bottom, such as a truncated cone, the position accuracy decreases as the workpiece is loaded upward in the horizontal plane (for example, XY plane) direction. Then, as the position of the work to be taken out decreases as the picking operation is repeated, the position accuracy of the work increases. Therefore, in accordance with the shape of the supply base 501, the variation in the workpiece position in the horizontal plane direction according to the height information is stored in the HDD 204 so that it can be reflected in the calculation of the arm movement distance in the horizontal plane (XY plane) direction. In this case, the variation in the workpiece position in the horizontal plane indexed based on the height information can be read out.

なお、ピッキング動作回数カウント(451)を行うカウンタはピッキング動作の回数をカウントし、その値は回数に応じたワーク位置情報をワーク位置記憶部441から読み込むために用いられる。また、供給台のワーク積み重ね可能数をカウント値の上限として保持し、上限値を超えたら0に戻るように制御することも考えられる。   Note that the counter for counting the number of picking operations (451) counts the number of picking operations, and the value is used for reading work position information corresponding to the number of times from the work position storage unit 441. It is also conceivable to control the number of workpieces that can be stacked on the supply table as the upper limit of the count value and to return to 0 when the upper limit is exceeded.

図15は、は本実施例の制御を実現すべく、制御装置たるCPU201が実行するプログラムの流れを示したフローチャートである。図15に示す各処理ステップは、CPU201がプログラム330(図3)を読み出してプログラム330を実行することにより実現される。なお、図15のフローチャートは、図13のようなワーク供給構造において、n個目のワーク(502)をピックアップする時の体裁で記述してある。   FIG. 15 is a flowchart showing a flow of a program executed by the CPU 201 as a control device in order to realize the control of this embodiment. Each processing step shown in FIG. 15 is realized by the CPU 201 reading the program 330 (FIG. 3) and executing the program 330. The flow chart of FIG. 15 is described in the form when picking up the nth work (502) in the work supply structure as shown in FIG.

図15のステップS71において、CPU201は、ピッキング動作回数カウント(451)を行う。ここでは同機能のためにRAM203などの領域に配置されたカウンタに格納されている現在のピッキング動作回数に1を加算して、以下のピッキング処理の内容がn個目のワークに対するものに適したものとなるよう制御する。ステップS71では、例えば初回なら0回目に1を足して1回目のピッキングであることを示す。ワークの個数などに応じて定まる上限値に到達している場合には、同カウンタをリセットして処理を終了する。なお、ピッキング動作回数カウント(451)に用いるカウンタの初期化や、処理すべきワークの総数などに応じて実行する終了処理については別途不図示のルーチンが用意されているものとする。   In step S71 in FIG. 15, the CPU 201 performs a picking operation count (451). Here, for the same function, 1 is added to the current number of picking operations stored in a counter arranged in an area such as the RAM 203, and the contents of the following picking process are suitable for the nth work. Control to be a thing. In step S71, for example, if it is the first time, 1 is added for the 0th time to indicate the first picking. If the upper limit value determined according to the number of workpieces has been reached, the counter is reset and the process is terminated. It should be noted that a routine (not shown) is prepared separately for initialization of the counter used for the picking operation count (451) and termination processing executed in accordance with the total number of workpieces to be processed.

ステップS72において、CPU201は、HDD204に記憶されているワークの位置情報を読み込む。ここでは、上記ピッキング動作回数カウント(451)の現在の値に基づき、現在のピッキング動作回数に応じたアーム動作の目標位置を特定する。図13(b)のような載置状態においては、水平方向に関しては例えば供給台501の中心などの基準位置をアーム動作目標位置として取得する。また、本実施例では、垂直方向に関してはアーム動作目標位置は、ピッキング動作回数カウント(451)の現在の値、および別途記憶したワーク(502)の厚み情報などを用いて取得することができる。   In step S <b> 72, the CPU 201 reads work position information stored in the HDD 204. Here, based on the current value of the picking motion count (451), the target position of the arm motion corresponding to the current picking motion count is specified. In the mounting state as shown in FIG. 13B, for the horizontal direction, for example, a reference position such as the center of the supply base 501 is acquired as the arm operation target position. In the present embodiment, the arm movement target position in the vertical direction can be acquired using the current value of the picking movement number count (451), the thickness information of the workpiece (502) stored separately, and the like.

ステップS73において、CPU201は、ワークサイズWを取得する。本実施例では、ワークサイズWは記録ディスク331などにあらかじめ記録されているものとし、記録ディスクドライブ205から読み出した値を記憶(403)する。   In step S73, the CPU 201 acquires the work size W. In this embodiment, it is assumed that the work size W is recorded in advance on the recording disk 331, and the value read from the recording disk drive 205 is stored (403).

ステップS74において、CPU201は、アーム移動量計算(405、412)を行ないピッキング動作回数カウント(451)に基づき特定されるn回目のピッキングにおけるアーム移動量Alnを算出する。なお、このアーム移動量Alnは、厳密には水平方向の移動量と垂直方向の移動量の両方を含む複数のベクトル量などによって表現される。図13(b)のような載置状況においては、ワーク502は最上部のものを順次ピッキングして取り出していくため、ピッキング動作回数nが増加するたび移動量Alnのうち垂直方向の移動量の成分は順次増加していく。   In step S74, the CPU 201 performs arm movement amount calculation (405, 412), and calculates an arm movement amount Aln in the n-th picking specified based on the picking operation frequency count (451). Strictly speaking, the arm movement amount Aln is expressed by a plurality of vector amounts including both the horizontal movement amount and the vertical movement amount. In the mounting situation as shown in FIG. 13B, since the workpiece 502 is picked and taken out sequentially, the workpiece 502 has a vertical movement amount of the movement amount Aln as the picking operation number n increases. Ingredients increase sequentially.

ステップS75において、CPU201は、アーム速度計算(406、413)を行う。ここではフルクローズ制御にて制御した場合のアーム移動速度Avf、セミクローズ制御にて制御した場合のアーム移動速度Avsを計算する。   In step S75, the CPU 201 performs arm speed calculation (406, 413). Here, the arm moving speed Avf when controlled by the full-closed control and the arm moving speed Avs when controlled by the semi-closed control are calculated.

ステップS76において、CPU201は、ステップS74で計算されたn回目の移動量Alnに基づき、CPU201がアーム移動時間計算部(407、414)を実行する。ここでは制御方法をフルクローズ制御、セミクローズ制御に切り替え、n回目のそれぞれの制御方法でのアーム移動時間を計算する。ここでは、n回目のフルクローズ制御にて制御におけるアーム移動時間Atfn、n回目のセミクローズ制御におけるアーム移動時間Atsnを計算する。これらアーム移動時間は、ステップS74で求めたアーム移動量AlnをステップS75で求めたアーム移動速度AvfまたはAvsで除することにより取得できる。   In step S76, the CPU 201 executes the arm movement time calculation unit (407, 414) based on the n-th movement amount Aln calculated in step S74. Here, the control method is switched between full-closed control and semi-closed control, and the arm movement time in each of the n-th control methods is calculated. Here, the arm movement time Atfn in the control at the n-th full-closed control and the arm movement time Atsn in the n-th semi-closed control are calculated. These arm movement times can be obtained by dividing the arm movement amount Aln obtained in step S74 by the arm movement speed Avf or Avs obtained in step S75.

ステップS77において、CPU201は、ステップS73で取得したワークサイズWに基づき、ハンド開量計算(408、415)を行う。n回目のフルクローズ制御およびセミクローズ制御におけるそれぞれの制御方法でのハンド開量を計算する。ここでは、n回目のフルクローズ制御にて制御した場合のハンド開量Hfn、n回目のセミクローズ制御にて制御した場合のハンド開量Hsnを計算する。例えば、n回目のワーク位置バラつきΔXn、フルクローズ制御の場合のアーム位置決めバラつきΔAf、セミクローズの場合のアーム位置決めバラつきΔAsとすると、上記ハンド開量Hfnおよびハンド開量Hsnを求める計算式は次のようになる。
Hfn=W+ΔAf+ΔXn …(10)
Hsn=W+ΔAs+ΔXn …(11)
In step S77, the CPU 201 performs hand opening amount calculation (408, 415) based on the work size W acquired in step S73. The amount of hand opening in each control method in the n-th full-closed control and semi-closed control is calculated. Here, the hand opening amount Hfn when controlled by the n-th full-closed control and the hand opening amount Hsn when controlled by the n-th semi-closed control are calculated. For example, assuming that the workpiece position variation ΔXn for the nth time, the arm positioning variation ΔAf in the case of full-closed control, and the arm positioning variation ΔAs in the case of semi-closed, the calculation formulas for calculating the hand opening amount Hfn and the hand opening amount Hsn are as follows: It becomes like this.
Hfn = W + ΔAf + ΔXn (10)
Hsn = W + ΔAs + ΔXn (11)

ステップS78において、CPU201は、ハンド把持時間計算(409、416)を行う。ここでは、ステップS77で取得したハンド開量Hfn、Hsnからn回目のフルクローズ制御のハンド把持時間Htfn、n回目のセミクローズ制御のハンド把持時間Htsnを計算する。   In step S78, the CPU 201 performs hand gripping time calculation (409, 416). Here, the hand gripping time Htfn for the nth full-closed control and the hand gripping time Htsn for the nth semi-closed control are calculated from the hand opening amounts Hfn and Hsn acquired in step S77.

続いてステップS79において、CPU201はピッキング動作時間計算(410、417)を行う。ここでは、n回目のフルクローズ制御のピッキング動作時間Ptfn、n回目のセミクローズ制御のピッキング動作時間Ptsnを計算する。ここで、フルクローズ制御におけるピッキング動作時間PtfnはステップS76で求めたn回目のフルクローズ制御のアーム移動時間AtfnとステップS78で求めたn回目のフルクローズ制御のハンド把持時間Htfnを加算して得る。また、セミクローズ制御におけるピッキング動作時間Ptsnは、ステップS76で求めたn回目のセミクローズ制御のアーム移動時間Atsnと、ステップS78で求めたn回目のセミクローズ制御のハンド把持時間Htsnを加算して得る。計算式は次のようになる。
Ptfn=Atfn+Htfn …(12)
Ptsn=Atsn+Htsn …(13)
Subsequently, in step S79, the CPU 201 performs picking operation time calculation (410, 417). Here, the picking operation time Ptfn for the n-th full-closed control and the picking operation time Ptsn for the n-th semi-closed control are calculated. Here, the picking operation time Ptfn in the full-closed control is obtained by adding the arm movement time Atfn of the n-th full-closed control obtained in step S76 and the hand gripping time Htfn of the n-th full-closed control obtained in step S78. . Further, the picking operation time Ptsn in the semi-closed control is obtained by adding the n-th semi-closed control arm movement time Atsn obtained in step S76 and the n-th semi-closed control hand gripping time Htsn obtained in step S78. obtain. The calculation formula is as follows.
Ptfn = Atfn + Htfn (12)
Ptsn = Atsn + Htsn (13)

ステップS80において、CPU201は制御方法選択(418)を行う。ここでは、ステップS79にて計算されたn回目のフルクローズ制御のピッキング動作時間Ptfnと、n回目のセミクローズ制御のピッキング動作時間Ptsnを比較する。そして、n回目のフルクローズ制御のピッキング動作時間Ptfnの方が短い場合はn回目の制御方法はフルクローズ制御を選択する。逆にn回目のセミクローズ制御のピッキング動作時間Ptsnの方が短い場合、n回目の制御方法はセミクローズ制御を選択する。   In step S80, the CPU 201 performs control method selection (418). Here, the nth full-closed control picking operation time Ptfn calculated in step S79 is compared with the nth semi-closed control picking operation time Ptsn. When the picking operation time Ptfn of the n-th full-closed control is shorter, the n-th control method selects the full-closed control. Conversely, when the picking operation time Ptsn of the n-th semi-closed control is shorter, the n-th control method selects the semi-closed control.

ステップS81では、ステップS80で選択したフルまたはセミクローズ制御のいずれかの制御方式をサーボ制御装置313に指定する。これにより、サーボ制御装置313は指定された制御方式に応じて、以後、サーボモータ1(ないしロボットアーム100各部のサーボモータ)を制御し、ピッキング動作が行われる。   In step S81, the control system of either full or semi-closed control selected in step S80 is designated to the servo controller 313. As a result, the servo control device 313 subsequently controls the servo motor 1 (or the servo motor of each part of the robot arm 100) according to the designated control method, and the picking operation is performed.

本実施例の基本的な作用効果は実施例1の最後で述べたものと同様である。さらに、本実施例は、複数回のピッキング動作を行い、例えば図13に示したようなワーク供給方式によって、ワーク位置やハンド開量がピッキングごとに変化するような制御にも対応できる。本実施例では、毎回のピッキング動作ごとに変動しうるピッキング動作の総所要時間をそれぞれ評価して、所要時間短縮に有利なフルクローズ制御態様、またはセミクローズ制御態様をアーム移動制御態様として選択することができる。従って、本実施例によれば、例えば図13(b)のように複数、積層配置されたワークを順次ピッキングする動作においても、各々のピッキング動作で所要時間短縮に有利なフルまたはセミクローズ制御方式のいずれかを選択することができる。   The basic operational effects of the present embodiment are the same as those described at the end of the first embodiment. Furthermore, this embodiment can cope with control in which the picking operation is performed a plurality of times and the work position and the amount of opening of the hand are changed for each picking by a work supply system as shown in FIG. In the present embodiment, the total required time of the picking operation that can vary for each picking operation is evaluated, and the full-closed control mode or the semi-closed control mode that is advantageous for reducing the required time is selected as the arm movement control mode. be able to. Therefore, according to the present embodiment, for example, as shown in FIG. 13B, even in an operation of sequentially picking a plurality of stacked workpieces, a full or semi-closed control method that is advantageous in reducing the time required for each picking operation. You can choose either.

以上5つの実施例を示したが、いずれの実施例においても、アーム移動の制御態様として、フルクローズ制御とセミクローズ制御の二つの制御モードを選択することを考えた。すなわち、フルクローズ制御またはセミクローズ制御から、ピッキング動作の処理時間が短くて済む方のアーム移動制御態様を選択する。その場合、動作前に、フルクローズ制御とセミクローズ制御のそれぞれについて求めたアーム移動時間とハンド把持時間を加算してピッキング動作の所要時間を取得する。そして、アーム制御態様としてフルクローズ制御またはセミクローズ制御のいずれか所要時間が短いほうの制御方式を選択する。   Although the five embodiments have been described above, in any of the embodiments, it was considered to select two control modes of full-closed control and semi-closed control as the arm movement control mode. That is, the arm movement control mode that requires shorter processing time for the picking operation is selected from full-closed control or semi-closed control. In this case, the required time for the picking operation is acquired by adding the arm movement time and the hand gripping time obtained for each of the full-closed control and the semi-closed control before the operation. Then, as the arm control mode, either the full-closed control or the semi-closed control is selected which has a shorter required time.

上記各実施例は、いずれも、ハンドの把持制御が開始される時点までのアームの制御態様として、フルクローズ制御、セミクローズ制御のいずれを用いたかによってそれぞれハンドの制御条件が異ったものになる、との知見に基づいている。   In each of the above embodiments, the hand control conditions differ depending on whether the full-closed control or the semi-closed control is used as the arm control mode up to the point when the hand grip control is started. It is based on the knowledge that it becomes.

例えば、アーム移動をセミクローズ制御で行った場合には、把持開始前に、フルクローズ制御でアームを移動した場合よりも大きなハンド開量が必要になる可能性がある。そして、例えば、アーム移動量が小さく、そのための制御時間がごく短かいようなケースでは、アーム移動をフルクローズ制御により行ない、これによってハンド開量を小さく取って結局、ピッキングの総所要時間を短縮できる可能性がある。   For example, when the arm movement is performed by the semi-closed control, there is a possibility that a larger hand opening amount is required before starting the gripping than when the arm is moved by the full-closed control. For example, in a case where the amount of arm movement is small and the control time for it is very short, the arm movement is performed by full-closed control, thereby reducing the hand opening amount and eventually reducing the total time required for picking. there is a possibility.

上記各実施例において、上述のようにして要求されるピッキング動作の態様に応じ、アーム移動の制御態様として、フルクローズ制御とセミクローズ制御のいずれかを選択することにより、ピッキングの総所要時間を短縮することができる。   In each of the embodiments described above, the total time required for picking can be reduced by selecting either full-closed control or semi-closed control as the arm movement control mode according to the mode of picking operation required as described above. It can be shortened.

なお、以上では、要求されるピッキング動作の態様に応じて、アーム移動の制御態様として、フルクローズ制御とセミクローズ制御のいずれかを選択することを考えた。しかしながら、サーボモータ制御においては、フルおよびセミクローズ制御の他に、いわゆるハイブリッド制御などと呼ばれるフルおよびセミクローズ制御を組合せた制御が知られている。例えば、アーム移動中はセミクローズ制御で制御し、アーム移動停止近傍でフルクローズ制御に切替えるような制御がハイブリッド制御と呼ばれることがある。また、減速機の入力および出力側の両方のエンコーダの出力を適当な態様で組み合わせてサーボ制御を行なう方式もハイブリッド制御、などと呼ばれる場合がある。従って、上述のフルクローズ制御とセミクローズ制御のみならず、サーボモータを制御する任意のモータ制御方式をアーム移動の制御態様の選択対象とすることができる。   In the above description, it has been considered to select either full-closed control or semi-closed control as the arm movement control mode according to the required picking mode. However, in servo motor control, in addition to full and semi-closed control, control that combines full and semi-closed control called so-called hybrid control is known. For example, control that is controlled by semi-closed control during arm movement and switched to full-closed control in the vicinity of arm movement stop may be called hybrid control. Also, a system that performs servo control by combining the input of the reducer and the output of the encoder on the output side in an appropriate manner may be called hybrid control. Therefore, not only the above-mentioned full-closed control and semi-closed control, but also an arbitrary motor control method for controlling the servomotor can be selected as a control mode for arm movement.

また、ハンドの把持制御、例えばハンド爪などの位置姿勢制御に用いる制御方式については、上記各実施例では実施例3において把持速度の「条件」を選択する点について述べただけで、例えばハンド爪のサーボ制御などの「方式」については考慮していない。   In addition, regarding the control method used for hand grip control, for example, the position and orientation control of a hand nail or the like, in each of the above embodiments, only the point of selecting the “condition” of the grip speed in the third embodiment is described. The “method” such as servo control is not considered.

例えば、ハンドの駆動機構に図2の構成に類似したサーボ制御機構が用いられているのであれば、ハンドの把持制御でもフルクローズ制御とセミクローズ制御の切り換えを行える可能性がある。このような構成においては、上述の実施例と同様の手法でハンドの把持制御でもフルクローズ制御またはセミクローズ制御のいずれかのサーボ制御態様を選択することが考えられる。その場合、フルクローズ制御、セミクローズ制御ごとのハンドの把持時間計算においては、当然ながら両者の制御方式における計算式を用いればよい。   For example, if a servo control mechanism similar to the configuration of FIG. 2 is used for the hand drive mechanism, there is a possibility that switching between full-closed control and semi-closed control can be performed even with hand grip control. In such a configuration, it is conceivable to select a servo control mode of either full-closed control or semi-closed control in hand grip control in the same manner as in the above-described embodiment. In that case, in the calculation of the gripping time of the hand for each of the full-closed control and the semi-closed control, naturally, the calculation formulas for both control methods may be used.

また、アームの移動制御方式およびハンドの把持制御方式としてフルクローズ制御、セミクローズ制御を選択可能である場合には、アームとハンドで独立して両者の制御方式におけるアーム移動時間およびハンド把持時間を評価する手法が考えられる。この場合には、フルおよびセミクローズ制御をアームとハンドで独立して選択することになる。しかしながら、この場合でもハンド開量などの把持制御条件がアーム移動の態様に依存して定まる点は同じであるから、上記各実施例と同様、ハンド開量などの条件はアーム移動制御に従属して決定すればよい。   If full-closed control or semi-closed control can be selected as the arm movement control method and hand grip control method, the arm movement time and hand grip time in both control methods can be set independently. An evaluation method can be considered. In this case, full and semi-closed control is selected independently by the arm and the hand. However, even in this case, since the grip control conditions such as the hand opening amount are determined depending on the mode of arm movement, the conditions such as the hand opening amount depend on the arm movement control as in the above embodiments. To decide.

あるいは、上述の実施例と同様にアーム移動の制御方式として、フルないしセミクローズ制御を選択する制御を主とし、ハンドの把持制御方式はアーム移動の制御方式として選択したフルないしセミクローズ制御を選択するような制御も考えられる。   Alternatively, as in the above-described embodiment, the main movement control method is to select full or semi-closed control, and the hand holding control method is selected to be the full or semi-closed control selected as the arm movement control method. Such control is also conceivable.

また、ハンド把持の制御条件に関しては、実施例3で例示したハンド把持速度制御の他にハンド開閉用モータの電流値をフィードバックする電流制御モードなどをハンド把持の制御条件に含めてもよい。   Regarding the hand grip control conditions, in addition to the hand grip speed control exemplified in the third embodiment, a current control mode for feeding back the current value of the hand opening / closing motor may be included in the hand grip control conditions.

1…サーボモータ(回転モータ)、2…回転軸、10、16…エンコーダ、11…減速機、100A…ロボット本体、111〜116…関節、201…CPU(制御部)、330…プログラム、500…ロボット装置 DESCRIPTION OF SYMBOLS 1 ... Servo motor (rotary motor), 2 ... Rotating shaft 10, 16 ... Encoder, 11 ... Reducer, 100A ... Robot main body, 111-116 ... Joint, 201 ... CPU (control part), 330 ... Program, 500 ... Robot device

Claims (11)

対象物を把持するハンドと、前記ハンドを支持して移動するアームと、複数のアーム移動制御態様から選択した1のアーム移動制御態様によって前記アームの動作を制御する制御装置と、を有するロボットシステムの制御方法において、
前記制御装置が、前記ハンドにより把持される対象物の少なくとも位置およびサイズに係わる情報を認識する対象物認識工程と、
前記制御装置が、前記対象物認識工程で認識された前記対象物の位置まで前記ハンドを移動させるのに必要な前記アームの移動時間を前記複数のアーム移動制御態様ごとに取得するアーム移動時間計算工程と、
前記制御装置が、前記対象物認識工程で認識された前記対象物のサイズに基づき取得した前記対象物の把持に必要な前記ハンドの開量に基づき、前記ハンドにより前記対象物を把持する動作におけるハンド把持時間を前記複数のアーム移動制御態様ごとに取得するハンド把持時間計算工程と、
前記制御装置が、前記アーム移動時間計算工程および前記ハンド把持時間計算工程により前記複数のアーム移動制御態様ごとに取得した前記アームの移動時間および前記ハンド把持時間から、前記アームで前記ハンドを前記対象物の位置まで移動させ前記ハンドにより前記対象物を把持させるピッキング動作に必要なピッキング動作時間を前記複数のアーム移動制御態様ごとに取得するピッキング動作時間計算工程と、を備え、
前記制御装置は、前記アームの動作を制御するアーム移動制御態様として、前記複数のアーム移動制御態様から、前記ピッキング動作時間計算工程で前記複数のアーム移動制御態様ごとに取得したピッキング動作時間が短いアーム移動制御態様を選択することを特徴とするロボットシステムの制御方法。
A robot system comprising: a hand that grips an object; an arm that supports and moves the hand; and a control device that controls the operation of the arm according to one arm movement control mode selected from a plurality of arm movement control modes. In the control method of
An object recognition step in which the control device recognizes information related to at least a position and a size of an object held by the hand;
Arm movement time calculation for acquiring, for each of the plurality of arm movement control modes, the movement time of the arm necessary for the control device to move the hand to the position of the object recognized in the object recognition step. Process,
In the operation in which the control device grips the object by the hand based on the opening amount of the hand necessary for gripping the object acquired based on the size of the object recognized in the object recognition step. A hand gripping time calculating step of acquiring a hand gripping time for each of the plurality of arm movement control modes;
From the arm movement time and the hand gripping time acquired by the control device for each of the plurality of arm movement control modes by the arm movement time calculation step and the hand gripping time calculation step, the arm is used to target the hand. A picking operation time calculation step for obtaining a picking operation time required for a picking operation for moving to the position of an object and gripping the object by the hand for each of the plurality of arm movement control modes, and
The control device has a short picking operation time acquired for each of the plurality of arm movement control modes in the picking operation time calculation step from the plurality of arm movement control modes as an arm movement control mode for controlling the operation of the arm. A control method of a robot system, wherein an arm movement control mode is selected.
請求項1に記載のロボットシステムの制御方法において、前記ロボットシステムは、前記アームを減速機を介して駆動するモータと、前記減速機の入力側の駆動量を検出する第1のエンコーダと、前記減速機の出力側の駆動量を検出する第2のエンコーダと、を有し、前記複数のアーム移動制御態様は前記第1のエンコーダの出力に基づき前記アームが制御される第1のアーム移動制御態様と、前記第2のエンコーダの出力に基づき前記アームが制御される第2のアーム移動制御態様を含み、前記制御装置は、前記1または第2のアーム移動制御態様のうち、前記ピッキング動作時間計算工程において取得したピッキング動作時間が短い方を前記アーム移動制御態様として選択することを特徴とするロボットシステムの制御方法。   The robot system control method according to claim 1, wherein the robot system includes a motor that drives the arm via a speed reducer, a first encoder that detects a drive amount on the input side of the speed reducer, A second encoder that detects a drive amount on the output side of the speed reducer, and the plurality of arm movement control modes include a first arm movement control in which the arm is controlled based on an output of the first encoder. And a second arm movement control mode in which the arm is controlled based on an output of the second encoder, and the control device includes the picking operation time in the first or second arm movement control mode. A control method for a robot system, characterized in that a shorter picking operation time acquired in a calculation step is selected as the arm movement control mode. 請求項1に記載のロボットシステムの制御方法において、前記対象物認識工程は、前記対象物を撮影して得た画像に対する画像処理の結果に基づき前記対象物の位置を認識することを特徴とするロボットシステムの制御方法。   2. The robot system control method according to claim 1, wherein the object recognition step recognizes a position of the object based on a result of image processing on an image obtained by photographing the object. Robot system control method. 請求項1に記載のロボットシステムの制御方法において、前記対象物認識工程は、予め記憶した前記対象物の位置情報に基づき前記対象物の位置を特定することを特徴とするロボットシステムの制御方法。   The robot system control method according to claim 1, wherein the object recognition step specifies a position of the object based on position information of the object stored in advance. 請求項1に記載のロボットシステムの制御方法において、前記対象物認識工程は、前記対象物を撮影して得た画像に対する画像処理の結果に基づき前記対象物のサイズを認識することを特徴とするロボットシステムの制御方法。   The control method of the robot system according to claim 1, wherein the object recognition step recognizes a size of the object based on a result of image processing on an image obtained by photographing the object. Robot system control method. 請求項1に記載のロボットシステムの制御方法において、前記対象物認識工程は、予め記憶した前記対象物のサイズに基づき前記対象物のサイズを特定することを特徴とするロボットシステムの制御方法。   2. The robot system control method according to claim 1, wherein the object recognition step specifies the size of the object based on the size of the object stored in advance. 3. 請求項4に記載のロボットシステムの制御方法において、前記対象物認識工程は、予め記憶した前記対象物の複数の異なる位置情報に基づき複数の異なる位置にある前記対象物の位置を特定することを特徴とするロボットシステムの制御方法。   5. The robot system control method according to claim 4, wherein the object recognition step specifies positions of the object at a plurality of different positions based on a plurality of different position information of the object stored in advance. A method for controlling a robot system. 請求項1に記載のロボットシステムの制御方法において、前記ハンド把持時間計算工程は前記対象物を撮影して得た画像に対する画像処理の結果に基づき特定された前記対象物の種類に応じて得られたハンド把持速度に基づき前記対象物を把持する動作におけるハンド把持時間を取得することを特徴とするロボットシステムの制御方法。   2. The robot system control method according to claim 1, wherein the hand holding time calculation step is obtained according to a type of the object specified based on a result of image processing on an image obtained by photographing the object. A method of controlling a robot system, comprising: obtaining a hand gripping time in an operation of gripping the object based on a hand gripping speed. 請求項1から8のいずれか1項に記載のロボットシステムの制御方法の各工程を前記制御装置に実行させるためのロボットシステムのプログラム。   A program for a robot system for causing the control device to execute each step of the control method for the robot system according to any one of claims 1 to 8. 請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   A computer-readable recording medium on which the program according to claim 9 is recorded. 対象物を把持するハンドと、前記ハンドを支持して移動するアームと、複数のアーム移動制御態様から選択した1のアーム移動制御態様によって前記アームの動作を制御する制御装置と、を有するロボットシステムにおいて、
前記制御装置は、
前記ハンドにより把持される対象物の少なくとも位置およびサイズに係わる情報を認識し、
認識した前記対象物の位置まで前記ハンドを移動させるのに必要な前記アームの移動時間を前記複数のアーム移動制御態様ごとに取得し、
認識した前記対象物のサイズに基づき取得した前記対象物の把持に必要な前記ハンドの開量に基づき、前記ハンドにより前記対象物を把持する動作におけるハンド把持時間を前記複数のアーム移動制御態様ごとに取得し、
前記複数のアーム移動制御態様ごとに取得した前記アームの移動時間および前記ハンド把持時間から、前記アームで前記ハンドを前記対象物の位置まで移動させ前記ハンドにより前記対象物を把持させるピッキング動作に必要なピッキング動作時間を前記複数のアーム移動制御態様ごとに取得し、
前記アームの動作を制御するアーム移動制御態様として、前記複数のアーム移動制御態様から、前記複数のアーム移動制御態様ごとに取得したピッキング動作時間が短いアーム移動制御態様を選択することを特徴とするロボットシステム。
A robot system comprising: a hand that grips an object; an arm that supports and moves the hand; and a control device that controls the operation of the arm according to one arm movement control mode selected from a plurality of arm movement control modes. In
The controller is
Recognizing at least information on the position and size of the object gripped by the hand,
Obtaining a movement time of the arm necessary for moving the hand to the position of the recognized object for each of the plurality of arm movement control modes;
Based on the opening amount of the hand necessary for gripping the target object acquired based on the recognized size of the target object, a hand gripping time in an operation of gripping the target object by the hand is determined for each of the plurality of arm movement control modes. Get into
Necessary for picking operation in which the arm is moved to the position of the object by the arm and the object is grasped by the hand from the movement time of the arm and the hand grasping time acquired for each of the plurality of arm movement control modes. A long picking operation time for each of the plurality of arm movement control modes,
As an arm movement control mode for controlling the operation of the arm, an arm movement control mode having a short picking operation time acquired for each of the plurality of arm movement control modes is selected from the plurality of arm movement control modes. Robot system.
JP2014057838A 2014-03-20 2014-03-20 Control method of robot system and robot system Pending JP2015182145A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014057838A JP2015182145A (en) 2014-03-20 2014-03-20 Control method of robot system and robot system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014057838A JP2015182145A (en) 2014-03-20 2014-03-20 Control method of robot system and robot system

Publications (1)

Publication Number Publication Date
JP2015182145A true JP2015182145A (en) 2015-10-22

Family

ID=54349302

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014057838A Pending JP2015182145A (en) 2014-03-20 2014-03-20 Control method of robot system and robot system

Country Status (1)

Country Link
JP (1) JP2015182145A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109835706A (en) * 2017-11-24 2019-06-04 发那科株式会社 Work piece configuration system
EP3778895A1 (en) 2015-09-15 2021-02-17 Nippon Shinyaku Co., Ltd. Antisense nucleic acid
JP7237249B1 (en) * 2022-02-25 2023-03-10 三菱電機株式会社 ROBOT CONTROL DEVICE, ROBOT CONTROL METHOD AND ROBOT CONTROL PROGRAM

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3778895A1 (en) 2015-09-15 2021-02-17 Nippon Shinyaku Co., Ltd. Antisense nucleic acid
CN109835706A (en) * 2017-11-24 2019-06-04 发那科株式会社 Work piece configuration system
JP2019093495A (en) * 2017-11-24 2019-06-20 ファナック株式会社 Workpiece arrangement system with workpiece arranged in storage region or on jig
US10722992B2 (en) 2017-11-24 2020-07-28 Fanuc Corporation Workpiece placement system for placing workpiece in containment area or on jig
CN109835706B (en) * 2017-11-24 2020-11-20 发那科株式会社 Workpiece configuration system
JP7237249B1 (en) * 2022-02-25 2023-03-10 三菱電機株式会社 ROBOT CONTROL DEVICE, ROBOT CONTROL METHOD AND ROBOT CONTROL PROGRAM
WO2023162124A1 (en) * 2022-02-25 2023-08-31 三菱電機株式会社 Robot control device, robot control method, and robot control program

Similar Documents

Publication Publication Date Title
US10486309B2 (en) Robot controlling method, robot apparatus, program, recording medium, and method for manufacturing assembly component
US11090807B2 (en) Motion generation method, motion generation device, system, and computer program
US9298179B2 (en) Robot and robot controller
JP6717768B2 (en) Robot for learning control considering operation in production line and control method thereof
WO2012140770A1 (en) Robot control apparatus
CN109626002A (en) Automatic stacking machine people and its control method
CN104827473A (en) Method for programming industrial robot and associated industrial robot
CN102632506A (en) Position detection device for robot, robotic system, and position detection method for robot
JP2016083713A (en) Robot control method, robot device, program, recording medium and assembly part manufacturing method
JP6661027B2 (en) Work robot
JP2015182145A (en) Control method of robot system and robot system
US11597083B2 (en) Robot apparatus, robot system, control method of robot apparatus, product manufacturing method using robot apparatus, and storage medium
JP6862604B2 (en) Inertia parameter identification system and inertial parameter identification method for vertical articulated robots, and control device and control method for vertical articulated robots
JP2017056525A (en) Robot device robot control method, program, recording medium, and method of manufacturing assembling component
JP2018069381A (en) Control method for gripping device, gripping device, robot device and manufacturing method of component
JP2016040067A (en) Robot device, method for controlling robot, program and recording medium
CN209583061U (en) Automatic stacking machine people
CN117083157A (en) Method for controlling displacement of robot
JP2020097101A (en) Robot device, robot system, robot device control method, method of manufacturing article using robot device, control program, and recording medium
JP5633268B2 (en) Robot control device
JP2020097085A (en) Robot device inspection method, program, recording medium, robot system, and article manufacturing method
JP7447568B2 (en) Simulation equipment and programs
JP7327991B2 (en) Control method, control program, recording medium, robot system, article manufacturing method, and input device
CN107972029A (en) Mechanical arm instructs control system
WO2023142724A1 (en) Robotic arm, control method and apparatus for same, robot and storage medium