将Simulink模型的输入输出名称导出到Excel文件



如何将Simulink模型的所有输入输出名称导出到Excel文件中?

我试图编写一个脚本文件,但它只不过是scratch。我希望导入我的Simulink模型的所有输入和输出。

这很简单

model_name = 'port_test';
mdl = load_system(model_name);
inputs = find_system(mdl,'BlockType','Inport');
input_names = arrayfun(@(x) get_param(x,'Name'), inputs,'UniformOutput',false);
outputs = find_system(mdl,'BlockType','Outport');
output_names = arrayfun(@(x) get_param(x,'Name'), inputs,'UniformOutput',false);
  • load_system打开感兴趣的系统并返回模型处理
  • find_system是一个强大的功能(向后兼容)与许多版本的MATLAB,其中将搜索通过一个模型匹配的块/项。它将返回每个句柄的数组对象发现
  • arrayfun对数组项执行一个函数。
  • get_param用于获取所查找的每个项目的名称find_system

将创建两个单元格数组(input_names和output_names),并包含由model_name指定的模型顶层的所有输入和输出块的列表。

对于电子表格,我建议使用writable函数的功能。

可以像这样简单

input_table = table(input_names);
writetable(input_table,[model_name '.xlsx'],'Sheet','Inputs');
output_table = table(input_names);
writetable(output_table,[model_name '.xlsx'],'Sheet','Outputs','WriteMode','append');

相关内容

  • 没有找到相关文章

最新更新