fdesign.decimator

Дециматор- объект спецификации фильтров

Синтаксис

D = fdesign.decimator(M)
D = fdesign.decimator(M, RESPONSE)
D = fdesign.decimator(M, CICRESPONSE, D)
D = fdesign.decimator(M, RESPONSE, SPEC)
D = fdesign.decimator(...,SPEC,specvalue1,specvalue2,...)
D = fdesign.decimator(...,Fs)
D = fdesign.decimator(...,MAGUNITS)

Описание

D = fdesign.decimator(M) создает дециматор объекта спецификации фильтров D с DecimationFactor свойство, равное положительному целому числу M и Response значение свойства установлено в 'Nyquist'. Значения по умолчанию для ширины перехода и затухания в полосе задерживания в проекте Nyquist являются 0.1, радианы/выборка и 80 дБ. Если M не задан, M значение по умолчанию 2.

D = fdesign.decimator(M, RESPONSE) создает объект спецификации дециматора с коэффициентом десятикратного уменьшения M и 'Response' свойство.

D = fdesign.decimator(M, CICRESPONSE, D) создает объект спецификации CIC или CIC компенсатора дециматора с коэффициентом десятикратного уменьшения, M, 'Response' свойство, равное 'CIC' или 'CICCOMP', и D равен дифференциальной задержке. Дифференциальная задержка, D, должен предшествовать любой опции спецификации.

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

Метод проекта

Допустимые опции спецификации

'Arbitrary Magnitude'

Посмотрите fdesign.arbmag описание записей спецификации.

  • 'N,F,A' (опция по умолчанию)

  • 'N,B,F,A'

'Arbitrary Magnitude and Phase'

Посмотрите fdesign.arbmagnphase описание записей спецификации.

  • 'N,F,H' (опция по умолчанию)

  • 'N,B,F,H'

'Bandpass'

Посмотрите fdesign.bandpass описание записей спецификации.

  • 'Fst1,Fp1,Fp2,Fst2,Ast1,Ap,Ast2' (опция по умолчанию)

  • 'N,Fc1,Fc2'

  • 'N,Fst1,Fp1,Fp2,Fst2'

'Bandstop'

Посмотрите fdesign.bandstop описание записей спецификации.

  • 'N,Fc1,Fc2'

  • 'N,Fp1,Fst1,Fst2,Fp2'

  • 'Fp1,Fst1,Fst2,Fp2,Ap1,Ast,Ap2' (опция по умолчанию)

'CIC'

'Fp,Ast' - Только действительная спецификация. Fp - частота полосы пропускания и Ast - затухание в полосе задерживания в децибелах.

Чтобы задать CIC дециматор, включите дифференциальную задержку после 'CIC' и перед опцией спецификации фильтра: 'Fp,Ast'. Для примера:
d = fdesign.decimator(2,'cic',4,'Fp,Ast',0.4,40);

'CIC Compensator'

Посмотрите fdesign.ciccomp описание записей спецификации.

  • 'Fp,Fst,Ap,Ast' (опция по умолчанию)

  • 'N,Fc,Ap,Ast'

  • 'N,Fp,Ap,Ast'

  • 'N,Fp,Fst'

  • 'N,Fst,Ap,Ast'

Чтобы задать дециматор компенсатора CIC, включите дифференциальную задержку после 'CICCOMP' и перед спецификацией фильтра. Для примера:
d = fdesign.decimator(2,'ciccomp',4);

'Differentiator'

'N' - порядок фильтра

'Gaussian'

'Nsym,BTNsym - порядок фильтра в символах и BT - продукт времени полосы пропускания-символа.

Спецификации должно предшествовать целое число SamplesPerSymbol.

'Halfband

Посмотрите fdesign.halfband описание записей спецификации.

  • 'TW,Ast' (опция по умолчанию)

  • 'N,TW'

  • 'N'

  • 'N,Ast'

Если вы используете квазилинейный метод проекта БИХ, iirlinphaseпри спецификации halfband коэффициент интерполяции должен быть 2.

'Highpass'

Посмотрите fdesign.highpass описание записей спецификации.

  • 'Fst,Fp,Ast,Ap' (опция по умолчанию)

  • 'N,F3db'

  • 'N,Fc'

  • 'N,Fc,Ast,Ap'

  • 'N,Fp,Ast,Ap'

  • 'N,Fst,Ast,Ap'

  • 'N,Fst,Fp'

  • 'N,Fst,Ast,Ap'

  • 'N,Fst,Fp,Ast'

'Hilbert'

Посмотрите fdesign.hilbert описание записей спецификации.

  • 'N,TW' (опция по умолчанию)

  • 'TW,Ap'

'Inverse-sinc Lowpass'

Посмотрите fdesign.isinclp описание записей спецификации.

  • 'Fp,Fst,Ap,Ast' (опция по умолчанию)

  • 'N,Fc,Ap,Ast'

  • 'N,Fp,Fst'

  • 'N,Fst,Ap,Ast'

'Inverse-sinc Highpass'

Посмотрите fdesign.isinchp описание записей спецификации.

  • 'Fst,Fp,Ast,Ap' (опция по умолчанию)

  • 'N,Fc,Ast,Ap'

  • 'N,Fst,Fp'

  • 'N,Fst,Ast,Ap'

'Lowpass'

Посмотрите fdesign.lowpass описание записей спецификации.

  • 'Fp,Fst,Ap,Ast' (опция по умолчанию)

  • 'N,F3dB'

  • 'N,Fc'

  • 'N,Fc,Ap,Ast'

  • 'N,Fp,Ap,Ast'

  • 'N,Fp,Fst'

  • 'N,Fp,Fst,Ap'

  • 'N,Fp,Fst,Ast'

  • 'N,Fst,Ap,Ast'

'Nyquist'

Посмотрите fdesign.nyquist описание записей спецификации. Для всех спецификаций Nyquist необходимо задать полосу Lth. Это обычно соответствует DecimationFactor.

  • 'TW,Ast' (опция по умолчанию)

  • 'N'

  • 'N,Ast'

  • 'N,Ast'

D = fdesign.decimator(M, RESPONSE, SPEC) создает D объекта и устанавливает Specification свойство к SPEC для типа ответа, RESPONSE. Записи в SPEC представляют различные функции фильтра, такие как порядок фильтра, которые управляют созданием фильтра. Допустимые значения для SPEC зависят от RESPONSE тип.

Поскольку вы разрабатываете многоскоростные фильтры, доступные опции спецификации не совпадают с спецификациями для разработки односкоростных фильтров с такими типами отклика, как fdesign.lowpass. Опции не чувствительны к регистру.

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

D = fdesign.decimator(...,SPEC,specvalue1,specvalue2,...) создает объект D и устанавливает свои спецификации во время конструкции.

D = fdesign.decimator(...,Fs) обеспечивает частоту дискретизации фильтруемого сигнала. Fs должен быть задан как скаляр, завершающий другие предоставленные числовые значения. Fs принято в Гц, как и все другие приведенные значения частоты.

D = fdesign.decimator(...,MAGUNITS) задает модули для любой спецификации, заданной в входных параметрах. MAGUNITS может быть одним из

  • 'linear' - задайте величину в линейных модулях.

  • 'dB' - задайте величину в дБ (децибелах).

  • 'squared' - задайте величину в силовых модулях.

Когда вы опускаете MAGUNITS аргумент, fdesign принимает, что все величины указаны в децибелах. Обратите внимание, что fdesign сохраняет все спецификации величин в децибелах (преобразование в децибелы при необходимости) независимо от того, как вы задаете величины.

Примеры

свернуть все

Эти примеры показывают, как создать децимирующие объекты спецификации фильтров.

Во-первых, создайте объект спецификаций по умолчанию, не используя входных параметров, за исключением коэффициента десятикратного уменьшения m.

d = fdesign.decimator(2,'Nyquist',2,0.1,80) %#ok % Set tw=0.1, and ast=80. 
d = 
  decimator with properties:

          MultirateType: 'Decimator'
               Response: 'Nyquist'
       DecimationFactor: 2
          Specification: 'TW,Ast'
            Description: {2x1 cell}
                   Band: 2
    NormalizedFrequency: 1
        TransitionWidth: 0.1000
                  Astop: 80

Теперь создайте объект, передав опцию типа спецификации 'fst1, fp1, fp2, fst2, ast1, ap, ast2' и проект - получившийся объект использует значения по умолчанию для спецификаций фильтра. Вы должны предоставить входной параметр проекта, полосу пропускания в этом примере, когда вы включаете спецификацию.

d = fdesign.decimator(8,'bandpass',...
'fst1,fp1,fp2,fst2,ast1,ap,ast2'); %#ok

Создайте другой объект спецификации фильтров, передав значения спецификации объекту, а не приняв значения по умолчанию для fp, fst, ap, ast.

d = fdesign.decimator(3,'lowpass',.45,0.55,.1,60); %#ok

Теперь передайте спецификации фильтра, которые соответствуют спецификациям - n, fc, ap, ast.

d = fdesign.decimator(3,'ciccomp',1,2,'n,fc,ap,ast',...
20,0.45,.05,50);

Теперь спроектируйте дециматор с помощью метода проект.

equiDecimator = design(d,'equiripple','SystemObject',true);

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

m = 5;
dd = 2;
d = fdesign.decimator(m,'cic',dd,'fp,ast',0.55,55); %#ok

В этом примере вы задаете частоту дискретизации в качестве последнего входного параметра. Вот 1000 Гц. Спроектируйте фильтр равновесия и постройте график величины отклика:

d = fdesign.decimator(8,'bandpass','fst1,fp1,fp2,fst2,ast1,ap,ast2',...
100,150,250,300,50,.05,50,1000);
fvtool(design(d,'equiripple','SystemObject',true))

Figure Filter Visualization Tool - Magnitude Response (dB) contains an axes and other objects of type uitoolbar, uimenu. The axes with title Magnitude Response (dB) contains 2 objects of type line.

Введенный в R2011a