How can I change a parameter in a Simulink block using code setVariable?
2 views (last 30 days)
Show older comments
Carlos Santiago Moreno Lozano
on 20 Jan 2021
Edited: Carlos Santiago Moreno Lozano
on 8 Feb 2021
I do a simply circuit simulation, a voltage source DC and a resistence, i create 2 variables A = amplitude DC source and R = resistance, when try change this variables ony change A but R not change in the block so the out is not the rigth.
I do this
In = Simulink.SimulationInput('Sim');
In = In.setVariable('A',10);
In = In.setVariable('R',20);
In = simulink.compiler.configureForDeployment(In); % I need this
out = sim(In);
2 Comments
Rhea Chandy
on 4 Feb 2021
From what I understand, you're trying to update the variables 'A' and 'R' programmatically, but the variable R is not updating as expected. Can you share the model you're working on so that I can recreate the issue and investigate further?
Accepted Answer
Mark McBroom
on 6 Feb 2021
Since the variables you are trying to change are in the Model Workspace, you need to add an optional argument specifying this.
In = In.setVariable('R',2, 'Workspace', 'RL')
In = In.setVariable('A',20, 'Workspace', 'RL')
Thanks.
Mark.
1 Comment
More Answers (0)
See Also
Categories
Find more on Electrical Sensors in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!