Posted on

# NRG Divert Algorithm

So NRG Divert needs to work as reliably as possible and what work for our use cases new use cases may not work ! So the CUMonitor will allow a record  of the results and a qualitative assessment to be made of those results.

We will publish on our website what Algorithms we are using and you should be able to see the results here

## CUMonitor

The NRG Divert relies on a CU Monitor to record the two current readings taken from the Consumer Unit feeds. It makes an assessment of the likelihood that the Grid connection is indicating that the CU is exporting to the Grid.

## NRG Divert Residual (aggregate current consumption)

NRGDivert calculates the current consumption of the house simply by subtracting the Grid current from the PV generated. Obviously this is only worth doing if the CU is observed to be exporting.

This is then assumed to be a stable value and the remaining “spare” energy is calculated by subtracting the Residual from the total PV generated

The first cut of the NRGDivert software assumes the residual value does not change while it controls the load.

## Spare energy and using it

So having calculated the “spare current” how to use it and only it is the next problem:

This is done be turning on a resistive load for some AC cycles every second.

Essentially every second the mains AC signal performs 50 cycles and by selectively turning the load on for these cycles you can consume this “spare energy”. Conveniently 50 cycles means that there are 100 half cycles to chose from every second.

Turning a load such as a Immersion heater on  without ensuring that zero current is flowing at the time would give rise to a very noisy electrical signal. So we can only do this as the voltage crosses the zero point to avoid this noise.

The Load is a known quantity (its Resistive load) so you know that the full current requirement will be presented when it is turn on.

This is a  power control solution known as cycle stealing. The consumed power is being monitored by CUMonitor  and we should be able to see this load appear as a change on the Grid Monitored value