pulseperiod
Период двухуровневого импульса.
| Библиотека |
|
Синтаксис
Вызов функции
-
p = pulseperiod(x)— возвращает разность между моментами начального перехода каждого импульса положительной полярности относительно среднего опорного уровня и следующего положительного перехода в двухуровневом сигналеx. Для определения переходов, составляющих каждый импульс, функцияpulseperiodоценивает уровни состояний входного сигнала методом гистограмм и определяет все области, пересекающие верхнюю границу нижнего состояния и нижнюю границу верхнего состояния.
-
p,initcross,finalcross = pulseperiod(___)— возвращает моментыfinalcrossсреднего опорного уровня конечного перехода каждого импульса.
-
p,initcross,finalcross,nextcross = pulseperiod(___)— возвращает моментыnextcrossсреднего опорного уровня следующего обнаруженного перехода после каждого импульса.
-
p,initcross,finalcross,nextcross,midlev = pulseperiod(___,Name,Value)— возвращает периоды импульсов с дополнительными параметрами, заданными одним или несколькими аргументами типа «имя-значение».
-
pulseperiod(___, out=:plot)— строит график сигнала и затемняет каждый второй идентифицированный импульс. Функция отмечает положение средних пересечений и соответствующий им опорный уровень. Функция также строит графики уровней состояний и связанных с ними нижних и верхних границ. Границы можно настроить с помощью аргумента типа «имя-значение»"Tolerance".
Аргументы
Входные аргументы
#
x —
двухуровневый сигнал
вещественный вектор
Details
Двухуровневый сигнал, заданный как вещественный вектор. Если x не содержит хотя бы двух переходов, функция возвращает пустую матрицу. Первый момент времени в x соответствует .
#
Fs —
частота дискретизации
положительный вещественный скаляр
Details
Частота дискретизации, заданная как положительный вещественный скаляр, выраженный в Гц.
Входные аргументы «имя-значение»
Укажите необязательные пары аргументов в виде Name,Value, где Name — имя аргумента, а Value — соответствующее значение. Аргументы типа «имя-значение» должны располагаться после других аргументов, но порядок пар не имеет значения.
Используйте запятые для разделения имени и значения, а Name заключите в кавычки.
#
MidPercentReferenceLevel —
средний опорный уровень
50 (по умолчанию) | скаляр
Details
Средний опорный уровень в процентах от амплитуды сигнала, заданный как скаляр. Подробнее см. в разделе Средний опорный уровень.
#
Polarity —
полярность импульса
"positive" (по умолчанию) | "negative"
Details
Полярность импульса, заданная как "positive" или "negative". Если задано "positive", функция ищет импульсы с положительными начальными переходами (положительная полярность). Если задано "negative", функция ищет импульсы с отрицательными начальными переходами (отрицательная полярность). Подробнее см. в разделе Полярность импульса.
#
StateLevels —
уровни нижнего и верхнего состояний
вещественный вектор
Details
Уровни нижнего и верхнего состояний, заданные как вектор вещественных значений размером 1 на 2. Первый элемент — уровень нижнего состояния. Второй элемент — уровень верхнего состояния. Если параметр StateLevels не указан, функция оценивает уровни состояний по входному сигналу с помощью метода гистограмм.
#
Tolerance —
уровни допуска
2 (по умолчанию) | скаляр
Details
Уровни допуска (границы нижнего и верхнего состояний), заданные как скаляр, выраженный в процентах. Границы нижнего и верхнего состояний выражаются как уровень состояния плюс или минус кратное разнице между уровнями состояний. Подробнее см. в разделе Допуски на уровне состояний.
#
out —
тип выходных данных
:plot (по умолчанию) | :data
Details
Тип выходных данных:
-
:plot— функция возвращает график; -
:data— функция возвращает данные.
Выходные аргументы
#
p —
период импульсов
вектор
Details
Период импульсов в секундах, возвращаемый в виде вектора. Период импульсов определяется как время между моментами среднего опорного уровня двух последовательных переходов. Если функция не находит два перехода положительной полярности, p остается пустым.
Поскольку pulseperiod использует интерполяцию для определения моментов среднего опорного уровня, p может содержать значения, которые не соответствуют моментам дискретизации двухуровневого сигнала x.
|
#
initcross —
моменты среднего опорного уровня начального перехода
вектор
Details
Моменты среднего опорного уровня начальных переходов, возвращаемые в виде вектора.
#
finalcross —
моменты среднего опорного уровня конечного перехода
вектор
Details
Моменты среднего опорного уровня конечных переходов, возвращаемые в виде вектора.
#
nextcross —
моменты среднего опорного уровня начального перехода после конечного перехода предыдущего импульса
вектор
Details
Моменты среднего опорного уровня начального перехода после конечного перехода предыдущего импульса, возвращаемые в виде вектора.
#
midlev —
значение сигнала
скаляр
Details
Значение сигнала, соответствующее среднему опорному уровню, возвращаемое в виде скаляра.
Дополнительно
Средний опорный уровень
Details
Средний опорный уровень в двухуровневом сигнале с уровнем нижнего состояния и уровнем верхнего состояния равен
Момент среднего опорного уровня
Details
-
Пусть обозначает средний опорный уровень.
-
Пусть и обозначают два последовательных момента дискретизации, соответствующих значениям сигнала, ближайшим по значению к .
-
Пусть и обозначают значения сигнала в моменты и .
Момент среднего опорного уровня равен
Полярность импульса
Details
Если начальный переход импульса положительный, импульс имеет положительную полярность. На этом рисунке показан импульс положительной полярности.
Аналогично, импульс положительной полярности (с положительным нарастанием) имеет конечное состояние большее, чем начальное.
Если начальный переход импульса отрицательный, импульс имеет отрицательную полярность. На этом рисунке показан импульс отрицательной полярности.
Иными словами, импульс отрицательной полярности (с отрицательным нарастанием) имеет начальное состояние большее, чем конечное.
Допуски на уровне состояний
Details
Можно указать границы нижнего и верхнего состояний для каждого уровня состояний. Определите границы как уровень состояний плюс или минус скалярное значение, кратное разности между верхним и нижним состояниями. Чтобы задать полезную область допуска, укажите скалярное значение в виде небольшого числа, например или . В общем случае область для нижнего состояния определяется как
где — уровень нижнего состояния, а — уровень верхнего состояния. Замените первый член в уравнении на , чтобы получить область допуска для уровня верхнего состояния.