БИХ с использованием биквадратических структур
The dsp.BiquadFilter
объект реализует каскад биквадратических сечений, где коэффициенты для каждого сечения снабжены отдельной строкой матрицы секций второго порядка (SOS) N на 6. Каждая строка матрицы SOS содержит коэффициенты числителя и знаменателя соответствующей секции фильтра. Полученный фильтр может быть применен к вектору или матрице входу, где каждый столбец представляет канал данных, который обрабатывается независимо.
Реализация структуры БИХ с использованием biquadratic или SOS:
Создайте dsp.BiquadFilter
Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
возвращает biquadratic БИХ (SOS) фильтр System object™, biquad
= dsp.BiquadFilterbiquad
, который независимо фильтрует каждый канал (столбец) входа с течением времени с помощью секции SOS [1 0.3 0.4 1 0.1 0.2]
с транспонированной структурой II прямой формы.
biquad = dsp.BiquadFilter(sosmatrix,scalevalues)
возвращает объект биквадратичного фильтра со SOSMatrix
значение свойства установлено в sosmatrix
и ScaleValues
значение свойства установлено в scalevalues
.
biquad = dsp.BiquadFilter(
возвращает объект биквадратичного фильтра, Name,Value
)biquad
, с каждым набором свойств на заданное значение.
Если не указано иное, свойства являются нетронутыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируются, когда вы вызываете их, и release
функция разблокирует их.
Если свойство настраивается, можно изменить его значение в любой момент.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Использование Системных объектов.
Structure
- Структура фильтра'Direct form II transposed'
(по умолчанию) | 'Direct form I'
| 'Direct form I transposed'
| 'Direct form II'
Задайте структуру фильтра следующим 'Direct form I'
, 'Direct form I transposed'
, 'Direct form II'
, 'Direct form II transposed'
.
SOSMatrixSource
- источник матрицы SOS'Property'
(по умолчанию) | 'Input port'
Укажите источник матрицы SOS следующим 'Property'
или 'Input port'
.
SOSMatrix
- матрица SOS[1 0.3 0.4 1 0.1 0.2]
(по умолчанию) | N -by-6 матрицаЗадайте матрицу секции второго порядка (SOS) как матрицу N-by-6, где N - количество каскадов в фильтре. Каждая строка матрицы SOS содержит коэффициенты числителя и знаменателя соответствующей секции фильтра. Системная функция, H(z), биквадного фильтра:
Коэффициенты упорядочены в строках матрицы SOS как (b0, b1, b2,1, -a1, -a2). Можно использовать коэффициенты вещественных или комплексных чисел. Это свойство применяется только при установке SOSMatrixSource
свойство к Property
. Начальный коэффициент знаменателя биквадного фильтра, a0, равен 1 для каждой секции фильтра, независимо от заданного значения.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fi
ScaleValues
- Масштабные значения для каждого биквадного раздела1
(по умолчанию) | скалярный вектор |Задайте значения шкалы для применения до и после каждого раздела биквадного фильтра. ScaleValues
должен быть либо скаляром, либо вектором длины N+1
, где N
количество разделов. Если вы задаете это свойство скаляром, скалярное значение используется в качестве значения усиления только перед первой секцией фильтра. Остальные значения усиления установлены в 1
. Если вы задаете это свойство в вектор N+1
значения, каждое значение используется для отдельной секции фильтра.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
InitialConditions
- Начальные условия для структур прямой формы II0
(по умолчанию) | скалярный вектор | | матрицаЗадайте начальные условия состояний фильтра, когда Structure
свойство является одним из | Direct form II
| Direct form II transposed
|. Количество состояний или элементов задержки (нули и полюсы) в биквадном фильтре прямой формы II в два раза превышает количество секций фильтра. Можно задать начальные условия как скаляр, вектор или матрица.
Когда вы задаете скалярное значение, биквадный фильтр инициализирует все элементы задержки в фильтре до этого значения. Когда вы задаете вектор длины, равной количеству элементов задержки в фильтре, каждый векторный элемент задает уникальное начальное условие для соответствующего элемента задержки.
Биквадный фильтр применяет один и тот же вектор начальных условий к каждому каналу входного сигнала. Когда вы задаете вектор длины, равной продукту количества каналов входа и количеству элементов задержки в фильтре, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки в соответствующем канале. Когда вы задаете матрицу с одинаковым числом строк, что и количество элементов задержки в фильтре, и по одному столбцу для каждого канала входного сигнала, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки в соответствующем канале.
Это свойство применяется только при установке Structure
свойство одному из Direct form II
или Direct form II transposed
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
NumeratorInitialConditions
- Начальные условия на стороне нулей0
(по умолчанию) | скалярный вектор | | матрицаЗадайте начальные условия состояний фильтра на стороне структуры фильтра с нулями. Количество состояний или элементов задержки в числителе биквадного фильтра I прямой формы равняется в два раза количеству секций фильтра. Можно задать начальные условия как скаляр, вектор или матрица. Когда вы задаете скаляр, биквадный фильтр инициализирует все элементы задержки на стороне нулей в фильтре до этого значения. Когда вы задаете вектор длины, равной количеству элементов задержки на стороне нулей в фильтре, каждый векторный элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне нулей.
Биквадный фильтр применяет один и тот же вектор начальных условий к каждому каналу входного сигнала. Когда вы задаете вектор длины, равной продукту количества каналов входа и количеству элементов задержки на стороне нулей в фильтре, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне нулей в соответствующем канале. Когда вы задаете матрицу с одинаковым числом строк, что и количество элементов задержки на стороне нулей в фильтре, и по одному столбцу для каждого канала входного сигнала, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне нулей в соответствующем канале.
Это свойство применяется только при установке Structure
свойство одному из Direct form I
или Direct form I transposed
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
DenominatorInitialConditions
- Начальные условия на стороне полюсов0
(по умолчанию) | скалярный вектор | | матрицаЗадайте начальные условия состояний фильтра на стороне структуры фильтра с полюсами. Количество состояний знаменателя, или элементов задержки, в биквадном фильтре I (неканоническом) в прямой форме равняется в два раза количеству секций фильтра. Можно задать начальные условия как скаляр, вектор или матрица. Когда вы задаете скаляр, биквадный фильтр инициализирует все элементы задержки на стороне полюсов фильтра до этого значения. Когда вы задаете вектор длины, равной количеству элементов задержки на стороне полюсов в фильтре, каждый векторный элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне полюсов.
Объект применяет один и тот же вектор начальных условий к каждому каналу входного сигнала. Когда вы задаете вектор длины, равной продукту количества входа каналов и количеству элементов задержки на стороне полюсов в фильтре, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне полюсов в соответствующем канале. Когда вы задаете матрицу с одинаковым числом строк, как и количество элементов задержки на стороне полюсов в фильтре, и по одному столбцу для каждого канала входного сигнала, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне полюсов в соответствующем канале.
Это свойство применяется только при установке Structure
свойство одному из Direct form I
или Direct form I transposed
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
OptimizeUnityScaleValues
- Оптимизируйте значения шкалы единицtrue
(по умолчанию) | false
Когда для этого логического свойства задано значение true
biquad-фильтр удаляет все расчеты усиления шкалы единиц. Это уменьшает количество расчетов и увеличивает точность фиксированной точки.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
.
ScaleValuesInputPort
- Как задать значения шкалыtrue
(по умолчанию) | false
Выберите способ задания значений шкалы. По умолчанию это свойство true
, и значения шкалы заданы через вход порт. Когда это свойство false
все значения шкалы равны 1.
Это свойство применяется только когда SOSMatrixSource
свойство Input port
.
RoundingMethod
- Метод округления для операций с фиксированной точкойFloor
(по умолчанию) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
Задайте метод округления.
OverflowAction
- Действие переполнения для операций с фиксированной точкойWrap
(по умолчанию) | Saturate
Задайте действие переполнения как одно из Wrap
или Saturate
.
MultiplicandDataType
- Множительные слова и длины дробейSame as output
(по умолчанию) | Custom
Задайте мультипликационный и тип данных с фиксированной точкой как один из Same as output
или Custom
.
Это свойство применяется только при установке Structure
свойство к Direct form I transposed
.
CustomMultiplicandDataType
- Пользовательские множительные слова и длины дробейnumerictype([],32,30)
(по умолчанию) | численный типЗадайте мультипликационный и тип с фиксированной точкой как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
.
Это свойство применяется только при установке MultiplicandDataType
свойство к Custom
.
SectionInputDataType
- Входное слово раздела и длины дробейSame as input
(по умолчанию) | Custom
Задайте вход сечения типа данных с фиксированной точкой следующим образом Same as input
или Custom
.
CustomSectionInputDataType
- Пользовательское входное слово раздела и длины дробейnumerictype([],16,15)
(по умолчанию) | численный типЗадайте вход точки сечения как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
.
Это свойство применяется только при установке SectionInputDataType
свойство к Custom
.
SectionOutputDataType
- Выходное слово раздела и длины дробейSame as section input
(по умолчанию) | Custom
Задайте выход сечения типа данных с фиксированной точкой следующим образом Same as section input
или Custom
.
CustomSectionOutputDataType
- Пользовательское слово вывода раздела и длины дробейnumerictype([],16,15)
(по умолчанию) | численный типЗадайте тип данных с фиксированной точкой на выходе сечения как знаковое, масштабированное numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
.
Это свойство применяется только при установке SectionOutputDataType
свойство к Custom
.
NumeratorCoefficientsDataType
- Коэффициенты числителя, словосочетания и длины дробейSame word length as input
(по умолчанию) | Custom
Задайте коэффициенты числителя типа данных с фиксированной точкой следующим Same word length as input
или Custom
. Установка этого свойства также устанавливает DenominatorCoefficientsDataType
и ScaleValuesDataType
свойства на то же значение.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
.
CustomNumeratorCoefficientsDataType
- Пользовательские коэффициенты числителя: слово и длина дробиnumerictype([],16,15)
(по умолчанию) | численный типЗадайте коэффициенты числителя с фиксированной точкой как numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. Область размера слова CustomNumeratorCoefficientsDataType
, CustomDenominatorCoefficientsDataType
, и CustomScaleValuesDataType
свойства должны быть одинаковыми.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
и NumeratorCoefficientsDataType
свойство к Custom
.
DenominatorCoefficientsDataType
- Коэффициенты знаменателя, длина слова и дробиSame word length as input
(по умолчанию) | Custom
Задайте коэффициенты знаменателя типа данных с фиксированной точкой следующим Same word length as input
или Custom
. Установка этого свойства также устанавливает NumeratorCoefficientsDataType
и ScaleValuesDataType
свойства на то же значение.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
.
CustomDenominatorCoefficientsDataType
- Пользовательские коэффициенты знаменателя: слово и длина дробиnumerictype([],16,15)
(по умолчанию) | численный типЗадайте коэффициенты знаменателя типа с фиксированной точкой как numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorCoefficientsDataType
, CustomDenominatorCoefficientsDataType
, и CustomScaleValuesDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
и DenominatorCoefficientsDataType
свойство к Custom
.
ScaleValuesDataType
- Масштабные значения словосочетаний и дробейSame word length as input
(по умолчанию) | Custom
Задайте значения шкалы с типом данных с фиксированной точкой как Same word length as input
или Custom
. Установка этого свойства также устанавливает NumeratorCoefficientsDataType
и DenominatorCoefficientsDataType
свойства на то же значение.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
.
CustomScaleValuesDataType
- Пользовательские значения шкалы: слово и длина дробиnumerictype([],16,15)
(по умолчанию) | численный типЗадайте значения шкалы фиксированной точки как numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorCoefficientsDataType
, CustomDenominatorCoefficientsDataType
, и CustomScaleValuesDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке SOSMatrixSource
свойство к Property
и ScaleValuesDataType
свойство к Custom
.
NumeratorProductDataType
- Слово продукта числителя и длины дробейSame as input
(по умолчанию) | Custom
| Full precision
Задайте режим, чтобы определить тип данных с фиксированной точкой продукта числителя как:
Same as input
(по умолчанию) - слово продукта числителя и длины дробей те же, что и при входе.
Custom
- Включает CustomNumeratorProductDataType
свойство, которое можно использовать, чтобы задать пользовательский тип данных продукта числителя. Задайте тип данных как numerictype
объект.
Full precision
- Используйте правила полной точности, чтобы задать тип данных. Эти правила обеспечивают наиболее точные числа с фиксированной точкой. Правила препятствуют квантованию внутри объекта. Биты складываются, при необходимости, так, чтобы не происходило округления или переполнения. Для получения дополнительной информации см. раздел «Полная точность для системных объектов с фиксированной точкой».
Установка этого свойства также устанавливает DenominatorProductDataType
свойство с тем же значением.
CustomNumeratorProductDataType
- Пользовательское слово продукта числителя и длины дробейnumerictype([],32,30)
(по умолчанию) | численный типУкажите тип фиксированной точки продукта как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorProductDataType
и CustomDenominatorProductDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке NumeratorProductDataType
свойство к Custom
.
DenominatorProductDataType
- Слово продукта знаменателя и длины дробейSame as input
(по умолчанию) | Custom
| Full precision
Задайте режим, чтобы определить тип данных с фиксированной точкой продукта знаменателя как:
Same as input
(по умолчанию) - слово продукта знаменателя и длины дробей те же, что и у входов.
Custom
- Включает CustomDenominatorProductDataType
свойство, которое можно использовать, чтобы задать пользовательский тип данных продукта знаменателя. Задайте тип данных как numerictype
объект.
Full precision
- Используйте правила полной точности, чтобы задать тип данных. Эти правила обеспечивают наиболее точные числа с фиксированной точкой. Правила препятствуют квантованию внутри объекта. Биты складываются, при необходимости, так, чтобы не происходило округления или переполнения. Для получения дополнительной информации см. раздел «Полная точность для системных объектов с фиксированной точкой».
Установка этого свойства также устанавливает NumeratorProductDataType
свойство с тем же значением.
CustomDenominatorProductDataType
- Пользовательское слово продукта знаменателя и длины дробейnumerictype([],32,30)
(по умолчанию) | численный типУкажите тип фиксированной точки продукта как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorProductDataType
и CustomDenominatorProductDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке DenominatorProductDataType
на Custom
.
NumeratorAccumulatorDataType
- Слово аккумулятора числителя и длины дробейSame as product
(по умолчанию) | Same as input
| Custom
Укажите тип данных аккумулятора числителя с фиксированной точкой следующим Same as input
, Same as product
, или Custom
. Установка этого свойства также устанавливает DenominatorAccumulatorDataType
свойство с таким же значением.
CustomNumeratorAccumulatorDataType
- Пользовательское слово-накопитель числителя и длины дробейnumerictype([],32,30)
(по умолчанию) | численный типЗадайте тип аккумулятора числителя с фиксированной точкой как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorAccumulatorDataType
и CustomDenominatorAccumulatorDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке NumeratorAccumulatorDataType
свойство к Custom
.
DenominatorAccumulatorDataType
- Слово аккумулятора знаменателя и длины дробейSame as product
(по умолчанию) | Same as input
| Custom
Задайте тип данных с фиксированной точкой аккумулятора знаменателя следующим Same as input
, Same as product
, или Custom
. Установка этого свойства также устанавливает NumeratorAccumulatorDataType
свойство с тем же значением.
CustomDenominatorAccumulatorDataType
- Пользовательское слово накопителя знаменателя и длины дробей numerictype([],32,30)
(по умолчанию) | численный типЗадайте тип аккумулятора знаменателя с фиксированной точкой как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorAccumulatorDataType
и CustomDenominatorAccumulatorDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке DenominatorAccumulatorDataType
свойство к Custom
.
StateDataType
- Длина слова и дроби состоянияSame as accumulator
(по умолчанию) | Same as input
| Custom
Задайте тип данных с фиксированной точкой состояния следующим Same as input
, Same as accumulator
, или Custom
.
Это свойство применяется, когда вы задаете свойство Structure равным Direct form II
или Direct form II transposed
.
CustomStateDataType
- Пользовательское слово состояния и длины дробейnumerictype([],16,15)
(по умолчанию) | численный типЗадайте тип фиксированной точки состояния как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
.
Это свойство применяется только при установке StateDataType
свойство к Custom
.
NumeratorStateDataType
- Слово состояния числителя и длины дробейSame as accumulator
(по умолчанию) | Same as input
| Custom
Задайте состояние числителя типа данных с фиксированной точкой следующим Same as input
, Same as accumulator
, или Custom
. Установка этого свойства также устанавливает DenominatorStateDataType
свойство с тем же значением.
Это свойство применяется только, когда вы задаете свойство Structure равным Direct form I transposed
.
CustomNumeratorStateDataType
- Пользовательское слово состояния числителя и длины дробейnumerictype([],16,15)
(по умолчанию) | численный типЗадайте состояние числителя с фиксированной точкой как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorProductDataType
и CustomDenominatorProductDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке StateDataType
свойство к Custom
.
DenominatorStateDataType
- Слово состояния знаменателя и длины дробейSame as accumulator
(по умолчанию) | Same as input
| Custom
Задайте состояние знаменателя типа данных с фиксированной точкой следующим Same as input
, Same as accumulator
, или Custom
. Установка этого свойства также устанавливает NumeratorStateDataType
свойство с тем же значением.
Это свойство применяется только, когда вы задаете свойство Structure равным Direct form I transposed
.
CustomDenominatorStateDataType
- Пользовательское слово состояния знаменателя и длины дробей numerictype([],16,15)
(по умолчанию) | численный типЗадайте тип фиксированной точки состояния знаменателя как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
. The CustomNumeratorStateDataType
и CustomDenominatorStateDataType
свойства должны иметь одинаковые размеры слова.
Это свойство применяется только при установке StateDataType
свойство к Custom
.
OutputDataType
- Выход слова и длин дробейSame as accumulator
(по умолчанию) | Same as input
| Custom
Задайте выход типа данных с фиксированной точкой следующим Same as input
, Same as accumulator
, или Custom
.
CustomOutputDataType
- Пользовательское выходное слово и длины дробейnumerictype([],16,15)
(по умолчанию) | численный типЗадайте тип данных с фиксированной точкой на выходе как масштабированный numerictype
(Fixed-Point Designer) объект с Signedness
от Auto
.
Это свойство применяется только, когда вы задаете значение свойства OutputDataType Custom
.
x
- Вход данныхВход данных, заданный как вектор или матрица. Этот объект также принимает входы переменного размера. Когда объект заблокирован, можно изменить размер каждого входного канала, но вы не можете изменить количество каналов.
Тип данных всех входов должен быть одинаковым. Если вход является фиксированной точкой, он должен быть подписан фиксированной точкой с степенью двойки и нулевым смещением.
Сложность x
, num
, и den
должно быть то же самое.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
num
- Коэффициенты числителяКоэффициенты числителя, заданные как 3-байтовая N числовая матрица, где N - количество сечений биквадного фильтра. Сложность x
, num
, и den
должно быть то же самое.
Тип данных всех входов должен быть одинаковым. Если num
является фиксированной точкой, она должна быть подписана фиксированной точкой с степенью двойки и нулевым смещением.
Этот вход применяется только при установке SOSMatrixSource
свойство Input port
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
den
- Коэффициенты знаменателяКоэффициенты знаменателя, заданные как 2-байтовая N числовая матрица, где N - количество биквадных секций фильтра. Объект принимает, что первый коэффициент знаменателя каждого раздела равен 1.
Тип данных всех входов должен быть одинаковым. Если den
является фиксированной точкой, она должна быть подписана фиксированной точкой с степенью двойки и нулевым смещением.
Сложность x
, num
, и den
должно быть то же самое.
Этот вход применяется только при установке SOSMatrixSource
свойство Input port
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
g
- Масштабные значенияШкалы значения биквадного фильтра, заданные как 1-бай- (N + 1) числовой вектор, где N
- количество секций биквадного фильтра.
Тип данных всех входов должен быть одинаковым. Если g
является фиксированной точкой, она должна быть подписана фиксированной точкой с степенью двойки и нулевым смещением.
Этот вход применяется, когда SOSMatrixSource
свойство Input Port
и ScaleValuesInputPort
свойство true
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
y
- Отфильтрованный выходОтфильтрованный выход, возвращенный как вектор или матрица. Размер, тип данных и сложность выходного сигнала совпадают с размером входного сигнала.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
Чтобы использовать функцию объекта, задайте системный объект в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj
, используйте следующий синтаксис:
release(obj)
dsp.BiquadFilter
freqz | Частотная характеристика фильтра в дискретном времени Системного объекта |
fvtool | Визуализация частотной характеристики фильтров DSP |
impz | Импульсная характеристика фильтра в дискретном времени Системного объекта |
info | Информация о фильтре Системный объект |
coeffs | Возвращает фильтрация коэффициентов системного объекта в структуре |
cost | Оценка стоимости реализации фильтра Системный объект |
scale | Масштабируйте секции второго порядка |
scaleopts | Создайте объект опции для масштабирования секции второго порядка |
scalecheck | Проверяйте масштабирование биквадратичного фильтра |
cumsec | Кумулятивная секция второго порядка биквадратичного фильтра |
generatehdl | Сгенерируйте HDL-код для квантованного DSP-фильтра (требует Filter Design HDL Coder) |
tf | Преобразуйте Системный объект фильтра в дискретном времени в передаточную функцию |
reorder | Переупорядочить секции второго порядка биквадратичного фильтра Системного объекта |
Примечание.Если вы используете R2016a или более ранний релиз, замените каждый вызов объекта эквивалентным синтаксисом шага. Для примера, obj(x)
становится step(obj,x)
.
Используйте lowpass biquadratic объект фильтра четвертого порядка с нормированной частотой отключения 0,4, чтобы фильтровать высокие частоты от входного сигнала. Отобразите результат как спектр степени с помощью анализатора спектра.
t = (0:1000)'/8e3; xin = sin(2*pi*0.3e3*t)+sin(2*pi*3e3*t); % Input is 0.3 & % 3kHz sinusoids src = dsp.SignalSource(xin, 100); sink = dsp.SignalSink; [z,p,k] = ellip(4,1,60,.4); % Set up the filter [s,g] = zp2sos(z,p,k); biquad = dsp.BiquadFilter(s,g,'Structure','Direct form I'); sa = dsp.SpectrumAnalyzer('SampleRate',8e3,... 'PlotAsTwoSidedSpectrum',false,... 'OverlapPercent', 80,'PowerUnits','dBW',... 'YLimits', [-160 -10]); while ~isDone(src) input = src(); filteredOutput = biquad(input); sink(filteredOutput); sa(filteredOutput) end filteredResult = sink.Buffer; fvtool(biquad,'Fs',8000)
Проектируйте и применяйте lowpass biquad filter системный объект с помощью design
функция.
lpSpec = fdesign.lowpass('Fp,Fst,Ap,Ast',500,550,0.5,60,10000); lpfilter = design(lpSpec,'butter','systemobject',true) fvtool(lpfilter);
lpfilter = dsp.BiquadFilter with properties: Structure: 'Direct form II' SOSMatrixSource: 'Property' SOSMatrix: [42x6 double] ScaleValues: [43x1 double] InitialConditions: 0 OptimizeUnityScaleValues: true Use get to show all properties
Продемонстрировать Linf-норму масштабирования биквадного фильтра с помощью scale
функция.
Fs = 8000; Fcutoff = 2000; [z,p,k] = butter(10,Fcutoff/(Fs/2)); [s,g] = zp2sos(z,p,k); biquad = dsp.BiquadFilter('Structure', 'Direct form I', ... 'SOSMatrix', s,'ScaleValues', g); scale(biquad,'linf','scalevalueconstraint','none','maxscalevalue',2)
Создайте объект масштабирования опций, содержащий требуемые параметры масштабирования.
EllipI = design(fdesign.lowpass('N,Fp,Ap,Ast',10,0.5,0.5,20), 'ellip', 'FilterStructure', 'df1sos','SystemObject',true)
EllipI = dsp.BiquadFilter with properties: Structure: 'Direct form I' SOSMatrixSource: 'Property' SOSMatrix: [5x6 double] ScaleValues: [6x1 double] NumeratorInitialConditions: 0 DenominatorInitialConditions: 0 OptimizeUnityScaleValues: true Show all properties
opts = scaleopts(EllipI)
opts = sosReorder: 'auto' MaxNumerator: 2 NumeratorConstraint: 'none' OverflowMode: 'wrap' ScaleValueConstraint: 'unit' MaxScaleValue: 'Not used'
Этот объект реализует алгоритм, входы и выходы, описанные на Biquad Filter блочных страниц с описанием. Свойства объекта соответствуют параметрам блоков, кроме:
Coefficient source
Action when the a0 values of the SOS matrix are not one - объект биквадного фильтра принимает коэффициент знаменателя нулевого порядка равным 1 независимо от заданного значения. Объект биквадного фильтра не поддерживает Error
или Warn
опции, найденные в соответствующем блоке.
И этот объект, и его соответствующий блок поддерживают вход переменного размера. Когда вы вызываете объект, он может обрабатывать входной параметр, который изменяется в размере.
Указания и ограничения по применению:
Смотрите Системные объекты в Генерации кода MATLAB (MATLAB Coder).
Следующие схемы показывают типы данных, используемые в dsp.BiquadFilter
объект, когда вход является фиксированной точкой. Для каждой структуры фильтра, поддерживаемой объектом, типы данных, показанные на схемах, могут быть установлены через соответствующие свойства с фиксированной точкой объекта.
Прямая форма I
Следующая схема показывает типы данных для одного раздела фильтра для сигналов с фиксированной точкой.
Следующие схемы показывают типы данных с фиксированной точкой между секциями фильтра.
Когда данные не оптимизированы:
Когда вы задаете OptimizeUnityScaleValues
на true
, и масштабные значения до 1:
Прямая форма I транспонирована
Следующая схема показывает типы данных для одного раздела фильтра для сигналов с фиксированной точкой.
Штриховые отливки опускаются, когда вы задаете OptimizeUnityScaleValues
на true
, и масштабировать значения до 1.
Следующие схемы показывают типы данных с фиксированной точкой между секциями фильтра.
Когда данные не оптимизированы:
Когда вы задаете OptimizeUnityScaleValues
на true
, и масштабные значения до 1:
Прямая форма II
Следующая схема показывает типы данных для одного раздела фильтра для сигналов с фиксированной точкой.
Штриховые отливки опускаются, когда вы задаете OptimizeUnityScaleValues
на true
, и масштабировать значения до 1.
Следующие схемы показывают типы данных с фиксированной точкой между секциями фильтра.
Когда данные не оптимизированы:
Когда вы задаете OptimizeUnityScaleValues
на true
, и масштабные значения до 1:
Прямая форма II транспонирована
Следующая схема показывает типы данных для одного раздела фильтра для сигналов с фиксированной точкой.
Следующие схемы показывают типы данных с фиксированной точкой между секциями фильтра.
Когда данные не оптимизированы:
Когда вы задаете OptimizeUnityScaleValues
на true
, и масштабные значения до 1:
coeffs
| cost
| cumsec
| freqz
| fvtool
| generatehdl
| impz
| info
| scale
| scalecheck
| scaleopts
| tf
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.