Engee 文档

恩吉的示范建筑

使用特定模块构建模型架构的实用指南见Engee 模型架构的实际工作 一文。

任何模型,即使是最复杂的模型,都可以由单个模块构建。然而,随着图块数量的增加,困难也不可避免地出现了。因此,如果模型由许多模块组成,要了解必要元素的位置及其相互作用就会变得很困难。在这种情况下,维护和修改模型将耗费大量时间。因此,为了清晰和简化,建议使用子系统将复杂的模型划分为语义相同的部分。

子系统是一个块子系统 ,旨在创建模型的层次结构。例如,在子系统的帮助下,可以实现如下模型

  • 20 个描述车轮行为的块连接到车轮子系统;

  • 300 个与发动机有关的模块连接到 "发动机 "子系统中;

  • 在 "船体 "子系统中连接 50 个与船体有关的模块。

这种联合创建了一个中间抽象层次,使用逻辑对象而不是单个模块。因此,我们可以得到以下条件模型:

subsystem model example 1

通过子系统过渡到一定的抽象程度,可以:

  • 从实际对象(发动机、变速箱、底盘)的角度思考问题,而不是从信号和块的角度思考问题;

  • 将某些子系统组合到其他更大的子系统中,提高抽象程度;

  • 只需一个操作即可禁用或替换整个子系统,而无需手动修改程序块。

这反过来又形成了许多优势:

  • 拆分调试—​借助子系统,您可以隔离和测试模型的各个部分。例如,首先要确保发动机正常工作,然后再检查它与变速箱的交互情况;

  • 子系统内的逻辑 - 子系统不再只是另一个块中的一组块。它们成为具有自身逻辑的对象:可以对外部信号做出反应,在特定条件下激活(参见Engee 模型架构的实际工作 );

  • 使用掩码—​掩码可以隐藏子系统复杂的内部细节,只显示重要参数或在子系统之上配置附加功能;

  • 灵活性和重复使用—​可在不同的模型中重复使用 块。您还可以对结构进行试验,改变模块或其参数,以评估结果。

在*Engee*中,不仅子系统可以用来创建抽象层次。子模型(块模型 )是下一个步骤,它允许您将模型作为单独的对象来处理,从而实现以下功能:

  • 引入并行开发—​通过使用*模型*块,可以在不同专家之间分配开发工作。例如,一名工程师负责 "车轮 "子系统,另一名工程师负责 "发动机"。在这种情况下,他们只负责自己感兴趣的领域,不会给对方的子系统带来潜在的错误或不必要的编辑。只需在所需模型中更新 Model 块,即可轻松将它们的更改纳入主模型;

  • 版本化和重复使用模块--Model 模块非常适合保存整个模型,以便将来重复使用或集成。

从子系统/子模型创建模型的基本步骤

  1. 初始阶段是从单个模块建模。这种方法适用于细节比结构更重要的小型模型。

  2. 过渡到子系统—​模型开始按功能模块分组。例如,由 100 个块组成几个子系统:发动机、变速箱、底盘。

  3. 使用子模型和遮罩 - 机会出现了:

  4. 最后阶段是创建一个集成多个子模型的整体系统。这是以模型为中心的设计所特有的分层设计方法。

创建模型的建议

块的数量

尽量在一个嵌套层使用不超过 10 个块,以保持模型的可读性。

子系统的组织

将模型组织成逻辑节点:每个子系统块应代表系统的一个功能元素。

子模型的内容

对于细节要求较高的复杂组件,应使用子模型,留下子系统来组合功能单元。

灵活性和模块化

在设计模型时,应确保可以通过更换组件或修改逻辑来轻松更改模型。

一般建议:* *

  • 将模型分解成逻辑部分。

  • 使用遮罩来隐藏复杂部分并简化交互。

  • 坚持分层方法:最高层应简单且符合逻辑。

  • 在每个阶段检查和测试子系统,确保模型正常运行。