
确认连续模拟量输入的动作状态(Status)时选择

AiSamplingCount |
取得当前的1通道的采样次数
例)使用2个通道采样500次,数据是1000个
AiSamplingCount 是500
AiRepeatCount |
取得当前的重复次数
* 对于不能使用重复操作的设备,可以获得的值为“0”。
AiStatus |
取得当前的模拟量输入的状态(status)
以16进制表示,单位是位,意义如下所示
值 |
Status |
意义 |
00000001H |
设备动作中 |
从[开始]执行开始,到 变换结束/由于错误停止/由于执行[停止]而停止 为止,这期间的status为ON 等待开始触发/延迟采样/重复动作中 的时候这个status也是ON |
00000002H |
等待开始触发 |
当[触发设定]是外部触发/电平比较/范围比较 的时候,从执行[开始]后,到触发条件成立前,这期间的status为ON。变换开始时这个status变为OFF 即使是设定为重复动作,当每次触发等待的状态时,这个status变为ON |
00000010H |
存储指定采样次数 |
内存中保存的变换数据达到[开始]的AiSamplingTimes所设定的采样次数时,这个status变为ON。 如果是FIFO内存,这个status是ON的状态下实行[读取],当buffer中的数据量小于指定次数时,status变为OFF 执行[开始],或者是执行高级函数AioResetDevice_i.vi,这个status变为OFF 如果指定[开始]的AiSamplingTimes为0,这个status会一直保持位OFF |
00010000H |
溢出 |
Buffer容纳不了变换数据的时候,这个status变为ON 这个时候,如果是FIFO内存,变换将停止 如果是RING内存,变换继续,旧的数据将被覆盖 执行[开始],或者是执行高级函数AioResetDevice_i.vi,这个status变为OFF |
00020000H |
采样时钟错误 |
这是变换速度太快的时候发生的错误。变换停止,status变为ON 执行[开始],或者是执行高级函数AioResetDevice_i.vi,这个status变为OFF |
00040000H |
AD变换错误 |
通常这个status是OFF,但是当有问题发生时这个status变为ON 如果这个status变为ON,有可能是设备发生了故障 如果问题没解决,请与[与我们联系]中记载的技术支持窗口联系 |
00080000H |
驱动程序规范错误 |
如果驱动程序处理不及时,会发生这个错误 如果是使用驱动程序内存的设备,变换需要 [设备的变换速度+驱动程序的处理时间] (驱动程序的处理时间与环境有关) 这个错误与采样时钟错误同时发生 |
例)AiStatus是[11H] (10进制表示是[17])时
[设备动作中]和[存储指定采样次数]是ON
AiStopTriggerCount |
取得停止触发输入时1通道的采样次数
* 由于CPS-AI-1608LI和CPS-AI-1608ALI不能获得输入停止触发时的采样次数,因此可获得的值为“0”。
使用FIFO内存长时间连续采样时,如果不按照一定周期进行[读取]的话, 当超出设备和驱动程序可以保持的数据量,采样将停止。(溢出) 在这个读取周期中,可以使用status [存储指定采样次数] (00000010H)。 还有一种方法是周期的读取全部数据,可参照例子InfiniteAi.vi。 也可以尝试每次读取一定量的数据。
|