从LabView导出数据

时间:2018-06-27 18:00:01

标签: labview

我一直在使用LabView捕获一些长期数据,然后将它们处理到MATLAB中。因此,我是从Labview手动将数据导出到excel。但是,我发现Labview不会将超过1048575的数据导出到excel,在我的情况下,这大约相当于47秒。对于我的任务,我需要捕获至少两分钟以上的数据。结果,我无法正常处理信号。

我假设,我的Labview一次存储的数据不超过1048575。我曾尝试提高输入分辨率,但我认为这不是解决方案。有什么办法可以将所有数据一次导出到excel?谢谢。

3 个答案:

答案 0 :(得分:2)

对于大型数据集,我的建议是在采集样本时将其保存到磁盘上,LabVIEW将安装一些示例来演示如何进行。

示例

写入制表符分隔的File.vi LabVIEW block diagram of example VI for writing data to a spreadsheet 位置:[labview root]\examples\File IO\Spreadsheet\Tab-Delimited Data\Write Tab-Delimited File.vi

此方法的重点:

  1. 使用File I/O VIs创建,打开,写入和关闭数据文件。
  2. 使用Array To Spreadsheet String.vi将示例数据转换为十进制字符串

答案 1 :(得分:0)

Excel does not support more than 1048576 rows on a spreadsheet,因此在Excel电子表格(.xls.xlsx)文件中保存的数据量不能超过此数量。

乔·弗里德里希森(Joe Friedrichsen)的answer是一个很好的建议:使用这种方法,您应该能够使用dlmread并指定'\t'作为分隔符将数据加载到MATLAB中。

或者,您可以使用LabVIEW的Write To Measurement File Express VI,但可以将其配置为以Text (LVM)格式编写。然后,您应该能够使用来自MATLAB File Exchange的LVM file import代码将数据加载到MATLAB中。

答案 2 :(得分:0)

您可能还想简单地创建多个Excel文件,当达到大小限制时增加文件名。这样一来,您可以保留其他excel内容(例如公式,图形,宏),而仅限制传递给excel的数据集。

另一种选择是在LabVIEW中运行数据平滑或平均算法,并将较少的数据传递给excel进行报告。例如,如果您运行10点平均过滤器,只要该数据仍表示结果足以满足您的需求,您将在excel中获得所需行的1/10。