標準インターフェースコマンド
FANUCで標準インターフェースを用いてロボットプログラミングを行う際は、以下の点にご注意ください。
-
複数のパラメータはコンマで区切る必要があります。
-
すべてのパラメータはプログラムファイル内でローカル変数として定義する必要があります。
-
パラメータは入力パラメータと出力パラメータと定義します。
この標準インターフェースはTCP/IPプロトコルを介して通信を行います。
通信の初期化
Mech-Visionプロジェクトの実行
このコマンドを実行すると、Mech-Visionプロジェクトが実行され、カメラ撮影とビジョン処理による認識が行われます。Mech-Vizを使用せずMech-Visionを使用する場合に使用します。
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
Job |
Mech-Visionのプロジェクト番号は、Mech-Visionのプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を表します。 |
Pos_Num_Need |
ビジョンポイントの期待数で、Mech-Visionから取得したいビジョンポイントの数です。設定可能な範囲は0~20で、0に設定するとすべてのビジョンポイントが取得されます。 |
SendPos_Type |
ロボット位置姿勢のタイプです。このパラメータはロボット実機の位置姿勢がMech-Visionに送信される形式を指定します。パラメータ範囲は0~3です。
|
Pr_Num |
PRレジスタ番号で、事前定義されたロボットの関節角度を保存するために使用されます(PRレジスタのデータ形式を関節角度に変更)。このレジスタの関節角度データは、SendPos_Type=3の場合のみ使用されます。 |
ビジョン目標点の取得
Mech-Visionプロジェクト起動後、ビジョン処理による認識結果を取得するために、このコマンドが使われています。Mech-Vizを使用せずMech-Visionを使用する場合に使用します。
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
Job |
Mech-Visionのプロジェクト番号は、Mech-Visionのプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を表します。 |
出力パラメータ |
|
Reg_Lst_Data |
すべての結果が送信されたかどうかを記録するためのレジスタです。値は0または1となります。
|
Reg_Pos_Num |
返された位置姿勢の数を保存するためのレジスタです。範囲は1~20です。 |
Reg_Status |
ステータスコードを記録するためのレジスタです。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。 |
Mech-Vizプロジェクトの実行
このコマンドを実行すると、Mech-Vizプロジェクトが実行され、対応するMech-Visionを呼び出してロボットの動作経路を計画します。Mech-VisionとMech-Vizの両方を使用する場合に使用します。
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
SendPos_Type |
ロボット位置姿勢のタイプです。パラメータ範囲は0~2です。
|
Pr_Num |
PRレジスタ番号で、事前定義されたロボットの関節角度を保存するために使用されます(PRレジスタのデータ形式を関節角度に変更)。このレジスタの関節角度データは、SendPos_Type=2の場合のみ使用されます。 |
Mech-Vizによって計画された動作経路を取得
このコマンドは、Mech-Vizプロジェクトから計画された動作経路を取得するために使用されます。
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
Jps_Pos |
取得する経路におけるポイントのタイプを設定します。
|
出力パラメータ |
|
Reg_Lst_Data |
すべての動作計画が送信されたかどうかを記録するためのレジスタです。0は結果をすべて送信し終わっていないことを意味し、1はすべての結果を送信されたことを意味します。 |
Reg_Pos_Num |
取得したビジョンポイントの数を記録するためのレジスタです。範囲は1~20です。 |
Reg_VPos_Num |
最初の「ビジョン処理による移動」が経路全体における位置番号を記録するためのレジスタです。
|
Reg_Status |
ステータスコードを記録するためのレジスタです。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。 |
ビジョンポイント座標の取得
関節角度を取得(Mech-Vizを使用する場合にのみ有効)
Mech-Visionのパラメータレシピの切替
Mech-Visionのレシピ機能は異なるワークの認識に使用される場合、画像マッチングテンプレート、ROI、信頼性のしきい値など、Mech-Visionプロジェクトの各ステップのパラメータを変更することができます。このコマンドは、 MM_START_VIS の前に実行する必要があります。
Mech-Viz分岐を選択
Mech-Vizプロジェクトに「メッセージによって異なる分岐を実行」ステップがある場合、このコマンドはMech-Vizにある「メッセージによって異なる分岐を実行」ステップを指定された出口に沿って実行し続けることを制御します。このコマンドを呼び出す前に、 MM_START_VIZ を実行する必要があります。Mech-Vizは「メッセージによって異なる分岐を実行」ステップに実行すると、 MM_SET_BCH がその分岐の分岐出口を送信するのを待ちます。
移動インデックスを設定
このコマンドはMech-Vizステップの 現在のインデックス パラメータを設定する場合に使われます。このパラメータが設定可能なステップは「リストによる移動」、「グリッドによる移動」、「カスタマイズのパレットパターン」、「事前計画パレットパターン」などです。このコマンドを呼び出す前に、 MM_START_VIZ を実行する必要があります。
ソフトウェアのステータスを取得
Mech-Vision、Mech-Viz、Mech-Centerの実行ステータスを取得するために使用されます。現在、Mech-Visionのプロジェクトステータスを確認できます。
パラメータ
パラメータ | 説明 |
---|---|
出力パラメータ |
|
MM_Status |
ステータスコードを記録するためのレジスタです。詳細については、 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。 |
Mech-Visionプロジェクトへ対象物の寸法を送信
DO信号リストの取得/DO信号リストの設定
Mech-Vizにある吸盤パテーション/マルチグピッキングを使用する際に、このコマンドで計画したパテーションの DO 信号リストを取得することができます。このコマンドを呼び出す前に、 MM_GET_VIZ を実行する必要があります。
XXXX/Mech-Center-xxx/tool/viz_project/suction_zone
にMech-Vizサンプルプロジェクトを参考にしてプロジェクトを作成し、吸盤のコンフィグファイルを設定する必要があります。
外部位置姿勢を設定
キャリブレーション
カメラの外部パラメータをキャリブレーションするときに使用します。Mech-Visionのカメラキャリブレーション機能と連動してキャリブレーションを自動的に行います。詳細については、『キャリブレーションの操作手順』をご参照ください。
Mech-Visionから通知メッセージを取得
このコマンドは、Mech-Visionの「通知」ステップからのメッセージを取得するために使用されます。有効するには、 Mech-Visionプロジェクトの実行 または Mech-Vizプロジェクトの実行 と一緒に使用する必要があります。
Mech-Visionプロジェクトで「通知」ステップのパラメータ設定は以下の要件があります。
-
「サービス名」パラメータをStandard Interface Notifyに設定する必要があります。
-
「メッセージ」は、ロボット側が必要なデータを示し、正の整数である必要があります。
Mech-Visionのカスタマイズされたデータを取得
このコマンドは、Mech-Visionの「出力」ステップからカスタマイズされたデータを受け取るために使用されます。posesとlabels以外のポートのデータを受け取ります(ステップパラメータ「ポートタイプ」を「カスタム」に設定する場合)。
Mech-Visionから取得したカスタマイズされたデータをレジスタ変数に保存
このコマンドは、Mech-Visionから取得したカスタマイズされたデータを指定したロボットのレジスタ変数に保存するために使用されます。 Mech-Visionのカスタマイズされたデータを取得 を実行した後に使用します。
Mech-Vizから経路点を取得
このコマンドは、Mech-Vizから計画した経路を取得するために使用されます。経路点は、一般的な移動経路点またはビジョン処理による移動の経路点であることができます。経路点には、位置姿勢、速度、ツール情報、ワーク情報などが含まれる場合があります。
このコマンドを実行して得られる経路点は、次の3つのいずれかになります。
-
「ビジョン処理による移動」以外の移動経路点に加えて、その情報には、運動タイプ(関節運動または直線運動)、ツールID、および速度が含まれます。
-
「ビジョン処理による移動」の経路点です。その情報には、ラベル、把持されたワークの合計数、今回把持されたワークの数、吸盤のエッジコーナー番号、TCPオフセット、ワークの向き、およびワークグループのサイズが含まれます。
-
カスタマイズされたデータを含む、「ビジョン処理による移動」の経路点です。この場合、Mech-Visionプロジェクトのステップ「出力」のポートタイプを「カスタム」に設定する必要があります。
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
Jps_Pos |
返されたデータの予期形式で、範囲は1~4です。 |
出力パラメータ |
|
Reg_Pos_Num |
Rレジスタ番号で、取得した経路点の数を保存するために使用されます。範囲は1~50です。 |
Reg_VPos_Num |
Rレジスタ番号で、最初のビジョン処理による移動が経路計画における位置番号を保存するために使用されます。 |
Reg_Status |
Rレジスタ番号で、返されたステータスコードを保存するために使用されます。 |
以下は、4つの返されたデータの予期形式についての説明です。
返されたデータの予期形式 パラメータ | 返されたデータの予期形式 説明 |
---|---|
1 |
位置姿勢(JPs形式),運動タイプ, ツールID, 速度,カスタマイズされたデータの数, カスタマイズされたデータ1, ..., カスタマイズされたデータN |
2 |
位置姿勢(TCP形式),運動タイプ, ツールID, 速度,カスタマイズされたデータの数, カスタマイズされたデータ1, ..., カスタマイズされたデータN |
3 |
位置姿勢(JPs形式), 運動タイプ, ツールID, 速度, ビジョン計画結果, カスタマイズされたデータの数, カスタマイズされたデータ1, ..., カスタマイズされたデータN |
4 |
位置姿勢(TCP形式), 運動タイプ, ツールID, 速度, ビジョン計画結果, カスタマイズされたデータの数, カスタマイズされたデータ1, ..., カスタマイズされたデータN |
位置姿勢
経路点の位置姿勢は、ロボット関節角度(JPs、単位は度)、ツール位置姿勢(TCP、3次元座標はミリメートル、オイラー角は度)のいずれかであり、その形式は送信するコマンドパラメータに依存します。
運動タイプ
-
1
:関節運動(MOVEJ) -
2
:直線運動(MOVEL)
ツールID
経路点で使用するツール番号です。 -1は、ツールが使用されていないことを意味します。
速度
経路点での速度のパーセンテージ値(単位は%)、つまり、Mech-Vizプロジェクトでこの経路点に対応する移動ステップのパラメータに設定した速度に、Mech-Vizで設定したグローバル速度を掛けたものです。
ビジョン計画結果
経路内の計画結果の情報で(経路点が移動ステップ「ビジョン処理による移動」に対応する場合)、通常は段ボール箱の複数把持・配置に使用されます。情報は次のとおりです。
-
ラベル:10個の正の整数で構成され、デフォルトは10個の0です。
-
把持されたワークの合計数。
-
今回把持されたワークの数。
-
吸盤エッジコーナー番号:ワークが吸盤のどのエッジに近いかを指定するために使用されます。吸盤のエッジコーナー番号は、Mech-Vizのプロジェクトリソースで対応するロボットハンド名をダブルクリックし、 制御ロジック設定 をクリックすると表示されるようになります。
-
ツール位置姿勢(TCP)のオフセット(ワークの中心に対応するTCPから実際のTCPまでのオフセットです)。
-
ワークの向き(TCPのX軸に対するワーク座標系のX軸の方向です)。
-
ワークグループのサイズ。
カスタマイズされたデータの数
Mech-Visionプロジェクトの「出力」ステップでポートタイプが「カスタム」に設定された場合に出力されたposesとlabels以外のポートのデータ数です。
カスタマイズされたデータ
Mech-Visionプロジェクトの「出力」ステップでポートタイプが「カスタム」に設定された場合に出力されたposesとlabels以外のポートのデータです。
カスタマイズされたデータは、ポート名のA–Zの順に並べられています。
Mech-Vizから取得した経路点の数をレジスタ変数に保存
Mech-Viz から経路点を取得 の後に使用します。Mech-Vizから取得した経路点の数を指定したロボットのレジスタ変数に保存するために使用されます。
プログラム
MM_GET_PLJOP(Serial,Jps_Pos,Pr_Num,Reg_MoveType,Reg_ToolNum,Reg_Speed,Reg_UserData,Reg_PlanRes)
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
Serial |
保存する経路点を指定します。 |
Jps_Pos |
Mech-Viz から経路点を取得 のJps_Posの値と同じです。 |
出力パラメータ |
|
Pr_Num |
PR レジスタ番号で、指定した経路点が対応する位置姿勢を保存するために使用されます。 |
Reg_MoveType |
Rレジスタ番号で、指定した経路点が対応する運動タイプを保存するために使用されます。1はMOVEJ、2はMOVELを示します。 |
Reg_ToolNum |
Rレジスタ番号で、指定した経路点が対応するツールIDを保存するために使用されます。-1はツールを使用しないことを示します。 |
Reg_Speed |
Rレジスタ番号で、指定した経路点が対応する移動速度を保存するために使用されます。 |
Reg_UserData |
PR レジスタ番号で、指定した経路点が対応するカスタマイズされたデータを保存するために使用されます。これは開始番号で、カスタマイズされたデータの数に応じて順番に保存します。現在対応している最大数は50となります。 |
Reg_PlanRes |
Rレジスタ番号で、指定した経路点が対応するビジョン計画結果を保存するために使用されます。これは開始番号で、ビジョン計画結果の数に応じて順番に保存します。現在対応している最大数は20となります。 |
Mech-Visionの「経路計画」ステップの結果を取得
Mech-Visionプロジェクトを実行した後、このコマンドはMech-Visionプロジェクトの「経路計画」ステップから出力された衝突のない把持経路を取得するために使用されます。
このコマンドを使用する時、Mech-Visionの「出力」ステップの ポートタイプ を「事前定義済み(ロボット経路)」に設定する必要があります。
パラメータ
パラメータ | 説明 |
---|---|
入力パラメータ |
|
Job |
Mech-Visionのプロジェクト番号は、Mech-Visionのプロジェクトリストで確認できます。プロジェクト名の前の数字は、プロジェクト番号を表します。 |
Jps_Pos |
「経路計画」ステップから返された経路点の位置姿勢タイプを指定します。
|
出力パラメータ |
|
Reg_Lst_Data |
Rレジスタ番号で、経路点の送信が完了しているかどうかを表示するために使用されます。
|
Reg_Pos_Num |
Rレジスタ番号で、返された経路点の数を保存するために使用されます。範囲は1~20です。 |
Reg_VPos_Num |
経路計画設定ツールで設定された「ビジョン処理による移動」が経路全体における位置を保存するために使用されます。
|
Reg_Status |
Rレジスタ番号で、返されたステータスコードを保存するために使用されます。 |