ソリューションの実装

現在ご覧いただいているのは最新版の内容です(V2.1.2)。異なるバージョンを参照する場合は、画面右上のボタンから切り替えが可能です。

■ ご利用中のバージョンが分からない場合や、サポートが必要な場合はお気軽にサポート窓口までご連絡ください。

本節では、長方形の板金部品ソリューションの実装手順を説明します。まとめて言えば以下の流れに沿って進めます。

solution configuration overview

ビジョンシステムのハードウェア設置

ビジョンシステムのハードウェア設置は、ハードウェア機器(カメラおよびIPC)を実際の動作環境に統合し、ビジョンシステムの正常な動作をサポートするプロセスです。

この段階では、ビジョンシステムのハードウェアの取り付けと接続を完了させます。詳細については、ビジョンシステムのハードウェア設置 をご参照ください。

ロボット通信設定

ロボット通信設定を行う前に、ソリューションを取得します。クリックしてソリューション取得方法を確認します。
  1. Mech-Vision を起動します。

  2. Mech-Vision のようこそ画面で ソリューションライブラリから新規作成 をクリックし、ソリューションライブラリを開きます。

  3. ソリューションライブラリの代表的な導入事例を選択し、右上の get resource アイコンをクリックしてさらに多くのリソースをダウンロードします。それから表示されたウィンドウで確認をクリックします。

  4. リソースを取得した後、整列して並べられたワークのピッキング長方形の板金部品を選択して作成ボタンをクリックし、表示されたウィンドウに確認ボタンをクリックします。

    ダウンロードした後、Mech-Vision ではこのソリューションは自動的に開かれます。

Mech-Mind ビジョンシステムとロボット側(ロボット、PLC もしくは上位システム)との通信を構築します。

長方形の板金部品ソリューションでは、標準インターフェース通信を使用します。詳細な手順説明は、標準インターフェース通信ご参照ください。

ハンド・アイ・キャリブレーション

ハンド・アイ・キャリブレーションとは、カメラ座標系とロボット座標系との対応関係を求めることを指します。ビジョンシステムにより取得した対象物の位置姿勢をロボット座標系に変換し、それによってロボットが正確に把持作業を完了するように制御します。

ハンド・アイ・キャリブレーションの使用ガイドを参考にして実行してください。

  • カメラを設置し、またはキャリブレーションを実施した後、ロボットとカメラの相対位置が変わったら再度ハンド・アイ・キャリブレーションを行ってください。

  • ソリューションでは、LSR XL カメラと PRO S カメラのハンド・アイ・キャリブレーションを実施する必要があります。プロジェクト 1 とプロジェクト 2 は LSR XL カメラを使用するのでハンド・アイ・キャリブレーションを一回だけ実施すればいいです。

ビジョンプロジェクトの設定

通信設定とハンド・アイ・キャリブレーションを完了させたあと、Mech-Vision を使用してビジョンプロジェクトを設定します。

本ソリューションには、コンテナの位置決め撮影位置の決定ワークの位置決めの 3つのプロジェクトで構成されます。

  • まずはコンテナの位置決めプロジェクトでは LSR XL カメラで撮影し、部品を入れたコンテナを位置決めます。

  • 次は撮影位置の決定プロジェクトで、LSR XL カメラで撮影し、PRO S カメラの撮影位置を決定して出力し、ロボットを撮影位置に移動します。

  • 最後はワークの位置決めプロジェクトで、PRO S カメラで撮影し、部品の位置姿勢を認識・出力して把持経路を計画し、ロボットの把持をガイドします。

これからそれぞれ説明します。

コンテナの位置決め

ビジョンプロジェクトの設定手順を下図に示します。

bin vision overall

カメラを接続して画像を取得

  1. 使用するカメラを接続します。

    Mech-Eye Viewer で接続するカメラを見つけて接続をクリックします。

    vision click connect camera
  2. カメラパラメータを調整します。

    高品質で点群が完全な 2D 画像を取得するためにパラメータを調整します。詳細な調整方法は、LSR XL パラメータをお読みください。

  3. 画像を取得します。

    カメラを接続してパラメータグループを設定した後、部品(コンテナ)の写真を撮ります。上部の vision click capture icon ボタンをクリックして一回だけ撮影します。すると部品(コンテナ)の 2D 画像と点群が表示されます。画像がはっきり見られて点群が完全でエッジもはっきりしているか確認します。使える 2D 画像と点群の例は以下にようです。

    camera vision image and cloud
  1. Mech-Vision でカメラを接続します。

    カメラから画像を取得ステップをクリックして選択し、ステップパラメータ仮想モードをオフにして、カメラを選択をクリックします。

    vision select camera

    表示される画面で接続するカメラの右にある vision connect camera before icon アイコンをクリックします。アイコンが vision connect camera after icon に変わったらカメラの接続が完了です。それから右のパラメータグループを選択します。

    これでカメラ実機の接続が完了です。これ以上パラメータを調整する必要はありません。カメラから画像を取得ステップの右の vision run step camera icon アイコンをクリックしてこのステップを実行します。エラーメッセージが表示されなければ、カメラが正常に接続されて画像を撮影できることになります。

ワーク認識

本ソリューションではワーク認識ステップを使用してコンテナ箱を認識します。ワーク認識ステップの設定ツールをクリックしてワーク認識設定ウィンドウで設定を進めます。主な設定フローは下図に示します。

vision 3d target object recognition overall
点群前処理

点群前処理を行い、各パラメータを調整してデータを前処理し、元の点群をより鮮明にします。これにより、認識精度と効率を向上させることができます。

  1. 認識領域を設定 します。

    認識対象領域を適切に設定し、干渉要因を除去することで認識効率を向上させます。

  2. パラメータを調整します。

    エッジ抽出効果ノイズ除去レベル点のフィルタリングを設定してノイズを除去します。

点群前処理した後、実行ボタンをクリックします。以下のような結果が出てきます。

vision bin point cloud preprocessing effect
ワーク認識

点群前処理が完了した後、ワークライブラリでコンテナの点群モデルを作成し、ワーク認識ツールでモデルのマッチングに関連するパラメータを設定します。

  1. ワークのモデルを作成します。

    点群モデルを作成して把持位置姿勢を追加します。ワークライブラリを開く をクリックしてワークライブラリを開きます。処理された点群をインポートして点群モデルと把持位置姿勢を生成します。ワーク中心点と把持位置姿勢を一致させます。

  2. 物体認識に関するパラメータを設定します。

    • マッチングモード:マッチングモードを自動的に設定をオフにし、低精度マッチングモードエッジマッチングに設定し、高精度マッチングモードサーフェスマッチングに設定します。

    • 出力-出力結果の最大数:コンテナを認識するので出力結果の最大数1 に設定します。

それから、ステップを実行ボタンをクリックします。以下のような結果が出てきます。

vision bin recognition effect
ステップのポートタイプを設定

Mech-Viz にビジョン処理の結果と点群を出力して経路を計画して衝突検出を実行するために、ステップのポートを設定する必要があります。

実際のコンテナ位置の情報を取得するために、ポートを選択対象物の中心点に関連するポートを選択し、前処理後の点群をチェックして保存ボタンをクリックします。これでワーク認識ステップに対応する出力ポートが追加されます。

位置姿勢を調整

ワークの位置姿勢を取得してからステップの組合せ位置姿勢を一括調整を実行して位置姿勢を調整します。ステップの組合せをダブルクリックするとその内のステップが表示されます。位置姿勢を一括調整(V2)設定ツールをクリックして位置姿勢調整ツールを開いて設定を行います。

  1. 位置姿勢転換

    ロボット座標系におけるコンテナ位置姿勢を出力するために、位置姿勢をロボット座標系に変換をチェックして変換を行います。

  2. 位置姿勢調整

    • 位置姿勢調整カスタムを選択します。

    • 指定方向に沿って位置姿勢を移動のパラメータを設定します。対象物座標系Z軸方向に沿ってコンテナ位置姿勢を移動し、移動距離外部ステップによる入力に設定します。これによってコンテナ位置姿勢をコンテナの上表面から下へと、コンテナ中心に移動し、後続の流れで Mech-Viz で使用し、コンテナの衝突モデル位置を更新します。

      • このステップの組合せの内、対象物の寸法を読み込むステップはコンテナのサイズを読み取り、対象物の寸法を分解から出力されたコンテナの Z 値は位置姿勢を一括調整(V2)移動距離を計算するために使用します。

      • 移動距離値 = -1 × 1/2 コンテナ高さ

  3. 位置姿勢ソート

    位置姿勢ソート位置姿勢のX/Y/Z値でソートに、位置姿勢の指定値Z値に、「ソート順序」を降順に設定します。

  4. 共通設定。

    新規ポート数を設定0 に設定します。ポートを追加しません。

シーンの点群を出力

出力ステップでコンテナの情報やシーンの点群、前処理後の点群を Mech-Viz に送信します。

撮影位置の決定

ビジョンプロジェクトの設定手順を下図に示します。

camera vision overall

カメラを接続して画像を取得

  1. 使用するカメラを接続します。

    Mech-Eye Viewer で接続するカメラを見つけて接続をクリックします。

    vision click connect camera
  2. カメラパラメータを調整します。

    高品質で点群が完全な 2D 画像を取得するためにパラメータを調整します。詳細な調整方法は、LSR XL パラメータをお読みください。

  3. 画像を取得します。

    カメラを接続してパラメータグループを設定した後、対象物の写真を撮ります。上部の vision click capture icon ボタンをクリックして一回だけ撮影します。すると対象物の 2D 画像と点群が表示されます。画像がはっきり見られて点群が完全でエッジもはっきりしているか確認します。使える 2D 画像と点群の例は以下にようです。

    camera vision image and cloud
  4. Mech-Vision でカメラを接続します。

    カメラから画像を取得ステップをクリックして選択し、ステップパラメータ仮想モードをオフにして、カメラを選択をクリックします。

    vision select camera

    表示される画面で接続するカメラの右にある vision connect camera before icon アイコンをクリックします。アイコンが vision connect camera after icon に変わったらカメラの接続が完了です。それから右のパラメータグループを選択します。

    これでカメラ実機の接続が完了です。これ以上パラメータを調整する必要はありません。カメラから画像を取得ステップの右の vision run step camera icon アイコンをクリックしてこのステップを実行します。エラーメッセージが表示されなければ、カメラが正常に接続されて画像を撮影できることになります。

前景分割と点群の前処理

背景の点群から認識への干渉を回避し、正確で安定して認識するために、ステップの組合せ前景の分割と点群前処理を実行して部品のマスクを認識して最上段の部品点群とエッジ点群を取得します。

前景の分割

背景の点群から認識への干渉を回避し、安定して認識するために、ステップの組合せ前景の分割を実行して部品のマスクを認識して部品点群を取得します。ステップの組合せ(前景分割と点群の前処理)をダブルクリックしてステップを表示します。

  1. ディープラーニングモデルパッケージを推論ステップで前景分割モデルパッケージ(クリックしてダウンロード)をインポートします。

    設定ツールボタンをクリックしてディープラーニングモデル管理ウィンドウを開きます。インポートをクリックしてダウンロードした前景分割モデルパッケージをインポートします。

  2. 画像にラベルを付けます。部品を満載したコンテナの画像を使用します。ステップパラメータプロンプト設定プロンプト作成ツールの右にあるエディタを開くボタンをクリックしてプロンプトツールウィンドウを開きます。

    ラベル付け画面の右上の画像を取得ボタンをクリックしてから左上のpolygonalをクリックし、ポリゴンツールを使用してラベルを付けます。部品のマスクを作成する時にコンテナと背景のマスクに重ねないようにしてください。

    ラベル付け完了後、右下の保存をクリックして推論画面に切り替えます。右下のステップを実行をクリックします。すると以下のような画面が表示されます。

segmentation effect
点群前処理

メイン画面に戻ります。ステップパラメータパネルでパラメータを調整してノイズを除去して最高層の部品点群を取得し、部品 2D 画像からエッジ点群を抽出します。

  1. 3D ROIを設定します。 3D ROI内の点群を抽出エディタを開くをクリックして 3D ROIを設定します。設定時に干渉になる点群を除去し、部品とコンテナの点群だけを残すとともに、それらの周辺にある程度の点群も残します。

  2. 点群クラスタリングクラスターの最小点数を設定します。実際の状況に応じて調整してください。ほとんどの場合に、ノイズの点数より多く、部品点群の点数より少なくします。これでノイズを除去して部品点群を残します。

  3. 最高層の点群を取得グループの層の高さを設定し、最高層の点群だけを取得します。

設定完了後、このステップ組合せの右上のシングルステップを実行ボタンをクリックします。すると以下のような画面が表示されます。

point cloud preprocessing effect

3Dマッチング

3Dマッチングステップを実行して部品を位置決めし、かつ把持位置姿勢とラベルを出力します。右のステップパラメータパネルで以下のパラメータを調整します。

  1. ワークのモデルを作成します。モデル設定ワークライブラリを開くをクリックしてワークライブラリを開きます。ワークの特徴に応じて処理された点群をインポートして点群モデルと把持位置姿勢を生成します。ワーク中心点と把持位置姿勢を一致させます。

  2. パラメータ調整パラメータ調整レベル上級に設定します。

  3. 低精度マッチングの設定のパラメータを調整します。実行モード標準のままにして、単一点群の出力数を自動的に設定をオフに、単一点群の出力結果の数 40 に、サンプリングされたシーンの点群の最大点数1000000 のままにします。

  4. 高精度マッチングの設定のパラメータを調整します。実行モード偏差補正能力をそれぞれ標準低レベルのままに、単一点群の出力数を自動的に設定をオフに、単一点群の出力結果数20 に設定します。

それから、ステップを実行ボタンをクリックします。以下のような結果が出てきます。

3d matching effect

位置姿勢を調整

ワークの位置姿勢を取得した後、位置姿勢を一括調整(V2)ステップを実行して位置姿勢を調整し、ワークの X 方向を揃えてから PRO S カメラの撮影位置を調整します。位置姿勢を一括調整(V2)設定ツールをクリックして位置姿勢調整ツールを開いて設定を行います。主な設定フローは下図に示します。

vision adjust poses overall
  1. 位置姿勢転換

    ロボット座標系におけるワーク位置姿勢を出力するために、位置姿勢をロボット座標系に変換をチェックして変換を行います。

  2. 位置姿勢調整

    • 位置姿勢調整カスタムモードをオンにします。

    • 回転軸と目標方向との角度が最小になるように位置姿勢を回転をチェックして調整します。固定する軸Z軸に、回転する軸X軸に指定し、ロボット座標系における X軸の正方形を目標方向として設定します。

    • PRO S カメラの視野は対象物全体をカバーできないので、撮影位置で要求を満たした画像を取得するために指定方向に沿って位置姿勢を移動のパラメータを二回調整します。

      • 一回目の指定方向に沿って位置姿勢を移動パラメータ調整では、ワーク位置姿勢をワークの中心から端に移します。移動方向を対象物座標系X軸に設定し、移動距離手動入力に指定して 501mm を入力します。

      • 二回目の指定方向に沿って位置姿勢を移動パラメータ調整であは、撮影位置をワーク上方に移します。移動方向をロボット座標系Z軸の正方向に設定し、移動距離手動入力に指定して 1000mm を入力します。

        上記の移動距離入力値は例です。実際の状況に応じて値を入力してください。設定完了後、以下のことを確認してください。

        • コンテナがワークを遮断することはありません。

        • コンテナ反射の干渉を回避するためにコンテナをできるだけ視野に入れないようにしてください。

  3. 位置姿勢ソート

    位置姿勢ソート位置姿勢のX/Y/Z値でソートに、位置姿勢の指定値Z値に、「ソート順序」を降順に設定します。

  4. 共通設定。

    「共通設定」パネルに進み、新規ポート数を設定1 に設定します。このステップに入力ポートと出力ポートは 1つずつ追加されます。3Dマッチング把持位置姿勢の情報出力ポートを出力ステップに接続します。

撮影位置の情報を出力

出力ステップを実行し、把持位置姿勢とその情報、前処理されら点群などをロボットに送信します。ロボットが到達したら PRO S カメラをトリガーして撮影します。

ワークを認識・把持

ビジョンプロジェクトの設定手順を下図に示します。

workpiece positioning vision overall

カメラを接続して画像を取得

  1. 使用するカメラを接続します。

    Mech-Eye Viewer で接続するカメラを見つけて接続をクリックします。

    vision click connect camera
  2. カメラパラメータを調整します。

    高品質で点群が完全な 2D 画像を取得するためにパラメータを調整します。詳細な調整方法は、PRO S パラメータをお読みください。

  3. 画像を取得します。

    カメラを接続してパラメータグループを設定した後、対象物の写真を撮ります。上部の vision click capture icon ボタンをクリックして一回だけ撮影します。すると対象物の 2D 画像と点群が表示されます。画像がはっきり見られて点群が完全でエッジもはっきりしているか確認します。使える 2D 画像と点群の例は以下にようです。

    workpiece positioning vision image and cloud
  4. Mech-Vision でカメラを接続します。

    カメラから画像を取得ステップをクリックして選択し、ステップパラメータで仮想モードをオフにして、カメラを選択をクリックします。表示される画面で接続するカメラの右にある vision connect camera before icon アイコンをクリックします。アイコンが vision connect camera after icon に変わったらカメラの接続が完了です。それから右のパラメータグループを選択します。

    これでカメラ実機の接続が完了です。これ以上パラメータを調整する必要はありません。カメラから画像を取得ステップの右の vision run step camera icon アイコンをクリックしてこのステップを実行します。エラーメッセージが表示されなければ、カメラが正常に接続されて画像を撮影できることになります。

点群前処理

干渉になる点群を除去して最高層の点群を取得し、ワークのエッジ点群・サーフェス点群を取得するために、ステップの組合せ点群前処理を実行します。右のステップパラメータパネルで以下のパラメータを調整します。

  1. 3D ROIを設定します。 3D ROI内の点群を抽出エディタを開くをクリックして 3D ROIを設定します。設定時に干渉になる点群を除去し、部品の点群だけを残すとともに、それらの周辺にある程度の点群も残します。

  2. 最高層の点群を取得グループの層の高さを設定し、最高層の点群だけを取得します。

設定完了後、ステップ組合せの右上のシングルステップ実行ボタンをクリックします。すると以下のようにワークのエッジ点群(左図)と最高層ワーク点群(右)を取得します。

workpiece positioning point cloud preprocessing effect

3Dマッチング

ワークの端の点群に合わせて 3Dマッチングステップを実行します。エッジマッチング方法でワークを位置決めして把持位置姿勢の情報を出力します。右のステップパラメータパネルで以下のパラメータを調整します。

  1. ワークのモデルを作成します。モデル設定ワークライブラリを開くをクリックしてワークライブラリを開きます。ワークの特徴に応じて処理された点群をインポートして点群モデルと把持位置姿勢を生成します。ワークの中心点を中心に、把持位置姿勢を端に設定します。

    前の 2つのステップと異なり、ここでは把持位置姿勢をワークの中心ではなくて端に設定します。
  2. パラメータ調整パラメータ調整レベル上級に設定します。

  3. 低精度マッチングの設定のパラメータを調整します。実行モード標準のままにして、単一点群の出力数を自動的に設定をオンに、サンプリングされたシーンの点群の最大点数1000000 のままにします。

  4. 高精度マッチングの設定のパラメータを調整します。実行モード偏差補正能力をそれぞれ標準低レベルのままに、単一点群の出力数を自動的に設定をオンにします。

  5. 追加の高精度マッチング のパラメータを調整します。有効化ボタンをオンにして実行モード偏差補正能力をそれぞれ標準低レベルのままにします。

それから、ステップを実行ボタンをクリックします。以下のような結果が出てきます。

workpiece positioning 3d matching effect

位置姿勢を調整

ワーク位置姿勢を取得した後、位置姿勢を一括調整(V2)ステップを実行してそれを調整します。ワークの位置姿勢を端から中心に移して順付けとフィルタリングを行います。位置姿勢を一括調整(V2)設定ツールをクリックして位置姿勢調整ツールを開いて設定を行います。

  1. 位置姿勢転換

    ロボット座標系におけるワーク位置姿勢を出力するために、位置姿勢をロボット座標系に変換をチェックして変換を行います。

  2. 位置姿勢方向調整

    方向調整自動合わせを選択し、適用シーンZ軸方向合わせ(部品供給)に設定して、ロボットが指定方向に沿ってワークを把持するようにします。衝突を回避できます。

  3. 位置姿勢調整指定方向に沿って位置姿勢を移動します。

    対象物座標系X軸方向に沿ってコンテナ位置姿勢を移動し、手動で移動距離-659mm に調整してワーク位置姿勢を端から中心へ移します。

    移動距離値 = -1 × 1/2 ワークの長さ
  4. 位置姿勢ソート

    位置姿勢ソート位置姿勢のX/Y/Z値でソートに、位置姿勢の指定値Z値に、「ソート順序」を降順に設定します。

  5. 位置姿勢をフィルタリング

    後続の経路計画にかかる時間を短縮するために、ロボット座標系における位置姿勢の Z 軸と基準方向との角度によって把持できないワーク位置姿勢を除去します。最大角度差30°に設定します。

  6. 共通設定。

    「共通設定」パネルに進み、新規ポート数を設定1 に設定します。このステップに入力ポートと出力ポートは 1つずつ追加されます。3Dマッチング把持位置姿勢の情報出力ポートを出力ステップに接続します。

ワーク情報を出力

出力ステップを実行し、把持位置姿勢と把持位置姿勢の情報、前処理された点群などの情報を Mech-Viz に出力して経路計画のために使用します。

経路計画

ワーク認識を完了された後、Mech-Viz で経路計画とロボットのプログラムを作成して把持を実行します。

以下のように経路計画を設定します。

viz overall

シーンの物体の設定

シーンの物体を設定する目的は、実際の作業現場を再現することで、ロボットの移動経路を計画できるようにすることです。詳細な説明は、シーンの物体の設定をお読みください。

できる限り実際の現場を再現するように設定します。ここでは以下のように設定します。

viz scene objects configuration effect

ロボットハンドモデルの設定

ロボットハンドを仮想空間に表示して衝突検出に使用するためにロボットハンドモデルを設定します。詳細な説明は、ロボットハンドの設定をお読みください。

  • ロボットハンドの衝突モデルを作成するときに、細部まで考慮する必要はありません。

  • しかしグリッパ(フィンガー)の部分を作成する時にできる限り本物を再現するようにしてください。一方で、把持点に遠い部分に対しては大まかにしてもかまいません。複雑な構造を囲む直方体の凸包で表現することができます。以下にように、左のモデルを右のように簡略化することができます。

    viz end tool configuration effect

ワークフローを構築

ワークフローとは、Mech-Viz でフローチャートの形式で作成されたロボット動作制御プログラムです。シーンの物体とロボットハンドを設定した後、ワークフローを調整します。プロジェクトのワークフローは下図に示します。

viz workflow

Mech-Viz プロジェクトには以下の 3つの分岐があります。

  • 1つ目は Mech-Vision のコンテナの位置決めプロジェクトを実行します。ビジョン処理による認識ステップを実行してプロジェクトをトリガーし、コンテナ位置姿勢を認識してシーンの物体情報を更新します。

  • 2つ目は Mech-Vision の撮影位置の決定プロジェクトを実行します。ビジョン処理による認識ステップを実行してプロジェクトをトリガーし、カメラの撮影位置を計算して出力します。これによりロボットをこの位置にガイドします。

  • 3つ目は Mech-Vision のワークの位置決めプロジェクトを実行します。ビジョン処理による認識ステップを実行してプロジェクトをトリガーし、ワークの位置姿勢を Mech-Viz に出力して経路計画とロボットの把持ガイドを行います。

シミュレーションと試行

ツールバーのシミュレートをクリックすると、Mech-Viz プロジェクトをシミュレートし、ビジョンシステムを確認することができます。

ワークを整列して配置して Mech-Viz ツールバーのシミュレートボタンをクリックして把持をシミュレートします。把持するたびにワークを再配置が必要です。シミュレーションを繰り返し、10回の把持をテストします。10 回のテストですべての把持が成功した場合、ビジョンシステムの構築に問題がないと判断できます。

シミュレーションに異常が発生した場合、よくある課題を参考にして解決してください。

ロボットの把持と配置

ロボットプログラムを作成

シミュレーションの効果に問題がなければ、FANUC ロボット把持・配置プログラムを作成することになります。

FANUC の標準インターフェースサンプルプログラム MM_S2_Viz_Basic は、このソリューションに適用できます。このサンプルプログラムを基にして変更を加えることができます。より詳細な説明は、S2 サンプルプログラム説明をお読みください。

変更時の注意事項

サンプルプログラムを基にして以下の通り変更を行います。

  1. TCP 座標系とベース座標系を設定します。

    変更前 変更後(例)
       ;set current tool no. to 1
       BAS(#TOOL,1)
       ;set current base no. to 0
       BAS(#BASE,0)
       ;set current tool no. to 2
       BAS(#TOOL,2)
       ;set current base no. to 0
       BAS(#BASE,0)
    数字を実際に使用するロボットハンドの番号に変更します。ここでは「2」と「0」は例です。
  2. IPCのIPアドレスを指定します。KUKAロボットに標準インターフェースプログラムを読み込む際に、XML_Kuka_MMIND.xmlの設定ファイルも同時に読み込まれます。読み込む前に、設定ファイル内のIPアドレスとポートをIPCのIPアドレスとポートに変更することもできます。まだ変更していない場合は、MM_Init_Socketコマンドに対応するXML_Kuka_MMIND.xmlファイルを開き、その中のIPアドレスとポートをIPCのIPアドレスとポートに更新してください。

  3. ブランチのコマンドを追加して実行するブランチを選択し、Mech-Viz プロジェクトをトリガーします。

    変更前 変更後(例)
       ;trigger {product-viz} project
       MM_Start_Viz(2,init_jps)
       !trigger {product-viz} project ;
       MM_Start_Viz(2,init_jps)
       ;Set_Branch
       MM_Set_Branch(1,1)
    • ここで追加するコマンドが参照できます。ブランチ2とブランチ3を選択して Mech-Viz プロジェクトを実行します。

    • Mech-Viz プロジェクトの3つのブランチは以下のように稼働します。

      • ロボットプログラムはブランチ1を選択して Mech-Viz プロジェクトをトリガーし、コンテナの位置決めを実行することでコンテナの位置姿勢を出力します。

      • コンテナ位置姿勢を出力する場合にロボットプログラムはブランチ2を選択して Mech-Viz プロジェクトをトリガーし、撮影位置の決定を実行することで撮影位置を出力します。

      • 撮影位置を出力する場合にロボットプログラムはロボットをその位置にガイドします。それからロボットプログラムはブランチ3を選択して Mech-Viz プロジェクトをトリガーし、ワークの位置決めを実行することで計画済み把持経路(衝突回避)をロボットに出力します。

  4. ワークを把持するためにグリッパを閉じる DO ポート信号を設定します。DOコマンドは、現場で実際に使用されているDOポート番号に従って設定する必要があります。

    変更前 変更後(例)
       ;add object grasping logic here, such as "$OUT[1]=TRUE"
       halt
      ;add object grasping logic here, such as "$OUT[2]=TRUE"
       $OUT[2]=TRUE
       halt
  5. ワークを配置するためにグリッパを開く DO ポート信号を設定します。DOコマンドは、現場で実際に使用されているDOポート番号に従って設定する必要があります。

    変更前 変更後(例)
       ;add object releasing logic here, such as "$OUT[1]=FALSE"
       halt
      ;add object grasping logic here, such as "$OUT[2]=FALSE"
       $OUT[2]=FALSE
       halt

把持テスト

実際の生産の安定性を確保ために、変更されたサンプルプログラムを実行してロボットによる把持を試行します。詳細な説明については、標準インターフェース通信をテストをお読みください。

テストの前に、初期位置をティーチングします。つまり最初にティーチングする位置を教示します。初期位置は、把持するワークや周辺機器から離れ、カメラの視野を遮らないようにする必要があります。

ティーチング完了後、以下の表に示すようにワークを配置してからロボットを低い速度で動かして把持します。

3つの段階に分けて把持します。

段階1:正常なワーク提供

ワークの位置

説明図

ワークが整列して配置されており最高層が満載

picking test 1

ワークが整列して配置されており最低層が満載

picking test 2

段階2:異常なワーク提供

ワークの位置

説明図

ワークが傾斜して配置されている

picking test 3

段階3:実際のシーンを再現

ワークの位置

説明図

コンテナが満載で正常に提供され、ワークの異常落下をテストする

picking test 4

上記のテストで、いずれも正常に把持できれば、実装可能なビジョンシステムが完成したことになります。

この情報は役に立ちましたか?

ご意見・ご要望がございましたら、以下よりお寄せください:

Mech-Mindは、お客様のプライバシーを重視しています

このサイトでは最高の体験を提供するために Cookie を使用しています。サイトの閲覧を続ける場合、Cookie の使用に同意したことになります。「拒否する」を選択すると、このサイトを訪れた際に追跡や記憶が行われないように単独の Cookie が使用されます。