【发布时间】:2018-12-28 10:35:55
【问题描述】:
我正在尝试以编程方式重用我之前开发的一些自定义块/模型来构建一个复杂的模型,但我无法连接两个 PMC_Port
这就是我所拥有的:
% Main system
sys_name = 'model';
sys = new_system(sys_name)
open_system(sys_name)
load_system('circuit_cell') % Subsystem with 6 PMC_Port elements
% stored in circuit_cell.mdl file
% Add cell #1
add_block('built-in/Subsystem', [sys_name '/cell1'])
Simulink.BlockDiagram.copyContentsToSubSystem('circuit_cell', [sys_name '/cell1']);
% Add cell #2
add_block('built-in/Subsystem', [sys_name '/cell2'])
Simulink.BlockDiagram.copyContentsToSubSystem('circuit_cell', [sys_name '/cell2']);
% And now I want to connect one cell with the other
add_line('model', 'cell1/1', 'cell2/1', 'autorouting', 'on')
...但我总是收到“Invalid Simulink object name: cell1/1”错误消息。
EDIT.- 这是 circuit_cell.mdl 文件:http://pastebin.com/mXuVFtM3
【问题讨论】:
-
我尝试重现您的问题,但没有收到任何错误。你能提供'电路单元'吗?有输入输出端口吗?
-
我已编辑问题以发布指向“circuit_cell.mdl”的链接。提前感谢您的帮助。
-
是的,我正在尝试连接端口(也许我误解了他们的想法)
-
如果你进入
cell1并用鼠标选择你想连接到cell2的(可能是输出的)块,然后在命令行输入gcb,你会得到什么?真的是cell1/1吗?同样适用于cell2/1。 -
@jgsogo 好的,如果它们是 Simscape 或物理端口,您可能想尝试类似
cell1/RConn1(如果在块的右侧)或cell1/LConn1(如果在块的左侧)。我有一个模糊的记忆,这些块是特殊的,并且没有记录以编程方式连接它们的确切希望。