Contenu principal

Simulink.findBlocks

Trouver des blocs dans les modèles Simulink

Description

bl = Simulink.findBlocks(sys) retourne des handles à tous les blocs du modèle ou du sous-système sys.

exemple

bl = Simulink.findBlocks(sys,options) trouve les blocs correspondant aux critères spécifiés par un objet Simulink.FindOptions.

exemple

bl = Simulink.findBlocks(sys,Param1,Value1,...,ParamN,ValueN) trouve les blocs dont les paramètres de bloc ont les valeurs spécifiées.

exemple

bl = Simulink.findBlocks(sys,Param1,Value1,...,ParamN,ValueN,options) trouve les blocs dont les paramètres ont les valeurs spécifiées et correspondant aux critères spécifiés par un objet FindOptions.

exemple

Exemples

réduire tout

Obtenez les handles et les noms de tous les blocs d'un modèle.

Ouvrez l'exemple. Chargez ensuite le modèle vdp.

h=load_system('vdp')
h = 
153.0007

Obtenez les handles de tous les blocs du modèle vdp.

b=Simulink.findBlocks(h)
b = 12×1

  155.0032
  278.0022
  280.0015
  283.0013
  288.0015
  291.0018
  294.0026
  298.0018
  327.0015
  330.0016
  333.0011
  335.0011
      ⋮

Obtenez les noms de tous les blocs du modèle vdp.

names=getfullname(b)
names = 12×1 cell
    {'vdp/Callback Button'}
    {'vdp/Constant'       }
    {'vdp/Mu'             }
    {'vdp/Product'        }
    {'vdp/Scope'          }
    {'vdp/Square'         }
    {'vdp/Sum'            }
    {'vdp/Sum1'           }
    {'vdp/x1'             }
    {'vdp/x2'             }
    {'vdp/Out1'           }
    {'vdp/Out2'           }

Rechercher les blocs par nom

Ouvrez l'exemple. Chargez ensuite le modèle vdp.

open_system('vdp')

Obtenez le handle du bloc nommé x1.

Simulink.findBlocks('vdp','Name','x1')
ans = 
334.0035

Rechercher des blocs de type spécifique

Obtenez les handles de tous les blocs Sum du modèle vdp.

Simulink.findBlocks('vdp','BlockType','Sum')
ans = 2×1

  301.0046
  330.0040

Rechercher des blocs ayant des valeurs de paramètres spécifiques

Obtenez les handles de tous les blocs du modèle vdp dont le paramètre Saturate On Integer Overflow a la valeur 'on'.

Simulink.findBlocks('vdp','SaturateOnIntegerOverflow','on')
ans = 4×1

  291.0037
  298.0040
  301.0046
  330.0040

La fonction retourne le handle des deux blocs Sum, le bloc Product et le bloc Square du modèle vdp.

Rechercher des blocs de type spécifique ayant une valeur de paramètres particulière

Obtenez les handles de tous les blocs Sum du modèle vdp dont la valeur de paramètre List of Signs est '+-'.

Simulink.findBlocks('vdp','ListofSigns','+-','BlockType','Sum')
ans = 
330.0040

La fonction retourne le handle du bloc Sum nommé Sum1.

Arguments d'entrée

réduire tout

Modèle ou sous-système où trouver des blocs, spécifié en tant que vecteur de caractères ou tableau string.

Exemple : 'vdp' "f14/Aircraft Dynamics Model"

Cherchez des contraintes, spécifiées en tant qu’objet Simulink.FindOptions.

Arguments en sortie

réduire tout

Résultats de la recherche, retournés sous forme de tableau de handles.

Historique des versions

Introduit dans R2018a