Skip to content

v0.9.0 - Unified grid-following and grid-forming BESS control

Latest

Choose a tag to compare

@mohammadrezwankhan mohammadrezwankhan released this 28 Jul 13:48
· 5 commits to main since this release

Unified grid-following and grid-forming BESS control

This release adds an executable, programmatically generated Simulink reference for unified grid-following/grid-forming battery energy storage control. It is a transparent educational research translation of Sadeghkhani et al., IECON 2022—not a numerically exact paper reproduction or a qualified plant controller.

Included

  • explicit dq current/filter-equivalent averaged plant and 10 MVA, 690 V, 50 Hz parameter basis
  • eight-state supervisory controller covering grid following, island preparation, grid forming, island support, synchronization, reconnection, recovery, and fault-safe operation
  • current-circle limiting, anti-windup, synchronization interlocks, finite invalid-measurement handling, and deterministic transition logic
  • idempotent Simulink builder plus a ready-to-open generated bess_unified_control.slx in the downloadable package
  • requirements, source and assumption ledgers, traceability matrix, equations, tuning, reproduction, limitations, original diagrams, and validation plots

Verified evidence

  • Release commit: a77d8cda99204b197e479d11a10c069ea13995de
  • MATLAB: R2026a Update 4
  • Required products: MATLAB and Simulink
  • Baseline repository checks retained: 17
  • Release repository checks: 18/18
  • New focused BESS tests: 31/31
  • Validation scenarios: 8/8
  • Code Analyzer: 0 messages across 31 MATLAB files
  • Default-branch CI: https://github.com/mohammadrezwankhan/matlab-simulink-energy-lab/actions/runs/30364739430
  • Package SHA-256: 9B009AD23F02BBEFD238F22ABF65A1C878BF2261CE3E46686C191FD9A1EEE006

Reproduce

addpath('examples/bess-unified-control');
run_all_checks(true);
generate_bess_validation_evidence('a77d8cda99204b197e479d11a10c069ea13995de');

Build the disposable model from source:

addpath('examples/bess-unified-control');
modelPath = build_bess_unified_control_model();

Source boundary and assumptions

Primary publication: https://doi.org/10.1109/IECON49645.2022.9968382

The publication does not disclose a complete parameter set, all controller equations, plant/solver details, transition timing, synchronization gates, limits, or initial conditions. Missing details are centralized and labeled PROJECT_ASSUMPTION; the VSG/swing/governor variant is explicitly excluded. See requirements/source-ledger.csv, requirements/assumptions.md, and docs/limitations.md before reuse.

Safety

This artifact is an educational engineering reference. It is not a protection system, grid-code certification model, hardware qualification, or substitute for project-specific validation.