FB_ALYC_FileStream
Dieser Funktionsbaustein repräsentiert einen Analytics Stream im Filemodus. Über die ObjectId als Eingangsvariable kann der Zusammenhang zu einem Stream hergestellt werden. Voraussetzung ist ein existierender Stream, der im Filemodus ist, z. B. im System Manager unter dem Data Logger Knoten im Projektbaum angelegt. Die Symbole, die geloggt werden sollen, müssen per System Manager ebenfalls konfiguriert werden.
Ü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_FileStreamConfig ü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 operieren, die restliche TwinCAT-Laufzeit aber schon, muss die Rekonfiguration asynchron zum Task-Zyklus erfolgen, wobei die Methode Reconfigure zyklisch aufgerufen werden soll, solange nicht der OP-Zustand wieder erreicht ist. Die Eigenschaften bStarted, nSampleIssued 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_FileStream
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_FileStreamConfig. TRUE, wenn erfolgreich. |
Start | BOOL | Starte den Stream. TRUE, wenn erfolgreich. |
Stop | BOOL | Stoppe den Stream. TRUE, wenn erfolgreich. |
Eigenschaften
Name |
Typ |
Richtung |
Beschreibung |
---|---|---|---|
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. |
nUnconfFileWrites | ULINT | get | Anzahl der Dateischreib-Anfragen, die noch nicht vom AMS Router bestätigt wurden. Kann ein Overflow der Router Nachrichten-Queue verhindern. |