Difference between revisions of "PAB"

From wiki.netio-products.com
Jump to navigation Jump to search
Line 5: Line 5:
 
There are two types of PAB available:
 
There are two types of PAB available:
  
# '''RANGE''' - Evaluation YES/NO (true/false)
+
# '''RANGE''' - Evaluation YES/NO (TRUE/FALSE)
 
# '''ZONE''' - Evaluation using specified intervals   
 
# '''ZONE''' - Evaluation using specified intervals   
  
Line 18: Line 18:
  
 
== PAB - RANGE ==  
 
== PAB - RANGE ==  
True/False-based evaluation. If the monitored value is in specified interval for a time period defined in `timeHysteresis`, PAB evaluates as `True`. Otherwise it evaluates as `False`.
+
True/False-based evaluation. If the monitored value is in specified interval for a time period defined in <code>timeHysteresis</code>, PAB evaluates to <code>TRUE</code>. Otherwise it evaluates to <code>FALSE</code>.
  
 
=== Structure ===
 
=== Structure ===
Line 51: Line 51:
  
 
== PAB - ZONE ==
 
== PAB - ZONE ==
Zone-based evaluation. 1 or more zones can be set. Zones are divided using the values specified in the `thresholds` variable.
+
Zone-based evaluation. 1 or more zones can be set. Zones are divided using the values specified in the <code>thresholds</code> variable.
 
Monitored value must be present in defined interval for amount of time defined here. The PAB condition is evaluated as a number (integer) equal to the interval order.
 
Monitored value must be present in defined interval for amount of time defined here. The PAB condition is evaluated as a number (integer) equal to the interval order.
  
Line 83: Line 83:
  
 
== Examples ==
 
== Examples ==
The condition evaluates to `True` immediately as the current value appears between 100 and 200 mA
+
The condition evaluates to <code>TRUE</code> immediately as the current value appears between 100 and 200 mA
<code>
+
<nowiki>
 
{
 
{
 
   "type": "RANGE",
 
   "type": "RANGE",
Line 91: Line 91:
 
   "upperBound": 200,
 
   "upperBound": 200,
 
   "timeHysteresis": 0
 
   "timeHysteresis": 0
}
+
}</nowiki>
</code>
 
  
The condition evaluates to `True` when the current value is between 100 and 200 mA for 5s.
+
----
  
<code>
+
The condition evaluates to <code>TRUE</code> when the current value is between 100 and 200 mA for 5s.
{"type": "RANGE",
+
 
"source": "OUTPUTS/1/CURRENT",
+
<nowiki>
"lowerBound": 100,
+
{
"upperBound": 200,
+
  "type": "RANGE",
"timeHysteresis": 5}
+
  "source": "OUTPUTS/1/CURRENT",
</code>
+
  "lowerBound": 100,
 +
  "upperBound": 200,
 +
  "timeHysteresis": 5
 +
}</nowiki>
 +
 
 +
----
  
 
The condition is evaluated according to the specified zones as soon as the current value is in one of the zones for 10s.
 
The condition is evaluated according to the specified zones as soon as the current value is in one of the zones for 10s.
 
  
 
Eg: If the current is 130mA for at least 10s, the condition is evaluated as 2 (zone number).
 
Eg: If the current is 130mA for at least 10s, the condition is evaluated as 2 (zone number).
  
<code>
+
<nowiki>
 
{
 
{
 
   "type": "ZONES",
 
   "type": "ZONES",
Line 120: Line 123:
 
   ],
 
   ],
 
   "timeHysteresis": 10
 
   "timeHysteresis": 10
}
+
}</nowiki>
</code>
 

Revision as of 09:27, 20 October 2021

The PAB (Power Analyzing Block) define sets of conditions for measured variables (current, voltage, S0 pulses etc.). Various rules can be set based on these conditions. Rules can perform actions such as sending alarm to the Cloud service, restarting outputs, etc. The PAB condition output is also available for use in selected protocols.

Types

There are two types of PAB available:

  1. RANGE - Evaluation YES/NO (TRUE/FALSE)
  2. ZONE - Evaluation using specified intervals

Each type uses specific variables and is described in detail below.

PABs can work with the specified quantities:

  • Current: OUTPUTS/1/CURRENT [mA]
  • Load: OUTPUTS/8/LOAD [W]
  • Energy: OUTPUTS/4/POWER [Wh]
  • Output no. 1 state: OUTPUTS/1/STATE [int 0/1]

General structure for defining a variable is: <INPUT/OUTPUT>/ID/<monitored variable>

PAB - RANGE

True/False-based evaluation. If the monitored value is in specified interval for a time period defined in timeHysteresis, PAB evaluates to TRUE. Otherwise it evaluates to FALSE.

Structure

Variable Value Description
type RANGE PAB type
source OUTPUTS/x/(LOAD/CURRENT/POWER)
INPUTS/x/STATE
The monitored variable. x indicates input / output number.
timeHysteresis int [s] Monitored value must be present in defined interval for amount of time defined here.

Eg: If the time hysteresis is equal to 5, monitored value must be within a defined interval for at least 5s. Only then it will be evaluated.

lowerBound int lower bound of the monitored value
upperBound int upper bound of the monitored value

PAB - ZONE

Zone-based evaluation. 1 or more zones can be set. Zones are divided using the values specified in the thresholds variable. Monitored value must be present in defined interval for amount of time defined here. The PAB condition is evaluated as a number (integer) equal to the interval order.

Eg. At two specified intervals, the PAB value can be 0, 1, or 2.

Structure

Variable Value Description
type ZONE PAB type
source OUTPUTS/x/(LOAD/CURRENT/POWER)
INPUTS/x/STATE
The monitored variable. x indicates input / output number.
timeHysteresis int [s] Monitored value must be present in defined interval for amount of time defined here.

Eg: If the time hysteresis is equal to 5, monitored value must be within a defined interval for at least 5s. Only then it will be evaluated.

thresholds list[int] lower-bounds of individual zones intervals

Examples

The condition evaluates to TRUE immediately as the current value appears between 100 and 200 mA

{
  "type": "RANGE",
  "source": "OUTPUTS/1/CURRENT",
  "lowerBound": 100,
  "upperBound": 200,
  "timeHysteresis": 0
}

The condition evaluates to TRUE when the current value is between 100 and 200 mA for 5s.

{
  "type": "RANGE",
  "source": "OUTPUTS/1/CURRENT",
  "lowerBound": 100,
  "upperBound": 200,
  "timeHysteresis": 5
}

The condition is evaluated according to the specified zones as soon as the current value is in one of the zones for 10s.

Eg: If the current is 130mA for at least 10s, the condition is evaluated as 2 (zone number).

{
  "type": "ZONES",
  "source": "OUTPUTS/2/CURRENT",
  "thresholds": [
    50,
    100,
    150,
    200
  ],
  "timeHysteresis": 10
}