Difference between revisions of "PAB"

From wiki.netio-products.com
Jump to navigation Jump to search
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
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 (Power Analyzing Block) is a function with periodically evaluated sets of conditions for measured variables (current [mA], voltage, S0 pulses etc.). Based on each PAB state one or several RULEs can be executed. Each [https://wiki.netio-products.com/index.php?title=Rules '''Rule'''] can perform several actions (Set Output, Short Off (restart) output, Toggle output or send Alarm state to the NETIO Cloud service. Based on this Alarm state can NETIO Cloud send email to defined recipient.
The PAB condition output is also available for use in selected protocols.
+
All PABs are listed in the JSON protocol wit their current states. It can be used by 3rd party software.  
  
There are two types of PAB available:  
+
== Types ==
1) RANGE - Evaluation YES/NO (true/false) 
+
There are two types of PAB available:
2) ZONE - Evaluation using specified intervals 
 
Each type uses specific variables and is described in detail below. 
 
  
PABs can work with the specified quantities:
+
# '''RANGE''' - Function state = '''YES/NO''' (TRUE/FALSE) - For example: O1 current <200 mA - 1000 mA>.
  * Current: OUTPUTS/1/CURRENT **[mA]**
+
# '''ZONE''' -  Function state = '''One of predefined value intervals''' - For example: O1 current = 1 (0 = <0-100mA>, 1 = <100-500mA>, 2 = <501-16000mA>)
  * 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 as `True`. Otherwise it evaluates as `False`.
 
  
### Structure
+
PABs can work with the specified quantities:
{| class="wikitable"
+
* Current: OUTPUTS/1/CURRENT '''[mA]'''
|-
+
* Load: OUTPUTS/2/LOAD '''[W]'''
! Variable
+
* Energy: OUTPUTS/4/POWER '''[Wh]'''
! Value
+
* Output No. 8 state: OUTPUTS/8/STATE '''[int 0/1]'''
! Description
+
General structure for defining a variable is: <INPUT/OUTPUT>/ID/<monitored variable>
|-
 
| type
 
| RANGE
 
| PAB type
 
|-
 
| source
 
| OUTPUTS/**x**/(LOAD/CURRENT/POWER) <br> 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.
 
 
 
### Struktura 
 
| Proměnná | Hodnoty | Popis |
 
| ------ | ------ | ------ |
 
| type | ZONE | typ PAB |
 
| source | OUTPUTS/**x**/(LOAD/CURRENT/POWER) <br> INPUTS/**x**/STATE |  Měřená hodnota, kterou sledujeme. **x** udává číslo vstupu/výstupu.|
 
| timeHysteresis | int | [s] Časový interval, ve kterém se musí nacházet sledovaná hodnota. Př.: Pokud je hystereze rovná 5, musí se sledovaná hodnota nacházet v definovaném intervalu (intervalech) alespoň 5s. Až následně dojde k jejímu vyhodnoceí. |
 
| thresholds | list[int] |  seznam spodních hranic intervalů pro přechod mezi zónami
 
 
 
## Příklady
 
Podmínka se vyhodnotí jako **true** okamžítě, jakmile se hodnota proudu objeví mezi 100 a 200 mA.
 
```
 
{
 
  "type": "RANGE",
 
  "source": "OUTPUTS/1/CURRENT",
 
  "lowerBound": 100,
 
  "upperBound": 200,
 
  "timeHysteresis": 0
 
 
 
}
 
``` 
 
Podmínka se vyhodnotí jako **true** v případě, že se hodnota proudu bude nacházet mezi 100 a 200 mA po dobu 5s.
 
```
 
{
 
  "type": "RANGE",
 
  "source": "OUTPUTS/1/CURRENT",
 
  "lowerBound": 100,
 
  "upperBound": 200,
 
  "timeHysteresis": 5
 
 
 
}
 
``` 
 
 
 
Podmínka se vyhodnotí dle stanovených zón v případě, že se hodnota proudu bude nacházet v jedné ze zón po dobu 10s. 
 
.: Pokud bude proud 130mA po dobu alespoň 10s, vyhodnotí se podmínka jako 2 (číslo zóny).
 
```
 
{
 
  "type": "ZONES",
 
  "source": "OUTPUTS/2/CURRENT",
 
  "thresholds": [
 
    50,
 
    100,
 
    150,
 
    200
 
  ],
 
  "timeHysteresis": 10
 
}
 
```
 
 
 
## Otázky / Připomínky
 
* Digital inputs - states?
 

Revision as of 12:40, 18 November 2021

The PAB (Power Analyzing Block) is a function with periodically evaluated sets of conditions for measured variables (current [mA], voltage, S0 pulses etc.). Based on each PAB state one or several RULEs can be executed. Each Rule can perform several actions (Set Output, Short Off (restart) output, Toggle output or send Alarm state to the NETIO Cloud service. Based on this Alarm state can NETIO Cloud send email to defined recipient. All PABs are listed in the JSON protocol wit their current states. It can be used by 3rd party software.

Types

There are two types of PAB available:

  1. RANGE - Function state = YES/NO (TRUE/FALSE) - For example: O1 current <200 mA - 1000 mA>.
  2. ZONE - Function state = One of predefined value intervals - For example: O1 current = 1 (0 = <0-100mA>, 1 = <100-500mA>, 2 = <501-16000mA>)


PABs can work with the specified quantities:

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

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