Потоковая передача данных в порты приложения реального времени на целевом компьютере осуществляется с помощью Target.Stimulation объект и функции. Эти функции позволяют управлять стимуляцией ввода для отдельных или всех входов и контролировать состояние стимуляции.
Чтобы загрузить данные в порты ввода, создайте объект временных рядов с помощью, например, функции временных рядов. Загрузите объект во входной порт. Не приостанавливайте и не останавливайте стимуляцию вводов до или во время стимуляции. Пауза или остановка порождает ошибку стимуляции.
Для управления или мониторинга стимуляции ввода в приложении реального времени:
Запустите стимуляцию определенного или всех входов с помощью start функция.
Приостановите стимулирование определенного или всех входных данных с помощью pause функция.
Остановите стимулирование определенного или всех входов с помощью stop функция.
Получить статус стимуляции ввода с помощью getStatus функция.
Загрузка данных в определенные входные данные с помощью reloadData функция.
В этом примере показано, как стимулировать корневой ввод в модели с помощью объекта Stimulation и связанных функций:
начать
стоп
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. Откройте блок «Область» и просмотрите результаты.
start(tg.Stimulation,[1]); start(tg);
Приостановите стимуляцию ввода корня 1.
pause(tg.Stimulation,[1]);
Остановите и начните стимуляцию входа 1.
stop(tg.Stimulation,[1]); start(tg.Stimulation,[1]);
Проверьте состояние стимуляции вводов.
getStatus(tg.Stimulation,'all');
Создайте объект временного ряда для загрузки данных в порт ввода.
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');