|
Download README.md from JoseAndresLopez/monitor-condiciones: direct link, hf CLI and curl.
- Browser
- Download file 3.29 kB
-
https://huggingface.co/spaces/JoseAndresLopez/monitor-condiciones/resolve/main/README.md
- Command line
-
hf download hf://spaces/JoseAndresLopez/monitor-condiciones/README.md
-
curl -L -o README.md https://huggingface.co/spaces/JoseAndresLopez/monitor-condiciones/resolve/main/README.md
3.29 kB
| title: Condiciones de Observación | |
| emoji: 🛰️ | |
| colorFrom: gray | |
| colorTo: green | |
| sdk: static | |
| pinned: false | |
| license: mit | |
| # 🛰️ Monitor de condiciones de observación — con datos reales | |
| App **PWA que analiza telemetría meteorológica real de observatorios** para decidir, | |
| de un vistazo desde el móvil, si las condiciones son aptas para observar o hay que | |
| **cerrar la cúpula**. Reconoce las columnas del CSV automáticamente, así que | |
| funciona con exportaciones de distintas fuentes. | |
| Corre entera en el navegador (Python vía Pyodide/WebAssembly): no hay backend, el | |
| análisis (pandas/numpy) se ejecuta en tu dispositivo sobre el CSV que subas. | |
| ## Datos reales | |
| Pensada para datos públicos de observatorio: | |
| - **ESO — Base de datos ambiental** (La Silla / Paranal): humedad, viento, | |
| temperatura, punto de rocío y presión, descargables desde los formularios de | |
| archivo de ESO. La Silla se actualiza casi en tiempo real. | |
| - **Observatorio del Roque de los Muchachos (La Palma)** — donde está el GTC: las | |
| estaciones meteo del TNG, ING, NOT y MAGIC publican condiciones del sitio. | |
| Solo se usan variables **públicas**. La corriente de motor o el error de seguimiento | |
| son telemetría interna de cada telescopio y no se incluyen. El día de mañana, dentro | |
| del GTC, se re-apunta a su propia telemetría. | |
| ## Cómo usar datos reales | |
| 1. Descarga un CSV de ESO (formularios de *Ambient Conditions*) o del ORM. | |
| 2. En la app, pulsa **Subir CSV**. Las columnas se reconocen solas (humedad, viento, | |
| temperatura, punto de rocío, presión), en inglés o español, y el viento se | |
| convierte a m/s si viene en km/h. | |
| 3. Incluye una **muestra** en formato tipo ESO (con una entrada de niebla) para | |
| probarla al instante sin descargar nada. | |
| ## Qué evalúa | |
| - **Humedad** por encima del límite → cerrar la cúpula. | |
| - **Viento** por encima del límite operativo (~18 m/s, referencia ESO) → cerrar o | |
| reorientar a sotavento. | |
| - **Margen sobre el punto de rocío** (temperatura − rocío): si es muy pequeño, hay | |
| riesgo de **condensación** en la óptica → cerrar. | |
| - **Tendencias:** estima en cuántas horas se cruzará cada límite si la cosa sigue así. | |
| ## Ejecutar en local (versión servidor, con FastAPI real) | |
| El proyecto también incluye el backend FastAPI clásico (fuera de esta carpeta, en la | |
| raíz del proyecto): | |
| ```bash | |
| uv sync | |
| uv run uvicorn main:app --reload --port 7860 # http://localhost:7860 | |
| uv run python test_conditions.py # valida el núcleo | |
| ``` | |
| ## Estructura de esta carpeta (versión estática desplegada) | |
| ``` | |
| index.html Frontend PWA (tema oscuro por estado) | |
| logic.py Misma lógica que main.py, adaptada sin FastAPI | |
| conditions_core.py Mapeo de columnas, límites, tendencias y triaje | |
| static/ | |
| app.js, styles.css Cliente: carga Pyodide y pinta el panel | |
| icons/ Iconos | |
| manifest.json, sw.js PWA (instalable, offline) | |
| data/ | |
| muestra_condiciones.csv Muestra en formato tipo ESO (con niebla) | |
| ``` | |
| ## Diseño | |
| Estética de **sala de control nocturna**: fondo casi negro (como la luz roja de los | |
| observatorios) y color por estado —apto (verde), precaución (ámbar), no apto (rojo)— | |
| que tiñe la cabecera como un panel, con un latido sutil solo cuando es crítico. | |