Browse documents

Phase 11 — Energy Monitoring System (EMS)

Status: Planned · Owner: EMS Lead (Energy SME + Backend) · Duration: 4 weeks · Gate: G11

1. Overview

Phase 11 builds the Energy Monitoring System (EMS) as a standalone module within Atlas + SFMS. EMS ingests energy data from every available source (utility meters, sub-meters, BMS energy points, IoT energy sensors, on-site generation, EV chargers), normalises it against weather and occupancy, computes the canonical KPIs (EUI, kWh/m², peak kW, demand factor, power factor, carbon intensity), produces measurement & verification (M&V) baselines per IPMVP, runs AI-driven savings recommendations and consumption forecasts, and feeds ESG reporting aligned to ISO 50001, GHG Protocol Scope 1/2/3, Kajima Vision 2050plus, TCFD / GRI / SASB / CDP.

EMS works hand-in-hand with CPMS (Phase 10): CPMS optimises plant operation; EMS measures and reports the building-wide energy and carbon outcome.

2. Objectives

  • O11.1 — Multi-source energy ingestion (electricity, gas, water, thermal, steam, on-site generation) with provenance per source.
  • O11.2 — Canonical energy + carbon KPIs computed in real time and over arbitrary periods.
  • O11.3 — Weather- and occupancy-normalised baselines (regression) used for M&V per IPMVP Option C (whole-facility) and Option B (retrofit isolation).
  • O11.4 — Tariff modelling (TOU, demand charges, ToD, capacity, fixed) per utility per tenant.
  • O11.5 — Energy anomaly detection with classification (sensor fault vs operational waste vs scheduled deviation).
  • O11.6 — AI savings advisor: per-asset / per-zone recommendations with payback estimate.
  • O11.7 — NILM (non-intrusive load monitoring) for sites with limited sub-metering.
  • O11.8 — ESG reporting pack (monthly + annual) with audit trail and exportable evidence.
  • O11.9 — Demand-response readiness (peak-shaving curtailment plans, sheddable load library).
  • O11.10 — EMS-specific dashboards, widgets, workflows.

3. Scope

3.1 In-scope

  • EMS data model (Meter, Submeter, Tariff, Baseline, CarbonFactor, EnergyAccount, Bill).
  • Meter ingestion: AMI / pulse / Modbus / BACnet / MQTT / utility-bill upload (CSV/XLSX/PDF via OCR optional).
  • Tariff engine: schedule, time-of-use, demand charges, capacity charges, season blocks, holidays.
  • Baseline engine: regression on weather (HDD/CDD, OAT) + occupancy + day-of-week + holiday calendar; per-IPMVP option.
  • Carbon engine: per-tenant emission factors (national grid + custom per supplier), Scope 1 (direct fuel) + Scope 2 (electricity, location-based and market-based) + Scope 3 placeholder (full Scope 3 module is post-launch).
  • Forecasting (next-hour to next-month) for consumption, peak demand, carbon.
  • Anomaly detection (statistical + ML) with classifier for cause attribution.
  • NILM (signal disaggregation) — opt-in per circuit.
  • Savings recommendations (AI advisor) with payback estimate.
  • Demand-response: sheddable-load library + curtailment plan + execution via workflow + M&V on the event.
  • ESG reporting templates (monthly utility bill reconciliation, GHG Scope 1+2, Vision 2050plus alignment, TCFD/GRI/SASB/CDP starter packs).
  • EMS widgets (≥12) and workflow templates.
  • Integration with CPMS (Phase 10) for plant-side energy.

3.2 Out-of-scope

  • Full Scope 3 (supply-chain) accounting — placeholder only.
  • Carbon credits and REC trading workflows (post-launch).
  • Microgrid optimisation / battery dispatch (post-launch).
  • Tenant chargeback / billing engine (post-launch; spec-touched but not built).

4. Dependencies

  • Phase 3 Data Platform (canonical model, telemetry, connectors).
  • Phase 4 SFMS (locations, work orders).
  • Phase 5 Dashboards.
  • Phase 6 AI Second Brain.
  • Phase 7 Workflow Studio.
  • Phase 10 CPMS (plant-side energy).

5. Architecture & Design

5.1 EMS data model

EnergyAccount
 ├─ Utility (grid op / supplier)
 ├─ Tariff schedule (TOU / demand / capacity / fixed)
 ├─ Meter(s) (root)
 │   ├─ Submeter(s) — hierarchical
 │   └─ Telemetry → Atlas time-series
 ├─ Bills (PDF / CSV ingest; line-item reconciliation)
 ├─ Baseline (regression model + period + assumptions)
 ├─ CarbonFactorSet (per period, per region, market vs location based)
 └─ DR-Profile (sheddable loads + curtailment plan)

5.2 KPI engine

KPIDefinitionUnit
Total consumptionsum over periodkWh
Peak demandrolling p_max (15-min RAvg)kW
EUIannualised consumption / floor areakWh/m²/yr
Costsum (kWh × tariff) + demand + fixedcurrency
Carbon (Scope 2)kWh × emission factorkgCO2e
Carbon intensitykgCO2e / floor areakgCO2e/m²/yr
Demand factoravg demand / peak demand
Load factortotal consumption / (peak demand × hours)
Power factorreal / apparent power
Renewable shareon-site PV / total%
Δ vs baselineactual − baselinekWh / % / currency
kWh per occupanttotal / occupancykWh / person
HDD- / CDD-normalisedper degree-daykWh / °C·day
Cost per asset / per zonerollupcurrency

5.3 Baseline & M&V (IPMVP)

  • Option A — retrofit isolation, key parameter measurement (placeholder; v1 ships Option B + C).
  • Option B — retrofit isolation, all parameter measurement; supports retrofit-specific M&V.
  • Option C — whole-facility; multivariate regression on weather + occupancy; baseline period + reporting period; statistical uncertainty bands.
  • Option D — calibrated simulation (post-launch).

Each baseline persists:

  • Period definition
  • Independent variables (weather source, occupancy source)
  • Coefficients + R² + CV(RMSE) + NMBE
  • Assumptions (occupancy schedule, operating hours)
  • Approval signature (M&V engineer or auditor)

5.4 Tariff engine

  • Schedule per utility per period.
  • Time-of-use blocks (peak / off-peak / shoulder) with day/holiday calendar.
  • Demand charges (kW based, ratchet, coincident vs non-coincident).
  • Capacity charges (kVA based).
  • Fixed / customer charges.
  • Supplier vs distributor split (deregulated markets).
  • Real-time cost computation alongside consumption.

5.5 Carbon engine

  • Per-tenant emission factor sets (national grid factors with monthly updates; per-supplier factors).
  • Location-based + market-based Scope 2 reporting.
  • Scope 1 from fuel-by-type (natural gas, diesel, LPG, district steam).
  • Scope 3 placeholder (data only; full module post-launch).
  • Annual roll-up and trend report.

5.6 Anomaly detection & classification

  • Models: rolling z-score, isolation forest, seasonal-trend decomposition (STL); ensemble.
  • Per-meter sensitivity tuning.
  • Classifier (AI) tags each anomaly: sensor_fault, operational_waste, scheduled_deviation, unknown.
  • Findings feed FDD-style workflow (similar to CPMS Phase 10).

5.7 NILM (non-intrusive load monitoring)

  • For circuits where sub-metering is sparse.
  • Disaggregation models for common loads (HVAC, lighting, plug, server room).
  • Confidence-scored estimates per period.
  • Opt-in (computationally expensive); recommended for retrofit planning rather than live ops.

5.8 AI savings advisor

  • Inputs: KPIs, baselines, tariff, weather, occupancy, equipment performance (incl. CPMS).
  • Output: ranked list of recommendations with: scope (asset / zone / time-of-day), estimated annual savings (kWh + currency + carbon), implementation difficulty (1–5), payback (months), confidence (low/medium/high).
  • Each recommendation links back to the source data and the suggested workflow (e.g., "raise CHWS setpoint by 1°C between 22:00–06:00; expected $X/year").

5.9 Demand response

  • Sheddable-load library (per asset / circuit, with sensitivity).
  • Curtailment plan templates.
  • Execution via Phase 7 workflow with safety gates.
  • M&V on the event vs baseline.

5.10 ESG reporting

Launch templates:

  • Monthly Utility Reconciliation (bill vs metered; line-item variance).
  • GHG Scope 1 + 2 Annual Report (location + market basis).
  • Vision 2050plus Alignment (Zero Carbon / Zero Waste / Zero Impact pillars).
  • TCFD / GRI / SASB / CDP Starter Packs (data exports aligned to each framework).
  • M&V Report per project (IPMVP Option B / C).
  • Energy Performance Certificate style summary per building.

All reports support PDF + XLSX export with full audit trail of source data.

6. Detailed Specifications

6.1 API surface (Phase 11 additions)

# Accounts, meters, tariffs
GET    /api/v1/ems/accounts
POST   /api/v1/ems/accounts
GET    /api/v1/ems/meters
POST   /api/v1/ems/meters
PATCH  /api/v1/ems/meters/:id
GET    /api/v1/ems/tariffs
POST   /api/v1/ems/tariffs

# Bills
POST   /api/v1/ems/bills                       (CSV/XLSX/PDF upload)
GET    /api/v1/ems/bills
POST   /api/v1/ems/bills/:id/reconcile

# KPIs
GET    /api/v1/ems/kpis?scope=building|tenant|portfolio&range=...

# Baselines & M&V
POST   /api/v1/ems/baselines                    (define & fit)
GET    /api/v1/ems/baselines/:id
POST   /api/v1/ems/baselines/:id/approve
POST   /api/v1/ems/mv/runs                      (project M&V)

# Carbon
GET    /api/v1/ems/carbon/factors
POST   /api/v1/ems/carbon/factors
GET    /api/v1/ems/carbon/report?year=...

# Forecasts & anomalies
POST   /api/v1/ems/forecast                     (consumption / demand / carbon)
GET    /api/v1/ems/anomalies
PATCH  /api/v1/ems/anomalies/:id

# Recommendations
POST   /api/v1/ems/ai/recommend
GET    /api/v1/ems/ai/recommendations
POST   /api/v1/ems/ai/recommendations/:id/accept-as-workflow

# NILM
POST   /api/v1/ems/nilm/run
GET    /api/v1/ems/nilm/results/:id

# Demand response
GET    /api/v1/ems/dr/profiles
POST   /api/v1/ems/dr/profiles
POST   /api/v1/ems/dr/events                    (create + execute)
GET    /api/v1/ems/dr/events/:id

# ESG reporting
GET    /api/v1/ems/reports/templates
POST   /api/v1/ems/reports/:templateId/run
GET    /api/v1/ems/reports/runs/:id

6.2 Permissions added

ems.read ems.write
ems.meter.read ems.meter.update ems.meter.commission
ems.tariff.read ems.tariff.update
ems.baseline.read ems.baseline.create ems.baseline.approve
ems.bill.upload ems.bill.reconcile
ems.carbon.read ems.carbon.factor.update
ems.forecast.run ems.anomaly.read ems.anomaly.update
ems.ai.run ems.ai.recommendation.accept
ems.nilm.run
ems.dr.read ems.dr.execute
ems.report.read ems.report.run ems.report.publish

6.3 Dashboard widgets (EMS)

  1. Live kW Tile (current demand)
  2. Today vs Baseline (mini chart)
  3. EUI Card
  4. Peak Demand Tracker
  5. Cost Today / Month-to-Date
  6. Carbon Today / Month-to-Date
  7. Tariff Block Indicator (which TOU block is active)
  8. Anomalies Open
  9. Top Savings Recommendations (3 cards)
  10. Renewable Share Donut
  11. Submeter Treemap (consumption by submeter)
  12. M&V Project Tracker
  13. ESG Reporting Status
  14. DR Event Live (when active)

6.4 Workflow templates (EMS)

  • Anomaly responsemeter anomaly Sev-2+ for 30 min → notify FM + create P3 work order with diagnostic chart.
  • Peak demand predictionpredicted peak > target → suggest curtailment plan; if pre-approved, execute DR event.
  • Daily energy digestdaily 07:00 → email FM lead with yesterday's kWh, cost, carbon, vs baseline.
  • Bill reconciliationbill uploaded → run reconciliation → flag variance > X% → notify finance.
  • Monthly ESG roll-upmonth-end → run ESG templates → publish to reporting library.
  • Savings recommendation accepteduser accepts AI rec → create workflow + work order from recommendation.

6.5 Brick Schema extension (EMS)

  • Electrical_Meter, Submeter, Gas_Meter, Water_Meter, Thermal_Meter, Steam_Meter, PV_Inverter, EV_Charger
  • Real_Power, Apparent_Power, Reactive_Power, Power_Factor, Energy, Demand, Voltage, Current, Frequency
  • Tariff_Schedule, Time_Of_Use_Block, Demand_Window, Emission_Factor
  • Holiday_Calendar, Heating_Degree_Day, Cooling_Degree_Day

7. Implementation Tasks

Epic 11.A — EMS data model

  • 11.A.1 Account / meter / submeter / tariff / bill / baseline / carbon-factor / DR-profile models.
  • 11.A.2 Brick extensions seeded.
  • 11.A.3 Holiday and degree-day datasets (per region).

Epic 11.B — Ingestion

  • 11.B.1 Meter ingestion via existing connectors (Modbus, BACnet, MQTT, REST) — reuse Phase 3.
  • 11.B.2 Utility-bill upload wizard (CSV / XLSX / PDF with optional OCR).
  • 11.B.3 Submeter hierarchy auto-discovery.

Epic 11.C — KPI engine

  • 11.C.1 Live demand + energy + cost + carbon.
  • 11.C.2 Period rollups (15-min / hourly / daily / monthly / annual).
  • 11.C.3 EUI computation against floor-area.

Epic 11.D — Tariff engine

  • 11.D.1 Schedule + TOU + demand + capacity + fixed.
  • 11.D.2 Holiday-aware.
  • 11.D.3 Real-time cost compute alongside consumption.

Epic 11.E — Baseline & M&V

  • 11.E.1 Regression model fit (weather + occupancy + DOW + holiday).
  • 11.E.2 IPMVP Option B & C templates.
  • 11.E.3 Statistical uncertainty (R², CV(RMSE), NMBE).
  • 11.E.4 Approval flow.

Epic 11.F — Carbon engine

  • 11.F.1 Emission-factor store (regional + supplier).
  • 11.F.2 Scope 1 + 2 (location + market) computation.
  • 11.F.3 Annual report + audit trail.

Epic 11.G — Forecasting + anomalies

  • 11.G.1 Consumption forecaster (gradient-boosted; LSTM as option).
  • 11.G.2 Anomaly detection ensemble.
  • 11.G.3 AI classifier for anomaly cause.

Epic 11.H — Savings advisor

  • 11.H.1 LLM agent + structured output.
  • 11.H.2 Payback estimator.
  • 11.H.3 Convert recommendation → workflow.

Epic 11.I — NILM

  • 11.I.1 Disaggregation models (HVAC / lighting / plug / server).
  • 11.I.2 Opt-in run + UI for results.

Epic 11.J — Demand response

  • 11.J.1 Sheddable-load library.
  • 11.J.2 Curtailment plan template.
  • 11.J.3 Event execution via workflow + M&V on event.

Epic 11.K — ESG reporting

  • 11.K.1 Template engine (YAML) — reuse Phase 4 reporting.
  • 11.K.2 Launch templates (§5.10).
  • 11.K.3 Evidence pack export.

Epic 11.L — Widgets, workflows, dashboards

  • 11.L.1 Register EMS widgets (§6.3).
  • 11.L.2 Register workflow templates (§6.4).
  • 11.L.3 Launch dashboard templates: Energy Ops, Sustainability Exec, Site Manager, ESG Auditor.

8. Acceptance Criteria

  • AC11.1 — Meter ingestion live for at least one electric, one gas, one water, one thermal source against KTC fixture.
  • AC11.2 — Live demand tile updates within 5 s of meter source.
  • AC11.3 — Tariff computation matches manual spreadsheet for a sample bill to within ±1%.
  • AC11.4 — Baseline regression model achieves CV(RMSE) ≤ 10% on a representative building.
  • AC11.5 — Anomaly detection flags ≥ 80% of seeded synthetic anomalies with FP rate < 10%.
  • AC11.6 — Forecast MAPE ≤ 10% on day-ahead consumption against fixture data.
  • AC11.7 — Carbon Scope 2 (location + market) annual report reconciles against external benchmark within ±2%.
  • AC11.8 — ESG monthly utility reconciliation produces a downloadable PDF with full evidence.
  • AC11.9 — AI savings advisor returns ≥ 5 recommendations on the KTC fixture, each with payback + confidence; user can accept one and trigger a workflow.
  • AC11.10 — DR event executes in test environment (simulated load shed) with M&V calculated against baseline.

9. Test Requirements

  • Unit: ≥80% on KPI / tariff / baseline / carbon engines.
  • Integration: meter ingestion, bill reconciliation, baseline approval, DR event end-to-end.
  • e2e: full ESG report run on KTC fixture; AI recommendation → workflow path.
  • Statistical: baseline + forecast accuracy thresholds enforced in test suite.
  • Compliance: audit trail completeness check for ESG outputs.

10. Documentation Requirements

  • docs/ems/overview.md
  • docs/ems/meters_and_ingestion.md
  • docs/ems/kpis.md
  • docs/ems/tariffs.md
  • docs/ems/baseline_and_mv.md (IPMVP)
  • docs/ems/carbon_accounting.md (Scope 1/2/3, location vs market)
  • docs/ems/forecasting.md
  • docs/ems/anomaly_classification.md
  • docs/ems/nilm.md
  • docs/ems/demand_response.md
  • docs/ems/esg_reporting.md
  • ADR-027: EMS data model
  • ADR-028: Baseline model class (regression vs ML; IPMVP fit)
  • ADR-029: NILM library / approach

11. Sign-off Criteria (Gate G11)

  • All Acceptance Criteria met.
  • Live demo on KTC fixture (or staging with seeded utility data).
  • Energy SME review of baseline, M&V, carbon engine.
  • EMS Lead, AI Lead, Engineering Lead, Product Owner sign _gates/Gate_G11_signoff.md.
  • Tagged phase-11-v1.0.

12. Risks & Mitigations

RiskLIMitigation
Utility data quality is poor (gaps, jumps)43Gap-filling rules + transparent imputation + flag in reports.
Tariff complexity (deregulated markets, riders)33Modular tariff DSL; library of common structures; manual override per account.
Emission factors change mid-year32Time-versioned factor set; re-run reports with versioned factors.
Baseline drift (operating-condition changes)33Periodic baseline review workflow; threshold-based alerts.
AI recommendation seen as advisory only — adoption low33Acceptance flow that converts directly to workflow + work order.
OT control via DR event causes operational issue15Pre-approval flow + circuit breaker + revert on anomaly.
ESG audit asks for evidence not captured24Every report stores immutable evidence pack; reviewed by audit-friendly checklist before launch.