Answer to question 1: No, this is not a place the configurable subsystem. The configurable subsystem doesn't allow nesting of other configurable subsystems. So sad. :(
Managing High Levels of Variation in a Simulink Library
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Jason Nicholson
am 29 Mär. 2018
Kommentiert: Jason Nicholson
am 30 Mär. 2018
I am a blockset author similar the authors of "Aerospace Blockset" and "Powertrain Blockset." I build mathematical models of hydraulic pumps used in offroad vehicle models. The products I model have a high amount of configuration. One library contains one 1 subsystem at top level that represents a whole family of pumps. Possible combinations are something like 1e6 or more but only about 1e3-1e4 configurations are used in practice. Using a Simulink library seems the most appropriate way to maintain my mathematical models. With a library, it is general bad practice to use the base workspace because of conflicts with other copies of the library in a single Simulink model file. Variant Subsystems depend on the base workspace or a data dictionary usually. Libraries cannot use data dictionaries I have learned. Variant Subsystem requires configuration one of three ways:
- Variant object or Parameter object in the base workspace or data dictionary.
- Conditional expression that can be evaluated from variables in the base workspace.
- Or using the “OverrideUsingVariant” with set_param configure a Variant subsystem.
I do not want to use the first two ways because they require the base workspace or data dictionaries which I have already established I cannot use. Therefore option 3 is my only option. There is a problem that I ran into. You cannot configure nested variant subsystems except from above or at the top level variant subsystem. i.e. If you have 4 levels of variant subsystems nested, level 1 (or above) must configure level 2, 3, and 4. I would prefer to do the configuration of level 3 from level 2 because of the flexibility that allows. Configuring multiple levels from the top level makes changes have very broad reaching effects. When I must configure using OverrideusingVariant down 4 levels, any change to the name or location of the blocks between 1 and 4 breaks the chain of configuration at the top level. This is not desirable. This is painful.
- Is this an appropriate place to use a "configurable subsystem” instead of a Variant Subsystem?
- Thoughts or approaches to manage high levels of configuration in a library model?
Akzeptierte Antwort
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Component-Based Modeling finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!