使用NI设备获取数据

这个例子演示了如何从国家仪器设备中获取数据。

发现模拟输入设备

要发现支持输入测量的设备,请访问金宝appdaqlist命令。这个例子使用了NI 9201模块在一个国家仪器®CompactDAQ底盘NI cDAQ-9178。这是一个8通道模拟输入设备,是机箱中的模块4。

d = daqlist (“倪”)
d = 12×4表的DeviceID描述模型DeviceInfo ___________ __________________________________ _________________ ____________________“cDAQ1Mod1”“9205年国家仪器倪”“NI 9205”[1×1采集。设备信息]“cDAQ1Mod2”“NI 9263”“NI 9263”[1×1 daq]。设备信息]“cDAQ1Mod3”“国家仪器NI 9234”“NI 9234”[1×1 daq]。设备信息]“cDAQ1Mod4”“国家仪器NI 9201”“NI 9201”[1×1 daq]。设备信息]“cDAQ1Mod5”“国家仪器NI 9402”“NI 9402”[1×1 daq]。设备信息]“cDAQ1Mod6”“国家仪器NI 9213”“NI 9213”[1×1 daq]。设备信息]“cDAQ1Mod7”“国家仪器NI 9219”“NI 9219”[1×1 daq]。设备信息]“cDAQ1Mod8”“国家仪器NI 9265”“NI 9265”[1×1 daq]。DeviceInfo] "Dev1" "国家仪器PCIe-6363" "PCIe-6363"[1×1 daq]。DeviceInfo] "Dev2" "National Instruments NI ELVIS II" "NI ELVIS II"[1×1 daq]。DeviceInfo] "Dev3" "国家仪器PCIe-6363" "PCIe-6363"[1×1 daq]。DeviceInfo] "Dev4" "国家仪器PCIe-6363" "PCIe-6363"[1×1 daq.DeviceInfo]
deviceInfo = d {4,“DeviceInfo”}
deviceInfo = ni: National Instruments ni 9201(设备ID: 'cDAQ1Mod4')模拟输入支持:-10到+10伏特范围率从金宝app0.6到500000.0扫描/秒8通道('ai0' - 'ai7')“电压”测量类型此模块位于“cDAQ-9178”机箱的槽4,其名称为“cDAQ1”。

创建数据采集并添加模拟输入通道

创建一个数据获取,设置属性(默认为每秒1000次扫描),并使用以下命令添加模拟输入通道addinput

dq =采集(“倪”);dq。率= 8000;addinput (dq,“cDAQ1Mod4”,“ai0”,“电压”);addinput (dq,“cDAQ1Mod4”,“ai1”,“电压”);

以表的形式获取一次扫描

使用获得一次扫描。结果是一个具有两个数据列的表,因为使用了两个输入通道来获取扫描。

tabledata =阅读(dq)
tabledata = 1×2时间表时间cDAQ1Mod4_ai0 cDAQ1Mod4_ai1 _____ _________________ _________________ 0秒0.00081472 - 0.00090579

获得一个单一的扫描作为一个矩阵

使用获得一次扫描。结果是一个大小为1x2的数组,因为使用了两个输入通道来获取扫描。

matrixdata =阅读(dq,“OutputFormat”,“矩阵”)
matrixdata = 1.0e-03 * 0.1270 0.9134

在指定的时间内获取数据

使用为了获得多次扫描,阻塞MATLAB执行,直到获得所有请求的数据。获取的数据作为一个时间表返回,宽度等于通道的数量,高度等于扫描的数量。

%以每秒8000次扫描的速度获取一秒的数据。数据=读(dq,秒(1));

绘制获取的数据

(数据。时间,data.Variables);ylabel (“电压(V)”)

获取指定的扫描次数

数据=读(dq, 2*dq. rate);(数据。时间,data.Variables);ylabel (“电压(V)”)