53 lines
2.2 KiB
SQL
53 lines
2.2 KiB
SQL
-- =============================================================
|
||
-- V072 – asset_pv_array.telemetry_group + rozšíření telemetry_source
|
||
--
|
||
-- Cíl:
|
||
-- - umožnit mapování PV pole → měřicí kanál (pv1/pv2/pv_strings/pv_total/gen_port),
|
||
-- - umožnit sdílené měření pro více polí (telemetry_group) a následnou alokaci (v routines).
|
||
-- =============================================================
|
||
|
||
alter table ems.asset_pv_array
|
||
add column if not exists telemetry_group text;
|
||
|
||
comment on column ems.asset_pv_array.telemetry_source is
|
||
'Který sloupec v telemetry_inverter odpovídá tomuto poli.
|
||
gen_port = gen_port_power_w (AC-coupled pole na GEN portu),
|
||
pv1 = pv1_power_w (DC string 1 / MPPT1),
|
||
pv2 = pv2_power_w (DC string 2 / MPPT2),
|
||
pv_strings = pv1_power_w + pv2_power_w (souhrn DC stringů, pokud nejde rozlišit),
|
||
pv_total = pv_power_w (souhrnné PV, pokud nejde rozlišit).
|
||
NULL = pole nemá přímou telemetrii (fallback na forecast).';
|
||
|
||
comment on column ems.asset_pv_array.telemetry_group is
|
||
'Volitelná skupina pro sdílené měření: pokud více pv_array sdílí jeden telemetrický kanál (např. GEN port rozdělený do více orientací),
|
||
pak mají shodné (site_id, telemetry_source, telemetry_group) a routines alokují actual proporčně podle forecastu.';
|
||
|
||
-- --- Seed / upgrade stávajících referenčních lokalit ---
|
||
|
||
-- home-01: dvě GEN pole sdílí jeden GEN port → stejné telemetry_group
|
||
update ems.asset_pv_array
|
||
set telemetry_source = 'gen_port',
|
||
telemetry_group = 'gen_port_1'
|
||
where site_id = (select id from ems.site where code = 'home-01')
|
||
and code in ('pv-b', 'pv-b-flat');
|
||
|
||
-- BA81: stringy mapujeme na PV1/PV2, mikroinvertory sdílí GEN port (alokace podle forecastu).
|
||
update ems.asset_pv_array
|
||
set telemetry_source = 'pv1',
|
||
telemetry_group = null
|
||
where site_id = (select id from ems.site where code = 'BA81')
|
||
and code = 'pv-str-1';
|
||
|
||
update ems.asset_pv_array
|
||
set telemetry_source = 'pv2',
|
||
telemetry_group = null
|
||
where site_id = (select id from ems.site where code = 'BA81')
|
||
and code = 'pv-str-2';
|
||
|
||
update ems.asset_pv_array
|
||
set telemetry_source = 'gen_port',
|
||
telemetry_group = 'gen_port_1'
|
||
where site_id = (select id from ems.site where code = 'BA81')
|
||
and code in ('pv-mi-1', 'pv-mi-2');
|
||
|