FB_ALYC_MqttStream
Dieser Funktionsbaustein repräsentiert einen Analytics MQTT-Stream. Über die ObjectId als Eingangsvariable kann der Zusammenhang zu einem Stream hergestellt werden. Voraussetzung ist ein existierender Stream, z. B. im System Manager unter dem Data Logger Knoten im Projektbaum angelegt. Über die Methoden Start/Stop kann der Stream gesteuert werden und mit Reconfigure rekonfiguriert werden. Dazu wird der Methode eine Struktur des Typs ST_ALYC_MqttStreamConfig übergeben, die die neuen Konfigurationsparameter enthält. Bei der Rekonfiguration werden, ausgehend vom OP-Zustand, die TcCom-Zustände SAFEOP, PREOP, SAFEOP, OP in dieser Reihenfolge durchlaufen. Da alle Zustände unterhalb von SAFEOP nicht mehr im Echtzeit-Modus laufen, die restliche TwinCAT-Laufzeit aber schon, muss die Rekonfiguration asynchron zum Task-Zyklus erfolgen, wobei die Methode Reconfig zyklisch aufgerufen werden soll, solange nicht der OP-Zustand wieder erreicht wird. Die Eigenschaften bConnected, bStarted etc. geben Auskunft über den aktuellen Zustand des Streams. Fehler können über den Ausgang bError und die dazugehörige ipResultMessage erfasst werden.
Definition:
FUNCTION_BLOCK FB_ALYC_MqttStream
VAR_INPUT
{attribute 'tcinitsymbol'}
nObjectID : OTCID := 0;
END_VAR
VAR_OUTPUT
bInitialized : BOOL := FALSE;
bError : BOOL := FALSE;
ipResultMessage : I_TcMessage := fbResult;
eReconfigState : E_ALYC_ReconfigState := E_ALYC_ReconfigState.DONE;
END_VAR
Eingänge
Name | Typ | Beschreibung |
---|---|---|
nObjectID | OTCID | TcCom-Object ID des referenzierten Streams. Diese kann unter dem Reiter ‚Init-Symbole‘ des entsprechenden PLC-Instanz Knotens im System Manager Projektbaum initialisiert werden. |
Ausgänge
Name | Typ | Beschreibung |
---|---|---|
bInitialized | BOOL | TRUE, wenn der Funktionsbaustein initialisiert ist und benutzt werden kann. Die Initialisierung erfolgt automatisch nach dem Setzen von TwinCAT in den Run-Modus. |
bError | BOOL | TRUE, wenn ein Fehler aufgetreten ist. |
ipResultMessage | I_TcMessage | Nachricht EventLogger |
eReconfigState | E_ALYC_ReconfigState | Der Zustand der Zustandsmaschine während der Rekonfiguration. |
Methoden
Name | Rückgabe Typ | Beschreibung |
---|---|---|
Reconfigure | BOOL | Rekonfiguriere den Stream. Parameter: ST_ALYC_MqttStreamConfig. TRUE, wenn erfolgreich. |
Start | BOOL | Starte den Stream. TRUE, wenn erfolgreich. |
Stop | BOOL | Stoppe den Stream. TRUE, wenn erfolgreich. |
Eigenschaften
Name |
Typ |
Richtung |
Beschreibung |
---|---|---|---|
bConnected | BOOL | get | TRUE, wenn MQTT-Verbindung besteht. |
bStarted | BOOL | get | TRUE, wenn Stream gestartet. |
nDataSize | UDINT | get | Sample Datengröße |
nSamplesIssued | ULINT | get | Anzahl Samples, die geschrieben wurden. |
nSamplesLost | ULINT | get | Anzahl der verworfenen Samples. |
tCycleTime | LTIME | get | Zykluszeit in ns |
nCompDataSaving | DINT | get | Prozentanteil der eingesparten Datenmenge im Vergleich zu der unkomprimierten Alternative. Wenn negativ, liegt ein Mehraufwand statt einer Ersparnis an Daten vor. |