主要内容

将子系统转换为参考模型

模型参考为建模大型复杂系统和基于团队的开发提供了好处。许多大型模型使用子系统和参考模型的组合。若要确定是否将子系统转换为引用模型,请参见在模型组件类型中进行选择

准备转换子系统

为转换准备一个子系统可以消除或减少转换期间识别的问题的数量。在转换之前解决这些问题比在诊断消息和Simulink之间反复切换更有效金宝app®编辑器。

准备子系统:

  1. 设置信号的分辨率配置参数为明确的只没有一个

    提示

    您可以在转换期间自动修复此问题。

  2. 配置子系统块接口。

    提示

    您可以在转换期间自动修复这些接口问题。

    子系统接口 注意什么 模型修改

    转到

    转到穿过子系统边界的块

    取代块有一个对应的转到控件跨越子系统边界的块轮廓尺寸块。

    替换每个转到块,具有相应的控件跨越子系统边界的块外港块。

    连接轮廓尺寸而且外港块对应的子系统端口。

    数据存储

    数据存储内存访问的块数据存储读取数据存储写子系统外部的块

    取代数据存储内存块使用全局数据存储。类定义全局数据存储金宝app仿真软件。信号对象。详细信息请参见带有信号对象的数据存储

    可调参数

    属性打开的对话框中的全局可调参数配置参数>代码生成>优化>配置按钮

    要创建金宝app仿真软件。参数对象的每个可调参数,使用tunablevars2parameterobjects

    金宝app仿真软件。参数对象的存储类必须为汽车

    有关更多信息,请参见参数化可重用引用模型的实例而且可调参数

  3. 配置子系统块的内容。

    子系统配置 注意什么 模型修改
    块执行指令

    虚拟子系统,不强制所包含的块连续执行。

    选择子系统块,然后上子系统块选项卡上,选择是原子子系统

    函数调用

    跨越虚拟子系统边界的函数调用信号

    移动函数调用生成器块转换到您想转换的子系统中。

    请注意

    如果转换导出函数子系统,则不需要移动函数调用生成器块。

    函数调用的输出

    将函数调用输出更改为数据触发器。

    宽函数调用端口

    消除函数调用子系统的宽信号。

    样品时间

    一个轮廓尺寸块采样时间与驱动的块的采样时间不匹配轮廓尺寸

    插入率转换适当的块。

    轮廓尺寸块

    合并后的轮廓尺寸

    配置模型以避免合并轮廓尺寸块。看到合并块文档。

    固定块

    常数为子系统提供输入的块

    移动常数块放入子系统。

    公共汽车

    进入和退出子系统的总线

    为子系统内部的块匹配信号名称和总线元素名称。

    若要查找与总线元素名称不匹配的信号名称,请使用信号标签不匹配诊断。

    总线中重复的信号名称

    使总线元素的信号名称唯一。

    无效的信号名称®标识符。一个有效的标识符是满足以下条件的字符向量:

    • 名称只能包含字母、数字或下划线。

    • 第一个字符是字母。

    • 名称的长度小于或等于namelengthmax函数。

    将任何无效的信号名称更改为有效的MATLAB标识符。

  4. 确保包含要转换的子系统的模型成功编译。

将子系统转换为参考模型

将子系统转换为参考模型:

  1. 选择子系统要转换的块。

  2. 在“Simul金宝appink工具条”中子系统块选项卡上,选择转换>模型块

    模型引用转换顾问打开并允许您以交互方式指定转换参数并修复建议器发现的问题。

为了使转换过程更快:

  • 在模型引用转换顾问中,选择自动修复错误(如果可能的话).此选项自动修复一些转换问题,但您无法控制修复。

  • 关闭任何打开范围在开始转换之前阻止Windows。

离开子系统块,并从内容中创建单独的模型子系统块,清楚用Model块替换子系统的内容

对比转换前后的顶模仿真结果:

  • 为感兴趣的输出信号启用信号记录。

  • 选择转换后检查模拟结果而且用Model块替换子系统的内容

  • 设置停止时间绝对的宽容,相对宽容

  • 设置模型块仿真模式选项设置为与原始模型相同的仿真模式。

转换设置完成后,单击转换并解决任何发现的问题。

或者,在MATLAB命令窗口中,使用金宝appSimulink.SubSystem.convertToModelReference函数。你可以转换多个子系统block使用一个金宝appSimulink.SubSystem.convertToModelReference命令。但是,您不能同时转换父子系统和子子系统。

转换的结果

在所有转换检查通过后,Simulink:金宝app

  • 从子系统创建一个引用模型。

  • 创建金宝app仿真软件。公共汽车对象,金宝app仿真软件。信号对象,以及引用模型所需的可调参数。

  • 缺省情况下,替换子系统模型引用新模型的块。

  • 插入模型子系统阻塞,如果自动修复添加的端口模型块接口。

  • 控件中创建HTML转换摘要报告slprj文件夹中。该报告总结了转换过程的结果,包括顾问执行的修复的结果。该报告还描述了它复制的元素。

  • 可选地检查转换前后模拟结果的一致性。

金宝appSimulink将以下元素从原始模型复制到新的引用模型。

  • 配置设置—父型号使用:

    • 如果配置集不是引用的配置集,建议器将整个配置集复制到引用的模型

    • 一个引用的配置集,那么父模型和引用模型都使用相同的引用配置集

  • 变量-顾问只将子系统在原始模型中使用的模型工作区变量复制到引用模型的模型工作区。如果包含子系统的模型使用数据字典,那么引用的模型使用相同的数据字典。

  • 要求链接—顾问复制使用要求工具箱™软件模型块从原来的子系统块。

比较转换前后的仿真结果

成功完成转换后,使用按此查看比较结果链接。中显示的结果模拟数据检查器.绿色复选标记表示仿真结果在基线模型和新参考模型之间的公差范围内。

仿真数据检查器,四个仿真结果在公差范围内

有关更多信息,请参见比较仿真数据

恢复转换

如果您对转换结果不满意,您可以将模型恢复到初始状态。使用以下方法中的一种:

  • 在转换期间的任何时候,选择文件>负载恢复点

  • 成功运行完成转换检查,使用点击这里恢复原始模型链接。

将引用模型集成到父模型中

完成转换后,根据需要更新模型以满足建模需求。例如,您可以手动替换子系统模型引用已创建的引用模型的块。

如果希望使用外部数据模拟模型,请检查根轮廓尺寸新引用模型中的块具有适当的插入数据参数设置。的文档插入数据参数。轮廓尺寸块。

另请参阅

相关的话题