2014-04-01 51 views
0

我試圖建立一個複雜的模型編程重用一些定製模塊/模型我以前開發的,但我不能管理連接兩個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') 

...但我總是得到'無效的Simulink對象名:cell1/1'錯誤消息。

我一直在谷歌搜索和尋找幫助,但我沒有發現任何關於此。

在此先感謝。

EDIT.-這circuit_cell.mdl文件:http://pastebin.com/mXuVFtM3

+0

我試圖重現您的問題,但我沒有得到任何錯誤。你能提供'circuit_cell'嗎?它有輸入和輸出端口嗎? – Daniel

+0

我編輯了這個問題,發佈了一個鏈接到'circuit_cell.mdl'。在此先感謝您的幫助。 – jgsogo

+0

是的,我試圖連接端口(也許我誤解了他們的想法) – jgsogo

回答

0

感謝@ am304我設法意見解決這個問題。

連接通過物理端口必須通過RConn1LConn1鍵名製成,因此命令add_line應該被執行如下:

add_line('model', 'cell1/RConn1', 'cell2/LConn1', 'autorouting', 'on') 

測試時間:

  • Matlab的版7.12.0.635(R2011a )

謝謝!

編輯 - 由於@ am304說它沒有記錄,所以它可以改變。如果更多版本被選中,請發表評論,我會更新答案。

+0

請注意,此語法在未來版本中可能會更改爲所有未公開的功能。 – am304