Core Real-Time Calculations

Prev Next

The Core Real-Time Calculations template contains calculations for inverter state and environment conditions. Details on the Point Names, Descriptions, Types, Expressions (if applicable), and Interval (if applicable) are below. Note: Scale Equations and Online Calculations are evaluated in Real-Time.

Required for Bazefield Core Dashboard functionality

Optional for common additional data streams/sources

Name

Description

Type

Expression/Scale Equation

Int.

Available

Real time availability (1=available, 0=unavailable).

Scale Equation

EVENT-BadActivePower

Communication Alert if the Active Power measurement has not reported or reporting bad/invalid data. 0=good, 1=bad/stale

Scale Equation

EVENT-BadVoltage

Communication Alert if the Voltage measurement has not reported or reporting bad/invalid data. 0=good, 1=bad/stale

Scale Equation

EVENT-CurtailmentFlag

Calculated curtailment flag, pulls curtailment flag(s) from the site level PPC(s) to determine if the site is operating under a curtailment signal.

Interval Calc

{Sum(V(ExpandPointKeys(JsvStringArrayToArray(GetAttributeAsString("referencePPCs",GetObjectKey())),"CurtailmentFlag"))) > 0 ? 1 : 0}

120

EVENT-DaylightHours

Timestamp is between sunrise and sunset (1 = TRUE, 0 = FALSE)

Interval Calc

{If(IsTimeBetweenSunSetAndSunRise({{getObjectAttribute(latitude)}},{{getObjectAttribute(longitude)}},-600),0,1)}

300

EVENT-Generating

Event if the machine is producing positive active power. 0=no power/false, 1=producing positive active power/true

Scale Equation

EVENT-LowIrradiancePOA

Scale equation point looking at reference irradiance of the inverter. 1 if irradiance is below threshold on inverter

Interval Calc

{If(TagTimeAvg([@Irradiance]:[Double.NaN])<{{getObjectAttribute(irradianceThreshold)}},1,0)}

300

EVENT-LowIrradiancePOA-Day

If Realtime reference POA Irradiance is below user defined threshold during expected daylight hours (1=TRUE, 0 = FALSE)

Interval Calc

{If($[@EVENT-LowIrradiancePOA]==1 && $[@EVENT-DaylightHours]==1,1,0)}

300

EVENT-LowIrradiancePOA-Night

If realtime reference POA Irradiance is below user defined threshold during expected night hours (1=TRUE, 0 = FALSE)

Interval Calc

{If($[@EVENT-LowIrradiancePOA]==1 && $[@EVENT-NightHours]==1,1,0)}

300

EVENT-NightHours

Timestamp between sunset and sunrise (1 = TRUE, 0 = FALSE))

Interval Calc

{If(IsTimeBetweenSunSetAndSunRise({{getObjectAttribute(latitude)}},{{getObjectAttribute(longitude)}},-600),1,0)}

300

EVENT-NonGenDay-LowIrr

Inverter is not generating, during period of low irradiance during the day (1=TRUE, 0=FALSE)

Interval Calc

{If($[@EVENT-Generating]==0 && $[@EVENT-LowIrradiancePOA-Day]==1,1,0)}

300

EVENT-NonGenNight-LowIrr

Inverter is not generating, during period of low irradiance during the night (1=TRUE, 0=FALSE)

Interval Calc

{If($[@EVENT-Generating]==0 && $[@EVENT-LowIrradiancePOA-Night]==1,1,0)}

300

EVENT-NotGenerating

If it's daytime and the inverter is not generating, and it's not due to low irradiance.

Interval Calc

{If($[@EVENT-DaylightHours]==1 && $[@EVENT-Generating]==0 && $[@EVENT-NonGenDay-LowIrr]==0,1,0)}

300

MaxCapacityAvailable

Max power available if the inverter is available (IEC Operation State 2,3,4,5) then equal to the rated power attribute.

Scale Equation

MaxCapacityUnavailable

Power that is unavailable due to the inverter being down (IEC Operation State 1 or 6) then equal to the rated power attribute.

Scale Equation

MaxCapacityUnknown

Power that is unaccounted for due to the inverter being in unknown operation state. IEC Operation State = 99 then equal to the rated power attribute.

Scale Equation

Reporting

Boolean describing if the inverter is communicating based off of CommunicationState tag, 0=bad comms, 1=good comms

Scale Equation

Running

Inverter is running (IEC-OperationState = 4)

Scale Equation

Standby

Inverter is in Standby (IEC-OperationState = 2)

Scale Equation

Stopped

Inverter is stopped (IEC-OperationState = 1)

Scale Equation

Unavailable

Boolean describing if the inverter is unavailable (IEC-OperationState = 1,6) 1=unavailable, 0=available.

Scale Equation

Unknown

Boolean describing if the inverter state is unknown (IEC-OperationState = 99) 1=unknown state, 0=known state.

Scale Equation