Analytics Builder 10.14.0 | Bedienungsanleitung für Analytics Builder for Cumulocity IoT | Details zu Werten und Blöcken | Pulse-Signale
 
Pulse-Signale
Ein Pulse-Signal wird verwendet, um einen Zeitpunkt oder eine Zustandsänderung anzuzeigen. Beispiele für Anwendungsfälle von Pulse-Signalen sind:
*Eine Person geht durch eine Pforte (zum Beispiel, in einem Bahnhof).
*Eine Taste wird gedrückt (zum Beispiel, eine Notstopp-Taste).
*Eine Maschine geht in einen neuen Zustand über (zum Beispiel, ein Gateway wird zurückgesetzt oder eingeschaltet).
*Ein Gerät hat eine Verbindung zum Netzwerk hergestellt.
In Cumulocity IoT werden Ereignisse, Alarme und Operationen als Quellen für Pulse-Signale verwendet. Siehe auch die folgenden Abschnitte in der englischsprachigen Dokumentation von Cumulocity IoT: Events und Operations im Concepts guide und Alarms im Reference guide.
Ein Pulse-Signal kann einfach nur ein Zeitpunkt sein, es kann aber auch zusätzliche Informationen enthalten, zum Beispiel, die Versionsnummer der Software oder mit welchem Netzwerkknoten sie sich verbunden hat. Diese Informationen können mit dem Eigenschaft extrahieren-Block abgerufen werden. Wenn Sie Ihre eigenen benutzerdefinierten Blöcke schreiben, dann sind diese Informationen verfügbar, wenn die Eingabe als ein Value-Typ deklariert ist, der ein Eigenschaftsfeld hat. Dies kann auch mit numerischen Werttypen verwendet werden. Weitere Informationen über den Value-Typ finden Sie in der Dokumentation für das Analytics Builder Block SDK.
Im Gegensatz zu Messwerten ist das Timing und die Anzahl der Pulse-Signale signifikant, und auch wenn der einzige Unterschied zwischen aufeinanderfolgenden Signalen der Zeitpunkt des Empfangs sein kann, so ist jeder einzelne dennoch signifikant (während mehrere Messungen mit demselben Wert von geringem Interesse sind).
Im Gegensatz zu Messwerten ist ein Pulse-Signal nur für eine einzige Auswertung eines Modells aktiv, wobei eine Modellauswertung alle Blöcke verarbeitet, die über einen Timer verfügen, der ausgelöst wird (einschließlich Eingabeblöcke) und alle Blöcke, die mit Ausgangsports verbunden sind, bei denen sich der Wert geändert hat. Während sowohl Pulse-Signale als auch boolesche Messwerte durch den boolean-Typ im Block-EPL dargestellt werden, ist ihr Verhalten dennoch unterschiedlich:
*Wenn ein boolescher Messwert von einem Block empfangen wird, dann bleibt er solange bei diesem Wert, bis er ersetzt wird. Wenn Sie zum Beispiel einen UND-Block benutzen, um zu untersuchen, ob die Temperatursensoren 1 und 2 beide über einem Schwellenwert liegen, dann ist dieser Wert auch nach dem Empfang hoher Messwerte noch wahr.
*Wenn ein Pulse-Signal von einem Block empfangen wird, dann wird der Block nach der Signalauswertung zurückgesetzt. Wenn zum Beispiel ein Durchschnitt (Mittelwert)-Block durch ein Ereignis zurückgesetzt wird, dann erfolgt das Zurücksetzen beim Empfang des Ereignisses. Wenn danach kein weiteres Ereignis mehr empfangen wird, dann wird der Block bei zukünftigen Werteingaben nicht zurückgesetzt.
Es ist immer noch gültig und sinnvoll, mehrere Pulse-Signale zu kombinieren, zum Beispiel mit einem UND-Block. Wenn zwei Signale zum selben Zeitpunkt auftreten, dann ist dies eine einzige Auswertung. Der Schwelle-Block hat zum Beispiel den Schwelle überschritten-Ausgangsport, der nur dann ein Signal sendet, wenn eine kontinuierliche Werteingabe von einer Seite der Schwelle zur anderen Seite geht. Zwei Sensoren auf demselben Gerät (also mit demselben Zeitstempel) können gleichzeitig Schwellen überschreiten, so dass das UND die Ausgabe von zwei solchen Schwellen nur dann auslöst, wenn beide Eingaben die Schwelle mit neuen Werten desselben Zeitstempels überschreiten. Beachten Sie, dass, wenn erst ein Sensor die Schwelle und der andere Sensor die Schwelle erst später überschreitet, die folgenden Blöcke niemals eine Ausgabe des UND-Blocks liefern würden. Sie würden dies nur tun, wenn beide gleichzeitig auftreten.
Beispielmodell mit einem UND-Block