Real Time Data Store in Inf Array
1 回表示 (過去 30 日間)
古いコメントを表示
I have MPU6050 sensor. I had codes and I store in a 1x1 double array. But now I wanna filter it but I cant do it for real time. Because my filter needs at least 3 sample for filtering. And you know, in real time you need filter all datas 1 by 1.
After all I need to store my datas in zeros array. How can store real time "Acc_Mag" datas in "accmag = zeros (1,10000);" array?
2 件のコメント
dpb
2019 年 7 月 17 日
You'll have to keep an index variable to point to the next point in the array for longer time series.
回答 (1 件)
David K.
2019 年 7 月 17 日
If I understand correctly what you want and a guess at how you are formatting it.
Pointer = 1;
window = sizeFilter % However big you want the filter
while (running)
data = newData; % new 1x1 double
window(Pointer) = data;
% if order matters for your filter you can also use the pointer as indication for that
filteredData = filter(window);
Pointer = Pointer+1;
% Loop pointer
if Pointer >window
Pointer = 1;
end
end
Unless all you want to do is save the initial data. Then that is simply
accmag = zeros(1,10000);
Pointer = 1;
while(running)
data = newData;
accmag(Pointer) = data;
Pointer = Pointer + 1;
end
0 件のコメント
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!