Main Content

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.

zplane

Gráfica de polos y ceros para sistemas de tiempo discreto

Descripción

zplane(z,p) representa los ceros especificados en el vector columna z y los polos especificados en el vector columna p en la ventana de figura actual. El símbolo 'o' representa un cero y el símbolo 'x' representa un polo. La gráfica incluye el círculo de la unidad como referencia.

Si z y p son matrices, entonces zplane representa los polos y los ceros en las columnas de z y p en colores diferentes.

ejemplo

zplane(b,a), donde b y a son vectores fila, primero utiliza roots para buscar los ceros y los polos de la función de transferencia representada por los coeficientes del numerador b y del denominador a.

ejemplo

[hz,hp,ht] = zplane(___) devuelve vectores de identificadores a las líneas de ceros hz y las líneas de polos hp. ht es un vector de identificadores a los ejes/línea del círculo de la unidad y a los objetos de texto, que están presentes cuando hay varios ceros o polos.

zplane(d) encuentra los ceros y los polos de la función de transferencia representada por el filtro digital d. Utilice designfilt para generar d según las especificaciones de frecuencia-respuesta.

[vz,vp,vk] = zplane(d) devuelve los ceros vz, los polos vp y la ganancia vk correspondientes al filtro digital d.

Ejemplos

contraer todo

Para los datos que se muestran a 1000 Hz, represente los polos y los ceros de un filtro digital de paso bajo de cuarto orden con una frecuencia de corte de 200 Hz, 3 dB de curva en la banda de paso y 30 dB de atenuación en la banda de parada.

[z,p,k] = ellip(4,3,30,200/500);
zplane(z,p)
grid
title('4th-Order Elliptic Lowpass Digital Filter')

Cree el mismo filtro utilizando designfilt. Utilice zplane para representar los polos y los ceros.

d = designfilt('lowpassiir','FilterOrder',4,'PassbandFrequency',200, ...
               'PassbandRipple',3,'StopbandAttenuation',30, ...
               'DesignMethod','ellip','SampleRate',1000);
zplane(d)

Diseñe un filtro paso banda Chebyshev Tipo II de octavo orden con una atenuación en la banda de parada de 20 dB. Especifique las frecuencias del extremo de la banda de parada como π/8 rad/muestra y 5π/8 rad/muestra.

[b,a] = cheby2(8/2,20,[1 5]/8);

Utilice zplane para representar los polos y los ceros de la función de transferencia.

zplane(b,a)

Visualice la respuesta de fase cero de este filtro. Superponga el círculo de la unidad y las ubicaciones de los polos y ceros.

[hw,fw] = zerophase(b,a,1024,"whole");

z = roots(b);
p = roots(a);

plot3(cos(fw),sin(fw),hw)
hold on
plot3(cos(fw),sin(fw),zeros(size(fw)),'--')
plot3(real(z),imag(z),zeros(size(z)),'o')
plot3(real(p),imag(p),zeros(size(p)),'x')
hold off
xlabel("Real")
ylabel("Imaginary")
view(35,40)
grid

Argumentos de entrada

contraer todo

Ceros y polos, especificados como vectores columna o matrices. Si z y p son matrices, entonces zplane representa los polos y los ceros en las columnas de z y p en colores diferentes.

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

Coeficientes de la función de transferencia, especificados como vectores fila. La función de transferencia se define en términos de z-1:

H(z)=B(z)A(z)=b(1)+b(2)z1++b(n+1)zna(1)+a(2)z1++a(m+1)zm

Ejemplo: b = [1 3 3 1]/6 y a = [3 0 1 0]/3 especifica un filtro Butterworth de tercer orden con 3 dB normalizados de frecuencia 0,5π rad/muestra.

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

Filtro digital, especificado como un objeto digitalFilter. Utilice designfilt para generar un filtro digital según las especificaciones de frecuencia-respuesta.

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

Argumentos de salida

contraer todo

Vectores de identificadores a las líneas de cero, hz y las líneas de polos, hp, de la gráfica de polos y ceros. ht es un vector de identificadores a los ejes/línea del círculo de la unidad y a los objetos de texto, que están presentes cuando hay varios ceros o polos. Si no hay ceros o polos, hz o hp es la matriz vacía, [].

Ceros, polos y ganancia del filtro digital, d, devueltos como vectores columna y un escalar.

Sugerencias

  • Puede anular el escalado automático de zplane utilizando

    axis([xmin xmax ymin ymax])

    después de llamar a zplane. Este escalado es útil cuando uno o más ceros o polos tienen una magnitud tan grande que otros se agrupan estrechamente alrededor del origen y son difíciles de distinguir.

Historial de versiones

Introducido antes de R2006a

expandir todo