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

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

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

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

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

  • すべてのパラメータはプログラムファイル内でローカル変数として定義する必要があります。

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

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

通信の初期化

ホストIPアドレス、ポート番号、およびTCP/IPの待機時間を設定するためのコマンドです。このコマンドはグローバル変数を設定するため、ロボットプログラムはこのコマンドを一度だけ呼び出す必要があります。

プログラム

mm_init_skt(.ip1,.ip2,.ip3,.ip4,.port)

パラメータの説明

入力パラメータ 説明

.ip1 - .ip4

IPCのIPアドレスです。

.port

IPCのポート番号で、デフォルトのポート番号は50000です。

サンプル

CALL mm_init_skt(192,168,1,1,50000)

このサンプルを実行すると、接続するPCのIPアドレスは192.168.1.1、ポート番号は50000に設定されます。

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

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

プログラム

mm_start_vis(.job,.pos_num_need,.sendpos_type,.#start_vis)

パラメータの説明

入力パラメータ 説明

.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プロジェクトの「経路計画」ステップはロボットが送信する関節角度を初期位置姿勢として使用します。

.#start_vis

.sendpos_type=3の場合のみ、事前定義済みのロボットの関節角度データが使用されます。.sendpos_typeが3以外の場合、このパラメータの値は#start_visとすることができます。

サンプル

  • サンプル1:

    CALL mm_start_vis(1,1,1,#start_vis)

    このサンプルを実行すると、Mech-Visionプロジェクト1が実行されます。Mech-Visionプロジェクト1が1つのビジョン結果を返すことを期待します。ロボットは、#start_visデータを使用せずに、現在の関節角度とフランジデータをMech-Visionに送信します。

  • サンプル2:

    CALL mm_start_vis(1,1,3,#start_vis)

    このサンプルを実行すると、Mech-Visionプロジェクト1が実行されます。Mech-Visionプロジェクト1が1つのビジョン結果を返すことを期待します。ロボットは#start_visに保存した関節角度データをMech-Visionに送信し、経路計画設定ツールでの仮想ロボットに計画の開始位置を設定します。

ビジョン目標点の取得

Mech-Vizを使用せずMech-Visionを使用する場合に使用します。対応するMech-Visionプロジェクトからビジョン認識結果を取得します。

プログラム

mm_get_visdata(.job,.pos_num,.ret)

パラメータの説明

入力パラメータ 説明

.job

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

出力パラメータ 説明

.pos_num

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

.ret

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

サンプル

CALL mm_get_visdata(1,posnum,statuscode)

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

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

Mech-VisionとMech-Vizの両方を使用する場合に使用します。Mech-Vizプロジェクトを実行し、それに対応するMech-Visionプロジェクトも実行されます。この時Mech-Vizのシミュレーション上でロボットの初期関節位置が設定されます。

プログラム

mm_start_viz(.sendpos_type,.#start_viz)

パラメータの説明

入力パラメータ 説明

.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での仮想ロボットは現在設定された関節角度から一番目の経路点に移動します。

.#start_viz

.sendpos_type=2の場合のみ、この関節角度データが使用されます。.sendpos_typeが2以外の場合、このパラメータの値は#start_vizとすることができます。

サンプル

  • サンプル1:

    CALL mm_start_viz(1,#start_viz)

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

  • サンプル2:

    CALL mm_start_viz(2,#start_viz)

    対応するMech-Vizプロジェクトを実行し、#start_vizに保存した関節角度データをMech-Vizに送信します。

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

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

プログラム

mm_stop_viz

サンプル

CALL mm_stop_viz

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

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

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

プログラム

mm_get_vizdata(.getpos_type,.pos_num,.vispos_num,.ret)

パラメータの説明

入力パラメータ 説明

.getpos_type

取得する経路上の点の位置姿勢タイプを設定します。1または2に設定することができます。
1:Mech-Vizから返された位置姿勢タイプは、ロボットの関節角度です。
2:Mech-Vizから返された位置姿勢タイプは、ロボットツールの中心点の位置姿勢です。

出力パラメータ 説明

.pos_num

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

.vispos_num

最初の「ビジョン処理による移動」が経路全体における位置番号を保存するの変数です。例えば、「移動_1、移動_2、ビジョン処理による移動_1、移動_3」の場合、最初のビジョン処理による移動の位置は3です。ビジョン処理による移動が含まれていない場合、0を返します。

.ret

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

サンプル

CALL mm_get_vizdata(2,posnum,vis_index,statuscode)

このサンプルを実行すると、Mech-Vizから動作計画をTCP位置姿勢で取得します。受信した移動位置の数はposnumに保存されます。「ビジョン処理による移動」の位置番号はvis_indexに保存されます。ステータスコードはstatuscodeに保存されます。

ビジョン結果を取得

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

プログラム

mm_get_pose(.index,.&targetpos,.label,.speed)

パラメータの説明

入力パラメータ 説明

.index

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

出力パラメータ 説明

.&targetpos

指定された位置姿勢を記録するための変数です。変数の値を関節角度として示すために、必ず変数の名前の前に「#」をつけてください。

.label

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

.speed

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

サンプル

CALL mm_get_pose(1,&pt[1],pt_label[1],pt_speed[1])

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

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

Mech-Vizによって送信された関節角度を指定した変数に保存します。

プログラム

mm_get_jps(.index,.#targetpos,.label,.speed)

パラメータの説明

入力パラメータ 説明

.index

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

出力パラメータ 説明

.#targetpos

指定された関節角度を記録するための変数です。変数の値を関節角度として示すために、必ず変数の名前の前に「#」をつけてください。

.label

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

.speed

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

サンプル

CALL mm_get_jps(1,#pt[1],pt_label[1],pt_speed[1])

このサンプルを実行すると、最初に受信した関節角度を#pt[1]に、対応するラベルをpt_label[1]に、対応する移動速度をpt_speed[1]に保存します。

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

使用するMech-Visionプロジェクトの保存されたパラメータレシピを指定します。このコマンドは、MM_START_VIZの前に実行する必要があります。

プログラム

mm_switch_model(.job,.model_number)

パラメータの説明

入力パラメータ 説明

.job

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

.model_number

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

parameters of the formula

サンプル

CALL mm_switch_model(2,2)

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

Mech-Viz分岐を選択

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

choose branch

プログラム

mm_set_branch(.branch_num,.exit_num)

パラメータの説明

入力パラメータ 説明

.branch_num

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

.exit_num

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

サンプル

CALL mm_set_branch(1,3)

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

移動インデックスを設定

リストによる移動、グリッドによる移動、事前計画パレットパターン、カスタマイズのパレットパターンなど、インデック機能を持つ移動ステップは、このコマンドを実行することでインデックス値を設定することができます。 このコマンドを呼び出す前にmm_start_vizを実行する必要があります。

set index

プログラム

mm_set_index(.skill_num,.index_num)

パラメータの説明

パラメータ

入力パラメータ 説明

.skill_num

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

.index_num

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

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

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

サンプル

CALL mm_set_index(2,10)

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

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

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

プログラム

mm_get_status(.ret)

パラメータの説明

出力パラメータ 説明

.ret

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

サンプル

CALL mm_get_status(statuscode)

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

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

このパラメータは Mech-Visionプロジェクトに、対象物の寸法を動的に送信する場合に使われます。このコマンドはmm_start_visの前に実行する必要があります。

set size of box

プログラム

mm_set_boxsize(.job,.length,.width,.height)

パラメータの説明

入力パラメータ 説明

.job

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

.length

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

.width

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

.height

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

サンプル

CALL mm_set_boxsize(1,500,300,200)

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

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

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

プログラム

mm_get_property(.group_num,.return_value)

パラメータの説明

入力パラメータ 説明

.group_num

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

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は一意である必要があります。

出力パラメータ 説明

.return_value

指定されたステップのパラメータの値を返します。

サンプル

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

read, 5, 3, xCount

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

CALL mm_get_property(5,param_value)

このサンプルを実行すると、Mech-Vizプロジェクト内のステップ番号が3のxCountのパラメータ値がparam_value変数に格納されます。

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

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

プログラム

mm_set_property(.group_num)

パラメータの説明

入力パラメータ 説明

.group_num

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

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がキー名、0.000000がxOffsetに対応するパラメータ値、1.000000がyOffsetに対応するパラメータ値、2.000030がzOffsetに対応するパラメータ値を示します。

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

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

CALL mm_set_property(1)

このサンプルを実行すると、xOffset、yOffsetとzOffsに対応するパラメータ値がそれぞれ0.000000、1.000000と2.000030に設定されます。

吸盤のDO信号を取得

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

  • このコマンドを使用する前に、Mech-Visionの「経路計画」ステップまたはMech-Vizで吸盤のDO信号を設定する必要があります。

  • このコマンドは mm_get_vizdatamm_get_vispath または mm_get_plandata の後に呼び出す必要があります。つまり、ロボットが動作経路を取得し、「ビジョン処理による移動」の経路点に対応する吸盤のDO信号を取得します。

プログラム

mm_get_dolist(.resource)

パラメータの説明

入力パラメータ 説明

.resource

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

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

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

サンプル

CALL mm_get_vizdata(2,posnum,vis_index,statuscode)
CALL mm_get_dolist(0)

ロボット側のプログラムは、mm_get_vizdataを呼び出した後にmm_get_dolistを呼び出し、Mech-Vizから吸盤のDO信号を取得します。

吸盤のDO信号を設定

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

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

プログラム

mm_set_dolist()

サンプル

CALL mm_get_vizdata(2,posnum,vis_index,statuscode) ;receive path
CALL mm_get_dolist(0) ;receive DO from viz
CALL mm_get_pose(vis_index,pt1,label1,speed1) ; save the pick point to pt1
LAPPRO pt1,200
LMOVE pt1 ;move to pick point
CALL mm_set_dolist ;turn on DO for picking
twait 1 ;wait for gripping
LDEPART 200

上記のサンプルを実行すると、ロボットが「ビジョン処理による移動」の経路点に移動した後、mm_set_dolistを呼び出して対応する吸盤のDO信号値をONに設定します。

キャリブレーション

カメラの外部パラメータをキャリブレーションするときに使用します。Mech-Visionのカメラキャリブレーション機能と連動してキャリブレーションを自動的に行います。詳細については、 キャリブレーションの操作手順 をご参照ください。

プログラム

calibrate()

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

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

プログラム

mm_get_dydata(.job,.pos_num,.count,.ret)

パラメータの説明

入力パラメータ 説明

.job

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

出力パラメータ 説明

.pos_num

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

.count

返されたカスタマイズされたデータの数を保存するために使用されます。

.ret

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

このサンプルを実行した後、返されたビジョンポイントでの位置姿勢とラベルデータはmm_get_pose(.index,.&targetpos,.label,.speed) プログラムから取得できます。カスタマイズされたデータはvis_custom_data[]の2次元配列に格納されています。

サンプル

CALL mm_get_dy_data(1,pos_num,count,statuscode)

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

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

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

プログラム

mm_get_plandata(.resource,.getpos_type,.pos_num,.vispos_index,.ret)

パラメータの説明

入力パラメータ 説明

.resource

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

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

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

.getpos_type

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

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

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

    1

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

    2

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

    3

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

    4

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

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

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

    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の順に並べられています。

出力パラメータ 説明

.pos_num

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

.vispos_index

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

.ret

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

正常に呼び出された場合、返されたデータは下表のように固定変数に保存されます。

データ 変数 (i、jともに1から始まる)

J1-J6関節角度

vis_pos_j1[],vis_pos_j2[],vis_pos_j3[],vis_pos_j4[],vis_pos_j5[],vis_pos_j6[]

TCP位置姿勢データ(XYZOAT)

vis_pos_x[],vis_pos_y[],vis_pos_z[],vis_pos_o[],vis_pos_a[],vis_pos_t[]

速度

vis_pos_spd[i]

移動方式

vis_pos_type[i]

ツール番号

vis_pos_tool[i]

「ビジョン処理による移動」であるか

vis_pos_vismove[i]が1であれば、経路点は「ビジョン処理による移動」の経路点であり、そうでなければ「ビジョン処理による移動」以外の経路点です。

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

vis_custom_data[i,j]

  • vis_pos_vismove[i]が1の場合のみ、vis_custom_data[i,j]は値を持ちます。

  • jはカスタマイズされたデータの数で、num_customdata[i]に格納されます。

Mech-VisionまたはMech-Vizの「ビジョン処理による移動」の計画結果

vis_plan_result[i,j]

vis_pos_vismove[i]が1の場合のみ、vis_custom_data[i,j]は値を持ちます。

vis_plan_result[i,j]変数の詳細を下表に示します。

データ 説明 変数

把持するワークのラベル

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

vis_plan_result[i,1] ~ vis_plan_result[i.10]

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

今回把持されたワークの数となります。

vis_plan_result[i,11]

今回把持されたワークの数となります。

今回把持されたワークの数となります。

vis_plan_result[i,12]

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

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

vis_plan_result[i,13]

TCPオフセット

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

vis_plan_result[i,14] ~ vis_plan_result[i,16]

ワーク群の向き

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

vis_plan_result[i,17]

単体ワークの向き

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

vis_plan_result[i,18]

ワーク群の寸法

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

vis_plan_result[i,19] ~ vis_plan_result[i,21]

サンプル

CALL mm_get_plandata(0,3,pos_num,vispos_index,statuscode)

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

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

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

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

プログラム

mm_get_vispath(.job,.getpos_type,.pos_num,.vispos_num,.ret)

パラメータの説明

入力パラメータ 説明

.job

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

.getpos_type

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

出力パラメータ 説明

.pos_num

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

.vispos_num

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

.ret

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

サンプル

CALL mm_get_vispath(1,1,posnum,vis_index,statuscode)

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

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

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

プログラム

mm_get_notify(.msg)

パラメータの説明

出力パラメータ 説明

.msg

通知メッセージを保存します(現在は整数のみがサポート)。

サンプル

CALL mm_get_notify(notifymsg)

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

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

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