Документация Engee

midcross

Пересечение среднего опорного уровня для двухуровневого сигнала.

Библиотека

EngeeDSP

Синтаксис

Вызов функции

  • c = midcross(x) — возвращает моменты времени, когда каждый переход входного сигнала x пересекает 50%-ный опорный уровень. Для определения переходов функция midcross оценивает уровни состояния x с помощью метода гистограмм и идентифицирует все интервалы, пересекающие верхнюю границу нижнего состояния и нижнюю границу верхнего состояния.

  • c = midcross(x,Fs) — определяет частоту дискретизации Fs.

  • c = midcross(x,t) — определяет моменты дискретизации t.

  • c,midlev = midcross(___) — возвращает значение сигнала, соответствующее среднему опорному уровню. Укажите комбинацию входных аргументов любого из предыдущих вариантов синтаксиса.

  • c = midcross(x,Name,Value) — возвращает моменты времени, соответствующие пересечениям среднего опорного уровня, с дополнительными параметрами, заданными одним или несколькими аргументами типа «имя-значение».

  • midcross(___;out=:plot) — строит график сигнала и отмечает местоположение точек пересечения с опорным уровнем (моменты средних опорных уровней) и соответствующие опорные уровни. Функция также строит график уровней состояния с верхней и нижней границами состояния.

Аргументы

Входные аргументы

# x — двухуровневый сигнал
вектор

Details

Двухуровневый сигнал, заданный как вещественный вектор. Первый момент дискретизации в x соответствует .

# Fs — частота дискретизации
скаляр

Details

Частота дискретизации, заданная как положительный вещественный скаляр, выраженный в Гц.

# t — выборка моментов времени
вектор

Details

Выборка моментов времени, заданная как вектор. Длина вектора t должна быть равна длине двухуровневого сигнала x. Моменты дискретизации соответствуют индексам входного вектора.

Входные аргументы «имя-значение»

Укажите необязательные пары аргументов в виде Name,Value, где Name — имя аргумента, а Value — соответствующее значение. Аргументы типа «имя-значение» должны располагаться после других аргументов, но порядок пар не имеет значения.

Используйте запятые для разделения имени и значения, а Name заключите в кавычки.

# MidPercentReferenceLevel — средний опорный уровень
50 (по умолчанию) | скаляр

Details

Средний опорный уровень в процентах от амплитуды сигнала, заданный как вещественный скаляр. Подробнее см. в разделе Средний опорный уровень.

# StateLevels — уровни нижнего и верхнего состояний
вектор

Details

Уровни нижнего и верхнего состояний, заданные как вещественный вектор размером 1 на 2. Первый элемент соответствует уровню нижнего состояния, а второй — уровню верхнего состояния входного сигнала. Если аргумент StateLevels не задан, функция midcross оценивает уровни состояния по входному сигналу с помощью метода гистограмм.

# Tolerance — уровни допуска
2 (по умолчанию) | скаляр

Details

Уровни допуска (границы нижнего и верхнего состояний), заданные как вещественный скаляр, выраженный в процентах. Подробнее см. в разделе Допуски уровня состояний.

# out — тип выходных данных
:data (по умолчанию) | :plot

Details

Тип выходных данных:

  • :data — функция возвращает данные;

  • :plot — функция возвращает график.

Выходные аргументы

# c — моменты времени
вектор

Details

Моменты времени пересечения среднего опорного уровня, возвращаемые в виде вектора.

Поскольку функция midcross использует интерполяцию для определения момента пересечения, выходной аргумент c может содержать значения, не соответствующие моментам выборки.

# midlev — средний опорный уровень
скаляр

Details

Средний опорный уровень, возвращаемый в виде скаляра.

Дополнительно

Средний опорный уровень

Details

Средний опорный уровень в двухуровневом сигнале с уровнем нижнего состояния и уровнем верхнего состояния равен

Момент среднего опорного уровня

Details

Момент среднего опорного уровня равен

где

  • обозначает средний опорный уровень;

  • и обозначают два последовательных момента дискретизации, соответствующих значениям сигнала, ближайшим по значению к ;

  • и обозначают значения сигнала в моменты и .

Допуски уровня состояний

Details

Можно указать границы нижнего и верхнего состояний для каждого уровня состояний. Определите границы как уровень состояний плюс или минус скалярное значение, кратное разности между верхним и нижним состояниями. Чтобы задать полезную область допуска, укажите скалярное значение в виде небольшого числа, например или . В общем случае область для нижнего состояния определяется как

где — уровень нижнего состояния, а — уровень верхнего состояния. Замените первый член в уравнении на , чтобы получить область допуска для уровня верхнего состояния.

Литература

  1. IEEE® Standard on Transitions, Pulses, and Related Waveforms, IEEE Standard 181, 2003. p. 20.