高速カウンタとパルス出力命令が使用可能なFPシリーズPLC:FP0、FP-e、FPS、FP-X、FP0R。
FP-X、リレー出力タイプ:パルス出力機能は、パルス入出力カセット(AFPX-PLS)が装着されている場合のみ使用することができます。
センサやエンコーダからの入力パルスをカウントし、設定した目標値に達したとき、出力をTRUEまたはFALSEに切り替える用途に高速カウンタ命令を使う。
モータドライバと組み合わせて、台形制御、原点復帰、JOG運転などの位置決め制御に、パルス出力命令を使う。
搭載されている高速カウンタやパルス出力の点数、計数範囲、割り付けられる入出力番号などの仕様は、PLC機種によって異なります。詳細については、それぞれのユーザーズマニュアルをご参照ください。
高速カウンタ命令を使用する場合: あらかじめ、使用するチャンネルの高速カウンタ入力の方法をシステムレジスタに指定してください。
位置制御モードは、位置決めコマンドで使用している変数によって指定します。
パルス出力方式は、パルス出力命令で使用している変数によって指定します。
CW/CCW
2つのパルスを使用して制御する方法です: 正転あるいは時計方法の回転のパルス(CW)と、逆転あるいは反時計方法の回転のパルス(CCW)を使用します。
PLS/SIGN
正転 FALSE
このモードでは、方向出力信号がFALSEのとき、正転になります。
正転 TRUE
このモードでは、方向出力信号がTRUEのとき、正転になります。
制御コードは、特殊カウンタ操作を行うために使用します。
F命令によるプログラミング時:
MOVE命令を使用して、制御コード用に確保された特殊データレジスタ(DT90052またはDT9052、番号はPLC機種によって異なります)に対して制御コードを書き込みまたは読み出します。高速カウンタおよびパルス出力制御コードが格納されている特殊データレジスタは、システム変数sys_wHscOrPulseControlCodeを使用して読み出し、書き込みすることができます。
Tool命令によるプログラミング時:
すべてのPLC機種に適用される汎用の高速カウンタ制御命令とパルス出力制御命令を使用して制御コードを設定することができます。高速カウンタ情報命令とパルス出力情報命令を使用して制御コード設定をモニタします。
経過値は、ダブルワードのデータとして、特殊データレジスタに格納されます。
F命令によるプログラミング時:
システム変数sys_diHscChannelxElapsedValueを使用して特殊データレジスタを読み出し、書き込むことができます。(x=チャンネルNo.を示します。)
チャンネル番号は、高速カウンタ命令、あるいはパルス出力命令の入力パラメータとして設定します。その他のパラメータ(速度や目標値など)は、あらかじめ用意されている DUT に設定します。これらの DUT はFP Library に登録されています。
Tool命令によるプログラミング時:
すべてのPLC機種に適用される汎用の高速カウンタ情報 / 制御命令とパルス情報 / 制御命令を使用して経過値を読み出し、書き込むことができます。
チャンネル番号と制御コード設定(例:CW/CCW、アブソリュートまたはインクリメンタル、デューティ比など)は、すべてのPLC機種に共通のチャンネルコンフィグレーションDUTで指定します。その他のパラメータ(速度や目標値など)は、命令に直接割り付けることができます。
高速カウンタまたはパルス出力のステータスは、特殊内部フラグに格納されます。特殊内部フラグへの読み出し、書き込みは、PLCに依存しないシステム変数を使用します。
高速カウンタ命令が実行されると、対応するチャンネルの高速カウンタ制御中フラグsys_bIsHscChannel0ControlActiveがTRUEになり、このフラグがTRUEの間は、同じチャンネルに対して他の高速カウンタ命令を実行することはできません。
パルス出力命令が実行され、パルスが出力されている間は、対応するチャンネルのパルス出力命令制御中フラグ(例: sys_bIsPulseChannel0Active)がTRUEになります。このフラグがTRUEのときは、他のパルス出力命令を実行することはできません。
FP-X、FP0R:
高速カウンタ制御フラグ(例: sys_bIsHscChannel0ControlActive)とパルス出力制御フラグ(例: sys_bIsPulseChannel0Active)は異なる特殊内部フラグに割り付けられています。
FP-Sigma、FP0、FP-e:
高速カウンタ制御中フラグ(例: sys_bIsHscChannel0ControlActive)とパルス出力制御中フラグ(例: sys_bIsPulseChannel0Active)は、同じ特殊内部フラグの番号に割り付けられています(例: R903A)。従って、高速カウンタ命令またはパルス出力命令が実行されているときは、使用しているチャンネルに対応する、高速カウンタ制御中フラグ(例: sys_bIsHscChannel0ControlActive)とパルス出力制御中フラグ(例: sys_bIsPulseChannel0Active)がTRUEになります。このフラグがTRUEの間は、同じチャンネルに対して、他の高速カウンタ命令、あるいはパルス出力命令を実行することはできません。高速カウンタ制御フラグとパルス出力制御フラグのステータスは、スキャンが実行されている間に変化します。例えば、受信バイト数が2回以上読み出された場合、1スキャン内で異なる状態が存在することがあります。
特殊データレジスタや特殊内部フラグの読み出し、書き込みを行うには、個々のPLCに用意されているシステム変数を使用してください。
位置決めプログラムの作成にあたっては、強制停止ができるようにプログラミングすることをおすすめします。