2016-10-05 63 views
0

我在MATLAB中的功能find_system有一些問題。Simulink的find_system返回一個空數組

我想獲得我的Simulink模型中存在的所有傳遞函數的列表。我試圖做到這一點:

find_system(sys,'BlockType','Transfer Fcn') 

但輸出是這樣的:

ans = Empty cell array: 0-by-1 

這是不可能的,因爲我有3個連續的傳遞函數!

發生了什麼事?

+0

你確定'Transfer Fcn'是一個有效的'BlockType'嗎? –

+0

我不知道。我怎麼能意識到你說的話? – Mrk93

+0

有多少'BlockType'? – Mrk93

回答

1

傳遞函數塊的BlockType爲'TransferFcn'。

[注: 要找出任何Simulink模塊的BlockType,該塊添加到模型,點擊它,這樣做:

type = get_param(gcb,'BlockType'); 

]所以現在

,打開你的模型(在任何地方點擊)並輸入:

transfunc = find_system(gcs,'BlockType','TransferFcn') 

您也可以使用型號名稱而不是gcs。

希望這會有所幫助:)