AB vs. S7 On-Line Programming...

Terry Woods

Member
Join Date
Apr 2002
Posts
3,170
In my previous thread I saw that there were a lot of indications that S7 On-Line Change is not the same as an AB On-Line Change.

Please explain.
 
It's not the same in scope. It is, however, the same in execution.

With the Siemens products you are required to edit a function offline and download the whole fucntion to the processor before the new function is swapped in.

With AB, the edits are done at the rung level. The new rung is resident in processor memory immediately. An edited rung is a copy of the original in a different memory location. A nice little twist of this, at least with Logix5K, is the memory status is updated while the editing process occurs. This allows the user to monitor the condition of the instructions on the rung being edited whole editing takes place.

However, where the rubber meets the road, they are the same. The program counter simply jumps to the new code instead of the old code when the new stuff is ready to go. In that way they are the same. There are probably additional details that are different but I'm not aware of them.

Keith
 
I say that the biggest difference is how the programmer experiences the whole proces.
AB is simply more intuitive and productive. You have to perform less steps to achieve the same thing.

Apart from that, AB has the advantage that you can insert edited rungs several places, also in different program files, and wait to activate the edits ("test edits" in AB lingo) until when you are finished. The old rungs stays, but are inactive. You can then decide to "assemble" the edits (=discard the old inactive rungs) or "untest" the edits (=the new rungs becomes inactive, the old rungs becomes active in stead).
In Siemens, when you make edits, you cannot hit a button to get back to where you were before.
In other words AB has an undo/redo functionality that Siemens or any other brand does not have.
 
If you wanted to go back to the previous logic quickly, just copy the relevant block to another block, perform the edits and download and then use a control bit to call one block or the other.
 
Let me get this clear ...

In AB if I need to make a change simultaneously to two rungs (say, changing a bit address which is common to both) do I have to edit one, enter it, and it starts executing with half my change done, then edit the other rung, enter it and at then my change is complete? What happens to my machine/process/operation while the change is half-way edited?

Or have I got it completely wrong?

regards

Ken
 
Ken M said:
Let me get this clear ...

In AB if I need to make a change simultaneously to two rungs (say, changing a bit address which is common to both) do I have to edit one, enter it, and it starts executing with half my change done, then edit the other rung, enter it and at then my change is complete? What happens to my machine/process/operation while the change is half-way edited?

Or have I got it completely wrong?

regards

Ken

Online editting is a multiple step process in AB.

First the rung is placed in a edit mode; the original continues to run but on the screen a copy is made and you make your changes to the copy. When you are satisfied with the changes, you then verify the rung changes and that rung is placed into a mode that it best described as "my edits are done, verified, and waiting to be tested". You continue to do this throughout the program wherever you wish. You can then use a single button (with a confirmation) that enables all of the verified edits and disables all of the original rungs. Another key stroke can UNDO or back out of the TEST mode, a toggle if you well. The editted rungs remain but the originals are back running.

While in TEST EDIT mode, if you are completely satisifed with your changes, you can commit the edits permanately by ASSEMBLING the edits which deletes the original rungs and replaces them with your editted rungs.

I don't know how these different editting modes effect the scan time, just that I've never run into an issue with it. ControlLogix adds another layer where you can control the test and assemble process globally or locally to just certain subroutines.

Hope that helps.
 
Ken M brings up an interesting point on the Siemens side. If I have a code change that spans two or more functions can I delay execution of the new functions until all the new functions are in the PLC? I know I can do what Simon posted. However, will the development environment babysit this for me?


Keith
 
No, Simatic Manager will not do that. If you need to make two or more functions active simultaneously, you would have to write some code to make it happen in an organized manner.
 
It'll download them one at a time and run a block as soon as its ready, even if the others are not in.

In my younger days I discovered the 'red' light when downloading a new FB and and the required extended DB in one go. (The FB won).

If its something complicated and more than one block is to be transferred into a running line with a chance of stopping the PLC if in the wrong order, I would stop the process first and disable the existing block calls so I can download and then re-enable the calls and restart the line.
 
Ken M said:
Let me get this clear ...

In AB if I need to make a change simultaneously to two rungs (say, changing a bit address which is common to both) do I have to edit one, enter it, and it starts executing with half my change done, then edit the other rung, enter it and at then my change is complete? What happens to my machine/process/operation while the change is half-way edited?

Or have I got it completely wrong?

regards

Ken

You can load both rungs into the program at the same time. You have to "accept" each rung one at a time. This loads it into the PLC but does not activate it. Then you "test" your edits. This enables your edited rung and disables your old rung. If your machine does not crash or selfdestruct then you can "assemble" your edits which deletes the old rungs from the code.

I just did that this morning. Basically I had an input that was giving me problems so I want to create a latch everytime that input was used so I did it in the steps outlined above. The input was used in 4 different files and around 20 or so rungs.
 
Excellent, thanks guys. I suppose I should have assumed there had to be something which looked after this but no-one had mentioned it explicitly up until I asked my question.

Regards

Ken
 

Similar Topics

Hello all, I was trying to do some online programming on a AB control logix PLC v20. I added a new function block routine and added in an SCL...
Replies
3
Views
1,997
Dear All, Any one here use to work with PLC Moeller before? We got one old Machine need to see programming inside them. But this is first time...
Replies
2
Views
1,736
I wrote my entire program offline. Now I'm trying to use the tags from RSLogix 5000 in my FactoryTalk View Studio program but can't seem to find a...
Replies
5
Views
2,205
Happy Thursday to everyone, I am thinking about taking some kind of course in C programming language. Is there any online courses that any of you...
Replies
14
Views
3,093
Hi, I am looking for Messung Smartline ex HMI programming cable's pinout. Can aybody help me.
Replies
1
Views
4,444
Back
Top Bottom