Sysplorer快速入门vunknown

Sysplorer快速入门

版本 unknown · 46 节

第 1 页


第 2 页


3. 模型库与元件拖放操作

在 Sysplorer 中,模型库(Modelica Standard Library 及用户自定义库)是构建系统模型的核心资源。本节介绍如何从模型库中选取元件并将其拖放到建模画布上,这是建立物理模型的第一步。

3.1 访问模型库面板

启动 Sysplorer 后,默认界面左侧为模型库浏览器(Library Browser)。该面板以树形结构展示所有已加载的库,包括:

  • Modelica:标准模型库,包含电气、机械、热力学、液压等领域的元件模型。
  • 用户自定义库:通过 File > Open Model/Library 加载的 .mo 文件。

提示:若模型库面板未显示,可通过菜单 View > Library Browser 重新打开。

3.2 浏览与搜索元件

在模型库树中,双击任意库名称可展开其子目录。例如,展开 Modelica > Electrical > Analog > Basic 可找到电阻(Resistor)、电容(Capacitor)、电感(Inductor)等基本元件。

如需快速定位特定元件,可使用面板顶部的搜索框(Search)输入关键字(如 Resistor),系统将自动过滤匹配结果。

3.3 拖放元件到画布

操作步骤如下:

  1. 选中元件:在模型库树中单击目标元件(如 Resistor),其图标会高亮。
  2. 拖放操作:按住鼠标左键,将元件拖拽至中央的建模画布(Diagram View)上,然后释放鼠标。
  3. 放置结果:画布上会出现该元件的图形符号,同时元件浏览器(Component Browser)中会新增一条记录,显示该元件的实例名称(如 resistor1)和所属库路径。

从模型库拖放电阻元件到画布MWORKS

上图展示了从 Modelica 标准库拖放 Resistor 元件到画布后的界面状态。左侧为模型库树,中央画布显示了电阻符号,右侧属性面板可编辑参数。

3.4 调整元件位置与方向

  • 移动:在画布上单击选中元件(显示蓝色边框),然后拖拽即可移动位置。
  • 旋转:选中元件后,按键盘 Ctrl + R 组合键可顺时针旋转 90 度;或右键点击元件,选择 Rotate
  • 删除:选中后按 Delete 键,或右键选择 Delete

3.5 批量添加多个元件

重复上述拖放操作,可从不同库中依次添加多个元件。建议在添加过程中保持画布整洁,使用对齐网格(Grid Snap)功能(默认开启)辅助定位。

完成元件放置后,下一步将进行元件之间的连接,通过绘制连线建立物理拓扑关系。


第 4 页


第 5 页


第 6 页


第 7 页


第 8 页


第 9 页


第 10 页


第 11 页


第 12 页


第 13 页


第 14 页


第 15 页


第 16 页


第 17 页


第 18 页


第 19 页


第 20 页


第 21 页


第 22 页


第 23 页


第 24 页


第 25 页


第 26 页


第 27 页


2. 架构实现

在完成模型的前期准备后,下一步是在 Sysplorer 中搭建系统的物理架构。架构实现的核心是将系统分解为具有明确物理意义的组件,并通过连接器定义它们之间的交互关系。

2.1 创建组件与子架构

系统架构通常采用层次化设计。首先,在模型编辑区中,通过拖拽或使用工具栏中的 “添加组件” 按钮,创建一个代表顶层系统的组件。对于复杂的系统,可以在此组件内部继续创建子组件,形成树状结构。每个组件都应被赋予有意义的名称,例如 EngineControllerLoad

2.2 定义物理端口

组件之间的能量或信号传递通过端口实现。选择需要交互的组件,在其边界上添加物理端口。端口类型必须与所传递的物理量匹配。例如,对于机械旋转系统,应使用 Flange 端口传递扭矩和转速;对于电气系统,则使用 PinPlug 端口传递电压和电流。

端口类型选择原则:端口的物理属性(如“机械旋转”、“电气模拟”、“热流”)决定了该组件可以连接的对象。错误的端口类型会导致模型无法编译或仿真结果异常。

2.3 建立连接

完成端口定义后,通过连线工具将不同组件的端口连接起来。连接操作非常简单:点击一个端口,拖动鼠标至另一个端口,当出现高亮提示时释放鼠标,即可建立物理连接。

架构实现与端口连接MWORKS

如图所示,连接后的架构会清晰显示各组件之间的物理通路。连接线通常代表能量流或信号流,其颜色和样式(如实线或虚线)可帮助区分不同的物理域。例如,机械连接用粗实线,信号连接用细虚线。

2.4 验证架构完整性

在继续进行参数设置或仿真之前,务必检查架构的完整性。Sysplorer 提供“模型检查”功能(通常位于 “分析” 菜单下或工具栏中的 “检查” 按钮)。执行检查后,软件会报告:

  • 未连接的端口(可能导致悬空警告)
  • 类型不匹配的连接(如机械端口连接到了电气端口)
  • 缺失必要参数的组件

完成架构实现后,模型的基本拓扑结构就确定了。下一步将进入参数设置阶段,为每个组件赋予具体的物理参数值,如电阻、惯量、增益等。


3. 架构实现

在完成系统架构的顶层设计后,需要将架构模型转化为具体的实现代码。MWORKS 的 Sysplorer 环境支持通过管道(Pipe)架构模式,将系统功能模块化并生成可执行的程序代码。

3.1 管道架构的基本概念

管道架构是一种将系统分解为若干独立处理单元的设计模式,每个单元(称为“过滤器”)负责特定的数据处理任务,单元之间通过“管道”进行数据传递。这种架构模式特别适用于信号处理、数据流转换等场景。

管道架构:一种将系统功能分解为多个顺序执行的处理阶段,每个阶段通过标准接口进行数据交换的软件架构模式。

3.2 在 Sysplorer 中实现管道代码

在 Sysplorer 中实现管道架构的步骤如下:

  1. 创建管道组件:在模型浏览器中右键点击目标目录,选择“新建” → “组件”,将组件类型设置为“管道(Pipe)”。这会在工作区中创建一个空的管道容器。

  2. 定义过滤器单元:双击打开管道容器,在管道编辑器中添加过滤器单元。每个过滤器代表一个独立的数据处理模块,例如 InputFilterProcessFilterOutputFilter

  3. 连接管道:使用连接线工具将过滤器按照数据流向依次连接。连接线的方向代表数据流动的方向,从上游过滤器指向下游过滤器。

  4. 配置过滤器参数:为每个过滤器设置具体的处理参数。例如,对于信号处理过滤器,可以设置采样率、滤波器阶数、截止频率等参数。

  5. 生成代码:在管道编辑器中点击“生成代码”按钮,Sysplorer 会自动生成对应的 C 或 C++ 代码框架。代码框架包含每个过滤器的接口定义和管道连接逻辑。

3.3 代码示例

以下是一个简单的管道代码框架示例(MWorks 语法):

// 管道定义示例
Pipe MyDataPipeline {
    // 定义过滤器
    Filter inputFilter;
    Filter processFilter;
    Filter outputFilter;
    
    // 管道连接
    Connect(inputFilter.output, processFilter.input);
    Connect(processFilter.output, outputFilter.input);
    
    // 执行逻辑
    Execute() {
        inputFilter.ReadData();
        processFilter.Process();
        outputFilter.WriteData();
    }
}

3.4 架构实现的验证

完成代码生成后,可以通过 Sysplorer 的仿真功能验证管道架构的正确性:

  • 运行仿真,观察数据在管道中的流动是否按预期顺序执行
  • 检查每个过滤器的输出结果是否符合设计要求
  • 使用调试工具单步执行,定位可能的逻辑错误

管道架构实现界面MWORKS

通过以上步骤,可以在 MWORKS 中高效地将架构设计转化为可执行的管道代码,实现系统功能的模块化开发和验证。


第 30 页


第 31 页


第 32 页


第 33 页


第 34 页


第 35 页


第 36 页


第 37 页


第 38 页


第 39 页


第 40 页


第 41 页


第 42 页


第 43 页


第 44 页


第 45 页


第 46 页