Initial commit

Made-with: Cursor
This commit is contained in:
Dusan Vojacek
2026-03-20 13:27:37 +01:00
commit 8b4af663d8
77 changed files with 13337 additions and 0 deletions

62
docs/01-overview.md Normal file
View File

@@ -0,0 +1,62 @@
# EMS Platform Overview
## Co systém dělá
Energy Management System (EMS) je multi-site platforma pro optimalizaci výroby, spotřeby a obchodování s energií na objektech vybavených FVE, baterií, flexibilními spotřebiči a přístupem ke spotovému trhu OTE CZ.
Systém přebírá rozhodovací logiku od Loxone a stává se „mozkem" plánuje, optimalizuje a posílá setpointy zpět do Loxone jako exekutoru.
## Hlavní funkce
- Sběr telemetrie ze střídače Deye přes Modbus/RS485 → Waveshare IP převodník
- Sběr dat z EV nabíječek Teltonika přes API
- Stahování spotových cen OTE CZ (15min granularita)
- Predikce výroby FVE (per pole, per azimut/sklon)
- Plánování provozu baterie, EV nabíjení, TUV na základě cen a predikce
- Export setpointů do Loxone přes HTTP Virtual Inputs
- Audit skutečnosti vs plánu
- Multi-site: jeden systém, více lokalit
## Co systém není
- Není SCADA neprovádí real-time ochranné funkce (to dělá Loxone/střídač)
- Neřídí ongridový střídač (10kWp zapojený do GEN portu) ten je autonomní
- Nenahrazuje Loxone jako exekutor lokální automatizace
## Scope první instalace (site: home-01)
| Komponenta | Detail |
|---|---|
| Střídač | Deye SUN-20K-SG01LP1-EU (20kW LV, hybridní) |
| Baterie | 64 kWh LV (připojená k Deye) |
| FVE pole A | ~10 kWp (řízené Deye) |
| FVE pole B | ~10 kWp (ongridový střídač → GEN port Deye, autonomní, neplánujeme řídit) |
| EV nabíječky | 2× Teltonika TeltoCharge 22kW |
| TUV | Tepelné čerpadlo / boiler (přes Loxone) |
| Komunikace střídač | RS485 → Waveshare WS-ETH (Modbus TCP) |
| Komunikace Loxone | HTTP Web Services / Virtual Inputs |
| Trh | OTE CZ, spotové ceny, 15min intervaly |
## Technologický stack
| Vrstva | Technologie |
|---|---|
| DB | PostgreSQL 16 + TimescaleDB |
| API / BFF | PostgREST (automatické REST z DB schématu) |
| Backend logika | Python (FastAPI) plánovač, sběr dat, integrace |
| Frontend | React + TypeScript |
| Komunikace střídač | Python modbus-tcp klient |
| Kontejnerizace | Docker Compose |
| Migrace | Flyway nebo plain SQL skripty |
## Časová granularita
**Primární granularita celého systému je 15 minut.**
- Spotové ceny: 15min intervaly
- Telemetrie: ukládána po 1min, agregována na 15min pro plánování
- Plánování: 15min sloty
- Setpointy pro Loxone: 15min
- Audit skutečnost vs plán: 15min
Hodinové pohledy existují pouze jako agregovaná views nad 15min daty.