导入和导出架构
在 System Composer™ 中,架构由以下三组信息完整定义:
组件信息
端口信息
连接信息
当这些信息在 MATLAB® 表中定义或转换为 MATLAB® 表时,您可以将架构导入到 System Composer 中。
在此示例中,我们在一个 Microsoft® Excel® 电子表格中定义了一个简单的无人驾驶飞行器 (UAV) 系统的架构信息,用它来创建 System Composer 架构模型。它还将元素与指定的系统级需求链接起来。您可以修改本示例中的文件,以便在数据包含所需信息时导入外部工具中定义的架构。该示例还显示了如何将这些架构信息从 System Composer 架构模型导出到 Excel 电子表格。
架构定义数据
您可以将架构描述为一个组件网络,并在 MATLAB 表中定义组件、端口、连接、接口和需求链接,然后导入。components
表必须包括每个组件的名称、唯一 ID 和父组件 ID。电子表格还可包括构建引用模型架构层次结构所需的其他相关信息,以及构造型限定符名称。ports
表必须包括端口名称、方向、组件和端口 ID 信息。还可能需要端口接口信息来为组件分配端口。connections
表包含连接端口的信息。该表至少须包括连接 ID、源端口 ID 和目标端口 ID。
systemcomposer.importModel(importModelName)
函数:
从
components
表中读取构造型名称,并将配置文件导入到模型中创建组件并连接端口
使用连接图创建连接
设置端口上的接口
将元素链接到指定需求(需要 Requirements Toolbox™ 许可证)
保存引用模型
保存架构模型
实例化适配器类,以便从 Excel 中读取数据。
modelName = "simpleUAVArchitecture";
ImportModelFromExcel
函数读取 Excel 文件并创建 MATLAB 表。
importAdapter = ImportModelFromExcel("SmallUAVModel.xls","Components", ... "Ports","Connections","PortInterfaces","RequirementLinks"); importAdapter.readTableFromExcel();
导入架构
model = systemcomposer.importModel(modelName,importAdapter.Components, ... importAdapter.Ports,importAdapter.Connections,importAdapter.Interfaces, ... importAdapter.RequirementLinks);
在生成的模型中自动排列模块。
Simulink.BlockDiagram.arrangeSystem(modelName)
导出架构
您可以将架构导出到 MATLAB 表,然后将表转换为外部文件。
exportedSet = systemcomposer.exportModel(modelName);
函数的输出是一个包含组件表、端口表、连接表、接口表和需求链接表的结构体。将此结构保存到 Excel 文件中。
SaveToExcel("ExportedUAVModel",exportedSet);
另请参阅
importModel
| exportModel
| updateLinksToReferenceRequirements