10.トラッキング命令

トラッキング命令はトラッキングプログラム実行のために使用されます。

トラッキング命令を実行することによって、エンコーダ設定とトラッキング設定の関連する値が変更されます。

エンコーダテイギ

エンコーダテイギ命令は現在のトラッキングエンコーダ番号を定義します。エンコーダのパラメータを設定するためにシステム変数$LNSNRSCHの内容をシステム変数$ENC_STATにコピーします。

図120.エンコーダテイギ

エンコーダテイギ

図121.ツウカジカン

ツウカジカン

ツウカジカン

ツウカジカン命令を実行すると、位置レジスタ[z]の位置が、ライントラッキングスケジュール[y]で定義された境界の外へ出ていくまでの時間(sec)が計算されて、レジスタ[x]に保存されます。トリガ[u]には、トリガ値が格納されたレジスタの番号を指定します。この命令を実行する時には、コンベア速度を使用します。そのため、本命令を実行した後、コンベア速度が変更されると、推定した時間は正しくなくなってしまいます。また、コンベアが止まっている場合には、無限大ではなく大きな値がレジスタに格納されます。

この命令は、ワークを取り出す時点で、ワークが領域外にあるかどうかを推定する場合に使用されます。例えば、

1 ツウカジカン[10] トラッキング[1] イチレジ[1] トリガ[20]
2 モシ レジ[10]<レジ[12] ジャンプ ラベル[2]
3 ヨビダシ PICK_PART
4 ラベル[2]:

レジスタ[12]にはプログラム「PICK_PART」を実行した時の平均時間を格納します。トリガの値はレジスタ[20]に格納します。本プログラムは、ワークが領域に来るのを待っている間に、メインプログラムでツールを回転させる時間があるかどうかを判定するために使用します。この方法を用いることで、ツールの回転に余計な時間をかける必要がなくなります。

エンコーダ

エンコーダ命令は使用するエンコーダを有効にします。

図122.エンコーダ

エンコーダ

エンコーダシミュレート

エンコーダシミュレート命令はシミュレーションを有効にします。トラッキングをシミュレーションするために、エンコーダを有効にしておく必要があります。この命令で設定するエンコーダ速度の単位は、カウント/更新です。

図123.エンコーダシミュレート

エンコーダシミュレート

エンコーダカウント

エンコーダカウント命令は、現在のエンコーダの値をレジスタに出力します。ワーク検出時のコンベアの位置を記録する際は、トリガを検出した直後に、この命令を使用して下さい。

図124.エンコーダカウント

エンコーダカウント

エンコーダソクド

エンコーダソクド命令は、エンコーダ(平均)速度(カウント/アップデート周期)をレジスタに出力します。

図125.エンコーダソクド

エンコーダソクド

エンコーダテイシ

エンコーダテイシ命令は、エンコーダの速度と停止しきい値を見て、エンコーダが停止していると判断された場合、1をレジスタに出力します。止まっていないと判断された場合は0が出力されます。

図126.エンコーダテイシ

LINESTOP

トリガセッテイ

トリガセッテイ命令は、レジスタに格納されている値を指定されたスケジュールの中のトリガ―値に設定します。通常は、上記のエンコーダカウント命令で取り込んだエンコーダカウントの値がレジスタに格納されています。

図127.トリガセッテイ

トリガセッテイ

リョウイキセッテイ

リョウイキセッテイ命令は、指定されたトラッキングスケジュールの境界データを設定します。位置レジスタの値は、ワールド座標系上のデータです。

図128.リョウイキセッテイ

リョウイキセッテイ

リョウイキセンタク

リョウイキセンタク命令はトラッキングスケジュールの境界領域の組を選択します。

図129.リョウイキセンタク

リョウイキセンタク

トラッキングスケジュールの設定を完了させると、トラッキングプログラム中で、そのスケジュールを使用できるようになります。各プログラムでは、トラッキング動作で使用するスケジュール番号を指定する必要があります。スケジュール番号は、プログラムを作成する時またはプログラムの「詳細」画面上で選択します。この命令は、これらのプログラムで使用されるトラッキングスケジュール内で設定されている境界領域の番号を変更したい時に利用します。以下の例を参照ください。

JOB10 
1:リョウイキセンタク トラッキング[1] リョウイキ[1] 
2:ヨビダシ PROC1001 
3:リョウイキセンタク トラッキング[2] リョウイキ[1] 
4:ヨビダシ PROC1002 
5:リョウイキセンタク トラッキング[1] リョウイキ[2] 
6:ヨビダシ PROC1003

この例では、PROC1002のスケジュール番号は2に設定されています。他のプログラムのスケジュール番号は1となっています。

トラッキング テイシ

トラッキング テイシ命令は、内部のトラッキングプログラムで、トラッキング動作を一時停止する命令です。次の目標点が領域に入るまでロボットが動きません。

トラッキング テイシ命令は円弧トラッキングでは使用することができません。円弧トラッキングプログラム中ではトラッキング テイシ命令は働きません。(ないものとして扱われます。)

例えば、

チョクセン イチ[1] 1000mm/sec ナメラカ100

タイキ DI[10] = オン

チョクセン イチ[2] 1000mm/sec ナメラカ100

上記プログラムでは、位置[1]に到着した後、待機の条件(DI[10]=オン)を満たすまで、コンベアと一緒に移動している位置[1]に追従して動作します。この後、待機の条件が満たされ、位置[2]が領域に入ると、ロボットは位置[2]への移動を始めます。このプログラムにトラッキング テイシ命令を加え、以下のように変更すると、ロボットは位置[1]に到着した後、その場で一時停止します。この後、待機の条件が満たされ、位置[2]が領域に入るまで、ロボットは停止し続けます。

チョクセン イチ[1] 1000mm/sec ナメラカ100

トラッキング テイシ

タイキ DI[10] = オン

チョクセン イチ[2] 1000mm/sec ナメラカ100

コウセイドトリガ

コウセイドトリガ命令はI/Oが立上がり(オフからオン)でトリガした時に、時間を設定するために割り込みルーチンを起動します。エンコーダカウント命令は、この時間を使ってエンコーダカウントを取出します。

コウセイドトリガ命令はプログラムがデジタル入力を待機する前に使用してください。例えば、

コウセイドトリガトラッキング[1]

タイキ DI[1] = オフ

タイキ DI[1] = オン

エンコーダカウント[1] レジ[1]

トリガセッテイ[1] レジ[1]

コウセイドトリガ命令を使用するためには、以下のシステム変数を設定する必要があります。

$LNCFG.$SLC_PT_TRIG=TRUE

このシステム変数の変更を有効にするためには、制御装置の電源をオフ/オンしてください。コウセイドトリガ命令が使用されていないのであれば、このシステム変数はFALSEとしてください。

図131.コウセイドトリガ

コウセイドトリガ

トラックフレーム

トラックフレーム命令は位置レジスタの値にトラッキングスケジュールのトラッキングユーザ座標系を設定します。

図132.トラックフレーム

トラックフレーム

ビジョンフレーム

ビジョンフレーム命令は位置レジスタの値に従ってトラッキングユーザ座標系を設定します。位置レジスタの位置データはロボットのワールド座標系に対するトラッキングユーザ座標系です。

図133.ビジョンフレーム

ビジョンフレーム