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

dutycycle

Коэффициент заполнения импульсной волны.

Библиотека

EngeeDSP

Синтаксис

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

  • d = dutycycle(x) — возвращает отношение длительности импульса к периоду импульса для каждого импульса положительной полярности. Функция определяет все области, пересекающие верхнюю границу нижнего состояния и нижнюю границу верхнего состояния. Для определения переходов, определяющих каждый импульс, функция dutycycle оценивает уровни состояния x методом гистограмм. Границы нижнего и верхнего состояний выражаются как уровень состояния плюс или минус скалярное значение, кратное разности между уровнями состояний. Подробнее см. в разделе Допуски на уровне состояний.

  • d = dutycycle(x,fs) — определяет частоту дискретизации x. Первый момент дискретизации x соответствует .

  • d = dutycycle(x,t) — определяет моменты времени t, в которые производится выборка x.

  • d,initcross,finalcross,nextcross,midlev = dutycycle(___) — с любыми входными аргументами из предыдущих синтаксисов также возвращает:

    • вектор initcross, элементы которого соответствуют средним пересечениям (моментам среднего опорного уровня) начального перехода каждого импульса с соответствующим nextcross;

    • вектор finalcross, элементы которого соответствуют средним пересечениям (моментам среднего опорного уровня) конечного перехода каждого импульса с соответствующим nextcross;

    • вектор nextcross, элементы которого соответствуют средним пересечениям (моментам среднего опорного уровня) следующего обнаруженного перехода для каждого импульса;

    • скаляр midlev, соответствующий среднему опорному уровню.

  • ___ = dutycycle(___,Name,Value) — возвращает отношение длительности импульса к периоду импульса с дополнительными параметрами, заданными одним или несколькими аргументами типа Name,Value.

  • dutycycle(___) — отображает форму сигнала, местоположение моментов среднего опорного уровня, соответствующие опорные уровни, уровни состояний и соответствующие границы нижнего и верхнего состояний.

  • d = dutycycle(tau,prf) — возвращает отношение длительности импульса к периоду импульса для длительности импульса tau секунд и частоты повторения импульсов prf.

Аргументы

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

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

Details

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

Типы данных

Float64

# fs — частота дискретизации
1 Гц (по умолчанию) | положительный скаляр

Details

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

Типы данных

Float64

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

Details

Выборка моментов времени, заданная как вектор той же длины, что и x.

Типы данных

Float64

# tau,prf — длительность импульса и частота повторения
скаляры

Details

Длительность импульса и частота повторения, заданные как скаляры. Выразите длительность импульса в секундах и частоту повторения в импульсах в секунду. Произведение tau и prf должно быть меньше или равно единице.

Типы данных

Float64

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

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

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

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

Details

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

Типы данных

Float64

# Polarity — полярность импульса
"positive" (по умолчанию) | "negative"

Details

Полярность импульса, заданная как пара, разделенная запятой, состоящая из "Polarity" и либо "positive", либо "negative".

  • Если задано "positive", функция dutycycle ищет импульсы с положительными начальными переходами (положительная полярность).

  • Если задано "negative", функция dutycycle ищет импульсы с отрицательными начальными переходами (отрицательная полярность).

Примеры импульсов положительной и отрицательной полярности см. в разделе Полярность импульса.

Типы данных

Char

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

Details

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

Типы данных

Float64

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

Details

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

Типы данных

Float64

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

Details

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

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

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

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

# d — коэффициент заполнения
вектор | скаляр

Details

Коэффициент заполнения, возвращаемый в виде вектора или скаляра. Элементы d соответствуют отношению длительности импульса к периоду повторения для каждого импульса в x. d подчиняется условию , поскольку длительность импульса не может превышать период. Длина d равна количеству периодов импульсов в x. Если в качестве аргументов указаны tau и prf, d будет скаляром.

# initcross — момент среднего опорного уровня начального перехода
вектор

Details

Моменты среднего опорного уровня начальных переходов, возвращаемые в виде вектора. Элементы initcross соответствуют средним пересечениям (моментам среднего опорного уровня) начального перехода каждого импульса с соответствующим nextcross.

# finalcross — момент среднего опорного уровня конечного перехода
вектор

Details

Моменты среднего опорного уровня конечных переходов, возвращаемые в виде вектора. Элементы finalcross соответствуют средним пересечениям (моментам среднего опорного уровня) конечного перехода каждого импульса с соответствующим nextcross.

# nextcross — среднее пересечение следующего перехода
вектор

Details

Среднее пересечение следующего перехода, возвращаемое в виде вектора. Элементы nextcross соответствуют средним пересечениям (моментам среднего опорного уровня) следующего обнаруженного перехода для каждого импульса.

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

Details

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

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

Коэффициент заполнения

Details

Коэффициент заполнения двухуровневого импульса — это отношение средней мощности к пиковой мощности.

Энергия двухуровневого, или прямоугольного, импульса равна произведению пиковой мощности на длительность импульса . Устройства для измерения энергии в форме сигнала работают в масштабах времени, превышающих длительность одиночного импульса. Поэтому обычно измеряют среднюю мощность

где — период импульса.

Отношение средней мощности к пиковой мощности — это коэффициент заполнения:

Полярность импульса

Details

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

Если начальный переход импульса положительный, импульс имеет положительную полярность. На этом рисунке показан импульс положительной полярности:

dutycycle 1 ru

Аналогично, импульс положительной полярности (с положительным нарастанием) имеет конечное состояние более высокое, чем начальное.

Если начальный переход импульса отрицательный, импульс имеет отрицательную полярность. На этом рисунке показан импульс отрицательной полярности:

dutycycle 2 ru

Иными словами, импульс отрицательной полярности (с отрицательным нарастанием) имеет начальное состояние более высокое, чем конечное.

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

Details

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

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

Литература

  1. Skolnik, M. I. Introduction to Radar Systems. New York, NY: McGraw-Hill, 1980.

  2. IEEE® Standard on Transitions, Pulses, and Related Waveforms. IEEE Standard 181, 2003.