By Chigekwu J IKE, Oct 2021

Chigekwu Joseph IKE is a Systems Engineer with years of experience working with CODESYS at DAJO Solutions Ltd.

In this article we will discuss the challenges of:

  • Different versions of CODESYS and

  • Device manufacturers’ specifics

Control system progamming

CODESYS is free licence software development environment covering various aspects of industrial automation. It supports the five programming languages as defined in IEC-61131-3: LD, SFC, FBD, CFC and ST.

Many device manufacturers have adopted CODESYS as the integrated programming environment for their devices since it is independent from device manufacturers. Since this is the case, you would expect it to be straightforward for individual to use CODESYS across the vast number of devices that support it. Is that always the case?

Different CODESYS versions
Different CODESYS versions have emerged over the years. Each version bringing new features and sometimes new ways of doing things. Interestingly, working with a newly manufactured PLC does not necessarily mean you get to use a recent version of CODESYS. Hardware manufacturers usually specify the version of CODESYS their hardware supports. The programmer, therefore, needs to get used to these different versions.

Setting up hardware
This arguably constitutes most of the programmer’s work. They need to be acquainted with the specifics of the device manufacturer – internal configurations that could affect the project and device capabilities. The inputs and output are ensured to be correctly configured and working as required. This is probably the stage where the manufacturer’s support is mostly needed. It is not sufficient to know just CODESYS, knowledge of the specific device is equally important.

Manufacturers’ support
The device manufacturer might have stated in the manual that his device supports CODESYS V3.5 SP9 patch 5, for instance, but does it support the standard features in the said version? It is a common practise for device manufactures to add certain features to create their own flavour of CODESYS. In most cases the new flavour comes with added functionalities that are specific to the hardware’s application. In some cases, however, basic CODESYS features which an experienced CODESYS programmer has gotten use to can be lost.

A good example is that some HMIs used in mobile automation do not support Codesys alarm manager and do not have an efficient method of changing set points if a touchscreen is not being used. Saving money on the touchscreen could cost more development time…Which might be OK for high volume machines but for one off’s it is more efficient to pay an extra £££’s for a touchscreen thus saving costly development time.

To sum up, an experienced CODESYS programmer could still find themselves stuck with issues involving different versions of CODESYS, hardware/manufacturer’s specifics while using the same software programming environment – CODESYS. A way around this is simply exposure to as many different manufactures as possible as well as different CODESYS versions. It could sometimes feel like working with different programming environment.
Share your thoughts and experiences.
Give us a call today for a free chat