カウンタ入力信号のフィルタ設定を行います。
Ret = AioSetCntFilter ( Id , CntChannel , Signal , Value )
Id [
C, C++: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
CntChannel
[ C, C++: short ] [ Python: ctypes.c_short ]
カウンタのチャネルを設定します。
現在設定できるのは-1のみで、設定は全チャネルに対して行われます。
Signal
[ C, C++: short ] [ Python: ctypes.c_short ]
フィルタを設定する入力信号を指定します。
現在設定できるのは-1のみです。
入力信号 |
値 |
全ての信号 |
-1 |
Value
[ C, C++: float ] [ Python: ctypes.c_float ]
フィルタ時間を設定します。
フィルタ時間 |
0(未使用) |
1 |
128 |
16000 |
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
15120 |
CntChannelの値が関数の指定範囲外です |
15121 |
Signalの値が関数の指定範囲外です |
15122 |
Valueの値が関数の指定範囲外です |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
25120 |
CntChannelの値がデバイスの指定範囲外です |
25121 |
Valueの値が使用しているデバイスの指定範囲外です |
25123 |
Signalの値が使用しているデバイスの指定範囲外です |
すべての信号線に関して、フィルタ設定なし
フィルタの設定を行うことにより、下の図のような高周波成分(主にノイズやチャタリング等)を取り除くことができます。
フィルタ設定時間の値が大きいほどノイズやチャタリングの影響を防ぐ事ができますが、ON-OFFの切り替わりの遅延時間も大きくなります。
カウンタ機能を持たないデバイスでは使用できません。
デバイスが動作中の場合、この関数は実行できません。
AIO-163202F-PE |
チャネル単位での設定はできません。CntChannel = -1固定です。 |
AI-1664UG-PE |
チャネル単位での設定はできません。CntChannel = -1固定です。 チャネルの指定に関係なく、設定は全チャネルに対して行われます。 設定可能なValueは0、0.125、0.25、0.5、1.0、2.0、4.0、8.0、16.0、32.0、64.0、128.0、256.0、512.0、1024.0、2048.0、4096.0、8192.0、16000.0です。
フィルタ時間ごとにデジタル入力信号がサンプリングされ、連続して4回分のHigh(またはLow)が検出されると、入力回路部に伝えます。 そのため、設定したフィルタ時間の4回分、信号が遅延します。 |
AIO-160802L-LPE |
CntChannel = -1固定です。 |
AI-1616L-LPE |
CntChannel = -1固定です。 |
AO-1604L-LPE |
CntChannel = -1固定です。 |
AIO-163202FX-USB |
チャネル単位での設定はできません。CntChannel = -1固定です。 |
AIO-121602LN-USB |
CntChannel = -1固定です。 |
AI-1664LAX-USB |
CntChannel = -1固定です。 |
AO-1604LX-USB |
CntChannel = -1固定です。 |
全チャネルの全ての信号に対して、1usecのフィルタを設定します。
C, C++ |
long
Ret; |
Python |
Ret
= ctypes.c_long() |