ID : 5353
TrackTargetPos
構文
TrackTargetPos (コンベア番号[, タイムアウト時間[, ユーザデータ[, モード設定[, 残り時間]]])
指定項目
- コンベア番号
-
使用するコンベア番号(1~16)を整数型データで指定します。
(Ver.1.11.*以前はコンベア1、コンベア2のみ指定可能です。) - タイムアウト時間
-
タイムアウト時間を整数型データで指定します。単位は[msec]です。"-1"をセットすると無限待ちになります。ユーザデータをセットしない場合は省略可能です。省略した場合は無限待ちになります。
タイムアウト時間が経過した場合、レベル1のエラーが発生します。エラー発生時にプログラムを停止することなく処理を続行したい場合は、「On Error」コマンドを使用してください。 - ユーザデータ
- 指定されたユーザデータ値が設定されたワークのみをトラッキングバッファから取り出すことが可能となります。
整数型データで指定します。省略可能です。省略した場合は、ユーザデータの判定をしません。負の値を入れると、省略と同じ扱いになります。
ユーザデータは、「TrackSetVision」、 「TrackSetSensor」でワーク毎に設定することが可能です。 - モード設定
-
整数型データで指定します。省略可能です。省略した場合は、"-1"を指定したことになります。
3つのモードがあり、複数のモードを同時に有効にすることが可能です。設定値の組み合わせは、以下の通りです。設定値 モード1 有効 モード2 有効 モード3 有効 1 ◯ - - 2 - ◯ - 3 ◯ ◯ - 4 - - ◯ 5 ◯ - ◯ 6 - ◯ ◯ 7 ◯ ◯ ◯ -1 - - - 各モードの機能内容は以下の通りです。
モード 設定 内容 モード1 有効 ワークのデータはトラッキングバッファ内に残したまま、ワークのデータのコピーを使用します。 無効 トラッキングバッファからワークのデータを取り出す際に、トラッキングバッファ内のデータは削除します。 モード2 有効 トラッキングバッファの先頭から順に取り出します。 無効 トラッキングバッファの末尾から順に取り出します。 モード3 有効 トラッキング範囲下流限界を越したワークのデータも取り出す対象に含めます。
トラッキング範囲に収まらない長いワークをトラッキングさせる際に使用します。無効 トラッキング範囲下流限界を越したワークのデータは取り出す対象に含めません。 - 残り時間
-
下流限界までの残り時間を整数型データで指定します。単位は[msec]です。
この値と現在のコンベア速度から算出された範囲は、探索範囲から除外します。
"-1"をセットするとトラッキングエリア全体が探索範囲になります。省略可能です。省略した場合は"-1"をセットしたことになります。
この機能はVer.2.3.*から有効です。
戻り値
トラッキング対象に設定されたワークを表すポジション型データです。
現在のワーク座標系およびツール座標系が反映された値です。
このデータは、常に、静止した位置であるコンベア基準位置を指し示します。
このデータを、「TrackMove」コマンドの目標位置および、「TrackApproach」コマンドの基準位置として使用します。
解説
トラッキングバッファの中から、ワーク位置がトラッキング範囲内に入っているものを順次取り出します。
取り出されたワークデータはトラッキング対象ワークとして設定されます。トラッキングバッファの中に取り出す対象のワークのデータが存在しない場合、第2引数のタイムアウト時間が経過するまで、その行で待機します。
タイムアウト時間が経過した場合、レベル1のエラーが発生します。
関連項目
TrackBufferDelete、 TrackBufferIndexes、 TrackBufferRead、 TrackCount、 TrackCurStartArea、 TrackInRange、 TrackOffsetMargin、 TrackSetSensor、 TrackSetVision、 TrackStartArea、 TrackTargetRelease、TrackShiftTarget、 コンベアトラッキング用コマンド、 円形トラッキング用コマンド
注意事項
- コンベアおよび円形トラッキング専用のコマンドです。
- このコマンドはトラッキングバッファ内データのソートを行なうため、トラッキングバッファ内データの数が多くなると値を返すまでの応答時間が長くなります。
- TrackTargetPosでトラッキングバッファから対象のワークを選択した後に、同一ワークを視覚で検出してTrackSetVisionで登録を行うと、別ワークとして登録されます。TrackTargetPosの範囲が、視野と重なる場合には注意してください。
用例
P[10] = TrackTargetPos(1, -1, 1)
コンベア1のユーザデータ1のワークのデータが、トラッキングバッファから取り出せるまで無限待ちする。
P[10] = TrackTargetPos(1, -1, -1, 1, 1000)
下流限界までの残り時間が1000ms以下のワークは、対象ワークとして選択されない。
ID : 5353