Older Modicon PLCs used segments to divide program logic, more for coordinating logic with I/O drops.
Omron have several options here. One can brek to code into sections and, say, use one section for alarms, anothe for shutdowns, another for analogues, anothe for screen handling. I find it a pain and go straight back to one program as it is easier for me to troubleshoot rather than having to open different sections all the time.
Another is FB which is really a far better way to do things if one has repetative tasks. Pain if no repetative tasks.
Another is "tasks". The Europeans wil be familiar with this. When you need a task to run turn it on, if no need to run turn it off. uts back scan times when code is not required to run.
Then there are all the usual jumps, interlocks, sub routines etc.
I think that if you want to change the function of a rung of code in a working machine that you are worried might not work, then duplicating the rung and placing an always off contact before the final output works well. That way you can see how the original code is working while you test the new code and spot any unintended consequences.
A good method although I hear with Control Logix I here there is an area one can do all this and watch it really run before downloading into the real program. Sort of like a simulator real time I guess with real inputs. Any comment from the AB people? Sounds exremely usefull.
One trick we often use at my work is that code changes made during commissioning are labelled with an always on contact with the coder's initials.
I have been doing that ever since I started programming and there was enough memory available to allow it. In the very early days, one had to look for one or two spare instructions that could be removed to allow a change to a program. Used counters before for compares to save one instruction each time I did it. Darn usefull to be able to turn a rung on and off during commissioning and view actions before turning it back on again. By thge way, I normally use an always on contact and just put a "slash" through it to turn it off. Really easy.
Hmmm, I don't think that will work properly in some instances. Duplicated coils will always be equal to that last evaluated expression in the program scan. Modicon Proworx won't even let you duplicate a coil online. So, I suppose it will be machine specific.
Definately PLC specific and can cause lots of problems if one is not very carefull. Better to use internal bits for outputs if possible before allowing the scan full access. Perhaps what I here about Control Logix will be really good if the testing area is really like a simulator and will allow duplicated outputs in the two areas but no action on the outputs in the testing area.