Simulink.ModelWorkspace

Взаимодействуйте с рабочим пространством модели модели программно

Описание

Используйте Simulink.ModelWorkspace объект взаимодействовать с рабочим пространством модели. Например, можно добавить и удалить переменные, установить источник данных рабочей области и сохранить изменения в рабочей области.

Для получения дополнительной информации смотрите Рабочие пространства модели.

Создание

Создать Simulink.ModelWorkspace, используйте get_param функционируйте, чтобы запросить значение параметра модели ModelWorkspace. Например, чтобы создать объект под названием mdlWks это представляет рабочее пространство модели модели под названием myModel.slx:

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

Свойства

развернуть все

Источник для инициализации переменных в рабочем пространстве модели в виде одного из этих векторов символов:

  • 'Model File' — Переменные хранятся в файле модели. Когда вы сохраняете модель, вы также сохраняете переменные.

  • 'MATLAB Code' — Переменные создаются кодом MATLAB, который вы пишете и храните в файле модели.

  • 'MAT-File' — Переменные хранятся в MAT-файле, которым можно управлять отдельно из файла модели.

  • 'MATLAB File' — Переменные создаются кодом MATLAB в файле скрипта, которым можно управлять отдельно из файла модели.

Типы данных: char

Имя внешнего файла, который хранит или создает переменные в виде вектора символов. Чтобы включить это свойство, установите DataSource к 'MAT-File' или 'MATLAB File'.

Пример: 'myFile.mat'

Пример: 'myFile.m'

Типы данных: char

Код MATLAB для инициализации переменных в виде вектора символов. Чтобы включить это свойство, установите DataSource к 'MATLAB Code'.

Пример: sprintf('%% Create variables that this model uses.\n\nK = 0.00983;\n\nP = Simulink.Parameter(5);')

Типы данных: char

Функции объекта

getVariableВозвращаемое значение переменной в рабочем пространстве модели модели
getVariablePartПолучите значение переменного свойства в рабочем пространстве модели
setVariablePartУстановите свойство переменной в рабочем пространстве модели
hasVariableОпределите, существует ли переменная в рабочем пространстве модели модели
whosВозвратите список переменных в рабочем пространстве модели модели
saveToSourceСохраните изменения рабочего пространства модели во внешнем источнике данных рабочего пространства модели
saveСохраните содержимое рабочего пространства модели к MAT-файлу
reloadПовторно инициализируйте переменные из источника данных рабочего пространства модели
evalinВыполните выражение в рабочем пространстве модели модели
clearОчистите переменные из рабочего пространства модели модели
assigninПрисвойте значение переменной в рабочем пространстве модели модели

Примеры

свернуть все

Создайте переменную в рабочем пространстве модели модели. Затем измените переменную и запросите значение переменных, чтобы подтвердить модификацию.

Откройте модель vdp в качестве примера.

open_system('vdp')

Создайте Simulink.ModelWorkspace объект mdlWks это представляет рабочее пространство модели vdp.

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

Создайте переменную под названием myVar со значением 5.12 в рабочем пространстве модели.

assignin(mdlWks,'myVar',5.12)

Примените новое значение, 7.22. Для этого сначала создайте временную копию переменной при помощи getVariable функция. Затем измените копию и используйте ее, чтобы перезаписать исходную переменную в рабочем пространстве модели.

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

Подтвердите новое значение путем запроса значения переменной.

getVariable(mdlWks,'myVar')
ans =

    7.2200
Представлено до R2006a