12 KiB
1. Capítulo 1: Las primeras simulaciones
1.1. Simulación De la señal de distancia, la señal de radar y los dos muestreos
Discutiendo con Cecilia, ella me dio una idea de por donde empezar a realizar las simulaciones del problema. A diferencia de como se hacían las simulaciones en probabilidad u otras materias, acá no conviene, o es imposible simular el problema es su totalidad a la vez. No se puede modelar todo y uno no puede ponerse a resolver el problema de una. Hay que empezar de apoco y por las partes que se puede. Lo que Cecilia recomendó es comenzar por comenzar a simular las señales que se esperarían medir, que según la tesis de Notas de paper Sensors-14-02595. La ecuación para la distancia que tiene en la tesis es de la forma:
d(t) = d_0 + m(t) = d_0 + m_b sin(2\pi f_b t) + m_h sin(2\pi f_b t)
Donde se tiene que:
d(t)
es la distancia al que viajo el rayo emitido por la antena.m_b
es la amplitud de la señal generada por la respiración (lab
viene de breathing)f_b
es la frecuencia del seno que modela la respiraciónm_h
es la amplitud de la señal generada por el corazón (lah
viene de heart)f_h
es la frecuencia del seno que modela el latir del corazón
La idea de la primera simulación es generar esta señal y muestrearla a frecuencia rápida y frecuencia lenta para obtener la matriz de muestreo a ambas velocidades. Esto para ir generando algunas cosas. Quizás después se le puede agregar ruido u otras cosas que simules el clutter, pero es secundario a simular las muestras con distintas ventanas o distintas ondas emitidas.
Una cosa para tener en cuenta a la hora de hacer las simulaciones es que la señal d(t)
es la distancia entre la antena y el paciente y esta se ve reflejada en la señal de radar como un desfasaje del pulso enviado. Entonces, la señal d(t)
hay que pasarla a un tiempo y luego introducirlo en la señal del radar.
Para la generación de la señal de radar se utiliza la señal descrita en Notas de tesis de doctorado de Ing. Edgardo Jose Marchi (Capitulo 2.3) que es el pulso rectangular. Luego hay que probar de realizar estas simulaciones con los pulsos gaussianos.
Estas simulaciones fueron un éxito ya que se logro observar la señal de distancia como el desfasaje de la señal de radar. Esto se puede ver en .
1.2. Demodulación de la señal radar recibida
Para poder enviar la señal de radar por el aire hay que modularla. Lo que hace el radar para poder transmitir por este medio es modular el pulso enviado mediante DBL-PS (Doble Banda Lateral - Portadora Suprimida). Lo que se modelo hasta este momento es la señal electromagnética que se vería en la antena receptora. Ahora hay que pasar a aplicarle el procesamiento que le hace el radar para obtener información de la señal recibida.
Que es lo que esta haciendo el receptor para obtener la información? El receptor no esta haciendo la técnica de demodulación únicamente. Como se puede ver esta multiplicando la señal recibida por la señal modulada y la señal modulada desfasada 90 grados por separado para luego sumarlas. Esta primera parte, es similar a la demodulación de DBL-PS ya que las dos señale por las que multiplico la señal son la señal modulada original y la señal modulad original desfasada 90 grados. Con esto obtenemos una señal con un espectro del estilo de la siguiente figura.
Y finalmente, luego de sumar las dos señales se le aplica un filtro pasa bajos para elimina las dos bandas de frecuencia formadas en los laterales y quedarse con un espectro de frecuencia similar al inicial. Esta señal que obtenemos no es la señal inicial reflejada por el ambiente porque tiene multiplicando un termino extra que depende del tiempo de vuelo de la onda y contiene la información deseada. Este termino es el resultado de la suma de las dos multiplicaciones. Para ver el desarrollo ver la tesis de Edgardo. Notas de tesis de doctorado de Ing. Edgardo Jose Marchi (Podría copiarme el desarrollo a las notas que tengo.)
(Falta un poco mas de desarrollo de lo que hice. Genere la señal y la pase por el demodulador con el filtro pasa bajos que genere. Obtuve la señal de radar a la salida del filtro pasa bajos que es un pulso deformado.)
==A este punto, pare este hilo de las simulación porque en este momento estoy haciendo una exploración de los temas para verificar su comprensión.==
2. Capítulo 2: Simulaciones del análisis de espectro de la señal distancia.
2.1. Análisis MUSIC de nuestra señal d(t)
Lo primero que descubrí al comenzar ha hacer los primeros análisis espectrales de la señal es que estaba mal simulada la señal distancia. Estaban mal establecidos los limites de la frecuencia cardiaca. Corregí esto y ya esta bien simulada.
Para hacerle un análisis con el método MUSIC a nuestra señal le pregunte a Chat GPT que librerías podía utilizar y me menciono la librería "spectrum", así que me la descargue y comencé a trabajar con ella. Ante una primera interacción con estas funciones se puede ver que el ==análisis espectral MUSIC tiene algunos parámetros que modifican el resultado, los cuales son: el largo de la ventana, la frecuencia de muestreo, la cantidad de componentes de la matriz de MUSIC, la cantidad de componentes asignadas al ruido, la cercanía de las dos componentes de frecuencia.== Además de estos, hay uno que quiero comprender el impacto que es el NFFT.
Durante mis pruebas iniciales con esta función descubrimos con Cecilia que tenia las dos frecuencias de nuestra señal muy juntas y las separé para facilitar el análisis inicial. Luego tengo que juntarlas un poco para ver los limites del método.
2.1.1. Descripción de la función "pmusic"
La función "spectrum.pmusic" realiza el análisis espectral la función que le pases y te devuelve el análisis espectral de la función. Si se quiere acceder a la documentación de esta función se puede utilizar el vinculo siguiente: https://pyspectrum.readthedocs.io/en/latest/ref_psd_other.html#spectrum.eigenfre.pmusic .
DUDA: En la documentación establece que la función pmusic utiliza métodos ARMA para obtener la PSD. Pero esto no es así en la teoría. En la teoría el método MUSIC parte de asumir a tus funciones como composiciones de senoidales y esto no desenlaza en un método ARMA.
Descripción de los parámetros de importancia y/o que entiendo:
- IP: Es la cantidad máxima de autovalores que computa la función. Es decir, que es la suma máxima de cantidad de componentes de señal y de componentes de ruido.
- NSIG: Es la cantidad autovalores que se le asignan al ruido dentro de entre todos los autovalores. Este valor tiene que ser menor a IP.
- NFFT: Este parámetro se utiliza cuando se quiere hacer un padeo ("padeo" viene de pading en ingles) con ceros por si se tiene pocas muestras. Es para completar con ceros y mejorar el ventaneo.
Yo lo veo como indicar que "Componentes de señal" = IP - NSIG
.
2.1.2. Variación de la frecuencia de muestreo
Durante mis pruebas iniciales del método MUSIC, más específicamente durante la recreación del ejemplo de la documentación, note que yo estaba utilizando una frecuencia de muestreo muy alta en comparación con el ejemplo y al bajar la frecuencia de muestreo me lograba identificar las dos frecuencias que componen la señal cuando antes no lo hacía.
Por esto, el primer experimento va a ser explorar para que frecuencias de muestreo de la señal detecta o no detecta las dos frecuencias. Esto lo vamos a hacer inicialmente para un valor de IP y NSIG. Creo que voy a empezar con un valor de IP = 5 y $NSIG = 1
, ya que para estos parámetros se hayo alguna frecuencia de muestreo que se detectan los dos picos.
Luego se va a probar de bajar y subir la cantidad de componentes para ver como reacciona el resultado.
2.1.2.1. Exploración General
En la simulación de esta sección se realizo el barrido de la frecuencia de muestreo de la señal distancia. El barrido se genero de forma exponencial para poder explorar mejor el espacio. El intervalo de tiempos de muestreo (indio tiempo de muestreo en vez de frecuencia porque lo que se indico en la simulación es el tiempo para cada iteración) que simulo es T_s \in [0.5,0.0001]
. Para esta simulación se tiene que:
Viendo los resultados de la simulación podemos ver que si la frecuencia de muestreo es muy alta o muy baja surgen problemas con el análisis espectral. Si la frecuencia de muestreo es muy baja, no nos da el espectro de frecuencias barridas como para obtener una buena medición del espectro, por esta razón no detecta bien las frecuencias que componen la señal. Por otro lado, si la frecuencia de medición es muy alta, el espectro es muy grande y no detecta bien las frecuencias que componen la señal. Pero si hay un intervalo en el que se detectan bien estas 2 frecuencias.
Para hacer un análisis exhaustivo de los casos limite, hagamos otros dos barridos haciendo zoom en las zonas donde comienza a fallar el método. Comenzamos por analizar la zona de frecuencia de muestreo menor (para comenzar por el análisis que tarda menos tiempo computacional).
2.1.2.2. Exploración frecuencias bajas
Realizando la exploración de la zona de frecuencias bajas, que deja de detectar bien las frecuencias que componen la señal distancia, se obtiene el siguiente grafico:
!
En la figura se puede ver como a medida que se disminuye la frecuencia de muestreo, el intervalo de frecuencias en el que puede hacer el análisis se va reduciendo hasta que llega un momento que el limite del intervalo se superpone con una de las dos frecuencias de la señal distancia y deja de detectarla bien. Esto nos esta imponiendo el limite inferior de la frecuencia de muestreo de la señal.
2.1.2.3. Exploración frecuencias altas
Realizando la exploración para la zona de frecuencias altas, que dejan de detectar bien las señales que componen la señal distancia, se obtiene el siguiente grafico:
!
En este gráfico se puede ver la forma con la que deja de detectar las frecuencias.
**Yo sospecho que es una relación entre la relación entre la frecuencia de muestreo y el largo de la señal. Porque creo que es una cuestión de definición de las frecuencias.
2.1.3. Variación del largo de la muestra
2.1.3.1. Exploración general
==(Completar)
2.1.4. Análisis teórico del método MUSIC
Habiendo hecho dos inspecciones distintas del impacto de distintos parámetros sobre nuestro resultado, comencé a tener dudas sobre que es lo que estaba pasando dentro de la función que estaba utilizando. Para investigar esto recurrí a la documentación de la librería "spectrum" de python y no pude obtener la información que estaba buscando. Esta documentación me aporto información muy superficial sobre la función. Luego, recurrí a tratar de leer los programas dentro de la librería "spectrum" (es decir los archivos crudos donde están las funciones escritas) y los "helps" de la librería. Lamentablemente no me dio la cabeza para poder descifrar que es lo que hacían estas funciones (tampoco le de mucho tiempo). Como ultimo recurso decidí satisfacer mi curiosidad con el análisis teórico de lo que hace el método MUSIC y las hipótesis de lo que hace la función en python para generar los gráficos.
Para ver la explicación que se hizo del método ver la siguiente nota: Explicación del método MUSIC