前页 | 后页 |
使用 OpenModelica 库进行建模和仿真
此特征可从Enterprise Architect版本 14. 1开始获得。
OpenModelica 库是提供许多有用类型、函数和模型的综合资源。在Enterprise Architect中创建 SysML 模型时,您可以参考 OpenModelica 库中可用的资源。
引用 OpenModelica 库中定义的类型
要配置模拟以引用 OpenModelica 库,首先创建一个指向 OpenModelica 库的 ValueType元素,并将其注册到仿真配置中。
为引用的 OpenModelica类型创建一个元素
- 使用 OpenModelica 库路径的全名创建一个 ValueType元素

将配置元素配置为 'ReferencedType':
- 双击 SysMLSimConfiguration元素以打开“配置SysML配置”选项卡
- 导航到 ValueType元素
- 在下拉字段中将值设置为“ReferencedType”

由于 ValueType元素配置为“ReferencedType”,因此该元素不会显示在“Dependencies”列表中,也不会生成为 OpenModelica 文件的新类定义。
将属性的类型设置为 ValueType元素
在Enterprise Architect中,可以将属性设置为原始类型或元素,例如块或 ValueType。
选项1 :
- 选择属性(部件或端口)
- 按 打开属性窗口
- 切换到“属性”选项卡并选择“选择类型...”
- 浏览到您创建的 ValueType元素
- 选择属性(部件或端口)
- 在属性上按
- 浏览到您创建的 ValueType元素
在仿真中包含 OpenModelica 库
在模型中使用 OpenModelica 库中的引用类型时,您必须在环境中加载 OpenModelica模型才能使仿真工作。
- 展开菜单选项并选择“包含 Modelica 库”

- 如果勾选这个选项,这个函数将默认生成到'Solve.mos':
加载模型(模型);
自定义脚本模板
您可以修改 OpenModelica 脚本模板以添加模型和仿真所需的额外库。选择功能区选项:
开发 >源代码 > 选项 > 编辑代码模板
在“语言”字段中选择“Modelica”,在“脚本”列表中选择“脚本脚本”。
由于您在“loadModel(Modelica)”之后附加了额外的库,因此您的模型可以引用这些库的资源。
示例
此示例基于图 13-11 中的图 13-11:使用 Modelica 3.3 进行面向对象建模和仿真的原理: A Cyber -Physical,第二版,作者 Peter Fritzson。
在这个例子中:
- 我们创建一个ValueType时间,用于块属性的属性first和interval
- ValueType时间在 SysML仿真窗口中配置为“ReferencedType”
- 选择菜单项“包括 Modelica 库”

运行模拟;变量x绘制如下:
采样时间示例
此示例基于图 13-13 中的图 13-13:使用 Modelica 3.3 进行面向对象建模和仿真的原理: A Cyber -Physical,第二版,作者 Peter Fritzson。
在这个例子中:
- 我们创建了一个块Clock ,用于blockSampleTime属性clk
- ValueType时钟在 SysML仿真窗口中配置为“ReferencedType”
- 菜单项“包括 Modelica 库”未选中

运行模拟;变量x和时间图如下所示: