TCP/IP コマンド

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

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

以下では、TCP/IP通信プロトコルを基づいた標準インターフェースのコマンドについて説明します。これらのコマンドを使用する前に、以下のことに注意してください。

  • コマンド受送信:ロボットまたは上位システム(クライアント)はMech-Mindビジョンシステム(サーバー)にコマンドを送信し、Mech-Mindビジョンシステムは処理されたデータをロボットまたは上位システムに返します。

    send receive
  • コマンドのデータ転送形式:ASCIIおよびHEX(16進数)をサポートしています。

    • ASCII形式の文字列はデータの区切り文字として英字のカンマを使用し、末尾の終了文字は \r で表します。以下では、すべてASCII形式の文字列を使用し、末尾の終了文字(\r)を省略しています。例えば、ロボットがビジョンシステムに103コマンドを送信する場合、末尾の終了文字を追加するとコマンドは以下のような形式になります。

      103,1,2\r
    • HEX(16進数)のバイトオーダーは、ビッグエンディアン(big-endian)とリトルエンディアン(little-endian)に分かれます。コマンドを送信する際、バイト長は固定で64です。バイト長が64に満たない場合、残りのバイトは0で埋められます。バイト長が64を超える場合、ビジョンシステムは余分なバイトを無視します。

      ASCII形式の文字列「103,1,2」を例に、ビッグエンディアン形式でコマンドを送信するとコマンドは以下のような形式になります。10進数の103に対応する16進数は67です。16進数67をビッグエンディアンのバイトオーダーで表すと、00 00 00 67となります。

      00 00 00 67 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

      リトルエンディアン形式でコマンドを送信すると、コマンドは以下のような形式になります。16進数67をリトルエンディアンのバイトオーダーで表すと、67 00 00 00となります。

      67 00 00 00 01 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • コマンドのデータ単位:

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

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

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

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

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

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

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

コマンド一覧

Mech-Visionに関するコマンド

Mech-Vizに関するコマンド

100コマンド——Mech-Visionプロジェクトを実行して結果を取得

101コマンド——Mech-Visionプロジェクトを実行

102コマンド——ビジョン結果を取得

103コマンド——Mech-Visionのパラメータレシピを切り替える

105コマンド——Mech-Visionから計画された経路を取得

106コマンド——Mech-Visionから吸盤のDO信号リストを取得

110コマンド——Mech-Visionからカスタマイズされたデータを取得

111コマンド——Mech-Visionから「ビジョン処理による移動」の計画結果を取得

501コマンド——Mech-Visionプロジェクトに対象物の寸法を入力

503コマンド——Mech-Visionプロジェクトに位置姿勢を入力

601コマンド——「通知」ステップのメッセージを取得

701コマンド——キャリブレーション

901コマンド——ソフトウエアのステータスを取得

200コマンド——Mech-Vizプロジェクトを実行して計画経路を取得

201コマンド——Mech-Vizプロジェクトを実行

202コマンド—— Mech-Vizプロジェクトを停止

203コマンド——Mech-Vizの分岐ステップの出口を設定

204コマンド——Mech-Vizの現在のインデックスを設定

205コマンド——Mech-Vizから計画された経路を取得

206コマンド——吸盤のDO信号リストを取得

207コマンド——Mech-Vizのステップパラメータを読み取る

208コマンド——Mech-Vizのステップパラメータを設定

210コマンド——Mech-Vizから「ビジョン処理による移動」の計画結果またはカスタマイズされたデータを取得

601コマンド——「通知」ステップのメッセージを取得

100コマンド——Mech-Visionプロジェクトを実行して結果を取得

コマンド機能

このコマンドは、Mech-Visionプロジェクトに使用されるパラメータレシピを設定し、Mech-Visionプロジェクトを実行し、ビジョンシステムによって出力されたビジョンポイント、経路点またはカスタマイズされたデータを返します。プロジェクトにパラメータレシピがない場合はスキップでき、パラメータレシピ設定の詳細は 103コマンド——Mech-Visionのパラメータレシピを切り替える をご参照ください。プロジェクトを実行するには、 101コマンド——Mech-Visionプロジェクトを実行 をご参照ください。ビジョンポイントの詳細は 102コマンド——ビジョン結果を取得 をご参照ください。経路点の詳細は 105コマンド——Mech-Visionから計画された経路を取得 をご参照ください。カスタマイズされたデータの詳細は 110コマンド——Mech-Visionからカスタマイズされたデータを取得 をご参照ください。

ロボットは動作する前に、ビジョンシステムが撮影して結果を返すのを待つ必要があります。

送信形式

100,Mech-Visionプロジェクト番号,パラメータレシピ番号,返されたデータ形式,ロボットの関節角度,ロボットのフランジ位置姿勢

Mech-Visionプロジェクト番号

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

パラメータレシピ番号

Mech-Visionプロジェクト内のパラメータレシピの番号であり、正の整数です。番号の有効範囲は1~99です。パラメータレシピ番号を確認するには、 パラメータレシピの番号を確認 をご参照ください。

Mech-Visionプロジェクトにパラメータレシピを切り替える必要がない場合は、このパラメータを0に設定します。

返されたデータ形式

返されたデータ形式 の値

説明(詳細は下記の 返されたデータ形式 をご参照ください)

1

100, ステータスコード,すべてのビジョンポイントが取得されたかどうか,ビジョンポイントの数,予約語,ビジョンポイント1(ツール位置姿勢,ラベル,ツールID),ビジョンポイント2(ツール位置姿勢,ラベル,ツールID), …

2

100,ステータスコード,すべてのビジョンポイントが取得されたかどうか,カスタマイズされたデータの数(N),位置姿勢,ラベル,カスタマイズされたデータ1,...,カスタマイズされたデータN

3

100,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(関節角度,ラベル,ツールID),経路点2(関節角度,ラベル,ツールID), …

4

100,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(ツール位置姿勢,ラベル,ツールID),経路点2(ツール位置姿勢,ラベル,ツールID), …

ロボットの関節角度ロボットのフランジ位置姿勢

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

返されたデータ形式

返されたデータ形式1

100, ステータスコード,すべてのビジョンポイントが取得されたかどうか,ビジョンポイントの数,予約語,ビジョンポイント1(ツール位置姿勢,ラベル,ツールID),ビジョンポイント2(ツール位置姿勢,ラベル,ツールID), …

ステータスコード

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

すべてのビジョンポイントが取得されたかどうか

このパラメータは、すべてのビジョンポイントが取得されたかどうかを示し、値は0または1です。

  • 0:取得されていないビジョンポイントがあります。

  • 1:すべてのビジョンポイントが取得されました。

  • 一度にビジョンシステムから送信されるビジョンポイントのデフォルトの最大数は20であるため、すべてのビジョンポイントを取得するためにコマンドを一度呼び出す必要がある場合は、下図の最大数の値を変更することができます。 Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックします。実際の状況に応じて最大数の初期値を変更することができますが、最大数の上限は30です。

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

set vis time

ビジョンポイントの数

このパラメータは、取得されたビジョンポイントの数を示します。

予約語

この予約語が使われていないため、初期値は0です。

ビジョンポイント

取得された各ビジョンポイントは8つのデータで構成され、最初の6つはツール位置姿勢、7番目はラベル、最後はツールIDを示します。

  • ツール位置姿勢:ロボットのツール位置姿勢。

    ビジョンポイントの対象物の位置姿勢(つまり「出力」ステップの「poses」のデータ)は、ビジョンシステムにより、対応するロボットのツール位置姿勢に自動的に変換されます。
    get tcp
    1. 対象物の位置姿勢を四元数からオイラー角の形式に変換します。

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

      convert tcp
  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:初期値は0です。通常、Mech-Visionが出力されたビジョンポイントには対象物の位置におけるロボットのツールIDが含まれていません。

返されたデータ形式2

100,ステータスコード,すべてのビジョンポイントが取得されたかどうか,カスタマイズされたデータの数(N),位置姿勢,ラベル,カスタマイズされたデータ1,...,カスタマイズされたデータN

ステータスコード

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

すべてのビジョンポイントが取得されたかどうか

このパラメータは、すべてのビジョンポイントが取得されたかどうかを示し、値は0または1です。

  • 0:取得されていないビジョンポイントがあります。

  • 1:すべてのビジョンポイントが取得されました。

  • このコマンドを呼び出した後、ビジョンシステムは1つのビジョンポイントしか返しません。そのため、Mech-Visionのツールバーから ロボット通信設定  次へ  詳細設定をクリックし、下図の最大数の値を1に変更します。

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

set vis time

カスタマイズされたデータの数

すべてのカスタマイズされたポートのデータの合計です。例えば、「出力」ステップのポートデータは、以下のデータから構成されます。ここで、「customData1」と「customData2」はカスタマイズされたポートで、次元はそれぞれ3と2です。したがって、カスタマイズされたデータの合計数は3+2=5です。

ポート名

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]

]

行の次元(リスト内の要素数)

2

2

2

2

列の次元(リスト内の個々の要素の次元数)

7

1

3

2

位置姿勢

1つのビジョンポイントのロボットのツール位置姿勢です。ビジョンシステムは、ビジョンポイントの対象物の位置姿勢(つまり「出力」ステップの「poses」ポートのデータ)を対応するロボットのツール位置姿勢に自動的に変換します。変換流れを下図に示します。

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

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

    convert tcp

ラベル

1つのビジョンポイントのラベル(「出力」ステップの「labels」ポートのデータ)です。

  • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

  • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

カスタイズされたデータ

1つのビジョンポイントのすべてのカスタマイズされたポートのデータで、その数は カスタマイズされたデータ の数と同じです。例えば、「出力」ステップの各ポートのデータは下表の通りである場合、ロボットが取得した最初のビジョンポイントの カスタマイズされたデータ は[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]

カスタマイズされたデータは、カスタマイズされたポート名のA–Zの順に並べられています。
返されたデータ形式3

100,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(関節角度,ラベル,ツールID),経路点2(関節角度,ラベル,ツールID), …

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • 一度にビジョンシステムから送信される経路点のデフォルトの最大数は20であるため、すべての経路点を取得するためにコマンドを一度呼び出す必要がある場合は、下図の最大数の値を変更することができます。 Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックします。実際の状況に応じて最大数の初期値を変更することができますが、最大数の上限は30です。

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

set vis time

経路点の数

このパラメータは、取得された経路点の数を示します。

経路全体における「ビジョン処理による移動」のインデックス

このパラメータは、経路全体における経路計画設定ツールの「ビジョン処理による移動」ステップに対応する経路点(「ビジョン処理による移動」の経路点)の位置を示します。経路全体に「ビジョン処理による移動」の経路点がない場合、このパラメータは0となります。

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

経路点

取得された各経路点は8つのデータで構成され、最初の6つは関節角度、7番目はラベル、最後はツールIDを示します。

  • 関節角度:ロボットの関節角度(JPs)。

  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:経路計画設定ツールで設定されたものです。

返されたデータ形式4

100,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(ツール位置姿勢,ラベル,ツールID),経路点2(ツール位置姿勢,ラベル,ツールID), …

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • 一度にビジョンシステムから送信される経路点のデフォルトの最大数は20であるため、すべての経路点を取得するためにコマンドを一度呼び出す必要がある場合は、下図の最大数の値を変更することができます。 Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックします。実際の状況に応じて最大数の初期値を変更することができますが、最大数の上限は30です。

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

set vis time

経路点の数

このパラメータは、取得された経路点の数を示します。

経路全体における「ビジョン処理による移動」のインデックス

このパラメータは、経路全体における経路計画設定ツールの「ビジョン処理による移動」ステップに対応する経路点(「ビジョン処理による移動」の経路点)の位置を示します。経路全体に「ビジョン処理による移動」の経路点がない場合、このパラメータは0となります。

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

経路点

取得された各経路点は8つのデータで構成され、最初の6つはツール位置姿勢、7番目はラベル、最後はツールIDを示します。

  • ツール位置姿勢:ロボットのツール位置姿勢。

  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:経路計画設定ツールで設定されたものです。

実行例

サンプル1:返されたデータ形式1
  1. ロボットはビジョンシステムに以下のコマンドを送信します。1はビジョンシステムがデータ形式1を返すことを示します。

    100, 1, 2, 1, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムは以下の結果をロボットに返します。1は、合計1つのビジョンポイントを取得したことを示します。

    100, 1100, 1, 1, 0, 95.7806, 644.5677, 401.1013, 91.1206, -171.1301, 180.0, 0, 0
サンプル2:返されたデータ形式2
  1. ロボットはビジョンシステムに以下のコマンドを送信します。2はビジョンシステムがデータ形式2を返すことを示します。

    100, 1, 0, 2, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムは以下の結果をロボットに返します。2はカスタマイズされたデータの数を示し、カスタマイズされたデータは12と22です。

    100, 1100, 1, 2, 592.6891, -256.7424, -56.6007, 0.0723, 1.1348, -176.355, 2, 12, 22
サンプル3:返されたデータ形式3
  1. ロボットはビジョンシステムに以下のコマンドを送信します。3はビジョンシステムがデータ形式3を返すことを示します。

    100, 1, 2, 3, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムはロボットにすべての経路点(合計3つ、位置姿勢タイプは関節角度)を返し、2番目の経路点は「ビジョン処理による移動」の経路点です。

    100, 1100, 1, 3, 2, 8.3077, 15.1634, -142.1778, -2.7756, -31.4404, -96.9490, 0, 64, 8.2425, 12.1301, -141.7587, -2.5135, -34.8905, -97.1911, 0, 32, 9.3077, 16.1634, -145.1778, -9.7756, -30.4404, -86.9490, 1, 64,
サンプル4:返されたデータ形式4
  1. ロボットはビジョンシステムに以下のコマンドを送信します。4はビジョンシステムがデータ形式4を返すことを示します。

    100, 1, 2, 4, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムはロボットにすべての経路点(合計3つ、位置姿勢タイプはツール位置姿勢)を返し、2番目の経路点は「ビジョン処理による移動」の経路点です。

    100, 1100, 1, 3, 2, 1149.114, -298.9656, 274.9219, -0.0977, -1.3863, -175.9702, 0, 7, 1149.8416, -296.8585, 245.0048, -0.0977, -1.3863, -175.9702, 2, 7, 1149.114, -298.9656, 274.9219, -0.0977, -1.3863, -175.9702, 0, 7

101コマンド——Mech-Visionプロジェクトを実行

コマンド機能

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

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

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

呼び出し順序

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

101,Mech-Visionプロジェクト番号,ビジョンポイントまたは経路点の予期数,ロボットの位置姿勢タイプ,ロボットの位置姿勢

Mech-Visionプロジェクト番号

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

ビジョンポイントまたは経路点の予期数

Mech-Visionプロジェクトから取得されたビジョンポイントまたは経路点の予期数となります。

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

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

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

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

set number

ロボットの位置姿勢タイプロボットの位置姿勢

  • ロボットの位置姿勢タイプ は、ロボット実機の位置姿勢をMech-Visionプロジェクトに送信する方式を設定します。パラメータ範囲は0~3です。

  • ロボットの位置姿勢 は、 ロボットの位置姿勢タイプ によって決定されます。

2つのパラメータの値と関係と説明は以下の通りです。

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

0

0, 0, 0, 0, 0, 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プロジェクトに「経路計画」ステップがあり、ロボット側から「経路計画」ステップの開始位置を設定する必要がある場合に適用可能です。

返されたデータ形式

101,ステータスコード

ステータスコード

コマンドが正常に実行された場合、ステータスコードは 1102 となります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細は 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

実行例

サンプル1

  1. カメラがEye in Hand方式で取り付けられている場合、ロボットはビジョンシステムに以下のコマンドを送信します。1は、ロボットが現在の関節角度とフランジ位置姿勢をビジョンシステムに送信することを示します。

    101, 1, 0, 1, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムは以下の結果をロボットに返します。1102は、Mech-Visionプロジェクトが正常にトリガーされたことを示します。

    101, 1102

サンプル2

  1. カメラがEye to Hand方式で取り付けられている場合、ロボットはビジョンシステムに以下のコマンドを送信します。3は、ロボットがティーチポイントの関節角度をビジョンシステムに送信することを示します。

    101, 1, 0, 3, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15
  2. ビジョンシステムは以下の結果をロボットに返します。1102は、Mech-Visionプロジェクトが正常にトリガーされたことを示します。

    101, 1102

サンプル3

  1. Mech-Visionプロジェクト2が登録されていない場合は、ロボットはビジョンシステムに以下のコマンドを送信します。

    101, 2, 10, 0, 0, 0, 0, 0, 0, 0
  2. ビジョンシステムは以下の結果をロボットに返します。1011は、Mech-Visionプロジェクトが登録されていないことを示します。

    101, 1011

102コマンド——ビジョン結果を取得

コマンド機能

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

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

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

    convert tcp

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

102,Mech-Visionプロジェクト番号

Mech-Visionプロジェクト番号

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

返されたデータ形式

102, ステータスコード,すべてのビジョンポイントが取得されたかどうか,ビジョンポイントの数,予約語,ビジョンポイント1(ツール位置姿勢,ラベル,ツールID),ビジョンポイント2(ツール位置姿勢,ラベル,ツールID), …

ステータスコード

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

すべてのビジョンポイントが取得されたかどうか

このパラメータは、すべてのビジョンポイントが取得されたかどうかを示し、値は0または1です。

  • 0:取得されていないビジョンポイントがあります。

  • 1:すべてのビジョンポイントが取得されました。

  • プログラムを作成するとき、このパラメータの値が1であるかどうかによって、すべてのビジョンポイントが取得されたかどうかを判断することができます。このパラメータの値が0の場合、取得されていないビジョンポイントがあることを示します。すべてのビジョンポイントを取得するには、このパラメータの値が1になるまでこのコマンドを再度呼び出します。

  • すべてのビジョンポイントが取得されていない場合、この時点で 101コマンド——Mech-Visionプロジェクトを実行 コマンドを呼び出すと、未取得のビジョンポイントはクリアされます。

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

set vis time

ビジョンポイントの数

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

set number

予約語

この予約語が使われていないため、初期値は0です。

ビジョンポイント

取得された各ビジョンポイントは8つのデータで構成され、最初の6つはツール位置姿勢、7番目はラベル、最後はツールIDを示します。

  • ツール位置姿勢:ロボットのツール位置姿勢。

    ビジョンポイントの対象物の位置姿勢(つまり「出力」ステップの「poses」のデータ)は、ビジョンシステムにより、対応するロボットのツール位置姿勢に自動的に変換されます。
    get tcp
    1. 対象物の位置姿勢を四元数からオイラー角の形式に変換します。

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

      convert tcp
  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:初期値は0です。通常、Mech-Visionが出力されたビジョンポイントには対象物の位置におけるロボットのツールIDが含まれていません。

実行例

サンプル1

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    102, 1
  2. ビジョンシステムは以下の結果をロボットに返した場合、コマンドが正常に実行されたことを示します。1は、合計1つのビジョンポイントを取得します。

    102, 1100, 1, 1, 0, 95.7806, 644.5677, 401.1013, 91.1206, -171.1301, 180.0, 0, 0

    ビジョンシステムは以下の結果をロボットに返した場合、コマンドの実行中にエラーが発生したことを示します。1002は、ビジョン結果がないことを示します。

    102, 1002

サンプル2

以下のサンプルを実行すると、22個のビジョンポイントが取得されます。

  1. ロボットが101コマンドをビジョンシステムに送信します。0は、すべてのビジョンポイントを取得することを示します。

    101, 1, 0, 1, -0, -20.6323, -107.8121, -0, -92.8181, 0.0016

    ビジョンシステムは以下の結果をロボットに返します。1102は、Mech-Visionプロジェクトが正常にトリガーされたことを示します。

    101, 1102
  2. ロボットが102コマンドをビジョンシステムに送信し、20個のビジョンポイントを取得します。

    102, 1

    ビジョンシステムは以下のデータをロボットに返します。0はすべてのビジョンポイントが取得されていないことを示し、20は20個のビジョンポイントが取得されたことを示します。

    102, 1100, 0, 20, 0, 95.7806, 644.5677, 401.1013, 31.1206, ...
  3. ロボットが102コマンドをビジョンシステムに再度送信し、残りのビジョンポイントを取得します。

    102, 1

    ビジョンシステムは以下のデータをロボットに返します。1はすべてのビジョンポイントが取得されたことを示し、2は残りの2つのビジョンポイントが取得されたことを示します。

    102, 1100, 1, 2, 0, 315.2017, 592.1261, 399.6052, 126.1960, ...

103コマンド——Mech-Visionのパラメータレシピを切り替える

コマンド機能

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

set recipe

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

103,Mech-Visionプロジェクト番号,パラメータレシピ番号

Mech-Visionプロジェクト番号

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

パラメータレシピ番号

Mech-Visionプロジェクト内のパラメータレシピの番号であり、正の整数です。番号の有効範囲は1~99です。パラメータレシピ番号を確認するには、 パラメータレシピの番号を確認 をご参照ください。

返されたデータ形式

103,ステータスコード

ステータスコード

コマンドが正常に実行された場合、ステータスコードは 1107 となります。 コマンド実行中にエラーが発生した場合、対応するエラーコードが返されます。詳細は 標準インターフェースのステータスコード一覧とトラブルシューティング をご参照ください。

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信し、Mech-Visionプロジェクト1のパラメータレシピ番号を2に切り替えます。

    103, 1, 2
  2. ビジョンシステムは以下の結果をロボットに返した場合、コマンドが正常に実行されたことを示します。1107は、Mech-Visionプロジェクト1のパラメータレシピ番号が2に正常に切り替わったことを示します。

    103, 1107

    ビジョンシステムは以下の結果をロボットに返した場合、コマンドの実行中にエラーが発生したことを示します。1012は、設定されたパラメータレシピ番号に対応するパラメータレシピがないことを示します。

    103, 1012

105コマンド——Mech-Visionから計画された経路を取得

コマンド機能

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

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

105,Mech-Visionプロジェクト番号,経路点の位置姿勢タイプ

Mech-Visionプロジェクト番号

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

経路点の位置姿勢タイプ

このパラメータは、取得する経路点の位置姿勢タイプを指定するために使用されます。

  • 1:ロボットの関節角度(JPs)。

  • 2:ロボットのツール位置姿勢。

返されたデータ形式

105,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(位置姿勢,ラベル,ツールID),経路点2(位置姿勢,ラベル,ツールID), …

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • プログラムを作成するとき、このパラメータの値が1であるかどうかによって、すべての経路点が取得されたかどうかを判断することができます。このパラメータの値が0の場合、取得されていない経路点があることを示します。すべての経路点を取得するには、このパラメータの値が1になるまでこのコマンドを再度呼び出します。

  • すべての経路点が取得されていない場合、この時点で 101コマンド——Mech-Visionプロジェクトを実行 コマンドを呼び出すと、未取得の経路点はクリアされます。

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

set vis time

経路点の数

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

set number
105コマンド——Mech-Visionから計画された経路を取得 コマンドを呼び出す前に、 105コマンド——Mech-Visionから計画された経路を取得 コマンドの呼び出し回数を減らすように 101コマンド——Mech-Visionプロジェクトを実行 コマンドの ビジョンポイントまたは経路点の予期数 を0に設定する必要があります。101コマンド——Mech-Visionプロジェクトを実行 コマンドの ビジョンポイントまたは経路点の予期数 が1に設定されている場合、 105コマンド——Mech-Visionから計画された経路を取得 を一回呼び出すと1つの経路点のみが取得され、すべての経路点を取得するには、このコマンドを複数回呼び出す必要があります。

経路全体における「ビジョン処理による移動」のインデックス

このパラメータは、経路全体における経路計画設定ツールの「ビジョン処理による移動」ステップに対応する経路点(「ビジョン処理による移動」の経路点)の位置を示します。経路全体に「ビジョン処理による移動」の経路点がない場合、このパラメータは0となります。

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

経路全体を受信するにはこのコマンドを複数回送信する必要がある場合、このパラメータは、コマンドが実行された後の最初の返された結果では計画された経路全体における「ビジョン処理による移動」の経路点の位置を示し、その後の返された結果では残りの経路点における「ビジョン処理による移動」の経路点の位置を示します。

例えば、Mech-Visionによって計画された経路が4つの経路点から構成され、4つ目の経路点が「ビジョン処理による移動」の経路点であると仮定します。

  1. ロボットがこのコマンドを初めて送信します。

    105, 1, 1

    ビジョンシステムは以下の結果をロボットに返します。2は最初に合計2つの経路点が取得されたことを示し、4は経路全体における「ビジョン処理による移動」の位置を示します。

    105, 1103, 0, 2, 4, 0.0, 0.0, 0.0, 0.0, 69.0, 0.0, 0, 7, 73.0, 0.0, 0.0, 0.0, 69.0, 0.0, 0, 7
  2. ロボットがこのコマンドを2回目に送信します。

    105, 1, 1

    ビジョンシステムは以下の結果をロボットに返します。最初の2は2回目の取得が残りの2つの経路点を取得したことを示し、2番目の2は残りの2つの経路点における「ビジョン処理による移動」の経路点の位置を示します。

    105, 1103, 1, 2, 2, -77.0, 0.0, 0.0, 0.0, 69.0, 0.0, 0, 7, -26.6781, 55.4142, 45.0133, -7.3735, -10.948, 160.5773, 2, 7

経路点

取得された各経路点は8つのデータで構成され、最初の6つは位置姿勢、7番目はラベル、最後はツールIDを示します。

  • 位置姿勢:ロボットのツール位置姿勢または関節角度(JPs)。位置姿勢タイプは、このコマンド送信時に設定された 経路点の位置姿勢タイプ パラメータによって決定されます。

  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:経路計画設定ツールで設定されたものです。

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信し、Mech-Visionプロジェクト1から出力された経路点を取得します。2は、経路点の位置姿勢タイプがツール位置姿勢であることを示します。

    105, 1, 2
  2. ビジョンシステムは以下の結果をロボットに返した場合、コマンドが正常に実行されたことを示します。ビジョンシステムはすべて(合計5つ)の経路点をロボットに返し、3番目の経路点が「ビジョン処理による移動」の経路点となります。

    105, 1103, 1, 5, 3, 1030.0, 0, 1260.0, 0.0, 90.0, -0.0, 0, 7, 1149.114, -298.9656, 274.9219, -0.0977, -1.3863, -175.9702, 0, 7, 1149.8416, -296.8585, 245.0048, -0.0977, -1.3863, -175.9702, 2, 7, 1149.114, -298.9656, 274.9219, -0.0977, -1.3863, -175.9702, 0, 7, 1030.0, 0, 1260.0, 0.0, 90.0, -0.0, 0,7

    ビジョンシステムは以下の結果をロボットに返した場合、コマンドの実行中にエラーが発生したことを示します。1020は、Mech-Visionプロジェクトが起動されていないことを意味します。

    105, 1020

106コマンド——Mech-Visionから吸盤のDO信号リストを取得

コマンド機能

このコマンドは、Mech-Visionプロジェクトによって計画された複数パーティション吸盤の制御信号を取得するために使用されます。このコマンドを使用する前に、Mech-Visionソフトウェアで以下の設定を行う必要があります。

  • 「経路計画」ステップのパラメータで、設定ツールを開く をクリックします。全体的設定箱のデパレタイジング をオンにします。

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

    sucker vis

呼び出し順序

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

106, Mech-Visionプロジェクト番号, 吸盤パーティションの数

Mech-Visionプロジェクト番号

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

吸盤のパーティション数

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

返されたデータ形式

106,ステータスコード,DO信号1,DO信号2,...,DO信号64

ステータスコード

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

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信号を区別できます。有効なDO信号は0から999までの非負整数であり、無効なDO信号は-1(プレースホルダ値)です。

    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

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    106, 1, 1
  2. ビジョンシステムは以下の結果をロボットに返します。その中、有効なDO信号は11、12となります。

    106, 1106, 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1

110コマンド——Mech-Visionからカスタマイズされたデータを取得

コマンド機能

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

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

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

custom data

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

110,Mech-Visionプロジェクト番号

Mech-Visionプロジェクト番号

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

返されたデータ形式

110,ステータスコード,すべてのビジョンポイントが取得されたかどうか,カスタマイズされたデータの数(N),位置姿勢,ラベル,カスタマイズされたデータ1,...,カスタマイズされたデータN

ステータスコード

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

すべてのビジョンポイントが取得されたかどうか

このパラメータは、すべてのビジョンポイントが取得されたかどうかを示し、値は0または1です。

  • 0:取得されていないビジョンポイントがあります。

  • 1:すべてのビジョンポイントが取得されました。

  • ロボットはこのコマンドを1回実行すると、ビジョンシステムから1つのビジョンポイントに対応する位置姿勢とカスタマイズされたデータのみが取得されます。複数のビジョンポイントのカスタマイズされたデータを受信する必要がある場合は、このコマンドを複数回実行してください。

  • プログラムを作成するとき、このパラメータの値が1であるかどうかによって、すべてのビジョンポイントが取得されたかどうかを判断することができます。このパラメータの値が0の場合、取得されていないビジョンポイントのカスタマイズされたデータがあることを示します。すべてのカスタマイズされたデータを取得するには、このパラメータの値が1になるまでこのコマンドを再度呼び出します。

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

set vis time

カスタマイズされたデータの数

すべてのカスタマイズされたポートのデータの合計です。例えば、「出力」ステップのポートデータは、以下のデータから構成されます。ここで、「customData1」と「customData2」はカスタマイズされたポートで、次元はそれぞれ3と2です。したがって、カスタマイズされたデータの合計数は3+2=5です。

ポート名

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]

]

行の次元(リスト内の要素数)

2

2

2

2

列の次元(リスト内の個々の要素の次元数)

7

1

3

2

位置姿勢

1つのビジョンポイントのロボットのツール位置姿勢です。ビジョンシステムは、ビジョンポイントの対象物の位置姿勢(つまり「出力」ステップの「poses」ポートのデータ)を対応するロボットのツール位置姿勢に自動的に変換します。変換流れを下図に示します。

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

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

    convert tcp

ラベル

1つのビジョンポイントのラベル(「出力」ステップの「labels」ポートのデータ)です。

  • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

  • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

カスタイズされたデータ

1つのビジョンポイントのすべてのカスタマイズされたポートのデータで、その数は カスタマイズされたデータ の数と同じです。例えば、「出力」ステップの各ポートのデータは下表の通りである場合、ロボットが取得した最初のビジョンポイントの カスタマイズされたデータ は[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]

カスタマイズされたデータは、カスタマイズされたポート名のA–Zの順に並べられています。

実行例

Mech-Visionプロジェクトの「出力」ステップの各ポートデータが下図に示す通りであると仮定します。次に、 101コマンド——Mech-Visionプロジェクトを実行110コマンド——Mech-Visionからカスタマイズされたデータを取得 コマンドを実行してカスタマイズされたデータを取得する方法について説明します。

custom data sample
  1. ロボットが101コマンドをビジョンシステムに送信し、すべて(合計2つ)のビジョンポイントを取得します。

    101, 1, 0, 0

    ビジョンシステムは以下の結果をロボットに返します。その結果は、101コマンドが正常に実行されたことを示します。

    101, 1102
  2. ロボットが110コマンドをビジョンシステムに送信し、最初のビジョンポイントのすべてのデータを取得します。

    110, 1

    ビジョンシステムは以下の結果をロボットに返します。その中、カスタマイズされたデータは11、21となります。

    110, 1100, 0, 2, 1150.1272, -297.2476, -55.0715, -0.1087, -1.6156, -176.1518, 1, 11, 21
  3. ロボットが110コマンドをビジョンシステムに再度送信し、2番目のビジョンポイントのすべてのデータを取得します。

    110, 1

    ビジョンシステムは以下の結果をロボットに返します。その中、1はすべてのビジョンポイントが取得されたことを示し、カスタマイズされたデータは12、22となります。

    110, 1100, 1, 2, 592.6891, -256.7424, -56.6007, 0.0723, 1.1348, -176.355, 2, 12, 22

111コマンド——Mech-Visionから「ビジョン処理による移動」の計画結果を取得

コマンド機能

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

送信形式

111,Mech-Visionプロジェクト番号,経路点の位置姿勢タイプ

Mech-Visionプロジェクト番号

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

経路点の位置姿勢タイプ

このパラメータは、取得する経路点の位置姿勢タイプを指定するために使用されます。

  • 1:ロボットの関節角度(JPs)。

  • 2:ロボットのツール位置姿勢。

返されたデータ形式

111,ステータスコード,すべての経路点が取得されたかどうか,経路点のタイプ,位置姿勢,移動方式,ツール番号,速度,「ビジョン処理による移動」の計画結果

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • ロボットはこのコマンドを1回実行すると、ビジョンシステムから1つの経路点のみが取得されます。複数の経路点を受信する必要がある場合は、このコマンドを複数回実行してください。

  • プログラムを作成するとき、このパラメータの値が1であるかどうかによって、すべての経路点が取得されたかどうかを判断することができます。このパラメータの値が0の場合、取得されていない経路点があることを示します。すべての経路点を取得するには、このパラメータの値が1になるまでこのコマンドを再度呼び出します。

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

set vis time

経路点のタイプ

経路点のタイプ の値

経路点のタイプ

データ情報

0

「ビジョン処理による移動」の以外の経路点

位置姿勢、移動方式、ツール番号、速度

1

「ビジョン処理による移動」の経路点

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

位置姿勢

経路点の位置姿勢は、コマンド送信時に指定された 経路点の位置姿勢タイプ パラメータの値によって、ロボットの関節角度かツール位置姿勢のどちらかになります。

移動方式

  • 1:関節運動。

  • 2:直線運動。

ツール番号

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

速度

経路計画設定ツールで設定されたシミュレーション速度の値(パーセンテージで表す)です。

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

「ビジョン処理による移動」の計画結果には、以下のデータが含まれます。

名前 詳細 次元

把持するワークのラベル

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

10

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

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

1

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

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

1

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

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

1

TCPオフセット

ロボットハンド中心からのワーク群の中心のXYZオフセットです。

3

ワーク群の向き

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

1

単体ワークの向き

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

1

ワーク群の寸法

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

3

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    111, 1, 2
  2. ビジョンシステムは以下の結果をロボットに返します。

    詳細 データ

    送信コマンド

    111

    ステータスコード

    1103

    すべての経路点が取得されたかどうか

    1

    経路点のタイプ

    1

    位置姿勢

    95.7806, 644.5677, 401.1013, 91.1206, -171.1301, 180.0

    移動方式

    1

    ツール番号

    0

    速度

    55

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

    把持するワークのラベル

    1, 1, 1, 0, 0, 0, 0, 0, 0, 0

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

    100

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

    3

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

    28

    TCPオフセット

    95.7806, 644.5677, 0

    ワーク群の向き

    0

    単体ワークの向き

    0

    ワーク群の寸法

    600, 800, 300

200コマンド——Mech-Vizプロジェクトを実行して計画経路を取得

コマンド機能

このコマンドは、Mech-Vizプロジェクトの実行をトリガーし、「メッセージによって異なる分岐を実行」ステップの出口番号を設定し、Mech-Vizプロジェクトによって計画された動作経路を返します。プロジェクトを実行するには、 201コマンド——Mech-Vizプロジェクトを実行 をご参照ください。プロジェクトに「メッセージによって異なる分岐を実行」ステップがない場合はスキップでき、分岐出口設定の詳細は 203コマンド——Mech-Vizの分岐ステップの出口を設定 をご参照ください。計画された動作経路の詳細は 205コマンド——Mech-Vizから計画された経路を取得 をご参照ください。

Mech-Vizプロジェクトに複数の「メッセージによって異なる分岐を実行」ステップがある場合、このコマンドは使用できません。

送信形式

200,「メッセージによって異なる分岐を実行」ステップ番号,分岐出口番号,経路点の位置姿勢タイプ,ロボットの関節角度,ロボットのフランジ位置姿勢

「メッセージによって異なる分岐を実行」のステップ番号

このパラメータは、「メッセージによって異なる分岐を実行」ステップ番号を指定するために使用されます。正の整数である必要があります。

Mech-Vizプロジェクトに「メッセージによって異なる分岐を実行」ステップがない場合は、このパラメータを0に設定します。

分岐出口番号

「メッセージによって異なる分岐を実行」ステップの出口番号を指定します。その値は正整数です。このパラメータをNに設定すると、Mech-Vizプロジェクトは「メッセージによって異なる分岐を実行」ステップのN-1番号に沿って実行を継続します。 例えば、ロボットが「200,2,1,…​」をビジョンシステムに送信した場合、Mech-Vizプロジェクトがステップ番号が2の「メッセージによって異なる分岐を実行」ステップまで実行すると、出口0から実行を継続します。

Mech-Vizプロジェクトに「メッセージによって異なる分岐を実行」ステップがない場合は、このパラメータを0に設定します。

経路点の位置姿勢タイプ

このパラメータは、取得する経路点の位置姿勢タイプを指定するために使用されます。

  • 1:ロボットの関節角度(JPs)。

  • 2:ロボットのツール位置姿勢。

ロボットの関節角度ロボットのフランジ位置姿勢

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

返されたデータ形式

200,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(位置姿勢,ラベル,ツールID),経路点2(位置姿勢,ラベル,ツールID), …

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • 一度にビジョンシステムから送信される経路点のデフォルトの最大数は20であるため、すべての経路点を取得するためにコマンドを一度呼び出す必要がある場合は、下図の最大数の値を変更することができます。 Mech-Visionでは、ツールバーから ロボット通信設定  次へ  詳細設定 をクリックします。実際の状況に応じて最大数の初期値を変更することができますが、最大数の上限は30です。

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

set viz time

経路点の数

このパラメータは、取得された経路点の数を示します。

経路全体における「ビジョン処理による移動」のインデックス

このパラメータは、経路全体におけるMech-Vizプロジェクトの「ビジョン処理による移動」ステップに対応する経路点(「ビジョン処理による移動」の経路点)の位置を示します。経路全体に「ビジョン処理による移動」の経路点がない場合、このパラメータは0となります。

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

経路点

取得された各経路点は8つのデータで構成され、最初の6つは位置姿勢、7番目はラベル、最後はツールIDを示します。

  • 位置姿勢:ロボットのツール位置姿勢または関節角度(JPs)。位置姿勢タイプは、このコマンド送信時に設定された 経路点の位置姿勢タイプ パラメータによって決定されます。

  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:Mech-Vizプロジェクトで設定されたツールIDです。

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信し、Mech-Vizプロジェクトの実行をトリガーし、ステップ番号5の「メッセージによって異なる分岐を実行」が出口2から実行を継続し、Mech-Vizプロジェクトから出力された経路点(位置姿勢タイプは関節角度)を取得します。

    200, 5, 3, 1, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムは以下の結果をロボットに返した場合、コマンドが正常に実行されたことを示します。ビジョンシステムはすべて(合計2つ)の経路点をロボットに返し、2番目の経路点が「ビジョン処理による移動」の経路点となります。

    200, 2100, 1, 2, 2, 8.3077, 15.1634, -142.1778, -2.7756, -31.4404, -96.9490, 0, 64, 8.2425, 12.1301, -141.7587, -2.5135, -34.8905, -97.1911, 0, 32

201コマンド——Mech-Vizプロジェクトを実行

コマンド機能

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

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

201,ロボットの位置姿勢タイプ,ロボットの位置姿勢

ロボットの位置姿勢タイプロボットの位置姿勢

  • ロボットの位置姿勢タイプ は、ロボット実機の位置姿勢をMech-Vizプロジェクトに送信する方式を設定します。パラメータ範囲は0~2です。

  • ロボットの位置姿勢 は、 ロボットの位置姿勢タイプ によって決定されます。

2つのパラメータの値と関係と説明は以下の通りです。

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

0

0, 0, 0, 0, 0, 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に設定することを推奨する理由は何ですか?

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

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

この場合、 ロボットの位置姿勢タイプ2 に設定すると、ロボット側で設定されたティーチポイントがMech-Vizに送信されます。これにより、配置領域でロボット実機はMech-Vizをトリガーして次回の経路を事前に計画し、タクトタイムの向上が可能になります。

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

robot example

返されたデータ形式

201, ステータスコード

ステータスコード

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

実行例

サンプル1

  1. カメラがEye in Hand方式で取り付けられている場合、ロボットはビジョンシステムに以下のコマンドを送信します。1は、ロボットが現在の関節角度とフランジ位置姿勢をビジョンシステムに送信することを示します。

    201, 1, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムは以下の結果をロボットに返します。2103は、Mech-Vizプロジェクトが正常にトリガーされたことを示します。

    201, 2103

サンプル2

  1. カメラがEye to Hand方式で取り付けられている場合、ロボットはビジョンシステムに以下のコマンドを送信します。2は、ロボットがティーチポイントの関節角度をビジョンシステムに送信することを示します。

    201, 2, 5.18, 14.52, 4.03, 0.09, 72.44, 5.15
  2. ビジョンシステムは以下の結果をロボットに返します。2103は、Mech-Vizプロジェクトが正常にトリガーされたことを示します。

    201, 2103

202コマンド—— Mech-Vizプロジェクトを停止

コマンド機能

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

202

返されたデータ形式

202, ステータスコード

ステータスコード

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

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    202
  2. ビジョンシステムは以下の結果をロボットに返します。2104は、Mech-Vizプロジェクトが正常に停止されたことを示します。

    202, 2104

203コマンド——Mech-Vizの分岐ステップの出口を設定

コマンド機能

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

set branch

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

203,ステップ番号,分岐出口番号

ステップ番号

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

分岐出口番号

「メッセージによって異なる分岐を実行」ステップの出口番号を指定します。その値は正整数です。このパラメータをNに設定すると、Mech-Vizプロジェクトは「メッセージによって異なる分岐を実行」ステップのN-1番号に沿って実行を継続します。 例えば、ロボットが「203,2,1」をビジョンシステムに送信した場合、Mech-Vizプロジェクトがステップ番号が2の「メッセージによって異なる分岐を実行」ステップまで実行すると、出口0から実行を継続します。

返されたデータ形式

203, ステータスコード

ステータスコード

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

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信します。5はステップ番号を示し、3はMech-Vizプロジェクトが「メッセージによって異なる分岐を実行」ステップの出口2から実行を継続することを示します。

    203, 5, 3
  2. ビジョンシステムは以下の結果をロボットに返します。2105は、分岐ステップの出口番号が正常に設定されたことを示します。

    203, 2105

204コマンド——Mech-Vizの現在のインデックスを設定

コマンド機能

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

set index

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

204,ステップ番号,現在のインデックス

ステップ番号

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

現在のインデックス

このパラメータは、インデックス付きのステップの現在のインデックス値を指定するために使用されます。その値は正の整数となります。このパラメータ値がNに設定されている場合、対応するステップの現在のインデックス値はN-1となります。例えば、ロボットが「204,2,1」をビジョンシステムに送信した場合、ステップ番号2のステップの現在のインデックス値が0です。

返されたデータ形式

204,ステータスコード

ステータスコード

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

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信します。2はステップ番号を示し、6は対応するステップの現在のインデックス値を5に設定することを示します。

    204, 2, 6
  2. ビジョンシステムは以下の結果をロボットに返します。2106は、現在のインデックスが正常に設定されたことを示します。

    204, 2106

205コマンド——Mech-Vizから計画された経路を取得

コマンド機能

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

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

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

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、 標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

205,経路点の位置姿勢タイプ

経路点の位置姿勢タイプ

このパラメータは、取得する経路点の位置姿勢タイプを指定するために使用されます。

  • 1:ロボットの関節角度(JPs)。

  • 2:ロボットのツール位置姿勢。

返されたデータ形式

205,ステータスコード,すべての経路点が取得されたかどうか,経路点の数,経路全体における「ビジョン処理による移動」のインデックス,経路点1(位置姿勢,ラベル,ツールID),経路点2(位置姿勢,ラベル,ツールID), …

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • プログラムを作成するとき、このパラメータの値が1であるかどうかによって、すべての経路点が取得されたかどうかを判断することができます。このパラメータの値が0の場合、取得されていない経路点があることを示します。すべての経路点を取得するには、このパラメータの値が1になるまでこのコマンドを再度呼び出します。

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

set viz time

経路点の数

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

set number

経路全体における「ビジョン処理による移動」のインデックス

このパラメータは、経路全体におけるMech-Vizプロジェクトの「ビジョン処理による移動」ステップに対応する経路点(「ビジョン処理による移動」の経路点)の位置を示します。経路全体に「ビジョン処理による移動」の経路点がない場合、このパラメータは0となります。

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

経路全体を受信するにはこのコマンドを複数回送信する必要がある場合、このパラメータは、コマンドが実行された後の最初の返された結果では計画された経路全体における「ビジョン処理による移動」の経路点の位置を示し、その後の返された結果では残りの経路点における「ビジョン処理による移動」の経路点の位置を示します。

例えば、Mech-Vizによって計画された経路が4つの経路点から構成され、4つ目の経路点が「ビジョン処理による移動」の経路点であると仮定します。

  1. ロボットがこのコマンドを初めて送信します。

    205, 1

    ビジョンシステムは以下の結果をロボットに返します。2は最初に合計2つの経路点が取得されたことを示し、4は経路全体における「ビジョン処理による移動」の位置を示します。

    205, 2100, 0, 2, 4, 0.0, 0.0, 0.0, 0.0, 69.0, 0.0, 0, 7, 73.0, 0.0, 0.0, 0.0, 69.0, 0.0, 0, 7
  2. ロボットがこのコマンドを2回目に送信します。

    205, 1

    ビジョンシステムは以下の結果をロボットに返します。最初の2は2回目の取得が残りの2つの経路点を取得したことを示し、2番目の2は残りの2つの経路点における「ビジョン処理による移動」の経路点の位置を示します。

    205, 2100, 1, 2, 2, -77.0, 0.0, 0.0, 0.0, 69.0, 0.0, 0, 7, -26.6781, 55.4142, 45.0133, -7.3735, -10.948, 160.5773, 2, 7

経路点

取得された各経路点は8つのデータで構成され、最初の6つは位置姿勢、7番目はラベル、最後はツールIDを示します。

  • 位置姿勢:ロボットのツール位置姿勢または関節角度(JPs)。位置姿勢タイプは、このコマンド送信時に設定された 経路点の位置姿勢タイプ パラメータによって決定されます。

  • ラベル:位置姿勢に対応する整数のラベル(「出力」ステップの「labels」ポートのデータ)。

    • ラベルは数値文字列である必要があります。ラベルが数値文字列でない場合は、「出力」ステップの前に「ラベルマッピング」ステップを追加してラベルを数値文字列にマッピングする必要があります。

    • 「出力」ステップに「labels」ポートがない場合は、ラベルの値はデフォルトで0になります。

  • ツールID:Mech-Vizプロジェクトで設定されたツールIDです。

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信し、Mech-Vizプロジェクトから出力された経路点(位置姿勢タイプは関節角度)を取得します。

    205, 1
  2. ビジョンシステムは以下の結果をロボットに返した場合、コマンドが正常に実行されたことを示します。ビジョンシステムはすべて(合計2つ)の経路点をロボットに返し、2番目の経路点が「ビジョン処理による移動」の経路点となります。

    205, 2100, 1, 2, 2, 8.3077, 15.1634, -142.1778, -2.7756, -31.4404, -96.9490, 0, 64, 8.2425, 12.1301, -141.7587, -2.5135, -34.8905, -97.1911, 0, 32

206コマンド——吸盤のDO信号リストを取得

コマンド機能

このコマンドは、Mech-Vizプロジェクトによって計画された複数パーティション吸盤の制御信号を取得するために使用されます。このコマンドを使用する前に、Mech-Vizソフトウェアで以下の設定を行う必要があります。

  • Mech-Vizソフトウェアで、「ビジョン処理による移動」ステップの 把持方法箱のデパレタイジング に設定します。

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

    sucker viz

送信形式

206, 吸盤のパーティション数

吸盤のパーティション数

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

返されたデータ形式

206,ステータスコード,DO信号1,DO信号2,...,DO信号64

ステータスコード

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

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信号を区別できます。有効なDO信号は0から999までの非負整数であり、無効なDO信号は-1(プレースホルダ値)です。

    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

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    206, 1
  2. ビジョンシステムは以下の結果をロボットに返します。その中、有効なDO信号は11、12となります。

    206, 2102, 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1

207コマンド——Mech-Vizのステップパラメータを読み取る

コマンド機能

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

207,構成ID

構成ID

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

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

get property config

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

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

read

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

構成ID

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

ステップ番号

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

キー名

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

  • キー名キークエリツール から取得できます。Mech-Vizで、メニューバーの ファイル をクリックし、左下の オプション をクリックします。次に 開発者モード にチェックを入れて OK をクリックし、ソフトウェアを閉じて再起動します。その後、メニューバーの ツール  キークエリツール をクリックすると、このツールを開くことができます。特定のステップのアイコンをクリックすると、中央のエリアに選択したステップのすべてのパラメータに対応するキー名が表示されます。設定するパラメータのキー名は、下図のエリアに表示される名前である必要があります。

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

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

例えば、property_configファイルに以下の内容を追加します。5は構成ID、3はステップ番号、xCountはパラメータ名に対応するキー名を示します。ロボットが「207,5」コマンドを送信した後、xCountに対応するパラメータ値が取得されます。

read, 5, 3, xCount

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

返されたデータ形式

207,ステータスコード,ステップパラメータ値

ステータスコード

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

ステップパラメータ値

読み込まれたステップのパラメータ値です。

  • ASCII形式でコマンドを送信する場合、ステップパラメータ値でサポートされるデータ型は、int、float、stringです。

  • HEX形式でコマンドを送信する場合、ステップパラメータ値でサポートされるデータ型は、int、floatです。

実行例

以下では、「カウンター」ステップ(ステップ番号が1)を例に、 現在の計数 のパラメータ値を読み取ります。

read value sample1
  1. キークエリツール現在の計数 のキー名(すなわち下図のcurrentCount)を取得します。

    read value sample2
  2. property_configファイルに、以下の内容を追加して保存します。10は構成IDを示し、このIDはファイルで唯一である必要があります。1は「カウンター」ステップのステップ番号を示します。currentCountは 現在の計数 パラメータに対応するキー名を示します。

    read, 10, 1, currentCount
  3. Mech-Visionのツールバーでインターフェースサービスを再起動します。

  4. ロボットが以下のコマンドをビジョンシステムに送信します。10は構成IDを示します。

    207, 10
  5. ビジョンシステムは以下の結果をロボットに返します。0は読み取る 現在の計数 (currentCount)のパラメータ値となります。

    207, 2109, 0

208コマンド——Mech-Vizのステップパラメータを設定

コマンド機能

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

208,構成ID

構成ID

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

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

get property config

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

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

write

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

構成ID

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

ステップ番号

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

キー名

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

パラメータ値

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

  • キー名キークエリツール から取得できます。Mech-Vizで、メニューバーの ファイル をクリックし、左下の オプション をクリックします。次に 開発者モード にチェックを入れて OK をクリックし、ソフトウェアを閉じて再起動します。その後、メニューバーの ツール  キークエリツール をクリックすると、このツールを開くことができます。特定のステップのアイコンをクリックすると、中央のエリアに選択したステップのすべてのパラメータに対応するキー名が表示されます。設定するパラメータのキー名は、下図のエリアに表示される名前である必要があります。

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

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

例えば、property_configファイルに以下の内容を追加します。6は構成ID、3はステップ番号、xOffsetはパラメータ名に対応するキー名、0.000000はパラメータの設定値を示します。ロボットが「208,6」コマンドを送信した後、ビジョンシステムはxOffsetに対応するパラメータ値を0.000000に設定します。

write, 6, 3, xOffset, 0.000000

property_configファイルには、複数のwriteコマンドを設定でき、設定する構成IDを重複させることができます。つまり、同じ構成IDを使用して複数のパラメータ値を設定することができます。

例えば、property_configファイルの内容は以下の通りです。ロボットが「208,1」コマンドを送信した後、ビジョンシステムはxOffset、yOffsetとzOffsに対応するパラメータ値をそれぞれ0.000000、1.000000と2.000030に設定します。

write, 1, 3, xOffset, 0.000000
write, 1, 3, yOffset, 1.000000
write, 1, 3, zOffset, 2.000030

返されたデータ形式

208,ステータスコード

ステータスコード

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

実行例

以下では、「待つ」ステップ(ステップ番号は3)を例に、 待ち時間 のパラメータ値を設定します。

set value sample1
  1. キークエリツール待ち時間 のキー名(すなわち下図のwaitTime)を取得します。

    set value sample2
  2. property_configファイルに、以下の内容を追加して保存します。11は構成IDを示します。3は「待つ」ステップのステップ番号を示します。waitTimeは、 待ち時間 パラメータに対応するキー名を示します。1000は設定する待ち時間が1000msであることを示します。

    write, 11, 3, waitTime, 1000
  3. Mech-Visionのツールバーでインターフェースサービスを再起動します。

  4. ロボットが以下のコマンドをビジョンシステムに送信します。11は構成IDを示します。

    208, 11
  5. ビジョンシステムは以下の結果をロボットに返します。2108は、パラメータ値が正常に設定されたことを示します。

    208, 2108

210コマンド——Mech-Vizから「ビジョン処理による移動」の計画結果またはカスタマイズされたデータを取得

コマンド機能

このコマンドは、Mech-Vizプロジェクトの「ビジョン処理による移動」の計画結果またはカスタマイズされたデータを取得するために使用されます。

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

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

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

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

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

    custom data

送信形式

210,返されたデータ形式

返されたデータ形式

返されたデータ形式 の値

返されたデータ形式 の説明(Mech-Visionプロジェクトにカスタマイズされたポートがない場合は カスタマイズされたデータ がなく、詳細は下記の 返されたデータ形式 をご参照ください)

経路点のタイプ

データ情報

1

「ビジョン処理による移動」の以外の経路点

位置姿勢(関節角度形式)、移動方式、ツール番号、速度

「ビジョン処理による移動」の経路点

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

2

「ビジョン処理による移動」の以外の経路点

位置姿勢(ツール位置姿勢の形式)、移動方式、ツール番号、速度

「ビジョン処理による移動」の経路点

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

3

「ビジョン処理による移動」の以外の経路点

位置姿勢(関節角度形式)、移動方式、ツール番号、速度

「ビジョン処理による移動」の経路点

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

4

「ビジョン処理による移動」の以外の経路点

位置姿勢(ツール位置姿勢の形式)、移動方式、ツール番号、速度

「ビジョン処理による移動」の経路点

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

このコマンドにより取得された「ビジョン処理による移動」の経路点には、「ビジョン処理による移動」の計画結果またはカスタマイズされたデータが格納されます。しかし、 205コマンド——Mech-Vizから計画された経路を取得 コマンドにより取得された「ビジョン処理による移動」の経路点には上記のデータは格納されません。

返されたデータ形式

210,ステータスコード,すべての経路点が取得されたかどうか,経路点のタイプ,位置姿勢,移動方式,ツール番号,速度,「ビジョン処理による移動」の計画結果,カスタマイズされたデータの数(N),カスタマイズされたデータ1,...,カスタマイズされたデータN

  • 返されたデータには 「ビジョン処理による移動」の計画結果 があるかどうかは、コマンド送信時に設定された 返されたデータ形式 パラメータ値によって決定されます。

  • 返されたデータには カスタマイズされたデータ があるかどうかは、Mech-Visionプロジェクトの「出力」ステップにカスタマイズされたポートがあるかどうかによって決定されます。

ステータスコード

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

すべての経路点が取得されたかどうか

このパラメータは、すべての経路点が取得されたかどうかを示し、値は0または1です。

  • 0:取得されていない経路点があります。

  • 1:すべての経路点が取得されました。

  • ロボットはこのコマンドを1回実行すると、ビジョンシステムから1つの経路点のみが取得されます。複数の経路点を受信する必要がある場合は、このコマンドを複数回実行してください。

  • プログラムを作成するとき、このパラメータの値が1であるかどうかによって、すべての経路点が取得されたかどうかを判断することができます。このパラメータの値が0の場合、取得されていない経路点があることを示します。すべての経路点を取得するには、このパラメータの値が1になるまでこのコマンドを再度呼び出します。

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

set viz time

経路点のタイプ

経路点のタイプ の値

経路点のタイプ

データ情報

0

「ビジョン処理による移動」の以外の経路点

位置姿勢、移動方式、ツール番号、速度

1

「ビジョン処理による移動」の経路点

位置姿勢、移動方式、ツール番号、速度、「ビジョン処理による移動」の計画結果カスタマイズされたデータ(Mech-Visionプロジェクトにカスタマイズされたポートがない場合はなし)

位置姿勢

経路点の位置姿勢は、コマンド送信時に指定された 返されたデータ形式 パラメータの値によって、ロボットの関節角度かツール位置姿勢のどちらかになります。

移動方式

  • 1:関節運動。

  • 2:直線運動。

ツール番号

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

速度

移動ステップのパラメータで設定された速度パラメータの値はMech-Vizで設定されたグローバル速度に乗算され、パーセンテージで表します。

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

「ビジョン処理による移動」の計画結果には、以下のデータが含まれます。

名前 詳細 次元

把持するワークのラベル

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

10

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

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

1

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

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

1

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

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

1

TCPオフセット

ロボットハンド中心からのワーク群の中心のXYZオフセットです。

3

ワーク群の向き

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

1

単体ワークの向き

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

1

ワーク群の寸法

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

3

カスタマイズされたデータの数

すべてのカスタマイズされたポートのデータの合計です。例えば、「出力」ステップのポートデータは、以下のデータから構成されます。ここで、「customData1」と「customData2」はカスタマイズされたポートで、次元はそれぞれ3と2です。したがって、カスタマイズされたデータの合計数は3+2=5です。

ポート名

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]

]

行の次元(リスト内の要素数)

2

2

2

2

列の次元(リスト内の個々の要素の次元数)

7

1

3

2

カスタイズされたデータ

1つのビジョンポイントのすべてのカスタマイズされたポートのデータで、その数は カスタマイズされたデータ の数と同じです。例えば、「出力」ステップの各ポートのデータは下表の通りである場合、ロボットが取得した最初のビジョンポイントの カスタマイズされたデータ は[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]

カスタマイズされたデータは、カスタマイズされたポート名のA–Zの順に並べられています。

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    210, 4
  2. ビジョンシステムは以下の結果をロボットに返します。

    詳細 データ

    送信コマンド

    210

    ステータスコード

    2100

    すべての経路点が取得されたかどうか

    1

    経路点のタイプ

    1

    位置姿勢

    95.7806, 644.5677, 401.1013, 91.1206, -171.1301, 180.0

    移動方式

    1

    ツール番号

    0

    速度

    55

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

    把持するワークのラベル

    1, 1, 1, 0, 0, 0, 0, 0, 0, 0

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

    100

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

    3

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

    28

    TCPオフセット

    95.7806, 644.5677, 0

    ワーク群の向き

    0

    単体ワークの向き

    0

    ワーク群の寸法

    600, 800, 300

    Custom data(カスタマイズされたデータ)

    カスタマイズされたデータの数

    5

    カスタマイズされたポートaのデータ

    0, 0, 1

    カスタマイズされたポートbのデータ

    2, 2

501コマンド——Mech-Visionプロジェクトに対象物の寸法を入力

コマンド機能

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

read object dimensions

呼び出し順序

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

すべてのコマンドの呼び出し順序については、標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

501,Mech-Visionプロジェクト番号,長さ,幅,高さ

Mech-Visionプロジェクト番号

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

長さ,幅,高さ

Mech-Visionプロジェクトに入力される対象物寸法(ミリメートル単位)です。寸法値は、「対象物の寸法を読み込む」ステップで読み込まれ、 X軸における長さY軸にける長さZ軸における長さ に記入されます。

返されたデータ形式

501, ステータスコード

ステータスコード

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

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信し、対象物の寸法(長さ100mm、幅200mm、高さ300mm)をMech-Visionプロジェクト1に入力します。

    501, 1, 100, 200, 300
  2. ビジョンシステムは以下の結果をロボットに返します。1108は、対象物の寸法が「対象物の寸法を読み込む」ステップに正常に入力されたことを示します。

    501, 1108

503コマンド——Mech-Visionプロジェクトに位置姿勢を入力

コマンド機能

このコマンドは、位置姿勢をMech-Visionプロジェクトに入力するために使用されます。下図に示すように、入力された位置姿勢は、「位置姿勢をクイック作成」ステップの 位置姿勢リスト パラメータ値として使用されます。

quickly create pose

呼び出し順序

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

すべてのコマンドの呼び出し順序については、標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

503, Mech-Visionプロジェクト番号, ステップ名, 位置姿勢

Mech-Visionプロジェクト番号

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

ステップ名

「位置姿勢をクイック作成」ステップの ステップ名 パラメータです。この値は、上図の「1」のように、あらかじめ数値を設定しておく必要があります。

位置姿勢

入力される位置姿勢です。このデータが「位置姿勢をクイック作成」ステップの 位置姿勢リスト パラメータ値となります。

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

  • コマンドが正常に実行されると、「位置姿勢をクイック作成」ステップの 位置姿勢リスト パラメータの値が入力された位置姿勢になりますが、姿勢は四元数で表され、データはメートル単位になります。

返されたデータ形式

503, ステータスコード

ステータスコード

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

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信し、ロボットの位置姿勢(例えば、549.56、50.0、647.01、180.0、-1.0、180.0)をMech-Visionプロジェクトに入力し、すなわち、「位置姿勢をクイック作成」ステップの 位置姿勢リスト パラメータ値を上記のロボット位置姿勢に設定します。

    Mech-Visionプロジェクトに「位置姿勢をクイック作成」ステップが含まれている必要があり、ステップ名 にはあらかじめ数字が設定されている必要があります。この例では、ステップ名を 1 とします。
    503, 1, 1, 549.56, 50.0, 647.01, 180.0, -1.0, 180.0
  2. ビジョンシステムは以下の結果をロボットに返します。1110は位置姿勢が正常に設定されたことを示します。この場合、「位置姿勢をクイック作成」ステップの 位置姿勢リスト パラメータの値は、[0.54956, 0.05, 0.64701, -0.999962, 0, -0.00872654, 1.2246e-16]となります。

    503, 1110

601コマンド——「通知」ステップのメッセージを取得

コマンド機能

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

呼び出し順序

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

すべてのコマンドの呼び出し順序については、標準インターフェースコマンドの呼び出しフロー をご参照ください。

送信形式

601

返されたデータ形式

601,「通知」ステップのメッセージ

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

「通知」ステップパラメータで入力されたメッセージ内容となります。

実行例

  1. ロボットが以下コマンドをビジョンシステムに送信します。ここでは、上記のMech-Visionプロジェクトの「通知」ステップを例として説明します。

    601
  2. ビジョンシステムは以下の結果をロボットに返します。1000は、「通知」ステップパラメータで入力されたメッセージ内容を示します。

    601, 1000

701コマンド——キャリブレーション

コマンド機能

このコマンドは、ロボットのハンドアイキャリブレーション(外部パラメータのキャリブレーション)を実行するために使用されます。このコマンドは、Mech-Visionのキャリブレーションツールと併用する必要があります。キャリブレーションツールは、Mech-Visionのツールバーの カメラキャリブレーション をクリックして開きます。キャリブレーション中、まずロボットはキャリブレーションの初期位置に移動し、このコマンドによりキャリブレーションの初期位置をビジョンシステムに送信します。次に、ビジョンシステムは次のキャリブレーションポイントの位置をロボットに返します。最後に、ロボットが受信したキャリブレーションポイントに移動した後、次のキャリブレーションポイントの位置を受信するためにこのコマンドを再度送信します。このようにして、キャリブレーションが終了するまで繰り返します。

auto calibration

送信形式

701,キャリブレーションのステータス,フランジ位置姿勢,関節角度

キャリブレーションのステータス

  • 0:キャリブレーションプロセスを開始するようMech-Visionに通知します。

  • 1:ロボットは前のキャリブレーションポイントに正常に到達しました。

  • 2:ロボットは前のキャリブレーションポイントに到達できませんでした。

フランジ位置姿勢

ロボットの現在のフランジ位置姿勢です。

関節角度

ロボットの現在の関節角度(JPS)です。

返されたデータ形式

701,ステータスコード,キャリブレーションのステータス,次のキャリブレーションポイントのフランジ位置姿勢,次のキャリブレーションポイントの関節角度

ステータスコード

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

キャリブレーションのステータス

  • 0:キャリブレーションが実行しています。

  • 1:キャリブレーションが完了しました。

次のキャリブレーションポイントのフランジ位置姿勢

ロボットが移動する次のキャリブレーションポイントのフランジ位置姿勢データとなります。

次のキャリブレーションポイントの関節角度

ロボットが移動する次のキャリブレーションポイントの関節角度データとなります。

実行例

  1. ロボットが以下のコマンドをビジョンシステムに送信します。0はキャリブレーションプロセスを開始するようMech-Visionに通知することを示し、その後の位置姿勢データはキャリブレーションの初期位置を示します。

    701, 0, 1371.62147, 25.6, 1334.3529, 148.58471, -179.24347, 88.75702, 88.86102, -7.11107, -28.82309, -0.44014, -67.6509, 31.4764

    ビジョンシステムは以下の結果をロボットに返します。0はキャリブレーション実行中であることを示し、その後の位置姿勢データは次のキャリブレーションポイントの位置を示します。

    701, 7101, 0, 1271.6969, -74.3374, 1334.34094, -3128.422, 179.2412, -91.11236, 93.28109, -12.0273, -32.8811, -0.37183, -68.41364, 27.02411
  2. ロボットが以下のコマンドをビジョンシステムに送信します。1はロボットが正常にキャリブレーションの初期位置に到達したことを示し、その後の位置姿勢データは前回送信したコマンドによって返された次のキャリブレーションポイントの位置姿勢データとなります。

    701, 1, 1271.6969, -74.3374, 1334.34094, -3128422, 1792412, -91.11236, 93.28109, -12.0273, -32.8811, -0.37183, -68.41364, 27.02411

    ビジョンシステムは以下の結果をロボットに返します。0はキャリブレーション実行中であることを示し、その後の位置姿勢データは次のキャリブレーションポイントの位置を示します。

    701, 7101, 0, 1471.62226, -74.40452, 1334.34235, 148.56924, -179.24432, 88.74148, 92.8367, -2.14999, -24.25433, -0.39222, -67.23261, 27.485225
  3. 前の手順を数回繰り返し、その後のキャリブレーションポイントを取得します。

  4. ビジョンシステムは以下の結果をロボットに返します。1は、キャリブレーションが完了したことを示します。これで、キャリブレーションプロセス全体が終了しました。

    701, 7101, 1, 1371.62147, 25.6, 1334.3529, 148.58471, -179.24347, 88.75702, 88.86102, -7.11107, -28.82309, -0.44014, -67.6509, 31.4764

901コマンド——ソフトウエアのステータスを取得

コマンド機能

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

送信形式

901

返されたデータ形式

901,ステータスコード

ステータスコード

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

実行例

  1. ロボットはビジョンシステムに以下のコマンドを送信します。

    901
  2. ビジョンシステムは以下の結果をロボットに返します。1101は、Mech-Visionプロジェクトが準備できたことを示します。

    901, 1101

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

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