现在用的板卡是 PXI 5105(最高采样率60MS/s),需要实现的功能:外触发,每一次触发之后,板卡采集m个点,并取m个数据点的平均值(为了减少传感器噪声),存储起来,总的触发次数N可以设置,最后写入文件中的数据是N个。
我自己写了个程序,出现的问题是采集程序跟不上。比如:外部触发信号频率是20KHz,板卡采样频率设定为2M(4M也试过),min record length设定为100,总的触发次数设置为20000,理论上应该是1s左右就可以完成数据的采集,但是实测需要6s左右。
程序见图及附件,跪求各位大佬帮助一下!我对labview不熟,希望各位不吝指教!
-
后面板
-
前面板
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
你现在采集模式是采集一次数据就上传一次,这样很耗时间。
这系列的采集卡是先采集数据了之后存在缓存里,然后上传处理的。完全可以触发采集多次之后一次性的上传,效率会提高非常之多。
关键设置:“niScope Configure Horizontal Timing.vi"有个参数”number of records",表示触发多少次之后上传,设置了这个参数之后,对应的“niScope Fetch.vi"的多态选择器要选择2D数据类型,没记错的话,得到的二维数组应该是每一行数据就是一次触发采集的数据。最好再弄一个生产者消费者结构,一个接收数据,另一个处理数据。
附件是ni的范例,可以参考下。
niScope EX Multi Record Fetch More Than Available Memory.zip 下载积分: 积分 -1 分
43.25 KB, 下载次数: 38, 下载积分: 积分 -1 分
一周热门 更多>