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>
5.1 KiB
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
- Install the OpenMeteo plugin and create the site and its PV planes — see OpenMeteo.
- 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.
- 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.