В данном примере настройте свою проблему оценки параметра с помощью приложения Parameter Estimator и сгенерируйте код MATLAB от него. Для получения дополнительной информации о генерации кода MATLAB из приложения смотрите, Генерируют код MATLAB для проблем Оценки Параметра (графический интерфейс пользователя). В качестве альтернативы можно также настроить проблему оценки в командной строке.
Затем разделите сгенерированный код MATLAB непосредственно перед тем, как целевая функция оценки задана. Это приводит к двум файлам run
функционируйте и setup
функция, как описано в Развертываемом приложении Оценки Параметра.
В setup
функционируйте, добавьте следующие строки кода в конце, чтобы сконфигурировать тестовые объекты эксперимента и симуляции для развертывания и сохранить их в MAT-файл.
Experiment_out = prepareToDeploy(Experiement);
Simulator = createSimulator(Experiment_out);
Simulator = prepareToDeploy(Simulator,p);
save ObjectsToDeploy Experiment_out Simulator p
В run
функционируйте, добавьте следующие строки кода в начале функции, чтобы включать модель 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, см. Развертываемое приложение Оценки Параметра.