Main Content

Filtro de magnitudes arbitrarias

Diseñe un filtro FIR con la siguiente respuesta en frecuencia a trozos:

  • Una sinusoide entre 0 y 0,19 π rad/muestra.

    F1 = 0:0.01:0.19;
    A1 = 0.5+sin(2*pi*7.5*F1)/4;
  • Una sección lineal a trozos entre 0,2 π rad/muestra y 0,78 π rad/muestra.

    F2 = [0.2 0.38 0.4 0.55 0.562 0.585 0.6 0.78];
    A2 = [0.5 2.3 1 1 -0.2 -0.2 1 1];

  • Una sección cuadrática entre 0,79 π rad/muestra y la frecuencia de Nyquist.

    F3 = 0.79:0.01:1;
    A3 = 0.2+18*(1-F3).^2;

Especifique un orden de filtro de 50. Consolide los vectores de frecuencia y amplitud. Para dotar a todas las bandas de la misma ponderación durante el ajuste de optimización, especifique un vector de ponderación de todos los unos. Abra la app Filter Designer.

N = 50;

FreqVect = [F1 F2 F3];
AmplVect = [A1 A2 A3];
WghtVect = ones(1,N/2);

filterDesigner

Utilice la app para diseñar el filtro.

  1. En Response Type, seleccione el botón situado junto a Differentiator. En la lista desplegable, seleccione Arbitrary Magnitude.

  2. Establezca Design Method en FIR. En la lista desplegable, seleccione Least-squares.

  3. En Filter Order, especifique el orden como la variable N.

  4. En Frequency and Magnitude Specifications, especifique las variables que ha creado:

    • Freq. vector: FreqVect.

    • Mag. vector: AmplVect.

    • Weight vector: WghtVect.

  5. Haga clic en Design Filter.

  6. Haga clic con el botón secundario en el eje y de la gráfica y seleccione Magnitude para expresar la respuesta de magnitud en unidades lineales.

Consulte también

Apps

Funciones