- Proyecto: Caracterización de Señales de Radiofrecuencia - Reto Codefest Ad Astra 2024
Este proyecto es parte del Reto Codefest Ad Astra 2024, y tiene como objetivo desarrollar un software que permita la caracterización de señales de radiofrecuencia (RF) en enlaces de comunicación satelital. El sistema debe ser capaz de calcular parámetros como la frecuencia central, el ancho de banda, la potencia de la señal y la relación señal-ruido, entre otros.
El software está diseñado para recibir como entrada archivos CSV generados por analizadores de espectro, analizar los datos y proporcionar una interfaz gráfica intuitiva para visualizar y exportar los resultados.
- Cálculo automático de parámetros de señal: Frecuencia central, amplitud, ruido, ancho de banda, entre otros.
- Detección de interferencias: Identificación de señales no deseadas y eliminación de interferencias.
- Visualización de espectrogramas: Gráficos en tiempo real y visualización de la señal RF.
- Exportación de resultados: Generación de informes en formato PDF y CSV.
- Interfaz gráfica amigable: Fácil uso e interacción con el usuario.
- Python 3.x o superior
- Bibliotecas necesarias:
pandas
matplotlib
plotly
dash
numpy
Para instalar las dependencias, utiliza el siguiente comando:
pip install -r requirements.txt
- Ordenador con soporte para Python 3.x.
- Analizador de espectro (opcional para pruebas en tiempo real).
Clona el repositorio en tu máquina local con el siguiente comando:
git clone https://github.com/AIr-Reinforcement-AdAstra2024/Mision-2
Dirígete al directorio del proyecto:
cd Mision-2
Instala las dependencias necesarias:
pip install -r requirements.txt
Ejecuta la aplicación con el siguiente comando:
python src/main.py
- Cargar Archivo CSV: Abre el software e importa los archivos CSV generados por el analizador de espectro.
- Visualizar los Resultados: Observa la representación gráfica de la señal RF y ajusta los filtros según las necesidades.
- Aplicar Filtros: Usa las herramientas del software para aplicar filtros de frecuencia y eliminar interferencias no deseadas.
- Exportar Resultados: Puedes exportar los resultados obtenidos en formato CSV o PDF.
Encuentre el video en la ruta resources/Demo.mp4
Este video muestra cómo se utiliza el software desarrollado para caracterizar señales RF, desde la carga de un archivo CSV hasta la visualización y exportación de los resultados. Haz clic en la imagen para ver el video.
El proyecto sigue una estructura modular, organizada para facilitar el mantenimiento y la escalabilidad.
/
├── LICENSE
├── README.md
├── requirements.txt
├── resources
│ └── recurso1.csv
└── src
├── __pycache__
├── about
├── app.py
├── assets
├── home
├── interferences
├── main.py
├── reports
├── signal_analysis
└── utils
- main.py: El archivo principal que contiene la lógica de la aplicación y arranca la interfaz gráfica.
- resources/: Archivos CSV para probar la aplicación.
- src/: Directorio con las distintas pantallas de la aplicación.
El directorio resources/
incluye varios archivos CSV de prueba que puedes usar para verificar el funcionamiento del software.
- Abre el software y carga uno de los archivos CSV de prueba.
- Observa cómo el software detecta automáticamente los parámetros clave de la señal.
- Aplica filtros para eliminar interferencias no deseadas.
- Exporta los resultados en formato PDF para su análisis posterior.
Este proyecto fue desarrollado por:
- Sergio Oliveros
- Daniel Álvarez
- Sebastian Urrea
- Haider Fonseca
- Daniel Perea