-

Quickstart: Overview on Engineering Steps

After launching PLCnext Engineer or closing a project, the Start Page is visible. Here, you can open or create an engineering project.

What is an engineering project?

General engineering steps

The following procedure describes the general steps for developing an engineering project from scratch. Depending on your requirements, particular steps in the following procedure may be omitted.

Note
The following procedure does not consider the use case "loading project sources from the controller, modifying the project and startup the modified application". Refer to the topic "Reading Project Sources from the Controller".

Note
The following procedure does not explicitly consider the creation of a safety-related application.

StepTo Do...
1Project creation

Create a new project, by selecting
  • a controller-based template on the Start Page.
  • by selecting an example project template for your controller on the Start Page.
  • the command 'File > New Project'. This command creates and empty project with an empty PLANT.
2PLANT structuring

Model your application in the PLANT by inserting devices. This can, for example, be done by scanning the network or using the station editor of existing devices in PLANT.

Example: scanning when starting with a controller-related template

Example: scanning Profinet devices

Additional methods for scanning devices are described in the help chapter "Online: Scan Network to add Devices to PLANT".
It is also possible to insert devices via the station editors. Refer to topic "Offline: Add Devices manually to PLANT" for detailed information.
3IP configuration

Define the IP settings for the devices in the PLANT.

If you work online, i.e., you have scanned the network, you can modify the IP settings of scanned devices directly in the 'Online Devices' editor as shown in the first example below.

If you work offline and you have structured the PLANT via the station editors, the IP settings are assigned according to the IP range set for the 'Project' node. You can then modify them via the 'Settings' editor of each device (see second example procedure below).

Example: read IP configuration from scanned devices via the 'Online Devices' editor

Example: define the IP configuration via the 'Settings' editor
4Device parameterization

Parameterize the devices in the PLANT. For that purpose, double-click each device node in the PLANT to open its properties in the editors area.

To parameterize safety-related devices, you have to be logged on to the Safety-related Area.

Example

Further Info
Refer to topic "Device configuration/parameterization" for further information.

5Add Libraries or Import IEC Types

If required:
6Application code development

  • Create POUs in the respective category in the COMPONENTS area:
    'Programming > Local > Programs' and 'Functions and Function Blocks'.
    Object-oriented function blocks with methods are supported.
  • Define data types (folder 'COMPONENTS | Programming > Local > Data Types').
  • Program the POUs in one of the IEC 61131-3 programming languages FBD/LD, ST or SFC.

    Safety-related code has to be written in SNOLD code worksheets. For that purpose, you have to be logged on to the Safety-related Area.

  • With a PLCnext Technology controller, you can declare IN and OUT ports in program POUs instead of or in addition to resource-global variables.

    Via these ports, communication is possible with non-IEC 61131-3 programs you have included as libraries. See section "Integrating externally developed non-IEC 61131-3 programs ..." for details.

  • Assign global IEC 61131-3 variables to process data items. By defining this mapping, the application is able to read input and write output terminals. The assignment can be done in the Data List editors of, for example, the 'IEC 61131-3' node or I/O device involved.

    With a PLCnext Technology controller, IN and OUT ports can be assigned to each other in the Port List of the 'PLCnext' node. This also includes ports provided by non-IEC 61131-3 programs you have included as libraries.

    If a Safety PLC is included, you can create exchange variables which enable the communication with the standard (non-safety-related controller).

Example: POU in FBD

Example: Assignment of global variables to process data items in the controller Data List

Further Info
Refer to chapter "IEC 61131-3 Programming" for details.

7Task scheduling and program instantiation

  1. Double-click the 'PLCnext' node in the PLANT and open the 'Tasks and Events' editor.
  2. Insert and configure tasks and events.
  3. Instantiate programs to be run in the defined tasks.

    PLCnext Technology controllers can also execute non-IEC 61131-3 programs.

Further Info
Refer to chapter "Controller Runtime Configuration" for details.

Example for a PLCnext Technology controller

Note
If a Safety PLC is included in your project, the PLCnext 'Tasks and Events' editor contains a SafetyProxyTask which has been created automatically. This SafetyProxyTask triggers the execution of the Safety PLC. This task cannot be edited or deleted.
Refer to the topic "Safety PLC Runtime Configuration" for details.

8HMI application design

  1. Insert at least one HMI page in the PLANT.
  2. Design the HMI page(s) by inserting HMI objects via drag & drop from the COMPONENTS area.
  3. Create HMI tags for global IEC 61131-3 variables and assign these HMI tags to dynamic properties of HMI objects.

    By defining this mapping, the objects on the HMI page(s) can be animated (depending on variable/process data item values) and they can control the application as they can write variables (markers and outputs).

    HMI tags can be created in the Data List editor of the 'IEC 61131-3' node.
    The following assignment of an HMI tag to a dynamic property is to be done in the properties editor of the respective HMI object/symbol.

Further Info
Refer to chapter "HMI Application" for details.

9OPC UA configuration

PLCnext Technology controllers include an OPC UA Server which is integrated in the controller besides the controller runtime.

In addition, PLCnext Technology controllers with a firmware version 22.0 or newer support the OPC UA PubSub (publisher/subscriber) communication model.

OPC UA-related settings can be done in the editors of the 'OPC UA' PLANT tree node.
10Application Startup

  1. Execute the 'Write and Start' command to build the project image (compile the project), write it to the controller and run the application.

    The 'Write and Start' command is available in the context menu of the controller node (PLANT) and in the 'Cockpit' editor. To open the 'Cockpit', double-click the controller node in the PLANT and click 'Cockpit' in the editors area.

    Alternatively, run the project on the integrated simulation (if available for the controller type used). This allows you to test the behavior of the application logic without connected controller. Refer to the topic "Controller Simulation ‣ Controller Simulation
    ×‣ Safety PLC Simulation
    ×
    " for detailed information.

    Typical programming errors are detected by the automatic background check. (Note that the error list is only updated after completing the compilation.) Using the command 'Project > Rebuild' you can additionally build the entire project (e.g., for eliminating programming errors) without writing it to the controller.

  2. Use the monitoring and debugging tools for performing a function test.

    Further Info
    Refer to chapter "Controller Commissioning ‣ Controller Commissioning: From Compiling to Debugging
    ×‣ Safety PLC Commissioning: From Compiling to Debugging
    ×
    " for details.

11Safety-related Application Startup

If a Safety PLC is included in your project, it has to be controlled completely independent of the standard (non-safety-related) controller. For that purpose an own 'Safety Cockpit' is provided. Here, you have to perform the same steps as for standard controller:

  1. 'Write and Start' the safety-related application to the Safety PLC (in the Safety Cockpit or via context menu of the Safety PLC).
  2. Use the monitoring and debugging tools for performing a function test.

    Further Info
    Refer to chapter "Safety PLC Commissioning" for details.