How to change simulink variable from matlab script?
19 views (last 30 days)
Show older comments
David Boelke on 10 Oct 2022
Answered: David Boelke on 21 Oct 2022
This is a simplified example of the problem I am facing.
What I have:
I have a simulink model (PT1.slx):
And I have a matlab script (control.m):
% clean up
% use simulink
% plot results
The script, can set the value of a constant, start the model and plot the output, neat!
What I want:
I want to be able to control the value inside my transfer function from my matlab script, for instance this:
What I have tried:
I have found out, that you can't control values like the one circled in red from datalines, for numeric reasons. But I can create a 'variable' for this value and control it from the 'model explorer', but how I can control my variables from a matlab script I do not know.
I have read through the 'set_param' help to see if it could be used for my purposes, but it seems I need a different tool.
I have searched around and found forum entries like
It talks about how someone can control 'simulink parameters', I don't think that is the same as a 'variable'.
Benjamin Thompson on 10 Oct 2022
Here is a link to documentation on working with model workspace variables:
More Answers (2)
Fangjun Jiang on 10 Oct 2022
Edited: Fangjun Jiang on 10 Oct 2022
You can use set_param().
'[1 1 0]'
1 1 0
1.0000 1.5000 0
'[1 1.5 0]'
Find more on Programmatic Model Editing 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!