Two‑stage shedding + restoration.
Demand (kW) = (Energy consumed over window T) / (T in hours) Example for 15‑min window (0.25 hours):
For kVA demand (common for utilities), measure voltage and current, then:
CREATE TABLE md_log ( id INTEGER PRIMARY KEY, timestamp DATETIME, demand_kw REAL, peak_flag BOOLEAN ); CREATE TABLE md_config ( param TEXT PRIMARY KEY, value REAL ); -- e.g., ('limit_kw', 150.0), ('warning_pct', 80.0), ('window_min', 15)