Přeskočit na hlavní obsah

Wall_display_kuchyne_1p (192.168.100.34)

Shelly Wall Display (Gen2/Gen3) v 1. patře (OBV_2xi / Kuchyně / Obývák) sloužící jako hlavní uživatelský informační panel, most mezi zónami a regulátor vytápění.


Seznam skriptů​

  1. 1_IR09.js – Vyčítání stavu vytápění a FVE z externího Python serveru do virtuálních prvků displeje
  2. 2_TRV_sync.js – Univerzální regulace radiátoru a synchronizace s centrální kotelnou
  3. 3_chodba_sync.js – Podružná synchronizace pozice ventilu z TRV1 na TRV2 (přepočet 1/10)
  4. 4_chodba_tmp_sync.js – Synchronizace aktuální a cílové teploty z TRV1 na TRV2
  5. 5_XTRA.js – Vyčítání solárních dat ze Shelly Pro 1 RS485 (EPEver) a lokální zobrazení
  6. 6_TRV_sync_temp.js – Heartbeat prostorové teploty do obývákových TRV hlavic
  7. 7_iluminace.js – Snímání osvětlení a zápis do virtuální komponenty pro displej

1. 1_IR09.js (Python Server Reader)​

  • Funkce: Každých 60 s stahuje JSON data z Python serveru (http://100.81.155.15:8080/) a aktualizuje 13 virtuálních komponent na displeji (teploty AKU nádrže, solární zisk, venkovní teplota, tepelná ztráta, stav kotle).
  • Ochrany: HTTP timeout, kontrola chyb err_code !== 0 a HTTP statusu. Při výpadku serveru zaloguje chybu do VictoriaLogs a ponechá na displeji poslední platné hodnoty bez pádu.

2. 2_TRV_sync.js (Univerzální regulace radiátoru)​

  • Funkce: Propojuje termostat Wall Display s radiátorovou hlavicí TRV Gen1 a kotelnou (192.168.100.31). Podporuje agresivní náběh (100 % na 5–10 min), ekvitermní ubírání (70 % → 50 % → 30 % → 0 %) a anti-hunting (10 min klid).
  • Ochrany: Timeout 10 s na TRV, sekvenční řazení požadavků bez souběhu (isTrvBusy), watchdog na straně kotelny (12 min).

3. 3_chodba_sync.js (TRV1 -> TRV2 Pozice)​

  • Funkce: Každých 30 s čte polohu ventilu z hlavní hlavice TRV1 (192.168.100.45 /status) a nastavuje minimální otevření valve_min_percent na podružné hlavici TRV2 (192.168.100.46) jako 1/10 hodnoty TRV1 (Math.round(TRV1_pos / 10)).
  • Ochrany: Pokud je některá hlavice nedostupná (výpadek Wi-Fi nebo vybitá baterie), skript zaloguje chybu a přeskočí zápis. Zápis se provádí pouze při reálné změně hodnoty (newMinPercent !== lastMinPercent), aby se nezatěžovala baterie hlavice TRV2.

4. 4_chodba_tmp_sync.js (TRV1 -> TRV2 Teploty)​

  • Funkce: Každých 30 s čte naměřenou a cílovou teplotu z TRV1 (192.168.100.45) a zapisuje je do TRV2 (192.168.100.46) přes /ext_t?temp=... a /thermostats/0?target_t=....
  • Ochrany: Ověřuje validitu teploty data.tmp.is_valid. Pokud je teplota neplatná nebo TRV neodpovídá, požadavek se neodešle. Zápis probíhá pouze při změně hodnoty.

5. 5_XTRA.js (Solární data z RS485)​

  • Funkce: Každých 10 s vyčítá přes RPC z 192.168.100.72 výkon panelů (ID 207), kapacitu baterie SOC (ID 200) a denní výrobu (ID 208) a ukládá je do lokálních virtuálních prvků 214, 213, 215 na displeji.
  • Ochrany: Kontrola HTTP kódu a síťových chyb. Při nedostupnosti měřiče nedochází k chybě skriptu, stavy zůstávají zachovány.

6. 6_TRV_sync_temp.js (Heartbeat pro obývákové TRV)​

  • Funkce: Čte prostorovou teplotu z termostatu Wall Display a posílá ji do 2 TRV hlavic v obýváku (192.168.100.225 a 192.168.100.226) každých 60 s nebo při změně o ≥ 0.1 °C.
  • Ochrany: Zajišťuje stálý heartbeat externí teploty, což brání TRV hlavicím spadnout na jejich interní čidlo u horkého radiátoru. Každý TRV dotaz má timeout a loguje chyby do VictoriaLogs.

7. 7_iluminace.js (Měření osvětlení)​

  • Funkce: Snímá luxy z interního senzoru Wall Display (Illuminance:0) každých 30 s a ukládá hodnotu do Number:216. Při změně o ≥ 5 lux odesílá záznam do VictoriaLogs.
  • Ochrany: Try/catch obálka, zápis pouze při reálné změně hodnoty.