Add components with alternative designs
Alternative Configurations of Variant Component Block:
Variant Assembly Component
Use a Variant Component block to create multiple design alternatives for a component.
Add ports to the block to connect to other components. Define an interface for the ports, add properties associated with the component using stereotypes, and define parameters.
To add or connect System Composer™ components:
Add an architecture Variant Component block from the Modeling tab or the palette. You can also click and drag a box on the canvas, then select the Variant Component block. You can also create a variant component from a Component block or Reference Component block. Right-click on the component and select Add Variant Choice.
To add a port, select an edge of the component and choose a direction from the menu:
Click and drag the port to create a connection. Connect to another component. You can also create a new component to complete the connection.
To connect Variant Component blocks to architecture or composition model root ports, drag from the component ports to the containing model boundary. When you release the connection, a root port is created at the boundary.
You can add a mask icon to your component to illustrate the system represented by your component. For more information, see Add Mask Icon on Component.
To manage Variant Component choices:
By default, two variant choices are created when you create a Variant Component block. Right-click the Variant Component block and select Variant > Label Mode Active Choice, then select the active choice.
To add an additional variant choice, right-click on the Variant Component block and select Variant > Add Variant Choice.
Double-click into the Variant Component block to design the variants within it.
Use the Variant Manager to easily switch between variant choices in a complex model hierarchy. Right-click on the Variant Component block and select Variant > Open in Variant Manager. For more information, see Variant Manager for Simulink.
Source — Input connection from another component
If you connect to a source component, the interfaces on the ports are shared.
Destination — Output connection to another component
If you connect to a destination component, the interfaces on the ports are shared.
Variant Assembly Component — Add Model, or Subsystem Reference blocks as variant choices
A Variant Assembly Component block is a template that enables you to add or remove its variant choices from external sources without modifying the model. A Variant Assembly Component block can contain Model blocks, Subsystem Reference blocks, or both as its variant choices. You specify the source of variant choices in the block parameter dialog box once and then modify the source to add or remove the variant choices from the block. Unlike Variant Component, you cannot add inline components as the variant choices inside the Variant Assembly Component block. To convert a Variant Component block to a Variant Assembly Component block, follow the steps in Convert Variant Component to Variant Assembly Component. The conversion from Variant Component to Variant Assembly Component is not supported for software architecture and AUTOSAR architecture. The Variant Assembly Component is the same as the Variant Assembly Subsystem in Simulink®.
A System Composer architecture represents a system of components and how they interface with each other structurally and behaviorally.
Different types of architectures describe different aspects of systems. You can use views to visualize a subset of components in an architecture. You can define parameters on the architecture level using the Parameter Editor.
A System Composer model is the file that contains architectural information, including components, ports, connectors, interfaces, and behaviors.
Perform operations on a model:
A System Composer model is stored as an SLX file.
|Create Architecture Model with Interfaces and Requirement Links|
A component is a nontrivial, nearly independent, and replaceable part of a system that fulfills a clear function in the context of an architecture. A component defines an architectural element, such as a function, a system, hardware, software, or other conceptual entity. A component can also be a subsystem or subfunction.
Represented as a block, a component is a part of an architecture model that can be separated into reusable artifacts. Transfer information between components with:
A port is a node on a component or architecture that represents a point of interaction with its environment. A port permits the flow of information to and from other components or systems.
These are different types of ports:
Connectors are lines that provide connections between ports. Connectors describe how information flows between components or architectures.
A connector allows two components to interact without defining the nature of the interaction. Set an interface on a port to define how the components interact.
A variant is one of many structural or behavioral choices in a variant component.
Use variants to quickly swap different architectural designs for a component while performing analysis.
A variant control is a string that controls the active variant choice.
Set the variant control to programmatically control which variant is active.
|Set Variant Control Condition|
Introduced in R2019a