Descritivo do Projeto
Perda de geração solar, só com a telemetria do inversor
Uma fileira de placas parou, e o inversor não avisou. Só com a telemetria dele, o estudo estima quanto o sistema deveria gerar e acha a perda; o Sunny explica o resultado em palavras simples.
- Papel
- Coautor, em dupla
- Período
- 2026
- Situação
- em andamento
- Machine learning e dados
- Python
- pandas
- scikit-learn
- XGBoost
- Flask
- Cloudflare Pages
Evidências
Erro cerca de 41% menor que a linha de base
MAE diário médio no hold-out de 1º de agosto a 27 de setembro de 2026 (55 dias), aberto uma única vez, contra a mediana por horário. Ganho exploratório, calculado depois da abertura.
Medido.
1 alerta em 221 dias avaliados
Detector por fileira; 58 desses dias são do hold-out. O alerta caiu em 27 de setembro, na perda real de uma fileira que o inversor não registrou.
Medido.
Modelo e protocolo congelados por SHA-256
Hash conferido antes e depois de cada etapa; o programa se recusa a rodar de novo sobre o hold-out.
Medido.
A pergunta
A telemetria nativa de um inversor híbrido residencial, sem irradiância medida, basta para estimar a potência esperada e para detectar e localizar perdas de geração?
Dados
63.897 registros de 5 em 5 minutos, com 55 variáveis, coletados pela API do fabricante entre 15 de janeiro e 27 de setembro de 2026. A modelagem usa só registros diurnos de dias válidos.
Validação
- Cinco modelos: a linha de base (mediana por horário), o Random Forest V1 e três XGBoost.
- O V1 foi congelado em 7 de julho e o protocolo em 28 de setembro, os dois por SHA-256, antes de abrir o hold-out de agosto e setembro uma única vez.
- Das três hipóteses registradas antes do teste, duas foram refutadas, e a monografia relata isso.
Limites
Uma única instalação, com cerca de oito meses e meio de dados. O ganho de 41% vale para MAE e contra uma linha de base simples de propósito. A causa da perda de 27 de setembro não foi confirmada em campo.
Na tela



Toque fora da imagem para fechar.

Toque fora da imagem para fechar.

Toque fora da imagem para fechar.

Toque fora da imagem para fechar.
Como funciona
Da telemetria do inversor ao relatório em palavras simples. A IA explica; quem decide são as regras e os modelos.
- Telemetria
55 variáveis do inversor, de 5 em 5 minutos, de 15/01 a 27/09/2026.
Python63.897 registros - Limpeza
Só registros diurnos de dias válidos. Dia sem dado suficiente não conta como dia sem alerta.
pandas - Geração esperada
A mediana por horário, o Random Forest V1 e três XGBoost estimam quanto o sistema deveria gerar.
scikit-learn, XGBoost41% menos erro - Detector
Compara as duas fileiras de placas com o Sol alto e localiza a que perdeu.
pandas1 alerta em 221 dias - Relatório
Regras fixas transformam tudo em Tudo certo, Atenção, Problema ou Sem dados, com causas possíveis e o que fazer.
Python - Guia
Um assistente por LLM explica o relatório da tela e só executa ações de uma lista fechada.
Three.js
Os modelos foram treinados com o histórico da própria instalação e congelados. Antes de qualquer etapa, o programa confere o SHA-256 de cada um e do protocolo, e se recusa a rodar de novo sobre o período reservado. O trecho ao lado é uma forma simplificada do protocolo congelado.
O Sunny avisa e sugere. Quem confirma a causa é sempre o instalador.
{
"congelado_em": "2026-09-28T23:08:03",
"abertura": "única",
"modelos_sha256": {
"v1": "f9302efd…ef084"
},
"base_sha256": "753e397c…a925"
}Decisões
Em vez de: Ajustar o modelo olhando o período de teste.
Custo aceito: As hipóteses que não passaram ficam como refutadas; duas das três foram, e a monografia diz isso.
Em vez de: Comparar só modelos sofisticados entre si.
Custo aceito: O ganho de 41% é medido contra uma referência ingênua, e assim é apresentado.
Em vez de: Instalar um sensor de irradiância na casa.
Custo aceito: Separar nuvem de defeito fica mais difícil; daí comparar uma fileira com a outra.
Em vez de: Olhar só a geração total contra a esperada.
Custo aceito: Precisa de duas fileiras; localiza a perda, mas não diagnostica a causa.
Em vez de: Deixar o assistente dar o diagnóstico.
Custo aceito: Respostas mais contidas; ele fala do relatório da tela e não afirma a causa física.
Como foi construído
- 15/01Começa a série
A telemetria do inversor passa a ser gravada de 5 em 5 minutos.
- 07/07O Random Forest congelado
A V1 é salva e conferida por SHA-256 antes de qualquer teste.
- 27/09A perda real
A corrente da fileira 2 fica em zero desde as 7h30, e o inversor não registra falha.
- 28/09O teste, uma única vez
O protocolo é congelado às 23h08, e o período reservado de agosto e setembro é aberto uma única vez.
- 06/10O Sunny no ar
O relatório em palavras simples vai ao ar; em 10/10 chegam o guia por voz e o Sunny 3D solto na tela.
Hoje e a seguir
Hoje
O estudo está concluído. O Sunny é um protótipo no ar, que lê os dados novos todos os dias com os modelos congelados e explica cada aviso em texto, com a regra usada para o técnico.
A seguir
- Aprendizado contínuo: os modelos evoluírem com os dados novos, validados antes de cada troca.
- Mais instalações, para medir a sensibilidade do detector além de um único evento real.
No ar
- SunnyCloudflare Pages, conferido em 15 de outubro de 2026
TCC em dupla, com orientação na UCL.