seminario de titulaciÓn “procesamiento digital de seÑales...

99
SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES” ANALISIS SITEMATICO DE FILTROS DIGITALES T E S I N A Que para obtener el grado de: INGENIERO EN COMUNICACIONES Y ELECTRÓNICA. Presentan: Bautista Villalpando Héctor Gerardo Torres Bautista Diana Torres Bautista Sergio Alfredo ASESORES: M. en C. ORLANDO BELTRÁN NAVARRO. M. en C. BRAULIO SANCHEZ ZAMORA México, D. F. Noviembre de 2009. INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACAN INGENIERÍA EN COMUNICACIONES Y ELECTRÓNICA

Upload: truongtruc

Post on 18-Oct-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES”

ANALISIS SITEMATICO DE FILTROS DIGITALES

T E S I N A

Que para obtener el grado de:

INGENIERO EN COMUNICACIONES Y ELECTRÓNICA.

Presentan:

Bautista Villalpando Héctor Gerardo Torres Bautista Diana Torres Bautista Sergio Alfredo

ASESORES:

M. en C. ORLANDO BELTRÁN NAVARRO. M. en C. BRAULIO SANCHEZ ZAMORA

México, D. F. Noviembre de 2009.

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA

UNIDAD CULHUACAN INGENIERÍA EN COMUNICACIONES Y ELECTRÓNICA

Page 2: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA ELÉCTRICA

UNIDAD CULHUACAN

TESINA Que para obtener el título de: INGENIERO EN COMUNICACIONES Y

ELECTRONICA Por la opción de titulación: SEMINARIO DE TITULACIÓN

“PROCESAMIENTO DIGITAL DE SEÑALES” Deberán desarrollar: Bautista Villalpando Héctor Gerardo Torres Bautista Diana Torres Bautista Sergio Alfredo

INTRODUCCION

Se analizaran los principios de las señales en tiempo discreto, los sistemas y los algoritmos y aplicaciones del procesado digital moderno, teniendo como resultado el diseño y desarrollo de un algoritmo en plataforma mathlab cuyo fin es dar un análisis sistemático a cada uno de los filtros digitales, pretendiendo dar un panorama mas sencillo del funcionamiento de los mismos.

CAPITULO I Fundamentos de las señales CAPITULO II Sistemas discretos CAPITULO III Diseño de filtros Bibliografia Conclusiones _______________________________ _____________________________ M. en C. Orlando Beltrán Navarro M. en C. Braulio Sánchez Zamora Coordinador del seminario Asesor

________________________________ Ing. Ignacio Monroy Ostria

Jefe de carrera de ICE

Page 3: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

INDICE Pag. 1. Señales, sistemas y procesado de la señal 2 1.1 Elementos básicos de un sistema de procesado digital de señales 3 1.2 Ventajas del procesado digital de señales frente al analógico 5 2. Señales multicanal y multidimensionales 6 2.1 Señales continuas frente a señales discretas 8 2.2 Señales deterministas frente a señales aleatorias 9 3. El concepto de frecuencia en señales en tiempo continuo y en tiempo discreto 9 3.1 Señales sinusoidales en tiempo continuo 9 3.1 Señales sinusoidales en tiempo discreto 11 4. Teorema de muestreo 13 5. Cuantificación de señales sinusoidales 14 6. Codificación de muestras cuantificadas 16 7. Señales en tiempo discreto 16 7.1 Algunas señales elementales en tiempo discreto 18 7.2 Clasificación de las señales en tiempo discreto 19 7.3 Manipulación simples de señales en tiempo discreto 21 8. Sistemas discretos descritos mediante ecuaciones en diferencias 23 8.1 Sistemas discretos recursivos y no recursivos 23 9. Implementación de sistemas discretos 24 9.1 Realización de sistemas FIR recursivos y no recursivos 25 10. La transformada z 25 10.1 La transformada z inversa 28 10.2 Propiedades de la transformada z 29 11. Transformadas z racionales 33 11.1 Polos y ceros 33 11.2 La función de transferencia de un sistema lineal invariante en el tiempo

34 11.3 Polos de orden múltiple y estabilidad 36 12. Análisis frecuencial de señales y sistemas 37 12.1 Análisis frecuencial de señales en tiempo continuo 38 12.2 Densidad espectral de energía de señales aperiódicas 39 13. Muestreo en el dominio de la frecuencia: la transformada de Fourier discreta 41 14. Estructuras para sistemas FIR 44 14.1 Estructuras en forma directa 45 14.2 Estructuras en forma de cascadas 46 15. Estructuras para sistemas IIR 47 15.1 Estructuras en forma directa 47 15.2 Estructuras en forma de cascada 49 16. Diseño de filtros digitales 51 16.1 Causalidad y sus implicaciones 51 16.2 Caracteristicas de filtros prácticos selectivos en frecuencia 53 17. Diseño de filtros FIR 55 18. Diseño de filtros IIR a partir de filtros analógicos 57 19. Muestreo y reconstrucción de señales 59 19.1 Muestreo de señal paso banda 62 Anexo 1 66 Anexo 2 94 Conclusiones 96 Bibliografía 97

Page 4: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

2

1. Señales, sistemas y procesado de la señal. Una señal se define como una cantidad física que varia con el tiempo, el espacio o cualquiera otra variable o variable independiente. Matemáticamente, describimos una señal, una función de una o mas variables independientes. Por ejemplo, las funciones

(1.1)

describen dos señales, una que varia linealmente con la variable independiente t (tiempo) y una segunda que varia cuadráticamente con t .Como otro ejemplo considere la función

(1.2) Esta función describe una señal con dos variables independientes x e y que pueden representar las coordenadas espaciales en un plano. Las señales discretas en las funciones (1.1) y (1.2) pertenecen a las clases de señales que quedan perfectamente definidas especificando la dependencia funcional con la variable independiente. Sin embargo, existen casos en los que dicha relación funcional es desconocida o demasiado complicada como para tener utilidad practica. Por ejemplo, una señal de voz no se puede describir funcionalmente mediante expresiones como la (1.1) En general, un segmento de voz puede representarse con un alto grado de exactitud como la suma de varias sinusoides de diferentes amplitudes y frecuencias, esto es, como

(1.3)

Donde son los conjuntos de amplitudes, frecuencias y fases, respectivamente, de las sinusoides. De hecho, una manera de interpretar la información o el mensaje contenido en un segmento corto de una señal de voz es medir las amplitudes, frecuencias y fases contenidas en el segmento corto de señal. Otro ejemplo de señal natural es el electrocardiograma (ECG). Esta señal proporciona información sobre el estado del corazón del paciente al doctor, de forma similar, un electroencefalograma proporciona información sobre la actividad cerebral. Las señales de voz, los electrocardiogramas y los electroencefalogramas son ejemplos de señales que llevan información y que varían como funciones de una única variable independiente, el tiempo. Una imagen constituye un ejemplo de señal que varia con dos variables independientes. Las dos variables independientes en este caso son las coordenadas

( )

()

1

22

5

20

s t t

s t t

=

=

( ) 2, 3 2 10s x y x xy y= + +

( ) () ( )1

2N

i i ii

A t sen F t t tp q=

é ù+ë ûå

( ) ( ) ( ) , ,i i iA t F t y tq

Page 5: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

3

espaciales. Estos son unos pocos ejemplos del incontable número de señales naturales que se pueden encontrar en la práctica. Asociados a las señales naturales se encuentran los medios con los que se generan. Por ejemplo, las señales de voz se generan al forzar el paso del aire a través de las cuerdas vocales. Las imágenes se obtienen exponiendo película fotográfica ante un paisaje u objeto. Por lo tanto, la forma en que se generan las señales se encuentra asociada con un sistema que responde ante un estimulo o fuerza. En una señal de voz, el sistema esta constituido por las cuerdas vocales y el tracto bucal, también llamado cavidad bucal. El estimulo en combinación con el sistema se llama fuente de señal. Por lo tanto, tenemos fuentes de voz, de imágenes y de otros tipos de señales. Un sistema se puede definir también como un dispositivo físico que realiza una operación sobre una señal. Por ejemplo, un filtro que se usa para reducir el ruido y las interferencias que corrompen la señal conteniendo la información deseada se denomina sistema. En este caso, el filtro realiza algunas operaciones sobre la señal, cuyo efecto es reducir (filtrar) el ruido y la interferencia presentes en la señal deseada. Cuando pasamos una señal a través de un sistema, como en el caso del filtrado, decimos que hemos procesado la señal. En este caso, el procesado de la señal implica la separación de la señal deseada del ruido y la interferencia. En general, el sistema se caracteriza por el tipo de operación que realiza sobre la señal. Por ejemplo, si la operación es lineal, el sistema se denomina lineal, si la operación es no lineal el sistema se dice no lineal, etc. Tales operaciones se denominan habitualmente como procesado de señal. Para nuestros fines, es conveniente emplear la definición de sistema para incluir no solo dispositivos físicos, sino también realizaciones software de operaciones sobre una señal. En el procesado digital de señales en un ordenador, las operaciones realizadas sobre una señal constan de varias operaciones matemáticas especificadas por un programa software. En esta caso, el programa representa una implementación del sistema en software. Así, tenemos un sistema realizado sobre un ordenador digital mediante operaciones matemáticas, es decir, tenemos un sistema de procesado digital de señales realizado en software. Por ejemplo, se puede programar un ordenador digital para hacer filtrado lineal. Alternativamente, el procesado digital de la señal se puede efectuar mediante hardware digital (circuitos lógicos) configurado para ejecutar las operaciones deseadas especificadas. En tal realización, tenemos un dispositivo físico que realiza las operaciones especificadas. En un sentido mas amplio, un sistema digital se puede implementar como una combinaron de hardware digital y software, cada uno de los cuales desempeña su propio conjunto de funciones. Elementos básicos de un sistema de procesado digital de señales La mayor parte de las señales que aparecen en los ámbitos de la ciencia y la ingeniería son de naturaleza analógica, es decir, las señales son funciones de una variable continua, como el tiempo o el espacio y normalmente toman valores en un rango continuo. Tales señales pueden ser procesadas directamente por sistemas analógicos adecuados (como filtros o analizadores de frecuencia) o multiplicadores de frecuencia con el propósito de cambiar sus características o extraer cualquier información deseada. En tal caso, decimos que la señal

Page 6: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

4

ha sido procesada directamente en forma analógica, como lo muestra la figura 1. Tanto la señal de entrada como la de salida están en forma analógica.

Fig. 1 Procesado de señal analógica. El proceso digital de señales proporciona un método alternativo para procesar una señal analógica, como se muestra en la figura 2. para realizar el procesado digitalmente, se necesita un interfaz entre la señal analógica y el procesador digital. Este interfaz se denomina conversor analógico-digital (A/D). La salida del conversor analógico-digital es una señal adecuada como entrada al procesador digital.

Fig. 2 Diagrama de bloques de un sistema digital de procesado de señales. El procesador digital de señales puede ser un gran ordenador digital programable o un pequeño microprocesador programado para realizar las operaciones deseadas sobre una señal de entrada. También puede ser un procesador digital cableado configurado para efectuar un conjunto de operaciones sobre la señal de entrada. Las maquinas programables proporcionan la flexibilidad de cambiar las operaciones de procesado de señales mediante un cambio del software. En consecuencia, los procesadores de señales programables son de uso muy frecuente. Por otro lado, cuando las operaciones de procesado de señales están bien definidas, se puede optimizar la implementación cableada de las operaciones, resultando un procesador mas barato y, habitualmente mas rápido que su equivalente programable. En aplicaciones donde la salida digital del procesador digital de señales se a de entregar en forma analógica, como en comunicaciones digitales, debemos proporcionar otro interfaz desde el dominio digital al analógico. Tal interfaz se denomina conversor analógico-digital (D/A). de este modo, la señal se entrega al usuario en forma analógica, como se ilustra en el diagrama a bloques de la figura 2. No obstante, existen otras

Procesador analógico de

señales

Señal analógica de entrada

Señal analógica de salida

Señal analogica de salida

Señal analógica de entrada

Señal digital de entrada

Señal digital de entrada

Conversor A/D

Procesador digital de señales

Conversor D/A

Page 7: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

5

aplicaciones practicas que requieren análisis de señales en las que la información deseada se encuentra en formato digital y no se requiere ningún conversor D/A. por ejemplo, en el procesado digital de señales radar, la información extraída de la señal radar, como la posición de la nave y su velocidad, se puede imprimir directamente sobre papel. En este caso, no hay necesidad de conversor D/A. Ventajas del procesado digital de señales frente al analógico Tal y como ya se ha mencionado brevemente, existen muchas razones por las que el procesado digital de una señal analógica puede ser preferible al procesado de la señal directamente en el dominio analógico. Primero, un sistema digital programable permite flexibilidad a la hora de reconfigurar las operaciones de procesado digital de señales sin mas que cambiar el programa. La reconfiguración de un sistema analógico implica habitualmente el rediseño del hardware, seguido de la comprobación y verificación para ver que opera correctamente. También desempeña un papel importante al elegir el formato del procesador de señales la consideración de la configuración. Las tolerancias en los componentes de los circuitos analógicos hacen que para el diseñador del sistema sea extremadamente difícil controlar la precisión de un sistema de procesado analógico de señales. En cambio, un sistema digital permite un mejor control de los requisitos de precisión. Tales requisitos, a su vez, resultan en la especificación de requisitos en la precisión del conversor A/D y del procesador digital de señales, en términos de longitud de palabra, aritmética de coma flotante frente a coma fija y factores similares. Las señales digitales se almacenan fácilmente en soporte magnético (cinta o disco) sin deterioro o perdida en la fidelidad de la señal, aparte de la introducida en la conversión A/D. como consecuencia, las señales se hacen transportables y pueden procesarse en tiempo no real en un laboratorio remoto. El método de procesado digital de señales también posibilita la implementación de algoritmos de procesado de señal mas sofisticados. Generalmente es muy difícil realizar operaciones matemáticas precisas sobre señales en formato analógico, pero esas mismas operaciones pueden efectuarse de modo rutinario sobre un ordenador digital utilizando software. En algunos casos, la implementación digital del sistema de procesado de señales es mas barato que su equivalente analógica. El menor coste se debe a que el hardware digital es mas barato o, quizás, es resultado de la flexibilidad ante modificaciones que permite la implementación digital. Como consecuencia de estas ventajas, el procesado digital de señales se ha aplicado a sistemas prácticos que cubren un amplio rango de disciplinas. Citamos, por ejemplo, la aplicación de técnicas de procesado digital de señales al procesado de voz y transmisión de señales en canales telefónicos, en procesado y transmisión de imágenes, en sismología y geofísica, en prospección petrolifica, en la detección de explosiones nucleares, en el procesado de señales recibidas del espacio exterior.

Page 8: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

6

Sin embargo, como ya se ha indicado, la implementación digital tiene sus limitaciones. Una limitación practica es la velocidad de operación de los conversores A/D y de los procesadores digitales de señales. Veremos que las señales con anchos de banda extremadamente grandes precisan conversores A/D con una velocidad de muestreo alta y procesadores digitales de señales rápidos. Así, existen señales analógicas con grandes anchos de banda para las que la solución mediante procesado digital de señales se encuentra mas allá del estado del arte del hardware digital.

2. Señales multicanal y multidimencionales Una señal se describe mediante una función de una o mas variables independientes, el valor de la función (es decir, de la variable dependiente) puede ser una escalar real, una cantidad compleja o quizás un vector. Por ejemplo, la señal

es una señal real. Sin embargo, la señal

es compleja. En algunas aplicaciones, las señales son generadas por múltiples fuentes o sensores. Tales señales pueden representarse en forma vectorial. La figura 3 muestra las tres componentes de una señal vectorial que representa la aceleración en la superficie terrestre de un terremoto. Esta aceleración es el resultado de tres calases elementales de ondas elásticas. Las ondas primarias (P) y las secundarias (S) se propagan en el interior de la roca y son longitudinales y transversales, respectivamente. La tercera clase de ondas elásticas se denomina onda superficial por que se propaga cerca de la superficie terrestre. Si sk ( t ), k =1,2,3, denota la señal eléctrica procedente del sensor k como función del tiempo, el conjunto p=3 señales pueden representarse por un vector S3( t ), donde

Nos referiremos a tal vector de señales como una señal multicanal. Por ejemplo, un electrocardiograma se usan electrocardiogramas de 3 y 12 tomas que dan lugar a señales 3 y 12 canales.

( )1 3s t Asen tp=

() 32 cos3 3j ts t Ae A t jAsen tp p p= = +

( )( )()( )

1

3 2

3

s t

S t s t

s t

é ùê ú

= ê úê úë û

Page 9: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

7

Figura 3. Tres componentes de la aceleración en tierra medidas a pocos kilómetros del epicentro de un

terremoto Prestemos ahora atención a las variables independientes, si la señal es función de una única variable independiente, la señal se denomina unidimensional. Por lo tanto, una señal se denomina M-dimensional si es función de M variables independientes.

Fig. 4 Ejemplo de una señal bidimensional. La imagen que se muestra en la figura 4 es un ejemplo de señal bidimensional, dado que la intensidad o brillo I ( x , y ) en cada punto es una función de dos variables independientes. Por otra parte, la imagen de una televisión en blanco y negro puede representarse como I( x ,y ,t), dado que el brillo es una función del tiempo. Por tanto, la imagen de televisión puede tratarse como una señal tridimensional. En cambio, la imagen de una televisión en color se puede describir mediante las tres siguientes funciones de intensidad,

I(x1,y1)

x

y

Page 10: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

8

correspondientes al brillo de los tres colores principales: rojo, verde y azul, como función del tiempo. De aquí que la imagen de una tele visión en color sea una señal tridimensional de tres canales, que se puede representar mediante el vector

En términos matemáticos estas señales se describen mediante una función de una única variable independiente. Aunque la variable independiente no necesita ser el tiempo, es práctica común utilizar t como la variable independiente. Señales continuas frente a señales discretas El valor de una señal, en tiempo continuo o discreto, puede ser continuo o discreto. Si una señal toma todos los valores posibles en un intervalo tanto finito como infinito, se dice que es continuo. Por el contrario, si toma valores de un conjunto finito de valores se dice que es discreta. Normalmente, estos valores son equidistantes y por tanto pueden expresarse como un múltiplo de la distancia entre dos valores sucesivos. Una señal en tiempo discreto, que toma valores en un conjunto discreto se le denomina señal digital. La figura 5 muestra una señal digital con cuatro valores posibles. Para que una señal pueda ser procesada digitalmente ha de ser en tiempo discreto y tomar valores discretos (es decir, ha de ser una señal digital). Si la señal a procesar es analógica, se convierte a digital muestreándola en el tiempo y obteniendo por tanto una señal en tiempo discreto y posteriormente cuantificación, es básicamente un proceso de aproximación. Puede lograrse por redondeo o truncamiento. Por ejemplo, si los valores permitidos en la señal digital son enteros, digamos del 0 al 15, la señal continua será cuantificada a estos valores. Así, el valor 8.58 se aproximara por 8, si el proceso de cuantificación se basa en el truncamiento y por 9, si se basa en redondear al entero más próximo.

Fig. 5 Señal digital con cuatro valores de amplitud.

( ) ( ) ( ), , , , , , , ,r g bI x y t I x y t I x y t

( )( )( )( )

, ,

, , , ,

, ,

r

g

b

I x y t

I x y t I x y t

I x y t

é ùê ú

= ê úê úê úë û

-1 0 1 2 3 4 5 6 7 8 n

x (n)

Page 11: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

9

Señales deterministas frente a señales aleatorias El análisis matemático y procesado de señales requieren que la señal sea descrita matemáticamente. Esta descripción matemática, normalmente denominada modelo matemático, conduce a otra importante clasificación de la señal. Cualquier señal que pueda ser definida por una forma matemática explicita, un conjunto de datos o una regla bien definida se denomina determinista. Este término se usa para resaltar el hecho de que valores de la señal, tanto presentes como pasados como futuros, se conocen exactamente sin incertidumbre. En muchas situaciones practicas, sin embargo, existen señales que no se pueden describir con un alto de precisión razonable mediante formulas matemáticas explicitas, o cuya descripción es demasiado complicada para ser de utilidad practica. La falta de tal relación supone que dichas señales evolucionan con el tiempo de forma impredecible. Nos referiremos a estas señales como señales aleatorias. La salida de un generador de ruido, la señal sísmica de la figura 3, son ejemplos de las señales aleatorias.

3. El concepto de frecuencia en señales en tiempo continuo y en tiempo discreto El concepto de frecuencia es familiar para los estudiantes de ingeniería y ciencias. Este concepto es básico en, por ejemplo, el diseño de un receptor de radio, un sistema de lata fidelidad, o un filtro espectral para fotografía en color. De la física sabemos que la frecuencia esta íntimamente relacionada con un tipo especifico de movimiento periódico llamado oscilación armónica, que se describe mediante funciones sinusoidales. El concepto de frecuencia esta directamente relacionado con el de tiempo. De hecho, sus dimensiones son las inversas del tiempo, por tanto. De acuerdo con esto, deberíamos esperar que la naturaleza del tiempo (continuo o discreto) afectase a la frecuencia. Señales sinusoidales en tiempo continuo Una simple oscilación armónica se describe matemáticamente mediante la siguiente señal en tiempo continuo:

(3.1) que se muestra el la figura 6. El subíndice a usado con x (t) denota una señal analógica. Esta señal esta completamente caracterizada por tres parámetros: A es la amplitud de la sinusoide, W es la frecuencia en radianes por segundo (rad/s) y q es la fase en radianes. En lugar de W , a menudo se utiliza la frecuencia F ciclos por segundo o Hertzios (Hz), donde

(3.2) La ecuación (3.1) puede escribirse en términos de F como

(3.3)

( ) ( )cos ,ax t A t tq= W + -¥ < < ¥

2 FpW =

( ) ( )cos 2 ,ax t A Ft tp q= + -¥ < < ¥

Page 12: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

10

Utilizaremos ambas formas, (3.1) y (3.3), para representar señales sinusoidales. La señal analógica sinusoidal (3.3) esta caracterizada por las siguientes propiedades: A1. Para todo valor fijo de la frecuencia F, xa(t) es periódica. En efecto, puede demostrarse fácilmente, usando trigonometría elemental, que

donde Tp = 1/F es el periodo fundamental de la señal sinusoidal. A2. Las señales en tiempo continuo con frecuencias diferentes, son diferentes. A3.El aumento en la frecuencia F resulta en un aumento en la tasa de oscilación de la señal, en el sentido de que se incluyen más periodos en un intervalo de tiempo dado. Como se observa, para F = 0, el valor Tp = ∞ es consistente con la relación fundamental F = 1/Tp . Debido a la continuidad de la variable temporal t, podemos aumentar la frecuencia F sin límite, con el consiguiente aumento en la tasa de oscilación. Las propiedades que hemos descrito para señales sinusoidales son aplicables a la clase de señales exponenciales complejas

(3.4) Esto es fácil de ver expresando estas señales en términos de sinusoides mediante la identidad de Euler

(3.5)

Fig. 6 Ejemplo de una señal sinusoidal analógica. Por definición, la frecuencia es una cantidad física inherentemente positiva. Esto es obvio si interpretamos la frecuencia como el número de ciclos por unidad de tiempo de una señal

( ) ( )a p ax t T x t+ =

( ) ( )j tax t Ae qW +=

cosje jsenf f f± = ±

t

1/pT F=

A-

cosA q

Page 13: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

11

periódica. Sin embargo, en muchos casos, únicamente por conveniencia matemática, necesitamos introducir frecuencias negativas, Para entender esto, recordemos que la señal sinusoidal (3.1) se puede expresar como

(3.6)

Que se deduce de (3.5). Debe advertirse que a una señal sinusoidal se puede obtener como la suma de dos señales exponenciales complejas de igual magnitud, en ocasiones llamadas favores, ilustrada en la figura 7. A medida que transcurre el tiempo, los favores rotan en direcciones opuestas con frecuencias angulares ±W radianes por segundo. Dado que una frecuencia positiva se corresponde con un movimiento angular uniforme contrario a las agujas de reloj, una frecuencia negativa simplemente se corresponde con un movimiento angular uniforme en el sentido de las agujas del reloj. El rango de frecuencias para señales sinusoidales analógicas es -∞ < F < ∞.

Fig. 7 Representación de una función coseno mediante exponenciales complejas conjugadas (favores)

Señales sinusoidales en tiempo discreto Una señal sinusoidal en tiempo discreto puede expresarse como

(3.7) donde n es una variable entera, denominada numero de muestra, A es la amplitud de la sinusoide, w es la frecuencia en radianes por muestra, y q es la fase en radianes. Si, en lugar de w, utilizamos la variable de frecuencia f definida por

(3.8) La relación (3.7) se convierte en

(3.9)

( ) ( ) ( ) ( )cos2 2

j t j ta

A Ax t A t e eq qq W + - W += W + = +

Im

A/2 W

W

W t + q

W t + q

A/2

Re

( ) ( )cos ,x n A n nw q= + -¥ < < ¥

2 fw pº

( )( ) cos 2 ,x n A fn np q= + -¥ < < ¥

Page 14: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

12

La frecuencia f tiene dimensiones de ciclos por muestra. Consideremos la sinusoide en tiempo discreto en (3.7), independientemente de la sinusoide en tiempo continuo dada en (3.1). En contraste con las sinusoides en tiempo continuo, las sinusoides en tiempo discreto están caracterizadas por las propiedades siguientes: B1. Una sinusoide en tiempo discreto es periódica solo si su frecuencia f es un número racional. Por definición, una señal en tiempo discreto x (n) es periódica con periodo N ( N > 0 ) si y solo si

para todo n (3.10) El valor más pequeño de N para el que se cumple (1.10) se denomina fundamental. La demostración de la propiedad de periodicidad es simple. Para que una sinusoide con frecuencia f0 sea periódica, debemos tener

Esta relación es cierta si y sólo si existe un entero k tal que

O, equivalentemente,

(3.11)

De acuerdo con (3.11), una señal sinusoidal en tiempo discreto es periódica solo si su frecuencia f0 se puede expresar como el cociente de dos enteros (esto es, si f0 es racional). Para determinar el periodo fundamental N de una sinusoide periódica, debemos expresar su frecuencia como en (3.11) y cancelar factores comunes hasta que k y N sean números primos relativos. Entonces el periodo fundamental de la sinusoide es N. Obsérvese que una pequeña variación en la frecuencia puede originar un gran cambio en el periodo. B2. Las sinusoides en tiempo discreto cuyas frecuencias están separadas por un múltiplo entero de 2p, son idénticas. Para probar esta aseveración, consideremos la sinusoide cos(w0n + q). Fácilmente se comprueba que

(3.12) Como resultado, todas las secuencias sinusoidales

( ) ( )x n N x n+ =

( ) ( )0 0cos 2 cos 2f N n f np q p q+ + = +é ùë û

02 2f N kp p=

0kfN

=

( ) ( ) ( )0 0 0cos 2 cos 2 cosn n n nw p q w p q w q+ + = + + = +é ùë û

Page 15: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

13

k = 0, 1, 2,… (3.13) donde

Son indistinguibles (esto es, idénticas). B3. La mayor tasa de oscilación en una sinusoide en tiempo discreto se alcanza cuando w = p (o w = -p ) o, equivalentemente, f = ½ (o f = -1/2).

4. Teorema de muestreo Dada una señal analógica cualquiera, en particular, debemos tener cierta información general sobre el contenido frecuencial de la señal. Generalmente, dicha información se encuentra disponible. De hecho, el propósito del procesado de señal es normalmente la extracción de dichas características. Sin embargo, si conocemos la máxima frecuencia de una determinada clase de señales podemos especificar la velocidad de muestreo necesaria para convertir las señales analógicas en señales digitales. Supongamos que cualquier señal analógica se puede representar como una suma de sinusoides de diferentes amplitudes, frecuencias y fases, es decir,

(4.1)

donde N indica el número de componentes de frecuencia. Todas las señales, como las de voz o video, se presentan a dicha representación en cualquier intervalo de tiempo pequeño. Normalmente, las amplitudes, fases y frecuencias de una determinada señal no exceden una frecuencia máxima conocida Fmax. Dado que la máxima frecuencia puede variar ligeramente, podemos querer asegurar que Fmax no sobrepase determinado valor y para ello pasaremos la señal analógica por un filtro que atenúe fuertemente las componentes de frecuencia por encima de Fmax. Así, estaremos seguros de que ninguna señal de la clase que nos interesa tendrá componentes de frecuencia (con amplitud o potencia significativa) por encima de Fmax. En la práctica, este filtrado se realiza antes del muestreo. El conocimiento de Fmax nos permite seleccionar la velocidad de muestreo apropiada. Sabemos que la frecuencia más alta de la señal analógica que puede reconstruirse sin ambigüedad cuando la señal se muestrea a una velocidad Fs=1/T es Fs/2. Cualquier frecuencia por encima por encima de Fs/2 o por debajo de –Fs/2 produce muestras que son idénticas a las correspondientes a frecuencias dentro del intervalo –Fs/2 ≤ F ≤ Fs/2. Para evitar las ambigüedades que resultan del aliasing, se debe seleccionar una velocidad de muestreo lo suficientemente alta, esto es, debemos escoger Fs/2 mayor que Fmax. Por tanto, para evitar el problema del aliasing, se selecciona Fs según

(4.2)

donde Fmax es la frecuencia más alta de la señal analógica.

( ) ( )cos ,k kx n A nw q= +

0 2 ,k kw w p= + 0p w p- £ £

( ) ( )1

cos 2N

a i i ii

x t A Ftp q=

= +å

max2sF F>

Page 16: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

14

La condición Fs > 2 Fmax garantiza que todas las componentes sinusoidales de la señal analógica se correspondan con componentes en frecuencia de tiempo discreto en el intervalo fundamental. Por lo tanto, todas las componentes en frecuencia de tiempo discreto en el intervalo fundamental. Por lo tanto, todas las componentes en frecuencia de la señal analógica están representadas sin ambigüedad en la forma muestreada de la señal, y si la señal analógica puede ser reconstruida sin distorsión a partir de las muestras usando un método de interpolación “apropiado” (conversión digital-analógica). La formula de interpolación ideal o “apropiada” se especifica mediante el teorema del muestreo. Teorema del muestreo. Si la frecuencia más alta contenida en una señal analógica xa(t) es Fmax = B y la señal se muestrea a una velocidad Fs > 2Fmax º 2B, entonces xa(t) se puede recuperar totalmente a partir de sus muestras mediante la siguiente función de interpolación

(4.3)

Así, xa(t) se puede expresar como

(4.4)

donde xa (n/Fs) = xa (nT )º x (n) son las muestras de xa(t).

5. Cuantificación de señales sinusoidales La figura 8 ilustra el muestreo y cuantificación de una señal sinusoidal analógica, , usando una malla rectangular. Las líneas horizontales indican los niveles de cuantificación autorizados. Las líneas verticales, los instantes de muestreo. Por lo tanto, de la señal analógica original obtenemos una señal en tiempo discreto x(n) = xa(nT), mediante muestreo, y una señal en tiempo discreto con amplitud discreta xq(nT) después de la cuantificación. En la práctica, la señal escalonada xq(t) se puede obtener utilizando un mantenedor de orden cero. Este análisis es útil porque las sinusoides se usan como señales de test en los conversores A/D.

Figura 8. Muestreo y cuantificación de una señal sinusoidal.

( ) 22

sen Btg tBtp

p=

( )a an s s

n nx t X g tF F

¥

=-¥

æ ö æ ö= -ç ÷ ç ÷

è ø è øå

( ) 0cosax t t= A W

( )ax t

Page 17: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

15

Figura 9 El error de cuantificación eq(t) = xa(t) – xq(t) Si la tasa de muestreo Fs satisface el teorema del muestreo, el de cuantificación es el único error en el proceso de conversión A/D. Por tanto, podemos evaluar el error de cuantificación sin más que cuantificar la señal analógica xa(t) en lugar de la señal en tiempo discreto x(n) = xa(nT). La inspección de la figura 8 indica que la señal xa(t) es casi lineal entre niveles de cuantificación. El error de cuantificación correspondiente eq(t) = xa(t) – xq(t) se muestra en la figura 9. En la figura 9 τ denota el tiempo durante el que xa(t) se mantiene dentro de los niveles de cuantificación. La potencia media del error cuadrático Pq es

(5.1)

Como ( ) ( )/ 2 , ,qe t t tt t t= D - £ £ se tiene que

(5.2)

Si el cuantificador tiene b bits de precisión y cubre el rango completo 2ª, el escalón de cuantificación es Δ = 2A / 2b. Asi pues,

(5.3)

La potencia media de la señal xa(t) es

(5.4)

La calidad de la salida del conversor A/D se mide frecuentemente con la relación señal / ruido de cuantificación (SQNR, signal-to-quantization noise ratio), que proporciona la relación entre la potencia de la señal y del ruido:

(5.5)

Expresada en decibelios (dB), la SQNR es (5.6)

( ) ( )2 2

0

1 12q q qP e t dt e t dt

t t

tt t-= =ò ò

2 22

0

12 12qP t dt

t

t tD Dæ ö= =ç ÷

è øò

2

2

/ 32q b

AP =

( )2

200

1 cos2

pT

xp

AP A t dtT

= W =ò

23 22

bx

q

PSQNRP

= = ×

( ) 1010log 1.76 6.02SQNR dB SQNR b= = +

Page 18: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

16

Lo que implica que la SQNR aumenta aproximadamente en 6 dB por cada bit añadido a la longitud de palabra, es decir cada vez que se duplica el numero de niveles de cuantificación.

6. Codificación de muestras cuantificadas El proceso de cuantificación en un conversor A/D asigna un número binario único a cada nivel de cuantificación diferente. Si disponemos de L niveles, necesitaremos al menos L niveles binarios distintos. Con una longitud de palabra de b bits se pueden crear 2b números binarios diferentes. Por tanto, tenemos 2b ≥ L ó, de forma equivalente, b ≥ log2L De este modo, el número de bits necesarios en el codificador es el menor entero mayor o igual que log2L. Generalmente, cuanto mayor es la velocidad de muestreo y más fina la cuantificación, más caro resulta el dispositivo.

7. Señales en tiempo discreto Una señal en tiempo discreto x (n) es una función de una variable independiente entera. Gráficamente, se representa como en la Fig. 10 Es importante destacar que una señal en tiempo discreto no esta definida para instantes entre dos muestras sucesivas. Igualmente, es incorrecto pensar que x (n) es igual a cero si n no es un entero. Simplemente, la señal x (n) no está definida para valores no enteros de n. En lo sucesivo supondremos que una señal en tiempo discreto se define para cada valor entero n para -∞ < n > ∞. Por tradición, nos referimos a x(n) como la “n-esima muestra” de la señal aun cuando x(n) sea inherentemente en tiempo discreto (es decir, aunque no haya sido obtenida por muestreo de una señal analógica). En el caso en que x(n) haya sido obtenida al muestrear una señal analógica xa(t), entonces x(n) º xa(nT), donde T es el periodo de muestreo (el tiempo entre muestras sucesivas).

Fig. 10 Representación gráfica de una señal en tiempo discreto

-4 -2 -1 0 1 2 3 5

x (n)

-3 4

0.9

- 0.8

0.7

1.5

2 1.7

1.0 0.7

- 0.8

1.2

n

Page 19: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

17

Además de la representación gráfica de una señal en tiempo discreto o secuencia como se ilustra en la figura 8, existen otras representaciones alternativas que a menudo son más convenientes. Estas son:

1. Representación funcional, como

(7.1)

2. Representación tabular, como 3. Representación como secuencia

Una señal o secuencia de duración infinita con el origen de tiempos (n = 0) indicado por el símbolo se representa como

(7.2) Una secuencia x(n), que es cero para n < 0, se puede representar como

(7.3) El origen de tiempos de una secuencia x(n), que es cero para n < 0, se interpreta como el primer (comenzando por la izquierda) punto de la secuencia. Una secuencia de duración finita se puede representar como

(7.4)

Mientras que una secuencia de duración finita que satisface la condición x(n) = 0 para n < 0 se puede representar como

(7.5)

para n = 1,3

para n = 2

en otro caso ( )

1,4,0,

x nìï= íïî

… -2 -1 0 1 2 3 4 5 … … 0 0 0 1 4 1 0 0 … ( )

nx n

( ) ...0,0,1, 4,1,0,0,...x n =

( ) 0,1,4,1,0,0,...x n =

( ) 3, 1, 2,5,0, 4, 1x n = - - -

( ) 0,1, 4,1x n =

Page 20: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

18

para n ≥ 0

para n < 0 ( ) 1,

0,u n ì

= íî

La señal dada en (7.4) está formada por siete muestras o puntos (en el tiempo), de manera que se denomina secuencia de siete puntos. De forma similar, la secuencia dada por (7.5) es una secuencia de cuatro puntos. Algunas señales elementales en tiempo discreto

En nuestro estudio de istemas y señales discretas en el tiempoexisten varias señales básicas que aparecen con frecuencia y juegan un importante papel. Estas señales se definen mas abajo.

1. El impulso unitario se denomina δ(n) y se define como

(7.6)

En otras palabras, el impulso unitario es una señal que vale cero siempre excepto para n = 0 donde vale uno. Al contrario que la señal analógica δ(t), que también se conoce como impulso unitatrio y vale cero siempre excepto en t = 0, donde tiene área unidad, la secuencia respuesta impulsional es mucho menos complicada matemáticamente. La representación gráfica de δ(n) se muestra en la figura 11.

Figura 11 Representación gráfica de la señal de una muestra.

2. La señal escalón unidad se denota como u(n) y se define como

(7.7)

Figura 12 Representación gráfica de la señal escalón unidad

para n = 0

para n ≠ 0 ( ) 1,

0,nd

ì= íî

Page 21: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

19

3. La señal rampa unidad se denota como ur (n) y se define como

(7.8)

Figura 13 Representación gráfica de la señal ampa unidad

4. La señal exponencial es una secuencia de la forma

(7.9) Si el parámetro a es real, entonces x(n) es una señal real, cuando el parametro a es complejo puede expresarse como

a ≡ rejθ donde r y θ son ahora los parámetros. De aquí que podamos expresar x(n) como

(7.10) Clasificación de las señales en tiempo discreto

Los métodos matemáticos empleados en el análisis de sistemas y señales en tiempo discreto dependen de las caracterisicas de las señales. En esta sección realizamos una clasificación de las señales en tiempo discreto que atiende a diferentes características. Señales de energía y señales de potencia La energía E de una señal x(n) se define como

(7.11)

Hemos considerado el módulo al cuadrado de x(n);por tanto, esta definición se aplica tanto a señales reales como a señales complejas. La energía de una señal puede ser finita o infinita. Si E es finita (es decir, 0 < E < ∞), entonces se dice que x(n) es una señal de

para n ≥ 0

para n < 0 ( ) ,

0,r

nu n ì

=íî

x(n) = an para todo n

( ) n j nx n r e q=

( )cosnr n jsen nq q= +

( )2

nx n

¥

=-¥å

Page 22: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

20

energía. Algunas Veces añadimos un subindice x a E y escribimos Ex para hacer hincapié en que Ex es la energía de la señal x(n). Muchas señales que poseen energía infinita tienen potencia media finita. La potencia media de una señal discreta en el tiempo x(n) se define como

(7.12)

Si definimos la energía de una señal sobre un intervalo finito –N ≤ n ≤ N como

(7.13)

Entonces podemos expresar la energía E de la señal como

(7.14)

Y la potencia media de la señal x(n) como

(7.15)

Claramente, si E es finita, P = 0. Por otra parte, si E es infinita, la potencia media P puede ser tanto finita como infinita. Si P es finita (y distinta de cero), la señal se denomina señal de potencia. Señales periodicas y señales aperiodicas Una señal x(n) es periódica con periodo N(N > 0) si y sólo si

(7.16) El valor más pequeño de N para el que (7.16) se verifica se denomina periodo (fundamental). Si (7.16) no se verifica para ningún valor de N la señal se denomina aperiódica o no periódica. Hemos visto ya que una señal sinusoidal de la forma

(7.17)

Es periódica cuando f0 es un número racional, es decir, si f0 se puede expresar como

(7.18)

( )21lim2 1

N

N n NP x n

N®¥=-

=+ å

( )2N

Nn N

E x n=-

º å

lim NNE E

®¥º

1lim2 1 NN

P EN®¥

º+

Para todo n ( ) ( )x n N x n+ =

( ) 02x n Asen f np=

0kfN

=

Page 23: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

21

Donde k y N son enteros. La energía de una señal periódic x(n) sobre un único periodo es finita si x(n) toma valores finitos en el periodo. Sin embargo, la energía de una señal periódica en el intervalo - ∞ ≤ n ≤ ∞ es infinita. Por otra parte, la potencia media de una señal periódica es finita y es igual a la potenciamedia sobre un único periodo. Por lo tanto si x(n) es una señal periódica con periodo fundamental N y toma valores finitos, su potencia viene dada por

(7.19)

En consecuencia, las señales periódicas son señales de potencia. Señales simétricas (pares) y antisimétricas (impares) Una señal real x(n) se denomina simétrica (par) si

(7.20) Por otra parte, una señal x(n) se denomina antisimétrica (impar) si

(7.21)

Una señal arbitraria puede expresarse como la suma de dos componentes, una de las cuales es par y la otra impar. La componente par de la señal se construye sumando x(n) y x(-n) y dividiendo por 2:

(7.22)

Claramente, xe(n) satisface la condición de simetría (7.20). De forma similar, formamos la componente impar de la señal x0(n) de acuerdo con la relación

(7.23)

Manipulaciones simples de señales en tiempo discreto En esta sección se consideran algunas modificaciones o manipulaciones simples en las que intervienen la variable independiente y la amplitud de la señal (variable dependiente). Transformación de la variable independiente (tiempo) Una señal x(n) puede ser desplazada en el tiempo reemplazando la variable independiente n por n – k, donde k es un entero. Si k es un entero positivo, el desplazamiento temporal resulta en un retraso de la señal en k unidades de tiempo. Si k es un entero negativo, el desplazamiento temporal resulta en un adelanto de la señal en ׀k׀ unidades de tiempo.

( )1 2

0

1 N

nP x n

N

-

=

= å

( ) ( )x n x n- =

( ) ( )x n x n- = -

( ) ( ) ( )12ex n x n x n= + -é ùë û

( ) ( ) ( )012

x n x n x n= - -é ùë û

Page 24: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

22

Otra modificación útil de la base temporal es reemplazar la variable independiente n por –n. El resultado de esta operación es un pliegue o una reflexión de la señal con respecto al origen de tiempos n = 0. Es importante destacar que las operaciones de reflexión y retardo ( o adelanto) temporal de una señal no son conmutativas. Si denotamos la operación por TD y la operación de reflexión por FD, podemos escribir

(7.24)

Ahora

(7.25)

mientras que

(7.26)

Observese que como los signos de n y k en x(n-k) y x(-n+k) son diferentes, el resultado es un desplazamiento de las señales x(n) y x(-n) en k unidades hacia la derecha, correspondiendo con un retardo tempoal. Una tercera modificación de la variable independiente implica reemplazar n por µn, siendo µ un entero. Nos referimos a esta modificación de la base de tiempos como escalado temporal o submuestreo. Suma, multiplicación y escalado de secuencias Las modificaciones de la amplitud incluyen suma, multiplicación y escalado de las señales discretas en el tiempo. El escalado de amplitud deuna señal por una constante A se obtiene multiplicando el valor de cada muestra de la señal por A. Así, obtenemos

La suma de dos señales x1(n) y x2(n) es una señal y(n) cuyo valor en cualquier instante es igual a la suma de los valores en ese instante de las dos señales de partida, es decir,

El producto se define análogamente en cada instante de tiempo como

( ) ( ) ( )k kTD FD x n TD x n x n k= - = - +é ù é ùë û ë û

( ) ( ) ( )kFD TD x n FD x n k x n k= - = - -é ù é ùë û ë û

( ) ( )kTD x n x n k= -é ùë û

( ) ( )FD x n x n= -é ùë û

k > 0

- ∞ < n < ∞ ( ) ( )y n Ax n=

( ) ( ) ( )1 2y n x n x n= + - ∞ < n < ∞

( ) ( ) ( )1 2y n x n x n= - ∞ < n < ∞

Page 25: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

23

8. Sistemas discretos descritos mediante ecuaciones en diferencias Hasta este punto hemos considerado sistemas lineale invariantes en el tiempo que quedan caracterizados mediante su respuesta impusional h(n). Esta respuesta impulsional h(n) nos permite calcular la salida del sistema y(n) como respuesta a una entrada determinada x(n) por medio de la convolución

(8.1)

En general, hemos demostrado que un sistema lineal e invariane en el tiempo queda caracterizado por una relación de entrada-salida de la forma dada en (8.1). lo que es más, la ecuación (8.1) nos sugiere la forma de realizar el sistema. En el caso de sistemas FIR, esta realización consistiría en sumadores, multiplicadores y un número finito de posiciones de memoria. En consecuenci, un sistema FIR se puede implementar basándose directamente en la convolución. Sin embargo, si el sistema es IIR una implementación práctica basada en la convolución sería imposible ya que requeriría un número infinito de sumadores, multiplicadores y posiciones de memoria. Surge entonces la pregunta de si es posible o no realizar sistemas IIR de otra forma que no sea la directamente sugerida por la convolución. Afortunadamente la respuesta es sí. Tal y como demostraremos en esta sección, existe una manera práctica y eficiente, desde el punto de vista computacional, de realizar una familia de sistemas IIR. Dentro de la clase general de sistemas IIR, esta familia de sistemas discetos se describe mediante ecuaciones en diferencias. Esta familia o subclase de los sitemas IIR es muy útil en diversas aplicaciones prácticas que incluyen la implementación de filtros digitales, y el modelado de sistemas y fenómenos fisicos.

8.1 Sistemas discretos recursivos y no recursivos La convolución expresa de forma explicita, en términos únicamente de la señal de entrada, la salida de un sistema lineal e invariante en el tiempo. Sin embargo, como se demuestra aquí, éste no es necesariamente el caso. Exisen muchos sistemas, en los que es o bien necesario o bien conveniente, expresar la salida del sistema no sólo en términos de los valores presentes y pasados de la señal de entrada sino también en función de los valores pasados e la propia señal de salida. Supongamos que queremos calcular la media acumulativa de una señal x(n) en el intervalo 0 ≤ k ≤ n, definida como

(8.2)

Como se desprende de (8.2), el cálculo de y(n) requiere el almacenamiento de todas las muestras de x(k) para 0 ≤ k ≤ n. Dado que n crece, tambien lo hacen nuestras necesidades de memoria de forma lineal con el tiempo.

( ) ( ) ( )k

y n h k x n k¥

=-¥

= -å

( ) ( )0

11

n

ky n x k

n =

=+ å n = 0,1,…

Page 26: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

24

Parece, sin embargo, que una manera más eficiente de calcular y(n) se basará en utilizar la salida anterior y(n - 1). De hecho, recordando (8.2) obtenemos

de aquí

(8.3)

Así, la medida acumulativa de y(n) se puede calcular de forma recursva multiplicando el valor anterior de la salida y(n – 1) por n/(n + 1), multiplicando la entrada actual x(n) por 1/(n + 1), y sumando los dos productos. Por tanto el cálculo de y(n) según (8.3) requiere dos multiplicaciones, una suma y una posición de memoria como se muestra en la figura 13. Este es un ejemplo de un sistema recursivo. En general, un sistema cuya salida en el instante n depende de valores antoriores de la misma y(n – 1), y(n – 2), … se denomina sistema recursivo.

Figura 14 Relación de un sistema recursivo para el cálculo de la media acumulativa. Lo que queremos dejar claro es que si uno desea calcula la respuesta del sistema (8.3) (en este caso la media acumulativa) a una determinada señal de entrada que se aplica en el instante n = n0 , necesita el valor de y(n0 – 1) y las muestras de entrada x(n) para n ≥ n0 a la entrada x(n), independientemente de lo que ocurriera con anterioridad.

9. Implementación de sistemas discretos Nuestro tratamiento de los sistemas discretos se ha centrado en la caracterización en el dominio del tiempo y en el análisis de sistemas lineales invariantes en el tiempo, descritos mediante ecuaciones en diferencias lineales de coeficientes constantes. En la práctica, el diseño y la implementación se tratan conjuntamente. A menudo el diseño del sistema está determinado por el método de implementación y sus limitaciones como coste, tamaño, harware y potencia. De momento no hemos desarrollado todavía las herramientas necesarias para considerar dichos aspectos. Sin embargo, tenemos ya la base

( ) ( ) ( ) ( )1

01

n

kn y n x k x n

-

=

+ = +å

( ) ( )1ny n x n= - +

( ) ( ) ( )111 1

ny n y n x nn n

= - ++ +

Page 27: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

25

necesaria para estudiar algunos esquemas de implementación paa la realización de sistemas descritos mediante ecuaciones en diferencias lineales de coeficientes constantes.

9.1 Realización de sistemas FIR recursivos y no recursivos Ya hemos distinguido entre sistemas FIR y sistemas IIR, según la duración de la respuesta impulsional h(n) del sistema sea finita o infinita. Tambien hemos distinguido ya entre sistemas recursivos y no recursivos. Básicamente, un sistema recursivo causal queda descrito por una relación de entrada-salida de la forma

(9.1)

Y mediante un sistema lineal invariante en el tiempo, por la ecuación en diferencias

(9.2)

Por otra parte, los sistemas causales no recursivos no dependen de valores pasados de la salida y, por tanto, quedan descritos por una relación entrada-salida de la forma

(9.3)

Y mediante un sistema lineal invariante en el tiempo por la ecuación (9.2) con ak = 0 para k = 1,2,…,N. Ya vimos que los sistemas FIR siempre pueden realizarse como sistemas no recursivos. De hecho, con ak = 0, k = 1,2,…,N, en (9.2), tenemos una relación de entrada-salida de la forma

(9.4)

Éste es un sistema FIR no recursivo, todo sistema FIR puede realizarse de forma no recursiva. Por otra parte, cualquier sistema FIR puede realizarse recursivamente. En resumen, podemos considerar los términos FIR e IIR como caracteristics que distinguen dos tipos de sistemas, y los términos recursivo y no recursivo como maneras de describir la realización o implementación de sistemas.

10. La transformada z directa

La transformada z de una señal discreta x(n) se define como la serie de potencias

(10.1) Donde z es una variable compleja. La relación (10.1) se denomina a veces transformada z directa porque transforma una señal en el dominio del tiempo x(n) a partir de X (z), se denomina transformada z inversa.

( ) ( ) n

nx z X n z

¥-

=-¥

º å

( ) ( ) ( ) ( ) ( )1 ,..., , ,...,y n F y n y n N x n x n M= - - -é ùë û

( ) ( ) ( )1 0

N M

k kk k

y n a y n k b x n k= =

= - - + -å å

( ) ( ) ( ) ( ), 1 ,...,y n F x n x n x n M= - -é ùë û

( ) ( )0

M

kk

y n b x n k=

= -å

Page 28: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

26

Por conveniencia, la transformada z de una señal x(n) se denota por

(10.2) mientras que la relación entre x(n) y X (z) se indica mediante

(10.3) Dado que la transformada z es una serie infinita de potencias, esta existe solo para aquellos valores de z para los que la serie converge. La región de convergencia (ROC, region of convergence) de X (z) es el conjunto de todos los valores de z para los que X (z) es finita. Por lo tanto, siempre que hablemos de una transformada z debemos indicar también su ROC. Desde un punto de vista matemático, la transformada z es simplemente una forma alternativa de presentar una señal. En muchos casos la suma, finita o infinita, correspondiente a una transformada z puede expresarse de forma compacta. En estos casos, la transformada z produce una representación alternativa y compacta de una señal. Expresemos la variable compleja z en su forma polar

(10.4)

donde r = ½z½y q = . z Entonces X (z) se puede expresar como

En la ROC DE X (z)½X(z)½ <¥ . Pero

(10.5)

De aquí que ½X(z)½ sea finita si la secuencia x (n)r-n es absolutamente sumable. El problema de encontrar la ROC de X(z) es equivalente a determinar el rango de valores de r para los que la secuencia x (n)r-n es absolutamente sumable. Expresemos (10.5) como

(10.6)

( ) ( ) X z Z x nº

( ) ( )x n X z«

( ) ( )jn j n

z ren

X z x n r eqq

¥- -

==-¥

= å

( ) ( ) n j n

nX z x n r e q

¥- -

=-¥

= å

( ) ( )n j n n

n nx n r e x n rq

¥ ¥- - -

=-¥ =-¥

£ =å å

( ) ( )1

0( ) n

nn n

x nX z x n r

r

- ¥-

=-¥ =

£ +å å

1 0

( )( ) nn

n n

x nx n rr

¥ ¥

= =

£ - +å å

z = re jq

Ð

Page 29: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

27

Si X(z) converge en alguna region del plano complejo, entonces los dos sumatorios de (10.6) tienen que ser finitos en esta región. Si el primer sumatorio de (10.6) converge, entonces existen valores de r lo suficientemente pequeños como para que la secuencia producto x (-n)r-n , 1 £ n < ¥ , sea absolutamente sumable. Por lo tanto, la ROC de la primera suma consiste en una circunferencia de radio r1 tal que r1< ¥ , como se ilustra en la figura 15a. por otra parte, si la segunda suma de (10.6) converge, entonces existen valores de r lo suficientemente grandes como para que la secuencia producto x (n) ¤ r-n , 0 £ n < ¥ , sea absolutamente sumable. De aquí que la ROC correspondiente a la segunda suma de (10.6) consista en todos los puntos que están fuera de una circunferencia de radio r > r2, tal como se ilustra en la figura 15b. Dado que la convergencia de X (z) exige que las dos sumas de (10.6) sean finitas, tenemos que la ROC de X (z) es, en general, la región anular del plano z r2 <r < r1, que es en la zona en las que ambas sumas son finitas . esta región se muestra en la figura 15c. Por otra parte, si r2 > r1, entonces no existe región de convergencia común para las dos sumas y de aquí, que X (z) no exista. Una señal discreta x (n) queda unívocamente determinada por su transformada z, X(z), y la región de convergencia de X(z). Un caso especial de una señal bilateral es una señal de duración infinita por la derecha, pero no por la izquierda (esto es, x (n) = 0 para n < n0 < 0). Un segundo caso es el de la señal de duración infinita por la izquierda pero o por la derecha ( es decir, x (n) = 0 para n < n1< 0). Un tercer caso es el de una señal de duración finita, tanto por la derecha como por la izquierda. Estas señales se suelen denominar respectivamente señales infinitas por la derecha, por la izquierda y señales de duración finita por la derecha y por la izquierda. Mencionamos que la transformada z definida por (10.1) se conoce a veces como la transformada z bilateral para distinguirla de la transformada z unilateral, dada por

Si x (n) es causal (es decir, x (n) = 0 para n < 0), las transformadas z unilateral y bilateral son equivalentes. En cualquier otro caso, son diferentes.

( ) ( )0

n

nX z x n z

¥+ -

=

Im(z)

Re(z)

Plano z

Región de convergencia de (a)

r1

( )1

n

nx n r

¥

=

Page 30: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

28

Fig.15 Región de convergencia de X(z) y sus correspondientes partes causales y anticausales.

10.1 La transformada z inversa

Si tenemos la transformada z de una señal y queremos determinar la señal. El procedimiento para transformar desde el dominio z al dominio del tiempo se denomina transformada z inversa. La formula para obtener x (n) a partir de X(z) se puede obtener usando el teorema integral de Cauchy, que es un teorema muy importante dentro de la teoría de variable compleja.

Im(z)

Re(z)

Plano z

(b)

r2

Región de convergencia de ( )

0n

n

x nr

¥

Im(z)

Re(z)

Plano z

(c)

r1

R2

Región de convergencia de ( )X z

2 1r r r< <

Page 31: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

29

Tenemos la transformada z definida por (10.1) como

(10.7)

Supongamos que multiplicamos ambos lados de (10.7) por zn-1 y los integramos sobre un contorno cerrado en el interior de la ROC y que contiene al origen. Así tenemos

(10.8)

Donde C denota el contorno cerrado en el interior de la ROC de X(z), recorrido en sentido contrario a las agujas del reloj. Dado que la serie converge en los puntos de este contorno, podemos intercambiar el orden de las operaciones suma e integral de la parte derecha de (10.8). Así (10.8) se convierte en

(10.9) Ahora, podemos emplear el teorema integral de Cauchy, que dice que

(10.10) Donde C es cualquier entorno que encierre al origen. Aplicando (10.10), la parte derecha de (10.9) se reduce a 2pjx(n) y de aquí obtenemos

(10.11)

10.2 Propiedades de la transformada z La transformada z es una herramienta muy potente para el estudio de señales y sistemas discretos. La potencia de esta transformación es consecuencia de algunas propiedades muy importantes que tiene. Deberá recordarse que la ROC resultante cuando combinamos varias transformadas z es, cuando menos, la intersección entre las transformadas individuales.

( )( ) k

kX z x k z

¥-

=-¥

= å

( ) ( )1 1n n k

kX z z dz x k z dz

¥- - -

=-¥

= åò òÑ Ñ

( ) ( )1 1n n k

KX z z dz x k z dz

¥- - -

=-¥

= åò òÑ Ñ

k = n k ≠ n

1 1,10,2

n kz dzjp

- - ì= íî

òÑ

11( ) ( )2

nx n X z z dzjp

-= òÑ

Page 32: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

30

Linealidad Si

y entonces

(10.12) para cualquier constantes a1 y a2. La propiedad linealidad se puede generalizar a un numero arbitrario de señales. Así, la propiedad de linealidad nos permite obtener la transformada z de una señal expresando ésta como la suma de varias señales elementales cuyas transformadas z son conocidas. Desplazamiento en el tiempo Si entonces

(10.13) La ROC de z-k X (z) es la misma que la de X (z), excepto por z = 0, si k > 0, y z = ¥ , si k < 0.esta propiedad se demuestra directamente a partir de la definición de la transformada z dada en (10.1). Las propiedades de linealidad y desplazamiento en el tiempo son las características clave que hacen que la transformada z sea extraordinariamente útil para el análisis de sistemas discretos LTI. Escalado en el dominio z Si Entonces

(10.14) Para cualquier constante a, real o compleja. Demostración .de la definición (10.1)

( ) ( )1 1x n X z«

( ) ( )2 2x n X z«

( ) ( ) ( ) ( ) ( ) ( )1 1 2 2 1 1 2 2x n a x n a x n X z a X z a X z= + « = +

( ) ( )x n X z«

( ) ( )kx n k z X z-- «

( ) ( )x n X z« 1 2:ROC r z r< <

( ) ( )1na x n X a z-« 1 2:ROC a r z a r< <

( ) ( ) ( )( )1 nn n n

n nZ a x n a x n z x n a z

¥ ¥ -- -

=-¥ =-¥

= =å å

( )1X a z-=

Page 33: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

31

Dado que la ROC de X(z) es r1 < ½z½< r2, la ROC de X(a-1 z) es

o

Para entender mejor el significado y las consecuencias de la propiedad de escalado expresamos a y z en forma polar como a = r0ejw0, z = rejw e introducimos la nueva variable compleja w = a-1z. Por lo tanto, Z( x) n= X (z), y Zanx( n)= X (w). Podemos ver fácilmente que Este cambio de variables se traduce en la contracción (si r0 > 1) o la expansión (si r0 < 1) del plano z en combinación con una rotación (si w0 ¹ 2kp). Esto explica por que cambia la ROC cuando ½a½< 1. el caso ½a½= 1, es decir, a = ejw0 es de especial interés, ya que implica solamente una rotación del plano z. Inversión temporal Si entonces

(10.15) Demostración. De (6.1), tenemos

Donde hacemos el cambio de variable l =-n. La ROC de X (z-1)

o equivalentemente Observe que la ROC de x(n) es la inversa de la correspondiente a x(n). Esto significa que si z0 pertenece a la ROC de x(n), entonces 1¤ z0 pertenece a la ROC de x(-n) . Si se considera (10.15) cuando reflejamos una señal, el coeficiente de z-n se convierte en el coeficiente de zn. Por tanto, reflejar una señal es equivalente a reemplazar z por z-1 en la formula de la transformada. Una reflexión en el dominio del tiempo se corresponde con una inversión en el dominio z.

11 2r a z r-< <

1 2a r z a r< <

( )01

0

1 ja z r er

w ww -- æ ö= =ç ÷

è ø

( ) ( )x n X z« 1 2:ROC r z r< <

( ) ( )1x n X z-- «2 1

1 1:ROC zr r< <

( ) ( ) ( )( ) ( )11 1n

n tZ x n x n z x l z X z

¥ ¥ -- - -

=-¥ =-¥

- = - = =å å

11 2r z r-< <

2 1

1 1zr r< <

Page 34: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

32

Diferenciación en el dominio z Si entonces

(10.16) Demostración. Diferenciando ambos lados de (10.1), tenemos Observe que ambas transformadas tienen la misma ROC. Convolución de dos secuencias Si entonces

(10.17) La ROC de X (n) es, cuando menos, la intersección de las de X1 (z) y X2 (z). Demostración. La convolución de x1 (n) y x2 (n) se define como La transformada de z de x(n) es

Intercambiando el orden de los sumatorios y aplicando la propiedad de desplazamiento en el tiempo en (10.13), obtenemos Correlación de dos secuencias Si

( ) ( )x n x z«

( )( )

dX znx n z

dz« -

( ) ( )( ) ( )

1 1

2 2

x n X z

x n X z

«

«

( ) ( ) ( ) ( ) ( )21 2 1* ( )x n x n x n X z X z X z= « =

( ) ( ) ( )1 2k

x n x k x n k¥

=-¥

= -å

( ) ( ) ( )1 2( ) n n

n n kX z x n z x k x n k z

¥ ¥ ¥- -

=-¥ =-¥ =-¥

é ù= = -ê ú

ë ûå å å

( ) ( ) ( )1 2n

k nX z x k x n k z

¥ ¥-

=-¥ =-¥

é ù= -ê ú

ë ûå å

( ) ( ) ( ) ( )2 1 2 1k

kx z x k z X z X z

¥-

=-¥

= =å

( ) ( )( ) ( )

1 1

2 2

x n X z

x n X z

«

«

( ) ( )( ) ( )1 1n n

n n

dX zx n n z z nx n z

dz

¥ ¥- - - -

=-¥ =-¥

é ù= - = - ë ûå å

Page 35: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

33

entonces

(10.18) Demostración. Recordemos que Usando las propiedades de la convolución y la inversión temporal, obtenemos

La ROC de Rx1x2 (z) es, como mínimo, la intersección de las X1 (z) y X2 (z-1). Como en el caso de la convolución, la correlación cruzada de dos señales se hace mas fácilmente según la multiplicación polinómica de (10.18) e invirtiendo después el resultado.

11. Transformadas z racionales Una familia importante de transformadas z es aquella en la que X(z) es una función racional, esto es, el cociente de dos polinomios en z-1 (ó z). A continuación se discutirán algunos aspectos importantes relacionados con las transformadas z. Polos y ceros Los ceros de la transformada z X (z) son los valores de z para los cuales X (z) = 0. Los polos de una transformada z son los valores de z para los cuales X (z) = ∞. Si X (z) es una función racional, entonces

(11.1)

Si a0 ≠ 0 y b0 ≠ 0, podemos evitar las potencias negativas de z sacando como factor común los términos b0z-M y a0z-N, como sigue:

Dado que N(z) y D(z) son polinomios en z, se pueden expresar en forma de productos como

(11.2)

( ) ( ) ( )1 2 1 2*x xr l x l x l= -

() ( ) ( ) ( ) ( ) ( )1 2 1 2

11 2 1 2x x x x

nr l x n x n l R z X z X z

¥-

=-¥

= - « =å

( ) ( ) ( ) ( ) ( )1 2

11 2 1 2x xR z Z x l Z x l X z X z-= - =

( ) ( )( )

10 1 0

10 1

0

Mk

M kM k

NNkN

kk

b zN z b b z b zX zD z a a z a z a z

-- -

=- -

-

=

+ +×××+= = =

+ +×××+

å

å

( ) ( )( )

( )( )

11 0 00

10 1 0 0

/ // /

M MMM

N N NN

N z z b b z b bb zX zD z a z z a a z a a

--

- -

+ +×××+= =

+ +×××+

( ) ( )( )

( )( ) ( )( )( ) ( )

( )( )

( )

1 20

0 1 2

1

1

MM N

N

M

kN M kN

kk

N z z z z z z zbX z zD z a z p z p z p

z zX z Gz

z p

- +

- =

=

- - ××× -= =

- - ××× -

Õ -=

Õ -

Page 36: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

34

Donde G ≡ b0/a0. Así, X (z) tiene M ceros en z = z1, z2, … , zM (las raíces del polinomio del numerador), N polos en z = p1, p2, … , pN (las raíces del polinomio del denominador), y |N – M| ceros (si N > M) o polos (si N< M) en el origen z = 0. También pueden encontrarse polos o ceros en z = ∞. Existe en cero en z = ∞, si X (∞) = 0 y existe un polo en z = ∞, si X (∞) = ∞. Si contamos los polos y ceros, incluyendo los que están en z = 0 y en el infinito, encontramos que X (z) tiene exactamente el mismo número de polos que de ceros. Podemos representar gráficamente X (z) mediante un diagrama de polos y ceros en el plano complejo, que muestra la localización de los polos mediante cruces (x) y la de los ceros mediante círculos (o). La multiplicidad, tanto de polos como de ceros se indica mediante un número al lado de la correspondiente cruz o círculo. Evidentemente, por definición, la ROC de una transformada z no puede contener ningún polo. La transformada z X (z) es una función compleja de la variable compleja z = Re(z) + jIm(z). Evidentemente, |X(z)|, el módulo de X (z), es una función real y positiva de z. Dado que z representa un punto del plano complejo, |X(z)| es una función bidimensional y describe una “superficie”. La función de transferencia de un sistema lineal invariante en el tiempo La salida de un sistema lineal invariante en el tiempo (en reposo) para una secuencia de entrada x(n) con la respuesta impulsional del sistema. La propiedad de la convolución nos permite expresar esta relación en el dominio z como

(11.3)

Donde Y(z) es la transformada z de la secuencia de salida y(n), X(z) es la transformada z de la secuencia de entrada x(n), y H(z) es la transformada z de la respuesta impulsional h(n). Si conocemos h(n) y x(n), podemos determinar sus transformadas z, H(z) y X(z), multiplicarlas para obtener Y(z), y así determinar y(n) calculando la transformada z inversa de Y(z). Alternativamente, si conocemos x(n) y obtenemos la salida del sistema y(n), podemos determinar la respuesta impulsional del sistema obteniendo en primer lugar H(z) según la relación

(11.4)

y calculando después la transformada z inversa de H(z). Como

(11.5)

Esta claro que H(z) representa la caracterización del sistema en el dominio z, mientras que h(n) es la caracterización correspondiente en el dominio del tiempo. En otras palabras, H(z) y h(n) son descripciones equivalentes del sistema, cada una en un dominio. La transformada H(z) se denomina función de transferencia del sistema.

( ) ( ) ( )Y z H z X z=

( ) ( )( )

Y zH z

X z=

( ) ( ) n

nH z h n z

¥-

=-¥

= å

Page 37: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

35

La relación (11.4) es de especial utilidad para obtener H(z) cuando se describe el sistema mediante una ecuación lineal en diferencias con coeficientes constantes de la forma

(11.6)

En este caso, la función de transferencia se puede obtener directamente de (11.6) calculando la transformada z inversa en ambos lados e (11.6). Por tanto, aplicando la propiedad de desplazamiento en el tiempo, obtenemos

O, equivalentemente,

(11.7) De esta forma, un sistema lineal invariante en el tiempo descrito por una ecuación en diferencias con coeficientes constantes, tiene una función de transferencia racional. Ésta es, en general, la forma de la función de transferencia de un sistema descrito por una ecuación en diferencias lineal con coeficientes constantes. De esta forma general obtenemos dos clases especiales muy importantes. La primera, si ak = 0, para 1 ≤ k ≤ N, se reduce a

(11.8)

En este caso, H(z) contiene M ceros, cuyos valores están determinados por los parámetros del sistema bk, y un polo de orden M en el origen z = 0.Dado que el sistema contiene M polos triviales en z = 0 y M ceros no triviales, se le denomina sistema de todo ceros. Evidentemente, un sistema así tiene una respuesta impulsional de duración finita (FIR, finite impulse response), y se denomina sistema FIR o sistema FIR o sistema de media móvil (sistema MA).

( ) ( ) ( )1 0

N M

k kk k

y n a y n k b x n k= =

= - - + -å å

( ) ( ) ( )

( ) ( )

( )( )

1 0

1 0

0

1

1

1

N Mk k

k kk k

N Mk k

k kk k

Mk

kk

Nk

kk

Y z a Y z z b X z z

Y z a z X z b z

b zY zX z a z

- -

= =

- -

= =

-

=

-

=

= - +

æ ö æ ö+ =ç ÷ ç ÷è ø è ø

=+

å å

å å

å

å

( ) 0

11

Mk

kk

Nk

kk

b zH z

a z

-

=

-

=

=+

å

å

( )0

0

1

Mk

kk

MM k

kMk

H z b z

b zz

-

=

-

=

=

=

å

å

Page 38: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

36

Por otra parte, si bk = 0 para 1 ≤ k ≤ M, la función del sistema se reduce a

(11.9) En este caso, H(z) contiene N polos, cuyos valores quedan determinados por los parámetros del sistema ak y un cero de orden N en el origen z = 0. Normalmente, no haremos referencia a estos ceros triviales. En consecuencia, la función dada en (11.9) contiene sólo polos no triviales y el sistema correspondiente se denomina sistema de polos y ceros. Debido a la presencia de los polos, la respuesta impulsional del sistema es de duración infinita y se trata, por tanto, de un sistema IIR (infinite impulse response). La forma general de la función de transferencia dada por (11.7) contiene tanto polos como ceros y, por ello, el sistema correspondiente se denomina sistema de polos y ceros, con N polos y M ceros. Los polos y/o ceros, tanto en z = 0 como en z = ∞, no se cuentan explícitamente. Debido a la presencia de polos, un sistema de polos y ceros es un sistema IIR. Polos de orden múltiple y estabilidad Una condición necesaria y suficiente para que un sistema lineal e invariante en el tiempo causal sea estable BIBO es que todos sus polos pertenezcan al interior de la circunferencia unidad. La señal de entrada está acotada si su transformada z contiene polos qk, k = 1, 2, …, L, satisfaciendo la condición ½qk½≤ 1 para todo k. Es importante destacar que la respuesta del sistema también está acotada, incluso cuando la señal de entrada contiene uno o mas polos distintos sobre la circunferencia unidad. En vista de que una señal de entrada acotada puede tener polos sobre la circunferencia unidad, podría parecer que un sistema estable puede también tener polos sobre la circunferencia unidad. Sin embargo, éste no es el caso, ya que tal sistema produce una respuesta no acotada cuando se excita con una señal de entrada que también tiene un polo en la misma posición de la circunferencia unidad, lo que se ilustra en el siguiente ejemplo. Determine la respuesta al escalón del sistema causal descrito por la ecuación en diferencias

La función de transferencia es, en este caso,

a0 ≡ 1

( ) 0

1

0

0

1N

kk

kN

NN k

kk

bH za z

b z

a z

-

=

-

=

=+

=

å

å

( ) 1

11

H zz-

=-

( ) ( 1) ( )y n y n x n= - +

Page 39: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

37

Vemos que el sistema tiene un polo sobre la circunferencia unidad en z = 1. La transformada z de la señal de entrada x(n) = u(n) es

Que también contiene un polo en z = 1. Por tanto, la señal de salida tiene la transformada

Que contiene un polo doble en z = 1 La transformada Z inversa de Y(z) es

Secuencia que es una rampa. Así, pues, y(n) no está acotada, aunque lo esté la entrada. Por tanto, el sistema es inestable. Se demuestra claramente que la estabilidad BIBO requiere que los polos del sistema estén estrictamente dentro de la circunferencia unidad. Si todos los polos del sistema estén estrictamente dentro de la circunferencia unidad y la secuencia de excitación x(n) contiene uno o más polos que coinciden con los del sistema, la salida Y(z) contendrá polos de orden múltiple. Como se ha indicado anteriormente, tales polos de orden múltiple resultan en una secuencia de salida que contiene términos de la forma

Donde 0 ≤ b ≤ m – 1 y m es el orden del polo. Si ½pk½ < 1, estos términos decaen hacia cero a medida que n tiende a infinito porque el factor exponencial (pk)n domina al término nb. Por tanto, no existe ninguna señal de entrada acotada que pueda producir una salida no acotada si todos los polos del sistema están dentro de la circunferencia unidad. Finalmente, debemos decir que los únicos sistemas útiles que contiene polos sobre la circunferencia unidad son los osciladores digitales, a tales sistemas se les denomina marginalmente estables.

12. Análisis frecuencial de señales y sistemas La transformada de Fourier es una de las diferentes herramientas útiles en el análisis y diseño de sistemas LTI. Otra son las series de Fourier. Estas representaciones de señales implican básicamente la descomposición de las mismas en términos de componentes sinusoidales (o exponenciales complejas). Con esta descomposición, se dice que una señal esta representada en el dominio de la frecuencia.

( ) 1

11

X zz-

=-

( ) ( ) ( )

( )21

1

1

Y z H z x z

z-

=

=-

( ) ( ) ( )1y n n u n= +

( ) ( )nbk kA n p u n

Page 40: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

38

La mayor parte de las señales se pueden descomponer en la suma de componentes sinusoidales. Para la clase de señales periódicas, esta descomposición se denomina una serie de Fourier .Para la clase de señales de energía finita, la descomposición se denomina transformada de Fourier ambas descomposiciones son extremadamente importantes en el análisis de sistemas LTI porque la respuesta de un sistema LTI a una señal de entrada sinusoidal es una sinusoide de la misma frecuencia pero de diferente amplitud y fase. Además, la propiedad de linealidad de los sistemas LTI implica que la suma lineal de sus componentes sinusoidales a la entrada produce una suma similar de componentes sinusoidales a la salida, que difieren únicamente en las amplitudes y fases de las sinusoides en la entrada. Este comportamiento característico de los sistemas LTI hace que la descomposición sinusoidal de señales sea muy importante. Aunque son posibles muchas otras descomposiciones, sólo la clase de señales sinusoidales (o exponenciales complejas) posee esta interesante propiedad al pasar a través de un sistema LTI.

12.1 Análisis frecuencial de señales en tiempo continuo Sabemos que se puede usar un prisma para descomponer la luz blanca (luz solar) en los colores del arco iris. Isaac Newton empleo el termino espectro para describir las bandas continuas de colores producidas por este aparato. Para entender este fenómeno, Newton coloco otro prisma invertido con respecto al primero y demostró que los colores volvían a mezclarse para producir luz blanca, como en la figura 10b. Insertando una ranura entre los dos prismas y bloqueando la incidencia de uno o mas colores sobre el segundo prisma, mostró que la luz vuelta a combinar ya no era blanca. Por tanto, la luz que pasa a través del primer prisma es simplemente descompuesta en sus colores componentes sin ningún otro cambio. Sin embargo, sólo si volvemos a mezclar otra vez todos los colores obtenemos la luz original. Mas tarde, Joseph Fraunhofer (1787-1826), cuando realizaba mediciones de la luz emitida por el sol y las estrellas, descubrió que el espectro de la luz observada contenía líneas de colores diferentes. Unos años después, a mediados del siglo XVIII, Gustav Kirchhoff y Robert Bunsen descubrieron que cada elemento químico, cuando era calentado hasta la incandescencia, radiaba su propio color de luz. Como consecuencia, cada elemento químico se puede identificar mediante sus propias líneas espectrales. De la física sabemos que cada color se corresponde con una frecuencia específica del espectro visible. De hecho, la descomposición de la luz en sus colores en una forma de análisis frecuencial. El análisis frecuencial de una señal conlleva la separación de la señal en sus componentes (sinusoidales) frecuenciales. En lugar de luz, nuestras formas de onda son básicamente funciones temporales. El papel del prisma es desempeñado por las herramientas de análisis de Fourier que desarrollaremos: las series de Fourier y la transformada de Fourier. La recombinación de las componentes sinusoidales para reconstruir la señal original es básicamente un problema de síntesis de Fourier. El problema del análisis de señales es básicamente idéntico para el caso de una forma de onda y el de la luz procedente de compuestos químicos calentados. Como en el caso de compuestos químicos, formas de

Page 41: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

39

onda diferentes tienen diferentes espectros. Por ello, el espectro provee una “identidad” o firma de la señal en el sentido de que ninguna otra señal tiene el mismo espectro. Como veremos, este atributo está relacionado con el tratamiento matemático de las técnicas en el dominio de la frecuencia. Si descomponemos una forma de onda en sus componentes sinusoidales, de forma similar a como un prisma separa la luz blanca en sus diferentes colores, la suma de estas componentes sinusoidales resulta en la forma de onda original. Por otra parte, si alguna de estas componentes desaparece, el resultado es una señal diferente. En nuestro tratamiento del análisis frecuencial, desarrollaremos las herramientas matemáticas adecuadas para la descomposición de señales en componentes funcionales sinusoidales. Además, desarrollaremos las herramientas para la síntesis de una señal dada a partir de sus componentes frecuenciales. El objetivo básico al desarrollar herramientas de análisis frecuencial es proporcionar una representación matemática y pictórica para las componentes frecuenciales contenidas en una cierta señal. Como en la Física, el termino espectro se emplea al referirse al contenido en frecuencia de una señal. El proceso de obtención del espectro de una señal dada, usando las herramientas matemáticas básicas, se conoce como análisis frecuencial o espectral. A su vez, el proceso de determinación del espectro de una señal en la práctica, basado en mediciones reales de la señal, se denomina estimación espectral. Esta distinción es muy importante. En un problema practico, la señal que esta siendo analizada no conduce a una descripción matemática exacta. La señal suele ser portadora de cierta información que intentamos extraer. Si esta información que deseamos extraer se puede obtener directa o indirectamente a partir del contenido espectral de la señal, hacemos estimación espectral sobre la señal que porta la información y así obtenemos una estima del espectro de la señal. De hecho, podemos ver la estimación espectral como un tipo de análisis espectral realizado sobre señales obtenidas de fuentes físicas. Los instrumentos o programas de software empleados para obtener estimas espectrales de tales señales se conocen como analizadores espectrales.

12.2 Densidad espectral de energía de señales aperiódicas Sea x ( t ) una señal de energía finita con transformada de Fourier X(F). Su energía es

Que a su vez puede expresarse en términos de X (F) como sigue:

()ò¥

¥-

= dttxEx2

() ()

() ( )ò ò

ò¥

¥-

¥-

¥

¥-

úû

ùêë

é=

=

dFeFXdttx

dttxtxE

Ftj

x

p2*

*

Page 42: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

40

Por tanto concluimos que

(12.1)

Esta es la relación de Parseval para señales aperiódicas de energía finita y expresa el principio de conservación de la energía en los dominios del tiempo y la frecuencia. El espectro X(F) de una señal es, en general, complejo. En consecuencia, suele expresarse en forma polar como Donde X(F) es el módulo del espectro y q(F) su fase,

q(F) = ÐX(F)

Por otra parte, la cantidad (12.2)

que es el integrando de (12.1), representa la distribución de energía de la señal en función de la frecuencia. De aquí que Sxx(F) se denomine densidad espectral de energía de x(t). La integral de Sxx(F) sobre todas las frecuencias nos da la energía total de la señal. De otra forma, la energía de la señal x(t) sobre una banda de frecuencias F1 £ F £ F1 + DF es En (12.2) vemos que Sxx(F) es estrictamente real y no negativo. Dado que el espectro de fase de X(t) no se encuentra en Sxx(F), es imposible reconstruir la señal dada Sxx(F). Finalmente, como en el caso de las series de Fourier, puede demostrarse fácilmente que si la señal x(t) es real, entonces

(12.3)

(12.4)

Combinando (12.2) y (12.3) obtenemos

(12.5) En otras palabras, la densidad espectral de energía de una señal real tiene simetría par.

( ) ()ò ò¥

¥-

¥

¥-

-úû

ùêë

é= dtetxdFFX Ftj p2*

( )ò¥

¥-

= dFFX 2

() ( )ò ò¥

¥-

¥

¥-

== dFFXdttxEx22

( ) )()( FjeFXFX q=

( )òD+ FF

Fxx dFFS

1

1

( ) ( )2FXFSxx =

( ) ( )( ) ( )FXFX

FXFX-Ð=-Ð

=-

( ) ( )FSFS xxxx =-

Page 43: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

41

13. Muestreo en el dominio de la frecuencia: la transformada de Fourier discreta

Antes de introducir la DFT, consideraremos el muestreo de la transformada de Fourier de una secuencia aperiodica en el tiempo discreto. Así, estableceremos la relación entre la transformada de Fourier discreta y la DFT. Muestreo en el dominio de la frecuencia y reconstrucción de señales en tiempo discreto Recordemos que las señales aperiodicas de energía finita tienen espectros continuos. Consideremos dicha señal aperiodica en tiempo discreto x(n), con transformada de Fourier

(13.1)

supongamos que muestreamos X(w) periódicamente con un espacio en frecuencia dw radianes entre muestras sucesivas. Dado que X(w) es periódica de periodo 2p, solo necesitaremos las muestras del periodo fundamental, por conveniencia, tomaremos N muestras equidistantes en el intervalo 0 ≤ w < 2p, espaciadas dw = 2p / N, como se muestra en la figura 15. Si se considera en primer lugar la elección de N, el numero de muestras en el dominio de la frecuencia. Si calculamos (13.1) en w = 2pk / N, obtenemos

K = 0,1,…,N -1 (13.2)

El sumatorio (13.2) puede subdividirse en un mundo infinito de sumatorios, donde cada uno contiene N términos. Por lo tanto,

Si cambiamos el índice del sumatorio interior de n a n- lN e intercambiamos el orden de los sumatorios, obtenemos el resultado

(13.3) para k = 0,1,2,…, N-1.

2 12 /( ) ...

Nj kn N

n Nx n e p

--

=

+ +å

1 12 /( )

N Nj kn N

l n lNx n e p

¥ + --

=-¥ =

= +å å

( ) ( )j n

nX x n e

- w¥

=-¥

w = å

2 /2 ( ) j kn N

nX k x n e

Npp -¥

-

=-¥

æ ö=ç ÷è ø

å

1 12 / 2 /

0

2 ... ( ) ( )N

j kn N j kn N

n N nX k x n e x n e

Np pp - -

- -

=- =

æ ö= + +ç ÷è ø

å å

12 /

0

2 ( )N

j kn N

n lX k x n lN e

Npp - ¥

-

= =-¥

é ùæ ö= -ç ÷ ê úè ø ë ûå å

Page 44: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

42

La señal (13.4)

obtenida repitiendo periódicamente x(n) cada N muestras, es evidentemente periódica de periodo fundamental N. por tanto, puede desarrollarse en serie de Fourier como

n = 0,1,…, N – 1 (13.5)

con coeficientes de Fourier

k = 0,1,…, N – 1 (13.6)

Comparando (13.3) con (13.6), concluimos que

k = 0,1,…, N – 1 (13.7)

Por lo tanto,

n = 0,1,…, N – 1 (13.8)

la relación dada en (13.8) nos proporciona la reconstrucción de la señal periódica xp(n) a partir de las muestras del espectro X(w).sin embargo, no implica que se puedan recuperar X(w) ò x(n) a partir de las muestras. Para obtener esto necesitamos considerar la relación entre xp(n) y x(n). Dado que xp(n) es la extensión periódica de x(n) tal como se da en (13.4),esta claro que x(n) puede ser recuperada a partir de xp(n), si no existe aliasing en el dominio del tiempo, es decir, si x(n) esta limitada en tiempo a una duración menor que el periodo N de xp(n). En el caso de señales en tiempo continuo, es posible expresar el espectro X(w) directamente en términos de sus muestras X(2pk/N), k = 0,1,…, N – 1. Para obtener la formula de interpolación para X(w), suponemos que N ≤ L y, partiendo de (8.8) y, puesto que x(n)=xp(n), para 0 ≤ n ≤ N – 1, tenemos

0 ≤ n ≤ N – 1 (13.9) Si usamos (13.1) y sustituimos por x(n), obtenemos

(13.10)

( ) ( )Pl

X n x n lN¥

=-¥

= -å

( )1

2 /

0

Nj kn N

P kk

X n c e p-

=

12 /

0

1 ( )N

j kn Nk p

nc x n e

Np

-

=

= å

1 2kc X k

N Npæ ö= ç ÷

è ø

( )1

2 /

0

1 2Nj kn N

Pk

x n X k eN N

pp-

=

æ ö= ç ÷è ø

å

( )1

2 /

0

1 2Nj kn N

kx n X k e

N Npp-

=

æ ö= ç ÷è ø

å

1 12 / /

0 0

1 2( )N N

j kn N j n N

n kX X k e e

N Npp- -

- w

= =

é ùæ öw = ç ÷ê úè øë ûå å

Page 45: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

43

el sumatorio interior, entre corchetes en (3.10) representa la función de interpolación básica desplazada 2pk/N en frecuencia. De hecho, si definimos

(13.11)

entonces (13.10) se puede expresar como

N ≥ L (13.12)

la función de interpolación P(w) no es la conocida (sinq)/q sino su correspondiente periódica, y esto es debido a la naturaleza periódica de X(w). El desplazamiento de fase en (13.11) es consecuencia de que la señal x(n) sea una secuencia causal de duración finita N. La función / (N ) se representa en la figura 17 para N=5. Observamos que la función P(w) tiene la propiedad

(13.13)

En consecuencia, la formula de interpolación (13.12) nos da exactamente los valores de las muestras X (2pk/N) para w= 2pk/N. A cualquier otra frecuencia, la formula proporciona una combinación adecuada ponderada de las muestras del espectro original.

Figura 16 Muestreo en el dominio de la frecuencia de la transformada de Fourier.

1 1( 2 / )

0 0

2 1N Nj k N n

n kX k X e

N Npp- -

- w-

= =

é ùæ ö= ç ÷ê úè øë ûå å

12 /

0

1 1 1( )1

j NNj kn N

jk

eP eN N e

pw

w-

=

-w = =

( 1) / 2( / 2)( / 2)

j Nsen N eNsen

www

-=

1

0

2 2( )N

kX X k P k

N Np p

w-

=

æ ö æ öw = -ç ÷ ç ÷è ø è ø

å

1, 020, 1,2,..., 1

kP k

k NNp =ìæ ö= íç ÷ = -è ø î

( / 2)sen w( / 2)sen Nw

-p 0 kdw p ^ dw ^ 2p

X(kdw)

X(w)

w

Page 46: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

44

Figura 17 Representación de la función .

14. Estructuras para sistemas FIR En general, un sistema FIR se describe mediante la ecuación en diferencias

(14.1)

o, equivalentemente, la función de transferencia

(14.2)

Además, la respuesta impulsional del sistema FIR es idéntica a los coeficientes bk, es decir,

La longitud del filtro FIR se selecciona como M para ajustarse a la notación establecida en la literatura técnica. Presentaremos varios métodos para implementar un sistema FIR, empezando con la estructura más simple, llamada forma directa. Una segunda estructura es la realización en

1.0 0.8 0.6 0.4 0.2 -0.2

X (w)

-p p

w

N=5

( ) ( )/ 2 / / 2sen N Nsen wwé ù é ùë û ë û

( ) ( )1

0

M

kk

y n b x n k-

=

= -å

( )1

0

Mk

kk

H z b z-

-

=

( ),

0,nb

h nì

= íî

0 1n M£ £ -

en otro caso

Page 47: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

45

forma de cascada. La tercera estructura que describiremos es la realización de muestreo en frecuencia. Finalmente, presentamos una realización en celosía de un sistema FIR. En este estudio seguiremos la convención usada a menudo en la literatura técnica; usar h (n) para los parámetros de un sistema FIR. Adicionalmente a las cuatro realizaciones indicadas arriba, un sistema FIR se puede realizar mediante la DFT. En cierto modo la DFT se puede considerar como un procedimiento computacional se implementa en hardware, hay una estructura correspondiente para el sistema FIR. En la práctica, las implementaciones hardware de la DFT están basadas en el uso de los algoritmos de la transformada rápida de Fourier (FFT).

14.1 Estructura en forma directa La realización en forma directa se deriva directamente de la ecuación en diferencias no recursiva dada por ( 14.1) o, equivalentemente, por la convolución

(14.3)

La estructura se ilustra en la Figura 17. Observamos que esta estructura requiere M-1 posiciones de memoria para almacenar las M-1 entradas anteriores y tiene una complejidad de M multiplicaciones y M-1 sumas para cada punto de salida. Como la salida consiste en una combinación lineal ponderada de M-1 valores anteriores de la entrada y el valor actual de la entrada ponderada, la estructura en la Figura 17 se asemeja a una línea de retardos o, a un sistema transversal.

Fig. 17 Realización en forma directa para un sistema FIR

Consecuentemente, la realización en forma directa se denomina a menudo filtro transversal o filtro en línea de retardos. Cuando el sistema FIR tiene fase lineal la respuesta impulsional del sistema satisface las condiciones de simetría o antisimetría.

(14.4) Para tales sistemas el número de multiplicaciones se reduce de M a M / 2 para M par y a (M - 1) / 2 para M impar.

( ) ( ) ( )1

0

M

ky n h k x n k

-

=

= -å

1z- 1z- 1z- 1z-

+ + + + +

h(0) h(M-1) h(M-2) h(3) h(2) h(1)

y(n)

x(n)

( ) ( )1h n h M n= ± - -

Page 48: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

46

14.2 Estructuras en forma de cascada

La realización en cascada se obtiene de forma natural de la función de transferencia dada por (14.2). Es fácil factorizar H(z) en sistemas FIR de segundo orden, de tal forma que

(14.5)

donde (14.6)

y K es la parte entera de ( M + 1 ) / 2. El parámetro del filtro, b0, puede ser igualmente distribuido entre las K secciones del filtro, tal que b0 = b10b20…bk0 o, puede ser asignado a una sola sección del filtro. Los ceros de H (z) están agrupados en pares para producir los sistemas FIR de segundo orden de la forma (14.6). Siempre es deseable formar pares de raíces complejas conjugadas, tal que los coeficientes bki en (14.6) sean reales. Por otro lado, las raíces reales pueden ser agrupadas en pares de manera arbitraria. La realización en cascada con las secciones básicas de segundo orden se muestra en la Figura 18. En el caso de filtros FIR de fase lineal, la simetría en h(n) implica que los ceros de H(z) también exhiben una forma de simetría. En particular, si zk y zk

* son un par de ceros complejos, conjugados, entonces 1 / zk y 1 / zk

* son también un par de ceros complejos conjugados. Consecuentemente, si formamos secciones de cuarto orden de los sistemas FIR, ganamos alguna simplificación

(14.7) donde los coeficientes ck1 y ck2 son funciones de zk. Así, combinando los dos pares de polos para formar secciones de cuarto orden del filtro, hemos reducido el número de multiplicaciones de seis a tres, es decir, por factor del 50%.

Fig. 18 Realización en Cascada para un Sistema FIR.

( ) ( )1

k

kk

H z H z=

= Õ

( ) 1 20 1 2k k k kH z b b z b z- -= + + k = 1,2,….,K

( ) ( )( )( )( )1 * 1 1 1 *0

1 2 3 40 1 2 1

1 1 1 / 1 /k k k k k k

k k k k

H z c z z z z z z z z

c c z c z c z z

- - - -

- - - -

= - - - -

= + + + +

(b)

1z - 1z -

hk0 hk1

xk(n)

+ +

hk2

yk(n)=xk+1(n)

H1(z) H1(z) H1(z) x(n) = x1(n) y1(n) =

x2(n)

y2(n) =

x3(n) xk(n)

yk-1(n) = yk(n) = y(n)

(a)

Page 49: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

47

15. Estructura para sistemas IIR

Como en el caso de sistemas FIR, hay varios tipos de estructuras o realizaciones, incluyendo estructuras en forma directa, estructuras en forma de cascada, estructuras de celosía y estructuras en forma directa, estructuras en celosía escalonada. Además, los sistemas IIR por sí mismos conducen a una realización en forma paralela. Empezamos describiendo dos realizaciones en forma directa.

15.1 Estructuras en forma directa La función de transferencia racional que caracteriza un sistema IIR, puede verse como dos sistemas en cascada, esto es,

(15.1)

donde H1 (z) consiste en los ceros de H (z), y H2 (z) consiste en los polos de H(z),

(15.2)

y

(15.3)

Como H1(z) es un sistema FIR, su realización en forma directa se ilustró en la Figura 17. Uniendo el sistema todo polos en cascada con H1(z) obtenemos la realización en forma directa I, dibujada en la Figura 19. Esta realización requiere M + N + 1 multiplicaciones, M + N sumas, y M + N + 1 posiciones de memoria. Si el filtro todo polos H2(z) se coloca antes del filtro todo ceros H1(z), se obtiene una estructura más compacta. Recordemos que la ecuación en diferencias para el filtro todo polos es

(15.4)

Como w(n) es la entrada al sistema todo ceros, su salida es

(15.5)

Notamos que tanto (15.4) como (15.5) contienen versiones retardadas de la secuencia w(n). Consecuentemente, solo se requiere una línea de retardos simple o, un conjunto

( ) ( ) ( )1 2H z H z H z=

( )10

Mk

kk

H z b z-=

( )2

1

1

1N

kk

k

H za z-

=

=+å

( ) ( ) ( )1

N

kk

n a n k x nw w=

= - - +å

( ) ( )M

kk o

y n b n kw=

= -å

Page 50: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

48

simple de posiciones de memoria para almacenar los valores anteriores w(n). La estructura resultante que implementa (15.4) y (15.5) se denomina realización en forma directa II y se ilustra en la Figura 20. Esta estructura requiere M + N + 1 multiplicaciones, M + N sumas, y el máximo de M,N posiciones de memoria. Como la realización de forma directa II minimiza el número de posiciones de memoria, se denomina canónica. Sin embargo, debemos indicar que hay otras estructuras IIR que también poseen esta propiedad, así que esta terminología es, de alguna manera, injustificada.

Fig. 19 Realización en forma directa I

Las estructuras de las Figuras 19 y 20 se denominan “realizaciones en forma directa” porque se obtienen directamente de la función de transferencia H(z) sin ninguna reordenación. Desafortunadamente, ambas estructuras son extremadamente sensibles a la cuantificación de los parámetros, en general, y no son recomendadas en las aplicaciones prácticas.

z-1

z-1

z-1

z-1

+

+

+

+

+

b0

bM

bM-1

b3

b2

b1

x(n)

+

+

+

+

+

z-1

z-1

z-1

z-1

y(n)

-a1

-aN-1

-a3

-a2

-aN

Sistema todo-ceros Sistema todo-polos

Page 51: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

49

Fig. 20 Realización en forma directa II ( N = M )

15.2 Estructuras en forma de cascada Consideremos un sistema IIR de orden superior. Sin perdida de generalidad asumimos que N ≥ M. El sistema se puede factorizar en la cascada de sistemas de segundo orden tal que H(z) puede ser expresado

(15.6)

donde K es la parte entera de ( N + 1 ) / 2. Hk(z) tiene la forma general

(15.7)

Como en el caso de sistemas FIR basados en realizaciones en forma de cascada, el parámetro b0 puede ser distribuido igualmente entre las K secciones del filtro, de tal forma que bo = b10b20…bk0. Los coeficientes aki y bki en los subsistemas de segundo orden son reales. Esto implica que para formar los subsistemas de segundo orden o factores cuadráticos de (15.7), deberíamos agrupar un par de polos complejos conjugados y un par de ceros complejos conjugados. Sin embargo, el emparejamiento de dos polos complejos conjugados con un

( ) ( )1

K

kk

H z H z=

= Õ

( )1 2

0 1 21 2

1 21k k k

kk k

b b z b zH za z a z

- -

- -

+ +=

+ +

+

+

+

+

z-1

z-1

z-1

+

+

+

+

b0

b1

b2

bN-1

bN

-a1

-a2

-aN-1

-aN

x(n) y(n)

Page 52: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

50

par de ceros complejos conjugados o ceros reales para formar un subsistema del tipo dado en (15.7) se puede realizar de forma arbitraria. Además, cualquier par de ceros reales puede ser agrupado para formar un factor cuadrático. Consecuentemente, el factor cuadrático en el numerador de (15.7) puede consistir tanto en un par de raíces reales como en un par de raíces complejas conjugadas. El mismo razonamiento se aplica al denominador de (15.7). Si N > M, algunos de los subsistemas de segundo orden tienen coeficientes del numerador iguales a cero, es decir, o bk2 = 0 o bk1 = 0 o ambos bk2 = bk1 = 0 para algún k. Además, si N es impar, uno de los subsistemas, digamos Hk(z), debe tener ak2=0, de tal forma que el subsistema sea de primer orden. Para preservar la modularidad en la implementación de H(z), a menudo es preferible usar los subsistemas básicos de segundo orden en la estructura en cascada y tener algunos coeficientes iguales a cero en alguno de los subsistemas. Cada uno de los subsistemas de segundo orden con función de transferencia de la forma (15.7) se puede realizar tanto en forma directa I como en forma directa II o, en la forma traspuesta de la forma directa II. Como existen muchas maneras de emparejar los polos y los ceros de H(z) en secciones de segundo orden en cascada y varias maneras de ordenar los subsistemas resultantes, es posible obtener una gran variedad de realizaciones en cascada. Aunque todas las realizaciones en cascada son equivalentes en aritmética de precisión infinita, las diferentes realizaciones difieren significativamente cuando se implementan con aritmética de precisión finita. La forma general de la estructura en cascada se ilustra en la Figura 21. Si usamos la estructura en forma directa II para cada uno de los subsistemas, el algoritmo computacional para realizar el sistema IIR con función de transferencia H(z) se describe mediante el siguiente conjunto de ecuaciones.

Fig. 21 Estructura en cascada de sistemas de segundo orden y una realización de cada sección de segundo orden

(b)

H1(z) H2(z) x(n) = x1(n) x2(n)

y1(n) y2(n)

xk(n)

(a)

H1(z) y(n)

+

+

z-1

z-1

+

+

bk0

bk1 -ak1

xk(n)

yk(n)=xk+1(n)

-ak2 bk2

Page 53: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

51

(15.8)

k = 1,2,….,K (15.9)

k = 1,2,…, K (15.10)

(15.11)

Así, este conjunto de ecuaciones proporciona una descripción completa de la estructura en cascada, basada en las secciones en forma directa II.

16. Diseño de filtros digitales En el diseño de filtros selectivos en frecuencia, las características deseadas del filtro se especifican en el dominio de la frecuencia en función de la respuesta del filtro en magnitud y en fase. En el proceso del diseño del filtro determinamos los coeficientes de un filtro FIR o IIR causal que aproxima de forma precisa las especificaciones de respuesta en frecuencia. La elección del tipo de filtro a diseñar FIR o IIR depende de la naturaleza del problema y de las especificaciones de la respuesta en frecuencia deseada. En la práctica, los filtros FIR se emplean en problemas de filtrado donde hay un requisito de fase lineal dentro de la banda de paso del filtro. Si no existe este requisito se pueden emplear tanto un filtro IIR, principalmente por que su implementación involucra menos parámetros, requiere menos memoria y tiene menor complejidad computacional. Junto con nuestro estudio sobre el diseño de filtros digitales, describimos transformaciones en frecuencia en los dominios analógico y digital para transformar un filtro prototipo paso bajo en otro paso bajo, pasa banda, banda eliminada o paso alto. Hoy el diseño de filtros digitales FIR o IIR se facilita enormemente por la disponibilidad de numerosos programas de software.

16.1 Causalidad y sus implicaciones Consideremos el tema de causalidad en más detalle examinando la respuesta impulsional h(n) de un filtro ideal paso bajo con característica de respuesta en frecuencia

(16.1)

La respuesta impulsional de este filtro es

(16.2)

( ) ( )0y n x n=

( ) ( ) ( ) ( )1 2 11 2k k k k k kn a n a n y nw w w -= - - - - +

( ) ( ) ( ) ( )0 1 21 2k k k k k k ky n b n b n b nw w w= + - + -

( ) ( )y n yk n=

( ) 1,0,

H wì

= íî

c

c

w w

w w p

£

< £

( ),

,

c

c c

c

h n sen nn

wpw wp w

ìïï= íïïî

0

0

n

n

=

¹

Page 54: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

52

Es evidente que el filtro paso bajo ideal no es causal y por lo tanto no se puede realizar en la práctica. Una solución posible consiste en introducir un retardo grande n0 en h(n) y arbitrariamente hacer h(n) = 0 para n < n0. Sin embargo, el sistema resultante ya no tiene la característica de respuesta en frecuencia ideal. Efectivamente, si hacemos h(n) = 0 para n < n0, la expansión en series de Fourier de H(w) provoca el fenómeno de Gibbs. Teorema Si h(s) tiene energía finita y h(n) = 0 para n < 0,

(16.3)

Recíprocamente, si |H(w)| es cuadráticamente integrable y si la integral en (16.3) es finita, entonces podemos asociar a |H(w)| una respuesta en fase q(w), de tal forma que el filtro resultante con respuesta en frecuencia

es causal. Una conclusión importante que extraemos del teorema de Paley-Wiener es que la función de magnitud |H(w)| puede ser cero en algunas frecuencias, pero no puede ser cero sobre cualquier banda finita de frecuencias, ya que en ese caso la integral se hace infinita. Consecuentemente, cualquier filtro ideal es no causal. Aparentemente, la causalidad impone fuertes restricciones en un sistema lineal e invariante en el tiempo. Además de la condición de Paley-Wiener, la causalidad también implica una fuerte relación entre HR(w) y HI(w), las componentes real e imaginaria de la respuesta en frecuencia H(w). Para ilustrar esta dependencia descomponemos h(n) en una secuencia par y otra impar, esto es,

(16.4) donde

(16.5)

(16.6)

Ahora, si h(n) es causal, es posible recuperar h(n) de su parte par he(n) para 0 ≤ n ≤ ∞ o de su componente impar h0(n) para 1 ≤ n ≤ ∞. En efecto, se puede ver fácilmente que

n ≥ 0 (16.7) y

n ≥ 1 (16.8)

ln ( )H dp

p

w w-

< ¥ò

( ) ( ) ( )jH H e q ww w=

( ) ( ) ( )0eh n h n h n= +

( ) ( ) ( )12eh n h n h n= + -é ùë û

( ) ( ) ( )012

h n h n h n= - -é ùë û

( ) ( ) ( ) ( ) ( )2 0e eh n h n u n h nd= -

( ) ( ) ( ) ( ) ( )02 0h n h n u n h nd= +

Page 55: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

53

Como h0(n) = 0 para n = 0, no podemos recuperar h(0) de h0(n) y por lo tanto también debemos conocer h(0). En cualquier caso, esta claro que ho(n) = he(n) para n ≥ 1, así que hay una fuerte relación entre ho(n) y he(n). Si h(n) es absolutamente sumable (es decir, estable, estable BIBO: “Bounded Input-Bounded Output”), existe la respuesta en frecuencia H(w), y

(16.9) Además, si h(n) es real y causal, las propiedades de simetría de la Transformada de Fourier implica que

(16.10)

Como h(n) esta completamente especificada por he(n), H(w) se determina completamente si conocemos HR(w). Alternativamente, H(w) se determina completamente a partir de HI(w) y h(0). En resumen, HR(w) y HI(w)son interdependientes y no se pueden especificar independientemente si el sistema es casual. Equivalentemente, las respuestas en magnitud y fase de un filtro casual son independientes y, por lo tanto, no se pueden especificar independientemente. Dado HR(w) para una secuencia asociada real, par, y absolutamente sumable he(w), podemos determinar H(w). El problema básico de diseño de filtros digitales consiste en aproximar cualquiera de las características ideales de respuesta en frecuencia con un sistema que tenga la respuesta en frecuencia, seleccionando apropiadamente los coeficientes ak y bk.

16.2 Características de filtros prácticos selectivos en frecuencia. Los filtros ideales son no casuales y, por lo tanto, físicamente irrealizables para aplicaciones de procesado de señales en tiempo real. La causalidad implica que la característica de respuesta en frecuencia H(w) del filtro no puede ser excepto en un conjunto finito de puntos en el rango de frecuencias. Además, H(w) no puede tener un corte infinitamente abrupto desde la banda de paso a la banda de rechazo, es decir,, H(w) no puede caer desde uno hasta cero abruptamente. Aunque las características de respuesta en respuesta que poseen los filtros digitales ideales deben ser deseables, no son absolutamente necesarias en la mayoría de las aplicaciones practicas. Si relajamos estas condiciones es posible realizar filtros causales que aproximan los filtros ideales con tanta precisión como deseemos. En particular, no es necesario insistir que la magnitud | H(w)| sea constante en toda la banda de paso del filtro. Se puede generar un pequeño rizado en la banda de paso como se ilustra en la figura 22. Similarmente no es necesario que la respuesta del filtro | H(w)| sea cero en la banda de rechazo. También se

( ) ( ) ( )R IH H jHw w w= +

( ) ( )Fe Rh n H w¬¾®

( ) ( )Fo Ih n H w¬¾®

Page 56: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

54

puede tolerar un valor pequeño distinto de cero o un pequeño rizado en la banda de rechazo. La transición de la respuesta en frecuencia desde la banda de paso a la banda de rechazo define la banda de transición o región de transición del filtro, como se ilustra en la figura 8.2. la frecuencia wp define el limite superior de la banda de paso, mientras que la frecuencia ws define el principio de la banda de rechazo. Así, el ancho de la banda de transición es ws- wp. El ancho de banda de transición se denomina generalmente ancho de banda del filtro. Por ejemplo si el filtro es paso bajo con una frecuencia de corte superior wp, su ancho de banda es wp. Si existe un rizado en la banda de paso del filtro, su valor se denota por d1, y la magnitud | H(w)| varía entre los límites 1 ± d1. El rizado en la banda de rechazo del filtro se denota por d2. Para acomodar un gran margen dinámico en la gráfica de la respuesta en frecuencia de cualquier filtro es una práctica común usar escala logarítmica para la magnitud | H(w)|. Consecuentemente, el rizado en la banda de paso es 20log10d2. En cualquier problema de diseño de filtros podemos especificar: (1) el máximo rizado tolerable en la banda de paso, (2) el máximo rizado tolerable en la banda de rechazo, (3) la frecuencia de corte de la banda de paso wp , y (4) la frecuencia de corte de la banda de rechazo ws. Basados en estas especificaciones seleccionamos los parámetros ak y bk en la característica de la respuesta en frecuencia. El grado con el que H(w) aproxima las especificaciones depende en parte del criterio usado en la selección de los coeficientes del filtro ak y bk así como en los números ( M, N ) de coeficientes.

Fig. 22 Características de magnitud de filtros físicamente realizables.

Rizado en la banda de paso

Banda de

transición

Banda de rechazo

wp ws p w

0

d2

1 - d1 1 + d1

|H(w)|

d1 ~ Rizado en la banda de paso d2 ~ Rizado en la banda de rechazo wp ~ Borde de la banda de paso ws ~ Borde de la banda de rechazo

Page 57: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

55

17. Diseño de filtros FIR Filtros FIR simétricos y antisimétricos Un filtro FIR con longitud M, entrada x(n) y salida y(n) se describe por la ecuación en diferencias

(17.1)

Donde bk es el conjunto de coeficientes del filtro. Alternativamente, podemos expresar la secuencia de salida como la convolución de la respuesta impulsional del sistema h(n) con la señal de entrada. Así, tenemos

(17.2)

donde los límites superior e inferior en la convolución reflejan la causalidad y la característica de duración finita del filtro. Claramente (17.1) y (17.2) son idénticas en su forma y , por lo tanto, se deduce que bk = h(k), k = 0, 1, …, M – 1. El filtro también se puede caracterizar por su función de transferencia

(17.3)

la cual se puede ver como un polinomio de grado M – 1 en la variable z-1. Las raíces de este polinomio constituyen los ceros del filtro. Un filtro FIR tiene fase lineal si su respuesta impulsional satisface la condición

(17.4)

Cuando las condiciones de simetría y antisimetría en (17.4) se incorporan en (17.3), tenemos

(17.5)

( ) ( ) ( ) ( )

( )

0 1 1

1

0

1 1M

M

kk

y n b x n b x n b x n M

b x n k

-

-

=

= + - +×××+ - +

= -å

( ) ( ) ( )1

0

M

ky n h k x n k

-

=

= -å

( )1

0( )

Mk

kH z h k z

--

=

( ) ( )1h n h M n= ± - - n = 0, 1, …, M-1

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )2 11 20 1 2 2 1M MH z h h z h z h M z h M z- - - -- -= + + +×××+ - + -

( ) ( ) ( )( )3 / 2

1 / 2 1 2 / 2 1 2 / 2

0

1 ( )2

MM M k M k

n

Mz h h n z z-

- - - - - - -

=

ì ü-ï ïæ ö é ù= + ±í ýç ÷ ë ûè øï ïî þå

( ) ( ) ( ) ( )( )/ 2 1

1 / 2 1 2 / 2 1 2 / 2

0

MM M k M k

nz h n z z

-- - - - - - -

=

é ù= ±ë ûå

M impar

M par

Page 58: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

56

Ahora, si sustituimos z-1 por z en (17.3) y multiplicamos ambos lados de la ecuación resultante por z-(M-1), obtenemos

(17.6)

Este resultado implica que las raíces del polinomio H(z) son idénticas a las raíces del polinomio H(z-1). Consecuentemente, las raíces de H(z) deben ocurrir en pares recíprocos. En otras palabras, si z1 es una raíz o cero de H(z), entonces 1/z1 es también una raíz. Además, si la respuesta impulsional del filtro h(n) es real y compleja, las raíces deben ocurrir en pares complejos conjugados. Por lo tanto, si z1 es una raíz compleja, z1 también es una raíz. Como consecuencia de (17.6), H(z) también tiene un cero en 1/z1. Las características de respuesta en frecuencia de filtros FIR de fase lineal se obtienen evaluando (17.5) en la circunferencia unidad. Esta sustitución produce la expresión para H(w). Cuando h(n) = h (M – 1 - n), H(w) se puede expresar como

(17.7)

Donde Hr(w) es una función real de w y se puede expresar como

(17.8)

(17.9) La característica de fase del filtro para M impar y M par es

(17.10)

la respuesta impulsional es antisimétrica. Para M impar, el punto central de la antisimetría h(n) es n = (M – 1)/2. Consecuentemente, Sin embargo, si M es impar, cada término de h(n) tiene un término emparejado de signo opuesto. Es fácil demostrar que la respuesta en frecuencia de un filtro FIR con una respuesta impulsional antisimétrica se puede expresar como

(17.11)

( ) ( ) ( )1 1Mz H z H z- - - = ±

( ) ( ) [ ]( 1) / 2 / 2j w MrH w H w e p- - +=

( )( )

( )( )

3 /2

0

/2 1

0

1 12 ( )cos2 2

12 ( )cos2

M

rn

M

rn

M MH w h h n w n

MH w h n w n

-

=

-

=

- -æ ö æ ö= + -ç ÷ ç ÷è ø è ø

-æ ö= -ç ÷è ø

å

å

M impar M par

( )

1 ,2

1 ,2

Mww

Mwq

p

ì -æ ö- ç ÷ïï è ø= í-æ öï- +ç ÷ï è øî

Si Hr(w) > 0 Si Hr(w) < 0

1 02

Mh -æ ö=ç ÷è ø

( ) ( )1 / 2 / 2( ) j w MrH w H w e p- - +é ùë û=

Page 59: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

57

donde

(17.8)

(17.9) La característica de fase del filtro para M par y M impar es

(17.10)

Estas fórmulas de respuesta en frecuencia generales se pueden usar para diseñar filtros FIR de fase lineal con respuestas impulsionales simétricas y antisimétricas. Notamos que para un filtro simétrico h(n), el número de coeficientes del filtro que especifican la respuesta en frecuencia es (M + 1) /2 cuando M es impar o M / 2 cuando M es par. Por otro lado, si la respuesta impulsional es antisimétrica

De tal forma que hay (M – 1)/2 coeficientes del filtro cuando M es impar y M/2 coeficientes cuando M es par que tienen que ser especificados. La elección de una respuesta impulsional simétrica o antisimétrica depende de la aplicación. Como veremos más tarde, una respuesta impulsional antisimétrica depende de la aplicación. Como veremos más tarde, una respuesta impulsional simétrica se adapta más a otras. En resumen el problema de diseño de filtros FIR es simplemente el de determinar M coeficientes h(n), n = 0, 1, …, M - 1, a partir de una especificación de la respuesta en frecuencia deseada Hd(w) del filtro FIR.

18. Diseño de filtros IIR a partir de filtros analógicos Al igual que en el diseño de filtros FIR, hay varios métodos que se pueden utilizar para diseñar filtros digitales que tengan una respuesta impulsional de duración infinita. El diseño de filtros analógicos es un campo maduro y bien desarrollado, así que no es sorprendente que empecemos el diseño de un filtro digital en el dominio analógico y que después convirtamos el diseño al dominio digital. Un filtro analógico se puede describir por su función de transferencia

( )( )

( )( )

3 / 2

0

/ 2 1

0

12 ( )2

12 ( )2

M

rn

M

rn

MH w h n senw n

MH w h n senw n

-

=

-

=

-æ ö= -ç ÷è ø

-æ ö= -ç ÷è ø

å

å

M impar M par

( )

1 ,2 23 1 ,2 2

Mww

Mw

p

qp

ì -æ ö- ç ÷ïï è ø= í-æ öï - ç ÷ï è øî

Si Hr(w) > 0 Si Hr(w) < 0

1 02

Mh -æ ö=ç ÷è ø

Page 60: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

58

(18.1)

donde ak y βk son los coeficientes del filtro, o por su respuesta impulsional, que se relaciona con Ha(s) mediante la transformada de Laplace

(18.2)

Alternativamente, el filtro analógico que tiene la función de transferencia racional, H(s), dada (18.1), se puede describir mediante la ecuación diferencial lineal con coeficientes constantes

(18.3)

donde x(t) denota la señal de entrada e y(t) denota la salida del filtro. Cada una de estas tres caracterizaciones equivalentes de un filtro analógico conduce a métodos alternativos para convertir el filtro al dominio digital. Recordemos que un sistema analógico lineal invariante en el tiempo con función de transferencia H(s) es estable si todos sus polos yacen en la mitad izquierda del plano s. Consecuentemente, si la técnica de conversión es efectiva debería tener las siguientes propiedades deseables:

1. El eje jΩ en el plano s debería corresponderse a la circunferencia unidad en el plano z. Así, habrá una relación directa entre las dos variables de frecuencia en los dos dominios.

2. El semiplano izquierdo (LHP) del plano s se debería corresponder con el interior de la circunferencia unidad en el plano z. Así, un filtro analógico estable se convertirá en un filtro digital estable.

Recuérdese que un filtro de fase lineal debe tener una función de transferencia que satisfaga la condición

(18.4)

donde z-N representa un retardo de N unidades de tiempo. Pero si éste fuera el caso, el filtro tendría un polo imagen especular fuera de la circunferencia unidad para cada polo dentro de la circunferencia unidad; por lo tanto el filtro sería inestable. Consecuentemente, un filtro FIR causal y estable no puede tener fase lineal. Si se prescinde de la restricción de realizabilidad física es posible obtener un filtro IIR de fase lineal, al menos en principio. Esta aproximación supone la realización de una inversión en el tiempo de la señal de entrada x(n), pasando x(-n) a través de un filtro digital H(z), invirtiendo en el tiempo la salida de H(z), y finalmente, pasando el resultado a través de H(z) nuevamente. Este procesado de señal es computacional mente molesto y no parece

( ) ( )( )

0

0

Mk

kk

a Nk

kk

sB sH s

A s s

b

a

=

=

= =å

å

( ) ( ) staH s h t e dt

¥ -

-¥=ò

( ) ( )0 0

k kN M

k kk kk k

d y t d x tdt dt

a b= =

=å å

( ) ( )1NH z z H z- -= ±

Page 61: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

59

proporcionar ventajas sobre los filtros FIR de fase lineal. Consecuentemente, cuando una aplicación requiere un filtro de fase lineal, debería ser un filtro FIR. En el diseño de filtros IIR, especificaremos las características deseadas del filtro sólo para la respuesta en magnitud. Esto no significa que consideremos que la respuesta en fase no es importante. Como las características de magnitud y fase están relacionadas, especificamos las características deseadas de magnitud y aceptamos la respuesta en fase que se obtiene a partir de la metodología de diseño.

19. Muestreo y reconstrucción de señales Representación de señales paso bada Supóngase que una señal real x(t) tiene un contenido en frecuencia concentrado en una banda estrecha de frecuencias en la vencidad de una frecuencia Fc, como se muestra en la figura 23. Tal señal se puede escribir como

(19.1) Donde X(F) es la transformada de Fourier de x(t) y V(F) es la función escalón unidad. La expresión equivalente en el dominio del tiempo para (19.1) es

(19.2) La señal x+(t) se denomina la señal analítica o la pre-envolvente de x(t), Notamos que F-1[X(F)] = x(t) y

(19.3)

Por lo tanto,

(19.4) Definimos x(t) como

(19.5)

( ) ( ) ( )2X F V F X F+ =

() ( ) 2j Ftx t X F e dFp¥

+ +-¥=ò

( ) ( )1 12 *F V F F X F- -= é ù é ùë û ë û

( ) ( )1 2 jF V f tt

dp

- = +é ùë û

( ) ( ) ( )

( ) ( )

*

1 *

jx t t x tt

x t j x tt

dp

p

+é ù= +ê úë û

= +

( ) ( )

( )

1 *

1

x t x tt

xd

t

pt

tp t

Ù

¥

=

=-ò

Page 62: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

60

La señal x(t) se puede ver como la salida de un filtro con respuesta impulsional

(19.6)

Cuando se excita con la señal de entrada x(t). Este filtro se denomina un transformador de Hilbert. La respuesta en frecuencia de este filtro es simplemente

(19.7) Observamos que ½H(F)½= 1 y que la respuesta en fase q(F) = 1/2p para F > 0 y q(F) = 1/2p para F < 0. Consecuentemente, este filtro es básicamente un desplazador de fase de 90º para todas las frecuencias de la señal de entrada y es parecido al filtro transformador de Hilbert en tiempo discreto. La señal analítica x+(t) es una señal paso banda. Podemos obtener una representación paso bajo equivalente realizando una traslación en frecuencia de X+(F). Así, definimos X1(F) como

(19.8) La relación equivalente en el dominio del tiempo es

(19.9) O, equivalentemente

(19.10) En general, la señal x1(t) es compleja, y se puede expresar como

(19.11) Si sustituimos x1(t) en (19.10) e igualamos las partes real e imaginaria en cada lado, obtenemos las relaciones

( ) 1 ,h ttp

= - ¥ < t < ¥

( ) ( ) 2

21 1

0

j Ft

Ft

H F h t e dt

e dtt

j

j

p

p

p

¥ -

¥ -

=

=

-ìï= íïî

ò

ò(F > 0)

(F = 0)

(F < 0)

( ) ( )1 cX F X F F+= +

( ) ( )( ) ( )

21

2

c

c

j F t

j F t

x t x t e

x t jx t e

p

p

-+

-

=

= +é ùë û

( ) ( ) ( ) 21

cj F tx t jx t x t e p+ =

( ) ( ) ()1 c sx t u t ju t= +

( ) ( ) ( )

( ) ( ) ( )

cos 2 2

2 cos2

c c s c

c c s c

x t u t F t u t sen F t

x t u t sen F t u t F t

p p

p pÙ

= -

= +

(19.12) (19.13)

Page 63: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

61

La expresión (9.12) es la forma deseada para la representación de una señal paso banda. Las componentes de señal en baja frecuencia uc(t) y us(t) se pueden ver como modulaciones de amplitud impresas en las componentes portadoras cos2pFct y seno2pFct, respectivamente. Como estas componentes portadoras están en cuadratura de fase, uc(t) y us(t) también se denominan las componentes en cuadratura de la señal paso banda x(t). Otra representación de la señal en (9.12) es

(19.14)

Donde Re denota la parte real de la cantidad compleja entre corchetes. La señal paso bajo x1(t) se denomina normalmente la envolvente compleja de la señal x(t), y es básicamente la señal paso bajo equivalente. Finalmente, una tercera representación posible de una señal paso se obtiene expresando x1(t) como

(19.15) donde

(19.16)

(19.17) Entonces

(19.18) La señal a(t) se denomina la envolvente de x(t), y q(t) se denomina la fase de x(t). Consecuentemente, (9.1.12), (9.1.14), y (9.1.18) son representaciones equivalentes de señales paso banda. La transformada de Fourier de x(t) es

(19.19)

( ) ( ) ( ) ( )

2

21

Re

Re

c

c

j F tc s

j F t

x t u t ju t e

x t e

p

p

= +é ùë û

é ù= ë û

( ) ( ) ()1

j tx t a t e q=

( ) ( ) ()

( ) ( )( )

2 2

1tan

c s

s

c

a t u t u t

u tt

u tq -

= +

=

( ) ( )

( ) ()

( ) ( )

21

2

Re

Re

cos 2

c

c

j F t

j F t t

c

x t x t e

a t e

a t F t t

p

p q

p q

+é ùë û

é ù= ë ûé ù= ë û

= +é ùë û

( ) ( )

( )

2

2 21Re c

j Ft

j F t j Ft

X F x t e dt

x t e e dt

p

p p

¥ -

¥ -

=

é ù= ë û

òò

Page 64: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

62

El uso de la identidad

(19.20)

En (19.19) produce el resultado

(19.21) Donde X1(F) es la transformada de Fourier de x1(t). Esta es la relación básica entre el espectro de la señal real paso banda x(t) y el espectro de la señal equivalente paso bajo x1(t). Observando (9.1.21) esta claro que el espectro de la señal paso banda x(t) se puede obtener a partir del espectro de la señal compleja x1(t) mediante una traslación en frecuencia. Para ser mas preciso, supóngase que el espectro de la señal x1(t) es como se muestra en la figura 9,2(a). Entonces el espectro X(F) para frecuencias positivas es simplemente X1(F) trasladado en frecuencias negativas se obtiene reflejando X1(F) sobre F = 0 para obtener X1(-F), conjugando X1(-F) para obtener X1(-F), trasladando X1(-F) en frecuencia hacia la izquierda por Fc, y escalando el resultado por ½. La reflexión y conjugación de X1(F) para las componentes de frecuencia negativa del espectro resulta en una magnitud del espectro ½X(F)½ que es par y una fase del espectro ÐX(F) que es impar como se muestra en la Figura 9.2(b). Estas propiedades de simetría se deben a que la señal x(t) es real. Sin embargo, no se aplican al espectro de la señal compleja equivalente X1(t).

19.1 Muestreo de señales paso banda Una señal en tiempo continuo con frecuencia superior B se puede representar unívocamente mediante muestras tomadas a la frecuencia de muestreo mínima (frecuencia de Nyquist) de 2B muestras por segundo. Sin embargo, si la señal es paso banda con componentes de frecuencia en B1 ≤ F ≤ B2, una aplicación ciega del teorema de muestreo nos proporcionaría un muestreo de la señal a una tasa de 2B2 muestras por segundo. Si ése fuera el caso y B2 fuera una frecuencia extremadamente alta, podría ser ciertamente ventajoso realizar un desplazamiento en frecuencia de la señal paso banda por una cantidad

(19.22)

Y muestrear la señal equivalente paso bajo. Este desplazamiento en frecuencia se puede conseguir multiplicando la señal paso banda en (19.12) por las componentes en cuadratura cos 2pFct y sen 2pFct y filtrando paso bajo los productos para eliminar las componentes de

( ) ( )*1Re2

x x x= +

( ) ( ) ( )

( ) ( )

2 2* 21 1

*1 1

12

12

c cj F t j F t j Ft

c c

X F x t e x t e e dt

X F F X F F

p p p¥ - -

-¥é ù= +ë û

é ù= - + - -ë û

ò

1 2

2cB BF +

=

Page 65: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

63

señal en 2Fc. Claramente, la multiplicación y el filtrado subsecuente se realizan primero en el dominio analógico y después las salidas de los filtros se muestrean. La señal equivalente resultante paso bajo tiene un ancho de banda B/2, donde B = B2 – B1. Consecuentemente, se puede representar unívocamente a una tasa de B muestras por segundo para cada una de las componentes en cuadratura. Así, el muestreo se puede realizar en cada una de las salidas del filtro paso bajo a la tasa de B muestras por segundo. Por lo tanto, la tasa resultante es 2B muestras por segundo. En vista de que la conversión en frecuencia a paso bajo nos permite reducir la tasa de muestreo a “B muestras por segundo, debería ser posible muestrear la señal paso banda a una tasa comparable. Supóngase que la frecuencia superior Fc + B/2 es un múltiplo del ancho de banda B (esto es, Fc + B/2 = kB), donde k es un entero positivo. Si muestreamos x(t) a la tasa 2B = 1/T muestras por segundo, tenemos

(19.23)

donde el ultimo paso se obtiene substituyendo Fc = kB – B/2 y T = ½B. Para n par, digamos n = 2m,(19.23) se reduce a

(19.24)

Donde T1 = 2T = 1/ B. para n impar, digamos n = 2m – 1,(9.1.23) se reduce a

(19.25)

Consecuentemente, las muestras pares de x(t), que ocurren a la tasa de B muestras por segundo, producen muestras de la componente de la señal uc(t). las muestra impares de x(t), que también ocurren a la tasa de B muestras por segundo, producen muestras de la señal pasa bajo us(t). Ahora, las muestras uc(mT1) y las muestras us(mT1- T1/2) se pueden usar para reconstruir las señales equivalentes pasa bajo. Así, de acuerdo con el teorema de muestreo para señales pasa bajo, con T1 = 1/B,

(19.26)

(19.27)

( ) ( ) ( )

( ) ( ) ( ) ( )cos 2 2

2 1 2 1cos

2 2

c c s c

c s

x nT u nT F nT u nT sen F nT

n k n ku nT u nT sen

p p

p p

= -

- -= -

( ) ( ) ( ) ( ) ( )1 1 1(2 ) cos 2 1 1 mc cx mT x mT u mT m k u mTpº = - = -

( ) ( ) 11 11 12 1

2 2m k

sT Tx mT T x mT u mT + +æ ö æ ö- º - = - -ç ÷ ç ÷

è ø è ø

( ) 1 11

1 1

( / )( )( )( / )( )c c

m

sen T t mTu t u mTT t mTp

p

¥

=-¥

-=

1 1 1 11

1 1 1

( / )( / 2)( )2 ( )( / 2)c s

m

T sen T t mT Tu t u mTT t mT Tpp

¥

=-¥

- +æ ö= -ç ÷ - +è øå

Page 66: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

64

Además, las relaciones (19.24) y (19.25) nos permiten expresar uc(t) y us(t) directamente en función de las muestras de x(t). Ahora, ya que x(t) se expresa como

(19.28)

la sustitución de (19.27), (19.26), (19.25), y (19.24) en (19.28) produce

(19.29) Pero

Y

Con estas sustituciones, x(t) se reduce a

(19.30)

donde T = 1/2B. Ésta es la formula de reconstrucción deseada para la señal paso banda x(t), con muestras tomadas a una tasa de 2B muestras por segundo, para el caso especial en el que la frecuencia superior de la banda Fc+B/2, definamos la parte entera del cociente entre Fc+B/2 y B como

(19.31)

Manteniendo la frecuencia de corte superior Fc+B/2 constante, incrementamos el ancho de banda de B a B´ de tal forma que

(19.32)

Además, es conveniente definir una nueva frecuencia central para la señal con ancho de banda incrementado como

(19.33)

Claramente, el ancho de banda incrementado B´ incluye el espectro de la señal original del ancho de banda B.

( ) ( ) ( )cos 2 2c c s cx t u t F t u t sen F tp p= -

( ) ( ) ( ) ( )( )( )( ) ( ) ( )( ) ( )( )

( )( )/ 2 2 / 2 2

1 2 2 1 2 1 2/ 2 2 / 2 2

m m kc c

m

sen T t mT sen T t mT Tx t x mT sen F t x m T sen F t

T t mT T T t mT Tp p

p pp p

¥+

=-¥

ì ü- - +ï ï= - + - -í ý- + - +ï ïî þå

( ) ( )1 cos 2 cos 2 2mc cF t F t mTp p- = -

( ) ( ) ( )( )( )( ) ( )/ 2

cos 2/ 2 c

m

sen T t mTx t x mT F t mT

T t mTp

pp

¥

=-¥

-= -

( ) ( )1 2 cos 2 2m kc csen F t F t mT Tp p+- = - +

/ 2cF BrB+é ù= ê úë û

/ 2´

cF B rB+

=

´´2 2C CB BF F= + -

Page 67: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

65

Ahora la frecuencia de corte superior Fc + B/2 es un múltipla de B´. Consecuentemente, la formula de reconstrucción de la señal en (19.30) se mantiene con Fc remplazado por F´c y T remplazado por T´, donde T´= ½B´, es decir,

(19.34)

Esto prueba que x(t) se puede representar por muestras tomadas a la tasa 1/T´ = 2Br´,donde r´ es el cociente

(19.35) y r =[r´ ]. Observamos que cuando la frecuencia de corte superior Fc+B/2 no es múltiplo entero del ancho de banda B, la tasa de muestreo para la señal pasa banda se debe incrementar por el factor r´/r. Sin embargo, nótese que mientras Fc/B crece, la relación r´/r tiende a la unidad. Consecuentemente, el porcentaje de incremento en la tasa de muestreo tiende a cero. La derivación dada arriba también ilustra el hecho de que las componentes de la señal paso bajo uc(t) se puedan expresar en función de las función de las muestras de la señal paso banda. En efecto, a partir de (19.24),(19.25),(19.26), y (19.27), obtenemos el resultado

(19.36)

y

(19.37)

donde r =[r´]. una señal paso banda se puede representar unívocamente por muestras tomadas a una tasa

2B ≤ Fs <4B donde B es el ancho de banda de la señal. El limite inferior se aplica cuando la frecuencia superior Fc + B/2 es un múltiple de B. el limite superior en Fs se obtiene bajo las peores condiciones cuando r = 1 y r´» 2.

( ) ( ) ( )( )( )( ) ( )/ 2 ´ ´

´ cos 2 ´ ´/ 2 ´ ´ c

n

sen T t mTx t x nT F t mT

T t mTp

pp

¥

=-¥

-= -

/ 2 1´2

c CF B FrB B+

= = +

( ) ( ) ( ) ( )( )( )( )

/ 2 ´ 2 ´1 2 ´

/ 2 ´ 2 ´n

cn

sen T t nTu t x nT

T t nTp

p

¥

=-¥

-= -

( ) ( ) ( ) ( )( )( )( )

1 / 2 ´ 2 ´ '1 2 ´ ´

/ 2 ´ 2 ´ ´n r

sn

sen T t nT Tu t x nT T

T t nT Tp

p

¥+ +

=-¥

- += - -

- +å

Page 68: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

66

ANEXO 1 Programa para diseñar filtros digitales %PROGAMA PARA DISEÑAR FILTROS DIGITALES %ELECCION DEL TIPO DE FILTRO disp('SELECCIONA EL TIPO DE FILTRO A DISEÑAR') disp('FILTRO PASA-BAJAS FIR (1)') disp('FILTRO PASA-ALTAS FIR(2)') disp('FILTRO PASA-BANDA FIR(3)') disp('FILTRO RECHAZA-BANDA FIR(4)') disp('FILTRO PASA-BAJAS IIR (11)') disp('FILTRO PASA-ALTAS IIR(22)') disp('FILTRO PASA-BANDA IIR(33)') disp('FILTRO RECHAZA-BANDA IIR(44)') opcionfil=input('INDICA EL QUE SEA DE TU AGRADO: '); switch (opcionfil) case 1 %INTRODUCCION DE DATOS DE DISEÑO fp=input('INDICA LA FRECUENCIA DE PASO fp: '); fs=input('INDICA LA FRECUENCIA DE RECHAZO fs: '); F=input('INDICA LA FRECUENCIA DE MUESTREO: '); App=input('INDICA EL FACTOR DE RUIDO App: '); Fsenial=input('INDICA LA FRECUENCIA DE LA SEÑAL DE PRUEBA: '); %CALCULO DE PARAMETROS INICIALES T=1/F; Fn=1; fc=0.5*(fp+fs); fcn=fc/F; deltaF=fs-fp; deltaP= (power(10,0.05*App)-1) / (power (10,0.05*App)+1); As=(-20 * log10 ( deltaP ) ); if As>21 D=(As-7.95)/14.36; else D=0.9222; end %CALCULO DEL ORDEN DEL FILTRO N=( (F*D) / deltaF ) + 1; N=N-rem(N,1); if rem(N,2) == 0 N=N+1; end N

Page 69: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

67

hc=zeros(1,N); retardos=zeros(1,N); %SELECCION DE LA VENTANA disp('SELECCIONA LA VENTANA') disp('VENTANA RECTANGULAR (1)') disp('VENTANA BLACKMAN (2)') disp('VENTANA HAMMING (3)') opwin1=input('SELECCION: '); switch (opwin1) case 1 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(2*fcn)/Fn; end if n ~= 0 hd=((2*fcn)/Fn)*((sin( (2*3.1416*fcn*n)/Fn ))/(( (2*3.1416*fcn*n)/Fn ))); end %CALCULO DE LOS COEFICIENTES RECTANGULARES ar = 1; h(n+1)= hd*ar; end case 2 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(2*fcn)/Fn; end if n ~= 0 hd=((2*fcn)/Fn)*((sin( (2*3.1416*fcn*n)/Fn ))/(( (2*3.1416*fcn*n)/Fn ))); end %CALCULO DE LOS COEFICIENTES BLACKMAN ab = 0.42+(0.5*cos((2*3.1416*n)/(N-1)))+(0.08*cos((4*3.1416*n)/(N-1))); h(n+1)= hd*ab; end case 3 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0

Page 70: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

68

hd=(2*fcn)/Fn; end if n ~= 0 hd=((2*fcn)/Fn)*((sin( (2*3.1416*fcn*n)/Fn ))/(( (2*3.1416*fcn*n)/Fn ))); end %CALCULO DE LOS COEFICIENTES HAMNNING ah = 0.54 + (0.46*cos( ( 2*3.1416*n ) / ( N-1 ) )); h(n+1)= hd*ah; end end bandera=0; for f=0:0.007:0.5 bandera=bandera+1; Mag_resp_frec = 0; for n=2:1: ((N-1) /2 )+1 Mag_resp_frec=Mag_resp_frec + (h(n)*cos(2*3.1416*f*(n-1))); end Mag_db(bandera)=20*log10(abs(h(1)+(2*Mag_resp_frec))); frec(bandera)=f; end subplot(2,2,1); plot(frec.*F,Mag_db); %Arreglo de los coeficientes causales for n=1:1:( N - 1 ) / 2 hc( ( ( N - 1) / 2 ) + n + 1 ) = h( n + 1); hc( ( ( N - 1) / 2 ) + 1 - n ) = h( n + 1); end hc( ( ( N - 1) / 2 ) + 1) = h(1); subplot(2,2,2) stem(hc) n=1; for t=0:T:(1/Fsenial)*8; y(n)=sin(2*3.1416*Fsenial*t); tiempo(n)=t; for m=1:1:N-1 retardos(N-m+1)=retardos(N-m); end

Page 71: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

69

retardos(1)=y(n); senial_filtrada(n)=0; for m=2:1:N+1 senial_filtrada(n)=senial_filtrada(n) + (hc(m-1)*retardos(m-1)); end n=n+1; end subplot(2,2,3); plot(tiempo,senial_filtrada,tiempo,y); case 2 %INTRODUCCION DE DATOS DE DISEÑO fp=input('INDICA LA FRECUENCIA DE PASO fp: '); fs=input('INDICA LA FRECUENCIA DE RECHAZO fs: '); F=input('INDICA LA FRECUENCIA DE MUESTREO: '); App=input('INDICA EL FACTOR DE RUIDO App: '); Fsenial=input('INDICA LA FRECUENCIA DE LA SEÑAL DE PRUEBA: '); %CALCULO DE PARAMETROS INICIALES T=1/F; Fn=1; fc=0.5*(fp+fs); fcn=fc/F; deltaF=fp-fs; deltaP= (power(10,0.05*App)-1) / (power (10,0.05*App)+1); As=(-20 * log10 ( deltaP ) ); if As>21 D=(As-7.95)/14.36; else D=0.9222; end %CALCULO DEL ORDEN DEL FILTRO N=( (F*D) / deltaF ) + 1; N=N-rem(N,1); if rem(N,2) == 0 N=N+1; end N hc=zeros(1,N); retardos=zeros(1,N); %SELECCION DE LA VENTANA disp('SELECCIONA LA VENTANA') disp('VENTANA RECTANGULAR (1)') disp('VENTANA BLACKMAN (2)') disp('VENTANA HAMMING (3)') opwin1=input('SELECCION: ');

Page 72: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

70

switch (opwin1) case 1 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=1-((2*fcn)/Fn); end if n ~= 0 hd=((-2*fcn)/Fn)*((sin( (2*3.1416*fcn*n)/Fn ))/(( (2*3.1416*fcn*n)/Fn ))); end %CALCULO DE LOS COEFICIENTES RECTANGULARES ar = 1; h(n+1)= hd*ar; end case 2 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=1-((2*fcn)/Fn); end if n ~= 0 hd=((-2*fcn)/Fn)*((sin( (2*3.1416*fcn*n)/Fn ))/(( (2*3.1416*fcn*n)/Fn ))); end %CALCULO DE LOS COEFICIENTES BLACKMAN ab = 0.42+(0.5*cos((2*3.1416*n)/(N-1)))+(0.08*cos((4*3.1416*n)/(N-1))); h(n+1)= hd*ab; end case 3 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=1-((2*fcn)/Fn); end if n ~= 0 hd=((-2*fcn)/Fn)*((sin( (2*3.1416*fcn*n)/Fn ))/(( (2*3.1416*fcn*n)/Fn ))); end %CALCULO DE LOS COEFICIENTES HAMNNING ah = 0.54 + (0.46*cos( ( 2*3.1416*n ) / ( N-1 ) )); h(n+1)= hd*ah; end

Page 73: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

71

end %Respuesta en frecuencia bandera=0; for f=0:0.007:0.5 bandera=bandera+1; Mag_resp_frec = 0; for n=2:1: ((N-1) /2 )+1 Mag_resp_frec=Mag_resp_frec + (h(n)*cos(2*3.1416*f*(n-1))); end Mag_db(bandera)=20*log10(abs(h(1)+(2*Mag_resp_frec))); frec(bandera)=f; end subplot(2,2,1); plot(frec.*F,Mag_db); %Arreglo de los coeficientes causales for n=1:1:( N - 1 ) / 2 hc( ( ( N - 1) / 2 ) + n + 1 ) = h( n + 1); hc( ( ( N - 1) / 2 ) + 1 - n ) = h( n + 1); end hc( ( ( N - 1) / 2 ) + 1) = h(1); subplot(2,2,2) stem(hc) n=1; for t=0:T:(1/Fsenial)*8; y(n)=sin(2*3.1416*Fsenial*t); tiempo(n)=t; for m=1:1:N-1 retardos(N-m+1)=retardos(N-m); end retardos(1)=y(n); senial_filtrada(n)=0; for m=2:1:N+1 senial_filtrada(n)=senial_filtrada(n) + (hc(m-1)*retardos(m-1)); end n=n+1; end

Page 74: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

72

subplot(2,2,3); plot(tiempo,senial_filtrada,tiempo,y); case 3 %INTRODUCCION DE DATOS DE DISEÑO fp1=input('INDICA LA FRECUENCIA DE PASO BAJA fp1: '); fs1=input('INDICA LA FRECUENCIA DE RECHAZO BAJA fs1: '); fp2=input('INDICA LA FRECUENCIA DE PASO ALTA fp2: '); fs2=input('INDICA LA FRECUENCIA DE RECHAZO ALTA fs2: '); F=input('INDICA LA FRECUENCIA DE MUESTREO: '); App=input('INDICA EL FACTOR DE RUIDO App: '); Fsenial=input('INDICA LA FRECUENCIA DE LA SEÑAL DE PRUEBA: '); %CALCULO DE PARAMETROS T=1/F; Fn=1; deltaf1=fp1-fs1; deltafh=fs2-fp2; deltaf=min(deltaf1,deltafh); fc1=fp1-(deltaf/2); fc2=fp2+(deltaf/2); fc1n=fc1/F; fc2n=fc2/F; deltaP= (power(10,0.05*App)-1) / (power (10,0.05*App)+1); As=(-20 * log10 ( deltaP ) ); if As>21 D=(As-7.95)/14.36; else D=0.9222; end %CALCULO DEL ORDEN DEL FILTRO N=( (F*D) / deltaf ) + 1; N=N-rem(N,1); if rem(N,2) == 0 N=N+1; end N hc=zeros(1,N); retardos=zeros(1,N); %SELECCION DE LA VENTANA disp('SELECCIONA LA VENTANA') disp('VENTANA RECTANGULAR (1)') disp('VENTANA BLACKMAN (2)') disp('VENTANA HAMMING (3)') opwin1=input('SELECCION: '); switch (opwin1)

Page 75: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

73

case 1 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(2/Fn)*(fc2n-fc1n); end if n ~= 0 hd=((1/(n*pi))*((sin((2*pi*n*fc2n)/Fn))-(sin((2*pi*n*fc1n)/Fn)))); end %CALCULO DE LOS COEFICIENTES RECTANGULARES ar = 1; h(n+1)= hd*ar; end case 2 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(2/Fn)*(fc2n-fc1n); end if n ~= 0 hd=((1/(n*pi))*((sin((2*pi*n*fc2n)/Fn))-(sin((2*pi*n*fc1n)/Fn)))); end %CALCULO DE LOS COEFICIENTES BLACKMAN ab = 0.42+(0.5*cos((2*3.1416*n)/(N-1)))+(0.08*cos((4*3.1416*n)/(N-1))); h(n+1)= hd*ab; end case 3 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(2/Fn)*(fc2n-fc1n); end if n ~= 0 hd=((1/(n*pi))*((sin((2*pi*n*fc2n)/Fn))-(sin((2*pi*n*fc1n)/Fn)))); end %CALCULO DE LOS COEFICIENTES HAMNNING ah = 0.54 + (0.46*cos( ( 2*3.1416*n ) / ( N-1 ) )); h(n+1)= hd*ah; end

Page 76: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

74

end %Respuesta en frecuencia bandera=0; for f=0:0.007:0.5 bandera=bandera+1; Mag_resp_frec = 0; for n=2:1: ((N-1) /2 )+1 Mag_resp_frec=Mag_resp_frec + (h(n)*cos(2*3.1416*f*(n-1))); end Mag_db(bandera)=20*log10(abs(h(1)+(2*Mag_resp_frec))); frec(bandera)=f; end subplot(2,2,1); plot(frec.*F,Mag_db); %Arreglo de los coeficientes causales for n=1:1:( N - 1 ) / 2 hc( ( ( N - 1) / 2 ) + n + 1 ) = h( n + 1); hc( ( ( N - 1) / 2 ) + 1 - n ) = h( n + 1); end hc( ( ( N - 1) / 2 ) + 1) = h(1); subplot(2,2,2) stem(hc) n=1; for t=0:T:(1/Fsenial)*8; y(n)=sin(2*3.1416*Fsenial*t); tiempo(n)=t; for m=1:1:N-1 retardos(N-m+1)=retardos(N-m); end retardos(1)=y(n); senial_filtrada(n)=0; for m=2:1:N+1 senial_filtrada(n)=senial_filtrada(n) + (hc(m-1)*retardos(m-1)); end n=n+1; end subplot(2,2,3); plot(tiempo,senial_filtrada,tiempo,y);

Page 77: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

75

case 4 %INTRODUCCION DE DATOS DE DISEÑO fp1=input('INDICA LA FRECUENCIA DE PASO BAJA fp1: '); fs1=input('INDICA LA FRECUENCIA DE RECHAZO BAJA fs1: '); fp2=input('INDICA LA FRECUENCIA DE PASO ALTA fp2: '); fs2=input('INDICA LA FRECUENCIA DE RECHAZO ALTA fs2: '); F=input('INDICA LA FRECUENCIA DE MUESTREO: '); App=input('INDICA EL FACTOR DE RUIDO App: '); Fsenial=input('INDICA LA FRECUENCIA DE LA SEÑAL DE PRUEBA: '); %CALCULO DE PARAMETROS T=1/F; Fn=1; deltaf1=fs1-fp1; deltafh=fp2-fs2; deltaf=min(deltaf1,deltafh); fc1=fp1+(deltaf/2); fc2=fp2-(deltaf/2); fc1n=fc1/F; fc2n=fc2/F; deltaP= (power(10,0.05*App)-1) / (power (10,0.05*App)+1); As=(-20 * log10 ( deltaP ) ); if As>21 D=(As-7.95)/14.36; else D=0.9222; end %CALCULO DEL ORDEN DEL FILTRO N=( (F*D) / deltaf ) + 1; N=N-rem(N,1); if rem(N,2) == 0 N=N+1; end N hc=zeros(1,N); retardos=zeros(1,N); %SELECCION DE LA VENTANA disp('SELECCIONA LA VENTANA') disp('VENTANA RECTANGULAR (1)') disp('VENTANA BLACKMAN (2)') disp('VENTANA HAMMING (3)') opwin1=input('SELECCION: '); switch (opwin1) case 1

Page 78: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

76

%CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(((2/Fn)*(fc2n-fc1n))+1); end if n ~= 0 hd=((1/(n*pi))*((sin((2*pi*n*fc1n)/Fn))-(sin((2*pi*n*fc2n)/Fn)))); end %CALCULO DE LOS COEFICIENTES RECTANGULARES ar = 1; h(n+1)= hd*ar; end case 2 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(((2/Fn)*(fc2n-fc1n))+1); end if n ~= 0 hd=((1/(n*pi))*((sin((2*pi*n*fc1n)/Fn))-(sin((2*pi*n*fc2n)/Fn)))); end %CALCULO DE LOS COEFICIENTES BLACKMAN ab = 0.42+(0.5*cos((2*3.1416*n)/(N-1)))+(0.08*cos((4*3.1416*n)/(N-1))); h(n+1)= hd*ab; end case 3 %CALCULO DE LOS COEFICIENTES SIN VENTANEAR for n=0:1:((N-1)/2) if n == 0 hd=(((2/Fn)*(fc2n-fc1n))+1); end if n ~= 0 hd=((1/(n*pi))*((sin((2*pi*n*fc1n)/Fn))-(sin((2*pi*n*fc2n)/Fn)))); end %CALCULO DE LOS COEFICIENTES HAMNNING ah = 0.54 + (0.46*cos( ( 2*3.1416*n ) / ( N-1 ) )); h(n+1)= hd*ah; end end

Page 79: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

77

%Respuesta en frecuencia bandera=0; for f=0:0.007:0.5 bandera=bandera+1; Mag_resp_frec = 0; for n=2:1: ((N-1) /2 )+1 Mag_resp_frec=Mag_resp_frec + (h(n)*cos(2*3.1416*f*(n-1))); end Mag_db(bandera)=20*log10(abs(h(1)+(2*Mag_resp_frec))); frec(bandera)=f; end subplot(2,2,1); plot(frec.*F,Mag_db); %Arreglo de los coeficientes causales for n=1:1:( N - 1 ) / 2 hc( ( ( N - 1) / 2 ) + n + 1 ) = h( n + 1); hc( ( ( N - 1) / 2 ) + 1 - n ) = h( n + 1); end hc( ( ( N - 1) / 2 ) + 1) = h(1); subplot(2,2,2) stem(hc) n=1; for t=0:T:(1/Fsenial)*8; y(n)=sin(2*3.1416*Fsenial*t); tiempo(n)=t; for m=1:1:N-1 retardos(N-m+1)=retardos(N-m); end retardos(1)=y(n); senial_filtrada(n)=0; for m=2:1:N+1 senial_filtrada(n)=senial_filtrada(n) + (hc(m-1)*retardos(m-1)); end n=n+1; end subplot(2,2,3); plot(tiempo,senial_filtrada,tiempo,y); case 11

Page 80: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

78

%SLECCION DE TIPO DE FILTRO ANALOGICO disp('SELECCIONA EL TIPO DE FILTRO ANALOGICO') disp('FILTRO BUTTERWORTH (1)') disp('FILTRO CHEBYSHEV (2)') disp('FILTRO ELIPTICO (3)') opan=input('SELECCION DESEADA: '); switch (opan) case 1 %INTRODUCCION DE DATOS DE DISEÑO BUTTERWORTH PASABAJAS fp=input('INTRODUCE LA BANDA DE PASO fp:'); fs=input('INTRODUCE LA BANDA DE RECHAZO fs:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5); k0=(tan((3.1416*fp)/F))/(tan((3.1416*fs)/F)); k=k0; A=(lambda/epsilon); %APROXIMACION DE N N=((log10(A))/(log10(1/k))); n=round(((log10(A))/(log10(1/k)))); %N DEFINITIVA if n<N N=n+1; else N=n; end alpha=power(((power(10,(0.1*Ap)))-1),(-1/(2*N)))*tan((pi*fp)/F); %CALCULO DE COEFICIENTES PARA FILTRO DIGITAL modulo=mod(N,2); if modulo==0 for k=1:(N/2) s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); Dp(k)=1+(2*(abs(real(s(k))))*alpha)+power(alpha,2); Zp(k)=((1-power(alpha,2))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); A1(k)=2; A2(k)=1; end else for k=1:((N+1)/2) s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); Dp(k)=1+(2*(abs(real(s(k))))*alpha)+power(alpha,2); Zp(k)=((1-power(alpha,2))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k));

Page 81: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

79

B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); A1(k)=2; A2(k)=1; end end N s Zp B1 B2 A1 A2 case 2 %INTRODUCCION DE DATOS DE DISEÑO CHEBYSHEV PASABAJAS fp=input('INTRODUCE LA BANDA DE PASO fp:'); fs=input('INTRODUCE LA BANDA DE RECHAZO fs:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5); k0=(tan((3.1416*fp)/F))/(tan((3.1416*fs)/F)); k=k0; A=(lambda/epsilon); %APROXIMACION DE N N=acosh(A)/acosh(1/k0); n=round(acosh(A)/acosh(1/k0)); %N DEFINITIVA if n<N N=n+1; else N=n; end modulo=mod(N,2); alpha=tan((pi*fp)/F); %CALCULO DE COEFICIENTES PARA FILTRO DIGITAL for k=1:1:(N/2) x(k)=((2*k)-1)*(pi/(2*N)); y(k)=(1/N)*asinh(1/epsilon); end if modulo==0 for k=1:(N/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k)));

Page 82: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

80

Dp(k)=1+(2*(abs(real(s(k))))*alpha)+((power(real(s(k)),2)+(power(imag(s(k)),2)))*(power(alpha,2))); Zp(k)=((1-((power(real(s(k)),2)+(power(imag(s(k)),2)))*power(alpha,2)))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); A1(k)=2; A2(k)=1; end else for k=1:((N+1)/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k))); Dp(k)=1+(2*(abs(real(s(k))))*alpha)+((power(real(s(k)),2)+(power(imag(s(k)),2)))*(power(alpha,2))); Zp(k)=((1-((power(real(s(k)),2)+(power(imag(s(k)),2)))*power(alpha,2)))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); A1(k)=2; A2(k)=1; end end N s Zp B1 B2 A1 A2 end case 22 %SLECCION DE TIPO DE FILTRO ANALOGICO disp('SELECCIONA EL TIPO DE FILTRO ANALOGICO') disp('FILTRO BUTTERWORTH (1)') disp('FILTRO CHEBYSHEV (2)') disp('FILTRO ELIPTICO (3)') opan=input('SELECCION DESEADA: '); switch (opan) case 1 %INTRODUCCION DE DATOS DE DISEÑO BUTTERWORTH PASALTAS fp=input('INTRODUCE LA BANDA DE PASO fp:'); fs=input('INTRODUCE LA BANDA DE RECHAZO fs:');

Page 83: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

81

F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5); k0=(tan((3.1416*fp)/F))/(tan((3.1416*fs)/F)); k=1/k0; A=(lambda/epsilon); %APROXIMACION DE N N=((log10(A))/(log10(1/k))); n=round(((log10(A))/(log10(1/k)))); %N DEFINITIVA if n<N N=n+1; else N=n; end alpha=power(((power(10,(0.1*Ap)))-1),(1/(2*N)))*tan((pi*fp)/F); %CALCULO DE COEFICIENTES PARA FILTRO DIGITAL modulo=mod(N,2); if modulo==0 for k=1:(N/2) s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); Dp(k)=power(alpha,2)+(2*(abs(real(s(k))))*alpha)+power(real(s(k)),2)+power(imag(s(k)),2); Zp(k)=(-((power(alpha,2))-((power(real(s(k)),2)+power(imag(s(k)),2))))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); A1(k)=-2; A2(k)=1; B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); end else for k=1:((N+1)/2) s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); Dp(k)=power(alpha,2)+(2*(abs(real(s(k))))*alpha)+power(real(s(k)),2)+power(imag(s(k)),2); Zp(k)=(-((power(alpha,2))-((power(real(s(k)),2)+power(imag(s(k)),2))))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); A1(k)=-2; A2(k)=1; B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); end

Page 84: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

82

end N s Zp B1 B2 A1 A2 case 2 %INTRODUCCION DE DATOS DE DISEÑO CHEBYSHEV PASA-ALTAS fp=input('INTRODUCE LA BANDA DE PASO fp:'); fs=input('INTRODUCE LA BANDA DE RECHAZO fs:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5); k0=(tan((3.1416*fp)/F))/(tan((3.1416*fs)/F)); k=(1/k0); A=(lambda/epsilon); %APROXIMACION DE N N=acosh(A)/acosh(1/k); n=round(acosh(A)/acosh(1/k)); %N DEFINITIVA if n<N N=n+1; else N=n; end modulo=mod(N,2); alpha=tan((pi*fp)/F); %CALCULO DE COEFICIENTES PARA FILTRO DIGITAL for k=1:1:(N/2) x(k)=((2*k)-1)*(pi/(2*N)); y(k)=(1/N)*asinh(1/epsilon); end if modulo==0 for k=1:(N/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k))); Dp(k)=power(alpha,2)+(2*(abs(real(s(k))))*alpha)+power(real(s(k)),2)+power(imag(s(k)),2); Zp(k)=(-((power(alpha,2))-((power(real(s(k)),2)+power(imag(s(k)),2))))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); A1(k)=-2; A2(k)=1;

Page 85: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

83

B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); end else for k=1:((N+1)/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k))); Dp(k)=1+(2*(abs(real(s(k))))*alpha)+((power(real(s(k)),2)+(power(imag(s(k)),2)))*(power(alpha,2))); Zp(k)=((1-((power(real(s(k)),2)+(power(imag(s(k)),2)))*power(alpha,2)))/Dp(k))+((i*2*imag(s(k))*alpha)/Dp(k)); B1(k)=-2*real(Zp(k)); B2(k)=power(real(Zp(k)),2)+power(imag(Zp(k)),2); A1(k)=2; A2(k)=1; end end N s Zp B1 B2 A1 A2 end case 33 %SLECCION DE TIPO DE FILTRO ANALOGICO disp('SELECCIONA EL TIPO DE FILTRO ANALOGICO') disp('FILTRO BUTTERWORTH (1)') disp('FILTRO CHEBYSHEV (2)') disp('FILTRO ELIPTICO (3)') opan=input('SELECCION DESEADA: '); switch (opan) case 1 %INTRODUCCION DE DATOS DE DISEÑO BUTTERWORTH PASABAJAS fp1=input('INTRODUCE LA BANDA DE PASO BAJA fp1:'); fs1=input('INTRODUCE LA BANDA DE RECHAZO BAJA fs1:'); fp2=input('INTRODUCE LA BANDA DE PASO ALTA fp2:'); fs2=input('INTRODUCE LA BANDA DE RECHAZO ALTA fs2:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5);

Page 86: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

84

A=(lambda/epsilon); kA=(tan((pi*fp2)/F))-(tan((pi*fp1)/F)); kB=(tan((pi*fp1)/F))*(tan((pi*fp2)/F)); kC=(tan((pi*fs1)/F))*(tan((pi*fs2)/F)); k1=(kA*tan((pi*fs1)/F))/(kB-(power((tan((pi*fs1)/F)),2))); k2=(kA*tan((pi*fs2)/F))/((power((tan((pi*fs2)/F)),2))-kB); if (kC>=kB) K=k1; else K=k2; end %APROXIMACION DE N N=log10(A)/log10(1/K); n=round(log10(A)/log10(1/K)); %N DEFINITIVA if n<N N=n+1; else N=n; end beta=power((power(10,(0.1*Ap))-1),((-1)/(2*N))); wuprim=tan((pi*fp2)/F); wlprim=tan((pi*fp1)/F); deltawprim=(wuprim-wlprim); w0prim=wuprim*wlprim; modulo=mod(N,2); if modulo==0 for k=1:N/2 s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))+((j*2*(imag(sbp1(k))))/Dp1(k));

Page 87: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

85

Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))+((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end else for k=1:(N+1)/2 s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))+((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))+((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end end case 2 %INTRODUCCION DE DATOS DE DISEÑO CHEBYSHEV PASABAJAS fp1=input('INTRODUCE LA BANDA DE PASO BAJA fp1:'); fs1=input('INTRODUCE LA BANDA DE RECHAZO BAJA fs1:'); fp2=input('INTRODUCE LA BANDA DE PASO ALTA fp2:'); fs2=input('INTRODUCE LA BANDA DE RECHAZO ALTA fs2:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:');

Page 88: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

86

Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5); A=(lambda/epsilon); kA=(tan((pi*fp2)/F))-(tan((pi*fp1)/F)); kB=(tan((pi*fp1)/F))*(tan((pi*fp2)/F)); kC=(tan((pi*fs1)/F))*(tan((pi*fs2)/F)); k1=(kA*tan((pi*fs1)/F))/(kB-(power((tan((pi*fs1)/F)),2))); k2=(kA*tan((pi*fs2)/F))/((power((tan((pi*fs2)/F)),2))-kB); if (kC>=kB) K=k1; else K=k2; end %APROXIMACION DE N N=acosh(A)/acosh(1/K); n=round(acosh(A)/acosh(1/K)); %N DEFINITIVA if n<N N=n+1; else N=n; end modulo=mod(N,2); beta=1; wuprim=tan((pi*fp2)/F); wlprim=tan((pi*fp1)/F); deltawprim=(wuprim-wlprim); w0prim=wuprim*wlprim; modulo=mod(N,2); if modulo==0 %CALCULO DE COEFICIENTES PARA FILTRO DIGITAL for k=1:1:(N/2) x(k)=((2*k)-1)*(pi/(2*N)); y(k)=(1/N)*asinh(1/epsilon); end else for k=1:1:((N+1)/2) x(k)=((2*k)-1)*(pi/(2*N)); y(k)=(1/N)*asinh(1/epsilon); end

Page 89: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

87

end if modulo==0 for k=1:(N/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k))); c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))+((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))+((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end else for k=1:((N+1)/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k))); c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2);

Page 90: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

88

Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))+((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))+((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end end end case 44 %SLECCION DE TIPO DE FILTRO ANALOGICO disp('SELECCIONA EL TIPO DE FILTRO ANALOGICO') disp('FILTRO BUTTERWORTH (1)') disp('FILTRO CHEBYSHEV (2)') disp('FILTRO ELIPTICO (3)') opan=input('SELECCION DESEADA: '); switch (opan) case 1 %INTRODUCCION DE DATOS DE DISEÑO BUTTERWORTH PASABAJAS fp1=input('INTRODUCE LA BANDA DE PASO BAJA fp1:'); fs1=input('INTRODUCE LA BANDA DE RECHAZO BAJA fs1:'); fp2=input('INTRODUCE LA BANDA DE PASO ALTA fp2:'); fs2=input('INTRODUCE LA BANDA DE RECHAZO ALTA fs2:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5); epsilon=power(((power(10,(0.1*Ap)))-1),0.5); A=(lambda/epsilon); kA=(tan((pi*fp2)/F))-(tan((pi*fp1)/F)); kB=(tan((pi*fp1)/F))*(tan((pi*fp2)/F)); kC=(tan((pi*fs1)/F))*(tan((pi*fs2)/F)); k1=(kA*tan((pi*fs1)/F))/(kB-(power((tan((pi*fs1)/F)),2))); k2=(kA*tan((pi*fs2)/F))/((power((tan((pi*fs2)/F)),2))-kB); if (kC>=kB) K=1/k1; else K=1/k2; end

Page 91: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

89

%APROXIMACION DE N N=log10(A)/log10(1/K); n=round(log10(A)/log10(1/K)); %N DEFINITIVA if n<N N=n+1; else N=n; end beta=power((power(10,(0.1*Ap))-1),((1)/(2*N))); wuprim=tan((pi*fp2)/F); wlprim=tan((pi*fp1)/F); deltawprim=(wuprim-wlprim); w0prim=wuprim*wlprim; modulo=mod(N,2); if modulo==0 for k=1:N/2 s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N)))); c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))-((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))-((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end else for k=1:(N+1)/2 s(k)=-sin(((((2*k)-1)*pi)/(2*N)))+(i*cos(((((2*k)-1)*pi)/(2*N))));

Page 92: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

90

c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))-((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))-((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end end N s A1 A2 Zp1 Zp2 B1 B11 B2 B22 case 2 %INTRODUCCION DE DATOS DE DISEÑO CHEBYSHEV PASABAJAS fp1=input('INTRODUCE LA BANDA DE PASO BAJA fp1:'); fs1=input('INTRODUCE LA BANDA DE RECHAZO BAJA fs1:'); fp2=input('INTRODUCE LA BANDA DE PASO ALTA fp2:'); fs2=input('INTRODUCE LA BANDA DE RECHAZO ALTA fs2:'); F=input('INDICA LA FRECUENCIA DE MUESTREO:'); Ap=input('INDICA LA ATENUACION EN LA BANDA DE PASO Ap (dB):'); As=input('INDICA LA ATENUACION EN LA BANDA DE RECHAZO As (dB):'); %CALCULO DE PARAMETROS lambda=power(((power(10,(0.1*As)))-1),0.5);

Page 93: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

91

epsilon=power(((power(10,(0.1*Ap)))-1),0.5); A=(lambda/epsilon); kA=(tan((pi*fp2)/F))-(tan((pi*fp1)/F)); kB=(tan((pi*fp1)/F))*(tan((pi*fp2)/F)); kC=(tan((pi*fs1)/F))*(tan((pi*fs2)/F)); k1=(kA*tan((pi*fs1)/F))/(kB-(power((tan((pi*fs1)/F)),2))); k2=(kA*tan((pi*fs2)/F))/((power((tan((pi*fs2)/F)),2))-kB); if (kC>=kB) K=1/k1; else K=1/k2; end %APROXIMACION DE N N=acosh(A)/acosh(1/K); n=round(acosh(A)/acosh(1/K)); %N DEFINITIVA if n<N N=n+1; else N=n; end modulo=mod(N,2); beta=1; wuprim=tan((pi*fp2)/F); wlprim=tan((pi*fp1)/F); deltawprim=(wuprim-wlprim); w0prim=wuprim*wlprim; modulo=mod(N,2); if modulo==0 %CALCULO DE COEFICIENTES PARA FILTRO DIGITAL for k=1:1:(N/2) x(k)=((2*k)-1)*(pi/(2*N)); y(k)=(1/N)*asinh(1/epsilon); end else for k=1:1:((N+1)/2) x(k)=((2*k)-1)*(pi/(2*N)); y(k)=(1/N)*asinh(1/epsilon); end end if modulo==0 for k=1:(N/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k)));

Page 94: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

92

c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))-((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))-((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k)); B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end else for k=1:((N+1)/2) s(k)=(-sin(x(k))*sinh(y(k)))+(i*cos(x(k))*cosh(y(k))); c1(k)=power((imag(s(k))),2)+((4*w0prim)/(power((deltawprim*beta),2)))-power((real(s(k))),2); c2(k)=power((power(c1(k),2)+power((2*real(s(k))*imag(s(k))),2)),.5); c3(k)=power(((c2(k)-c1(k))/2),.5); c4(k)=power(((c2(k)+c1(k))/2),.5); sbp1(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))-c3(k))+(i*((imag(s(k)))+c4(k)))); sbp2(k)=((beta*deltawprim)/2)*(((-(abs(real(s(k)))))+c3(k))+(i*((imag(s(k)))-c4(k)))); Dp1(k)=1+(2*(abs(real(sbp1(k)))))+power((real(sbp1(k))),2)+power((imag(sbp1(k))),2); Dp2(k)=1+(2*(abs(real(sbp2(k)))))+power((real(sbp2(k))),2)+power((imag(sbp2(k))),2); Zp1(k)=((1-(power((real(sbp1(k))),2)+power((imag(sbp1(k))),2)))/Dp1(k))-((j*2*(imag(sbp1(k))))/Dp1(k)); Zp2(k)=((1-(power((real(sbp2(k))),2)+power((imag(sbp2(k))),2)))/Dp2(k))-((j*2*(imag(sbp2(k))))/Dp2(k)); A1(k)=0; A2(k)=-1; B1(k)=-2*real(Zp1(k));

Page 95: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

93

B11(k)=-2*real(Zp2(k)); B2(k)=power(real(Zp1(k)),2)+power(imag(Zp1(k)),2); B22(k)=power(real(Zp2(k)),2)+power(imag(Zp2(k)),2); end end end N s Zp1 Zp2 B1 B11 B2 B22 end

Page 96: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

94

Anexo 2 Lista de funciones MATLAB sin(x),cos(x), tan(x) funciones trigonométricas abs(x) Valores absolutos de un vector x con componentes reales o

complejas. real(x) Toma la parte real de cada componente del vector x imag(x) Toma la parte imaginaria de cada componente del vector x conj(x) Complejo conjugado de cada componente de x exp(z) ex(cosy+jseny), donde z = x + jy. sum(x) Suma de las componentes (reales o complejas) del vector x. prod(x) Producto de las componentes (reales o complejas) del vector x. angle(x) Calcula los angulos de fase de cada componente del vector x. log(x) Calcula el logaritmo natural de cada uno de los elementos de x. log10(x) Calcula el logaritmo en base 10 de cada uno de los elementos de

x. sqrt(x) Calcula la raiz cuadrada de los elementos de x. conv(x,h) Convoluciòn de las dos secuencias (vectores) x y h. fliplr(x) Dobla la secuencia (vector) x. filter(b,a,x) Resuelve la ecuación en diferencias con coeficientes filter(b,1,x) Implementa un fi8ltro FIR con entrada x y coeficientes b. rand(1,n) Genera una secuencia aleatoria de longitud N de variables

aleatorias gausianas de media cero y varianza unidad. xcorr(x,y) Calcula la correlación cruzada de las dos secuencias x e y. xcorr(x) Calcula la autocorrelaciòn de la secuencia x. roots(a) Calcula las raices del polinomio con coeficientes residuez(b,a) Calcula los residuos en una expansión en fracciones simples. deconv(b,a) Calcula el resultado de dividir b por a en una parte polinomica p

y un resto r. poly(r) Calcula los coeficientes del polinomio p con raices r. pzplotz(b,a) Representa los polos y ceros en el plano z dados los vectores de

coeficientes b y a. filter(b,a,x,xic) Implementa el filtro dado por una ecuación en diferencias con

vector de coeficientes b y a, entrada x y condiciones iniciales xic. freqz(b,a,n) Calcula un vector de respuesta en frecuencia complejo de N

puntos en un vector de N puntos de frecuencia w,uniforme sobre el interval 0 < w < p, para filtrar con los vectores de coeficientes b y a.

freqz(b,a,n,´whole´) Los mismos calculos que freqz(b,a,N),excepto que el rango de frecuencias es 0 < w < 2p.

freqz(b,a,w) Calcula la respuesta en frecuencia del sistema en las frecuencias especificadas por el vector w.

grpdelay(b,a,n) Calcula el retardo de grupo del filtro con el polinomio numerador de coeficientes b y polinomio denominador de coeficientes a, en N puntos sobre el intervalo (0,p).

grpdelay(b,a,n,`whole´) Lo mismo que arriba, excepto que el rango de frecuencias es 0

Page 97: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

95

< w < 2p. dfs(x,n) Calcula los coeficientes de las series discretas de Fourier (DFS)

para la secuencia de señal periódica x con periodo N. idfs(y,n) Calcula la secuencia de señal a partir de los coeficientes de la

DFS y. rem(n,n) Determina el resto después de dividir n por N. mod(n,n) Calcula n mod. N. dft(x,n) Calcula la DFT de N puntos de la secuencia de datos x. igft(x,n) Calcula la DFT inversa de N puntos de X. ovrlpsav(x,h,n) Implementa el método de solapamiento-almacenamiento para

realizar la convolución por bloques donde N es la longitud del bloque.

fft(x,n) Implementa un algoritmo FFT base 2 de N puntos ifft(x,n) Implementa un algoritmo FFT inverso base 2 de N puntos. fftshift(x) Reordena las salidas de la FFT de tal forma que la componente de

frecuencia cero está en el centro del espectro. dir2cas(b,a) Convierte una estructura en forma directa a la forma en cascada cas2dir(bo,b,a) Convierte una estructura en cascada a la forma directa dir2par(b,a) Convierte una estructura en forma directa a la forma en paralelo. par2dir(c0b,a) Convierte una estructura en paralelo a la forma directa. dir2latc(b) Convierte una estructura FIR en forma directa una estructura

celosía todos ceros. latc2dir(k) Convierte una estructura en celosía todo ceros a la forma directa. dir2ladr(b,a) Convierte una estructura en forma directa IIR a una estructura de

polos y ceros en celosía escalonada. ladr2dir(k,c) Convierte una estructura en celosía escalonada a una estructura

en forma directa IIR. casfiltr(b0,b,a,x) Implementa la realización en forma de cascada IIR y FIR de un

filtro con secuencia de entrada x. parfiltr(c,b,a,x) Implementa la realización en forma paralela IIR de un filtro con

secuencia de entrada x. latcfilt(k,x) Implementa la realización en celosía FIR de un filtro con

secuencia de entrada x. ladrfilt(k,c,x) Implementa la realización en celosía escalonada de un filtro con

secuencia de entrada x. round(x) Redondea las componentes del vector x al entero más próximo. fix(x) Redondea (trunca) las componentes del vector x al entero mas

cercano hacia cero. sign(x) Cada componente de x se pone a+1 si es positiva y a-1 si es

negativa. ss2tf(a,b,c,d,iu) Calcula la función de transferencia H(x) de un sistema

Page 98: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

96

CONCLUSIONES Al saber que una señal se define como una cantidad física que varia con el tiempo, el espacio o cualquiera otra variable o variable independiente. Nos damos cuenta con la cotianidad con la cual nos envolvemos con este tema ya que con el simple hecho de hablar transmitimos una señal es por lo cual nos dimos a la tarea de investigar y transmitir los conocimientos acerca de los elementos básicos de los sistemas procesado de señales. En donde pudimos darnos cuenta que la mayor parte de las señales que aparecen en los ámbitos de la ciencia y la ingeniería son de naturaleza analógica, El proceso digital de señales proporciona un método alternativo para procesar una señal analógica, este interfaz denomina conversor analógico-digital (A/D). De este modo encontramos las ventajas del proceso digital de señales frente al analógico. Primero, un sistema digital programable permite flexibilidad a la hora de reconfigurar las operaciones de procesado digital de señales sin más que cambiar el programa. La reconfiguración de un sistema analógico implica habitualmente el rediseño del hardware, esto fue uno de los tantos motivos por los cuales nos hizo adentrarnos más afondo en los temas relacionados con los tipos de señales, modos de transmisión etc. De hay tratar de hacer entendible estos temas y el hacer saber lo importante que es la transmisión de nuestras señales tanto analógicas como digitales en donde encontramos la gran variedad de métodos para transmitirla e interpretarla. Al identificar perfectamente los diferentes tipos y formas de transmitir una señal fue de suma importancia el conocer ampliamente el tema ya que al ir involucrándonos cada vez más nos dábamos cuenta que cualquier tipo de señal al ser transmitida, lo más importante es que llegue de la forma correcta, oportuna y lo más rápido posible ocupando los medios según sea el necesario. Es muy importante recalcar que la transmisión de señales es necesario en cualquier ámbito de la vida cotidiana y laboral, de hay la importancia del saber manejarla adecuadamente y comprenderla. En la actualidad sabemos que gran parte de la comunicación que tenemos es a base de los diferentes tipos de señales antes mencionados y que apartir de estos podemos comunicarnos cada vez más eficientemente con la necesidad de ir implementando día a día nuevas herramientas y métodos para la transmisión e interpretación de los diferentes tipos de señales para poder ir mejorando nuestra forma de comunicar, transmitir y hacer llegar toda la información que nos es necesaria tanto en nuestra vida cotidiana como en la vida laboral.

Page 99: SEMINARIO DE TITULACIÓN “PROCESAMIENTO DIGITAL DE SEÑALES ...tesis.ipn.mx/jspui/bitstream/123456789/7570/1/ice 271.pdf · seminario de titulaciÓn “procesamiento digital de

97

BIBLIOGRAFIA

· Tratamiento digital de señales Principios, algoritmos y aplicaciones

PROAKIS John G. MANOLAKIS Dimitris G. Prentice Hall 3ª edición.

· Diseño Electrónico: Circuitos y Sistemas C. J. Savant Jr. Pearson Educación de México

· Señales y Sistemas

A.V. Oppenheim, A s Willsky 2da Edición. Prentice Hall, 1998

· Digital signal processing

Emmanuel C. Ifeachor, Ed.: Addison-Wesley.

Parte de la información aquí presentada, fue una recopilación de la navegación efectuada a través de Internet, y aquí se mencionan las paginas web que sirvieron de fuente de información: http://www.ti.com http://www.mot.com http://www.analog.com http://www.bdti.com http://www.eg3.com/dspxmix.htm http://www.wavelet.org/wavelet/index.html http://www.itu.ch http://www.dsp.rice.edu http://www.cera2.com/dsp.htm http://www.geocities.com/Colosseum/Track/8462/ http://www.bores.com/courses/intro/chips/6_world.htm