We often get question how Cameo Systems Modeler (or MagicDraw) and SysML/UML integrates with MATLAB/Simulink? Let’s go through integration use case and current implementations.
Integration Use Case and Implementations
1st Case. Run MATLAB/Simulink Analytical Models From MagcDraw with Parameters from UML/SysML Model and Get Results Back
Systems Modeling Language (SysML) is used to capture systems design as descriptive and analytical system models, which relate text requirements to the design and provide a baseline to support analysis and verification.
SysML Parametric models enforce requirements and capture constraints on the performance or physical properties of systems, which can then be evaluated by an appropriate analysis tool (as MATLAB/Simulink) to support wide variety of engineering analysis and simulations.
Calling of MATLAB/Simulink functions directly in MagicDraw is possible using Cameo Simulation Toolkit. MATLAB is one of the evaluators which is supported. When you call MATLAB function you can pass parameters from the UML/SysML model, execute MATLAB/Simulink model and get results back to UML/SysML model (Fig 1.).
This integration is described in webinar – “SysML model integration with MATLAB/Simulink®”
Integration is demonstrate starting this point:
Find below Matlab “m” file and MagicDraw project file used in this webinar to perform interaction with Simulink steps demonstrated in webinar:
2nd Case. Interchange Structural and Behavioral Model Data Between SysML (IBD, Activity, States) and MATLAB/Simulink and Stateflo
This is possible because Simulink has building blocks to make simulations easier to achieve and have model more readable. This enable interchange, synch, and trace between SysML system model parts to specific analysis models in Simulink, or reuse Simulink models in SysML. Both models can exist at the same time, be in synch or traceable.
For structure interchange, synch, and traceability Syndeia from InterCAX (No Magic, Inc. partners) can be used.
- Populate a Simulink model from SysML IBD or Activity diagram
- Populate a SysML model from Simulink
- Compare and Synch
Integration is discussed starting this point:
Integration with Stateflow:
Other than 1st use case this integration does not create connection to execute Simulink from SysML model.
OMG standard for SysML Extension for Physical Interaction and Signal Flow Simulation (SysPhS)
Last but perhaps the most important is ability to have standard based interchange covering both above use cases.
SysPhS standard is a platform-independent extension of SysML for physical interaction and flow (also known as lumped parameter, one-dimensional, or network models, appearing in simulation platforms such as those supporting the Modelica language and in MathWorks Simulink and Simscape) (Fig 2.).
Cameo Systems Modeler v19.0 SP2 is going to export to both Modelica and Simulink with folowing constraints:
- Diagrams exported: BDD, IBD, Statemachines, Parametrics
- One way transformation, no sync or updates
- No diagram layout for Simulink
More information about SysPhS:
- Web page
- Paper “An Extension of the Systems Modeling Language for Physical Interaction and Signal Flow Simulation”
Let us know your thoughts!