gpt5.5 - odladeni dokumentace dle kodu
This commit is contained in:
@@ -22,6 +22,8 @@ CREATE TABLE site (
|
||||
code TEXT UNIQUE NOT NULL, -- např. 'home-01'
|
||||
name TEXT NOT NULL,
|
||||
timezone TEXT NOT NULL DEFAULT 'Europe/Prague',
|
||||
latitude NUMERIC(9,6), -- Open-Meteo / pvlib
|
||||
longitude NUMERIC(9,6), -- Open-Meteo / pvlib
|
||||
active BOOLEAN NOT NULL DEFAULT true,
|
||||
notes TEXT,
|
||||
created_at TIMESTAMPTZ DEFAULT now()
|
||||
@@ -39,6 +41,7 @@ CREATE TABLE site_endpoint (
|
||||
host TEXT NOT NULL,
|
||||
port INT,
|
||||
protocol TEXT, -- 'modbus_tcp', 'http', 'https'
|
||||
unit_id INT, -- Modbus Unit ID pro modbus_tcp
|
||||
auth_reference TEXT, -- odkaz na secret / env proměnnou
|
||||
enabled BOOLEAN DEFAULT true,
|
||||
notes TEXT
|
||||
@@ -119,6 +122,11 @@ CREATE TABLE asset_battery (
|
||||
charge_efficiency NUMERIC(5,4) DEFAULT 0.95,
|
||||
discharge_efficiency NUMERIC(5,4) DEFAULT 0.95,
|
||||
degradation_cost_czk_kwh NUMERIC(8,4) DEFAULT 0.5 -- náklad na cyklus
|
||||
-- pozdější migrace přidávají plánovací tunables:
|
||||
-- charge_slot_buffer, discharge_slot_buffer,
|
||||
-- planner_max_soc_percent, planner_discharge_floor_percent,
|
||||
-- planner_extreme_buy_threshold_czk_kwh,
|
||||
-- planner_terminal_soc_value_factor
|
||||
);
|
||||
```
|
||||
|
||||
@@ -135,7 +143,7 @@ CREATE TABLE asset_pv_array (
|
||||
code TEXT NOT NULL,
|
||||
name TEXT,
|
||||
nominal_power_wp INT NOT NULL, -- 10000
|
||||
azimuth_deg NUMERIC(6,2), -- 0=S, 90=Z, -90=V
|
||||
azimuth_deg NUMERIC(6,2), -- kompasově/pvlib: 0=N, 90=E, 180=S, 270=W
|
||||
tilt_deg NUMERIC(5,2),
|
||||
module_count INT,
|
||||
shading_factor NUMERIC(4,3) DEFAULT 1.0,
|
||||
@@ -169,22 +177,30 @@ CREATE TABLE asset_ev_charger (
|
||||
);
|
||||
```
|
||||
|
||||
### `asset_flexible_device`
|
||||
Generická tabulka pro ostatní flexibilní spotřebiče (TUV, tepelné čerpadlo, ...).
|
||||
### `asset_heat_pump`
|
||||
Tepelné čerpadlo / TUV. Aktuální implementace má samostatnou tabulku místo
|
||||
historického generického `asset_flexible_device`.
|
||||
|
||||
```sql
|
||||
CREATE TABLE asset_flexible_device (
|
||||
id SERIAL PRIMARY KEY,
|
||||
site_id INT REFERENCES site(id),
|
||||
code TEXT NOT NULL,
|
||||
device_type TEXT NOT NULL, -- 'tuv', 'heat_pump', 'pool', ...
|
||||
control_mode TEXT DEFAULT 'loxone', -- jak se řídí
|
||||
max_power_w INT,
|
||||
min_power_w INT DEFAULT 0,
|
||||
interruptible BOOLEAN DEFAULT true,
|
||||
schedulable BOOLEAN DEFAULT true,
|
||||
priority INT DEFAULT 50, -- 0=nejvyšší priorita
|
||||
notes TEXT
|
||||
CREATE TABLE asset_heat_pump (
|
||||
id SERIAL PRIMARY KEY,
|
||||
site_id INT REFERENCES site(id),
|
||||
code TEXT NOT NULL,
|
||||
manufacturer TEXT,
|
||||
model TEXT,
|
||||
endpoint_id INT REFERENCES site_endpoint(id),
|
||||
rated_heating_power_w INT NOT NULL,
|
||||
cop_rated NUMERIC(4,2),
|
||||
cop_temp_reference_c NUMERIC(5,2),
|
||||
min_run_duration_min INT NOT NULL DEFAULT 30,
|
||||
min_stop_duration_min INT NOT NULL DEFAULT 15,
|
||||
tuv_tank_volume_l INT,
|
||||
tuv_min_temp_c NUMERIC(5,2) NOT NULL DEFAULT 45,
|
||||
tuv_max_temp_c NUMERIC(5,2) NOT NULL DEFAULT 60,
|
||||
tuv_target_temp_c NUMERIC(5,2) NOT NULL DEFAULT 55,
|
||||
tuv_temp_sensor_ref TEXT,
|
||||
schedulable BOOLEAN NOT NULL DEFAULT true,
|
||||
notes TEXT
|
||||
);
|
||||
```
|
||||
|
||||
@@ -424,7 +440,9 @@ CREATE TABLE consumption_baseline_interval (
|
||||
```
|
||||
|
||||
### Flexibilní spotřebiče
|
||||
Flexibilní spotřeba se neukládá souhrnně – odvozuje se ze součtu `telemetry_ev_charger` + stavů `asset_flexible_device` per interval. Plánovaná flexibilní spotřeba je součástí `planning_interval`.
|
||||
Flexibilní spotřeba se neukládá souhrnně – odvozuje se ze součtu
|
||||
`telemetry_ev_charger` + `telemetry_heat_pump` / plánovaných setpointů.
|
||||
Plánovaná flexibilní spotřeba je součástí `planning_interval`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user