AioSetAiStopInRangeEx


Function

Sets In Range when the conversion stop condition is In Range comparison. The In Range is stored in Voltage or Current.
This settings is necessary when the conversion stop condition that is set by AioSetAiStopTrigger function is the In Range comparison.
This function doesn't need to be executed when the conversion stop condition is not "In Range comparison".

Only one level comparison setting can be set for one device. If specified multiple times, only the last data is valid.

Format

Ret = AioSetAiStopInRangeEx ( Id , AiChannel , Level1 , Level2 , StateTimes )

Parameters

Id [ VB.NET : Short ] [ C, C++ : short ] [ C# : short ] [ Python : ctypes.c_short ]
Specifies the ID retrieved from AioInit function.

AiChannel [ VB.NET : Short ] [ C, C++ : short ] [ C# : short ] [ Python : ctypes.c_short ]
Specifies the channel that performs the In Range comparison.

Level1 [ VB.NET : Single ] [ C, C++ : float ] [ C# : float ] [ Python : ctypes.c_float ]
Sets the upper limit of In Range comparison in Voltage or Current.

Level2 [ VB.NET : Single ] [ C, C++ : float ] [ C# : float ] [ Python : ctypes.c_float ]
Sets the lower limit of In Range comparison in Voltage or Current.

StateTimes [ VB.NET : Integer ] [ C, C++ : long ] [ C# : int ] [ Python : ctypes.c_long ]
Sets the number of samplings (1-256) within the state-held period after the condition of In Range comparison is satisfied.
In fact, the conversion is stopped after sampling time of StateTimes elapses.

Return value

Ret [ VB.NET : Integer ] [ C, C++ : long ] [ C# : int ] [ Python : ctypes.c_long ]

Return values

Content

0

Normality completion

7

Execute AioResetDevice function because the device has recovered from standby mode

10001

Invalid Id was specified
Use the Id retrieved from AioInit to specify the Id in this function.

10002

AIO driver can't be called
At first, perform AioInit function.

12400

The value of AiChannel is outside the designated range of the function
Specify the channel setting in range: 0 <= AiChannel <= Max channel.

12401

The value of StateTimes is outside the designated range of the function

20001

This function can't be used by this device

20002

Can not use while by another device works
To use this function, analog input operation must be stopped.

20003

Can not use because another process is using the device
When another process is using the device, all functions except for those that support multi-process can not be performed.

22400

The value of AiChannel is outside the designated range of the device being used

22401

The value of Level1 or Level2 is outside the designated range of the device being used

22403

The value of StateTimes is outside the designated range of the device being used

Initial value

In all devices, AiChannel = 0, StateTimes = 1, Voltage or Current value equals to Level1, Level2 = 0 in binary.

Remarks

This function cannot be used on devices without the analog input function.
If the device is in operation, the function cannot be performed.

Example

Sets In Range comparison stop to channel 0.
The comparison data is -5.0 to 5.0V, state-held times is 0.

VB.NET

Dim Ret As Integer
Ret = AioSetAiStopInRangeEx ( Id , 0 , 5.0 , -5.0 , 1 )
 

C, C++

long Ret;
Ret = AioSetAiStopInRangeEx ( Id , 0 , 5.0 , -5.0 , 1 );
 

C#

int Ret;
Ret = aio.SetAiStopInRangeEx ( Id , 0 , 5.0F , -5.0F , 1 );
 

Python

Ret = ctypes.c_long()
Ret.value = caio.AioSetAiStopInRangeEx ( Id , 0 , 5.0 , -5.0 , 1 )