1、背景:simulink搭建模型时,有时需要对模型批量处理,对模型进行优化;
例如模型中A,A1,A2,A3 outport模块,需要批量转化为goto模块,即图1转化为图2;
图1
图2
2、具体步骤:
新建M脚本,将下面的程序复制到脚本中,打开当前需要转化的模型,运行脚本即可实现上述效果。
% 将当前层的Output转换成Goto,并将转换的Output名字写入Goto.txt
blks = find_system(gcs,'SearchDepth',1,'BlockType','Outport');
names_out = get_param(blks,'Name');
for i = 1:length(blks)
h = replace_block(blks{i},'Outport','Goto','noprompt');
set_param(h{1},'GotoTag',names_out{i});
end
fid = fopen('Goto.txt','w');
fprintf(fid,'%s',strjoin(names_out,'\n'));
fclose(fid);