FB_ReadAdsTecSysData

Der Funktionsbaustein FB_ReadAdsTecSysData liest die Systemdaten/Diagnosedaten eines ads-tec Industrie-PCs aus. Der Baustein wird Levelgetriggert, d.h. nur beim gesetzten bEnable -Eingang werden die Systemdaten zyklisch gelesen. Um dabei die Systemauslastung niedrig zu halten wird der Lesezyklus automatisch alle ~100ms (Defaultwert) wiederholt. Bei einem gesetzten bValid-Ausgang sind die zuletzt gelesenen Daten gültig (d.h. der letzte Lesezyklus wurde fehlerfrei durchgeführt). Beim Auftreten eines Fehlers wird der bError-Ausgang gesetzt und das zyklische Lesen gestoppt. Mit einer erneuten steigenden Flanke am bEnable-Eingang können vorhandene Fehler gelöscht und das zyklische Lesen neu gestartet werden.
VAR_INPUT
VAR_INPUT
sNetId :T_AmsNetId;
bEnable :BOOL;
tCycleTime :TIME := T#100ms;
END_VAR
sNetId: Hier kann ein String mit der Netzwerkadresse des TwinCAT-Rechners angegeben werden, dessen Systemdaten gelesen werden sollen. Für den lokalen Rechner kann auch ein Leerstring angegeben werden.
bEnable: Mit einer steigenden Flanke wird der Baustein zurückgesetzt (vorherige Fehler am Ausgang bError und nErrId gelöscht). Bei einem gesetzten Eingang werden die Systemdaten zyklisch gelesen.
tCycleTime: Das zyklische Leseintervall.
VAR_OUTPUT
VAR_OUTPUT
bValid :BOOL;
bError :BOOL;
nErrId :UDINT;
stSysData :ST_AdsTecSysData;
END_VAR
bValid: Wenn dieser Ausgang gesetzt ist sind die Daten in der ST_AdsTecSysData-Struktur gültig (beim letzten Lesezyklus ist kein Fehler aufgetreten).
bError: Sollte ein Fehler bei der Ausführung der Funktion erfolgen, dann wird dieser Ausgang gesetzt. Mit einer steigenden Flanke am bEnable-Eingang wird der Fehler zurückgesetzt.
nErrId: Liefert bei einem gesetzten bError-Ausgang die ADS-Fehlernummer.
stSysData : Struktur mit den Systemdaten/Diagnosedaten.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | IO-Hardware | Einzubindende SPS-Bibliotheken |
---|---|---|---|
TwinCAT v2.8.0, Build > 746 TwinCAT v2.9.0, Build > 945 | PC (i386)
| ads-tec PC | TcIoFunctions.Lib ( Standard.Lib; TcBase.Lib; TcSystem.Lib; TcUtilities.Lib werden automatisch eingebunden ) |