2016-10-05 2 views
0

J'ai un problème avec la fonction find_system dans MATLAB.find_system de Simulink renvoie un tableau vide

Je voudrais obtenir une liste de toutes les fonctions de transfert présentes dans mon modèle Simulink. Je l'ai essayé de le faire:

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

Mais la sortie est comme ceci:

ans = Empty cell array: 0-by-1 

Ceci est impossible parce que j'ai 3 fonctions de transfert en continu!

Que se passe-t-il?

+0

Etes-vous sûr que 'Transfer Fcn' est un 'BlockType' valide? –

+0

Je ne sais pas. Comment je peux réaliser ce que tu dis? – Mrk93

+0

Combien de 'BlockType' existent? – Mrk93

Répondre

1

Le BlockType pour un bloc de fonction de transfert est 'TransferFcn'.

[Note: Pour connaître le BlockType de tout bloc Simulink, ajouter ce bloc à votre modèle, cliquez dessus et faites ceci:

type = get_param(gcb,'BlockType'); 

]

maintenant, ouvrez votre modèle (cliquez dessus n'importe où) et tapez ceci:

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

Vous pouvez également utiliser le nom du modèle au lieu de gcs.

Espérons que cela aide :)