主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

systemcomposer.importModel

MATLAB 表中导入模型信息

    说明

    archModel = systemcomposer.importModel(modelName,components,ports,connections,portInterfaces,requirementLinks,parameters) 基于 MATLAB® 表格创建新的架构模型,这些表格指定了组件、端口、连接、端口接口、需求链接和参数。唯一需要的输入参量是 modelNamecomponents 表。如果表格输入参量为空,请输入 table.empty。但是,尾部空表将被忽略,无需输入。要导入基本架构模型,请参阅定义基本架构。要导入 requirementLinks,您需要 Requirements Toolbox™ 许可证。

    示例

    archModel = systemcomposer.importModel(modelName,importStruct) 基于 MATLAB 表格结构创建新的架构模型,这些表格具有规定的格式,用于指定模型元素关系、构造型和属性。有关导入结构的更多信息,请参阅导入和导出架构模型

    [archModel,idMappingTable,importLog,errorLog] = systemcomposer.importModel(___) 创建一个新的架构模型,输出参量 idMappingTable 包含表格信息,importLog 显示导入信息,errorLog 显示导入错误信息。包括以前所有的语法说明。

    示例

    全部折叠

    在 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)

    scExampleImportExport_01.png

    导出架构

    您可以将架构导出到 MATLAB 表,然后将表转换为外部文件。

    exportedSet = systemcomposer.exportModel(modelName);

    函数的输出是一个包含组件表、端口表、连接表、接口表和需求链接表的结构体。将此结构保存到 Excel 文件中。

    SaveToExcel("ExportedUAVModel",exportedSet);

    输入参数

    全部折叠

    模型名称,指定为字符向量或字符串。

    示例: "exMobileRobot"

    数据类型: char | string

    模型组件信息,指定为 MATLAB 表。组件表必须包括 NameIDParentID 列。要将 ComponentType 指定为 VariantComposition(默认值)、StateflowBehaviorBehavior(引用组件和子系统组件),并设置 ReferenceModelName,请参阅导入变体组件、Stateflow 行为或引用组件。要使用 StereotypeNames 应用构造型并为组件设置属性值,请参阅在导入的模型上应用构造型并设置属性值

    数据类型: table

    模型端口信息,指定为 MATLAB 表。端口表必须包括 NameDirectionIDCompID 列。Direction 列的值可以是 InputOutputPhysical。可选列 InterfaceID 指定接口。还可能需要 portInterfaces 信息来为端口分配接口。

    数据类型: table

    模型连接信息,指定为 MATLAB 表。连接表必须包括 NameIDSourcePortIDDestPortID 列。要在架构端口上指定 SourceElementDestinationElement,请参阅指定架构端口上的元素。使用可选列 StereotypeNames 指定构造型。可选的 Kind 列可指定为物理连接的默认 DataPhysical

    数据类型: table

    模型端口接口信息,指定为 MATLAB 表。端口接口表必须包括 NameIDParentIDDataTypeDimensionsUnitsComplexityMinimumMaximum 列。要导入接口并将端口映射到接口,请参阅导入数据接口并将端口映射到接口。使用选项栏 Description 添加说明。使用可选列 StereotypeNames 指定构造型。

    数据类型: table

    模型需求链接信息,指定为 MATLAB 表。需求链接表必须包括 LabelIDSourceIDDestinationTypeDestinationIDType 列。有关示例,请参阅在导入的模型上分配需求链接。要更新导入文件中的引用需求链接并将其整合到模型中,请参阅从导入文件重定向引用需求链接。可选列包括 DestinationArifactSourceArtifactReferencedReqIDKeywordsCreatedOnCreatedByModifiedOnModifiedByRevision。将 requirementLinks 表导入 System Composer™ 架构模型需要 Requirements Toolbox 许可证。

    数据类型: table

    模型参数信息,指定为 MATLAB 表。参数表必须包括 NameIDParentValue 列。要以编程方式导入带参数的架构模型,请参阅在 System Composer 中使用参数编辑器编写参数。使用 UnitsTypeComplexityMinimumMaximum 列为参数添加值类型信息。使用 PromotedTo 列将参数提升到层次结构中的一个架构。有关详细信息,请参阅带参数值类型导入参数

    数据类型: table

    模型表,指定为包含表 componentsportsconnectionsportInterfacesrequirementLinksparameters 以及字段 domain 的结构。只需要 components 表。domain 的可能值是架构模型的默认值 "System" 和软件架构模型的默认值 "Software"。对于软件架构模型,要导入包含函数的模型,importStruct 可以有一个包含函数信息的 functions 字段。

    有关导入结构的更多信息,请参阅导入和导出架构模型

    数据类型: struct

    输出参量

    全部折叠

    架构模型的句柄,指定为 systemcomposer.arch.Architecture 对象。

    自定义 ID 和元素内部 UUID 的映射,以 struct 的 MATLAB 表形式返回。

    数据类型: struct

    确认已导入元素,以字符向量元胞数组的形式返回。

    数据类型: char

    导入过程中报告的错误,以 message 对象元胞数组的形式返回。您可以通过调用每个 message 对象的 getString 方法来获取错误文本。例如,errorLog(1).getString 以字符串形式获取报告的第一个错误。

    详细信息

    全部折叠

    版本历史记录

    在 R2019a 中推出