Extracting data from simout MATLAB work space
66 ビュー (過去 30 日間)
古いコメントを表示
Hi
I want to extract data based on the time
I have a sumilink Model which will generated the following data table
This will run between 0 min to 500 mins
I want to preform a specific calculation for the data that occur between 0 to 80 min
0 件のコメント
採用された回答
Jim Riggs
2019 年 12 月 20 日
編集済み: Jim Riggs
2019 年 12 月 20 日
simout is a timeseries structure.
I like to extract separate vectors from the structure, for example:
t = timout.time(simout.time < 80);
This will give you the time vector for all times less than 80.
You can get the associated data for this time vector with:
col1 = simout.data(simout.time<80,1); % get column 1 from data where time < 80
col2 = simout.data(simout.time<80,2); % get column 2 from data where time < 80
(if your time is scaled in seconds, then obviously you want time < 80*60 seconds)
0 件のコメント
その他の回答 (1 件)
Chaman Dewangan
2021 年 6 月 26 日
to workspace block is used to send data from Simulink to workspace. In this block parameters, there is an option save format. (Array, structure with time, and time series).
I am simulating in R2019 a. I get a variable out. I have named the block as simout.
For array format, out.simout is the signal value and out.tout is the time signal.
For structure with time format, out.simout.signals.values is the signal value and out.simout.time is the time signal.
For time series format, out.simout.Data(:,1); is the signal value of 1st column and out.simout.time is the time signal. Similarly, We can do for second column out.simout.Data(:,2).
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!