UR E シリーズ(Polyscope 5.3以上)

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

以下では、UR(ユニバーサルロボット)Eシリーズロボットの標準インターフェース通信設定について説明します。

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

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

前提条件

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

Polyscopeのバージョンを確認するには、ティーチペンダントの右上隅にあるハンバーガーボタンをクリックし、 バージョン情報 を選択します。

settings e
about e

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

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

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

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

  3. ティーチペンダントの右上隅にあるハンバーガーボタンをクリックし、 ロボットの設定 を選択します。

    settings e
  4. 設定画面 で、 システム  URCaps を選択します。

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

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

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

    restart urcaps e

これで、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. ティーチペンダントの上部にある 設置設定 をクリックし、 URCaps  Network Settings を選択します。すると、URCapプラグインの ネットワーク設定 画面が表示されます。

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

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

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

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

      connection failed

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

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

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

前提条件

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

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

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

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

  1. ティーチペンダントの上部にある 新規... をクリックし、 プログラム を選択して新しいプログラムを作成します。

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

    add calibrate node e

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

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

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

    add calibrate node e
  2. プログラムツリーで MOVEJ ノードを選択し、右側の 移動 パネルで動作タイプを「MoveJ」、「MoveL」または「MoveP」に設定し、 TCPを設定アクティブTCPの無視 に設定して、ウェイポイントがフランジ位置姿勢として記録されるようにします。

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

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

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

    confirm waypoint e

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

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

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

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

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

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

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

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

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

save program e

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

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

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

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

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

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

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

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

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

    1. ティーチペンダントの上部にある 新規... をクリックし、 プログラム を選択して新しいプログラムを作成します。

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

      add pick place node e

      右側パネルの コマンド タブで、 With Mech-Vision をクリックします。プログラムテンプレートは、ツリーの Pick and Place ノードに自動的に追加されます。

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

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

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

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

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

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

      set movej capture e
    3. プログラムツリーで Capture_image ノードを選択し、右側の ウェイポイント パネルで ウェイポイントを設定 をクリックします。すると、 移動 タブが表示されます。

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

      confirm waypoint e
    5. 画像撮影点が設定したら、次の手順に進みます。

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

    1. プログラムツリーで Trigger Mech-Vision ノードを選択し、右側の Trigger Mech-Vision パネルで Send Current Robot Position to Mech-VisionMech-Vision Project IDRequest Vision Point Number パラメータを設定します。

      trigger vision e
      パラメータ 説明

      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 e
  5. Mech-Visionの結果の受信方法を設定します。

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

    receive vision result e
    パラメータ 説明

    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 e
    2. プログラムツリーで pick ノードの下の MoveJ ノードを選択し、右側の 移動 パネルの初期設定を使用します。

    3. プログラムツリーで pick_above ノードを選択し、右側の ウェイポイント パネルの初期設定を使用します。

    4. プログラムツリーで MoveL ノードを選択し、右側の 移動 パネルの初期設定を使用します。

    5. プログラムツリーで pick ノードを選択し、右側の ウェイポイント パネルの初期設定を使用します。

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

    7. プログラムツリーで2番目の MoveJ ノードを選択し、右側の 移動 パネルの初期設定を使用します。

    8. プログラムツリーで pick_depart ノードを選択し、右側の ウェイポイント パネルの初期設定を使用します。

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

    1. プログラムツリーで place ノードの下の MoveJ ノードを選択し、右側の 移動 パネルの初期設定を使用します。

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

    3. ティーチペンダントの画面に戻り、プログラムツリーで MoveJ ノードの下の place ノードを選択し、右側の ウェイポイント パネルで ウェイポイントを設定 をクリックします。すると、 移動 タブが表示されます。

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

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

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

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

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

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

    1. ティーチペンダントの上部にある 新規... をクリックし、 プログラム を選択して新しいプログラムを作成します。

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

      add pick place node e
    3. 右側パネルの コマンド タブで、 With Mech-Viz をクリックします。プログラムテンプレートは、ツリーの Pick and Place ノードに自動的に追加されます。

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

    verify host ip viz e
  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 e
      • ロボットが初期位置に移動する前に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 brach value e
    3. (オプション)プログラムツリーで Set Index Value ノードを選択し、右側の Set Index Value パネルで Index Task IDIndex Value パラメータを設定します。

      set index value e
  5. Mech-Vizの結果の受信方法を設定します。

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

    receive viz result e
    パラメータ 説明

    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 e をクリックしてプログラムを実行することができます。

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

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