TC_CpuUsage

TC_CpuUsage 1:

The function block TC_CpuUsage allows the current CPU usage of a TwinCAT system to be determined. This function corresponds to the display of CPU usage in the TwinCAT system menu under the real-time settings.

TC_CpuUsage 2: Inputs

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

Name

Type

Description

NETID

T_AmsNetID

Network address of the TwinCAT computer on which the ADS command is to be executed. An empty string can be entered for the local computer

START

BOOL

The function block is enabled by a positive edge at this input.

TMOUT

TIME

Time-out period that may not be exceeded when executing the ADS command.

TC_CpuUsage 3: Outputs

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

Name

Type

Description

BUSY

BOOL

When the function block is enabled, this output is set and remains set until a feedback is received.

ERR

BOOL

If an ADS error should occur during the transfer of the command, then this output is set once the BUSY output is reset.

ERRID

UDINT

Returns the ADS error number when the ERR output is set.

USAGE

UDINT

The current CPU usage of a TwinCAT system in %.

Example:

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 the example the TwinCAT system is using 35% of the total available CPU computing time.

Requirements

Development environment

Target platform

PLC libraries to be integrated (category group)

TwinCAT v3.1.0

PC or CX (x86, x64, ARM)

Tc2_Utilities (System)