!! ∀ ∀ !
∀#
∃ %&&∋
Aprovecho la oportunidad que se me brinda en estas líneas para agradecer al Consejo Nacional de Ciencia y Tecnología (CONACYT) por haberme ofrecido su apoyo como parte del programa de estímulos a los estudiantes mexicanos.
Al Instituto Politécnico Nacional escuela de gran calidad y pilar en la educación pública de México.
A la UNAM mi alma mater, lugar en donde he aprendido en estos años enseñando.
A mis papas, Mónica y mis hermanos por ser las personas de quienes recibo la mayoría de los afectos y alegrías que se pueden gozar en esta vida. Sin su presencia no habría podido guardar esa actitud de esperanza ante las duras dificultades que hemos enfrentado siempre unidos.
A mi asesor, el siempre amigable Dr. Héctor Pérez Meana y su esposa la Dra. Mariko Nakano.
A mi muy estimado Dr. Bohumil Psenicka del Departamento de Telecomunicaciones de la Facultad de Ingeniería de la UNAM, por su increible apoyo humano y en la ingeniería. Su presencia y ejemplo en mi vida sin duda serán recuerdos indelebles.
A Carlos, Daniel y Pepe (en orden alfabético) por la extensa historia de la amistad que guardo con cada
uno de ellos.
1. Introducción a los Sistemas de Control Activo de Ruido 5
1.1. Panorama . . . 5
1.2. Propósito . . . 6
1.3. Método . . . 6
1.4. Sistemas pasivos de cancelación de Ruido . . . 6
1.5. El concepto de la Cancelación Activa de Ruido (ANC) . . . 7
1.6. Técnicas de Control para los sistemas ANC . . . 7
1.7. Principios de acústica . . . 8
1.7.1. Ecuación de onda . . . 8
1.7.2. Principio de Superposición . . . 10
1.7.3. Control en la transmisión de ondas . . . 11
1.7.3.1. Actuador secundario único . . . 11
1.7.3.2. Dos actuadores Secundarios . . . 12
2. Introducción a los algoritmos de Filtrado Adaptivo de Señales 14 2.1. Filtros Digitales en Sistemas ANC . . . 14
2.1.1. La transformada Z . . . 15
2.1.2. Mapeado del plano en el dominio de s hacia el dominio de z . . . 17
2.1.3. Ecuaciones en diferencias . . . 17
2.2. Estructura de los Filtros Digitales . . . 18
2.2.1. Filtros FIR . . . 18
2.2.2. Filtros IIR . . . 19
2.3. Filtros Óptimos en el dominio del Tiempo . . . 20
2.3.1. Modelo de la Cancelación Eléctrica de Ruido . . . 20
2.3.2. El Filtro de Wiener . . . 22 1
2.3.3. Sistemas de Predicción Lineal . . . 23
2.3.4. El algoritmo LMS . . . 24
2.3.4.1. Algoritmo de descenso más escarpado (Steepest Descent Algorithm) . . . 24
2.3.4.2. Análisis de convergencia del algoritmo LMS . . . 25
3. Cancelación Activa de Ruido empleando técnicas de Filtrado Adaptivo de Señales 29 3.1. Sistemas de Control alimentados hacia adelante (Feedforward Control) . . . 30
3.1.1. Control Óptimo de Ruido Aleatorio . . . 31
3.1.2. Optimización no limitada en el Dominio de la Frecuencia . . . 32
3.1.3. Optimización en el Dominio de la Frecuencia limitada a ser Causal . . . 34
3.1.4. Optimización en el Dominio del Tiempo . . . 35
3.1.5. Algoritmo LMS con Referencia Filtrada (FXLMS) . . . 36
3.1.5.1. Condiciones de estabilidad del algoritmo FXLMS . . . 36
3.1.6. Algoritmo LMS con escape (Leaky LMS) . . . 38
3.2. Identificación de la Planta . . . 39
3.2.1. Técnica de Eriksson . . . 40
3.2.2. Técnicas mejoradas para la Identificación de S(z) . . . 43
3.2.2.1. Métodos de Bao y Kuo . . . 43
3.2.2.2. Método de Zhang . . . 44
4. Arquitectura del DSP TMS320C6713 46 4.1. Introducción . . . 46
4.2. Arquitectura TMS320C6x . . . 47
4.2.1. Unidades Funcionales . . . 48
4.2.2. Paquetes de Petición y Ejecución . . . 48
4.2.3. Pipelining (entubado) . . . 49
4.2.4. Registros . . . 50
4.2.5. Temporizadores . . . 50
4.2.6. Modos de direccionamiento . . . 50
4.2.6.1. Direccionamiento Indirecto . . . 50
4.2.6.2. Direccionamiento Circular . . . 51
4.3. Conjunto de Instrucciones . . . 52
4.3.1. Formato de Código Ensamblador . . . 52
4.4. Interrupciones . . . 55
4.4.1. Registros de Control de Interrupción. . . 55
4.5. Puertos Seriales Multicanal Bufereados . . . 56
4.6. Acceso Directo a Memoria (DMA) . . . 57
4.7. Consideraciones de la Memoria . . . 57
4.7.1. Alineado de los datos (Data Alignment) . . . 58
4.7.2. Directivas Pragma . . . 58
4.8. Formatos numéricos de punto fijo y de punto flotante . . . 59
4.8.1. Tipos de datos . . . 59
4.8.2. Formato de Punto Fijo . . . 59
4.8.3. Formato de Punto Flotante . . . 62
5. Implementación de los Sistemas de Cancelación Activa de Ruido en el DSP TMS32OC6713 63 5.1. Implementación del Filtro Adaptivo como Identificador de Sistemas . . . 63
5.2. Identificación de trayectoria acústica con técnicas de Filtrado Adaptivo . . . 68
5.3. Simulación algoritmo de Eriksson en el DSP . . . 71
5.4. Implementación de los algoritmos de Kuo, Bao y Zhang . . . 75
5.4.1. Algoritmos de Bao y Kuo . . . 75
5.4.2. Algoritmo de Zhang . . . 79
En el presente trabajo se muestran simulaciones implementadas en el DSP TMS320C6713 de la familia C6000 de Texas Instruments para el análisis del funcionamiento en tiempo real de los algoritmos de Kuo, Bao y Zhang tanto para el propio control activo de ruido como para la identificación en línea de la trayectoria secundaria.
En el primer capítulo del trabajo se brinda una breve descripción de los sistemas de control de ruido y de las ventajas que otorga en algunos casos el empleo en particular de las técnicas de control activo. El segundo capítulo se inicia con una introducción a las técnicas empleadas para el procesamiento de señales pasando posteriormente a los métodos de optimización de los filtros para la reducción de la función de costo propuesta para el problema de la cancelación eléctrica de ruido y finaliza explicando el algoritmo LMS, las razones por las cuales es necesario su empleo en muchas aplicaciones en tiempo real y finalmente un análisis detallado de los límites de estabilidad del algoritmo. El tercer capítulo define lo que se entiende por trayectoria secundaria, explica los inconvenientes que su presencia provoca para el control activo de ruido y como el algoritmo FxLMS propone una solución, posteriormente finaliza el capítulo explicando las ventajas y desventajas de los sistemas de identificación en línea describiendo el funcionamiento de los métodos de Kuo, Bao y Zhang. En el capítulo cuatro describo la arquitectura y técnicas de desarrollo del DSP TMS320C6713 así como de la tarjeta DSK (Development Starters Kit) empleada. El trabajo finaliza en el capítulo cinco reportando los resultados de las simulaciones implementadas y la manera en que fueron realizadas.
Abstract
The present work show a set of simulations developed in the DSP TMS320C6713 a member of the Texas Instruments C6000 family, this simulations helped to understand how the algorithms of Kuo, Bao and Zhang work in real-time for active noise control and also to determine their effectiveness on the online modeling of the secondary path response.
The first chapter of this work describes in a briefly manner how noise control systems work and the advantages that the use of active noise control has in some applications. The second chapter begins with an introduction to digital signal processing techniques followed by a demonstration of how optimal filters work in the reduction of a cost function selected for the electrical noise control problem and finalizes whith the LMS algorithm, the reasons why it is employed in so many real-time applications and its stability limits. Third chapter works on the understanding of the secondary path concept, the drawbacks that its presence imply in the active noise control problem and how the FxLMS algorithm plays a mainly role in the solution of this problems, the chapter ends with an explanation of the advantages and disadvantages of the online identification systems employed in particular Kuo, Bao and Zhang’s methods. Chapter four describes the computer architecture and development techniques of the TMS320C6713 in particular of the DSK employed in this work. Finaly chapter five reports the results of the simulations and the way they were analized.
4
1
Introducción a los Sistemas de Control Activo de Ruido
1.1. Panorama
Cualquier tipo de sonido que cause interferencia a la audición normal puede ser considerado ruido. El ruido puede ser molesto e irritante, pero en ocasiones también puede no ser tan notable y aún así conservar algunos de sus efectos nega- tivos. El ruido puede inhibir nuestra habilidad de concentrarnos o de pensar e incluso puede llegar a causar importantes problemas de salud. En la actualidad nos encontramos muy expuestos a los ambientes ruidosos, debido al aumento en la cantidad de equipos industriales tales como motores, ventiladores, extractores y transformadores.
Las técnicas pasivas de cancelación de ruido son las más desarrolladas en la actualidad, debido a que plantean una solución sencilla para muchos de los problemas más frecuentes. Su uso se fundamenta en técnicas tan simples como el aislamiento de las vibraciones, la utilización de recintos cerrados, barreras acústicas y materiales absorbentes del ruido. A pesar de la sencillez y la efectividad de los sistemas de control pasivo de ruido, éstos sistemas suelen ser en ocasiones muy costosos y poco adecuados en algunos casos. Los métodos tradicionales de control pasivo de ruido son únicamente posibles para las altas frecuencias. Esto se debe a que la baja frecuencia tiene longitudes de onda muy grandes en comparación a los típicos absorvedores acústicos. Como un complemento al control pasivo de ruido, se puede emplear el control activo (Active Noise Control, ANC) para reducir el ruido de baja frecuencia. La idea detrás del ANC es usar ondas de interferencia destructiva para cancelar los ruidos molestos. La teoría del ANC ha sido conocida por mucho tiempo pero se volvió posible con el desarrollo de los veloces procesadores digitales de señales (DSP’s) que permiten realizar aplicaciones reales.
5
1.2. Propósito
El propósito de ésta tesis es desarrollar un sistema de cancelación activa de ruido alcanzando la reducción de un ruido a nivel experimental, empleando un sistema de ANC tipo Feedforward en un DSP TMS320C6713.
1.3. Método
Para poder alcanzar el objetivo el proyecto fue dividido en las siguientes partes:
Estudios en la literatura: Se realizó una revisión de diferentes artículos publicados en una variedad de revistas del área, con el propósito de encontrar técnicas que permitieran alcanzar el objetivo de la forma más sencilla y robusta. De la misma forma se planteó revisar los resultados obtenidos con diferentes métodos a analizar.
Investigación sobre el funcionamiento del DSP: Esta parte del proyecto es de gran relevancia ya que para poder completar el objetivo fue necesario dominar las herramientas de trabajo sobre las cuales se iba a realizar la programación. Para ello, se realizó una amplia investigación sobre la arquitectura del DSP, las técnicas de pro- gramación y optimización del código así como sobre el uso de los periféricos de la tarjeta de desarrollo empleada (DSK).
Implementación: Una vez que se tienen seleccionadas las técnicas de filtrado adaptivo a emplear y que se conoce la metodología para programarlas en el DSP se procedió a la parte de la implementación. En la cual se buscó contar con los conocimientos y materiales en el área de la acústica que permitieran alcanzar el objetivo planteado.
1.4. Sistemas pasivos de cancelación de Ruido
Las técnicas pasivas de cancelación de ruido son las más familiares para los seres humanos, un ejemplo común y natural de éste tipo tipo de técnicas ocurre cuando nos tapamos los oídos con las manos para evitar escuchar algo. La técnica consiste principalmente en tapar los oídos con algún material aislante que no transporte el sonido o bien, que lo amortigüe.
El fundamento del uso de los materiales absorbentes es que cuando son alcanzados por las vibraciones sonoras prove- nientes del aire, sus moléculas no se mueven en la misma proporción que las del aire. Éstos materiales absorbentes actúan como un filtro paso bajas, lo que significa que las frecuencias altas son bloqueadas muy eficazmente, pero las frecuencias bajas no son afectadas de la manera deseada.
Las técnicas pasivas necesitan barreras acústicas que eviten el paso de la energía sonora al sitio que deseamos aislar del ruido. Cuando una onda de presión acústica se encuentra con una de éstas barreras podemos observar distintos fenómenos que ocurren en el cambio de medio, éstos fenómenos principalmente son la reflexión y la transmisión de las ondas sonoras. Para modelar éstos fenómenos tenemos que considerar la impedancia acústica característica de los medios, la velocidad de propagación de las ondas en éstos y el ángulo con respecto a la normal con el que incide la onda sonora.
1.5. El concepto de la Cancelación Activa de Ruido (ANC)
La cancelación activa de ruido (ANC) esta fundamentada en la cancelación del ruido primario (ruido molesto que se desea eliminar) mediante la generación de un anti-ruido de igual amplitud y fase opuesta. Cuando se combinan el ruido primario con el anti-ruido se tiene como resultado la cancelación de ambos. Para la generación del anti-ruido se tienen dos configuraciones básicas en los sistemas de control del ANC. Los sistemas denominados feedforward y los sistemas de feedback.
En los sistemas de control del ANC de tipo feedforward se emplean dos sensores, el primer sensor es empleado para obtener una señal de referencia y el segundo sensor se emplea para la actualización de los coeficientes del filtro adaptivo, ya que se encarga de medir el ruido residual de la superposición el ruido primario con el anti-ruido.
Por otra parte los sistemas de control del ANC de tipo feedback emplean únicamente un sensor, llamado sensor de error. Éste sensor es empleado para crear una señal de referencia y para actualizar al filtro adaptivo.
Los sistemas ANC involucran necesariamente sistemas electroacústicos o electromecánicos para cancelar el ruido primario tomando como base el principio de la superposición. Los sistemas ANC actúan de manera eficiente en el rango de frecuencias bajas, donde los métodos pasivos son poco efectivos y tienden a ser estorbosos y costosos. Los métodos ANC se han vuelto muy populares ya que ofrecen beneficios de tamaño, peso, volumen y costos. La primera propuesta del empleo de éstos métodos fue realizada en 1936 por Lueg.
Debido a que las características acústicas de las fuentes de ruido y del ambiente en general son variantes con el tiempo, las características del sonido como son su contenido frecuencial, la amplitud, fase y velocidad no son estacionarias. Para poder lidiar con éstas características del ruido primario, el sistema de cancelación activa de ruido debe ser adaptable, por lo que en los sistemas actuales se emplean filtros digitales adaptivos que ajustan sus coeficientes para minimizar la señal de error y que pueden ser realizados tanto con filtros de respuesta finita al impulso (filtros FIR) como por filtros de respuesta infinita al impulso (IIR), además de otras estructuras como los son los filtros de enrejado (lattice) y técnicas de transformación del dominio. De todas las posibilidades mencionadas la más empleada es la del filtro transversal de tipo FIR que emplea un algoritmo de mínimos cuadrados (LMS) para actualizar sus coeficientes.
1.6. Técnicas de Control para los sistemas ANC
De acuerdo al tipo de ruido a procesar podemos emplear dos técnicas principalmente:
Sistemas de control a priori
En ésta técnica conocida como feedforward, el sistema de control recibe al menos una señal de referencia, la cual deberá de ser procesada para generar la señal de control. Se le puede emplear tanto para sistemas de cancelación con espectro de banda angosta como de banda ancha. Lo importante es que la señal de referencia contenga información sobre la señal a cancelar (que se encuentren correlacionadas), de tal forma que se pueda generar la señal de control (señal de anti-ruido) adecuada.
En la figura 1.1 se observa la estructura del sistema de control feedforward en la que se puede observar como se obtiene la señal de referencia x(n) mediante el uso de un sensor para el ruido primario. La señal de referencia x(n) será procesada en el sistema adaptivo para generar la señal de control y(n) que será enviada al actuador para generar el anti-ruido.Finalmente otro sensor se encarga de obtener el ruido residual (señal de error, e(n)), que será empleado para
Figura 1.1: Sistema de Control Feedforward
ajustar los coeficientes del sistema adaptivo con el objetivo de reducir la señal de error.
Funcionando de la manera descrita, el sistema adaptivo modela la función de transferencia de la trayectoria primaria, P(z) (trayectoria que recorre el ruido desde el punto de referencia, hasta el sitio de cancelación), por lo que a éste tipo de configuraciones también se les llama de tipo identificador. Un problema muy frecuente con éstos sistemas es la realimentación que existe entre la fuente de ruido secundaria (actuador) y el sensor de ruido primario, que empobrece el desempeño y puede provocar que el sistema se vuelva inestable. Para resolver este problema, en algunos casos es posible aislar al sensor de ruido primario del actuador, sin embargo esto no siempre es posible, por lo que en estos casos se sugiere emplear otro tipo de sensor que no se vea afectado por la señal de anti-ruido cuando se obtiene la señal de referencia. Lo anterior es muy factible en sistemas en los que el ruido primario es periódico, ya que mediante el uso de sensores ópticos o tacó-metros en los rotores se puede sintetizar la señal de referencia libre de la contaminación del anti-ruido.
Sistemas de control alimentados a posteriori:
A estos sistemas de control también se les conoce como feedback, dichos sistemas no tienen una señal de referencia como entrada, ya que la generan empleando un estimador lineal. Una vez que se ha estimado la señal de referencia se trabaja de la misma forma que en los sistemas alimentados a priori, procesando dicha señal para obtener la señal de control. Empleando el sensor de error se obtiene el ruido residual de la señal de ruido primario con la señal de control saliente del actuador, a dicha señal de ruido residual se le conoce como señal de error, e(n). Para estos sistemas de control la señal de error e(n), no sólo es empleada en la actualización de los coeficientes del filtro adaptivo, también es empleada para estimar la señal de referencia x(n). Estos sistemas en realidad lo que hacen es predecir la próxima muestra de la señal de referencia x(n), empleando la porción de ésta señal presente en la señal de error e(n) por lo que a estos sistemas se también se les conoce como productores.
Para que una señal pueda ser predecible conociendo muestras pasadas, necesariamente tiene que ser periódica, por lo que estos sistemas funcionan para señales de este tipo.
1.7. Principios de acústica
1.7.1. Ecuación de onda
Lo que distingue a los problemas del control acústico de sonidos y vibraciones de otros problemas convencionales de la teoría de control es que las perturbaciones se propagan como ondas de un sistema físico a otro. Las ondas sonoras
Figura 1.2: Sistema de Control Feedback
que se propagan únicamente en la dirección x, obedecen la ecuación de onda unidimensional.
En donde p(x,t)denota la presión acústica instantánea en la posición x en el tiempo t, y c0es la velocidad del sonido (de aproximadamente 34m/s) para el aire a temperatura y presión normales. La presión acústica es considerada pequeña en comparación con la presión atmosférica para asegurar la ecuación de linealidad, y esta condición es satisfecha para los niveles de ruido normalmente encontrados en la p´ractica, que tienen una presión del orden de 1[Pa] en relación con los niveles típicos de presión atmosférica de 105[Pa]. La ecuación de onda unidimensional es satisfecha por una onda acústica de presión de forma arbitraria, pero cuya dependencia en el espacio tome la siguiente forma
p(x,t) = p(t ± x/c0) (1.1)
en donde (t +x/c0)representa una onda viajando en la dirección negativa de x y (t −x/c0)representa a la onda viajando en la dirección positiva de x. Una onda tal, se propaga sin cambios en la amplitud o forma de onda en un medio infinito homogéneo en el que se asume no hay otras fuentes acústicas y no hay disipación. Todas las componentes frecuenciales de p(x,t) entonces se propagan con la misma velocidad y no sujeto de dispersión. Un ejemplo de una onda avanzando en sentido positivo que obedece la ecuación de onda es una señal de presión tonal, que puede ser representada en términos de la cantidad compleja A, como
p(x,t) = Reh
Aejω(t−x/c0)i
= Reh
Aej(ωt−kx)i
(1.2) en donde la función Re[]denota la parte real de la expresión en el interior, ωes la frecuencia angular y k = ω/c0es el número de onda acústico. Es importante notar que la ecuación de onda también es satisfecha por la parte imaginaria de Aej(ωt−kx)e incluso por la expresión compleja entera. Expresándola de la siguiente forma:
p(x,t) = Aej(ωt−kx)= p(x)ejωt (1.3)
al substituirla en la ecuación diferencial de onda obtenemos:
d2p(x) dx2 +ω2
c02p(x)
ejωt = 0 (1.4)
A la ecuación 1.4 se le conoce como la ecuación unidimensional de Helmholtz, que así como es satisfecha por la presión
acústica de una onda viajando en sentido positivo, también es satisfecha para una presión compleja que corresponda a una onda acústica que viaja en sentido negativo con amplitud B.
p(x) = Be+ jkx (1.5)
Si el análisis toma en cuenta la propagación en el espacio tridimensional, una onda tridimensional puede ser expresada como:
ψ(r,t) = Aej(k·r−ωt) (1.6)
con velocidad angular ω, tiempo t y
k · r = kxx+ kyy+ kzz (1.7)
donde (kx, ky, kz)son las componentes de la dirección de propagación y (x, y, z) son las componentes del punto en el espacio en donde el desplazamiento ψ es evaluado. La ecuación de onda armónica satisface la siguiente ecuación diferencial de onda:
∇2ψ − 1 c20
δ2ψ
δ t2 = 0 (1.8)
en donde el operador Laplaciano esta definido como
∇2= δ2 δ x2+ δ2
δ y2+ δ2
δ z2 (1.9)
y c0es la velocidad de propagación de la onda en el aire.
1.7.2. Principio de Superposición
El principio de superposición es el fundamento principal de los sistemas ANC, dicho principio establece que una combinación lineal de las soluciones es también una solución al sistema lineal.
Aplicando esta idea en la ecuación de onda observada anteriormente tenemos que a partir de ψ1y ψ2que son soluciones a la ecuación diferencial de onda, entonces
ψ = aψ1+ bψ2 (1.10)
que es producto de una combinación lineal de estas soluciones también es solución a la ecuación diferencial de onda (dado que a y b sean constantes). Tomemos un ejemplo trivial, si p1(x) = Ae− jkx(onda viajando en sentido positivo) y p2(x) = −Ae− jkx(otra onda viajando en sentido positivo pero con 180° fuera de fase), entonces la respuesta neta del sistema para estas dos perturbaciones sería presión acústica cero en todos los momentos y en todos los puntos del espacio.
Una de las primeras sugerencias para el control activo se propuso para la cancelación de una onda acústica unidimen- sional y fue contenida en una patente de Paul Lueg en 1936.
Sin embargo las ecuaciones que modelan las variaciones de presión no siempre son lineales. Cuando el sonido es generado por un flujo, por ejemplo, las ecuaciones no lineales que definen la dinámica de fluidos deben ser empleadas para describir la generación del sonido. En cuyo caso el control activo mediante la sola superposición no sería posible, aunque hay sistemas ANC que son empleados para actuar desde las causas de generación del sonido y han logrado éxito.
1.7.3. Control en la transmisión de ondas
En esta sección consideraremos los fenómenos que ocurrirían para ondas unidimensionales que se propagan en un ducto de longitud infinita, con grosor uniforme y paredes rígidas. Para una excitación suficientemente baja únicamente ondas planas de sonido pueden propagarse en tal ducto. Siendo tal el caso, las ondas tienen una presión uniforme a lo largo de cualquier sección del ducto y obedecen la ecuación de onda unidimensional.
1.7.3.1. Actuador secundario único
Consideremos una onda tonal de sonido que se encuentra viajando a lo largo de la dirección positiva de x a lo largo del ducto, dicha onda es controlada por una fuente acústica secundaria tal como podría ser una bocina montada en la pared del ducto. La presión compleja de la onda primaria incidente sería:
pp+(x) = Ae− jkx, paratoda x (1.11)
La bocina produciría ondas acústicas que viajaran tanto en la dirección positiva de x, como en la negativa. Las presiones complejas de estas ondas serían:
pS+(x) = Be− jkx, ps−(x) = Be+ jkx (1.12) asumiendo que la fuente secundaria ha sido posicionada en x = 0, y que B es una amplitud compleja, que es linealmente dependiente de la señal eléctrica de entrada a la fuente secundaria. Si la señal eléctrica es ajustada en amplitud y fase, de tal manera que B = −A, entonces la presión para la parte positiva del eje x sería:
pp+(x) + ps+(x) = 0 (1.13)
Con lo anterior se sugiere que una manera práctica de adaptar la señal de control es monitorear la presión tonal en cualquier punto a partir de la fuente secundaria y ajustar la amplitud y fase de ésta, hasta que la presión sea cero. Ahora observemos lo que ocurre a la izquierda de la fuente secundaria:
pp+(x) + ps−(x) = Ae− jkx+ Be+ jkx, x < 0 (1.14) Tomando en cuenta que la fuente secundaria fue ajustada para cancelar la presión del otro lado, entonces B = −A y la presión en este lado queda como:
pp+(x) + ps−(x) = −2 jAsin(kx),x < 0 (1.15) dado que ejkl− e− jkl= 2 jsin(kl). Analizando la ecuación anterior, encontramos que se ha generado una onda esta- cionaria mediante la interferencia de estas ondas. Notemos que esta onda estacionaria tiene nodos de presión en x = 0, x= −λ /2, x = −λ ,etc. En donde λ es la longitud de onda acústica, pero tenemos puntos en donde la amplitud de la presión es el doble de la onda incidente x = −λ/4,x = −3λ/4,etc.
Teniendo ya este análisis encontramos que la fuente secundaria crea una frontera de liberación de la presión y refleja de manera efectiva la onda incidente de regreso por el ducto con igual amplitud y fase opuesta, con lo que se crea la onda estacionaria observada.
1.7.3.2. Dos actuadores Secundarios
También es posible emplear sistemas ANC para absorber en su totalidad la onda primaria incidente, en lugar de refle- jarla de vuelta. Tal estrategia requiere de dos fuentes secundarias. Para ello contamos con dos bocinas posicionadas en x= 0 y x = l, las cuales pueden generar de manera individual presiones complejas en dirección positiva y negativa al flujo.
ps1+(x) = Be− jkx, para x > 0, ps1−= Be+ jkx, para x < 0 (1.16) y
ps2+(x) = Ce− jk(x−l), para x > l, ps2−= Ce+ jk(x−l), para x < l (1.17) Las fuentes secundarias pueden ser manejadas para que sólo afecten a la onda del flujo que avanza en sentido positivo a lo largo del ducto a partir de donde se encuentran éstas, de tal manera que
ps1−(x) + ps2−(x) = 0, x < 0 (1.18)
para esto se requiere que la señal de control de entrada a la primera fuente u1se ajustada en relación a u2, de tal forma que
B= −Ce− jkl (1.19)
de tal manera que la bocina posicionada en x = 0 produce una versión invertida y retardada de la producida en la bocina localizada en x = l, y las dos bocinas actúan como una fuente secundaria conformada por este arreglo. Por otra parte la presión total a partir de x > l esta dada por
pp+(x) + ps1+(x) + ps2+(x) = (A +C(ejkl− e− jkl)) (1.20)
El arreglo de bocinas puede ser ajustado para cancelar la onda primaria incidente dado que la señal que controla la segunda fuente secundaria sea ajustada para asegurar que
C= −A
2 jsin(kl) (1.21)
Debe notarse que para algunas frecuencias, C deberá ser mucho mayor que A y que las fuentes secundarias tendrán un gran esfuerzo cuando sin(kl) ≈ 0, lo cual ocurre cuando l ≪ λ,l ≈ λ/2,etc. Debido a esto es importante considerar el rango de frecuencias en las que las fuentes secundarias pueden operar.
Analizando la distribución de presiones empleando este esquema, encontramos que la amplitud de la presión en la parte anterior a la primera fuente queda ahora sin verse afectada por la cancelación de la onda incidente en la parte posterior al arreglo. Con lo que notamos que la función del arreglo es absorber el poder acústico de la onda incidente.
Conclusiones
Las técnicas de control de ruido reducen la percepción de las emisiones sonoras, generan una sensación de comfort y son necesarias para mejorar las condiciones ambientales dando cumplimiento a la reglamentación referente a los límites aceptables de contaminación acústica. Los métodos de control de ruido son clasificados en pasivos y activos, para el control en bajas frecuencias, son los métodos activos los que ofrecen una solución más adecuada y económica.
De acuerdo a las carácterísticas espectrales del ruido a cancelar, es necesario determinar si es necesario utlizar un sistema prealimentado (en el caso de ruidos con contenido espectral de banda ancha) o si con un sistema alimentado a posteriori es suficiente (para ruidos con escaso contenido frecuencial, por ejemplo señales tonales).
En todo sistema de control de ruido es necesario además de proponer el sistema de filtrado adaptivo a utilizar, también tomar en cuenta los efectos espaciales de la propagación de las ondas acústicas. De esta manera, poder determinar los puntos óptimos de la localización de los sensores de referencia y error, así como de las fuentes empleadas para propagar en el espacio la señal de control.
2
Introducción a los algoritmos de Filtrado Adaptivo de Señales
2.1. Filtros Digitales en Sistemas ANC
En este capítulo se explican con la brevedad necesaria algunas de las propiedades importantes de los Filtros Digitales, en especial de los Adaptivos. Los Filtros Digitales operan con datos muestreados y cuantizados, por lo que se deben tomar las consideraciones necesarias de las implicaciones que tiene trabajar de esta forma.
La primera diferencia en comparación con los sistemas acústicos comentados en el capítulo anterior se encuentra con la variable en el tiempo, ya que en los sistemas físicos reales la variable t es continua mientras que los sistemas digitales emplean tiempos de muestreo iguales a T , de tal manera que la frecuencia de muestreo es 1/T . Las señales en tiempo continuo son muestreadas cada t = nT , en donde la variable n sólo puede tomar valores enteros. Siendo estrictos la señal x(t) al ser muestreada debería ser denotada como x(nT ), pero por razones de simplicidad en la notación la literatura del área siempre se refiere a ella como x(n).
Otro asunto de importancia es considerar que en los sistemas ANC se plantea controlar un sistema físico en tiempo continuo con otro sistema con datos muestreados.
En este capítulo se incluye un desarrollo de algunas de las técnicas de filtrado adaptivo y su aplicación en los sistemas ANC partiendo primero de una breve introducción a los Filtros Digitales de Respuesta Finita al Impulso (FIR), de Respuesta Infinita al Impulso (IIR) y a la transformada Z.
14
2.1.1. La transformada Z
La transformada z es utilizada para el análisis de señales en tiempo discreto de manera similar al uso de la transformada de Laplace para señales continuas en el tiempo. De manera análoga a como se emplea la transformada de Laplace para resolver ecuaciones diferenciales que representen un Filtro Analógico, la transformada z puede ser empleada para resolver una ecuación en diferencias que represente un Filtro Digital.
Consideremos una señal analógica x(t) idealmente muestreada
xs(t) =
∞
∑
k=0
x(t)δ (t − kT ) (2.1)
donde δ (t − kT) es la función impulso retardada por kT y T = 1/Fses el periodo de muestreo. La función xs(t) es cero en cualquier instante excepto en t = kT . Aplicando la transformada de Laplace a xs(t) tenemos
Xs(s) =
∞
ˆ
0
xs(t)e−stdt (2.2)
=
∞
ˆ
0
{x(t)δ (t) + x(t)δ (t − T ) + ···}e−stdt (2.3)
dado que para una función impulso
∞
ˆ
0
f(t)δ (t− kT ) = f (kT ) (2.4)
entonces Xs(s) queda como
Xs(s) = x(0) + x(T )e−s2T+ x(2T )e−s3T+ ··· =
∞
∑
n=0
x(nT )e−nsT (2.5)
Definamos ahora z = esT, entonces
X(z) =
∞
∑
n=0
x(n)z−n (2.6)
que es la ecuación que define la transformada z unilateral, notese la simplificación en la notación de x(nT ) hacia x(n).
La transformada z convierte una señal en tiempo discreto, que es una secuencia de valores reales, en una representación compleja en el dominio de la frecuencia. La transformada z bilateral de una secuencia x(n) se define como
X(z) =
∞
∑
n=−∞
x(n)z−n (2.7)
donde z es una variable compleja. La transformada z de una secuencia retardada toma una forma particularmente simple. Si la transformada z de x(n) se muestra en la parte superior, entonces la transformada z de esta secuencia retardada por una muestra es
∞
∑
n=−∞
x(n − 1)z−n=
∞
∑
m=−∞
x(m)z−(m+1)= z−1X(z) (2.8)
donde m = n − 1.
La transformada z de una secuencia puede ser representada por la relación de dos polinomios en el dominio de z.
X(z) =N(z) D(z)
Los polos de X(z) son las raíces del denominador (los valores de z que aseguran que D(z) = 0 y de tal forma X(z) sea infinito). Los ceros de X(z) son las raíces del numerador (los valores de z que aseguran que N(z) = 0 y de tal forma X(z) sea cero).
La región de convergencia de la transformada z es el rango de valores en el cual la serie converge. Para una serie de lado derecho x(n) = 0 para n < n1, X(z) converge para todas las z exteriores al círculo cuyo radio sea igual al del polo de X(z) más lejano del origen. Si la serie es del lado izquierdo x(n) = 0 para n > n2, X(z) converge para todas los valores de z interiores al círculo cuyo radio sea igual al del polo de X(z) más cercano al origen.
La transformada z inversa permite calcular la secuencia x(n) a partir del polinomio X(z). En este proceso debe de tenerse el cuidado necesario necesario para asegurar la obtención de una secuencia con significado físico, dado que se obtienen diferentes secuencias para cada región de convergencia asumida.
Una secuencia se dice que es estable si es absolutamente sumable, es decir
∞
∑
n=−∞
|x(n)| < ∞ (2.9)
En general no es posible determinar tanto la estabilidad como la causalidad (x(n) = 0 para n < 0) de una secuencia desde su transformada z, por lo que la transformada z no puede ser asociada a una secuencia única. Se puede asegurar que una secuencia es estable si decae hacia cero en los sentidos negativo y positivo del tiempo, si puede ser reconstruida de forma única desde su transformada z con sus componentes causales asociadas a los polos que se encuentran dentro del círculo unitario y sus componentes no causales con los polos fuera del círculo unitario.
El valor inicial de una secuencia causal se puede obtener considerando cada uno de los términos de la transformada z cuando z → ∞, lo cual se encuentra dentro de la región de convergencia para tal secuencia, en donde podemos observar que
limz→∞X(z) = x(0) (2.10)
a lo cual se le conoce como el teorema del valor inicial. Para que una secuencia tenga un valor inicial finito, y por lo tanto sea estable debe de tener al menos el mismo número de polos como de ceros.
La transformada de Fourier de la secuencia x(n) puede ser considerada un caso especial de la transformada z cuando z= ejωT, donde ωT es la frecuencia angular normalizada. La transformada de Fourier de x(n) esta dada por
X(ejωT) =
∞
∑
n=−∞
x(n)e− jωnT (2.11)
y la transformada inversa de Fourier para señales discretas es:
x(n) = 1 2π
π
ˆ
−π
X(ejωT)ejωnTdωT (2.12)
2.1.2. Mapeado del plano en el dominio de s hacia el dominio de z
La transformada de Laplace puede ser utilizada para determinar la estabilidad de un sistema. Si los polos de un sistema se encuentran en el lado izquierdo del eje jω en el plano de s, contaremos con una respuesta decreciente en el tiempo, por lo que tenemos un sistema estable. Si los polos se encuentran en el lado derecho del eje jω, la respuesta será creciente en el tiempo haciendo que el sistema sea inestable. Los polos localizados sobre el eje jω son polos puramente imaginarios (no tienen componente real) y otorgarán una respuesta sinusoidal. La frecuencia de la sinusoidal generada es representada por el valor en el eje jω.
De manera similar en el dominio de z podemos determinar la estabilidad de un sistema basándonos en la localización de sus polos en el plano z asociado a dicha transformada. La relación entre el plano de s y el de z se encuentra con las siguientes ecuaciones
z = esT s = σ + jω por lo que
z= eσ TejωT
de la ecuación anterior, la magnitud de z es |z| = eσ T con fase θ = ωT = 2π f /Fs. Haciendo el mapeo de las regiones del plano en el dominio de s hacia el plano en el dominio de z, observamos que la región a la izquierda del eje jω (cuando σ < 0) mapea una magnitud de |z| < 1, dado que eσ T < 1. Mientras σ varia desde −∞ hasta 0, |z| cambia desde 0 hasta 1. Por lo tanto los polos que se encuentran fuera del círculo unitario en el plano z crearán un sistema inestable. Por otra parte los polos localizados en el eje jω en el plano de s representan a un sistema marginalmente estable, haciendo el mapeo obtenemos una magnitud de |z| = 1, por lo que los polos localizados sobre la circunferencia de radio uno en el plano de z generarán una sinusoidal.
2.1.3. Ecuaciones en diferencias
De manera similar a los Filtros Analógicos que son representados por ecuaciones diferenciales, los Filtros Digitales son representados por ecuaciones en diferencias. Para resolver una ecuación en diferencias debemos encontrar la trans- formada z de expresiones tales como x(n − k), que corresponde a la derivada de orden k de la señal analógica x(t), es decir dkx(t)/dtk. El orden de la ecuación en diferencias esta determinado por el valor más grande de k.
Si tenemos que la transformada z de la señal x(n), es X(z) definida por
X(z) =
∞
∑
n=0
x(n)z−n= x(0) + x(1)z−1+ x(2)z−2+ ··· (2.13)
entonces la transformada z de la señal x(n − 1), que corresponde a la derivada de primer orden dx/dt es
ZT[x(n − 1)] =
∞
∑
n=0
x(n − 1)z−n
= x(−1) + x(0)z−1+ x(1)z−2+ x(2)z−3+ ···
= x(−1) + z−1x(0) + x(1)z−1+ x(2)z−2+ ···
= x(−1) + z−1X(z) (2.14)
en donde x(−1) representa la condición inicial asociada con la ecuación en diferencia de primer orden. Podemos expresar la propiedad anterior con mayor generalidad de la siguiente forma
ZT[x(n − k)] = z−kX(z)
asumiendo que todas las condiciones iniciales son cero, x(−m) = 0 para m = 1,2,···,k.
2.2. Estructura de los Filtros Digitales
Si un sistema digital es causal, cada muestra de la secuencia de salida y(n), se verá únicamente afectada por el valor actual y valores pasados de la secuencia de entrada, x(n),x(n − 1),etc. Este comportamiento puede ser representado como
y(n) = H [x(n), x(n − 1),···]
donde H es una función que en general, puede no ser lineal. Si el sistema digital es lineal, éste debe obedecer el principio de superposición, y por tanto la función H debe tomar la forma de una sumatoria lineal, por tanto en el caso general de un sistema lineal y causal, donde la señal de salida sea afectada por todas las señales de entrada previas, se puede expresar la salida como:
y(n) =
∞
∑
i=0
hix(n − i) (2.15)
que describe la convolución discreta en el tiempo de la señal x(n) con la secuencia hi.
Los parámetros hiforman las muestras de la respuesta al impulso del sistema (la salida del sistema si la entrada a él fuera la función delta de Kronecker, x(n) = δ (n)), que es igual a 1si n = 0 y cero en cualquier otro instante, entonces
y(n) =
∞
∑
i=0
hiδ (n − i) = hn (2.16)
para n = 0 hasta ∞.
Se entiende por un sistema estable, cuando para una entrada acotada se tiene una salida acotada. La condición necesaria y suficiente para alcanzar dicha estabilidad es que la respuesta al impulso sea absolutamente sumable.
2.2.1. Filtros FIR
Los filtros digitales reales tienen un tiempo finito para calcular cada muestra de salida, por lo que la ecuación que define a los filtros digitales debe ser truncada para obtener una de la forma
y(n) =
I−1
∑
i=0
wix(n − i) (2.17)
en donde wison los coeficientes, o pesos del filtro digital. De la expresión anterior encontramos que se tienenI de estos coeficientes y que la señal de salida y(n) depende de la entrada x(n). Otro factor a considerar es que el filtro digital no actúa de forma instantánea en el cálculo de la señal de salida, en lo referente a este aspecto es común considerar un retardo de una muestra en el filtro digital para permitir el procesamiento. Por lo que la ecuación en realidad queda
como
y(n) =
I
∑
i=1
wix(n − i) (2.18)
La respuesta del filtro digital descrito por la ecuación 2.17 a una función impulso, δ (n) será una secuencia de longitud finita
y(n) = wn
para n = 0 hasta I −1, por lo que se les llama Filtros de Respuesta Finita al Impulso (Finite Impulse Response, FIR). A dichos filtros también se les conoce como moving average (MA), filtros transversales, o no recursivos (aunque se han podido implementar de forma recursiva). También podemos observar de la ecuación 2.17 que la salida de un Filtro FIR es la suma ponderada de una cierta cantidad de valores de entrada previos. La función de transferencia que relaciona la transformada z de la secuencia de salida con la transformada z de la secuencia de entrada puede ser escrita como
W(z) = w0+ w1z−1+ w2z−2+ ··· + wI−1z−I+1 (2.19) de tal forma que la transformada z de la secuencia de salida puede ser escrita como
Y(z) = W (z)X(z) (2.20)
Los I − 1 ceros de la función de transferencia se obtienen como las raíces de este polinomio en el dominio de z, y los polos se obtienen como las raíces de zI−1= 0. Por lo que un filtro FIR causal tiene I − 1 polos en z = 0. Los filtros FIR tienen la propiedad de que siempre son estables cuando sus coeficientes se encuentran acotados y que pequeños cambios en el valor de sus coeficientes generan pequeños cambios en su respuesta.
2.2.2. Filtros IIR
En ocasiones los filtros FIR a pesar de su sencillez no son lo más apropiado debido a que requieren una gran cantidad de coeficientes para alcanzar sistemas resonantes con oscilaciones pequeñas, debido a que requieren una gran cantidad de coeficientes. Para obtener una representación de estos sistemas de una manera más eficiente se puede transformar la ecuación diferencial en tiempo continuo que define al sistema en una ecuación en diferencias, la cual tiene la forma general lineal de
y(n) =
J
∑
j=1
ajy(n − j) +
I−1
∑
i=0
bix(n − i) (2.21)
existiendo J coeficientes de realimentación aje I coeficientes de alimentación hacia adelante bi.
La respuesta al impulso de estos sistemas tomaría un tiempo infinito en decaer y por lo tanto a estos sistemas se les llama de respuesta infinita al impulso, o de la forma IIR. También en ocasiones se les llama filtros de polos y ceros, recursivoso simplemente autoregressive, moving average (ARMA).
Su transformada z puede ser descrita como
A(z)Y (z) = B(z)X(z) en donde
A(z) = 1 − a1z−1− ··· − aJz−J
B(z) = b0+ b1z−1+ ··· + bIz−I+1 reagrupando estos valores tenemos
H(z) =Y(z) X(z) =B(z)
A(z) (2.22)
de nueva cuenta los ceros del sistema son las raíces del numerador (las soluciones de B(z) = 0), y los polos del sistema son las raíces del denominador (las soluciones de A(z) = 0). Para que un sistema tenga valor inicial finito y por lo tanto pueda ser estable, debe de tener al menos la misma cantidad de polos que de ceros. Pero a diferencia de los filtros FIR, los filtros IIR pueden tener polos localizados en puntos no triviales en el plano de z. Esto abre las posibilidades para que el filtro no sea estable, lo cual ocurre cuando cualquiera de los polos del sistema causal se encuentran fuera del círculo unitario en el plano complejo de z. Por otra parte, si un sistema H(z), no tiene retardo total y todos sus ceros así como sus polos se encuentran en el interior del círculo unitario se puede decir que es un sistema de fase mínima además de estable. Un sistema de fase mínima tiene la interesante propiedad de que su inverso, 1/H(z) también es estable y causal.
La selección de que tipo de filtro usar depende del tipo de respuesta en frecuencia que se desee obtener. Si lo que se requiere es una respeta en frecuencia con una pequeña cantidad de modos con oscilaciones pequeñas y la misma cantidad de resonancias claramente definidas, la manera más eficiente de representar al sistema probablemente sea un filtro IIR. Por otra parte si lo que se requiere es un filtro con una gran cantidad de modos altamente oscilantes y que no tenga tendencia a mostrar resonancias claras en su respuesta en frecuencia probablemente con un filtro FIR se pueda modelar al sistema de manera más eficiente.
2.3. Filtros Óptimos en el dominio del Tiempo
Los filtros óptimos son aquellos que brindan el mejor desempeño para las circunstancias dadas, entendiendo al mejor desempeño como la minimización de una función de costo o de un valor medio cuadrado, teniendo como interpretación física de lo anterior a la minimización de la potencia de la señal de error. Cuando se diseña a un filtro para minimizar el valor máximo de error para cualquier frecuencia se dice que se realiza una optimización minimax. En el caso de los sistemas ANC se emplean filtros óptimos para (o algoritmos que permiten estimarlos de alguna forma) alcanzar el desempeño buscado. En la siguiente discusión sobre los filtros óptimos se muestra el desarrollo de las técnicas de filtrado adaptivo de señales que posteriormente servirán de base para los algoritmos empleados en los sistemas ANC.
2.3.1. Modelo de la Cancelación Eléctrica de Ruido
En el problema de la cancelación eléctrica de ruido se consideran los filtros FIR óptimos para minimizar el error cuadrático medio, en donde e(n) se encuentra como la diferencia entre la señal deseada d(n) y y(n), que es el resultado del filtrado de la señal de referencia x(n). De tal manera que podemos plantear al problema con las siguientes ecuaciones
e(n) = d(n) −
I−1
∑
i=0
wix(n − i) (2.23)
también podemos mostrar las ecuaciones anteriores en forma vectorial como
e(n) = d(n) − wTx(n) =d(n) − x(n)wT(n) (2.24)
en donde
w = [w0w1··· wI−1]T
x(n) = [x(n)x(n − 1) ··· x(n − I + 1)]T
Ya teniendo planteado nuestro modelo, podemos definir nuestra función de costo a minimizar
J= Ee2(n) (2.25)
para el siguiente análisis se asume que todas las señales son estacionarias y ergódicas, de tal forma que el valor esperado es invariante en el tiempo y puede ser calculado mediante un promedio en el tiempo.
Empleando el modelo previamente definido para el caso de la cancelación eléctrica de ruido, escribimos la función de costo como
J= wTAw − 2wTb + c (2.26)
en donde
A = E x(n)x(n)T
(2.27)
b = E [x(n)d(n)] (2.28)
c = Ed2(n) (2.29)
a la matriz A se le conoce como matriz Hessiana, y sus elementos son iguales a los valores de la función de autocor- relación de la señal de referencia
A =
Rxx(0) Rxx(1) ··· ··· Rxx(I − 1) Rxx(1) Rxx(0)
... . ..
... . ..
Rxx(I − 1) Rxx(0)
(2.30)
donde Rxx(m)es la función de autocorrelación simétrica de x(n), definida como
Rxx(m) = E [x(n)x(n + m)] = Rxx(−m) (2.31)
Aunque podríamos expresar a la matriz Hessiana A de una forma más específica como la matriz de autocorrelación R, no lo hacemos para mantener la generalidad, ya que el significado de la matriz Hessiana puede cambiar si modificamos nuestra función de costo a minimizar. Un ejemplo de otra función de costo para el mismo problema se tiene a contin- uación, en donde se incluye un término que tiene un valor proporcional al valor de la suma cuadrada de los coeficientes del filtro
J= Ee2(n) + β wTw (2.32)
en donde β juega el papel de un parámetro de peso del nuevo término incluido. Repitiendo el proceso de forma similar a la primera función de costo propuesta encontramos ahora el nuevo significado de la matriz Hessiana
A = R + β I (2.33)
Con la nueva función de costo propuesta se tiene como resultado un filtro óptimo que incluye una prevención para valores excesivamente grandes de los coeficientes del filtro, ya que estos pueden incrementar el valor de la función error cuadrático medio sobretodo cuando hay cambios en las estadísticas de la señal de referencia por lo que genera un filtro más robusto.
Es interesante notar que se pueden obtener resultados similares, cuando se agrega a la señal de referencia x(n) otra señal de ruido blanco v(n). Para este caso la matriz de autocorrelación para la señal de referencia modificada tendría la misma forma que en la ecuación 2.33, para este caso β estaría representado como el valor medio cuadrado de v(n). También se puede emplear un ruido de color, pero teniendo este efecto únicamente en el rango de frecuencias empleado.
El vector b tiene elementos que son iguales a las funciones de correlación cruzada entre la señal de referencia y la señal deseada, de tal forma que
b = [Rxd(0) Rxd(1) ···Rxd(I − 1)]T para
Rxd(m) = E [x(n)d(n + m)] = E [x(n − m)d(n)] (2.34) Finalmente para completar el desarrollo, c es un valor escalar equivalente al valor medio cuadrado de la señal deseada.
Es claro que la señal de error cuadrático medio es una función cuadrática de cada uno de los coeficientes del filtro FIR. Esta función siempre tendrá un valor mínimo y no un valor máximo (ya que J puede crecer sin fin simplemente incrementando la magnitud de alguno de los coeficientes. Sin embargo éste valor mínimo será único si la matriz Hessiana Aes definida positiva1.Tal como se planteó el desarrollo del filtro óptimo tomando a la ecuación 2.25 como la función de costo, la matriz A puede ser definida positiva o positiva semi definida (en cuyo caso la matriz sería singular y no tendría inversa), todo depende de las propiedades espectrales de la señal de referencia y del número de coeficientes del filtro FIR. Si tenemos al menos el mismo número de componentes espectrales como de coeficientes del filtro, la señal de referencia se dice que ese excitante persistente mente o rica espectralmente, lo que asegura que la matriz de autocorrelación se una definida positiva y que por lo tanto la función de costo tenga un mínimo único. Por otra parte si se emplea el modelo con blanqueado en la señal de referencia de la ecuación 2.32 empleando un valor finito de β tenemos garantizado que la matriz A sea definida positiva, ya que se garantiza que la señal de referencia modificada sea persistente mente excitante.
2.3.2. El Filtro de Wiener
El valor de los coeficientes del filtro FIR que reduce al error cuadrático medio a un mínimo se puede encontrar diferen- ciando la función de costo con respecto a cada coeficiente e igualando cada una de las derivadas resultantes con cero.
1En el álgebra lineal, una matriz definida positiva es una matriz hermitiana que es análoga a los números reales positivos. Se dice que una matriz M es definida positiva si cumple con las siguientes formulaciones:
1. Para todos los vectores no nulos donde zεCntenemos que
z∗Mz > 0
2. Todos sus eigenvalores λison positivos
3. La función hx,yi = x∗My define un producto interno en Cn
4. Todas las matrices cuadradas tomadas a partir de la superior izquierda tienen determinante positivo, incluyendo a la matriz M en sí misma.
Las matrices definidas positivas tienen las siguientes propiedades:
Toda matriz definida positiva es inversible y su inversa es definida positiva.
Si M es definida positiva, y r > 0 es un número real, entonces rM también es definida positiva.
Si M y N son matrices definidas positivas, entonces la suma M + N, el producto MNM y NMN son definidas positivas.
Toda matriz definida positiva M, tiene al menos una matriz raíz cuadrada N tal que N2= M.
Empleando notación vectorial tenemos
∂ J
∂ w= ∂ J
∂ w0
∂ J
∂ w1 ··· ∂ J
∂ wI−1
T
(2.35)
empleando la definición de la función de costo de la ecuación 2.25 a la ecuación anterior tenemos
∂ J
∂ w= 2 [Aw − b] (2.36)
si asumimos que la matriz A no es singular (debido a que la señal x(n) es persistente mente excitante) y por lo tanto tiene matriz inversa, entonces el vector de coeficientes óptimo se obtiene como
wopt= A−1b (2.37)
al filtro que emplea estos coeficientes óptimos se le conoce en el área del procesamiento digital de señales como Filtro de Wiener, debido a que se debe a los trabajos realizados por N.Wiener en los años cuarenta del siglo XX. Fue hasta 1947 el año en que Levinson publicó un método muy eficiente para resolver la ecuación de Wiener en el que toma provecho de la naturaleza Toeplitz2de la matriz A. Escribiendo a las matrices A y b en términos d la autocorrelación de x(n) y de la correlación cruzada de x(n) con d(n) respectivamente podemos expresar la ecuación de Wiener 2.37
como I−1
∑
i=0
wi,optRxx(k − i) − Rxd(k) = 0 para 0 ≤ k ≤ I − 1 (2.38) a este conjunto de ecuaciones se le conoce como las ecuaciones normales.
El vector de correlaciones cruzadas entre las I muestras pasadas de la señal de referencia y la señal de error es definido como
E[x(n)e(n)] = E
x(n) d(n) − xT(n)w = b − Aw (2.39)
de la ecuación anterior podemos encontrar que los elementos en el vector de correlaciones cruzadas entre la señal de referencia y la señal de error serán cero cuando los coeficientes del filtro FIR sean ajustados para minimizar el error cuadrático medio. Interpretando lo anterior encontramos que la señal de ruido residual no debe tener componentes que se encuentren correlacionadas con los I − 1 valores previos de la señal de referencia. A esto se le conoce como el principio de ortogonalidad.Con esta idea podemos obtener el valor mínimo del error medio cuadrado, empleando los coeficientes óptimos del filtro
Jmin= c − bTA−1b (2.40)
2.3.3. Sistemas de Predicción Lineal
Un caso particular interesante se tiene cuando se emplea el modelo de cancelación eléctrica de ruido con una señal de referencia x(n) representada por una versión retardada de la señal deseada d(n). De esta forma el propósito del filtro de Wiener es minimizar el valor medio cuadrado de la señal de error, haciendo que la salida del filtro sea lo más parecida posible a la señal deseada actual, empleando para esto valores pasados de ésta. Se dice que operando de esta forma el
2En el álgebra lineal una matriz Toeplitz, es una matriz cuadrada en el que todas sus diagonales de izquierda a derecha tienen los mismos valores en los elementos que las forman, es decir
∀ai, jεT → ai, j= ai+1, j+1
filtro es un predictor lineal de la señal deseada. Para este caso, los elementos de la matriz A y del vector b dependen únicamente de los valores de la función de autocorrelación de la señal d(n). Mientras más correlacionada sea la señal d(n) a lo largo de la longitud del filtro, menor será el valor del error cuadrático medio residual.
Si la señal d(n) es de ruido blanco, el filtro de Wiener no puede realizar predicción alguna de los valores futuros y no se alcanza ninguna atenuación en la señal de error. Mientras que una señal tonal es perfectamente predecible y se pueden alcanzar grandes atenuaciones de la señal de error. De hecho este tipo de sistemas son empleados para mejorar las componentes tonales de las señales, por lo que se les llama aclaradores de linea.
2.3.4. El algoritmo LMS
En las secciones anteriores hemos visto que el filtro FIR óptimo que minimiza el error cuadrático medio para el modelo de cancelación eléctrica de ruido puede ser calculado de forma directa conociendo las propiedades de la auto- correlación de la señal de referencia y de la correlación cruzada entre la señal de referencia y la señal deseada. Para poder implementar lo anterior se requiere contar con un historial de estas señales, lo que requeriría una gran cantidad de información para que la realización sea precisa. Además en el desarrollo anterior se consideró que las señales eran estacionarias, ya que de lo contrario sus propiedades de autocorrelación cambiarían con el tiempo. Aunado a esto, empleando las fórmulas de Wiener se encuentra la necesidad de invertir la matriz de autocorrelación, que para un filtro de I coeficientes sería una matriz de I × I, operación que puede ser sumamente compleja de realizar en un proce- sador (aunque consideremos algoritmos de optimización como el de Levinson para ello). Considerando lo anterior es necesario encontrar otra forma para determinar lo coeficientes del filtro óptimo.
Otra forma para determinar los coeficientes del filtro es hacerlos adaptivos, en lugar de emplear un conjunto de datos para encontrar las funciones de correlación y después emplearlas para calcular el conjunto de coeficientes, lo que se realiza es emplear los datos en forma secuencial para ajustar los coeficientes. Empleando este esquema, los coeficientes evolucionan en una dirección que minimiza el error medio cuadrado, con lo que los coeficientes convergen hacia el filtro óptimo si las señales son estacionarias o pueden reajustar los coeficientes del filtro si las propiedades de correlación de las señales cambian (con limitación en cuanto a la velocidad de cambio de las estadísticas de las señales en relación con la velocidad de convergencia del algoritmo).
2.3.4.1. Algoritmo de descenso más escarpado (Steepest Descent Algorithm)
El algoritmo más empleado para la adaptación de los coeficientes del filtro FIR tiene como fundamento el hecho de que la superficie de error tiene una forma cuadrática. Con lo anterior se sugiere que al ajustar el valor de un coeficiente en una pequeña cantidad, que sea proporcional al valor negativo del gradiente local de la función de costo con respecto al coeficiente del filtro, entonces el coeficiente se encuentra obligado a moverse en dirección del mínimo global de la superficie de error. Representando lo anterior para todos los coeficientes del filtro tenemos
w(n + 1) = w(n) − µ∂ J
∂ w (2.41)
en donde µ es conocido como el coeficiente de adaptación o factor de convergencia. Podemos determinar al vector de derivadas de la función de costo empleando las definiciones previamente mencionadas quedando finalmente como
∂ J
∂ w= 2E
x(n)xT(n)w − x(n)d(n)
(2.42)
si recordamos la definición de la señal de error
e(n) = d(n) − xT(n)w (2.43)
podemos escribir el vector de derivadas de la función de costo como
∂ J
∂ w= −2[x(n)e(n)] (2.44)
debemos notar que para poder emplear este algoritmo de descenso en el gradiente, es necesario obtener el valor es- perado del producto de la señal de error con el vector de retardos de la señal de referencia y esto implica promediar en el tiempo para segmentos grandes de datos, por lo que la actualización de los coeficientes del filtro empleando este método se hace de manera poco frecuente.
Como alternativa al método del descenso más escarpado Widrow y Hoff propusieron en 1960 una variante, en lugar de actualizar los coeficientes del filtro de manera infrecuente con un estimado del gradiente (empleando promedios en el tiempo) se propone hacerlo en cada tiempo de muestreo empleando un estimado instantáneo del gradiente (al que suele llamarse gradiente estocástico). Al valor instantáneo del gradiente se le obtiene como
∂ e2(n)
∂ w = −2x(n)e(n) (2.45)
con esto la actualización de los coeficientes quedaría como
w(n + 1) = w(n) + αx(n)e(n) (2.46)
en donde α equivale a 2µ y es el coeficiente de adaptación. A este algoritmo se le conoce como el algoritmo LMS.
2.3.4.2. Análisis de convergencia del algoritmo LMS
Realizar el análisis de convergencia del algoritmo LMS es una tarea compleja, debido a la naturaleza estocástica del estimado del gradiente cuando se le aplica con señales aleatorias, con ello el histórico de los coeficientes del filtro sera muy dependiente de las variaciones en los datos empleados. Para el desarrollo incluido en esta sección se realiza el análisis del valor esperado del vector de coeficientes del filtro, lo cual no provee una descripción completa del comportamiento del algoritmo, ya que la varianza en los históricos de cada coeficiente, su valores medios cuadráticos pueden tener valores grandes aunque los valores medios tengan convergencia. Sin embargo el análisis del valor medio de los coeficientes nos muestra una cantidad importante de propiedades del algoritmo. El valor medio de los coeficientes del filtro se obtiene como
E[w(n + 1)] = E [w(n)] + αE [x(n)e(n)] (2.47)
mostrando esta ecuación en su forma expandida
E[w(n + 1)] = E [w(n)] + αE [x(n)d(n)] − E x(n)xT(n)w(n) (2.48) debemos asumir que los coeficientes del filtro cambian poco a lo largo de las I retardos en x(n), por lo que la variación de w(n) es independiente de x(n). Esta consideración en mucho casos no se cumple, sobretodo para fil- tros con adaptación rápida o para algunos conjuntos de datos, sin embargo nos brinda un modelo muy simple de la convergencia del filtro, el cual sirve para tener una buena predicción del comportamiento del mismo. Empleando esta
consideración tenemos
E[w(n + 1)] = E [w(n)] + αE [x(n)d(n)] − E x(n)xT(n) E [w(n)] (2.49) en donde encontramos las matrices de correlación cruzada y de autocorrelación b y Amencionada anteriormente. Si definimos a la diferencia entre el valor esperado de los coeficientes del filtro con los óptimos de Wiener encontramos
ε(n) = E [w(n)] − wopt (2.50)
de la ecuación de Wiener wopt= A−1b, por lo que b = Awopty sustituyendo en la ecuación 2.49 tenemos
ε(n + 1) = [I − αA]ε(n) (2.51)
Si escribimos a la matriz Aen términos de la matriz de sus eigenvectores Q y de la matriz diagonal de sus eigenvalores Λtenemos
A = QΛQT (2.52)
debido a que la matriz A es simétrica, sus eigenvectores son orto normales
QQT = I (2.53)
Por otra partes los eigenvalores de A son reales y positivos, y definen a la matriz Λ como
Λ =
λ1
λ2 0
. ..
0 λI
(2.54)
empleando todas estas propiedades podemos reescribir la ecuación 2.51 como
QTε(n + 1) = [I − αΛ]QTε(n) (2.55)
los elementos del vector QTε(n) equivalen a un conjunto transformado de coeficientes promediados y normalizados, lo que correspondería a los ejes principales de la superficie de error. Si definimos al vector QTε(n) como v(n) tenemos entonces
v(n + 1) = [I − αΛ]v(n) (2.56)
y como Λ es una matriz diagonal, representa un conjunto de I ecuaciones independientes, las cuales pueden ser expre- sadas como
vi(n + 1) = (1 − αλi)vi(n) (2.57)
La convergencia en promedio de cada uno de estos coeficientes normalizados y transformados del algoritmo LMS es independiente, cada uno se dice que corresponde a los modos del algoritmo. La velocidad de convergencia de cada uno de estos modos es dependiente del eigenvalor asociado de la matriz de autocorrelación λi, los modos que tienen valores más grandes tienen un descenso con mayor pendiente en la superficie de error, por lo que experimentan una convergencia más rápida que los de menor valor. Para cualquier valor inicial, vi(n) caerá hacia cero dadas las siguientes