ABBロボットの標準インターフェースコマンド

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

本文では、ABBロボットとMech-Mindビジョンシステム間のTCPプロトコル通信の標準インターフェースコマンドについて説明します。ここで、ロボット(クライアント)はコマンドをMech-Mindビジョンシステム(サーバー)に送信し、Mech-Mindビジョンシステムは処理されたデータをロボットに返します。

send receive

これらのコマンドを使用する前に、以下のことに注意してください。

  • ABBロボットのコマンドを呼び出す際には、以下のことに注意してください。

    • 複数のパラメータコンマ で区切る必要があります。

    • すべてのパラメータ はコマンド内で ローカル変数 として定義する必要があります。

    • コマンドのパラメータ入力パラメータ あるいは 出力パラメータ と定義することが可能です。

    • 入力引数は定数、グローバル変数、ローカル変数を指定することができます。出力引数はグローバル変数、ローカル変数を指定することができます。

    • Mech-VisionとMech-Viz 1.8.0およびそれ以前のバージョンでは、各コマンドには通信接続文と通信切断文が含まれています。

    • Mech-VisionとMech-Viz 1.8.0およびそれ以降のバージョンでは、通信接続と通信切断文が2つの独立したコマンド( TCPプロトコル通信接続の確立TCPプロトコル通信接続の切断 )になります。これにより、ロボットとビジョンシステム間の通信を頻繁に接続および切断することが回避されます。

  • コマンドのデータ単位:

    • 関節角度の単位は度(°)です。

    • ロボットのフランジ位置姿勢またはロボットのツール位置姿勢は位置と姿勢で構成されています。位置(XYZ座標値)の単位はミリメートル(mm)で、姿勢はオイラー角で表され、単位は度(°)です。

  • ビジョンポイントまたは経路点:

    • ビジョンポイント:Mech-Visionが認識した対象物で、1つのビジョンポイントには対象物の位置姿勢、ラベル、対象物の寸法、カスタマイズされたデータなどが含まれます。

    • 経路点:ロボットが計画された経路に沿って1つずつ到達する必要のあるポイントで、1つの経路点にはロボットの位置姿勢、ラベル、移動方式などが含まれます。経路点は次の2つの種類に分けられます。

      • 「ビジョン処理による移動」の経路点:「ビジョン処理による移動」ステップに対応する経路点。

      • 「ビジョン処理による移動」の以外の経路点:「ビジョン処理による移動」ステップ以外の移動ステップに対応する経路点。

通信初期化

機能

このコマンドは、ロボットと通信するIPCのIPアドレス、ポート番号、および通信のタイムアウト待ち時間を設定するために使用されます。

呼び出し順序

このコマンドを使用した後、TCPプロトコル通信接続の確立 コマンドを呼び出して、ロボットとビジョンシステム間のTCPプロトコル通信接続を確立する必要があります。

コマンド形式

MM_Init_Socket IP_Address,Server_Port,Time_Out;

入力パラメータ

IP_Address

このパラメータは、IPCのIPアドレスを表します。データ型がstringです。

Server_Port

このパラメータはIPCとロボット間で通信を確立するために使用されるポート番号を表します。このパラメータの値は、ロボット通信設定(Mech-Visionソフトウェアのツールバーで行われる)で設定されたホストポート番号と一致する必要があります。データ型がnumです。

Time_Out

このパラメータは通信のタイムアウト待ち時間を表し、単位は秒です。データ型がnumです。

サンプル

MM_Init_Socket "192.168.1.20",50000,60;

上記のサンプルを実行すると、ロボットが接続しようとしているIPCのIPアドレスが192.168.1.20に設定され、ポート番号が50000に設定され、通信のタイムアウト待ち時間が60秒に設定されます。

TCPプロトコル通信接続の確立

このコマンドは、ロボットとビジョンシステム間のTCPプロトコル通信接続を確立するために使用されます。

呼び出し順序

このコマンドは、 通信初期化 コマンドの直後に呼び出される必要があります。

コマンド形式

MM_Open_Socket;

TCPプロトコル通信接続の切断

このコマンドは、ロボットとビジョンシステム間のTCPプロトコル通信接続を切断するために使用されます。

呼び出し順序

Mech-VisionまたはMech-Vizプロジェクトの結果を取得した後、ユーザーはすぐにこのコマンドを呼び出し、通信接続を切断し、その後、取得した結果を指定された変数に保存することができます。通信接続が長時間切断されない場合、ロボットプログラムが異常な切断エラーを引き起こす可能性があります。

コマンド形式

MM_Close_Socket;

Mech-Visionプロジェクトを実行

機能

このコマンドは、Mech-Visionプロジェクトを実行するために使用されます。Mech-Visionプロジェクトの実行中、ビジョンシステムはカメラ撮影を行い、一連のビジョンアルゴリズムで画像データを処理し、一連のビジョンポイントまたは経路点を生成します。

  • ビジョンポイント:Mech-Visionが認識した対象物で、1つのビジョンポイントには対象物の位置姿勢、ラベル、対象物の寸法、カスタマイズされたデータなどが含まれます。

  • 経路点:ロボットが計画された経路に沿って1つずつ到達する必要のあるポイントで、1つの経路点にはロボットの位置姿勢、ラベル、移動方式などが含まれます。

呼び出し順序

コマンド形式

MM_Start_Vis Job,Pos_Num_Need,SendPos_Type,MM_J;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

Pos_Num_Need

このパラメータは、Mech-Visionプロジェクトから取得されるビジョンポイントまたは経路点の予期数を表します。データ型がnumです。値は0または0より大きい整数です。

Mech-Visionプロジェクトに「経路計画」ステップがある場合、このパラメータは経路点の予期数を表します。それ以外の場合はビジョンポイントの予期数を表します。
  • 0:Mech-Visionプロジェクトからすべてのビジョンポイントまたは経路点を取得します。

  • 0より大きい整数:Mech-Visionプロジェクトから指定数のビジョンポイントまたは経路点を取得します。

    • Mech-Visionプロジェクトから出力されたビジョンポイントまたは経路点の合計数が、指定されたパラメータ値より小さい場合、出力されたすべてのビジョンポイントまたは経路点が取得されます。

    • Mech-Visionプロジェクトから出力されたビジョンポイントまたは経路点の合計数が、指定されたパラメータ値より大きい場合、指定された数のビジョンポイントまたは経路点が取得されます。

set number

SendPos_Type

このパラメータは、ロボット実機の位置姿勢がMech-Visionプロジェクトにどのような形式で送信されるかを指定します。データ型がnumです。値が0、1、2または3です。

SendPos_Type 説明 適用シーン

0

このコマンドは、ロボットの位置姿勢をMech-Visionプロジェクトに送信する必要はありません。

カメラがEye to Hand方式で取り付けられています。Mech-Visionプロジェクトに「経路計画」ステップがある場合、経路計画の開始位置は経路計画設定ツールで設定された初期位置となります。

1

このコマンドは、ロボットの現在の関節角度とフランジ位置姿勢をMech-Visionプロジェクトに送信する必要があります。

カメラがEye in Hand方式で取り付けられています。この設定は、直行ロボット以外のほとんどのロボットに適用されます。

2

このコマンドは、ロボットの現在のフランジ位置姿勢をMech-Visionプロジェクトに送信する必要があります。

カメラがEye in Hand方式で取り付けられています。ロボットに関節角度データはなく、フランジ位置姿勢データのみある場合に適用可能です(例えば直行ロボット)。

3

このコマンドは、カスタマイズされた関節角度をMech-Visionプロジェクトに送信する必要があります。

カメラがEye to Hand方式で取り付けられています。Mech-Visionプロジェクトに「経路計画」ステップがあり、ロボット側から「経路計画」ステップの開始位置を設定する必要がある場合に適用可能です。

MM_J

このパラメータは、カスタマイズされた関節角度データを表します。データ型がJointtargetです。

  • SendPos_Typeのパラメータ値が3の場合、この関節角度データはMech-Visionプロジェクトの「経路計画」ステップに送信され、最初の経路点として計画されます。

  • SendPos_Typeのパラメータの値が3以外の場合、この関節角度データは実際には使用されませんが、定義する必要があります。

サンプル

MM_Start_Vis 1,1,1,MM_J;

上記のサンプルを実行すると、番号が1のMech-Visionプロジェクトが実行され、Mech-Visionプロジェクトが1つのビジョンポイントを返すことが期待されます。また、ロボットは現在の関節角度とフランジデータをMech-Visionプロジェクトに送信します。

ビジョン結果を取得

機能

このコマンドは、Mech-Visionによって出力されたビジョン結果(一連のビジョンポイント)を取得するために使用されます。ビジョンポイントの対象物の位置姿勢(つまり「出力」ステップの「poses」ポートのデータ)は、ビジョンシステムによって自動的に対応するロボットのツール位置姿勢に変換されます。変換流れは以下の通りです。

get tcp
  1. 対象物の位置姿勢を四元数からオイラー角の形式に変換します。

  2. 対象物の位置姿勢をX軸を中心に180°回転させ、Z軸が下を向くようにします。

    convert tcp

呼び出し順序

このコマンドは Mech-Visionプロジェクトを実行 の後に呼び出す必要があります。このコマンドを使用した後、位置姿勢データを表示するために ビジョン結果または計画された経路を保存(位置姿勢形式はツール位置姿勢) コマンドを呼び出す必要があります。

コマンド形式

MM_Get_VisData Job,Pos_Num,MM_Status;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

出力パラメータ

Pos_Num

このコマンドは、Mech-Visionが返されたビジョンポイントの数を保存するために使用されます。データ型がnumです。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 1100 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

このコマンドを呼び出した後、ビジョンシステムは10秒以内に処理結果を返さない場合、タイムアウトのエラーコードが返されます。Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックし、実際の状況に応じてタイムアウトを変更することができます。

set vis time

サンプル

MM_Get_VisData 1,PoseNum,MMStatus;

上記のサンプルを実行すると、Mech-Visionプロジェクト1のビジョン結果を取得し、ビジョンポイントの数をPoseNumに保存し、コマンド実行のステータスコードをMMStatusに保存します。

ビジョン結果または計画された経路を保存(位置姿勢形式はツール位置姿勢)

機能

このコマンドは、特定のビジョンポイントまたは経路点のツール位置姿勢、ラベル、およびツールIDを指定された変数に保存するために使用されます。

コマンド形式

MM_Get_Pose Serial,MM_P,MM_Label,MM_ToolId;

入力パラメータ

Serial

このパラメータは、ビジョンポイントまたは経路点のインデックス番号を指定します。つまり、このインデックス番号に対応するビジョンポイントまたは経路点のツール位置姿勢、ラベル、およびツールIDが指定された変数に保存されます。データ型がnumです。インデックス番号は1から始まります。

出力パラメータ

MM_P

このパラメータは、指定されたインデックス番号に対応するビジョンポイントまたは経路点のツール位置姿勢を保存するために使用されます。データ型がrobtargetです。

MM_Label

このパラメータは、指定されたインデックス番号に対応するビジョンポイントまたは経路点のラベルを保存するために使用されます。データ型がnumです。

MM_ToolId

このパラメータは、指定されたインデックス番号に対応するビジョンポイントまたは経路点のツールIDを保存するために使用されます。データ型がnumです。

サンプル

MM_Get_Pose 1,TcpPose1,Label1,ToolId1;

上記のサンプルを実行すると、最初のビジョンポイントまたは経路点のツール位置姿勢がTcpPose1に保存され、ラベルがLabel1に保存され、ツールIDがToolId1に保存されます。

計画された経路を保存(位置姿勢形式は関節角度)

機能

このコマンドは、特定の経路点の関節角度、ラベル、およびツールIDを指定された変数に保存するために使用されます。

コマンド形式

MM_Get_Jps Serial,MM_J,MM_Label,MM_ToolId;

入力パラメータ

Serial

このパラメータは、経路点のインデックス番号を指定します。つまり、このインデックス番号に対応する経路点の関節角度、ラベル、およびツールIDが指定された変数に保存されます。データ型がnumです。のインデックス番号は1から始まります。

出力パラメータ

MM_J

このパラメータは、指定されたインデックス番号に対応する経路点の関節角度を保存するために使用されます。データ型がJointtargetです。

MM_Label

このパラメータは、指定されたインデックス番号に対応する経路点のラベルを保存するために使用されます。データ型がnumです。

MM_ToolId

このパラメータは、指定されたインデックス番号に対応する経路点のツールIDを保存するために使用されます。データ型がnumです。

サンプル

MM_Get_Jps 1,JpsPose1,Label1,ToolId1;

上記のサンプルを実行すると、最初の経路点の関節角度がJpsPose1に保存され、ラベルがLabel1に保存され、ツールIDがToolId1に保存されます。

Mech-Visionのパラメータレシピを切り替る

機能

このコマンドは、Mech-Visionプロジェクトに使用するパラメータレシピを切り替えるために使用されます。下図は、Mech-VisionプロジェクトのレシピAまたはレシピBの手動切り替えを示しています。パラメータレシピの詳細については、パラメータレシピ をご参照ください。

set recipe

呼び出し順序

このコマンドは、 Mech-Visionプロジェクトを実行 コマンドの前に呼び出す必要があります。

コマンド形式

MM_Switch_Model Job,Model_Number;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

Model_Number

このパラメータは、Mech-Visionプロジェクトのパラメータレシピ番号を表します。データ型がnumです。パラメータレシピ番号を確認するには、 パラメータレシピの番号を確認 をご参照ください。

サンプル

MM_Switch_Model 1,1;

上記のサンプルを実行すると、Mech-Visionプロジェクト1のパラメータレシピを番号が1のパラメータレシピに切り替えます。

Mech-Visionによって計画された計画された計画経路を取得

機能

このコマンドは、Mech-Visionによって計画された経路(一連の経路点)を取得するために使用されます。ここでの経路は、経路計画設定ツールによって計画されます。下図に示すように、 エディタを開く をクリックして経路計画設定ツールを開くことができます。「経路計画」ステップの詳細については、経路計画 をご参照ください。

Mech-Visionの「出力」ステップの ポートタイプ パラメータを「事前定義済み(ロボット経路)」に設定する必要があります。
get plan path step

呼び出し順序

このコマンドは Mech-Visionプロジェクトを実行 の後に呼び出す必要があります。このコマンドを使用した後、位置姿勢データを表示するために ビジョン結果または計画された経路を保存(位置姿勢形式はツール位置姿勢) または 計画された経路を保存(位置姿勢形式は関節角度) コマンドを呼び出す必要があります。

コマンド形式

MM_Get_VisPath Job,Jps_Pos,Pos_Num,VisPos_Num,MM_Status;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

Jps_Pos

このパラメータは、経路点の位置姿勢形式を指定するために使用されます。データ型がnumです。値は1または2です。

出力パラメータ

Pos_Num

このパラメータは、ビジョンシステムが返す経路点の数を保存します。データ型がnumです。デフォルトでは、一度にビジョンシステムによって送信される経路点の最大数は20です。したがって、このパラメータのデフォルトの最大値は20です。 Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックします。実際の状況に応じて最大数の初期値を変更することができますが、最大数の上限は30です。

set number
Mech-Visionによって計画された計画された計画経路を取得 コマンドを呼び出す前に、必ず Mech-Visionプロジェクトを実行 コマンドのPos_Num_Needを0に設定してください。これにより、Mech-Visionによって計画された計画された計画経路を取得 コマンドの呼び出し回数をを減らすことができます。Mech-Visionプロジェクトを実行 コマンドのPos_Num_Needが1に設定されている場合、Mech-Visionによって計画された計画された計画経路を取得 コマンドを一回呼び出すと1つの経路点のみが取得され、すべての経路点を取得するには複数回の呼び出しが必要です。

VisPos_Num

このパラメータは、経路計画設定ツールでの「ビジョン処理による移動」ステップの経路点が経路全体における位置番号を表します。データ型がnumです。経路中に「ビジョン処理による移動」ステップの経路点がない場合、このパラメータの値は0になります。

例えば、計画された経路が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」で構成されている場合、「ビジョン処理による移動」の位置番号は3になります。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 1103 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

このコマンドを呼び出した後、ビジョンシステムは10秒以内に処理結果を返さない場合、タイムアウトのエラーコードが返されます。Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックし、実際の状況に応じてタイムアウトを変更することができます。

set vis time

サンプル

MM_Get_VisPath 2,2,PosNum,Vis_Index,StatusCode;

上記のサンプルを実行すると、Mech-Visionプロジェクト2によって計画された経路を取得し、経路点の位置姿勢タイプはツール位置姿勢であることを示します。経路点の数はPosNumに保存され、経路全体における「ビジョン処理による移動」の経路点の位置番号はVis_Indexに保存され、コマンド実行のステータスコードはStatusCodeに保存されます。

Mech-Visionプロジェクトを実行して結果を取得

機能

このコマンドは、Mech-Visionプロジェクトで使用されるパラメータレシピを設定し(プロジェクトにパラメータレシピがない場合はスキップします)、Mech-Visionプロジェクトを実行し、ビジョンシステムの出力結果(ビジョンポイント、経路点、またはカスタマイズされたデータ)を返します。このコマンドは、Mech-Visionのパラメータレシピを切り替るMech-Visionプロジェクトを実行ビジョン結果を取得Mech-Visionによって計画された計画された計画経路を取得およびMech-Visionのカスタマイズされたデータを取得 コマンドを結合したものと等価です。

このコマンドは、最大20の位置姿勢データを返します。取得される位置姿勢の数が20を超える場合は、このコマンドではなく、Mech-Visionのパラメータレシピを切り替るMech-Visionプロジェクトを実行ビジョン結果を取得Mech-Visionによって計画された計画された計画経路を取得およびMech-Visionのカスタマイズされたデータを取得 コマンドを使用してください。

コマンド形式

MM_Lite_Vis Job,Model_Number,Recv_Data_Type,MM_Status,\MM_J,\Pos_Num,\VisPos_Num;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

Model_Number

このパラメータは、Mech-Visionプロジェクトのパラメータレシピ番号を表します。データ型がnumです。パラメータレシピ番号を確認するには、 パラメータレシピの番号を確認 をご参照ください。

Recv_Data_Type

このパラメータは、ビジョンシステムから返されるデータタイプを指定するために使用されます。値の範囲は1~4です。

出力パラメータ

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 1100 または 1103 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

Pos_Num(オプション)

このパラメータは、ビジョンシステムが返すビジョンポイントまたは経路点の数を保存するために使用されます。データ型がnumです。

VisPos_Num(オプション)

Recv_Data_Typeが3または4の場合、このパラメータの値は意味を持ちます。この場合、「ビジョン処理による移動」の最初の経路点が経路全体における位置番号が保存されます。

例えば、計画された経路が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」で構成されている場合、「ビジョン処理による移動」の位置番号は3になります。「ビジョン処理による移動」がない場合、このパラメータは0になります。

サンプル

MM_Lite_Vis 1,2,1,StatusCode,\Pos_Num:=PoseNum;

上記のサンプルを実行すると、Mech-Visionで番号が2のパラメータレシピを設定し、その後Mech-Visionプロジェクト1を実行してビジョンポイントを取得します。ビジョンポイントの数はPoseNumに保存され、コマンド実行のステータスコードはStatusCodeに保存されます。

Mech-Visionのカスタマイズされたデータを取得

機能

このコマンドは、Mech-Visionの「出力」ステップからカスタマイズされたポートのデータを取得するために使用されます。このコマンドを1回呼び出すと、「出力」ステップのすべてのポートデータがロボットメモリに保存されます。

カスタマイズされたポートを設定するには、「出力」ステップのパラメータで エディタを開く をクリックし、表示される画面で設定を行います。その中、事前定義された通信キー名はカスタマイズされたポート名です。例えば、下図の「customeData1」ポートと「customeData2」ポートはカスタマイズされたポートです。

  1. 事前定義された通信キー(下図のposes、labels、sizes、offsetsなど)で表されるポートデータは、カスタマイズされたデータではありません。

  2. Mech-Visionの「出力」ステップの ポートタイプ パラメータを「カスタム」に設定し、「poses」ポートが存在する必要があります。

custom data

呼び出し順序

このコマンドは Mech-Visionプロジェクトを実行 の後に呼び出す必要があります。このコマンドを使用した後、カスタマイズされたデータを表示するために Mech-Visionのカスタマイズされたデータを保存 コマンドを呼び出す必要があります。

コマンド形式

MM_Get_DyData Job,Pos_Num,MM_Status;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

出力パラメータ

Pos_Num

このコマンドは、Mech-Visionが返されたビジョンポイントの数を保存するために使用されます。データ型がnumです。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 1100 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_Get_DyData 2,PosNum,StatusCode;

上記のサンプルを実行すると、Mech-Visionプロジェクト2のカスタマイズされたデータを取得し、ビジョンポイントの数をPoseNumに保存し、コマンド実行のステータスコードをStatusCodeに保存します。

Mech-Visionのカスタマイズされたデータを保存

機能

このコマンドは、取得したMech-Visionのカスタマイズされたデータを指定された変数に保存するために使用されます。

呼び出し順序

このコマンドは Mech-Visionのカスタマイズされたデータを取得 の後に呼び出す必要があります。

コマンド形式

MM_Get_DyPose Serial,MM_P,MM_Label;

入力パラメータ

Serial

このパラメータは、ビジョンポイントのインデックス番号を指定します。つまり、このインデックス番号に対応するビジョンポイントのカスタマイズされたデータを指定された変数に保存します。データ型がnumです。インデックス番号は1から始まります。

出力パラメータ

MM_P

このパラメータは、指定されたインデックス番号に対応するビジョンポイントのツール位置姿勢を保存するために使用されます。データ型がrobtargetです。

MM_Label

このパラメータは、指定されたインデックス番号に対応するビジョンポイントのラベルを保存するために使用されます。Mech-Visionでラベルのポートが設定されていない場合、0で埋められます。データ型がnumです。

MM_UserData

このパラメータは、指定されたインデックス番号に対応するカスタマイズされたデータを保存するために使用されます。このパラメータは、定義済みのグローバル配列変数です。データ型がnumです。

サンプル

MM_Get_DyPose 2,MM_P_VISION,MM_Label;

上記のサンプルを実行すると、2番目のビジョンポイントのツール位置姿勢がMM_P_VISIONに保存され、ラベルがMM_Labelに保存され、カスタマイズされたデータがグローバル配列MM_UserDataに保存されます。

吸盤のDO信号を取得

機能

このコマンドは、Mech-VisionまたはMech-Vizプロジェクトによって計画された複数パーティション吸盤の制御信号を取得するために使用されます。ロボットは、吸盤のDO信号を設定 コマンドで取得したDO信号をロボットハンドに適用します。

このコマンドを使用する前に、DO信号を設定する必要があります。

  • Mech-VisionプロジェクトのDO信号を設定

    「経路計画」ステップのパラメータから エディタを開く をクリックします。表示される画面でロボットハンド名をダブルクリックし、 ロボットハンドの種類デパレタイズ用吸盤 に選択します。 デパレタイズ用吸盤設定 をクリックし、実際の状況に応じてDO信号を設定します。

    sucker vis
  • Mech-VizプロジェクトのDO信号を設定

    Mech-Vizでは、ロボットハンド名をダブルクリックし、 ロボットハンドの種類デパレタイズ用吸盤 に選択します。 デパレタイズ用吸盤設定 をクリックし、実際の状況に応じてDO信号を設定します。

    sucker viz

呼び出し順序

コマンド形式

MM_Get_DoList Resource,BlockNum;

入力パラメータ

Resource

このパラメータは、DO信号リストのソースを指定します。データ型がnumです。値が0または正整数です。

  • 0:Mech-VizからDO信号リストを取得します。

  • 正整数:Mech-VisionからDO信号リストを取得します。ここで設定された正整数はMech-Visionプロジェクト番号となります。

BlockNum

このパラメータは、吸盤コンフィグレータ で設定された吸盤パーティションの数です。例えば、上図で示す吸盤パーティションの数が3です。

作成されるプロジェクトによって、このコマンドによって返されるDO信号は以下のように異なります。

  • Mech-Visionプロジェクトによって計画された吸盤のDO信号

    • 経路計画の 全体的設定 では、全部のビジョン処理の結果を計画有効になっていない 場合、このコマンドは64個の信号を返し、それは今回計画の吸盤DO信号を示します。有効なDO信号は0〜999の非負整数であり、無効なDO信号は-1(プレースホルダーとして使用)です。

      plan all vis off

      例えば下表では、有効なDO信号は1、3、5、6であり、ロボットは上記のDO信号に対応する値をONに設定する必要があります。

      1番目

      2番目

      3番目

      4番目

      5番目

      6番目

      7番目

      8番目

      63番目

      64番目

      1

      3

      5

      6

      -1

      -1

      -1

      -1

      -1

      -1

    • 経路計画の 全体的設定 では、全部のビジョン処理の結果を計画有効 になっている場合、Mech-Visionが同じビジョン結果に基づいて複数回の計画を行うことができます。このコマンドによって返される64個のDO信号は、すべての計画における吸盤のDO信号です。この時、吸盤パーティションの数を使用して、それぞれの計画の吸盤DO信号を区別できます。

      plan all vis on

      例えば、吸盤パーティションの数が4の場合、このコマンドは64個のDO信号を返します。そのうち、4個のDO信号ごとに一回計画の複数パーティション吸盤の制御信号が含まれます。

      1回目計画

      2回目計画

      16回目計画

      1番目

      2番目

      3番目

      4番目

      5番目

      6番目

      7番目

      8番目

      61番目

      62番目

      63番目

      64番目

      1

      3

      4

      -1

      1

      4

      -1

      -1

      -1

      -1

      -1

      -1

  • Mech-Vizプロジェクトによって計画されたDO信号

    • 「ビジョン処理による移動」ステップで「ビジョン処理の結果を再使用」に チェックを入れていない 場合、このコマンドは64個の信号を返し、それは今回計画の吸盤DO信号を示します。有効なDO信号は0〜999の非負整数であり、無効なDO信号は-1(プレースホルダーとして使用)です。

      vision move off

      例えば下表では、有効なDO信号は1、3、5、6であり、ロボットは上記のDO信号に対応する値をONに設定する必要があります。

      1番目

      2番目

      3番目

      4番目

      5番目

      6番目

      7番目

      8番目

      63番目

      64番目

      1

      3

      5

      6

      -1

      -1

      -1

      -1

      -1

      -1

    • 「ビジョン処理による移動」ステップでビジョン処理の結果を再使用」に チェックが入っていて、このステップががループフロー内にある場合、Mech-Vizは同じビジョン結果に基づいて複数回の計画を行うことができます。このコマンドによって返される64個のDO信号は、すべての計画における吸盤のDO信号です。この時、吸盤パーティションの数を使用して、それぞれの計画の吸盤DO信号を区別できます。

      vision move on

      例えば、吸盤パーティションの数が4の場合、このコマンドは64個のDO信号を返します。そのうち、4個のDO信号ごとに一回計画の複数パーティション吸盤の制御信号が含まれます。

      1回目計画

      2回目計画

      16回目計画

      1番目

      2番目

      3番目

      4番目

      5番目

      6番目

      7番目

      8番目

      61番目

      62番目

      63番目

      64番目

      1

      3

      4

      -1

      1

      4

      -1

      -1

      -1

      -1

      -1

      -1

サンプル

MM_Get_DoList 0,1;

上記のサンプルを実行すると、Mech-Vizから取得されたDO信号リストがロボットメモリに格納されます。

吸盤のDO信号を設定

機能

このコマンドは、取得したDO信号をGO信号に設定するために使用されます。最大4グループのGO信号をサポートし、1グループのGO信号は16ビットです。複数グループのGO信号を設定する場合は、このコマンドを複数回実行してください。

呼び出し順序

このコマンドは 吸盤のDO信号を取得 の後に呼び出す必要があります。

コマンド形式

MM_Set_DoList Loop_Index,Serial,Go16;

入力パラメータ

Loop_Index

このパラメータは、どの回目の計画の吸盤DO信号を設定するかを指定します。

Serial

このパラメータは、信号グループのインデックス番号を指定するために使用されます。信号グループのインデックス番号とDO信号の対応関係を下表に示します。データ型がnumです。値の範囲が1~4です。

信号グループのインデックス番号

DO信号の範囲

1

0~15

2

16~31

3

32~47

4

48~63

Go16

このパラメータは信号グループの名前を表し、DO信号を設定するために使用されます。信号グループの名前は、実際に使用されるDO信号の数に応じて設定できます。データ型がsignalgoです。

サンプル

MM_Set_DoList 1,1,GO16;
MM_Set_DoList 1,2,GO32;

上記のサンプルを実行すると、今回計画の0〜15の範囲のDO信号がGO16に書き込まれ、16〜31の範囲のDO信号がGO32に書き込まれます。

Mech-Vizプロジェクトを実行

機能

このコマンドは、Mech-Vizプロジェクトを実行するために使用されます。Mech-Vizは、Mech-Visionの出力されたビジョン結果に基づいてロボットの動作経路を計画します。

Mech-Vizのリソースパネルでプロジェクトを右クリックし、自動的に読み込む にチェックを入れます。

呼び出し順序

プロジェクトのステップパラメータは、Mech-Vizプロジェクトを実行する前に設定する必要があります。したがって、 Mech-Vizのステップパラメータを読み取る または Mech-Vizのステップパラメータを設定 コマンドは Mech-Vizプロジェクトを実行 コマンドの前に呼び出す必要があります。

コマンド形式

MM_Start_Viz SendPos_Type,MM_J;

入力パラメータ

SendPos_Type

このパラメータは、ロボット実機の位置姿勢がMech-Vizプロジェクトにどのような形式で送信されるかを指定します。値が0、1または2です。データ型がnumです。

ロボットの位置姿勢タイプ 説明 適用シーン

0

このコマンドはロボットの位置姿勢をMech-Vizプロジェクトに送信する必要がありません。Mech-Vizプロジェクトでの仮想ロボットは初期位置姿勢(JPs = [0, 0, 0, 0, 0, 0] )から最初の経路点に移動します。

カメラがEye to Hand方式で取り付けられています。

1

このコマンドはロボットの現在の関節角度とフランジ位置姿勢をMech-Vizプロジェクトに送信する必要があります。Mech-Vizプロジェクトでの仮想ロボットは受信された関節角度から最初の経路点に移動します。

カメラの取り付け方式がEye in Handである場合は推奨します。

2

このコマンドはロボットのティーチポイント(現在の関節角度ではなく、カスタマイズされた関節角度)をMech-Vizプロジェクトに送信する必要があります。これは、ロボットが画像撮影領域の外にいる場合に(下図に示す)、Mech-Vizプロジェクトが次回の経路を事前に計画することをトリガーするために使用されます。Mech-Vizプロジェクトでの仮想ロボットは受信された最初のティーチポイントから最初の経路点に移動します。

カメラの取り付け方式がEye to Handである場合は推奨します。

カメラの取り付け方法がEye to Handである場合、なぜ ロボットの位置姿勢タイプ を2に設定することが推奨されますか?

下図に示すように、ロボットは配置領域で動作しています。

この場合、 SendPos_Type1 に設定すると、ロボットの現在の位置姿勢がMech-Vizに送信され、ロボット実機は最初の経路点に移動する前に他の位置に移動する可能性があります。仮想ロボットは現在の位置からMech-Vizプロジェクトの最初の経路点に移動し、この移動中に衝突が検出されるため警告が表示される可能性があります。

この場合、 SendPos_Type2 に設定すると、ロボット側で設定されたティーチポイントがMech-Vizに送信されます。これにより、ロボット実機は配置領域でMech-Vizをトリガーして次回の経路を事前に計画し、サイクル時間を短縮することができます。

したがって、カメラがEye to Hand方式で取り付けられている場合、ロボットの位置姿勢タイプを2に設定することが推奨されます。

robot example

MM_J

このパラメータは、カスタマイズされた関節角度データを表します。データ型がJointtargetです。

  • SendPos_Typeのパラメータ値が2の場合、この関節角度データはMech-Vizプロジェクトに送信され、最初の経路点として計画されます。

  • SendPos_Typeのパラメータ値が2以外の場合、この関節角度データは実際には使用されませんが、定義する必要があります。

サンプル

MM_Start_Viz 1,MM_J;

上記のサンプルを実行すると、ロボットの現在の関節角度とフランジ位置姿勢をMech-Vizプロジェクトに送信し、Mech-Vizプロジェクトを実行します。

Mech-Vizの分岐ステップの出口を設定

機能

このコマンドは、「メッセージによって異なる分岐を実行」ステップの出口を設定するために使用されます。Mech-Vizプロジェクトが「メッセージによって異なる分岐を実行」ステップに実行すると、このコマンドによって出口を指定するのを待ちます。

set branch

呼び出し順序

このコマンドは Mech-Vizプロジェクトを実行 の後に呼び出す必要があります。

コマンド形式

MM_Set_Branch Branch_Num,Export_Num;

入力パラメータ

Branch_Num

このパラメータは、「メッセージによって異なる分岐を実行」ステップ番号を指定するために使用されます。データ型がnumです。その値は正の整数である必要があります。ステップ番号はステップパラメータで取得できます。例えば、上図のステップ番号は1です。

Export_Num

このパラメータは、「メッセージによって異なる分岐を実行」ステップの出口番号を指定します。データ型がnumです。その値は正の整数である必要があります。このパラメータをNに設定すると、Mech-Vizプロジェクトは「メッセージによって異なる分岐を実行」ステップのN-1番号に沿って実行を継続します。

サンプル

MM_Set_Branch 1,3;

上記のサンプルを実行すると、Mech-Vizプロジェクトがステップ番号が1の「メッセージによって異なる分岐を実行」ステップに実行するまで出口2から実行を継続します。

Mech-Vizの現在のインデックスを設定

機能

このコマンドは、インデックス付きのステップの現在のインデックス値を設定するために使用されます。インデックス付きのステップとは、「グリッドによる移動」、「リストによる移動」、「事前計画パレットパターン」、「カスタマイズのパレットパターン」など、「インデックス」パラメータを含むステップのことです。

set index

呼び出し順序

通常、インデックス付きのステップの前には「メッセージによって異なる分岐を実行」ステップがあり、ロボットはまず Mech-Vizプロジェクトを実行 コマンドを呼び出し、次に Mech-Vizの現在のインデックスを設定 コマンドを呼び出し、最後に Mech-Vizの分岐ステップの出口を設定 コマンドを呼び出します。これにより、Mech-Vizは現在のインデックス値を設定するための十分な時間が確保されます。

コマンド形式

MM_Set_Index Skill_Num,Index_Num;

入力パラメータ

Skill_Num

このパラメータは、インデックス付きのステップのステップ番号を指定するために使用されます。データ型がnumです。その値は正の整数である必要があります。ステップ番号はステップパラメータで取得できます。例えば、上図のステップ番号は3です。

Index_Num

このパラメータは、インデックス付きのステップの現在のインデックス値を指定するために使用されます。データ型がnumです。その値は正の整数である必要があります。このパラメータ値がNに設定されている場合、対応するステップの現在のインデックス値はN-1となります。

サンプル

MM_Set_Index 2,10;

上記のサンプルを実行すると、Mech-Vizプロジェクト内のステップ番号が2のステップの現在のインデックス値が9に設定されます。

Mech-Vizの計画経路を取得

機能

このコマンドは、Mech-Vizプロジェクトによって計画された動作経路(一連の経路点)を取得するために使用されます。

経路点:ロボットが計画された経路に沿って1つずつ到達する必要のあるポイントで、1つの経路点にはロボットの位置姿勢、ラベル、移動方式などが含まれます。経路点は次の2つの種類に分けられます。

  • 「ビジョン処理による移動」の経路点:「ビジョン処理による移動」ステップに対応する経路点。

  • 「ビジョン処理による移動」の以外の経路点:「ビジョン処理による移動」ステップ以外の移動ステップに対応する経路点。

呼び出し順序

このコマンドは、Mech-Vizプロジェクトを実行 コマンドの後に呼び出す必要があります。このコマンドを使用した後、位置姿勢データを表示するために ビジョン結果または計画された経路を保存(位置姿勢形式はツール位置姿勢) または 計画された経路を保存(位置姿勢形式は関節角度) コマンドを呼び出す必要があります。

コマンド形式

MM_Get_VizData Jps_Pos,Pos_Num,VisPos_Num,MM_Status;

入力パラメータ

Jps_Pos

このパラメータは、経路点の位置姿勢形式を指定するために使用されます。データ型がnumです。値は1または2です。

出力パラメータ

Pos_Num

このコマンドは、ビジョンシステムが返す経路点の数を保存するために使用されます。デフォルトでは、一度にビジョンシステムによって送信される経路点の最大数は20個であるため、このパラメータの最大初期値は20となります。 Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックします。実際の状況に応じて最大数の初期値を変更することができますが、最大数の上限は30です。

set number

VisPos_Num

このパラメータは、Mech-Vizプロジェクトでの「ビジョン処理による移動」ステップの経路点が経路全体における位置番号を表します。データ型がnumです。経路中に「ビジョン処理による移動」ステップの経路点がない場合、このパラメータの値は0になります。

例えば、計画された経路が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」で構成されている場合、「ビジョン処理による移動」の位置番号は3になります。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 2100 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

このコマンドを呼び出した後、ビジョンシステムは10秒以内に処理結果を返さない場合、タイムアウトのエラーコードが返されます。Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックし、実際の状況に応じてタイムアウトを変更することができます。

set viz time

サンプル

MM_Get_VizData 2,PosNum,VisIndex,StatusCode;

上記のサンプルを実行すると、Mech-Vizプロジェクトの計画された動作経路を取得し、経路点の位置姿勢がツール位置姿勢形式です。経路点の数はPosNumに保存され、「ビジョン処理による移動」の経路点が経路全体における位置番号はVisIndexに保存され、コマンド実行のステータスコードはStatusCodeに保存されます。

Mech-Vizプロジェクトを実行して経路を計画

機能

このコマンドは、Mech-Vizプロジェクトを実行し、分岐ステップの出口を設定し(プロジェクトに分岐ステップがない場合はスキップします)、Mech-Vizプロジェクトの計画された動作経路を返します。このコマンドは、Mech-Vizプロジェクトを実行Mech-Vizの分岐ステップの出口を設定 および Mech-Vizの計画経路を取得 コマンドを結合したものと等価です。

コマンド形式

MM_Lite_Viz Branch_Num,Export_Num,Recv_Data_Type,MM_Status,\Pos_Num,\VisPos_Num;

入力パラメータ

Branch_Num

このパラメータは、分岐ステップのステップIDを指定するために使用されます。データ型がnumです。値は0または正の整数であり、0はMech-Vizプロジェクトが「メッセージによって異なる分岐を実行」ステップを使用しないことを示します。ステップIDは、ステップパラメータで取得できます。

Export_Num

このパラメータは、「メッセージによって異なる分岐を実行」ステップの出口番号を指定します。データ型がnumです。その値は正の整数である必要があります。このパラメータをNに設定すると、Mech-Vizプロジェクトは「メッセージによって異なる分岐を実行」ステップのN-1番号に沿って実行を継続します。

Recv_Data_Type

このパラメータは、経路点の位置姿勢形式を指定するために使用されます。データ型がnumです。値は1または2です。

出力パラメータ

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 2100 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

Pos_Num(オプション)

このコマンドは、ビジョンシステムが返す経路点の数を保存するために使用されます。データ型がnumです。

VisPos_Num(オプション)

このパラメータは、Mech-Vizプロジェクトでの「ビジョン処理による移動」ステップの経路点が経路全体における位置番号を表します。データ型がnumです。経路中に「ビジョン処理による移動」ステップの経路点がない場合、このパラメータの値は0になります。

例えば、計画された経路が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」で構成されている場合、「ビジョン処理による移動」の位置番号は3になります。

サンプル

MM_Lite_Viz 1,2,1,StatusCode,\Pos_Num:=PoseNum;

上記のサンプルを実行すると、Mech-Vizプロジェクトを実行する際に、まずステップ番号が1の「メッセージによって異なる分岐を実行」ステップが出口1から実行することを設定し、次にMech-Vizプロジェクトの出力された経路点を取得します。経路点の数はPoseNumに保存され、コマンド実行のステータスコードはStatusCodeに保存されます。

「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得

機能

このコマンドは、Mech-Visionプロジェクトの「ビジョン処理による移動」の計画データ、またはMech-Vizプロジェクトの「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得するために使用されます。このコマンドを1回呼び出すと、すべてのデータがロボットメモリに保存されます。

Mech-Viz 2.0バージョンの場合、このコマンドはカスタムデータの取得をサポートせず、「ビジョン処理による移動」の計画結果のみを取得できます。
  • Mech-Visionプロジェクトの場合:ここでの「ビジョン処理による移動」の計画データは、経路計画設定ツールの「ビジョン処理による移動」ステップが計画されたデータのことで、把持するワークのラベル、把持されたワークの合計数、今回把持されたワークの数、吸盤のエッジコーナー番号、TCPオフセット、ワーク群の向き、単体ワークの向き、ワーク群の寸法が含まれます。

  • Mech-Vizプロジェクトの場合:

    • ここでの「ビジョン処理による移動」の計画データは、Mech-Vizの「ビジョン処理による移動」ステップが計画されたデータのことで、把持するワークのラベル、把持されたワークの合計数、今回把持されたワークの数、吸盤のエッジコーナー番号、TCPオフセット、ワーク群の向き、単体ワークの向き、ワーク群の寸法が含まれます。

    • カスタマイズされたデータ:Mech-Visionの「出力」ステップのカスタマイズされたポートのデータがMech-Vizの転送によって得られたデータのことです。

      カスタマイズされたポートを設定するには、「出力」ステップのパラメータで エディタを開く をクリックし、表示される画面で設定を行います。その中、事前定義された通信キー名はカスタマイズされたポート名です。例えば、下図の「customeData1」ポートと「customeData2」ポートはカスタマイズされたポートです。

      1. 事前定義された通信キー(下図のposes、labels、sizes、offsetsなど)で表されるポートデータは、カスタマイズされたデータではありません。

      2. Mech-Visionの「出力」ステップの ポートタイプ パラメータを「カスタム」に設定し、「poses」ポートが存在する必要があります。

      custom data

呼び出し順序

このコマンドは Mech-Visionプロジェクトを実行 または Mech-Vizプロジェクトを実行 の後に呼び出す必要があります。このコマンドを使用した後、「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを表示するために 「ビジョン処理による移動」の計画データたはカスタマイズされたデータを保存 コマンドを呼び出す必要があります。

コマンド形式

MM_get_plandata Resource,Jps_Pos,Pos_Num,VisPos_Num,MM_Status;

入力パラメータ

Resource

このパラメータは、「ビジョン処理による移動」の計画データのソースを指定します。データ型がnumです。値が0または正整数です。

  • 0:Mech-Vizから「ビジョン処理による移動」の計画データを取得します。

  • 正整数:Mech-Visionから「ビジョン処理による移動」の計画データ取得します。ここで設定された正整数はMech-Visionプロジェクト番号となります。

Jps_Pos

このパラメータは、返されたデータの予期形式を表します。データ型がnumです。

  • Resourceが0の場合、Jps_Posパラメータ値の範囲は1~4になります。

    Jps_Posパラメータ値 返されたデータの予期形式 の説明(Mech-Visionプロジェクトにカスタマイズされたポートがない場合は カスタマイズされたデータ がありません)

    1

    位置姿勢(関節角度形式),移動方式,ツール番号,速度,カスタマイズされたデータ1,...,カスタマイズされたデータN

    2

    位置姿勢(ツール位置姿勢形式),移動方式,ツール番号,速度,カスタマイズされたデータ1,...,カスタマイズされたデータN

    3

    位置姿勢(関節角度形式),移動方式,ツール番号,速度,Mech-Vizの「ビジョン処理による移動」の計画データ,カスタマイズされたデータ1,...,カスタマイズされたデータN

    4

    位置姿勢(ツール位置姿勢形式),移動方式,ツール番号,速度,Mech-Vizの「ビジョン処理による移動」の計画データ,カスタマイズされたデータ1,...,カスタマイズされたデータN

  • Resourceが正整数の場合、Jps_Posパラメータ値の範囲は1~2になります。

    Jps_Posパラメータ値 返されたデータの予期形式 の説明

    1

    位置姿勢(関節角度形式),移動方式,ツール番号,速度,Mech-Visionの「ビジョン処理による移動」の計画データ

    2

    位置姿勢(ツール位置姿勢形式),移動方式,ツール番号,速度,Mech-Visionの「ビジョン処理による移動」の計画データ

位置姿勢

経路点の位置姿勢は、ロボット関節角度(度単位)、またはツール位置姿勢(3次元座標はミリメートル単位、オイラー角は度単位)で表されることができます。

移動方式

ロボットの移動タイプを表し、値の範囲が1または2です。

  • 1:関節運動。

  • 2:直線運動。

ツール番号

ロボットが経路点に移動するときに使用するロボットハンドの番号です。-1である場合、ロボットハンドが使用されないことを示します。

速度

速度の意味はプロジェクトによって異なります。詳細は以下の通りです。

  • Mech-Visionプロジェクトの場合:速度は、経路計画設定ツールで設定されたシミュレーション速度の値(パーセンテージで表す)を指します。

  • Mech-Vizプロジェクトの場合:速度は、移動ステップのパラメータで設定された速度パラメータの値にMech-Vizで設定されたグローバル速度を乗算したもの(パーセンテージで表す)を指します。

「ビジョン処理による移動」の計画データ

Mech-VisionまたはMech-Vizの「ビジョン処理による移動」ステップが計画されたデータのことで、把持するワークのラベル、把持されたワークの合計数、今回把持されたワークの数、吸盤のエッジコーナー番号、TCPオフセット、ワーク群の向き、単体ワークの向き、ワーク群の寸法が含まれます。

名称 説明 次元数

把持するワークのラベル

10個の整数で構成され、デフォルトは10個のゼロです。

10

把持されたワークの合計数

累計で把持されたワークの数です。

1

今回把持されたワークの数

今回把持されたワークの数

1

吸盤のエッジコーナー番号

この吸盤に使用されているエッジコーナー番号です。

1

TCPオフセット

ワーク群の中心がロボットハンド中心に対して持つXYZ方向のオフセットを指します。

3

ワーク群の向き

吸盤の長辺に対するワーク群の向きです。0は平行、1は垂直を意味します。

1

単体ワークの向き

吸盤の長辺に対する単体ワークの向きです。0は平行、1は垂直を意味します。

1

ワーク群の寸法

今回把持されたワーク群の長さ、幅、高さです。

3

カスタイズされたデータ

単一のビジョンポイントのすべてのカスタマイズされたポートのデータです。例えば、「出力」ステップの各ポートのデータは下表の通りである場合、ロボットが取得した最初のビジョンポイントの カスタマイズされたデータ は[0, 0, 1]と[0, 0]であり、ロボットが取得した2番目のビジョンポイントの カスタマイズされたデータ は[1, 0, 0] と [1, 1]です。

ポート名

poses

labels

customData1

customData2

ポートデータ

[

[0, 0, 0, 1, 0, 0, 0],
[0, 0, 0, 1, 0, 0, 0]

]

[

"0",
"1"

]

[

[0, 0, 1],
[1, 0, 0]

]

[

[0, 0],
[1, 1]

]

最初のビジョンポイント

[0, 0, 0, 1, 0, 0, 0]

0

[0, 0, 1]

[0, 0]

2番目のビジョンポイント

[0, 0, 0, 1, 0, 0, 0]

1

[1, 0, 0]

[1, 1]

出力パラメータ

Pos_Num

このコマンドは、ビジョンシステムが返す経路点の数を保存するために使用されます。データ型がnumです。

VisPos_Num

このパラメータは、Mech-Vizプロジェクトでの「ビジョン処理による移動」ステップの経路点が経路全体における位置番号を表します。データ型がnumです。経路中に「ビジョン処理による移動」ステップの経路点がない場合、このパラメータの値は0になります。

例えば、計画された経路が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」で構成されている場合、「ビジョン処理による移動」の位置番号は3になります。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドによりMech-Visionプロジェクトの「ビジョン処理による移動」の計画データの取得に成功した場合、ステータスコードは 1103 になります。コマンドによりMech-Vizプロジェクトの「ビジョン処理による移動」の計画データまたはカスタマイズされたデータの取得に成功した場合、ステータスコードは 2100 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_get_plandata 0,4,PosNum,VisIndex,StatusCode;

上記のサンプルを実行すると、Mech-Vizプロジェクトの「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得します。経路点の数はPoseNumに保存され、経路全体における「ビジョン処理による移動」の経路点の位置番号はVisIndexに保存され、コマンド実行のステータスコードはStatusCodeに保存されます。

「ビジョン処理による移動」の計画データたはカスタマイズされたデータを保存

機能

このコマンドは、取得した「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを指定された変数に保存するために使用されます。

呼び出し順序

コマンド形式

「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得 コマンドの指定されたJps_Posパラメータ値に基づいて、以下のコマンドを選択してください。

MM_Get_PlanPose Serial,Jps_Pos,MM_P,MM_MoveType,MM_ToolNum,MM_Speed; (Jps_Pos=2またはJps_Pos=4の場合)
MM_Get_PlanJps Serial,Jps_Pos,MM_J,MM_MoveType,MM_ToolNum,MM_Speed; (Jps_Pos=1またはJps_Pos=3の場合)

入力パラメータ

Serial

このパラメータは、経路点のインデックス番号を指定します。つまり、このインデックス番号に対応する経路点の「ビジョン処理による移動」の計画データたはカスタマイズされたデータを指定された変数に保存します。データ型がnumです。インデックス番号は1から始まります。

Jps_Pos

このパラメータは、「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得 コマンド内のJps_Posで設定された値と一致する必要があります。データ型がnumです。

出力パラメータ

MM_P

このパラメータは、指定されたインデックス番号に対応する経路点のツール位置姿勢を保存するために使用されます(MM_Get_PlanPoseコマンドで使用されます)。データ型がrobtargetです。

MM_J

このパラメータは、指定されたインデックス番号に対応する経路点の関節角度を保存するために使用されます(MM_Get_PlanJpsコマンドで使用されます)。データ型がJointtargetです。

MM_MoveType

このパラメータは、指定されたインデックス番号に対応する経路点の移動方式を保存するために使用されます。データ型がnumです。1は関節運動、2は直線運動を表します。

MM_ToolNum

このパラメータは、指定されたインデックス番号に対応する、ロボットが経路点に移動する時に使用するロボットハンドの番号を保存するために使用されます。データ型がnumです。番号が-1である場合、ロボットハンドが使用されないことを表します。

MM_ToolId

このパラメータは、指定されたインデックス番号に対応する経路点の速度を保存するために使用されます。データ型がnumです。

MM_UserData

このパラメータは、指定されたインデックス番号に対応する経路点のカスタマイズされたデータを保存するために使用されます。このパラメータは、定義済みのグローバル配列変数です。データ型がnumです。

MM_Plan_Results

このパラメータは、指定されたインデックス番号に対応する経路点の「ビジョン処理による移動」の計画データを保存するために使用されます。このパラメータは、定義済みのグローバル配列変数です。データ型がnumです。

MM_Plan_Results配列変数の詳細を下表に示します。

データ 説明 変数

把持するワークのラベル

10個の整数で構成され、デフォルトは10個のゼロです。

MM_Plan_Results{1} ~ MM_Plan_Results{10}

把持されたワークの合計数

累計で把持されたワークの数です。

MM_Plan_Results{11}

今回把持されたワークの数

今回把持されたワークの数

MM_Plan_Results{12}

吸盤のエッジコーナー番号

この吸盤に使用されているエッジコーナー番号です。

MM_Plan_Results{13}

TCPオフセット

ワーク群の中心がロボットハンド中心に対して持つXYZ方向のオフセットを指します。

MM_Plan_Results{14} ~ MM_Plan_Results{16}

ワーク群の向き

吸盤の長辺に対するワーク群の向きです。0は平行、1は垂直を意味します。

MM_Plan_Results{17}

単体ワークの向き

吸盤の長辺に対する単体ワークの向きです。0は平行、1は垂直を意味します。

MM_Plan_Results{18}

ワーク群の寸法

今回把持されたワーク群の長さ、幅、高さです。

MM_Plan_Results{19} ~ MM_Plan_Results{21}

サンプル

  • サンプル1:

    MM_Get_PlanPose 2,4,TcpPose,MoveType,ToolNum,Speed;

    上記のサンプルを実行すると、2番目の経路点のツール位置姿勢、移動方式、ツール番号および速度がそれぞれTcpPose、MoveType、ToolNum、Speedに保存されます。経路点が「ビジョン処理による移動」の経路点でない場合、追加情報はありません。経路点が「ビジョン処理による移動」の経路点である場合、「ビジョン処理による移動」の計画データがグローバル配列MM_Plan_Resultsに保存され、カスタマイズされたデータがグローバル配列MM_UserDataに保存されます。

  • サンプル2:

    MM_Get_PlanJps 1,3,JpsPose,MoveType,ToolNum,Speed;

    上記のサンプルを実行すると、最初の経路点の関節角度、移動方式、ツール番号および速度がそれぞれJpsPose、MoveType、ToolNum、Speedに保存されます。経路点が「ビジョン処理による移動」の経路点でない場合、追加情報はありません。経路点が「ビジョン処理による移動」の経路点である場合、「ビジョン処理による移動」の計画データがグローバル配列MM_Plan_Resultsに保存され、カスタマイズされたデータがグローバル配列MM_UserDataに保存されます。

Mech-Vizのステップパラメータを読み取る

機能

このコマンドは、Mech-Vizプロジェクトで指定されたステップパラメータの値を読み取るために使用されます。

呼び出し順序

このコマンドは、 Mech-Vizプロジェクトを実行 コマンドの前に呼び出す必要があります。

コマンド形式

MM_Get_Property Get_Id,MM_Status,MM_Viz_Prop;

入力パラメータ

Get_Id

このパラメータは、property_configファイルで指定された 構成ID のフィールドとなります。データ型がnumです。

Mech-Visionでは、ツールバーの ロボット通信設定  次へ  詳細設定 をクリックし、 プロパティ設定 をクリックしてproperty_configファイルを開きます。

get property config

このコマンドを使用する前に、あらかじめproperty_configファイルに、ステップ番号と、パラメータ名に対応するキー名を、以下の形式で指定しておく必要があります。

read,構成ID,ステップ番号,パラメータ名に対応するキー名

read

ステップパラメータ値の読取りに使用する行を指定します。

構成ID

唯一の番号を正の整数で指定します。1つの構成IDは、1つのステップパラメータ値を読み取るためにのみ使用できます。複数のステップパラメータ値を読み取る場合は、異なる構成IDを使用してください。

ステップ番号

読み取るパラメータが属するステップの番号を指定します。

キー名

読み込むパラメータに対応するキー名を指定します。

  • キー名キークエリツール から取得できます。Mech-Vizでは、メニューバーの ツール  キークエリツール をクリックして開きます。特定のステップのアイコンをクリックすると、中央のエリアに選択したステップのすべてのパラメータに対応するキー名が表示されます。設定するパラメータのキー名は、下図のエリアに表示される名前である必要があります。

    parameter key name
  • property_configファイルで「#」で始まる行はコメント行であり、コマンドは実行時にこれらのコメントを無視し、処理を行いません。

  • property_configファイルを編集した後、ファイルを保存し、Mech-Visionのツールバーのインターフェースサービスを再起動してください。

property_configファイルには複数のreadコマンドを設定することができますが、各readコマンドの構成IDは一意である必要があります。

出力パラメータ

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 2109 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

MM_Viz_Prop

このパラメータは、指定されたステップの返されたパラメータ値を保存するために使用されます。データ型がnumです。

サンプル

例えば、property_configファイルに以下の内容を追加します。5は構成ID、3はステップ番号、xCountはパラメータ名に対応するキー名を表します。

read,5,3,xCount

ロボットが以下のコマンドを送信した後、xCountのパラメータ値が取得されます。

MM_Get_Property 5,StatusCode,Viz_Prop;

上記のサンプルを実行すると、Mech-Vizプロジェクト内のステップ番号が3のステップの「xCount」に対応するパラメータ値はViz_Propに保存され、コマンド実行のステータスコードはStatusCodeに保存されます。

Mech-Vizのステップパラメータを設定

機能

このコマンドは、Mech-Vizプロジェクト内の指定されたステップのパラメータ値を設定するために使用されます。

呼び出し順序

このコマンドは、 Mech-Vizプロジェクトを実行 コマンドの前に呼び出す必要があります。

コマンド形式

MM_Set_Property Set_Id,MM_Status;

入力パラメータ

Set_Id

このパラメータは、property_configファイルで指定された 構成ID のフィールドとなります。データ型がnumです。

Mech-Visionでは、ツールバーの ロボット通信設定  次へ  詳細設定 をクリックし、 プロパティ設定 をクリックしてproperty_configファイルを開きます。

get property config

このコマンドを使用する前に、あらかじめproperty_configファイルに、ステップ番号、パラメータ名に対応するキー名とパラメータ値を、以下の形式で指定しておく必要があります。

write,構成ID,ステップ番号,パラメータ名に対応するキー名,パラメータ値

write

ステップパラメータ値の設定に使用する行を指定します。

構成ID

番号(一意でない)を正の整数で指定します。

ステップ番号

設定するパラメータが属するステップの番号を指定します。

キー名

設定するパラメータに対応するキー名を指定します。

パラメータ値

設定するパラメータ値を指定します。

  • property_configファイルには、複数のwriteコマンドを設定することができ、構成IDは繰り返すことができます。つまり、1つの構成IDで複数のパラメータ値を設定することができます。

  • キー名キークエリツール から取得できます。Mech-Vizでは、メニューバーの ツール  キークエリツール をクリックして開きます。特定のステップのアイコンをクリックすると、中央のエリアに選択したステップのすべてのパラメータに対応するキー名が表示されます。設定するパラメータのキー名は、下図のエリアに表示される名前である必要があります。

    parameter key name
  • property_configファイルで「#」で始まる行はコメント行であり、コマンドは実行時にこれらのコメントを無視し、処理を行いません。

  • property_configファイルを編集した後、ファイルを保存し、Mech-Visionのツールバーのインターフェースサービスを再起動してください。

出力パラメータ

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 2108 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

例えば、property_configファイルの内容は、1が構成ID、3がステップ番号、xOffset、yOffset、zOffsetがキー名、10がxOffsetに対応するパラメータ値、20がyOffsetに対応するパラメータ値、30がzOffsetに対応するパラメータ値を表します。

write,1,3,xOffset,10
write,1,3,yOffset,20
write,1,3,zOffset,30

ロボットが以下のコマンドを送信した後、Mech-VizはxOffset、yOffsetとzOffsのパラメータ値をそれぞれ10、20と30に設定します。

MM_Set_Property 1,StatusCode;

上記のサンプルを実行すると、xOffset、yOffsetとzOffsに対応するパラメータ値がそれぞれ10、20と30に設定され、コマンド実行のステータスコードがStatusCodeに保存されます。

Mech-Visionプロジェクトに対象物の寸法を入力

機能

このコマンドは、対象物の寸法をMech-Visionプロジェクトに入力するために使用されます。下図に示すように、入力される対象物の寸法は、「対象物の寸法を読み込む」ステップの 箱の寸法設定 パラメータ値となります。

read object dimensions

呼び出し順序

このコマンドは、 Mech-Visionプロジェクトを実行 コマンドの前に呼び出す必要があります。

コマンド形式

MM_Set_BoxSize Job,Length,Width,Height;

入力パラメータ

Job

このパラメータはMech-Visionのプロジェクト番号を表し、Mech-Visionプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がnumです。

LengthWidthHeight

上記の3つのパラメータは、Mech-Visionプロジェクトに入力される対象物の寸法(ミリメートル単位で長さ、幅、高さの順)を表します。寸法値は、「対象物の寸法を読み込む」ステップで読み込まれ、 X軸における長さY軸にける長さZ軸における長さ に記入されます。データ型がnumです。

サンプル

MM_Set_BoxSize 1,500,300,200

上記のサンプルを実行すると、Mech-Visionプロジェクトの「対象物の寸法を読み込む」ステップの対象物の寸法が500×300×200 mmに設定されます。

「通知」ステップのメッセージを取得

機能

Mech-VisionプロジェクトまたはMech-Vizプロジェクトが「通知」ステップまで実行すると、ビジョンシステムは「通知」ステップで事前設定されたメッセージを返します。

このコマンドを使用する前に、「通知」ステップで以下の設定を行う必要があります。

  • Mech-Visionプロジェクト内の「通知」ステップ

    1. 「通知」ステップを他のステップの右側につなぎます(ここでは、「出力」ステップを例とします)。

      notify 1
    2. 「出力」ステップのパラメータで 出力がある場合に制御フローをトリガー にチェックを入れます。

      notify 5
    3. 「通知」ステップのパラメータで、サービス名に Standard Interface Notify(変更不可) を入力し、メッセージに 1001 (実際の状況に応じて変更可能で、正の整数の入力が必要)入力します。

      notify 2
  • Mech-Vizプロジェクト内の「通知」ステップ

    1. 「通知」ステップをワークフローの適切な場所に配置し、その他のステップをつなぎます。

      notify 3
    2. 「通知」ステップのパラメータで、「受信者」を 標準インターフェース に選択し、メッセージに 1000 (実際の状況に応じて変更可能で、正の整数の入力が必要)を入力します。

      notify 4

呼び出し順序

このコマンドは、Mech-Visionプロジェクトを実行 または Mech-Vizプロジェクトを実行 コマンドの直後に呼び出される必要があります。

コマンド形式

MM_Get_Notify Msg;

出力パラメータ

Msg

このパラメータは、「通知」ステップのメッセージを保存するために使用されます(現在は整数のみがサポート)。データ型がnumです。

サンプル

MM_Get_Notify Msg_1;

上記のサンプルを実行すると、「通知」ステップから取得したメッセージがMsg_1に保存されます。

キャリブレーション

機能

このコマンドは、ロボットのハンドアイキャリブレーション(外部パラメータのキャリブレーション)を実行するために使用されます。自動キャリブレーションを行うには、このコマンドをキャリブレーションツールと併用する必要があります。Mech-Visionのツールバーの カメラキャリブレーション(標準モード) をクリックしてキャリブレーションツールを起動できます。詳細については、 ABB RobotWare 6ロボットの自動キャリブレーション をご参照ください。

コマンド形式

MM_Calib Move_Type,Pos_Jps,Wait_time,\Ext;

入力パラメータ

Move_Type

このパラメータはロボットの移動タイプを表し、値の範囲が1または2です。

  • 1:直線運動。

  • 2:関節運動。

Pos_Jps

このパラメータは、キャリブレーションポイントの位置姿勢形式を指定するために使用されます。値は1または2です。

  • 1:ツール位置姿勢。

  • 2:関節角度。

Wait_time

このパラメータは、ロボットがキャリブレーションポイントに移動した後の待機時間を表します(ロボットの振動を防止するため)。単位は秒で、初期値は2秒です。データ型がnumです。

Ext(オプション)

このパラメータは外部軸のデータを表し、単位はミリメートルです。第7軸としてレールがある場合、かつロボットがそのレールの動きを制御する場合のみ、このパラメータに値を設定する必要があります。

サンプル

  • サンプル1:

    MM_Calib 2,1,2;

    上記のサンプルを実行すると、ロボットは関節角度形式でキャリブレーションポイントに移動した後に2秒間待機します。キャリブレーションポイントの位置姿勢はツール位置姿勢形式です。

  • サンプル2:

    MM_Calib 2,1,2\EXT:=Axis7;

    上記のサンプルを実行すると、ロボットは関節角度形式でキャリブレーションポイントに移動した後に2秒間待機し、第7軸の値はAxis7です。キャリブレーションポイントの位置姿勢はツール位置姿勢形式です。

Mech-Vizプロジェクトを停止

機能

このコマンドは、実行中のMech-Vizプロジェクトを停止するために使用されます。

呼び出し順序

このコマンドは Mech-Vizプロジェクトを実行 の後に呼び出す必要があります。

コマンド形式

MM_Stop_Viz MM_Status;

出力パラメータ

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 2104 になります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_Stop_Viz StatusCode;

上記のサンプルを実行すると、実行中のMech-Vizプロジェクトが停止され、コマンド実行のステータスコードがStatusCodeに保存されます。

プロジェクトのステータスを取得

機能

このコマンドは、Mech-Visionプロジェクトが準備完了しているかどうかをチェックするために使用されます。

コマンド形式

MM_Get_Status MM_Status;

出力パラメータ

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がnumです。コマンドが正常に実行された場合、ステータスコードは 1101 になり、Mech-Visionプロジェクトが準備完了していることを示します。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_Get_Status StatusCode;

上記のサンプルを実行すると、Mech-Visionプロジェクトの準備状況がチェックされ、コマンド実行のステータスコードがStatusCodeに保存されます。

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

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