updateIOData

Обновление входных и выходных данных эксперимента

Описание

пример

Experiment_out = updateIOData(Experiment,sigName,data) обновляет сигнал sigName объекта эксперимента Experiment с данными, указанными в data.

updateIOData позволяет повторно использовать определение эксперимента, но с другими данными. Функция особенно полезна для развернутых приложений, где вы не хотите переопределять эксперимент каждый раз, когда вы выполняете развернутое приложение.

Experiment_out = updateIOData(Experiment,sigName1,data1,sigName2,data2,...) обновляет несколько сигналов объекта эксперимента для развертывания с Simulink® Compiler™.

Входные параметры

расширить все

Определение эксперимента для модели Simulink, заданное как sdo.Experiment объект.

Сигнал, который будет обновлен, задается как строка. Можно задать sigName использование полного пути блока сигнала или по наименованию сигнала, если имена сигналов в модели Simulink уникальны.

Можно задать несколько sigName и data пар, чтобы обновить несколько входов или выходов в один вызов, чтобы updateIOData.

Данные для обновления сигнала, заданные как временные ряды или вектор.

Можно задать несколько sigName и data пар, чтобы обновить несколько входов или выходов в один вызов, чтобы updateIOData.

Выходные аргументы

расширить все

Экспериментируйте с обновленными входными и выходными данными, возвращаемыми как sdo.Experiment объект.

Примеры

расширить все

В данном примере настройте задачу оценки параметра с помощью приложения Parameter Estimator и сгенерируйте из него код MATLAB. Для получения дополнительной информации о генерации кода MATLAB из приложения, смотрите Сгенерируйте код MATLAB для задач оценки параметра (GUI). Также можно настроить задачу оценки в командной строке.

Затем разделите сгенерированный код MATLAB непосредственно перед определением целевой функции оценки. Это приводит к двум файлам - a run функции и setup функция, как описано в Deployed Application of Parameter Estimation.

В setup function, добавить следующие строки кода в конце, чтобы сконфигурировать объекты тестирования эксперимента и симуляции для развертывания и сохранить их в MAT-файл.

Experiment_out = prepareToDeploy(Experiement);
Simulator = createSimulator(Experiment_out);
Simulator = prepareToDeploy(Simulator,p);
save ObjectsToDeploy Experiment_out Simulator p

В run function, добавить следующие строки кода в начале функции, чтобы включить модель Simulink в скомпилированный код и загрузить объекты, которые были сохранены в setup функция.

%#function simulink_model_name.slx
load ObjectsToDeploy Experiment_out Simulator p

Затем добавьте следующие линии, чтобы загрузить данные эксперимента и обновить объект эксперимента. В данном примере предположим, что данные эксперимента содержатся в первых трех столбцах файла электронной таблицы Microsoft Excel с именем fname.xls.

d = xlsread(fname);
u = timeseries(d(:,3),d(:,1));
y = timeseries(d(:,2),d(:,1));
Experiment_out = updateIOData(Experiment_out,'simulink_model_name/param1',u);
Experiment_out = updateIOData(Experiment_out,'simulink_model_name/param2',y);

Для подробного примера, показывающего, как развернуть задачу оценки параметра с помощью Simulink Compiler, смотрите Развернутое приложение оценки параметра.

Введенный в R2020a