首页 > 解决方案 > 带有 for 循环的 MATLAB add_line 给出了无效的 Simulink 对象名称错误

问题描述

我有 MATLAB Simulink 模型,其中“子系统”与“添加”块连接。我想使用脚本在子系统和添加块之间添加数据类型转换块。我实现如下代码所示。但我在代码的 add_line 中收到错误 Invalid Simulink object name。

for i = 1:n;
      delete_line('myModel',strcat('Subsystem/',num2str(i),'/'), strcat('Add/',num2str(i)));
      add_block('simulink/Commonly Used Blocks/Data Type Conversion', strcat('myModel','/Data Type Conversion',num2str(i)));
      add_line('myModel', strcat('Subsystem/',num2str(i),'/'), strcat('Data Type Conversion',num2str(i)),'autorouting','on');                                     
      add_line('myModel',strcat('Data Type Conversion',num2str(i),'/1'),strcat('Add',num2str(i)),'autorouting','on'); 

标签: matlabsimulink

解决方案


您没有为 Data Type Conversion 模块指定目标端口号。

尝试

add_line('myModel', strcat('Subsystem/',num2str(i),'/'), strcat('Data Type Conversion',num2str(i),'/1'),'autorouting','on');

您可能还需要为添加块的行执行此操作,因为我猜它也有多个端口。


推荐阅读