CodeSys

Tom Jenkins

Lifetime Supporting Member
Join Date
Apr 2002
Location
Milwaukee, WI
Posts
6,301
A client has recently expressed interest in CoDesys and industrial PC with remote I/O as the platform for a new system. the objective is to have transportability and enable sourcing hardware in several locations while maintaining the "same" program code in all.

I'm interested in opinions and application success and failure with CoDeSys, as well as any good things or gothca's.

Thanks in advance!
 
I am using CoDeSys with Wago 750-871 Ethernet controllers and I have to say, it has become one of my favorite programming environments. I tend to use structured text, but I have written applications with ladder and function block diagrams. CoDeSys has a rich function library and the user interface is intuitive and easy to learn. A drawback is that many of the function libraries tend to be controller specific so it isn't truly portable from one platform to another without some code modification if you use the controller specific libraries. There will be a learning curve, but not a tremendous one. It took me about a week to get really comfortable with the UI and now that I have been using CoDeSys for a couple of years, I build my own function blocks and perform other complicated tasks with ease. It just takes practice and study.

As far as applications, I have these controllers in everything from building controls to discrete machine controls with most of the logic written in structured text.

Best of luck,
 
I have played with CoDeSys and the integrated visualisation. The programming features are good (ST,LAD,IL,CFC,SFC,FBD), the integrated Visu is quite primitive, but free. CoDeSys seem to be more directed to smaller systems, CNC, robots, packing machines and HVAC - and nothing like DCS with automatic HMI object- and alarm generation. But there are a lot of serious companies supporting it (Automarion alliance). Beckhoff has a derivate called TwinCat. (Bechoff is the innovator of the extremely fast ethernet i/o bus EtherCat - it's worth a closer look). Maybe you should take a look at the CoDeSys forum here. The German pages has most traffic. CoDeSys seem to be gaining popularity here in Europe - perhaps because they're challenging the big S
icon10.gif
.

Kalle
 
For the CodeSys users, can you confirm that there is no upload? I seem to remember something about this. For example with most PLC's if someone comes behind me and changes the program and I don't have a copy, at least I can upload and go from there. I think with CodeSys platforms this is not possible. If so, something to think about.
 
Good Point! There is a "Read File from PLC" option in the "Online" Menu, but I have never been able to upload a project from a PLC without an error message. I have all of the source code for my projects so I never looked into it in depth, but I can see how it could be a problem.
 
We have used CoDeSys on Moeller XC/XV controls and on the Bosch Rexroth L controls (stand alone PLCs) and the Indradrive integrated Drive/PLC Products.

All of these devices require or have the option of an external storage card (CF or SD). There is a menu selection to "save source program to control" (might not be exact wording) so that those that follow can get the program to work on. But the onus is on the original programmer to complete this step and if they forgot you're out of luck. This may be specific to these two manufacturers customization of CoDeSys and not available to all versions.
 
ABB plc's use CodeSys and I know it is not possible to upload from them. That was a dealbreaker for us, as we have customers that do stuff and then hire us a year later to make a modification to the machine.

ABB touts it as a security feature, we found that interesting. I guess the best defense is a good offense!
 
ABB plc's use CodeSys and I know it is not possible to upload from them. That was a dealbreaker for us, as we have customers that do stuff and then hire us a year later to make a modification to the machine.

Is there an offline/online compare to display code differences i wonder - sounds like the OTT B&R stuff.
 
I don't think there is a compare with the ABB plc's. We were told there was no way to go online unless you have a copy of the program. Meaning you cannot upload or suck out the program that is in the PLC, and they didn't mention a compare.

Of course if you don't have a copy of what is in the PLC you could always download the program that you have...

My observation is specific to ABB brand PLC's, and they are based on the CodeSys platform. But I wonder if the inability to upload or go online if you don't have the running program is specific to ABB, or CodeSys in general???
 
I have done some codesys and cant remember the make (heavy in the tobacco industry)

With the kit i'm thinking of if the source code isnt left in the plc/processor/hard drive then you are stuffed

The name will come to me, at home and been a red wine evening

I was lucky with the kit as the German manufacturer left the source files for me !
 
Many HMIs will not allow you to upload the program unless the option to store the source is selected - people take it as granted. CoDeSys (ad its flavors, from Beckhoff to ABB to whatever) produces compiled code - very fast and quite effective. That is why it cannot be uploaded - i.e. decompiled back.

As long as people are aware of this (and this is, btw, is the stadard behavoir in the world of computer programming!)adnd take appropriate simple measures - the advantages overweigh this imaginary shortcoming. I do have a few chips on my shoulder regarding CoDeSys, but this one is not one of them.
 
Many HMIs will not allow you to upload the program unless the option to store the source is selected - people take it as granted. CoDeSys (ad its flavors, from Beckhoff to ABB to whatever) produces compiled code - very fast and quite effective. That is why it cannot be uploaded - i.e. decompiled back.

As long as people are aware of this (and this is, btw, is the stadard behavoir in the world of computer programming!)adnd take appropriate simple measures - the advantages overweigh this imaginary shortcoming. I do have a few chips on my shoulder regarding CoDeSys, but this one is not one of them.

Stuff i used was Beckhoff Twin Cat
 
I'm interested in opinions and application success and failure with CoDeSys, as well as any good things or gothca's.

Back to the original topic, I think the main gotcha with CoDeSys is when people try to use the wrong programming language for a task. With 5 or 6 to choose from, there is no reason to limit yourself but invariably, someone only familiar with ladder will try to do everything in ladder in CoDeSys which can cause problems.

Ladder (LD) is excellent at working with Bit type data. Inputs & Outputs and Boolean Logic.

Structured Text (ST) is excellent at calculations and procedures. Need to do a complicated scaling of analog signals? ST is your go to language. Try to shoe horn it into ladder and you're asking for trouble.

Function Blocks (FB) are just aching to help organize repetitive tasks. Have a 10 station machine where all the stations are identical? Make one Function block for a station and use it 10 times. If the functionality changes, just change the definition of the one function block and Voila; All stations updated.

the objective is to have transportability and enable sourcing hardware in several locations while maintaining the "same" program code in all.

W.R.T. transportability, that is a trickier subject. Keeping away from any hardware specific instructions or constructs would help but probably won't be 100% bulletproof. You would likely end up with an abstraction layer between the logic and the hardware. So for instance if you have a pump motor function block with Inputs & Outputs such as NoOverload, SuctionValveOpen, noEstop, RunningIndication, ContactorON you would connect these to internal symbols instead of physical hardware points. Then this file could be portable. Each hardware platform would need a custom POU to connect the internal symbols to physical points. This may not be a bad way to go in any case but Connecting I/O is simple. When it comes to specific devices like analog cards, High Speed I/O, PWM cards and advanced communications it can get a little more complex.

Or maybe, just have all the I/O on CanOpen or ProfiBus/Net drops and then maybe it's a more standardized system?
 

Similar Topics

Hello, I am using a Hitachi Micro EHV+ for a small project, and I wanted to have a Web visu, done with Codesys V3.5 SP13 Patch 2. I test the...
Replies
6
Views
294
Hello, I have a requirement to manage the text alignment dynamically. So, for example: 1. English Texts should be displayed from Left in...
Replies
0
Views
90
Hello, I am new to Codesys, and am trying to learn about it for a project we're developing. I've got a couple questions, but first a little...
Replies
1
Views
144
Hi everyone, as this is my first experience with Rockwell Software i would like to know what's the best way to make Enumerations?
Replies
10
Views
503
I am trying to get Codesys to work with a couple of Moxa ioLogik E1200 series DIO devices (E1210 and E1211). I am able to write to the E1211 DOs...
Replies
2
Views
169
Back
Top Bottom