主要内容

从TDMS数据存储中读取数据

描述

例子

数据=阅读(tdmsds从TDMS数据存储中的文件读取数据tdmds,并返回表或时间表的单元格数组。单元格数组的每个元素都对应于数据存储文件数据中的通道组。

函数从数据存储中返回数据的子集。子集的大小由ReadSize属性。第一次打电话时,从数据存储的开头开始读取,后续调用从前一个调用的端点继续读取。使用重置从头再读一遍。

函数返回表格的单元格数组或时间表的单元格数组,具体取决于tdmds。RowTimes财产。看到读取tms文件数据到时间表

例子

数据信息) =阅读(tdmsds也返回输出参数信息,以及有关提取数据的信息和元数据。

例子

全部折叠

每次从TDMS数据存储读取一个文件。设置读取大小并读取第一个数据集。

tdmsds = tdmsDatastore (“C: \ \ tdm数据”ReadSize =“文件”);data1 =阅读(tdmsds);

读取第二个文件并查看有关数据的信息。

[data2 info2] =阅读(tdmsds);info2
C:\data\tdms\Turbine_002. info = struct with fields: Filename: "tdms" FileSize: 172098 Offset: 0

通过提供持续时间向量,您可以将tdms文件数据读入时间表。

定义一个包含1000个元素,持续时间为1毫秒的向量。设置数据存储对象以读取1000条记录(ReadSize),并返回时间表(RowTimes).

durvec =毫秒(1:1000);tdmsds = tdmsDatastore (“C: \ \ tdm数据”ReadSize = 1000, RowTimes = durvec)
tdmsds = TDMSDatastore的属性:Files: ["C:\data\tdms\Turbine_001。tdm " C: \ \ tdm \ Turbine_002数据。tdm " C: \ \ tdm \ Turbine_003数据。tdms"] ChannelList: [6×8 table] SelectedChannelGroup: [0×0 string] SelectedChannels: [0×0 string] RowTimes: [0.001 sec 0.002 sec 0.003 sec 0.004 sec 0.005 sec 0.006 sec 0.007 sec…]ReadSize: 1000

从数据存储中读取1000条记录到时间表中。

dd =阅读(tdmsds)
Dd = 1×3 cell array {1000×2时间表}{1000×2时间表}{1000×2时间表}

查看其中一个时间表的部分内容。

dd {1}
ans = 1000×2时间表时间加速度1加速度2 _________ _____________ _____________ 0.001 sec -1.9851 0 0.002 sec -3.9702 0 0.003 sec 11.911 1.5521 0.004 sec 5.9553 -1.5521 0.005 sec 1.9851 -4.6562 0.006 sec 5.9553 4.6562 0.007 sec 3.9702 -1.5521 0.008 sec 3.9702 -4.6562:::0.993 sec 50.656 -469.05 0.994 sec 46.686 -475.26 0.995 sec 40.73 -472.16 0.996 sec 40.73 -462.84 0.997 sec 34.775 -461.29 0.998 sec 38.745 -472.16 0.999 sec 38.745 -464.4 1 sec 34.775 -462.84显示所有1000行。

输入参数

全部折叠

的TDMS数据存储TDMSDatastore对象。

例子:tdmsds = tdmsDatastore(“C: \ \ tdm数据”)

输出参数

全部折叠

输出数据,从TDMS记录中作为表的单元格数组返回。

关于数据源文件的信息,作为具有以下字段的结构返回:

文件名文件大小抵消

抵消字段表示数据在文件中的位置。

版本历史

介绍了R2022a

另请参阅

功能

Baidu
map