Zum Hauptinhalt springen

Ereigniszähler Modul

Beschreibung

Das "eventcounter" Modul bietet die Funktionalität die Zeitreihen von numerischen und booleschen Kanäle auszuwerten. Es können für einen Eingangskanal vom Benutzer ein oder mehrere Zähler definiert werden, die anhand von einem Ereignistypen und weiteren Parameter, folgende Ereignis zählen kann:

  • Über/Unterschreitung eines Grenzwertes bei numerischen Kanälen
  • Für boolesche Kanäle die Anzahl der Übergänge Low nach High, High nach Low oder Beides

Schnittstellen

  • smartCORE Kanäle
  • RPC Callbacks(für das "opticloud"-Modul)

JSON-Konfiguration

Im folgenden Abschnitt werden Beispiele für Konfigurationen zum Definieren von eigenen Zählern gelistet.

Beispielkonfiguration(minimal)

Eine minimale Konfiguration besteht nur aus der Angabe welche Eingangskanäle von einem Zähler ausgewertet werden soll.

{
"module": "eventcounter",
"factory": "eventcounter",
"config": {
"channels": [
{
"inputChannel": "Producer.BooleanChannel"
},
{
"inputChannel": "Producer.DoubleChannel"
},
{
"inputChannel": "Producer.IntChannel"
},
...
]
}
}

Beispielkonfiguration(maximal)

{
"module": "eventcounter",
"factory": "eventcounter",
"config": {
"pollingInterval": 1000,
"channels": [
{
"inputChannel": "Producer.FloatChannel",
"outputChannel": "Events.MyCounter",
"threshold": 13.5,
"eventType": "Falling",
"enableStartTimeChannel": true
},
...
]
}
}

Parameterliste

Globale Parameter

ParameternameErforderlichDatentypsinnvoller WertebereichDefaultBeschreibung
channelsJaArray[Zähler]--Liste von Definitionen aller Ereigniszähler. Siehe weiter unten.
pollingIntervalNeinNumber[100 - 10000 ]500Konstantes Zeitintervall(ms), nachdem die Zähler den zugewiesenen Eingangskanal nach verfügbaren Werten abfragen.

Zählerstruktur

Allgemeine Zählerparameter

ParameternameErforderlichDatentypsinnvoller WertebereichDefaultBeschreibung
inputChannelJaStringAny-Eingangskanal für den Ereigniszähler.
outputChannelNeinStringAny*Name des Zählerkanals aus dem der letzte Zählerwert gelesen werden kann.
eventTypeNeinString Enum["Rising","Falling","Both"]"Rising"Eventtyp nach dem der Zähler die Zeitreihe auswertet.
enableStartTimeChannelNeinBool-falseAuf true setzen, um die Produktion von Zeitstempeln** zu aktivieren, die auf den letzten Zählerneustart hinweisen.

*Bei Nichtangabe wird für den Ausgangskanal ein Name nach folgenden Muster gebildet: {inputChannel}.{eventType}Counter
**Der Zeitstempel gibt die Nanosekunden seit der UNIX-Epoche an. Der Name eines Zeitstempelkanals wird wie folgt gebildet: {outputChannel}.LastStartTime

Parameter für numerische Kanäle

Es folgt eine Liste von Parameter, die für numerische Eingangskanäle ausgewertet werden.

ParameternameErforderlichDatentypsinnvoller WertebereichDefaultBeschreibung
thresholdNeinNumberAny0Numerischer Schwellenwert für die Erkennung der Schwellenwertüberschreitung.

Anmerkung zur optiCLOUD Konfiguration

Im folgenden Abschnitt werden zusätzliche Hinweise zur Konfiguration und Nutzung des "opticloud"-Moduls in Verbindung mit diesem Modul aufgeführt.

optiCLOUD Kanal Konfiguration

Folgende Konfiguration wird für die Übertragung der Zähler- und Zeitstempelkanäle empfohlen:

{
"module": "opticloud_eventcounter_example",
"factory": "opticloud",
"config": {
"channels": [
{
"messageType": "telemetry",
"name": "*Counter"
},
{
"messageType": "clientAttribute",
"name": "Events.*.LastStartTime"
}
],
...
}
}

RPC Callbacks

Referenz für die verfügbaren RPC Callbacks:

NameInstanzfunktion?Payload BeispielBeschreibung
resetJa{"counter":"producer1.signal.Counter"}Setzt den Zähler mit dem Ausangskanal producer1.signal.Counter auf 0 zurück*
setJa{"counter":"producer1.signal.Counter", "value": 300}Setzt den Zähler mit dem Ausangskanal producer1.signal.Counter auf 300*

*Wahlweise können auch alle Zähler mit "counter":".*" gesetzt bzw. zurückgesetzt werden.

Modul-Informationen

InformationWert
AutorenoptiMEAS Measurement and Automation Systems GmbH
seit smartCORE2.5
ModultypConsumer
AbhängigkeitenKEINE