Intro Procsdig

download Intro Procsdig

of 69

Transcript of Intro Procsdig

UNIVERSIDAD POLITCNICA DE MADRID DEPARTAMENTO DE ELECTRNICA, AUTOMTICA E INFORMTICA INDUSTRIAL Captulo 12: Introduccin al Procesamiento digital de Seales Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 2ELAI-UPM-DOC001-01 INTRODUCCIN AL PROCESAMIENTO DIGITAL DE SEALES .....................................3 12.1CONCEPTOS BSICOS SOBRE SISTEMAS DISCRETOS ...................................................6 12.1.1ESTABILIDAD DE UN SISTEMA DISCRETO.................................................................12 12.1.2RESPUESTA EN FRECUENCIA DE UN SISTEMA DISCRETO .........................................12 12.1.3TRANSFORMADA DE FOURIER DE UNA SECUENCIA.................................................17 12.1.4TRANSFORMADAS Z.................................................................................................19 12.1.5MUESTREO DE SEALES ..........................................................................................23 12.2FILTROS DIGITALES ....................................................................................................30 12.2.1CLASES DE FILTROS DIGITALES ...............................................................................31 12.2.2FILTROS DE FASE LINEAL O NO DISPERSIVOS...........................................................33 12.2.3CAUSALIDAD Y SUS IMPLICACIONES .......................................................................34 12.3DISEO DE FILTROS NO RECURSIVOS (FIR) ..............................................................39 12.3.1FILTROS FIR SIMTRICOS Y ANTISIMTRICOS.........................................................39 12.3.2DISEO DE FILTROS FIR DE FASE LINEAL USANDO VENTANAS...............................41 12.4DISEO DE FILTROS RECURSIVOS (IIR) .....................................................................52 12.4.1DISEO DE FILTROS IIR MEDIANTE TRANSFORMADAS BILINEALES........................52 12.5IMPLEMENTACIN DE LOS FILTROS DIGITALES........................................................59 12.6EFECTOS DE LA CUANTIFICACIN EN LOS FILTROS..................................................62 12.6.1EFECTOS DE TRUNCAMIENTO Y REDONDEO ............................................................62 12.6.2CUANTIFICACIN DE SEALES ................................................................................65 12.6.3CUANTIFICACIN DE LOS COEFICIENTES.................................................................66 12.6.4CUANTIFICACIN DE RESULTADOS DE OPERACIONES .............................................67 12.7BIBLIOGRAFA.............................................................................................................69 Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-013 Introduccinal ProcesamientoDigitalde Seales El Procesamiento de Seales posee una larga y rica historia. Es una tecnologa que seentroncaconuninmensoconjuntodedisciplinasentrelasqueseencuentranlas telecomunicaciones,elcontrol,laexploracindelespacio,lamedicinaylaarqueologa, pornombrarsolounaspocas.Hoyenda,estaafirmacinesinclusomsciertaconla televisindigital,lossistemadeinformacinyelentretenimientomultimedia.Esms,a medidaquelossistemasdecomunicacinsevanconvirtiendocadavezmsensistemas sinhilos,mvilesymultifuncin,laimportanciadeunprocesamientodeseales sofisticado en dichos equipos se hace cada vez ms relevante. ElProcesamientodesealestratadelarepresentacin,transformaciny manipulacin de seales y de la importancia que contienen. Cuando se refiere al procesado digitaldeseales,serefierealarepresentacinmediantesecuenciasdenmerosde precisin finita y el procesado se realiza utilizando un computador digital. A menudo es deseable que estos sistemas funcionen en tiempo real, lo que significa queelsistemaentiempodiscretoseimplementadeformaquelasmuestrasdesalidase calculanalamismavelocidadalaquesemuestrealasealentiempocontinuo.Son muchaslasaplicacionesquerequierenestaespecificacin.Eltratamientoentiempo Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 4ELAI-UPM-DOC001-01 discretoyentiemporealdesealesentiempocontinuoesprcticacomnensistemade control,comunicaciones,radar,sonar,codificacinyrealcedevozyvdeo,ingeniera biomdica y un largo etctera.Otrotipodeproblemasdeltratamientodesealesalqueseenfrentaesla interpretacin de seales. Por ejemplo, en un sistema de reconocimiento de voz el objetivo escomprenderlasealdeentrada.Tpicamente,unsistemacomosteaplicarun procesadodigitalprevio(filtrado,estimacindeparmetros,etc.)seguidoporunsistema de reconocimiento de patrones que produzca una representacin simblica. Losproblemasdetratamientodesealesnoestnconfinados,porsupuesto,a sealesunidimensionales.Aunquehayalgunasdiferencias fundamentales entre las teoras deltratamientodesealesunidimensionalesymultidimensionales,unabuenapartedel material que se presenta aqu tiene su contrapartida en sistemas multidimensionales. Entre ellas destaca las aplicadas al procesamiento de imgenes digitales. Eltratamientodesealesentiempodiscretohaavanzadoconpasosdesiguales duranteunlargoperiododetiempo.Hastaprincipiosdelosaoscincuenta el tratamiento desealesserealizabanconcircuitoselectrnicosoinclusocondispositivosmecnicos. Aunqueloscomputadoresdigitalesyaestabandisponiblesenentornosdenegociosyen laboratorios cientficos, stos eran caros y de capacidad relativamente limitada. Uno de los primerosusosdeloscomputadoresdigitaleseneltratamientodesealesfueenla prospeccinpetrolfera.Segrababanlosdatosssmicosencintasmagnticasparasu procesamientoposterior.Estetipodetratamientodesealesnosepodarealizar generalmente en tiempo real. Aunque el procesamiento de seales mediante computadores digitales ofreca tremendas ventajas de flexibilidad, sin embargo, el procesado no se poda realizarentiemporeal.LasaportacionesdeCooleyyTukey(1965)deunalgoritmo eficienteparaelclculodelastransformadasdeFourieracelerelusodelcomputador digital. Muchas aplicaciones desarrolladas requeran del anlisis espectral de la seal y con lasnuevastransformadasrpidasseredujoenvariosrdenesdemagnitudeltiempode cmputo.Adems,sedieroncuentadequeelnuevoalgoritmosepodraimplementaren hardware digital especfico, por lo que muchos algoritmos de tratamiento digital de seales que previamente eran impracticables comenzaron a verse como posibles. Otro desarrollo importante en la historia del Procesamiento de Seales ocurri en el terrenodelaMicroelectrnica.Aunquelosprimerosmicroprocesadoreserandemasiado lentosparaimplementarentiemporeallamayoradelossistemasentiempodiscreto,a mediadosdelosochentalatecnologadeloscircuitosintegradoshabaavanzadohastael niveldepermitirlarealizacindemicrocomputadoresencomafijoycomaflotantecon arquitecturas especialmente diseadas para realizar algoritmos de procesamiento de seales entiempodiscreto.AestosprocesadoresselesconoceporelacrnimodeDSP(Digital Signal Processor). Con esta tecnologa lleg, por primera vez, la posibilidad de una amplia aplicacindelastcnicasdetratamientodesealesentiempodiscreto.Aunms,hoyen dalosdiseosdelosmicroprocesadoresgenricossonampliadosenregistrose instruccionesparapoderlosdestinarlosatareasdeprocesamientodeseales,seaelcaso msllamativoelconjuntodeinstruccionesMMXinsertadasenlafamiliaINTELapartir del mtico PENTIUM. Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-015 Delasdiferentesmateriasqueinvolucraeltratamientodigitaldeseales,eneste temaslosevaaversarsobrelosfiltrosdigitaleslinealeseinvarianteseneltiempo, abreviadosporlasiglaLTI(LinearTimeInvariant).Laeleccinporestosfiltrosviene dadaporsugrandifusinactual,porseruncaptuloiniciticoalprocesadodigitalde seales y por corresponder con la evolucin natural del temario deElectrnica Industrial. No obstante, el Procesamiento Digital es por si misma una propia asignatura, lo que indica elcarcterbsicodeestecaptulo.Paraprofundizarmssobrelosfiltrosdigitalesy conocerenamplitudestadisciplina,elalumnopuedeempezarporelegiralgunodelos libros recomendados en el apartado de bibliografa. LosfiltrosdigitalesLTIson,porejemplo,usualesenelprocesamientodelaudio. Losequiposdemsicavienendotadosconfiltrosquelepermitealoyentemodificarlas cantidadesrelativasdeenergadebajafrecuencia(graves)ylaenergadealtafrecuencia (agudos).Estosfiltrosvaransusrespuestasenfrecuenciasmediantelamanipulacinde los controles de tono. OtraclasecomndefiltrosLTIsonaquellosenlosquelasalidadelfiltroesuna aproximacindeladerivadadesuentrada.Losfiltrosdiferenciadoressontilespara acentuarlastransicionesrpidasdeunaseal,yunaaplicacinenlaqueseempleaa menudoesenlaintensificacindelosbordes.Lafigura12.1ilustraelefectodeun filtro diferenciador en una imagen. La figura muestra dos imgenes, la original y el resultado del procesamiento con un filtro que tiene una respuesta en frecuencia lineal. Como la derivada enlosbordesdelaimagenesmayorqueenlasregionesdondelaintensidadvaracon lentitud en el espacio, el efecto de los filtros diferenciadores es resaltar los bordes. Los filtros selectivos en frecuencia que permiten el paso de seales sin distorsin en una o en un conjunto de bandas de frecuencia, y atenan o eliminan totalmente las seales enelrestodelasbandassonotraclaseimportantedefiltrosLTI.Unaimportante aplicacindelosfiltrosselectivosestnenlossistemasdecomunicaciones.Sonlabase para los sistemas de modulacin en amplitud (AM), en la cual la informacin de cada canal seponeenunafrecuenciaseparadayluegoenelreceptorseextraeloscanalesmediante filtros selectivos en frecuencia. Figura 12. 1. Procesamiento de un filtro diferencial sobre una seal bidimensional Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 6ELAI-UPM-DOC001-01 Escomnemplearfiltrosdetiempodiscretoenelanlisisdesecuenciasdedatos econmicostalescomoelndicedelmercadodevalores.Amenudolasvariacionesde largo plazo (las cuales corresponden a bajas frecuencias) tienen un significado diferente al devariacionesdecortoplazo(lascualescorrespondenaaltasfrecuencias),yestil analizar estos componentes por separado. La separacin de estos componentes casi siempre se lleva a cabo mediante filtros selectivos en frecuencia. El filtrado de secuencias de datos econmicostambinseusaparasuavizarlosdatosyeliminarlasfluctuacionesaleatorias (que son por lo general de alta frecuencia) sobrepuestas a los datos significativos. SeacabandecitaralgunasdelasmuchasaplicacionesdelfiltradodigitalLTIque enestecaptuloserntratados.Endetalle,eltemadelfiltradoabarcamuchosproblemas, tales como los que involucran su diseo y su implementacin. El principal objetivo de este captuloesintroducirelconceptobsicodelfiltradodetiempodiscreto.Losconceptos primarios provienen directamente de las nociones bsicas de los sistemas discretos y de las propiedadesdelastransformadasdeFourier.Entonces,ademsdelaintroduccindeuna importantereadeaplicacin,ladiscusinservir,tambin,paraunamejorcomprensin delaspropiedadesydelaimportanciadelossistemasdiscretosydelatransformadade Fourier.Elcaptuloseiniciaconunrepasoalanaturalezadelossistemasdiscretos, analizandodetenidamentelastransformadasdeFourierdelassecuenciasyelprocesode muestreodelassealescontinuas.Enelapartado12.2lasdiferenciasentrefiltros analgicos y digitales sern tratadas y posteriormente se proceder a la clasificacin de los filtros de tiempo discreto. Antes de entrar en el diseo se analizar las implicaciones de la causalidad.Lassecciones12.3y12.4presentarnlastcnicasdediseodelosfiltrosno recursivosyrecursivosrespectivamente.Mientrasque12.5y12.6tratarnsobrelas problemticasdelaimplementacindeestosfiltrosydelosefectosproducidosdela cuantificacindelaseal.Porltimo,sealarqueparaunamejorcomprensindela unidad temtica se han elaborado algunos ficheros en MATLAB. stos sern presentados a lolargodelcaptulo,elalumnopuedeadquirirlosenelservidorWEBdedepartamento (www.elai.upm.es). 12.1 Conceptos bsicos sobre sistemas discretos Posiblemente lo primero en preguntarse sera qu es un filtro digital ?, pues bien, segn se estudi en el anterior captulo sobre Tratamiento Analgico de la Seal, los filtros tratan de extraer alguna caracterstica de la seal de entrada; en trminos frecuenciales, se hablabadelpasodeunadeterminadabandadelespectrodelasealdeentrada.Porlo tanto, los filtros digitales son sistemas discretos que tratan de extraer alguna caractersticafrecuencial de una seal muestreada. Peroanteestadefinicin,aparecenlosvocablostpicosdelProcesamiento Digital, tales como seal muestreada o sistema discreto. Por lo que se va a proceder a describir los conceptos bsicos sobre los sistemas discretos. Las seales en tiempo discreto surgen si el sistemainvolucralaoperacindemuestreodesealesentiempocontinuo.Laseal muestreada es x0, xT, x2T,..., donde T es el periodo de muestreo. Dicha secuencia de valores Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-017 queaparecendelaoperacindemuestreonormalmenteseescribecomoxk.Sielsistema incluye un proceso iterativo realizado por una computadora digital, la seal involucrada es unasecuenciadenmerosx0,x1,x2,...Lasecuenciadenmerosnormalmenteseescribe como{xk}endondek,enteroasociadoalelemento,eselndicedelmismo.Estendice podr ser positivo o negativo. { { kx x x x x x ,... , , , , ...,2 1 0 1 2 El ndice 0 es el origen de la secuencia. Aunque {xk} es una secuencia de nmeros, sta se puede considerar como una seal muestreada de x(t) cuando el periodo de muestreo T es de 1 segundo. Ejemplo 12.1 Obtener la secuencia discreta de un armnico de 100 Hz, de amplitud 0.5 V que ha sido muestreado con una frecuencia de 1kHz, sabiendo que el desfase en laadquisicinesde30yeltiempototaldemuestreohasidode20ms.No considere los efectos de cuantificacin de la seal. Una sinusoide de tiempo continuo viene dada por la frmula matemtica siguiente: ( ) ( ) + ft sen U t ue2max Si se obtiene una seal de tiempo discreto tomando regularmente muestras {xk} a la frecuencia de muestreo fs=1/T, se obtendr: ( ) ( )

,`

.|+ + kffsen U kT f sen U usk2 2max max Paralosvaloresindicadosdelejercicio,lasecuenciamuestreadatendrcomo resultado: { { 05 . 33 . 48 . 45 . 25 . 05 . 33 . 48 . 45 . 25 . 05 . 33 . 48 . 45 . 25 . 05 . 33 . 48 . 45 . .25 ku(12. 1 ) (12. 2) (12. 3) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 8ELAI-UPM-DOC001-01 A continuacin se presenta la resolucin mediante MATLAB. Habiendo definido el concepto de secuencia, al que se ha asociado con el resultado del muestreo, el trmino de sistema discreto puede ser entendido. Un sistema discreto es un algoritmo que permite transformar una secuencia en otra. } { } {k kx f y Comoejemplodesistemadiscretosepodraconsiderarcualquierprogramade computadorquetransformeunatabladevaloresenotra,porejemplo,laobtencinde cuadrados, la suma de los k primeros nmeros, la media de una serie de muestras, etc. Los sistemasdiscretospuedenclasificarseenestticosodinmicos.Unsistemadiscretoes estticocuandoelelementodelasecuenciadesalidadeunciertondicedepende nicamentedelelementodelasecuenciadeentradadelmismondice.Porejemplo,el sistemaquegeneraunasecuenciacuyoselementossonloscuadradosdelos correspondienteselementosdeunasecuenciadeentrada.Encasocontrario,elsistemase denominadinmico,estoes,lasecuenciadesalidadeunciertondicedependedelas secuencias de entrada y de salida de rdenes distintos al suyo. En la figura 12.2 el sistema discreto es dinmico, ya que ante una entrada en escaln unitario la secuencia de salida no slo depende del ndice de la secuencia de entrada sino tambin de los estados anteriores. (12. 4) Resolucin del ejercicio en MATLAB >> k = 0:20; T = 1/1000; >> uk = 0.5 * sin ( (2*pi*100*( k*T)) + pi/6 ); >> stem ( kT, uk ); Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-019 Unsistemadiscretoescausalsielvalordeunelementodelasecuenciadesalida depende nicamente de la secuencia de entrada y de salida de menor o igual ndice.( ) ,... , , ,..., ,2 1 2 1 k k k k k kx x x y y f yLos sistemas discretos que no verifiquen esta propiedad se denominan no causales. Si la funcin que relaciona cada elemento de la secuencia de salida es lineal, el sistema se denominaasimismolineal. Centrados en los sistemas dinmicos causales, un sistema ser lineal, si la funcin expresada en (12. 5) es lineal, es decir, de la forma: m k m k k n k n k k kx b x b x b y a y a y a y + + + + + + + ... ...1 1 0 2 2 1 1 Cuandoaiybisonconstantessedicequeelsistemalinealesinvarianteenel tiempo. A stos se les conoce por el acrnimo de LTI (Linear Time Invariant). Un sistema linealinvarianteverificaelprincipiode linealidad, es decir, que, en idnticas condiciones iniciales,aentradassumadeentradasoproductoporunaconstante,lecorresponden salidas sumas o productos de la misma constante. La figura 12.2 ilustra este principio. (12. 5) (12. 6) Figura 12. 2 Sistema discreto dinmicoCaptulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 10ELAI-UPM-DOC001-01 Enelpresentetemaslovanaserconsideradoslosfiltrosdigitalesquesean sistemas discretos dinmicos lineales e invariantes por lo que normalmente se omitirn los adjetivosparasudefinicin.Lasecuacionesusadasparadefinirestossistemasse denominanecuacionesendiferenciasyjueganunpapelsimilaraldelasecuaciones diferenciales lineales en los sistemas continuos. Se denomina secuencia de ponderacin a la que se obtiene en la salida del sistema cuando se aplica a la entrada una secuencia tipo impulso. { { ,... , , , , ...,2 1 0 1 2g g g g g gk Si el sistema es causal gk es igual a cero para k < 0. Paraobtenerlasecuenciadesalidasobreunsistemalinealanteunasecuenciade entradadadahabrdeaplicareloperadorconvolucindiscreta;esteoperadorsedefine como: { { { { { k k k k kg x x g y * * donde{gk}representalasecuenciadeponderacin.Enellascadaelementodela secuenciade salida es calculada por la expresin: nn n knn n k kg x x g y(12. 7) (12. 8) (12. 9) Figura12.3Linealidaddelossistemasdiscretosdinmicoslinealese invariantes Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0111 Ejemplo 12.2 Dada la ecuacin en diferencia: 1 2 1218143 + k k k k kx x y y yobtenerlasecuenciadeponderacinydeterminarlasalidaanteuna entrada en escaln. Paraobtenerlasecuenciadeponderacinhabrdeaplicarleunaentrada impulsional,deformaquelaentradaserdeltipo{ { ,.. 0 , 0 , 0 , 1 kx .Laevolucindela salidapuedeserrealizadaatravsdeunatabla,enlasquesevanobtenidolosresultados temporales al aplicar la ecuacin en diferencias: kxkxk-1yk-1yk-2yk 010001 101100.25 2000.2510.0625 3000.06250.250.0156 4000.01560.06250.0039 5000.00390.01560.0010 6000.00100.00390.0002 7000.00020.00100.0001 8000.00010.00020.0000 Luego la secuencia de ponderacin del sistema LTI es: { { 0001 . 0 0002 . 0 0010 . 0 0039 . 0 0156 . 0 0625 . 0 25 . 0 1 kgParacalcularlarespuestaenescalnseaplicareloperadorconvolucin,(12.9), donde la seal de entrada ser{ { ,.. 1 , 1 , 1 , 1 kx . La secuencia de salida corresponder a: ...3125 . 1 0625 . 0 25 . 0 125 . 1 25 . 0 11702701700 + + + nn n knn n knn n kx g yx g yx g y (12. 10) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 12ELAI-UPM-DOC001-01 12.1.1 Estabilidad de un sistema discreto Sedicequeunsistemadiscretoesestablesi,antecualquiersecuenciadeentrada acotada la secuencia de salida es tambin acotada. Parasistemaslineales,lacondicindesuficienciade estabilidad debe cumplir que la secuencia de ponderacin sea absolutamente sumable: < nng12.1.2 Respuesta en frecuencia de un sistema discreto Tal como se estudi en el captulo 2, al excitar un sistema continuo LTI con seales sinusoidales, este experimento permite desarrollar el anlisis en el dominio de la frecuencia paradichossistemas.Demaneraparalela,enlossistemasdiscretossevaavercomose puedeobtenerunarepresentacinfrecuencialdelosmismosquesirvanpara caracterizarlos. Antesdeentrarenlaobtencindelarespuestaenfrecuenciasserequiereanalizar laspropiedadesdelassealesexponencialesdiscretas.Trassuestudioseestaren condicionesdecomprendermejorlosmecanismosinherentesalarespuestaenfrecuencia de los sistemas discretos. (12. 11 ) Resolucin en MATLAB >> x = zeros (10,1); x(1) = 0; >> y = filter( [1;-0.5],[1;-0.75;0.125],x); >> stem (1:10, y); >> x = ones(10,1); >> y = filter( [1;-0.5],[1;-0.75;0.125],x); >> stem (1:10, y); Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0113 12.1.2.1Propiedades de periodicidad de exponenciales discretas Ascomoexistenmuchassimilitudesentrelassealescontinuasylasdiscretas, tambinhayimportantesdiferencias.Unadestasconciernealasealexponencial discreta kT je.Ensealescontinuas, 0t je,mientrasmsgrandesealamagnitudde , mayorserlavelocidaddeoscilacindelaseal,encambio,lassealesdiscretas kT je son peridicas cada 2: ( ) kT j Tk j k j k T je e e e + 2 2 De la ecuacin (12. 12) se observa que la exponencial de frecuencia 2 + Tes la misma que aquella con T. Por tanto, al considerar las exponenciales complejas, se tomar encuentaunintervalodefrecuencia2.Aunquedeacuerdoconlaanteriorexpresin, cualquier rango de longitud 2 sera adecuado, en la mayora de las ocasiones se suele usar el intervalo T T . Debidoalaperiodicidadqueimplicalaecuacin(12.12),lasealnotieneun incrementocontinuoenlavelocidaddeoscilacin.Porelcontrario,conformese incrementa a partir de 0, se obtiene que la seal oscila ms rpido hasta que se alcanza /T.Conformeaumentelafrecuenciaapartirdeestepuntodisminuirlavelocidadde oscilacin hasta llegar a 2/T, la cual produce la misma secuencia constante que = 0. 12.1.2.2Respuestadeunsistemadiscretoanteunaexponencial peridica Para facilitar el estudio se considerar que el periodo de muestreo es 1, T = 1. Slo seconsiderarelcarcterdelasecuencia,independizndolodeT.Seaunsistemade secuencia de ponderacin{gk} y considrese que su entrada es excitada por una secuencia exponencial peridica: { { jkke x Cuyoselementossonfuncindeunparmetrode.Lasecuenciadesalidasegn la aplicacin de la convolucin discreta, (12. 9), ser: ( ) nn jkk jnn k jk ke g e e g y El ndice de la secuencia es k, con lo que el sumatorio es un factor independiente de este ndice, por tanto: (12. 12) (12. 13) (12. 14) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 14ELAI-UPM-DOC001-01 { { k j n jk ke e g y

,`

.| Si se define la funcin ( ) ,`

.| nn jne g GLa expresin queda: { ( ){ k jke G y Estaexpresinpermitevercomo,cuandoelsistemaesexcitadoantelasecuencia deunaexponencialdiscretadefrecuenciaangular,(12.13),loselementosdela secuenciadesalidasoncalculadosmultiplicandoelvalordelaentradaporeloperador G(). Este operador G(), definido por (12. 16), se denomina respuesta en frecuencia del sistemadiscretoconsiderado.Esunafuncindelparmetrorealyperidicarespectoa l,comopuedeapreciarseobservando(12.16).Superiodoes2.Larespuestaen frecuenciaesasmismounafuncincompleja,lacualrequierecualquierrepresentacin grfica de la misma en dos curvas, por ejemplo, haciendo uso del diagrama de Bode. Ejemplo 12.3 Determinar la respuesta frecuencia de un filtro binomial cuya secuencia de ponderacin es {1/4, 1/2, 1/4}. Al aplicar (12. 16) sobre la secuencia de ponderacin dada: ( ) 220412141j j k jke e e g G + + dando valores de 0 hasta se conseguir la respuesta. Aunque G() es una funcin continua, con el propsito de representarla en el diagrama de Bode se hacen, por ejemplo, 64 intervalos entre 0 y , confeccionndose la tabla siguiente: G() ( ) G ( ) ( ) G arg0110 1/640.99-j0.0490.999-2.81 2/640.99-j0.0970.997-5.62 ............ 63/64-0.0006-j0.000030.0006-178 (12. 15) (12. 16) (12. 17) Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0115 Imponiendo las condiciones adecuadas a la funcin de peridica G(), continuidad atrazosconderivadasdevariacinacotadaenlosintervalosdecontinuidad,entoncesla expresin (12. 16) es el desarrollo en series de Fourier de G(), siendo los elementos de la secuenciadeponderacin,{gk},loscoeficientesdedichodesarrollo.Estehechopermite utilizar la expresin del clculo de los coeficientes del desarrollo para obtener el valor de la secuencia de ponderacin a partir de la respuesta frecuencial. Se tiene as que: ( ) d e G gk jk21 Esta expresin (12. 18) permite realizar la operacin inversa a la efectuada en (12. 16).Antes,delasecuenciadeponderacin,{gk},seobtenalarespuestaenfrecuencia G(),mientrasqueahora,con(12.18),deestafuncinG()seobtienelasecuenciade ponderacin. De igual forma que se vio en el diseo de filtros analgicos, se puede establecer una estrategiadedefinicindelfiltrodigitalmediantelarespuestafrecuencialdeseada.De manera que se puede plantear la determinacin de su secuencia de ponderacin a partir del conocimientodesurespuestafrecuencialymedianteelusode(12.18)obtenerlos coeficientes del filtro. (12. 18) Resolucin en MATLAB >> [G,W] = freqz ([1/4,1/2,1/4], 1,64); >> plot(W,abs(G)); >> plot(W,angle(G).*(180/pi)); Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 16ELAI-UPM-DOC001-01 Ejemplo 12.4 En la figura 12.4 se representa la respuesta en frecuencia de un filtro paso bajonormalizado,cuyafrecuenciadecorteescconvalorde2.Determinarla secuencia de ponderacin del filtro. Usando la expresin (12. 18) y extendindola entre c tquedar con: ( )kk send e gc k jkcc 121 cuyosvaloressern: { { ... 03 . 0 12 . 0 29 . 0 63 . 0 29 . 0 12 . 0 03 . 0 ... kg .Ntesequeelfiltro es no causal. Figura 12. 4 Respuesta frecuencia de un filtro paso bajo discreto Resolucin en MATLAB >> k=-20:20; wc = 2; >> gk=sin(wc*k)./(pi*k); g(21) = wc/pi; >> stem(k,gk); Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0117 12.1.3 Transformada de Fourier de una secuencia La forma de asociar la secuencia de ponderacin{gk} a la funcin G(), puede ser extendida a cualquier secuencia que cumpla determinadas propiedades. As se construye lo que se denomina la transformada discreta de Fourier de una secuencia, a sta se la conoce por las siglas DFT (Discrete Fourier Transform). De este modo, dada una secuencia, {xk}, se define su transformada de Fourier como la funcin: ( ) kk jke x Xsta es igualmente peridica, de ciclo 2, y en las condiciones antes indicadas es un desarrollo en serie de Fourier, lo que permite definir la transformada inversa: ( ) d e X xk jk21 LatransformadadeFourierdeunasecuenciaesunafuncincompleja,siendo usualmente representada grficamente por sus curvas de mdulo y de argumento. Al igual que ya se vio en los sistemas continuos, la utilidad ms importante que se va a hacer de la transformacindeFouriereslaquesederivadelarelacinexistenteentrelas transformadasdeFourierdelassecuenciasdeentradaydesalidadeunsistemaLTIysu respuesta en frecuencia, de manera que: ( ) ( ) ( ) X G Y Estarelacinpermitetrataralossistemasdiscretosdeunamanerasimilarconlo que se proceda con los continuos; dando un procedimiento para determinar la secuencia de salidaapartirdelarespuestaenfrecuencia,verfigura12.5.Conocidalarespuestaen frecuencia del sistema y la transformada discreta de la secuencia de entrada, se determinar latransformadadelasecuenciadesalidasegn(12.21),yposteriormenteseaplicarla transformada inversa, obteniendo la secuencia de la salida. (12. 19) (12. 20) (12. 21) Figura 12. 5 Relacin fundamental de los sistemas discretos Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 18ELAI-UPM-DOC001-01 Ejemplo 12.5 Dadolarespuestaenfrecuenciadeunfiltrobinomialdeorden2(ver ejemplo 12.3): ( ) 2412141j je e G + + y siendo{ { ,... 0 , 0 , 0 , 1 , 1 kxla excitacin al sistema, calcular la secuencia de salida. En primer lugar se proceder a calcular la DFT de la secuencia de entrada: ( ) j k jke e x X + 110 Aplicando la relacin fundamental visto en (12. 21) se tendr que: ( ) ( ) 3 2 2414343414121411j j j j j je e e e e e Y + + +

,`

.|+ + + Por tanto, la secuencia de salida valdr: { ''41,43,43,41ky Resolucin en MATLAB >> Xw = fft( [1;1], 64); >> Gw = fft( [1;2;1]./4, 64); >> Yw = Xw .* Gw; >> yk = ifft( Yw ) 0.25 0.75 0.75 0.25 0 ... Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0119 12.1.4 Transformadas z La variable compleja z es una transformacin no lineal de la variable de Fourier, conelpropsitodequelafuncindetransferenciadelsistemadiscretoobtenidadeesta transformacinsearacional.Dadaunasecuenciareal{xk}sedefinesutransformadaenz como una funcin compleja: () { kkk kC z z x x Z z XEnestasexpresionessepuedenobservarlasventajasde,porunaparte,noser funcionesperidicas,yporotra,deserracionales.Adems,esfcilverqueladefinicin de transformada de Fourier a z, se consigue haciendo: je z As, por ejemplo, la transformada en z de una secuencia impulso ser: { { () kkk kz z z 1 ,... 0 , 0 , 10 La transformada de la secuencia en escaln resultar: { { () k kk kk kzzzz z x z X X1 11,... 1 , 1 , 110 Otro ejemplo tpico, generalizacin del anterior, es la secuencia exponencial: { { () ( ) 0 01 3 2,... , , , 1k kkk kkaz z a z X a a a xque, por ser una serie geomtrica, ser convergente para11|a|, y su suma valdr: ()a zzazz X111 Por ltimo, la transformada del desplazamiento ser: (12. 22) (12. 23) (12. 24) (12. 25) (12. 26 ) (12. 27) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 20ELAI-UPM-DOC001-01 ( ) () kn n n kn kkkn k n kz X z z z x z x x Z) ( 12.1.4.1Funcin de transferencia en z Dadounsistemadiscretodefinidoporsusecuenciadeponderacin{gk},cabe considerar,siexiste,sutransformacinz,G(z).Teniendoencuentalarelacindela convolucin entre entrada, ponderacin y saliday la relacin entre la convolucin de dos secuencias y sus transformadas, un sistema como el de la figura 12.5, verifica que: () () () z X z G z Y EloperadorG(z),transformadazdelasecuenciadeponderacindelsistemase denomina funcin de transferencia en z del sistema considerado. Esta funcin de transferencia del sistema puede ser calculada a partir de la ecuacin en diferencias que lo determina. Partiendo de la ecuacin que define el comportamiento de un sistema dinmico lineal: m k m k k n k n k k kx b x b x b y a y a y a y + + + + + + + ... ...1 1 0 2 2 1 1 Y calculando ahora latransformada z de las dos partes de la igualdad y teniendo en cuenta las propiedades de linealidad y desplazamiento, se obtiene: () () () () () () () z X z b z X z b z X b z Y z a z Y z a z Y z a z Ymmnn + + + + + + + ... ...11 02211 Entonces la relacin entrada/salida del sistema ser: (12. 28) (12. 29) (12. 30) (12. 31) Figura 12. 6 Condicin de relacin de transformadas Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0121 () () z Xz a z a z az b z b bz Ynnmm + + + ++ + +... 1...221111 0 Y por tanto la funcin de transferencia del sistema ser: ()nnmmz a z a z az b z b bz G + + + ++ + +... 1...221111 0 12.1.4.2Transformada inversa Seplanteaelproblemainverso,obtenerlasecuencia{xk}apartirdesu transformada en z, X(z). Para el caso de tenerX(z) en forma de funcin racional, se puede calcular de forma sencilla a partir del teorema de los residuos, estableciendo que: () [ ] C de interiores polos los para de residuos211 1 ncnnX(z)z dz z z Xjx siendo C una curva cerrada que envuelve el origen. En el caso de secuencias con trminos nicamente de ndice positivo, o nicamente negativo, se puede utilizar el clculo de los coeficientes mediante el mtodo de la divisin larga. Unaposibilidadmsdeclculodelatransformadainversaespordescomposicin enfraccionessimples.SiX(z)esracional,contodossuspolossimplesyelgradodel numerador inferior al del denominador, entonces: ()Niiiiz aAz X11 y la transformada inversa ser la suma de las transformaciones inversas, que, en el casodesecuenciasdendicepositivo,sertransformadaenunasumadesecuencias exponenciales y por tanto en este caso: 0 para 00 para1< k xk a A xkniki i k (12. 32) (12. 33) (12. 34) (12. 35) (12. 36) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 22ELAI-UPM-DOC001-01 Ejemplo 12.6 Un sistema discreto est definido por la siguiente ecuacin en diferencias: 2 1 1121127653 + k k k k ky y x x ycalcularlaFDTentransformadasenzycalcularlarespuesta del sistema ante una entrada en escaln. Utilcese el mtodo de fracciones simples. Al aplicar las transformadas en z sobre la ecuacin en diferencias quedar: ( )2 111211271653 + z zzz G z Para calcular la secuencia de salida se aplicar (12. 29): ( ) ( ) ( )2 111121127165311 + z zzzz G z X z YEsfcildeobtenerlosdospolosdeG(z),unoenz=1/3yotroenz=1/4.La descomposicin en fracciones simples de Y(z) resultar a : ( )11 1 1313311141131 + zz zz YLa antitransformada ser inmediata (ver(12. 35) y (12. 36) ): 313314131+

,`

.|

,`

.| k kkyy los valores de la secuencia sern: { 33 . 4 32 . 4 31 . 4 29 . 4 2 . 4 91 . 3 3 kyCarlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0123 12.1.5 Muestreo de seales Laideademuestrasreferidasaunsistemabasadoenuncomputadordigital,se concreta en la toma de valores de una seal continua en sucesivos instantes de tiempo. El muestreo de seales consiste en la construccin de secuencias a partir de seales continuas. Unproblemaquesaltaalavistaeslaprdidadeinformacin.Enestepuntoseanalizar fundamentalmenteesteproblema,dndoselascondicionesenlasqueelprocesode muestreo/reconstruccin, (CAD/CDA), no signifique perdida de informacin. El caso ms interesante de muestreo es el peridico, que se caracteriza por que los instantes de toma de las muestras estn regularmente espaciados en el tiempo y a ste se le llama periodo de muestreo, T,y a su inversa, frecuencia de muestreo, fs. El elemento que realiza este proceso se denomina muestreador, siendo la forma usual de representarlo en losdiagramadebloqueslaindicadaenlafigura12.7.Enestebloquelasalidaest relacionada con la entrada por la expresin: ( ) kT x xk (12. 37) Figura12.7Smbolodel muestreador Resolucin en MATLAB >>k=0:10; >>yk = filter([3,-5/6],[1,-7/12,1/12],ones(1,11)); >>stem(k,yk); Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 24ELAI-UPM-DOC001-01 Intuitivamentesepuedeapreciarqueelperiododemuestreovaajugarunpapel fundamentalenesteproceso.Laeleccindelafrecuenciademuestroesunproblema fundamental en el sistema de datos muestrados. Conviene muestrear los datos con la menor frecuenciaposible,peroquesealosuficientementegrandecomoparapoderevitarla prdidadeinformacinyqueseaposiblereconstruirlafuncincontinuaatravsdelas muestras.Justamente,elteoremadelmuestreoeselquepuedeayudaradeterminarla frecuencia ptima del convertidor analgico/digital. Para poder establecer las conclusiones del teorema del muestreo, se va a recurrir al estudiofrecuencial.Siunasealcontinua,x(t),contransformadadeFouriercontinua, Xc(), entonces las relaciones seal/transformada sern del tipo: ( ) ( )( ) ( ) d e X t xdt e t x Xt jCt jc21 La relacin existente entre la seal continua y la secuencia procedente del muestreo estar dada por (12. 37), por lo tanto, el ligazn entre la transformada de Fourier continua y la secuencia ser del tipo: ( ) d e X kT x xkT jc k21) (Silasecuencia{xk}tieneasimismotransformadadiscretadeFourierXd(), entonces estar relacionada con su transformada por medio de: ( ) d e X xkT jd k21 Elproblemaesestudiarsiexistealgunarelacinentreestasdostransformadas,la delasealcontinuaXc()yladelasecuenciaXd().Sepuede demostrar que la relacin existente es: ( ) t t t ,`

.|+ rc drTrX X ,... 3 , 2 , 1 , 02 (12. 38) (12. 39) (12. 40) Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0125 Portanto,silasealcontinuatieneunatransformadadeFourier,cuyacurvade mdulos, por ejemplo,se representa en la figura 12.8. Entonceslacurvademdulosdelatransformadadelasecuenciaobtenidapor muestreo, ser peridica 2/T tal como queda reflejado en la figura 12.9 Llegando as a las condiciones que se deben de cumplir en el proceso de muestreo paraquesepuedarealizarsinprdidadeinformacin.Suponiendoquelasealcontinua x(t) con transformada de Fourier Xc() sea nula a partir de una determinada frecuencia 0. ( )00 > cXLassealesquecumplenestacondicinsedenominandebandalimitada.Siuna seal de este tipo se muestrea con un periodo que verifique: (12. 41) (12. 42) Figura12.8TransformadadeFourierdeunaseal continua determinada Figura12.9Transformada discretadeFourierdelasealcontinuaconunmuestreadorde periodo T Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 26ELAI-UPM-DOC001-01 0>T Es decir: 0< TLatransformadadeFourierser,siguiendoelejemplo,delaformaindicadaenla figura 12.9. A /T se la llama frecuencia angular de Nyquist. Siporelcontrario,elperiododemuestreoessuperioraestevalor,T>/0,la transformadadelasecuenciadelejemploserdelaformaindicadaenlafigura12.10, donde se puede apreciar que Xc() y Xd() no coinciden, y por lo tanto el conocimiento de la transformada de la secuencia no permite obtener la transformada de la seal continua. A este fenmeno se llama solapamiento en frecuencias o aliasing.Recurdesecmoenelcaptuloanteriorsemencionabaeldiseodefiltros antialiasingenlapropagacindelasealcontinuaalconvertidorA/D,conelobjetode tener seales de banda limitada y que cumplan con (12. 42) y (12. 43). Por acabar con este resumen, hay que citar que adems del problema del muestreo, habradeestudiarelefectotantodelacuantificacincomoeldereconstruccin.El primero analiza cmo afecta el problema del convertidor A/D en la transformacin de una sealanalgicadeinfinitosvaloresaotradevaloresfinitos;mientraselsegundoestudia (12. 43) (12. 44) Figura 12. 10 Efect o de solapamient o en frecuencia o aliasing Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0127 los problemas de la reconstruccin debido a los convertidores D/A. stos sern analizados en el ltimo punto del captulo. Ejemplo 12.7 Una seal continua est constituido por la siguiente expresin: ( ) ( ) ( ) 8000 cos 5 . 1 4000 + t sen t xDeterminarlaseriedeFourierdelaseal.Estasealposteriormentees muestreada a 10 kHz y a 6 kHz durante 2 ms con desfase nulo, obtener las DFT de las secuencias obtenidas. AlserdosarmnicospuroslaseriedeFouriercontinuaestarconstituidapordos componentes, una a 2 kHz y la otra a 4 kHz, con amplitudes de 1 y 1.5 respectivamente. En lafiguraadjuntaserepresentalasealcontinuadurante2msyelmdulodesuseriede Fourier. Lasmuestrasobtenidasdependerndelafrecuenciademuestroysusvalores estarn relacionados con las siguientes expresiones: 2 , 1 , 060008000cos 5 . 160004000100008000cos 5 . 11000040002 1

,`

.|+

,`

.|

,`

.|+

,`

.| k k k sen x k k sen xk k Los valores de las secuencias xk1 corresponden a una frecuencia de 10kHz y xk2 de 6kHz. Ambas son representadas en la figura de abajo. Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 28ELAI-UPM-DOC001-01 Resalta a la vista la prdida de informacin en el segundo muestreo, compare estas grficas con la forma de la seal continua. Aplicando a estas secuencias la transformada de Fourier, el resultado es el esperado. En el primer caso no hay solapamiento en frecuencias, mientrasenelsegundoelespectrodelasecuenciahaperdidolainformacindelaseal continua. Resolucin en MATLAB >>fs1=10000;fs2=6000; >>i=0:1/fs:2e-3; >>j=0:1/fs2:2e-3; >>xk1=sin(2*pi*2000*i)+1.5*cos(2*pi*4000*i); >>xk2=sin(2*pi*2000*j)+1.5*cos(2*pi*4000*j); >>figure(1);subplot(2,1,1); >>plot(0:1/fs:2e-3,xk); >>subplot(2,1,2); >>Xw1=fft(xk,2048); >>plot(1/fs:fs/2048:fs,abs(Xw1)); >>figure(2);subplot(2,1,1); >>plot(0:1/fs2:2e-3,xk(1:13)); >>subplot(2,1,2); >>Xw2=fft(xk2,2048); >>plot(1/fs2:fs2/2048:fs2,abs(Xw)); Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0129 Paraejercitarseyexperimentarconelteoremadelmuestreoseproponevariarla frecuenciademuestreodeficherosWAV.Estosregistrossecaracterizanporserun formato digital de sonidos. El proyecto que se propone es abrir un fichero de audio y tomar slo una muestra de cada n valores ledos. Posteriormente, el fichero ser reproducido. Este experimento no slo mostrar a travs de su audicin la prdida de calidad sino tambin el espectro de la seal con el formato original y el submuestreado. Proyecto 12.1 HacerunaaplicacinquepermitaabrirficherostipoWAVyqueelijauna nica muestra de cada n. Reproducir ambos sonidos, la del fichero original y la del fichero creado. Igualmente mostrar la evolucin temporal de las secuencias y sus espectros. EsteproyectoseharesueltoconMATLABv5.3yconeltoolboxdeSignal Processing.Sehacreadounafuncinquetienecomoargumentoselcaminodelfichero WAV y el valor de n. La funcin devuelve el path al fichero de salida creado, el cul se ha generado del submuestro del fichero fuente. Resolucin en MATLAB >>FichEntr =c:\tmp\The Microsoft Sound.wav; >>n=10; >>FichSal = proy_12_1(FichEntr,n); Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 30ELAI-UPM-DOC001-01 12.2Filtros digitales LosfiltrodigitalsonunaclasedesistemasdiscretosLTIutilizadosparaextraer caractersticasdesdeeldominiodelafrecuenciasobresealesmuestreadas.Eldiseode losfiltrosrequieredelassiguientesetapas:(1)especificacionesdelaspropiedades deseadasdelsistema,(2)aproximacionesdelasespecificacionesmedianteunsistema causalentiempodiscretoy(3)larealizacindelsistema.Elprimeroesaltamente dependiente de la aplicacin y el tercero de la tecnologa utilizada para la implementacin. Entrminosprcticos,elfiltrodeseadoserealizautilizandocmputodigitalyseemplea paraunasealqueprovienedetiempocontinuoseguidoporunaconversinanalgico-digital. Cuando se utiliza un filtro digital para realizar el tratamiento de seales en tiempo continuo,empleandounaconfiguracincomolaindicadaenlaFigura12.11,tantolas especificaciones del filtro en tiempo discreto como las que se indica en tiempo continuo se suelendareneldominiodelafrecuencia.Comosedemostrenlaseccin anterior, si se usaunsistemaLTIysilaentradaesdebandalimitadaylafrecuenciademuestreoeslo suficientemente alta para evitar el solapamiento, el sistema completo se comporta como un sistema LTI continuo en el tiempo cuya respuesta en frecuencia es: ( )( )'>m km kwk01 talquemmarcaelnmerodelasecuenciadetruncamientoyelordendelfiltro. Adems, a esta ventana y a otras que se vern ms adelante se las impone la condicin de simetra para hacer cumplir la caracterstica de fase lineal. Esinstructivoconsiderarelefectodelafuncinventanaenlarespuestaen frecuenciadeseada.Recurdesequelamultiplicacindelafuncinventanacon{gk}es equivalente a la convolucin de G() con W(), donde W() es la transformada de Fourier delafuncinventana.As,laconvolucindeG()conW()producelarespuestaen frecuencia del filtro FIR (truncado). Esto es, (12. 61) (12. 62) Figura12.18Filtropasobajode orden 51 Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 42ELAI-UPM-DOC001-01 ( ) ( ) ( )dv v W v GTGTT 21 La transformada de Fourier de una ventana rectangular es: ( )( ) ( )( ) 2 /2 / 11112 /) 1 () 1 (0T senm T seneeee WTm jm T jm T j mkkT j+ + + Larespuestaenmagnituddelafuncinventanaseilustraenlafigura12.19para m=7.NtesequeW()paralaventanarectangulartienefaselineal,evidenteporel carcter de simetra de sus coeficientes.Amedidaqueelordendelfiltrocrece,elanchodellbulo principal decrece. Esta caracterstica se relaciona con la regin de transicin entre la banda pasante y la supresora, esto es, cuando se aumente el orden del filtro, el corte entre estas bandas ser ms abrupto. Para el caso de ventanas rectangulares los lbulos laterales son altos y de hecho, a medida quemcrecelasamplitudesdelpicodellbuloprincipalydeloslbulossecundarios crecen de forma que el rea encerrada en cada lbulo permanece constante mientras que su anchuradecrececonm.Comoelreadellbulopermanececonstantealcrecerm,las oscilaciones ocurren ms rpidamente, pero no disminuye su amplitud al aumentar m.Porlotanto,larespuestaenfrecuenciadelfiltroFIRtruncado,G(),serla convolucindelarespuestadeseada,G(),ydelatransformadadeFourier de la ventana rectangular, tal cual fue recogido en (12. 63).Suponiendo el diseo de un filtro paso bajo (12. 63) (12. 64) Figura 12. 19. Modulo de la transformada de Fourier de una ventana rectangular Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0143 con una frecuencia de corte c , la figura 12.20 muestra G() y W(), como se usara en la ecuacin referenciada. ElresultadonohacemsqueconfirmarlasconclusionesdelteoremadePaley-Wiener(verfigura12.20b).Sepuedeconstatarlaexistenciaderizadotantoenlabanda pasante como en la supresora y, adems, no es posible el corte abrupto entre ambas banda. Sinembargo,laaplicacindeciertasfuncionesventanaspermitensuavizarestos inconvenientes no deseado. Para evitarlo existen varios tipos de funciones ventanas, as por ejemplo se tiene: ( ) ( )'> m km k m kwk0/ 2 cos 1 Dondepara=0.5esllamadalaventanadevonHannycuando=0.54esla denominada ventana de Hamming. La ventana de Blackman est definida por: ( ) ( )'> + m km k N k m kwn0/ 2 cos 08 . 0 / cos 5 . 0 42 . 0 Para ilustrar las caractersticas de la respuesta en frecuencia de las ventanas de von Hann,HammingyBlackmansemuestranenlafigura12.21unejemplo.Setratade compararlasrespuestasfrecuencialesdeunfiltroFIRtruncadoporunaventana rectangular y los resultados de aplicar estas funciones ventanas. El orden del filtro es 21 y la frecuencia de corte es un cuarto de la frecuencia de Nyquist.(12. 65) (12. 66) Figura 12. 20. a) Convolucin entre la respuesta ideal y la ventana rectangular. b) Resultadode la convolucin. Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 44ELAI-UPM-DOC001-01 Todas estas funciones ventana tienen lbulos laterales significativamente ms bajos comparadosconlaventanarectangular.Sinembargo,paraelmismovalordelordendel filtro, el ancho del lbulo principal es tambin ms amplio para estas ventanas comparado conlaventanarectangular.Consecuentemente,estasfuncionesventanaproporcionan mayor suavizado a travs de la operacin de convolucin en el dominio de la frecuencia, y comoresultadolaregindetransicinenlarespuestadelfiltroFIResmsamplia.Para Figura12.21a)Respuestaconventanarectangularb)conventanavonHannc)ventana de Hamming d) ventana de Blackman e) Kaiser =2 f) Kaiser =4 Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0145 reducirelanchodeestaregindetransicinsetendrqueelevarelvalordem,locual resultaunfiltromscaro.Latabla12.1resumenestasimportantescaractersticasdel dominio de la frecuencia de las distintas funciones ventana. Tipo de ventanaAncho de transicin del lbulo principal Pico de lbulos laterales Rectangular4/(m+1)-13dB von Hann8/(m+1)-32dB Hamming8/(m+1)-43dB Blackman12/(m+1)-58dB Tabla 12. 1 Caractersticas frecuenciales ms importantes de algunas funciones ventana 12.3.2.1El mtodo de diseo de filtros mediante la ventana de Kaiser. Elcompromisoentrelaanchuradellbuloprincipalyelreadeloslbulos lateralessepuedecuantificarbuscandolafuncindeventanaqueestconcentradade formamximaalrededorde=0eneldominiodelafrecuencia.Esteasuntoseha considerado en profundidad durante largo tiempo. Entre 1966 a 1974, Kaiser descubri que sepuedeformarunaventacuasi-ptimautilizandolafuncindeBesselmodificadade primera especie. La ventana de Kaiser se define como: ( )( )'>

,`

.|

,`

.|

,`

.|m km k InIwk0/ 102120 donde = (m+1)/2 e I0( ) es la funcin de Bessel de primera especie, definida por la serie: ()

,`

.|

,`

.|+ 1202 !11kkxkx IAdiferenciadelasotrasventanas,laventanadeKaisertienedosparmetros:el orden del filtro, m, y el parmetro de forma . Variando m y se puede ajustar la amplitud de los lbulos laterales y el ancho del lbulo principal. Se demuestras que si se aumenta el orden del filtro y se mantiene constante, la banda de transicin disminuye mantenindose laamplituddeloslbuloslaterales.Dehecho,Kaiserobtuvo,medianteamplias experimentaciones numricas, una pareja de frmulas que permiten al diseador de filtros (12. 67) (12. 68) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 46ELAI-UPM-DOC001-01 predecir los valores del orden del filtro y del factor de formas necesarias para cumplir unas determinadaespecificacionesenfrecuencia.Adems,tambindemostrque,sobreun intervalosuficientementeampliodecondiciones,elnivelderizado,(verfigura12.20), est determinado por la seleccin de . Supuesto fijo el nivel de rizado, la frecuencia de la bandadelfiltropasobajosedefinecomolamximafrecuenciaparalaque ( )11 ' BG .Lafrecuenciadelabandasupresora,S,sedefinecomolamnima frecuencia para la que ( )2' sG . Debido al carcter simtrico de los coeficientes resulta que 2 1 De otro lado, la anchura normalizada de la regin de transicin es NB Sn 2 para la aproximacin del filtro paso bajo. Definiendo 2 10 minlog 20 AKaiser determin empricamente que el valor de necesario para cumplir un valor especfico de Amin est dado por: ( )( ) ( )'< + > 21 050 21 21 07886 . 0 21 5842 . 050 7 . 8 1102 . 0minmin min4 . 0minmin minAA A AA APara el caso de que sea cero, la ventana es igual a la rectangular. Adems, Kaiser descubri que para cumplir unos valores especficos de Amin, n y m debe satisfacer: nAm 285 . 28min la expresin permite predecir el valor de m con una precisin de t2 para un amplio margen de valores de Amin e n. Por tanto, con estas frmulas, el mtodo de diseo basado en la ventana de Kaiser casi no requiere iteraciones de prueba y error. Con el uso de las frmulas de diseo de la ventana de Kaiser, es inmediato disear unfiltroFIRpasobajoque cumpla unas determinadas especificaciones. El procedimiento de diseo sigue los siguientes pasos: Seestablecelarespuestadefrecuenciadeseadaparaunfiltropasobajo.Esto significa seleccionar los valores deseados de B, S y el rizado tolerable. (12. 69) (12. 70) (12. 71) (12. 72) Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0147 Hay que determinar la frecuencia de corte del filtro paso bajo ideal. Debido a la simetra de la aproximacin en la discontinuidad de G(), sera: 2S cc +Si se elige una ventana de Kaiserse podrn calcular los parmetros del orden delfiltroydelfactordeforma,utilizandolosvaloresdeAminenylas expresiones (12. 71) y (12. 72). En caso contrario, esto es, si se utiliza ventanas devonHann,Hamming,Blackmanorectangularhabrdeiriterandoconel orden del filtro, pues no se puede determinar con ninguna expresin emprica la longituddelfiltro.Comosemillaparaelordendelfiltrosepodrautilizarla ecuacin de Kaiser para el orden del filtro (12. 73).Una vez definida el orden del filtro se determinar la secuencia de ponderacindel filtro ideal por medio de: ( ) [ ]( ),... 2 , 1 , 0 t t kT kT k sengCCNck Larespuestaalimpulsodelfiltrosecalculamultiplicandolasecuenciadel filtro ideal por la secuencia de la funcin ventana, k k kw g g Por ultimo, si el filtro selectivo no es paso bajo se realiza la transformacin al tipodefiltrodeseado,haciendousodelasindicacionesdelcuadro12.1(ver siguiente seccin). 12.3.2.2Transformaciones sobre los filtros Aunqueelmtodoexpuestosehacentradoenlosfiltrospasobajo,tambines posible disear los otros tipos de filtros selectivos, esto es, paso alto, pasa banda y rechazo debanda.Paraellosepodrautilizarelmismoprocedimientoquesevioanteriormente, peroenvezdeaplicarlabandapasantealasbajasfrecuenciassepuederealizarpara cualquier otra forma de banda pasante. Sin embargo, y de igual manera que ya se vio en el anteriorcaptulosobrefiltrosanalgicos,aqutambinexistentransformacionesdepaso bajo a cualquiera de los otros tipos. As por ejemplo, si gk(PB) son los coeficientes de la respuesta al impulso de un filtro paso bajo con una frecuencia de corte (C)PB y una frecuencia de Nyquist ,N, entonces: (12. 73) (12. 74) (12. 75) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 48ELAI-UPM-DOC001-01 ( )) ( ) (1PB kkPA kg g siendo stos los coeficientes de la respuesta al impulso del filtro paso alto con una frecuencia de corte de: ( ) ( ) ( )PB c N PA c La demostracin de la validez de esta transformacin es bastante sencilla y es como sigue: ( )( ) + PA CNNPA Cd eTd eTgT jk T jkPA k / 21/ 21) ( Haciendoelcambiodevariablesenlaprimeraintegralde N + yenla segunda de N ( )( )( )( )[ ] ( )( )( )( )( ) PB kk T jkT jk T jkPA kg d e kTd eTd eTgPB CPB CPA C NNN PA CN1 cos/ 21/ 21/ 2100) ( + + Portanto,eldiseodelfiltropasoaltoconfrecuenciadecorte(C)PApasapor un diseo inicial de filtro paso bajo con frecuencia de corte( ) ( )PA c N y multiplicando el resultado por (-1)n. (12. 76 ) (12. 77 ) (12. 78 ) (12. 79) Figura 12. 22 Cambio de variables de a Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0149 Las relaciones entre paso bajo con pasa banda y rechazo de banda quedan recogidas en el cuadro resumen 12.1. ConversinTransformacinParmetros A paso alto ( )( )( ) PB knPA kg g 1 ( ) ( ) ( )PB c N PA c A paso banda ( )( ) ( )( ) PB k PBANDA kg T k g0cos 2 ( )( )PBPBC 0 2C 0 10central frecuencia + A rechazo de banda ( ) ( )( ) ( ),.. 2 , 110+ + n g gg gPBANDA k RB kPBANDA RB k

Cuadro 12. 1 Transformaciones de paso bajo a otro tipo de filtro Ejemplo 12.10 Disear un filtro paso bajo con ventana de Kaiser si la frecuencia de banda es de 6kHz y 9kHz la frecuencia supresora, sabiendo que se admite un rizado en la banda pasante de 0.1 y en la supresora es de 0.01. La frecuencia de Nyquist es de 15kHz. Como el mtodo de diseo de la ventana implica que los rizados deben ser idnticos se elige el ms restrictivo, esto es, se toma 2 = 0.01.Hay que determinar la frecuencia de cortedelfiltropasobajoideal,quedebidoalasimetradelaaproximacinenla discontinuidad de la respuesta en frecuencia del ideal, sera: 7500 229000 60002

,`

.|+c Para determinar los parmetros de la ventana de Kaiser habr de calcular ( ) dB Axn40 log 20 2 . 015000 26000 900022 10 min

,`

.| Alsustituirestosdosvaloresenlasecuacionesdelordendelfiltroydelfactorde forma resulta, (12. 80) (12. 81) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 50ELAI-UPM-DOC001-01 4 . 3 22 mLoscoeficientesdelaventanadeKaiserestarndeterminadosylasecuenciade ponderacin del filtro paso bajo ideal respondern a la ecuacin: ( ) [ ]( ),... 2 , 1 , 05 . 0 115 . 0 115 . 0 t t kkk sengk Ejemplo 12.11 Construir un filtro paso banda con ventana de von Hann de orden 8 cuyas frecuenciasdebandanseade10kHzy20kHz,sabiendoquelafrecuenciade muestreo es de 100 kHz. Atendiendoalcuadrohabrdedeterminarcualeslafrecuenciadecortedelfiltro paso bajo ideal. Por la simetra de la transformacin la frecuencia central ser de 15 kHz y la frecuencia del filtro paso bajo ideal de 5 kHz. La ventana de von Hann para m igual a 8 ser, { 09 . 0 345 . 0 654 . 0 904 . 0 1 904 . 0 654 . 0 345 . 0 095 . 0 kw(12. 82) Resolucin en MATLAB >>fb=6e3;fs=9e3;fn=15e3;e=0.01; >>A=-20*log10(e);Aw=pi*(fs-fb)/fn;w_cn=(fb+fs)/(2*fn); >>m=round((A-8)/(2.285*Aw)); >>beta=.5842*((A-21)^.4)+0.07886*(A-21); >>b=fir1(m,w_cn,kaiser(m+1,beta)); >>[H,F]=freqz(b,1,2048,2*fn); Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0151 La secuencia de ponderacin del filtro paso bajo ideal para una frecuencia de corte de 5kHz estar dada por: ( ) [ ]( ). 4 3 , 2 , 1 , 05 . 0 45 . 0 41 . 0 t t t t y kkk sengk cuyos valores sern: { 075 . 0 085 . 0 093 . 0 098 . 0 1 . 0 098 . 0 093 . 0 085 . 0 075 . 0 kgAl multiplicarlos por la ventana resultarn: ( ){ 0072 . 0 029 . 0 061 . 0 089 . 0 1 . 0 089 . 0 061 . 0 029 . 0 0072 . 0 PB kgYasedisponedelfiltropasobajo,portanto,seprocederaconvertirloenpasa banda segn la transformacin que se vio en el cuadro: ( ) ( ) PB k PBANDA kg k g ,`

.|

,`

.|100152 cos 2 resultando la secuencia de ponderacin deseada: ( ){ 0045 . 0 056 . 0 099 . 0 0 161 . 0 169 . 0 038 . 0 035 . 0 0145 . 0 PBANDA kg Resolucin en MATLAB >>m=8;f1=1e4;f2=2e4;fn=5e4; >>b=fir1(m,[f1/fn f2/fn],hanning(m+1)); >>[H,F]=freqz(b,1,2048,2*fn); Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 52ELAI-UPM-DOC001-01 12.4Diseo de filtros recursivos (IIR) ElmtodotradicionaldediseodefiltrosIIRentiempodiscretosebasaenla transformacindeunfiltroanalgicoenunfiltrodigitalquecumplalasespecificaciones preestablecidas. Esta solucin es razonable por varios motivos: ElartedeldiseodefiltrosIIRanalgicosestmuyavanzado,ycomose pueden obtener resultados tiles, es ventajoso utilizar los procedimientos de diseo que ya se han desarrollado para los filtros en tiempo continuo. MuchosmtodostilesdediseodefiltrosIIRentiempocontinuodan como resultado frmulas de diseo simples en forma cerrada. Por tanto, los mtodosdefiltrosIIRdigitalesquesebasanenesasfrmulasestndarde diseo de filtros IIR continuos son fciles de realizar. Elhechodequelosdiseosdefiltrosentiempocontinuosepuedantrasladara diseosdefiltrosdigitalesnoquieredecirquetenganlamismarespuestafrecuencial. Generalmentesucedequeelfiltroanalgicoempleadoparalaaproximacintieneuna respuestaenfrecuenciadiferentedelarespuestaenfrecuenciaefectivadelfiltrodigital. Estacircunstanciaindicaquealdisearunfiltrodigitalsepartedeunconjuntode especificacionesentiempodiscreto;mientraslascaractersticasdelfiltroentiempo continuoseobtienendelatransformacin.Alrealizarestaconversinsedeseaquela respuestaenfrecuenciadelfiltrodigitalpreservelaspropiedadesesencialesdelfiltro analgico.Estoimplicaconcretamentequeseesperaqueelejeimaginariodelplanosse transforme en la circunferencia unidad del plano z. Una segunda condicin es que un filtro estableanalgicosedebedetransformarenunfiltroestabledetiempodiscreto.Esto significaquesielfiltrocontinuotienelospolosenelsemiplanonegativosdes,elfiltro digitaltienequetenerlospolosdentrodelcirculounidaddelplano z.Estasrestricciones son bsicas para las tcnicas de diseo de los filtros digitales IIR.12.4.1 Diseo de filtros IIR mediante transformadas bilineales Losfiltrosrecursivospuedenserdiseadosporvariosmtodos,siendoelms comnelbasadoenlastransformacionesbilineales.Esteprocedimientorequieredel conocimiento de la funcin de transferencia en el tiempo continuo del filtro a disear. Los coeficientes del filtro en el dominio s son transformados a uno equivalente en el dominio z. Los coeficientes de la discretizacin formarn el filtro IIR.El origen de este proceder viene dado por la cantidad de experiencia acumulada en el diseo de filtros analgicos. Por tanto, todos los polinomios, tablas, mtodos analticos y grficos para definir el filtro analgico, empleados en el anterior captulo, sern usados en el diseo de los filtros recursivos. Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0153 Si bien hay varios mtodos de discretizacin, la mayora de ellos tienen problemas desolapamientosenfrecuencias,porrealizarunarelacinentreelplanosazdevarias regiones del dominio s a una sola z. Sin embargo, la transformacin bilineal consigue una transformacin unvoca entre el dominio s a z. Esta transformacin se define como: 11 211 211++zzT zzTsY su relacin inversa es del tipo: ( )( )s Ts Tz2 / 12 / 1+y sustituyendo aj s + en la anterior expresin quedar: ( ) ( )( ) ( ) 2 / 2 / 12 / 2 / 1T j TT j Tzaa + +Si0 < , entonces, de la (12. 85) se deduce que1 < zpara cualquier valor de a. Delmismomodo,si0 > ,1 > z paratodovalordea.Esdecir,silospolosdelfiltro analgico estn en el semiplano izquierdo de s, su imagen en el plano z est en el interior de la circunferencia unidad. Por tanto, los filtros en tiempo continuo causales y estables se transformanenfiltrosentiempodiscretocausalesyestables.Seguidamente,para demostrarqueelejejasetransformaenlacircunferenciaunidadseprocedeasustituiraj s en la ecuacin (12. 85), con lo que se obtiene: ( )( ) 2 / 12 / 1T jT jzaa+con lo que se puede ver que el mdulo de z es unitario para cualquier valor de a. De hecho, para obtener la relacin de sus respuestas en frecuencias se sustituye s por ja y z por T jdecon lo que queda despus de operar que:

,`

.|

,`

.|2arctan 2 o2tan2 T TTadda Lasfiguras12.23resumenlaspropiedadesdelatransformacinbilineal. Observandolaecuacin(12.86)ylafigura12.23hayquenotarcmoelintervalodela frecuenciadigital Td 0 setransformaenelintervalodefrecuenciaanalgica a 0 . Las transformaciones bilineales evitan el problema de solapamiente entre s y (12. 83 ) (12. 84) (12. 85) (12. 86) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 54ELAI-UPM-DOC001-01 z,peroelprecioquesepagaeslacompresinnolinealdelejedelasfrecuencias.Por consiguiente, el diseo de filtros en tiempo discreto mediante transformacin bilineal slo sertilcuandoestcompresinsetolera.As,elusodelatransformacinbilinealest limitadoaldiseodeaproximacionesafiltrosconrespuestaenamplitudconstantea intervalos, como los filtros paso bajo, paso alto o pasa banda. Por otra parte, la distorsin delejedelafrecuenciatambinsemanifiestaenunacompresindelarespuestadefase delfiltro,estoes,sielfiltroanalgicoesdefaselineallatransformacinbilinealno conservaestapropiedad.Estaafirmacinesmsciertosobretodosilabandapasantese encuentra cerca de la frecuencia de Nyquist. Elmtododediseodelosfiltrosrecursivosmediantetransformadasbilineales comienzaporespecificarlascaractersticasdelfiltroeneldominiodelasfrecuencias digitales (d1, d2,, dk). Estas especificaciones se pasarn al dominio de las frecuencias analgicasmediantelaexpresin(12.86)yquepermitirnobtenerlasfrecuenciasdel filtro analgico: k iTtanTdiai ,`

.| 122 Aesteprocesoseleconoceelprewarpingdelfiltroanalgico.Seguidamente, mediantelassolucionesyatratadasenelanteriorcaptuloseobtendrlafuncinde transferenciadelfiltroanalgico.Slorestarconvertirdesazempleando(12.84), consiguiendoG(z)delfiltrodigital.Parafacilitarsudesarrolloseexponeunresumendel procedimiento a seguir: 1.Definir las caractersticas del filtro digital d1, d2,, dk. 2.Realizarlaoperacindeprewarpingdeacuerdocon(12.87)obteniendolas frecuencias analgicas a1, a2,, ak. 3.Disear el filtro analgico con las frecuencias definidas en el punto 2. 4.Reemplazar s en el filtro analgico por la expresin dada en (12. 84). (12. 87) Figura12.23.a)Transformacinbilinealdelplanosaz,b)Transformacindelafrecuencia digital a frecuencia analgica Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0155 Tipo de bloqueG(s)G(z) (Transformacin bilineal) Paso bajo de primer orden ( ) sks G+1 ()TaTaz a akz kz G 21 ;211 011 01 + ++ Paso alto de primer orden ( )ssk s G+1 ()TaTaTk bz a az b bz G 21 ;21 ;21 0 011 010 0 + + Red de adelanto/retraso de fase ( )2111ssk s G++()TaTaTk bTk bz a az b bz G2120111011 011 021 ;2121 ;21 +

,`

.|

,`

.|+ ++ Paso bajo de segundo orden ( )112+ +bs ass G()TbTaaTaaTbTaaz a z a az zz G2 41 ;82 ;2 412 12221202211 02 1 + + + + ++ + Paso alto de segundo orden ( )122+ +bs asass G()2 BAJO PASO Ver, , ;422 1 0202211 02010 0 + ++ a a aTabz a z a az b z b bz G Paso banda de segundo orden ( )12+ +bs asbss G()2 BAJO PASO Ver, , ;22 1 0 02211 020 0 + + a a aTabz a z a az b bz G Rechazo de banda de segundo orden ( )1122+ ++bs asass G()2 BAJO PASO Ver, , ;41 ;4122 1 021202211 02011 0 + + ++ a a aTabTabz a z a az b z b bz G Cuadro 12. 2 Transformaciones de G(s) a G(z) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 56ELAI-UPM-DOC001-01 Parafacilitarlastransformacionesdesaz,seexponenenelcuadro12.2las relacionesexistentesdefiltroscomunesdeprimerysegundoordenmediantela transformada bilineal. Ejemplo 12.12 DisearunfiltrodigitalpasobajodeButterworthconunafrecuenciade muestreode10kHz,conunafrecuenciadecortede1kHzy,almenos,una atenuacin de 10 dB a la frecuencia de 2 kHz. En primer lugar se realizara la operacin de prewarping a las frecuencias de 1kHz y 2kHz, quedando a: Hz f Hz fsa ca312 . 2 034 . 1 AplicandolaexpresinmatemticadelordendeunfiltrodeButterworth,vistoen el anterior capitulo, queda n = 1.368 por lo que se debe de tomar el valor entero superior, esto es, orden del filtro 2. La funcin de transferencia en el dominio s ser: 11034 241 . 11034 21) (2+ ,`

.|+ ,`

.| s ss GUtilizandolasexpresionesdelcuadrodetransformacionesdeG(s)aG(z)para filtros paso bajo de segundo orden quedar: ()2 12 13 2 013 . 6 95 . 16 81 . 142 113 . 6 ; 95 . 16 ; 81 . 14 + + + z zz zz Ga a a La respuesta en frecuencia de G(z) es indicada en la figura 12.19 (12. 88) (12. 89) (12. 90) Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0157 Es de destacar la aproximacin de fase lineal en la zona de banda pasante. Ejemplo 12.13 Disear un filtro paso alto digital de Chebychev con un nivel de atenuacin de 40dB, selectividad del filtro de 0.25, ganancia de tensin unitaria y frecuencia de corte de 1kHz. Las frecuencias analgicas tras el warping resultarn ser: Hz f Hz fsa ca5 . 250 1034 Aplicandolasexpresionesdelanteriorcaptuloparadeterminarelordendelfiltro sale que: Figura 12. 24 Respuesta en frecuencia de G(z) Resolucin en MATLAB >>fd=[1e3 2e3];T=1e-4;fn=1/(2*T); >>fa=1/(pi*T)*tan(pi*fd*T); >>n=buttord(2*pi*fa(1),2*pi*fa(2),3,10,'s');%orden filtro >>[p,q]=butter(n, 2*pi*fa(1),'s'); >>disp('FDT del filtro analgico'); >>g1=tf(p,q) >>[b,a]=butter(n, fd(1)/fn);%frecuencias normalizadas>>disp('FDT del filtro digital'); >>g2=tf(b,a,T) >>[H,F]=freqz(b,a,2048,1/T); Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 58ELAI-UPM-DOC001-01 306 . 297 . 510 86 . 31 101 1041 . 04 n x DTomando el polinomio de grado 3 de Chebychev para un rizado en la banda pasante de1dB y pasndolo a filtro paso alto se obtendr su FDT normalizado: ( )( ) ( ) 01 . 1 494 . 0 04 . 222+ + +s ssxsss GTrasladando a la frecuencia de la banda del filtro quedar: ( )

,`

.|+ +

,`

.|

,`

.|

,`

.|+163144915 . 0631463141128231282322s ssxsss GAplicando la transformacin bilineal al sistema LTI de primer y segundo orden: ()( )( )( )( ) 88 . 8 76 . 16 89 . 112 1 38 . 951 . 0 51 . 21 51 . 112 111+ + zz zxzzz G Resolucin en MATLAB >>fc=1e3;k=1/4;Amin=40;Amax=1;fs=1e4; >>fd=[fc k*fc];T=1/fs; >>fa=1/(pi*T)*tan(pi*fd*T); >>n=cheb1ord(2*pi*fa(1),2*pi*fa(2),Amax,Amin,'s') >>[p,q]=cheby1(n,Amax,2*pi*fa(1),'high','s') >>[b,a]=cheby1(n, Amax, fc/(fs/2) , 'high'); >>[H,F]=freqz(b,a,2048,fs); Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0159 12.5 Implementacin de los filtros digitales UnavezcalculadalaFDTdelfiltroesposiblesuconstruccin.Laecuacinen diferencias exige que estn disponibles los valores retrasados de la salida, de la entradas y delassecuenciasintermedias.Elretardodelosvaloresdelasecuenciaimplicala necesidaddealmacenarlosvalorespasadosdelamisma.Adems,hayqueproporcionar mediosparamultiplicarporloscoeficienteslosvaloresretrasadosdelasecuencia,as como para sumar los productos resultantes.Haydosformasdeimplementarlosfiltrosdigitales:medianteunprogramade ordenador o bien por diseo en soporte fsico. Para la ejecucin en software se elaborar un algoritmoquenecesitaralmacenarlosvaloresanterioresdelasalidaydelaentraday realizar los productos y las sumas correspondientes. En el caso de utilizar lenguajes de alto nivel,sesueleusararitmticadepuntoflotante,conelobjetodeevitarlosefectos asociados de la cuantificacin con la aritmtica de punto fijo, ya que pueden conducir a la inestabilidadyacambiossignificativosenlafuncindetransferencia,talcomosever ms adelante (ver prrafo 12.6). SiseusaElectrnicaDigital,loselementosbsicosnecesariosparalarealizacin deunfiltrodigitalsonsumadores,multiplicadoresymemoriaparaalmacenarlosvalores retrasadosdelasecuencia.Lainterconexindeestoselementosbsicosserepresentande formaconvenienteutilizandodiagramasdebloquesconlossmbolosbsicosquese muestran en la figura 12.25.Enlanotacingeneraldediagramasdelosbloques,unsumadorpuedetener cualquiernmerodeentradas.Sinembargo,encasitodaslasrealizacionesprcticas,los sumadorestienendosentradas.Enlosdiagramasqueaquseexponenestoseindicade formaexplcita.Enlasrealizacionesdigitaleslaoperacinderetardosepuedehacer utilizando un registro de almacenamiento por cada unidad de retardo que se necesite. Si la realizacin utiliza circuitos integrados, los retardos podran hacerse empleando un registro Figura12.25.Smbolosdeldiagramadebloques:a)sumadedossecuencias,b) multiplicacin de una secuencia por una constante, c) Retardo unidad Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 60ELAI-UPM-DOC001-01 dedesplazamientotemporizadoconlafrecuenciademuestreodelasealdeentrada.En unarealizacinsoftware,losretardosencascadaserealizarnconregistrosdememoria consecutiva. Larealizacinsistemticaencualquieradeestosdosmedios,SWoHW,seve considerablementefacilitadarepresentandoelfiltroendiagramadebloques.Partiendode las ecuaciones en diferencias del filtro: m k m k k n k n k k kx b x b x b y a y a y a y + + + + + + + ... ...1 1 0 2 2 1 1 estaexpresinsepuederepresentarporeldiagramadelafigura12.26.Alutilizar slo sumadores con dos entradas, las sumas se realizan en un orden especfico. Es decir, la figura12.26indicaquedebencalcularselosproductos n k ny ay ) 1 ( 1 n k ny a ,sumarlos posteriormenteylasumaresultanteaadrselaa ) 2 ( 2 n k ny a ,yassucesivamente.Tras calcular yk, las variables de retardo se deben actualizar introduciendo yk-(n+-1) en el registro que tiene yk-n, y as sucesivamente. Los diagramas de bloques se pueden reestructurar o modificar de diversas maneras sincambiarlafuncindetransferenciaglobal.Cadareestructuracinrepresentaun algoritmocomputacionaldiferentepararealizarelmismosistema.Unaformams adecuada de implementacin se basa en la estructura en serie obtenida por la factorizacin en sistemas de segundo orden de la funcin de transferencia del filtro: ( ) + +ni i ii iz zz zk z G12211221111 (12. 91 ) (12. 92) Figura 12. 26 Representacin genrica de los filtros a partir de la ecuacin en diferencias Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0161 La figura 12.27 muestra un diagrama de bloques de un filtro IIR implementado con cascadas de segundo orden. Esta realizacin tiene cuatro sumas, cuatro multiplicaciones y dosretardosporcadaseccindesegundoorden.Esta forma de implementacin resulta la msefectivaparaunrangovariadodeprocesadoresdepropsitogeneralascomode procesadores especficos DSP. Unarealizacinencascadasedenominacomnmenteimplementacinenforma cannica.Larealizacindeldiagramadebloquesenformanocannicaquemuestrala figura 12.26 se denomina implementacin en forma directa. Ejemplo 12.14 Sea un filtro cuya ecuacin en diferencias es, 2 1 19 . 0 5 . 1 2 + + + k k k k ky y x x yobtener el diagrama a bloques de la forma cannica y en forma directa. Como se requiere de una factorizacin de sistemas de segundo orden de la funcin detransferenciadelfiltro,seaplicalatransformadaenzalaecuacinendiferencias, resultando: ( )2 119 . 0 5 . 1 12 1 + +z zzz GLas figuras adjuntas muestran la forma directa y cannica respectivamente.

Figura 12. 27 Filtro IIR en cascada Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 62ELAI-UPM-DOC001-01 12.6 Efectos de la cuantificacin en los filtros Hasta el momento, en el estudio de los filtros digitales, se ha supuesto que tanto las variablescomoloscoeficientesdelosfiltros pueden tomar cualquier valor; ahora bien, la realizacindeestossistemasseefectacondispositivosdigitalesdeclculo,es decir con computadores, en los que tanto el almacenamiento como la medida de las seales se realiza con nmeros finitos de dgitos. La operacin de transformacin de los valores de variables yconstantes,con un nmero infinito de cifras, a un nmero concreto de bits se denomina cuantificacin.Esteproceso,imprescindibleeneltratamientodeinformacincon computador, produce errores que en este ltimo punto se van a analizar y acotar. En la implantacin de los filtros digitales aparecen tres procesos de cuantificacin: 1.Cuantificacin de la seal de entrada 2.Cuantificacin de los coeficientes de los filtros 3.Errores en el redondeo de las operaciones 12.6.1 Efectos de truncamiento y redondeo Enelanlisisdeerrordecuantificacin,hayquetenerencuentalaformade representacindelosvaloresenelcomputador,segnsehagaencomafijaoencoma flotante, y, asimismo, tambin tendr influencia la forma de realizar el paso de un nmero cualquiera,equivalenteainfinitosdgitos,aunnmerofinitodedgitos,segnseapor truncamiento o por redondeo. En general la representacin de los nmeros en computadores se realiza en base 2, es decir en representacin binaria, por dos mtodos distintos: en coma fija, donde se utiliza Figura 12. 28. Estructuras de implementacin, a) Forma directa, b) Forma cannica Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0163 unnmerodeterminadodedgitosparalaparteenterayotraparalapartedecimal,por ejemplo 4 y 6: 011010 . 1001o en coma flotante, donde la representacin es de la forma: cM2donde M, mantisa, es un nmero que verifica: 121< Myc,exponente,esunnmeroentero,positivoonegativo;ambos,Myc,se representan por un nmero fijo de bits. La forma de representacin de los nmeros negativos tiene su importancia segn se haga por signo y magnitud, por complemento a dos o por complemento a uno. Tantoencomafijacomoflotantesevaaconsiderarquelapartefraccionariao mantisatienebbits,entonceslosnmerosserepresentanensaltosde2-b,esdecirla mnima diferencia entre dos representaciones distintas es de 2-b. Dadounnmerodeinfinitosdgitos,seentiendeportruncamientodelmismola operacindetomarlosbprimerosbits ms significativos, despreciando el resto, mientras que su redondeo es tomar la representacin del valor ms prximo al mismo. Enlafigura12.29a)serepresentanlosvaloresdelasealcuantificadaQ(x)en funcindelosposiblesvaloresdexparaelcasoderepresentacinporredondeoycoma fija. Como se puede observar en la misma, el error en dicha cuantificacin es: () x x Q (12. 93 ) (12. 94) (12. 95) (12. 96) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 64ELAI-UPM-DOC001-01 En valor absoluto, el error ser, como mximo, de medio salto, es decir: ()b bx x Q < < 221221 Elcasodetruncamientoycomafija,utilizandoelcomplementoa2paralos negativos,vienerepresentadoenlafigura12.23,dondeelerrorestacotadoentrelos valores: () 0 2 < < x x Qb (12. 97) (12. 98) Figura 12. 29 Tcnicas de redondeo a) Cuantificacin b) Error Figura 12. 30 Tcnicas detruncamiento a) Cuantificacin b) Error Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0165 12.6.2 Cuantificacin de seales Enlaconversinanalgica/digitaldeunasealparasutratamientocon computadorademsdelprocesodemuestreohayquetenerencuentaeldecuantificacin, efectostedebidoalalimitacindelnmerodecifrasdelosregistrosenlosquese almacenan sus valores. Paraelestudiodelefectoqueestacuantificacindeloselementosdelasecuencia de entrada produce sobre los de la secuencia de salida de un filtro digital, se va a suponer, en primer lugar, como la forma ms usual de trabajo de los convertidores A/D, la coma fija conb+1bits,blapartefraccionariay1designo,utilizandotcnicasderedondeo.Se considera igualmente la seal normalizada a 1, es decir: bkbx < < + 2211 2211Unarepresentacinequivalentealprocesodecuantificacinesladerivadade considerar,segnseindicaenlafigura12.30b),suefectocomounasecuencia de valores aleatorios aadidos a la original. ( )k k k ke x x Q x + Donde{ek}esunasecuenciadenominadafrecuentementeruidocuyoselementos verifican: bkbe < < 221221 Elprocesoderedondeosecaracterizaporunadistribucinestadstica,talquela secuencia{ek}sedefinecomounavariablealeatoriaconunafuncindedensidad uniforme, p(), entre (2-b/2) y (2-b/2), que se representa en la figura 12.31. (12. 99) (12. 100) (12. 101) Figura 12. 31 Funcin de densidad del error por redondeo Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 66ELAI-UPM-DOC001-01 Los parmetros estadsticos de la media y la varianza de la misma son: 122022bee Elvalorquedaunaideadelamagnituddelerroressuvarianza.stasesuele referir a la amplitud de los valores de la secuencia a cuantificar xk. Con el fin de comparar parmetros equivalentes se define sobre la secuencia {xk} su varianza: Nkk xxN02 21conNigualalnmerodeelementoscuantificadosenelprocesoencursode estudio.Lamedidadeerrordecuantificacin,representadaporSNR(SignaltoNoise Ratio), se define como el cociente entre ambas desviaciones tpicas: 2 222222 12122xbbxexSNR ComoseveenlaexpresinelndiceSNRaumentaconcadaincrementoenel nmero de bits que se use para la representacin de la seal. 12.6.3 Cuantificacin de los coeficientes Igualqueocurreconlosvaloresdelasmuestrasdelaseal,enelprocesode realizacin de un filtro, los parmetros que lo definen sufren una cuantificacin que puede afectar, en algunas ocasiones considerablemente, a las prestaciones del sistema. Paraabordaresteproblemaesnecesariocentrarseenlaecuacincaractersticadel filtroyestudiarcomovaransusracesantelasvariacionesensuscoeficientes.Por ejemplo, si un sistema tiene una ecuacin en diferencias estimadas: ( )k k ku y a a y + + 1 dondeaeselcoeficientequesufreunerrordecuantificacin,a,statendrpor ecuacin caracterstica: ( ) 0 + a a z(12. 102) (12. 103) (12. 104) (12. 105) (12. 106) Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0167 enlaqueesclaroque,sisequieresituarunpoloenz=0.995,sernecesario almacenarelvalordeacontrescifrasdecimalesyaquelavariacinmximadeeste parmetro, a, admisible para garantizar la estabilidad es 0.005. Engeneralesteproblemasepodrresolverconunanlisisdesensibilidaddelas races de la ecuacin caracterstica a los parmetros de la misma. Las consecuencias prcticas de la cuantificacin de los coeficientes son: Los filtros con poco ancho de banda son muy sensibles a la cuantificacin. Este efecto se deriva por tener polos muy cerca de z = 1. El sobremuestreo (oversampling) incrementa la sensibilidad a la cuantificacin. La estructura fsica del filtro influye mucho. 12.6.4 Cuantificacin de resultados de operaciones Aefectosdecuantificacin,laoperacindemayorinterseslamultiplicacinya que el resultado de sta ocupa el doble de nmeros de cifras que de los factores, por lo que para almacenarlo o realizar otras operaciones habr que reducir el nmero de sus cifras. Este error de cuantificacin aparece en cada iteracin de la ecuacin en diferencias conloquesuefectosepuedeestudiarcomounasecuenciadenmerosaleatorios independientessumadosalasecuenciadesalidadelosbloquesenlosqueserealizan multiplicaciones.Porello,laimportanciadeesteerrordependerfuertementedela estructura elegida para la implementacin del filtro. Utilizandoelesquematpicodelaconstruccindeunfiltro,segnseindicenla figura12.27,ysiguiendolaspropiedadesestadsticasenunciadassobreelerrorde cuantificacin,losruidossonaditivos,pudindosereemplazarporunoscuyoselementos representativos valgan: + niamibi ie e e0 0 Si cada uno de los ruidos considerados tiene iguales propiedades estadsticas, dadas en (12. 102), las del total, suma de los referidos, sern: (12. 107) Captulo 12: Introduccin al Procesamiento Digital de SealesAnalgica 68ELAI-UPM-DOC001-01 ( )122022beem n+ indicandoqueamedidadequeseaumenteelordendelfiltromayorserel incremento del error cometido por redondeo en las multiplicaciones. (12. 108) Carlos PlateroElectrnica Industrial ELAI-UPM-DOC001-0169 12.7Bibliografa [Aracil91]Aracil,R.,Jimnez,A.,SistemasdiscretosdeControl,Serviciode Publicaciones de la ETS de Ingenieros industriales de Madrid, 1991. [Barahon97] Barahona, E.. , Qu es un Pentium MMX?, PC WORLD n 132, pp135-139, 1997. [Banks90]Banks,S.,SignalProcessing,ImageProcessingandPatternRecognition, Prentice Hall, 1990. [Burrus98]Burrus,C.S.,McClellan,J.H.,Oppenheim,A.V.,Parks,T.W.,Schafer, R.W.,Schuessler,H.,W.,Ejerciciosdetratamientodelasealutilizando MATLAB v.4, Prentice Hall, 1998. [Embree91]Embree,P.M.,Bruce,K.,Clanguagealgorithmsforsignalprocessing, Prentice Hall, 1991. [Ifeachor96]Ifeachor,E.C.,DigitalSignalProcessing.Principles,Algorithmsand Applications, Prentice-Hall, 1996.[Krauss95]Krauss,T.P.,Shure,L.,Little,J.N.,SignalProcessingToolbox(Users Guide), The Math Works, Inc., 1995.[Miguel88]De Miguel, P., Fundamentos de computadores, Paranifo, 1988. [Oppenhe94] Oppenheim,A.V.,Willsky,A.S.,SealesySistemas,PrenticeHall Iberoamericana, 1994. [Oppenhe98] Oppenheim, A. V., Willsky, A. S., Nawab, S. H., Seales y Sistemas, Prentice Hall Iberoamericana, segunda ediccin, 1998. [Oppenhe00] Oppenheim,A.V.,Schafer,R.W.,Buck,J.R.,Tratamientodesealesen tiempo discreto, Prentice Hall, 2000. [Proakis96]Proakis,J.G.,Manolaski,D.G.,DigitalSignalProcessing:APractical Approach, Addison-Wesley, 1996.[Proakis98]Proakis,J.C.,Manolakis,D.G.,Tratamientodigitaldeseales,tercera edicin, Prentice Hall, 1998.