БИХ-фильтр с помощью биквадратных структур
dsp.BiquadFilter
возразите реализует каскад биквадратных разделов, где коэффициенты для каждого раздела предоставляются отдельной строкой N-by-6 матрица секций второго порядка (SOS). Каждая строка матрицы SOS содержит числитель и коэффициенты знаменателя соответствующего раздела фильтра. Получившийся фильтр может быть применен к входу вектора или матрицы, где каждый столбец представляет канал данных, которые обрабатываются независимо.
Чтобы реализовать БИХ фильтруют структуру с помощью биквадратного уравнения или SOS:
Создайте dsp.BiquadFilter
объект и набор его свойства.
Вызовите объект с аргументами, как будто это была функция.
Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты?
возвращает биквадратного БИХ (SOS) Система фильтра 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
(значение по умолчанию) | N-by-6 матрицаЗадайте матрицу секции второго порядка (SOS) как матрицу N-6, где N является количеством разделов в фильтре. Каждая строка матрицы SOS содержит числитель и коэффициенты знаменателя соответствующего раздела фильтра. Системная функция, H(z), фильтра biquad:
Коэффициенты упорядочены в строках матрицы SOS как (b0, b1, b2,1, –a1, –a2). Можно использовать коэффициенты действительных или комплексных чисел. Это свойство применяется только, когда вы устанавливаете SOSMatrixSource
свойство к Property
. Ведущий коэффициент знаменателя фильтра biquad, a0, равняется 1 для каждого раздела фильтра, независимо от заданного значения.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fi
ScaleValues
— Масштабируйте значения для каждого раздела biquad
(значение по умолчанию) | скаляр | векторЗадайте значения шкалы, чтобы применяться до и после каждого раздела фильтра biquad. ScaleValues
должен быть или скаляр или вектор из длины N+1
, где N
количество разделов. Если вы устанавливаете это свойство на скаляр, скалярное значение используется в качестве значения усиления только перед первым разделом фильтра. Остающиеся значения усиления установлены к 1
. Если вы устанавливаете это свойство на вектор из N+1
значения, каждое значение используется для отдельного участка фильтра.
Это свойство применяется только, когда вы устанавливаете SOSMatrixSource
свойство к Property
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
InitialConditions
— Начальные условия для прямой формы II структур
(значение по умолчанию) | скаляр | вектор | матрицаЗадайте начальные условия состояний фильтра когда Structure
свойство является одним из | Direct form II
| Direct form II transposed
|. Количество состояний или элементов задержки (нули и полюса) в прямой форме II фильтров biquad равняется дважды количеству разделов фильтра. Можно задать начальные условия как скаляр, вектор или матрицу.
Когда вы задаете скалярное значение, фильтр biquad инициализирует все элементы задержки в фильтре к тому значению. Когда вы задаете вектор из длины, равной количеству элементов задержки в фильтре, каждый векторный элемент задает уникальное начальное условие для соответствующего элемента задержки.
Фильтр biquad применяет тот же вектор из начальных условий к каждому каналу входного сигнала. Когда вы задаете вектор из длины, равной продукту количества входных каналов и количества элементов задержки в фильтре, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки в соответствующем канале. Когда вы задаете матрицу с одинаковым числом строк как количество элементов задержки в фильтре и один столбец для каждого канала входного сигнала, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки в соответствующем канале.
Это свойство применяется только, когда вы устанавливаете Structure
свойство к одному из Direct form II
или Direct form II transposed
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
NumeratorInitialConditions
— Начальные условия на нулевой стороне
(значение по умолчанию) | скаляр | вектор | матрицаЗадайте начальные условия состояний фильтра на стороне структуры фильтра с нулями. Количество состояний или элементов задержки в числителе прямой формы я фильтр biquad равняется дважды количеству разделов фильтра. Можно задать начальные условия как скаляр, вектор или матрицу. Когда вы задаете скаляр, фильтр biquad инициализирует все элементы задержки на нулевой стороне в фильтре к тому значению. Когда вы задаете вектор из длины, равной количеству элементов задержки на нулевой стороне в фильтре, каждый векторный элемент задает уникальное начальное условие для соответствующего элемента задержки на нулевой стороне.
Фильтр biquad применяет тот же вектор из начальных условий к каждому каналу входного сигнала. Когда вы задаете вектор из длины, равной продукту количества входных каналов и количества элементов задержки на нулевой стороне в фильтре, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на нулевой стороне в соответствующем канале. Когда вы задаете матрицу с одинаковым числом строк как количество элементов задержки на нулевой стороне в фильтре и один столбец для каждого канала входного сигнала, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на нулевой стороне в соответствующем канале.
Это свойство применяется только, когда вы устанавливаете Structure
свойство к одному из Direct form I
или Direct form I transposed
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
DenominatorInitialConditions
— Начальные условия на стороне полюсов
(значение по умолчанию) | скаляр | вектор | матрицаЗадайте начальные условия состояний фильтра на стороне структуры фильтра с полюсами. Количество состояний знаменателя или элементы задержки, в прямой форме I (неканонических) фильтров biquad равняется дважды количеству разделов фильтра. Можно задать начальные условия как скаляр, вектор или матрицу. Когда вы задаете скаляр, фильтр biquad инициализирует все элементы задержки на стороне полюсов фильтра к тому значению. Когда вы задаете вектор из длины, равной количеству элементов задержки на стороне полюсов в фильтре, каждый векторный элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне полюсов.
Объект применяет тот же вектор из начальных условий к каждому каналу входного сигнала. Когда вы задаете вектор из длины, равной продукту количества входных каналов и количества элементов задержки на стороне полюсов в фильтре, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне полюсов в соответствующем канале. Когда вы задаете матрицу с одинаковым числом строк как количество элементов задержки на стороне полюсов в фильтре и один столбец для каждого канала входного сигнала, каждый элемент задает уникальное начальное условие для соответствующего элемента задержки на стороне полюсов в соответствующем канале.
Это свойство только применяется, когда вы устанавливаете 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Задайте фиксированную точку множимого как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
.
Это свойство применяется только, когда вы устанавливаете MultiplicandDataType
свойство к Custom
.
SectionInputDataType
— Разделите входное слово и дробные длиныSame as input
(значение по умолчанию) | Custom
Задайте входной тип данных с фиксированной точкой раздела как любой Same as input
или Custom
.
CustomSectionInputDataType
— Пользовательский раздел ввел слово и дробные длиныnumerictype([],16,15)
(значение по умолчанию) | numerictypeЗадайте входную фиксированную точку раздела как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
.
Это свойство применяется только, когда вы устанавливаете SectionInputDataType
свойство к Custom
.
SectionOutputDataType
— Разделите выходное слово и дробные длиныSame as section input
(значение по умолчанию) | Custom
Задайте раздел выходной тип данных с фиксированной точкой как любой Same as section input
или Custom
.
CustomSectionOutputDataType
— Пользовательский раздел вывел слово и дробные длиныnumerictype([],16,15)
(значение по умолчанию) | numerictypeЗадайте тип данных с фиксированной точкой на выходе раздела как со знаком, масштабируемый 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Задайте содействующую фиксированную точку числителя как a 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Задайте содействующую фиксированную точку знаменателя как a numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку значений шкалы как a numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку продукта как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку продукта как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку аккумулятора числителя как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку аккумулятора знаменателя как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку состояния как масштабированное 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Задайте фиксированную точку состояния числителя как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. 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Задайте фиксированную точку состояния знаменателя как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
. CustomNumeratorStateDataType
и CustomDenominatorStateDataType
свойства должны иметь те же размеры слова.
Это свойство применяется только, когда вы устанавливаете StateDataType
свойство к Custom
.
OutputDataType
— Выведите слово и дробные длиныSame as accumulator
(значение по умолчанию) | Same as input
| Custom
Задайте выходной тип данных с фиксированной точкой как Same as input
, Same as accumulator
, или Custom
.
CustomOutputDataType
— Пользовательское выходное слово и дробные длиныnumerictype([],16,15)
(значение по умолчанию) | numerictypeЗадайте тип данных с фиксированной точкой на выходе как масштабированное numerictype
Объект (Fixed-Point Designer) с Signedness
из Auto
.
Это свойство применяется только, когда вы устанавливаете свойство OutputDataType на Custom
.
x
— Ввод данныхВвод данных в виде вектора или матрицы. Этот объект также принимает входные параметры переменного размера. Если объект заблокирован, можно изменить размер каждого входного канала, но вы не можете изменить количество каналов.
Тип данных всех входных параметров должен быть тем же самым. Если вход является фиксированной точкой, это должна быть подписанная фиксированная точка с наклоном степени двойки и нулевым смещением.
Сложность x
, num
, и den
должно быть то же самое.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
num
— Коэффициенты числителяКоэффициенты числителя в виде 3 N числовой матрицей, где N является количеством разделов фильтра biquad. Сложность x
, num
, и den
должно быть то же самое.
Тип данных всех входных параметров должен быть тем же самым. Если num
фиксированная точка, это должна быть подписанная фиксированная точка с наклоном степени двойки и нулевым смещением.
Этот вход применяется только, когда вы устанавливаете SOSMatrixSource
свойством является Input port
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
den
— Коэффициенты знаменателяКоэффициенты знаменателя в виде 2 N числовой матрицей, где N является количеством разделов фильтра biquad. Объект принимает, что первый коэффициент знаменателя каждого раздела равняется 1.
Тип данных всех входных параметров должен быть тем же самым. Если den
фиксированная точка, это должна быть подписанная фиксированная точка с наклоном степени двойки и нулевым смещением.
Сложность x
, num
, и den
должно быть то же самое.
Этот вход применяется только, когда вы устанавливаете SOSMatrixSource
свойством является Input port
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
Поддержка комплексного числа: Да
g
— Масштабируйте значенияМасштабируйте значения фильтра biquad в виде 1 на (N +1) числовой вектор, где N
количество разделов фильтра biquad.
Тип данных всех входных параметров должен быть тем же самым. Если g
фиксированная точка, это должна быть подписанная фиксированная точка с наклоном степени двойки и нулевым смещением.
Этот вход применяется когда SOSMatrixSource
свойством является Input Port
и ScaleValuesInputPort
свойством является true
.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| fi
y
— Filtered выходФильтрованный выходной параметр, возвращенный как вектор или матрица. Размер, тип данных и сложность соответствий выходного сигнала тот из входного сигнала.
Типы данных: 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 с нормированной частотой среза 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 фильтруют Системный объект с помощью 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-нормы фильтра biquad с помощью 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 – biquad объект фильтра принимает, что zero-th-order коэффициент знаменателя равняется 1 независимо от заданного значения. biquad объект фильтра не поддерживает Error
или Warn
опции найдены в соответствующем блоке.
И этот объект и его соответствующий блок поддерживают введенный переменный размер. Когда вы вызываете объект, он может обработать входной параметр, который изменяется в размере.
Указания и ограничения по применению:
Смотрите системные объекты в Генерации кода MATLAB (MATLAB Coder).
Эта генерация HDL-кода поддержки объектов с HDL Coder™ или продуктами Filter Design HDL Coder™. Для рабочих процессов HDL Coder и ограничений, смотрите генерацию HDL-кода для Системных объектов (HDL Coder). Для рабочих процессов Filter Design HDL Coder и ограничений, смотрите, Генерируют HDL-код для Системных объектов Фильтра (Filter Design HDL 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:
freqz
| fvtool
| impz
| info
| coeffs
| cost
| scale
| scaleopts
| scalecheck
| cumsec
| generatehdl
| tf
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.