SkyQuest: app en Python con narrativa para programar sesiones de astrofotografía

SkyQuest es una app en Python para planificar sesiones de astronomía y astrofotografía. Muestra una vista diaria de 24 h (con varios días), arcos lunares, bandas de luz y la visibilidad de objetos. Código abierto en GitHub.

8 sept 2025 • 7 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

TLDR Pequeña app para planificar sesiones de astronomía y astrofotografía, creada en Python con el método Story Code. Puede ser útil para otros y está disponible en GitHub. Además, la usamos como ejemplo real de cómo aplicar narrativa a código.

SkyQuest muestra la observabilidad de cuerpos celestes desde un punto de observación en la Tierra. Presenta una vista diaria de 24 horas donde se apilan varios días si lo deseas. El eje X refleja la hora local respetando cambios de horario de verano y, cuando hay varios días, muestra las etiquetas del último día dibujado. El eje Y controla el rango de altitudes.

El fondo puede incluir bandas de luz diurna que segmentan día, noche y los crepúsculos civil, náutico y astronómico. Siempre está disponible el arco lunar, trazado en gris con brillo proporcional a la iluminación de la Luna por hora. Los arcos de los cuerpos seleccionados se dibujan con transparencia inversamente proporcional a la iluminación lunar para sugerir su visibilidad potencial, teniendo en cuenta también la altitud y el clima externo.

Así puedes encontrar el momento óptimo para observar objetos del cielo nocturno según nivel de luz ambiente, iluminación lunar y altura, para uno o varios días y en cualquier lugar del mundo. El conjunto de efemérides de skyfield incluido cubre hasta casi el 113 aniversario de John Lennon, por lo que convendrá actualizarlo a futuro.

Una vez generado un gráfico, puede animarse borrando y redibujando por horas y días, con opción de producir un video. La app mantiene dos vistas simultáneas de los datos, la completa y la secuenciada para animación, lo que permite activar o desactivar elementos al instante o excluirlos de la grabación. La animación puede acumular todo el periodo o funcionar como ventana deslizante para recorrer, por ejemplo, un mes a lo largo de un año.

Supuestos de diseño principales de SkyQuest: un día es el periodo de 24 horas que sigue al mediodía; altitudes e iluminación por resolución horaria; eventos solares por resolución de minuto; máximo de 9 eventos diarios; video en 1080p a 50 fps, equivalente a 2 días completos por segundo.

La app personifica funciones como en la mitología griega. Cronos representa el tiempo material y Kairós su mecánica; las Moiras la fortuna. Tifis cuida la navegación entre el punto de observación y los objetivos; Idmón consulta los almanaques de skyfield; y Astreo dibuja la profecía con tablero, herramientas de inscripción y pergamino.

Observatorio Es el entorno donde todo sucede. Permite consultas por días y orquesta los paneles de control: ubicación y objetivos desde Tifis; fechas y rango desde Cronos; y ajustes de trazo desde Astreo. Un control maestro lanza la consulta a Idmón.

Tiempo y destino El módulo de forja del tiempo separa el tiempo como materia de su expresión práctica. Dos ideas gobiernan todo: los días empiezan a mediodía y duran exactamente 24 horas; cada día se divide como mucho en 9 bandas entre día, crepúsculos y noche. Cronos fija fecha inicial y duración del rango de días; Kairós resuelve horas verdaderas, conversiones a UTC, diferencia de horas y la banda de luz de un instante, teniendo en cuenta el huso y el horario de verano.

Lugar y conocimiento Tifis gestiona el punto de observación y el destino. Ofrece un pequeño catálogo curado de objetivos con planetas y objetos RA Dec, y una HomeBase que oculta la ubicación real para evitar capturas indeseadas. Idmón carga efemérides y calcula arcos de tránsito por horas, además de bandas de luz diurna por día y la iluminación lunar por hora. Para múltiples días u objetivos, Idmón se consulta repetidamente.

El maestro escriba Astreo organiza todo lo visual. Se apoya en un ArtBoard que agrupa herramientas de inscripción y un pergamino donde se traza. Las inscripciones son elementos que tienen velo completo y, además, una versión segmentada apta para animación por hora y por día. El pergamino encapsula matplotlib, maneja título y ejes, guarda y restaura estados para alternar entre gráfico estático y animado y, si procede, abre un escritor de video.

ArtBoard Capas y herramientas. Permite activar o desactivar grupos como fondo, arco lunar y arcos de tránsito, ajustar el rango de altitudes y lanzar la animación. Las herramientas incluyen InscribeArc para arcos complejos, InscribeBackground para bandas de fondo que se expanden o desplazan día a día, InscribeGrid para la rejilla y InscribeThreshold para una guía horizontal. El tablero sabe qué día se está representando en consultas multidiarias.

Inscriptions Unifican cómo se agregan marcas al pergamino, se controlan visibilidad y animación y se segmentan líneas o fondos por hora. Hay operaciones para añadir, actualizar y mostrar u ocultar el velo completo, crear segmentos horarios para arcos, construir los pasos de fondo y disparar la animación respetando lo visible al inicio. La animación itera por días, por horas y por pasos, añade segmentos, crece o baraja bandas de día y elimina segmentos caducados si animamos en ventana deslizante. DayTracker controla el avance del rango y el desenrollado final; ArcLimiter registra y vence marcas antiguas cuando hay que borrar horas pasadas.

Pergamino y ejes Gestiona guardar y restaurar geometría, contenido y formato cuando se hace animación o video, limpia colecciones de líneas y bloques ultra finos al preparar una nueva consulta y ofrece operaciones de bajo nivel para añadir colecciones de líneas, extender y decaer líneas, agregar o reajustar bloques, barajar y decaer bloques, trazar guía horizontal, conmutar rejilla y retitular. El eje X actualiza etiquetas en días con horario de verano; el eje Y ajusta el rango activo. El repintado asegura que todo quede en pantalla o en el fotograma del video.

Flujo de presentación El observatorio arma cada consulta con Idmón y Astreo. Astreo inicia la presentación sobre un pergamino fresco, dibuja las bandas de luz, agrega todos los arcos del día, actualiza título y ejes en cada jornada y completa con guía de umbral y visibilidad final. Por defecto siempre hay conjunto de arcos lunares más uno o varios cuerpos objetivos, con colores definidos y una escala de grises para el brillo del arco lunar según su iluminación.

Animación El ArtBoard permite elegir si la animación acumula días o desliza una ventana temporal. AnimationFilter memoriza qué estaba visible antes de animar para que solo eso se anime y luego se restaure. La animación también puede grabarse a video en HD a 50 fps.

Continuum Fundacional. Se importan sys para CLI, collections y defaultdict para indexar horas, math y numpy para utilidades, gc y time para limpieza y ritmos interactivos, datetime y zoneinfo para manejar UTC y cambios de hora. Skyfield aporta efemérides. La interfaz usa PyQt5. La visualización confía en matplotlib con colecciones de líneas, patches para bandas, fuentes, backends para pantalla y para video, y un escritor FFMPEG.

Repositorio Código fuente completo en GitHub en el proyecto SkyQuest. Puedes explorarlo en este repositorio.

Cómo podemos ayudarte desde Q2BSTUDIO En Q2BSTUDIO diseñamos y desarrollamos aplicaciones a medida y software a medida para llevar ideas como SkyQuest a producción empresarial, integrarlas con tus datos, desplegarlas en escritorio o web y automatizar flujos de trabajo. Si buscas un partner para crear o escalar soluciones similares, visita nuestro servicio de desarrollo de aplicaciones y plataformas multiplataforma en desarrollo de software a medida.

Inteligencia artificial y más Allá de la astronomía, aplicamos inteligencia artificial e IA para empresas para recomendadores, predicción de demanda, visión por computador, agentes IA y copilotos internos. También reforzamos la ciberseguridad con auditorías y pentesting, ofrecemos servicios cloud AWS y Azure, servicios inteligencia de negocio con Power BI y la modernización de datos extremo a extremo. Descubre cómo acelerar tus iniciativas con nuestro equipo de IA en soluciones de inteligencia artificial.

Palabras clave relacionadas para tu equipo aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA, power bi.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat