インレンジ比較開始時の設定を行います。
この設定は、AioSetAiStartTrigger関数で変換開始条件をインレンジ比較に設定した場合に必要になります。
変換開始条件がインレンジ比較以外の場合には実行する必要はありません。
1つのデバイスに1つのインレンジ比較設定しかできません。複数回指定した場合は、最後にデータのみが有効となります。
Ret = AioSetAiStarInRange ( Id , AiChannel , Level1 , Level2 , StateTimes )
Id
[ C, C++: short ] [ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
AiChannel
[ C, C++: short ] [ Python: ctypes.c_short ]
インレンジ比較を行うチャネルを指定します。
Level1
[ C, C++: long ] [ Python: ctypes.c_long ]
インレンジ比較の上限値をバイナリ値で設定します。
デバイスにより設定できる値は異なります。
12ビット分解能のデバイス |
0~4095 |
16ビット分解能のデバイス |
0~65535 |
Level2
[ C, C++: long ] [ Python: ctypes.c_long ]
インレンジ比較の下限値をバイナリ値で設定します。
デバイスにより設定できる値は異なります。
12ビット分解能のデバイス |
0~4095 |
16ビット分解能のデバイス |
0~65535 |
StateTimes
[ C, C++: long ] [ Python: ctypes.c_long ]
インレンジ比較成立後、状態を保持する期間をサンプリング回数で設定します。
実際の変換は、StateTimes分のサンプリング時間が経過した後に開始します。
Ret [ C, C++: long ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
12040 |
AiChannelの値が関数の指定範囲外です |
12041 |
StateTimesの値が関数の指定範囲外です |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
22040 |
AiChannelの値が使用しているデバイスの範囲外です |
22041 |
12ビットデバイスに設定するデータは0~4095の範囲内です |
22042 |
16ビットデバイスに設定するデータは0~65535の範囲内です |
22044 |
StateTimesの値が使用しているデバイスの範囲外です |
全てのデバイスで、AiChannel = 0、StateTimes = 1、Level1 = 0、Level2 = 0
アナログ入力機能を持たないデバイスでは使用できません。
デバイスが動作中の場合、この関数は実行できません。
チャネル0にインレンジ比較開始設定を行います。
比較データは800H~900H、状態保持回数は1回です。
C, C++ |
long
Ret; |
Python |
Ret
= ctypes.c_long() |