此示例显示如何在外部事件上设置和启动多触发采集。在这种情况下,该设备被配置为开始在上升沿信号上获取数据。
创建DataAcquisition对象,并添加模拟输入通道电压
测量类型,使用NI PCIe 6363,具有IDdev4.
。
dq =采集(“你”);addInput(DQ,“dev4”那“ai0”那“电压”);
配置设备以获取外部触发器上的数据。启动获取的触发器称为启动触发器。在此示例中,交换机连接到终端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;
采用读
在收到每个配置的数字开始触发器时获取扫描。具体的事件序列是:
dataacquisition开始了
除非超时期限到期,否则实际采集中的一秒就开始于第一触发器
除非超时期限到期,否则实际采集中的一秒就开始了第二触发器
数据已退回
[数据,starttime] =读取(DQ,秒(1));
根据两个触发器之间的时间观察不连续性。
绘图(Data.time,data.variables,'。')