MATLAB Answers

Updating Simulink Block Parameters using Matlab Scripts

2 views (last 30 days)
Karthik SP
Karthik SP on 8 Jan 2020
Answered: Fangjun Jiang on 8 Jan 2020
Hi,
I am working on an application which involves me to write a script to automatically launch a Simulink Code and Run it.
I am able to load the model and run it using the 'Sim' command. I am also able to initialize parameters of the blocks using the 'set_param' command.
What I am not able to do is to change the values of these parameters dynamically while the Simulink Model (with end time as inf) is running? Is there a way to implement this?
E.g.:
cd C:\Users\INSL-CustED01\Desktop;
Sine_Wave;
sim('Sine_Wave');
set_param('Sine_Wave/Offset','Value','10');
Starts running the Model which has a Sine Wave Block with a Scalar 'Offset' being added to it. The model starts with an offset of 10. Now, I want to write additional commands to dynamically change the Value of Offset while the Model is running.

  0 Comments

Sign in to comment.

Answers (1)

Fangjun Jiang
Fangjun Jiang on 8 Jan 2020
set_param(YourModel, 'SimulationCommand', 'pause');
set_param(YourBlock, parameter, value);
set_param(YourModel, 'SimulationCommand', 'continue');

  0 Comments

Sign in to comment.

Sign in to answer this question.