重置
类:matlab.io.datastore.sdidatastore
包:matlab.io.datastore
重置读取位置
语法
sdi_ds.reset
描述
sdi_ds.reset
对象的读取位置matlab.io.datastore.sdidatastore
,sdi_ds
从头到尾。
例子
处理信号数据matlab.io.datastore.sdidatastore
一个matlab.io.datastore.sdidatastore
引用仿真数据检查器储存库中的信号数据。当信号太大而无法装入内存时,可以使用matlab.io.datastore.sdidatastore
手动增量处理数据,或者为为您处理增量处理的信号创建一个高时间表。此示例演示如何使用类处理数据matlab.io.datastore.sdidatastore
.
创建一个matlab.io.datastore.sdidatastore
对一个信号
模拟sldemo_fuelsys
模型,它被配置为记录几个信号,以在仿真数据检查器存储库中创建数据。
sim卡(“sldemo_fuelsys”)
使用仿真数据检查器编程接口来获取信号的信号ID。
runCount = 金宝appSimulink.sdi.getRunCount;latestRunID = 金宝appSimulink.sdi.getRunIDByIndex (runCount);latestRun = 金宝appSimulink.sdi.getRun (latestRunID);speedSigID = latestRun.getSignalIDByIndex (4);
使用信号ID创建一个matlab.io.datastore.sdidatastore
为速度
信号。
speedSDIds = matlab.io.datastore.sdidatastore (speedSigID);
验证数据存储的内容
检查的名字
财产的matlab.io.datastore.sdidatastore
验证它是否符合您的期望。
speedSDIds。的名字
ans =“地图”
你也可以使用预览
方法来检查信号中的前十个样本看起来是否正确。
speedSDIds.preview
ans =10×1的时间表时间数据______________ _______ 0秒0.589 0.00056199秒0.58772 0.0033719秒0.58148 0.01秒0.56765 0.02秒0.54897 0.03秒0.53264 0.04秒0.51837 0.05秒0.50594 0.055328秒0.5 0.055328秒0.5
方法处理信号数据matlab.io.datastore.sdidatastore
当您的信号太大而无法装入内存时,您可以使用readData
方法从模拟数据检查器存储库中读取数据块,以增量处理数据。使用hasdata
方法作为while循环增量处理整个信号的条件。例如,找出最大信号值。
latestMax = [];而speedSDIds。hasdata速度Chunk = speedSDIds.read; speedChunkData = speedChunk.Data; latestMax = max([speedChunkData; latestMax]);结束latestMax
latestMax = 0.8897
在每个读操作上,读
方法更新下一个读取操作开始时的读取位置。在阅读了部分或全部的matlab.io.datastore.sdidatastore
,你可以重置读取位置,重新开始从信号的开始。
speedSDIds.reset
处理内存中的信号数据
当信号被您引用时matlab.io.datastore.sdidatastore
装入内存,您可以使用readall
方法将所有信号数据读入内存中进行处理,而不是使用读
方法。的readall
方法返回一个时间表
所有的信号数据。
speedTimetable = speedSDIds.readall;speedMax = max (speedTimetable.Data)
speedMax = 0.8897
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。