可以遵循 CruiseControlSystem 模拟示例,以激活
并运行对动态模型的模拟。
开始之前
将 Simulink 组件集成到 Rational® Rhapsody® 模型中需要以下软件:
- 必须提供具有许可证并带 Simulink V6 的 Matlab 7 以及从 Simulink 模型中生成 C 和 C++ 代码的 Real-Time Workshop。
- Rational Rhapsody V7 或更高版本的产品。
过程
- 打开使用 C 或 C++ 代码的新 Rational Rhapsody 模型或现有模型。
- 可选:添加 SysML 概要文件。
- 在概要文件使用 C 语言的情况下,添加 Simulink 或 SimulinkInC。
- 创建一些新块,并为这些块指定 SimulinkBlock 构造型。
这些块表示连续的子系统。
- 右键单击每个 SimulinkBlock 并选择导入/同步 Simulink 模型。

- 在“导入/同步 Simulink 模型”中,选择 Simulink 模型,然后单击导入/同步按钮。

- 创建一些新块并实现这些块的行为。这些块是离散的子系统。
- 创建一个将作为构建器块的新块,并为其指定 SimulinkStructureBlock 构造型。
- 打开 SimulinkStructureBlock 的特征对话框窗口,再打开标记选项卡,然后填写 Simulink 模拟所需要的信息。

- 创建 SimulinkStructureBlock 的内部块图 (IBD),添加
Rhapsody 和 SimulinkBlocks 的部件,然后通过连接符(链接)来连接部件的流端口。

- 右键单击 SimulinkStructureBlock 或在内部块图 (IBD) 中单击右键,然后选择 Simulink 子菜单下面四个选项中的一个
- 生成:生成 SimulinkStructureBlock 作为
Simulink 模型。将不会检测 Rhapsody 所生成的代码。
- 生成和模拟:生成 SimulinkStructureBlock 作为
Simulink 模型,然后自动启动 Simulink 模拟。
- 生成动画:生成 SimulinkStructureBlock 作为
Simulink 模型。您将看到的只有 Rhapsody 块的动画。
- 生成和模拟动画:生成 SimulinkStructureBlock 作为
Simulink 模型,然后自动启动 Simulink 模拟。

最后,Matlab 将打开,创建并编译一个新的 SFunction,并且出现了表示
SimulinkStructureBlock 的新 Simulink 模型。SimulinkBlock、PropFeedback
和 EnvironmentReaction 以常规 Simulink 子系统的形式存在,而且所有 Rhapsody
块都被转换为一个通过 Rhapsody 生成的代码实现的 SFunction。

结果
现在,可以在 Simulink 中对系统进行模拟。左侧的作用域图像表示 desiredSpeed 模拟示例,而右侧的图像表示 actualSpeed
模拟示例。
