EaSun · ESP32-Grid-Load-Vypocet604 · vývojový manuál

Spot Gate — práh FVE podle přebytku

Místo pevného „FVE ≥ 200 W“ rozhoduje přebytek = solarW − loadW: když FVE kryje dům, Spot nesmí topit ze sítě; když je deficit a cena je levná, smí. Dokument popisuje problém, řešení, hysterezi a konkrétní změny ve firmware.

1. Proč absolutních 200 W selhávalo

DŘÍVE solarW ≥ 200 → Spot Gate = NE (síťové topení zakázáno).

Práh odpovídal otázce „svítí vůbec FVE?“, ne „stačí FVE na dům + topení?“. Každý den jiná spotřeba domu a topení — žádná fixní hodnota wattů z FVE nebude sedět.

TEĎ Rozhoduje přebytek vůči spotřebě domu — přizpůsobí se dni bez tipování „kolik W FVE je dost“.

2. Tři různé věci (nesmí se plést)

PojemCo to jeCo to Není
Spot Gate Hard brána: smí PWM záměrně topit ze sítě při levném Spotu Vypínač celého domu / GRID měření
LOAD / GRID (cezW) Skutečný odběr domu ze sítě ze střídače (MQTT) „Spot topení běží“ — může být lednice, jiné spotřebiče
Distr. Max % / cezWMax Strop výkonu, i když Gate = ANO Rozhodnutí podle ceny Spot
Spot Gate cena ≤ limit ∧ přebytek FVE OK smí / nesmí síťové topení Distr. limity Max odběr % cezWMin / cezWMax strop PWM když Gate ANO LOAD / GRID loadW / cezW měření střídače Spot to nevypíná
Gate rozhoduje o záměrném síťovém topení; GRID ukazuje realitu odběru domu; Distr. limituje výkon.

3. Řešení: přebytek = solarW − loadW

přebytek = solarW − loadW

Spot_fveSurplusMin  (default 0 W, SPIFFS /SpotFveSurplusMin.ea)
  −1  →  FVE větev vypnutá (Gate jen podle ceny)
  ≥0  →  práh pro zákaz při přebytku

FVE větev Gate (s hysterezí, viz §4):
  surplus ≥ openAt + 150 W  →  blokovat síťové topení
  surplus ≤ openAt          →  FVE nebrání (cena může otevřít Gate)
  mezi                      →  držet předchozí stav
Spot_enabled? ANO NE → Gate true (jako dřív) Platná cena OTE? ANO NE → Gate NE FVE přebytek (hystereze) solarW − loadW vs Spot_fveSurplusMin FVE OK přebytek → Gate NE cena Kč ≤ max(L,M,H)? limit z /spot-config ANO NE → Gate NE Gate ANO smí síťové topení → Distr. rampa Pak ještě potřeba: Distr.Ano + Max odběr % > 0 + teplota
Pořadí v Spot_isGridHeatAllowed(): enabled → OTE cena → FVE přebytek → limit Kč.

4. Hystereze (+150 W)

Bez hystereze by Gate kmital kolem nuly (LOAD a FVE se vteřinu od vteřiny hýbou). Konstanta SPOT_GATE_SURPLUS_HYST_W = 150 v spotove_ceny.h:

deficit (−) přebytek (+) FVE OK → smí (cena) surplus ≤ openAt (např. 0) pásmo držet stav FVE blokuje Gate surplus ≥ openAt+150 openAt closeAt hystereze 150 W
Při default Spot_fveSurplusMin = 0: otevřít při surplus ≤ 0, zavřít až při surplus ≥ 150 W.

5. Vrstvy řízení (kde Gate sedí)

1. Fallback / AI — návrh PWM (solár, baterie, ASSIST…) vypocet01.h / vypocet02.h 2. Spot Gate — Spot_isGridHeatAllowed() NE → Distr. rampa se přeskočí (nesmí topit ze sítě přes Spot) 3. RegulacePwmPodleDistributoraFunkce — temp5 / cezWMax jen když Gate ANO 4. Teploty SSR Min/Max, safety clamp, finální PWM Home: HEATING + banner SPOT (spot-full) AI nesmí obejít Gate — gridHeatAllowed je hard vstup
Gate je hard vrstva před Dist. rampou; AI jen jemně koriguje uvnitř povoleného pásma.

6. Změny provedené v aplikaci

604 Implementováno ve firmware ESP32-Grid-Load-Vypocet604.

6.1 Logika Gate — spotove_ceny.h

6.2 Globál + SPIFFS — ESP32-Grid-Load-Vypocet604.ino

6.3 Web /spot-config

6.4 Home banner (celá šířka)

Dříve (Home)Teď
„Síť ZAKÁZÁNA“ + „Dost FVE (≥200 W)“ „Síťové topení: NE (FVE kryje dům)“ + přebytek solar−load
Malá karta v řadě s HEATING/SOLAR Samostatný box .spot-full na celou šířku
Práh jen v kódu (#define 200) Nastavitelné na /spot-config + SPIFFS

7. Jak nastavit (uživatel)

Doporučeno: 0 W
Při jakémkoli přebytku FVE vůči LOAD netopit ze sítě přes Spot. V noci / při deficitu a levné ceně Gate otevře (pokud Distr. Ano).
Rezerva 100–200 W
Když MQTT šumí kolem nuly a Gate by blikal i s hysterezí — zvedněte práh mírně nad 0.
−1 = jen cena
FVE větev vypnutá. Spot Gate řeší jen Kč/MWh. FVE „řeší“ střídač sám; pozor na levný Spot ve slunci — Distr. cezWMax zůstává pojistkou.

Cesta: Home → Spot → nastavení (/spot-config) → sekce Spot Gate — přebytek FVE → Uložit.

SPIFFS: /SpotFveSurplusMin.ea  |  limity cen beze změny (Low/Med/High)

8. Příklady (default práh 0)

solarWloadWPřebytekCena vs limitGate FVE / celkem*
1200900+300≤ limitFVE blokuje → NE (kryje dům)
2001350−1150≤ limitFVE OK + cena OK → ANO*
50800−750> limitFVE OK, ale drahý Spot → NE
0600−600≤ limitANO* (noc / zataženo)
400380+20≤ limitv pásmu hystereze: držet stav; při ≥150 jasný zákaz

* ANO jen pokud Distr.Ano a Max odběr % > 0 (a teploty SSR dovolí).

9. Dotčené soubory

SouborZměna
spotove_ceny.h Přebytek, hystereze, Spot_isGridHeatAllowed()
ESP32-Grid-Load-Vypocet604.ino Spot_fveSurplusMin, SPIFFS, /spot-config, generujSpotKartuHome(), CSS .spot-full
vypocet01.h Beze změny API — stále volá Spot_isGridHeatAllowed() v Dist. rampě / AI vstupu
spot-gate-prebytek-fve.html Tento manuál

10. Související dokumenty

Starší texty v spotove-ceny.html, které ještě zmiňují SolarW < 200 W, jsou historický popis Fáze 1 — kanonická logika FVE větve je přebytek (tento dokument).