How to change the value of constant while simulation is running

98 visualizzazioni (ultimi 30 giorni)
Hi,
I would like to change the value of a constant on simulink but I get the following error:
"Cannot change parameter 'Value' of 'untitled/Constant' while simulation is running. The block was made virtual as it was optimized for simulation"
Somebody please help me in this regard
  1 Commento
Adam
Adam il 30 Giu 2017
I don't use Simulink, but surely the whole purpose of a constant is that it is constant?!

Accedi per commentare.

Risposte (3)

Vincent Nicolazzo
Vincent Nicolazzo il 6 Mar 2019
Check out this link. It's not the best method but it worked for me. I would run my simullation and change the value of the constant in the command window.

Roadrunner Development
Roadrunner Development il 18 Mag 2020
I had the same issue. When you run simulation, and want to change the paramter in real-time, use set_param command line function. However, enable that signal for logging before running the simulation. I do not know why is this so, but I found it out by chance, and it works.
On the other hand, if you run real-time code on a target machine (speedgoat for example), use setparam and getparam. No logging necessary.
  1 Commento
Mikhail Savastianov
Mikhail Savastianov il 22 Ott 2021
Hi! Your advice does not work for me. I can change parameters during the simulation only. When I run my model on hardware in real time, nothing works (neither slider, nor setparam). Logging the signal does not change anything.

Accedi per commentare.


Saeed Ahmadzadeh Mahboobi
Saeed Ahmadzadeh Mahboobi il 19 Nov 2020
If you want to do it during the simulink simulation, then the block "IC" in simulink/sinks , which is a "initial condition" block, and can change in each simulink iteration, might be helpful.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by