Simulating dynamic systems with MathWorks Simulink

You can now use IBM® Engineering Systems Design Rhapsody® with MathWorks Simulink to simulate a system which consists of discrete and continuous subsystems.

About this task

Rhapsody allows you to integrate MathWorks Simulink models into Rhapsody designs. MathWorks Simulink models are represented as Simulink blocks in the UML model, and these blocks can interact with Rhapsody objects, parts, or other Simulink blocks.

Note: You can create a Simulink SFunction with Rhapsody for C++ and C models. The workflow for C++ is the same as for C.

As system engineers you have to model many aspects of dynamic systems like requirements, use cases, structure, behavior of controllers, behavior of plants, and so on. In order to validate the models, you have to simulate the models to see if the models perform as expected. Rhapsody provides a simulation mechanism for discrete or event driven systems.

The simulation feature models Rhapsody discrete subsystems as regular SysML blocks with statechart or activity behavior. The continuous subsystems are modeled in Rhapsody as whitebox SimulinkBlock with a reference to the Simulink model they represent. You can create a builder class containing parts of the Rhapsody blocks and the SimulinkBlocks, and from this builder class, you can create a Simulink model in which all Rhapsody's blocks are transformed into a S-function. After that, you can simulate the system in Simulink using its variable step solving.

You can add Flowports to a SimulinkBlock if the model has a Simulink profile applied to a class or block and a SimulinkBlock stereotype. To add the flowports, click SimulinkBlock, and select Simulink > Export. The Flowports on the block are transformed into a Simulink Inport or Simulink Outport.

The CruiseControlSystem example is used to show how you can activate the simulation feature for a dynamic model, and run the simulation of a SysML model with Mathworks Simulink.