模块封装
本节首先介绍 SimStudio 的模块封装功能,然后通过 X 个案例介绍模块封装的使用方法。该功能仅支持在 SimStudio 平台使用。
主要用途
CloudPSS支持模块化封装建模功能,可将若干复杂元件封装为一个“盒子”,其对外的图标、参数以及引脚均可自定义。模块封装可提高建模效率以及项目的可读性。
通过模块封装的功能,用户可自主构建和保存自定义的模型,模块封装功能的应用场景示例如下:
- 在大规模工程项目中,可能含有大量风机、光伏、直流等设备,每个设备均由多个分立元件构成。可采用模块封装的功能,将每种设备分别封装为一个模块,方便重复调用。
- 某工程项目含有大量元件,可读性较差,需要采用模块化设计的理念提高项目可 读性。
- 您可能希望其它用户也能使用您创作的模型,并能自主决定他们是否能查看到内部细节,方便隐私管理。
模块封装流程
本节介绍模块封装的步骤。模块封装流程分为模块构建、 定义参数列表、 定义引脚列表、 设计图标、 配置调用权限、 保存六个步骤。可点击文档中的跳转链接查看更详细的说明。
模块构建
模块封装之前首先需要创建并编辑模块内部拓扑及参数,本节介绍模块的构建方法。
模块内部实现的构建方法包括拓扑实现、 代码实现、 S-Function 模型实现三种。
在仿真计算中调用模块时,实际调用的是本节介绍的模块内部实现。
拓扑实现
用户可使用已有的 SimStudio 模型库元件,或其他的封装模型,通过拓扑实现的方式构建模块。
- 新建空白电力系统元件
可以在 SimStudio 工作台页面中,点击新建按钮,在弹出框中选择空白电力系统元件,创建空拓扑实现的模块。
- 从已有待封装元件开始
有时,用户已经搭建了一个仿真项目,此时想将项目的一部分元件封装为模块。此时可选中待封装的元件,右键选择创建为模块,并参考项目保存相关文档在弹窗中填写对应的资源ID及名称即可。
代码实现
可以在SimStudio 工作台页面中,点击新建按钮,在弹出框中选择空白Octave元件,创建Octave实现的模块;或者在弹出框中选择空白Python元件,创建Python实现的模块。
具体的Octave及Python元件的实现方法可参考自定义 Octave 元件文档以及 自定义 Python 元件文档
目前在公网平台 (www.cloudpss.net) 中,暂不支持自定义python元件。
S-Function模型实现
S-Function元件的构建方法请参考S-Function 控制元件。
定义元件/模块参数列表
用户可根据需求自定义参数名、参数类型、参数范围等,具体步骤详见定义元件/模块参数列表。
用户可在模块内部引用定义好的参数,详见参数相关文档。
当元件/模块被调用时,用户可在参数卡自行配置参数的具体数值,如下图所示。
定义元件/模块引脚列表
引脚是模块内外区域交互的接口。本步骤的设置将定义模块内部实现与模块端口之间电气与控制的实际连接关系。
用户可根据需求自定义引脚名、引脚类型、引脚维数等,具体步骤详见定义元件/模块引脚列表。
设计元件/模块图标
此步骤将设计模块在调用时显示的图标, SimStudio 提供可高度定制化的的图标设计接口, 详见设计元件/模块图标;
一般情况下,出于规范性和使用便捷性考虑,请依据SimStudio元件图标设计规范进行图标设计。
配置元件/模块调用权限
此步骤将配置模块的调用权限。用户可根据需求,允许或拒绝其它用户使用元件、或查看模块内部细节。
模块调用权限的配置详见配置元件/模块调用权限。
保存
此步骤是模块构建的最后一步,用户可将模块保存至云空间中,供其它项目调用。
模块保存步骤的详细说明详见保存。