JP5877857B2 - ワークの取出工程をシミュレーションするロボットシミュレーション装置 - Google Patents

ワークの取出工程をシミュレーションするロボットシミュレーション装置 Download PDF

Info

Publication number
JP5877857B2
JP5877857B2 JP2014046444A JP2014046444A JP5877857B2 JP 5877857 B2 JP5877857 B2 JP 5877857B2 JP 2014046444 A JP2014046444 A JP 2014046444A JP 2014046444 A JP2014046444 A JP 2014046444A JP 5877857 B2 JP5877857 B2 JP 5877857B2
Authority
JP
Grant status
Grant
Patent type
Prior art keywords
workpiece
simulation
model
position
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014046444A
Other languages
English (en)
Other versions
JP2015168043A (ja )
Inventor
裕樹 木本
裕樹 木本
嘉治 長塚
嘉治 長塚
Original Assignee
ファナック株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Grant date

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/50Computer-aided design
    • G06F17/5009Computer-aided design using simulation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32351Visual, graphical animation of process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40053Pick 3-D object from pile of objects
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40131Virtual reality control, programming of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40323Modeling robot environment for sensor based robot system

Description

本発明は、ワークの取出工程をシミュレーションするロボットシミュレーション装置に関する。

ロボットシミュレーション装置は、ロボットによるワークのハンドリングなどの所定の動作を仮想空間内でシミュレーションするために使用される。シミュレーション結果は、ロボットの制御プログラムを評価するとともに、必要に応じて修正を加えるために利用される。

特許文献1には、容器内にバラ積みされている複数のワークを取出す際に、ロボットとワークとの間の干渉、及びロボットと容器との間の干渉を予測することを目的として使用される、ロボットシミュレーション装置が開示されている。

特開2007−326160号公報

例えば容器内にバラ積みされたワークをロボットで順次取出す際のロボットの動作をシミュレーションする場合、バラ積み状態のワークを仮想空間内に作成する必要がある。特許文献1に開示されるロボットシミュレーション装置では、各々のワークモデルの位置及び姿勢がランダムに決定される。しかしながら、ワークモデルをランダムに配置する場合、重力などの影響を考慮していないため、実際に発生しうるバラ積み状態を十分に反映していない不自然なバラ積み状態が作成されていた。

したがって、ワークに作用する重力及びワークに対する干渉を考慮してバラ積み状態のワークを作成できるようにしたロボットシミュレーション装置が求められている。

本願の1番目の態様によれば、作業空間において容器内にバラ積みされた複数のワークをロボットによって順次取出す取出工程をシミュレーションするロボットシミュレーション装置であって、前記作業空間を三次元で表現した仮想空間を作成する仮想空間作成部と、前記容器を三次元で表現した容器モデル、及び前記複数のワークを三次元で表現した複数のワークモデルを作成するモデル作成部と、前記容器モデルを前記仮想空間に配置するとともに、任意の姿勢を有する各々の前記ワークモデルを、各々の前記ワークモデルが互いに干渉しないように、かつ各々の前記ワークモデルが前記容器モデル内に落下するように、前記容器モデルの上方の初期位置に配置するモデル配置部と、各々の前記ワークが、重力の作用を受けて前記初期位置から前記容器内に落下する落下動作をシミュレーションする落下動作シミュレーション部と、前記落下動作のシミュレーションの結果として得られる各々の前記ワークモデルの位置及び姿勢に基づいて、前記ワークモデルのバラ積み状態を作成する、バラ積み状態作成部と、を備える、ロボットシミュレーション装置が提供される。
本願の2番目の態様によれば、1番目の態様に係るロボットシミュレーション装置において、前記落下動作シミュレーション部が、各々の前記ワークモデルに作用する重力、前記ワークモデルどうしの干渉、及び各々の前記ワークモデルと前記容器モデルとの間の干渉を考慮して、前記落下動作をシミュレーションするように構成される。
本願の3番目の態様によれば、2番目の態様に係るロボットシミュレーション装置において、前記落下動作シミュレーション部は、各々の前記ワークモデルに作用する衝撃力及び摩擦力をさらに考慮して、前記落下動作をシミュレーションするように構成される。
願の番目の態様によれば、1番目から番目のいずれかの態様に係るロボットシミュレーション装置において、前記落下動作のシミュレーションの実行中に、各々の前記ワークモデルの位置及び姿勢を算出する位置姿勢算出部と、前記落下動作のシミュレーションが完了したか否かを判定する判定部と、をさらに備えており、前記判定部は、前記位置姿勢算出部によって算出される各々の前記ワークモデルの位置及び姿勢の変化量が予め定められる閾値よりも小さい場合に、前記落下動作のシミュレーションが完了したと判定するように構成される。
本願の番目の態様によれば、番目の態様に係るロボットシミュレーション装置において、前記位置姿勢算出部は、前記取出工程のシミュレーションの実行中において、各々の前記ワークモデルの位置及び姿勢を算出するようにさらに構成されており、前記落下動作シミュレーション部は、前記位置姿勢算出部によって前記取出工程のシミュレーションの実行中に得られる各々の前記ワークモデルの位置及び姿勢に基づいて、前記ワークの落下動作をシミュレーションするようにさらに構成されており、前記バラ積み状態作成部は、前記取出工程のシミュレーションの実行中における前記落下動作のシミュレーションの結果として得られる各々の前記ワークモデルの位置及び姿勢に基づいて、前記ワークのバラ積み状態を作成するようにさらに構成される。

これら及び他の本発明の目的、特徴及び利点は、添付図面に示される本発明の例示的な実施形態に係る詳細な説明を参照することによって、より明らかになるであろう。

上記構成を備えたロボットシミュレーション装置によれば、重力の影響を考慮した上で、容器モデル内にバラ積みされたワークモデルを作成できるようになり、より自然なバラ積み状態を作成できる。それによって、実際に発生しうるバラ積み状態に近い条件でワークの取出工程をシミュレーションできるようになり、シミュレーションの信頼性を向上できる。

本実施形態に係るロボットシミュレーション装置を含む、ロボットシステムの全体配置図である。 ロボットシミュレーション装置の表示部による表示例である。 ロボットシミュレーション装置の機能ブロック図である。 バラ積み状態のワークモデルを作成する工程の流れを示すフローチャートである。 ワークモデルの配置条件を説明するための図である。 図5Aに示されるワークモデルのうちの1つを拡大して示す拡大図である。 初期位置にあるワークモデルを示す図である。 初期位置から落下したワークモデルを示す図である。 ワークモデルに作用する重力、衝撃力及び摩擦力を示す図である。 ロボットシミュレーション装置の機能ブロック図である。 取出工程のシミュレーションの実行中に、バラ積み状態のワークモデルを作成する工程の流れを示すフローチャートである。 バラ積み状態のワークモデルを示す図である。 ワークモデルの位置及び姿勢が変化した状態を示す図である。 落下動作をシミュレーションした後のワークモデルを示す図である。

以下、添付図面を参照して本発明の実施形態を説明する。図示される実施形態の構成要素は、本発明の理解を助けるために縮尺が適宜変更されている。また、同一又は対応する構成要素には、同一の参照符号が複数の図面にわたって使用される。

図1は、本実施形態に係るロボットシミュレーション装置10を含む、ロボットシステム100の全体配置図である。ロボットシミュレーション装置10は、例えばロボットプログラムを作成し、実行できるように構成されたデジタルコンピュータである。ロボットシステム100は、ロボット130をさらに備えている。ロボット130は、ロボット制御装置140によって制御される多関節ロボットである。ロボットシミュレーション装置10とロボット制御装置140とは、公知の構成を有する通信手段102を介して互いに接続されている。通信手段102は、例えばロボットシミュレーション装置10において作成された制御プログラムをロボット制御装置140に送信するのに使用される。

ロボット130は、例えばワーク160を把持可能なハンド132をアームの先端に備えている。ロボット130は、容器150内にバラ積みされた、すなわち不規則に配置された多数のワーク160からワーク160を順次取出すように、ロボット制御装置140によって制御される。

容器150は、例えば底壁152と、底壁152から概ね鉛直方向上方に延在する周壁154と、を有するカゴ状の形態を有している。容器150は上方に向かって開口しており、ロボット130は、容器150の底壁152及び周壁154によって画定される収容空間156に対して上方からアクセスできるようになっている。

図示された例では、ワーク160は直方体の形状を有しているものの、ワーク160の形状はこれには限定されない。また、容器150は、ロボット130によって収容空間156内にアクセス可能であれば、他の任意の形状を有していてもよい。

ロボットシミュレーション装置10は、図示されないものの、各種演算処理を実行するCPUと、CPUの演算結果を記憶するRAMと、各種プログラムを記憶するROMと、入力デバイスと、を備えている。入力デバイスは、マウス、キーボードなどの公知の入力手段である。ロボットシミュレーション装置10は、液晶ディスプレイなどの表示部12をさらに備えている。

図2は、ロボットシミュレーション装置10の表示部12による表示例を示している。表示部12には、図1に示されるロボット130の作業空間を三次元で表現した仮想空間が表示される。図示されるように、表示部12の画面には、ロボット130を三次元で表現したロボットモデル30と、容器150を三次元で表現した容器モデル50と、ワーク160を三次元で表現したワークモデル60と、がそれぞれ表示されている。また、ロボットモデル30のハンド32及び容器モデル50の底壁52及び周壁54もそれぞれ画面上に表示される。

図2には二次元の情報のみが表示部12に示されているものの、操作者は、マウス又はキーボードなどの入力デバイスを使って視点を変更することによって、各要素の位置関係を三次元空間において確認できるようになっている。

ロボットシミュレーション装置10は、容器モデル50内にバラ積みされたワークモデル60をロボットモデル30によって順次取出す取出工程を仮想空間内で実行できるように構成される。操作者は、仮想空間で実行されるシミュレーションの様子を確認しながら、ロボット130に対する制御プログラムが適切かどうかを確認できる。

図3は、ロボットシミュレーション装置10の機能ブロック図である。図示されるように、ロボットシミュレーション装置10は、仮想空間作成部14と、モデル作成部16と、モデル配置部18と、落下動作シミュレーション部20と、バラ積み状態作成部22と、位置姿勢算出部24と、判定部26と、を備えている。

仮想空間作成部14は、図1に示されるようなロボット130の作業空間を三次元で表現した仮想空間を作成する機能を有する。仮想空間作成部14によって作成された仮想空間は、ロボットシミュレーション装置10の表示部12の画面上に表示される(図2参照)。

モデル作成部16は、ロボット130、容器150及びワーク160を三次元でそれぞれ表現したロボットモデル30、容器モデル50及びワークモデル60を作成する機能を有する。各々のモデル30,50,60は、例えばロボットシミュレーション装置10のROMに記憶された各要素の形状情報に従って作成される。或いは、操作者がロボットシミュレーション装置10の入力手段を使用して各々のモデル30,50,60の形状を設定できるようになっていてもよい。

モデル配置部18は、モデル作成部16によって作成されたロボットモデル30、容器モデル50及びワークモデル60をそれぞれ仮想空間内の所定の位置に配置する機能を有する。

落下動作シミュレーション部20は、各々のワークモデル60に作用する重力と、ワークモデル60どうしの干渉と、ワークモデル60と容器モデル50との間の干渉と、を考慮して、ワーク160が落下する動作をシミュレーションする機能を有する。さらに、落下動作シミュレーション部20は、後述するように、ワークモデル60に作用する衝撃力及び摩擦力を考慮してワーク160の挙動をシミュレーションするように構成されていてもよい。

バラ積み状態作成部22は、ワーク160の落下動作のシミュレーションの結果として得られるワークモデル60の位置及び姿勢に基づいて、複数のワークモデル60が容器モデル50内においてバラ積みされたバラ積み状態を作成する機能を有する。

位置姿勢算出部24は、仮想空間内におけるワークモデル60の位置及び姿勢を算出する機能を有する。ワークモデル60の位置は、例えば仮想空間に対して設定される基準座標系におけるワークモデル60の重心の位置に応じて定まる。また、ワークモデル60の姿勢は、例えばワークモデル60の重心を通る平面の傾斜角度に従って計算される。

判定部26は、ワークモデル60の落下動作が完了したか否かを判定する機能を有する。判定部26は、例えば、位置姿勢算出部24によって検出されるワークモデル60の位置及び姿勢の変化量が十分に小さくなったときにワークモデル60の落下動作が完了したと判定するように構成される。すなわち、落下動作は、各々のワークモデル60の落下後の挙動が収束したときに完了したものとみなされる。

ロボットシミュレーション装置10は、ROMに記憶された動作プログラムに従って、容器内にバラ積みされたワークを仮想空間内に作成できるように構成されている。図4は、バラ積み状態のワークモデルを作成する工程の流れを示すフローチャートである。

先ず、ステップS401において、仮想空間作成部14によって、ロボット130の作業空間(図1参照)に対応する三次元の仮想空間を作成する。作成された仮想空間は、ロボットシミュレーション装置10の表示部12に表示される。

次いで、ステップS402において、モデル作成部16によって、容器150及びワーク160にそれぞれ対応する三次元の容器モデル50及びワークモデル60を作成する。

ステップS403では、モデル配置部18によって、ステップS402において作成された容器モデル50及びワークモデル60を仮想空間内に配置する。本実施形態において、ワークモデル60は、容器モデル50の上方に重力の作用を無視して配置される。

図5Aは、ワークモデル60の配置条件を説明するための図である。図5Bは、図5Aに示されるワークモデル60のうちの1つを拡大して示す拡大図である。図5Aには、各々のワークモデル60に対応する仮想的な球体62が破線で描かれている。なお、球体62は、ワークモデル60の初期位置を決定する際に利用されるものの、表示部12に実際に表示される必要はない。

図5Bに示されるように、球体62は、ワークモデル60の重心Gを中心とし、重心Gから最も遠位に位置する頂点Pまでの距離Dを半径とする球である。図示されるような直方体の形状を有するワークモデル60の場合、各々の頂点と重心Gとの間の距離は互いに同一であるので、いずれの頂点を選択してもよい。

再び図5Aを参照すると分かるように、各々の球体62は、互いに重なり合うことなく、すなわち各々の球体62の重心Gどうしの間の距離が2D以上離間するようにそれぞれ配置されている。このように各々のワークモデル60を配置すれば、各々のワークモデル60が初期位置において互いに重なり合うのを防止できる。

また、各々の球体62は、容器モデル50の周壁54の先端54aから鉛直方向上方に伸ばした仮想線によって画定される領域の内側に配置されるようになっている。このような配置によれば、各々のワークモデル60を後述するように落下させたときに、ワークモデル60が容器モデル50の収容空間56内に落下するのを保証できる。このような所定の配置条件に従ってワークモデル60を配置するようにモデル配置部18を構成すれば、操作者の負担を低減できる。

なお、ワークモデル60の位置(重心Gの位置)は、上記のように所定の条件に従って定められるものの、ワークモデル60の姿勢は、例えば乱数に従ってランダムに設定される。或いは、各々のワークモデル60の姿勢は、操作者によって任意に設定されてもよい。

図4に戻り、ステップS404において、落下動作シミュレーション部20によって、ステップS403で初期位置に配置されたワークモデル60が容器モデル50内に落下する落下動作をシミュレーションする。すなわち、ステップS403では無視していた重力をここでは考慮して、ワークモデル60が落下する際の挙動を計算する。

図6Aは、初期位置にあるワークモデル60a,60b,60cを示す図である。図6Bは、図6Aの初期位置からそれらワークモデル60a,60b,60cを落下させた状態を示す図である。図6Bには、参考のため、初期位置から落下する途中のワークモデル60a,60b,60cが破線で示されている。図6A及び図6Bには、説明を簡単にするために、3つのワークモデル60a,60b,60cのみが図示されているものの、任意の数のワークモデルを配置できる。

ステップS404において実行される落下動作のシミュレーションにおいて、各々のワークモデル60a,60b,60cどうしに作用する干渉、及びワークモデル60a,60b,60cと容器モデル50との間の干渉が考慮される。ここでいう2つの要素間の「干渉」とは、一方の要素の移動が他方の要素の存在によって物理的に妨げられることをいう。図6Bには、ワークモデル60aとワークモデル60bとの間の干渉部Q1、ワークモデル60bとワークモデル60cとの間の干渉部Q2、ワークモデル60aと容器モデル50との間の干渉部Q3、及びワークモデル60cと容器モデル50との間の干渉部Q4がそれぞれ示されている。

また、落下動作のシミュレーションにおいては、各々のワークモデル60a,60b,60cに作用する摩擦力及び衝撃力をさらに考慮してもよい。図7は、ワークモデル60に作用する重力、衝撃力及び摩擦力を示す図である。図7においては、説明を簡単にするため、1つのワークモデル60のみが示されている。

図7の矢印A1は重力の作用方向を示している。矢印A2は、ワークモデル60が容器モデル50の底壁52に落下したときの衝撃力の作用方向を示している。矢印A3は、ワークモデル60と容器モデル50の底壁52との間に作用する摩擦力の作用方向を示している。

ワークモデル60に作用する各々の力は、次の計算式(1)〜(3)に従ってそれぞれ計算される。
重力 = Mg 式(1)
衝撃力 = MV(1+e)/t 式(2)
摩擦力 = μsMg 式(3)

なお、「M」はワークモデル60の質量を表しており、「g」は重力加速度を表しており、「V」はワークモデル60が容器モデル50に衝突する直前の速度を表しており、「e」は反発係数を表しており、「t」はワークモデル60と容器モデル50との間の衝突時間を表しており、「μ」は動摩擦係数を表しており、「s」はワークモデル60と容器モデル50との間の接触面積を表している。なお、このとき、容器モデル50の位置は固定されているものとする。落下動作のシミュレーションに必要なパラメータは、ロボットシミュレーション装置10のROMに記憶されているか、或いは入力手段を用いて設定される。

再び図4を参照すると、落下動作のシミュレーションの実行中においては、位置姿勢算出部24によって、各々のワークモデル60a,60b,60cの位置及び姿勢を所定の周期で算出する(ステップS405)。

続いて、ステップS406において、ワークモデル60a,60b,60cの位置及び姿勢の変化量を計算するとともに、得られた変化量を予め定められる閾値と比較する。ステップS406において、ワークモデル60a,60b,60cの位置及び姿勢の変化量が閾値以上である場合、判定部26によって、落下動作が完全に終了していないと判定される。その場合、ステップS404に戻り、落下動作のシミュレーションを継続する。

他方、ステップS406において、ワークモデル60a,60b,60cの位置及び姿勢の変化量が閾値よりも小さいと判定された場合、判定部26によって、ワークモデル60a,60b,60cの落下動作が完了したと判定する。なお、ステップS406で位置の変化量と比較される閾値は、限定されないものの、例えばワークモデル60に関連付けられる球体の半径D(図5B参照)の100分の1の値が使用される。また、姿勢の変化量(傾斜角度の変化量)と比較される閾値は、限定されないものの、例えば0.1度である。

このようにして得られた落下動作が完了したときの各々のワークモデル60a,60b,60cの位置及び姿勢に基づいて、バラ積み状態作成部22は、ワークモデル60a,60b,60cのバラ積み状態を作成する。作成されたバラ積み状態は、ワークをロボットによって順次取出す取出工程をシミュレーションするために使用される。

本実施形態によれば、ワークモデルに作用する重力と、ワークモデルどうしの干渉と、ワークモデルと容器モデルとの干渉と、を考慮して、容器モデル内におけるワークモデルのバラ積み状態が作成される。それにより、実際に発生しうるバラ積み状態により近い状態を仮想空間内で作成できるようになる。そして、そのようなバラ積み状態のワークを使用して、取出工程のシミュレーションを実行すれば、シミュレーションの信頼性を向上させられる。

また、任意にワークモデルに作用する衝撃力及び摩擦力を考慮して落下動作のシミュレーションを実行すれば、さらにより自然なバラ積み状態を仮想空間内で作成できるようになる。

図8は、取出工程のシミュレーションの実行中に、バラ積み状態のワークモデルを作成するように構成されたロボットシミュレーション装置10の機能ブロック図である。図示されるように、ロボットシミュレーション装置10は、図3に示される構成に加えて、取出工程シミュレーション部21と、位置姿勢変化判定部23と、初期配置設定部25と、をさらに備えている。

取出工程シミュレーション部21は、図1に示されるように、ロボット130によって、ワーク160を容器150から順次取出す取出工程のシミュレーションを実行する機能を有する。このような取出工程のシミュレーションは公知であるので、本明細書では詳細な説明を省略する。

位置姿勢変化判定部23は、取出工程のシミュレーションの実行中に、ワークモデル60の位置及び姿勢のうちの少なくともいずれか一方が変化したか否かを判定する機能を有する。取出工程のシミュレーションの実行中において、各々のワークモデル60の位置及び姿勢は、位置姿勢算出部24によって周期的に算出される。したがって、位置姿勢変化判定部23は、位置姿勢算出部24と協働して、上記判定を実行するように構成される。

初期配置設定部25は、落下動作シミュレーション部20によって実行されるワーク160の落下動作をシミュレーションする際の初期配置を設定する機能を有する。

図10Aは、容器モデル50内にバラ積みされたワークモデル60a,60b,60cを示している。図10Bは、ワークモデル60bが容器モデル50から取出された状態を示している。このとき、ワークモデル60a,60cは、重力の影響が無視されていて宙に浮いている。このように、ワークモデル60bの位置及び姿勢が変化したときに、他のワークモデル60a,60cの位置及び姿勢が不自然な状態になる場合がある。従来技術では、この不自然な状態のまま、取出工程のシミュレーションが継続されていた。

本実施形態に係るロボットシミュレーション装置10によれば、図10Bに示される状態をワークモデル60a,60cの初期配置として、ワークの落下動作のシミュレーションを実行することにより、バラ積み状態を再度作成する。図10Cは、重力の作用を考慮して、図10Bに示されるワークモデル60a,60cを容器モデル50内に落下させた後の状態を示している。

図9は、取出工程のシミュレーションの実行中に、バラ積み状態のワークモデルを作成する工程の流れを示すフローチャートである。

先ず、ステップS901において、取出工程シミュレーション部21によって、容器内においてバラ積みされたワークを取出す取出工程のシミュレーションを実行する。このとき、仮想空間内のワークモデル60は、バラ積み状態作成部22によって、前述したような態様で容器モデル50内においてバラ積みされている(図10A参照)。

ステップS902では、取出工程のシミュレーションが完了したか否かが判定される。シミュレーションが完了している場合は、終了処理を実行する。

ステップS902において取出工程のシミュレーションが完了していないと判定された場合、位置姿勢算出部24によって、各々のワークモデル60a,60b,60cの位置及び姿勢を算出する(ステップS903)。そして、ステップS904において、位置姿勢変化判定部23によって、ワークモデル60a,60b,60cの位置又は姿勢が変化したか否かが判定される。ワークモデル60a,60b,60cの位置又は姿勢が変化していないと判定された場合、ステップS901に戻り、取出工程のシミュレーションを継続する。

他方、ステップS904において、ワークモデル60a,60b,60cの位置又は姿勢が変化した(図10B参照)と判定された場合、ステップS905に進む。ステップS905では、先のステップS903において算出された各々のワークモデル60の位置及び姿勢を初期配置として設定する。

次いで、ステップS906において、ステップS905で設定された初期配置に従って、各々のワークモデル60の落下動作のシミュレーションを実行する。ステップS906〜S908の工程は、図4のステップS404〜S406の工程に対応していて同様の態様で実行されうるので、詳細な説明を省略する。

ステップS906〜S908の工程に従って、バラ積み状態作成部22によって、ワークモデルのバラ積み状態を作成したら、再びステップS901に戻り、新たに作成されたバラ積み状態のワークを使用して、ロボットによる取出工程のシミュレーションが継続される。

このような実施形態によれば、取出工程のシミュレーションの実行中において、ワークの位置及び姿勢の少なくともいずれか一方が変化したときに、変化後のワークの配置に基づいて、ワークのバラ積み状態が改めて作成される。それにより、取出工程のシミュレーションの実行中において、自然なバラ積み状態が常時維持されるようになる。したがって、取出工程のシミュレーションの信頼性を向上させられる。

以上、本発明の種々の実施形態について説明したが、他の実施形態によっても本発明の意図される作用効果を奏することができることは当業者に自明である。特に、本発明の範囲を逸脱することなく前述した実施形態の構成要素を削除又は置換することが可能であるし、公知の手段をさらに付加することもできる。また、本明細書において明示的又は暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。

10 ロボットシミュレーション装置
12 表示部
14 仮想空間作成部
16 モデル作成部
18 モデル配置部
20 落下動作シミュレーション部
21 取出工程シミュレーション部
22 バラ積み状態作成部
23 位置姿勢変化判定部
24 位置姿勢算出部
25 初期配置設定部
26 判定部
50 容器モデル
60 ワークモデル
100 ロボットシステム
130 ロボット
140 ロボット制御装置
150 容器
160 ワーク

Claims (5)

  1. 作業空間において容器内にバラ積みされた複数のワークをロボットによって順次取出す取出工程をシミュレーションするロボットシミュレーション装置であって、
    前記作業空間を三次元で表現した仮想空間を作成する仮想空間作成部と、
    前記容器を三次元で表現した容器モデル、及び前記複数のワークを三次元で表現した複数のワークモデルを作成するモデル作成部と、
    前記容器モデルを前記仮想空間に配置するとともに、任意の姿勢を有する各々の前記ワークモデルを、各々の前記ワークモデルが互いに干渉しないように、かつ各々の前記ワークモデルが前記容器モデル内に落下するように、前記容器モデルの上方の初期位置に配置するモデル配置部と、
    各々の前記ワークが、重力の作用を受けて前記初期位置から前記容器内に落下する落下動作をシミュレーションする落下動作シミュレーション部と、
    前記落下動作のシミュレーションの結果として得られる各々の前記ワークモデルの位置及び姿勢に基づいて、前記ワークモデルのバラ積み状態を作成する、バラ積み状態作成部と、
    を備える、ロボットシミュレーション装置。
  2. 前記落下動作シミュレーション部が、各々の前記ワークモデルに作用する重力、前記ワークモデルどうしの干渉、及び各々の前記ワークモデルと前記容器モデルとの間の干渉を考慮して、前記落下動作をシミュレーションするように構成される、請求項1に記載のロボットシミュレーション装置。
  3. 前記落下動作シミュレーション部は、各々の前記ワークモデルに作用する衝撃力及び摩擦力をさらに考慮して、前記落下動作をシミュレーションするように構成される、請求項2に記載のロボットシミュレーション装置。
  4. 前記落下動作のシミュレーションの実行中に、各々の前記ワークモデルの位置及び姿勢を算出する位置姿勢算出部と、
    前記落下動作のシミュレーションが完了したか否かを判定する判定部と、をさらに備えており、
    前記判定部は、前記位置姿勢算出部によって算出される各々の前記ワークモデルの位置及び姿勢の変化量が予め定められる閾値よりも小さい場合に、前記落下動作のシミュレーションが完了したと判定するように構成される、請求項1からのいずれか1項に記載のロボットシミュレーション装置。
  5. 前記位置姿勢算出部は、前記取出工程のシミュレーションの実行中において、各々の前記ワークモデルの位置及び姿勢を算出するようにさらに構成されており、
    前記落下動作シミュレーション部は、前記位置姿勢算出部によって前記取出工程のシミュレーションの実行中に得られる各々の前記ワークモデルの位置及び姿勢に基づいて、前記ワークの落下動作をシミュレーションするようにさらに構成されており、
    前記バラ積み状態作成部は、前記取出工程のシミュレーションの実行中における前記落下動作のシミュレーションの結果として得られる各々の前記ワークモデルの位置及び姿勢に基づいて、前記ワークのバラ積み状態を作成するようにさらに構成される、請求項に記載のロボットシミュレーション装置。
JP2014046444A 2014-03-10 2014-03-10 ワークの取出工程をシミュレーションするロボットシミュレーション装置 Active JP5877857B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014046444A JP5877857B2 (ja) 2014-03-10 2014-03-10 ワークの取出工程をシミュレーションするロボットシミュレーション装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2014046444A JP5877857B2 (ja) 2014-03-10 2014-03-10 ワークの取出工程をシミュレーションするロボットシミュレーション装置
DE201510002658 DE102015002658B4 (de) 2014-03-10 2015-03-03 Robotersimulationssystem, das einen Entnahmevorgang eines Werkstücks simuliert
US14642014 US9569568B2 (en) 2014-03-10 2015-03-09 Robot simulation system which simulates takeout process of workpiece
CN 201510105172 CN104908043B (zh) 2014-03-10 2015-03-10 对工件取出工序进行仿真的机器人仿真装置

Publications (2)

Publication Number Publication Date
JP2015168043A true JP2015168043A (ja) 2015-09-28
JP5877857B2 true JP5877857B2 (ja) 2016-03-08

Family

ID=53884063

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014046444A Active JP5877857B2 (ja) 2014-03-10 2014-03-10 ワークの取出工程をシミュレーションするロボットシミュレーション装置

Country Status (4)

Country Link
US (1) US9569568B2 (ja)
JP (1) JP5877857B2 (ja)
CN (1) CN104908043B (ja)
DE (1) DE102015002658B4 (ja)

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3782679B2 (ja) * 2001-05-09 2006-06-07 ファナック株式会社 干渉回避装置
JP3673749B2 (ja) 2001-11-12 2005-07-20 ファナック株式会社 シミュレーション装置
JP3768174B2 (ja) * 2002-07-24 2006-04-19 ファナック株式会社 ワーク取出し装置
JP3805310B2 (ja) * 2003-01-30 2006-08-02 ファナック株式会社 ワーク取出し装置
JP3834307B2 (ja) 2003-09-29 2006-10-18 ファナック株式会社 ロボットシステム
JP3732494B2 (ja) 2003-10-31 2006-01-05 ファナック株式会社 シミュレーション装置
JP3930490B2 (ja) * 2004-04-23 2007-06-13 ファナック株式会社 物品取出し装置
JP4153528B2 (ja) * 2006-03-10 2008-09-24 ファナック株式会社 ロボットシミュレーションのための装置、プログラム、記録媒体及び方法
JP4238256B2 (ja) * 2006-06-06 2009-03-18 ファナック株式会社 ロボットシミュレーション装置
JP4938115B2 (ja) * 2010-07-27 2012-05-23 ファナック株式会社 ワーク取出し装置およびワーク取出し方法
JP5144785B2 (ja) * 2011-04-18 2013-02-13 ファナック株式会社 ロボットの着目部位と周辺物との干渉を予測する方法及び装置
JP2013101045A (ja) 2011-11-08 2013-05-23 Fanuc Ltd 物品の3次元位置姿勢の認識装置及び認識方法
JP5642738B2 (ja) * 2012-07-26 2014-12-17 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
JP6036662B2 (ja) * 2013-11-22 2016-11-30 三菱電機株式会社 ロボットシミュレーション装置、プログラム、記録媒体及び方法

Also Published As

Publication number Publication date Type
CN104908043B (zh) 2016-11-09 grant
DE102015002658A1 (de) 2015-09-10 application
JP2015168043A (ja) 2015-09-28 application
US9569568B2 (en) 2017-02-14 grant
US20150254380A1 (en) 2015-09-10 application
CN104908043A (zh) 2015-09-16 application
DE102015002658B4 (de) 2018-09-20 grant

Similar Documents

Publication Publication Date Title
Wilson et al. Bringing physics to the surface
US20060149516A1 (en) Physics simulation apparatus and method
US8154524B2 (en) Physics simulation-based interaction for surface computing
US20030112281A1 (en) Methods and apparatus for detecting and correcting penetration between objects
US20080225041A1 (en) Method and System for Vision-Based Interaction in a Virtual Environment
US20130082978A1 (en) Omni-spatial gesture input
Gupta et al. Prototyping and design for assembly analysis using multimodal virtual environments
US20030117398A1 (en) Systems and methods for rendering frames of complex virtual environments
US20080204425A1 (en) Force/tactile display, method for controlling force/tactile display, and computer program
US20070282485A1 (en) Robot simulation apparatus
US20020123812A1 (en) Virtual assembly design environment (VADE)
Chang et al. Real-time impulse-based simulation of rigid body systems for haptic display
US20050237296A1 (en) Apparatus, system and method for virtual user interface
US20130116828A1 (en) Robot teach device with 3-d display
US20140236565A1 (en) Robot simulator, robot teaching apparatus and robot teaching method
Abate et al. A haptic-based approach to virtual training for aerospace industry
JP2007054942A (ja) ロボットプログラム評価・修正方法及びロボットプログラム評価・修正装置
US20020161562A1 (en) Method and apparatus for simulating dynamic contact of objects
US7457733B2 (en) Moving a virtual articulated object in a virtual environment while avoiding collisions between the articulated object and the environment
Waters Mechanical Arm Control.
US20060279574A1 (en) Systems and methods for generating 3d simulations
Ruspini et al. Collision/contact models for dynamic simulation and haptic interaction
US20120322556A1 (en) Systems and methods for manipulation of objects
Goyal et al. Simulation of dynamics of interacting rigid bodies including friction II: Software system design and implementation
US20120081276A1 (en) Physical model based gesture recognition

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20150804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151002

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: 20160105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160126

R150 Certificate of patent or registration of utility model

Ref document number: 5877857

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150