|
1 | | -# Simulación de Sistema Radar Pulsado con Múltiples Blancos en MATLAB |
2 | | -## Proyecto del Máster en Ingeniería de Telecomunicaciones - Asignatura de Sistemas de Radionavegación y Posicionamiento - EPS/UAM |
| 1 | +# Radar Pulse Simulation in MATLAB 🚀 |
3 | 2 |
|
4 | | -[](https://opensource.org/licenses/MIT) |
5 | | - |
| 3 | +Welcome to the **Radar Pulse Simulation** project! This repository hosts a comprehensive simulation of a pulsed radar system, designed as part of a Master's project in Telecommunications at UAM. The simulation includes parameter calculations, fluctuating moving targets, and PPI/A-Scope visualization. |
6 | 4 |
|
7 | | -Este proyecto implementa una simulación completa de un sistema radar de vigilancia pulsado, desarrollado en MATLAB. Se enfoca en la detección de múltiples blancos móviles con Sección Radar Equivalente (RCS) fluctuante y visualización dinámica mediante interfaz gráfica. |
| 5 | +[](https://github.com/SebaPythonGPT/radar-pulse-simulation-matlab/releases) |
8 | 6 |
|
9 | | -**Desarrollado por:** |
10 | | -* [Miguel Carralero Lanchares](https://www.linkedin.com/in/miguel-carralero-lanchares/) <a href="https://www.linkedin.com/in/miguel-carralero-lanchares/" target="_blank"><img src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/linkedin/linkedin-original.svg" alt="LinkedIn" width="16" style="vertical-align:middle; margin-left:4px"/></a> |
11 | | -* [Francisco Orcha Kovacs](https://www.linkedin.com/in/francisco-orcha-38a5831b3/) <a href="https://www.linkedin.com/in/francisco-orcha-38a5831b3/" target="_blank"><img src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/linkedin/linkedin-original.svg" alt="LinkedIn" width="16" style="vertical-align:middle; margin-left:4px"/></a> |
| 7 | +## Table of Contents |
12 | 8 |
|
13 | | -## Descripción General del Proyecto |
| 9 | +1. [Introduction](#introduction) |
| 10 | +2. [Features](#features) |
| 11 | +3. [Getting Started](#getting-started) |
| 12 | + - [Prerequisites](#prerequisites) |
| 13 | + - [Installation](#installation) |
| 14 | +4. [Usage](#usage) |
| 15 | +5. [Project Structure](#project-structure) |
| 16 | +6. [Simulation Details](#simulation-details) |
| 17 | + - [Parameters](#parameters) |
| 18 | + - [Target Detection](#target-detection) |
| 19 | +7. [Visualization](#visualization) |
| 20 | +8. [Contributing](#contributing) |
| 21 | +9. [License](#license) |
| 22 | +10. [Acknowledgments](#acknowledgments) |
14 | 23 |
|
15 | | -El objetivo principal es simular el funcionamiento de un radar pulsado, inspirado en sistemas como el AN/MPQ-64 Sentinel, cubriendo desde el cálculo de parámetros fundamentales hasta la detección y representación de blancos en un entorno dinámico. |
| 24 | +## Introduction |
16 | 25 |
|
17 | | -Características clave: |
18 | | -1. **Cálculo de Parámetros Radar:** Determinación de alcance máximo (Rmax), resolución, PRF, alcance no ambiguo (Rmax_na), sensibilidad del receptor y umbral de detección. |
19 | | -2. **Múltiples Blancos Móviles:** Simulación de hasta 5 blancos con trayectorias iniciales aleatorias (dirigidas hacia el radar) y velocidades variables. |
20 | | -3. **RCS Fluctuante:** Implementación de fluctuación de la sección radar de los blancos (modelo Swerling I/II mediante `exprnd`) para un mayor realismo. |
21 | | -4. **Modelo de Detección:** Inclusión de ruido térmico y proceso de detección basado en umbral, considerando Pfa y Pd. |
22 | | -5. **Visualización Dinámica:** Interfaz gráfica con tres vistas actualizadas en tiempo real: |
23 | | - * **Posición Real:** Trayectorias verdaderas de los blancos. |
24 | | - * **PPI (Plan Position Indicator):** Detecciones radar en formato polar. |
25 | | - * **A-Scope:** Amplitud del eco vs. distancia para cada pulso. |
26 | | -6. **Manejo de Fenómenos Radar:** Simulación de zona ciega, ambigüedad de rango, y comportamiento en distancia mínima (Rmin). |
| 26 | +Radar technology plays a crucial role in various fields, including telecommunications, aviation, and automotive safety. This project simulates a pulsed radar system, focusing on key aspects such as noise modeling, target detection, and signal processing. The simulation provides insights into radar operations and enhances understanding of radar principles. |
27 | 27 |
|
28 | | -El informe técnico detallado del proyecto, incluyendo el fundamento teórico, análisis de casos de estudio y discusión de resultados, se encuentra en la carpeta `docs/`. |
| 28 | +## Features |
29 | 29 |
|
30 | | -## Tecnologías Utilizadas |
| 30 | +- **Pulsed Radar Simulation**: Simulates the behavior of a pulsed radar system. |
| 31 | +- **Moving Targets**: Models fluctuating targets to evaluate detection capabilities. |
| 32 | +- **Parameter Calculation**: Calculates essential radar parameters. |
| 33 | +- **PPI and A-Scope Visualization**: Displays radar data in intuitive formats. |
| 34 | +- **Signal Processing**: Implements techniques for effective signal analysis. |
| 35 | +- **Noise Modeling**: Accounts for environmental noise in simulations. |
31 | 36 |
|
32 | | -* **Lenguaje y Entorno:** MATLAB (R2024b o superior) |
33 | | -* **Toolboxes de MATLAB Requeridos:** |
34 | | - * **Phased Array System Toolbox**: Necesario para el cálculo de la SNR requerida (función `shnidman.m`). Se puede instalar desde el Add-Ons Explorer de MATLAB. El script incluye una alternativa (aproximación de Albersheim) si este Add-Ons no está disponible. |
35 | | - * **Statistics and Machine Learning Toolbox**: Utilizado para la función `exprnd` (modelado de RCS fluctuante). |
36 | | - * Funciones gráficas y de cálculo de MATLAB estándar. |
| 37 | +## Getting Started |
| 38 | + |
| 39 | +To get started with the Radar Pulse Simulation project, follow these steps: |
| 40 | + |
| 41 | +### Prerequisites |
| 42 | + |
| 43 | +Ensure you have the following software installed: |
| 44 | + |
| 45 | +- MATLAB (R2018a or later) |
| 46 | +- Signal Processing Toolbox |
| 47 | +- Communications Toolbox |
| 48 | + |
| 49 | +### Installation |
| 50 | + |
| 51 | +1. Clone the repository: |
| 52 | + |
| 53 | + ```bash |
| 54 | + git clone https://github.com/SebaPythonGPT/radar-pulse-simulation-matlab.git |
| 55 | + ``` |
| 56 | + |
| 57 | +2. Navigate to the project directory: |
| 58 | + |
| 59 | + ```bash |
| 60 | + cd radar-pulse-simulation-matlab |
| 61 | + ``` |
| 62 | + |
| 63 | +3. Download the latest release from the [Releases](https://github.com/SebaPythonGPT/radar-pulse-simulation-matlab/releases) section. Extract the files and place them in the project directory. |
| 64 | + |
| 65 | +## Usage |
| 66 | + |
| 67 | +To run the simulation: |
| 68 | + |
| 69 | +1. Open MATLAB. |
| 70 | +2. Navigate to the project directory. |
| 71 | +3. Execute the main script: |
| 72 | + |
| 73 | + ```matlab |
| 74 | + run_simulation.m |
| 75 | + ``` |
| 76 | + |
| 77 | +4. Follow the prompts to configure simulation parameters. |
| 78 | + |
| 79 | +## Project Structure |
37 | 80 |
|
38 | | -## Estructura del Repositorio |
39 | 81 | ``` |
40 | | -+-- .gitignore |
41 | | -+-- LICENSE |
42 | | -+-- README.md |
43 | | -+-- requirements.txt (Lista de Toolboxes de MATLAB necesarios) |
44 | | -+-- docs/ |
45 | | -|+-- Proyecto_Sistemas_Radionavegacion_Simulacion_Radar.pdf (Informe completo del proyecto) |
46 | | -+-- src/ |
47 | | -|+-- SimulacionProyectoSRP_MiguelCarralero_FranciscoOrcha.m (Script principal de la simulación) |
48 | | -+-- ... |
| 82 | +radar-pulse-simulation-matlab/ |
| 83 | +├── data/ |
| 84 | +│ └── target_data.mat |
| 85 | +├── src/ |
| 86 | +│ ├── run_simulation.m |
| 87 | +│ ├── calculate_parameters.m |
| 88 | +│ ├── target_detection.m |
| 89 | +│ └── visualize_results.m |
| 90 | +├── results/ |
| 91 | +│ └── output_data.mat |
| 92 | +└── README.md |
49 | 93 | ``` |
50 | 94 |
|
51 | | -## Preparación del Entorno |
| 95 | +- **data/**: Contains sample data for target simulation. |
| 96 | +- **src/**: Source code files for running the simulation. |
| 97 | +- **results/**: Stores output data from the simulation. |
| 98 | + |
| 99 | +## Simulation Details |
| 100 | + |
| 101 | +### Parameters |
| 102 | + |
| 103 | +The radar simulation requires various parameters, including: |
| 104 | + |
| 105 | +- **Pulse Width**: Duration of each pulse. |
| 106 | +- **Pulse Repetition Frequency (PRF)**: Rate at which pulses are transmitted. |
| 107 | +- **Operating Frequency**: Frequency of the radar signal. |
| 108 | +- **Detection Threshold**: Minimum signal level for target detection. |
| 109 | + |
| 110 | +Adjust these parameters in the `run_simulation.m` file to tailor the simulation to your needs. |
| 111 | + |
| 112 | +### Target Detection |
| 113 | + |
| 114 | +The project implements several algorithms for target detection, including: |
| 115 | + |
| 116 | +- **Constant False Alarm Rate (CFAR)**: Adjusts the detection threshold based on noise levels. |
| 117 | +- **Swerling Models**: Models target behavior under different conditions. |
| 118 | + |
| 119 | +Experiment with different algorithms to see how they affect detection performance. |
| 120 | + |
| 121 | +## Visualization |
| 122 | + |
| 123 | +The simulation includes visualization tools for better understanding of radar data: |
| 124 | + |
| 125 | +- **PPI Display**: Presents the radar data in a polar plot. |
| 126 | +- **A-Scope**: Shows the signal strength over time for a specific range. |
52 | 127 |
|
53 | | -### 1. Software Requerido |
54 | | -* **MATLAB [R2024b o superior]** (Recomendado). |
55 | | -* **Toolboxes de MATLAB (ver `requirements.txt`):** |
56 | | - * Asegúrese de tener instalado **Phased Array System Toolbox** y **Statistics and Machine Learning Toolbox**. |
| 128 | +To visualize the results, call the `visualize_results.m` function after running the simulation. |
57 | 129 |
|
58 | | -### 2. Configuración del Proyecto |
59 | | -1. Clone este repositorio: |
60 | | - ```bash |
61 | | - git clone https://github.com/MiguelCarra/radar-pulse-simulation-matlab.git |
62 | | - ``` |
63 | | -2. Navegue a la carpeta del proyecto en MATLAB. |
| 130 | +## Contributing |
64 | 131 |
|
65 | | -No se requieren datasets externos, ya que la simulación genera todos los datos necesarios dinámicamente. |
| 132 | +We welcome contributions to improve this project. To contribute: |
66 | 133 |
|
67 | | -## Ejecución de la Simulación |
| 134 | +1. Fork the repository. |
| 135 | +2. Create a new branch for your feature or bug fix. |
| 136 | +3. Make your changes and commit them. |
| 137 | +4. Push to your branch and create a pull request. |
68 | 138 |
|
69 | | -1. Abra MATLAB y navegue hasta el directorio `src/` dentro de la carpeta del proyecto clonado. |
70 | | -2. Ejecute el script principal desde la ventana de comandos de MATLAB o abriéndolo en el editor y presionando "Run": |
71 | | - ```matlab |
72 | | - SimulacionProyectoSRP_MiguelCarralero_FranciscoOrcha |
73 | | - ``` |
74 | | -La simulación comenzará, mostrando la interfaz gráfica con las tres pantallas (Posición Real, PPI, A-Scope). La simulación se ejecutará hasta que se cierre manualmente la ventana de la figura. |
| 139 | +## License |
75 | 140 |
|
76 | | -## Resultados y Discusión |
| 141 | +This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. |
77 | 142 |
|
78 | | -El análisis detallado del comportamiento del sistema radar, los diferentes escenarios de detección probados (blancos en zona ciega, ambigüedad de rango, paso por Rmin, etc.), y las conclusiones del proyecto se encuentran en el informe completo: |
79 | | -* **[Informe del Proyecto: Simulación de un Sistema Radar](docs/Proyecto_Sistemas_Radionavegacion_Simulacion_Radar.pdf)** |
| 143 | +## Acknowledgments |
80 | 144 |
|
81 | | -El informe también cubre los problemas encontrados durante el desarrollo y las soluciones implementadas para garantizar una simulación robusta y visualmente clara. |
| 145 | +- Special thanks to the faculty and peers at UAM for their support during this project. |
| 146 | +- Inspiration drawn from existing radar systems and simulation frameworks. |
82 | 147 |
|
83 | | -## Licencia |
| 148 | +For more information, visit the [Releases](https://github.com/SebaPythonGPT/radar-pulse-simulation-matlab/releases) section to download the latest version of the simulation files. |
84 | 149 |
|
85 | | -Este proyecto está distribuido bajo la Licencia MIT. Consulta el archivo [LICENSE](LICENSE) para más detalles. |
| 150 | +Feel free to explore, modify, and enhance the simulation as per your requirements! |
0 commit comments