How can I create a multistep function with variable number of steps in simulink?
124 次查看(过去 30 天)
显示 更早的评论
I am running a simulation in simulink that requires me to change the value of a constant block during the simulation. If I have an array of of all of the values i want to use, how can I have it change from value to value based on the time of the simulation ? I have tried using the clock and floor function, this will return an integer that I can use to reference the element of the array . However, the index of the array in the constant block does not appear to be able to change. Can anyone help with this? See attached MATLAB code for a visual description of the problem.
0 个评论
回答(2 个)
Nikhil Negi
2018-5-31
Hello Evan,
You can use a selector block to select different elements of a vector. I've modified your example you can see it and also read about selector block to modify it according to your needs.
Sviatoslav Klos
2018-12-5
I can suggest to use some manualization of running simulink.
You can create some kind of 'for' or 'while' cycle with command
set_param('vdp','SimulationCommand','stepforward')
% update constant block variable
cont1=array(1,i);
set_param('modelName','SimulationCommand','update')
end
This may solve your issue.
You may read more about commands here - https://www.mathworks.com/help/simulink/ug/using-the-sim-command.html
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Simulink Functions 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!