PLCnext Engineer
You must have JavaScript enabled to use the Online Help.
☰
x
CONTENTS
INDEX
SEARCH
CONTENTS
About PLCnext Engineer
About this documentation
Before you start
Safety-Related Hazard Messages
System requirements
System Limits of PLCnext Engineer
Coming from PC WORX 6.x
PLCnext Technology Controller Generation
Safety-Related Application/Area
Safety-Related Area: General Information
Safety-Related Area: Defining/Changing a Password
Safety-Related Area: Logon to/Logoff from
Security in PLCnext Engineer
IEC 62443 Compliance
Security Guideline for PLCnext Engineer
Recommended Security Measures for Devices and Solutions
Controller Security (Settings via WBM)
Phoenix Contact Security Advisories
Network Security: Certificates enable Secure Connection
Network Security: Authentication with User Role and Password
Network Security: OPC UA Server Security Settings
Security terms and background information
Quickstart: Overview on Engineering Steps
User Interface - Reference
Start Page
Main Menu/Toolbar and Shortcuts
File Menu
Edit Menu
View Menu
Project Menu
Extras Menu
Window Menu
Help Menu
Editor Toolbars, Context Menus and Shortcuts
Controller Cockpit - Toolbar
Safety PLC Cockpit - Toolbar
Graphical Code Editor - Toolbar, Context Menu
Graphical Code Editor - In-place Buttons
Textual Code Editor - Toolbar, Context Menu
Variables Table - Toolbar, Context Menu
Data List - Toolbar, Context Menu
GDS Port List - Toolbar, Context Menu
Physical Topology - Toolbar
Online Controllers/Online Devices - Toolbar, Context Menu
SFC Debugging Commands
GLOBAL FIND AND REPLACE - Toolbar
Local Find and Replace - Toolbar, Shortcuts
VERSION CONTROL - Toolbar
WATCHES - Toolbar
LOGIC ANALYZER - Toolbar
Standard Windows Shortcuts
Tooltips
PLANT Area
PLANT Tree Node Editors
COMPONENTS Area
COMPONENT Types Editors
Searching in the COMPONENTS Area
Editing the Folder Structure of a COMPONENTS Category
Editors Area
Data Lists
Opening a Data List
Assigning Data Items in Data Lists
Creating Exchange Variables
Removing Data Item Assignments (Disconnect)
Creating an HMI tag in a Data List
Managing Global Variables in a Data List
Importing/exporting Data Items from/to a .csv File
Filtering & Sorting the Data List
GDS Port Lists
Opening a GDS Port List
Assigning Ports in the GDS Port List
Filtering & Sorting the GDS Port List
MESSAGES: Error List, Logging and Desktop Notifications/Alerts
GLOBAL FIND AND REPLACE Window
CROSS REFERENCES Window
REFACTORING Window
VERSION CONTROL Window
NOTIFICATION LOGGER Window
WATCHES Window
LOGIC ANALYZER Window
FORCELIST Window
BREAKPOINTS Window
CALL STACKS Window
ONLINE STATE Window
RECYCLE BIN Window
Status Bar
Options - Adapting PLCnext Engineer
Setting the User Interface Language
Project Handling
Project Integrity Check
Networking
Configuring the IP Settings of the Project
Online: Scan Network to add Devices to PLANT
Scanning the Network for a Controller (controller-based Template)
Scanning the Network for a Controller (Empty Project)
Scanning the Network for Profinet Devices
Reading Profinet I/O Modules
Reading Axioline F I/O Devices connected to the local Axioline F Bus
Offline: Add Devices manually to PLANT
Inserting Profinet Devices in the 'Device List' (Station Editor)
Inserting Devices/Modules in the Station Editor
Inserting Controller/Devices via Drag & Drop from the COMPONENTS
Unassigning Project and Online Devices
Replacing Devices in the PLANT
Removing Devices from the PLANT
Engineering and Non-engineering Devices
Physical Topology Editor
Scanning the Network and Adding Devices/Connections to the Project
Scan Options
Topology Representations
Profinet
Redundancy Overview
Redundancy (R)STP
Redundancy MRP
Redundancy DLR
Redundancy EXR
VRRP
NAT
VLAN
Representation of Devices, Ports and Connections
Physical Topology Operations
VLAN Configuration
Generating Snapshots of Online Device Parameter Values
Device Configuration/Parameterization
Device Templates
PLCnext Technology Controller Properties
Setting the Controller IP Address
Reading/Writing Controller Parameters - 'Online Parameters' Editor
Defining the Update Task of the PLCnext Technology Controller
Setting the Real-time Clock on the Controller
Security Settings of the Controller (via WBM)
PLCnext Technology Controller as EtherNet/IP Device
Configuring a Redundant Control System
Assigning IP Addresses to the Controller Pair
Disabling/Enabling Synchronization of Variables/Port Values
Connecting to a Controller and Performing Online Functions
Profinet-specific Properties
Configuring the IP Settings of a Profinet Device
Setting Profinet Device Parameters ('Interface List' Editor)
Defining the I/O update task for the Profinet I/O Controller and Devices
Configuring Fast Start Up (FSU) for Profinet I/O
Profinet Redundancy
Profinet Media Redundancy Protocol (MRP)
Profinet System Redundancy (SR)
Shared Devices Support for Profinet Devices
Multiple Interface Mode
Axioline-specific Properties
Defining the I/O update/trigger task for the Axioline controller and I/Os
INTERBUS Configuration
INTERBUS Local Inline Station (AXC F IL ADAPT adapter terminal)
INTERBUS Remote Bus (AXC F XT IB extension module)
Profisafe-specific Properties
Safety Function Response Time (SFRT)
'Safety Parameters' Editor - only for Safety-related Devices and Modules
Profisafe Device Identification: F-Parameters
Import/Export Safety-related Device Parameters - 'Parameter Import/Export' Subeditor
IO-Link for Axioline and Profinet (Master from Phoenix Contact)
Configuring the IO-Link System for Axioline
Configuring the IO-Link System for Profinet
Importing IODD Files
IEC 61131-3 Programming
POUs
Function POUs in PLCnext Engineer
Function Block POUs in PLCnext Engineer
Program POUs in PLCnext Engineer
Methods of FBs in PLCnext Engineer
Instantiation: Program and FB Instances
Data Types
Elementary Data Types according to IEC 61131-3
Elementary Safety-Related Data Types
Generic Data Types according to IEC 61131-3
Generic Safety-Related Data Types
User-defined Data Types
Arrays
Structures
Enumerations (enums)
Strings
Combinations of user-defined Data Types
Ports of user-defined Data Types
Variables
Declaring Variables/FB Instances
Variable/Port Properties
Variable Declaration Keywords (Usage)
Constant Variables
Importing/Exporting Variables from/to a .csv File
Managing Declarations in Tables
Extended Identifiers as IEC 61131-3 Variable Names
Role Mapping in Data Lists: I/O Variables and Exchange Variables
Role Mapping in the GDS Port List: Assigning PLCnext Ports
Rules for Assigning Ports and Variables
Refactoring Variables and FB Types
Initializing ARRAYs and STRUCTs
Instance-related Located Variables: 'Instance' and 'Program'
Partial Access to ANY_BIT Variables
Pragmas for IEC Variables
InOut Variables: Rules and Specific Characteristics
Literals according to IEC 61131-3
Object-oriented Programming
Namespaces
General Information on Namespaces
Defining Namespaces for POUs
Defining Namespaces for User-defined Data Types
Working with Namespaces
Programming ST
Feature Overview: Text Editor
Commands, Toolbar and Shortcuts in the Text Editor
Intellisense in the Text Editor
Local Text Search/Replace in the Text Editor
Comments in ST
ST Code Objects
Inserting Code Elements in ST
Inserting Variables in ST
Calling Functions and Function Blocks in ST
Programming FBD/LD, NOLD and SNOLD
Feature Overview: Graphic Editor
Toolbar Buttons, Context Menu and Shortcuts
Keyboard Operation
Intellisense in the Graphic Editor
Local Text Search/Replace in FBD/LD, NOLD, SNOLD and SFC
Syntax: FBD/LD, NOLD and SNOLD
Contact Types (LD Code Objects)
Coil Types (LD Code Objects)
Constants, Jumps/Labels, Returns, Connectors
Comments
Select, Move, Copy/Cut/Paste Objects
Editing LD Networks
Insert a basic network
Insert serial or parallel contacts/coils
Insert power rails
Assign variables/constants to an LD object
Insert FUs/FBs into the code worksheet
Open the editor group of an FU/FB
Change the contact/coil type
Toggle between contact and coil
Create/handle friendly networks (only in FBD/LD code)
Expand/collapse NOLD/SNOLD code sections
Rename a NOLD/SNOLD code section (network)
Inserting FUs/FBs and Variables
Connecting Objects
Execution Order in Code Worksheets
Toggling Line vs. Connector Display
Editing/Replacing/Updating FUs and FBs
Feedback variables in FBD/LD networks
Exchanging Data between Controller and Safety PLC
Mixing Safety-related and Standard Types in SNOLD
Programming the Enable Principle
Implicit Feedbacks in SNOLD
Verification Mark for SNOLD Networks
Programming SFC
SFC Parameters, Operating Modes and Data Types
Step in SFC
Transition in SFC
Action and Action Qualifier in SFC
Branch in SFC
Inserting SFC Objects
Editing Steps
Editing Transitions
Editing Actions
Interlocks in SFC
Always Executed Code
Deleting SFC Objects
Controller Runtime Configuration and Tasks
Task Configuration
Creating a Program Instance by Assigning a Program to a Task
Integrating non-IEC 61131-3 Programs into the PLCnext Technology Task Scheduling
Task/Event Properties and Types (non-safety-related Controllers only)
System Event Tasks
Tasks and Watchdogs
Extended Retain Handling
Safety PLC Runtime Configuration
Matlab® Integration in PLCnext Engineer
Matlab® Viewers in PLCnext Engineer
Monitoring/Debugging Matlab® Code
Alarming
Localization of Alarm Messages and Descriptions
Automation Modules and Aspect Hierarchies
Controller Commissioning: From Compiling to Debugging
Connecting vs. Attaching (Debug On)
Ad-hoc IP address instead of project-defined address
TCP Communication Settings
Cockpit: Controlling the Application
Rebuilding the Project (without Writing)
Writing Project Changes to the Controller
Aborting the Build Process manually
Controller Diagnostics out of the Cockpit
Controller States
Debug mode: Monitoring the Application Execution
Extended Debugging: Functions, Methods and SFC Actions/Transitions
Extended Debugging: Execution Values/Indication vs. "Normal" Online Values
Fast Edit Mode: One-click Switching between Debugging and Editing
WATCHES: Monitoring/Debugging the Application
Debugging Code: Forcing/Overwriting
Debugging Code: Breakpoints
Debugging SFC Code
LOGIC ANALYZER: Monitoring the Application
Using the LOGIC ANALYZER
Step 1: Add/Remove Variables to/from the Subscription List
Step 2: Define the Recording Settings
Step 3: Start/Stop the Recording Session
Pausing/Resuming the Visualization Update
Adapting the Visualization Display
Measuring Distances
Viewing Detail Values
Exporting and Importing Values using csv Files
LOGIC ANALYZER Toolbar
Data Logger Configuration
Reading Project Sources from the Controller
Shortcuts for Commissioning
Controller Simulation
Safety PLC Commissioning: From Compiling to Debugging
Safety PLC Password Protection
Connecting vs. Monitoring Mode vs. Debug Mode
Rebuilding the Safety-Related Project (without Writing)
Aborting the Build Process manually
Safety Cockpit: Controlling the Safety Application
Safety PLC Diagnostics out of the Safety Cockpit
Profisafe Communication/F-Device State Diagnostics
Safety PLC States
Monitoring/Debugging the Safety PLC
Monitoring Mode: Displaying Online Values
Debugging Safety-Related Code: Forcing/Overwriting
Debugging: Single Cycle Operation of the Safety PLC
WATCHES: Monitoring/Debugging the Safety-Related Application
Safety PLC Simulation
HMI Application
HMI Quickstart
Security for HMI
User and Role Management
Enabling Security for HMI in the Project
Enforcing Access Rights to HMI Pages/HMI Objects
Password-protected Access to HMI Application ('Login' Page)
HMI Pages
Adding and Organizing HMI Pages
Using and Editing HMI Page Templates
Setting HMI Page Properties
Adding HMI Support Files
Specifying the Startup Page
Defining HMI Page Parameters
'Navigation' Editor
Managing HMI Pages Using the 'Navigation' Editor
HMI Objects, Symbols, Images
HMI Tags
HMI Tags Created From Controller Variables
Local HMI Tags
HMI Editor
HMI Object Explorer
Using the Grid
Local Text Search/Replace in the HMI Editor
Working with Objects
Inserting Objects, Symbols, and Images
Editing Object Properties
Editing Objects Using In-place Buttons
Selecting, Copying, Pasting, and Deleting Objects
Moving Objects
Sizing Objects
Flipping Objects
Aligning and Distributing Objects
Grouping/Ungrouping Objects
Moving Objects Forwards or Backwards
Drilling Down to Underlying Objects
Locking/Unlocking Objects
Rotating Objects
Standard HMI Objects
Button
Chart
Check Box
Drop List
Ellipse
Line
Linear Gauge Scale / Radial Gauge Scale
Polycurve Path
Polyline Path
Rectangle
Symbol List
Text
Text Input
Combining Shapes
Drawing and Editing Paths
Working with Dynamics
Adding Dynamics
Changing the Order of Action Dynamics
Publishing Object/Dynamic Properties as HMI Symbol Settings
Propagating Events (Actions) to Parents
Using Expressions for Object Animation
Dynamics Reference
'Disable' Dynamic
'Read-only' Dynamic
'Visibility' Dynamic
'Fill' / 'Color' Dynamics
'Blink' Dynamic
'Text' / 'Text When Down' / 'Text list' Dynamics
'Rotation' Dynamic
'Scale' Dynamic
'Horizontal Translation' / 'Vertical Translation' Dynamics
'Path' Dynamic
'Image List' / 'Image List When Down' Dynamics
'Action on Pressed' / 'Action on Released' Dynamics
'Action on Click' Dynamic
'Action on Drag' Dynamic
'Action on Data' Dynamic
'Action On Page Activated' Dynamic
Working with User-defined HMI Symbols
Creating and Designing HMI Symbols
Editing HMI Symbol Properties
Defining Symbol Parameters and Adding Dynamics/Actions
Publishing Object/Dynamic Properties as HMI Symbol Settings
Creating Instances of HMI Symbols / Editing Symbol Parameters
Working with Text Lists
Creating and Managing Text Lists
Editing and Filtering Text Lists
Exporting and Importing Text Lists
Translating Text Lists
Exporting and Importing Text List Resources
Making Text Lists Dynamic
Working with Image Lists
Creating and Managing Image Lists
Editing and Filtering Image Lists
Exporting and Importing Image Lists
Defining Language-specific Image Lists
Exporting and Importing Image List Resources
Making Image Lists Dynamic
Localization of the HMI Application
HMI Alarming
HMI Generator
Working with HMI Configuration Files
HMI Configuration Sample
HMI Configuration File Elements and Attributes
<hmigenerator> Element
<generation> Element
<page> Element
<folder> Element
<group> Element
<symbol> Element
<onfunctionblock> Element
<onpgrogram> Element
<onvariable> Element
<onpage> Element
<settings> Element
<id> Element
<startpage> Element
<tagset> Element
<index> Element
<pagestyles> Element
<pagestyle> Element
<template> Element
<templatelibrary> Element
<backgroundtemplate> Element
<backgroundtemplatelibrary> Element
<width> Element
<height> Element
<groupstyles> Element
<groupstyle> Element
<location> Element (contained by <groupstyle>)
<symbolstyles> Element
<symbolstyle> Element
<location> Element (contained by <symbolstyle>)
<datasets> Element
<dataset> Element
<data> Element
<tagsets> Element
<tagset> Element
<tag> Element
<parametersets> Element
<parameterset> Element
<parameter> Element
<symbolsets> Element
<symbolset> Element
Working with Placeholders
HMI Web Server Settings
Connection between HMI client and PLCnext Technology Controller
Running the HMI Application
OPC UA
OPC UA Server
Basic OPC UA Settings
OPC UA Security Settings
OPC Discovery Server Settings
OPC UA File System Settings
OPC UA Client
Configuring the OPC UA Client Module
Configuring the OPC UA Client Connections
OPC UA PubSub Communication
Defining Data Sets to be Published
Configuring Connections for Publishing/Subscribing
Configuring the Controller as a Publisher
Configuring the Controller as a Subscriber
Project Comparison
Safety-related Project Modifications
Which Project Parts are Compared?
Project Comparer Workspace
Online and Offline Comparison of Projects
Project Language Translation (Localization)
Library Management
Adding Libraries
Releasing Libraries
Tamper Protection of Libraries
Knowledge Protection for Libraries
Cascaded References: Referenced Libraries in Released IEC Libraries
Loadable C Functions as Released Library
Providing Help Files and Library Description Files
Inconsistent Library ID
Dangling Library References
Importing / Exporting Project Data
Importing Types from Another Project
Importing Types from PLCopen XML
Importing/Exporting IEC 61131-10 XML Files
Importing Types from IEC 61131-10 XML
Exporting Types to IEC 61131-10 XML
Importing/Exporting AutomationML APC Files
Adding Devices by Importing Device Description Files
Exporting Data as DAuM Package
Description for Projects, POUs, and Symbols
Version Management using a VCS
Project Statistics
Print Project
Error Catalog
Controller Configuration Errors
Configuration Error (PLCN0001): The task '...' must have a priority between ... and ....
Configuration Error (PLCN0002): The task '...' must have an interval time between ... and ... with the step of ....
Configuration Error (PLCN0003): The task '...' must have a watchdog time between ... and ... with the step of .... Use 0 to disable the watchdog.
Configuration Error (PLCN0004): The task '...' has an invalid type or event name.
Configuration Error (PLCN0005): The program instance '...' has an invalid program type '...'.
Configuration Error (PLCN0006): There are too many tasks defined in '...' (current : ..., max. allowed: ...).
Configuration Error (PLCN0007): The task '...' contains too many program instances defined in '...' (current : ..., max. allowed: ...).
Configuration Error (PLCN0008): The OPC UA configuration is not valid. ...
Configuration Error (PLCN0009): The task '...' uses the same event name value '...' as another task, which is not allowed.
Configuration Error (PLCN0010): The task '...' uses the event name value '...', which is reserved for a predefined event.
Configuration Error (PLCN0011): There are too many program instances defined in '...' (current : ..., max. allowed: ...).
Configuration Error (PLCN0012): The system variables update task '...' is invalid.
Configuration Error (PLCN0013): The program instance belongs to the non-existing component instance '...' of type '...'.
Configuration Error (PLCN0014): The component type '...' does not exist.
Configuration Error (PLCN0015): The ESM '...' already contains an idle task.
Configuration Error (PLCN0016): The program type '...' can be instantiated only once.
Configuration Error (PLCN0017): The program instance '...' can only be instantiated under esm '...'.
Configuration Error (PLCN0018): The program type '...' must be instantiated under esm '...'.
Configuration Error (PLCN0019): The program instance '...' has a recommended interval time of '...' ms which differs from the interval time of the task.
Configuration Error (PLCN0020): The program type '...' must be instantiated because it is part of a program group.
Configuration Error (PLCN0021): The connected port '...' is not referenced in any program instance.
Configuration Error (PLCN0022): There are too many tasks defined in '...' (current : ..., max. allowed: ...).
Configuration Error (PLCN0023): The task '...' must have a priority between ... and ....
Configuration Error (PLCN0051): The remote variable identifier format '' is invalid.
FDCML Parser Errors
FDCML Error (FDCM0021): DNS segments must contain at least one character.
FDCML Error (FDCM0022): DNS segments may not exceed 63 characters. Segment "..." has a length of '...'.
FDCML Error (FDCM0023): DNS segments must consist of ASCII characters. Invalid character '...' encountered.
FDCML Error (FDCM0024): DNS segments may not begin or end with the delimiters '-' and '.'.
FDCML Error (FDCM0025): DNS hostnames must contain at least one character. Given length: '...'.
FDCML Error (FDCM0026): DNS hostnames may not exceed 253 characters. Given length: '...'.
FDCML Error (FDCM0027): DNS hostnames may not resemble IP addresses.
FDCML Error (FDCM0028): DNS hostnames may not start with "port-###".
AXIOLINE Errors
Axioline Error (AXIO0003): The number of Axioline F devices ('...') exceeds the maximum count of '...'.
Axioline Error (AXIO0004): The current consumption ('...' mA) exceeds the maximum current consumption of '...' mA. Reduce number of devices.
Axioline Error (AXIO0005): The IO port update task '...' does not exist.
Axioline Error (AXIO0006): The system variables update task '...' does not exist.
Axioline Error (AXIO0007): The Axioline F device ... needs a controller with a safety-related PLC
Controller Runtime Errors
Error: The system event must contain at least one program instance.
Profinet Errors
Profinet Error (PNIO0001): The Profinet device '...' has an empty DNS hostname.
Profinet Error (PNIO0003): The Profinet controller '...' has '...' Profinet devices connected. The maximum number of devices is '...'.
Profinet Error (PNIO0004): The Profinet controller '...' has reached RAM capacity. Reduce the number of devices.
Profinet Error (PNIO0005): An internal error occurred while checking the Profinet data lengths of device '...'.
Profinet Error (PNIO0006): The Profinet input length '...' of device '...' exceeds the maximum number of bytes '...'.
Profinet Error (PNIO0007): The Profinet output length '...' of device '...' exceeds the maximum number of bytes '...'.
Profinet Error (PNIO0008): The monitor time of device '...' exceeds 1920 ms.
Profinet Error (PNIO0009): The Profinet controller '...' is overloaded. Consider decreasing the reduction ratios or removing a Profinet device.
Profinet Error (PNIO0011): The Profinet device '...' cannot operate in RT class IRT. It is not supported by the assigned Profinet Controller.
Profinet Error (PNIO0017): The Profinet device '...' needs a higher reduction ratio.
Profinet Error (PNIO0025): Profinet '...' module is missing a submodule
Profinet Error (PNIO0026): The Profisafe submodule '...' needs a controller with a safety-related PLC.
Profinet Error (PNIO0027): The I/O port update task '...' does not exist.
Profinet Error (PNIO0028): The system variables update task '...' is invalid.
Profinet Error (PNIO0029): The device system variables update task '...' is invalid.
Profinet Error (PNIO0030): There are connected Profinet devices without redundancy support.
Profinet Error (PNIO0040): The Profinet device ... does not support device sharing.
Profinet Error (PNIO0042): Fast startup for Profinet submodule ... cannot be configured as long as the master does not support fast startup.
Profinet Error (PNIO0100): MRP: Domain UUID "..." defined more than once. Every mrp manager must have a unique uuid.
Profinet Error (PNIO0101): MRP: Domain Name "..." defined more than once. Every mrp manager must have a unique name.
Profinet Error (PNIO0103): MRP: UUID "..." used in ring port configuration not declared.
Profinet Error (PNIO0104): Exactly two ports with same uuid "..." needed for a ring port to be configured.
Profinet Error (PNIO0106): MRP: Max number or supported client instances (50) per ring exceeded.
Profinet Error (PNIO0107): MRP: More than one manager defined "... / ...".
Profinet Error (PNIO0108): MRP: Two clients on one device must not have identical domain uuids "...".
Profinet Error (PNIO0109): MRP: Two clients on one device must not have identical domain names "...".
Profinet Warning (PNIO0112): The device "..." cannot be updated cyclically faster than "...".
Ethernet Errors
Ethernet Error (TCPP0001): A unique DNS hostname could not be created for device .... Manually assign a DNS hostname.
Ethernet Error (TCPP0003): The DNS hostname '...' of device '...' is used more than once in the network.
Ethernet Error (TCPP0004): The DNS hostname '...' of device '...' has invalid syntax.
Ethernet Error (TCPP0005): The DNS hostname '...' of device '...' does not use the top-level domain '...' of the subnet.
Ethernet Error (TCPP0006): The IP address '...' of device '...' lies above the network's end address '...'.
Ethernet Error (TCPP0007): The IP address '...' of device '...' lies below the network's start address '...'.
Ethernet Error (TCPP0009): A free IP address could not be found for the new device type '...'. Increase the address range.
Ethernet Error (TCPP0011): The device '...' does not have an IP address.
Ethernet Error (TCPP0012): The IP address '...' of device '...' collides with the network address '...'.
Ethernet Error (TCPP0013): The IP address '...' of device '...' is used more than once in the network.
Ethernet Error (TCPP0014): The network does not contain a valid end IP address.
Ethernet Error (TCPP0015): The default gateway '...' lies above the subnet's visible IP range.
Ethernet Error (TCPP0016): The default gateway '...' lies below the subnet's visible IP range.
Ethernet Error (TCPP0017): The default gateway '...' is identical to the network's broadcast address.
Ethernet Error (TCPP0019): The default gateway '...' is identical to the network's network address.
Ethernet Error (TCPP0020): The subnet mask '...' of the network has an invalid format. Subnet masks must consist of adjacent 1s from the left.
Ethernet Error (TCPP0021): The network does not contain a valid subnet mask.
Ethernet Error (TCPP0022): The start IP address '...' of the network is greater than the end IP address '...'.
Ethernet Error (TCPP0023): The network does not contain a valid start IP address.
Ethernet Error (TCPP0024): The start IP address '...' and end IP address '...' do not lie in the same subnet.
Ethernet Error (TCPP0025): The domain suffix '...' of the network is invalid.
Ethernet Error (TCPP0026): The device '...' does not have a subnet mask.
Ethernet Error (TCPP0027): The default gateway ... of the device ... is not in its subnet.
INTERBUS Errors
Interbus Error (ILIB0001): The number of CR-enabled Interbus devices ... exceeds the maximum of ... .
Interbus Error (ILIB0003): The Interbus device CR ... is already in use.
Interbus Error (ILIB0004): The number of Interbus devices ... exceeds the maximum of ... .
Interbus Error (ILIB0005): The Interbus register length ... exceeds the maximum of ... .
Interbus Error (ILIB0006): The CR ... is missing from the Interbus device configuration.
Interbus Error (ILIB0007): The Interbus devices [...] does not support 500 kbaud.
Interbus Error (ILIB0008): The Interbus devices [...] does not support 2 Mbaud.
Interbus Error (ILIB0010): The system variables update task '...' is invalid.
REPLACE error messages
Replace Error (REPLACE0008): Adding submodule "..." to module "..." failed.
Lexical Errors
Lexical Error (LEX0001): Invalid constant '...'.
Lexical Error (LEX0002): Invalid direct variable '...'.
Lexical Error (LEX0003): Invalid identifier '...'.
Lexical Error (LEX0004): Invalid token '...'.
Lexical Error (LEX0006): New line in string literal.
Lexical Error (LEX0007): '}' expected.
Lexical Error (LEX0008): Invalid LINE pragma.
Lexical Error (LEX0009): The nested comment was not correctly closed. '...' expected.
Lexical Error (LEX0005, LEX0010): '...' expected.
Lexical Error (LEX0011): Invalid Partial Access of ANY_BIT Variable '...'.
Lexical Error (LEX0012): String literal contains Invalid escape characters.
Syntactical Errors (Various Parsers)
ST Parser Errors (STP)
ST Parser Error (STP0002): Invalid statement.
ST Parser Error (various between STP0003 and STP0030): '...' expected.
ST Parser Error (STP0004): Identifier expected.
ST Parser Error (STP0005): White space characters in literals are not valid.
ST Parser Error (STP0012): Expression expected.
ST Parser Error (STP0014): Parameter expected.
ST Parser Error (STP0024): Invalid range.
ST Parser Error (STP0025): Variable expected.
ST Parser Error (STP0026): Operator expected.
ST Parser Error (STP0027): Constant or range expected.
ST Parser Error (STP0031): Invalid method instance.
FBD/LD Parser Errors (FBDP)
FBD/LD Parser Error (FBDP0001): The object is not connected.
FBD/LD Parser Error (FBDP0002): Invalid connector name '...'
FBD/LD Parser Error (FBDP0003): An output connector with the name '...' does already exist.
FBD/LD Parser Error (FBDP0004): An input connector with the name '...' does not exist.
FBD/LD Parser Error (FBDP0005): An output connector with the name '...' does not exist.
FBD/LD Parser Error (FBDP0006): Invalid label name '...'.
FBD/LD Parser Error (FBDP0007): Invalid jump target name '...'.
FBD/LD Parser Error (FBDP0008): A connector cannot connect to itself.
FBD/LD Parser Error (FBDP0009): Invalid variable name '...'.
FBD/LD Parser Error (FBDP0011): Wrong modifier for contact/coil
FBD/LD Parser Error (FBDP0012): InOut parameter (VAR_IN_OUT) not connected correctly
FBD/LD Parser Error (FBDP0013): Right power-rail has wrong predecessors.
FBD/LD Parser Error (FBDP0015): The name '...' is already used in another context.
FBD/LD Parser Error (FBDP0016): Missing instance for method call.
FBD/LD Parser Error (FBDP0017): Not all objects in the worksheet are connected to each other.
FBD/LD Parser Error (FBDP0018): Object is not connected correctly
FBD/LD Parser Warning (FBDP1001): Auto-generated Explicit Feedback.
FBD/LD Parser Warning (FBDP1002): Object is out of defined page border.
FBD/LD Parser Warning (FBDP1003): Auto-generated explicit feedback will not take init value from variable.
Data Types Parser Errors (DTP)
Data Types Parser Error (DTP0001): Unexpected end of file.
Data Types Parser Error (DTP0002): Invalid data type declaration.
Data Types Parser Error (various between DTP0003 and DTP0024): '...' expected.
Data Types Parser Error (DTP0004): Identifier expected.
Data Types Parser Error (DTP0010): Invalid range.
Data Types Parser Error (DTP40013): Range expected.
Data Types Parser Error (DTP0016): Integer literal expected.
Data Types Parser Error (DTP0019): White space characters in literals are not valid.
Data Types Parser Error (DTP0020): Integer literal expected.
Data Types Parser Error (DTP0022): Data type expected.
Data Types Parser Error (DTP0023): Constant literal expected.
Semantic Errors and Warnings
Semantic Error (SEM1001): The lower bound of the array dimension must not be greater than the upper bound.
Semantic Error (SEM1004): An array must have at least one dimension.
Semantic Error (SEM1006): The data type '...' is not an array.
Semantic Error (SEM1008): A library with the name '...' does already exist.
Semantic Error (SEM1011): Invalid constant '...'.
Semantic Error (SEM1012): A data type with the name '...' does already exist.
Semantic Error (SEM1013): Invalid data type '...'.
Semantic Error (SEM1014): Recursive dependency found in data type '...'.
Semantic Error (SEM1023): The label '...' does not exist.
Semantic Error (SEM1024): A label with the name '...' does already exist.
Semantic Error (SEM1027): A program organization unit with the name '...' does already exist.
Semantic Error (SEM1030): Recursive dependency found in program organization unit '...'.
Semantic Error (SEM1036): The variable '...' does not exist.
Semantic Error (SEM1037): The data type '...' is not a structure or program organization unit.
Semantic Error (SEM1038): The field or variable '...' does not exist in '...'.
Semantic Error (SEM1041): '...' is not a valid function block.
Semantic Error (SEM1042): '...' is not a valid function.
Semantic Error (SEM1045): The function block instance '...' does not exist.
Semantic Error (SEM1046): The function '...' expects only ... input parameter(s).
Semantic Error (SEM1047): The function '...' expects ... input parameter(s).
Semantic Error (SEM1051): A variable with the name '...' does already exist.
Semantic Error (SEM1063): Assignments to constant variables are not valid.
Semantic Error (SEM1064): The function '...' expects at least ... input parameter(s).
Semantic Error (SEM1065): Invalid implicit address '...'.
Semantic Error (SEM1066): Invalid base data type '...' for enumeration '...'.
Semantic Error (SEM1067): A value with the name '...' does already exist in enumeration '...'.
Semantic Error (SEM1068): Invalid value '...' in enumeration '...'.
Semantic Error (SEM1070): The data type of value '...' is not equal to the base data type '...' of enumeration '...' .
Semantic Error (SEM1072): A value with the name '...' does not exist in the enumeration '...'.
Semantic Error (SEM1074): An enumeration with the name '...' does not exist.
Semantic Error (SEM1075): The data type '...' is not an enumeration.
Semantic Error (SEM1076): The enumeration value '...' does not exist.
Semantic Error (SEM1077): Ambiguous enumeration value '...'.
Semantic Error (SEM1078): The data type of the case list element ('...') is not 'ANY_INT'.
Semantic Error (SEM1079): The data type of the expression ('...') is not 'ANY_INT'.
Semantic Error (SEM1080): The data type of the control variable ('...') is not 'ANY_INT'.
Semantic Error (SEM1081/SEM1082/SEM1083): The data type of the ... value expression ('...') is not 'ANY_INT'.
Semantic Error (SEM1085): The '...' statement expects an expression of type 'BOOL'.
Semantic Error (SEM1086): 'EXIT' is only allowed in the scope of an iteration statement.
Semantic Error (SEM1087): The variable '...' does not exist in '...'.
Semantic Error (SEM1089): The data type of the array index ('...') is not 'ANY_INT'.
Semantic Error (SEM1091): The function '...' does not define any input parameters.
Semantic Error (SEM1093): A field with the name '...' does already exist.
Semantic Error (SEM1094): The function block '...' does not contain a method '...' with the name.
Semantic Error (SEM1097): Invalid function call.
Semantic Error (SEM1099): The method '...' has no return value.
Semantic Error (SEM1100): The expression data type '...' is not equal to the variable data type '...'.
Semantic Error (various between SEM1101 and SEM1113): Wrong or mismatching operand data types.
Semantic Error (SEM1115, SEM1116): The function block '...' does not have an output/input parameter with the name '...'.
Semantic Error (SEM1117): The data type '...' of the parameter '...' and the data type '...' of assigned value are not equal.
Semantic Error (SEM1118): The data type '...' of the expression attached to the parameter '...' of the function '...' is invalid. (Expected data type: '...')
Semantic Error (SEM1126): The data types of the external variable '... : ...' and the related global variable '... : ...' are not equal.
Semantic Error (SEM1133): Assignments to read-only variables are not valid.
Semantic Error (SEM1134): The assignment of function blocks is not supported.
Semantic Error (SEM1139): VAR_IN_OUT parameter '...' must not be unassigned.
Semantic Error (SEM1140): Constant variables cannot be assigned to VAR_IN_OUT parameters.
Semantic Error (SEM1141): Read-only variables cannot be assigned to VAR_IN_OUT parameters.
Semantic Error (various between SEM1170 and SEM1179): State-machine relating errors
Semantic Error (SEM1173): The transition expects a condition of type 'BOOL'.
Semantic Error (SEM1186, SEM1187, SEM1188): There are too many ... defined in the project (current: ..., max. allowed: ...).
Semantic Error (SEM1189): The data type '...' of the expression attached to the parameter '...' of the function '...' cannot be implicitly converted to '...'.
Semantic Error (SEM1190): The specified IEC type '...' is inaccessible.
Semantic Error (SEM1191): The specified function block type '...' does not match the type '...' of the already defined function block instance '...'.
Semantic Error (SEM1192): There exists already an idle task in resource '...'
Semantic Error (SEM1194): The identifier is too long. (current length: ..., max. allowed length: ...)
Semantic Error (SEM1195): There are ... indices specified but the array ... defines ... dimension(s).
Semantic Error (SEM1196): Invalid index value.
Semantic Error (SEM1197): Index value exceeds the bounds of the array dimension.
Semantic Error (SEM1198): Assignment to step status is not allowed.
Semantic Error (SEM1200): The pragma with the name '...' cannot be found.
Semantic Error (SEM1201): The pragma '...' has invalid parameters.
Semantic Error (SEM1202): The pragma '...' has no parameter with name '...'.
Semantic Error (SEM1203): Invalid value '...' of parameter '...' of pragma '...'.
Semantic Error (SEM1205): The initialization value of the variable exceeds the size of the array data type '...'.
Semantic Error (SEM1207): The string constant is longer than the maximum length of the data type '...'.
Semantic Error (SEM1222): 'THIS' is not allowed in functions.
Semantic Error (SEM1225): 'CONTINUE' is only allowed in the scope of an iteration statement.
Semantic Error (SEM1230): Unconnected function input.
Semantic Error (SEM1232): The function '...' does not have an output parameter with the name '...'.
Semantic Error (SEM1233): The value '...' is already handled by a previous case.
Semantic Error (SEM1234): One or more values in the range '... .. ...' are already handled by a previous case.
Semantic Error (SEM1236): The output variable '...' is not allowed for functions.
Semantic Error (SEM1237): The usage of the function block VAR_IN_OUT parameter '...' is not allowed in user methods.
Semantic Error (SEM1238): A variable named '...' is already defined in this scope.
Semantic Error (SEM1239): '...' is inaccessible due to its protection level.
Semantic Error (SEM1245): Argument ...: Cannot convert from '...' to '...'.
Semantic Error (SEM1246): Method '...' does not take '...' arguments.
Semantic Error (SEM1251): Invalid partial access '...'.
Semantic Error (SEM1253): The data type '...' of variable '...' is not valid. It is required to be of type '...'.
Semantic Error (SEM1255): There are too many elements used in the program organization unit: '...' (current: ..., max. allowed: ...).
Semantic Error (SEM1259): Recursive method call found in method '...'
Semantic Error (SEM1265): The function '...' expects '...' output parameter(s).
Semantic Error (SEM1266): The function '...' expects only '...' output parameter(s).
Semantic Error (SEM1267): The function '...' expects the parameter '...' instead of '...'.
Semantic Error (SEM1268): Invalid method call.
Semantic Error (SEM1269): The parameter '...' has changed in the definition of the function.
Semantic Error (SEM1270): Invalid access to VAR_IN_OUT parameter '...' of function block '...'.
Semantic Error (SEM1275): The value '...' exceeds the range '...' to '...' of data type '...'.
Semantic Error (SEM1276): Reading values of generic formal parameters is not allowed.
Semantic Error (SEM1277): EN variables must be 'VAR_INPUT'.
Semantic Error (SEM1278): ENO variables must be 'VAR_OUTPUT'.
Semantic Warning (SEM2001): Ambiguous identifier '...'.
Semantic Warning (SEM2004, SEM2005, SEM2006): The POU '...' is not used.
Semantic Warning (SEM2007): There are no resources defined.
Semantic Warning (SEM2008): The variable '...' was named like a program organization unit that does already exist.
Semantic Warning (SEM2009): The variable '...' was named like a data type that does already exist.
Semantic Warning (SEM2010): The external usage of VAR_IN_OUT parameters is not allowed. No code will be generated for this statement.
Semantic Warning (SEM2013): The parameters of function block '...' have changed in definition.
Semantic Warning (SEM2014): Not all array elements are initialized.
Semantic Warning (SEM2015): The field '...' of '...' is initialized more than once.
Semantic Warning (SEM2016): The identifier is ambiguous between the variable '... : ... : ...' and the enumeration value '...'. The value of the variable is used.
Semantic Warning (SEM2017): The parameter '...' has changed in the definition of the method.
Semantic Warning (SEM2018): A program organization unit with the name '...' does already exist.
PLCnext User Components Compiler Errors
Components Compiler Error (PLCNEXT0001): The program name '...' conflicts with a program organization unit with the same name.
Components Compiler Error (PLCNEXT0002): The program name '...' conflicts with a program with the same name.
Components Compiler Error (PLCNEXT0003): The library description file name '...' inside the library must be equal to the library file name '...' on disk.
Components Compiler Error (PLCNEXT0004): The library name '...' inside the library description must be equal to the library description file name '...'.
Components Compiler Error (PLCNEXT0005): The component name '...' inside the component description must be equal to the component description file name '...'.
Components Compiler Error (PLCNEXT0006): The program name '...' inside the program description must be equal to the program description file name '...'.
Components Compiler Error (PLCNEXT0007): The library '...' does not support the controller '...'.
Components Compiler Error (PLCNEXT0008): Error during preparing configuration for controller '...'.
Components Compiler Error (PLCNEXT0009): Error during preparing configuration for controller '...'. Hint: ...
CIL Generator Errors and Warnings
CIL Generator Error (CILG0001): Internal Error.
CIL Generator Error (CILG0002): The size of the data area '... . ...' is not valid.
CIL Generator Error (CILG0003): The two data areas '... . ...' and '... . ...' are overlapping.
CIL Generator Error (CILG0004): There does not exist a matching data area for variable '...'.
CIL Generator Error (CILG0006): The size of the variable data type is greater than the available memory in the data area at '... . ...'.
CIL Generator Error (CILG0007): Assignments to read-only variables are not valid.
CIL Generator Error (CILG0009): The specified assembly reference '...' could not be found.
CIL Generator Error (CILG0011): STRUCTs and ARRAYs are not allowed in functions.
CIL Generator Error (CILG0012): CIL Code generation aborted.
CIL Generator Error (CILG0013/CILG0014/CILG0015): There exists a name conflict between ...
CIL Generator Error (CILG0016): The conversion of '...' values to data type '...' is not supported.
CIL Generator Error (CILG0021): There exists a name conflict between the task and the global variable '...'.
CIL Generator Error (CILG0022): There exists a name conflict between the program instance and the global variable '...'.
CIL Generator Error (CILG0025): The conversion of '...' BCD values to data type '...' is not supported.
CIL Generator Error (CILG0027): The method name '...' in program organization unit '...' is not allowed for user defined methods.
CIL Generator Error (CILG0028): The action is not found as BOOL variable nor as method.
CIL Generator Error (CILG0030 to CILG0036): The selected resource '...' does not support ...
CIL Generator Error (CILG0037): The output parameter '...' is not connected.
CIL Generator Error (CILG0038/CILG0039/CILG0040): There exists a name conflict between ...
CIL Generator Error (CILG0041): Invalid program organization unit name '...'
CIL Generator Error (CILG0044/CILG0045/CILG0046): The method '...':'...' is ...
CIL Generator Error (CILG0047): The type '...' is not an enum.
CIL Generator Error (CILG0048): The type '...' is not an interface.
CIL Generator Error (CILG0049/CILG0050): The field '...'.'...' is ...
CIL Generator Error (CILG0051/CILG0052): In method '...':'...' is ...
CIL Generator Error (CILG0053): The length '...' of type '...' is not valid
CIL Generator Error (CILG0054): There exists a name conflict between the program organization unit '...' and an interlock with the same name inside the program organization unit.
CIL Generator Error (CILG0055): The function '...' defines ... input parameters which exceeds the limit of 29
CIL Generator Error (CILG1003): Invalid string constant ... for data type STRING
CIL Compiler Errors and Warnings
CIL Compiler Error (CILC0001): Error during generating native code.
CIL Compiler Error (CILC2003): The fieldnames associated to the class/struct exceeds the limit
CIL Compiler Error (CILC2005): Field offset exceeds the limit of 16MB
CIL Compiler Error (CILC2007): Amount of fields exceeds the limit of 130K
CIL Compiler Error (CILC3014): The branch operation exceeds the limit of the current CPU
CIL Compiler Error (CILC3019): Meta format of the generated image exceeds the internal limit
CIL Compiler Error (CILC3020): The internal memory of the compiler is exceeded
CIL Compiler Error (CILC3021): The offset is too large, please move the variable into front of the variable list
CIL Compiler Error (CILC3026): The fixed array layout size of the type does not match the array boundary
OPC UA PubSub Configuration Errors
OPC UA PubSub Configuration Error (PLCN0024): The OPC UA PubSub configuration is not valid.
OPC UA PubSub Configuration Error (PLCN0026): '...': Connection name must be unique.
OPC UA PubSub Configuration Error (PLCN0027): '...': Publisher ID must be unique.
OPC UA PubSub Configuration Error (PLCN0028): '...': Network address must be an url with the following pattern: opc.udp://<ip-4-address>(:port)
OPC UA PubSub Configuration Error (PLCN0029): '...': The network interface must be one of the interfaces provided by the controller.
OPC UA PubSub Configuration Error (PLCN0030): '...': The name of the published data set must be unique within the configuration.
OPC UA PubSub Configuration Error (PLCN0031): '...': The variable '...' was not found in the current configuration or it does not have a supported type.
OPC UA PubSub Configuration Error (PLCN0032): '...': The name of the reader group must be unique within the configuration.
OPC UA PubSub Configuration Error (PLCN0033): '...': The name of the reader must be unique within the configuration.
OPC UA PubSub Configuration Error (PLCN0034): '...': The target variable '...' was not found in the current configuration or it does not have a supported type.
OPC UA PubSub Configuration Error (PLCN0035): '...': The name of the writer group must be unique within the connection.
OPC UA PubSub Configuration Error (PLCN0036): '...': The ID of the writer group must be unique within the connection.
OPC UA PubSub Configuration Error (PLCN0037): '...': The name of the writer must be unique within the connection.
OPC UA PubSub Configuration Error (PLCN0038): '...': The ID of the writer must be unique within the connection.
OPC UA PubSub Configuration Error (PLCN0039): '...': The specified data set does not exist in the current configuration.
OPC UA PubSub Configuration Error (PLCN0040): '...': The published variable '...' may not also be subscribed.
OPC UA PubSub Configuration Error (PLCN0041): '...': The subscribed variable '...' may not also be published.
OPC UA PubSub Configuration Error (PLCN0042): '...':
OPC UA PubSub Configuration Error (PLCN0043): '...': The id must not have the value '...'.
OPC UA PubSub Configuration Error (PLCN0044): '...': The publishing interval must not be less than 20 ms.
Data Logger Configuration Errors
Data Logger Error (DL0001): The task context for the data logger session '...' is not defined. Please select an existing task.
Data Logger Error (DL0002): The trigger condition operand for the data logger session '...' is not defined. Please select a variable or define a constant.
Data List Build Errors
Data List Build Error (DL0001): Invalid connection due to incompatible data types.
Data List Build Error (DL0002): Invalid port connection! Please disconnect to remove invalid port ("...").
Safety-Related Semantic Errors
Safety Semantic Error: Non-safe input writes on safe output ...!
Safety Semantic Error: Unknown Function or Function Block '...'.
Safety Semantic Error: The Function or Function Block '...' cannot be used in safety programs.
Safety Semantic Error: Invalid data type '...'.
Safety Semantic Error: The defined FB instance '...' is never used.
Safety Semantic Error: The FB instance '...' is used more than once.
Safety Semantic Error: Invalid overwriting of input variable '...'.
Safety Semantic Error: Feedback not allowed.
Safety Semantic Error: Short circuits not allowed in ladder.
Safety Semantic Error: The variable '...' is read and written in the same network.
Safety Semantic Error: The output '...' is written more than once.
Safety Semantic Error: The global variable '...' is written more than once.
Safety Semantic Error: The variable '...' is declared local as well as global.
Safety Semantic Error: The variable '...' is read before written.
Safety Semantic Error: The output '...' is read before written.
Safety Semantic Warning: The variable '...' is not used.
Safety Semantic Warning: The global variable '...' is used within a single POU. Consider to use a local variable.
Safety Semantic Error: Invalid statement in FBD / LD worksheet.
Safety Semantic Warning: The global variable '...' may have a storing behavior as its write access can be jumped over.
Safety Semantic Warning: The output '...' may have a storing behavior as its write access can be jumped over.
Safety Semantic Error: Backward jumps are not allowed.
Safety Semantic Error: The variable '...' is written more than once in the same network.
Safety Semantic Error: Instance signature diverges from type signature.
Safety Semantic Error: No corresponding jump found!
Safety Semantic Error: Variable with usage type 'Input' is written to.
Safety Semantic Error: Invalid parameter! The input parameter of the function block must be a variable.
Safety Semantic Error: Invalid parameter! The input parameter of the function block must be a constant.
Safety Semantic Error: The variable '...' is not defined.
Safety Semantic Error: The variable usages 'Program', 'IN Port' and 'OUT Port' are not supported in safety POUs.
Safety Semantic Error: The global variable '...' is not defined.
Miscellaneous Safety-Related Errors
Error (Assemble Download File): The file '...' is missing.
Error: Creating the build output folder '...' failed.
Safety Intermediate Code Generator Errors
Error (Safety Intermediate Code Generator): Invalid statement.
Error (Safety Intermediate Code Generator): Undefined Variable '...'.
Error (Safety Intermediate Code Generator): Undefined Function Block instance '...'.
Error (Safety Intermediate Code Generator): Unknown data type '...'.
Error (Safety Intermediate Code Generator): Unknown Function or Function Block '...' used by the Function or Function Block '...'.
Error (Safety Intermediate Code Generator): Invalid initial value expression.
Safety Specific Code Generator Errors
Error (Safety Specific Code Generator): Illegal data type: '...'.
Error (Safety Specific Code Generator): Unknown variable.
Error (Safety Specific Code Generator): Unknown global variable '...'.
Error (Safety Specific Code Generator): Invalid processor type specified in the device profile: '...'.
Error (Safety Specific Code Generator): Missing file in the device profile: '...'.
Error (Safety Specific Code Generator): Unknown POU '...'.
Safety Backend Compiler Errors
Internal Error (Safety Backend Compiler)! Call the technical support.
Internal Error '...' (Safety Backend Compiler). Call the technical support.
Error (Safety Backend Compiler): Stack limit exceeded ... Shrink the project.
Error (Safety Backend Compiler): Maximum limit of stack elements exceeded ... Shrink the project. (Safety Backend Compiler)
Safety Violation Messages and Data Integrity Errors
Error (Data Integrity Check): The worksheet 'POUname:WSname' has no valid safety seal.
Error (Data Integrity Check): The worksheet 'POUname:WSname' has no safety seal.
Error (Data Integrity Check): Internal error (SafetyViolation).
Error (Data Integrity Check): The POU '...' has no valid safety seal.
Error (Data Integrity Check): The POU '...' has no safety seal.
Safety Library Parser Errors
Error (Safety Library Parser): Invalid Type of POU '...' specified in the Safety Library '...'.
Error (Safety Library Parser): Error parsing the library '...': Invalid file format.
Error (Safety Library Parser): Invalid safety seal for the POU '...' in the Safety Library '...'.
Error (Safety Library Parser): POU '...': Definition mismatch between the Safety Library '...' and the Standard Library '...'.
Error (Safety Library Parser): Error parsing the library '...': Invalid or missing definition for the POU '...'.
Error (Safety Library Parser): Safety violation! Safety seal for library '...' is missing.
Error (Safety Library Parser): Safety violation! Safety seal for Firmware POU '...' is missing.
Error (Safety Library Parser): Invalid safety seal for the safety library '...'.
Error (Safety Library Parser): Invalid safety library '...'.
Error (Safety Library Parser): The default library '...' is missing or empty.
Safety Library Export Errors
Error (Safety Library Export): The safety inventory of the created library is missing.
Error (Safety Library Export): Only visible POUs can be released.
Error (Safety Library Export): Adding a time stamp to the signature of the safety inventory failed.
Error (Safety Library Export): Releasing the item '...' failed.
Error (Safety Library Export): Creating the signature of the safety inventory failed.
Error (Safety Library Export): Saving the safety inventory failed.
Error Messages of the Safety PLC
Error: Code in POU '...' exceeds 64K limit! Shrink the POU.
Error: Error occurred in POU '...' during code generation!
Error: Failure State: Service not possible. Please reset the Safety PLC or download a project!
Error: Debug watchdog (10 min) elapsed! The debug mode is active but the client is logged out. (Safety PLC time: '...')
Error: Maximum number of errors reached at WN '...'! Code generation stopped!
Error: Memory error! Not enough memory on Safety PLC for POU '...'! Shrink the project.
Error: Memory error! POU '...' exceeds 64K module size! Shrink the POU.
Error: Memory error! Project does not fit into Safety PLC memory! Shrink the project.
Error: Not enough memory for force list! Reduce the amount of forced variables.
Error: Too many FB instances! Shrink the project. (Safety PLC time: '...')
Error: Too many function calls! Shrink the project. (Safety PLC time: '...')
Error: Too many marker! Shrink the project. (Safety PLC time: '...')
Error: Wrong project file version number! The project cannot be processed with this Safety PLC. Update your Safety PLC hardware.
Error: Stack overflow during execution of the IEC 61131 user program! Safety PLC stopped!
Error: Division by zero during execution of the IEC 61131 user program! Safety PLC stopped!
Internal Error
Safety PLC event! '...'
Function/Function Block Reference
Data Types: Generic and Elementary
Implicit Data Type Conversion
Function Block Instantiation
Execution Control: EN/ENO
Inserting POUs with EN/ENO
Evaluating the ENO output for logic functions/function blocks
Writing user-defined FUs/FBs with EN/ENO - Best Practice
IEC 61131-3 Functions and Function Blocks
Arithmetic
ADD / ADD_S
ADD_LDT_LTIME
ADD_LTOD_LTIME
DIV / DIV_S
EXPT
MOD
MUL / MUL_S
NEG
SUB / SUB_S
SUB_LDATE_LDATE
SUB_LDT_LDT
SUB_LDT_LTIME
SUB_LTOD_LTIME
SUB_LTOD_LTOD
Arrays
LOWER_BOUND
UPPER_BOUND
Bistable
RS / RS_S
SR / SR_S
Bit Shift
ROL
ROR
SHL
SHL_WORD
SHR
SHR_WORD
Bitwise Boolean
AND / AND_S
EN_OUT
NOT / NOT_S
OR / OR_S
XOR / XOR_S
Character String
CONCAT
CONCAT_WSTRING
DELETE
DELETE_WSTRING
FIND
FIND_WSTRING
INSERT
INSERT_WSTRING
LEFT
LEFT_WSTRING
LEN
MID
MID_WSTRING
REPLACE
REPLACE_WSTRING
RIGHT
RIGHT_WSTRING
Comparison Functions
EQ / EQ_S
GE / GE_S
GT / GT_S
LE / LE_S
LT / LT_S
NE / NE_S
IS_NAN
IS_NEG_INF
IS_POS_INF
Counter
CTD / CTD_S
CTU / CTU_S
CTUD / CTUD_S
Data Type Conversion
BCD_TO_*
CONCAT_LDATE
CONCAT_LDT
CONCAT_LTIME
CONCAT_LTOD
CONCAT_TIME
FROM_BIG_ENDIAN
FROM_LITTLE_ENDIAN
LDT_TO_LTOD
SPLIT_LDATE
SPLIT_LDT
SPLIT_LTIME
SPLIT_LTOD
SPLIT_TIME
TO_BCD_BYTE
TO_BCD_DWORD
TO_BCD_LWORD
TO_BCD_WORD
TO_BIG_ENDIAN
TO_BOOL
TO_BYTE
TO_DINT
TO_DWORD
TO_INT
TO_LINT
TO_LITTLE_ENDIAN
TO_LREAL
TO_LTIME
TO_LWORD
TO_REAL
TO_SINT
TO_STRING
TO_TIME
TO_UDINT
TO_UINT
TO_ULINT
TO_USINT
TO_WORD
TO_WSTRING
TRUNC_SINT, TRUNC_INT, TRUNC_DINT, TRUNC_LINT
Safety-related Data Type Conversion Functions
SAFEINT_CONVERT_ENDIANNESS
Assembling/Splitting FBs for (SAFE)BOOL/BYTE/WORD/DWORD
Edge Detection
F_TRIG / F_TRIG_S
R_TRIG / R_TRIG_S
Numerical and Arithmetic
ABS
ACOS
ASIN
ATAN
COS
EXP
LN
LOG
SIN
SQRT
TAN
Selection
LIMIT
MAX
MIN
MOVE
MUX
SEL / SEL_S
Timer
PULSE_GEN / PULSE_GEN_S
TOF / TOF_S, TOF_LTIME
TON / TON_S, TON_LTIME
TP / TP_S, TP_LTIME
Extended Functions and Function Blocks
Data Handling
*_TO_BUF
BIT_TEST
BUF_TO_*
GET_BIT
GET_CHAR
GET_LSB
GET_MSB
GET_WCHAR
I_BIT_IN_*
INVERT_BIT
MEMORY_COMPARE
MEMORY_COPY
MEMORY_SET
PACK
PARITY
R_BIT_IN_*
RESET_BIT
S_BIT_IN_*
SET_BIT
SET_LSB
SET_MSB
SIZEOF
STRING_COPY
SWAP
UNPACK
Ethernet
TLS_SOCKET_2
TLS_SEND_2
TLS_RECEIVE_2
UDP_SOCKET_2
UDP_SEND_2
UDP_RECEIVE_2
TLS/UDP Error / Status Codes for Ethernet FBs
File Access
FILE_CLOSE
FILE_OPEN
FILE_READ
FILE_REMOVE
FILE_SEEK
FILE_TELL
FILE_WRITE
Hardware Access
RTC_S
RTC_WS
Loop Controller
DERIVAT / DERIVAT_LTIME
FPID
INTEGRAL / INTEGRAL_LTIME
PID / PID_LTIME
Variable Access
GET_SYMBOL
PLCnext Controller Function Blocks
Alarming
General Information on Alarms
ALM_ACK
ALM_ALARM
ALM_ALARM_PARAM
ALM_CONF
ALM_CUSTOM_ALARM
ALM_REGISTER
ALM_REGISTER_PARAM
Axioline
AX_CONTROL
PDI_READ
PDI_WRITE
Device Information
DEVICE_INFO
GET_MICROSECONDS
Diagnosis
READ_UPS_DIAGNOSTICS
Ethernet
NETLOAD_LIMITER_STATISTIC
Interbus
IB_CONTROL_NEXT
PCP_CONNECT
PCP_READ
PCP_WRITE
Licensing
LICENSE_STATUS
Localization
GET_LANG_STRING
GET_LANG_WSTRING
Profinet
ADDRESS_TO_ID
AR_MGT
AR_STATISTIC_ITERATE
AR_STATISTIC_SINGLE
GET_MODULE_DIFF_BLOCK
ID_TO_ADDRESS
RDREC
RECV_ALARM
WRREC
Security
SEC_TA4PLCNEXT_1ST_GEN
SEC_TA4PLCNEXT_2ND_GEN
SEC_VERIFY_DEVICE_IDENTITY
Timer
TOF_R / TOF_R_LTIME
TON_R / TON_R_LTIME
TP_R / TP_R_LTIME
Exception Infos Function Blocks
GET_EXCEPTION_INFOS
Safety-Related PLCopen Function Blocks
Safety of the Machine or System
Activating Function Blocks (Activate)
Individual Activation of Safety Equipment
Group Activation of Safety Equipment
Modular Machines/Systems with Safety Equipment
Interlocking in Accordance with DIN EN ISO 14119/14120
SF_Antivalent
Functional description
Fault avoidance
Activate input
S_ChannelNC and S_ChannelNO inputs
DiscrepancyTime input
Ready output
S_AntivalentOut output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application examples
SF_EDM (External Device Monitoring)
Functional description
Fault avoidance
Activate input
S_OutControl input
S_EDM1 and S_EDM2 inputs
MonitoringTime input
S_StartReset input
Reset input
Ready output
S_EDM_Out output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application examples
SF_EmergencyStop
Functional description
Fault avoidance
Activate input
S_EStopIn input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_EStopOut output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application examples
SF_EnableSwitch
Functional description
Fault avoidance
Activate input
S_SafetyActive input
S_EnableSwitchCh1 and S_EnableSwitchCh2 inputs
S_AutoReset input
Reset input
Ready output
S_EnableSwitchOut output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagram
Additional application example
SF_Equivalent
Functional description
Fault avoidance
Activate input
S_ChannelA and S_ChannelB inputs
DiscrepancyTime input
Ready output
S_EquivalentOut output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Details of the application example
SF_ESPE
Functional description
Fault avoidance
Activate input
S_ESPE_In input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_ESPE_Out output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application example
SF_GuardLocking 2
Functional description
Fault avoidance
Activate input
S_GuardMonitoring input
S_SafetyActive input
S_GuardLock input
UnlockRequest input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_GuardLocked output
S_UnlockGuard output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
SF_GuardMonitoring
Functional description
Fault avoidance
Activate input
S_GuardSwitch1 and S_GuardSwitch2 inputs
DiscrepancyTime input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_GuardMonitoring output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application examples
SF_ModeSelector
Functional description
Fault avoidance
Activate input
S_Mode0 to S_Mode7 inputs
S_Unlock input
S_SetMode input
AutoSetMode input
ModeMonitorTime input
Reset input
Ready output
S_Mode0Sel to S_Mode7Sel outputs
S_AnyModeSel output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application examples
SF_MutingPar
Functional description
Fault avoidance
Activate input
S_AOPD_In input
MutingSwitch11 and MutingSwitch12 inputs
MutingSwitch21 and MutingSwitch22 inputs
S_MutingLamp input
DiscTime11_12 input
DiscTime21_22 input
MaxMutingTime input
MaxOverrideTime input
MutingEnable input
S_StartStopOverride input
S_StartReset input
Reset input
Ready output
S_AOPD_Out output
S_MutingActive output
OverridePossible output
OverrideActive output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Details of the application example
SF_MutingPar_2Sensor
Functional description
Fault avoidance
Activate input
S_AOPD_In input
S_MutingSwitch11 and S_MutingSwitch12 inputs
S_MutingLamp input
DiscTimeEntry input
MaxMutingTime input
MaxOverrideTime input
MutingEnable input
S_StartStopOverride input
S_StartReset input
Reset input
Ready output
S_AOPD_Out output
S_MutingActive output
OverridePossible output
OverrideActive output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Details of the application example
SF_MutingSeq
Functional description
Fault avoidance
Activate input
S_AOPD_In input
MutingSwitch11 and MutingSwitch12 inputs
MutingSwitch21 and MutingSwitch22 inputs
S_MutingLamp input
MaxMutingTime input
MaxOverrideTime input
MutingEnable input
S_StartStopOverride input
S_StartReset input
Reset input
Ready output
S_AOPD_Out output
S_MutingActive output
OverridePossible output
OverrideActive output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Details of the application example
SF_OutControl
Functional description
Fault avoidance
Activate input
S_SafeControl input
ProcessControl input
StaticControl input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_OutControl output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application example
SF_PSE
Functional description
Fault avoidance
Activate input
S_PSE_In input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_PSE_Out output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Additional application example
SF_Reset
Functional description
Fault avoidance
Activate input
ResetIn input
RisingEdge input
EdgeMonitoring input
MinEdgeTime input
MaxEdgeTime input
OperationStop input
Ready output
ResetOut output
ResetPossible output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
SF_SafetyRequest
Functional description
Fault avoidance
Activate input
S_OpMode input
S_Acknowledge input
MonitoringTime input
Reset input
Ready output
S_SafetyActive output
S_SafetyRequest output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Details about the signal sequence diagram
Details of the application example
SF_TestableSafetySensor
Functional description
Fault avoidance
Activate input
S_OSSD_In input
StartTest input
TestTime input
NoExternalTest input
S_StartReset input
S_AutoReset input
Reset input
Ready output
S_OSSD_Out output
S_TestOut output
TestPossible output
TestExecuted output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Additional signal sequence diagrams
Details of the application example
SF_TwoHandControlTypeII
Functional description
Fault avoidance
Activate input
S_Button1 and S_Button2 inputs
Ready output
S_TwoHandOut output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Details of the application example
SF_TwoHandControlTypeIII
Functional description
Fault avoidance
Activate input
S_Button1 and S_Button2 inputs
Ready output
S_TwoHandOut output
SafetyDemand output
ResetRequest output
Error output
DiagCode output
Diagnostic codes
Implementation of safety requirements from applicable standards
Details of the application example
Safety-Related Recipe Handling Function Blocks
Safety of the Machine or System
Security Considerations for Recipe Files
Recipe Files: Background Information and File Structure
Use Cases, Signal Sequence Diagrams & Application Examples
Use case: Reading safety-related threshold values from a recipe file
Use case: Saving the status of a safety-related start-up inhibit beyond a Safety PLC restart
Signal sequence: Competing write and read accesses to the same data set
Application example: Preventing competing accesses to recipe files
Signal sequence: Competing write and delete accesses to the same data set
Signal sequence: Competing file delete and read accesses
CPU load optimization for a pair of instances for writing and reading of a recipe file
SF_RecipeWrite
Functional description
Fault avoidance
Activate input
CommandWrite input
IDRecipeFile input
IDRecipeDataSet input
PayloadWrite** inputs
Done output
DataSetCRC and FileCRC outputs
DiagCode output
Diagnostic codes
CPU Load Measurements (SPLC 3000 class)
SF_RecipeRead
Functional description
Fault avoidance
Activate input
CommandRead input
IDRecipeFile input
IDRecipeDataSet input
DataSetCRC and FileCRC inputs
CheckDataSetCRC and CheckFileCRC inputs
CheckProjectCRC input
CheckSerialNumber input
FV_PayloadRead** inputs
Done output
PayloadRead** outputs
DiagCode output
Diagnostic codes
CPU Load Measurements (SPLC 3000 class)
SF_RecipeDeleteFile
Functional description
Fault avoidance
Activate input
CommandDelete input
IDRecipeFile input
Done output
DiagCode output
Diagnostic codes
SF_RecipeDeleteDataSet
Functional description
Fault avoidance
Activate input
CommandDelete input
IDRecipeFile input
IDRecipeDataSet input
Done output
FileCRC output
DiagCode output
Diagnostic codes
Glossary: Terms and Abbreviations
Contact
Phoenix Contact Industrial Security Guideline
Phoenix Contact Industrial Security Guideline
About this documentation
Phoenix Contact Security Advisories (PSIRT)
Why Cyber Security?
Security-relevant Laws and Industrial Standards
IEC 62443 Standard: Security for Industrial Applications
ISO/IEC 27001 Standard: Security for Traditional IT Systems
IT and OT/ICS: A Comparison
360° Security - The Holistic Approach
Concepts & Tools based on IEC 62443
Least Privilege Concept
Defense in Depth Concept
Zones and Conduits (with Protection Needs Analysis)
Data Classification & Protection Needs
Security Levels
Foundational Requirements (FR) and System Requirements (SR)
Security from the operator's view
ICS Security Concept by Phoenix Contact
Implementation by Technical and Organizational Means
Network Segmentation
Remote Access/Remote Maintenance
Firewalls
Anti-Malware Inspection
NAT and Port Forwarding
Port Protection and Port Alerts
(Central) User Management
Passwords
Secure Communication by Encryption and Authentication
Checksums and Signatures
Certificates
Keys: PSK, private/public
Protection of Project Data on the Hard Disk and during Transfer
VPN
TLS / HTTP(S)
Restricted Mobile Access: Protecting a WLAN by Password
Technical PC Hardening Measures
Logging and Monitoring
Data Backup and Restore
Plant Management
List of Abbreviations
You must have JavaScript enabled to use the Online Help.