主要内容

在外部事件上启动多触发采集

此示例显示如何在外部事件上设置和启动多触发采集。在这种情况下,该设备被配置为开始在上升沿信号上获取数据。

创建DataAcquisition并添加模拟输入通道

创建DataAcquisition对象,并添加模拟输入通道电压测量类型,使用NI PCIe 6363,具有IDdev4.

dq = daq(“你”);addInput(dq,“dev4”“ai0”“电压”);

配置DataAcQuisition以在外部触发器上启动

配置设备以获取外部触发器上的数据。启动获取的触发器称为启动触发器。在此示例中,交换机连接到终端PFI0.在设备上dev4.。代表这种物理连接(在开关和终端之间PFI0.)作为一个开始触发。

添加数字开始触发器

触发器具有触发器类型(数字的)。允许的价值数字的触发器类型是启动器

触发器具有源和目的地。在此示例中,源是交换机(选择'外部的'作为来源)。目的地是PFI0.终端dev4.'pfi0 / dev4')。用addtrigger.在DataAtCQuisition上添加此触发。

addtrigger(dq,“数字的”“starttrigger”“外部的”“dev4 / pfi0”);dq.digitaltrogger.
ANS = DigitalTrigger与属性:源:“外部”目的地:'dev4 / pfi0'类型:'starttrigger'条件:'risingedge'

设置触发参数

默认情况下,DataAcquisition等待上升沿数字触发器10秒。使用时将超时增加到30秒DigitalTriggertimeout.财产。

dq.digitaltriggertimeout = 30;

您可以配置DataAcquisition以接收多个触发器,当它应该响应多个事件时。在此示例中,预期两个外部触发信号,使设备启用dev4.在收到第二个触发器时开始获取扫描。

dq.numdigitaltriggersperrun = 2;

开始收购

在收到每个配置的数字开始触发器时获取扫描。具体的事件序列是:

  1. dataacquisition开始了

  2. 除非超时期限到期,否则实际采集中的一秒就开始于第一触发器

  3. 除非超时期限到期,否则实际采集中的一秒就开始了第二触发器

  4. 数据被返回

[数据,starttime] =读取(DQ,秒(1));

绘制数据

根据两个触发器之间的时间观察不连续性。

绘图(Data.time,data.variables,'。'