【发布时间】:2017-04-10 05:21:16
【问题描述】:
我想编写一个模拟器来模拟从传感器(串行通信)读取数据,除了它将从以前保存的文件中读取它们。我知道如果我使用加载功能,它将读取整个文件,所以我想到了使用一个循环,它会以一定的频率扫描加载文件的向量。现在这将非常快,并且看起来不像实时阅读。如何让它以较慢(可能是固定的)频率读取加载的文件,以使其看起来像实时流式传输和处理数据?
谢谢
【问题讨论】:
标签: matlab simulation
我想编写一个模拟器来模拟从传感器(串行通信)读取数据,除了它将从以前保存的文件中读取它们。我知道如果我使用加载功能,它将读取整个文件,所以我想到了使用一个循环,它会以一定的频率扫描加载文件的向量。现在这将非常快,并且看起来不像实时阅读。如何让它以较慢(可能是固定的)频率读取加载的文件,以使其看起来像实时流式传输和处理数据?
谢谢
【问题讨论】:
标签: matlab simulation
您应该加载整个文件,然后拉出帧并对这些帧进行计算。
类似:
load('sensordata');
framelength = 1024; % Datapoints
Fs = 48000; % 48kHz
frame_duration = 0.01;
frame_length = frame_duration*Fs;
N = length(sensordata);
num_frames = floor(N/frame_length);
for i = 1:num_frames
frame = sensordata((i-1)*frame_length+1:frame_length*i);
%% Do actions here
end
这是一个完美解释它的视频:https://www.youtube.com/watch?v=wpXtsRpaLOA&t=944s
【讨论】: