2016-10-05 64 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。

希望这会有所帮助:)