SkyQuest: aplicación Python para programar sesiones de astrofotografía

SkyQuest es una aplicación en Python para planificar sesiones de astronomía y astrofotografía. Visualiza 24 horas de tránsito celeste con animación, capas y exportación de vídeo mediante Skyfield y Matplotlib.

8 sept 2025 • 6 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

TLDR: pequeña aplicación en Python para planificar sesiones de astronomía y astrofotografía, creada con el método Story-Code y publicada en GitHub. La reescribimos y traducimos al español, con una explicación clara de su arquitectura y funcionalidades.

SkyQuest muestra la observabilidad de cuerpos celestes desde un punto de observación terrestre. Presenta una vista diaria de 24 horas en la que se ve cómo los objetos seleccionados transitan por el cielo; se pueden apilar varios días consecutivos. El eje X muestra la hora local con sensibilidad a cambios por horario de verano; el eje Y fija el rango de altitud trazado.

También puede mostrar bandas de luz diurna y de crepúsculos civil, náutico y astronómico, mediante bloques de color en el fondo. Siempre se incluye el arco lunar, en gris, con brillo según la iluminación de la Luna en cada hora trazada. Las trayectorias de los objetos elegidos usan transparencia inversamente proporcional a la iluminación lunar, para sugerir su visibilidad potencial, siempre condicionada por altitud y meteorología.

El resultado permite identificar horas óptimas de observación considerando nivel de luz, iluminación lunar y altitud, en una o varias fechas y desde cualquier lugar del mundo. El conjunto de datos de skyfield cubre hasta poco antes del cumpleaños 113 de John Lennon, por lo que tocará actualizarlo en algún momento.

Una vez generado el gráfico, puede animarse: el lienzo se limpia y se redibuja hora a hora y día a día, con opción de grabar vídeo. SkyQuest mantiene dos vistas del mismo conjunto de datos, la estática y la secuencial animada, para alternar rápidamente visibilidad de elementos como el arco lunar y decidir si entran o no en la grabación. La animación puede avanzar acumulando días o con ventana deslizante, útil para ver, por ejemplo, un mes completo desplazándose a lo largo de un año.

Principios fundacionales del diseño: un día es el periodo de 24 horas que sigue al mediodía de una fecha; altitudes e iluminación se muestrean por hora; los eventos solares y crepusculares se trazan con resolución de minuto; hay 9 eventos como máximo por día; el vídeo sale en HD a 50 fps, equivalentes a dos días animados por segundo.

Metáfora narrativa y reparto clásico: el tiempo material es Chronos y su mecánica es Kairos, con la influencia de las Moirai. Tiphys gestiona el punto de observación y el destino astronómico. Idmon consulta los almanaques de skyfield. Astraeus dibuja todo en el pergamino con herramientas de inscripción y un tablero artístico. Todo ocurre dentro del Observatorio, que orquesta la consulta, activa la animación y gobierna el ciclo de vida de la app.

Tiempo y destino. Chronos fija el intervalo de consulta y define la cronogénesis, el aion y el eschatos. Cualquier cambio de fecha o duración activa una nueva búsqueda. Kairos aporta la práctica del tiempo: hora local real con DST, bandas de luz del día, paso a UTC y horas verdaderas desde el mediodía de referencia. Base conceptual clave: trabajamos desde el mediodía para situar la medianoche en el centro del estudio, y dividimos el día en un máximo de 9 bandas entre día, crepúsculos y noche cerrada.

Lugar y conocimiento. Tiphys administra el lugar de observación y los objetivos. Por ahora incluye una lista curada de planetas y objetos RA Dec, seleccionables individualmente o por conjunto; la ubicación se protege mediante un botón que oculta datos sensibles, y podría integrarse con un selector de mapas. Idmon, el vidente, realiza el trabajo pesado: arcadas de altitud por hora para cada objetivo y día, bandas de crepúsculo con sus intervalos, e iluminación lunar por hora. El lunar siempre está disponible y además condiciona la transparencia de los demás arcos.

El maestro escriba. Astraeus dirige la visualización sobre el Pergamino, sustentada por Matplotlib, y operada desde el ArtBoard. Este tablero agrupa herramientas de inscripción e interfaz para encender o apagar capas, configurar rango de altitudes, guías horizontales y rejilla. Las inscripciones se dividen en velo completo y segmentos animables por hora, ofreciendo dos vistas de un mismo elemento: global y paso a paso.

Herramientas de inscripción. Arcos: añaden líneas compuestas, una por objetivo o por día. Fondo: genera y actualiza bandas de día y crepúsculos, creciendo el primer día y reajustando límites en los siguientes. Rejilla: control de visibilidad y estilo. Umbral: una guía horizontal ajustable, sin animación. Las capas del ArtBoard exponen controles de visibilidad y parámetros, por ejemplo el rango de altitud y el valor del umbral.

El Pergamino. Define la estética global, maneja títulos y ejes, y permite guardar y restaurar el estado del lienzo al alternar entre gráfico completo y animación. Puede cambiar la geometría para vídeo HD usando el escritor de FFMPEG. ChartedElements guarda colecciones de líneas de arcos, rectángulos de fondo, ticks del eje X y el título original para restaurarlos después. InnerChartElements dibuja líneas y bloques, extiende y decae segmentos, reorganiza límites de bandas y controla la visibilidad de inscripciones.

Trazado y flujo. El Observatorio ensambla una consulta, recorre el rango de días, y coordina a Idmon y Astraeus. Cada día se dibujan bandas, se trazan arcos, se actualizan título y eje X por si hay cambio de horario de verano, y se completan los detalles como el umbral y la rejilla. Finalmente, el ArtBoard ordena mostrar los velos pertinentes y el Pergamino renderiza.

Animación. El tablero solicita el modo de animación, ya sea acumulativo o con ventana deslizante. Un filtro de animación recuerda qué estaba visible para limitar la animación a esos elementos y restaurar el estado al finalizar. La ejecución avanza día a día, hora a hora y paso a paso, añadiendo segmentos, creciendo o reajustando bandas, actualizando título y ticks, y expirando segmentos antiguos cuando corresponde. Un DayTracker gobierna la progresión y el periodo de desenrollado; un ArcLimiter registra qué se añadió cada hora para poder retirarlo con precisión.

Continuum. La app centraliza importaciones externas en un único módulo base: sys, collections y math para utilidades; numpy para secuencias ligeras; gc y time para limpieza y pausas; datetime y zoneinfo para tiempos en UTC y conversión local. Skyfield provee la astronomía. PyQt5 ofrece la interfaz. Matplotlib da vida al trazado, al backend interactivo QT y al backend para vídeo, con colecciones de líneas, colores con transparencia, fuentes y patches para las bandas. Se libera memoria de la figura cuando procede.

Recursos. Código fuente completo en GitHub: repositorio de SkyQuest. Si te interesa el enfoque cognitivo y la metáfora aplicada al código, consulta también el artículo Story-Coding: Metaphor as Cognition en dev.to.

Cómo puede ayudarte Q2BSTUDIO. En Q2BSTUDIO desarrollamos aplicaciones a medida y software a medida para visualización científica, control de dispositivos, ingeniería de datos y analítica avanzada, con especial foco en inteligencia artificial, agentes IA e IA para empresas. Si necesitas una herramienta como SkyQuest, una suite multiplataforma o integración con servicios cloud AWS y Azure, podemos construirla con un enfoque robusto y escalable. Descubre nuestro servicio de desarrollo de aplicaciones y software en aplicaciones a medida y software multiplataforma.

Además, reforzamos la seguridad desde el diseño con buenas prácticas de ciberseguridad y pentesting, y conectamos tus datos con decisiones mediante inteligencia de negocio y power BI. Si buscas dotar a tu herramienta de capacidades predictivas o asistentes inteligentes, conoce nuestras soluciones de inteligencia artificial para empresas. También ofrecemos automatización de procesos, servicios cloud en AWS y Azure, y cuadros de mando de power BI listos para negocio.

Si quieres llevar tus ideas del papel al pergamino, escríbenos y diseñaremos juntos la próxima generación de tus herramientas de observación, análisis y decisión.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat