Programming on PLCnext Technology

Demands on automation technology are increasing due to digitization in the industrial sector. Flexibility, networking, exchange of information, the “Internet of Things” (IoT) are gaining ever more importance for modern, flexible and efficient production. Automation systems and their controllers must become more adaptable and must be able to react ever faster to new requirements.

To meet the changing demands of industry, Phoenix Contact developed PLCnext Technology as the basis for a new, open control platform. PLCnext Technology combines all of the communication properties and advantages of the traditional PLC world with the openness and flexibility of smart devices. Both the control platform and the cloud architecture are based on open-source components which are undergoing continuous, manufacturer-neutral development.

Previously, programming of PLC applications was only possible in the IEC 61131-3 programming languages. PLCnext Technology allows developers from various corporate areas, technology disciplines and generations to work in parallel with and yet independently of each other on one automation application. And they can do that in the programming environment to which they are accustomed. Whether with established and proven programming tools such as Visual Studio®Eclipse®, MATLAB®/Simulink®  or PLCnext Engineer. The programming code can be created in the traditional way (that is, in accordance with IEC 61131-3), in C++ or C# code, or with Simulink® modelling.

PLCnext Technology connects and combines traditional PLC programming and high-level language programming. Thus, different programming systems can be used on one platform.

Proficloud, a professional cloud solution and part of PLCnext Technology, enables you to not only collect and process data directly on the controller, but to also have it transferred to the cloud. Therefore, data is more easily available and it can be retrieved and used regardless of the location and time. All performance and energy data of your system is available anywhere and at any time. Cloud-based services are also available, e.g., for data analysis, predictive maintenance, etc.

The open PLCnext Technology platform enables you to extend the benefits of conventional PLCs and provides you with a basis for cutting-edge automation capable of meeting all of the demands of the IoT world.

Advantages at a glance

  • Accelerated startup in comparison to conventional control platforms because several developers can work on one program in parallel with and yet independently of each other in different programming languages.
  • Convenient engineering, thanks to the use of established programming tools such as PLCnext Engineer, MATLAB®/Simulink® , Eclipse®, or Visual Studio®.
  • Reliable operation because determinism, real-time behavior and cycle-consistent data exchange are assured regardless of the programming language.
  • Cost-efficient and flexible, thanks to the use of freely available software from the open source community.
  • Future-proof and adaptable, because new functions and future technologies can be integrated quickly and easily.

So many features - where to start?

Before creating your first project in the PLCnext Technology context, get good grasp of the core concepts. Don't worry - you don't have to dive deep into it for starters. To decide which way is the best for your project, just know the key differences. 

Just watch this 6-minute video where PLCnext Runtime System expert Martin Boers tells what's what in PLCnext Technology. This will give you an idea where to plug in your coding project and why that's a good way to interact with components of the PLCnext Runtime System for your purposes.



Note: Tutorial videos are embedded from the Phoenix Contact Technical Support YouTube channel.  With playing an embedded YouTube video in this platform, you accept the YouTube Terms & Conditions.
Depending on your personal settings in the Cookie consent dialog you may have allowed cookies for marketing purposes which will remain on your device. The data gained through this will be used by YouTube to provide video suggestions and advertisements based on your browsing habits, and may be made available to other parties. 


Find more tutorial videos in the regarding sections of this Info Center, or watch them all directly on the Phoenix Contact Technical Support YouTube channel.

Creating programs with C++

With PLCnext Technology, you can create programs in C++ and import these into PLCnext Engineer. There, you can instantiate the programs and use them in the same way as conventional IEC 61131-3 programs in real time. Consistent data exchange with programs that were created with other high-level languages or IEC 61131-3 is ensured via the ports of the GDS. This way, the programs can run together in the same tasks.

PLCnext Engineer provides an add-in for Eclipse®, an SDK (Software Development Kit), as well as a LibraryBuilder. These tools support you in the use of your C++ program on a controller with PLCnext Technology. The Eclipse® development environment is particularly suitable because it can be used under both Windows® and Linux®, and is commonly used in C++ programming.

Creating function blocks and functions with C#

Create function blocks and functions in C# with Visual Studio®. You can use an extension from PLCnext Engineer  to convert them into libraries, import them into PLCnext Engineer, and use them for your programming. The function blocks or functions can be called up in PLCnext Engineer, e.g., in the ST (Structured Text) or LD (Ladder Diagram) code worksheet, and used for your programming.

The IEC 61131 runtime system of the controller (eCLR) is a .Net™-based runtime that supports both IEC 61131-3 and C# code. For this reason, the Visual Studio® development environment can be used for C#.



•  Web browser recommendation: Chrome/Edge 88 or newer, Firefox ESR 90 or neweror Safari • 
• Published/reviewed: 2022-09-14 • Revision 046 •