powersync-docs/docs/fonctionnalites/prevision-pv.en.md
Patrick Schurig 0b8ccc6c9d docs: prévision PV, FAQ et accueil renvoient à la section Optimiseur
Prévision PV, « Et un optimiseur ? » : le protocole existe et est publié,
la connexion est en test (« en cours de développement » n'était plus
exact) ; lien vers la section. FAQ, open source : « socle
(powersync-core) », ancien nom, devient le moteur d'énergie
(etm-powersync-energy-plugin-etm) ; protocole ouvert, optimiseur de
référence et suite de conformité mentionnés. Accueil : liens vers
« Comment le moteur décide » et la section Optimiseur. Trois langues.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 13:10:46 +02:00

5.1 KiB
Raw Blame History

PV production forecast

BETA COMMUNITY

The box forecasts the production of your panels, hour by hour, until the end of the next day, and shows it in the app next to the measured production. It is a feature of the Community edition (GPL-3.0): it relies on the energy engine and the OpenMeteo plugin, with no ETM service involved.

!!! info "Beta" Delivered and running on our test installation, it is not yet published in a channel of the APT repository.

What you see in the app

  • The expected production curve, hour by hour until the end of the next day, overlaid on the measured production.
  • A weather range around this curve (see below).
  • Hour-by-hour weather on the "Journée" card: an icon (sun, clouds, rain…), day or night, and the temperature.

How the forecast is computed

For each declared PV plane — tilt, orientation, peak power (kWp) and system efficiency —, the box converts the irradiance forecast by Open-Meteo into power. It then adds up all the planes of the site.

Two corrections apply, both deterministic: public physical models, parameterised from datasheets, with no learning at all.

  • Temperature correction: a hot module produces less. The box estimates this from the forecast temperature, the NOCT and the temperature coefficient of the modules.
  • Inverter ceiling: the sum of the planes never exceeds the inverter's maximum AC power, if it has been entered.

The forecast is recomputed whenever the weather models publish a new run — at most once an hour.

A forecast, and an optimistic ceiling

What the box shows is a forecast, not a measurement. It is also an optimistic ceiling: shading (trees, chimney, neighbouring buildings) and soiled panels are not modelled. Actual production below the curve is therefore normal and does not indicate a fault.

An hour without data is a gap, never a zero

If an hour is missing (internet down, weather service unavailable), the curve breaks. The box never writes "0" instead: a zero would read as "no sun expected".

The weather range

Around the curve, the app draws a band: forecast × (1 ± spread of the day's models). The spread measures how far several weather models disagree about the day.

This band qualifies the weather, and only the weather. It says nothing about the accuracy of the production forecast: shading and soiling are not in it. On a clear, stable day it is narrow, precisely when the error from those factors is largest. It is therefore neither an "expected error" nor a "confidence interval".

Commissioning

  1. Install the OpenMeteo plugin and create the site and its PV planes — see OpenMeteo.
  2. Designate the forecast site in the app. Until one is designated, the forecast card shows a notice and offers the available sites. All planes of the designated site are added up.
  3. Optional: enter the inverter ceiling (maximum AC power, in W). Without it, no ceiling is applied.

What the forecast does not do

This is the central rule of the Community edition: without an optimiser, control is rule-based (solar surplus, load shedding, priorities). The PV forecast, the entered tariff and the baseload are displayed and recorded locally, but never used to decide. An automated test checks this: the engine makes the same decisions with and without forecast, tariff and consumption profile.

The local record is used to measure forecast accuracy over time. Validation on a real installation is under way; no accuracy figure is published before it is complete.

Baseload forecast COMING

The box will compute a household consumption profile, excluding controlled loads, from its own measurements: a median for each hour of the day, separately for working days and weekends. A profile needs at least 7 days of measurements. Until then nothing is shown: an absence, never a zero.

Your data

Only the OpenMeteo plugin connects to the internet. It sends only the site's coordinates (rounded to about 1 km in the plugin versions that carry this feature; version 1.15.2+etm1 in the testing channel sends them unrounded), its altitude if entered, and the orientation of the panels (tilt, azimuth). Measurements, recorded forecasts, the tariff and consumption stay on the box. Remote access is disabled by default: it opens only if you enable it yourself in the app.

What about an optimiser?

An optimiser, on the other hand, can use these forecasts to plan: the engine hands them over, together with the entered tariff and the baseload, through an open, published protocol. The optimiser runs at your place, on the box or on a machine in your local network, and gets its data from the engine only; its setpoints stay capped by the engine's bounds and safety. Connecting an optimiser is being tested; the Community edition works entirely without one. See the Optimizer section.