JP2021013996A - Control method of robot system, manufacturing method of articles, control program, recording medium, and robot system - Google Patents
Control method of robot system, manufacturing method of articles, control program, recording medium, and robot system Download PDFInfo
- Publication number
- JP2021013996A JP2021013996A JP2019130602A JP2019130602A JP2021013996A JP 2021013996 A JP2021013996 A JP 2021013996A JP 2019130602 A JP2019130602 A JP 2019130602A JP 2019130602 A JP2019130602 A JP 2019130602A JP 2021013996 A JP2021013996 A JP 2021013996A
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- robot
- priority
- robot system
- holding position
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 87
- 238000004519 manufacturing process Methods 0.000 title claims description 18
- 238000010801 machine learning Methods 0.000 claims abstract description 12
- 238000000605 extraction Methods 0.000 claims description 28
- 230000005484 gravity Effects 0.000 claims description 10
- 238000013461 design Methods 0.000 claims description 9
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 230000001174 ascending effect Effects 0.000 claims description 4
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 238000004364 calculation method Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 20
- 238000013527 convolutional neural network Methods 0.000 description 17
- 230000014759 maintenance of location Effects 0.000 description 16
- 238000003860 storage Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 12
- 238000001514 detection method Methods 0.000 description 7
- 238000009966 trimming Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000011960 computer-aided design Methods 0.000 description 3
- 238000003825 pressing Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Abstract
Description
本発明は、バラ積み状態の対象物の取り出しを行うロボットシステムの制御方法、物品の製造方法、生産システム、制御プログラム、記録媒体、およびロボットシステムに関する。 The present invention relates to a control method of a robot system for taking out objects in a loosely stacked state, a method of manufacturing an article, a production system, a control program, a recording medium, and a robot system.
従来より、部品が位置決めされておらず、トレーや平板上に乱雑に置かれた状態から部品の取り出しを行う、いわゆるバラ積み部品の取り出しを行う装置が知られている(例えば下記の特許文献1)。この種の取り出し装置は、例えば図17に示すように、広範囲の画像を取得する画像入力装置と、部品を取り出し所定の置き位置まで搬送するロボットマニピュレータなどにより構成される。
Conventionally, there has been known a device for taking out so-called loosely stacked parts in which the parts are not positioned and are randomly placed on a tray or a flat plate (for example,
この種の取り出し装置において、部品の取り出しを確実に成功させるには、例えば予めロボットマニピュレータの手先の取り出しハンドが、部品のどの部分を保持すべきか決定しておく必要がある。これは、ハンドが部品の保持動作を行う際に、部品の形状に応じた適切な位置を保持していなければ、部品がハンドから脱落したり、他の部品と干渉したりするためである。最適な部品の保持位置については、予め、仮想空間上でシミュレーションを行うことにより決定することが考えられる。 In this type of extraction device, in order to ensure successful extraction of parts, for example, it is necessary to determine in advance which part of the parts the hand extraction hand of the robot manipulator should hold. This is because, when the hand holds the part, if the hand does not hold an appropriate position according to the shape of the part, the part may fall out of the hand or interfere with other parts. It is conceivable that the optimum holding position of the component is determined in advance by performing a simulation in the virtual space.
しかしながら、現実のロボットマニピュレータでは、取り出しハンドが部品を保持する際に、保持するための外力が部品に加わる。そのために、取り出ししようとする部品の姿勢が崩れ、ロボットマニピュレータが保持に失敗してしまうことがある。この点に関しては、例えば、下記の特許文献2などに示されるように、実際に部品を操作する期間において、部品の取り出しに失敗した時の動作条件を学習する機能をロボットマニピュレータに実装しておくことが考えられる。
However, in a real robot manipulator, when the take-out hand holds the part, an external force for holding the part is applied to the part. As a result, the posture of the part to be taken out may be lost, and the robot manipulator may fail to hold it. Regarding this point, for example, as shown in
しかしながら、上述の特許文献2では、対象物である部品の姿勢を崩さずに保持できる部品保持位置を全網羅的に探索するため、失敗してはリトライする動作を繰り返すことになる。これにより、部品操作、例えば一つの部品の取り出しに要する一連の処理時間(=サイクルタイム)が長くなる可能性がある。
However, in the above-mentioned
これは、現実にロボットマニピュレータを動作させて行う方式の機械学習に特有の問題で、取り出しに失敗した際に、次回以降類似のバラ積み状態のパターンに対し失敗した保持位置を回避するような学習しか行われていないためである。特許文献2の制御は、単に失敗した位置をランダムに回避する学習に過ぎない。例えば、特許文献2の制御では、どの保持位置に回避すれば、外力に拘らず部品の姿勢を崩さずに保持できるか、といった情報は与えられていない。
This is a problem peculiar to machine learning in which the robot manipulator is actually operated, and when the extraction fails, learning that avoids the failed holding position for a pattern in a similar loose stacking state from the next time onward. This is because it is only done. The control of
そこで、本発明の課題は、部品取り出し装置などの生産機器において、実際の稼動後、短時間で取り出し成功率を高めてリトライ動作の発生頻度を減らし、サイクルタイムの延長を短縮することができるようにすることにある。 Therefore, an object of the present invention is to increase the success rate of extraction in a short time after the actual operation in a production device such as a parts extraction device, reduce the frequency of retry operations, and shorten the extension of the cycle time. To be.
上記課題を解決するため、本発明のロボットシステムの制御方法においては、仮想環境中で複数の仮想対象物のバラ積み状態を生成する仮想バラ積み状態生成工程と、仮想ロボット装置が前記仮想対象物を保持する保持位置を生成する部品保持位置候補生成工程と、バラ積み状態の仮想対象物に対し、仮想環境中で仮想ロボット装置に仮想対象物を取り出す動作を実行させる仮想部品保持動作実行工程と、バラ積み状態の仮想対象物に対して、前記仮想部品保持動作実行工程で複数回、異なる保持位置で、仮想ロボット装置に仮想対象物を取り出す動作を実行させた結果の機械学習により対象物の特定の位置姿勢から、その位置姿勢に対してロボット装置が取り得る複数の保持位置の優先順位を出力可能な学習済みモデルを生成する優先順位学習工程と、実際のバラ積み状態の対象物の位置姿勢と、前記優先順位学習工程が生成した前記学習済みモデルと、を用いて決定した保持位置によって、実際のロボット装置に対象物を取り出す取り出し動作を実行させるロボット制御工程と、前記ロボット制御工程が前記ロボット装置に実行させた取り出し動作の結果の機械学習により前記学習済みモデルの複数の保持位置の優先順位を更新する再学習を行う優先順位更新工程と、を含む構成を採用した。 In order to solve the above problems, in the control method of the robot system of the present invention, a virtual bulk stacking state generation step of generating a bulk stacking state of a plurality of virtual objects in a virtual environment and a virtual robot device are used for the virtual target. A component holding position candidate generation process for generating a holding position for holding a robot, and a virtual component holding operation execution process for causing a virtual robot device to take out a virtual object in a virtual environment for a virtual object in a separately stacked state. , The virtual object in the loosely stacked state is subjected to the operation of taking out the virtual object by the virtual robot device at different holding positions multiple times in the virtual component holding operation execution step. A priority learning process that generates a trained model that can output the priority of multiple holding positions that the robot device can take for that position / orientation from a specific position / orientation, and the position of the object in the actual loose stacking state. The robot control step of causing the actual robot device to execute the take-out operation of taking out the object and the robot control step based on the holding position determined by using the posture and the learned model generated by the priority learning step. A configuration including a priority update step of re-learning to update the priority of a plurality of holding positions of the trained model by machine learning of the result of the retrieval operation executed by the robot device is adopted.
上記構成によれば、実動作のみで機械学習を行うのではなく、仮想環境を用いて実際の取り出し動作の保持位置候補の決定に利用する学習済みモデルを生成する。また、この学習済みモデルは、実動作の部品取り出しの成否に応じて再学習される。そのため、上記構成によれば、部品取り出し装置などの生産機器において、実際の稼動後、短時間で取り出し成功率を高めてリトライ動作の発生頻度を減らし、サイクルタイムの延長を短縮することができる。 According to the above configuration, machine learning is not performed only by the actual operation, but a trained model used for determining the holding position candidate of the actual extraction operation is generated using the virtual environment. In addition, this trained model is retrained according to the success or failure of taking out the parts in the actual operation. Therefore, according to the above configuration, in a production device such as a parts take-out device, it is possible to increase the take-out success rate in a short time after the actual operation, reduce the occurrence frequency of the retry operation, and shorten the extension of the cycle time.
以下、添付図面を参照して本発明を実施するための形態につき説明する。なお、以下に示す構成はあくまでも一例であり、例えば細部の構成については本発明の趣旨を逸脱しない範囲において当業者が適宜変更することができる。また、本実施形態で取り上げる数値は、参考数値であって、本発明を限定するものではない。 Hereinafter, embodiments for carrying out the present invention will be described with reference to the accompanying drawings. The configuration shown below is merely an example. For example, a person skilled in the art can appropriately change the detailed configuration without departing from the spirit of the present invention. Further, the numerical values taken up in the present embodiment are reference numerical values and do not limit the present invention.
図1は、本実施形態に係るロボットシステム、特に部品取り出し装置1として構成されたロボットシステムの一実施形態を示す概略図である。部品取り出し装置1は、計算部100と学習部200と、実際の装置で部品の取り出しを行うロボットマニピュレータ11と、ロボットマニピュレータ11の部品取り出し結果を検出する取り出し結果検出部15により構成されている。計算部100は、仮想空間上で仮想のバラ積み状態の部品に対し、保持位置候補の優先順位づけを決定する機能を有する。学習部200は、計算部100で複数回試行した計算結果を元に、実際のバラ積み状態の部品からロボットマニピュレータ11が部品を取り出す際の部品保持位置の優先順位を決定する機能を有する。
FIG. 1 is a schematic view showing an embodiment of a robot system according to the present embodiment, particularly a robot system configured as a
図1のロボットシステムのロボットマニピュレータ11は、例えば図17に示すような形態で、物品を生産する生産ライン(生産システム)に配置することができる。図17のロボットマニピュレータ11は、他のコンベヤなどの搬送手段(不図示)によって配送される。そして、平板(例えば部品供給トレイ)14上にランダムにバラ積みで積載された部品13を1つずつ取り出して、ヤトイ150(治具)上に配置し、他の生産機器により実行される製造工程に引き渡す。
The
ここで、図18に図1の計算部100、学習部200などを構成する制御系の具体的なハードウェア構成の一例を示しておく。同図のような制御系は、例えばいわゆるPCフォームの実装形態で実現できる。
Here, FIG. 18 shows an example of a specific hardware configuration of the control system constituting the
図18の制御系は、主制御手段としてのCPU1601、記憶装置としてのROM1602、およびRAM1603を備えたPCハードウェアなどによって構成することができる。ROM1602には、本実施形態の制御手順を実現するためのCPU1601の制御プログラムや定数情報などを格納しておくことができる。また、RAM1603は、その制御手順を実行する時にCPU1601のワークエリアなどとして使用される。また、図18の制御系には、外部記憶装置1606が接続されている。外部記憶装置1606は、本発明の実施には必ずしも必要ではないが、HDDやSSD、ネットワークマウントされた他のシステムの外部記憶装置などから構成することができる。
The control system of FIG. 18 can be configured by a
本実施形態の演算処理、例えば計算部100や学習部200の処理を実現するためのCPU1601の制御プログラムは、上記の外部記憶装置1606やROM1602(例えばEEPROM領域)のような記憶部に格納しておく。その場合、本実施形態の制御手順を実現するためのCPU1601の制御プログラムは、ネットワークインターフェース1607(NIF)を介して、上記の各記憶部に供給し、また、新しい(別の)プログラムに更新することができる。あるいは、後述の制御手順を実現するためのCPU1601の制御プログラムは、各種の磁気ディスクや光ディスク、フラッシュメモリなどの記憶手段と、そのドライブ装置などを経由して、上記の各記憶部に供給し、また、その内容を更新することができる。本実施形態の制御手順を実現するためのCPU1601の制御プログラムを格納した状態における各種の記憶手段、記憶部、ないし記憶デバイスは、本発明の制御手順を格納したコンピュータ読み取り可能な記録媒体を構成することになる。
The control program of the
ネットワークインターフェース1607は、例えばIEEE 802.3のような有線通信、IEEE 802.11、802.15のような無線通信による通信規格を用いて構成することができる。CPU1601は、ネットワークインターフェース1607を介して、他の装置1104とデータ通信することができる。この他の装置1104は、例えば、物品の製造に係るコントローラや統轄制御装置、あるいは他の管理サーバなどに相当する。図1のロボットマニピュレータ11や、生産ラインに配置された他の生産機器との通信も、ネットワークインターフェース1607を介して行うことができる。
The
また、図18の制御装置は、ユーザインターフェース装置400(UI装置)を備える。ユーザインターフェース装置400としては、LCDディスプレイ、キーボード、ポインティングデバイス(マウス、ジョイスティックなど)などから成るGUI装置を配置してもよい。このようなユーザインターフェース装置400を介して、各種演算処理の進行状況をユーザに報知する、あるいは、後述の処理を制御する各種パラメータの設定などを行うことができる。また、このユーザインターフェース装置400は、後述の保持位置候補のユーザ指定や、各種ユーザ通知、あるいは処理の進行に関するユーザ指令の入力手段などとして用いることができる。
Further, the control device of FIG. 18 includes a user interface device 400 (UI device). As the
(計算部)
図2に仮想空間(仮想環境)で、計算部100が実行する、特定のバラ積み形態と、それに対応する部品の保持位置の優先順位を決定する処理の流れを示す。図2の処理では、まずステップS101で、仮想バラ積み状態生成部101により、仮想空間上で部品(仮想対象物)のバラ積み状態を生成する(仮想バラ積み状態生成工程)。
(Calculation department)
FIG. 2 shows a flow of processing executed by the
この仮想空間で仮想対象物として生成される部品は、当然ながら実際の生産ラインでロボットマニピュレータ11が取り扱う対象物の部品に対応する。例えば、仮想空間で生成される仮想対象物としての部品と、現実の部品とは、同じ形状、サイズ、重量を有する。この仮想部品は、実際の生産処理においてロボットマニピュレータ11が取り扱う部品の設計データから、例えばCAD(Computer Aided Design)などを用いて生成することができる。仮想バラ積み状態のために生成する部品の個数Nは自由に設定することができる。以下では説明を容易にするため、主にN=2、即ち2個の部品のバラ積み状態を例に説明する。
The parts generated as virtual objects in this virtual space naturally correspond to the parts of the objects handled by the
ステップS101のバラ積み状態の生成では、図3(A)に示すように、実際に取り出しを行う部品と同じ形状、重量、材質の部品を仮想空間上で生成し、それぞれ固定部品130、および移動部品131とする。移動部品131は固定部品130の、上部に重ねて置かれた状態である。
In the generation of the loosely stacked state in step S101, as shown in FIG. 3A, parts having the same shape, weight, and material as the parts to be actually taken out are generated in the virtual space, and the fixed
図3(B)に固定部品130、および移動部品131の配置関係を示す。固定部品130の重心位置G0は仮想空間の原点Oに配置され、移動部品131の重心位置G1は、固定部品130の重心位置G0から、Δx、Δyずらした位置で配置されている。この時Δx、Δyに対する拘束条件を下式(1)に示す。
FIG. 3B shows the arrangement relationship between the fixed
上記表現に基づき、移動部品131の重心位置G1を(Δx、Δy)、(−Δx、Δy)、(Δx、−Δy)、(−Δx、−Δy)のように配置すると、全部でn×mパターンのバラ積み配置パターンを得ることができる。さらに、それぞれの配置において、移動部品131を図3(B)に示されるx−y平面上で下式(4)のように360度をk分割したΔθ分だけ回転させると、全部でn×m×kパターンのバラ積み配置パターンを得ることができる。例えば、n=10,m=10,k=12の場合は、全部で1200パターンのバラ積み配置パターンを得ることができる。
Based on the above expression, if the center of gravity position G1 of the moving
以上のような演算処理によって、仮想バラ積み状態生成部101は部品の個数がN=3以上に関しても、同様の手法でバラ積み状態を生成することができる。例えばN=3の場合、そのバラ積み配置状態(パターン)は、図3(D)に示すように、移動部品131の上に更に移動部品132を配置して成る。この時、移動部品131を固定部品と見立てて、移動部品132を上述と同様の手法で移動させると、n×m×kを得ることができ、固定部品130と移動部品131の配置パターンと組み合わせると、合計(n×m×k)2パターンの配置を得ることができる。もし、部品の個数がNであれば、再帰的に計算を繰り返すことになるため、配置パターンの数は下式(5)で示すように部品・パターン数の(N−1)乗になる。
By the above arithmetic processing, the virtual bulk stacking
次に、図2のステップS102では、部品保持位置候補生成部102により、ロボットマニピュレータ11(仮想ロボット)のハンド12が部品を保持する時の保持位置候補を出力する。図3(E)に示されるように、保持位置候補H1〜H4は、ハンド12と部品の接触面が一定の面積以上となるように部品の表面に複数点設けられる。例えば、ハンド12に吸着パッド(吸着ヘッド)を用いる場合、吸着パッドと部品の面が間隙なく密着できる面を保持位置候補とする。吸着パッド(吸着ヘッド)による保持では、部品の凹凸面や透孔の位置は、吸着パッドと部品に間隙ができるため、保持位置候補として好ましくない。
Next, in step S102 of FIG. 2, the component holding position
これらの保持位置候補は、例えばハンド12の設計を行う際に設計者により決定され、部品保持位置候補生成部102はそれに基づき、保持位置候補を順次出力する。部品保持位置候補生成部102は、例えば、実際の対象物である部品の設計情報に基づき、その重心位置の周囲に、その対象物に対する複数の保持位置の候補を配置する。この保持位置の候補の生成の細部の態様は、下記のように任意である。
These holding position candidates are determined by the designer when, for example, designing the
なお、部品保持位置候補生成部102が実行する部品保持位置候補生成工程では、実際の部品の設計情報に基づき、学習済みモデルで優先順位を付与する対象物に対する複数の保持位置の候補を生成することができる。あるいは、ユーザインターフェース装置400を介してユーザが指定した保持位置に基づき、対象物に対する複数の保持位置の候補を生成するようにしてもよい。その場合、実際の対象物の設計情報に基づき、ユーザインターフェースを介してユーザが指定した保持位置の利用可能性を判断し、ユーザが指定した保持位置を利用できない場合、その旨をユーザに報知する構成を取ってもよい。例えば、吸着パッドを用いるケースでは、透孔や段差の位置など、エア漏れの起きそうな位置は、実際の対象物の設計情報と照合することができる。そして、そのような適切でない保持位置をユーザが指定していないかどうかをチェックすることができる。
In the component holding position candidate generation step executed by the component holding position
次に、図2のステップS103では、ステップS102で生成された保持位置候補の中から一つだけ保持位置を選択する。この選択処理は、後述するステップS107で全ての保持位置候補が選択完了するまで行われる。 Next, in step S103 of FIG. 2, only one holding position is selected from the holding position candidates generated in step S102. This selection process is performed until all the holding position candidates are selected in step S107, which will be described later.
続いて、ステップS104では、仮想空間上においてステップS101で生成されたバラ積み状態の部品に対し、仮想部品状態認識部103による認識を行う。図4(A)に示される通り、仮想空間上の座標系において、図示するZ軸に沿って部品表面の高さ情報をx−y平面上にプロットしていくと、図4(B)に示すような点群データを得ることができる。このような点群データは、「画素データ+高さ情報」を保持できる、例えばTIFF(Tagged Image File Format)形式などの画像データフォーマットを用いて例えばRAM1603(図18)などの記憶装置に記録しておく。
Subsequently, in step S104, the virtual component
さらに、この画像データは、後述する認識部10の画像データとの整合性のため、最上段の移動部品(図3(D)の例では移動部品132)の重心位置を中心に部品の外形が含まれるようにトリミング処理して記録する。トリミングの際には、図3(C)にWx、Wyで示すように、例えば部品外形の2倍のサイズが画面内に収まる画素数など固定値として設定し、縦横比も任意の定数を設定する。
Further, in order to make the image data consistent with the image data of the
次に、ステップS105では、図1の仮想部品取り出し動作実行部104により、仮想環境中で実際のロボットマニピュレータ11を模擬する仮想ロボットにより部品の保持動作を実行させる(仮想部品保持動作実行工程)。ロボットマニピュレータ11をシミュレートする仮想ロボットはロボットマニピュレータ11の設計情報などを用いてモデル化することができる。この仮想ロボットによる仮想環境中での取り出し動作では、図4(D)に示すように、仮想上の部品の保持動作では、複数の保持候補中の一つに対し、実際にロボットマニピュレータ11が部品を保持する際に部品にかかると想定される外力を仮想的に付与する。この手順では、部品同士の摩擦力や垂直抗力、また部品と設置面の摩擦力や垂直抗力を考慮する必要があり、例えば、CAE(Computer Aided Engineering)などの計算機支援ツールを用いて計算を行うことができる。
Next, in step S105, the virtual component retrieval
また、ロボットマニピュレータの先端に取り付けられたハンドが部品を保持する際にかかる力のかけ方については、図5(A)に示すように、ロボットマニピュレータ11の先端に取り付けられたハンド12の形状に応じて適宜設定する。例えば、ハンド12に吸着式の吸着パッドを採用する場合、ハンド12の力の方向と大きさは、ハンド12と部品が接触する接触面の法線方向から部品の押し付け方向の向きに最大5N、などと設定することができる。また、ハンド12が力を印加する面積はその吸着パッドの面積に等しく、押し付けストローク量は1mm、などと設定することができる。同様に、同図(B)、(C)に示すような吸着式以外の外形把持方式(121)や内径把持方式(122)のハンドの場合も、力をかける大きさと向き、面積、押し付けストローク量をそれぞれ設定する。
Further, as shown in FIG. 5A, the method of applying the force applied when the hand attached to the tip of the robot manipulator holds the parts is in the shape of the
次に、図2のステップS106では、ステップS104と同様に、仮想部品状態認識部103により、ステップS105で仮想的な外力を付与した後の部品の位置を認識し、仮想部品移動量計算部105によって取り出し動作の前後の部品の移動量を計算する。仮想部品移動量計算部105は、ステップS104、ステップS106で認識した仮想空間上のx−y−z座標系の部品の位置情報から、それぞれ部品の重心位置を求め、重心位置のx方向、y方向、z方向の変移Δを例えば下式(6)のように計算し、記録しておく。
Next, in step S106 of FIG. 2, similarly to step S104, the virtual component
次に、図2のステップS107では、ステップS102で生成された全保持位置候補に対し、ステップS103〜ステップS106の試行が完了したかを確認する。もし、生成された全保持位置候補に対するステップS103〜ステップS106の試行が未完了であれば、ステップS107からS103に戻り、未試行の保持位置候補を選択し、ステップS103〜ステップS106の処理を繰り返す。もし、生成された全保持位置候補に対するステップS103〜ステップS106の試行が完了であれば、ステップS107からS108へ進む。 Next, in step S107 of FIG. 2, it is confirmed whether the trials of steps S103 to S106 have been completed for all the holding position candidates generated in step S102. If the trials of steps S103 to S106 for all the generated holding position candidates are not completed, the process returns from steps S107 to S103, the untried holding position candidates are selected, and the processes of steps S103 to S106 are repeated. .. If the trials of steps S103 to S106 for all the generated holding position candidates are completed, the process proceeds from steps S107 to S108.
ステップS108では、全保持位置候補に対し、式(6)で計算されたΔに基づき、優先順位決定部106で優先順位の決定を行う。優先順位を決定する際には、図6(A)に図示されるように、例えばステップS101でされたバラ積み状態のパターン1に対し、保持位置候補をΔで昇順ソートを行い、Δが小さいほど優先順位が高いものと定義する。この時、Δが同値となる保持位置候補がある場合は、保持位置候補の番号が小さいほうを優先順位が高いものとする。このような優先順位決定は、部品を仮想的に保持した時に計算される移動量(Δ)が小さいほど安定的な保持、取り出しが行える、という推論に基づく。
In step S108, the priority
図2のステップS109では、ステップS108で計算した優先順位のソート計算結果を、RAM1603(図18)などの記憶装置に記録しておく。次に、ステップS110では、ステップS101で生成される全配置パターンに対し、S101〜S109の試行が完了したか確認する。もし、未完了であれば、ステップS101に戻り、未試行のバラ積み状態のパターンを生成し、S102〜S109の処理を実行する。もし、完了であれば計算部100の処理フローは終了となる。この処理フロー終了の時点で、図6(B)に示されるように、全バラ積み状態のパターンに対し、保持位置候補の優先順位を決定したリストが出力されることになる。このリストは、学習部200の図示しない記憶装置に保存される。
In step S109 of FIG. 2, the sort calculation result of the priority calculated in step S108 is recorded in a storage device such as RAM 1603 (FIG. 18). Next, in step S110, it is confirmed whether the trials of S101 to S109 have been completed for all the arrangement patterns generated in step S101. If it is not completed, the process returns to step S101, a pattern in an untried bulk stacking state is generated, and the processes of S102 to S109 are executed. If completed, the processing flow of the
(学習部)
図1を参照して、対象部品の位置姿勢を記録した画像から、その対象部品の保持位置候補の優先順位リストを導出するのに用いる学習済みモデルを生成する学習部200の構成につき説明する。学習部200は、優先順位学習部201、優先順位予測部202、優先順位更新部203により構成されている。まず、優先順位学習部201は、膨大な入力データと出力データの組み合わせから両者の関係性を統計的に分析する。そして、一定のルールをモデル化して学習済みモデルを得る(優先順位学習工程)、いわゆる機械学習の機能を備えている。
(Learning Department)
With reference to FIG. 1, a configuration of a
機械学習には、入出力データの関係が既知の訓練データから学習済みモデルを算出する「教師あり学習」と、出力すべきものが決まっていない状態で、入力データに共通する一定のルールをモデル化する「教師なし学習」と、がある。また、現在の入力データから次に出力すべき内容を決定する「強化学習」なども知られている。本実施形態で用いる機械学習は、入出力データが既知のデータセット(学習データ)からモデルを算出する「教師あり学習」である。 Machine learning includes "supervised learning," which calculates a trained model from training data whose input / output data relationships are known, and models certain rules that are common to input data when what should be output has not been decided. There is "unsupervised learning". In addition, "reinforcement learning" that determines the content to be output next from the current input data is also known. The machine learning used in this embodiment is "supervised learning" in which a model is calculated from a data set (learning data) in which input / output data is known.
優先順位学習部201の「教師あり学習」では、教師データとして、入力データにステップ104の仮想部品状態認識部103により得られた画像データを用い、出力データにステップ108で得られた保持位置候補の優先順位を用いる(図6(B))。このような画像データを入力とする「教師あり学習」を行う場合には、例えば、ディープラーニングの1つとして知られるCNN(疊み込みニューラルネットワーク)のようなニューラルネットワークを用いることができる。このCNN(疊み込みニューラルネットワーク)は、仮想対象物の特定の位置姿勢と、仮想ロボット装置が取り得る複数の保持位置の優先順位と、を関係付ける学習済みモデルを構成する。このような学習済みモデルを用いると、対象物の特定の位置姿勢から、その位置姿勢に対してロボット装置が取り得る複数の保持位置の優先順位を出力可能である。
In the "supervised learning" of the
本実施形態では、例えば図7に示すようなCNN(コンボリューショナルニューラルネットワーク)を用いるが、他の形態のCNNを用いることも考えられる。図7のCNNは、学習済みモデルとして入力部の画像データから、出力部の保持位置候補の優先順位のリストへ到達できるようなネットワークを構成する。ネットワークは、入力部の画像データを処理する複数段の疊み込み層、プーリング層、ドロップアウト層によって構成される。このような優先順位学習部201を用いることで、画像データと保持位置候補の優先順位の関係性をモデル化することができる。
In this embodiment, for example, a CNN (convolutional neural network) as shown in FIG. 7 is used, but other forms of CNN may also be used. The CNN of FIG. 7 constitutes a network that can reach the list of priority of the holding position candidates of the output unit from the image data of the input unit as a trained model. The network is composed of a plurality of stages of a squeeze layer, a pooling layer, and a dropout layer that process image data of an input unit. By using such a
図2の優先順位リスト生成と、上記の優先順位学習部201(学習部200)による仮想環境を用いた学習済みモデルの機械学習(優先順位学習工程)が終了すると、その旨をユーザインターフェース装置400を介してユーザに通知する。この通知は、文字表示や音声表示などによって行うことができる。仮想環境を用いて学習済みモデルを生成した後は、実際のロボット制御による取り出し動作の試行を行うことができる。そこで、さらにユーザインターフェース装置400を介してロボット制御部による取り出し動作を実行可能である旨をユーザに通知することができる。その場合、ユーザインターフェース装置400は、ロボット制御部による取り出し動作を指令するユーザ操作を入力するよう構成することもできる。この取り出し動作を指令するユーザ操作は、キーボード操作、ポインティングデバイスの操作、音声入力などによって行えるよう、ユーザインターフェース装置400を構成しておくことができる。
When the priority list generation of FIG. 2 and the machine learning (priority learning process) of the trained model using the virtual environment by the priority learning unit 201 (learning unit 200) are completed, the
仮想環境を用いて学習済みモデルを生成した後は、実際のロボット制御による取り出し動作の試行を行うことができる(ロボット制御工程)。この実取り出し動作において、優先順位予測部202では、優先順位学習部201で計算された学習済みモデルを用いて、実際の装置でロボットマニピュレータ11が部品を取り出す際の保持位置の優先順位の予測を行う。この優先順位の予測では、入力データには、認識部10により取得される、実際の装置におけるバラ積み状態の部品の画像データを用いる。ここで用いる画像データとは、例えば仮想部品状態認識部103で得られるものと同等の3次元情報を含む点群データである。
After the trained model is generated using the virtual environment, it is possible to try the extraction operation by the actual robot control (robot control process). In this actual retrieval operation, the
このため、認識部10(図1)は、部品の位置姿勢を反映した3次元情報を得られるよう構成する必要がある。例えば、認識部10は、上記のような3次元情報を含む点群データを得られる3次元測定手段として、ステレオカメラを用いて構成することができる。あるいは、認識部10には、ステレオカメラに換えて、単カメラとプロジェクタを組み合わせた3次元計測機を用いてもよい。
Therefore, the recognition unit 10 (FIG. 1) needs to be configured to obtain three-dimensional information reflecting the position and orientation of the parts. For example, the
図8(A)は、実際のロボット制御に必要な、認識部10による画像データの取得処理の流れを示している。図8(A)の処理は、図7のように上記の学習済みとなっている学習済みモデルを用いて実際にロボット制御を行って部品を取り出す時に実行される。
FIG. 8A shows a flow of image data acquisition processing by the
図8(A)のステップS201では、認識部10を構成する例えばステレオカメラにより、撮像処理を行い、ステップS202で3次元測定の処理を実行し、図4(B)と同等の形式の3次元点群データを生成する。ステップS203では、生成された3次元点群データを用いて撮像されている部品を認識する。この部品認識には、3DCADモデルを用いたテンプレートマッチングや、濃淡値ベースの正規化相互相関マッチングなどの手法を用いることができる。これにより、取り出し対象の部品の位置姿勢を認識する。
In step S201 of FIG. 8 (A), an imaging process is performed by, for example, a stereo camera constituting the
ステップS204では、ステップS203で複数の部品が認識された際に取り出し対象の部品を決定する。図8(B)に示されるように、2つの対象部品134、135(の重なり)が取り出し対象として認識された場合、部品同士の重なりや干渉関係をチェックし、ロボットマニピュレータ11にとって最も取り出し易い部品が決定される。例えば、図8(B)の場合、部品同士の重なり面積が最も小さい部品を優先的に取り出すには、対象部品135よりも、対象部品134の方が部品同士の重なり面積が小さいため、対象部品134を選択する。その他の対象部品の選択の手法としては、3次元情報に含まれる高さ情報を利用して、ランダムに配置されたバラ積み状態の部品の最上部にある部品を優先したり、マッチングによる認識精度の高い順に選択する制御を行っても良い。
In step S204, when a plurality of parts are recognized in step S203, the parts to be taken out are determined. As shown in FIG. 8B, when two
次に、ステップS205では、取り出し対象の部品の重心位置を中心に、3次元点群データのトリミングを行い、ステップS206では、所定の画像ファイルフォーマット、例えばTIFF形式に変換して記録する。トリミングを行う際には、好ましくは前記の仮想部品状態認識部103でトリミングした際と同じ画素数、縦横比を用いる。ただし、これらの同じ設定が適用できない場合には、トリミングした画像ファイルに対し、解像度のリサンプリングを行うプーリングや、画素間の補間や内挿処理を行うことで、同じ画素数、縦横比になるように調整することが望ましい。
Next, in step S205, the three-dimensional point cloud data is trimmed around the position of the center of gravity of the component to be taken out, and in step S206, the data is converted into a predetermined image file format, for example, TIFF format and recorded. When trimming, preferably, the same number of pixels and aspect ratio as when trimming by the virtual component
以上のようにして、トリミングされた部品の画像データが優先順位予測部202に取り込まれ、優先順位学習部201で計算された学習済みモデル(図9のCNN)を用いて部品のどの位置を保持すべきか優先順位の予測を行う。図9のネットワークの初期状態は、図7のように優先順位学習部201で計算された学習済みモデルと同じである。この学習済みモデル(図9のCNN)を用いて、入力部の実際に撮像された部品の画像から、出力部の当該部品の保持位置候補の優先順位リストに到達することができる。そして、ロボット制御部は学習済みモデル(図9のCNN)を用いて得られた、優先順位の最上位の部品保持位置を保持するようにロボットマニピュレータ11を制御し、ロボットマニピュレータ11がその取り出し動作を実行する。
As described above, the image data of the trimmed part is taken into the
取り出し動作を実行したロボットマニピュレータ11は、上記の優先順位予測部202の指示に従い部品の保持動作を行い、部品を保持したまま所定の位置まで部品の搬送を行う。そして搬送先の地点において、取り出し結果検出部15による取り出し結果の確認が行われる。取り出し結果検出部15は、例えば、搬送先の地点において、ロボットマニピュレータ11が部品を保持しているか否かを確認しており、例えば、部品を保持していたら取り出し成功、部品を保持していなければ取り出し失敗の二値信号を出力する。
The
これらの部品の有無を検出する部としては、例えば光電センサやレーザー式の物体センサ、特に、ハンド12が吸着式の場合は、吸着時の圧力値などを用いることができる。本実施形態では、取り出し結果検出部が取り出し失敗を検出した場合、この失敗の結果に応じて優先順位更新部203により、優先順位学習部201で作成されたモデルを更新する再学習処理を行う(優先順位更新工程)。
As a unit for detecting the presence or absence of these parts, for example, a photoelectric sensor or a laser type object sensor, particularly when the
例えば、優先順位予測部202により、図10に示される優先順位予測値(失敗時)が出力されていた場合、失敗した取り出しに用いた保持位置候補、即ち、優先順位リストの筆頭候補を最後尾に落とす(191−>192)。そして、他の優先順位を一つずつ繰り上げた優先順位変更後のリストを生成する。このリストを図6(B)で示されるリストに追加し、優先順位学習部201で再学習を行い、学習済みモデルを更新する。
For example, when the priority prediction value (at the time of failure) shown in FIG. 10 is output by the
以上のように、本実施形態によれば、仮想環境を用いて生成した学習済みモデルを、それを用いて実際に試行した取り出し動作の結果に応じて、次回以降類似の部品のバラ積みパターン(位置姿勢)に対し、再学習していく。そのため、同じ失敗を繰り返さないように実環境で試行した取り出し動作の結果に応じて、保持位置候補の優先順位に到達するための学習済みモデルを更新していくことができる。そのため、実際にロボットマニピュレータ11の取り出し動作を開始させた後、高速に取り出し成功率を高めることができ、リトライ動作によるサイクルタイムの延長を短縮することができる。
As described above, according to the present embodiment, the trained model generated using the virtual environment is subjected to a pattern of stacking similar parts from the next time onward according to the result of the actual trial extraction operation using the model. Relearn for position and posture). Therefore, the trained model for reaching the priority of the holding position candidate can be updated according to the result of the retrieval operation tried in the real environment so as not to repeat the same failure. Therefore, after actually starting the take-out operation of the
また、本実施形態の学習済みモデルを用いた部品取り出しでは、仮想環境を利用して、実際に取り出しハードウェアを稼働させることなく容易に原初の学習済みモデルを高速かつ容易に生成することができる。しかも、実際に取り出しハードウェアを稼働させた後、実際の部品取り出し結果に応じて、部品取り出しを制御する学習済みモデルを更新するよう、再学習が行われる。そのため、実環境における諸条件を反映して、部品取り出しを制御する学習済みモデルを高精度に部品取り出しを制御可能に成長させることができ、実環境で高い成功率で取り出し動作を行うことができる。 Further, in the component retrieval using the trained model of the present embodiment, the original trained model can be easily generated at high speed and easily by using the virtual environment without actually operating the retrieval hardware. .. Moreover, after actually operating the retrieval hardware, re-learning is performed so as to update the trained model that controls component retrieval according to the actual component retrieval result. Therefore, it is possible to grow a trained model that controls component retrieval with high accuracy and controllable component retrieval by reflecting various conditions in the actual environment, and it is possible to perform retrieval operation with a high success rate in the real environment. ..
即ち、上記構成によれば、予め仮想環境で部品取り出しにおける保持位置候補の優先順位を決定可能な学習済みモデルを生成することができる。このため、ロボットマニピュレータは、一つの取り出し対象の部品に対し、外力をかけても部品の姿勢を崩さない保持位置を予測する機能を備えることができる。従って、実環境での稼動開始後、短時間で部品の取出し成功率を高めることができる。さらに、特定のバラ積み状態のパターンに対して部品の取出しに失敗しても、次回以降類似のバラ積み状態のパターンに対し、部品の保持位置を、他の比較的取り出し成功率の高い保持位置候補に変更する。このような再学習を行うことにより、同じ取り出し失敗を繰り返さず、部品取り出しのリトライ動作の発生頻度を減らし、サイクルタイムの延長を短縮することができる、という優れた効果がある。 That is, according to the above configuration, it is possible to generate a trained model in which the priority order of the holding position candidates in the component extraction can be determined in advance in the virtual environment. Therefore, the robot manipulator can be provided with a function of predicting a holding position of one part to be taken out without losing the posture of the part even when an external force is applied. Therefore, it is possible to increase the success rate of taking out parts in a short time after the start of operation in the actual environment. Further, even if the parts cannot be taken out for a specific pattern in a loosely stacked state, the holding position of the parts is set to another holding position with a relatively high success rate of taking out the parts for a similar pattern in a loosely stacked state from the next time onward. Change to a candidate. By performing such re-learning, there is an excellent effect that the same retrieval failure is not repeated, the frequency of occurrence of the component retrieval retry operation can be reduced, and the extension of the cycle time can be shortened.
(取り出し成功率の高い部品、保持位置を選択する)
取り出し成功率の高い部品、保持位置を選択する制御を行うこともできる。以上では、認識部10で認識された一つの部品に対し、最も取り出し成功率の高い保持位置の選択を行う例を示したが、ここでは、複数の部品の中から最も取り出し成功率の高い部品を選択する。また、選択された部品の中でも最も取り出し成功率が高い保持位置を選択して部品の取り出しを行う。この制御につき、図11、図12を参照して説明する。図11は上記の図1に対応したシステムの構成を、図12は上記の図2に対応した制御手順を示している。図11では、保持成否判定部106b、保持成功率学習部201b、保持成功率予測部202b、および保持成功率更新部203bが設けられている点が図1と異なる。
(Select a part with a high success rate of removal and a holding position)
It is also possible to control the selection of parts and holding positions with a high take-out success rate. In the above, an example of selecting the holding position having the highest take-out success rate for one part recognized by the
図11の計算部100において、ステップS106で仮想部品移動量計算部105により部品の移動量を計算するまでは、図2と同様の処理を行う。図12の制御では、全保持位置候補を処理したか否かを判定するステップS107の後、ステップS108bで保持成否判定部106bにより、保持成否の判定を行う。保持成否判定部106bは、例えば図13(A)に示すように、保持成否の判定を(式6)で計算されたΔと任意の閾値Δthに基づき、下式(7)のように保持成否の判定を行う。
In the
そして、図12の計算処理フローが全て完了すると、図13(B)のような計算結果のリストが出力され、学習部200に保存される。
Then, when all the calculation processing flows of FIG. 12 are completed, a list of calculation results as shown in FIG. 13B is output and stored in the
次に、学習部は、前述の計算結果のリストに基づき、保持成功率に関して、保持成功率学習部201bにより「教師あり学習」を行う。この時教師データとして、入力データにステップS104で認識された画像データを用い、出力データにパターン番号(図13(B)の左端の欄)を用いる。この学習処理により、両者の関係性は、図14(A)に示されるようなCNN、学習済みモデルにモデル化することができる。
Next, the learning unit performs "supervised learning" by the retention success
実際に部品取り出しを試行する際には、保持成功率予測部202bが、図14(A)のように前述の保持成否判定部106bで計算された学習済みモデルに基づき、実際の装置でロボットマニピュレータ11が取り出す部品と、保持すべき保持位置の予測を行う。
When actually trying to take out parts, the holding success
予測を行うには、入力データには、上述と同様にしてステレオカメラなどにより実装された認識部10を用いて、取得される実際のバラ積み状態の部品の画像データを取得し、これを上記学習済みモデルの入力データとして用いる。
In order to make a prediction, as the input data, the
この画像データの取得処理は図15(A)に示す。図15(A)は図8(A)に相当する処理であり、図8(A)と異なるのは図8(A)のステップS204がステップS204bとなっている点である。上述の例では、部品の重なり方などに応じて対象部品を1つに絞っていた(図8(B))のに対して、この図15(A)のステップS204bでは、例えば複数個の対象部品を選択することができる。複数個の対象部品が決定された場合も対象部品の数が1個である場合と同様に、図15(B)に136、137で示すように対象部品数分の3次元データをトリミングし、記録する(ステップS205、S206)。 The image data acquisition process is shown in FIG. 15 (A). FIG. 15A is a process corresponding to FIG. 8A, and the difference from FIG. 8A is that step S204 in FIG. 8A is step S204b. In the above example, the target parts are narrowed down to one according to how the parts overlap (FIG. 8 (B)), whereas in step S204b of FIG. 15 (A), for example, a plurality of targets are used. Parts can be selected. When a plurality of target parts are determined, the three-dimensional data corresponding to the number of target parts is trimmed as shown by 136 and 137 in FIG. 15B, as in the case where the number of target parts is one. Record (steps S205, S206).
次に、保持成功率予測部202bは、図14(B)に示すように、保持成功率学習部201bで学習された学習済みモデルを用いて、入力された画像データに対し、どのパターンに最も近い画像であるか類推して最も近いパターンの番号を出力する。そして、出力されたパターンの番号に従い、図13(B)に示されるリストの判定値を照合し、取り出し成功率の判定値が最も大きい(最小値0、最大値1)の保持位置候補を保持するようロボットマニピュレータ11を制御する。この時、複数の画像データが入力されている場合は、全ての画像データに対しパターンの番号を類推し、全ての判定値の中で最も判定値が大きい保持位置を選択して、ロボットマニピュレータ11に部品の保持を試行させる。
Next, as shown in FIG. 14B, the retention success
ロボットマニピュレータ11は、保持成功率予測部202bにより指示された位置で部品の取り出し動作を実行し、上述の例と同様に、取り出し結果検出部15によって取り出し成功/失敗の検出を行う。そして、部品の取り出しに失敗した場合は、保持成功率更新部203bにより、保持成功率学習部201bで作成されたモデルを更新する再学習を行う。例えば、保持成功率予測部202bが入力データから図16に示されるパターンの番号の予測した場合、保持位置候補1が選択される。この指示に従いロボットマニピュレータ11が取り出し動作を行い、取り出し結果検出部15によって取り出し失敗が検知されると、図16のリストに示すように判定値を更新する再学習を行う(281−>282)。判定値の更新は、例えば下式(8)のような演算により行うことができる。
The
この新たに更新されたパターンを図16のリストに加え、保持成功率学習部201bでモデルの再学習を行う。以上に示したように、図11〜図16の構成によると、次回以降類似のバラ積み状態のパターンに対し、部品の取り出し成功率を考慮した上で、同じ失敗を繰り返さないように取り出しの成功/失敗を学習することができる。そのため、実際にロボットマニピュレータ11の取り出し動作を開始させた後、高速に取り出し成功率を高めることができ、リトライ動作によるサイクルタイムの延長を短縮することができる。
This newly updated pattern is added to the list of FIG. 16, and the retention success
即ち、上記構成によれば、ロボットマニピュレータはバラ積み状態の部品の中から、最も取り出し成功率の高い部品とその保持位置を選択して部品の取り出しを行うことができる。そのため、上述の効果に加え、より高い取り出し成功率で対象物の部品の取り出しを行うことができる、という優れた効果がある。 That is, according to the above configuration, the robot manipulator can take out the parts having the highest take-out success rate and the holding position thereof from the parts in the loosely stacked state. Therefore, in addition to the above-mentioned effects, there is an excellent effect that the parts of the object can be taken out with a higher take-out success rate.
1…部品取り出し装置、10…認識部、11…ロボットマニピュレータ、12…ハンド、13、130、131…部品、14…平板、15…取り出し結果検出部、100…計算部、101…仮想バラ積み状態生成部、102…部品保持位置候補生成部、103…仮想部品状態認識部、104…仮想部品取り出し動作実行部、105…仮想部品移動量計算部、106…優先順位決定部、106b…保持成否判定部、200…学習部、201…優先順位学習部、201b…保持成功率学習部、202…優先順位予測部、202b…保持成功率予測部、203…優先順位更新部、203b…保持成功率更新部。 1 ... Parts retrieval device, 10 ... Recognition unit, 11 ... Robot manipulator, 12 ... Hand, 13, 130, 131 ... Parts, 14 ... Flat plate, 15 ... Extraction result detection unit, 100 ... Calculation unit, 101 ... Virtual bulk stacking state Generation unit, 102 ... Part holding position candidate generation unit, 103 ... Virtual part state recognition unit, 104 ... Virtual part retrieval operation execution unit, 105 ... Virtual part movement amount calculation unit, 106 ... Priority determination unit, 106b ... Holding success / failure judgment Department, 200 ... Learning unit, 201 ... Priority learning unit, 201b ... Retention success rate learning unit, 202 ... Priority prediction unit, 202b ... Retention success rate prediction unit, 203 ... Priority update unit, 203b ... Retention success rate update Department.
Claims (19)
仮想ロボット装置が前記仮想対象物を保持する保持位置を生成する部品保持位置候補生成工程と、
バラ積み状態の仮想対象物に対し、仮想環境中で仮想ロボット装置に仮想対象物を取り出す動作を実行させる仮想部品保持動作実行工程と、
バラ積み状態の仮想対象物に対して、前記仮想部品保持動作実行工程で複数回、異なる保持位置で、仮想ロボット装置に仮想対象物を取り出す動作を実行させた結果の機械学習により対象物の特定の位置姿勢から、その位置姿勢に対してロボット装置が取り得る複数の保持位置の優先順位を出力可能な学習済みモデルを生成する優先順位学習工程と、
実際のバラ積み状態の対象物の位置姿勢と、前記優先順位学習工程が生成した前記学習済みモデルと、を用いて決定した保持位置によって、実際のロボット装置に対象物を取り出す取り出し動作を実行させるロボット制御工程と、
前記ロボット制御工程が前記ロボット装置に実行させた取り出し動作の結果の機械学習により前記学習済みモデルの複数の保持位置の優先順位を更新する再学習を行う優先順位更新工程と、を含むロボットシステムの制御方法。 A virtual bulking state generation process that generates a bulking state of multiple virtual objects in a virtual environment,
A component holding position candidate generation step of generating a holding position in which the virtual robot device holds the virtual object, and
A virtual component holding operation execution process that causes a virtual robot device to execute an operation of taking out a virtual object in a virtual environment for a virtual object in a separately stacked state.
Specifying an object by machine learning as a result of having a virtual robot device execute an operation of taking out a virtual object at different holding positions multiple times in the virtual component holding operation execution process for a virtual object in a loosely stacked state. A priority learning process that generates a trained model that can output the priority of multiple holding positions that the robot device can take with respect to the position and orientation of
The actual robot device is made to execute the taking-out operation of taking out the object according to the holding position determined by using the position and orientation of the objects in the actual loose stacking state and the learned model generated by the priority learning step. Robot control process and
A robot system including a priority update step of performing re-learning to update the priority of a plurality of holding positions of the learned model by machine learning as a result of a take-out operation executed by the robot control step. Control method.
仮想ロボット装置が前記仮想対象物を保持する保持位置を生成する部品保持位置候補生成部と、
バラ積み状態の仮想対象物に対し、仮想環境中で仮想ロボット装置に仮想対象物を取り出す動作を実行させる仮想部品取り出し動作実行部と、
バラ積み状態の仮想対象物に対して、前記仮想部品取り出し動作実行部で複数回、異なる保持位置で、仮想ロボット装置に仮想対象物を取り出す動作を実行させた結果の機械学習により対象物の特定の位置姿勢から、その位置姿勢に対してロボット装置が取り得る複数の保持位置の優先順位を出力可能な学習済みモデルを生成する優先順位学習部と、
実際のバラ積み状態の対象物の位置姿勢と、前記優先順位学習部が生成した前記学習済みモデルと、を用いて決定した保持位置によって、実際のロボット装置に対象物を取り出す動作を実行させるロボット制御部と、
前記ロボット制御部が前記ロボット装置に実行させた取り出し動作の機械学習により前記学習済みモデルの複数の保持位置の優先順位を更新する再学習を行う優先順位更新部と、を備えたロボットシステム。 A virtual bulking state generator that generates bulking states of multiple virtual objects in a virtual environment,
A component holding position candidate generation unit that generates a holding position in which the virtual robot device holds the virtual object,
A virtual component retrieval operation execution unit that causes a virtual robot device to perform an operation of extracting a virtual object in a virtual environment for a virtual object in a separately stacked state.
The virtual object in a loosely stacked state is identified by machine learning as a result of having the virtual robot device execute the operation of extracting the virtual object multiple times at different holding positions in the virtual component extraction operation execution unit. A priority learning unit that generates a trained model that can output the priority of multiple holding positions that the robot device can take with respect to the position and orientation of
A robot that causes an actual robot device to execute an operation of taking out an object according to a holding position determined by using the position and orientation of the objects in an actual loose stacking state and the learned model generated by the priority learning unit. Control unit and
A robot system including a priority update unit for re-learning to update the priority of a plurality of holding positions of the learned model by machine learning of a take-out operation executed by the robot control unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019130602A JP2021013996A (en) | 2019-07-12 | 2019-07-12 | Control method of robot system, manufacturing method of articles, control program, recording medium, and robot system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019130602A JP2021013996A (en) | 2019-07-12 | 2019-07-12 | Control method of robot system, manufacturing method of articles, control program, recording medium, and robot system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021013996A true JP2021013996A (en) | 2021-02-12 |
JP2021013996A5 JP2021013996A5 (en) | 2022-07-15 |
Family
ID=74532064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019130602A Pending JP2021013996A (en) | 2019-07-12 | 2019-07-12 | Control method of robot system, manufacturing method of articles, control program, recording medium, and robot system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021013996A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022264726A1 (en) * | 2021-06-15 | 2022-12-22 | 三菱電機株式会社 | Transport system, method executed by computer for controlling transport of articles, and program for causing computer to execute this method |
WO2023127575A1 (en) * | 2021-12-29 | 2023-07-06 | 川崎重工業株式会社 | Object detection device, robot system, and object detection program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017064910A (en) * | 2015-07-31 | 2017-04-06 | ファナック株式会社 | Machine learning device for learning taking-out operation of workpiece, robot system, and machine learning method |
-
2019
- 2019-07-12 JP JP2019130602A patent/JP2021013996A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017064910A (en) * | 2015-07-31 | 2017-04-06 | ファナック株式会社 | Machine learning device for learning taking-out operation of workpiece, robot system, and machine learning method |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022264726A1 (en) * | 2021-06-15 | 2022-12-22 | 三菱電機株式会社 | Transport system, method executed by computer for controlling transport of articles, and program for causing computer to execute this method |
WO2023127575A1 (en) * | 2021-12-29 | 2023-07-06 | 川崎重工業株式会社 | Object detection device, robot system, and object detection program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230391016A1 (en) | Systems, methods, and media for artificial intelligence process control in additive manufacturing | |
CN112118949B (en) | Systems, methods, and media for artificial intelligence feedback control in additive manufacturing | |
JP6695843B2 (en) | Device and robot system | |
US9811074B1 (en) | Optimization of robot control programs in physics-based simulated environment | |
CN110268402B (en) | Systems and methods for providing bead size variation during additive manufacturing to improve geometric accuracy of deposited layers | |
CN110168546B (en) | System and method for adaptive domain reduction for thermo-structural simulation of additive manufacturing processes | |
CN113728285B (en) | Systems, methods, and media for artificial intelligence process control in additive manufacturing | |
JP6487493B2 (en) | Image processing system | |
TWI760916B (en) | Manufacturing system for automatic production line in factory | |
CN108292325A (en) | Based on heat/structural simulation of the component to being produced via 3D printer come the system and method in optimization tool path | |
JP2021013996A (en) | Control method of robot system, manufacturing method of articles, control program, recording medium, and robot system | |
JP7154823B2 (en) | Information processing device, robot control device, information processing method and program | |
US11556110B2 (en) | Method and device for generating tool paths | |
Yang et al. | Automation of SME production with a Cobot system powered by learning-based vision | |
US20220297295A1 (en) | System and method for feeding constraints in the execution of autonomous skills into design | |
TWI801820B (en) | Systems and methods for manufacturing processes | |
JP2024007346A (en) | Information processing method, information processing device, robot system, method for manufacturing article, program and recording medium | |
JP2024011847A (en) | Information processing method, information processing device, robot system, method for manufacturing article, program and recording medium | |
WO2022091366A1 (en) | Information processing system, information processing device, information processing method, and recording medium | |
TW202300304A (en) | teaching device | |
CN117813184A (en) | Robot holding form determination device, holding form determination method, and robot control system | |
JP2023530944A (en) | Systems, methods and media for manufacturing processes | |
CN117355836A (en) | Method for generating training data for machine learning model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20200206 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20200207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220707 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220707 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230606 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230804 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20231121 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240220 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20240228 |