レベル比較開始時のレベル設定を行います。
この設定は、AioSetAiStartTrigger関数で変換開始条件をレベル比較に設定した場合に必要になります。
変換開始条件がレベル比較以外の場合には実行する必要はありません。
1つのデバイスに1つのレベル比較設定しかできません。複数回指定した場合は、最後にデータのみが有効となります。
Ret = AioSetAiStartLevel ( Id , AiChannel , AiStartLevel , AiDirection )
Id
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ]
[ Python: ctypes.c_short ]
AioInit 関数で取得したデバイスIDを指定します。
AiChannel
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ]
[ Python: ctypes.c_short ]
レベル比較を行うチャネルを指定します。
AiStartLevel
[ VB.NET: Integer ] [ C, C++: long ] [ C#: int ]
[ Python: ctypes.c_long ]
レベル比較を行うデータを以下の範囲からバイナリ値で設定します。
デバイスにより設定できる値は異なります。
12ビット分解能のデバイス |
0~4095 |
16ビット分解能のデバイス |
0~65535 |
AiDirection
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ]
[ Python: ctypes.c_short ]
レベル比較の方向を以下の範囲から設定します。
0 |
両方 |
1 |
立ち上がり |
2 |
立ち下がり |
Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]
戻り値 |
内容 |
0 |
正常終了 |
7 |
スタンバイモードから復帰したため、AioResetDevice関数を実行してください |
10001 |
無効なIDが指定されました |
10002 |
ドライバを呼び出せません |
11180 |
AiChannelの値が関数の指定範囲外です |
11181 |
AiDirectionの値が関数の指定範囲外です |
20001 |
使用しているデバイスではこの関数を使用することができません |
20002 |
デバイスが動作中のため実行できません |
20003 |
他のプロセスがデバイスを使用しているため、実行できません |
21180 |
AiChannelの値が使用しているデバイスの範囲外です |
21181 |
12ビットデバイスに設定するデータは0~4095の範囲内です |
21182 |
16ビットデバイスに設定するデータは0~65535の範囲内です |
21184 |
AiDirectionの値が使用しているデバイスの範囲外です |
全てのデバイスで、AiChannel = 0、AiDirection = 0
12ビット分解能のデバイス |
AiStartLevel = 800H |
16ビット分解能のデバイス |
AiStartLevel = 8000H |
アナログ入力機能を持たないデバイスでは使用できません。
デバイスが動作中の場合、この関数は実行できません。
チャネル0にレベル比較開始設定を行います。
比較データは800H、比較方向は両方です。
VB.NET |
Dim
Ret As Integer |
C, C++ |
long
Ret; |
C# |
int
Ret; |
Python |
Ret
= ctypes.c_long() |