Отображение сигналов временной области
timescope объект отображает сигналы во временной области.

Функции области:
Курсоры данных - измерение значений сигналов с помощью вертикальных и горизонтальных курсоров.
Статистика сигнала - отображение максимальных, минимальных, пиковых разностей, средних, медианных и среднеквадратичных значений выбранного сигнала.
Пиковый поиск (Peak Finder) - поиск максимумов, показывающих значения по оси X, при которых они возникают.
Двухуровневые измерения (Bilevel Measurements) - измерение переходов, перегрузок, недоработок и циклов.
Триггеры - установка триггеров для синхронизации повторяющихся сигналов и приостановка отображения при возникновении событий.
Используйте Функции объекта (Object Functions), чтобы показать, скрыть и определить видимость окна области.
возвращает scope = timescopetimescope объект, scope. Этот объект отображает сигналы с плавающей и фиксированной точками в реальном и комплексном значениях во временной области.
возвращает scope = timescope(Name,Value)timescope с заданными свойствами. Укажите свойства и их значения в кавычках, разделенных запятыми. Можно указать аргументы пары имя-значение в любом порядке.
Большинство свойств можно изменить из timescope ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС.
SampleRate - Частота выборки вводов1 (по умолчанию) | конечный числовой скаляр | векторЧастота дискретизации входного сигнала в герцах, заданная как конечный числовой скаляр или вектор скаляров.
Обратная частота дискретизации определяет расстояние по оси X (оси времени) между точками в отображаемом сигнале. Когда значение NumInputPorts больше 1 и частота дискретизации является скалярной, объект использует одинаковую частоту дискретизации для всех входов. Чтобы задать различные частоты дискретизации для каждого ввода, используйте вектор.
Это свойство можно задать только при создании объекта или после вызова release.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте Скорость выборки (Sample Rate).
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
TimeSpanSource - Источник промежутка времени'auto' (по умолчанию) | 'property'Источник временного интервала для фреймовых входных сигналов, определяемый как один из следующих:
'property' - Объект извлекает пределы по оси X из TimeDisplayOffset и TimeSpan свойства.
'auto' - Пределы по оси X получаются из TimeDisplayOffset собственность, SampleRate и количество строк в каждом входном сигнале (FrameSize в уравнениях ниже). Предельные значения рассчитываются следующим образом:
Минимальный предел по оси времени = TimeDisplayOffset
Максимальное ограничение по оси времени = TimeDisplayOffset + max(1/SampleRate.*FrameSize)
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте Временной интервал (Time Span).
Типы данных: char | string
TimeSpan - Временной промежуток10 (по умолчанию) | положительный скалярВременной интервал в секундах, заданный как положительное числовое скалярное значение. Пределы по оси времени рассчитываются следующим образом:
Минимальный предел по оси времени = TimeDisplayOffset
Максимальное ограничение по оси времени = TimeDisplayOffset + TimeSpan
Чтобы включить это свойство, установите TimeSpanSource кому 'property'.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе «Данные и оси» измените временной интервал.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
TimeSpanOverrunAction - Поведение при переполнении данных'scroll' (по умолчанию) | 'wrap'Укажите способ отображения в области новых данных за пределами видимого интервала времени:
'scroll' - В этом режиме область прокручивает старые данные влево, чтобы освободить место для новых данных справа от экрана области. Этот режим полезен для отладки и контроля изменяющихся во времени сигналов.
'wrap' - В этом режиме область добавляет данные слева от графика после переполнения правого графика.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте Действие переполнения (Overrun Action).
Типы данных: char | string
PlotType - Тип участка'line' (по умолчанию) | 'stairs'Тип графика, указанный как:
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте Тип печати (Plot Type).
Типы данных: char | string
AxesScaling - Режим масштабирования осей'onceatstop' (по умолчанию) | 'auto' | 'manual' | 'updates'Если для этого свойства установлено значение:
'onceatstop' - Лимиты обновляются один раз в конце моделирования (когда release называется).
'auto' - Область всегда пытается сохранить данные на дисплее, минимизируя количество обновлений в пределах осей.
'manual' - Область действия не выполняется, если не указано пользователем.
'updates' - Область масштабирует оси один раз и только один раз после 100 обновлений визуализации.
Это свойство можно задать только при создании объекта.
Типы данных: char | string
LayoutDimensions - Отображение размеров разметочной сетки[1,1] (по умолчанию) | [numberOfRows, numberOfColumns]Задайте размеры разметочной сетки как двухэлементный вектор: [numberOfRows,numberOfColumns]. Сетка может содержать максимум 4 строки и 4 столбца.
При создании сетки из нескольких осей для изменения настроек отдельных осей используйте ActiveDisplay.
Пример: scope.LayoutDimensions = [2,4]
На вкладке Область (Scope) щелкните Показать сетку (Display Grid)
() и выберите определенное количество строк и столбцов в сетке.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
TimeUnits - Единицы измерения оси X'seconds' (по умолчанию) | 'none' | 'metric'Укажите единицы измерения, используемые для описания оси X (временной оси). Можно выбрать один из следующих вариантов:
'seconds' - Область всегда отображает единицы измерения по оси X в секундах. В области отображается словоTime(s) на оси X.
'none' - В области не отображаются единицы измерения по оси X. В области отображается только слово Time на оси X.
'metric' - В области отображаются единицы измерения по оси X как Time (s) изменение единиц измерения на день, недели, месяцы или годы при построении дополнительных точек данных.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте Единицы времени (Time Units).
Типы данных: char | string
TimeDisplayOffset - Смещение пределов по оси XУкажите в секундах расстояние перемещения данных по оси X. Значение сигнала не изменяется, изменяются только пределы, отображаемые на оси X.
Если это свойство указано как скаляр, то это значение является смещением отображения времени для всех каналов. Если задать это свойство в качестве вектора, каждый входной канал может иметь различное смещение отображения времени
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте значение Смещение по времени (Time Offset).
TimeAxisLabels - Метки по оси времени'all' (по умолчанию) | 'bottom | 'none'Метки оси времени, указанные как:
'all' - Метки оси времени отображаются на всех экранах.
'bottom - Метки оси времени отображаются в нижней части каждого столбца.
'none' - Метки не отображаются ни на одном экране.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) задайте Метки времени (Time Labels).
Типы данных: char | string
MaximizeAxes - Максимальное управление осями'auto' (по умолчанию) | 'on' | 'off'Укажите, следует ли отображать область в режиме максимизированных осей. В этом режиме оси разворачиваются, чтобы вписаться во весь экран. Для экономии места метки отображаются не на каждом экране. Вместо этого деления и их значения отображаются поверх выводимых на печать данных. Можно выбрать один из следующих вариантов:
'auto' - Оси отображаются развернутыми на всех экранах только в том случае, если Title и YLabel для каждого экрана свойства пусты. Если ввести какое-либо значение для любого из этих свойств, оси не будут развернуты.
'on' - Оси отображаются на всех экранах с максимумом. Любые значения, введенные в Title и YLabel свойства скрыты.
'off' - Ни одна из осей не выглядит развернутой.
В окне области щелкните
, чтобы развернуть оси, скрывая все метки и вставляя значения осей.
Типы данных: char | string
BufferLength - Длина буфера50000 (по умолчанию) | положительное целое числоУкажите длину буфера, используемого для каждого входного сигнала, как положительное целое число.
Это свойство можно задать только при создании объекта.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Данные и оси (Data and Axes) установите значение Длина буфера (Buffer Length
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Name - Имя окна'Time Scope' (по умолчанию) | символьный вектор | строковый скалярУкажите имя области как вектор символа или скаляр строки. Это имя отображается как заголовок окна рисунка области. Чтобы задать заголовок графика области, используйте команду Title собственность.
Типы данных: char | string
Position - Положение окна[left bottom width height]Положение окна области в пикселях, определяемое размером и расположением окна области в виде четырехэлементного вектора формы [left bottom width height]. Можно поместить окно области в определенное положение на экране, изменив значения этого свойства.
По умолчанию окно отображается в центре экрана шириной 800 пикселы и высота 500 пикселы. Точные значения положения зависят от разрешения экрана.
ChannelNames - Названия каналов{''} (по умолчанию) | массив ячеек символьных векторовУкажите имена входных каналов как массив ячеек символьных векторов. Имена каналов отображаются в легенде и на вкладке Измерения (Measurements) в разделе Выбор канала (Select Channel). Если имена не указаны, каналы помечаются как Channel 1, Channel 2и т.д.
Чтобы включить это свойство, установите ShowLegend кому true.
Типы данных: char
ActiveDisplay - Активный дисплей для настройки свойств1 (по умолчанию) | целое числоАктивный дисплей, используемый для установки свойств, определяемых целочисленным отображаемым номером. Номер дисплея соответствует индексу размещения дисплея по строкам. Установка этого свойства определяет, какое отображение используется для следующих свойств: YLimits, YLabel, ShowLegend, ShowGrid, Title, и PlotAsMagnitudePhase.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Отображение и метки (Display and Labels) установите значение Активное отображение (Active Display).
Title - Заголовок дисплея'' (по умолчанию) | символьный вектор | строковый скалярУкажите заголовок отображения в виде символьного вектора или строкового скаляра.
При установке этого свойства ActiveDisplay управляет обновленным отображением.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Отображение и метки (Display and Labels) задайте Заголовок (Title).
Типы данных: char | string
YLabel - метка оси Y'Amplitude' (по умолчанию) | символьный вектор | строковый скалярУкажите текст области для отображения слева от оси Y.
Это свойство применяется только в том случае, если PlotAsMagnitudePhase является false. Когда PlotAsMagnitudePhase является true, две метки оси Y являются значениями только для чтения "Magnitude" и "Phase"для графика величины и фазового графика соответственно.
При установке этого свойства ActiveDisplay управляет обновленным отображением.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Отображение и метки (Display and Labels) задайте значение YLabel.
Типы данных: char | string
YLimits - пределы по оси Y[-10,10] (по умолчанию) | [ymin, ymax]Задайте пределы оси Y в виде двухэлементного числового вектора. [ymin, ymax].
Если PlotAsMagnitudePhase является false, значение по умолчанию - [-10,10].
Если PlotAsMagnitudePhase является true, значение по умолчанию - [0,10]. Это свойство задает пределы оси Y только для графика величины. Пределы по оси Y фазового графика всегда [-180,180]
При установке этого свойства ActiveDisplay управляет обновленным отображением.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Отображение и метки (Display and Labels) задайте Пределы оси Y (Y-Axis Limits).
ShowLegend - Показать легендуfalse (по умолчанию) | trueЧтобы отобразить легенду с входными именами, задайте для этого свойства значение true.
Из легенды можно управлять видимыми сигналами. В легенде области щелкните имя сигнала, чтобы скрыть сигнал в области. Чтобы отобразить сигнал, щелкните имя сигнала еще раз.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе «Отображение и метки» выберите «Показать легенду».
Типы данных: logical
ShowGrid - Видимость сеткиtrue (по умолчанию) | falseУстановить для этого свойства значение true отображение линий сетки на графике.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе «Отображение и метки» выберите «Показать сетку».
PlotAsMagnitudePhase - Сигнал графика в виде величины и фазыfalse (по умолчанию) | trueПостройте график сигнала как величины и фазированного, заданного как:
true - Область применения отображает величину и фазу входного сигнала на двух отдельных осях в пределах одного активного дисплея.
false - Область действия отображает действительную и мнимую части входного сигнала на двух отдельных осях в пределах одного активного дисплея.
Это свойство полезно для комплексных входных сигналов. Включение этого свойства влияет на фазу для действительных входных сигналов. Когда амплитуда входного сигнала неотрицательна, фаза равна 0 градусам. Когда амплитуда входного сигнала отрицательная, фаза составляет 180 градусов.
На вкладке Область (Scope) щелкните Параметры (Settings). В разделе Отображение и метки (Display and Labels) выберите График фазы величины (Magnitude Phase Plot
Чтобы использовать функцию объекта, укажите объект в качестве первого входного аргумента.
hide | Скрыть окно области |
show | Окно области просмотра |
isVisible | Определение видимости объема работ |
generateScript | Создание сценария MATLAB для создания области с текущими параметрами |
step | Запустить алгоритм объекта System |
release | Деблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков |
reset | Сброс внутренних состояний объекта System |
Создайте синусоидальный сигнал временной области. Отображение сигнала путем вызова объекта временной области.
Создайте синусоидальный сигнал с двумя тонами, один с частотой 0,3 кГц, а другой с частотой 3 кГц.
t = (0:1000)'/8e3; xin = sin(2*pi*0.3e3*t)+sin(2*pi*3e3*t);
Создать timescope объект и просмотр синусоидального сигнала путем вызова объекта временной области scope.
scope = timescope('SampleRate', 8e3,... 'TimeSpanSource', 'property', ... 'TimeSpan', 0.1); scope(xin)

Управляемый release позволяет изменять значения свойств и входные характеристики. Область автоматически масштабирует оси.
release(scope);

Скрыть окно области.
if(isVisible(scope)) hide(scope) end
Отображение окна области.
if(~isVisible(scope)) show(scope) end

Создание и отображение входного синхросигнала
Загрузите данные синхросигнала, x и t. Найдите время образца, ts.
load clockex
ts = t(2)-t(1);Создать timescope и вызовите объект для отображения сигнала. Для автоматического масштабирования осей и включения изменений значений свойств и входных характеристик вызовите release.
scope = timescope(1,1/ts,'TimeSpanSource','Auto'); scope(x); release(scope);

Использование панели «Измерения уровня» для поиска времени настройки
1. На вкладке Измерения (Measurements) выберите Аберрации (Aberrations).
Первоначально в области времени не отображается измерение времени настройки. Это отсутствие происходит из-за того, что значение по умолчанию параметра Settle Seek превышает всю продолжительность моделирования.
2. В поле «Параметры билевела» > «Отрегулировать поиск» введите 2e-6 и нажмите Enter.

Область времени теперь отображает растущее значение времени настройки, равное 118.392 ns.
Это значение времени оседания фактически является статистическим средним значением времени оседания для всех пяти фронтов подъема. Чтобы показать время установки только для одного фронта, можно увеличить масштаб этого перехода.
3. Наведите курсор на правый верхний угол осей области и нажмите кнопку зумирования.
4. Щелкните и перетащите, чтобы увеличить изображение одного из переходов.

Time Scope обновляет растущее значение Settling Time для отражения нового временного окна.
Создать dsp.SineWave с частотой дискретизации 1000 Гц. Создать dsp.FIRDecimator объект для прореживания синусоидальной волны на 2. Создать timescope объект с двумя портами ввода.
Fs = 1000; % Sampling frequency sine = dsp.SineWave('Frequency',50,... 'SampleRate',Fs, ... 'SamplesPerFrame',100); decimate = dsp.FIRDecimator; % To decimate sine by 2 scope = timescope(2,[Fs Fs/2], ... 'TimeDisplayOffset',[0 38/Fs], ... 'TimeSpanSource','Property',... 'TimeSpan',0.25, ... 'YLimits',[-1 1], ... 'ShowLegend', true);
Позвоните в dsp.SineWave объект для создания синусоидального сигнала. Используйте dsp.FIRDecimator объект для создания второго сигнала, который равен исходному сигналу, но прорежен коэффициентом 2. Отображение сигналов путем вызова timescope объект.
for ii = 1:2 xsine = sine(); xdec = decimate(xsine); scope(xsine,xdec) end release(scope)

Закройте окно Временная область (Time Scope) и очистите переменные.
clear scope Fs sine decimate ii xsine xdec
Создайте вектор, представляющий комплексный синусоидальный сигнал, и создайте timescope объект. Вызовите область для отображения сигнала.
fs = 1000; t = (0:1/fs:10)'; CxSine = cos(2*pi*0.2*t) + 1i*sin(2*pi*0.2*t); CxSineSum = cumsum(CxSine); scope = timescope(1,fs,'TimeSpanSource','Auto','ShowLegend',1); scope(CxSineSum); release(scope)

По умолчанию, когда вход представляет собой сигнал со сложным значением, временная область отображает действительную и мнимую части на одной оси. Эти вещественные и мнимые части отображаются в виде линий разного цвета на одних и тех же осях в пределах одного и того же активного дисплея.
Изменить PlotAsMagnitudePhase свойство для true и звонить release.
scope.PlotAsMagnitudePhase = true; scope(CxSineSum); release(scope)

Теперь Time Scope отображает величину и фазу входного сигнала на двух отдельных осях в пределах одного активного дисплея. Верхние оси отображают величину, а нижние - фазу в градусах.
В этом примере показано, как timescope объект визуализирует входные данные, изменяющие размеры на полпути.
Создайте вектор, представляющий двухканальный постоянный сигнал. Создайте другой вектор, представляющий трехканальный постоянный сигнал. Создать timescope объект. Вызовите область с двумя входами для отображения сигнала.
fs = 10; sigdim2 = [ones(5*fs,1) 1+ones(5*fs,1)]; % 2-dim 0-5 s sigdim3 = [2+ones(5*fs,1) 3+ones(5*fs,1) 4+ones(5*fs,1)]; % 3-dim 5-10 s scope = timescope('SampleRate',fs,'TimeSpanSource','Property'); scope.PlotType = 'Stairs'; scope.TimeSpanOverrunAction = 'Scroll'; scope.TimeDisplayOffset = [0 5]; scope([sigdim2; sigdim3(:,1:2)], sigdim3(:,3));

В этом примере размер входного сигнала во временной области изменяется по мере выполнения моделирования. Если время моделирования составляет менее 5 секунд, то Time Scope отображает только двухканальный сигнал, sigdim2. Через 5 секунд Time Scope также отображает трехканальный сигнал, sigdim3.
Запустить release способ обеспечения возможности изменения значений свойств и входных характеристик. Область автоматически масштабирует оси.
release(scope)

Для измерения частоты сердечных сокращений используйте панель «Поиск пиков» в области времени.
Создание и отображение сигнала ЭКГ
Создайте сигнал электрокардиограммы (ЭКГ). Обычай ecg функция помогает генерировать сигнал пульса.
function x = ecg(L) a0 = [0, 1, 40, 1, 0, -34, 118, -99, 0, 2, 21, 2, 0, 0, 0]; d0 = [0, 27, 59, 91, 131, 141, 163, 185, 195, 275, 307, 339, 357, 390, 440]; a = a0 / max(a0); d = round(d0 * L / d0(15)); d(15) = L; for i = 1:14 m = d(i) : d(i+1) - 1; slope = (a(i+1) - a(i)) / (d(i+1) - d(i)); x(m+1) = a(i) + slope * (m - d(i)); end
x1 = 3.5*ecg(2700).'; y1 = sgolayfilt(kron(ones(1,13),x1),0,21); n = (1:30000)'; del = round(2700*rand(1)); mhb = y1(n + del); ts = 0.00025;
Создать timescope и вызовите объект для отображения сигнала. Для автоматического масштабирования осей и включения изменений значений свойств и входных характеристик вызовите release.
scope = timescope(1,1/ts); scope(mhb); release(scope)

Найти частоту сердечных сокращений
Используйте измерения Peak Finder для измерения времени между ударами сердца.
На вкладке Измерения (Measurements) выберите Поиск пиков (Peak Finder).
Для свойства «Значения пиков» введите 10.
На панели «Пики» в нижней части окна в области времени отображается список из десяти значений пиковой амплитуды и времени их возникновения.

Список пиковых значений показывает постоянную разность во времени 0,675 секунды между каждым контрольным сигналом. Основываясь на следующем уравнении, частота сердечных сокращений этого ЭКГ-сигнала составляет около 89 ударов в минуту.

Закройте окно Область времени (Time Scope) и удалите переменные, созданные в рабочей области.
clear scope x1 y1 n del mhb ts
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.