前言:在前面一篇文章主要讲述了Simulink模块的空间坐标以及如何利用这一特性快速生成外部模型,但是这种模型也仅仅只是一个壳,在这个基础上还需要工程师去配置模型的属性等。那么本期则介绍在生成的模型基础上进一步操作---自动导入属性配置。

目录

一、模型配置参数

二、获取模型配置参数

三、为模型导入配置

四、效果展示

总结


一、模型配置参数

        在进行Simulink建模时,特别是嵌入式软件开发过程中,一定需要配置模型参数,它的配置信息包含步长、错误诊断、代码生成打包等。此处不对里面细节过多描述。仅阐述如何生成我们需要的配置文件。如果想要了解详细的配置信息,可以参考如下官网信息

帮助中心https://ww2.mathworks.cn/help/releases/R2024b/search.html?selectedsource=mw&qdoc=%E6%A8%A1%E5%9E%8B%E9%85%8D%E7%BD%AE%E5%8F%82%E6%95%B0

二、获取模型配置参数

       如下图所示,假设图片中的配置信息是已经标准化的配置,那么可以通过如下步骤导出。

       模型资源管理器-选择当前模型后右击-配置-导出活动配置。在弹出的选项中选择导出为.m文件即可。

目标文件如下所示

三、为模型导入配置

设计思路:打开模型-加载配置-保存配置。

参考代码如下:


% 获取模型的名字
ModelpathName = app.EditField_ModelPath.Value;%获取模型路径

[ModelfolderPart,Modelfolderfile,ModelfolderExt]=fileparts(ModelpathName);%获取模型路径\文件\拓展名

ModelfolderName = ModelfolderPart;

ModelfileName=Modelfolderfile;%获取目标参数名称
Model_Name=strrep(ModelfileName,'.slx','');%取模型名字      
Open_Model_Name=Model_Name;
load_system(Open_Model_Name);

ConfigfileName = 'DemoConfiguration.m';
           
Simulink.BlockDiagram.loadActiveConfigSet(Open_Model_Name, ConfigfileName);%加载配置

%单体设置接口
activeConfigObj = getActiveConfigSet(Open_Model_Name);%获取活跃的配置集
set_param(activeConfigObj,'PackageName',Open_Model_Name);%配置配置集元素
       
Simulink.BlockDiagram.saveActiveConfigSet(Open_Model_Name, ConfigfileName);%配置保存
save_system(Open_Model_Name);%模型保存

四、效果展示

         如下图所示,工具开放了目标模型和配置文件选择路径,同时还具备是否需要打开模型检查的功能,此外,在下方的信息框中还会打印相关流程以便参考分析。

界面包含路径选择、是否打开模型、信息打印区域

 以配置参数界面求解器参数为例,点击start后,参数发生修改并能正常打开模型


总结

       本文在自动生成模型的基础上进一步探索,在完成外层模型创建后可自动加载已有的配置参数,在一定程度上可以帮助工程师降低因配置不同导致的异常错误发生率。以上便是文章全部内容。

项目路径:

GitCode - 全球开发者的开源社区,开源代码托管平台GitCode是面向全球开发者的开源社区,包括原创博客,开源代码托管,代码协作,项目管理等。与开发者社区互动,提升您的研发效率和质量。https://gitcode.com/SYW-OPEN/Open-source.git

Logo

一站式 AI 云服务平台

更多推荐