標準インターフェースコマンド

現在ご覧いただいているのは未リリースのバージョンです(V1.8.1)。異なるバージョンを参照する場合は、画面右上のボタンから切り替えが可能です。

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

KUKAで標準インターフェースを用いてロボットプログラミングを行う際は、以下の点にご注意ください。

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

  2. 全ての パラメータローカル変数 と定義します。

  3. パラメータ入力パラメータ あるいは 出力パラメータ と定義することが可能です。

以下のコマンドについて説明します。

通信の初期化

本サブプログラムによって、TCP/IP通信の設定、通信成功フラグ、データ受信成功フラグ、接続タイムアウト時間の設定に使われるXMLというファイルが作成されます。

サブプログラム

MM_Init_Socket(XML_Name[]:IN,Alive_Flag:IN,Recv_Flag:IN,Time_Out:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

XML_Name[]

XMLファイル名(大文字と小文字を区別する)です。

Alive_Flag

XMLファイルに記録された通信成功フラグの番号です。フラグがONと設定された場合、通信が正常に確立できます。

Recv_Flag

XMLファイルに記録されたデータ受信成功フラグの番号です。フラグがONと設定された場合、ロボットが正常にデータを受信することができます。

Time_Out

接続タイムアウト時間(秒単位)です。

サンプル

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

このサンプルを実行した場合、“XML_Kuka_MMMIND”という通信設定用 XMLファイルで、通信成功フラグを873、データ受信成功フラグを871、接続タイムアウト時間を60 秒に設定しています。

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

このサブプログラムを実行すると、Mech-Visionプロジェクトが実行され、カメラ撮影とビジョン処理による認識が行われます。Mech-Vizを使用せずMech-Visionを使用する場合に使用します。

サブプログラム

MM_Start_Vis(Job:IN,Pos_Num_Need:IN,SendPos_Type:IN,MM_J:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Job

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

Pos_Num_Need

ビジョンポイントの期待数で、Mech-Visionから取得したいビジョンポイントの数です。設定可能な範囲は0~20で、0に設定するとすべてのビジョンポイントが取得されます。

SendPos_Type

ロボット位置姿勢のタイプで、ロボット実機の位置姿勢がMech-Visionに送信される形式を指定します。パラメータ範囲は0~3です。

  • 0:ロボットの位置姿勢をビジョンシステムに送信する必要はありません。プロジェクトがEye to Handモードである場合、画像撮影はロボットの位置姿勢とは関係なく、Mech-Visionはロボットの位置姿勢を必要としません。

  • 1:ロボットの位置姿勢を「ロボットの現在の関節角度+フランジ位置姿勢」の形式でビジョンシステムに送信します。Eye in Handのプロジェクトでは、このパラメータを推奨します。Mech-Visionプロジェクトの「経路計画」ステップでは、ロボットから返された関節角度を使用します。フランジ位置姿勢がすべてゼロの場合、フランジデータは無視されます。

  • 2:ロボットの位置姿勢を現在のフランジ位置姿勢の形式でビジョンシステムに送信します。Eye In Handのプロジェクトで、ロボットが関節角度データがなく、フランジ位置姿勢のみがある場合(直行ロボットなど)に適しています。

  • 3:ロボットの位置姿勢をカスタマイズされた関節角度の形式(ユーザーにより設定された関節角度の変数を読み込む)でビジョンシステムに送信します。Eye To Handプロジェクトでは、このパラメータを推奨します。Mech-Visionプロジェクトの「経路計画」ステップはロボットが送信する関節角度を初期位置姿勢として使用します。

MM_J

E6AXIS型の変数で、事前定義済みのロボットの関節角度を保存するために使用されます。この関節角度は、SendPos_Type=3の場合のみ使用されます。

サンプル

MM_Start_Vis(1,1,1,MM_J)

このサンプルを実行するとMech-Visionプロジェクト1が実行されます。結果としてMech-Visionプロジェクト1から1つのビジョンポイントを返します。ロボットは現在の関節角度とフランジ位置姿勢をMech-Visionに送信します。

ビジョン目標点の取得

Mech-Vizを使用せずMech-Visionを使用する場合に使用します。このコマンドは、Mech-Visionプロジェクト起動後、ビジョン処理による認識結果を取得するために使用されます。

サブプログラム

MM_Get_VisData(Job:IN,Pos_Num:OUT,MM_Status:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Job

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

出力パラメータ

Pos_Num

取得した出力結果の数を記録するための変数です。

MM_Status

ステータスコードを記録するための変数です。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_Get_VisData(1,Pose_Num,Status)

このサンプルを実行すると、Mech-Visionプロジェクト1のビジョン結果が取得されます。受信したビジョンポイントの数はPos_Numに保存されます。ステータスコードはStatusに保存されます。

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

Mech-VisionとMech-Vizの両方を使用する場合に使用します。このコマンドを実行すると、Mech-Vizプロジェクトが実行され、対応するMech-Visionを呼び出してロボットの動作経路を計画します。

サブプログラム

MM_Start_Viz(SendPos_Type:IN,MM_J:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

SendPos_Type

ロボット位置姿勢のタイプです。パラメータ範囲は0~2です。

  • 0:Mech-Vizにロボットの位置姿勢を送信する必要はありません。Mech-Vizでの仮想ロボットは関節角度[0,0,0,0,0,0]から一番目の経路点に移動します。

  • 1:Mech-Vizにロボットの現在の関節角度とフランジ位置姿勢を送信します。Mech-Vizでの仮想ロボットは現在の関節角度から一番目の経路点に移動します。

  • 2:事前定義された関節角度をMech-Vizに送信します。Mech-Vizでの仮想ロボットは現在設定された関節角度から一番目の経路点に移動します。

MM_J

E6AXIS型の変数で、事前定義済みのロボットの関節角度を保存するために使用されます。この関節角度は、SendPos_Type=2の場合のみ使用されます。

サンプル

MM_Start_Viz(1,MM_J)

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

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

このコマンドは、Mech-Vizプロジェクトに計画した把持経路を取得するために使用されます。

サブプログラム

MM_Get_VizData(Jps_Pos:IN,Pos_Num:OUT,VisPos_Num:OUT,MM_Status:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Jps_Pos

取得する経路におけるポイントのタイプを設定します。
1:Mech-Vizから返された位置姿勢タイプはロボットのJPS(関節角度)です。
2:Mech-Vizから返された位置姿勢タイプはロボットのツール位置姿勢です。

出力パラメータ

Pos_Num

取得した位置姿勢の数を記録するための変数です。

VisPos_Num

最初の「ビジョン処理による移動」が経路全体における位置番号を保存するための変数です。 例えば、「移動_1、移動_2、ビジョン処理による移動_1、移動_3」の場合、最初の「ビジョン処理による移動」の位置は3です。ビジョン処理による移動がない場合、このパラメータは0になります。

MM_Status

ステータスコードを記録するための変数です。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_Get_VizData(2,Pose_Num,VisPos_Num,Status)

このサンプルを実行すると、Mech-Vizからの動作経路がTCP位置姿勢で取得されます。位置姿勢の数はPose_Numに保存されます。「ビジョン処理による移動」が経路全体における位置番号はVisPos_Numに保存されます。ステータスコードはStatusに保存されます。

ビジョンポイント座標の取得

Mech-Visionから送信されたビジョン結果またはMech-Vizから送信されたTCP位置姿勢データを指定した位置姿勢変数に保存します。

サブプログラム

MM_Get_Pose(Serial:IN,MM_P:OUT,MM_Label:OUT,MM_Speed:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Serial

保存する位置姿勢のインデックスを指定します。

出力パラメータ

MM_P

指定された位置姿勢を記録するための変数です。

MM_Label

指定された位置姿勢に対応するラベルを記録するための変数です。

MM_Speed

指定された位置姿勢に対応する速度を記録するための変数です。

サンプル

MM_Get_Pose(1,XP1,Label,Pose_Speed)

このサンプルを実行すると、最初に受信した位置姿勢をXP1に、対応するラベルをLabelに、対応する移動速度をPose_Speedに保存します。

関節角度を取得(Mech-Vizを使用する場合にのみ有効)

Mech-Visionからのビジョン結果またはMech-Vizからの移動経路にある関節角度データを、指定した位置姿勢変数に保存するために使用されます。

サブプログラム

MM_Get_Jps(Serial:IN,MM_J:OUT,MM_Label:OUT,MM_Speed:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Serial

保存する位置姿勢のインデックスを指定します。

出力パラメータ

MM_J

指定された関節角度を記録するための変数です。

MM_Label

指定された位置姿勢に対応するラベルを記録するための変数です。

MM_Speed

指定された位置姿勢に対応する速度を記録するための変数です。

サンプル

MM_Get_Jps(1,JP1,Label,Pose_Speed)

このサンプルを実行すると、最初に受信した関節角度をJP1に、対応するラベルをLabelに、対応する移動速度をPose_Speedに保存します。

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

Mech-Visionのレシピ機能は異なるワークの認識に使用される場合、画像マッチングテンプレート、ROI、信頼性のしきい値など、Mech-Visionプロジェクトの各ステップのパラメータを変更することができます。このコマンドは、 MM_Start_Vis前に使用する必要があります。

サブプログラム

MM_Switch_Model(Job:IN,Model_Number:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Job

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

Model_Number

Mech-Visionプロジェクトのパラメータレシピ番号です。番号範囲は1~99です。

サンプル

MM_Switch_Model(2,2)

このサンプルを実行すると、Mech-Vision プロジェクト2に使用されているレシピをレシピ2に切り替えます。

Mech-Viz分岐を選択

Mech-Vizプロジェクトに 「メッセージによって異なる分岐を実行」 ステップがある場合、このコマンドは Mech-Viz にある「メッセージによって異なる分岐を実行」ステップを指定された出口に沿って実行し続けることを制御します。このコマンドを呼び出す前に、「MM_Start_Viz」を呼び出す必要があります。Mech-Vizは「メッセージによって異なる分岐を実行」ステップに実行すると、203コマンドが出口を送信するのを待ちます。

サブプログラム

MM_Set_Branch(Branch_Num:IN,Export_Num:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Branch_Num

このパラメータ、つまり、「メッセージによって異なる分岐を実行」のステップIDは正の整数である必要があります。ステップIDは、ステップパラメータで読み取りを行います。

Export_Num

Mech-Vizプロジェクトは設定された分岐の出口に沿って実行し続けます。パラメータ範囲は1~99です。

サンプル

MM_Set_Branch(1,3)

このサンプルを実行すると、Mech-Vizプロジェクト内の1という名前の「メッセージによって異なる分岐を実行」の出口3から実行するようになります。

移動インデックスを設定

インデックスパラメータが付いたステップは「リストによる移動」、「グリッドによる移動」、「カスタマイズのパレットパターン」、「事前計画パレットパターン」などです。このコマンドを呼び出して、インデックスクラスのパラメータにインデックス番号を設定できます。このコマンドを呼び出す前に、MM_Start_Vizを実行する必要があります。

サブプログラム

MM_Set_Index(Skill_Num:IN,Index_Num:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Skill_Num

インデックス付きの移動ステップのステップIDで、正の整数である必要があります。ステップIDは、ステップパラメータで読み取りを行います。

Index_Num

次にこのステップが実行されたときに設定されるべき 現在のインデックス の値です。

このコマンドを送信すると、Mech-Vizの現在のインデックス値がこのパラメータの値から1を引いた値に変更されます。

このコマンドで指定したステップに Mech-Viz プロジェクトが実行されると、 Mech-Viz の 現在のインデックス の値が、このパラメータの値まで1つずつ増加します。

サンプル

MM_Set_Index(2,10)

このサンプルを実行すると、Mech-Vizプロジェクトに2という名前のステップのインデックス値を9に設定します。

ソフトウェアのステータスを取得

Mech-Vision、Mech-Viz、Mech-Centerの実行ステータスを取得するために使用されます。現在、Mech-Visionのプロジェクトステータスを確認できます。

サブプログラム

MM_Get_Status(MM_Status:OUT)

パラメータの説明

パラメータ 説明

出力パラメータ

MM_Status

ステータスコードを記録するための変数です。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

サンプル

MM_Get_Status(Status)

このサンプルを実行すると、ステータスコードを取得し、StatusCodeに格納します。

Mech-Visionプロジェクトへ対象物の寸法を送信

対象物の寸法をMech-Visionに入力するコマンドです。このコマンドは、MM_Start_Visの前に実行する必要があります。

サブプログラム

MM_Set_BoxSize(Job:IN,Length:IN,Width:IN,Height:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Job

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

Length

対象物の長さ(ミリメートル単位)です。

Width

対象物の幅(ミリメートル単位)です。

Height

対象物の高さ(ミリメートル単位)です。

サンプル

MM_Set_BoxSize(1,500,300,200)

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

吸盤のDO信号を取得

このコマンドは、Mech-VisionまたはMech-Vizによって計画された吸盤のDO信号を取得するために使用されます。ロボットは MM_Set_DoList により、取得されたDO信号をロボットハンドに適用します。

サブプログラム

MM_Get_DoList(Resource:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Resource

吸盤のDO信号のソースを指定します。

  • 0:Mech-Vizから吸盤のDO信号を取得します。

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

サンプル

MM_Get_DoList(0)

このサンプルを実行すると、Mech-Vizから取得されたDO信号がDo_Port[i]配列に保存されます。

吸盤のDO信号を設定

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

このコマンドは、 MM_Get_DoList の後に呼び出す必要があります。

サブプログラム

MM_Set_DoList()

サンプル

MM_Get_DoList(0)
MM_Set_DoList()

このサンプルを実行すると、、Mech-Vizから取得されたDO信号がDo_Port[i]配列に保存され、Do_Port[i]の値が対応するDO信号に書き込まれます。

キャリブレーション

カメラの外部パラメータをキャリブレーションするときに使用します。Mech-Visionのカメラキャリブレーション機能と連動してキャリブレーションを自動的に行います。

サブプログラム

MM_CALIB(Move_Type:IN,PosJps:IN,WaitTime:IN,E1:IN)

パラメータの説明

パラメータ 説明

入力パラメータ

Move_Type

モーションタイプです。1はMoveLであり、2はMoveJです。

PosJps

座標位置または関節角度を設定します。1は座標位置であり、2は関節角度です。

WaitTime

ロボットがキャリブレーションポイントに到達した後の待機時間(秒)で、デフォルトでは2秒です。

E1

外部軸のデータ(必要な場合)です。

サンプル

MM_CALIB(2,2,2,0)

このサンプルを実行すると、ロボットは関節角度を利用して移動します。2秒以内次の位置へ到達しないと、停止します。また、ロボットには外部7軸を設定していません。

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

このコマンドは、Mech-Visionの「出力」ステップからカスタマイズされたデータを受信するために使用されます。つまり、posesとlabels以外のポートのデータを受信します(ステップパラメータ「ポートタイプ」を「カスタム」に設定する場合)。

サブプログラム

MM_GET_DY_DATA(Job:IN,Pos_Num:OUT,MM_Status:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Job

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

出力パラメータ

Pos_Num

INT型の変数で、返されたビジョンポイントの数を保存するために使用されます。

MM_Status

INT型の変数で、このコマンドが実行した後に返されたステータスコードを保存するために使用されます。

サンプル

MM_GET_DY_DATA(1,Pose_Num,Status)

このサンプルを実行すると、Mech-Visionプロジェクト1らカスタマイズされたデータが取得されます。ビジョンポイントの数がPose_Numに、ステータスコードがStatusに保存されます。

Mech-Visionから取得したカスタマイズされたデータをレジスタ変数に保存

このコマンドは、Mech-Visionから取得したカスタマイズされたデータを指定したロボットのレジスタ変数に保存するために使用されます。 Mech-Visionのカスタマイズされたデータを取得 を実行した後に使用します。

サブプログラム

MM_GET_DYPOSE(Serial:IN,MM_P:OUT,MM_Label:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Serial

取得するビジョンポイントのカスタマイズされたデータをを指定します。

出力パラメータ

MM_P

位置姿勢の変数で、指定したビジョンポイントの位置姿勢を保存するために使用されます。

MM_Label

REAL型の変数で、指定したビジョンポイントのラベルを保存するために使用されます。

MM_UserData

定義されたグローバル配列変数で、指定したビジョンポイントが対応するカスタマイズされたデータを保存するために使用されます。配列の長さは50です。

サンプル

MM_GET_DYPOSE(1,XP1,Label)

このサンプルを実行すると、最初に受信したビジョンポイントの位置姿勢がXP1に、対応するラベルがLabelに、対応するカスタマイズされたデータがMM_UserDataに保存されます。

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

このコマンドは、Mech-Visionプロジェクトの「ビジョン処理による移動」の計画結果、またはMech-Vizプロジェクトの「ビジョン処理による移動」の計画結果またはカスタマイズされたデータを取得するために使用されます。MM_Get_PlanPoseまたはMM_Get_PlanJps により、取得したデータを各変数に割り当てることができます。

サブプログラム

MM_GET_PLANDATA(Resource:IN,Jps_Pos:IN,Pos_Num:OUT,VisPos_Num:out,MM_Status:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Resource

「ビジョン処理による移動」の計画結果のソースを指定します。

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

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

Jps_Pos

返されたデータの予期形式の説明は以下の通りです。

出力パラメータ

Pos_Num

変数で、受信した経路点の数を保存するために使用されます。

VisPos_Num

変数で、最初のビジョン処理による移動が計画した経路における位置番号を保存するために使用されます。

MM_Status

変数で、このコマンドが実行した後に返されたステータスコードを保存するために使用されます。

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

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

    1

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

    2

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

    3

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

    4

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

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

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

    1

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

    2

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

位置姿勢

経路点の位置姿勢は、ロボット関節角度(JPs、単位は度)、ツール位置姿勢(TCP、3次元座標はミリメートル、オイラー角は度)のいずれかであり、その形式は送信するコマンドパラメータに依存します。

移動方式

  • 1:関節運動。

  • 2:直線運動。

ツール番号

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

速度

経路点の速度値です。

「ビジョン処理による移動」の計画結果

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

カスタイズされたデータ

Mech-Visionプロジェクトの「出力」ステップでポートタイプが「カスタム」に設定された場合に出力されたposesとlabelsポート以外のカスタマイズされたポートのデータです。 カスタマイズされたデータは、ポート名のA–Zの順に並べられています。

サンプル

MM_GET_PLANDATA(0,2,Pose_Num,VisPos_Num,Status)

このサンプルを実行すると、Mech-Vizが計画した経路が取得されます。返されたデータの予期形式は2です。経路点の数がPos_Numに、ビジョン処理による移動の経路点が経路全体における位置番号がVisPos_Numに、ステータスコードがStatusに保存されます。

MM_GET_PLANDATAから取得したデータを変数に保存

このコマンドは 「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得 の後に使用され、取得したデータを異なる変数に格納するために使用されます。「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得 コマンドで指定された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

保存する経路点を指定します。

Jps_Pos

「ビジョン処理による移動」の計画データまたはカスタマイズされたデータを取得 コマンドのJps_Posの設定値と同じです。

出力パラメータ

MM_P

指定した経路点が対応するTCPデータを保存するための位置姿勢の変数です。

MM_J

指定した経路点が対応する関節角度データを保存するための関節角度の変数です。

MM_MoveType

指定した経路点が対応する移動方式を保存するための変数です。1は関節運動、2は直線運動を示します。

MM_ToolNum

指定した経路点が対応するツール番号を保存するための変数です。-1である場合、ロボットハンドが使用されないことを示します。

MM_Speed

変数で、指定した経路点が対応する速度を保存するために使用されます。

MM_UserData

定義されたグローバル配列変数で、指定した経路点が対応するカスタマイズされたデータを保存するために使用されます。配列のサイズは50です。

MM_Plan_Results

定義されたグローバル配列変数で、指定した経路点が対応する「ビジョン処理による移動」の計画結果を保存するために使用されます。配列のサイズは21です。

配列変数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(1,4,XP1,MoveType,ToolNum,Pose_Speed)

    このサンプルを実行すると、受信した最初の経路点のTCPデータが位置変数XP1に、移動方式がMoveTypeに、ツール番号がToolNumに、移動速度がPose_Speedに、カスタマイズされたデータがMM_UserDataに、「ビジョン処理による移動」の計画結果がMM_Plan_Resultsに保存されます。

  • サンプル2

    MM_Get_PlanJps(1,3,JP1,MoveType,ToolNum,Pose_Speed)

    このサンプルを実行すると、受信した最初の経路点の関節角度データが位置変数P1に、移動方式がMoveTypeに、ツール番号がToolNumに、移動速度がPose_Speedに、カスタマイズされたデータがMM_UserDataに、「ビジョン処理による移動」の計画結果がMM_Plan_Resultsに保存されます。

Mech-Visionの「経路計画」ステップの結果を取得

Mech-Visionプロジェクトを実行した後、このコマンドはMech-Visionプロジェクトの「経路計画」ステップから出力された衝突のない把持経路を取得するために使用されます。

このコマンドを使用する時、Mech-Visionの「出力」ステップの ポートタイプ を「事前定義済み(ロボット経路)」に設定する必要があります。

サブプログラム

MM_GET_VISPATH(Job:IN,Jps_Pos:IN,Pos_Num:OUT,VisPos_Num:OUT,MM_Status:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Job

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

Jps_Pos

このパラメータは、「経路計画」ステップから返された経路点の位置姿勢タイプを指定するために使用されます。
1:経路点の位置姿勢は関節角度(JPs)の形式で返されます。
2:経路点の位置姿勢はロボットのツール(TCP)位置姿勢の形式で返されます。

出力パラメータ

Pos_Num

変数で、このコマンドを実行した後に返された経路点の数を保存するために使用されます。

VisPos_Num

変数で、経路計画設定ツールで設定された「ビジョン処理による移動」が経路全体における位置を保存するために使用されます。 例えば、「移動_1、移動_2、ビジョン処理による移動_1、移動_3」の場合、ビジョン処理による移動の位置は3です。 「ビジョン処理による移動」がなければ、このパラメータは0です。

MM_Status

変数で、このコマンドが実行した後に返されたステータスコードを保存するために使用されます。

サンプル

MM_GET_VISPATH(1,1,Pose_Num,VisPos_Num,Status)

このサンプルを実行すると、Mech-Visionプロジェクト1から計画したロボットの動作経路が取得されます。経路点の位置姿勢形式は関節角度です。経路点の数がPos_Numに保存されます。「ビジョン処理による移動」が経路全体における位置番号がVisPos_Numに保存されます。ステータスコードがStatusに保存されます。

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

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

サブプログラム

mm_get_property(Get_id:IN,MM_Status:OUT,Viz_Prop:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Get_id

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

出力パラメータ

MM_Status

このコマンドが実行した後に返されるステータスコードを保存するための整数変数です。

Viz_Prop

指定されたステップの返されるパラメータ値を保存するための整数変数で、現在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は一意である必要があります。

サンプル

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

read, 5, 3, xCount

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

mm_get_property(5,MM_Status,Viz_Prop)

このサンプルを実行すると、Mech-Vizプロジェクト内のステップ番号が3のxCountのパラメータ値がViz_Prop変数に、返されたステータスコードがMM_Status変数に保存されます。

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

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

サブプログラム

mm_set_property(Set_id:IN,MM_Status:OUT)

パラメータの説明

パラメータ 説明

入力パラメータ

Set_id

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

出力パラメータ

MM_Status

このコマンドが実行した後に返されるステータスコードを保存するための整数変数です。

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のツールバーのインターフェースサービスを再起動してください。

サンプル

例えば、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,MM_Status)

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

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

Mech-VisionまたはMech-Vizプロジェクトを実行した後、「通知」ステップで設定されたメッセージを取得します。

サブプログラム

MM_Get_Notify(MM_NotifyMsg:OUT)

パラメータの説明

パラメータ 説明

出力パラメータ

MM_NotifyMsg

「通知」ステップのメッセージを保存するためのINT変数(現在は整数のみがサポート)です。

サンプル

MM_Get_Notify(MM_NotifyMsg)

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

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

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

サブプログラム

MM_Stop_Viz()

サンプル

MM_Stop_Viz()

このコマンドを実行すると、実行中のMech-Vizプロジェクトが停止されます。

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

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