Main Content

addPort

Add ports to architecture

Since R2019a

Description

example

ports = addPort(arch,portNames,portTypes) adds a set of ports with specified names portNames and types portTypes. The addPort function adds ports to the architecture of a component or the root architecture of the model. Use <component>.Architecture to access the architecture of a component.

To remove a port, use the destroy function.

ports = addPort(arch,portNames,portTypes,stereotypes) also applies stereotypes specified in stereotypes to a set of new ports.

Examples

collapse all

Create a model, get the root architecture, add a component, and add a port.

model = systemcomposer.createModel("archModel",true);
rootArch = get(model,"Architecture");
newComponent = addComponent(rootArch,"NewComponent");
newPort = addPort(newComponent.Architecture,"NewCompPort","in")
newPort = 

  ArchitecturePort with properties:

                 Parent: [1×1 systemcomposer.arch.Architecture]
                   Name: 'NewCompPort'
              Direction: Input
          InterfaceName: ''
              Interface: [0×0 systemcomposer.interface.DataInterface]
             Connectors: [0×0 systemcomposer.arch.Connector]
              Connected: 0
                  Model: [1×1 systemcomposer.arch.Model]
         SimulinkHandle: 57.0018
    SimulinkModelHandle: 10.0018
                   UUID: 'f3dd03e1-af14-47ed-88c8-0ce301b2da5f'
            ExternalUID: ''

Input Arguments

collapse all

Architecture, specified as a systemcomposer.arch.Architecture object.

Names of ports, specified as a cell array of character vectors or an array of strings. If necessary, System Composer™ appends a number to the port name to ensure uniqueness. The size of portNames, portTypes, and stereotypes must be the same.

Data Types: char | string

Port types, specified as a cell array of character vectors or an array of strings. Available port types follow:

  • "in"

  • "out"

  • "physical"

  • "client" for software architectures

  • "server" for software architectures

Data Types: char | string

Stereotypes to apply to ports, specified as an array of systemcomposer.profile.Stereotype objects. Each stereotype in the array must either be a stereotype that applies to all element types or a port stereotype.

Output Arguments

collapse all

Created ports, returned as an array of systemcomposer.arch.ArchitecturePort objects.

More About

collapse all

Definitions

TermDefinitionApplicationMore Information
architecture

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.

model

A System Composer model is the file that contains architectural information, including components, ports, connectors, interfaces, and behaviors.

Perform operations on a model:

  • Extract the root-level architecture contained in the model.

  • Apply profiles.

  • Link interface data dictionaries.

  • Generate instances from model architecture.

A System Composer model is stored as an SLX file.

Create Architecture Model with Interfaces and Requirement Links
component

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:

Components
port

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.

There are different types of ports:

  • Component ports are interaction points on the component to other components.

  • Architecture ports are ports on the boundary of the system, whether the boundary is within a component or the overall architecture model.

Ports
connector

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.

Connections

TermDefinitionApplicationMore Information
physical subsystem

A physical subsystem is a Simulink® subsystem with Simscape™ connections.

A physical subsystem with Simscape connections uses a physical network approach suited for simulating systems with real physical components and represents a mathematical model.

Implement Component Behavior Using Simscape
physical port

A physical port represents a Simscape physical modeling connector port called a Connection Port (Simscape).

Use physical ports to connect components in an architecture model or to enable physical systems in a Simulink subsystem.

Define Physical Ports on Component
physical connector

A physical connector can represent a nondirectional conserving connection of a specific physical domain. Connectors can also represent physical signals.

Use physical connectors to connect physical components that represent features of a system to simulate mathematically.

Architecture Model with Simscape Behavior for a DC Motor
physical interface

A physical interface defines the kind of information that flows through a physical port. The same interface can be assigned to multiple ports. A physical interface is a composite interface equivalent to a Simulink.ConnectionBus object that specifies any number of Simulink.ConnectionElement objects.

Use a physical interface to bundle physical elements to describe a physical model using at least one physical domain.

Specify Physical Interfaces on Ports
physical element

A physical element describes the decomposition of a physical interface. A physical element is equivalent to a Simulink.ConnectionElement object.

Define the Type of a physical element as a physical domain to enable use of that domain in a physical model.

Describe Component Behavior Using Simscape

TermDefinitionApplicationMore Information
stereotype

A stereotype is a custom extension of the modeling language. Stereotypes provide a mechanism to extend the architecture language elements by adding domain-specific metadata.

Apply stereotypes to model elements such as root-level architecture, component architecture, connectors, ports, data interfaces, value types, functions, requirements, and links. Functions only apply to software architectures. You must have a Requirements Toolbox™ license to apply stereotypes to requirements and links. A model element can have multiple stereotypes. Stereotypes provide model elements with a common set of property fields, such as mass, cost, and power.

Extend Architectural Design Using Stereotypes
property

A property is a field in a stereotype. You can specify property values for each element to which the stereotype is applied.

Use properties to store quantitative characteristics, such as weight or speed, that are associated with a model element. Properties can also be descriptive or represent a status. You can view and edit the properties of each element in the architecture model using the Property Inspector.

profile

A profile is a package of stereotypes that you can use to create a self-consistent domain of element types.

Author profiles and apply profiles to a model using the Profile Editor. You can store stereotypes for a project in one or several profiles. When you save profiles, they are stored in XML files.

Version History

Introduced in R2019a