MIT DATEN MEHR BEWEGEN.

SNCFilter

Funktionsbeschreibung und Anwendung

Der Significant-Numeric-Change-Filter (SNCFilter) dient der Reduzierung der Datenlast durch schwankende Sensor- oder Analogwerte. Der Filter sendet nur eine Nachricht, wenn:

  • Der Daten Key der zu filternden Variablen unter Thresholds konfiguriert ist

  • UND der zugehörige Value ggü. der zuletzt weitergeleiteten Nachricht eine Änderung betraglich größer/gleich des konfigurierten Thresholds hat.

Beim erstmaligen Eintreffen eines neuen Parameters, d.h. der Parameter ist im internen Cache noch nicht vorhanden, wird dieser angelegt und zukünftig immer durchgeleitet.

Folgende Parameter sind relevant für die Filterfunktion:

  • Value: aktueller Wert der Variable in der Eingangsnachricht

  • ValueCache: letzter durchgereichter Wert der Variable

  • Threshold: konfigurierte Schwelle

Abbildung 1 veranschaulicht das Verhalten des Filters.

snc filter scetch
Abbildung 1. Skizze SNC-Filterverhalten

Die in folgender Tabelle erläuterten Parameter sind Abbildung 2 zu finden.

Tabelle 1. Konfigurationsparameter SNCFilter-Block
Parameter Beschreibung

Name

Name der Blockinstanz.

Into

Name der Blockinstanz des Folgeblocks an welchen Ausgabenachrichten weitergeleitet werden sollen.

Thresholds - Name

Name des Daten Key (Variable) in der eingehenden Nachricht. Zugriff nur auf die oberste Objektebene im JSON. Die Variable muss einen numerischen Wert (Ganz- oder Fließkomma Typen) haben.

Thresholds - Value

double oder integer; Numerische Schwelle (einseitig) der Variable.
Genauigkeitsverlust: Die Variable kann ein Bereich von knapp 2*Threshold überschreiten, ohne ein Nachrichten-Update aus Ausgang.

Overwrite Header Scope with

string; optional. Name für neue Scope Bezeichnung, zum Überschreiben des Header-Feldes Scope. Option ist inaktiv, wenn String nicht vorhanden oder leer ist.

Issue Full Model

boolean, default=true;
IssueFullModel=false: Sendet jede Änderung einer Variablen separat in einer Nachricht (mit timestamp) an den Broker. Es entstehen ggf. mehrere Nachrichten aus einer einlaufenden Nachricht, wenn mehrere konfigurierte Schwellen überschritten wurden.
IssueFullModel: true: Sendet die gesamte einlaufende Nachricht mit allen Parametern, sobald eine Schwelle überschritten wurde.

Beispielkonfiguration

Folgende Abbildung zeigt eine beispielhafte Konfiguration des SNCFilter.

snc
Abbildung 2. Konfiguration des SNCFilter-Block