How to Symbol Program with Allen Bradley RS Logix

Mark Buskell

Member
Join Date
Sep 2003
Location
Florida
Posts
892
I just read this article at MrPLC.com
http://www.mrplc.com/kb/index.php?page=index_v2&id=25&c=11

I guess I must be one of the old-timers that never uses symbols.
I think the reason I don't use them is after writing hundreds of programs since the dark ages (relay logic), I have a system that works for me and I stick with it.
For example N10 for PID words, T4:0 for a flasher timer, B3:0/0 for system running. Bit 0 is always valve 1, bit 1 valve 2 and so on.

How many of you use symbols or do it the old way? Is it to late for me to change or should I consider going to one of those 10 step classes.

Merry Christmas,

Mark

PS: Again I have to work during the holidays, customer downtime is our upgrade time.
 
Sound like your programs are rather simple and small in size.
There are many advantages in using symbols. Searching for symbols during trouble-shooting, instead of trying to remember a memory address, is just one. I have been in this business for over 15 years and have always used symbols (even back in the ICOM DOS days).
If you are using HMI's, they require symbols. It's much easier to
import a database with symbols that recreate one for the HMI.
Incidently the new ControlLogix processors use symbols exclusively.
 
Symbolic all the way here.

For lots and lots of reasons. The most basic reason is while your system may work fine for you, the next person that has to work on your code will not be very happy.

Another reason is that with the ever increasing complexity of control systems, it's easy to no longer conform to your conventions. You say you use bit 0 for valve one, bit 1 for valve 2, etc.. well, what if you have to deal with a multi-state valve? or one with seperate open and close coils?

More reasons? Well, more and more PLC's are coming out now with no pre-defined 'file types'. Even in AB. Look at controllogix. If you need a memory location, you have to create it anyhow. As long as you are creating it, why not give it a real name? ie, Valve_Coil_01? or better yet, "ProcessInf_Valve"?

Still more reasons? Hrm.. more and more HMI's are using OPC drivers. More and more OPC drivers can directly read the symbolic names, either directly from the PLC, or at least from a copy of the program. This means that your HMI tag can be "ProcessInf_Valve" now, rather than creating an entirely new HMI Tag and linking it to B3:1/1.

Another reason? Many times, because of forgetting something, you need to find a free bit or word in the PLC. Cross references are good, but not perfect. Just because a bit doesn't show up in a cross reference, doesn't mean it's not used. By assigning a symbol to everything you do use, you can be assured that if you find a location without a symbol, it's free to be used.

When programming from a P&I Diagram, it just plain makes SENSE to call all the devices as they are labelled on the P&ID.

Only part of coding a PLC program is 'Getting the machine to work'. That doesn't have to take a whole lot of time. Once it's working though, with an average life-cycle of at least 10 years, there are years and years of 'Keeping it working'. Any time there is trouble, a plant is much happier if they can track it down and fix it in 10 minutes rather than 10 days.
 
I was forced into symbols in order to import into a panelview. I now use them all the time, no matter what. I have a standard naming convention. Then I can program components w/o knowing the actual I/O number.
 
I've always used symbols even if the program doesn't index with them. They make following the logic easier when called for modifications years later. I have also gotten into familiar patterns. x00M = Sx=AFON ::Station X Autofill On, x10M = Sx=RcON :: Station X Recirc On. I also label Inputs with a + seperator SW1+1, Outputs with a - LM1-1, Alarms with an = S1=OVFL. Therefore I can usually find what I'm looking for by name or number. The examples are for GE LM90 but I have used similar methods for several processors.
 
If you are happy the way you do it, that's fine.
I use symbols all the time but not quite 100%, just
so it saves me time. If I have big machine (usually do),
even for very organized people (I count myself in)
it is too much work to switch between excell/paper and screen
just to lookup what was the file-word-bit of the address
I'm looking for. I've created my own standard for symbols
and in few keystrokes I get to address I want, regardless
where it is:
PE - Photoeye
PX - proxy
SV - solenoid valve
CR - control relay
PB - push button etc.
This is always first two characters for all I/O and reminder
is function (clamp, unclamp, lift, close ...).
So something like SV_LIFT3A_UP is much simpler to remember
than O:09.1/12. Oh and you need the reedswitch for it?
It's RS_LIFT3A_UP instead of I:07.0/02.
Same with the step sequence even if you have 50 of them.
Just divide equipment in zones, give them names and call them
by name. For example program steps for station 92C (which is
N47:39 for example) are called STN92C_STEP. And if I need
to address step 8 it's simply STN92C_STEP/8 (it will use bit8
of the integer). Used symbol is only one for the whole word
but each bit is commented individually so you see quite detailed
information for each bit. And if sequence is longer than 16,
big deal, RSLogix truncates it automatically when you enter
larger value.
 
I use symbols mainly for the same reasons as described in the article, but also because I program many different brands of PLCs. It's nice when I can type "FAULT", or "NORM_ON" and have it 'magically' call up the right bit no matter WHAT brand I'm using... (y)

Close as I think we'll ever get to 'cross-platform' software!... ;)

beerchug

-Eric
 

Similar Topics

Hello, Some time ago in one of the projects (S7-300) I have seen a safety marker which had a red background. Could you please tell me, why some...
Replies
4
Views
1,202
Is there an ISA or IEEE standard which details symbols that one would use to create a logic diagram representing the PLC program? I only have a...
Replies
2
Views
1,478
How can I find the location of a symbol in my program? I have a huge list of I/Os in symbol table and I want to know that in which FC/FB the...
Replies
1
Views
1,519
Is there a way to convert or export Step 7 Symbol table to RSlogix 5000 Program Tags
Replies
2
Views
5,519
I was looking for this function, so that i doesn´t need to do it in the PLC. If there are an alarm in the alarm list, i want to flash the...
Replies
2
Views
425
Back
Top Bottom