Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

La ventana de Kaiser

La ventana de Kaiser es una aproximación a la ventana esferoidal prolato, para la cual se maximiza la relación de la energía del lóbulo principal con la energía mínimos. Para una ventana de Kaiser de una longitud determinada, el parámetro controla la altura de la mínimos.β Para un dado, la altura del mínimos se fija con respecto a la longitud de la ventana.β La instrucción calcula una ventana de Kaiser de longitud con el parámetro.kaiser(n,beta)nbeta

En este ejemplo se muestran ejemplos de ventanas Kaiser con longitud 50 y parámetros de 1, 4 y 9.β

Para crear estas ventanas de Kaiser mediante la línea de comandos, escriba lo siguiente:MATLAB®

n = 50; w1 = kaiser(n,1); w2 = kaiser(n,4); w3 = kaiser(n,9); [W1,f] = freqz(w1/sum(w1),1,512,2); [W2,f] = freqz(w2/sum(w2),1,512,2); [W3,f] = freqz(w3/sum(w3),1,512,2); plot(f,20*log10(abs([W1 W2 W3]))) grid legend('\beta = 1','\beta = 4','\beta = 9')

A medida que aumenta, la altura del mínimos disminuye y el ancho del lóbulo principal aumenta.β Esta captura de pantalla muestra cómo la altura de la mínimos permanece igual para un parámetro fijo ya que la longitud es variada.β

Para crear estas ventanas de Kaiser mediante la línea de comandos, escriba lo siguiente:MATLAB

w1 = kaiser(50,4); w2 = kaiser(20,4); w3 = kaiser(101,4); [W1,f] = freqz(w1/sum(w1),1,512,2); [W2,f] = freqz(w2/sum(w2),1,512,2); [W3,f] = freqz(w3/sum(w3),1,512,2); plot(f,20*log10(abs([W1 W2 W3]))) grid legend('length = 50','length = 20','length = 101') 

Kaiser Windows en el diseño FIR

Hay dos fórmulas de diseño que pueden ayudarle a diseñar filtros FIR para cumplir con un conjunto de especificaciones de filtro utilizando una ventana de Kaiser. Para lograr una altura de mínimos de – dB, el parámetro () esαβbeta

<math display="block">
<mrow>
<mi>β</mi>
<mo>=</mo>
<mrow>
<mo>{</mo>
<mtable>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>.</mo>
<mn>1102</mn>
<mrow>
<mo>(</mo>
<mrow>
<mi>α</mi>
<mo>-</mo>
<mn>8</mn>
<mo>.</mo>
<mn>7</mn>
</mrow>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>α</mi>
<mo>></mo>
<mn>50</mn>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>.</mo>
<mn>5842</mn>
<msup>
<mrow>
<mrow>
<mo>(</mo>
<mrow>
<mi>α</mi>
<mo>-</mo>
<mn>21</mn>
</mrow>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<mn>0</mn>
<mo>.</mo>
<mn>4</mn>
</mrow>
</msup>
<mo>+</mo>
<mn>0</mn>
<mo>.</mo>
<mn>7886</mn>
<mrow>
<mo>(</mo>
<mrow>
<mi>α</mi>
<mo>-</mo>
<mn>21</mn>
</mrow>
<mo>)</mo>
</mrow>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mn>50</mn>
<mo></mo>
<mi>α</mi>
<mo></mo>
<mn>21</mn>
<mo>,</mo>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mn>0</mn>
<mo>,</mo>
</mrow>
</mtd>
<mtd>
<mrow>
<mi>α</mi>
<mo><</mo>
<mn>21</mn>
<mo>.</mo>
</mrow>
</mtd>
</mtr>
</mtable>
</mrow>
</mrow>
</math>

Para un ancho de transición de

<math display="inline">
<mrow>
<mi>Δ</mi>
<mi>ω</mi>
</mrow>
</math>
RAD/Sample, utilice la longitud

<math display="block">
<mrow>
<mi>n</mi>
<mo>=</mo>
<mfrac>
<mrow>
<mi>α</mi>
<mo>-</mo>
<mn>8</mn>
</mrow>
<mrow>
<mn>2</mn>
<mo>.</mo>
<mn>2</mn>
<mn>8</mn>
<mn>5</mn>
<mi>Δ</mi>
<mi>ω</mi>
</mrow>
</mfrac>
<mo>+</mo>
<mn>1</mn>
</mrow>
</math>
.

Los filtros diseñados usando esta heurística cumplen las especificaciones aproximadamente, pero usted debe verificar esto. Para diseñar un filtro de paso bajo con frecuencia de corte 0,5

<math display="inline">
<mrow>
<mi>π</mi>
</mrow>
</math>
 RAD/Sample, ancho de transición 0,2
<math display="inline">
<mrow>
<mi>π</mi>
</mrow>
</math>
 RAD/Sample, y 40 dB de atenuación en la banda de suspensión, intente

[n,wn,beta] = kaiserord([0.4 0.6]*pi,[1 0],[0.01 0.01],2*pi); h = fir1(n,wn,kaiser(n+1,beta),'noscale');

La función estima el orden de los filtros, la frecuencia de corte y el parámetro beta de la ventana de Kaiser necesarios para cumplir con un conjunto determinado de especificaciones de dominio de frecuencia.kaiserord

La ondulación en la banda de paso es aproximadamente la misma que la ondulación en la banda de suspensión. Como se puede ver en la respuesta de frecuencia, este filtro casi cumple con las especificaciones:

fvtool(h,1)

Consulte también

Aplicaciones

Funciones