UR CBシリーズ(Polyscope 3.9以上)

プレリリース版のマニュアルを表示しています。安定リリース版(星マーク付き)のマニュアルを表示するには、ページの右上隅にあるバージョン番号をクリックして切り替えてください。

プラグインのインストールと設定

以下では、UR CBシリーズロボットのMech-Mind 3D Vision Interface(URCapプラグイン)のインストールと設定について説明します。

前提条件

Mech-MindビジョンシステムとPolyscopeがバージョンの最小要件を満たすことを確認します。

Polyscopeのバージョンを確認するには、メイン画面の バージョン情報 をクリックします。

setup robot cb
about cb

URCapプラグインのインストール

URCapプラグインをインストールするには、以下の手順を実行します。

  1. Mech-VisionとMech-Vizソフトウェアのインストールディレクトリにある Mech-Center\Robot_Interface\Robot_Plugin\UR_URCAP フォルダから、拡張子が1.4.6.urcapのファイルをコピーして、USBメモリに貼り付けます。

  2. USBメモリをティーチペンダントに差し込みます。

  3. メイン画面の ロボットの設定 をクリックします。

    setup robot cb
  4. ロボットの設定 画面で、左側パネルの URCaps を選択します。

    urcaps button cb
  5. URCaps 画面で、 + をクリックしてUSBメモリに切り替え、URCapプラグイン(.urcapファイル)を見つけます。

    urcaps screen cb
  6. 設置するURCapを選択してください 画面で、URCapプラグインを選択し、 開く をクリックします。すると、URCapプラグインが自動的にインストールされます。

    install urcaps cb
  7. 再起動 をクリックすると、変更が有効になります。

    restart urcaps cb

これで、URCapプラグインは正常にティーチペンダントにインストールされます。

インストール後、ロボットのIPアドレスを設定する必要があります( ロボットの設定>ネットワーク で設定可能)。ロボットのIPアドレスは、IPCのIPアドレスと同じネットワークセグメント内にある必要があります。

Mech-Mind 3D Vision Interfaceの使用

使用する前に、Mech-VisionとMech-Viz(必要な場合)プロジェクトが実行可能で、Mech-MindのIPCがロボットに接続されていることを確認してください。

Mech-Mind 3D Vision Interfaceを使用するには、以下の設定が必要になります。

  1. Mech-Visionを起動します。表示される画面に応じて、以下のようにソリューションの作成方法を選択します。

    • ようこそ画面が表示されたら、 ソリューションを新規作成 をクリックして新しい空白のソリューションを作成します。

    create solution 1
    • メイン画面が表示されたら、メニューバーの ファイル  ソリューションを新規作成 をクリックして新しい空白のソリューションを作成します。

    create solution 2
  2. Mech-Visionのツールバーで ロボット通信設定 をクリックします。

  3. ロボット通信設定 の画面で以下の設定を行います。

    1. ロボットを選択 のドロップダウンボックスをクリックし、 適応可能なロボット を選択して ロボット型番を選択 をクリックします。表示される画面で特定のロボット型番を選択して 次へ をクリックします。

    2. 通信方式 の画面で、 インターフェースサービスのタイプ標準インターフェース に、 通信プロトコルTCP Server に、 プロトコル形式ASCII に選択します。

    3. ポート番号を50000(固定値、変更不可)に設定します。設定したポート番号が他のプログラムで使用されていないことを確認してください。

    4. (オプション) ソリューションを開くとインターフェースサービスを自動的に起動 にチェックを入れることを推奨します。

    5. 適用 をクリックします。

      tcp ascii
  4. Mech-Visionのメイン画面で、ツールバーのインターフェースサービスが起動されていることを確認します。

    interface service

Mech-Visionでインターフェースサービスを起動した後、UR ティーチペンダントで以下の操作を行って、インターフェースサービスに接続します。

  1. メイン画面の ロボットのプログラム をクリックします。

  2. 設置設定 タブに切り替え、左側パネルの Network Settings を選択します。すると、URCapプラグインの ネットワーク設定 画面が表示されます。

    network settings cb
  3. MechMind IPC IP AddressPort No. をそれぞれMech-Mind IPCのIPアドレスとポート番号(Mech-Visionの通信設定で設定されたポート番号と一致する必要があります)に設定し、 Apply をクリックします。

  4. Connection Test をクリックします。

    • 接続に成功した場合は、下図のようなステータスメッセージが返されます。

      connection pass
    • 接続に失敗した場合は、下図のようなステータスメッセージが返されます。

      connection failed

    これはテスト目的のみに使用されます。接続に成功すると自動的に切断されます。したがって、Mech-Visionのログバーの コンソール タブにクライアント接続とクライアント切断のメッセージが表示されます。

プラグインによる自動キャリブレーション

以下では、URCapプラグインによる自動キャリブレーションの実行流れについて説明します。

前提条件

キャリブレーションを実行する前に、以下のことを確認してください。

  • URCapプラグインを標準インターフェースのサービスに接続できました。

  • ロボットハンド・アイ・キャリブレーションに関する内容を理解しました。

キャリブレーションプログラムの作成

  1. ティーチペンダントで ロボットのプログラム  プログラム を選択し、 空のプログラム をクリックします。

  2. 構造  URCaps を選択し、 URCaps タブで Mech-Mind Calibrate をクリックします。Calibrate サンプルプログラムノードは、左側パネルの ロボットプログラム に自動的に作成されます。

    add calibrate node cb

    作成されたサンプルプログラムノードはテンプレートです。キャリブレーションプログラムをさらに設定し、キャリブレーションの初期位置を設定する必要があります。

キャリブレーションの初期位置を設定

  1. プログラムツリーで Calibrate ノードを選択し、右側のパネルの コマンド タブで必要に応じて Receive Point Type from Mech-Vision を「Joint Angle」または「Flange Pose」に設定します。

    set calibrate node cb
  2. 次へ ボタンをクリックして MOVEJ ノードを選択し、右側の 移動 パネルで動作タイプを「MoveJ」、「MoveL」または「MoveP」に設定し、 TCPを設定ツールフランジの利用 に設定して、ウェイポイントがフランジ位置姿勢として記録されるようにします。

    set movej cb
  3. ロボットを手動でキャリブレーションの初期位置に移動させます。

  4. ティーチペンダントの画面に戻り、左側パネルの start_pose ノードを選択し、右側の ウェイポイント パネルで ウェイポイントを設定 をクリックします。すると、 移動 タブが表示されます。

    teach startpoint cb
  5. 移動 タブでは、ロボットが現在適切なフランジ位置にいることを確認し、 OK ボタンを押します。

    confirm waypoint cb

キャリブレーションプログラムを実行

  1. 左側パネルの ロボットプログラム プログラムツリーを選択し、このプログラムを1回のみ実行するために、右側パネルで 無限ループ のチェックを外します。

    run calibrate cb
  2. 安全のため、ロボットの速度を適切な値、例えば10%に調整してください。

  3. 下部にある run cb ボタンをクリックしてプログラムを実行することができます。

キャリブレーションプログラムが正常に実行されると、Mech-Visionのログバーの コンソール タブに「キャリブレーションプロセスに入ります。Mech-Visionでキャリブレーションを実行してください。」が表示されます。

Mech-Visionでキャリブレーションを実行

  1. Mech-Visionを起動し、 カメラキャリブレーション(標準モード) をクリックするか、またはメニューバーの カメラヘルパー  カメラキャリブレーション  標準モード を順番にクリックしてキャリブレーションツールを起動します。

  2. カメラの取り付け方式に応じて、ソフトウェアの指示に従って残りの操作を行います。

後で使用するためにキャリブレーションプログラムを保存するには、ファイル  名前を付けて保存... を選択します。

save program cb

キャリブレーションが完了したら、 把持・配置プログラム を作成してURロボットを制御し、ビジョンシステムによる把持と配置を実行します。

把持・配置プログラムを作成

URCapプラグインは、ごくわずかなプログラミング作業で作成できる把持・配置のサンプルノードを提供します。

把持・配置のサンプルプログラムノードには、2つのオプションが提供されています。

このプラグインは、各オプションに対してプログラムテンプレートを提供し、プログラミングを容易にします。

以下の例は、現在使用中のロボットハンドとツールセンターポイント(TCP)が正しく設定されていることを前提としています。

Mech-Visionと組み合わせて使用する把持・配置プログラムを作成

Mech-Visionと組み合わせて使用する把持・配置プログラムを作成するには、以下の手順を実行します。

  1. 「Mech-Visionと組み合わせて把持・配置」のオプションを使用します。

    1. ティーチペンダントで ロボットのプログラム  プログラム  空のプログラム を選択します。

    2. 構造  URCaps を選択し、 URCaps タブで Mech-Mind Pick and Place をクリックします。 Pick and Place サンプルプログラムノードは、左側パネルの ロボットプログラム に自動的に作成されます。

      add pick place node cb
    3. コマンド タブに切り替え、 With Mech-Vision をクリックします。

      select pick place option cb
    4. プログラムテンプレートが自動的にプログラムツリーの Pick and Place ノードに追加されたら、 次へ ボタンをクリックします。

      display vision option cb
  2. Mech-Mind Connect ノードを選択し、右側の Mech-Mind Connect パネルで Host IP が Mech-Mind のIPCのIPアドレスであることを確認します。

    verify host ip vision cb
  3. 画像撮影点を設定します。

    1. ロボットを手動で適切な位置に移動させます。Mech-Visionはこの位置で撮影を行います。

      • Eye in Handの場合、ロボットがワークの上方に配置する必要があります。

      • Eye to Handの場合、ロボットがカメラの視野を遮らないように配置する必要があります。

    2. ティーチペンダントの画面に戻り、 次へ をクリックして MOVEJ ノードを選択し、右側の 移動 パネルで動作タイプ「MoveJ」、「MoveL」または「MoveP」に設定し、 TCPを設定アクティブTCPを使用 に設定し、 次へ ボタンをクリックします。

      set movej capture cb
    3. 右側の ウェイポイント パネルで ウェイポイントを設定 をクリックします。すると、 移動 タブが表示されます。

      set waypoint capture cb
    4. 移動 タブでは、ロボットの現在TCP位置姿勢が適切であることを確認し、 OK をクリックします。

      confirm waypoint cb
    5. 画像撮影点を設定したら、 次へ をクリックします。

  4. Mech-Visionプロジェクトを実行します。

    1. 右側の Trigger Mech-Vision パネルで、 Send Current Robot Position to Mech-VisionMech-Vision Project IDRequest Vision Point Number パラメータをそれぞれ設定します。

      trigger vision cb
      パラメータ 説明

      Mech-Vision Project ID(Mech-Visionプロジェクト番号)

      Mech-Visionのプロジェクト番号は、Mech-Visionのプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を表します。

      Request Vision Point Number(ビジョンポイントの期待数)

      Mech-Visionから出力するビジョンポイントの数を指します。

      • 0に設定すると、検出されたすべての対象物のビジョンポイント(20以下)が出力されます。

      • 1から20の間の整数に設定すると、検出されたビジョンポイントの総数が期待数より多い場合、Mech-Visionは固定のビジョンポインの数を返します。

    2. (オプション) Set Vision Recipe ID をクリックすると、 Set Recipe ID ノードは、プログラムツリーの Trigger Mech-Vision ノードの下に自動的に追加されます。

    3. プログラムツリーで Set Recipe ID ノードを選択し、右側の Set Recipe ID パネルで Mech-Vision Recipe ID を設定し、 次へ をクリックします。

      set receipe id
  5. Mech-Visionの結果の受信形式を設定します。

    プログラムツリーで Pick and Place の下の Receive Mech-Vision Result ノードを選択し、ビジョン結果を格納するための PoseLabelTotal Received 、および Status Code の変数名をそれぞれ設定し、 次へ をクリックします。

    receive vision result cb
    パラメータ 説明

    Pose(ビジョンポイントの位置姿勢)

    検出された対象物の位置姿勢であり、XYZで表します。アクティブTCPを持つロボットは、このポイントに直接移動することができます。デフォルトでは、受信したビジョンポイントは配列変数「pose[]」に格納されます。配列の開始インデックスは1となります。

    Label(ラベル)

    検出された対象物のラベルであり、ラベルの値は整数です。デフォルトでは、ラベルは配列変数「label[]」に格納されます。配列の開始インデックスは1となります。ラベルと位置姿勢が一対一で対応しています。

    Total Received(ビジョンポイントの数)

    受信したビジョンポイントの合計数です。

    Status Code(ステータスコード)

    返されたステータスコードです。詳細については、『標準インターフェースのステータスコード一覧とトラブルシューティング』をご参照ください。11xxは正常実行完了のコードで、10xxはエラーコードです。デフォルトでは、ステータスコードは変数「status_code」に格納されます。

    Starting at ID(開始インデックス)

    位置姿勢およびラベルの配列変数の開始インデックスです。デフォルトでは、インデックスの開始値は1となります。

  6. 把持作業に関する設定を行います。

    一回の把持作業は、3つの動作で構成されます:1つ目はPick_aboveで、ロボットは直線運動で把持位置に移動させます。2つ目はPickで、ロボットは対象物を把持します。3つ目はPick_departで、ロボットは対象物を把持したまま、直線運動で把持位置から離れます。

    1. 右側の Mech-Mind Pick パネルで、 Pick_abovePick_depart のパラメータ DistCoordinates をそれぞれ設定し、 次へ をクリックします。

      set distance coordinates cb
    2. MoveJ ノードを選択し、右側の 移動 パネルで初期設定を使用し、 次へ をクリックします。

    3. pick_above ノードを選択し、右側の ウェイポイント パネルの初期設定を使用し、 次へ をクリックします。

    4. MoveL ノードを選択し、右側の 移動 パネルの初期設定を使用し、 次へ をクリックします。

    5. pick ノードを選択し、右側の ウェイポイント パネルの初期設定を使用し、 次へ をクリックします。

    6. 必要に応じて、 pick ノードの後にロボットハンドの制御ロジックを追加することができます。

    7. MoveJ ノードを選択し、右側の 移動 パネルで初期設定を使用し、 次へ をクリックします。

    8. pick_depart ノードを選択し、右側の ウェイポイント パネルの初期設定を使用し、 次へ をクリックします。

  7. 配置作業に関する設定を行います。

    1. 次へ をクリックして MoveJ ノードを選択します。

    2. MoveJ ノードを選択し、右側の 移動 パネルで初期設定を使用し、 次へ をクリックします。

    3. ロボットを手動で、把持する対象物を配置するための正確な位置に移動させます。

    4. ティーチペンダントの画面に戻り、右側の ウェイポイント パネルで ウェイポイントを設定 をクリックします。すると、 移動 タブが表示されます。

      set waypoint place cb
    5. 移動 タブでは、ロボットが現在適切なフランジ位置にいることを確認し、 OK ボタンを押します。

      confirm waypoint cb
    6. 配置時のロボットの位置姿勢を設定したら、 次へ をクリックします。

    7. 必要に応じて、 place ノードの後にロボットハンドの制御ロジックを追加することができます。

これで、Mech-Visionプロジェクトと組み合わせて使用する簡単な把持・配置プログラムの作成が完了しました。下部にある run cb をクリックしてプログラムを実行することができます。

Mech-Vizと組み合わせて使用する把持・配置プログラムを作成

Mech-Vizと組み合わせて使用する把持・配置プログラムを作成するには、以下の手順を実行します。

  1. 「Mech-Vizと組み合わせて把持・配置」のオプションを使用します。

    1. ティーチペンダントで ロボットのプログラム  プログラム  空のプログラム を選択します。

    2. 構造  URCaps を選択し、 URCaps タブで Mech-Mind Pick and Place をクリックします。 Pick and Place サンプルプログラムノードは、左側パネルの ロボットプログラム に自動的に作成されます。

      add pick place node cb
    3. コマンド タブに切り替えます。With Mech-Viz をクリックします。

      select pick place option cb
    4. プログラムテンプレートが自動的にプログラムツリーの Pick and Place ノードに追加されたら、 次へ ボタンをクリックします。

      display viz option cb
  2. Mech-Mind Connect ノードを選択し、右側の Mech-Mind Connect パネルで Host IP が Mech-Mind のIPCのIPアドレスであることを確認します。

    verify host ip viz cb
  3. Mech-Visionと組み合わせて使用する把持・配置プログラムを作成 の手順3を参照して画像撮影点を設定します。

    画像撮影点では、Mech-Vizプロジェクトがトリガーされます。

  4. Mech-Vizプロジェクトを実行します。

    1. プログラムツリーで Trigger Mech-Viz ノードを選択し、右側の Trigger Mech-Viz パネルで Send Current Robot Position to Mech-Viz パラメータを「JPs&TCP」または「Dedicated Point」に設定します。

      trigger viz cb
      • ロボットが初期位置に移動する前にMech-Vizで経路計画を行う必要がある場合は、パラメータ Send Current Robot Position to Mech-Viz を「Dedicated Point」に設定し、特定の関節角度位置を指定します。

      • Mech-Vizプロジェクトで分岐ステップを使用し、ロボットに分岐出口を選択させたい場合は、 Set Branch Out Port をクリックして手順bにスキップし、分岐出口を設定します。

      • インデックスパラメータを持つ移動ステップを使用する場合は、 Set Index Value をクリックして手順cにスキップし、インデックス値を設定します。

    2. (オプション)プログラムツリーで Set Branch Value ノードを選択し、右側の Set Branch Value パネルで Branch Task IDBranch Out Port パラメータを設定し、 次へ をクリックします。

      set branch value cb
    3. (オプション)プログラムツリーで Set Index Value ノードを選択し、右側の Set Index Value パネルで Index Task IDIndex Value パラメータを設定し、 次へ をクリックします。

      set index value cb
  5. Mech-Vizの結果の受信形式を設定します。

    プログラムツリーで Receive Mech-Viz Result ノードを選択し、計画されたビジョン結果を格納するための PoseLabelSpeed (%)Total ReceivedStatus CodeVision Point Index の変数名をそれぞれ設定し、 次へ をクリックします。

    receive viz result cb
    パラメータ 説明

    Pose(ビジョンポイントの位置姿勢)

    計画された動作経路で、XYZで表します。アクティブTCPを持つロボットは、このポイントに直接移動することができます。デフォルトでは、受信した位置姿勢が配列変数「pose[]」に格納されます。配列の開始インデックスは1となります。

    Label(ラベル)

    検出された対象物のラベルであり、ラベルの値は整数です。ビジョンポイントでない場合、ラベルは0である必要があります。デフォルトでは、ラベルは配列変数「label[]」に格納されます。配列の開始インデックスは1となります。ラベルと位置姿勢が一対一で対応しています。

    Speed(速度)

    ロボットがビジョンポイントに移動する速度(パーセンテージで表す)です。

    Total Received(ビジョンポイントの数)

    受信したビジョンポイントの合計数です。

    Status Code(ステータスコード)

    返されたステータスコードです。詳細については、『標準インターフェースのステータスコード一覧とトラブルシューティング』をご参照ください。21xxは正常実行完了のコードで、20xxはエラーコードです。デフォルトでは、ステータスコードは変数「status_code」に格納されます。

    Vision Point Index(ビジョンポイントのインデックス)

    受信したビジョンポイントのうち、「ビジョン処理による移動」のビジョンポイントのインデックスです。例えば、Mech-Vizから3つのビジョンポイント(relative_move_1、visual_move_1およびrelative_move_2)を返した場合、「ビジョン処理による移動」のビジョンポイントのインデックスは2となります。デフォルトでは、「ビジョン処理による移動」のビジョンポイントが変数「vision_point」に格納されます。

    Starting at ID(開始インデックス)

    位置姿勢およびラベルの配列変数の開始インデックスです。デフォルトでは、インデックスの開始値は1となります。

  6. ロボットがMech-Vizで計画された経路(アプローチ点、把持点、離れる点(配置点は除く))に従って動作するように、ロボットの動作ループを設定します。MoveLノードとMoveJノードの設定方法は、 Mech-Visionと組み合わせて使用する把持・配置プログラムを作成 の手順6をご参照ください。

    • 実際には、ロボットの動作ループに複数の「pick_above MoveJ」ノード、1つの「pick MoveL」ノード、複数の「pick_depart MoveJ」ノードが含まれる可能性があります。

    • Receive Mech-Viz Result ノードで位置姿勢やラベルなどのパラメータの初期変数名を変更した場合は、それに合わせてこの手順の変数名も変更する必要があります。

  7. Mech-Visionと組み合わせて使用する把持・配置プログラムを作成 の手順7を参照して、配置作業の関連設定を行います。

これで、Mech-Vizプロジェクトと組み合わせて使用する簡単な把持・配置プログラムの作成が完了しました。下部にある run cb をクリックしてプログラムを実行することができます。

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

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