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

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

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

send receive

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

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

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

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

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

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

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

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

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

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

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

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

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

通信初期化

機能

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

コマンド形式

MM_Init_Socket(XML_Name,Alive_Flag,Recv_Flag,Time_Out)

入力パラメータ

XML_Name

このパラメータは、ネットワークの構成ファイルの名前を表します。これは文字列で表現され、大文字と小文字を区別します。この場合、ネットワーク構成ファイルは「XML_Kuka_MMIND.xml」です。通信設定 の時は、このファイルがロボットに読み込まれました。ファイルの内容は以下の通りです。

<ETHERNETKRL>
	<CONFIGURATION>
		<EXTERNAL>
			<IP>192.168.1.121</IP>
            <PORT>50000</PORT>
		</EXTERNAL>
		<INTERNAL>
			<ALIVE Set_Flag="873"/>
		</INTERNAL>
	</CONFIGURATION>
	<RECEIVE>
      <RAW>
         <ELEMENT Tag="MMRecv" Type="BYTE" Set_Flag="871" Size="660" />
      </RAW>
	</RECEIVE>
	<SEND>
      <RAW>
         <ELEMENT Tag="MMSend" Type="BYTE" Size="660"/>
      </RAW>
	</SEND>
</ETHERNETKRL>

このファイルでは、ユーザーは<IP>タグ内の値をIPCのIPアドレスに、<PORT>タグ内の値をロボット通信設定(Mech-Visionソフトウェアのツールバーで行われる)で設定されたホストポート番号に設定する必要があります。

Alive_Flag

このパラメータは、XML_Kuka_MMIND.xmlファイル内の<ALIVE>タグの中のSet_Flag値です。上記のファイルを例とすると、このパラメータの値は873に設定される必要があります。このパラメータの値が873に設定されると、それに対応する信号はONとなり、これはビジョンシステムとロボット通信が成功したことを示します。

Recv_Flag

このパラメータは、XML_Kuka_MMIND.xmlファイル内の<RECEIVE>タグの中のSet_Flag値です。上記のファイルを例とすると、このパラメータの値は871に設定される必要があります。このパラメータの値が871に設定されると、それに対応する信号はONとなり、これはロボットがビジョンシステムからのデータを受信したことを示します。

Time_Out

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

サンプル

MM_Init_Socket(“XML_Kuka_MMIND”,873,871,60)

上記の例では、XML_Kuka_MMIND.xmlファイルの設定情報に基づいて、ビジョンシステムとロボットの間でTCPプロトコルの通信接続が確立されます。

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

機能

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

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

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

呼び出し順序

コマンド形式

MM_Start_Vis(Job,Pos_Num_Need,SendPos_Type,MM_J)

入力パラメータ

Job

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

Pos_Num_Need

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

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

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

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

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

set number

SendPos_Type

このパラメータは、ロボット実機の位置姿勢がMech-Visionプロジェクトにどのような形式で送信されるかを指定します。データ型がINTです。値が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

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

  • 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
  3. ロボットメーカーによって定義されたゼロ位置に基づいて、垂直方向に対応するオフセットを追加します。

    increase height

呼び出し順序

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

コマンド形式

MM_Get_VisData(Job,Pos_Num,MM_Status)

入力パラメータ

Job

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

出力パラメータ

Pos_Num

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

MM_Status

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

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

set vis time

サンプル

MM_Get_VisData(1,PoseNum,MMStatus)

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

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

機能

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

コマンド形式

MM_Get_Pose(Serial,MM_P,MM_Label,MM_Speed)

入力パラメータ

Serial

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

出力パラメータ

MM_P

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

MM_Label

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

MM_Speed

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

サンプル

MM_Get_Pose(1,TcpPose1,Label1,Speed1)

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

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

機能

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

コマンド形式

MM_Get_Jps(Serial,MM_J,MM_Label,MM_Speed)

入力パラメータ

Serial

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

出力パラメータ

MM_J

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

MM_Label

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

MM_Speed

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

サンプル

MM_Get_Jps(1,JpsPose1,Label1,Speed1)

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

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

機能

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

set recipe

呼び出し順序

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

コマンド形式

MM_Switch_Model(Job,Model_Number)

入力パラメータ

Job

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

Model_Number

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

サンプル

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プロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がINTです。

Jps_Pos

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

出力パラメータ

Pos_Num

このパラメータは、ビジョンシステムが返す経路点の数を保存します。データ型がINTです。デフォルトでは、一度にビジョンシステムによって送信される経路点の最大数は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

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

例えば、経路全体が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」という経路点で構成されている場合、「ビジョン処理による移動」の経路点の位置番号は3です。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がINTです。コマンドが正常に実行された場合、ステータスコードは 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の「出力」ステップからカスタマイズされたポートのデータを取得するために使用されます。このコマンドを1回呼び出すと、「出力」ステップのすべてのポートデータがロボットメモリに保存されます。

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

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

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

custom data

呼び出し順序

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

コマンド形式

mm_get_dy_data(Job,Pos_Num,MM_Status)

入力パラメータ

Job

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

出力パラメータ

Pos_Num

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

MM_Status

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

サンプル

mm_get_dy_data(2,PosNum,StatusCode)

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

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

機能

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

呼び出し順序

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

コマンド形式

MM_Get_DyPose(Serial,MM_P,MM_Label)

入力パラメータ

Serial

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

出力パラメータ

MM_P

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

MM_Label

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

MM_UserData

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

サンプル

MM_Get_DyPose(2,MM_P_VISION,MM_Label)

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

吸盤のDO信号を取得

機能

このコマンドは、Mech-VisionまたはMech-Vizプロジェクトによって計画された複数パーティション吸盤の制御信号を取得するために使用されます。このコマンドは64個のDO信号を返します。有効なDO信号は非負の整数で、範囲は0から999です。無効なDO信号は-1であり、プレースホルダーとして使用されます。ロボットは、吸盤のDO信号を設定 コマンドで取得したDO信号リストをロボットハンドに適用します。

例えば下表の場合、返された有効な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

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

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

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

    sucker vis
  • Mech-VizプロジェクトのDO信号と「DOを設定」ステップを設定

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

      sucker viz
    • 「DOを設定」ステップを設定します。

      • 「DOを設定」ステップは、「ビジョン処理による移動」ステップの後につなぐ必要があります。

      • 受信者標準インターフェース に設定します。

      • 実行モード では、 ソースビジョン処理による移動 を選択し、 「ビジョン処理による移動」を選択 を使用する「ビジョン処理による移動」ステップ名、すなわち「DOを設定」ステップの前にある「ビジョン処理による移動」ステップ名、例えば下図では「ビジョン処理による移動_1」を選択します。

        get do

呼び出し順序

コマンド形式

MM_Get_DoList(Resource)

入力パラメータ

Resource

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

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

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

サンプル

MM_Get_DoList 0;

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

吸盤のDO信号を設定

機能

このコマンドは、ロボットが取得した吸盤のDO信号をロボットハンドに適用するために使用されます。

呼び出し順序

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

コマンド形式

MM_Set_DoList()

サンプル

MM_Get_DoList(0)
MM_Set_DoList()

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

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です。データ型がINTです。

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

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

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

  • 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

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

Export_Num

このパラメータは、「メッセージによって異なる分岐を実行」ステップの出口番号を指定します。データ型がINTです。その値は正の整数である必要があります。このパラメータを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

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

Index_Num

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

サンプル

MM_Set_Index(2,10)

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

Mech-Vizの計画経路を取得

機能

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

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

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

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

呼び出し順序

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

コマンド形式

MM_Get_VizData(Jps_Pos,Pos_Num,VisPos_Num,MM_Status)

入力パラメータ

Jps_Pos

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

出力パラメータ

Pos_Num

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

set number

VisPos_Num

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

例えば、経路全体が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」という経路点で構成されている場合、「ビジョン処理による移動」の経路点の位置番号は3です。

MM_Status

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

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

set viz time

サンプル

MM_Get_VizData(2,PosNum,VisIndex,StatusCode)

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

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

機能

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

  • 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

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

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

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

Jps_Pos

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

  • 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

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

VisPos_Num

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

例えば、経路全体が「移動_1」、「移動_2」、「ビジョン処理による移動」、「移動_3」という経路点で構成されている場合、「ビジョン処理による移動」の経路点の位置番号は3です。

MM_Status

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がINTです。コマンドにより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:IN,Jps_Pos:IN,MM_P:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT)  (Jps_Pos=2またはJps_Pos=4の場合)
MM_Get_PlanJps(Serial:IN,Jps_Pos:IN,MM_J:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT)  (Jps_Pos=1またはJps_Pos=3の場合)

入力パラメータ

Serial

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

Jps_Pos

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

出力パラメータ

MM_P

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

MM_J

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

MM_MoveType

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

MM_ToolNum

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

MM_Speed

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

MM_UserData

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

MM_Plan_Results

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

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,Viz_Prop)

入力パラメータ

Get_Id

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

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

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

Viz_Prop

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

サンプル

例えば、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 のフィールドとなります。データ型がINTです。

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

このパラメータは、コマンド実行のステータスコードを保存するために使用されます。データ型がINTです。コマンドが正常に実行された場合、ステータスコードは 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プロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を示します。データ型がINTです。

LengthWidthHeight

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

サンプル

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(MM_Notify)

出力パラメータ

MM_Notify

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

サンプル

MM_Get_Notify(Msg_1)

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

キャリブレーション

機能

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

コマンド形式

MM_CALIB(Move_Type,PosJps,WaitTime,E1)

入力パラメータ

Move_Type

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

  • 1:直線運動。

  • 2:関節運動。

PosJps

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

  • 1:ツール位置姿勢。

  • 2:関節角度。

WaitTime

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

E1

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

サンプル

MM_CALIB(2,1,2,0)

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

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

機能

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

呼び出し順序

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

コマンド形式

MM_Stop_Viz()

サンプル

MM_Stop_Viz()

上記のサンプルを実行すると、実行中のMech-Vizプロジェクトが停止されます。

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

機能

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

コマンド形式

MM_Get_Status(MM_Status)

出力パラメータ

MM_Status

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

サンプル

MM_Get_Status(StatusCode)

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

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

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