警告

現在、このドキュメントの古いバージョンをご覧いただいています。 最新の情報をご希望の場合は、下記をご参照してください 5.0 .

get_part

パラメータ

  • なし

戻り値

  • 200 x=<x> y=<y> rz=<rz> は、<x><y><rz> は、ここでは部品の座標と向きです。その他の場合は 、エラーコード を参照してください。

注釈

座標値は、10進数で小数点以下5桁(例:x = 10.00000 )で、角度は小数点以下2桁(例:rz = 1.00 )となっています。

説明

1個、または複数の部品の座標値を要求します。

応答される部品数は、 部品数 のパラメータ(表 31 を参照) を用いて変更することができます。このパラメータは初期設定では「1」に設定されています。

注釈

get_part が保留中に、 部品数 を変更しても、その変更が反映しないことに注意してください。 get_part 完了後の次に実行して初めて、新しく設定された 部品数 が反映されます。

注釈

このコマンドは、部品数 の部品が見つかり応答できるようになるまで、ブロックします(割り込みを受け付けません)。初期設定では、30秒のタイムアウトが設定されています。この時間を過ぎても要求された数の部品が見つからなかった場合は、コマンドからエラーを返します。タイムアウト時間は get_part を呼び出す前に調整することができます(set_parameter を参照)。

初期設定の動作は、part_quantity = 1

コマンド get_part は,良い候補の座標を返します。このコマンドには異なる動作があります。

  • 初めてのコマンドコール では、それが自動運転全体においての初めてのコマンドコールである場合は、get_part は次のの手順で実行してください。

    • コマンドを呼び出すと、画像を取得して解析します。もし、良い部品が見つからなければ、振動シーケンスを開始し、画像解析を行います。この2つの動作は、少なくとも1つの良い部品が見つかるまで繰り返されます。

    • 最低1つの部品が見つかったら、見つかった全部品の座標値を合格品リストに保存します。そして、そのリスト上の最初の部品の座標値がお客様に送信されて、リストから消去されます。

  • 標準動作 では、 良い候補のリストに既に1個以上の部品がある場合、get_part コマンドは、最初の部品の座標値をお客様に送信し、リストから消去します。画像は取得されず、振動シーケンスも実行されません。

  • 現在部品なし では、リストに部品がない場合、get_part コマンドは次の手順を実行します。

    • コマンドを呼び出すと、振動シーケンスが開始し、続いて画像解析を実行します。この2つの動作は、少なくとも1つの良い部品が見つかるまで繰り返されます。

    • 最低1つの部品が見つかったら、見つかった全部品の座標値を合格品リストに保存します。そして、そのリスト上の最初の部品の座標値がお客様に送信されて、リストから消去されます。

part_quantity = n での動作原理

It changes the minimum number of good candidates that must be found each time the get_part command is called. The quantity of parts can be changed with the command set_parameter.

get_part コマンドは、Asycube上で少なくともn個の良い候補を取得するか、 timeout に達するまで停止しません。

警告

EYE+ がお客様にn個の座標値を送ると、次のステップではこれらの部品がすべてピックアップされると想定できます。その場合は、それらの部品の座標値は良い候補リストから消去されます。

使用例

get_part
200 x=0.12345 y=0.11111 rz=0.99

set_parameter part_quantity 3
get_part
200 x=0.12345 y=0.11111 rz=0.99 x=3.67890 y=200.45612 rz=1.54 x=120.37000 y=-20.48484 rz=0.00