TC_CpuUsage

TC_CpuUsage 1:

Mit dem Funktionsbaustein TC_CpuUsage kann die aktuelle CPU-Auslastung eines TwinCAT-Systems ermittelt werden. Die Funktion entspricht der Anzeige der CPU-Auslastung im TwinCAT-System Menü unter den Echtzeiteinstellungen.

TC_CpuUsage 2: Eingänge

VAR_INPUT
    NETID  : T_AmsNetId;
    START  : BOOL;
    TMOUT  : TIME := DEFAULT_ADS_TIMEOUT;
END_VAR

Name

Typ

Beschreibung

NETID

T_AmsNetID

Netzwerkadresse des TwinCAT-Rechners, auf dem das ADS-Kommando ausgeführt werden soll. Für den lokalen Rechner kann ein Leerstring angegeben werden

START

BOOL

Über eine positive Flanke an diesem Eingang wird der Baustein aktiviert.

TMOUT

TIME

Timeout-Zeit, die bei der Ausführung des ADS-Kommandos nicht überschritten werden darf.

TC_CpuUsage 3: Ausgänge

VAR_OUTPUT
    BUSY  : BOOL;
    ERR   : BOOL;
    ERRID : UDINT;
    USAGE : UDINT;
END_VAR

Name

Typ

Beschreibung

BUSY

BOOL

Bei der Aktivierung des Funktionsbausteins wird dieser Ausgang gesetzt und bleibt gesetzt, bis eine Rückmeldung erfolgt.

ERR

BOOL

Sollte ein ADS-Fehler bei der Übertragung des Kommandos erfolgen, dann wird dieser Ausgang gesetzt, nachdem der BUSY-Ausgang zurückgesetzt wurde.

ERRID

UDINT

Liefert bei einem gesetzten ERR-Ausgang die ADS-Fehlernummer.

USAGE

UDINT

Die aktuelle CPU-Auslastung eines TwinCAT-Systems in %.

Beispiel:

PROGRAM MAIN
VAR
    TC_CpuUsage1       : TC_CpuUsage;
    Start_TC_CpuUsage  : BOOL;
    TC_CpuUsage_Busy   : BOOL;
    TC_CpuUsage_Err    : BOOL;
    TC_CpuUsage_ErrId  : UDINT;
    CpuUsage           : UDINT;
END_VAR
TC_CpuUsage 4:

In dem Beispiel benutzt das TwinCAT-System 35% von der gesamten zur Verfügung stehenden CPU-Rechenzeit.

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

PC oder CX (x86, x64, ARM)

Tc2_Utilities (System)