(57)【要約】【課題】ワークピースの搬入出装置において搬入出作業が失敗したとき、その失敗の要因の所在を簡単に特定することができる失敗要因特定方法を提供する。【解決手段】  搬入出装置１の搬入出作業における失敗要因特定方法は、ロボットアーム３０により、ロボットアーム座標系における基準位置及び基準方向を表す基準マークＴが設けられたキャリブレーションステージ１３の所定の位置に、位置及び向きを特定することができるマスターワークＭＷＳを所定の方向へ向けて載置する載置ステップと、キャリブレーションステージ１３に載置されたマスターワークＭＷＳ及び基準マークＴをカメラ４０により撮影する撮影ステップと、前記撮影した画像における基準マークＴの位置及び向きのずれ、並びに前記画像におけるマスターワークＭＷＳの位置及び向きのずれに基づいて、前記失敗の要因がカメラ４０にあるかロボットアーム３０にあるかを判定する失敗要因判定ステップと、を含む。【選択図】図１４
2018034271.tif 000002
【特許請求の範囲】
【請求項１】
ワークピースを搬入出するロボットアームと、前記ワークピースを撮影するカメラと、カメラ座標系における前記ワークピースの位置を表すカメラ座標系ワークデータを計算し、前記カメラ座標系ワークデータを、ロボットアーム座標系における前記ワークピースの位置を表すロボットアーム座標系ワークデータに変換し、前記ロボットアーム座標系ワークデータに基づいて、前記ロボットアームがワークピースを搬入出するように前記ロボットアームを制御する制御装置と、を備えたワークピースの搬入出装置において前記ロボットアームによる前記ワークピースの搬入出作業が失敗したときに、その失敗の要因の所在を特定する、搬入出装置の搬入出作業における失敗要因特定方法であって、
前記ロボットアームにより、ロボットアーム座標系における基準位置及び基準方向を表す基準マークが設けられたステージの所定の位置に、位置及び向きを特定することができるマスターワークを所定の方向へ向けて載置する載置ステップと、
前記ステージに載置された前記マスターワーク及び前記基準マークを前記カメラにより撮影する撮影ステップと、
前記撮影した前記マスターワーク及び前記基準マークの画像における前記基準マークの位置及び向きのずれ、並びに前記画像における前記マスターワークの位置及び向きのずれに基づいて、前記失敗の要因が前記カメラにあるか前記ロボットアームにあるかを判定する失敗要因判定ステップと、
を含む、搬入出装置の搬入出作業における失敗要因特定方法。
【請求項２】
請求項１に記載の搬入出装置の搬入出作業における失敗要因特定方法において、
前記失敗要因判定ステップにおいて、前記基準マークの正規の位置及び正規の向きに対する、前記撮影ステップで撮影された画像における前記基準マークの位置及び向きのうちの少なくとも一方のずれが、所定の閾値を超えるとき、前記失敗の要因が前記カメラにあると判定する、搬入出装置の搬入出作業における失敗要因特定方法。
【請求項３】
請求項１又は２に記載の搬入出装置の搬入出作業における失敗要因特定方法において、
前記失敗要因判定ステップにおいて、前記撮影ステップで撮影された画像における前記基準マークの位置及び向きに基づいて前記マスターワークの正規の位置及び正規の向きを計算するとともに、前記計算した前記マスターワークの正規の位置及び正規の向きに対する、前記撮影ステップで撮影された画像におけるマスターワークの位置及び向きのずれをそれぞれ計算し、前記計算したマスターワークの位置のずれ及び向きのずれのうちの少なくとも一方が所定の閾値を超えるとき、前記失敗の要因が前記ロボットアームにあると判定する、搬入出装置の搬入出作業における失敗要因特定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークピースの搬入出装置において、前記ワークピースの搬入出作業が失敗したとき、その失敗の要因の所在を特定する方法に関する。
【背景技術】
【０００２】
下記特許文献１に記載されているように、ワークピース（製品、部品など）を持ち上げて所定の場所に載置するロボットアームを備えたワークピースの搬入出装置は知られている。この搬入出装置は、ワークピースが載置されたステージ全体をカメラで撮影し、その画像に基づいて、ロボットアームの座標系におけるワークピースの位置を検出している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４２８９６１９号公報
【発明の概要】
【０００４】
上記従来のワークピースの搬入出装置においては、ワークピースの搬入出作業が失敗したときの処置については考慮されていない。一般に、ワークピースの搬入出作業が失敗したとき、カメラ、ロボットアームなど、前記失敗の要因の所在としての可能性が高い箇所をユーザが点検して、前記失敗の要因を特定している。点検箇所の選定及びそれらの点検順序は、ユーザの経験に基づいており、ユーザが搬入出装置に不慣れな場合には、前記失敗の要因が特定されるまでに長い時間がかかる虞がある。
【０００５】
本発明は上記問題に対処するためになされたもので、その目的は、ワークピースの搬入出装置において搬入出作業が失敗したとき、その失敗の要因の所在を簡単に特定することができる失敗要因特定方法を提供することにある。なお、下記本発明の各構成要件の記載においては、本発明の理解を容易にするために、実施形態の対応箇所の符号を括弧内に記載しているが、本発明の各構成要件は、実施形態の符号によって示された対応箇所の構成に限定解釈されるべきものではない。
【０００６】
上記目的を達成するために、本発明の特徴は、ワークピース（Ｗ）を搬入出するロボットアーム（３０）と、ワークピースを撮影するカメラ（４０）と、カメラ座標系におけるワークピースの位置を表すカメラ座標系ワークデータを計算し、カメラ座標系ワークデータを、ロボットアーム座標系におけるワークピースの位置を表すロボットアーム座標系ワークデータに変換し、ロボットアーム座標系ワークデータに基づいて、ロボットアームがワークピースを搬入出するようにロボットアームを制御する制御装置（６０）と、を備えたワークピースの搬入出装置（１）においてロボットアームによるワークピースの搬入出作業が失敗したときに、その失敗の要因の所在を特定する、搬入出装置の搬入出作業における失敗要因特定方法であって、ロボットアームにより、ロボットアーム座標系における基準位置及び基準方向を表す基準マーク（Ｔ）が設けられたステージ（１３）の所定の位置に、位置及び向きを特定することができるマスターワーク（ＭＷＳ）を所定の方向へ向けて載置する載置ステップ（Ｓ３０３）と、ステージに載置されたマスターワーク及び基準マークをカメラにより撮影する撮影ステップ（Ｓ３０４）と、前記撮影したマスターワーク及び基準マークの画像における基準マークの位置及び向きのずれ、並びに前記画像におけるマスターワークの位置及び向きのずれに基づいて、前記失敗の要因がカメラにあるかロボットアームにあるかを判定する失敗要因判定ステップ（Ｓ３０５〜Ｓ３１０）と、を含む、搬入出装置の搬入出作業における失敗要因特定方法としたことにある。なお、カメラ座標系は、撮影した画像を構成する複数のピクセルのうちの１つのピクセルの座標を規定する際に用いられる座標系である。カメラ座標系の原点は、撮影された画像内の所定の点（例えば画像の左下の点）である。また、ロボットアーム座標系は、ロボットアームが設定された空間内の１つの点の座標を規定する際に用いられる座標系である。ロボットアーム座標系の原点は、ロボットアームが設置された空間内の所定の点（例えばロボットアームの１つの関節）である。
【０００７】
この場合、失敗要因判定ステップにおいて、基準マークの正規の位置及び正規の向きに対する、撮影ステップで撮影された画像における基準マークの位置及び向きのうちの少なくとも一方のずれが、所定の閾値（ΔＶＴ，ΔθＴ）を超えるとき、前記失敗の要因がカメラにあると判定するとよい。
【０００８】
さらにこの場合、失敗要因判定ステップにおいて、基準マークの正規の位置及び正規の向きに対する、撮影ステップで撮影された画像における基準マークの位置及び向きのうちの少なくとも一方のずれが、所定の閾値（ΔＶＴ，ΔθＴ）を超え、且つ、撮影ステップで撮影された画像における基準マークの位置及び向きに基づいて計算されたマスターワークの正規の位置及び正規の向きに対する、撮影ステップで撮影された画像におけるマスターワークの位置のずれが所定の閾値（ΔＶＭＷＳ）以下であるとき、前記失敗の要因がカメラにあると判定してもよい。
【０００９】
また、この場合、失敗要因判定ステップにおいて、前記撮影ステップで撮影された画像における基準マークの位置及び向きに基づいてマスターワークの正規の位置及び正規の向きを計算するとともに、前記計算したマスターワークの正規の位置及び正規の向きに対する、前記撮影ステップで撮影された画像におけるマスターワークの位置及び向きのずれをそれぞれ計算し、前記計算したマスターワークの位置のずれ及び向きのずれのうちの少なくとも一方が所定の閾値を超えるとき、前記失敗の要因がロボットアームにあると判定するとよい。
【００１０】
搬入出作業の失敗の要因は、カメラ及びロボットアームのいずれか一方又は両方にある可能性が高い。前記失敗の要因がカメラ及びロボットアームのいずれか一方又は両方にある場合には、カメラで撮影した画像にずれが生じる。そこで、本発明においては、ロボットアーム座標系における基準位置及び基準向きを表す基準マークを設けておき、その基準マークを撮影した画像における基準マークのずれ及び前記画像における基準マークに対するマスターワークの位置のずれに基づいて、前記失敗の要因の所在を特定している。本発明によれば、搬入出作業が失敗したとき、前記失敗の要因の所在を簡単に特定することができる。なお、失敗要因判定ステップを実行した結果、前記失敗の要因がカメラ及びロボットアームにはない場合には、ワークピースに何らかの問題が生じていると考えられるので、ユーザはワークピースの形状、寸法などを確認すればよい。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る搬入出装置の概略図である。
【図２】図１の搬入出装置の平面図である。
【図３】ワークピースの斜視図である。
【図４】ワークピースを保持した状態を示す斜視図である。
【図５】保持装置及びカメラの斜視図である。
【図６】トレイの平面図である。
【図７】キャリブレーション処理のフローチャートである。
【図８】マスターワークを載置する座標を示す図である。
【図９】キャリブレーションステージを撮影する際のロボットアームの姿勢を示す側面図である。
【図１０】キャリブレーションステージを撮影した画像を示す図である。
【図１１】パレタイジング処理におけるロボットアーム座標系とカメラ座標系との関係を示す図である。
【図１２】パレタイジング処理のフローチャートである。
【図１３】パレットの１つの区画を撮影した画像を示す図である。
【図１４】失敗要因特定処理のフローチャートである。
【図１５】基準マークのずれを示す図である。
【図１６】マスターワークのずれを示す図である。
【発明を実施するための形態】
【００１２】
本発明の一実施形態に係る搬入出装置１について説明する。まず、搬入出装置１の概略について簡単に説明しておく。搬入出装置１は、図１に示すように、フレーム１０、パレット２０、ロボットアーム３０、カメラ４０、コンベア５０、及び制御装置６０を含む。図２に示すように、搬入出装置１は、パレット２０内のワークピースＷを取り出してコンベア５０に載置する作業（ワークピースの搬入出作業）を繰り返す。なお、図２においては、ロボットアーム３０の一部（ベース３１）のみを図示している。
【００１３】
つぎに、搬入出装置１の構成について具体的に説明する。フレーム１０は、メインステージ１１、パレットステージ１２、キャリブレーションステージ１３を有する（図１参照）。メインステージ１１は、平面視において長方形を呈する天板１１１と、天板１１１を支持する脚１１２からなる。天板１１１の上面にパレットステージ１２、キャリブレーションステージ１３及びロボットアーム３０が取り付けられている。
【００１４】
パレットステージ１２は、平面視において長方形を呈する天板１２１と、天板１２１を支持する脚１２２からなる。天板１２１の上面は平面状である。ただし、天板１２１の上面であって、天板１２１の向かいあう１組の角部に、上方へ突出したパレットガイド１２３，１２３が設けられている（図２参照）。パレットガイド１２３は、天板１２１の長辺に沿って延びる凸部１２３ａと天板１２１の短辺に沿って延びる凸部１２３ｂとからなる。凸部１２３ａ及び凸部１２３ｂの延設方向に垂直な断面は長方形を呈する。後述するように、天板１２１の上面にパレット２０が載置されるが、パレットガイド１２３，１２３は、パレット２０の位置決め部材として機能する。
【００１５】
キャリブレーションステージ１３は、平面視において矩形を呈する天板１３１と、天板１３１を支持する脚１３２からなる（図１参照）。天板１３１の上面は平面状である。キャリブレーションステージ１３の天板１３１は、パレットステージ１２の天板１２１よりも小さい。キャリブレーションステージ１３は、詳しくは後述するように、ロボットアーム３０の座標系とカメラ４０の座標系との関係を表すキャリブレーションデータを設定する際に利用される。また、天板１３１の上面には、基準マークＴが印刷されている（図２及び１５参照）。基準マークＴは、天板１３１の角部（図２において左上の角部）に設けられている。基準マークＴは、座標軸Ｘ及び座標軸Ｙにそれぞれ平行に延びる線分ＴＸ及び線分ＴＹからなり、線分ＴＸの一端（図１５において線分ＴＸの左端）が線分ＴＹの中央に交わっている。線分ＴＸと線分ＴＹの交点が本発明の基準位置に相当し、線分ＴＸ（又は線分ＴＹ）の方向が本発明の基準方向に相当する。基準マークＴは、詳しくは後述するように、搬入出作業の失敗の要因の所在を特定する際に利用される。
【００１６】
パレット２０は、浅い箱状に形成されている。すなわち、パレット２０は、内部に空間を有する直方体であって、その上面は開放されている。パレット２０がパレットステージ１２に載置された状態において、パレット２０の対向する一組の角部の外周面がパレットガイド１２３，１２３に当接する。つまり、パレット２０の短辺に平行な方向の移動が凸部１２３ａ，１２３ａによって規制されるとともに、パレット２０の長辺に平行な方向の移動が凸部１２３ｂ，１２３ｂによって規制される。これにより、天板１２１の上面におけるパレット２０の位置及び姿勢が決定される。パレット２０の内部は、複数の仕切り板（仕切り壁）によって複数の区画Ｄに分割されている。具体的には、パレット２０の短辺方向に沿って６つの区画Ｄが形成され、パレット２０の長辺方向に沿って８つの区画Ｄが形成されている（図２参照）。つまり、パレット２０は、４８個の区画Ｄを有する。なお、上記のキャリブレーションステージ１３の天板１３１の面積及び形状は、パレット２０の１つの区画Ｄの面積及び形状と略同一である。また、この搬入出装置１による作業工程とは別の工程において、パレット２０の各区画Ｄに１つのワークピースＷが予め格納されている。
【００１７】
ここでワークピースＷについて説明しておく。ワークピースＷは、図３に示すように、細長い板状の部材である。ワークピースＷの先端側から末端側へ向かうに従って、ワークピースＷの幅方向（ワークピースＷの長手方向及び板厚方向に垂直な方向）の寸法が徐々に大きくなっている。ワークピースＷの平面視において、ワークピースＷの先端及び末端は、円弧状を呈する。また、ワークピースＷの末端側の部分には、ワークピースＷの板厚方向に貫通する貫通孔Ｈが形成されている。
【００１８】
なお、ワークピースＷがパレット２０に格納された状態において、各ワークピースＷの板厚方向が鉛直方向に一致しているが、各区画におけるワークピースＷの位置及び姿勢は統一されていない（図２参照）。全ての区画にワークピースＷが格納されたパレット２０が、パレットステージ１２の天板１２１の上面に載置される。ロボットアーム３０によってパレット２０内の全てのワークピースＷが取り出されて空になったパレット２０は、パレットステージ１２から取り除かれ、次のパレット２０がパレットステージ１２に載置される。なお、このパレット２０の交換作業は、搬入出装置１とは別の装置により実行される。
【００１９】
ロボットアーム３０は、周知の垂直多関節型ロボットである。すなわち、ロボットアーム３０は、各関節に対応したサーボモータを備えている。関節を介して接続された部位同士の角度をサーボモータによって変更することができる。これにより、ロボットアーム３０の姿勢を任意に設定可能である。以下、ロボットアーム３０の具体的構成について説明する。ロボットアーム３０は、ベース３１、旋回ボディ３２、第１アーム３３、第２アーム３４、第３アーム３５及びロボットハンド３６を有する（図１参照）。
【００２０】
ベース３１は、円柱状に形成されていて、メインステージ１１の天板１１１の上面に固定されている。ベース３１の中心軸の方向が鉛直方向に一致している。ベース３１の上面の中心が、ロボットアーム３０の座標系の原点Ｏｒである（図１及び図２参照）。ロボットアーム３０の座標軸Ｘ、座標軸Ｙ及び座標軸Ｚは、原点Ｏｒにて互いに直交する。座標軸Ｚは、鉛直方向に一致している。パレット２０の短辺方向及び長辺方向は、座標軸Ｘ及び座標軸Ｙにそれぞれ一致している。以下の説明において、ロボットアーム３０の座標系をロボットアーム座標系と呼ぶ。また、ロボットアーム座標系における「Ａ」の座標を「Ａ（ｘＡ，ｙＡ，ｚＡ）」のように標記する。
【００２１】
旋回ボディ３２は、円柱状に形成されていて、ベース３１の上面に取り付けられている。旋回ボディ３２は、座標軸Ｚのまわりに回動可能である。
【００２２】
第１アーム３３は、長尺状に形成され、その長手方向における末端部が旋回ボディ３２の上部に取り付けられている。第１アーム３３は、旋回ボディ３２の径方向に平行な方向に延びる軸のまわりに回動可能である。
【００２３】
第２アーム３４は、長尺状に形成され、その長手方向における末端部が第１アーム３３の長手方向における先端部に取り付けられている。第２アーム３４は、旋回ボディ３２の径方向に平行な方向に延びる軸のまわりに回動可能である。
【００２４】
第３アーム３５は、長尺状に形成され、その長手方向における末端部が第２アーム３４の長手方向における先端部に取り付けられている。第３アーム３５の末端面が第２アーム３４の先端面に対向している。第３アーム３５は、第２アーム３４の長手方向（第２アーム３４の中心軸方向）に延びる軸のまわりに回動可能である。
【００２５】
ロボットハンド３６は、長尺状に形成され、その長手方向における末端部が第３アーム３４の長手方向における先端部に取り付けられている。ロボットハンド３６は、第３アーム３４の長手方向に垂直な方向に延びる軸のまわりに回動可能である。
【００２６】
ロボットハンド３６の先端部には、各種工具、装置などが着脱可能である。本実施形態では、ワークピースＷを保持する保持装置３７が取り付けられている。保持装置３７は、円柱状に形成された基部３７１と、基部３７１の先端面に設けられた３つの指部３７２からなる。ロボットハンド３６には、基部３７１をロボットハンド３６の中心軸のまわりに回転させる回動装置が設けられている。３つの指部３７２は、基部３７１の周方向に互いに１２０°の間隔をおいて、基部３７１の先端面に取り付けられている。指部３７２は、基部３７１の径方向に移動可能である。
【００２７】
ロボットアーム３０は、次のようにしてワークピースＷを保持する。まず、３つの指部３７２を基部３７１の径方向における中心側へ移動させて、３つの指部３７２が互いに近接した状態に設定する。つぎに、ワークピースＷの貫通孔Ｈに３つの指部３７２の先端部を挿入する。つぎに、３つの指部３７２を基部３７１の径方向における中心側とは反対側へ移動させて、３つの指部３７２を貫通孔Ｈの内周面に押し当てる（図４参照）。これにより、ワークピースＷがロボットアーム３０に保持される。
【００２８】
カメラ４０は、ＣＣＤ（Ｃｈａｒｇｅ−Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）によって構成されたデジタルカメラである。ロボットハンド３６には、カメラ４０をロボットハンド３６の中心軸のまわりに回転させる回動装置が設けられていて、この回動装置にカメラ４０が取り付けられている。カメラ４０の光軸は、ロボットハンド３６の長手方向に平行である。カメラ４０のレンズがロボットアーム３０の先端側へ向けられている。また、カメラ４０は、撮影対象物を照らす照明装置を備える。なお、基部３７１の回動装置とカメラ４０の回動装置が別々に設けられている。つまり、図５に示すように、基部３７１とカメラ４０とを独立して回動させることができる。
【００２９】
以下の説明において、カメラ４０にて撮影した画像の左下をカメラ４０の座標系の原点Ｏｃとする（図１０、図１３、図１５及び図１６参照）。カメラ４０の座標軸Ｕ及び座標軸Ｖは、原点Ｏｃにて互いに直交する。座標軸Ｕは、画像の横方向に一致している。また、座標軸Ｖは、画像の縦方向に一致している。以下の説明において、カメラ４０の座標系をカメラ座標系と呼ぶ。また、カメラ座標系における「Ａ」の座標を「Ａ（ｕＡ，ｖＡ）」のように標記する。
【００３０】
コンベア５０は、ロボットアーム３０によってパレット２０から取り出されたワークピースＷを載置するトレイ５１と、図示しないモータによって駆動されてトレイ５１を次の工程へ搬送するベルト５２とを備える（図１参照）。トレイ５１の搬送方向は、座標軸Ｘに平行である。トレイ５１は平板状に形成されている。図６に示すように、トレイ５１には、ワークピースＷの位置及び姿勢を規定するワークピースガイド５１１が設けられている。つまり、図６において座標軸Ｘに平行な方向に対して反時計まわりに角度θ０だけ回転した方向へワークピースＷの先端が向けられた状態で、ワークピースＷがトレイ５１に載置される。
【００３１】
制御装置６０は、演算装置、記憶装置、入力装置、表示装置などを備えたコンピュータ装置である。制御装置６０は、所定のコンピュータプログラムに従って、ロボットアーム３０、カメラ４０及びコンベア５０を制御する。つまり、制御装置６０は、所定のコンピュータプログラムに従って、ロボットアーム３０の姿勢を所定の姿勢に設定して、ロボットアーム３０の先端（３つの指部３７２を閉じた状態における指部３７２の先端）の位置を所定の位置に設定する。また、制御装置６０は、所定のコンピュータプログラムに従って、ロボットハンド３６の中心軸まわりのカメラ４０の回動位置を制御するとともに、カメラ４０に対象物を撮影させ、その画像データを取得して、前記取得した画像データを解析する。また、制御装置６０は、所定のコンピュータプログラムに従って、ベルト５２を駆動するモータを回転させてトレイ５１を搬送する。
【００３２】
つぎに、搬入出装置１の動作について説明する。搬入出装置１が設置されたとき、ロボットアーム座標系とカメラ座標系とを対応付ける必要がある。つまり、両座標系の関係を表すキャリブレーションデータ（後述するキャリブレーション係数αｘ及びキャリブレーション係数αｙ、並びに角度θＲ−Ｃ）を設定する必要がある。以下、キャリブレーションデータを設定するキャリブレーション処理について説明する。
【００３３】
ユーザが入力装置を用いてキャリブレーション処理の開始を指示すると、制御装置６０は、図７に示すステップＳ１００にて、キャリブレーション処理を開始する。つぎに、制御装置６０は、ステップＳ１０１にて、初期化処理を実行する。具体的には、制御装置６０は、ロボットアーム３０の姿勢を所定の初期状態に設定するとともに、ロボットハンド３６の中心軸まわりのカメラ４０の回動位置を所定の初期位置に設定する。
【００３４】
つぎに、制御装置６０は、ステップＳ１０２にて、ロボットアーム３０に、キャリブレーション用のワークピースであるマスターワークＭＷを保持させ、キャリブレーションステージ１３の天板１３１における第１ポイントＰ１に載置させる（図８参照）。なお、マスターワークＭＷは、円環状に形成されている。初期状態において、マスターワークＭＷは、所定の位置（例えば、天板１３１の中央）に載置されている（図２参照）。また、ロボットアーム座標系における第１ポイントＰ１の座標Ｐ１（ｘＰ１，ｙＰ１，ｚＰ１）は予め設定されている。つぎに、制御装置６０は、ステップＳ１０３にて、ロボットアーム３０を所定の姿勢に設定し、カメラ４０にキャリブレーションステージ１３を撮影させる。具体的には、図９に示すように、キャリブレーションステージ１３の天板１３１の中心の直上にロボットアーム３０の先端を位置させる。この際、制御装置６０は、カメラ４０が下方を向くように、ロボットアーム３０の姿勢を設定する。また、ロボットアーム３０の先端と天板１３１との距離Δｚは、天板１３１の全体がカメラ４０の画角内に収まり、且つピントが合うような値に予め設定されている。制御装置６０は、撮影された画像を表す画像データをカメラ４０から取得する。
【００３５】
つぎに、制御装置６０は、ステップＳ１０４にて、カメラ座標系における第１ポイントＰ１の座標を検出する。すなわち、制御装置６０は、前記取得した画像データ及び周知の画像認識技術を用いて、カメラ座標系におけるマスターワークＭＷの中心座標を検出し、座標Ｐ１（ｕＰ１，ｖＰ１）として記憶する（図１０参照）。なお、上記のように、ロボットハンド３６の中心軸まわりのカメラ４０の回動位置が所定の初期位置に設定されているが、この状態では、ロボットアーム座標系の座標軸Ｘ（座標軸Ｙ）の方向と、カメラ座標系の座標軸Ｕ（座標軸Ｖ）の方向とがずれている可能性が高い。図１０に示す例においては、ロボットアーム座標系の座標軸Ｘ（座標軸Ｙ）の方向に対し、カメラ座標系の座標軸Ｕ（座標軸Ｖ）の方向が時計回りに角度θＲ−Ｃだけずれている。
【００３６】
つぎに、制御装置６０は、ステップＳ１０５にて、ロボットアーム３０に、マスターワークＭＷを保持させ、第１ポイントＰ１から座標軸Ｘに平行な方向に「Δｘ」だけずれた第２ポイントＰ２に移動させる（図８参照）。つまり、制御装置６０は、マスターワークＭＷを座標Ｐ２（ｘＰ２，ｙＰ２，ｚＰ２）に載置させる。つぎに、制御装置６０は、ステップＳ１０６にて、ロボットアーム３０を所定の姿勢に設定し、カメラ４０にキャリブレーションステージ１３を撮影させて、その画像データを取得する。ステップＳ１０６におけるロボットアーム３０の姿勢及びカメラ４０の回動位置は、ステップＳ１０３におけるロボットアーム３０の姿勢及びカメラ４０の回動位置と同一である。つぎに、制御装置６０は、ステップＳ１０７にて、カメラ座標系における第２ポイントＰ２の座標を検出する。すなわち、制御装置６０は、前記取得した画像データ及び周知の画像認識技術を用いて、カメラ座標系におけるマスターワークＭＷの中心座標を検出して、座標Ｐ２（ｕＰ２，ｖＰ２）として記憶する（図１０参照）。
【００３７】
つぎに、制御装置６０は、ステップＳ１０８にて、ロボットアーム３０に、マスターワークＭＷを保持させ、第１ポイントＰ１から座標軸Ｙに平行な方向にΔｙだけずれた第３ポイントＰ３に移動させる（図８参照）。つまり、制御装置６０は、マスターワークＭＷを座標Ｐ３（ｘＰ３，ｙＰ３，ｚＰ３）に載置させる。つぎに、制御装置６０は、ステップＳ１０９にて、ロボットアーム３０を所定の姿勢に設定し、カメラ４０にキャリブレーションステージ１３を撮影させて、その画像データを取得する。ステップＳ１０９におけるロボットアーム３０の姿勢及びカメラ４０の回動位置は、ステップＳ１０３におけるロボットアーム３０の姿勢及びカメラ４０の回動位置と同一である。つぎに、制御装置６０は、ステップＳ１１０にて、カメラ座標系における第３ポイントＰ３の座標を検出する。すなわち、制御装置６０は、前記取得した画像データ及び周知の画像認識技術を用いて、カメラ座標系におけるマスターワークＭＷの中心座標を検出して、座標Ｐ３（ｕＰ３，ｖＰ３）として記憶する（図１０参照）。
【００３８】
ここで、座標Ｐ１（ｕＰ１，ｖＰ１）と座標Ｐ２（ｕＰ２，ｖＰ２）を結ぶ直線は、ロボットアーム座標系においては座標軸Ｘに平行である。また、座標Ｐ１（ｕＰ１，ｖＰ１）と座標Ｐ３（ｕＰ３，ｖＰ３）を結ぶ直線は、ロボットアーム座標系においては座標軸Ｙに平行である。座標Ｐ１（ｕＰ１，ｖＰ１）と座標Ｐ２（ｕＰ２，ｖＰ２）との距離Δｄ１−２がロボットアーム座標系における距離Δｘに対応している。また、座標Ｐ１（ｕＰ１，ｖＰ１）と座標Ｐ３（ｕＰ３，ｖＰ３）との距離Δｄ１−３がロボットアーム座標系における距離Δｙに対応している。制御装置６０は、ステップＳ１１１にて、前記検出した座標Ｐ１（ｕＰ１，ｖＰ１）、座標Ｐ２（ｕＰ２，ｖＰ２）、及び座標Ｐ３（ｕＰ３，ｖＰ３）に基づいて、キャリブレーション係数αｘ及びキャリブレーション係数αｙを計算する。キャリブレーション係数αｘは、距離Δｄ１−２と距離Δｘの比に相当し、キャリブレーション係数αｙは、距離Δｄ１−３と距離Δｙの比に相当する。具体的には、キャリブレーション係数αｘ及びキャリブレーション係数αｙは、下記の式（１）及び式（２）に基づいてそれぞれ計算される。
【数１】
2018034271.tif 000003
【数２】
2018034271.tif 000004
【００３９】
つぎに、制御装置６０は、ステップＳ１１２にて、前記検出した座標Ｐ１（ｕＰ１，ｖＰ１）、座標Ｐ２（ｕＰ２，ｖＰ２）、及び座標Ｐ３（ｕＰ３，ｖＰ３）に基づいて、ロボットアーム座標系に対するカメラ座標系の角度θＲ−Ｃを計算する。具体的には、角度θＲ−Ｃは、下記の式（３）又は式（４）に基づいて計算される。
【数３】
2018034271.tif 000005
【数４】
2018034271.tif 000006
【００４０】
つぎに、制御装置６０は、ステップＳ１１３にて、カメラ４０を、ロボットハンド３６の中心軸まわりに角度θＲ―Ｃだけ回動させて、ロボットアーム３０の座標軸Ｘ（座標軸Ｙ）の方向とカメラ４０の座標軸Ｕ（座標軸Ｖ）の方向を一致させる。つぎに、制御装置６０は、ステップＳ１１４にて、キャリブレーション処理を終了する。
【００４１】
つぎに、パレット２０内のワークピースＷを取り出してコンベア５０に載置するパレタイジング処理について説明する。この処理においては、制御装置６０は、カメラ４０が常に下方へ向けられた状態になるようにロボットアーム３０の姿勢を制御する。さらに、制御装置６０は、図１１に示すように、座標軸Ｘ（座標軸Ｙ）と座標軸Ｕ（座標軸Ｖ）が常に平行である（ロボットアーム座標系に対するカメラ座標系の角度θＲ―Ｃが常に０°である）ように、カメラ４０の回動装置を制御する。つまり、制御装置６０は、ロボットアーム３０（旋回ボディ３２）を座標軸Ｚのまわりに角度θだけ回動させたとき、カメラ４０をロボットアーム３０の回動方向とは逆方向へ角度θだけ回動させる。
【００４２】
ユーザが入力装置を用いてパレタイジング処理の開始を指示すると、制御装置６０は、図１２に示すステップＳ２００にてパレタイジング処理を開始する。つぎに、制御装置６０は、ステップＳ２０１にて、初期化処理を実行する。この初期化処理において、ユーザは、入力装置を用いて、パレット２０の区画に関する情報を入力する。具体的には、ユーザは、パレット２０の長辺方向の分割数及び短辺方向の分割数を入力する。なお、パレット２０の寸法及びロボットアーム座標系におけるパレット２０の座標（例えば、パレット２０の中心の座標、パレット２０の角部の座標など）は予め設定されている。制御装置６０は、前記入力された分割数、並びに予め設定されているパレット２０の寸法及び座標に基づいて、ロボットアーム座標系における各区画Ｄの中心の座標Ｄ（ｘＤ，ｙＤ，ｚＤ）を計算する。
【００４３】
つぎに、制御装置６０は、ステップＳ２０２にて、処理対象として設定する１つの区画Ｄを選択する。このとき、未だワークピースＷが取り出されていない区画のうちの１つの区画Ｄを選択する。つぎに、制御装置６０は、ステップＳ２０３にて、ロボットハンド３６を、前記選択した区画Ｄの中心の直上に移動させる。なお、この際のロボットアーム３０の先端と前記選択した区画Ｄとの距離は、キャリブレーション処理のステップＳ１０３におけるロボットアーム３０の先端と天板１３１との距離Δｚと同一である。上記のように、天板１３１の面積及び形状は、１つの区画Ｄの面積及び形状と略同等であるので、ロボットアーム３０がこの姿勢に設定されれば、前記選択した区画Ｄの全体がカメラ４０の画角内に収まり、且つピントが合う。
【００４４】
つぎに、制御装置６０は、ステップＳ２０４にて、カメラ４０に、前記選択した区画Ｄの全体を撮影させ、その画像データを取得する。つぎに、制御装置６０は、ステップＳ２０５にて、前記取得した画像データ及び周知の画像認識技術を用いて、カメラ座標系におけるワークピースＷの座標Ｗ（ｕｗ，ｖｗ）を検出して記憶する（図１３参照）。なお、ワークピースＷの座標とは、ワークピースＷの貫通孔Ｈの中心の座標を意味する。座標Ｗ（ｕｗ，ｖｗ）は、本発明のカメラ座標系ワークデータに相当する。
【００４５】
つぎに、制御装置６０は、ステップＳ２０６にて、前記取得した画像データ及び周知の画像認識技術を用いて、カメラ座標系における前記選択した区画Ｄの中心の座標Ｄ（ｕＤ，ｖＤ）を検出して記憶する（図１３参照）。つぎに、制御装置６０は、ステップＳ２０７にて、座標Ｗ（ｕＷ，ｖＷ）及び座標Ｄ（ｕＤ，ｖＤ）、並びにキャリブレーション係数αｘ及びキャリブレーション係数αｙを用いて、ロボットアーム座標系におけるワークピースＷの座標Ｗ（ｘＷ，ｙＷ，ｚＷ）を、下記の式（５）に従って計算する。なお、「ｚＷ」は、座標Ｄ（ｘＤ，ｙＤ，ｚＤ）の座標軸Ｚの方向の成分である「ｚＤ」と同一である。座標Ｗ（ｘＷ，ｙＷ，ｚＷ）は本発明のロボットアーム座標系ワークデータに相当する。
【数５】
2018034271.tif 000007
【００４６】
つぎに、制御装置６０は、ステップＳ２０８にて、前記取得した画像データ及び周知の画像認識技術を用いて、ワークピースＷの向きを検出する。すなわち、制御装置６０は、カメラ座標系におけるワークピースＷの長手方向と座標軸Ｕとの間の角度θＷを検出する。
【００４７】
つぎに、制御装置６０は、ステップＳ２０９にて、ロボットアーム３０の先端を座標Ｗ（ｘＷ，ｙＷ，ｚＷ）に移動させる。そして、ロボットアーム３０に、ワークピースＷを持ち上げさせ、ロボットアーム３０の先端をトレイ５１の上方に移動させる。なお、ロボットアーム座標系におけるトレイ５１の座標は予め設定されている。つぎに、制御装置６０は、ステップＳ２１０にて、トレイ５１にワークピースＷを載置する際のワークピースＷの角度θ０（図６参照）と前記検出した角度θＷ（図１３参照）との差分だけ、保持装置３７の基部３７１を回転させる。つぎに、制御装置６０は、ステップＳ２１１にて、ロボットアーム３０の先端を降下させ、ワークピースＷをトレイ５１に載置させる。つぎに、制御装置６０は、ステップＳ２１２にて、トレイ５１を次の工程へ搬送させ、空のトレイ５１を予め設定された座標に搬入させる。
【００４８】
つぎに、制御装置６０は、ステップＳ２１３にて、全てのワークピースＷがパレット２０から取り出されたか否かを判定する。すなわち、ワークピースＷがパレット内に残っている場合（ステップＳ２０２乃至ステップＳ２１２からなる一連の処理が実行された回数が区画数より小さいとき）、制御装置６０は、「Ｎｏ」と判定して、ステップＳ２０２に処理を進める。この場合において、前回選択した区画Ｄと、今回以降に選択する区画Ｄとの相対的な位置関係は、パレット２０の長辺方向の分割数及び短辺方向の分割数、パレット２０の寸法により、予め定められている。従って、前回選択した区画Ｄと今回選択する区画Ｄとの間における相対的な位置関係に基づいて、ロボットハンド３６を、今回選択した区画Ｄの中心の直上に移動させることができる。一方、全てのワークピースＷがパレット２０から取り出された場合（つまり、ステップＳ２０２乃至ステップＳ２１２からなる一連の処理が区画数と同じ回数だけ繰り返されたとき）、制御装置６０は、「Ｙｅｓ」と判定して、ステップＳ２１４にて、パレタイジング処理を終了する。
【００４９】
つぎに、ワークピースＷを安定して保持できないとき、ワークピースＷをトレイ５０に適切に載置できないときなど、搬入出作業が失敗したとき、その失敗の要因の所在を特定する失敗要因特定処理について説明する。この失敗要因特定処理においては、キャリブレーション処理において用いたマスターワークＭＷとは異なるマスターワークＭＷＳを用いる。マスターワークＭＷＳは、マスターワークＭＷと同様の円環状に形成されているが、その向きを表すための指標線Ｌが設けられている（図１６参照）。なお、失敗要因特定処理の開始前において、マスターワークＭＷＳは、キャリブレーションステージ１３の所定の初期位置（例えば角部）に載置されている。マスターワークＭＷＳの初期位置の座標は、制御増置６０内の記憶装置に予め記憶されている。
【００５０】
ユーザが入力装置を用いて失敗要因特定処理の開始を指示すると、制御装置６０は、図１４に示すステップＳ３００にて失敗要因特定処理を開始する。つぎに、制御装置６０は、ステップＳ３０１にて、初期化処理を実行する。具体的には、制御装置６０は、前記失敗の要因がカメラ４０にあるか否かを表すフラグＦＣを、前記失敗の要因がカメラ４０にはないことを表す「０」に設定する。また、制御装置６０は、前記失敗の要因がロボットアーム３０にあるか否かを表すフラグＦＲを、前記失敗の要因がロボットアーム３０にはないことを表す「０」に設定する。
【００５１】
つぎに、制御装置６０は、ステップＳ３０２にて、ロボットアーム３０に、マスターワークＭＷＳを移動させる。具体的には、制御装置６０は、マスターワークＭＷＳが天板１３１の中央にて座標軸Ｘのプラス側（図２において右側）へ向くようにマスターワークＭＷＳを載置することを表す制御データ（ロボットアーム座標系における天板１３１の中央の座標、保持装置３７の基部３７１の回動角度など）をロボットアーム３０に供給する。なお、マスターワークＭＷＳを保持する際、マスターワークＭＷＳの初期座標を制御装置６０からロボットアーム３０に供給すればよい。ただし、ユーザがロボットアーム３０を手動操作して、ロボットアーム３０にマスターワークＭＷＳを保持させてもよい。
【００５２】
つぎに、制御装置６０は、ステップＳ３０３にて、カメラ４０（ロボットアーム３０の先端）をキャリブレーションステージ１３の上方へ移動させる。具体的には、制御装置６０は、カメラ４０がキャリブレーションステージ１３の上方に位置し、ロボットアーム３０の座標軸Ｘ（座標軸Ｙ）の方向とカメラ４０の座標軸Ｕ（座標軸Ｖ）の方向が一致するようにロボットアーム３０及びカメラ４０の回動装置を駆動させることを表す制御データをロボットアーム３０及びカメラ４０の回動装置に供給する。つまり、この制御データが表すロボットアーム３０の姿勢及びカメラ４０の回動角度は、上記のステップＳ１１３を実行した直後の状態と同一である。
【００５３】
つぎに、制御装置６０は、ステップＳ３０４にて、カメラ４０にキャリブレーションステージ１３（基準マークＴ及びマスターワークＭＷＳ）を撮影させて、その画像を表す画像データを取得する。
【００５４】
上記のように、ステップＳ３０３にて、カメラ４０をキャリブレーションステージ１３の上方へ移動させることを表す制御データがロボットアーム３０及びカメラ４０の回動装置に供給されている。しかし、ロボットアーム３０及びカメラ４０の回動装置のいずれか一方又は両方に何等かの不具合が生じ、ロボットアーム３０の先端の位置及びカメラ４０の回動角度のいずれか一方又は両方が制御データ通りに設定されなかった場合、ステップＳ３０３にて撮影された画像における基準マークＴの位置及び向きのいずれか一方又は両方がずれる（図１５参照）。すなわち、前記画像における基準マークＴの位置及び向きのいずれか一方又は両方が、基準マークＴの正規の位置及び正規の向きとは異なる。基準マークＴの正規の位置及び正規の向きは、ロボットアーム座標系におけるロボットアーム３０の先端の位置及びカメラ４０の回動角度が正常である場合に撮影された画像における基準マークＴの位置及び向きを意味する。図１５に示す例では、ロボットアーム座標系におけるロボットアーム３０の先端の位置及びカメラ４０の回動角度が正常である場合の基準マークＴを破線で示している。また、同図において、ロボットアーム座標系におけるロボットアーム３０の先端の位置及びカメラ４０の回動角度のいずれか一方又は両方がずれている場合の基準マークＴを実線で示している。なお、図１５においては、マスターワークＭＷＳの図示を省略している。
【００５５】
ここで、前記画像を解析しただけで、基準マークＴのずれがロボットアーム３０及びカメラ４０のうちのいずれに起因するのかを厳密に判定することは困難である。そこで、本実施形態では、処理を簡単にするために、基準マークＴのずれは、ロボットアーム３０には起因せず、カメラ４０に起因するものとみなす。
【００５６】
また、上記のように、ステップＳ３０２にて、マスターワークＭＷＳを天板１３１の中央に載置させることを表す制御データがロボットアーム３０に供給されている。しかし、ロボットアーム３０に何等かの不具合が生じ、ロボットアーム３０の先端の位置及びロボットハンド３６の回動角度のいずれか一方又は両方が制御データ通りに設定されなかった場合、ステップＳ３０３にて撮影された画像におけるマスターワークＭＷＳの位置及び向きのいずれか一方又は両方がずれる（図１６参照）。すなわち、前記画像におけるマスターワークＭＷＳの位置及び向きのいずれか一方又は両方が、マスターワークＭＷＳの正規の位置及び正規の向きとは異なる。マスターワークＭＷＳの正規の位置とは、天板１３１の中央を意味し、正規の向きとは、座標軸Ｘのプラス側を意味する。前記画像におけるマスターワークＭＷＳの正規の位置及び正規の向きは、前記画像における基準マークＴの位置及び向きに基づいて計算可能である。図１６に示す例では、ロボットアーム３０が正常である場合にキャリブレーションステージ１３に載置されたマスターワークＭＷＳを破線で示している。また、同図において、ロボットアーム３０に不具合が生じているときにキャリブレーションステージ１３に載置されたマスターワークＭＷＳを実線で示している。
【００５７】
制御装置６０は、上記のような基準マークＴの位置及び向きのずれ、並びにマスターワークＭＷＳの位置及び向きのずれに基づいて、搬入出作業の失敗の要因の所在を特定する。まず、制御装置６０は、ステップＳ３０５にて、基準マークＴのずれを計算する。具体的には、制御装置６０は、周知の画像認識技術を用いて、前記画像における基準マークＴの正規の位置からのずれを表すベクトルＶＴを計算する（図１５参照）。また、制御装置６０は、周知の画像処理技術に基づいて、前記画像における基準マークＴの正規の向きからのずれを表す角度θＴを計算する。なお、基準マークＴの正規の位置及び向きを表すデータは制御装置６０内の記憶装置に予め記憶されている。
【００５８】
つぎに、制御装置６０は、ステップＳ３０６にて、マスターワークＭＷＳのずれを計算する。具体的には、制御装置６０は、周知の画像認識技術を用いて、前記画像における基準マークＴの位置及び向きを検出するとともに、前記画像におけるマスターワークＭＷＳの位置及び向きを検出する。さらに、制御装置６０は、前記検出した基準マークＴの位置及び向きに基づいて、前記画像におけるマスターワークＭＷＳの正規の位置を計算する（図１６参照）。具体的には、制御装置６０は、前記画像における基準マークＴの線分ＴＸと線分ＴＹとの交点を基準位置とし、この基準位置から線分ＴＸに平行な方向及び線分ＴＹに平行な方向へそれぞれ所定の距離（ピクセル数）だけ離れた位置を計算する。このようにして計算された位置が、マスターワークＭＷＳの正規の位置である。なお、前記所定の距離（ピクセル数）は、制御増値６０内の記憶装置に予め記憶されている。ただし、前記画像における線分ＴＸ及び線分ＴＹの長さに基づいて、前記所定の距離（ピクセル数）を決定してもよい。また、マスターワークＭＷＳの正規の向きは、基準マークＴの線分ＴＸの向きに平行な向きである。したがって、制御装置６０は、マスターワークＭＷＳの正規の向きを角度θＴに設定する。そして、制御装置６０は、前記画像におけるマスターワークＭＷＳの正規の位置からのずれを表すベクトルＶＭＷＳを計算する。また、制御装置６０は、前記画像におけるマスターワークＭＷＳの正規の向きからのずれを表す角度θＭＷＳを計算する。
【００５９】
つぎに、制御装置６０は、ステップＳ３０７にて、前記計算したベクトルＶＴ及び角度θＴに基づいて、前記失敗の要因がカメラ４０にあるか否かを判定する。具体的には、制御装置６０は、ベクトルＶＴの長さが所定の閾値ΔＶＴ以下であって，且つ角度θＴが所定の閾値ΔθＴ以下であるとき、「失敗の要因はカメラにはない」と判定し、ステップＳ３０９に処理を進める。一方、ベクトルＶＴの長さが所定の閾値ΔＶＴを超えるとき，及び／又は角度θＴが所定の閾値ΔθＴを超えるとき、「失敗の要因はカメラにある」と判定し、ステップＳ３０８にて、フラグＦＣを、前記失敗の要因がカメラ４０にあることを表す「１」に設定し、ステップＳ３０９に処理を進める。
【００６０】
つぎに、制御装置６０は、ステップＳ３０９にて、前記計算したベクトルＶＭＷＳ及び角度θＭＷＳに基づいて、前記失敗の要因がロボットアーム３０にあるか否かを判定する。具体的には、制御装置６０は、ベクトルＶＭＷＳの長さが所定の閾値ΔＶＭＷＳ以下であって，且つ角度θＭＷＳが所定の閾値ΔθＭＷＳ以下であるとき、「失敗の要因はロボットアームにはない」と判定し、ステップＳ３１１に処理を進める。一方、ベクトルＶＭＷＳの長さが所定の閾値ΔＶＭＷＳを超えるとき，及び／又は角度θＭＷＳが所定の閾値ΔθＭＷＳを超えるとき、「失敗の要因はロボットアームにある」と判定し、ステップＳ３１０にて、フラグＦＲを、前記失敗の要因がロボットアーム３０にあることを表す「１」に設定し、ステップＳ３１１に処理を進める。
【００６１】
つぎに、制御装置６０は、ステップＳ３１１にて、フラグＦＣ及びフラグＦＲの値に従って、前記失敗の要因を表す文字列、図形などを表示する。例えば、フラグＦＣが「１」であるとき、制御装置６０は、「カメラ」と表示する。また、フラグＦＲが「１」であるとき、制御装置６０は、「ロボットアーム」と表示する。また、フラグＦＣが「０」であり、且つフラグＦＲが「０」であるとき、制御装置６０は、「正常」と表示する。そして、制御装置６０は、ステップＳ３１２にて、失敗要因特定処理を終了する。
【００６２】
搬入出装置１によれば、搬入出作業が失敗したとき、失敗要因特定処理を実行することにより、前記失敗の要因の所在を簡単に特定することができる。また、搬入出作業が失敗したにもかかわらず、失敗要因特定処理の結果が「正常」である場合には、ワークピースＷに何らかの問題が生じていると考えられるので、ユーザはワークピースＷの形状、寸法などを確認すればよい。
【００６３】
さらに、本発明の実施にあたっては、上記実施形態に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。
【００６４】
上記実施形態において、ベクトルＶＭＷＳの長さが閾値ΔＶＭＷＳを超えるということは、ロボットアーム３０の先端が正しい位置に設定されていないことを意味する。上記のように、この状態において、前記撮影した画像を解析しただけで、基準マークＴのずれがカメラ４０に起因するか否かを判定することは困難である。上記実施形態では、処理を簡単にするために、基準マークＴのずれはカメラ４０に起因するとみなし、制御装置６０は、「失敗の要因はカメラにある」と判定している。しかし、これに代えて、ベクトルＶＭＷＳが閾値ΔＶＭＷＳを超えている場合、制御装置６０は、「失敗の要因がカメラにあるか否かは判定不能」と結論付けてもよい。
【００６５】
これに対し、ベクトルＶＭＷＳの長さが閾値ΔＶＭＷＳ以下であるということは、ロボットアーム３０の先端が正しい位置に設定されていることを意味する。この状態において、基準マークＴのずれは、カメラ４０のみに起因する。そこで、ベクトルＶＭＷＳが閾値ΔＶＭＷＳ以下であり、ベクトルＶＴが閾値ΔＶＴ以下であって、且つ角度θＴが閾値ΔθＴ以下であるとき、制御装置６０は、「失敗の要因はカメラにない」と判定するとよい。一方、ベクトルＶＭＷＳが閾値ΔＶＭＷＳ以下であり、ベクトルＶＴ及び角度θＴのうちの少なくとも一方がその閾値を超えるとき、制御装置６０は、「失敗の要因はカメラにある」と判定するとよい。これによれば、上記実施形態よりも若干処理が煩雑になるが、前記失敗の要因の所在を上記実施形態よりも正確に特定できる。なお、ロボットアーム３０の先端が正しい位置に設定されていたとしても、ロボットハンド３６の回動角度がずれている可能性はある。したがって、失敗の要因がロボットアーム３０にあるか否かは、上記実施形態と同様に、ベクトルＶＭＷＳ及び角度θＭＷＳのずれに基づいて判定すればよい。
【００６６】
また、上記実施形態では、ロボットアーム３０にカメラ４０が取り付けられているが、本発明に係る失敗要因特定方法は、上記従来の搬入出装置のように、カメラ４０がフレーム１０に固定されている搬入出装置にも適用可能である。この場合には、上記実施形態とは異なり、基準マークＴのずれはカメラのみに起因する。したがって、前記失敗の要因の所在をより正確に特定できる。
【符号の説明】
【００６７】
１・・・搬入出装置、１０・・・フレーム、１１・・・メインステージ、１２・・・パレットステージ、１３・・・キャリブレーションステージ、２０・・・パレット、３０・・・ロボットアーム、３１・・・ベース、３２・・・旋回ボディ、３３・・・第１アーム、３４・・・第２アーム、３５・・・第３アーム、３６・・・ロボットハンド、３７・・・保持装置、４０・・・カメラ、５０・・・コンベア、５１・・・トレイ、５２・・・ベルト、６０・・・制御装置、３７１・・・基部、３７２・・・指部、Ｄ・・・区画、ＭＷ，ＭＷＳ・・・マスターワーク、Ｐ１・・・第１ポイント、Ｐ２・・・第２ポイント、Ｐ３・・・第３ポイント、Ｘ，Ｙ，Ｚ・・・座標軸（ロボットアーム座標系）、Ｕ，Ｖ・・・座標軸（カメラ座標系）、Ｗ・・・ワークピース、αｘ，αｙ・・・キャリブレーション係数、Ｔ・・・基準マーク
【図１】
2018034271.tif 000008
【図２】
2018034271.tif 000009
【図３】
2018034271.tif 000010
【図４】
2018034271.tif 000011
【図５】
2018034271.tif 000012
【図６】
2018034271.tif 000013
【図７】
2018034271.tif 000014
【図８】
2018034271.tif 000015
【図９】
2018034271.tif 000016
【図１０】
2018034271.tif 000017
【図１１】
2018034271.tif 000018
【図１２】
2018034271.tif 000019
【図１３】
2018034271.tif 000020
【図１４】
2018034271.tif 000021
【図１５】
2018034271.tif 000022
【図１６】
2018034271.tif 000023