|
Использование блока From Workspace.Date: 2015-10-07; view: 634. Примеры построения Simulink-моделей.
Рассмотрим пример использования блока «Считывания данных из рабочего пространства» From Workspace. Создадим выполняемый файл MATLAB:
t=0:0.01:10; %формируем вектор отсчетов по времени tau=5; %длительность прямоугольного импульса y1=t<tau; %формируем прямоугольный импульс y2=sin(2*pi*10/5*t); %формируем синусоидальный сигнал y=y1.*y2; %перемножение plot(t,y) %построение графика simin=[t' y']; %создание массива simin
Этот файл формирует сигнал радиоимпульса: огибающая – прямоугольный импульс длительностью τ с синусоидальным заполнением с частотой 10/ τ (рис. 38).
рис. 38 Радиоимпульс
Сохраним этот m-файл в рабочей папке MATLAB и выполним его. Рабочая схема в Simulink будет выглядеть, как показано на рис. 39.
рис. 39 Использование «Блока считывания данных из рабочего пространства» From Workspace
Блок может считывать данные только в виде массива или структуры со временем, поэтому в рабочей области MATLAB мы сформировали массив simin. В окне параметров блока From Workspaceимя переменной оставим simin и укажем шаг изменения входного сигнала (рис. 40)
рис. 40 Окно параметров блока From Workspace
Параметры блока From Workspace:
- Extrapolate –линейная экстраполяция сигналов. - SettingToZero –нулевые значения сигналов. - HoldingFinalValue –выходные значения сигналов равны последним значениям. - CyclicRepetition –циклическое повторение значений сигналов. Данный вариант может использоваться, только если переменная Data имеет формат Structure without time.
Вместо строчки создания массива в m-файле можно написать несколько строчек создания структуры со временем:
%создание структуры simin: simin.time=[t']; %время simin.signals.values=[y']; %значения simin.signals.dimensions=[1]; %размерность hold on plot(simin.time, simin.signals.values,'r')
В обоих случаях зарегистрированный осциллографом сигнал должен совпадать с сигналом, изображенным на рис. 38.
|