Design Architecture Models
Architecture models in System Composer™ describe a system at different levels of abstraction. This mobile robot example presents three architectures:
Functional architecture describes high-level functions and the relationships between them.
Logical architecture describes data exchange between electronic hardware and software components in each subsystem.
Physical architecture describes the physical hardware or platform needed for the robot.
This example uses Simscape™ blocks. If you do not have a Simscape license, you can open and simulate the model but can only make basic changes, such as modifying block parameters.
Design, Specify, and Allocate Architecture Models
The mobile robot example includes a functional, logical, and physical architecture with requirements linked to components and model-to-model allocations defined.
Functional Architecture Model for Mobile Robot
The functional architecture model describes functional dependencies: controlling a mobile robot autonomously, localization, path-planning, and path-following. To open the functional architecture model, double-click the file or run this command.
Logical Architecture Model for Mobile Robot
The logical architecture model describes the behavior of the mobile robot system for simulation: trajectory generator, trajectory follower, motor controller, sensor algorithm, and robot and environment. The connections represent the interactions in the system. To open the logical architecture model, double-click the file or run this command.
Physical Architecture Model for Mobile Robot
The physical architecture model describes the hardware components and their connections: the sensor, actuators, and embedded processor. The colors and icons indicate the stereotypes used for each element. To open the physical architecture model, double-click the file or run this command.
Link Requirements to Components
Requirement traceability involves linking technical requirements to components and ports in architecture models, thereby allowing the connection between an early requirements phase and system-level design. You can easily track whether a requirement is met by connecting components back to stakeholder needs. You can add requirement links by dragging requirements to a component.
To view requirements, open the Requirements Manager by navigating to Apps > Requirements Manager.
Identify Target Position component in the functional architecture model implements the Autonomous Charging requirement,
STAKEHOLDER-05. To show or hide linked requirements, click the requirement icon on the top-right corner of a component.
You can view the requirements linked to the hardware architecture model in the Requirements Browser. After selecting
STAKEHOLDER-04, only components related to the Transportation requirement are shown.
You can allocate functional components to physical components using model-to-model allocations. To open the Allocation Editor, navigate to Modeling > Allocation Editor, or run this command.
Load the allocation sets.
allocSetFunc = systemcomposer.allocation.load("FunctionalAllocation"); allocSetPhys = systemcomposer.allocation.load("PhysicalAllocation");
Allocate Functional to Physical Architectures
Scenario 1 under the
FunctionalAllocation allocation set.
Select the Component in the Row Filter and Column Filter sections. The Allocation Editor tool allows you to link components between different architecture models to establish traceability for your project. Double-click the boxes in the allocation matrix to allocate or deallocate two elements.
In the functional architecture, the trajectory generator requires components such as
Identify Target Postion,
User Input, and
Compute Self Position, so these components are allocated to the
Trajectory Generator component in the logical architecture.
Allocate Logical to Physical Architectures
Scenario 1 under the
PhysicalAllocation allocation set.
The autonomy of a vehicle is mostly handled by a target machine, which is an embedded computer responsible for processing sensor readings to calculate control inputs. Therefore, many functional components like
Sensor Fusion, and
Trajectory Generator are allocated to the
Target Machine component in the physical architecture model.