Contenido principal

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

digitalFilter

La propiedad Coefficients se ha sustituido por las propiedades Numerator y Denominator. Para obtener más información, consulte Historial de versiones.

Descripción

Utilice designfilt para diseñar y editar digitalFilter objetos.

  • Utilice designfilt en la forma d = designfilt(resp,Name,Value) para diseñar un filtro digital, d, con tipo de respuesta resp. Personalice el filtro utilizando argumentos nombre-valor.

  • Utilice designfilt en la forma designfilt(d) para editar un filtro existente, d.

    Nota

    Esta es la única manera de editar un objeto digitalFilter existente. Por lo demás, sus propiedades son de solo lectura.

  • Utilice filter en la forma dataOut = filter(d,dataIn) para filtrar una señal con un digitalFilter d. La entrada puede ser un vector de precisión doble o simple. También puede ser una matriz con tantas columnas como canales de entrada haya. También puede utilizar las funciones filtfilt y fftfilt con objetos digitalFilter.

  • Utilice Filter Analyzer para visualizar un objeto digitalFilter.

Propiedades

expandir todo

Coeficientes

Coeficientes del numerador, devueltos como uno de estos valores:

  • Vector fila para filtros FIR.

  • Matriz de L por 3 para filtros IIR, donde L es el número de secciones en cascada de segundo orden. Para obtener más información, consulte Devolver filtros digitales en formato CTF.

Coeficientes del denominador, devueltos como uno de estos valores:

Especificaciones

Las propiedades de especificación devueltas en un objeto digitalFilter dependen de la respuesta y el diseño del filtro especificados al crear el objeto utilizando designfilt. Todas las propiedades son de solo lectura.

Respuesta del filtro

Tipo de respuesta en frecuencia, devuelto como uno de estos valores:

  • 'lowpass' para un filtro paso bajo

  • 'highpass' para un filtro paso alto

  • 'bandpass' para un filtro paso banda

  • 'bandstop' para un filtro eliminador de banda

  • 'differentiator' para un filtro FIR diferenciador

  • 'hilbert' para un filtro transformador de Hilbert con FIR

  • 'arbmag' para un filtro FIR de respuesta de magnitud arbitraria

Tipo de respuesta al impulso, devuelto como 'fir' o 'iir'.

Diseño de filtros

Para obtener más información sobre el diseño de filtros, consulte Sample Rate, Frequency Constraints, Filter Order, Magnitude Constraints y Design Method.

Funciones del objeto

expandir todo

fftfiltFFT-based FIR filtering using overlap-add method
filterFiltrado digital 1D
filtfiltFiltrado digital de fase cero
bandpassFiltrado paso banda de señales
bandstopSeñales de filtro eliminador de banda
highpassFiltrado paso alto de señales
lowpassFiltrado paso bajo de señales
doubleCast coefficients of digital filter to double precision
filt2blockGenerate Simulink filter block
filtordFilter order
firtypeType of linear phase FIR filter
freqzRespuesta de frecuencia del filtro digital
grpdelayRetardo promedio del filtro (retardo de grupo)
impzRespuesta al impulso de un filtro digital
impzlengthImpulse response length
infoInformation about digital filter
isallpassDetermine whether filter is allpass
isdoubleDetermine if digital filter coefficients are double precision
isfirDetermine if digital filter has finite impulse response
islinphaseDetermine whether filter has linear phase
ismaxphaseDetermine whether filter is maximum phase
isminphaseDetermine whether filter is minimum phase
issingleDetermine if digital filter coefficients are single precision
isstableDetermine whether filter is stable
phasedelayPhase delay of digital filter
phasezPhase response of digital filter
singleCast coefficients of digital filter to single precision
stepzStep response of digital filter
zerophaseZero-phase response of digital filter
zplaneGráfica de polos y ceros para sistemas de tiempo discreto
ssConvertir el filtro digital en una representación del espacio de estados
tfConvertir el filtro digital a función de transferencia
zpkConvertir el filtro digital en una representación de ceros, polos y ganancia
toMultirate (DSP System Toolbox)Create multirate filter System object from digital FIR filter object

Ejemplos

contraer todo

Diseñe un filtro IIR paso bajo de orden 8, frecuencia de banda de paso de 35 kHz y ondulación de banda de paso de 0.2 dB. Especifique una tasa de muestreo de 200 kHz. Visualice la respuesta en frecuencia del filtro.

lpFilt = designfilt("lowpassiir",FilterOrder=8, ...
         PassbandFrequency=35e3,PassbandRipple=0.2, ...
         SampleRate=200e3);
freqz(lpFilt)

Figure contains 2 axes objects. Axes object 1 with title Phase, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Phase (degrees) contains an object of type line. Axes object 2 with title Magnitude, xlabel Normalized Frequency (\times\pi rad/sample), ylabel Magnitude (dB) contains an object of type line.

Utilice el filtro que ha diseñado para filtrar una señal aleatoria de 1000 muestras.

dataIn = randn(1000,1);
dataOut = filter(lpFilt,dataIn);

Obtenga como salida los coeficientes del filtro, expresados como funciones de transferencia en cascada.

ctfNum = lpFilt.Numerator
ctfNum = 4×3

    0.2666    0.5333    0.2666
    0.1943    0.3886    0.1943
    0.1012    0.2023    0.1012
    0.0318    0.0636    0.0318

ctfDen = lpFilt.Denominator
ctfDen = 4×3

    1.0000   -0.8346    0.9073
    1.0000   -0.9586    0.7403
    1.0000   -1.1912    0.5983
    1.0000   -1.3810    0.5090

Más acerca de

expandir todo

Referencias

[1] Lyons, Richard G. Understanding Digital Signal Processing. Upper Saddle River, NJ: Prentice Hall, 2004.

Historial de versiones

Introducido en R2014a

expandir todo