Set Simulink variable with m file

6 次查看(过去 30 天)
Kris
Kris 2012-6-6
Hello,
To be able to see how my Simulink model responds to differenct variabel values i want to set the Variable value with an m file(function).
The m file runs a for loop. In this for loop i collect data from an excel sheet wich i loaded into my workspace. Now i would like to change my Simulink model variable to the value from my excel file.
for a=1:10
HeatFactor(a,2) %the HeatFactor is an array, i retrieve data (a number)
from the second kolumn
simOut = sim( 'ABC', 'SaveOutput', 'on' )
results = simOut.get( 'yout' )
a=a+1;
end
So before i simulate i want to transfer the value i retrieve from HeatFactor(a,2). To the Variable F in my Simulink model (i used a constant block for this and set the value to F).
Also i would like to set the result of the simulation, the value i get from 'yout' into and array list. One that keeps counting and not one that get's reset everytime i speak to my model 'ABC'.
Thanks,
Kris

回答(1 个)

K E
K E 2012-6-6
You can use the set_param command within a mfile script to change a parameter in your Simulink model. These answers and this link may be helpful.
  1 个评论
Kaustubha Govind
Kaustubha Govind 2012-6-6
Regarding getting "yout" into an array, you simply have to make your "results" variable a cell-array (or something similar).
results{i} = simOut.get( 'yout' );

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Programmatic Model Editing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by