boon-metrology 1.0
C-based Applications for Smart Grid
Loading...
Searching...
No Matches
Boon Metrology

Boon Metrology is a collection of use cases for deployment on residential power meters to perform the following functions:

  • Power Quality Monitoring: After training, give a health score 0-100% indicating whether the current metrology relationships comply with the training.
  • Dynamic Hosting Capacity (DHC): Learn normal relations of P,Q,and V to allow an estimate of the impact on V that will result from adding a PV generation source
  • PV Disaggregation: Determine the Active Power contribution of a Photovoltaic Voltage (PV) resource at the home
  • EV/Battery Disaggregation: Detect when an electric vehicle (EV) is charging and when a battery is charging or dischargine

Architecture

Block Diagram

boon_metrology.h/c: A pure C header and implementation to wrap the underlying C++ classes

boon_metrology.hpp/cpp: A C++ class containing specific functions for each use case

sample_boon_metrology_multithreaded.c: This example shows a sample two-thread usage boon-metrology.

  • PostMetrologyThead: Read metrology samples from 10 files Kalkitech provided and Posts them to the BoonMetrology object
  • main(): Construct a BoonMetrology object for all implemented use cases and show how to disaggregate a previously serialize BoonMetrology object from a memory buffer (this buffer can be read from a file if desired), get various analytics measured across the use cases, and serialize back to a memory buffer (the buffer can be written to a file if desired)

Usage

Create an instance of the BoonMetrology struct/object:

struct BoonMetrology *BM = ConstructBoonMetrology();

Use this struct object when calling subsequent C functions. For example,

PostMetrologySample(BM, &MS);

See ./examples folder.