アナログ入力値に対してのフィルタを設定します。
Ret = AioSetAiFilter ( Id , AiChannelNo , AiChannelNum , FilterType , FilterValueLow , FilterValueHigh , FilterUnit )
Id
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
AioInit 関数で取得したデバイスIDを指定します。
AiChannelNo [
VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: ref ushort ] [ Python:
ctypes.POINTER(ctypes.c_ushort) ]
チャネル番号を配列に入れて、その配列の先頭アドレスを指定します。
AiChannelNum [
VB.NET: UShort ] [ C, C++: unsigned short ] [ C#: ushort ] [ Python: ctypes.c_ushort
]
AiChannelNoで指定したチャネル数を指定します。
FilterType
[ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: ref ushort ] [ Python:
ctypes.PINTER(ctypes.c_ushort) ]
フィルタタイプを配列に入れて、その配列の先頭アドレスを指定します。
フィルタタイプ |
マクロ |
値[dec] |
フィルタ無効 |
AIO_PARAM_AI_FILTER_TYPE_DISABLE |
0 |
ローパスフィルタ |
AIO_PARAM_AI_FILTER_TYPE_LOW_PASS |
1 |
FilterValueLow
[ VB.NET: ULong ] [ C, C++: unsigned long long * ] [ C#: ref ulong ] [
Python: ctypes.POINTER(ctypes.c_ulonglong) ]
フィルタ下限値の値を配列に入れて、その配列の先頭アドレスを指定します。
フィルタ無効の場合、本引数は使用しません。
ローパスフィルタの場合、本引数の値を指定します。
FilterValueHigh
[ VB.NET: ULong ] [ C, C++: unsigned long long * ] [ C#: ref ulong ] [
Python: ctypes.POINTER(ctypes.c_ulonglong) ]
フィルタ上限値の値を配列に入れて、その配列の先頭アドレスを指定します。
フィルタ無効の場合、本引数は使用しません。
ローパスフィルタの場合、本引数は使用しません。
FilterUnit
[ VB.NET: UShort ] [ C, C++: unsigned short * ] [ C#: ref ushort ] [ Python:
ctypes.POINTER(ctypes.c_ushort) ]
フィルタ設定値の単位を配列に入れて、その配列の先頭アドレスを指定します。
フィルタ下限値、フィルタ上限値共通の単位になります。
フィルタ無効の場合、本引数は使用しません
フィルタ設定値の単位 |
マクロ |
値[dec] |
MHz |
AIO_PARAM_AI_FILTER_UNIT_MEGA_HZ |
1 |
kHz |
AIO_PARAM_AI_FILTER_UNIT_KIRO_HZ |
2 |
Hz |
AIO_PARAM_AI_FILTER_UNIT_HZ |
3 |
mHz |
AIO_PARAM_AI_FILTER_UNIT_MIRI_HZ |
4 |
Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
20001 |
使用しているデバイスではこの関数を使用することができません。 |
22550 |
AiChannelTypeの値が使用しているデバイスの範囲外です |
22551 |
AiChannelNoの値が使用しているデバイスの範囲外です |
22552 |
FilterTypeの値が使用しているデバイスの範囲外です |
22553 |
FilterValueLowの値が使用しているデバイスの範囲外です |
22554 |
FilterValueHighの値が使用しているデバイスの範囲外です |
22555 |
FilterUnitの値が使用しているデバイスの範囲外です |
フィルタ無効。(フィルタタイプ=0)
アナログ入力値に対してのフィルタを設定します。
AI-80M1202-PE |
設定可能な値は、「フィルタ無効」、または、「ローパスフィルタ 20MHz」です。 |
0チャネルに、ローパスフィルタ(AIO_PARAM_AI_FILTER_TYPE_LOW_PASS)、フィルタ下限値=20MHzを設定します。
VB.NET |
Dim
Ret As Integer Ret = AioSetAiFilter
( Id , AiChannelNo , 1 , FilterType , FilterValueLow , FilterValueHigh
, FilterUnit ) |
C, C++ |
long
Ret;
AiChannelNo[0] = 0; Ret = AioSetAiFilter
( Id , &AiChannelNo[0] , 1 , &FilterType[0] , &FilterValueLow[0]
, &FilterValueHigh[0] , &FilterUnit[0] ); |
C# |
int
Ret;
AiChannelNo[0] = 0; Ret = aio.SetAiFilter
( Id , ref AiChannelNo , 1 , ref FilterType , ref FilterValueLow
, ref FilterValueHigh , ref FilterUnit ); |
Python |
Ret
= ctypes.c_long() Ret.value = caio.AioSetAiFilter
( Id , AiChannelNo , 1 , FilterType , FilterValueLow , FilterValueHigh
, FilterUnit ) |