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.

filt2block

Generar bloque de filtroSimulink

Descripción

ejemplo

filt2block(b) genera un con coeficientes de filtro, .Discrete FIR Filter block b

filt2block(b,'subsystem') genera un bloque de subsistema que implementa un filtro FIR utilizando bloques de suma, ganancia y retardo.Simulink®

ejemplo

filt2block(___,'FilterStructure',structure) especifica el filtro para el filtro FIR.structure

ejemplo

filt2block(b,a) genera un coeficiente con numerador, , y coeficientes denominador, .Discrete Filter blockba

filt2block(b,a,'subsystem') genera un bloque de subsistema que implementa un filtro IIR utilizando bloques de suma, ganancia y retardo.Simulink

ejemplo

filt2block(___,'FilterStructure',structure) especifica el filtro para el filtro IIR.structure

filt2block(sos) genera una matriz de secciones con segundo orden, . es una matriz K-by-6, donde el número de secciones, , debe ser mayor o igual que 2.Biquad Filter blocksossosK Debe tener el software instalado para utilizar esta sintaxis.DSP System Toolbox™

ejemplo

filt2block(sos,'subsystem') genera un bloque de subsistema que implementa un filtro biquad utilizando bloques de suma, ganancia y retardo.Simulink

filt2block(___,'FilterStructure',structure) especifica el filtro para el filtro biquad.structure

filt2block(d) genera un bloque que implementa un filtro digital, .Simulinkd Utilice la función para crear .designfiltd El bloque es un IF y un if es IIR.Discrete FIR Filter blockdBiquad Filter blockd

filt2block(d,'subsystem') genera un bloque de subsistema que se implementa utilizando bloques de suma, ganancia y retardo.Simulinkd

ejemplo

filt2block(___,'FilterStructure',structure) especifica el filtro que se va a implementar .structured

ejemplo

filt2block(___,Name,Value) utiliza opciones adicionales especificadas por uno o más argumentos de par.Name,Value

Ejemplos

contraer todo

Diseñe un filtro FIR de 30o orden utilizando el método window. Especifique una frecuencia de corte de /4 rad/sample.π Cree un bloque simulink®.

b = fir1(30,0.25); filt2block(b) 

Diseñe un filtro IIR Butterworth de orden 30. Especifique una frecuencia de corte de /4 rad/sample.π Cree un bloque simulink®.

[b,a] = butter(30,0.25); filt2block(b,a) 

Diseñe un filtro FIR de 30o orden utilizando el método window. Especifique una frecuencia de corte de /4 rad/sample.π Cree un bloque Simulink® con una estructura de forma directa transesticé.

b = fir1(30,0.25); filt2block(b,'FilterStructure','directFormTransposed') 

Diseñe un filtro IIR Butterworth de orden 30. Especifique una frecuencia de corte de /4 rad/sample.π Cree un bloque simulink® con una estructura de formulario I directa.

[b,a] = butter(30,0.25); filt2block(b,a,'FilterStructure','directForm1') 

Diseñe un filtro Butterworth de 5o orden con una frecuencia de corte de /5 rad/sample.π Obtenga el filtro en forma biquad y genere un bloque de subsistema Simulink® a partir de las secciones de segundo orden.

[z,p,k] = butter(5,0.2); sos = zp2sos(z,p,k); filt2block(sos,'subsystem') 

Genere un bloque de subsistema Simulink® que implemente un filtro de paso bajo FIR mediante bloques de suma, ganancia y retardo. Especifique el procesamiento de entrada para que sean elementos como canales especificando como .'FrameBasedProcessing'false

B = fir1(30,.25); filt2block(B,'subsystem','BlockName','Lowpass FIR',...               'FrameBasedProcessing',false) 

Diseñe un filtro elíptico de paso alto con frecuencia de banda de parada normalizada 0.45 y frecuencia de banda de paso normalizada 0.55. Especifique una atenuación de banda de parada de 40Design un filtro elíptico de paso alto con frecuencia de banda de parada normalizada 0,45 y frecuencia de banda de paso normalizada 0,55. Especifique una atenuación de banda de parada de 40 dB y una ondulación de banda de paso de 0,5 dB. Implemente el filtro como una estructura Direct Form II, llámelo "HP" y colóquelo en un nuevo modelo simulink®.

d = designfilt('highpassiir','DesignMethod','ellip', ...                'StopbandFrequency',0.45,'PassbandFrequency',0.55, ...                'StopbandAttenuation',40,'PassbandRipple',0.5);  filt2block(d,'subsystem','FilterStructure','directForm2', ...              'Destination','new','BlockName','HP') 

Argumentos de entrada

contraer todo

Coeficientes de filtro de numerador, especificados como un vector de fila o columna. Los coeficientes de filtro se ordenan en poderes descendentes dez–1 con el primer elemento correspondiente al coeficiente dez0.

Ejemplo: b = fir1(30,0.25);

Tipos de datos: single | double
Soporte de números complejos:

Coeficientes de filtro de denominador, especificados como un vector de fila o columna. Los coeficientes de filtro se ordenan en poderes descendentes dez–1 con el primer elemento correspondiente al coeficiente dez0. El primer coeficiente de filtro debe ser 1.

Tipos de datos: single | double
Soporte de números complejos:

Matriz de sección de segundo orden, especificada como una matriz -by-2.K Cada fila de la matriz contiene los coeficientes para una función racional bicuadrática enz–1. La transformación Z de la respuesta de impulso del sistema biquadratico racional esK

Hk(z)=Bk(1)+Bk(2)z1+Bk(3)z2Ak(1)+Ak(2)z1+Ak(3)z2

Los coeficientes de la siguiente fila de la matriz se ordenan de la siguiente manera:Ksos

[Bk(1)Bk(2)Bk(3)Ak(1)Ak(2)Ak(3)]

La respuesta de frecuencia del filtro es su función de transferencia evaluada en el círculo de la unidad con el número de unidades con el número de unidades con el número de unidades con el número de unidades con el número de unidades con el número de unidadeszej2πf.

Tipos de datos: single | double
Soporte de números complejos:

Filtro digital, especificado como un objeto.digitalFilter Se utiliza para generar un filtro digital basado en las especificaciones de respuesta de frecuencia.designfilt

Ejemplo: especifica un filtro Butterworth de tercer orden con una frecuencia normalizada de 3 dB de 0,5o rad/muestra.d = designfilt('lowpassiir','FilterOrder',3,'HalfPowerFrequency',0.5)

Estructura de filtro, especificada como vector de caracteres o escalar de cadena. Las opciones válidas para dependen de los argumentos de entrada.structure En la tabla siguiente se enumeran las estructuras de filtro válidas por entrada.

EntradaEstructuras de filtro
b(predeterminado), , , , .'directForm''directFormTransposed''directFormSymmetric''directFormAntiSymmetric''overlapAdd' La estructura solo está disponible cuando se omite y se requiere una licencia de software.'overlapAdd''subsystem'DSP System Toolbox
a(predeterminado), , , ,'directForm2''directForm1''directForm1Transposed''directForm2''directForm2Transposed'
sos(predeterminado), , ,'directForm2Transposed''directForm1''directForm1Transposed''directForm2'
d
  • Para filtros FIR: (predeterminado), , , , .'directForm''directFormTransposed''directFormSymmetric''directFormAntiSymmetric''overlapAdd' La estructura solo está disponible cuando se omite y se requiere una licencia de software.'overlapAdd''subsystem'DSP System Toolbox

  • Para filtros IIR: (predeterminado), , ,'directForm2Transposed''directForm1''directForm1Transposed''directForm2'

Argumentos de par nombre-valor

Especifique pares opcionales separados por comas de argumentos. es el nombre del argumento y es el valor correspondiente. deben aparecer entre comillas.Name,ValueNameValueName Puede especificar varios argumentos de par de nombre y valor en cualquier orden como .Name1,Value1,...,NameN,ValueN

Ejemplo: filt2block(...,'subsystem','BlockName','Lowpass FIR','FrameBasedProcessing',false)

Destino para el bloque de filtro, especificado como vector de caracteres o escalar de cadena.Simulink Puede agregar el bloque de filtro al modelo actual con , agregar el bloque de filtro a un nuevo modelo con , o especificar el nombre de un modelo existente.'current''new'

Ejemplo: filt2block([1 2 1],'Destination','MyModel','BlockName','New block')

Tipos de datos: char | string

Nombre de bloque, especificado como vector de caracteres o escalar de cadena.

Tipos de datos: char | string

Sobrescribir bloque, especificado como lógico o .falsetrue Si utiliza un valor para eso es el mismo que un bloque existente, el valor de determina si el bloque se sobrescribe.'BlockName''OverwriteBlock' El valor predeterminado es .false

Tipos de datos: logical

Asigne coeficientes a puertos, especificados como lógicos o .falsetrue

Tipos de datos: logical

Nombres de variables de coeficiente, especificados como una matriz de celdas de vectores de caracteres o una matriz de cadenas. Este par nombre-valor solo es aplicable cuando es .'MapCoefficientsToPorts'true Los valores predeterminados son , , y para los filtros FIR, IIR y biquad.{'Num'}{'Num','Den'}{'Num','Den','g'}

Tipos de datos: cell | string

Procesamiento basado en fotogramas o en muestra, especificado como lógico o .truefalse El valor predeterminado es y se utiliza el procesamiento basado en fotogramas.true

Tipos de datos: logical

Elimine los bloques de ganancia cero, especificados como lógicos o .truefalse De forma predeterminada, se eliminan los bloques de ganancia cero.

Tipos de datos: logical

Reemplace los bloques de ganancia de unidad por conexión directa, especificados como lógicos o .truefalse El valor predeterminado es .true

Tipos de datos: logical

Reemplace los bloques negativos de ganancia de unidad por un cambio de signo en el bloque más cercano, especificado como lógico o .truefalse El valor predeterminado es .true

Tipos de datos: logical

Reemplace los retrasos en cascada por un único retardo, especificado como lógico o .truefalse El valor predeterminado es .true

Tipos de datos: logical

Consulte también

|

Introducido en R2013a