How to convert block parameters into input ports in Simulink

9 views (last 30 days)
Khashayar Olia
Khashayar Olia on 22 May 2017
Commented: Arshad Shaik on 17 Feb 2022
Hi, I would like to know if there is any way to convert block parameters into input ports? For example I have a Multi-Port Switch and I would like to enter the "Number of data ports" as an input:
I know we can control this parameter through Matlab workspace, but I'm wondering if there is any way to control through an input.
Thanks, --Kash

Answers (2)

David Ding
David Ding on 25 May 2017
Hi Khashayar,
It depends on the blocks you are working with. For example, in your case of a Multiport Switch, this is possible. Simply connect the first inport with a constant block. The value of the constant block will determine the number of inputs for the Multiport Switch. The value of the Constant block can be extracted as follows:
str2double(get_param('testModel/Constant', 'Value'))
I am attaching the screenshot "testModel.png" for your reference.
Thanks,
David
  1 Comment
Arshad Shaik
Arshad Shaik on 17 Feb 2022
David,
Is there a way to convert block parameters - Integrator High limit and Low limit - into the input signals to the Integrator block?
Appreciate your response.
Thank you,
Arshad S.

Sign in to comment.


Khashayar Olia
Khashayar Olia on 25 May 2017
Hi David, You're right, it depends on the block. I'm using embedded coder for TI c2000 microcontrollers and would like being able to change the Message identifier and Message type dynamically while the software is running:
I guess the only way to control these two parameters dynamically is to define two inputs so I would be able to feed them with desired values. But I think it's impossible in Simulink.
--Kash

Community Treasure Hunt

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

Start Hunting!

Translated by