TÍTULO DE INGENIERA EN ELECTRÓNICA Y TELECOMUNICACIONES

1 TÍTULO DE INGENIERA EN ELECTRÓNICA Y TELECOMUNICACIONES...
Author: María Mercedes Córdoba Ramírez
0 downloads 3 Views

1 TÍTULO DE INGENIERA EN ELECTRÓNICA Y TELECOMUNICACIONESPROYECTO DE GRADO PREVIO A LA OBTENCIÓN DEL TÍTULO DE INGENIERA EN ELECTRÓNICA Y TELECOMUNICACIONES TEMA: IMPLEMENTACIÓN DE UN ARREGLO SEMIESFÉRICO DE MICRÓFONOS UTILIZANDO LA METODOLOGÍA BEAMFORMING DE BANDA ANCHA PARA EL REALCE DE LA VOZ AUTOR: TATIANA CAISAPANTA LARREA

2 PROCESAMIENTO DIGITAL DE LA VOZIntroducción PROCESAMIENTO DIGITAL DE LA VOZ La teoría del procesamiento digital de señales. ha tenido un gran avance gracias al desarrollo de la tecnología de los procesadores de señales digitales, encontrándose innumerables aplicaciones en la vida moderna ya sea en la codificación, reconocimiento o síntesis de la voz.

3 Introducción El presente proyecto de tesis es la implementación de un arreglo de micrófonos semiesférico donde se utiliza la metodología BEAMFORMING; en base aun previo estudio matemático de los algoritmos adaptativos LCMV. Algoritmo implementados en la tarjeta NI myRIO: Householder Normalized Constrained Least Mean Squares. Householder Constrained Conjugate Gradient Texto Plano en MATLAB Análisis del comportamiento de los micrófonos Ecualización Desarrollo de los algoritmos en la tarjeta NI myRIO. Resultados Análisis de resultados

4 Beamforming Categorías de Beamforming Beamforming FijoBeamforming es una técnica que utiliza un arreglo de sensores; donde se estima la señal principal mediante combinaciones lineales de las diferentes salidas de cada uno de los sensores del arreglo, de tal manera que las perturbaciones indeseadas que vienen de diferentes direcciones se atenúan por el fenómeno de la directividad o selectividad espacial del arreglo. 𝑦 𝑘 = 𝐰 𝐻 𝐱 𝑘 Categorías de Beamforming Beamforming Fijo Beamforming Adaptativo

5 Beamforming Tipos de Beamforming Narrowband Beamforming𝑦 𝑘 = 𝑚=1 𝑀 𝑤 𝑚 𝑥 𝑚 𝑘 Broadband Beamforming 𝑦 𝑘 = 𝑚=1 𝑀 𝑖=0 𝑁−1 𝑤 𝑚,𝑖 𝑥 𝑚 𝑘−𝑖

6 Arreglo de Sensores

7 Arreglo de Sensores

8 Algoritmos Adaptativos LCMVLos algoritmos adaptativos intentan: min 𝐰 𝜉 𝑘 𝑠𝑢𝑗𝑒𝑡𝑜 𝑎 𝐂 𝐻 𝐰=𝐟 𝐂 : Matriz de Restricciones MN×p, siendo p el número de restricciones 𝐟: el vector de ganancia p×1 Mediante la imposición de restricciones la señal deseada 𝑑 𝑘 =0. Estructura de Beamforming Adaptativo Broadband 𝑦 𝑘 = 𝐰 𝐻 𝑘 𝐱 𝑘 𝜉 𝑘 =𝐸 𝑒 𝑘 2 =𝐸 𝑒 𝑘 𝑒 ∗ 𝑘 𝐰 𝑘 = 𝐰 1 𝑇 𝑘 𝐰 2 𝑇 𝑘 ⋯ 𝐰 𝑀 𝑇 𝑘 𝑇 Donde : 𝑒 𝑘 =𝑑 𝑘 −𝑦 𝑘 𝐱 𝑘 = 𝐱 1 𝑇 𝑘 𝐱 2 𝑇 𝑘 ⋯ 𝐱 𝑀 𝑇 𝑘 𝑇

9 Algoritmos Adaptativos LCMVLos algoritmos adaptativos LCMV se divide en tres familias siendo la Estructura Householder una de las mejores opciones para implementación practica por su bajo costo computacional. Restricciones Lineales Estructura GSC Estructura Householder

10 Algoritmos Adaptativos LCMVEstructura Householder La estructura Householder mediante la matriz 𝐐 y sus reflectores de Householder hacen que computacionalmente son más eficientes . La matriz 𝐐 es una matriz rotacional ortogonal que se utiliza como la transformación que va a generar un vector de coeficientes modificados 𝐰 𝑘 que se relaciona a 𝐰 𝑘 .

11 Algoritmos Adaptativos LCMVEstructura Householder

12 Cálculos en Precisión FinitaEn el presente proyecto el hardware de implementación una FPGA NI myRIO trabaja con 16 bits. function Vq = qround(V,b) Vq=2^(-b)*round(V*2^b); end

13 Cálculos en Precisión Finita

14 Cálculos en Precisión Finita

15 Cálculos en Precisión Finita

16 Etapa del estimador LS LatticeAlgoritmo LS-Lattice Etapa del estimador LS Lattice Cascada de etapas para formar un filtro de estimación lineal de orden N

17 Algoritmo LS-Lattice (Desarrollo)Del diagrama anterior se obtiene las siguientes formulas: 𝑒 𝑚+1 𝑓 𝑛 = 𝑒 𝑚 𝑓 𝑛 − 𝑘 𝑚+1 𝑏 𝑒 𝑚 𝑏 𝑛−1 𝑒 𝑚+1 𝑏 𝑛 = 𝑒 𝑚 𝑏 𝑛−1 − 𝑘 𝑚+1 𝑓 𝑒 𝑚 𝑓 𝑛 Dónde: 𝑒 𝑚 𝑓 : Error de predicción forward. 𝑒 𝑚 𝑏 : Error de predicción backward. 𝑘 𝑚 𝑓 y 𝑘 𝑚 𝑏 : Coeficientes de reflexión. 𝑚: Representa la etapa actual en la que se está realizando el cálculo.

18 Algoritmo LS-Lattice (Desarrollo)Los coeficientes de reflexión vienen dados por: 𝑘 𝑚+1 𝑏 𝑛 = ∆ 𝑚+1 𝑛 𝜀 𝑚 𝑏 𝑛−1 𝑘 𝑚+1 𝑓 𝑛 = ∆ 𝑚+1 𝑛 𝜀 𝑚 𝑓 𝑛 Donde el coeficiente de correlación parcial ∆ m+1 n se calcula por: ∆ m+1 n = ∆ m+1 n−1 + 𝑒 𝑚 𝑓 (𝑛) 𝑒 𝑚 𝑏 𝑛−1 𝛾 𝑚 (𝑛−1)

19 Algoritmo LS-Lattice (Desarrollo)Donde: γ m (n−1): ángulo formado por el producto vectorial entre los errores de predicción. 𝜀 𝑚 𝑏 𝑛−1 y 𝜀 𝑚 𝑓 𝑛 : errores cuadráticos de predicción.

20 Algoritmo LS-Lattice (Desarrollo)Los algoritmo adaptativos demandan un conjunto de restricciones que se deben ejecutar en cada interacción, mediante la imposición de restricciones lineales sobre el filtro; tal es el caso de estudio de las restricciones para el algoritmo Lattice Recursive Least Squares. Al abordar la investigación sobre el tema, no se encuentra información al mismo.

21 Geometría ULA para Respuesta de los micrófonos MEMS ADMP504Se utiliza como señal el ruido AWGN porque por sus características matemáticas su espectro abarca todas las frecuencias. Los algoritmos adaptativos LMS : RLS: Parámetro de Adaptación λ.

22 Respuesta de los micrófonos MEMS ADMP504Características físicas: Respuesta Omnidireccional. Relación señal/ruido 65dBA. Sensibilidad de 38dBV. Frecuencia de respuesta 100Hz a 20KHZ. Salida analógica individual.

23 Respuesta de los micrófonos MEMS ADMP504Adquisición de Datos con la tarjeta Ni myRIO

24 Respuesta de los micrófonos MEMS ADMP504Adquisición de Datos con la tarjeta Ni myRIO

25 Respuesta de los micrófonos MEMS ADMP504Adquisición de Datos con la tarjeta Ni myRIO – Interfaz LabVIEW LabVIEW constituye un revolucionario sistema de programación gráfica para aplicaciones que involucran adquisición, control y presentación de datos. Es un entorno de programación destinado al desarrollo de aplicaciones, empleando programación gráfica basada en diagramas de bloques.  

26 Respuesta de los micrófonos MEMS ADMP504Construcción del Circuito Interfaz de los Micrófonos MEMS

27 Respuesta de los micrófonos MEMS ADMP504La teoría de sensores indica que los elementos que conforman un arreglo de sensores deben ser isotrópicos. En la práctica no se cumple. Para compensar las diferencias entre los micrófonos se emplea la estructura de identificación de sistema . Se utiliza como referencia el 𝑀𝑖𝑐 1 Respuesta de los micrófonos en frecuencia Respuesta compensada de los micrófonos en frecuencia

28 Programación en Tarjeta FPGAEl código en Matlab® de los algoritmos HNCLMS (Householder Normalized Constrained Least Mean Squares) y el algoritmo HCCG (Householder Constrained Conjugate Gradient) se encuentran desarrollados en texto plano que se ejecutan de la siguiente manera: Señales de los Micrófonos Mic Pre-procesamiento: Filtros Equalizadores Equalizando Compensando el desfase introducido en las muestras Generando Vector xk Inicialización de variables Matriz Constraint Vector de Ganancia f y Vector F Matriz de Transformación Q Algortimos HCNLMS y HCCG

29 Programación en Tarjeta FPGAEl código en Matlab® de los algoritmos HNCLMS (Householder Normalized Constrained Least Mean Squares) y el algoritmo HCCG (Householder Constrained Conjugate Gradient) se encuentran desarrollados en texto plano que se ejecutan de la siguiente manera: Señales de los Micrófonos Mic Pre-procesamiento: Filtros Equalizadores Equalizando Compensando el desfase introducido en las muestras Generando Vector xk Inicialización de variables Matriz Constraint Vector de Ganancia f y Vector F Matriz de Transformación Q Algortimos HCNLMS y HCCG

30 Programación en Tarjeta FPGADiagrama de Bloques Adquisición y Transferencia de Datos

31 Programación en Tarjeta FPGADiagrama de Bloques Ecualizador del Canal La ecualización de canal consiste en estimar una función de transferencia para compensar la distorsión lineal causada por el canal.

32 Programación en Tarjeta FPGACompensación del Desfase en las Muestras Según la Geometría Propuesta El registro de desplazamiento se transfiere los datos conectados en la parte derecha hacia el terminal izquierdo del bucle, el terminal en el lado derecho del bucle devuelve el último valor almacenado en el registro de desplazamiento.

33 Programación en Tarjeta FPGACompensación del Desfase en las Muestras Según la Geometría Propuesta Geometría propuesta 𝑡 1 = 𝑡 4 = 1𝑚 340 𝑚/𝑠 =2,94 𝑚𝑠 Retardo de 𝟎,𝟑𝟖 𝒎𝒔 𝑡 2 = 𝑡 3 = 0,87𝑚 340 𝑚/𝑠 =2,56 𝑚𝑠 𝒇=𝟖𝟎𝟎𝟎𝑯𝒛 3 muestras de retardo radio=15 𝑐𝑚 𝜃= 𝜋 2 340 m/s (no se considera las alteraciones debido a la altura). 𝜑 𝑚 = 𝑚𝜋 M

34 Programación en Tarjeta FPGA Generación del Vector xk𝑥𝑘= 𝑥1 1 𝑥2 1 𝑥3 1 𝑥 𝑥 𝑥 𝑥 𝑥4 10

35 Programación en Tarjeta FPGAAlgoritmos para cálculos de constantes y constantes definidas En el frame de inicialización de la estructura flat Sequence definimos las constantes y se ejecuta los algoritmos para el cálculo de: Matriz Constraint Vector de ganancia f y Vector F Matriz de transformación Q

36 Programación en Tarjeta FPGA Desarrollo de los algoritmos HNLMS y HCCGEntradas Constantes Entradas Variables Salida HNCLMS xk, Q, wq1, response wHNLMS MSE1, fHNCLMS HCCG xk, Q, wq2, response wHCCG, Rcg, c, g MS2, fHCCG

37 Programación en Tarjeta FPGA Desarrollo de los algoritmos HNLMS y HCCG

38 Programación en Tarjeta FPGA Desarrollo de los algoritmos HNLMS y HCCG

39 Análisis de Resultados de los algoritmos en la Geometría PropuestaMSE del algoritmo HNCLMS con varios tamaños de µn Comparación de los algoritmos Householder respecto al MSE para un arreglo semiesférico con todas las interacciones

40 Análisis de Resultados de los algoritmos en la Geometría PropuestaMSE del algoritmo HNCLMS con varios tamaños de µn Comparación de los algoritmos Householder respecto al beampattern para un arreglo semiesférico

41 CONCLUSIONES Se cumplió con el objetivo de implementar un arreglo semiesférico de micrófonos que permita realzar la voz de manera adecuada utilizando algoritmos adaptativos LCMV en el dispositivo NI myRIO-1900. Se verifico el rendimiento de los algoritmos HNCLMS y HCCG para diferentes números de bits en base a la precisión finita, donde se concluye que el error MSE es menor si el número de bits aumenta, debido a que al ser menor el número de bits existe un incremento de las operaciones y por ende una propagación del error. Se realizó el estudio del algoritmo Lattice Recursive Least Squares mediante la imposición de restricciones lineales sobre el filtro; pero al abordar la investigación sobre el tema, no se encuentra información. Siendo este un tema de investigación más profundo.

42 CONCLUSIONES La teoría de arreglo de sensores indica que estos sensores deben tener un comportamiento isotrópicos al realizar el análisis se comprobó que en casos prácticos no cumple, esto es propio de su fabricación, de las propiedades físico-químicas de los materiales empleados, por lo que se aproximó su comportamiento mediante la ecualización de los mismos tomando como referencia el 𝑀𝑖𝑐 1. Se realizó la programación directamente desde la ventana LabVIEW en el dispositivo Ni myRIO que es un hardware embebido; la adquisición de datos se hizo mediante el FPGA y el desarrollo del algoritmo en el procesador dual-core ARM Cortex-A9 completamente programable que ejecuta un SO en tiempo real. Se concluye que la herramienta LabVIEW constituye un revolucionario sistema de programación gráfica para aplicaciones que involucran adquisición, control y presentación de datos, empleando programación gráfica basada en diagramas de bloques.

43 CONCLUSIONES El tiempo de ejecución del algoritmo HCCG es de 8ms y del algoritmo HCNLMS es de 6ms; debido a la adquisición de los datos, procesamiento de las señales, algoritmos ejecutados en el Math Scrip de Matlab. Los algoritmos NLMS y CG presentan un valor en sus MSE similar y un buen desempeño al realizar el análisis de las gráficas. Sin embargo se debe considerar que el algoritmo HCNLMS tiene un tiempo menor de ejecución por que su algoritmo tiene un menor número de operaciones.

44 RECOMENDACIONES Se recomienda ampliar el estudio de las señales adquiridas en un ambiente idóneo, ya que en la presente investigación se utiliza señales del tipo AWGN pero estas señales no fueron adquiridas en una cabina anecoica, de esta manera se mejorara el resultado final.