В данном примере настройте задачу оценки параметра с помощью приложения 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, смотрите Развернутое приложение оценки параметра.