アナログ入力値に対してのフィルタ設定を取得します。
Ret = AioGetAiFilter ( 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#: out ushort ] [ Python:
ctypes.PINTER(ctypes.c_ushort) ]
フィルタタイプを格納する配列の先頭アドレスを指定します。
FilterValueLow
[ VB.NET: ULong ] [ C, C++: unsigned long long * ] [ C#: out ulong ] [
Python: ctypes.POINTER(ctypes.c_ulonglong) ]
フィルタ下限値の値を格納する配列の先頭アドレスを指定します。
フィルタ無効の場合、本引数は使用しません。
FilterValueHigh
[ VB.NET: ULong ] [ C, C++: unsigned long long * ] [ C#: out 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 |
ドライバを呼び出せません |
12560 |
FilterTypeのポインタがNULLです |
12561 |
FilterValueLowのポインタがNULLです |
12562 |
FilterValueHighのポインタがNULLです |
12563 |
FilterUnitのポインタがNULLです |
20001 |
使用しているデバイスではこの関数を使用することができません。 |
22560 |
AiChannelNoの値が使用しているデバイスの範囲外です |
フィルタ無効。(フィルタタイプ=0)
アナログ入力値に対してのフィルタ設定を取得します。
単位(FilterUnit)より、FilterValueLow/FilterValueHighが小さい値だった場合、各値は0で取得されます。
例:
20kHzの時に単位kHzで取得すると値(FilterValueLow/FilterValueHigh)は20となります。
20kHzの時に単位MHzで取得すると値(FilterValueLow/FilterValueHigh)は0となります。
0チャネルに設定されているフィルタタイプ、およびフィルタ上限/下限値を、MHz単位で取得します。
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 , out FilterType , out FilterValueLow
, out FilterValueHigh , ref FilterUnit ); |
Python |
Ret
= ctypes.c_long() Ret.value = caio.AioSetAiFilter
( Id , AiChannelNo , 1 , FilterType , FilterValueLow , FilterValueHigh
, FilterUnit ) |