Skip to content

Este proyecto permite visualizar satélites en tiempo real sobre un globo 3D utilizando CesiumJS para la visualización, Python para el cálculo de posiciones satelitales a partir de datos TLE y uAgents de Fetch.ai para la coordinación y gestión de agentes inteligentes que procesan datos y generan alertas.

Notifications You must be signed in to change notification settings

charly837/TrackingSAT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rastreador de Satélites en Tiempo Real con CesiumJS y Python

Este proyecto permite visualizar satélites en tiempo real sobre un globo 3D utilizando CesiumJS para el visor y Python para calcular las posiciones satelitales a partir de datos TLE.

Incluye:

  • Cálculo de posiciones con SGP4/Skyfield.
  • Generación automática de archivos KML.
  • Visualización en CesiumJS con trayectorias y filtros por grupos.
  • Sistema de alertas cuando un satélite pasa cerca de tu estación base.
  • Selección de estación base con clic derecho directamente en el mapa.

🚀 Requisitos

Python >= 3.8

Instalar dependencias:

pip install -r requirements.txt

📂 Estructura del proyecto

├── satellite_tracker.py       # Script principal que calcula posiciones y genera el KML y alertas.
├── index.html                 # Visor CesiumJS.
├── satellite_positions.kml    # Archivo KML que se actualiza automáticamente.
├── alerta.json                # Archivo de alerta generado por el script.
├── sat_images/                # Carpeta con iconos de satélites (opcional pero recomendada).
├── tle/                       # Carpeta donde se descargan los TLE (creada automáticamente).
├── requirements.txt
└── README.md
|__ md-images/

⚙ Cómo usar

1️⃣ Ejecutar el rastreador

python satellite_tracker.py

El script descargará los TLE si es necesario, calculará las posiciones y actualizará satellite_positions.kml y alerta.json cada 3 minutos.

2️⃣ Lanzar el visor CesiumJS

Desde la carpeta donde está el index.html:

python -m http.server 8000

Luego abre tu navegador en:

http://localhost:8000/index.html

Importante: Abrir directamente el index.html con doble clic (file://) no funcionará por restricciones CORS. Usa siempre el servidor local.

🛰 Funciones disponibles en el visor

  • Activar/desactivar grupos de satélites.
  • Mostrar/ocultar trayectorias.
  • Visualización de detalles de cada satélite con icono, altitud, país, operador, azimut y elevación.
  • Alerta visual cuando un satélite pasa cerca de tu estación base.
  • Cambiar estación base haciendo clic derecho en el mapa.

📝 Notas

  • La ubicación inicial de la estación base es Madrid (Lat 40.4168, Lon -3.7038).
  • Puedes modificar esa posición manualmente o haciendo clic derecho en el mapa.
  • Las posiciones se actualizan cada minuto en el visor.
  • Los TLE se consideran válidos si tienen menos de 30 días.

NOTA: INGRESAR LA API DE CESIUM EN EL INDEX.HTML

📄 Licencia

Proyecto educativo y personal. Puedes modificarlo y adaptarlo libremente.

  • uAgents de Fetch.ai para la gestión de agentes.
  • CesiumJS para la visualización 3D de satélites.
  • Skyfield y SGP4 para el cálculo de posiciones orbitales.
  • HTML5, CSS3 y JavaScript para la interfaz web.

About

Este proyecto permite visualizar satélites en tiempo real sobre un globo 3D utilizando CesiumJS para la visualización, Python para el cálculo de posiciones satelitales a partir de datos TLE y uAgents de Fetch.ai para la coordinación y gestión de agentes inteligentes que procesan datos y generan alertas.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published