前页 后页

Open Modelica入门

开始使用Modelica和Enterprise Architect的机器进行参数模拟的简单方法是查看一些现有示例。这对于Enterprise Architect任何功能都是有用的学习设备,但是在学习Modelica的功能时尤其重要,因为有很多新东西需要学习,最好使用一些学习工具来完成。我们将从查看示例模型中获得的完整示例开始,该示例模型随Enterprise Architect每个安装一起分发,可从“ 开始”功能区上的“ 帮助”项获得。

我们将探讨的示例是Pendulum示例,但首先需要打开示例模型,方法是选择功能区选项:

开始>帮助>帮助>资源>打开示例模型

可以将Modelica功能与其他仿真功能方便地组合在一个位置,并且可以使用“仿真”功能区的“系统行为”面板中提供的Modelica / Simulink菜单启动。 Modelica设施使公司拥有其他仿真工具,例如可执行状态机,决策模型表示法和BPSim。

加载模型后,我们可以使用Enterprise Architect的Modelica功能定位摆锤 模型中的示例。复杂系统的模型通常非常大,并且可以建立许多现有的模拟,因此Enterprise Architect提供了一种搜索这些模拟的机制。

选择此选项将返回SysML仿真配置工件的列表,这些是指定OpenModelica详细信息的元素。从该列表中,我们可以选择Pendulum示例,这将启动一个窗口,该窗口可用于配置和解决示例中编码的问题。为了能够运行模拟,必须在运行Enterprise Architect的计算机上安装OpenModelica版本。下一节包含有关如何安装OpenModelica的详细信息。

窗口分为两部分:

  • 配置(左侧)面板定义了“值类型”,“块”和“约束属性”,所有这些都在存储库中定义,并且-稍后我们将看到-可以在“浏览器”窗口和图表中查看
  • 模拟(右侧)面板用于选择和指定将影响模拟的选项,例如数据集,模拟的等待时间和持续时间,输出文件类型等等。

窗口中的信息自动从“浏览器”窗口中可见的模型中填充,并且可以使用上下文中的“在项目浏览器中查找”选项找到元素的位置(包括值类型,块和约束属性)。菜单。还有一个类似的选项,可以在出现的任何图中找到所选元素。

安装OpenModelica

Enterprise Architect利用了OpenModelica平台的功能,因此,当您从“模拟”窗口运行模拟时,它实际上是在调用OpenModelica(安装在同一台计算机上)进行繁重的工作并返回模拟结果。这确保了Enterprise Architect利用此开放工具的力量以及为实现卓越性做出贡献的所有聪明才智。 Windows和Linux都有Open Modelica版本,您将需要安装适合您的环境的版本。步骤总结如下。

  1. 下载OpenModelica软件(Windows或Linux)。
  2. 安装软件。
  3. 检查安装。
  4. 通过在Enterprise Architect指定路径来配置Enterprise Architect求解。
有关安装和配置的完整详细信息,请参见与OpenModelica互通帮助主题。

使用数据集进行仿真

仿真构成工程分析的重要方面,并提供了一种功能强大且经济高效的方式来分析系统行为。该系统可能已经构建或计划进行开发;无论哪种方式,仿真都可以用于可视化组件或系统设计注意事项,性能优化,安全工程等等。为了提供此功能,具有使用变量和常量的不同值运行模拟的能力很重要。例如,在我们的钟摆示例中,我们可能想分析系统在不同行星上的运行情况,例如:

  • 地球对月球(或其他行星)引力的影响。
  • 字符串长度不同的影响
  • 不同群众的影响
  • 不同起点的影响
  • 或以上的任何组合

Enterprise Architect提供了可用于模块级的模拟数据集工具。使用SysMLSim Configuration窗口的“ Simulation”选项卡(右侧面板),我们可以选择预定义的数据集。

可以定义任意数量的数据集,并可以将其添加到“模拟”窗口的“配置”(左侧)面板中的相应块中。这些可以作为每个块下的节点使用,并且可以使用数据集行上的“浏览”按钮来查看和编辑窗口中的数据值。

选择后,将打开“配置模拟数据”窗口,允许查看和编辑,导入或导出值。这种机制意味着可以在许多不同的上下文中重用仿真机制,而专注于特定类型问题的工程组织可以创建可以在多种上下文和类型的工程问题中重用的仿真库。此处显示的窗口显示了一个数据集,该数据集包含与我们一直在研究的两个摆锤问题有关的值,并且我们可以看到一个示例,由于月球重力而产生的加速度被定义为大约1.6 m / s2,大约为16.6%。地球表面的价值。可以使用适用于火星或木星的不同数据集或在具有不同质量或长度的弦的更陆地示例中重用此模拟。