(58)【調査した分野】(Int.Cl.,DB名)
前記制御装置は、前記候補データを利用して、前記候補ワークのそれぞれに到達するために要する所要時間の情報を含む所要時間データを生成する所要時間データ生成部を更に有し、
前記対象ワーク選択部は、前記所要時間データを利用して、前記対象ワークを選択する請求項2に記載のロボットピッキングシステム。
前記対象ワーク選択部は、前記所要時間データを第1重み係数で重み付けした第1評価データと、前記形状データを第2重み係数で重みづけした第2評価データとを利用して、
前記対象ワークを選択する請求項5に記載のロボットピッキングシステム。
【発明を実施するための形態】
【0010】
以下、添付図面を参照しながら本発明を実施するための形態を詳細に説明する。図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【0011】
<ロボットピッキングシステム>
図1は、本実施形態のロボットピッキングシステム1を示す図である。
図1に示すように、ロボットピッキングシステム1は、第1ストッカ2内のワークWを1つずつピッキングし(取り出し)、第2ストッカ3に移送するものである。第1ストッカ2は、樹脂製又は金属製の箱であり、内部には複数のワークWが、いわゆるバラ積みの状態で収容されている。第1ストッカ2に収容されているワークWは、例えばボルトといった同一の形状を有する部品である。第1ストッカ2からピッキングされたワークWは、例えば、予め定められた配置や姿勢に従って第2ストッカ3内に収容される。
【0012】
ロボットピッキングシステム1は、ワークWを第1ストッカ2からピッキングして第2ストッカ3に移送するロボットRと、ロボットRの動作を制御する制御装置4と、ワークWの画像データが含まれた画像を取得する画像取得装置6と、を備えている。
【0013】
<ロボット>
図2は、ロボットRを説明するための図である。
図2に示すように、ロボットRは、いわゆる多関節ロボットであり、ベース7と、アーム8と、グリッパ(ロボットエンドエフェクタ)11とを有している。ベース7は、ロボットRの基礎部であり、床面12に固定されている。アーム8は、複数のアーム部8aと、アーム部8a同士を連結する複数の回転関節J1〜J7とを有している。従って、ロボットRは、3次元空間における動作に必要な6自由度の構成に、更に冗長自由度を加えた7自由度の構成を有している。但し、本発明の適用対象ロボットは7自由度機構に限定されず、6自由度或いはそれ以外の機構に対して、軸構成を問わず適用可能である。アーム部8aには、回転関節J1〜J7を回転駆動するためのサーボモータ(不図示)が内蔵され、制御装置4から入力される制御信号により制御される。また、回転関節J1〜J7には、回転角度を検出するためのセンサ9が内蔵されている。センサ9は、検出した角度値をセンサデータとして制御装置4に出力する(
図4参照)。グリッパ11は、ロボットRのアーム8の先端に取り付けられている。グリッパ11は、一対の部材を開閉動作させることによりワークWを保持する。このグリッパ11の開閉動作は制御装置4から入力される制御信号により制御される。
【0014】
ロボットRには、ロボット座標系Cが設定されている。例えば、ロボット座標系Cは、ロボットRが配置された床面12に対して垂直な方向をZ方向とし、床面12に平行な方向をX方向とする。さらに、X方向及びZ方向に直交する方(紙面に垂直な方向)をY方向とする。また、例えば、床面12に対してロボットRを固定した点を固定点Pとし、固定点Pをロボット座標系Cの原点とする。
【0015】
<画像取得装置>
図1に示すように、ロボットRのアーム8の先端には、画像取得装置6が取り付けられている。画像取得装置6は、ワークWに関する情報が含まれた画像データを取得して、画像データを制御装置4に出力する。画像データは、第1ストッカ2内の複数のワークWの撮像データが含まれた画像情報と、画像に映された物体の距離情報とを含んでいる。このような画像データを取得可能な画像取得装置6には、例えば、ステレオカメラ、距離画像センサ、又は画像センサと測距センサとを組み合わせた構成を用いることができる。
【0016】
<制御装置>
制御装置4は、制御信号をロボットRに出力してロボットRの動作を制御する。制御装置4は、ロボットRと相互に通信可能に接続されたコンピュータにより構成されている。
図3は、制御装置4を実現するコンピュータ100を説明するための図である。また、
図4は、制御装置4の機能ブロック図である。
図3に示すように、コンピュータ100は、本実施形態の制御装置4を構成するハードウエアの一例である。コンピュータ100は、CPUを具備しソフトウエアによる処理や制御を行なうパーソナルコンピュータ等の情報処理装置を含む。コンピュータ100は、CPU101、主記憶装置であるRAM102及びROM103、キーボード、マウス及びプログラミングペンダント等の入力装置104、ディスプレイ等の表示部105、ハードディスク等の補助記憶装置106などを含むコンピュータシステムとして構成されている。
図4に示す機能的構成要素は、CPU101、RAM102等のハードウエア上に所定のコンピュータソフトウェアを読み込ませることにより、CPU101の制御のもとで入力装置104、表示部105を動作させるとともに、RAM102や補助記憶装置106におけるデータの読み出し及び書き込みを行うことで実現される。
【0017】
図4に示すように、制御装置4は、候補データ生成部13と、姿勢データ生成部14と、軌跡データ生成部16と、所要時間データ生成部17と、形状データ生成部18と、対象ワーク選択部19とを有している。
【0018】
<候補データ生成部>
候補データ生成部13には、画像取得装置6から画像データが入力される。候補データ生成部13は、画像データを利用して、後述する候補データを生成し、候補データを軌跡データ生成部16、所要時間データ生成部17、形状データ生成部18、及び対象ワーク選択部19に出力する。ここで候補データとは、画像データに撮像された複数のワークWの中から候補ワークWC(
図1参照)を特定するための情報を含むデータである。また、候補ワークWCとは、第1ストッカ2に収容された複数のワークWのうちピッキング動作(取り出し動作)の候補となるワークである。候補ワークWCは、例えば、画像取得装置6の位置からそれぞれのワークWまでの距離を算出して距離が近い順に順位付けを行う。そして、順位の高い方から所定数のワークWが候補ワークWCとして選択される。ここで、画像取得装置6の位置からそれぞれのワークWまでの距離とは、具体的に、画像取得装置6により得た対象ワークWOの重心位置(3次元空間上の並進移動量の3変数)と、ロボットRのグリッパ11の把持位置(同じく並進移動量の3変数)との差のユークリッドノルム(距離)から算出する。或いは、より単純に、ロボット座標系C上の並進移動量の3変数のユークリッドノルム(距離)としても良い。
【0019】
<姿勢データ生成部>
姿勢データ生成部14には、複数のセンサ9から角度データが入力される。そして、姿勢データ生成部14は、角度データを利用して、後述する姿勢データを生成した後に、姿勢データを軌跡データ生成部16に出力する。ここで姿勢データとは、ロボットRの各アーム部8a及びグリッパ11の姿勢並びに位置の情報を含むデータである。これら姿勢及び位置は、ロボット座標系Cを基準座標として規定されている。姿勢データは、ロボットRのセンサ9の角度データに基づく現在角度及びロボットRのリンク情報から順運動学に基づく計算により算出する。
【0020】
<軌跡データ生成部>
軌跡データ生成部16には、候補データ生成部13から候補データが入力されると共に、姿勢データ生成部14から姿勢データが入力される。そして、軌跡データ生成部16は、姿勢データ及び候補データを利用して、後述する軌跡データを生成した後に、軌跡データを対象ワーク選択部19及び所要時間データ生成部17に出力する。ここで、軌跡データとは、ピッキング動作を開始する時点におけるグリッパ11がそれぞれの候補ワークWCに至るまでの軌跡の情報を含むデータである。軌跡の情報は、姿勢データに基づいてピッキング動作を開始する時点におけるグリッパ11の初期状態を決定して、当該初期状態からそれぞれの候補ワークWCに至る軌跡を算出して求めることができる。軌跡を算出する方法は後述する。
【0021】
<所要時間データ生成部>
所要時間データ生成部17には、候補データ生成部13から候補データが入力されると共に、軌跡データ生成部16から軌跡データが入力される。そして、所要時間データ生成部17は、候補データ及び軌跡データを利用して所要時間(タクトタイム)を算出して所要時間データを生成し、所要時間データを対象ワーク選択部19に出力する。ここで、所要時間データとは、初期状態にあるグリッパ11が候補ワークWCのそれぞれに到達するまでに要する所要時間の情報を含むデータである。また、所要時間とは、初期状態にあるグリッパ11が、軌跡に沿って候補ワークWCに至るまでの時間である。所要時間の詳細な算出方法は後述する。
【0022】
<形状データ生成部>
形状データ生成部18には、画像取得装置6から画像データが入力され、候補データ生成部13から候補データが入力される。そして、形状データ生成部18は、画像データを利用して形状データを生成した後に、形状データを対象ワーク選択部19に出力する。ここで、形状データとは、候補ワークWCの形状に基づく形状の情報である。形状情報には、例えば、候補ワークWCの輪郭形状や1つの候補ワークWCの画像が占めるピクセル数がある。これら形状情報は、公知の画像処理の手法を適用することにより取得することができる。
【0023】
<対象ワーク選択部>
対象ワーク選択部19は、各種データを総合的に評価して、候補ワークWCからピッキングに最も適した一のワークWをピッキング対象(取り出し対象)である対象ワークWO(
図1参照)として選択する。対象ワークWOの選択は、後述する評価値Evを候補ワークWCごとに算出し、評価値Evが最も高い候補ワークWCを対象ワークWOとして選択する。そして、対象ワーク選択部19は、ピッキング動作を実行するように、ロボットRに制御信号を出力する。対象ワーク選択部19には、候補データ生成部13から候補データが入力され、軌跡データ生成部16から軌跡データが入力され、所要時間データ生成部17から所要時間データが入力され、形状データ生成部18から形状データが入力される。この対象ワーク選択部19は、干渉確認部21と、可動範囲確認部22と、指標取得部23と、評価値算出部24と、選択部26とを含んでいる。
【0024】
干渉確認部21について説明する。ロボットR及び候補ワークWCの周囲には、ピッキング動作の障害物となる物体が存在することがある。ピッキング動作の障害物となる物体には、例えば、第1ストッカ2の側壁などがある。干渉確認部21は、軌跡に沿ったグリッパ11の動作がこれら障害物と干渉することにより妨げられるか否かを判断する。ここで、軌跡データは、ロボット座標系Cを基準として規定されている。障害物である第1ストッカ2もロボット座標系Cを基準座標としてデータ化されている。そうすると、軌跡と障害物とは同一のロボット座標系Cの空間内に規定されているので、公知の計算方法により干渉の有無を確認することができる。判断の結果は、例えば、グリッパ11の動作が妨げられる場合には候補データに「0」の符号が付され、グリッパ11の動作が妨げられない場合には候補データに「1」の符号が付されることにより記録される。
【0025】
可動範囲確認部22について説明する。可動範囲確認部22には、軌跡データ、各回転関節J1〜J7の可動範囲の情報及びアーム部8aの長さ情報が入力される。そして、可動範囲確認部22は、これら変数を利用して、可動範囲を超えることなく軌跡に沿って動作することが可能であるか否かを判断する。ロボットRの回転関節J1〜J7には、それぞれ可動範囲が設定されている。これら回転関節J1〜J7の可動範囲及びアーム部8aの長さに基づいて、ロボットR全体として可動し得る範囲が設定される。なお、本実施形態の可動範囲は、ロボットR全体として可動し得る範囲に対して、さらに安全マージンを加えた範囲であってもよい。また、可動範囲は、回転関節J1〜J7の可動範囲に加え、アーム8が有する特異点を考慮して設定されたものであってもよい。可動範囲確認部22の判断の結果は、例えば、動作が不可能であると判断された場合には候補データに「0」の符号が付され、動作が可能であると判断された場合には候補データに「1」の符号が付されることにより記録される。
【0026】
指標取得部23について説明する。第1ストッカ2に収容されたワークWは、位置、姿勢及びワークW同士の相対関係が一様でない。このため、画像取得装置6からの距離に基づいて選択された候補ワークWCには、グリッパ11によりピッキングしやすい状態のものやピッキングが困難であるものがある。そこで、指標取得部23は、形状データを利用して、候補ワークWCそれぞれのピッキングしやすさ(取り出しのしやすさ)を示す指標を取得する。例えば、形状情報が候補ワークWCの輪郭形状である場合には、輪郭形状とピッキングしやすさを示す値とが関連付けられたデータベースを用いて、検出された輪郭形状とデータベース内の輪郭形状とをマッチングさせることにより、ピッキングしやすさを示す指標を取得する。また、形状情報が一の候補ワークWCの画像が占めるピクセル数である場合には、ピクセル数とピッキングしやすさを示す値とが関連付けられたデータベースを用いて、ピクセル数とデータベース内の情報とをマッチングさせることにより、ピッキングしやすさを示す指標を取得する。
【0027】
評価値算出部24は、所要時間データ、ピッキングしやすさを示す指標値、干渉確認部21及び可動範囲確認部22の判断の結果を利用して、例えば、下記式(1)により規定される評価値Evを算出する。
Ev(n)=f1((α/T),βD)×f2(A(0,1),B(0,1))・・・(1)
ここで、Ev(n)は第n番目の候補ワークWCが有する評価値である。関数f1は、所要時間と指標値を変数とする関数である。Tは所要時間であり、所要時間Tが小さいほど評価値Evが高いスコアになる。Dはピッキングしやすさを示す指標値であり、指標値Dが大きいほど評価値Evが高いスコアになる。関数f2は、干渉の確認結果と動作の確認結果とを変数とする関数である。Aは干渉の有無を示す変数であり、「0:干渉あり」又は「1:干渉なし」と規定されている。Bは可動範囲内の動作が可能であるか否かを示す変数であり、「0:動作不可能」又は「1:動作可能」が付されている。これら関数f2、変数A及び変数Bによれば、干渉がある又は動作が不可能である場合には、Evのスコアを0として取り出せないことを示すことができる。
【0028】
また、αは所要時間に重み付けをするための第1重み係数であり、第1重み係数により重み付けされた評価時間(α/T)を第1評価データという。また、βは指標値に重み付けをするための第2重み係数であり、第2重み係数により重み付けされた指標値(βD)を第2評価データという。ロボットRのピッキング動作においては、所要時間を短くすることを重視する場合や、ピッキング動作を確実に行うことを重視する場合などがある。そこで、評価値Evに与える所要時間及び指標値の影響を調整する係数として重み係数α、βを用いる。従って、上記式(1)では、第1評価データ(α/T)及び第2評価データ(βD)を用いて評価値Evを算出している。
【0029】
選択部26は、候補ワークWCのそれぞれの評価値Evを順位付けし、評価値Evが最も高かった候補ワークWCをピッキングすべき対象ワークWOとして選択する。
【0030】
続いて、ロボットピッキングシステム1によるピッキング動作の工程を説明する。
図5は、ピッキング動作を実行する主要な工程を説明するための図である。
図5に示すように、まず、画像取得装置6を用いて第1ストッカ2内の画像データを取得して、画像データを制御装置4に出力する(工程S1)。次に、候補データ生成部13において候補データを生成する(工程S2)。続いて、姿勢データ生成部14において姿勢データを生成する(工程S3)。
【0031】
次に、軌跡データを生成する(工程S4)。この工程S4は、軌跡データ生成部16により実行される。
図6〜
図8は、軌跡を計算する方法を説明するための図である。
図6に示すように、グリッパ11が初期点Prにあるとき、目標点Pd1を有する候補ワークWC1までの軌跡を求める場合を例に説明する。ここで初期点Prは、姿勢データ生成部14から入力された姿勢データから生成される。このように軌跡データの生成において、姿勢データから生成された初期点Prを用いることにより、ロボットRの作業状態に応じた精度の高い軌跡を生成することができる。
【0032】
まず、初期点Prから目標点Pd1までの2点間の関係を関節空間において補間して、軌跡L1(
図7参照)を得る方法を説明する。ここで関節空間とは、能動関節ベクトルが形成する空間をいう。関節空間による補間方法では、初期点PrにおけるロボットRの関節角度と、目標点Pd1におけるロボットRの関節角度との差に基づいて各回転関節J1〜J7の角速度指令を生成する。即ち、初期点Prから目標点Pd1までの距離と、予め設定される角速度とに基づいて各回転関節J1〜J7の角速度指令を生成する。
図8(a)は、各回転関節J1〜J7に与えられる角速度指令の一例である。G1は回転関節J2に与えられる角速度指令であり、G2は回転関節J3に与えられる角速度指令であり、G3は回転関節J5に与えられる角速度指令であり、G4は回転関節J6に与えられる角速度指令である。
図8(a)に示すように、ロボットRの回転関節J2,J3,J5,J6の角速度が動作開始及び終了時を除き一定値となるように角速度指令が生成される。なお、
図8(a)に示した角速度指令の例は、ロボット座標系CにおけるXZ平面内の動作を想定したものである。従って、アーム8のZ方向への動作を与える回転関節J1,J4及びJ7の角速度は0とされている。
【0033】
次に、初期点Prから目標点Pd1までの2点間の関係を直交空間(例えばロボット座標系C)において補間して、軌跡L2(
図7参照)を得る方法を説明する。直交空間による補間方法では、初期点Prにおけるグリッパ11の姿勢及び位置と、目標点Pd1におけるグリッパ11の姿勢及び位置との差に基づいて、ロボット座標系CにおけるX軸方向及びZ軸方向の並進速度と、Z軸回りの回転速度の直交速度指令を生成する。即ち、初期点Prから目標点Pd1までの距離と、予め設定される所定速度とに基づいて並進速度及び回転速度の履歴が生成される。
図8(b)は、X軸及びZ軸方向の並進速度と、Z軸回りの回転速度の履歴の一例である。G7はX軸方向への並進速度の履歴であり、G8はZ軸方向への並進速度の履歴であり、G9はZ軸回りの回転速度の履歴である。
図8(b)に示すように、動作開始時および終了時を除き、並進速度及び回転速度が一定となるように直交速度指令が生成される。そして、
図8(b)に示される直交速度指令を各回転関節J1〜J7への角速度指令に変換する。この変換には逆運動学に基づく計算を実施する。
図8(c)は、直交速度指令を角速度指令に変換した結果を示す。G9は回転関節J2に与えられる角速度の指令であり、G10は回転関節J3に与えられる角速度の指令であり、G11は回転関節J5に与えられる角速度の指令であり、G12は回転関節J6に与えられる角速度の指令である。
【0034】
なお、工程S4では、上述した関節空間に基づいて生成された軌跡L1又は直交空間に基づいて生成された軌跡L2のいずれを採用してもよい。
【0035】
図5に戻り、工程S4の次は、所要時間データを生成する(工程S5)。この工程S5は、所要時間データ生成部17により実行される。所要時間データ生成部17は、軌跡データを利用して所要時間データを生成する。以下、関節空間に基づいて所要時間を算出する方法と、直交空間に基づいて所要時間を算出する方法について説明する。
【0036】
関節空間に基づく方法によれば、まず、目標点Pd1に到達したときにおける各回転関節J1〜J7の回転角度の目標値を逆運動学計算により算出する。次に、初期点Prにおける各回転関節J1〜J7の回転角度の現在値を求める。そして、回転角度の目標値から回転角度の現在値の差分値(即ち距離)を算出し、当該差分値を予め指定した角速度で除算することにより所要時間が得られる。この方法によれば、単純な計算により所要時間を得ることができる。すなわち、回転角度の目標値を算出する逆変換計算と、回転角度の目標値と現在値との差分値を求める引き算と、差分値を角速度で除する割り算と、により所要時間が得られる。さらに、
図8(a)に示す角速度指令に対してロボットRのサーボ系の遅れやロボットRの動特性を含めて動作シミュレーションを実行して、より正確な所要時間を算出してもよい。
【0037】
一方、直交空間に基づく方法によれば、まず、目標点Pd1におけるグリッパ11の位置及び姿勢を算出する。次に、初期点Prにおけるグリッパ11の位置及び姿勢を算出する。そして、目標点Pd1における位置及び姿勢と初期点Prにおける位置及び姿勢との差分値(即ち距離)を算出し、当該差分値を予め指定した直交速度で除算することにより所要時間を得ることができる。この方法によれば、差分値を求める引き算と、差分値を直交速度で除算するという単純な計算により所要時間を試算することができる。なお、
図8(b)に示す直交空間に基づく速度指令から
図8(c)に示す関節空間に基づく角速度指令に変換を実施し、更に
図8(c)に示す角速度指令に対してロボットRのサーボ系の遅れやロボットRの動特性を含めて動作シミュレーションを実行して、より正確な所要時間を算出してもよい。
【0038】
なお、工程S45では、上述した関節空間に基づいて生成された所要時間又は直交空間に基づいて生成された所要時間のいずれを採用してもよい。
【0039】
次に、形状データを生成する(工程S6)。この工程S6は、形状データ生成部18により実行される。この工程S6では、画像データに基づいて、例えば、形状データとして候補ワークWCの輪郭形状を算出する。
【0040】
次に、指標値を取得する(工程S7)。この工程S7は、指標取得部23により実行される。例えば、この工程S7では、形状データに含まれている候補ワークWCの輪郭形状と、データベースに保持されている輪郭形状とをマッチングさせ、データベースに保持されている輪郭形状に関連付けられた指標値を取得する。
【0041】
次に、干渉の有無を確認する(工程S8)。この工程S8は、軌跡データ及び障害物のモデルデータに基づいて、干渉確認部21により実行される。
【0042】
次に、可動範囲内における動作が可能か否かを確認する(工程S9)。この工程S9は、軌跡データ及びロボットRの可動範囲情報に基づいて可動範囲確認部22により実行される。
【0043】
次に、評価値Evを算出する(工程S10)。この工程S10は、上記式(1)に基づき、評価値算出部24により実行される。
【0044】
続いて、未処理の候補ワークWCの有無を判断する(工程S11)。未処理の候補ワークWCがある場合(工程S11:YES)には、未処理の候補ワークWCについて上記工程S4〜S10を実施する。一方、未処理の候補ワークWCがない場合には次の工程S12に移行する(工程S11:NO)。上述したように、本実施形態では一つの候補ワークWCについて工程S4〜工程S10を連続的に実施する処理を繰り返し、全ての候補ワークWCについて評価値Evを算出する。
【0045】
そして、候補ワークWCから一つの対象ワークWOを選択する(工程S12)。この工程S12は、対象ワーク選択部19により実行される。この工程S12では、それぞれの候補ワークWCが有する評価値Evにおいて、最も高いスコアを有する候補ワークWCを対象ワークWOとして選択する。
【0046】
最後に、対象ワークWOをピッキングする(工程S13)。制御装置4は、対象ワークWOをピッキングするための動作を実行するようにロボットRに制御信号を出力する。ロボットRは、制御信号に基づいてサーボモータを駆動し、軌跡通りにグリッパ11を動作させる。グリッパ11が対象ワークWOのピッキング位置(取り出し位置)まで到達すると、制御装置4は、グリッパ11に制御信号を出力して対象ワークWOを保持する動作を実行させる。そして、制御装置4は、対象ワークWOを保持したグリッパ11を移動させ、対象ワークWOを第2ストッカ3まで移送させる。以上の工程S1〜S13を実施することにより、第1ストッカ2から第2ストッカ3まで一つのワークWが移送される。
【0047】
本実施形態のロボットピッキングシステム1によれば、制御装置4が対象ワーク選択部19を有し、対象ワーク選択部19が画像データに基づいてピッキングすべき対象ワークWOを選択する。このように、ロボットRの動作を制御する制御装置4が対象ワークWOを選択するので、対象ワークWOの選択において、ロボットRの作業状態を加味することが可能となる。従って、ロボットピッキングシステム1によれば、より好適な条件でピッキング可能な対象ワークWOを選択することができる。
【0048】
また、対象ワーク選択部19は、所要時間データを利用して対象ワークWOを選択する。所要時間データを利用した対象ワークWOの選択によれば、ピッキング動作においてピッキングに要する時間を優先させる制御を行うことができる。
【0049】
また、対象ワーク選択部19は、干渉確認部21における判断結果に利用して対象ワークWOを選択する。干渉確認部21の判断結果を利用した対象ワークWOの選択によれば、ロボットRと候補ワークWCとの間を補間する軌跡上に障害物が存在する場合には、当該軌跡に沿ったピッキングは不可能であると判断することができる。従って、ロボットRと候補ワークWCとの間に障害物が存在するか否かを加味して、ピッキング可能な対象ワークWOを選択することができる。
【0050】
また、対象ワーク選択部19は、ピッキングしやすさの指標値を利用して対象ワークWOを選択する。ピッキングしやすさの指標値を利用した選択によれば、ピッキングを確実に行うことを優先させた制御を行うことができる。
【0051】
また、対象ワーク選択部19は、第1及び第2重み付け係数α,βを利用して対象ワークWOを選択する。第1及び第2重み付け係数α,βを利用した選択によれば、ピッキング動作において、所要時間及びピッキング動作の確実さの優先度合いを調整できるので、作業目的に応じたきめ細かい制御を行うことができる。
【0052】
また、所要時間データ生成部17は、軌跡データを利用して所要時間データを生成する。所要時間データの生成において軌跡データを用いることにより、ロボットRの作業状態に応じた精度の高い所要時間データを生成することができる。
【0053】
以上、本発明の好適な実施形態について説明したが、本発明は必ずしも上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変更が可能である。例えば、画像取得装置6はロボットRのアーム8の先端に取り付けられている必要はなく、第1ストッカ2のワークWが撮影可能な任意の位置に配置してもよい。
【0054】
また、上記実施形態では、1つの候補ワークWCについて工程S4〜工程S10を連続的に実施したが、この処理方法に限定されることはない。例えば、1つの候補ワークWCについて干渉の確認(工程S8)と動作可否の確認(工程S9)を実施し、それら確認結果が良好である候補ワークWCについてのみ評価値を算出するものであってもよい。
【0055】
また、上記実施形態において、候補ワークWCを選択する方法、軌跡を算出する方法、所要時間を算出する方法、干渉の有無を確認する方法、可動範囲における動作可否を確認する方法及び評価値の定義は一例であり、本実施形態に記載の方法に限定されるものではない。
【0056】
また、上述したロボットピッキングシステム1を用いて所望の製品(被加工物)を製造してもよい。