1 / 49

Class p1c1: Introducción del curso. Entrega prontuarios, reglas de clase, proyectos y exámenes.

EE7780 Array Signal Processing. Class p1c1: Introducción del curso. Entrega prontuarios, reglas de clase, proyectos y exámenes. Primera clase: Introducción a ASP, definiciones y términos. Problemas para la primera semana. 1. Introducción.

Download Presentation

Class p1c1: Introducción del curso. Entrega prontuarios, reglas de clase, proyectos y exámenes.

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EE7780 Array Signal Processing Class p1c1: Introducción del curso. Entrega prontuarios, reglas de clase, proyectos y exámenes. Primera clase: Introducción a ASP, definiciones y términos. Problemas para la primera semana. EE7780 Array Signal Processing clase p1c1 1

  2. Introducción • Entrega prontuarios, reglas de clase, exámenes, asignaciones y proyectos. Clase p1c1 • Introducción a ASP, definiciones y términos. • Problemas para la primera semana. EE7780 Array Signal Processing clase p1c1 2

  3. Profesor: Dr. Luis M. Vicente Oficina: DSP Lab L 308B (dentro del laboratório de DSP) Horas de oficina: 3:00 – 6:30 PM (lunes) Teléfono: 787 622 8000 - ext: 340 Fax: 787 760 7815 Correo electrónico : lvicente@pupr.edu Internet: http://www.lmvicente.com Prerequisitos Hablar con el coordinador. Libros de Texto Dr. Vicente Thesis. H. L. Van Trees, Optimum Array Processing: Part IV of Detection, Estimation and Modulation Theory. New York, NY: Wiley, 2002. EE7780 Array Signal Processing clase p1c1 3

  4. Referencias bibliográficas: D. G. Manolakis, V. K. Ingle, and S. M. Kogon, Statistical and Adaptive Signal Processing. Boston, MA: McGraw-Hill, 2000. J. Li and P. Stoica, Robust Adaptive Beamforming. Hoboken, NJ: Wiley, 2006. B. Widrow and S. D. Stearns Adaptive signal processing, Englewood Cliffs, NJ: Prentice-Hall, 1985. EE7780 Array Signal Processing clase p1c1 4

  5. Formato de examen: Take home. Examen 1: 25% Examen 2: 25% Problemas semanales: 50% (se darán varios problemas cada semana que de deben entregar el lunes de la siguiente semana). Asistencia virtual: 10% (penalización). El estudiante deberá confirmar por e-mail cada semana que ha estudiado las notas y el vídeo antes del viernes para así poder completar los problemas semanales. Si no se recibe un e-mail del estudiante antes del jueves 11:59pm se apuntará una falta de asisténcia. A las 2 faltas de asistencia el estudiante perderá un 10% de la nota final. EE7780 Array Signal Processing clase p1c1 5

  6. Reglas del curso Para enviar notificaciones necesito un e-mail con una dirección que incluya de algún modo su nombre y apellido (por ejemplo nightrider@hotmail.com no es muy recomendable). Los mensajes deberán titularse (subject) EE7780 nombre apellido – (motivo del e-mail). Así evitaremos confusiones innecesarias. El estudiante debe estudiar las notas de clase y los videos de clase cada semana ántes del viernes, deberá enviar un e-mail al profesor confirmandolo para que el profesor le apunte la asistencia virtual. El estudiante debe hacer los problemas de la semana y entregarlos antes o el lunes de la siguiente semana. No se admitirán trabajos despues de las 11:59pm los lunes. Las fechas oficiales serán expuestas en el calendario del curso de la página web y en Blackboard (BB). Los exámenes serán para hacer en casa. Sigan el código de honor. El estudiante es responsable de leer todos los anuncios expuestos en BB, por favor activen su cuenta en BB Enterprise. EE7780 Array Signal Processing clase p1c1 6

  7. Objetivos: Los estudiantes deben familiarizarse con los siguientes temas: • Descripción de un sistema general de Array Processing. • Diseño de linear, planar, circular y arrays esféricos. Técnicas de beamformers determinísticos y estadísticos. • Direction of arrival estimación (DOA). • Programación de software con Matlab. Temas: • Propagación de señales en espacio y tiempo, campos cercanos y lejanos (near and far field). • Geometría de arrays. • Narrowband/Broadband beamforming. • Element space and beamspace beamformers. • Statistical beamformers. • Partial adaptive beamforming. • Robust beamforming y (DOA). EE7780 Array Signal Processing clase p1c1 7

  8. Introducción ASP • Introducción a ASP, definiciones y términos. • Problemas para la primera semana. • Nomenclatura: • a : número escalar. • a : vector de dimensiones (Kx1) • A : matriz de dimensiones (MxN) EE7780 Array Signal Processing clase p1c1 8

  9. Introducción ASP • Coordenadas cartesianas y esféricas en 3-D. EE7780 Array Signal Processing clase p1c1 9

  10. Introducción ASP • Coordenadas esféricas en 3-D.: definiciones • El ángulo sobre el plano x-y se llama ángulo de azimuth fp. • El ángulo de altura, que es medido desde el eje z+ se llama ángulo polar, de elevación o de altura qp. • Cualquier punto en el eje x-y tiene un ángulo polar de q=p/2 • El eje x tiene como ángulos q=p/2 y f=0. EE7780 Array Signal Processing clase p1c1 10

  11. Introducción ASP • Relación coordenadas cartesianas y esféricas en 3-D. EE7780 Array Signal Processing clase p1c1 11

  12. Introducción ASP • Ecuacion de onda y solución: • El campo medido en un punto p al instante t es: • Ecuación de onda que se transmite en un medio isotrópico a una velocidad c: • Solución a señal monocromática o narrow-band de frecuencia angular w: EE7780 Array Signal Processing clase p1c1 12

  13. Introducción ASP • Definiciones para comprender: • Wavenumber vector: • vector DOA o dirección de la onda: • A(t) es la amplitud compleja cuya variación es lenta con respecto a la frecuencia angular de la onda w. En unos casos es la amplitud de la señal interés (SOI) y en otros la amplitud de la interferencia que debemos eliminar. Esto depende de la dirección de procedencia de la onda a. EE7780 Array Signal Processing clase p1c1 13

  14. Introducción ASP • Campos cercanos y lejanos (near y far field) • Una onda medida no muy lejos de la fuente de energía se dice que se mide en campo cercano. En ese caso A(t) es diferente en cada sensor, debido a que se produce atenuación de la onda entre sensores. • Una onda medida lejos de la fuente de energía se dice que se mide en campo lejano. A(t) es considerada constante en cada sensor, ya que la atenuación de la onda entre sensores es despreciable. • En antenas campo lejano se produce a distancias mayores que 2l. • Otra definicion indica que far field se produce a distancias mayores que 2D2/l. Donde D es la apertura (dimensión máxima) del array o antena. EE7780 Array Signal Processing clase p1c1 14

  15. Introducción ASP • El campo medido en un sensor se puede escribir como: • En este caso k=w/c es la magnitud del wavenumber. • Los dos primeros factores son independientes de la posición del sensor. EE7780 Array Signal Processing clase p1c1 15

  16. Introducción ASP • El campo medido en K sensores se puede agrupar en un vector de dimensiones (Kx1): • El término A(t)ejwt se denomina s(t). • El ultimo termino se agrupa en el steering vector: EE7780 Array Signal Processing clase p1c1 16

  17. Introducción ASP • El steering vector es uno de los conceptos más importantes en array processing. Cada señal que viene de diferente dirección tiene un steering vector diferente. • En array processing habrá una señal de interés SOI con DOA a0 y con un steering vector s0. El campo medido en el array es: EE7780 Array Signal Processing clase p1c1 17

  18. Introducción ASP • En general puede haber l interferencias que provienen de las direcciones al y con steering vectors il. El campo debido a cada interferencia es: EE7780 Array Signal Processing clase p1c1 18

  19. Introducción ASP • Aparte de SOI e interferencias, hay siempre ruido uncorrelado o termal en cada sensor. El ruido en todos los sensores se agrupa en un vector de ruido n(t) donde para cada t las amplitudes de n son random variables. • La señal que llega al array está compuesta de SOI, interferencias y ruido. La expresión general es: • Esta expresión es general. La geometría del array está implicita en las expresiones de los steering vectors. Cada array tiene diferentes expresiones de steering vectors. EE7780 Array Signal Processing clase p1c1 19

  20. Introducción ASP • El objetivo de array signal processing es obtener la información de la SOI que está en s(t). Para ello se aplica un vector de pesos v a la señal de entrada, obteniendo la salida del beamformer. • donde el vector de pesos es: • La expresión equivalente sin usar vectores es: EE7780 Array Signal Processing clase p1c1 20

  21. Introducción ASP • La salida del beamformer se puede descomponer en la salida de la SOI, las interferencias y el ruido: • zs(t)=s(t)vHs0 • . • zn(t)=vHn(t) • El objetivo es eliminar la interferencia y el ruido y obtener z(t)=s(t) • Para ello se deben satisfacer tres condiciones: • zs(t)= s(t)vHs0=s(t), o lo que es lo mismo vHs0=1. • 0= zi(t) • 0= zn(t) EE7780 Array Signal Processing clase p1c1 21

  22. Introducción ASP • La primera condición es denominada Unity Gain SOI response. Se puede observar que hay infinitas posibilidades de valores de v que logran esta condición, ya que hay una ecuación y K incógnitas (los K valores de v). • La segunda condición se satisface cuando los vectores v y il son ortogonales. Nótese que la operación vH iles un producto interno de vectores, y es cero cuando son ortogonales. Nótese que esta condición no depende de la amplitud de la interferencia, solamente de su steering vector. EE7780 Array Signal Processing clase p1c1 22

  23. Introducción ASP • La tercera condición no se cumple en general, ya que n(t) es un vector de valores aleatorios en cada t por tanto para un determinado v puede que se cumpla en un instante t1pero no al siguiente instante t2. Lo único que se puede hacer es encontrar la solución para v que minimize la varianza o potencia del ruido a la salida del beamformer. EE7780 Array Signal Processing clase p1c1 23

  24. Problema1 semana 1 • Implementar un programa de Matlab para generar una señal monocromática o narrow-band de frecuencia fbin=3kHz. donde la amplitud es una señal senoidal de frecuencia fA(t)=300Hz con un DC offset de 1V. La señal debe tener 50msec de duración. • Debido a que en las computadoras no se pueden generar señales analógicas, vamos a generar una señal digital con periodo de muestreo/sampling de fs=44.1kHz. • Se adjunta un ejemplo con otros valores de frecuencias, etc. Usted debe modificar los valores en el código para satisfacer los requisitos del problema y añadir comentarios. • Crear una función [st]=fCreateNBSig(fs,Tlength,fAt,fbin) EE7780 Array Signal Processing clase p1c1 24

  25. Problema 1 semana 1 • Código ejemplo: EE7780 Array Signal Processing clase p1c1 25

  26. Problema 1 semana 1 • Código ejemplo (cont): EE7780 Array Signal Processing clase p1c1 26

  27. Geometría de Arrays • Consideraciones de diseño: para diseñar arrays, necesitamos seleccionar la geometría, la frecuencia de trabajo y la resolución espacial que queremos. Con estas condiciones obtendremos la longitud del array y el número de elementos. • Geometría: lineal, circular, esférica, etc. La geometría es seleccionada dependiendo de la aplicación. Por ejemplo, en aplicaciones de sonar para localizar submarinos, se ha usado el array lineal. • Frecuencia de trabajo: se necesita para determinar la distáncia máxima entre elementos. Se debe satisfacer el criterio spacial de Nyquist que dicta d≤l/2 donde l es la longitud de onda mínima igual a l=c/f. EE7780 Array Signal Processing clase p1c1 27

  28. Geometría de Arrays • La resolución espacial es inversamente proporcional a la separación mínima entre dos señales que el array puede diferenciar. Para obtener mayor resolución espacial (y poder resolver dos señales que estén cerca) el array deberá tener una apertura mayor. La apertura se define como la extensión del array. • Es de tener en cuenta que a mayor apertura, debemos tener más elementos, ya que la distancia máxima entre elementos es dictada por el criterio de Nyquist. Por un lado queremos una apertura máxima, pero por otro lado queremos el mínimo número de elementos por rapidez y menor número de cálculos. Este compromiso debe ser tomado en cuenta al diseñar un array. EE7780 Array Signal Processing clase p1c1 28

  29. Linear Arrays • Arrays lineales: Los elementos están distribuidos en una línea. Si la distancia es constante se denomina ULA (Uniform Linear Array). Si la distancia es d=l/2 se denomina SLA (Standard Linear Array). • La posición de los elementos en un y-ULA construido sobre el eje y centrado en el origen tiene como ecuación: • Para un array de 3 elementos, las posiciones serían: p1=[0,-d,0]T, p2=[0,0,0]T, p3=[0, d,0]T. Es decir, el primer elemento está d a la izquierda del origen ,el segundo elemento en el origen, y el tercero a la derecha del origen con distancia d. EE7780 Array Signal Processing clase p1c1 29

  30. Linear Arrays • Geometría de un SLA: EE7780 Array Signal Processing clase p1c1 30

  31. Linear Arrays • Steering vector de un SLA: usando la expresión general del steering vector: • Particularizando para: • Obtenemos: EE7780 Array Signal Processing clase p1c1 31

  32. Linear Arrays • Angulo de Cono y DOA ambiguity: si definimos: • esto es llamado el ángulo de cono. La siguiente figura lo muestra: • Cualquier señal procedente cualquier parte del cono es tratada como si fuera la misma señal. Esto es debido a la simetría cilíndrica que presenta el LA. EE7780 Array Signal Processing clase p1c1 32

  33. Linear Arrays • El cono de ambigüedad limita el array a una cubierta espacial (coverage) de 180o. Por tanto el LA es usado para 2-D beamforming siempre que las señales procedan de un rango inferior o igual a 180o. Para 3-D beamforming se usan los arrays circulares o esféricos. • Debido a la estructura del ULA, el delay que sufre la señal en cada sensor es constante (Vandermonde structure), por tanto se puede usar la transformada discreta de Fourier (DTFT) para calcular el beampattern, donde el eje de frecuencias es cambiado por el eje de ángulo de cono. EE7780 Array Signal Processing clase p1c1 33

  34. Linear Arrays • Esta propiedad de los ULA simplifica mucho el uso de algoritmos de beamforming, como el Dolph-Chebishev tapered beamforming y diversos algoritmos de estimación de DOA. • Es por ello que a veces se intenta “linearizar” otros tipos de array como los circulares o esféricos. El proceso de “linearizar” otros tipos de array llama Virtual Array Processing. EE7780 Array Signal Processing clase p1c1 34

  35. Circular Arrays • Arrays circulares: Los elementos están distribuidos alrededor de un círculo de radio r. Si la distancia es constante se denomina UCA (Uniform Circular Array). • La posición de los elementos tiene como ecuación: • Para un array de 4 elementos, las posiciones serían: p1=[r,0,0]T, p2=[0, r,0]T, p3=[-r, 0,0]T y p4=[0, -r,0]T. Es decir, el primer elemento está en el eje positivo x a una distancia r del centro, el segundo en el eje positivo y a r del centro y sucesivamente. EE7780 Array Signal Processing clase p1c1 35

  36. Circular Arrays • Geometría de un UCA: EE7780 Array Signal Processing clase p1c1 36

  37. Circular Arrays • Steering vector de un UCA: usando la expresión general del steering vector: • Particularizando para: • Obtenemos: EE7780 Array Signal Processing clase p1c1 37

  38. Circular Arrays • DOA ambiguity: Debido a la simetría del array circular, existen dos ángulos de elevación que producen el mismo steering vector, a saber qup y qdown = p-qup Debido a este fenómeno, el CA se dice que tiene dos ángulos de ambigüedad. • Si dos señales llegan al array, una por encima del array con un ángulo qup y otra por debajo del array con un ángulo polar qdown = p-qup, el array no las distingue y piensa que es la misma señal. EE7780 Array Signal Processing clase p1c1 38

  39. Circular Arrays • El array circular tiene una cobertura de 360o en azimuth y 180o en elevación (de –p/2 a p/2). Por tanto el CA es usado para 2-D o 3-D beamforming siempre que en éste último caso las señales lleguen por arriba o por abajo solamente. Para eliminar totalmente la ambigüedad se usan los arrays esféricos. EE7780 Array Signal Processing clase p1c1 39

  40. Spherical Arrays • Arrays esféricos: Los elementos están distribuidos alrededor de una esfera de radio r. Existen varias maneras de colocar los elementos del array (equiangle, Gaussian sampling, etc). • La posición de los elementos tiene como ecuación: • Para un array de 6 elementos, las posiciones “equiangle” serían: p1=[0,0, r]T, p2=[r,0,0]T , p3=[0, r,0]T, p4=[-r, 0,0]T ,p5=[0, -r,0]T y p6=[0,0, -r]T. Es decir, el primer elemento está en el eje positivo z a una distancia r del centro, el segundo en el eje positivo x a r del centro y sucesivamente. EE7780 Array Signal Processing clase p1c1 40

  41. Spherical Arrays • Geometría de un SA: EE7780 Array Signal Processing clase p1c1 41

  42. Spherical Arrays • Steering vector de un SA: usando la expresión general del steering vector: • Particularizando para: • Obtenemos: EE7780 Array Signal Processing clase p1c1 42

  43. Spherical Arrays • DOA ambiguity: El SA no tiene ningún ángulo de ambiguedad. EE7780 Array Signal Processing clase p1c1 43

  44. Spherical Arrays • El array esférico tiene una cobertura de 360o tanto en azimuth como en elevacion. Por tanto el SA es usado para 3-D beamforming. EE7780 Array Signal Processing clase p1c1 44

  45. Problema 2 semana 1 • Implementar un programa de Matlab para construir un y-SLA de 11 elementos. La frecuencia de trabajo del array es fbin=2kHz. • Obtener la distancia entre elementos d. • Obtener la posición de los elementos p. • Modificar el código de manera que sea una función de Matlab con nombre [p,d]=fSLA(K,fbin) donde K es el número de elementos del array y fbin la frecuencia de trabajo. Como parámetros de salida la función deberá generar p (coordenadas de los sensores en una matriz cuyas columnas sean las coordenadas xyz de cada sensor) y d (distancia entre sensores). EE7780 Array Signal Processing clase p1c1 45

  46. Problema 2 semana 1 • Código ejemplo: EE7780 Array Signal Processing clase p1c1 46

  47. Problema 3 semana 1 • Implementar un programa de Matlab que use la función [p,d]=fSLA(5,2e3) para obtener p. • a) Obtener el steering vector para una señal que proceda del eje +z. (calcule primero el vector de llegada a). • b) Obtener el steering vector para una señal procedente del eje +x. Comparar con el anterior. Que ha pasado? • c) Obtener el steering vector para una señal con q = p/2 y f = p/3 . • d) Obtener el steering vector si q = p/2 y f = 2p/3. Comparar. • e) Por que la fase del elemento central es siempre cero? • f) Por que cuando la señal viene del eje y, el steering vector es [1, -1, 1, -1, 1]T. Explíquelo con un dibujo. EE7780 Array Signal Processing clase p1c1 47

  48. Problema 3 semana 1 • Código ejemplo: EE7780 Array Signal Processing clase p1c1 48

  49. Fin de la clase EE7780 Array Signal Processing clase p1c1 49

More Related