Creating a custom implementation of an Inport block
1 view (last 30 days)
Show older comments
I'm doing some code generation activities in which a control model is developed which contains top level Inports and Outports. This model would then get referenced and used in a plant model. When the code is generated, the Inports and Outports must have integer datatypes. In a typical control model, the input would be an integer scaled by some factor which is then converted into a float and scaled back down.
I'm looking to create a custom implementation or mask of the Inport and Outport blocks with a dialog that allows the user to select an integer datatype and specify a scale factor. The Inport would take the integer datatype when the model is referenced, but then in the control model would output a float that has been scaled by the specified factor.
I can do this with a subsystem where I feed the output of the Inport block in, and use a gain and a datatype conversion block to achieve the desired effect, but I'd like to wrap this all up into one block. Would this be possible, perhaps with a mask on an Inport block?
0 Comments
Answers (1)
Saurabh Gupta
on 18 Aug 2017
It should be doable using a Mask. Edit box parameters allow DataTypeStr type, which you can use for providing Data Type options and then pass the name of the parameter to the actual Data Type parameter on the In-Port. You can restrict which data types can be selected and define a default value as well. I have attached a model (R2016b) containing just a masked in-port for your reference.
Hope this helps!
See Also
Categories
Find more on Create Large-Scale Model Components in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!