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