La plataforma en una página
Sentinel es dos productos que comparten el mismo activo: un sistema de monitoreo y diagnóstico energético de plantas fotovoltaicas y un CMMS de mantenimiento. Comparten la jerarquía del activo — planta → centro de transformación → inversor → MPPT → string → tracker — y comparten las señales: la misma lectura SCADA que mueve un KPI puede abrir una orden de trabajo.
Desempeño energético
Energía real, irradiación POA, energía teórica, PR, EPI, specific yield, disponibilidad y descomposición de pérdidas — por planta y por cada nivel de la jerarquía.
Mantenimiento
Tickets, órdenes de trabajo, preventivo, repuestos con punto de reorden, herramientas, compras, procedimientos y biblioteca técnica. Con app de campo PWA offline.
Cumplimiento contractual
Verificación del PR garantizado, de la disponibilidad de energía (meta ≥ 99 %), de la disponibilidad de trackers (≥ 98 %) y del EPI contra el P50 de PVSyst, con ventanas de exclusión.
Gemelo digital
Plano interactivo con puntos vivos enlazados a señales por reg_ca: cada string, tracker e inversor pinta su estado real sobre el layout de la planta.
Módulos de la plataforma
El diagnóstico energético que ocupa el grueso de este documento es una parte del producto. Estos son los demás bloques. La escala del backend que los sostiene: 53 módulos, 66 entidades y 52 controladores.
| Módulo | Qué resuelve | Detalle |
|---|---|---|
| Vista general | Estado de todo el parque en una pantalla, con acceso al análisis por planta | Condiciones meteorológicas, eficiencia, adaptadores por planta y configuración desde la misma vista |
| Monitorización | Operación en vivo por nivel de la jerarquía | Unidades de potencia, zonas, edición de strings, vista satelital, diagrama unifilar e historiales por inversor, string y tracker |
| Trackers | Seguimiento solar con umbral de alarma propio | Inclinación objetivo contra real, desviación de elevación (> 2° es alarma), mapa de calor mensual y disponibilidad técnica por tracker |
| Gemelo digital | El layout real de la planta con valores vivos encima | Cada punto se enlaza a una señal por reg_ca y pinta su estado: normal, alerta, sin producción, sin señal o sin configurar. Coordenadas versionadas con snapshots restaurables |
| Señales y SCADA | Lectura y mantenimiento del mapeo de señales | 11 endpoints de consulta (valores, series, grupos de inversores, planta ahora, planta hoy), escalado de señales en caliente y plantillas de columnas reutilizables |
| Gestión de activos | Inventario técnico y su hoja de vida | Equipos, componentes, categorías, ubicaciones, unidades y constantes por planta y año, con dashboard y vista de mapa |
| Mantenimiento (CMMS) | El trabajo que se deriva de todo lo anterior | Tickets, órdenes de trabajo, preventivo, repuestos con punto de reorden, herramientas con órdenes de préstamo y reposición, proveedores, compras multimoneda y seguimiento de procedimientos |
| Biblioteca técnica | Documentación que el técnico necesita en sitio | Manuales, procedimientos, formatos y plantillas, con constructor de plantillas y campos propios |
| Alertas y eventos | Detección sin intervención humana | Recorre los registros SCADA y crea eventos de inversor, estado y sensor, calculando tiempo de inactividad y energía perdida. Admite alta manual y asignación a responsable |
| Informes y tableros | Salida hacia dirección y hacia el inversionista | Visor de Excel embebido, informes personalizados, tableros Herramienta de tableros corporativos, conexión de API externa y exportación a Excel, PDF, ZIP y GeoTIFF |
| Administración | Quién entra y qué puede hacer | Usuarios, roles, permisos granulares, empresas, firma digital (flujo administrativo y personal) y sembradores para dar de alta una empresa nueva |
| Notificaciones | Aviso en tiempo real | WebSocket con salas por usuario además de difusión general, con página propia también en la app de campo |
| Asistente Sentinel | Consulta en lenguaje natural sobre el plano | Modelo claude-haiku-4-5 con los umbrales de la plataforma en su contexto; distingue suciedad, sombras, fallo de módulo, fallo de string y clipping |
App de campo
Una aplicación instalable para el técnico, dentro del mismo proyecto y bajo la ruta /m. No es una vista reducida del escritorio: está construida para trabajar sin cobertura, que es la condición normal en una planta.
Cobertura funcional
Órdenes de trabajo con ejecución en campo y alta, tickets, órdenes de compra, equipos, repuestos, biblioteca, cronograma preventivo, monitoreo, notificaciones, búsqueda global y panel de sincronización.
Cola offline real
Las acciones se encolan en IndexedDB y se sincronizan al recuperar señal. La cola persiste incluso las fotos adjuntas, no solo los formularios.
Cerrojo entre pestañas
Un bloqueo de ámbito origen impide que dos pestañas de la misma sesión suban la cola a la vez. En navegadores antiguos degrada a un guardia por pestaña.
Política con causa
Distingue el fallo de red, que reintenta, del rechazo del servidor, que detiene y muestra el motivo. Antes de reenviar un alta comprueba por clave natural que no haya llegado ya.
Cámara y firma
Escaneo de QR y códigos de barras con la cámara para saltar directo a la orden o al equipo, y firma digital sobre la pantalla táctil al cerrar el trabajo.
Lista y detalle
Desde 1024 px pasa a maestro-detalle con rail lateral. Objetivos táctiles de 44 px verificados por prueba automatizada, sobre 15 suites en total.
La aplicación está traducida a los mismos cuatro idiomas que el escritorio: español, inglés, italiano y rumano.
La cadena del dato
Cuatro etapas con responsabilidades separadas. El servicio que habla con el campo se limita a capturar y guardar; el frontend consulta resultados ya calculados y persistidos, sin ejecutar ninguna ecuación energética.
Las cuatro capas lógicas del diagnóstico
Independientemente de dónde corra el código, el diagnóstico está organizado en capas con una responsabilidad cada una. Gracias a esa separación se puede cambiar una fórmula sin tocar la ingesta, o migrar el SCADA sin rehacer los KPIs.
Gobierno de datos
Cualquier número que muestre la plataforma tiene que poder reconstruirse después: con qué señal se calculó, con qué versión de la fórmula, con qué parámetros vigentes y en qué momento. Todo lo de esta sección existe para sostener esa reconstrucción.
Quién ve qué
- Multiempresa (multi-tenant). Aislamiento por empresa_id aplicado en la capa de servicio, con guard de tenant en cada petición. Rol de SuperAdmin con acceso cross-tenant explícito.
- RBAC granular. Usuario → roles → permisos, más permisos directos al usuario. Validación por decorador en cada endpoint.
- Auditoría a nivel de base de datos. Cada petición fija app.user_id en la sesión de PostgreSQL mediante set_config() con parámetro vinculado, de modo que los triggers de auditoría atribuyen cada cambio a un usuario real sin interpolar el identificador en el texto de la consulta.
- Auditoría de acceso. Registro de inicios de sesión y de los intentos fallidos con su motivo, con IP, user-agent y duración de sesión. Consultable solo con permiso propio.
- Tokens de terceros. Acceso de clientes externos al servicio de adquisición con expiración y modo de solo lectura.
El contrato del dato: el catálogo de señales
Antes de cualquier ecuación existe el mapeo. Cada variable de planta se declara con todo lo necesario para leerla e interpretarla sin ambigüedad:
| Atributo | Qué define |
|---|---|
| reg_ca | Identificador de la variable. En Modbus, la dirección de inicio; en IEC-104, la dirección común del objeto. |
| direccion | Information Object Address (IOA) en IEC-104. |
| read_func | Función de lectura Modbus: HOLDING, INPUT, COIL o DISCRETE. |
| data_type / endian | Tipo del registro y orden de bytes: BIG, LITTLE, MID, MID-LITTLE. |
| scaler | Factor de escala aplicado al valor crudo. Es el punto de fallo más frecuente — un escalador equivocado convierte 599 W/m² en 6 W/m². |
| min / max | Rango físico admisible; base del saneamiento. |
| units | Unidad declarada, usada para descubrir señales POA y de energía. |
Fórmulas versionadas, no hardcodeadas
Las ecuaciones oficiales viven en base de datos como versiones inmutables, no en el código del frontend. Cada versión declara su expresión, sus variables con el origen de cada una (constante, configuración de planta, agregado o derivado), sus parámetros por defecto y su ventana de vigencia.
Parámetros con vigencia
Los parámetros de planta — potencia DC instalada, coeficiente térmico β, bifacialidad, temperatura de diseño, ratio AC/DC, PR contractual — se editan desde la interfaz y se guardan versionados, con valid_from / valid_to, la fuente declarada y el documento de respaldo adjunto (ficha técnica, informe PVSyst).
Esto responde la pregunta que siempre aparece en una disputa: «¿con qué potencia instalada se calculó el PR de marzo?»
Ventanas de exclusión
Periodos que no deben imputarse al operador: mantenimiento programado, fuerza mayor, curtailment por orden de despacho. Se declaran por ámbito (planta, CT, inversor), con tipo, rango, motivo y qué KPIs afecta. El motor de disponibilidad las descuenta antes de calcular.
Corridas reproducibles
Cada cálculo se ejecuta dentro de una corrida que deja constancia de todo: rango, quién la disparó y por qué, marcas de inicio y fin, estado, y — lo importante — un snapshot de las fórmulas y de la configuración vigentes en ese instante. Los resultados cuelgan de la corrida. Recalcular no pisa el histórico: genera otra corrida.
Calidad del dato
Qué hace el motor cuando el dato no llega. Es la parte del diseño que más problemas evita en operación: un indicador que rellena los huecos por su cuenta acaba escondiendo justo lo que había que ver.
La expresión ingenua E_prod / (E_prod + E_perdida) devuelve 100 % cuando ambos términos son cero — es decir, presenta la ausencia de datos como ausencia de problemas. En una planta real esto ocultó dos centros de transformación detenidos durante semanas mostrando «100 % disponibilidad» y «40 inversores en estado óptimo».
La semántica implementada distingue tres casos: sin intervalos evaluables → nulo («—» en pantalla, nunca un número); con sol y telemetría pero sin producción ni pérdida imputada → 0 % (la planta estaba parada); resto → fórmula contractual. El nulo se propaga hasta la interfaz sin convertirse en cero por el camino.
Otros controles activos
- Umbral de irradiancia. Solo se evalúan intervalos con POA por encima del umbral: 100 W/m² para KPIs según IEC 61724-1, y 20 W/m² para el conteo contractual de disponibilidad. Fuera de esas horas no se imputa nada.
- Estado de calidad por resultado. Cada valor persistido lleva su propio quality_status, así que un dashboard puede excluir lo dudoso sin borrarlo.
- Monitor de cobertura SCADA. Alerta cuando los inversores sin señal activa superan el 2 % de la capacidad DC instalada, e informa el factor de corrección. La nota que aparece en el dashboard dice explícitamente si la desviación viene de capacidad invisible o de degradación real — el factor operativo nunca se maquilla en silencio.
- Estabilidad del factor. Segunda alerta independiente cuando el factor implícito E_real / E_teórica se desvía más de 5 puntos porcentuales del nominal durante dos semanas consecutivas: síntoma de degradación real o de recalibración pendiente.
- Detección de huecos. Monitor de cobertura con detalle de los intervalos faltantes por planta y periodo.
- Topes físicos. Cap por capacidad instalada para que un salto de contador (un reset del medidor que reporta 65.505 kWh en un día) no infle el mes.
Modelo de datos del diagnóstico
Siete tablas sostienen todo el dominio. Están separadas en cuatro roles — definición, configuración, ejecución y resultado — y de esa separación depende que el sistema se pueda auditar.
| Entidad | Rol | Claves |
|---|---|---|
| Definiciones de KPI | Catálogo: qué indicadores existen, su categoría, ámbito y unidad | key · category · scope_type |
| Versiones de fórmula | Cómo se calcula cada KPI, con vigencia y variables tipadas | code + version · is_default |
| Configuración de planta | Parámetros versionados con vigencia y respaldo documental | planta + config_key + version |
| Ventanas de exclusión | Periodos no imputables, por ámbito y tipo | scope · start_at · end_at |
| Corridas de cálculo | Ejecución con snapshot de fórmulas y configuración | status · formula_snapshot |
| Resultados | Valor por KPI, ámbito y bucket temporal, con estado de calidad | kpi_key · bucket · quality |
| Curvas I-V | Trazas medidas y modeladas, con curva de referencia marcable | trace · modeled · summary |
Los resultados se guardan precalculados por bucket temporal (5 min, día, mes) y por ámbito (planta, CT, inversor, MPPT, string). Las pantallas solo consultan esa tabla, por eso se puede abrir un año de histórico sin recorrer millones de registros crudos.
El motor matemático
Tres insumos —energía real, irradiación y energía teórica— de los que salen PR, EPI y specific yield. El resto de la sección afina esos denominadores para casos concretos: temperatura, bifacialidad, clipping y condiciones meteorológicas reales.
Los insumos
Energía teórica — tres niveles, a propósito
Un solo número «energía esperada» invita a la discusión. La plataforma calcula tres y declara cuál es la referencia activa de cada KPI.
Performance Ratio
Tres variantes del mismo indicador, según qué efecto se quiera aislar.
EPI — Energy Performance Index
El PR compara la producción contra la capacidad de placa; el EPI la compara contra la energía que se esperaba. Como hay varias referencias posibles de energía esperada, hay un EPI por cada una.
| Variante | Fórmula | Para qué sirve |
|---|---|---|
| EPI físico | E_real / E_teo_física | Benchmark técnico puro. Su distancia al EPI operativo son las pérdidas de BOS. |
| EPI operativo | E_real / E_teo_limitada | KPI principal del dashboard: descuenta las pérdidas estructurales conocidas. |
| EPI contractual | E_real / E_teo_contractual | Cumplimiento del mínimo garantizado. |
| EPI vs P50 | E_real / E_P50_PVSyst | Desempeño frente al caso de negocio simulado. |
La corrección meteorológica del P50
Comparar la producción real contra un P50 simulado con un año meteorológico típico es injusto en ambos sentidos: un año nublado penaliza a un operador impecable. La energía esperada se corrige por las condiciones reales medidas:
Disponibilidad
El indicador que se factura y el que se termina discutiendo en una revisión contractual. La plataforma calcula dos, y conviene no mezclarlas: una mide tiempo de servicio y la otra energía dejada de producir.
El cálculo contractual, paso a paso
Once pasos sobre intervalos de 5 minutos. El objetivo es responder, para cada inversor y cada instante: ¿cuánto habría producido si hubiera estado sano?
- Lectura. Pac por inversor y Psys del medidor de planta, cada 5 min.
- Reparto proporcional. P_inv_eff = (AC_inv / Σ AC_inv) × P_sys — reconcilia el sumatorio de inversores con la medida real de planta.
- Normalizador. n_inv = potencia AC de placa si hay clipping; potencia DC conectada si no.
- Normalización. Cada inversor se lleva a una escala común para poder compararlos entre sí.
- Potencia de referencia. P_ref = promedio de los inversores entre el percentil 40 y el 90, excluyendo los apagados. Ese recorte descarta los extremos por ambos lados, de modo que ni un inversor especialmente bueno ni uno averiado mueven la referencia del resto.
- Detección de apagado. Inversor OFF cuando P_ac = 0 con G_POA por encima del umbral. Con irradiancia suficiente, una producción nula solo se explica por una avería o una parada.
- Detección de rendimiento parcial. PP cuando el inversor rinde ≤ 80 % de P_ref durante ≥ 30 minutos consecutivos (6 registros). La condición de duración evita imputar nubes de paso.
- Desnormalización. P_ref se devuelve a la escala del inversor evaluado.
- Energía perdida por apagado. E_off = Σ P_inv_d × (5/60).
- Energía perdida por rendimiento parcial. E_pp = Σ (P_inv_d − P_inv_eff) × (5/60) — solo el déficit, no la producción entera.
- Disponibilidad. Fórmula contractual sobre los totales, descontando las ventanas de exclusión.
Clasificación de estado
| Estado | Umbral | Lectura |
|---|---|---|
| Óptima | ≥ 99,5 % | Dentro de la meta contractual con margen. |
| Parcial | 95 – 99,5 % | Por debajo del objetivo; requiere explicación documentada. |
| Crítica | < 95 % | Incumplimiento; dispara análisis de causa raíz. |
| Sin datos | — | Estado terminal: no se clasifica ni se promedia. No es un cero ni un cien. |
Existe además la disponibilidad de trackers (meta contractual ≥ 98 %): [T_func − (T_inactivo + T_exclusiones)] / T_func × 100 %, donde un tracker cuenta como no disponible si tiene alarma activa o bandera contractual.
Pérdidas y modelo físico
Un déficit de 40 MWh en el mes es un dato incompleto mientras no se sepa que 22 vienen de curtailment, 11 de indisponibilidad y 7 de temperatura. Solo con la descomposición se decide dónde intervenir y qué es imputable a quién.
Indisponibilidad
Suma de E_off + E_pp del cálculo contractual, por inversor. Es la única familia de pérdidas que penaliza al operador.
Curtailment
Limitación por orden de despacho o restricción de red. Se modela vía el setpoint del PPC y se declara como ventana de exclusión.
Térmicas
|E_real · β · (T_cell − 25)| cuando la celda opera por encima de STC. Es la que explica la caída de rendimiento de los meses cálidos.
Soiling
Vía soiling ratio o pareja de sensores limpio/sucio. Es la pérdida que justifica económicamente una campaña de lavado.
Clipping y el «EPI justo»
Una planta con ratio DC/AC alto recorta potencia por diseño en las horas de mayor irradiancia. Si el modelo teórico ignora ese recorte, sobreestima la producción posible y el EPI parece bajo cuando la planta opera de forma impecable.
Modelo físico: energía esperada sin piranómetro fiable
Cuando el sensor de irradiancia falta, está descalibrado o la planta nunca lo tuvo, el motor reconstruye la irradiancia en plano y la energía esperada desde primeros principios. La cadena está implementada con las referencias académicas explícitas en el código:
| Etapa | Método | Referencia |
|---|---|---|
| Posición solar | Serie de Fourier de Spencer — precisión ±0,5° | Spencer (1971) |
| Geometría de tracker | Eje simple con backtracking | Duffie & Beckman (2013) |
| GHI → POA | Correlación difusa de Erbs + cielo difuso de Perez, con coeficientes F1 circumsolar y F2 de brillo de horizonte por bin de claridad | Perez et al. (1990) |
| Temperatura de celda | SAPM simplificado | King et al. (2004) |
| Potencia DC | PVWatts v5 | Dobos (2014), NREL |
Cuando el piranómetro es válido, manda el piranómetro. El modelo entra como respaldo y como validación cruzada: el motor reporta el RMSE de POA por intervalo y el RMSE de energía teórica diaria, junto con el recuento de intervalos que usaron sensor real frente a los que usaron modelo. La trazabilidad de la fuente viaja con el resultado.
Curvas I-V
El diagnóstico de nivel más fino. Se persisten trazas medidas y modeladas, con una curva marcable como referencia y comparación automática contra ella.
Diagnóstico y causa raíz
La capa que convierte indicadores en hipótesis de trabajo. Un rendimiento bajo a nivel de planta da poca información por sí solo; localizarlo en tres strings colgados del mismo tracker ya es un parte de trabajo. De eso se ocupa esta capa: correlacionar niveles.
Correlación jerárquica automática
Cuando se detecta un inversor apagado o en rendimiento parcial, el analizador baja automáticamente a sus strings y a sus trackers y ejecuta un árbol de decisión para proponer la causa. Trabaja correlacionando los tres niveles, no disparando una alarma por umbral.
| Señal de diagnóstico | Criterio | Qué sugiere |
|---|---|---|
| Residual normalizado | > −5 % / −5 a −10 / −10 a −20 / < −20 % | Normal · leve · moderada · crítica |
| Dispersión entre strings | CV < 3 % normal · > 10 % crítico | Mismatch, string desconectado, sombra local |
| Confirmación cruzada tracker | flag angular AND ratio_I < 0,90 | Confirma que el desfase del tracker causa la pérdida |
| Score compuesto de string | 0,40·PI + 0,30·ΔI + 0,15·CV + 0,15·tendencia | > 0,85 normal · 0,70–0,85 leve · 0,50–0,70 moderada · < 0,50 crítica |
| Desviación de elevación | > 2° | Tracker desalineado — alarma con impacto cuantificable |
Vigilancia continua
Además de las corridas, hay un monitor externo que cada 10 minutos comprueba, cuando hay sol (POA ≥ 150 W/m²), la potencia máxima de los últimos 30 minutos por centro de transformación. Si cae por debajo del umbral, marca el CT como caído y avisa por mensajería, con anti-spam de estado: un aviso al caer y otro al recuperarse.
Desde agosto de 2026 avisa también cuando no llega telemetría en absoluto. Antes, un corte de ingesta dejaba al monitor en silencio, que es indistinguible de una planta sana: el mismo problema que resuelve la regla de «sin datos» de la sección 05, aplicado a la vigilancia externa.
Nació de un incidente real: un CT dejó de generar y el PR de planta se desplomó a ~40 % sin que nadie lo notara durante días.
Asistente de diagnóstico
Un asistente conversacional integrado en el plano interactivo, con los umbrales de diagnóstico de la plataforma codificados en su contexto: ratio PDC real/teórica por encima de 89 % óptimo, entre 71 y 89 % alerta media, por debajo de 70 % falla crítica; γ = −0,35 %/°C; irradiancia mínima de evaluación 50 W/m². Sabe distinguir suciedad, sombras, fallo de módulo, fallo de string y clipping.
Catálogo de ecuaciones
El catálogo completo es navegable dentro del producto: cada ecuación con su expresión, sus variables, su unidad, la norma que la respalda y su estado. Cinco capítulos siguiendo la jerarquía física del activo.
| Cap. | Ámbito | Contenido |
|---|---|---|
| 1 | String DC · Inversor AC · Planta | Potencia DC teórica (PVWatts), residual absoluto y normalizado, corriente teórica, coeficiente de variación entre strings, potencia AC teórica, potencia de planta con pérdidas de BOS, PR instantáneo |
| 2 | Trackers | Ángulo teórico, factor de pérdida por desalineación, confirmación cruzada de anomalía, impacto económico |
| 3 | Curva I-V | Modelo de un diodo con solver Newton-Raphson |
| 4 | SPD — diagnóstico avanzado | Disponibilidad de energía contractual, potencia de referencia P40-P90, detección de rendimiento parcial, performance index y score de string, disponibilidad técnica de trackers |
| 5 | CMMS | MTBF, MTTR, disponibilidad técnica, revenue at risk, ratio correctivo/preventivo |
Las ecuaciones del capítulo 5 cierran el círculo entre las dos mitades de la plataforma: A = MTBF / (MTBF + MTTR) mide la fiabilidad del equipo desde las órdenes de trabajo, mientras el cálculo contractual mide la disponibilidad desde la telemetría. Que las dos no cuadren suele señalar fallas que nadie llegó a registrar, o partes cerrados sin intervención real.
Ejecución y entregables
Qué corre solo
| Proceso | Frecuencia | Qué hace |
|---|---|---|
| Captura SCADA | cada 5 min | Lectura de todas las señales activas por planta, con reintentos. |
| Agregación | cada 5 min | Consolidación de intervalos y KPIs instantáneos. |
| Irradiancia externa | cada 10 min | Respaldo meteorológico para plantas sin sensor fiable. |
| Monitor de CT | cada 10 min | Detección de centro de transformación caído, con aviso. |
| KPIs diarios | 02:30 | Corrida completa del día anterior. |
| Cierre mensual | día 1, 03:00 | Consolidación del mes y comparativa contra P50. |
| Corridas programadas | configurable | Ejecución y envío automático del informe por correo. |
Qué se entrega
- Reporte O&M paginado, listo para imprimir: descripción, resumen ejecutivo, operación periódica, unidades de potencia, recurso meteorológico, desviaciones y dashboard analítico.
- Informe de inversionistas con exportación a PDF generada en servidor.
- Datos por intervalo (5 min) exportables para auditoría de terceros.
- Comparador de métodos de cálculo: el mismo periodo evaluado con distintas referencias, para sustentar una posición en una reunión contractual.
- Exportación a Excel, PDF, ZIP y GeoTIFF; integración con Herramienta de tableros corporativos.
Integraciones y entornos
Con qué sistemas habla la plataforma, y cómo se sostiene una demostración cuando la planta de referencia está incomunicada.
| Sistema | Vía | Para qué |
|---|---|---|
| SCADA de planta | Modbus TCP | Lectura directa de registros del inversor, medidor y meteo |
| SCADA de planta | IEC 60870-5-104 | Protocolo de telecontrol eléctrico, con dirección de objeto de información |
| Proveedor de monitorización externo | API + backfill | Plantas que no exponen SCADA propio, con relleno histórico por rango |
| API meteorológica pública | API cada 10 min | Irradiancia de respaldo cuando el piranómetro no es fiable |
| Operador del mercado eléctrico | API de mercado | Precios para valorar la energía perdida y el ingreso en riesgo |
| Herramienta de tableros corporativos | Tableros embebidos | Reportes de dirección en la herramienta de dirección |
| Plataforma de termografía | Enlace desde ticket | Informes de termografía asociados a la incidencia |
| Servicio de correo transaccional | Correo saliente | Envío automático del informe de las corridas programadas |
| Almacenamiento de objetos | Storage | Adjuntos de parámetros, curvas y documentación |
| Canal de mensajería | Tarea programada periódica | Aviso de centro de transformación caído o sin telemetría |
Entorno de demostración
Una demostración comercial no puede depender de que la planta de referencia esté comunicando. En agosto de 2026 la planta piloto estuvo ocho días sin comunicación y con un centro de transformación sin generar: quien abría la demostración veía pantallas vacías.
Para eso existe un generador de telemetría simulada que alimenta el entorno de demostración con datos coherentes. No inventa curvas bonitas: reproduce la misma cadena física que usa el motor de cálculo real.
El generador escribe exclusivamente en una base creada para la demostración, y se niega a arrancar si la conexión no apunta a ella. No toca la base de producción ni la que producción comparte. Volver a datos reales no requiere deshacer nada: basta con reapuntar la conexión, y lo simulado queda aparte y se puede borrar sin efecto sobre el resto.
Alcance de la plataforma
Resumen de las capacidades que cubre el sistema, de la adquisición en campo al entregable que recibe el cliente.
| Capacidad | Qué cubre |
|---|---|
| Adquisición 5 min | Modbus TCP e IEC-104 por planta, con gestión de clientes en caliente. |
| Catálogo de KPIs y fórmulas versionadas | 15 KPIs y 8 fórmulas por defecto, sembradas automáticamente. |
| Parámetros con vigencia y adjuntos | CRUD completo, duplicado de configuraciones y limpieza de archivos. |
| PR · EPI · SY · disponibilidad | Motor de agregación por planta, CT e inversor. |
| Disponibilidad contractual · clipping · modelo físico | Servicios dedicados con endpoints propios y persistencia de corridas. |
| Semántica «sin datos» y monitor de cobertura | Con pruebas automatizadas. |
| Motor de corridas del módulo de diagnóstico | Persistencia diaria de energía real y specific yield, con el catálogo de KPIs servido desde el motor de agregación. |
| Curvas I-V y trackers | CRUD, comparación y explorador visual sobre los datos de campo de cada planta. |
| KPIs de mantenimiento (MTBF, MTTR) | Definidos en el catálogo de ecuaciones, sobre el histórico de órdenes de trabajo. |
| App de campo (PWA) | 19 pantallas, cola offline con adjuntos, cerrojo entre pestañas y 15 suites de prueba. |
| Entorno de demostración | Generador de telemetría con la misma cadena física del motor, aislado en su propia base. |
Lo que hace falta del lado del cliente
Los tres bloqueos recurrentes para poner una planta nueva al día no son de software:
- Confirmación del mapeo SCADA real por planta — señal por señal, con escala y unidad verificadas.
- Dataset PVSyst (P50/P90 mensual con GTI y temperatura simulada) para poder calcular EPI técnico y factor climático.
- Fichas técnicas de módulo e inversor, y las reglas contractuales de la planta: PR garantizado, meta de disponibilidad, tratamiento del curtailment.