exponenta event banner

dsp. TransitionMetrics

(Подлежит удалению) Метрики перехода двухуровневых сигналов

dsp.TransitionMetrics будет удален в следующем выпуске. Вместо этого используйте функции из метрик импульса и перехода. Функции в этом наборе включают falltime, overshoot, risetime, settlingtime, slewrate, и undershoot среди прочих.

Описание

dsp.TransitionMetrics объект извлекает информацию, такую как длительность, скорость наклона и пересечения опорного уровня для каждого перехода, обнаруженного в форме двухуровневого сигнала. dsp.TransitionMetrics объект может дополнительно возвращать метрики preshoot, postshoot и settling для регионов непосредственно перед и после каждого перехода.

Для получения метрик перехода для двухуровневого сигнала:

  1. Создать dsp.TransitionMetrics и задайте его свойства.

  2. Вызовите объект с аргументами, как если бы это была функция.

Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.

Создание

Описание

tm = dsp.TransitionMetrics создает метрику перехода System object™, tm. Объект вычисляет время нарастания, время падения и ширину импульса. TransitionMetrics дополнительно вычисляет показатели цикла, такие как разделение импульсов, периоды и рабочие циклы.

пример

tm = dsp.TransitionMetrics(Name,Value) возвращает TransitionMetrics Системный объект, tm, каждое указанное свойство имеет заданное значение.

Свойства

развернуть все

Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.

Если свойство настраивается, его значение можно изменить в любое время.

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

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

Зависимости

Это свойство применяется, когда RunningMetrics является true и настраивается.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

Типы данных: double

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

Типы данных: double

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

Соответствует длительности времени поиска метрик переполнения и недоделки сразу после каждого перехода. Длительность выражается как коэффициент длительности перехода.

Настраиваемый: Да

Зависимости

Это свойство включается только в том случае, если PostshootOutputPort свойство имеет значение true и настраивается.

Типы данных: double

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

Соответствует длительности времени поиска метрик переполнения и недоделки непосредственно перед каждым переходом. Длительность выражается как коэффициент длительности перехода.

Настраиваемый: Да

Зависимости

Это свойство включается только в том случае, если PreshootOutputPort свойство имеет значение true и настраивается.

Типы данных: double

Включите метрику для всех вызовов алгоритма. Если RunningMetrics имеет значение falseметрики вычисляются для каждого вызова алгоритма независимо. Если RunningMetrics имеет значение true, метрики вычисляются для последующих вызовов алгоритма. Если не хватает выборок для вычисления метрик, связанных с последним переходом, область посттранзиционной аберрации или продолжительность поиска в текущей записи, объект откладывает сообщение обо всех метриках перехода, аберрации и настройки, связанных с последним переходом, до тех пор, пока последующий вызов алгоритма не будет выполнен с достаточным количеством данных для вычисления всех включенных метрик для этого перехода.

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

Зависимости

Это свойство применяется, когда TimeInputPort свойство имеет значение false.

Типы данных: double

Включить параметры настройки. Если SettlingOutputPort имеет значение true, для каждого перехода выводятся метрики установления. Область, используемая для вычисления показателей оседания, начинается в середине кросса и длится до SettlingSeekDuration прошло. Если происходит промежуточный переход, или сигнал не установился в пределах PercentStateLevelTolerance конечного уровня, NaN возвращается для каждой метрики. Если после последнего перехода не хватает проб для завершения SettlingSeekDuration, метрики для последнего перехода не сообщаются. Метрики сообщаются для перехода при следующем вызове алгоритма, если RunningMetrics свойство имеет значение true.

Продолжительность времени, в течение которого осуществляется поиск отстоя. Это свойство является скаляром, указывающим время проверки от пересечения среднего опорного уровня (в секундах). Если переход еще не установлен или в течение этой длительности обнаружен последующий полный переход, TransitionMetrics отчеты по объектам NaN для всех показателей оседания.

Настраиваемый: Да

Зависимости

Это свойство применяется только при установке SettlingOutputPort свойство для true.

Типы данных: double

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

Настраиваемый: Да

Типы данных: double

Автоматическое или ручное вычисление уровня состояния. Если StateLevelsSource свойство имеет значение 'Auto', первая запись, отправленная в алгоритм, использует dsp.StateLevels с настройками по умолчанию для определения уровней состояния входящего сигнала. Если для этого свойства установлено значение 'Property', объект использует значения, указанные пользователем в StateLevels собственность.

Добавьте входные данные, чтобы указать моменты образца. Набор TimeInputPort кому true для включения дополнительного вектора действительного входного столбца в алгоритм, чтобы указать моменты выборки, которые соответствуют значениям выборки. Если это свойство false, моменты выборки встроены. Моменты образца начинаются с нуля и увеличиваются на обратную величину SampleRate свойство для последующих образцов. Экземпляры образца продолжают увеличиваться, если RunningMetrics свойство имеет значение true и никаких интервенционных вызовов reset или release встречаются методы.

Использование

Описание

pulse = tm(x) возвращает массив структуры, pulse, поля которого содержат векторы столбцов с действительным значением. Количество строк каждого поля соответствует количеству полных импульсов, найденных на входе вектора столбца с действительными значениями, x.

[pulse,cycle] = tm(x) возвращает массив структуры, cycle, при установке CycleOutputPort свойство для true. Поля cycle содержат вещественные векторы столбцов. Количество строк каждого поля соответствует количеству полных периодов импульсов, найденных на входе вектора столбца с действительными значениями. x.

[pulse,transition] = tm(x) возвращает массив структуры, transition, при установке TransitionOutputPort свойство для true. Поля transition содержат вещественные матрицы с двумя столбцами, которые соответствуют метрикам первого и второго переходов. Количество строк соответствует количеству импульсов, найденных во входном сигнале.

[pulse,preshoot] = tm(x) возвращает массив структуры, preshoot, при установке PreshootOutputPort свойство для true. Поля preshoot содержат вещественные двухколонные матрицы, длина строки которых соответствует числу переходов, найденных во входном сигнале. Имена полей идентичны именам полей postshoot структура.

[pulse,postshoot] = tm(x) возвращает массив структуры, postshoot, при установке PostshootOutputPort свойство для true. Поля postshoot содержат вещественные двухколонные матрицы, длина строки которых соответствует числу переходов, найденных во входном сигнале.

[pulse,settling] = tm(x) возвращает структуру, settling, при установке SettlingOutputPort свойство для true. Поля settling соответствуют метрикам оседания для каждого перехода. Каждое поле представляет собой вектор столбца, элементы которого соответствуют отдельным срокам установки, уровням и моментам.

[pulse,cycle,transition,preshoot,postshoot,settling] = tm(x) который возвращает значение pulse, cycle, transition, preshoot, postshoot, и settling массивы структуры, когда CycleOutputPort, PreshootOutputPort, PostshootPort, и SettlingOutputPort свойства: true. Можно включить или отключить любую комбинацию портов вывода. Однако выходные аргументы определяются в порядке, показанном здесь.

пример

[___] = tm(x,T) выполняет вышеуказанные метрики в отношении дискретизированного сигнала, значения выборки которого, xи моменты образца, T, - вещественные векторы столбцов одинаковой длины. Дополнительный ввод T применяется только при установке TimeInputPort свойство для true.

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

развернуть все

Входной сигнал, заданный как вектор столбца с действительным значением.

Типы данных: double

Моменты выборки, указанные как вектор столбца с действительным значением. Набор TimeInputPort кому true для включения дополнительного вектора реального входного столбца в алгоритм объекта, чтобы указать моменты выборки, которые соответствуют значениям выборки. Если это свойство false, моменты выборки встроены. Моменты образца начинаются с нуля и увеличиваются на обратную величину SampleRate свойство для последующих образцов. Экземпляры образца продолжают увеличиваться, если RunningMetrics свойство имеет значение true и никаких интервенционных вызовов reset или release встречаются методы.

Зависимости

Этот ввод применим при установке TimeInputPort свойство для true.

Типы данных: double

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

развернуть все

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

pulse вывод содержит следующие поля:

  • PositiveCross - Моменты, когда положительные переходы пересекают средний опорный уровень каждого импульса

  • NegativeCross - Моменты, когда отрицательные переходы пересекают средний опорный уровень каждого импульса

  • Width - Абсолютная разница между PositiveCross и NegativeCross каждого импульса

  • RiseTime - Длительность между линейно-интерполированными моментами, когда положительный (восходящий) переход каждого импульса пересекает нижний и верхний опорные уровни

  • FallTime - Длительность между линейно-интерполированными моментами, когда отрицательный (падающий) переход каждого импульса пересекает верхний и нижний опорные уровни

Типы данных: struct

Полные периоды импульсов, возвращаемые при установке CycleOutputPort свойство для true. Периоды импульсов возвращаются в виде структуры, поля которой содержат векторы столбцов с действительными значениями. Количество строк каждого поля соответствует количеству полных периодов импульсов, найденных на входе вектора столбца с действительными значениями. x. Необходимо по крайней мере три последовательных перехода чередующейся полярности, которые начинаются и заканчиваются той же полярностью, что и значение Polarity свойство, если требуется вычислить метрики цикла. Если на входе обнаружен последний переход x не соответствует полярности Polarity свойство, разделение импульсов, период, частота и рабочий цикл не сообщаются для последнего импульса. Если RunningMetrics свойство имеет значение true когда это происходит, все метрики импульса, цикла, перехода, прешута, постшута и установления, связанные с последним импульсом, откладываются до тех пор, пока последующий вызов алгоритма не обнаружит следующий переход.

cycle вывод содержит следующие поля:

  • Period - Длительность между первым переходом импульса тока и первым переходом следующего импульса.

  • Frequency - Взаимность периода.

  • Separation - длительности между пересечениями среднего опорного уровня первого и второго переходов каждого импульса.

  • Width - длительности между пересечениями среднего опорного уровня первого и второго переходов каждого импульса. Это эквивалентно параметру width pulse структура.

  • DutyCycle - Отношение ширины к периоду для каждого импульса.

Типы данных: struct

Метрики перехода, возвращаемые как массив структуры, при установке TransitionOutputPort свойство для true. Поля transition содержат вещественные матрицы с двумя столбцами, которые соответствуют метрикам первого и второго переходов. Количество строк соответствует количеству импульсов, найденных во входном сигнале.

transition вывод содержит следующие поля:

  • Duration - промежуток времени между интерполированными моментами, когда переход пересекает нижний и верхний опорные уровни;

  • SlewRate - Отношение абсолютной разницы между верхним и нижним опорными уровнями к длительности перехода

  • MiddleCross - Линейно интерполированный момент, когда переход сначала пересекает средний опорный уровень

  • LowerCross - Линейно интерполированный момент, когда сигнал пересекает нижний опорный уровень

  • UpperCross - Линейно интерполированный момент, когда сигнал пересекает верхний опорный уровень

Типы данных: struct

Preshoot метрики, возвращаемые как массив структуры, при установке PreshootOutputPort свойство для true. Поля preshoot содержат вещественные двухколонные матрицы, длина строки которых соответствует числу переходов, найденных во входном сигнале.

preshoot вывод содержит следующие поля:

  • Overshoot - Превышение интересующей области, выраженное в процентах от амплитуды сигнала

  • Undershoot - Недовыполнение интересующей области, выраженное в процентах от амплитуды сигнала

  • OvershootLevel - Уровень превышения

  • UndershootLevel - Уровень подножия

  • OvershootInstant - Момент, соответствующий перегрузке

  • UndershootInstant - Мгновение, соответствующее недокруту

Типы данных: struct

Метрики постшута, возвращаемые как массив структуры, при установке PostshootOutputPort свойство для true. Поля postshoot содержат вещественные двухколонные матрицы, длина строки которых соответствует числу переходов, найденных во входном сигнале.

postshoot вывод содержит следующие поля:

  • Overshoot - Превышение интересующей области, выраженное в процентах от амплитуды сигнала

  • Undershoot - Недовыполнение интересующей области, выраженное в процентах от амплитуды сигнала

  • OvershootLevel - Уровень превышения

  • UndershootLevel - Уровень подножия

  • OvershootInstant - Момент, соответствующий перегрузке

  • UndershootInstant - Мгновение, соответствующее недокруту

Типы данных: struct

Определение метрик для каждого перехода, возвращаемых в виде массива структуры при установке SettlingOutputPort свойство для true. Поля settling соответствуют метрикам оседания для каждого перехода. Каждое поле представляет собой вектор столбца, элементы которого соответствуют отдельным срокам установки, уровням и моментам.

settling вывод содержит следующие поля:

  • Duration - Время от момента пересечения сигналом среднего опорного уровня до момента, когда сигнал поступает и остается в пределах заданного PercentStateLevelTolerance амплитуды сигнала в течение заданной длительности поиска установки

  • Instant - момент времени, когда сигнал поступает и остается в пределах заданного допуска.

  • Level - уровень сигнала, по которому он входит и остается в пределах заданного допуска.

Типы данных: struct

Функции объекта

Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:

release(obj)

развернуть все

plot(Подлежит удалению) График импульсного сигнала и метрики
stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

Примечание.При использовании R2016a или более ранней версии замените каждый вызов объекта синтаксисом эквивалентного шага. Например, obj(x) становится step(obj,x).

Вычислить информацию о переходе и предварительном снимке сигнала 2,3 В, дискретизированного на частоте 4 МГц. Загрузите данные.

load('transitionex.mat','x');

Создайте dsp.TransitionMetrics объект. Установите SampleRate свойство для 4 MHz и StateLevelsSource свойство для 'Auto' для оценки уровней состояния по данным. Установите PreshootOutputPort свойство для true для вывода метрик аберрации претрансции при вызове объекта.

tm = dsp.TransitionMetrics('SampleRate',4e6, ...
                                 'StateLevelsSource','Auto', ...
                                 'PreshootOutputPort',true)
tm = 
  dsp.TransitionMetrics with properties:

             StateLevelsSource: 'Auto'
                   StateLevels: [0 2.3000]
    PercentStateLevelTolerance: 2
        PercentReferenceLevels: [10 50 90]
                RunningMetrics: false
                 TimeInputPort: false
                    SampleRate: 4000000
            PreshootOutputPort: true
            PreshootSeekFactor: 3
           PostshootOutputPort: false
            SettlingOutputPort: false

Вызовите объект для вычисления данных перехода и предварительного просмотра. Постройте график результата.

[transition,preshoot] = tm(x) 
transition = struct with fields:
       Duration: 1.7800e-07
       Polarity: 1
       SlewRate: 1.0310e+07
    MiddleCross: 5.1250e-06
     LowerCross: 5.0360e-06
     UpperCross: 5.2140e-06

preshoot = struct with fields:
            Overshoot: 4.8050
           Undershoot: 6.1798
       OvershootLevel: 0.1020
      UndershootLevel: -0.1500
     OvershootInstant: 4.7500e-06
    UndershootInstant: 5.0000e-06

plot(tm)

Вопросы совместимости

развернуть все

Не рекомендуется начинать с R2021a

Ссылки

[1] Стандарт IEEE ® на переходы, импульсы и связанные формы сигналов, стандарт IEEE 181, 2003.

См. также

Функции

Представлен в R2012a