31.5.6.7 一致出力 - 高速カウンタ(単相設定、LTシリーズ)

一致出力とは、あらかじめ設定したプリセット値とカウンタ現在値を比較し、現在値がプリセット値を超えたときにONまたはOFFになる出力です。一致出力機能を使用する場合、システム変数(#L_ExIOSpCtrl)の[一致出力動作制御]ビットをONにする必要があります。

一致出力のON/OFFが切り替わるタイミングは、LT3000シリーズとLT4000シリーズで異なります。

一致出力の動作

ONプリセット値/OFFプリセット値

設定概要

GP-Pro EXでの設定手順

プリセット値の変更方法

特殊I/Oパラメータ変更要求

プリセット値の異常ステータス

一致出力動作制御

一致出力ステータス

一致出力動作中の出力クリア機能

一致出力端子ステータス

一致出力の動作

一致出力と一致出力を制御するシステム変数の動作を説明します。

カウンタモードは[リング]、カウンタ動作は[アップカウント]、ONプリセット値は「-100」、OFFプリセット値は「100」です。

#L_ExIOSpCtrl_a: 高速カウンタ制御ビット

#L_HSC*_HCV: カウンタ現在値

#L_ExIOSpCtrl_b: 一致出力設定ビット

#L_ExIOCntInCtrl_b: 一致出力クリア要求ビット

0: 一致出力信号

カウンタ現在値がプリセット値を超えるタイミングで一致出力のON/OFFが切り替わります。システム変数を使い、強制的に一致出力をOFFにすることができます。

1) 高速カウンタ制御(#L_ExIOSpCtrl_a)をONにして、カウント処理を開始します。一致出力(y0)は、OFFのままです。

2) 一致出力設定(#L_ExIOSpCtrl_b) をONにすると、一致出力機能が有効になります。

3) カウンタ現在値(#L_HSC*_HCV)が100になりOFFプリセット値と一致した後、101になるタイミングで一致出力(y0)はOFFになります。一致出力がOFFの場合は、OFFの状態が保たれます。

4) カウンタ現在値(#L_HSC*_HCV)が-100になりONプリセット値と一致した後、-99になるタイミングで一致出力(y0)はONになります。一致出力がONの場合は、ONの状態が保たれます。

5) 一致出力設定(#L_ExIOSpCtrl_b)をOFFにすると、一致出力(y0)はOFFになります。一致出力設定をONにしても一致出力はOFFのままです。

6) 一致出力クリア要求(#L_ExIOCntInCtrl_b)をON にすると、一致出力(y0)はOFFになります。一致出力クリア要求をOFFにしても一致出力はOFFのままです。

7) カウンタ現在値とOFFプリセット値と同じ値(100)になった瞬間にカウンタ現在値を変更すると、一致出力(y0)の値は変化しません。

カウンタ現在値とプリセット値の比較結果で一致出力が変化します。システム変数を使い、強制的に一致出力をOFFにすることができます。カウント処理の途中で一致出力機能が有効になった場合や、カウンタ現在値を変更した場合でも、変更時のカウンタ現在値と各プリセット値を比較し、一致出力のON/OFFが決まります。

1) 高速カウンタ制御(#L_ExIOSpCtrl_a)をONにして、カウント処理を開始します。一致出力(y0)は、OFFのままです。

2) 一致出力設定(#L_ExIOSpCtrl_b) をONにすると、一致出力機能が有効になります。このとき、カウンタ現在値がONプリセット値(-100)とOFFプリセット値(100)の間にあるので、一致出力(y0)はONになります。

3) カウンタ現在値(#L_HSC*_HCV)がOFFプリセット値(100)と同じ値になると一致出力(y0)はOFFになります。

4) カウンタ現在値(#L_HSC*_HCV)がONプリセット値(-100)と同じ値になると一致出力(y0)はONになります。

5) 一致出力設定(#L_ExIOSpCtrl_b)をOFFにすると、一致出力(y0)はOFFになります。一致出力設定をONにすると、カウンタ現在値とプリセット値によって一致出力の値が決まります。

6) 一致出力クリア要求(#L_ExIOCntInCtrl_b)をONにしている間、一致出力(y0)はOFFになります。

7) カウンタ現在値(#L_HSC*_HCV)がOFFプリセット値(100)と同じ値になると一致出力(y0)はOFFになります。

ONプリセット値/OFFプリセット値

ONプリセット値とOFFプリセット値の値によって、一致出力は以下のようになります。

ONプリセット < OFFプリセット

OFFプリセット < ONプリセット

 

#L_HSC*_HCV: カウンタ現在値

A: ONプリセット

B: OFFプリセット

y: 一致出力

設定概要

一致出力の設定手順とシステム稼動後のプリセット値変更手順の概要を示します。各プリセットの変更は、システム変数やロジック命令にて変更することができます。ここでは、システム変数での手順を記載します。

初期値設定手順

  1. GP-Pro EXで一致出力機能を有効にする

  2. 各プリセット値を設定

システム稼動後の変更手順

  1. システム変数"#L_HSC*_ONP"にONプリセット値を、"#L_HSC*_OFP"にOFFプリセット値を設定

  2. システム変数"#L_ExIOSpParmChg"の「特殊I/Oパラメータ変更要求」を実行

  3. システム変数"#L_ExIOSpParmChg"の「特殊I/Oパラメータ変更完了」でパラメータが変更されたことを確認

  4. システム変数"#L_ExIOSpCtrl"の「一致出力設定」で一致出力を有効にする

  5. システム変数"#L_ExIOSpCtrl"の「一致出力設定状態」で確認

GP-Pro EXでの設定方法

一致出力を使用するには、GP-Pro EXで一致出力を有効にし、プリセット値を設定しておきます。

  1. メニューの[プロジェクト]-[システム設定]-[I/Oドライバ設定]をクリックし、[内部ドライバ1]画面で「一致」にチェックを入れ、[高速カウンタ設定]をクリックします。

  2. [高速カウンタ設定]ダイアログボックスの一致出力から指定します。


  3. LT4000シリーズ

  1. [プロジェクト]メニューの[システム設定]-[I/Oドライバ設定]をクリックし、[機能]で[高速カウンタ]を選択します。

  2. [一致出力]にチェックを入れ、[ONプリセット値]および[OFFプリセット値]を設定します。

プリセット値の変更方法

システム変数やロジック命令を使い、プリセット値の変更ができます。ここでは、システム変数での手順を記載します。

1) システム変数"#L_HSC*_ONP"にONプリセット値を、"#L_HSC*_OFP"にOFFプリセット値を書き込みます。

2) システム変数"#L_ExIOSpParmChg"の特殊I/Oパラメータ変更要求ビット(a)をONにし、特殊I/OのONプリセット(NPV)やOFFプリセット(FPV)の値を書き換えます。

3) 特殊I/Oのパラ―メタ書き換えが終了すると、システム変数"#L_ExIOSpParmChg"の特殊I/Oパラメータ変更完了ビット(e)がONになります。

4) 書き換えが終了したことを確認してから、特殊I/Oパラメータ変更要求ビット(a)をOFFにします。特殊I/Oパラメータ変更要求ビットをOFFにすると自動的に特殊I/Oパラメータ変更完了ビット(e)がOFFになります。

5) システム変数"#L_ExIOSpParmChg"の特殊I/Oパラメータ読み出し要求ビット(b)をONにし、現在のONプリセット値、OFFプリセット値を#L_HSC*_ONP、#L_HSC*_OFPに読み出します。

6) 特殊I/Oのパラ―メタ読み出しが終了すると、システム変数"#L_ExIOSpParmChg"の特殊I/Oパラメータ読み出し完了ビット(f)がONになります。

7) 読み出しが終了したことを確認してから、特殊I/Oパラメータ読み出し要求ビット(b)をOFFにします。特殊I/Oパラメータ読み出し要求ビットをOFFにすると自動的に特殊I/Oパラメータ読み出し完了ビット(f)がOFFになります。

特殊I/Oパラメータ変更要求

#Ex_IOSpParmChg

 

ビット番号

機能

種類

詳細

LT

4000

3000

a

4(n-1)+0

特殊I/Oパラメータ変更要求

コントロール
立上り

特殊I/Oの設定値の書き換えを行います。システム変数に設定した値を特殊I/Oのパラメータに書き込みます。

b

4(n-1)+1

特殊I/Oパラメータ読み出し要求

コントロール
立上り

特殊I/Oのパラメータ値をシステム変数に読み出します。

e

4(n-1)+16

特殊I/Oパラメータ変更完了

ステータス

ビット(a)によるパラメータの変更が完了するとONになります。

ビット(a)をOFFにすると、このビットも自動的にOFFになります。

f

4(n-1)+17

特殊I/Oパラメータ読み出し完了

ステータス

ビット(b)によるパラメータの読み出しが完了するとONになります。

ビット(b)をOFFにすると、このビットも自動的にOFFになります。

プリセット値の異常ステータス

一致出力のONプリセット値およびOFFプリセット値の異常ステータスを示します。システム変数(#L_IOStatus[1])でエラーコード100が表示された場合、システム変数(#L_ExIOSpParmErr)の値により異常のステータスを確認することができます。どのCHに高速カウンタを割り付けたのかによって監視ビットが異なります。

#L_ExIOSpParmErr

a:CH1のカウンタプリセット値異常

[1]:プリセット値異常発生

[0]:正常

b:CH2のカウンタプリセット値異常

[1]:プリセット値異常発生

[0]:正常

c:CH3のカウンタプリセット値異常

[1]:プリセット値異常発生

[0]:正常

d:CH4のカウンタプリセット値異常

[1]:プリセット値異常発生

[0]:正常

e:カウンタ入力制御異常

[1]:プリセット値制限異常発生(プリセット値の下位16ビットがFFFFhまたは0000h)

[0]:正常

一致出力動作制御

一致出力を有効または無効にさせることができます。一致出力は、システム変数(#L_ExIOSpCtrl)にある各CH特殊I/O動作制御の一致出力フラグをONにすることで有効にし、OFFにすることで無効にします。どのCHに高速カウンタを割り付けたのかによって操作ビットが異なります。

#L_ExIOSpCtrl

各CHの1ビットめをONにすると有効になり、OFFにすると無効になります。

一致出力ステータス

一致出力が有効状態であるか無効状態であるかを示します。一致出力の有効/無効の状態は、システム変数(#L_ExIOSpCtrl)にある各CH特殊I/O動作状態の一致出力フラグのONで有効、OFFで無効を確認できます。どのCHに高速カウンタを割り付けたのかによって監視ビットが異なります。

#L_ExIOSpCtrl

各CHの1ビットめが1の場合は有効状態、0の場合は無効状態を示します。

一致出力動作中の出力クリア機能

一致出力が動作している場合に、出力を一旦OFFさせることができます。また、一致出力クリアを確認することもできます。

この一致出力のクリア機能は、カウンタが動作中、停止中のどちらでも使用でき、システム変数(#L_ExIOCntInCtrl)にある各CHカウンタ入力制御要求の一致出力クリアフラグをONすることで一致出力をOFFすることができます。どのCHに高速カウンタを割り付けたのかによって操作ビットが異なります。

#L_ExIOCntInCtrl

カウンタ入力制御要求

各CHの1ビットめをONにすると出力をOFFします。

一致出力と一致出力クリアフラグのタイミングチャートを下図に示します。

カウンタ入力制御応答

各CHの1ビットめが1の場合はクリア完了、0の場合はクリア未完了を示します。

一致出力端子ステータス

出力端子での一致出力の出力状態をシステム変数(#L_ExIOSpOut)で確認することができます。どのCHに高速カウンタを割り付けたのかによって監視ビットが異なります。

#L_ExIOSpOut

a:CH1の出力状態

[1]:出力、[0]:未出力

b:CH2の出力状態

[1]:出力、[0]:未出力

c:CH3の出力状態

[1]:出力、[0]:未出力

d:CH4の出力状態

[1]:出力、[0]:未出力