-

PLCnext Technology System Variables

The following system variables are available for controllers of the PLCnext Technology. The variables are shown in the Data List editor of the controller node in the PLANT.

Further Info
For an up-to-date list and description of the provided system variables, please refer to the PLCnext documentation.

This topic contains the following sections:

Note
Invisible assignments of system variables: From controller firmware version 2025.6, the assignments between system variables and process data items (PDIs) are no longer visible in the Data List. These PDI connections are provided by firmware or fieldbus components. Although the assignments are no longer visible, the connections between variables and PDIs still exist after the controller is started. The connections are created by the firmware. The function therefore remains guaranteed, even if the assignments are no longer visible. No selection can be made in the 'Process data item' column of the Data List despite the display 'Select Process data item here...'.
Example: Data List display after FW 2025.6:

Controller-related System Variables

DEVICE_STATE (device state)

Click here for a description of the variable

RTC (system time)

Click here for a description of the variable

USER_PARTITION (partition)

Click here for a description of the variable

Project-related System Variables

You can use the PLC_CRC_PRJ system variable to retrieve the checksum of the standard (non-safety-related) project part which was calculated last. You can use this checksum to find out whether the project has been modified compared to older project versions.

System variableTypeDescription
PLC_CRC_PRJULINTCRC of the non-safety-related project.

IP/TLS Sockets-related System Variables

The library 'Extended Functions & Function Blocks' provides TCP_SOCKET and UDP_SOCKET function blocks to open and close the IP sockets that are used for IP communication via Transmission Control Protocol (TCP) or via User Datagram Protocol (UDP). In addition, the TLS_SOCKET function block is available to open and close IP sockets secure IP communication via Transport Layer Security (TLS).

You can use these system variables to retrieve the number of opened IP sockets:

System variableTypeDescription
IP_ACTIVE_SOCKETSUINTNumber of IP sockets opened using the TCP_SOCKET and/or UDP_SOCKET function blocks.
TLS_ACTIVE_SOCKETSUINTNumber of IP sockets opened using the TLS_SOCKET function block.

ESM System Variables

Click here for a description of the variable

Profinet System Variables

You can use the PND system variables to retrieve various information regarding the Profinet I-Device functionality.

Click here for a description of the PND_* variables

You can use the PNIO system variables to retrieve various information regarding the Profinet IO controller functionality.

Click here for a description of the PNIO_* variables

Safety PLC System Variables for Use in the Standard Project

Note
The system variables described in this section are only available if the controller includes a Safety PLC.

SPNS

Click here for a description of the variable

SPLC_CONTROL_COMMAND

Click here for a description of the variable

SPLC_CONTROL_CONFIRM

Click here for a description of the variable

Safety PLC-related System Variables

You can use these system variables to retrieve information on the status of the Safety PLC.

Note
These system variables are available from firmware version 3.0 of the Safety PLC.

Click here for a description of the variables

System Variables for Profisafe Communication/F-Device State Diagnostics

You can use these system variables to monitor the safety-related communication and the operational state of safety-related devices. This enables the Safety PLC to determine the state of the functional safety system.

Note
These system variables are available from firmware version 3.0 of the Safety PLC.

For that purpose, PLCnext Technology controllers may provide system variables which report

F-Device-related System Variables for Profisafe Data Exchange

You can use these system variables to exchange data in a Profisafe network between a Safety PLC which acts as F-Device and the superimposed F-Host device.

Note
These system variables are available from firmware version 3.0 of the Safety PLC.

Further Info
An illustration of this scenario and further details can be found in the topic "Safety PLC acts as F-Host and F-Device".

System variableTypeDescription
FDEV_INx
with x = 0 to 7.
SAFEBYTE These variables can be written by the F-Host of the superimposed network and read by the Safety PLC in your solution.
FDEV_OUTx
with x = 0 to 7.
SAFEBYTE These variables can be written by your Safety PLC and read by the F-Host of the superimposed network.

F-Device-related System Variables for Dynamic F_Dest_Add Assignment

Note
These system variables are available from firmware version 3.0 of the Safety PLC.

You can use these system variables to assign an F-Device an F_Destination_Address (F_Dest_Add) dynamically, i.e. from within the safety-related application program. This an be done instead of using the fixed F_Dest_Add set in the 'Safety Parameters' editor of the controller node in the PLANT. This function allows an F-Device to be dynamically subordinated to another F-Host. A possible scenario for this is the transfer of an AGV (Automated Guided Vehicle) to a new driving area.

For this purpose, a set of system variables is available. These variables are described in the following table, in the order they appear in the Data List.

Note
For more information on F-Devices and F-Hosts refer to the topic "Profisafe Device Identification: F-Parameters". Before using the system variables, pay particular attention to the information and the hazard message in the section "Dynamic assignment of the F_Dest_Add via system variables".

Click here for a description of the variables

Diagnostic codes output with variable FDEV_DYN_DIAGCODE