🕵️Filter

The filter service offers a comprehensive selection of filters that can be applied to incoming data. These filters are designed to increase the quality and relevance of stored data by allowing only significant changes and important information to pass through. Data is stored in the database only if it has passed the filter, which means that the filter is applied to the value only after the calculation.

This ensures that only relevant data points are captured, thereby increasing the efficiency of data processing and storage.

Filters are applied to the value AFTER the calculation!

Supported filter types

1. Deadband filter (Deadband)

The Deadband filter stores values only if the value after the calculation differs significantly from the previous one. The change is defined by the following formula:

Formula:

Epsilon=Toleranz2(MaxMin100)\text{Epsilon} = \frac{\text{Toleranz}}{2} \cdot \left(\frac{\text{Max} - \text{Min}}{100}\right)

A new value is stored only if the absolute difference from the previous value is greater than or equal to Epsilon is:

Neuer WertVorheriger WertEpsilon∣Neuer Wert−Vorheriger Wert∣ ≥ \text{Epsilon}

Example:

  • Tolerance: 5 %

  • Maximum value: 100 °C

  • Minimum value: 0 °C

  • Epsilon:

Epsilon=52(1000100)=2.5\text{Epsilon} = \frac{5}{2} \cdot \left(\frac{100 - 0}{100}\right) = 2.5
  • Incoming values: 20 °C → 21.5 °C → 23 °C → 24.4 °C → 26 °C

  • Result:

    • 20 °C is stored (first value).

    • 21.5 °C is not stored because the change |21.5 - 20| = 1.5 < 2.5 is not sufficient.

    • 23 °C is stored because |23 - 20| = 3 ≥ 2.5

    • 24.4 °C is not stored because |24.4 - 23| = 1.4 < 2.5

    • 26 °C is stored because |26 - 23| = 3.0 ≥ 2.5


2. Moving average filter (Moving Average)

The Moving average filter does not store the original values, but rather the average of a defined number of consecutive values (window size).

How it works:

  • The filter collects values within a defined window.

  • Once the window size has been reached, the average of the values is calculated and stored.

  • The window is then shifted by one value, and the process is repeated.

Example:

  • Window size: 3 values

  • Incoming values: 12 V → 15 V → 18 V → 21 V → 24 V

Calculations:

Average of the first 3 values (12 V, 15 V, 18 V):

15+18+213=18V\frac{15 + 18 + 21}{3} = 18 \, \text{V}

Average of the next 3 values (18 V, 21 V, 24 V):

18+21+243=21V\frac{18 + 21 + 24}{3} = 21 \, \text{V}

Stored values: 15 V, 18 V, 21 V.


3. High-pass filter

The high-pass filter stores only values that are strictly higher than a specified limit. This is ideal for monitoring threshold exceedances.

Example:

  • Limit: 50 kW

  • Incoming values: 45 kW → 52 kW → 48 kW → 55 kW

  • Stored values: 52 kW, 55 kW


4. Low-pass filter

The low-pass filter stores only values that are strictly lower than a specified limit. This filter is useful for analyzing low values or complying with upper limits.

Example:

  • Limit: 30 ppm

  • Incoming values: 25 ppm → 35 ppm → 20 ppm → 30 ppm

  • Stored values: 25 ppm, 20 ppm


5. Band-pass filter

The band-pass filter stores only values that are within a defined range (band). The band is determined by a high and a low limit.

Example:

  • Band: 10 to 20 V

  • Incoming values: 9 V → 15 V → 25 V → 18 V

  • Stored values: 15 V, 18 V


6. OnChange filter

The OnChange filter stores values only when they are not equal to the previous value . This excludes redundant values, and only changes are recorded.

Example:

  • Incoming values: 100 l/h → 100 l/h → 105 l/h → 105 l/h → 110 l/h

  • Stored values: 100 l/h, 105 l/h, 110 l/h

Was this helpful?