exponenta event banner

Радарная модель положения самолета

Эта модель показывает код, сгенерированный для модели Simulink, содержащей скрипт MATLAB.

Модель содержит Расширенный Фильтр Калмана, который оценивает положение самолета от радарных измерений. Скрипт MATLAB rtwdemo_eml_aero_radar.m содержит данные для выполнения модели. Предполагаемые и фактические положения сохранены в рабочую область и построены в конце симуляции программой rtwdemo_aero_radplot (названный от симуляции автоматически).

Рассмотрите и симулируйте модель

В этом разделе необходимо рассмотреть модель и выполнить симуляцию.

Откройте модель Simulink.

model='rtwdemo_eml_aero_radar';
open_system(model)
rtwdemo_eml_aero_radar([],[],[],'compile');
rtwdemo_eml_aero_radar([],[],[],'term');

Откройте блок MATLAB function RadarTracker в редакторе MATLAB.

open_system([model,'/RadarTracker'])

Симулируйте модель и рассмотрите результаты (отображенный автоматически).

sim(model)

Сгенерируйте код для модели

В этом разделе вы сгенерируете код для фрагмента Фильтра Калмана модели с помощью функциональности сборки подсистемы, обеспеченной Simulink Coder. В первой сборке модель сконфигурирована, чтобы сгенерировать код с помощью Simulink Coder. Во второй сборке модель сконфигурирована, чтобы сгенерировать код с помощью Embedded Coder.

% Create a temporary folder (in your system's temporary folder) for the
% build and inspection process.
currentDir = pwd;
[~,cgDir] = rtwdemodir();

Сконфигурируйте и создайте модель с помощью Simulink Coder.

rtwconfiguredemo(model,'GRT')
slbuild([model,'/RadarTracker'])

Сконфигурируйте и создайте модель с помощью Embedded Coder.

rtwconfiguredemo(model,'ERT')
slbuild([model,'/RadarTracker'])
### Starting build procedure for: RadarTracker
### Successful completion of build procedure for: RadarTracker

Build Summary

Top model targets built:

Model         Action                       Rebuild Reason                                    
=============================================================================================
RadarTracker  Code generated and compiled  Code generation information file does not exist.  

1 of 1 models built (0 models already up to date)
Build duration: 0h 0m 11.659s

Фрагмент RadarTracker.c описан ниже.

cfile = fullfile(cgDir,'RadarTracker_ert_rtw','RadarTracker.c');
rtwdemodbtype(cfile,'/* Model step', '/* Model initialize', 1, 0);

Можно просмотреть целый сгенерированный код в подробном отчете HTML с двусторонней отслеживаемостью между моделью и кодом.

web(fullfile(cgDir,'RadarTracker_ert_rtw','html','RadarTracker_codegen_rpt.html'))

Закройте модель и очистку.

bdclose(model)
rtwdemoclean;
cd(currentDir)