Setting initial condition of simulink integrator through code

Hi,
I am trying to cchange the initial condition of an integrator in Simulink by using Matlab code. I am using the following lines:
init_cond_integrator=[pi/3;0];
set_param('ClosedLoop_PID_MRFT_with_actuator/Manipulator Dynamics/Integrator1','InitialCondition',num2str(init_cond_integrator));
It gives the following error:
'ClosedLoop_PID_MRFT_with_actuator/Manipulator Dynamics/Integrator1' has unapplied changes. Please apply or cancel these changes before running the simulation.
Any help will be highly appreciated.
Thanks!

Antworten (1)

Fangjun Jiang
Fangjun Jiang am 21 Jul. 2020

0 Stimmen

The error message says you have the dialog window open and changes have not been applied. Click apply or Ok and then proceed.

4 Kommentare

Thanks much, but still the problem was still there with another error of invalid setting.. Though I have solved it using external initial condition option in the integrator. I have connected constant blocks with the external port and I set those constants using set_param in the code.
Fangjun Jiang
Fangjun Jiang am 22 Jul. 2020
Bearbeitet: Fangjun Jiang am 22 Jul. 2020
Most likely, the value needs to be [1.0472; 0], not as shown 1.0472 0
Yes, right, but that seems undoable using the set_param command.
set_param(Block,'InitialCondition',mat2str([1,2]))

Melden Sie sich an, um zu kommentieren.

Kategorien

Produkte

Version

R2019b

Gefragt:

am 21 Jul. 2020

Kommentiert:

am 24 Jul. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by