Main Content

Simulink.ModelWorkspace

Programmatisches Interagieren mit dem Modell-Workspace eines Modells

Beschreibung

Verwenden Sie ein Simulink.ModelWorkspace-Objekt, um mit eine Modell-Workspace zu interagieren. Sie können beispielsweise Variablen hinzufügen und entfernen, die Datenquelle des Workspace festlegen und Änderungen am Workspace speichern.

Weitere Informationen finden Sie unter Model Workspaces.

Erstellung

Um ein Simulink.ModelWorkspace zu erstellen, verwenden Sie die Funktion get_param, um den Wert des Modellparameters ModelWorkspace abzufragen. Um beispielsweise ein Objekt namens mdlWks zu erstellen, dass den Model-Workspace eines Modells namens myModel.slx darstellt:

mdlWks = get_param('myModel','ModelWorkspace')

Eigenschaften

alle erweitern

Quelle zum Initialisieren der Variablen im Modell-Workspace, angegeben als einer dieser Zeichenvektoren:

  • 'Model File' — Die Variablen werden in der Modelldatei gespeichert. Wenn Sie das Modell speichern, werden die Variablen ebenfalls gespeichert.

  • 'MATLAB Code' — Die Variablen werden von MATLAB Programmcode erstellt, den Sie in der Modelldatei schreiben und speichern.

  • 'MAT-File' — Die Variablen werden in einer MAT-Datei gespeichert, die Sie unabhängig von der Modelldatei verwalten und bearbeiten können.

  • 'MATLAB File' — Die Variablen werden von MATLAB Programmcode in einer Skriptdatei erstellt, die Sie unabhängig von der Modelldatei verwalten und bearbeiten können.

Datentypen: char

Name der externen Datei, die Variablen speichert oder erstellt, angegeben als Zeichenvektor. Um diese Eigenschaft zu aktivieren, setzen Sie DataSource auf 'MAT-File' oder 'MATLAB File'.

Beispiel: 'myFile.mat'

Beispiel: 'myFile.m'

Datentypen: char

MATLAB Programmcode zum Initialisieren von Variablen, angegeben als Zeichenvektor. Um diese Eigenschaft zu aktivieren, setzen Sie DataSource auf 'MATLAB Code'.

Beispiel: sprintf('%% Create variables that this model uses.\n\nK = 0.00983;\n\nP = Simulink.Parameter(5);')

Datentypen: char

Objektfunktionen

getVariableReturn value of variable in the model workspace of a model
getVariablePartGet value of variable property in model workspace
setVariablePartSet property of variable in model workspace
hasVariableDetermine whether variable exists in the model workspace of a model
whosReturn list of variables in the model workspace of a model
saveToSourceSave model workspace changes to the external data source of the model workspace
saveSave contents of model workspace to a MAT-file
reloadReinitialize variables from the data source of a model workspace
evalinEvaluate expression in the model workspace of a model
clearClear variables from the model workspace of a model
assigninAssign value to variable in the model workspace of a model

Beispiele

alle reduzieren

Erstellen Sie eine Variable im Modell-Workspace eines Modells. Modifizieren Sie daraufhin die Variable und fragen Sie den Wert der Variable ab, um die Änderung zu bestätigen.

Öffnen Sie das Beispielmodell vdp.

openExample('simulink_general/VanDerPolOscillatorExample')

Erstellen Sie ein Simulink.ModelWorkspace-Objekt mdlWks, das den Modell-Workspace von vdp darstellt.

mdlWks = get_param('vdp','ModelWorkspace');

Erstellen Sie eine Variable namens myVar mit dem Wert 5.12 im Modell-Workspace.

assignin(mdlWks,'myVar',5.12)

Wenden Sie einen neuen Wert 7.22 an. Erstellen Sie hierfür mithilfe der Funktion getVariable eine temporäre Kopie der Variable. Modifizieren Sie daraufhin die Kopie und überschreiben Sie die ursprüngliche Variable im Modell-Workspace mit der Kopie.

temp = getVariable(mdlWks,'myVar');
temp = 7.22;
assignin(mdlWks,'myVar',temp)

Fragen Sie den Wert der Variable ab, um den neuen Wert zu überprüfen.

getVariable(mdlWks,'myVar')
ans =

    7.2200

Versionsverlauf

Eingeführt vor R2006a