PPC Portal — iEnergia
Loading…
Phase progress
Immediate next actions
Architecture Modes
Three deployment topologies for direct and remote PoI meter configurations.
Control timing classes
| Class | Use case | Target period | Notes |
|---|---|---|---|
| Fast control | Local PoI feedback, inverter dispatch | 100 ms – 1 s | Only if network and devices support it |
| Normal control | PMGD active/reactive dispatch | 1 – 5 s | Realistic for Modbus TCP plants |
| Slow correction | Remote meter reconciliation, PRMTE, reporting | 10 s – 15 min | Not for fast closed-loop control |
| Evidence/reporting | Compliance, trends, audit | 1 min – daily | Raw + aggregated stored |
Data quality model
| Flag | Meaning | Control action |
|---|---|---|
| GOOD | Fresh, valid measurement | Normal control allowed |
| STALE | Age > warn threshold, value may be old | Freeze or reduce setpoint |
| BAD | Protocol error, impossible value | Fallback mandatory |
| ESTIMATED | Derived from model, not measured | Shadow mode only |
| MANUAL | Operator-entered value | Manual override active |
Deployment modes
| Mode | Description | Writes to devices? |
|---|---|---|
| Simulator | Fake meter + fake inverter fleet | Simulator only |
| Read-only live | Live reads, no device writes | Never |
| Shadow control | Computes setpoints but does not write | Never |
| Limited pilot | Writes to allowlisted devices, operator approved | Yes, guarded |
| Production | Full control under accepted design | Yes, audited |
Hardware Tiers
Three-tier selection: lab validation → industrial pilot → utility-grade production.
Selection guidance
Step 1: Start with Tier 1 (lab PC) for simulator, driver development, and dashboard proof-of-concept.
Step 2: Move to Tier 2 (industrial IPC) for first read-only field pilot. Best ROI for iEnergia budget-constrained projects.
Step 3: Tier 3 (utility-grade) only when distributor/CEN demands formal support, response-time evidence, or redundancy.
Compliance Matrix
PMG/PMGD Chile regulatory status — refresh required from official sources before finalizing design.
Risk Register
Technical, regulatory, cybersecurity, and field implementation risks.
Test Scenarios
Simulator scenario results — generated by scripts/run_scenarios.py. Simulator only; no hardware touched.
Link Quality — SITR < 5 s
Remote meter link characterization vs the NTSyCS Art. 4-16 < 5 s ceiling. Go/no-go evidence behind ADR-007 (edge relay vs direct VPN).
max_effective_age is the longest the PPC goes without a fresh GOOD value — the metric that maps to the < 5 s SITR ceiling. At a healthy link both VPN and edge relay pass. Under a degraded link the direct VPN poll fails the availability gate while the edge relay holds, because it samples the meter locally and buffers — the WAN only delays delivery, it does not age the measurement.
PMG Llancay — first real plant (NUP 2438)
9 MW, CGE / S-E El Peumo. Meter (ION8650) ~13 km away at the substation. CEN ensayos in simulation.
Plant
PoI meter
SITR
CEN ensayos (cronograma de ensayos)
Covers the CEN test schedule: 8-point PQ capability curve, voltage ±3% step (high/med/low load),
reactive ±1 Mvar step, power-factor step, and the 20%/min active-power ramp. Voltage steps accept
reach-target or saturate-at-capability (±3% needs ~±6 Mvar, available only at low load).
Simulator only — see llancay/TEST_CONGRUENCE_CEN.md.
Architecture Decision Records
Key decisions with rationale — not to be overridden without an updated ADR.
Coordinator Letters Watch
CEN/Coordinador Eléctrico Nacional communications monitored for emerging PPC requirements.
Last run
Signals found
Status
What to monitor
| Source | Topic | Why it matters |
|---|---|---|
| cartas.coordinador.cl | PMGD control, consigna, reducción inyección | Active curtailment commands may become mandatory |
| coordinador.cl daily reports | CDC requesting PMGD injection reduction | PPC must log, apply, and prove compliance |
| CEN SSCC reports / workshops | Verification letters, future performance tests | IBR/frequency/voltage requirements may expand |
| CEN EDAC/CDT/IBR studies | Inverter-based resource performance | PPC feature requirements may evolve |
| Distributor letters | Project-specific monitoring/control requirements | Plant-specific conditions may add PPC obligations |
PPC design requirements from watch
| Feature | Reason | Status |
|---|---|---|
| External command source abstraction | CDC, distributor, local HMI, schedule | Implemented |
| Command lifecycle logging | Received → validated → executing → completed | Implemented |
| Configurable ramp targets | Plant-specific, not hardcoded | Implemented |
| Fallback with priority hierarchy | Link failure, bad quality, emergency stop | Implemented |
| Evidence CSV/JSON generation | Prove response time, ramp, command compliance | Implemented |
| Frequency/voltage support modes | Future IBR/SSCC requirements | Placeholder |
Roadmap
8 phases from foundation to production standard. Each phase has defined go/no-go gates.
Go/no-go gates summary
| Phase | Gate |
|---|---|
| Phase 0 | Official sources recorded, unknowns listed, coordinator letters checked |
| Phase 1 | Simulator passes step, ramp, dropout, stale-data, alarm tests |
| Phase 2 | No hardcoded registers in core; write gate enforced; driver tests pass |
| Phase 3 | Link quality evidence exists; remote loop stability simulated with latency |
| Phase 4 | Compliance matrix current; evidence can be generated from logs |
| Phase 5 | 1–2 weeks stable read-only logs; no unexplained outages |
| Phase 6 | Operator approval; emergency stop validated; successful test report |
| Phase 7 | FAT/SAT package signed; maintenance manual delivered |
Deployment Status
Dashboard and PPC deployment tracking.
Dashboard domain
Deploy approved
Pre-deploy checklist
- Run
wrangler whoamito confirm Cloudflare account - Confirm
ppc.portal-ienergia.livedomain in Cloudflare dashboard - Run
npm run devincloudflare-worker/and verify local preview - Review
status.jsoncontent for accuracy - Obtain explicit deploy approval from project owner
- Run
npx wrangler deployfromcloudflare-worker/ - Verify live site at
ppc.portal-ienergia.live
Update workflow
Run python scripts/generate_status_json.py to regenerate cloudflare-worker/public/status.json from the markdown planning files.
Then re-deploy with npx wrangler deploy from cloudflare-worker/.
Optionally automate with a GitHub Actions workflow on push to main.