Этот пример показывает, как стимулировать корневые входные порты в модели с помощью объекта Стимуляции и связанных функций:
начать
стоп
getStatus
reloadData
пауза
Откройте slrt_ex_osc_inport
модели. Сохраните модель в рабочую папку. Сопоставьте входной порт, чтобы использовать данные квадратной волны. Для входных
In1
, интерполированная отключена.
model = ('slrt_ex_osc_inport'); open_system(model); load(fullfile(matlabroot,'toolbox','slrealtime','examples','slrt_ex_inport_square.mat')); waveform = square; set_param(model,'ExternalInput','waveform'); set_param(model,'LoadExternalInput','on'); set_param(model,'StopTime','Inf');
Создайте, загрузите и выполните приложение реального времени.
evalc('slbuild(model)'); tg = slrealtime('TargetPC1'); load(tg,model);
Запустите корневую стимуляцию входных портов 1. Откройте блок Scope и наблюдайте результаты.
start(tg.Stimulation,[1]); start(tg);
Приостановите стимуляцию входного порта корня входного порта 1.
pause(tg.Stimulation,[1]);
Остановите и запустите стимуляцию входного порта 1.
stop(tg.Stimulation,[1]); start(tg.Stimulation,[1]);
Проверьте состояние стимуляции входных портов.
getStatus(tg.Stimulation,'all');
Создайте объект timeseries для загрузки данных в входной порт.
sampleTime = 0.1; endTime = 10; numberOfSamples = endTime * 1/sampleTime + 1; timeVector = (0:numberOfSamples) * sampleTime; u = timeseries(timeVector*10,timeVector);
Объект u создается в течение 10 секунд. Загрузите его во входной порт 1. Стимуляция входного порта должна быть остановлена перед загрузкой данных.
stop(tg.Stimulation,[1]); reloadData(tg.Stimulation,[1],u);
Остановите приложение реального времени и закройте все.
stop(tg);
bdclose('all');