БИХ-фильтр с помощью биквадратных структур
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.BiquadFilterfreqz | Частотная характеристика дискретного времени фильтрует Системный объект |
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).
Следующие схемы показывают типы данных, используемые в dsp.BiquadFilter возразите, когда вход будет фиксированной точкой. Поскольку каждый фильтр структурирует поддержку объектов, типы данных, показанные в схемах, могут быть установлены через соответствующие свойства фиксированной точки объекта.
Прямая форма I


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

Следующие схемы показывают типы данных с фиксированной точкой между разделами фильтра.
Когда данные не оптимизированы:

Когда вы задаете OptimizeUnityScaleValues к true, и масштабируйте значения к 1:

Прямая форма я транспонированный


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

Пунктирные броски не использованы, когда вы задаете 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.