JP2019214112A - Machine learning device, and robot system equipped with the same - Google Patents
Machine learning device, and robot system equipped with the same Download PDFInfo
- Publication number
- JP2019214112A JP2019214112A JP2018113672A JP2018113672A JP2019214112A JP 2019214112 A JP2019214112 A JP 2019214112A JP 2018113672 A JP2018113672 A JP 2018113672A JP 2018113672 A JP2018113672 A JP 2018113672A JP 2019214112 A JP2019214112 A JP 2019214112A
- Authority
- JP
- Japan
- Prior art keywords
- work
- robot
- unit
- state
- holdable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は、バラ積みされた状態のワークを取り出すロボットの動作を学習する機械学習装置、及びこの機械学習装置を備えたロボットシステムに関する。 The present invention relates to a machine learning device that learns an operation of a robot that takes out a work in a piled state, and a robot system including the machine learning device.
複数のワークをバラ積みされた状態で収容する容器からワークを取り出すシステムとして、ハンド部を備えたロボットによってワークを取り出すロボットシステムが知られている(特許文献1参照)。特許文献1に開示されるロボットシステムは、ロボットの取り出し動作を学習する機械学習装置を備えている。機械学習装置は、三次元計測器により計測されたワークの三次元マップに対応したロボットの動作と、ワークの取り出しの成否の判定結果とを関連付けた教師データに基づいて、容器からワークを取り出す際のロボットの動作を学習している。
2. Description of the Related Art As a system for taking out a work from a container accommodating a plurality of works in a stacked state, a robot system for taking out a work by a robot having a hand unit is known (see Patent Document 1). The robot system disclosed in
容器からのワークの取り出し動作が繰り返されると、ハンド部による次の保持候補となるワークに対するハンド部の保持が不可能となる場合がある。例えば、容器の内面に近接した状態でワークが配置されている場合や、複数のワーク同士が互いに近接した状態で配置されている場合には、ハンド部による保持を可能とするための保持スペースが確保されていない状況となり、このような状況のワークはハンド部による保持が不可能となる。 When the operation of taking out the work from the container is repeated, the hand unit may not be able to hold the hand unit with respect to the next candidate work. For example, when the work is arranged in a state close to the inner surface of the container, or when a plurality of works are arranged in a state close to each other, a holding space for enabling the holding by the hand unit is provided. The work is not secured, and the work in such a situation cannot be held by the hand unit.
保持スペースが確保されていないワークをハンド部によって保持可能とするための技術が、例えば特許文献2に開示されている。特許文献2に開示される技術では、容器内のワークをハンド部によって掻き乱す。しかしながら、容器内のワークをハンド部によって無作為に掻き乱すので、保持スペースが十分に確保されずにハンド部による保持が可能となるには至らない場合がある。
For example,
本発明は、このような事情に鑑みてなされたものであり、その目的とするところは、保持スペースが確保されずにハンド部による保持が不可能とされたワークの保持を可能とするロボットの動作を学習できる機械学習装置、及びこれを備えたロボットシステムを提供することにある。 The present invention has been made in view of such circumstances, and an object of the present invention is to provide a robot capable of holding a workpiece that cannot be held by a hand unit without holding space. An object of the present invention is to provide a machine learning device capable of learning an operation and a robot system including the same.
本発明の一の局面に係る機械学習装置は、複数のワークをバラ積みされた状態で収容する容器から前記ワークを保持することによって取り出すハンド部を備えたロボットの動作を学習する装置である。この機械学習装置は、前記ハンド部が前記容器内の一のワークを保持する前又は保持したときに、前記容器内での各ワークの収容状況を認識し、前記ハンド部による次の保持候補となるワークが、前記ハンド部による保持を可能とするための保持スペースが周囲に確保されていない保持不可ワークであるかを判定する判定部と、前記保持スペースが確保されるように前記保持不可ワークを変位させることが可能な変位手法を学習するとともに、当該変位手法を用いた前記ロボットの行動パターンを学習する学習部と、前記学習部の学習結果に基づく前記ロボットの行動パターンを、前記保持不可ワークを前記ハンド部によって保持可能とするための行動パターンとして決定する行動決定部と、を備える。 A machine learning device according to one aspect of the present invention is a device for learning an operation of a robot including a hand unit that removes a plurality of works by holding the works from a container that accommodates the works in a stacked state. This machine learning device, before or when the hand unit holds one work in the container, recognizes the accommodation state of each work in the container, and the next holding candidate by the hand unit A determination unit that determines whether a work to be held is a non-holdable work in which a holding space for enabling the holding by the hand unit is not secured around, and the non-holdable work so that the holding space is ensured. A learning unit that learns a displacement method capable of displacing the robot, and learns an action pattern of the robot using the displacement method; and an action pattern of the robot that is based on a learning result of the learning unit. And an action determining unit that determines the work as an action pattern for enabling the work to be held by the hand unit.
この機械学習装置によれば、ハンド部による次の保持候補となるワークが保持不可ワークであることが判定部によって判定された場合、学習部は、保持スペースが確保されるように保持不可ワークを変位させることが可能な変位手法を学習し、当該変位手法を用いたロボットの行動パターンを学習する。これにより、学習部は、ハンド部による保持が不可能とされたワークの保持を可能とする、所定の変位手法を用いたロボットの行動パターンを学習することができる。そして、行動決定部は、学習部の学習結果に基づくロボットの行動パターンを、保持不可ワークをハンド部によって保持可能とするための行動パターンとして決定する。この行動パターンに従ってロボットが動作することにより、ハンド部による保持が不可能とされたワークの周囲に、ハンド部による保持を可能とするための保持スペースが確保され、当該ワークのハンド部による保持が可能となる。このため、保持不可ワークの存在に起因してロボットの動作を停止させることを可及的に回避することができ、ハンド部による容器からのワークの取り出し動作を継続させることができる。 According to this machine learning device, when the determination unit determines that the work to be held next by the hand unit is a work that cannot be held, the learning unit determines the work that cannot be held so that a holding space is secured. A displacement method that can be displaced is learned, and a behavior pattern of the robot using the displacement method is learned. Thus, the learning unit can learn the behavior pattern of the robot using a predetermined displacement method that enables the holding of the work that cannot be held by the hand unit. Then, the action determining unit determines an action pattern of the robot based on a learning result of the learning unit as an action pattern for enabling the hand unit to hold the work that cannot be held. When the robot operates in accordance with this behavior pattern, a holding space for enabling the holding by the hand unit is secured around the work that cannot be held by the hand unit. It becomes possible. Therefore, it is possible to avoid stopping the operation of the robot due to the existence of the non-holdable work as much as possible, and it is possible to continue the operation of taking out the work from the container by the hand unit.
上記の機械学習装置において、前記変位手法は、前記保持不可ワークを変位させる方式が異なる複数の手法を含み、前記学習部は、前記複数の手法が組み合わされた前記ロボットの行動パターンを学習する構成であってもよい。 In the machine learning device described above, the displacement method includes a plurality of methods different in a method of displacing the non-holdable work, and the learning unit learns an action pattern of the robot in which the plurality of methods are combined. It may be.
また、上記の機械学習装置において、前記変位手法は、前記ハンド部が、保持した前記一のワークを前記保持不可ワークに当接させた状態で移動することにより、当該保持不可ワークを変位させる手法であり、前記学習部が学習する前記ロボットの行動パターンを規定する行動要素には、前記一のワークの前記保持不可ワークに対する当接位置を決定付ける要素と、前記ハンド部の移動軌跡を決定付ける要素とが含まれる構成であってもよい。 Further, in the machine learning device described above, the displacement method is a method of displacing the non-retainable work by moving the hand unit in a state where the held one work is in contact with the non-retainable work. The behavior element that defines the behavior pattern of the robot that the learning unit learns is an element that determines a contact position of the one work with the non-holdable work and a movement trajectory of the hand unit. A configuration including elements may be included.
また、上記の機械学習装置において、前記変位手法は、前記ハンド部が前記容器を保持した状態で移動することにより、前記保持不可ワークを変位させる手法であり、前記学習部が学習する前記ロボットの行動パターンを規定する行動要素には、前記ハンド部が前記容器を保持する保持位置を決定付ける要素と、前記ハンド部の移動軌跡を決定付ける要素と、前記ハンド部の移動速度を決定付ける要素とが含まれる構成であってもよい。 In the machine learning device described above, the displacement method is a method of displacing the work that cannot be held by moving the hand unit while holding the container, and the learning unit learns the robot. The action element that defines the action pattern includes an element that determines a holding position where the hand unit holds the container, an element that determines a movement locus of the hand unit, and an element that determines a moving speed of the hand unit. May be included.
本発明の他の局面に係るロボットシステムは、複数のワークをバラ積みされた状態で収容する容器から前記ワークを保持することによって取り出すハンド部を備えたロボットと、前記ロボットの動作を学習する、上記の機械学習装置と、前記機械学習装置の学習結果に基づいて、前記ロボットの動作を制御する制御装置と、を備える。 A robot system according to another aspect of the present invention includes a robot having a hand unit that removes a plurality of works by holding the works from a container that accommodates the works in a bulk state, and learns the operation of the robot. The apparatus includes the machine learning device described above, and a control device that controls an operation of the robot based on a learning result of the machine learning device.
このロボットシステムによれば、ハンド部による保持が不可能とされたワークの保持を可能とするロボットの行動パターンを学習できる上記の機械学習装置を備えている。このため、ロボットは、保持不可ワークの存在に起因して停止されることが可及的に回避され、ハンド部による容器からのワークの取り出し動作を継続することができる。 According to this robot system, there is provided the above-mentioned machine learning device capable of learning an action pattern of a robot which enables the holding of a workpiece which cannot be held by the hand unit. Therefore, the robot can be prevented from being stopped due to the existence of the non-holdable work as much as possible, and can continue the operation of removing the work from the container by the hand unit.
以上説明したように、本発明によれば、保持スペースが確保されずにハンド部による保持が不可能とされたワークの保持を可能とするロボットの動作を学習できる機械学習装置、及びこれを備えたロボットシステムを提供することができる。 As described above, according to the present invention, there is provided a machine learning device capable of learning an operation of a robot capable of holding a work that cannot be held by a hand unit because a holding space is not secured, and a machine learning device including the machine learning device. Robot system can be provided.
[ロボットシステムの全体構成]
図1は、本発明の一実施形態に係るロボットシステム1の構成を示すブロック図である。ロボットシステム1は、ロボット2と、撮像装置3と、制御装置4と、機械学習装置5とを備える。ロボットシステム1においては、撮像装置3から出力される画像データに基づき機械学習装置5がロボット2の動作を学習し、その学習結果に基づき制御装置4がロボット2の動作を制御する。
[Entire configuration of robot system]
FIG. 1 is a block diagram showing a configuration of a
まず、図2を参照しながらロボット2について説明する。図2は、ロボットシステム1に備えられるロボット2の一例を示す図である。ロボット2は、複数のワークWをバラ積みされた状態で収容する容器CNから、当該ワークWを取り出すためのロボットである。容器CNは、上方側が開口した有底筒状に形成されている。ロボット2は、容器CNの上方側の開口を介してワークWを取り出す。
First, the
ロボット2は、容器CNからワークWを取り出すことが可能なハンド部を備えたロボットであれば特に限定されるものではなく、例えば、垂直多関節ロボットや水平多関節ロボット、或いは双腕型の多関節ロボットを採用することができる。以下では、図2に示す6軸垂直多関節ロボットを例として、ロボット2の構成について説明する。なお、垂直多関節ロボットにおいて軸の数は、6軸に限定されるものではなく、任意の軸数でよい。ロボット2は、ベース部21と、胴部22と、第1アーム23と、第2アーム24と、手首部25と、ハンド部26とを備える。
The
ベース部21は、床や台等に固定設置され、内部に不図示の駆動モーター等を収容する箱体である。胴部22は、ベース部21の上面において、鉛直方向(上下方向)に延びる第1軸2A回りに、正逆両方向に回転可能に配置される。第1アーム23は、所定の長さを有するアーム部材であり、その長手方向の一端部が水平方向に延びる第2軸2Bを介して胴部22に取り付けられている。第1アーム23は、第2軸2B回りに、正逆両方向に回転可能である。
The
第2アーム24は、アームベース241とアーム部242とを含む。アームベース241は、第2アーム24のベース部分であり、第2軸2Bに対して平行且つ水平方向に延びる第3軸2Cを介して、第1アーム23の長手方向他端部に取り付けられている。アームベース241は、第3軸2C回りに、正逆両方向に回転可能である。アーム部242は、所定の長さを有するアーム部材であり、その長手方向の一端部が第3軸2Cに対して垂直な第4軸2Dを介してアームベース241に取り付けられている。アーム部242は、第4軸2D回りに、正逆両方向に回転可能である。
The
手首部25は、第2軸2B及び第3軸2Cに対して平行且つ水平方向に延びる第5軸2Eを介して、アーム部242の長手方向他端部に取り付けられている。手首部25は、第5軸2E回りに、正逆両方向に回転可能である。
The
ハンド部26は、ロボット2において容器CNからワークWを取り出す部分であり、第5軸2Eに対して垂直な第6軸2Fを介して手首部25に取り付けられている。ハンド部26は、第6軸2F回りに、正逆両方向に回転可能である。ハンド部26は、容器CN内のワークWを保持可能な構造であれば特に限定されるものではなく、例えば、ワークWを把持して保持する複数の爪部を備えた構造であってもよいし、ワークWに対して吸引力を発生する電磁石又は負圧発生装置を備えた構造であってもよい。本実施形態では、ハンド部26は、複数の爪部261を備えた構造を有し、容器CN内のワークWを爪部261によって保持(把持)することにより当該ワークWを取り出す。
The
次に、撮像装置3は、容器CN内に収容される複数のワークWの全てが視野内に収まるように容器CN内の全体を上方から撮像し、ワークWの位置情報を含む画像データを出力する装置である。本実施形態では、撮像装置3は、図1に示すように、カメラ31と画像処理部32を備えた三次元視覚センサ等の三次元計測器である。カメラ31は、容器CN内の全体を上方から撮像し、容器CN内に収容される複数のワークWの各々の画像領域を含む画像を取得する。画像処理部32は、カメラ31が取得した画像を画像処理することによって、各ワークWの三次元位置情報を含む画像データを生成する。各ワークの三次元位置情報は、例えば、XYZ直交座標系を用いた座標値(X,Y,Z)で表される。なお、XYZ直交座標系とは、X軸とY軸を含む平面(XY平面)が水平で、Z軸がXY平面に対して鉛直となるように各座標軸が配置された座標系である。撮像装置3から出力された画像データは、後述の機械学習装置5に備えられる変位量観測部64及び判定部7に入力される。
Next, the
次に、制御装置4は、ロボット2の動作を制御するとともに、撮像装置3の動作を制御する。制御装置4は、後述の機械学習装置5に備えられる行動決定部9によって生成される情報に基づいて、ロボット2の動作を制御する。
Next, the control device 4 controls the operation of the
[機械学習装置の構成]
次に、機械学習装置5について説明する。機械学習装置5は、図1に示すように、ロボット2の動作を学習(機械学習)する学習処理を実行する学習処理部6と、判定部7と、記憶部8と、行動決定部9とを備える。機械学習装置5が実行する学習の手法としては、特に限定されるものではなく、例えば、「教師あり学習」、「教師なし学習」及び「強化学習」等を採用することができる。本実施形態では、機械学習装置5における学習の手法として、強化学習としてのQ学習の手法が採用されている。Q学習は、ロボット2の連続的な動作を複数の状態に区分し、状態が順次移行されるときのロボット2の行動について、報酬が得られるような価値の高い行動を学習する手法である。また、機械学習装置5が実行する強化学習としてのQ学習は、例えば、ニューラルネットワーク(Neural Network)を使用して実現することが可能である。ニューラルネットワークは、人間の脳の構造を模した構成となっており、人間の脳におけるニューロン(神経細胞)の機能を模した論理回路を多層に積層して構成されたものである。
[Configuration of machine learning device]
Next, the machine learning device 5 will be described. As illustrated in FIG. 1, the machine learning device 5 includes a learning processing unit 6 that performs a learning process of learning the operation of the robot 2 (machine learning), a determination unit 7, a
<学習処理部について>
学習処理部6は、ロボット2の動作を学習する学習処理を実行する部分である。学習処理部6は、ロボット2が生産動作を実行しているときに学習処理を実行してもよいし、ロボット2の生産動作とは切り離して学習処理を実行してもよい。ロボット2の生産動作とは、ハンド部26によって容器CNからワークWを取り出し、その取り出したワークWをパレットPL(後記の図3参照)に載置するという、ロボット2の連続的な動作のことである。学習処理部6は、状態観測部61と、行動観測部62と、学習部63と、変位量観測部64とを含んで構成される。
<About the learning processor>
The learning processing unit 6 is a part that executes a learning process for learning the operation of the
(状態観測部について)
図3は、状態観測部61の動作を説明するための図である。なお、図3においては、ロボット2及び容器CNを上方から見た状態が示されており、容器CN内には3つのワークW1,W2,W3がバラ積みされている。ロボット2は、ハンド部26によって容器CNから一のワークW3を取り出し、その取り出したワークW3をパレットPLに載置するという、連続的な動作を実行する。状態観測部61は、ロボット2の連続的な動作を複数の状態に区分し、そのロボット2の状態を観測する。
(About the state observation unit)
FIG. 3 is a diagram for explaining the operation of the
状態観測部61が観測するロボット2の状態の数は、特に限定されるものではないが、図3では、状態S1、状態S2、状態S3及び状態S4の4つの状態が示されている。状態S1は、ロボット2のハンド部26がパレットPLの上方における所定の位置に配置されるように、胴部22、第1アーム23、第2アーム24、手首部25及びハンド部26の姿勢が調整されたロボット2の状態である。状態S2は、ハンド部26の爪部261によって容器CN内の保持(把持)対象となるワークW3を保持する直前の状態であって、ワークW3の真上における所定の位置にハンド部26が配置されるように、胴部22、第1アーム23、第2アーム24、手首部25及びハンド部26の姿勢が調整されたロボット2の状態である。状態S3は、ハンド部26の爪部261が容器CN内の保持対象となるワークW3を保持するように、胴部22、第1アーム23、第2アーム24、手首部25及びハンド部26の姿勢が調整されたロボット2の状態である。状態S4は、ハンド部26の爪部261によって保持したワークW3をパレットPLに載置するように、胴部22、第1アーム23、第2アーム24、手首部25及びハンド部26の姿勢が調整されたロボット2の状態である。ロボット2は、状態S1、状態S2、状態S3、状態S4の順に状態を連続的に移行することにより、ハンド部26によって容器CNから一のワークW3を取り出し、その取り出したワークW3をパレットPLに載置する。
Although the number of states of the
ロボット2の状態は、状態変数(ΔX,ΔY,ΔZ,p,d)によって規定される。状態変数(ΔX,ΔY,ΔZ,p,d)は、ロボット2の状態が移行されるごとに変化する変数である。
The state of the
状態変数の「ΔX」は、XYZ直交座標系において、ハンド部26の爪部261による保持対象となるワークW3の容器CN内における位置に関するX座標値を基準値(以下、「X基準値」と称する)とし、ハンド部26の位置に関するX座標値(以下、「ハンドX値」と称する)の前記X基準値に対する差異を表す。状態変数の「ΔY」は、XYZ直交座標系において、ハンド部26の爪部261による保持対象となるワークW3の容器CN内における位置に関するY座標値を基準値(以下、「Y基準値」と称する)とし、ハンド部26の位置に関するY座標値(以下、「ハンドY値」と称する)の前記Y基準値に対する差異を表す。状態変数の「ΔZ」は、XYZ直交座標系において、ハンド部26の爪部261による保持対象となるワークW3の容器CN内における位置に関するZ座標値を基準値(以下、「Z基準値」と称する)とし、ハンド部26の位置に関するZ座標値(以下、「ハンドZ値」と称する)の前記Z基準値に対する差異を表す。状態変数の「p」は、ハンド部26の爪部261がワークW3を保持しているか否かを表す。状態変数の「p」は、ハンド部26の爪部261がワークW3を保持している場合には「1」とされ、ハンド部26の爪部261がワークW3を保持していない場合には「0:ゼロ」とされる。状態変数の「d」は、ハンド部26の爪部261による一のワークW3に対して次の保持候補となるワークの周囲に、爪部261による保持を可能とするための保持スペースが確保されているか否かを表す。状態変数の「d」は、次の保持候補となるワークの周囲に保持スペースが確保されている場合には「1」とされ、保持スペースが確保されていない場合には「0:ゼロ」とされる。
The state variable “ΔX” refers to an X coordinate value related to the position in the container CN of the work W3 to be held by the
図3に示す例において、ロボット2の状態が状態S1である場合には、ハンド部26は、容器CNに対してX軸、Y軸及びZ軸の各座標軸の軸方向に離れており、爪部261によってワークW3を保持しておらず、ワークW1,W2の周囲には爪部261による保持スペースが確保されている。このため、ロボット2の状態S1を規定する状態変数(ΔX,ΔY,ΔZ,p,d)においては、「ΔX」、「ΔY」及び「ΔZ」がそれぞれ所定の値「XA」、「YA」及び「ZA」を示し、「p」が「0:ゼロ」を示し、「d」が「1」を示す。
In the example shown in FIG. 3, when the state of the
図3に示す例において、ロボット2の状態が状態S2である場合には、ハンド部26は、容器CNに対してX軸及びY軸の各軸方向には離れていないけれどもZ軸方向には離れており、爪部261によってワークW3を保持しておらず、ワークW1,W2の周囲には爪部261による保持スペースが確保されている。このため、ロボット2の状態S2を規定する状態変数(ΔX,ΔY,ΔZ,p,d)においては、「ΔX」及び「ΔY」がそれぞれ「0;ゼロ」を示し、「ΔZ」が所定の値「ZA」を示し、「p」が「0;ゼロ」を示し、「d」が「1」を示す。
In the example illustrated in FIG. 3, when the state of the
図3に示す例において、ロボット2の状態が状態S3である場合には、ハンド部26は、容器CNに対してX軸、Y軸及びZ軸の各座標軸の軸方向には離れておらず、爪部261によってワークW3を保持しており、ワークW1,W2の周囲には爪部261による保持スペースが確保されている。このため、ロボット2の状態S3を規定する状態変数(ΔX,ΔY,ΔZ,p,d)においては、「ΔX」、「ΔY」及び「ΔZ」がそれぞれ「0;ゼロ」を示し、「p」が「1」を示し、「d」が「1」を示す。
In the example illustrated in FIG. 3, when the state of the
図3に示す例において、ロボット2の状態が状態S4である場合には、ハンド部26は、容器CNに対してX軸、Y軸及びZ軸の各座標軸の軸方向に離れており、爪部261によってワークW3を保持しており、ワークW1,W2の周囲には爪部261による保持スペースが確保されている。このため、ロボット2の状態S4を規定する状態変数(ΔX,ΔY,ΔZ,p,d)においては、「ΔX」、「ΔY」及び「ΔZ」がそれぞれ所定の値「XA」、「YA」及び「ZA」を示し、「p」が「1」を示し、「d」が「1」を示す。
In the example shown in FIG. 3, when the state of the
状態観測部61は、ロボット2の状態が移行されるごとに変化する状態変数(ΔX,ΔY,ΔZ,p,d)に基づいて、ロボット2の状態が状態S1、状態S2、状態S3及び状態S4の何れの状態であるかを認識することができる。なお、ロボット2の状態が状態S1、状態S2及び状態S3の何れかの状態である場合には、胴部22、第1アーム23、第2アーム24、手首部25及びハンド部26の姿勢等の違いにより、複数のサブ状態が存在する。状態観測部61は、ロボット2の状態が状態S1、状態S2及び状態S3の何れかの状態である場合には、サブ状態についても観測する。ハンド部26の爪部261が保持したワークW3をパレットPLに載置するという、ロボット2の最終目標の状態を示す状態S4については、状態S1、状態S2及び状態S3のようなサブ状態は存在しない。
The
(行動観測部について)
図4は、行動観測部62の動作を説明するための図である。なお、図4においては、ロボット2の状態について、状態S1には複数のサブ状態「S1−1、S1−2、・・・S1−n」が存在することが示され、状態S2には複数のサブ状態「S2−1、S2−2、・・・S2−n」が存在することが示され、状態S3には複数のサブ状態「S3−1、S3−2、・・・S3−n」が存在することが示されている。
(About the behavior observation section)
FIG. 4 is a diagram for explaining the operation of the
行動観測部62は、ロボット2の状態が移行されるときのロボット2の行動パターンを観測する。より詳しくは、行動観測部62は、ロボット2の行動パターンについて、ロボット2の状態が状態S1から状態S2へ移行されるときの行動パターン、状態S2から状態S3へ移行されるときの行動パターン、状態S3から状態S4へ移行されるときの行動パターンをそれぞれ観測する。状態が移行されるときにロボット2が取り得る行動パターンは、状態S1、状態S2及び状態S3の各々におけるサブ状態の存在数に応じて、複数存在する(行動A1、行動A2、・・・行動An)。なお、ロボット2の状態が状態S3から状態S4へ移行されるときには、容器CN内の一のワークWをハンド部26の爪部261によって保持した状態で当該容器CNから取り出す取り出し動作が実行されている。
The
行動観測部62によって観測されるロボット2の行動パターンを規定する行動要素としては、図5に示される、把持角θ、把持位置HP、第1軸2Aにおける回転角β1及び回転速度パターン、第2軸2Bにおける回転角β2及び回転速度パターン、第3軸2Cにおける回転角β3及び回転速度パターン、第4軸2Dにおける回転角β4及び回転速度パターン、第5軸2Eにおける回転角β5及び回転速度パターン、第6軸2Fにおける回転角β6及び回転速度パターンが含まれる。なお、前述したように、垂直多関節ロボットからなるロボット2において、その軸数は6軸に限定されるものではなく、任意である。このため、ロボット2の行動パターンを規定する行動要素に含まれる各軸における回転角及び回転速度パターンは、軸数に応じたものとなる。
The behavior elements that define the behavior pattern of the
把持角θは、ハンド部26においてワークWを保持(把持)するための2つの爪部261の成す角度である(図2参照)。把持位置HPは、ハンド部26が一のワークWを取り出すときの、当該一のワークWを爪部261によって保持(把持)する位置を表す。第1軸2Aにおける回転角β1は、ロボット2の状態が移行されるときの胴部22の第1軸2A回りの回転角を表す。胴部22は第1軸2A回りに正逆両方向に回転可能であるので、回転角β1は、胴部22が正方向に回転するときには「正;プラス」の回転角で示され、胴部22が逆方向に回転するときには「負;マイナス」の回転角で示される。第2軸2Bにおける回転角β2は、ロボット2の状態が移行されるときの第1アーム23の第2軸2B回りの回転角を表す。第1アーム23は第2軸2B回りに正逆両方向に回転可能であるので、回転角β2は、第1アーム23が正方向に回転するときには「正;プラス」の回転角で示され、第1アーム23が逆方向に回転するときには「負;マイナス」の回転角で示される。第3軸2Cにおける回転角β3は、ロボット2の状態が移行されるときのアームベース241の第3軸2C回りの回転角を表す。アームベース241は第3軸2C回りに正逆両方向に回転可能であるので、回転角β3は、アームベース241が正方向に回転するときには「正;プラス」の回転角で示され、アームベース241が逆方向に回転するときには「負;マイナス」の回転角で示される。
The grip angle θ is an angle formed by two
第4軸2Dにおける回転角β4は、ロボット2の状態が移行されるときのアーム部242の第4軸2D回りの回転角を表す。アーム部242は第4軸2D回りに正逆両方向に回転可能であるので、回転角β4は、アーム部242が正方向に回転するときには「正;プラス」の回転角で示され、アーム部242が逆方向に回転するときには「負;マイナス」の回転角で示される。第5軸2Eにおける回転角β5は、ロボット2の状態が移行されるときの手首部25の第5軸2E回りの回転角を表す。手首部25は第5軸2E回りに正逆両方向に回転可能であるので、回転角β5は、手首部25が正方向に回転するときには「正;プラス」の回転角で示され、手首部25が逆方向に回転するときには「負;マイナス」の回転角で示される。第6軸2Fにおける回転角β6は、ロボット2の状態が移行されるときのハンド部26の第6軸2F回りの回転角を表す。ハンド部26は第6軸2F回りに正逆両方向に回転可能であるので、回転角β6は、ハンド部26が正方向に回転するときには「正;プラス」の回転角で示され、ハンド部26が逆方向に回転するときには「負;マイナス」の回転角で示される。
The rotation angle β4 on the
各軸2A〜2Fにおける回転速度パターンは、各軸回りの回転速度のパターンを表し、図5に示す第1パターン、第2パターン及び第3パターンに区分される。回転速度の第1パターンは、時間経過に伴って回転速度が直線的に上昇する上昇領域と、当該上昇領域の終端から時間経過に伴って回転速度が直線的に下降する下降領域との、2つの領域からなる。回転速度の第2パターンは、時間経過に伴って回転速度が直線的に上昇する上昇領域と、当該上昇領域の終端から一定時間の間で回転速度が等速となる等速領域と、等速領域の終端から時間経過に伴って回転速度が直線的に下降する下降領域との、3つの領域からなる。回転速度の第3パターンは、時間経過に伴って回転速度が曲線的に上昇する上昇領域と、当該上昇領域の終端から時間経過に伴って回転速度が曲線的に下降する下降領域との、2つの領域からなる。
The rotation speed pattern on each of the
行動観測部62は、各行動要素に基づいて、ロボット2の状態が移行されるときの行動パターンを認識することができる。
The
ロボット2の状態が状態S1から状態S2へ移行されるときのロボット2の最適な行動パターンと、状態S2から状態S3へ移行されるときのロボット2の最適な行動パターンとは、後述の学習部63によって既に学習済みである。また、状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,1)である場合の状態S3から状態S4へ移行されるときのロボット2の最適な行動パターンについても、後述の学習部63によって既に学習済みである。つまり、ロボット2の状態が状態S3から状態S4へ移行されるときのロボット2の行動パターンについて、状態変数の「d」が「1」であり、ハンド部26の爪部261による次の保持候補となるワークの周囲に爪部261による保持スペースが確保されている場合の行動パターンについては既に学習済みである。このような、学習部63によって既に学習済みのロボット2の行動パターンについては、記憶部8に記憶されている。
The optimum behavior pattern of the
記憶部8に記憶されている既存の行動パターンは、後述の行動決定部9によって記憶部8から読み出されて、制御装置4に向けて出力される。既存の行動パターンが入力された制御装置4は、当該既存の行動パターンに基づいて、ロボット2の動作を制御することができる。制御装置4の制御によってロボット2は、ハンド部26によって容器CNからワークWを取り出し、その取り出したワークWをパレットPLに載置するという、連続的な生産動作を実行する。
The existing behavior pattern stored in the
一方、状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)である場合の状態S3から状態S4へ移行されるときのロボット2の最適な行動パターンについては、後述の学習部63によって強化学習される。つまり、ロボット2の状態が状態S3から状態S4へ移行されるときのロボット2の行動パターンについて、状態変数の「d」が「0」であり、ハンド部26の爪部261による次の保持候補となるワークの周囲に爪部261による保持スペースが確保されていない場合の行動パターンについては、学習部63によって強化学習される。
On the other hand, regarding the optimal behavior pattern of the
ハンド部26の爪部261による次の保持候補となるワークが、保持スペースが周囲に確保されておらず爪部261による保持が不可能な保持不可ワークであるか否かは、判定部7によって判定される。判定部7は、ハンド部26が爪部261によって容器CN内の一のワークWを保持する前又は保持したときに、一のワークWに対して次の保持候補となるワークが保持不可ワークであるか否かを判定する。ハンド部26が爪部261によって容器CN内の一のワークWを保持する前又は保持したときには、撮像装置3におけるカメラ31の撮像動作によって基準画像が取得され、画像処理部32の基準画像に対する画像処理によって基準画像データが生成されている。基準画像データは、次の保持候補となるワークに関する三次元位置情報を含む画像データとなる。判定部7は、撮像装置3から出力される基準画像データに基づいて、容器CN内での各ワークの収容状況を認識し、次の保持候補となるワークが保持不可ワークであるか否かを判定する。
The determination unit 7 determines whether or not the work to be held next by the
判定部7は、ハンド部26の爪部261が挿入不能となるように、次の保持候補となるワークが容器CNの内面に近接した状態で配置されている場合や、複数のワーク同士が互いに近接した状態で配置されている場合に、爪部261による保持を可能とするための保持スペースが確保されていないと判断し、保持不可ワークであると判定する。判定部7によって次の保持候補となるワークが保持不可ワークであると判定された場合に、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。
The determination unit 7 determines whether the next work candidate to be held is arranged close to the inner surface of the container CN so that the
ロボット2の状態が状態S3であるときに、判定部7によって次の保持候補となるワークが保持不可ワークであると判定された場合、状態S3から状態S4へ移行する前にロボット2は、所定の変位手法を用いて保持不可ワークを変位させる変位動作を実行する。ロボット2が変位動作を実行するときに用いる、保持不可ワークを変位させるための変位手法としては、例えば、図6に示す第1〜第7手法が挙げられる。また、第1〜第7手法から選択される複数の手法が組み合わされたものを変位手法としてもよい。なお、図6においては、ハンド部26の爪部261によって容器CN内の一のワークW3を保持したときに、ワークW1,W2の周囲に保持スペースが確保されておらず、ワークW1,W2が保持不可ワークとされている。
When the state of the
第1手法は、爪部261によって保持した一のワークW3をパレットPLへ向けて移動させるときに、ハンド部26が一のワークW3を保持不可ワークW2に当接させた状態で移動することにより、当該保持不可ワークW2を変位させる変位手法である。ロボット2による第1手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW2の爪部261による保持が可能となる。
The first method is to move one work W3 held by the
第2手法は、爪部261によって保持した一のワークW3をパレットPLに載置した後、ハンド部26が爪部261によって容器CNを保持した状態で移動することにより、容器CNの移動に応じて保持不可ワークW2を変位させる変位手法である。ロボット2による第2手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW2の爪部261による保持が可能となる。
In the second method, after one work W3 held by the
第3手法は、爪部261によって保持した一のワークW3をパレットPLに載置した後、ハンド部26が爪部261を保持不可ワークW2に当接させた状態で移動することにより、当該保持不可ワークW2を変位させる変位手法である。ロボット2による第3手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW2の爪部261による保持が可能となる。
In the third method, after one work W3 held by the
第4手法は、爪部261によって保持した一のワークW3をパレットPLに載置した後、ワークW1,W2,W3とは種類の異なる、他の容器から取り出したワークWSを爪部261によって保持させ、ハンド部26がワークWSを保持不可ワークW2に当接させた状態で移動することにより、当該保持不可ワークW2を変位させる変位手法である。ロボット2による第4手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW2の爪部261による保持が可能となる。
In the fourth method, after one work W3 held by the
第5手法は、爪部261によって保持した一のワークW3をパレットPLに載置した後、専用治具JGを爪部261によって保持させ、ハンド部26が専用治具JGを保持不可ワークW2に当接させた状態で移動することにより、当該保持不可ワークW2を変位させる変位手法である。ロボット2による第5手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW2の爪部261による保持が可能となる。
In the fifth method, after one work W3 held by the
第6手法は、爪部261によって保持した一のワークW3をパレットPLに載置した後、空気等の気体を噴射可能なノズルNZを爪部261によって保持させ、ノズルNZから気体を保持不可ワークW2に向けて噴射させた状態でハンド部26が移動することにより、当該保持不可ワークW2を変位させる変位手法である。ロボット2による第6手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW2の爪部261による保持が可能となる。
In the sixth method, after one work W3 held by the
第7手法は、爪部261によって保持した一のワークW3を取り出す取り出し動作において、保持不可ワークW1,W2を崩すことによって、当該保持不可ワークW1,W2を変位させる変位手法である。この第7手法は、例えば、一のワークW3の上に保持不可ワークW1,W2が配置されている場合などに有効な手法である。ロボット2による第7手法を用いた変位動作によって、ハンド部26の爪部261による保持が不可能とされたワークW1,W2の周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークW1,W2の爪部261による保持が可能となる。
The seventh method is a displacement method of displacing the non-retainable works W1 and W2 by breaking the non-retainable works W1 and W2 in the take-out operation of taking out one work W3 held by the
行動観測部62は、判定部7によって次の保持候補となるワークが保持不可ワークであると判定された場合、上記の変位手法を用いて保持不可ワークを変位させるロボット2の変位動作における行動パターンについても観測する。行動観測部62は、上記の図5に示した各行動要素に基づいて、ロボット2の変位動作における行動パターンを認識することができる。
When the determination unit 7 determines that the work to be the next holding candidate is a non-holdable work, the
(変位量観測部について)
変位量観測部64は、判定部7によって次の保持候補となるワークが保持不可ワークであると判定され、所定の変位手法を用いて保持不可ワークを変位させる変位動作がロボット2によって実行されたときに、保持不可ワークのワーク変位量を観測する。変位量観測部64は、撮像装置3から出力される、ロボット2による変位動作の前後における各画像データに基づいて、保持不可ワークのワーク変位量を観測する。
(Displacement observation unit)
In the displacement
より詳しくは、変位量観測部64は、ロボット2による変位動作前における画像データであって、判定部7が保持不可ワークの存否を判定するときに参照する前述の基準画像データと、ロボット2による変位動作後における画像データとに基づいて、保持不可ワークのワーク変位量を観測する。変位量観測部64は、基準画像データに含まれる保持不可ワークの三次元位置情報における各座標値と、ロボット2による変位動作後の画像データに含まれるワークの三次元位置情報における各座標値との差分を算出することにより、保持不可ワークのワーク変位量を観測する。変位量観測部64の動作の詳細については、後述する。
More specifically, the displacement
(学習部について)
学習部63は、ロボット2の状態が移行されるときのロボット2の最適な行動パターンを学習する。更に、学習部63は、ハンド部26による次の保持候補となるワークが保持不可ワークであることが判定部7によって判定された場合に、保持スペースが確保されるように保持不可ワークを変位させることが可能な最適な変位手法を学習するとともに、当該変位手法を用いたロボット2の行動パターンを学習する。
(About the learning department)
The
なお、前述したように、学習部63は、ロボット2の状態が状態S1から状態S2へ移行されるときのロボット2の最適な行動パターンと、状態S2から状態S3へ移行されるときのロボット2の最適な行動パターンとについては、既に学習済みである。また、学習部63は、ロボット2の状態が状態S3から状態S4へ移行されるときのロボット2の行動パターンについて、ハンド部26の爪部261による次の保持候補となるワークの周囲に爪部261による保持スペースが確保されている場合の行動パターンについても、既に学習済みである。学習部63によって既に学習済みのロボット2の行動パターンについては、記憶部8に記憶されている。以下では、ロボット2の状態が状態S3であるときに、所定の変位手法を用いて保持不可ワークを変位させる変位動作におけるロボット2の行動パターンの学習について、詳細に説明する。
As described above, the
学習部63は、所定の変位手法を用いて保持不可ワークを変位させるときの、行動観測部62により観測されたロボット2の行動パターンを、変位量観測部64により観測された保持不可ワークのワーク変位量と対応付けて学習する。学習部63は、ロボット2の行動パターンとワーク変位量とを関連付けた教師データに基づいて、保持スペースの確保が可能となるように保持不可ワークを変位させる最適な変位手法及びロボット2の行動パターンを学習する。
The
学習部63は、図1に示すように、報酬設定部631と価値関数更新部632とを含んで構成される。
As shown in FIG. 1, the
報酬設定部631は、行動観測部62により観測されたロボット2の変位動作における行動パターンに対し、保持不可ワークのワーク変位量に応じた報酬R(後記の図9参照)を設定する。報酬設定部631は、保持不可ワークのワーク変位量に応じて段階的に報酬Rを設定してもよい。例えば、報酬設定部631は、保持不可ワークのワーク変位量が所定の閾値WDT(後記の図9参照)以上となるロボット2の行動パターンに対しては、第1の値R1(例えば「100」)の報酬Rを与える。また、報酬設定部631は、保持不可ワークのワーク変位量が(閾値WDT×0.5)以上且つ閾値WDT未満となるロボット2の行動パターンに対しては、第1の値R1よりも小さい第2の値R2(例えば「10」)の報酬Rを与える。また、報酬設定部631は、保持不可ワークのワーク変位量が(閾値WDT×0.5)未満となるロボット2の行動パターンに対しては、第2の値R2よりも小さい第3の値R3(例えば「0:ゼロ」)の報酬Rを与える。
The
なお、前記閾値WDTは、例えば、ハンド部26の爪部261の厚みに「1」以上の係数(例えば「1.2」)を乗算した値である。つまり、前記閾値WDTは、ハンド部26の爪部261の厚みに相当する、爪部261によるワークの保持を可能とするための保持スペースよりも、僅かに大きい値に設定されている。
The threshold value WDT is, for example, a value obtained by multiplying the thickness of the
価値関数更新部632は、ロボット2の行動パターンの価値Q(s,a)を規定する価値関数を、報酬設定部631により設定された報酬Rに応じて更新する。価値関数更新部632は、下記式(1)で示される価値Q(s,a)の更新式を用いて価値関数を更新する。
The value
上記式(1)において、「s」は、ロボット2の状態(状態S3)を表し、「a」は、行動パターンに従ったロボット2の行動を表す。行動「a」によってロボット2の状態が、状態「s」(状態S3)から状態「s’」(変位動作後の状態)へ移行する。R(s,a)は、その状態の移行により得られた報酬Rを表している。
In the above equation (1), “s” represents the state of the robot 2 (state S3), and “a” represents the behavior of the
上記式(1)において、「max」が付された項は、状態「s’」において最も価値の高い行動「a’」を選択した場合の価値Q(s’,a’)に「γ」を乗算したものになる。「γ」は、減衰率と呼ばれるパラメータであり、0<γ≦1の範囲(例えば0.9)とされる。また、「α」は、学習率と呼ばれるパラメータであり、0<α≦1の範囲(例えば0.1)とされる。また、「ε」は、修正係数と呼ばれるパラメータであり、0<ε≦1の範囲とされる。修正係数εは、詳細については後述するが、学習部63によって算出される。上記式(1)で示される価値Q(s,a)の更新式において、「ε」は、学習部63によって修正係数εが算出されるまでは、「ε=1」とされる。
In the above equation (1), the term to which “max” has been added represents “γ” as the value Q (s ′, a ′) when the highest value action “a ′” is selected in the state “s ′”. Multiplied by “Γ” is a parameter called an attenuation factor, and is in a range of 0 <γ ≦ 1 (for example, 0.9). “Α” is a parameter called a learning rate, and is in a range of 0 <α ≦ 1 (for example, 0.1). “Ε” is a parameter called a correction coefficient, and is in a range of 0 <ε ≦ 1. The correction coefficient ε is calculated by the
上記式(1)は、行動「a」に対して報酬設定部631により設定された報酬R(s,a)に基づいて、状態「s」における行動「a」の価値Q(s,a)を更新する更新式を表している。すなわち、上記式(1)は、状態「s」における行動「a」の価値Q(s,a)よりも、状態「s’」における行動「a’」の価値Q(s’,a’)と報酬R(s,a)との合計値の方が大きければ、価値Q(s,a)を大きくし、反対に小さければ、価値Q(s,a)を小さくすることを示している。つまり、価値関数更新部632は、上記式(1)で示される更新式を用いて価値関数を更新することによって、或る状態「s」における或る行動「a」の価値Q(s,a)を、その行動「a」に対して設定される報酬Rと、その行動「a」による次の状態「s’」における最良の行動「a’」の価値Q(s’,a’)に近付けるようにしている。
The above equation (1) calculates the value Q (s, a) of the action “a” in the state “s” based on the reward R (s, a) set by the
ここで、詳細については後述するが、図7〜図11に示される変位動作の第1例を参照して説明すると、ロボット2の行動「a」(図7の行動A1)による変位動作によって、保持不可ワークが保持スペースの確保が可能に変位されると、ロボット2の状態が、状態「s」(状態S3)から状態「s’」(図7の状態S31)へ移行する。この状態「s’」(状態S31)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)は(0,0,0,1,1)とされる。つまり、状態変数の「d」が「1」であり、ハンド部26による次の保持候補となるワークの周囲に爪部261による保持スペースが確保された状態となるので、次に遷移するロボット2の状態は状態S4となる。よって、状態「s’」(状態S31)から状態S4へ移行する行動「a’」である行動A1’(図7)を選択して、状態S4に移行したときの価値Q(s’,a’)が最も高いものとなる。
Here, although the details will be described later, with reference to the first example of the displacement operation shown in FIGS. 7 to 11, by the displacement operation by the action “a” (the action A1 in FIG. 7) of the
一方、ロボット2の行動「a」(図7の行動A2)による変位動作によって、保持不可ワークが変位したけれども保持スペースの確保には至らなかった場合、ロボット2の状態が、状態「s」(状態S3)から状態「s’」(図7の状態S32)へ移行する。この状態「s’」(状態S32)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)は(0,0,0,1,0)とされる。この場合、状態変数の「d」が「0」であり、ハンド部26による次の保持候補となるワークの周囲には保持スペースが確保されていない状態となるので、次に遷移するロボット2の状態は再度状態S3となり、変位動作が再試行される。よって、状態「s’」(状態S32)から状態S3へ移行する行動「a’」である行動A2’(図7)を選択して、状態S3に移行したときの価値Q(s’,a’)は、上記の状態S4に移行したときの価値に比べて低い。
On the other hand, when the non-holdable work is displaced by the displacement operation due to the action “a” of the robot 2 (action A2 in FIG. 7) but the holding space is not secured, the state of the
また、ロボット2の行動「a」(図7の行動A3)による変位動作によって、保持不可ワークが殆ど変位しなかった場合、ロボット2の状態が、状態「s」(状態S3)から状態「s’」(図7の状態S33)へ移行する。この状態「s’」(状態S33)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)は(0,0,0,1,0)とされる。この場合、状態変数の「d」が「0」であり、ハンド部26による次の保持候補となるワークの周囲には保持スペースが確保されていない状態となるので、次に遷移するロボット2の状態は再度状態S3となり、変位動作が再試行される。よって、状態「s’」(状態S33)から状態S3へ移行する行動「a’」である行動A3’(図7)を選択して、状態S3に移行したときの価値Q(s’,a’)も、同様に低い。
Further, when the non-holdable work hardly displaces due to the displacement operation by the action “a” (action A3 in FIG. 7) of the
なお、後記の図12〜図14に示される変位動作の第2例、図15及び図16に示される変位動作の第3例についても、上記の変位動作の第1例の場合と同様に、上記式(1)で示される価値Q(s,a)の更新式が適用できる。 The second example of the displacement operation shown in FIGS. 12 to 14 described later and the third example of the displacement operation shown in FIGS. 15 and 16 are also similar to the case of the first example of the above-described displacement operation. The updating formula of the value Q (s, a) shown in the above formula (1) can be applied.
学習部63は、所定の変位手法を用いて保持不可ワークを変位させる変位動作におけるロボット2の行動パターンの学習結果を表す学習結果情報を生成する。学習部63によって生成された学習結果情報は、記憶部8に記憶される。なお、学習部63は、保持不可ワークを変位させる変位動作におけるロボット2の行動パターンの学習について、ロボット2が生産動作を実行しているときに学習を実行してもよいし、ロボット2の生産動作とは切り離して学習を実行してもよい。
The
<行動決定部について>
行動決定部9は、記憶部8に記憶されているロボット2の行動パターンを記憶部8から読み出すことによって、状態移行時のロボット2の行動パターンを決定する。行動決定部9は、記憶部8から読み出したロボット2の行動パターンを制御装置4に向けて出力する。より詳しくは、行動決定部9は、前述した既存の行動パターンを記憶部8から読み出して制御装置4に向けて出力する。既存の行動パターンが入力された制御装置4は、当該既存の行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、ハンド部26によって容器CNからワークWを取り出し、その取り出したワークWをパレットPLに載置するという、連続的な生産動作を実行する。
<About the action decision section>
The action determining unit 9 reads the action pattern of the
また、保持不可ワークを変位させる変位動作の実行時においては、行動決定部9は、学習部63の学習結果を表す、記憶部8に記憶されている前記学習結果情報を参照する。例えば、前記学習結果情報に保持スペースの確保が可能な行動パターンが登録されている場合、行動決定部9は、当該行動パターンを、保持不可ワークを爪部261によって保持可能とするための行動パターンとして決定する。行動決定部9は、記憶部8に記憶されている前記学習結果情報に登録された、保持スペースの確保が可能な行動パターンを読み出すことによって、変位動作の実行時におけるロボット2の行動パターンを決定する。行動決定部9は、記憶部8から読み出したロボット2の変位動作時の行動パターンを制御装置4に向けて出力する。変位動作時の行動パターンが入力された制御装置4は、当該行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261による保持スペースが周囲に確保されるように保持不可ワークを変位させる。
Further, at the time of executing the displacement operation for displacing the non-holdable work, the action determining unit 9 refers to the learning result information stored in the
保持不可ワークの周囲に保持スペースが確保されると、当該ワークの爪部261による保持が可能となる。従って、保持不可ワークの周囲に保持スペースが確保された後、行動決定部9は、前述した既存の行動パターンを記憶部8から読み出して制御装置4に向けて出力する。これにより、制御装置4の制御によってロボット2は、ハンド部26によって容器CNからワークWを取り出し、その取り出したワークWをパレットPLに載置するという、連続的な生産動作を実行する。
When a holding space is secured around the work that cannot be held, the work can be held by the
[保持不可ワークを変位させる変位動作の具体例]
以上説明したように、ロボット2の状態が状態S3であって、ハンド部26の爪部261によって一のワークを保持したときに、次の保持候補となるワークが保持不可ワークであることが判定部7によって判定された場合、保持スペースが確保されるように保持不可ワークを変位させる、所定の変位手法を用いた変位動作が実行される。以下では、具体例を挙げて、保持不可ワークを変位させる変位動作の詳細について説明する。
[Specific example of displacement operation for displacing a workpiece that cannot be held]
As described above, when the state of the
<変位動作の第1例について>
図7〜図10を参照して、変位動作の第1例について説明する。図7は、保持不可ワークを変位させる変位動作の第1例を説明するための図である。図8は、変位量観測部64の動作を説明するための図である。図9は、第1例の変位動作において学習部63によって生成される学習結果情報JH1を説明するための図である。図10は、第1例の変位動作に関する機械学習装置5の動作を示すフローチャートである。
<About the first example of the displacement operation>
A first example of the displacement operation will be described with reference to FIGS. FIG. 7 is a diagram illustrating a first example of a displacement operation for displacing a non-holdable work. FIG. 8 is a diagram for explaining the operation of the displacement
状態観測部61は、ロボット2の状態が移行されるごとに変化する状態変数(ΔX,ΔY,ΔZ,p,d)に基づいて、ロボット2の状態が状態S2から状態S3へ移行されたことを観測する(図10のステップa1)。ロボット2の状態が状態S2から状態S3へ移行されたとき、すなわち、ハンド部26の爪部261によって一のワークが保持されたときに、判定部7は、撮像装置3から出力された基準画像データを取得する(図10のステップa2)。基準画像データは、次の保持候補となるワークに関する三次元位置情報を含む画像データとなる。判定部7は、基準画像データに基づいて容器CN内での各ワークの収容状況を認識し、次の保持候補となるワークが保持不可ワークであるか否かを判定する(図10のステップa3)。
The
次の保持候補となるワークが保持不可ワークではないと判定部7によって判定された場合には、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,1)とされる。この場合、行動決定部9は、状態S3から状態S4へと移行させるための既存の行動パターンを記憶部8から読み出して制御装置4に向けて出力する。既存の行動パターンが入力された制御装置4は、当該既存の行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261によって保持された一のワークを容器CNから取り出す取り出し動作を実行する(図10のステップa5)。
If the determination unit 7 determines that the work to be the next holding candidate is not a work that cannot be held, the state variables (ΔX, ΔY, ΔZ, p, d) when the state of the
一方、次の保持候補となるワークが保持不可ワークであると判定部7によって判定された場合には、図7に示すように、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。図7に示す例では、ハンド部26の爪部261によって容器CN内の一のワークW3を保持したときに、ワークW1,W2の周囲に保持スペースが確保されておらず、ワークW1,W2が保持不可ワークとされている。このため、状態変数の「d」が「0」であり、ハンド部26の爪部261による次の保持候補となるワークW1,W2の周囲に爪部261による保持スペースが確保されていないことが示されている。なお、図7に示す例では、保持不可ワークW1は容器CNの内面に近接して配置され、保持不可ワークW2は保持不可ワークW1の側方において当該保持不可ワークW1に近接して配置されている。このため、保持不可ワークW1,W2の周囲に保持スペースが確保されていない。
On the other hand, when the determination unit 7 determines that the work to be the next holding candidate is a work that cannot be held, as shown in FIG. 7, the state variable (ΔX, ΔY, ΔZ, p, d) are set to (0, 0, 0, 1, 0). In the example illustrated in FIG. 7, when one work W3 in the container CN is held by the
次の保持候補となるワークW1,W2が保持不可ワークであると判定部7によって判定された場合、保持不可ワークであるワークW1及びワークW2の少なくともいずれか一方のワークを、爪部261による保持スペースが周囲に確保されるように変位させる変位動作が実行される。変位動作の第1例においては、ロボット2は、図7に示すように、第1手法を用いた行動パターンに基づく変位動作によって保持不可ワークとしてのワークW2を変位させる。なお、第1手法は、前述したように、爪部261によって保持した一のワークW3をパレットPLへ向けて移動させるときに、ハンド部26が一のワークW3を保持不可ワークW2に当接させた状態で移動することにより、当該保持不可ワークW2を変位させる変位手法である。
When the determination unit 7 determines that the work W1 or W2 that is the next holding candidate is a work that cannot be held, the
行動観測部62は、第1手法を用いたロボット2の行動パターンを観測する(図10のステップa4)。図7に示す例では、第1手法を用いたロボット2の行動パターンとして、行動A1、行動A2及び行動A3の3種の行動パターンが示されている。行動A1は、爪部261によって保持した一のワークW3の先端が保持不可ワークW2の長手方向一端面に当接(当接位置CP)した状態でハンド部26が、保持不可ワークW1,W2の並列方向に関して保持不可ワークW1から斜めに離れる方向に移動(移動軌跡MT)するような行動パターンである。行動A2は、行動A1に対して保持不可ワークW1,W2の並列方向に関する移動軌跡MTの傾斜度合いが異なる以外は、行動A1と同様の行動パターンである。行動A3は、爪部261によって保持した一のワークW3の先端が保持不可ワークW2の側面に当接(当接位置CP)した状態でハンド部26が、保持不可ワークW1,W2の並列方向と直交する方向、すなわち保持不可ワークW2の側面に沿った方向に移動(移動軌跡MT)するような行動パターンである。
The
行動観測部62によって観測されるロボット2の行動パターンを規定する行動要素としては、前述の図5に示される、把持角θ、把持位置HP、第1軸2Aにおける回転角β1及び回転速度パターン、第2軸2Bにおける回転角β2及び回転速度パターン、第3軸2Cにおける回転角β3及び回転速度パターン、第4軸2Dにおける回転角β4及び回転速度パターン、第5軸2Eにおける回転角β5及び回転速度パターン、第6軸2Fにおける回転角β6及び回転速度パターンが含まれる。図5に示される各行動要素は、第1手法を用いたロボット2の行動パターンにおいて、爪部261によって保持した一のワークW3の保持不可ワークW2に対する当接位置CPを決定付ける要素となるとともに、ハンド部26の移動軌跡MTを決定付ける要素となる。
The behavior elements that define the behavior pattern of the
第1手法を用いた行動パターンに基づく変位動作が完了すると、変位量観測部64は、撮像装置3から出力された、変位動作後の画像データを取得する(図10のステップa6)。変位動作後の画像データは、第1手法を用いたロボット2の行動パターンによって変位された後の保持不可ワークW1,W2に関する三次元位置情報を含む画像データとなる。変位量観測部64は、ロボット2による変位動作前における画像データであって、判定部7が保持不可ワークW1,W2の存否を判定するときに参照する基準画像データと、ロボット2による変位動作後における画像データとに基づいて、保持不可ワークW1,W2のワーク変位量を観測する(図10のステップa7)。
When the displacement operation based on the behavior pattern using the first method is completed, the displacement
図8に示す例では、ロボット2による変位動作前であって、ハンド部26の爪部261によって一のワークW3が保持されたときに、撮像装置3におけるカメラ31の撮像動作によって基準画像GSが取得され、画像処理部32の基準画像GSに対する画像処理によって基準画像データGDSが生成されている。基準画像GSには、保持不可ワークW1に対応した画像領域GW1と、保持不可ワークW2に対応した画像領域GW2とが含まれている。また、基準画像データGDSには、保持不可ワークW1の三次元位置情報としての座標値(X1,Y1,Z1)に関する情報と、保持不可ワークW2の三次元位置情報としての座標値(X2,Y2,Z2)に関する情報とが含まれている。
In the example illustrated in FIG. 8, before the displacement operation by the
また、図8に示す例では、ロボット2による変位動作後において、撮像装置3におけるカメラ31の撮像動作によって第1画像G1、第2画像G2及び第3画像G3が取得され、画像処理部32の各画像G1,G2,G3に対する画像処理によって第1画像データGD1、第2画像データGD2及び第3画像データGD3がそれぞれ生成されている。
In the example illustrated in FIG. 8, after the displacement operation by the
第1画像G1及び第1画像データGD1は、第1手法を用いた行動パターンA1(図7の行動A1)に基づくロボット2の変位動作後の画像及び画像データを示している。第1画像G1には、行動パターンA1に基づくロボット2の変位動作後における保持不可ワークW1,W2について、保持不可ワークW1に対応した画像領域GW1と、保持不可ワークW2に対応した画像領域GW2とが含まれている。また、第1画像データGD1には、保持不可ワークW1の三次元位置情報としての座標値(X11,Y11,Z11)に関する情報と、保持不可ワークW2の三次元位置情報としての座標値(X21,Y21,Z21)に関する情報とが含まれている。
The first image G1 and the first image data GD1 show an image and image data after the displacement operation of the
第2画像G2及び第2画像データGD2は、第1手法を用いた行動パターンA2(図7の行動A2)に基づくロボット2の変位動作後の画像及び画像データを示している。第2画像G2には、行動パターンA2に基づくロボット2の変位動作後における保持不可ワークW1,W2について、保持不可ワークW1に対応した画像領域GW1と、保持不可ワークW2に対応した画像領域GW2とが含まれている。また、第2画像データGD2には、保持不可ワークW1の三次元位置情報としての座標値(X12,Y12,Z12)に関する情報と、保持不可ワークW2の三次元位置情報としての座標値(X22,Y22,Z22)に関する情報とが含まれている。
The second image G2 and the second image data GD2 show an image and image data after the displacement operation of the
第3画像G3及び第3画像データGD3は、第1手法を用いた行動パターンA3(図7の行動A3)に基づくロボット2の変位動作後の画像及び画像データを示している。第3画像G3には、行動パターンA3に基づくロボット2の変位動作後における保持不可ワークW1,W2について、保持不可ワークW1に対応した画像領域GW1と、保持不可ワークW2に対応した画像領域GW2とが含まれている。また、第3画像データGD3には、保持不可ワークW1の三次元位置情報としての座標値(X13,Y13,Z13)に関する情報と、保持不可ワークW2の三次元位置情報としての座標値(X23,Y23,Z23)に関する情報とが含まれている。
The third image G3 and the third image data GD3 show the image and the image data after the displacement operation of the
変位量観測部64は、基準画像データGDSと第1画像データGD1とに基づいて、第1手法を用いた行動パターンA1に基づくロボット2の変位動作が実行されたときの、保持不可ワークW1,W2の容器CN内での変位量を表す第1ワーク変位量WD1を観測する。第1ワーク変位量WD1は、保持不可ワークW1のワーク変位量(XD11,YD11,ZD11)と、保持不可ワークW2のワーク変位量(XD21,YD21,ZD21)とを含む。保持不可ワークW1のワーク変位量において「XD11」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるX座標値「X1」と、第1画像データGD1に含まれる保持不可ワークW1の三次元位置情報におけるX座標値「X11」との差分を示す。また、保持不可ワークW1のワーク変位量において「YD11」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるY座標値「Y1」と、第1画像データGD1に含まれる保持不可ワークW1の三次元位置情報におけるY座標値「Y11」との差分を示す。また、保持不可ワークW1のワーク変位量において「ZD11」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるZ座標値「Z1」と、第1画像データGD1に含まれる保持不可ワークW1の三次元位置情報におけるZ座標値「Z11」との差分を示す。
The displacement
同様に、保持不可ワークW2のワーク変位量において「XD21」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるX座標値「X2」と、第1画像データGD1に含まれる保持不可ワークW2の三次元位置情報におけるX座標値「X21」との差分を示す。また、保持不可ワークW2のワーク変位量において「YD21」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるY座標値「Y2」と、第1画像データGD1に含まれる保持不可ワークW2の三次元位置情報におけるY座標値「Y21」との差分を示す。また、保持不可ワークW2のワーク変位量において「ZD21」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるZ座標値「Z2」と、第1画像データGD1に含まれる保持不可ワークW2の三次元位置情報におけるZ座標値「Z21」との差分を示す。 Similarly, “XD21” in the work displacement amount of the non-holdable work W2 is included in the X-coordinate value “X2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS, and in the first image data GD1. The difference from the X coordinate value “X21” in the three-dimensional position information of the work W2 that cannot be held is shown. In the work displacement amount of the non-holdable work W2, “YD21” is the Y coordinate value “Y2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS, and is stored in the first image data GD1. The difference from the Y coordinate value “Y21” in the three-dimensional position information of the unacceptable work W2 is shown. Further, in the work displacement amount of the non-holdable work W2, “ZD21” is the Z coordinate value “Z2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS and the hold included in the first image data GD1. The difference from the Z coordinate value “Z21” in the three-dimensional position information of the unacceptable work W2 is shown.
基準画像GSと第1画像G1との比較から明らかなように、第1手法を用いた行動パターンA1に基づくロボット2の変位動作後において保持不可ワークW1の位置は、変位動作前の位置と比較して殆ど変化していないが、保持不可ワークW2の位置は爪部261による保持スペースが確保される程度に変化している。このため、変位量観測部64によって観測された第1ワーク変位量WD1に含まれる保持不可ワークW1のワーク変位量(XD11,YD11,ZD11)の各値は「0;ゼロ」に近い値を示すが、保持不可ワークW2のワーク変位量(XD21,YD21,ZD21)の各値は保持不可ワークW2の変位に応じた値を示すことになる。
As is clear from the comparison between the reference image GS and the first image G1, the position of the non-holdable work W1 after the displacement operation of the
第1手法を用いた行動パターンA1に基づくロボット2の変位動作によって、保持不可ワークW2が保持スペースの確保が可能に変位されると、図7に示すように、ロボット2の状態が状態S31(変位動作後の状態)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,1)とされる。図7に示す例では、行動パターンA1に基づくロボット2の変位動作によって保持不可ワークW2の周囲に保持スペースが確保され、当該ワークW2が保持可能とされる。このため、状態変数の「d」が「1」であり、ワークW2の周囲に爪部261による保持スペースが確保されたことが示されている。
When the non-holdable work W2 is displaced by the displacement operation of the
また、変位量観測部64は、基準画像データGDSと第2画像データGD2とに基づいて、第1手法を用いた行動パターンA2に基づくロボット2の変位動作が実行されたときの、保持不可ワークW1,W2の容器CN内での変位量を表す第2ワーク変位量WD2を観測する。第2ワーク変位量WD2は、保持不可ワークW1のワーク変位量(XD12,YD12,ZD12)と、保持不可ワークW2のワーク変位量(XD22,YD22,ZD22)とを含む。保持不可ワークW1のワーク変位量において「XD12」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるX座標値「X1」と、第2画像データGD2に含まれる保持不可ワークW1の三次元位置情報におけるX座標値「X12」との差分を示す。また、保持不可ワークW1のワーク変位量において「YD12」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるY座標値「Y1」と、第2画像データGD2に含まれる保持不可ワークW1の三次元位置情報におけるY座標値「Y12」との差分を示す。また、保持不可ワークW1のワーク変位量において「ZD12」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるZ座標値「Z1」と、第2画像データGD2に含まれる保持不可ワークW1の三次元位置情報におけるZ座標値「Z12」との差分を示す。
In addition, the displacement
同様に、保持不可ワークW2のワーク変位量において「XD22」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるX座標値「X2」と、第2画像データGD2に含まれる保持不可ワークW2の三次元位置情報におけるX座標値「X22」との差分を示す。また、保持不可ワークW2のワーク変位量において「YD22」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるY座標値「Y2」と、第2画像データGD2に含まれる保持不可ワークW2の三次元位置情報におけるY座標値「Y22」との差分を示す。また、保持不可ワークW2のワーク変位量において「ZD22」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるZ座標値「Z2」と、第2画像データGD2に含まれる保持不可ワークW2の三次元位置情報におけるZ座標値「Z22」との差分を示す。 Similarly, “XD22” in the work displacement amount of the non-holdable work W2 is included in the X coordinate value “X2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS, and in the second image data GD2. The difference from the X coordinate value “X22” in the three-dimensional position information of the work W2 that cannot be held is shown. Further, in the work displacement amount of the non-holdable work W2, “YD22” is the Y coordinate value “Y2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS and the hold included in the second image data GD2. The difference from the Y coordinate value “Y22” in the three-dimensional position information of the unacceptable work W2 is shown. Further, in the work displacement amount of the non-holdable work W2, “ZD22” is the Z coordinate value “Z2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS and the hold included in the second image data GD2. The difference from the Z coordinate value “Z22” in the three-dimensional position information of the unacceptable work W2 is shown.
基準画像GSと第2画像G2との比較から明らかなように、第1手法を用いた行動パターンA2に基づくロボット2の変位動作後において保持不可ワークW1の位置は、変位動作前の位置と比較して殆ど変化していないが、保持不可ワークW2の位置は保持スペースよりも小さい範囲で変化している。このため、変位量観測部64によって観測された第2ワーク変位量WD2に含まれる保持不可ワークW1のワーク変位量(XD12,YD12,ZD12)の各値は「0;ゼロ」に近い値を示すが、保持不可ワークW2のワーク変位量(XD22,YD22,ZD22)の各値は保持不可ワークW2の変位に応じた値を示すことになる。
As is clear from the comparison between the reference image GS and the second image G2, the position of the non-holdable work W1 after the displacement operation of the
第1手法を用いた行動パターンA2に基づくロボット2の変位動作によって、保持不可ワークW2が保持スペースよりも小さい範囲で変位されると、図7に示すように、ロボット2の状態が状態S32(変位動作後の状態)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。図7に示す例では、行動パターンA2に基づくロボット2の変位動作によって保持不可ワークW2は変位されたけれども、その周囲に保持スペースが確保されておらず、当該ワークW2の保持が不可能である。このため、状態変数の「d」が「0」であり、ワークW2の周囲に爪部261による保持スペースが確保されていないことが示されている。
When the non-holdable work W2 is displaced in a range smaller than the holding space by the displacement operation of the
また、変位量観測部64は、基準画像データGDSと第3画像データGD3とに基づいて、第1手法を用いた行動パターンA3に基づくロボット2の変位動作が実行されたときの、保持不可ワークW1,W2の容器CN内での変位量を表す第3ワーク変位量WD3を観測する。第3ワーク変位量WD3は、保持不可ワークW1のワーク変位量(XD13,YD13,ZD13)と、保持不可ワークW2のワーク変位量(XD23,YD23,ZD23)とを含む。保持不可ワークW1のワーク変位量において「XD13」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるX座標値「X1」と、第3画像データGD3に含まれる保持不可ワークW1の三次元位置情報におけるX座標値「X13」との差分を示す。また、保持不可ワークW1のワーク変位量において「YD13」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるY座標値「Y1」と、第3画像データGD3に含まれる保持不可ワークW1の三次元位置情報におけるY座標値「Y13」との差分を示す。また、保持不可ワークW1のワーク変位量において「ZD13」は、基準画像データGDSに含まれる保持不可ワークW1の三次元位置情報におけるZ座標値「Z1」と、第3画像データGD3に含まれる保持不可ワークW1の三次元位置情報におけるZ座標値「Z13」との差分を示す。
In addition, the displacement
同様に、保持不可ワークW2のワーク変位量において「XD23」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるX座標値「X2」と、第3画像データGD3に含まれる保持不可ワークW2の三次元位置情報におけるX座標値「X23」との差分を示す。また、保持不可ワークW2のワーク変位量において「YD23」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるY座標値「Y2」と、第3画像データGD3に含まれる保持不可ワークW2の三次元位置情報におけるY座標値「Y23」との差分を示す。また、保持不可ワークW2のワーク変位量において「ZD23」は、基準画像データGDSに含まれる保持不可ワークW2の三次元位置情報におけるZ座標値「Z2」と、第3画像データGD3に含まれる保持不可ワークW2の三次元位置情報におけるZ座標値「Z23」との差分を示す。 Similarly, in the work displacement amount of the non-holdable work W2, “XD23” is included in the X coordinate value “X2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS, and in the third image data GD3. The difference from the X coordinate value “X23” in the three-dimensional position information of the work W2 that cannot be held is shown. Further, “YD23” in the work displacement amount of the non-holdable work W2 is the Y coordinate value “Y2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS, and the hold included in the third image data GD3. The difference from the Y coordinate value “Y23” in the three-dimensional position information of the unacceptable work W2 is shown. Further, in the work displacement amount of the non-holdable work W2, “ZD23” is the Z coordinate value “Z2” in the three-dimensional position information of the non-holdable work W2 included in the reference image data GDS and the hold included in the third image data GD3. The difference from the Z coordinate value “Z23” in the three-dimensional position information of the unacceptable work W2 is shown.
基準画像GSと第3画像G3との比較から明らかなように、第1手法を用いた行動パターンA3に基づくロボット2の変位動作後において保持不可ワークW1,W2の位置は、変位動作前の位置と比較して殆ど変化していない。このため、変位量観測部64によって観測された第3ワーク変位量WD3に含まれる保持不可ワークW1のワーク変位量(XD13,YD13,ZD13)の各値と、保持不可ワークW2のワーク変位量(XD23,YD23,ZD23)の各値とは、「0;ゼロ」に近い値を示すことになる。
As is clear from the comparison between the reference image GS and the third image G3, the positions of the non-holdable works W1 and W2 after the displacement operation of the
第1手法を用いた行動パターンA3に基づくロボット2の変位動作が実行されると、図7に示すように、ロボット2の状態が状態S33(変位動作後の状態)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。図7に示す例では、行動パターンA3に基づくロボット2の変位動作によって保持不可ワークW2は殆ど変位されておらず、その周囲に保持スペースが確保されていないので、当該ワークW2の保持が不可能である。このため、状態変数の「d」が「0」であり、ワークW2の周囲に爪部261による保持スペースが確保されていないことが示されている。
When the displacement operation of the
変位量観測部64によって保持不可ワークW1,W2のワーク変位量が観測されると、学習部63の報酬設定部631は、保持不可ワークW1,W2の少なくともいずれか一方のワーク(保持不可ワークW2)のワーク変位量が(閾値WDT×0.5)以上であるか否かを判定する(図10のステップa8)。更に、報酬設定部631は、保持不可ワークW2のワーク変位量が閾値WDT以上であるか否かを判定する(図10のステップa9)。報酬設定部631は、保持不可ワークW2のワーク変位量が所定の閾値WDT以上となるロボット2の行動パターン(図7の行動A1)に対しては、第1の値R1(例えば「100」)の報酬Rを与える(図10のステップa10)。報酬設定部631は、保持不可ワークW2のワーク変位量が(閾値WDT×0.5)以上且つ閾値WDT未満となるロボット2の行動パターン(図7の行動A2)に対しては、第1の値R1よりも小さい第2の値R2(例えば「10」)の報酬Rを与える(図10のステップa15)。報酬設定部631は、保持不可ワークW2のワーク変位量が(閾値WDT×0.5)未満となるロボット2の行動パターン(図7の行動A3)に対しては、第2の値R2よりも小さい第3の値R3(例えば「0:ゼロ」)の報酬Rを与える(図10のステップa14)。
When the displacement amount of the non-holdable works W1 and W2 is observed by the displacement
次に、学習部63の価値関数更新部632は、ロボット2の行動パターンの価値Q(s,a)を規定する価値関数を、上記式(1)の更新式を用いて更新する(図10のステップa11,a16)。
Next, the value
価値関数更新部632によって価値関数が更新されるごとに学習部63は、第1手法を用いて保持不可ワークW2を変位させる変位動作におけるロボット2の行動パターンの学習結果を表す学習結果情報JH1(図9)を生成する。学習部63によって生成された学習結果情報JH1は、記憶部8に記憶される。学習結果情報JH1は、例えば、変位手法情報J11と、基準画像データ情報J12と、行動パターン情報J13と、ワーク変位量情報J14と、報酬情報J15とが関連付けられた情報である。変位手法情報J11は、ロボット2の変位動作の際に用いられた変位手法を表す情報である。基準画像データ情報J12は、判定部7が保持不可ワークの存否を判定する際に参照した基準画像データGDSを表す情報である。行動パターン情報J13は、ロボット2の変位動作の際に行動観測部62により観測されたロボット2の行動パターンを表す情報であり、行動パターンを規定する行動要素が含まれる。ワーク変位量情報J14は、ロボット2の変位動作の際に変位量観測部64により観測された保持不可ワークのワーク変位量を表す情報である。報酬情報J15は、行動観測部62により観測されたロボット2の行動パターンに対して報酬設定部631が設定した報酬Rを表す情報である。
Each time the value function is updated by the value
図9に例示される学習結果情報JH1においては、基準画像データ情報J12にて表される基準画像データGDSに対応した配置状況の保持不可ワークに対して、第1手法(変位手法情報J11)を用いた行動パターンA1,A2,A3(行動パターン情報J13)に基づくロボット2の変位動作が実行されたことが示されている。そして、第1手法を用いた行動パターンA1は、保持不可ワークのワーク変位量WD1が閾値WDT以上となり(ワーク変位量情報J14)、第1の値R1(=100)の報酬R(報酬情報J15)が与えられている。つまり、学習部63は、基準画像データGDSに対応した配置状況の保持不可ワークを保持スペースの確保が可能に変位させるための最適なロボット2の行動パターンとして、第1手法を用いた行動パターンA1を学習したことになる。図7を参照して説明すると、学習部63は、第1手法を用いた行動パターンA1を規定する各行動要素を解析することによって、爪部261によって保持した一のワークW3の先端を保持不可ワークW2のどの位置に当接させて(当接位置CP)、どの方向にハンド部26が移動すれば(移動軌跡MT)、保持スペースの確保が可能に保持不可ワークW2を変位させることができるかを学習する。また、学習部63は、第1手法を用いた行動パターンA2,A3については、保持不可ワークの周囲に保持スペースを確保するには至らない行動パターンであることを学習したことになる。
In the learning result information JH1 illustrated in FIG. 9, the first method (displacement method information J11) is applied to a work that cannot be held in an arrangement state corresponding to the reference image data GDS represented by the reference image data information J12. This shows that the displacement operation of the
学習部63は、第1の値R1(=100)の報酬Rが与えられた行動パターン、すなわち、保持スペースが確保されるように保持不可ワークを変位させた行動パターンを認識した時点で学習処理を終了する。図9に示す例では、学習部63は、第1の値R1(=100)の報酬Rが与えられた、第1手法を用いた行動パターンA1を認識した時点で学習処理を終了する。このように、第1の値R1(=100)の報酬Rが与えられた行動パターンに基づくロボット2の変位動作が実行されたときには、保持不可ワークの周囲に保持スペースが確保され、当該ワークの爪部261による保持が可能となる。従って、保持不可ワークの周囲に保持スペースが確保された後、行動決定部9は、前述した既存の行動パターンを記憶部8から読み出すことによって、保持スペースが確保されたワークに対するロボット2の行動パターンを決定し(図10のステップa12)、その決定した行動パターンを制御装置4に向けて出力する(図10のステップa13)。これにより、制御装置4の制御によってロボット2は、ハンド部26によって容器CNから保持スペースが確保されたワークを取り出し、その取り出したワークをパレットPLに載置するという、連続的な生産動作を実行する。
When the
一方、第2の値R2(=10)又は第3の値R3(=0)の報酬Rが与えられた行動パターン、すなわち、保持不可ワークの周囲に保持スペースを確保するには至らない行動パターンを認識した場合、学習部63は、学習処理の回数が所定の学習回数に達したか否かを判定する(図10のステップa17)。第2の値R2(=10)又は第3の値R3(=0)の報酬Rが与えられた行動パターンの学習部63による認識が繰り返されて、所定の学習回数に達した場合、学習部63は、保持不可ワークの周囲に保持スペースの確保ができないと判断し、ワーク保持不可情報を出力する(図10のステップa18)。ワーク保持不可情報は、ハンド部26の爪部261によるワークの保持が不可能であることを表す情報である。学習部63によってワーク保持不可情報が出力された場合、第1手法を用いた行動パターンに基づくロボット2の変位動作の実行時において、爪部261に保持されていた一のワークをパレットPLに載置する動作が実行された後、ロボット2の生産動作が中断される。ロボット2の生産動作が中断されると、作業者は、容器CN内におけるワークの収容状況を確認し、ハンド部26による保持が不可能であると想定されるワークを移動させる等の処置を行えばよい。
On the other hand, an action pattern in which a reward R of the second value R2 (= 10) or the third value R3 (= 0) is given, that is, an action pattern that does not lead to securing a holding space around a non-holdable work. When learning is performed, the
なお、学習部63により生成された今回の学習結果を表す学習結果情報JH1は、次回以降のロボット2の変位動作の実行時に参照される。例えば、第1の値R1(=100)の報酬Rが与えられた行動パターンが登録された学習結果情報JH1が記憶部8に記憶されていることを想定する。記憶部8に記憶された学習結果情報JH1に登録されている基準画像データGDSにて表される配置状況と同一又は類似した配置状況の保持不可ワークの存在が判定部7によって判定された場合、学習部63による変位動作に関する学習処理は省略される。この場合、行動決定部9は、記憶部8に記憶された学習結果情報JH1に登録されている、第1の値R1(=100)の報酬Rが与えられた行動パターンを読み出すことによって、変位動作の実行時におけるロボット2の行動パターンを決定する。行動決定部9は、記憶部8から読み出したロボット2の変位動作時の行動パターンを制御装置4に向けて出力する。変位動作時の行動パターンが入力された制御装置4は、当該行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261による保持スペースが周囲に確保されるように保持不可ワークを変位させる。
The learning result information JH1 representing the current learning result generated by the
以上説明したように、ハンド部26の爪部261による次の保持候補となるワークが保持不可ワークであることが判定部7によって判定された場合、学習部63は、保持スペースが確保されるように保持不可ワークを変位させることが可能な、第1手法を用いたロボット2の行動パターンを学習する。これにより、学習部63は、ハンド部26の爪部261による保持が不可能とされたワークの保持を可能とする、第1手法を用いたロボット2の最適な行動パターンを学習することができる。そして、次回のロボット2の生産動作において、行動決定部9は、学習部63により生成された学習結果情報JH1に登録された、第1の値R1(=100)の報酬Rが与えられた行動パターンを、保持不可ワークをハンド部26によって保持可能とするための行動パターンとして決定する。この行動パターンに従ってロボット2が変位動作を実行することにより、ハンド部26の爪部261による保持が不可能とされたワークの周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークの爪部261による保持が可能となる。このため、保持不可ワークの存在に起因してロボット2の動作を停止させることを可及的に回避することができ、ハンド部26による容器CNからのワークの取り出し動作を継続させることができる。
As described above, when the determination unit 7 determines that the work to be held next by the
なお、第1手法を用いた行動パターンに基づくロボット2の変位動作において、ロボット2の行動パターンは、図7に例示されるものに限定されるわけではなく、例えば図11に示す行動パターンであってもよい。図11は、第1例の変位動作におけるロボット2の行動パターンの変形例を説明するための図である。
In the displacement operation of the
図11に示す例では、ハンド部26の爪部261によって容器CN内の一のワークW3を保持したときに、ワークW1,W2の周囲に保持スペースが確保されておらず、ワークW1,W2が保持不可ワークとされている。このため、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。なお、図11に示す例では、図7に示す例と同様に、保持不可ワークW1は容器CNの内面に近接して配置され、保持不可ワークW2は保持不可ワークW1の側方において当該保持不可ワークW1に近接して配置されている。このため、保持不可ワークW1,W2の周囲に保持スペースが確保されていない。
In the example illustrated in FIG. 11, when one work W3 in the container CN is held by the
第1手法を用いたロボット2の行動パターンとして、図11に例示される行動A4は、爪部261によって保持した一のワークW3の先端が容器CNの内面に近接して配置された保持不可ワークW1の長手方向一端面に当接(当接位置CP)した状態で、ハンド部26が移動(移動軌跡MT)するような行動パターンである。行動A4では、ハンド部26は、その移動途中において一のワークW3の先端の当接位置CPが保持不可ワークW1から保持不可ワークW2へ遷移するように、保持不可ワークW1,W2の並列方向に関して保持不可ワークW1から斜めに離れる方向に移動(移動軌跡MT)する。
As an action pattern of the
第1手法を用いた行動パターンA4(行動A4)に基づくロボット2の変位動作が実行されると、保持不可ワークW1及び保持不可ワークW2の双方のワークを変位させることが可能であり、少なくとも保持不可ワークW2については保持スペースが確保される程度に変位させることが可能である。
When the displacement operation of the
報酬設定部631は、上記のような、複数の保持不可ワークW1,W2を変位させ、少なくとも1つの保持不可ワークW2を保持スペースが確保される程度に変位させる行動パターンA4については、第1の値R1(=100)よりも大きな値の報酬Rを与えるようにしてもよい。
The
<変位動作の第2例について>
図12〜図14を参照して、変位動作の第2例について説明する。図12は、保持不可ワークを変位させる変位動作の第2例を説明するための図である。図13は、第2例の変位動作において学習部63によって生成される学習結果情報JH2を説明するための図である。図14は、第2例の変位動作に関する機械学習装置5の動作を示すフローチャートである。第2例の変位動作は、第2手法を用いた行動パターンに基づくロボット2の変位動作である。
<About the second example of the displacement operation>
A second example of the displacement operation will be described with reference to FIGS. FIG. 12 is a diagram for explaining a second example of the displacement operation for displacing the non-holdable work. FIG. 13 is a diagram illustrating the learning result information JH2 generated by the
状態観測部61は、ロボット2の状態が移行されるごとに変化する状態変数(ΔX,ΔY,ΔZ,p,d)に基づいて、ロボット2の状態が状態S2から状態S3へ移行されたことを観測する(図14のステップb1)。ロボット2の状態が状態S2から状態S3へ移行されたとき、判定部7は、撮像装置3から出力された基準画像データを取得する(図14のステップb2)。判定部7は、基準画像データに基づいて容器CN内での各ワークの収容状況を認識し、次の保持候補となるワークが保持不可ワークであるか否かを判定する(図14のステップb3)。
The
次の保持候補となるワークが保持不可ワークではないと判定部7によって判定された場合には、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,1)とされる。この場合、行動決定部9は、状態S3から状態S4へと移行させるための既存の行動パターンを記憶部8から読み出して制御装置4に向けて出力する。既存の行動パターンが入力された制御装置4は、当該既存の行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261によって保持された一のワークを容器CNから取り出す取り出し動作を実行する(図14のステップb5)。
When the determination unit 7 determines that the work to be the next holding candidate is not a work that cannot be held, the state variables (ΔX, ΔY, ΔZ, p, d) when the state of the
一方、次の保持候補となるワークが保持不可ワークであると判定部7によって判定された場合には、図12に示すように、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。図12に示す例では、ハンド部26の爪部261によって容器CN内の一のワークW3を保持したときに、ワークW1,W2の周囲に保持スペースが確保されておらず、ワークW1,W2が保持不可ワークとされている。なお、図12に示す例では、図7に示す例と同様に、保持不可ワークW1は容器CNの内面に近接して配置され、保持不可ワークW2は保持不可ワークW1の側方において当該保持不可ワークW1に近接して配置されている。このため、保持不可ワークW1,W2の周囲に保持スペースが確保されていない。
On the other hand, when the determination unit 7 determines that the work to be the next holding candidate is a work that cannot be held, as shown in FIG. 12, the state variable (ΔX, ΔY, ΔZ, p, d) are set to (0, 0, 0, 1, 0). In the example illustrated in FIG. 12, when one work W3 in the container CN is held by the
次の保持候補となるワークW1,W2が保持不可ワークであると判定部7によって判定された場合、保持不可ワークであるワークW1及びワークW2の少なくともいずれか一方のワークを、爪部261による保持スペースが周囲に確保されるように変位させる変位動作が実行される。変位動作の第2例においては、ロボット2は、図12に示すように、第2手法を用いた行動パターンに基づく変位動作によって保持不可ワークを変位させる。なお、第2手法は、前述したように、爪部261によって保持した一のワークW3をパレットPLに載置した後、ハンド部26が爪部261によって容器CNを保持した状態で移動することにより、容器CNの移動に応じて保持不可ワークを変位させる変位手法である。
When the determination unit 7 determines that the work W1 or W2 that is the next holding candidate is a work that cannot be held, the
行動観測部62は、第2手法を用いたロボット2の行動パターンを観測する(図14のステップb4)。図12に示す例では、第2手法を用いたロボット2の行動パターンとして、行動A1、行動A2及び行動A3の3種の行動パターンが示されている。行動A1は、ハンド部26が爪部261によって容器CNを保持した状態で、保持不可ワークW1,W2の並列方向に対して保持不可ワークW1,W2に近づくように傾斜する方向に、所定の移動速度パターンで移動(移動軌跡MT)するような行動パターンである。行動A2は、ハンド部26の移動時における加速度が行動A1よりも遅く、移動速度パターンが異なる以外は、行動A1と同様の行動パターンである。行動A3は、ハンド部26が爪部261によって容器CNを保持した状態で、保持不可ワークW1,W2の並列方向に対して保持不可ワークW1,W2から離れるように傾斜する方向に、所定の移動速度パターンで移動(移動軌跡MT)するような行動パターンである。
The
行動観測部62によって観測されるロボット2の行動パターンを規定する行動要素としては、前述の図5に示される、把持角θ、把持位置HP、第1軸2Aにおける回転角β1及び回転速度パターン、第2軸2Bにおける回転角β2及び回転速度パターン、第3軸2Cにおける回転角β3及び回転速度パターン、第4軸2Dにおける回転角β4及び回転速度パターン、第5軸2Eにおける回転角β5及び回転速度パターン、第6軸2Fにおける回転角β6及び回転速度パターンが含まれる。図5に示される各行動要素は、第2手法を用いたロボット2の行動パターンにおいて、爪部261が容器CNを保持する保持位置を決定付ける要素となり、ハンド部26の移動軌跡MTを決定付ける要素となり、ハンド部26の移動速度パターンを決定付ける要素となる。
The behavior elements that define the behavior pattern of the
第2手法を用いた行動パターンに基づく変位動作が完了すると、変位量観測部64は、撮像装置3から出力された、変位動作後の画像データを取得する(図14のステップb6)。変位動作後の画像データは、第2手法を用いたロボット2の行動パターンによって変位された後の保持不可ワークW1,W2に関する三次元位置情報を含む画像データとなる。変位量観測部64は、ロボット2による変位動作前における画像データであって、判定部7が保持不可ワークW1,W2の存否を判定するときに参照する基準画像データと、ロボット2による変位動作後における画像データとに基づいて、保持不可ワークW1,W2のワーク変位量を観測する(図14のステップb7)。
When the displacement operation based on the action pattern using the second method is completed, the displacement
図12に示す例では、第2手法を用いた行動パターンA1に基づくロボット2の変位動作後において、保持不可ワークW1及び保持不可ワークW2の双方のワークが変位し、少なくとも保持不可ワークW2は保持スペースが確保される程度に変位している。第2手法を用いた行動パターンA1に基づくロボット2の変位動作によって、少なくとも保持不可ワークW2が保持スペースの確保が可能に変位されると、ロボット2の状態が状態S31(変位動作後の状態)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,1)とされる。
In the example shown in FIG. 12, after the displacement operation of the
また、図12に示す例では、第2手法を用いた行動パターンA2に基づくロボット2の変位動作後において、保持不可ワークW1は殆ど変位していないが、保持不可ワークW2は保持スペースよりも小さい範囲で変位している。第2手法を用いた行動パターンA2に基づくロボット2の変位動作によって、保持不可ワークW2は変位したけれども保持スペースよりも小さい範囲の変位であるので、ロボット2の状態が状態S32(変位動作後の状態)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。
In the example shown in FIG. 12, after the displacement operation of the
また、図12に示す例では、第2手法を用いた行動パターンA3に基づくロボット2の変位動作後において、保持不可ワークW1及び保持不可ワークW2の双方のワークが殆ど変位していない。第2手法を用いた行動パターンA3に基づくロボット2の変位動作によって、保持不可ワークW1及び保持不可ワークW2の双方のワークが殆ど変位しておらず、その周囲に保持スペースが確保されていないので、ロボット2の状態が状態S33(変位動作後の状態)であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。
Further, in the example shown in FIG. 12, after the displacement operation of the
変位量観測部64によって保持不可ワークW1,W2のワーク変位量が観測されると、学習部63の報酬設定部631は、保持不可ワークW1,W2の少なくともいずれか一方のワーク(保持不可ワークW2)のワーク変位量が(閾値WDT×0.5)以上であるか否かを判定する(図14のステップb8)。更に、報酬設定部631は、保持不可ワークW2のワーク変位量が閾値WDT以上であるか否かを判定する(図14のステップb9)。報酬設定部631は、保持不可ワークW2のワーク変位量が所定の閾値WDT以上となるロボット2の行動パターン(図12の行動A1)に対しては、第1の値R1(例えば「100」)の報酬Rを与える(図14のステップb10)。報酬設定部631は、保持不可ワークW2のワーク変位量が(閾値WDT×0.5)以上且つ閾値WDT未満となるロボット2の行動パターン(図12の行動A2)に対しては、第1の値R1よりも小さい第2の値R2(例えば「10」)の報酬Rを与える(図14のステップb15)。報酬設定部631は、保持不可ワークW2のワーク変位量が(閾値WDT×0.5)未満となるロボット2の行動パターン(図12の行動A3)に対しては、第2の値R2よりも小さい第3の値R3(例えば「0:ゼロ」)の報酬Rを与える(図14のステップb14)。
When the displacement amount of the non-holdable works W1 and W2 is observed by the displacement
次に、学習部63の価値関数更新部632は、ロボット2の行動パターンの価値Q(s,a)を規定する価値関数を、上記式(1)の更新式を用いて更新する(図14のステップb11,b16)。
Next, the value
価値関数更新部632によって価値関数が更新されるごとに学習部63は、第2手法を用いて保持不可ワークW2を変位させる変位動作におけるロボット2の行動パターンの学習結果を表す学習結果情報JH2(図13)を生成する。学習部63によって生成された学習結果情報JH2は、記憶部8に記憶される。学習結果情報JH2は、前述した図9に示す学習結果情報JH1と同様に、例えば、変位手法情報J21と、基準画像データ情報J22と、行動パターン情報J23と、ワーク変位量情報J24と、報酬情報J25とが関連付けられた情報である。
Each time the value function is updated by the value
図13に例示される学習結果情報JH2においては、基準画像データ情報J22にて表される基準画像データGDSに対応した配置状況の保持不可ワークに対して、第2手法(変位手法情報J21)を用いた行動パターンA1,A2,A3(行動パターン情報J23)に基づくロボット2の変位動作が実行されたことが示されている。そして、第2手法を用いた行動パターンA1は、保持不可ワークのワーク変位量WD1が閾値WDT以上となり(ワーク変位量情報J24)、第1の値R1(=100)の報酬R(報酬情報J25)が与えられている。つまり、学習部63は、基準画像データGDSに対応した配置状況の保持不可ワークを保持スペースの確保が可能に変位させるための最適なロボット2の行動パターンとして、第2手法を用いた行動パターンA1を学習したことになる。図12を参照して説明すると、学習部63は、第2手法を用いた行動パターンA1を規定する各行動要素を解析することによって、爪部261によって容器CNのどの位置を保持し(保持位置)、ハンド部26がどの方向に、どのような移動速度パターンで移動(移動軌跡MT)すれば、保持スペースの確保が可能に保持不可ワークW2を変位させることができるかを学習する。また、学習部63は、第2手法を用いた行動パターンA2,A3については、保持不可ワークの周囲に保持スペースを確保するには至らない行動パターンであることを学習したことになる。
In the learning result information JH2 illustrated in FIG. 13, the second method (displacement method information J21) is applied to a work that cannot be held in an arrangement state corresponding to the reference image data GDS represented by the reference image data information J22. This shows that the displacement operation of the
学習部63は、第1の値R1(=100)の報酬Rが与えられた行動パターン、すなわち、保持スペースが確保されるように保持不可ワークを変位させた行動パターンを認識した時点で学習処理を終了する。図13に示す例では、学習部63は、第1の値R1(=100)の報酬Rが与えられた、第2手法を用いた行動パターンA1を認識した時点で学習処理を終了する。このように、第1の値R1(=100)の報酬Rが与えられた行動パターンに基づくロボット2の変位動作が実行されたときには、保持不可ワークの周囲に保持スペースが確保され、当該ワークの爪部261による保持が可能となる。従って、保持不可ワークの周囲に保持スペースが確保された後、行動決定部9は、前述した既存の行動パターンを記憶部8から読み出すことによって、保持スペースが確保されたワークに対するロボット2の行動パターンを決定し(図14のステップb12)、その決定した行動パターンを制御装置4に向けて出力する(図14のステップb13)。これにより、制御装置4の制御によってロボット2は、ハンド部26によって容器CNから保持スペースが確保されたワークを取り出し、その取り出したワークをパレットPLに載置するという、連続的な生産動作を実行する。
When the
一方、第2の値R2(=10)又は第3の値R3(=0)の報酬Rが与えられた行動パターン、すなわち、保持不可ワークの周囲に保持スペースを確保するには至らない行動パターンを認識した場合、学習部63は、学習処理の回数が所定の学習回数に達したか否かを判定する(図14のステップb17)。第2の値R2(=10)又は第3の値R3(=0)の報酬Rが与えられた行動パターンの学習部63による認識が繰り返されて、所定の学習回数に達した場合、学習部63は、保持不可ワークの周囲に保持スペースの確保ができないと判断し、ワーク保持不可情報を出力する(図14のステップb18)。学習部63によってワーク保持不可情報が出力された場合、第2手法を用いた行動パターンに基づくロボット2の変位動作の実行時において、爪部261による容器CNの保持を解除した後、ロボット2の生産動作が中断される。ロボット2の生産動作が中断されると、作業者は、容器CN内におけるワークの収容状況を確認し、ハンド部26による保持が不可能であると想定されるワークを移動させる等の処置を行えばよい。
On the other hand, an action pattern in which a reward R of the second value R2 (= 10) or the third value R3 (= 0) is given, that is, an action pattern that does not lead to securing a holding space around a non-holdable work. When learning is performed, the
なお、学習部63により生成された今回の学習結果を表す学習結果情報JH2は、次回以降のロボット2の変位動作の実行時に参照される。例えば、第1の値R1(=100)の報酬Rが与えられた行動パターンが登録された学習結果情報JH2が記憶部8に記憶されていることを想定する。記憶部8に記憶された学習結果情報JH2に登録されている基準画像データGDSにて表される配置状況と同一又は類似した配置状況の保持不可ワークの存在が判定部7によって判定された場合、学習部63による変位動作に関する学習処理は省略される。この場合、行動決定部9は、記憶部8に記憶された学習結果情報JH2に登録されている、第1の値R1(=100)の報酬Rが与えられた行動パターンを読み出すことによって、変位動作の実行時におけるロボット2の行動パターンを決定する。行動決定部9は、記憶部8から読み出したロボット2の変位動作時の行動パターンを制御装置4に向けて出力する。変位動作時の行動パターンが入力された制御装置4は、当該行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261による保持スペースが周囲に確保されるように保持不可ワークを変位させる。
The learning result information JH2 representing the current learning result generated by the
以上説明したように、ハンド部26の爪部261による次の保持候補となるワークが保持不可ワークであることが判定部7によって判定された場合、学習部63は、保持スペースが確保されるように保持不可ワークを変位させることが可能な、第2手法を用いたロボット2の行動パターンを学習する。これにより、学習部63は、ハンド部26の爪部261による保持が不可能とされたワークの保持を可能とする、第2手法を用いたロボット2の最適な行動パターンを学習することができる。そして、次回のロボット2の生産動作において、行動決定部9は、学習部63により生成された学習結果情報JH2に登録された、第1の値R1(=100)の報酬Rが与えられた行動パターンを、保持不可ワークをハンド部26によって保持可能とするための行動パターンとして決定する。この行動パターンに従ってロボット2が変位動作を実行することにより、ハンド部26の爪部261による保持が不可能とされたワークの周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークの爪部261による保持が可能となる。このため、保持不可ワークの存在に起因してロボット2の動作を停止させることを可及的に回避することができ、ハンド部26による容器CNからのワークの取り出し動作を継続させることができる。
As described above, when the determination unit 7 determines that the work to be held next by the
<変位動作の第3例について>
図15及び図16を参照して、変位動作の第3例について説明する。図15は、第3例の変位動作において学習部63によって生成される学習結果情報JH3を説明するための図である。図16は、第3例の変位動作に関する機械学習装置5の動作を示すフローチャートである。第3例では、機械学習装置5は、保持不可ワークを変位させる変位手法を切り替えながら、保持スペースの確保が可能に保持不可ワークを変位させる最適な行動パターンを学習する。
<About the third example of the displacement operation>
A third example of the displacement operation will be described with reference to FIGS. FIG. 15 is a diagram illustrating the learning result information JH3 generated by the
第3例によるロボット2の変位動作において試行される変位手法の種類、数、及び試行順位は、特に限定されるものではない。学習部63は、変位手法の種類、数、及び試行順位を、予め設定する。以下では、ロボット2の変位動作において、変位手法の試行順位が、前述の図6に例示される第3手法、第4手法、第2手法、第5手法、第6手法の順位に設定されている場合について説明する。
The type, number, and trial order of the displacement methods tried in the displacement operation of the
状態観測部61は、ロボット2の状態が移行されるごとに変化する状態変数(ΔX,ΔY,ΔZ,p,d)に基づいて、ロボット2の状態が状態S2から状態S3へ移行されたことを観測する(図16のステップc1)。ロボット2の状態が状態S2から状態S3へ移行されたとき、判定部7は、撮像装置3から出力された基準画像データを取得する(図16のステップc2)。判定部7は、基準画像データに基づいて容器CN内での各ワークの収容状況を認識し、次の保持候補となるワークが保持不可ワークであるか否かを判定する(図16のステップc3)。
The
次の保持候補となるワークが保持不可ワークではないと判定部7によって判定された場合には、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,1)とされる。この場合、行動決定部9は、状態S3から状態S4へと移行させるための既存の行動パターンを記憶部8から読み出して制御装置4に向けて出力する。既存の行動パターンが入力された制御装置4は、当該既存の行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261によって保持された一のワークを容器CNから取り出す取り出し動作を実行する(図16のステップc5)。
If the determination unit 7 determines that the work to be the next holding candidate is not a work that cannot be held, the state variables (ΔX, ΔY, ΔZ, p, d) when the state of the
一方、次の保持候補となるワークが保持不可ワークであると判定部7によって判定された場合には、ロボット2の状態が状態S3であるときの状態変数(ΔX,ΔY,ΔZ,p,d)が(0,0,0,1,0)とされる。
On the other hand, when the determination unit 7 determines that the work to be the next holding candidate is a work that cannot be held, the state variables (ΔX, ΔY, ΔZ, p, d) when the state of the
次の保持候補となるワークが保持不可ワークであると判定部7によって判定された場合、爪部261による保持スペースが周囲に確保されるように保持不可ワークを変位させる変位動作が実行される。変位動作の第3例においては、ロボット2は、まず、第3手法を用いた行動パターンに基づく変位動作によって保持不可ワークを変位させる試行を行う。なお、第3手法は、前述したように、爪部261によって保持した一のワークをパレットPLに載置した後、ハンド部26が爪部261を保持不可ワークに当接させた状態で移動することにより、当該保持不可ワークを変位させる変位手法である。
When the determination unit 7 determines that the work to be the next holding candidate is a work that cannot be held, a displacement operation is performed to displace the work that cannot be held so that a space for holding the
行動観測部62は、第3手法を用いたロボット2の行動パターンを観測する(図16のステップc4)。第3手法を用いた行動パターンに基づく変位動作が完了すると、変位量観測部64は、撮像装置3から出力された、変位動作後の画像データを取得する(図16のステップc6)。変位動作後の画像データは、第3手法を用いたロボット2の行動パターンによって変位された後の保持不可ワークに関する三次元位置情報を含む画像データとなる。変位量観測部64は、ロボット2による変位動作前における画像データであって、判定部7が保持不可ワークの存否を判定するときに参照する基準画像データと、ロボット2による変位動作後における画像データとに基づいて、保持不可ワークのワーク変位量を観測する(図16のステップc7)。
The
変位量観測部64によって保持不可ワークのワーク変位量が観測されると、学習部63の報酬設定部631は、保持不可ワークのワーク変位量が(閾値WDT×0.5)以上であるか否かを判定する(図16のステップc8)。更に、報酬設定部631は、保持不可ワークのワーク変位量が閾値WDT以上であるか否かを判定する(図16のステップc9)。報酬設定部631は、保持不可ワークのワーク変位量が所定の閾値WDT以上となるロボット2の行動パターンに対しては、第1の値R1(例えば「100」)の報酬Rを与える(図16のステップc10)。報酬設定部631は、保持不可ワークのワーク変位量が(閾値WDT×0.5)以上且つ閾値WDT未満となるロボット2の行動パターンに対しては、第1の値R1よりも小さい第2の値R2(例えば「10」)の報酬Rを与える(図16のステップc15)。報酬設定部631は、保持不可ワークのワーク変位量が(閾値WDT×0.5)未満となるロボット2の行動パターンに対しては、第2の値R2よりも小さい第3の値R3(例えば「0:ゼロ」)の報酬Rを与える(図16のステップc14)。
When the displacement amount of the non-holdable work is observed by the displacement
次に、学習部63の価値関数更新部632は、ロボット2の行動パターンの価値Q(s,a)を規定する価値関数を、上記式(1)の更新式を用いて更新する(図16のステップc11,c16)。
Next, the value
第3手法を用いた行動パターンに対して第3の値R3(=0)の報酬Rが与えられた場合、学習部63は、当該第3手法を用いた行動パターンに対して、基準回数(例えば「20」)連続して第3の値R3(=0)の報酬Rが与えられたか否かを判定する(図16のステップc17)。第3手法を用いた行動パターンに対して基準回数(=20)連続して第3の値R3(=0)の報酬Rが与えられた場合、学習部63は、この第3手法が保持不可ワークを変位させる適正度の低い変位手法であると判断し、変位手法を第3手法から次の試行順位の第4手法に切り替える(図16のステップc18)。なお、第4手法は、前述したように、爪部261によって保持した一のワークをパレットPLに載置した後、他の容器から取り出したワークWSを爪部261によって保持させ、ハンド部26がワークWSを保持不可ワークに当接させた状態で移動することにより、当該保持不可ワークを変位させる変位手法である。
When a reward R of a third value R3 (= 0) is given to the behavior pattern using the third method, the
学習部63は、学習処理の回数が所定の学習回数に達したか否かを判定し(図16のステップc19)、所定の学習回数に達していない場合にはステップc18において切り替えられた第4手法を用いた行動パターンに関する学習処理を、ステップc4に戻って上記の第3手法の場合と同様に行う。一方、所定の学習回数に達した場合、学習部63は、現時点までに試行してきた変位手法では保持不可ワークの周囲に保持スペースの確保ができないと判断し、ワーク保持不可情報を出力する(図16のステップc20)。学習部63によってワーク保持不可情報が出力された場合、ロボット2の生産動作が中断される。ロボット2の生産動作が中断されると、作業者は、容器CN内におけるワークの収容状況を確認し、ハンド部26による保持が不可能であると想定されるワークを移動させる等の処置を行えばよい。
The
以下では、所定の学習回数の範囲内で第3手法に続いて第4手法、第2手法、第5手法、第6手法の順番に、変位手法が試行されたものとして説明を続ける。 Hereinafter, the description will be continued assuming that the displacement technique has been tried in the order of the fourth technique, the second technique, the fifth technique, and the sixth technique within the range of the predetermined number of times of learning.
上記の第3手法を用いた行動パターンに対しては、基準回数(=20)連続して第3の値R3(=0)の報酬Rが与えられた。このため、学習部63は、第3手法が保持不可ワークを変位させる適正度の低い変位手法であると判断した。第3手法の次に試行された第4手法を用いた行動パターンに対しては、第3の値R3(=0)の報酬Rが基準回数よりも少ない「19」回連続して与えられ、第2の値R2(=10)の報酬Rが「1」回与えられたものとする。この場合、学習部63は、第3手法よりも第4手法の方が保持不可ワークを変位させる適正度は僅かに高いけれども、第1の値R1(=100)の報酬Rが与えられていないのであるから、保持スペースの確保が可能に保持不可ワークを変位させるには至っていないと判断する。このため、学習部63は、変位手法を第4手法から次の試行順位の第2手法に切り替える。なお、第2手法は、前述したように、爪部261によって保持した一のワークをパレットPLに載置した後、ハンド部26が爪部261によって容器CNを保持した状態で移動することにより、容器CNの移動に応じて保持不可ワークを変位させる変位手法である。
The reward R of the third value R3 (= 0) was given to the behavior pattern using the above-described third technique continuously for the reference number of times (= 20). Therefore, the
第4手法の次に試行された第2手法を用いた行動パターンに対しては、第3の値R3(=0)の報酬Rが基準回数よりも少ない「15」回連続して与えられ、その後、第1の値R1(=100)の報酬Rが与えられたものとする。この場合、学習部63は、第1の値R1(=100)の報酬Rが与えられた時点で保持不可ワークの周囲に保持スペースが確保されたと判断し、学習処理を終了する。
For the behavior pattern using the second method that has been tried next to the fourth method, the reward R of the third value R3 (= 0) is continuously given “15” times smaller than the reference number, Thereafter, it is assumed that the reward R of the first value R1 (= 100) has been given. In this case, the
第1の値R1(=100)の報酬Rが与えられた、第2手法を用いた行動パターンに基づくロボット2の変位動作が実行されたときには、保持不可ワークの周囲に保持スペースが確保され、当該ワークの爪部261による保持が可能となる。従って、保持不可ワークの周囲に保持スペースが確保された後、行動決定部9は、前述した既存の行動パターンを記憶部8から読み出すことによって、保持スペースが確保されたワークに対するロボット2の行動パターンを決定し(図16のステップc12)、その決定した行動パターンを制御装置4に向けて出力する(図16のステップc13)。これにより、制御装置4の制御によってロボット2は、ハンド部26によって容器CNから保持スペースが確保されたワークを取り出し、その取り出したワークをパレットPLに載置するという、連続的な生産動作を実行する。
When the displacement operation of the
上記のように、第2手法を用いた行動パターンに対しては第1の値R1(=100)の報酬Rが与えられたので、学習部63は学習処理を終了した。しかしながら、第2手法を用いた行動パターンは、第3の値R3(=0)の報酬Rが与えられた回数が「0;ゼロ」ではなく、基準回数よりは少ないものの「15」回連続して第3の値R3(=0)の報酬Rが与えられている。このため、学習部63は、第2手法については、判定部7によって取得された基準画像データにて表される、今回試行した配置状況の保持不可ワークを変位させるための変位手法として、最適な手法ではないと判断する。従って、今回試行した配置状況と同一又は類似した配置状況の保持不可ワークの存在が判定部7によって判定された場合、学習部63は、第2手法に対して次の試行順位の第5手法を用いた行動パターンに関する学習処理を実行する。なお、第5手法は、前述したように、爪部261によって保持した一のワークをパレットPLに載置した後、専用治具JGを爪部261によって保持させ、ハンド部26が専用治具JGを保持不可ワークに当接させた状態で移動することにより、当該保持不可ワークを変位させる変位手法である。
As described above, since the reward R of the first value R1 (= 100) is given to the action pattern using the second technique, the
第5手法を用いた行動パターンに対しては、第3の値R3(=0)の報酬Rが与えられた回数が「0;ゼロ」であり、第1の値R1(=100)の報酬Rが与えられたものとする。この場合、学習部63は、今回試行した配置状況の保持不可ワークを変位させるための変位手法として第5手法が最適な手法であると判断し、第1の値R1(=100)の報酬Rが与えられた時点で学習処理を終了する。学習部63は、今回試行した配置状況の保持不可ワークを変位させるための変位手法として第5手法が最適な手法であると判断したので、第5手法に対して次の試行順位に設定されていた第6手法については試行を未実施とする。
For the behavior pattern using the fifth method, the number of times the reward R of the third value R3 (= 0) is given is “0; zero”, and the reward of the first value R1 (= 100) is Let R be given. In this case, the
学習部63は、変位手法を切り替えながら保持不可ワークを変位させる変位動作におけるロボット2の行動パターンの学習結果を表す学習結果情報JH3(図15)を生成する。学習部63によって生成された学習結果情報JH3は、記憶部8に記憶される。学習結果情報JH3は、例えば、基準画像データ情報J31と、変位手法情報J32と、報酬情報J33と、報酬ゼロ連続回数情報J34と、修正係数情報J35とが関連付けられた情報である。
The
基準画像データ情報J31は、判定部7が保持不可ワークの存否を判定する際に参照した基準画像データGDSを表す情報である。変位手法情報J32は、学習部63によって設定された変位手法を表す情報である。図15に示す例では、変位手法情報J32として、試行順位の順に第3手法、第4手法、第2手法、第5手法及び第6手法が登録されている。報酬情報J33は、行動観測部62により観測されたロボット2の行動パターンに対して報酬設定部631が設定した報酬Rを表す情報である。図15に示す例では、第3手法に対しては第3の値R3(=0)の報酬Rが与えられ、第4手法に対しては第2の値R2(=10)の報酬Rが与えられ、第2手法及び第5手法に対しては第1の値R1(=100)の報酬Rが与えられたことが示されている。なお、第6手法については試行が未実施であるため、その旨を表す「未実施」が登録されている。
The reference image data information J31 is information representing the reference image data GDS that the determination unit 7 refers to when determining whether there is a work that cannot be held. The displacement method information J32 is information representing the displacement method set by the
報酬ゼロ連続回数情報J34は、変位手法情報J32にて表される変位手法を用いた行動パターンに基づくロボット2の変位動作の試行において、第3の値R3(=0)の報酬Rが与えられた連続回数を表す情報である。図15に示す例では、第3の値R3(=0)の報酬Rが与えられた連続回数は、第3手法が前記基準回数と同じ「20」であり、第4手法が「19」であり、第2手法が「15」であり、第5手法が「0」であることが示されている。なお、第6手法については試行が未実施であることを表す「未実施」が登録されている。
The reward zero continuous count information J34 is provided with a reward R of a third value R3 (= 0) in a trial of the displacement operation of the
修正係数情報J35は、変位手法情報J32にて表される変位手法の、保持不可ワークを変位させる適正度の指標となる修正係数εを表す情報である。修正係数情報J35にて表される修正係数εは、各変位手法の試行回数の基準となる前記基準回数「M」と、報酬ゼロ連続回数情報J34にて表される第3の値R3(=0)の報酬Rが与えられた連続回数「K」とに基づいて、「修正係数ε=(M−K)/M」の式に従って学習部63によって算出される。修正係数εは、第3の値R3(=0)の報酬Rが与えられた連続回数「K」が少ないほど大きくなる。つまり、修正係数εが大きくなるほど、保持不可ワークを変位させる適正度が高くなる。図15に示す例では、修正係数εは、第3手法が「0」であり、第4手法が「0.05」であり、第2手法が「0.25」であり、第5手法が「1」であることが示されている。なお、第6手法については試行が未実施であることを表す「未実施」が登録されている。学習部63によって算出された修正係数εは、上記式(1)で示される価値Q(s,a)の更新式の「ε」に反映される。なお、上記式(1)で示される価値Q(s,a)の更新式の「ε」は、学習部63によって修正係数εが算出されるまでは、「ε=1」とされる。
The correction coefficient information J35 is information indicating a correction coefficient ε which is an index of the appropriateness of displacing the non-holdable work in the displacement method represented by the displacement method information J32. The correction coefficient ε represented by the correction coefficient information J35 is based on the reference number “M” serving as a reference for the number of trials of each displacement method, and the third value R3 (= The
学習部63により生成された学習結果情報JH3は、次回以降のロボット2の変位動作の実行時に参照される。記憶部8に記憶された学習結果情報JH3に登録されている基準画像データGDSにて表される配置状況と同一又は類似した配置状況の保持不可ワークの存在が判定部7によって判定された場合、学習部63は、報酬情報J33及び修正係数情報J35を参照し、新たな学習処理が必要であるか否かを判断する。具体的には、学習部63は、変位手法情報J32にて表される変位手法ごとに、修正係数情報J35にて表される修正係数εを報酬情報J33にて表される報酬Rに乗算し、修正された修正報酬値(上記式(1)の「εR(s,a)」に相当する)を算出する。修正報酬値は、保持不可ワークを変位させる適正度の指標となる修正係数εを報酬Rに乗算した値であるので、変位手法ごとに与えられる適正度を加味した報酬であると言える。
The learning result information JH3 generated by the
学習部63は、学習結果情報JH3に基づき、修正報酬値が第1の値R1(=100)の報酬Rと同値の変位手法を認識した場合、すなわち、第1の値R1(=100)の報酬Rが与えられ、且つ修正係数εが「1」の変位手法(図15における第5手法が相当)を認識した場合、その変位手法が保持不可ワークを変位させるための最適な手法であると判断し、学習処理を省略する。この場合、行動決定部9は、記憶部8に記憶された学習結果情報JH3に登録されている第5手法を用いた行動パターンを、変位動作の実行時におけるロボット2の行動パターンとして決定する。行動決定部9は、決定した第5手法を用いた行動パターンを制御装置4に向けて出力する。変位動作時の行動パターンが入力された制御装置4は、当該行動パターンに基づいて、ロボット2の動作を制御する。制御装置4の制御によってロボット2は、爪部261による保持スペースが周囲に確保されるように保持不可ワークを変位させる。
The
また、第1の値R1(=100)の報酬Rが与えられ、且つ修正係数εが「1」の変位手法(図15における第5手法が相当)を認識した場合、上記のように学習処理を省略してもよいが、その認識した手法の試行回数が少ない場合は、再度学習処理を始めることでロバスト性を高めることもできる。学習部63は、認識した手法の試行回数が少ない場合には、その変位手法を、保持不可ワークを変位させるための最適な手法の候補(最適候補手法:図15の例では第5手法)であると判断し、その最適候補手法について再度学習処理を実行する。学習部63は、最適候補手法について再度学習処理を実行する際、その試行回数を予め設定しておき、設定された試行回数のうちの第1の値R1(=100)の報酬Rが与えられた回数の割合で評価して、修正係数εを算出するようにしてもよい。例えば、最適候補手法の試行回数を「3回」に設定し、基準画像データGDSにて表される配置状況と同一又は類似した配置状況の保持不可ワークの存在が判定部7によって「3回」判定された場合、学習部63は、その都度、保持不可ワークを変位させる変位手法として最適候補手法を選択し、第1の値R1(=100)の報酬Rが与えられた回数に応じて修正係数εを算出する。学習部63は、最適候補手法を「3回」試行し、「3回」とも第1の値R1(=100)の報酬Rが与えられた場合には、修正係数εを「1」に設定し、その最適候補手法とされていた変位手法が保持不可ワークを変位させるための最適な手法であると判断する。
In addition, when the reward R of the first value R1 (= 100) is given and the displacement method with the modification coefficient ε of “1” is recognized (the fifth method in FIG. 15 is equivalent), the learning process is performed as described above. May be omitted, but when the number of trials of the recognized method is small, robustness can be improved by starting the learning process again. When the number of trials of the recognized method is small, the
また、一旦例えば上述の図15における第5手法のように、ある変位手法が保持不可ワークを変位させるための最適な手法であると判断された後、記憶部8に記憶された学習結果情報JH3に登録されている基準画像データGDSにて表される配置状況と同一又は類似した配置状況の保持不可ワークの存在が判定部7によって判定された場合、学習部63は、図16に示す学習処理を繰り返して実行するようにしてもよい。この場合、図16のステップc4において最初に試行する変位手法として、図15における第5手法のように一旦最適な手法であると判断された手法を用いればよいが、その後、その手法に対して第1の値R1(=100)の報酬Rが与えられなかった場合には、例えば図15における第6手法等の他の変位手法を試行するようにしてもよい。すなわち、学習部63は、最適と判断する手法が変わることを許容してもよい。
Further, once it is determined that a certain displacement technique is the optimal technique for displacing the non-holdable work, for example, as in the above-described fifth technique in FIG. 15, the learning result information JH3 stored in the
なお、記憶部8に記憶された学習結果情報JH3に登録されている基準画像データGDSにて表される配置状況とは大きく異なる配置状況の保持不可ワークの存在が判定部7によって判定された場合、学習部63は、予め設定した試行順位に従って各変位手法を用いた行動パターンに基づくロボット2の変位動作を試行し、その行動パターンを学習する。
In the case where the determination unit 7 determines that there is a work that cannot be held in an arrangement state that is significantly different from the arrangement state represented by the reference image data GDS registered in the learning result information JH3 stored in the
以上説明したように、ハンド部26の爪部261による次の保持候補となるワークが保持不可ワークであることが判定部7によって判定された場合、学習部63は、保持スペースが確保されるように保持不可ワークを変位させることが可能な、最適な変位手法を学習するとともに、当該変位手法を用いたロボット2の行動パターンを学習する。これにより、学習部63は、ハンド部26の爪部261による保持が不可能とされたワークの保持を可能とする、最適な変位手法を用いたロボット2の最適な行動パターンを学習することができる。そして、次回のロボット2の生産動作において、行動決定部9は、学習部63により生成された学習結果情報JH3に基づいて最適な変位手法を用いた行動パターンを、保持不可ワークをハンド部26によって保持可能とするための行動パターンとして決定する。この行動パターンに従ってロボット2が変位動作を実行することにより、ハンド部26の爪部261による保持が不可能とされたワークの周囲に、爪部261による保持を可能とするための保持スペースが確保され、当該ワークの爪部261による保持が可能となる。このため、保持不可ワークの存在に起因してロボット2の動作を停止させることを可及的に回避することができ、ハンド部26による容器CNからのワークの取り出し動作を継続させることができる。
As described above, when the determination unit 7 determines that the work to be held next by the
なお、上記では、1つの変位手法を用いた行動パターンに基づく変位動作によって保持不可ワークを変位させる試行を行っているが、複数の手法が組み合わされた行動パターンに基づく変位動作を試行するようにしてもよい。この場合、例えば、専用治具JGを用いた第5手法と、容器CNを移動させる第2手法とが組み合わされた行動パターンに基づく変位動作の試行が考えられる。 In the above description, an attempt is made to displace a non-holdable work by a displacement operation based on an action pattern using one displacement method. However, a displacement operation based on an action pattern obtained by combining a plurality of methods is attempted. You may. In this case, for example, a trial of a displacement operation based on an action pattern in which the fifth technique using the dedicated jig JG and the second technique for moving the container CN are considered.
また、例えば、パレットPLに載置後のワークについて、ロボット2の変位動作に起因した傷等が発生しているかなどを検査し、その検査結果を加味した報酬Rを、ロボット2の変位動作に対応した行動パターンに与えるようにしてもよい。この場合、例えば、保持スペースの確保が可能に保持不可ワークを変位させ、且つ、傷等が発生しないような変位手法を用いた行動パターンに対しては、第1の値R1(=100)に所定値(例えば「1」)を加算した値の報酬Rを与えるようにすればよい。
Further, for example, the work after being placed on the pallet PL is inspected for any damage caused by the displacement operation of the
1 ロボットシステム
2 ロボット
26 ハンド部
3 撮像装置
4 制御装置
5 機械学習装置
6 学習処理部
61 状態観測部
62 行動観測部
63 学習部
64 変位量観測部
7 判定部
8 記憶部
9 行動決定部
Claims (5)
前記ハンド部が前記容器内の一のワークを保持する前又は保持したときに、前記容器内での各ワークの収容状況を認識し、前記ハンド部による次の保持候補となるワークが、前記ハンド部による保持を可能とするための保持スペースが周囲に確保されていない保持不可ワークであるかを判定する判定部と、
前記保持スペースが確保されるように前記保持不可ワークを変位させることが可能な変位手法を学習するとともに、当該変位手法を用いた前記ロボットの行動パターンを学習する学習部と、
前記学習部の学習結果に基づく前記ロボットの行動パターンを、前記保持不可ワークを前記ハンド部によって保持可能とするための行動パターンとして決定する行動決定部と、を備える、機械学習装置。 A machine learning device that learns the operation of a robot including a hand unit that takes out a plurality of works by holding the works from a container that accommodates the works in a bulk state,
Before or when the hand unit holds one work in the container, the hand unit recognizes the accommodation state of each work in the container, and the next work candidate to be held by the hand unit is the hand unit. A determination unit that determines whether or not a holding space for enabling holding by the unit is a non-holdable work that is not secured around;
A learning unit that learns a displacement method capable of displacing the non-holdable work so that the holding space is secured, and learns an action pattern of the robot using the displacement method.
A machine learning device comprising: a behavior determining unit that determines a behavior pattern of the robot based on a learning result of the learning unit as a behavior pattern for enabling the holding unit to hold the work that cannot be held.
前記学習部は、前記複数の手法が組み合わされた前記ロボットの行動パターンを学習する、請求項1に記載の機械学習装置。 The displacement method includes a plurality of different methods for displacing the non-holdable work,
The machine learning device according to claim 1, wherein the learning unit learns an action pattern of the robot in which the plurality of methods are combined.
前記学習部が学習する前記ロボットの行動パターンを規定する行動要素には、前記一のワークの前記保持不可ワークに対する当接位置を決定付ける要素と、前記ハンド部の移動軌跡を決定付ける要素とが含まれる、請求項1に記載の機械学習装置。 The displacement method is a method of displacing the non-retainable work by moving the hand unit in a state where the held one work is in contact with the non-retainable work,
The action elements that define the action pattern of the robot that the learning unit learns include an element that determines a contact position of the one work with the non-holdable work and an element that determines a movement locus of the hand unit. The machine learning device according to claim 1, which is included.
前記学習部が学習する前記ロボットの行動パターンを規定する行動要素には、前記ハンド部が前記容器を保持する保持位置を決定付ける要素と、前記ハンド部の移動軌跡を決定付ける要素と、前記ハンド部の移動速度を決定付ける要素とが含まれる、請求項1に記載の機械学習装置。 The displacement method is a method of displacing the non-holdable work by moving the hand unit while holding the container,
The behavior element that defines the behavior pattern of the robot that is learned by the learning unit includes an element that determines a holding position where the hand unit holds the container, an element that determines a movement trajectory of the hand unit, The machine learning device according to claim 1, further comprising: an element that determines a moving speed of the unit.
前記ロボットの動作を学習する、請求項1〜4のいずれか1項に記載の機械学習装置と、
前記機械学習装置の学習結果に基づいて、前記ロボットの動作を制御する制御装置と、を備える、ロボットシステム。 A robot having a hand unit that takes out a plurality of works by holding the works from a container that accommodates the works in a piled state,
The machine learning device according to any one of claims 1 to 4, which learns an operation of the robot,
And a control device that controls the operation of the robot based on a learning result of the machine learning device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018113672A JP7102241B2 (en) | 2018-06-14 | 2018-06-14 | Machine learning device and robot system equipped with it |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018113672A JP7102241B2 (en) | 2018-06-14 | 2018-06-14 | Machine learning device and robot system equipped with it |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019214112A true JP2019214112A (en) | 2019-12-19 |
JP7102241B2 JP7102241B2 (en) | 2022-07-19 |
Family
ID=68918254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018113672A Active JP7102241B2 (en) | 2018-06-14 | 2018-06-14 | Machine learning device and robot system equipped with it |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7102241B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021122924A (en) * | 2020-02-10 | 2021-08-30 | 住友重機械工業株式会社 | Work device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11300670A (en) * | 1998-04-21 | 1999-11-02 | Fanuc Ltd | Article picking-up device |
US20100274391A1 (en) * | 2007-12-15 | 2010-10-28 | Abb Ag | Determining the position of an object |
JP2015074065A (en) * | 2013-10-10 | 2015-04-20 | セイコーエプソン株式会社 | Robot and taking-out method |
JP2016132086A (en) * | 2015-01-22 | 2016-07-25 | 三菱電機株式会社 | Workpiece feeding device and method for calculating workpiece holding posture |
US20170028562A1 (en) * | 2015-07-31 | 2017-02-02 | Fanuc Corporation | Machine learning device, robot system, and machine learning method for learning workpiece picking operation |
JP2017030135A (en) * | 2015-07-31 | 2017-02-09 | ファナック株式会社 | Machine learning apparatus, robot system, and machine learning method for learning workpiece take-out motion |
US20180222046A1 (en) * | 2017-02-06 | 2018-08-09 | Fanuc Corporation | Workpiece picking device and workpiece picking method for improving picking operation of workpieces |
-
2018
- 2018-06-14 JP JP2018113672A patent/JP7102241B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11300670A (en) * | 1998-04-21 | 1999-11-02 | Fanuc Ltd | Article picking-up device |
US6328523B1 (en) * | 1998-04-21 | 2001-12-11 | Fanuc Ltd. | Apparatus for picking up articles using a vision controlled robot |
US20100274391A1 (en) * | 2007-12-15 | 2010-10-28 | Abb Ag | Determining the position of an object |
JP2015074065A (en) * | 2013-10-10 | 2015-04-20 | セイコーエプソン株式会社 | Robot and taking-out method |
JP2016132086A (en) * | 2015-01-22 | 2016-07-25 | 三菱電機株式会社 | Workpiece feeding device and method for calculating workpiece holding posture |
US20170028562A1 (en) * | 2015-07-31 | 2017-02-02 | Fanuc Corporation | Machine learning device, robot system, and machine learning method for learning workpiece picking operation |
JP2017030135A (en) * | 2015-07-31 | 2017-02-09 | ファナック株式会社 | Machine learning apparatus, robot system, and machine learning method for learning workpiece take-out motion |
US20180222046A1 (en) * | 2017-02-06 | 2018-08-09 | Fanuc Corporation | Workpiece picking device and workpiece picking method for improving picking operation of workpieces |
JP2018126802A (en) * | 2017-02-06 | 2018-08-16 | ファナック株式会社 | Workpiece take-out device and workpiece take-out method for improving take-out operation of workpiece |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021122924A (en) * | 2020-02-10 | 2021-08-30 | 住友重機械工業株式会社 | Work device |
JP7378309B2 (en) | 2020-02-10 | 2023-11-13 | 住友重機械工業株式会社 | working equipment |
Also Published As
Publication number | Publication date |
---|---|
JP7102241B2 (en) | 2022-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3357651B1 (en) | Control device, robot, and robot system | |
EP3357649A2 (en) | Control device, robot, and robot system | |
US20180222057A1 (en) | Control device, robot, and robot system | |
TW201830184A (en) | Control device, robot, and robot system | |
JP2022145915A (en) | Inference method, inference program, inference device, learning method, learning program, learning device, and model generation method | |
JP7191569B2 (en) | gripping device | |
EP3650181B1 (en) | Route output method, route output system and route output program | |
JP6931457B2 (en) | Motion generation method, motion generator, system and computer program | |
CN111684474A (en) | Arithmetic device, arithmetic method, and program thereof | |
JP7008136B2 (en) | Machine learning device and robot system equipped with it | |
Navarro-Gonzalez et al. | On-line knowledge acquisition and enhancement in robotic assembly tasks | |
CN111745640B (en) | Object detection method, object detection device, and robot system | |
JP2020082322A (en) | Machine learning device, machine learning system, data processing system and machine learning method | |
CN114080304B (en) | Control device, control method, and control program | |
CN115519536A (en) | System and method for error correction and compensation for 3D eye-hand coordination | |
JP7102241B2 (en) | Machine learning device and robot system equipped with it | |
JP7263987B2 (en) | Control device, control method, and control program | |
JP2019111604A (en) | Control device, robot and robot system | |
Kamon et al. | Learning visually guided grasping: a test case in sensorimotor learning | |
Lopez-Juarez et al. | On the design of intelligent robotic agents for assembly | |
Luo et al. | Robotic conveyor tracking with dynamic object fetching for industrial automation | |
JP7571760B2 (en) | 3D model generation system, generation method, and program | |
US20240198543A1 (en) | Automatic gripper fingertip design to reduce leftover in random bin picking applications | |
JP2023152472A (en) | System, method, and program for generating three-dimension model | |
JP2023073828A (en) | Workpiece takeout device, workpiece takeout method, program, and control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201210 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210907 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211028 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20220222 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220513 |
|
C60 | Trial request (containing other claim documents, opposition documents) |
Free format text: JAPANESE INTERMEDIATE CODE: C60 Effective date: 20220513 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20220524 |
|
C21 | Notice of transfer of a case for reconsideration by examiners before appeal proceedings |
Free format text: JAPANESE INTERMEDIATE CODE: C21 Effective date: 20220531 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220705 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220706 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7102241 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |