Running Simulink model in a loop

조회 수: 2 (최근 30일)
A Afonja
A Afonja 2019년 4월 24일
답변: A Afonja 2019년 4월 24일
I want to run a simulink model in a loop and store the output for analysis.
However, I noticed that it is the result of the last calculation that gets stored.
Below is my syntax
Period=2:2:10;
Omega=2*pi./Period;
tauDot=0.05473;
simutime=100;
for i=length(Omega);
omega=Omega(i);
sim('PTO_model',simutime);
Pr=simout;
Pressure(:,i)=Pr;
end
omega and taudot are variables defined to be used in the model.
simout is an output to workspace block that I have withing my simulink model.
The issue is that the final result of Pressure is a matrix with the first 4 columns having all zeros and the last coulmn containing results fof the last pass of the for loop.
Could anyone tell me why the reults of the first 4 calculations is not saved.

채택된 답변

Yasasvi Harish Kumar
Yasasvi Harish Kumar 2019년 4월 24일
Hi,
You can use data store memory block and log the value in the workspace as well. Read more here.
Regards

추가 답변 (1개)

A Afonja
A Afonja 2019년 4월 24일
I have found where the problem is. Very basic mistake. I wrote i=length(omega) and not i=1:length(omega).
Thanks for responding Yasasvi

카테고리

Help CenterFile Exchange에서 Model, Block, and Port Callbacks에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by