<< 前へ        次へ >>

ID : 5346

TrackApproach

機能

追従動作を行いながら、トラッキング対象ワークから指定距離離れたアプローチ位置へ移動します。

このコマンドはVer.1.6.*から有効です。

構文

TrackApproach 動作補間, 基準位置, アプローチ長[, 動作オプション]

指定項目

動作補間
動作の補間方法を指定します。"P"/"PTP"でPTP補間動作、"L"でCP補間動作します。
基準位置
TrackTargetPos」で取得したトラッキング対象ワークを表すポジション型データを指定します。
TrackTargetPos」で取得したポジション型データに位置・姿勢のオフセットを加えたものを指定することも可能です。
アプローチ長
アプローチ長を単精度実数型データで指定します。アプローチ長には目標位置オプションを付加できます。
動作オプション
動作オプションを指定できます。

解説

追従動作を行いながら、トラッキング対象ワークから指定距離離れたアプローチ位置へ移動します。
このコマンドを実行するにはタスクがロボット軸の制御権を取得しなければなりません。
TrackTargetPos」で取得したポジション型データを、第2引数の「基準位置」にそのまま指定した場合、ロボットの姿勢は、ワーク把持基本姿勢になります。

ただし、円形トラッキングの場合は異なります。

円形トラッキングの場合、トラッキング範囲上流限界から、ロボットが追従したところまでの角度分、手先の姿勢が回転します。

回転させる元の姿勢は、第2引数の「基準位置」によって異なります。

第2引数の「基準位置」に、「TrackTargetPos」で取得したポジション型データをそのまま指定した場合、トラッキング範囲上流限界位置の姿勢が回転させる元の姿勢となります。

TrackTargetPos」で取得したポジション型データに、後述の"姿勢の補正方法について"で説明している補正量を加えたものを、第2引数の「基準位置」に指定した場合は、トラッキング範囲上流限界位置の姿勢に補正量を加えた姿勢が、回転させる元の姿勢となります。

なお、円形トラッキングでも、ロボットの姿勢を第2引数の「基準位置」で指定した位置の姿勢に保たせることができます。

その場合は、TrackStartコマンドにて、手先の姿勢の制御方法を切替えます。詳細は、TrackStartコマンドの指定項目"オプション設定"を参照してください。

手先の姿勢については"手先の姿勢制御の種類"を参照してください。

姿勢の補正方法について

ビジョンセンサが検出したワークの向きに応じて、ロボットの姿勢を補正する場合には、下記に示すようにTrackBufferReadにてビジョンセンサが検出したワークの姿勢角度を取得して、第2引数「基準位置」の姿勢成分(Rx, Ry, Rz)に対して補正量を加えてください。

[Ver.2.0.*より前]

バッファからワークのデータを取り出し、トラッキング対象ワークに設定
P[10] = TrackTargetPos(1, -1, -1, 1)
トラッキング対象のワークのインデックス番号を取得
vIndex = TrackBufferIndexes(1, 1)
姿勢成分に対してワークの姿勢角度を加える
LetRZ P10 = PosRZ(P10) + TrackBufferRead(1, vIndex(0), 10)
バッファからトラッキング対象のワークのデータを削除
TrackTargetRelease 1

[Ver.2.0.*以降]

バッファからワークのデータを取り出し、トラッキング対象ワークに設定
P[10] = TrackTargetPos(1)
姿勢成分に対してワークの姿勢角度を加える
LetRZ P10 = PosRZ(P10) + TrackBufferRead(1, -1, 10)

注意事項

  • コンベアおよび円形トラッキング専用のコマンドです。
  • TrackStartと、TrackStopの間でのみ使用可能です。
  • 外部速度、内部速度による制限は、作業動作である「Approach」動作にのみ効果があります。
    追従動作に対しては効果がありません。

  • Approach」動作とは違い、引数で指定した静止目標位置そのものには移動しません。
  • ツール定義、ワーク定義の変更を記述する位置によって、ロボットの動作目標位置が異なることに注意してください。
    1. 1. 「TrackTargetPos」よりも前に定義変更を行う場合

      ChangeTool 1
      ChangeWork 1
      
      P[10] = TrackTargetPos(1,-1,1)
      TrackApproach P, P[10], 100

      ロボットの動作目標位置は、ツール定義、ワーク定義の変更の影響を受けません。

      2. 「TrackTargetPos」よりも後に定義変更を行う場合

      P[10] = TrackTargetPos(1,-1,1)
      
      ChangeTool 1
      ChangeWork 1
      
      TrackApproach P, P[10], 100

      ロボットの動作目標位置は、ツール定義、ワーク定義の変更の影響を受けます。
      変更後のツール定義、ワーク定義の分だけ、ロボットの動作目標位置がオフセットします。

用例

-

ID : 5346

<< 前へ        次へ >>