inertia
is a Go package for real-time estimation of
a power system's inertia levels. It defines software interfaces
for ingesting and reporting data in real-time.
Unit commitment ("H-constant")-based estimation logic and data interfaces
are available in the inertia/uc
package. PMU-based estimation
methods are planned as future work.
System integrators can provide deployment-specfic data ingestion code (e.g., developed for use with a specific EMS or historian system) that conforms to the stated data interfaces for the desired estimation method. Once these input interfaces are implemented, ingested data can be automatically processed and reported out via the package's DataSink framework.
This package provides two off-the-shelf data output and visualization
modules in inertia/sinks/text
and inertia/sinks/web
, but
custom implementations of
the DataSink interface can also be used. Multiple DataSinks can be
associated with a single real-time data stream, allowing for reporting to
multiple outputs at the same time, for example logging to a text file while
also visualizing results in a web browser.