Since we have been using TAG based programming I have been PURPOSEFULY, NOT using any instruction comments, or rung comments.
If the TAG is succicntly named, then there is no reason to add " a thousand words" to the already established picture. (rung structure).
The discipline is in design, not in trying to write a paragraph explaining your design.
MY $0.02
I agree that tag based programming dramatically decreases the need or volume of rung comments, but I don't think it necessarily makes rung comments obsolete. Comments can serve many different purposes beyond just explaining your program. I tend to use comments extensively to explain things about the machinery or process that might not be obvious or evident.
For example, if I have a network mathing out the scaling of encoder counts to some linear dimension I will comment in how it was arrived at (reductions, PPR, how many teeth are on the sprockets, etc). This isn't stuff you want necessarily clogging up a title block. This way it is not a mystery to the next guy where you came up with all these magical constants you have in your program.
If I have a field device that is analog or communication based I try to provide all the pertinent engineering data. I will note its resolution, range, whether or not it is loop powered, what the values correlate to in user units, etc.
Or if you have some code that deals with a tower light and horn perhaps you have different combinations of pulses that mean different things. Difficult to convey all that information with just a tag name. So it is natural to have a rung comment to explain Blinking Green -- Auto Ready, Solid Green - In Auto, etc.
In this particular file I am working on the original programmer sprinkled a lot of screen changes by way of move blocks to an N integer all over the place. There are about 40 screens on the PanelView so without comments you are left to wonder what screen is being called when you see a "MOV 7 N7:9" Since the comments were attached by address, if I commented the rung "Display Manual Screen" then all instances of N7:9 being written get the same comment.
I can only remember one time, a very long time ago, where my rung comments got disordered from where they should have been. I don't remember how or why it happened.
I have never understood the usefulness of having the rung comment attached to the output memory. The memory itself already has a description available for this.
It might just be a factor of where I began from (Giddings & Lewis) where uploading was not possible, so a good system of keeping track of programs wasn't just good practice, it was mandatory.
I rarely associate rung comments to a position in the code. Only for the very first rung, the overview comment, and perhaps rung 0 of each SBR...There are too many ways to end up with moving rung comments unless you're the sole operator with RSLogix.
If I want a Title block to appear, but only once where it would otherwise appear on numerous rungs with the same last instruction, that's when I break out the "Comment Placeholder" bits
I will use one of a group of bits with the group symbol name REMARK, and the description is "Comment Place Holder", and put the title block and section overview rung comments there. They are locked to that bit, it becomes the first rung marker of that section of logic, then advanced diagnostics in the project tree pane becomes highly awesome.
Paul
Paul, do you have an example you could share? Sounds like an interesting approach.