Control Logix Naming Convention

My suggestions are:
1) Include the tag or device number shown on the drawings.

Several people here have mentioned the importance of drawing numbers in tag names in their responses and in looking/thinking about the best way to do this, I came across the RA "Foundations of Modular Programming" and on pg 76 it talks about double aliasing as a way to accomplish this. Does anyone here do that? And is it an effective method?

Thanks,
Benaiah
 
Several people here have mentioned the importance of drawing numbers in tag names in their responses and in looking/thinking about the best way to do this, I came across the RA "Foundations of Modular Programming" and on pg 76 it talks about double aliasing as a way to accomplish this. Does anyone here do that? And is it an effective method?

Thanks,
Benaiah

I've never seen dwg#'s referenced in tagnames. A lot of programmers seem to be lazy and will only do ControlLogix tagnames and not fill out the complete descriptor that is available. Why be so cryptic other than pure laziness? There seems to be no thought of making easier on the next guy trying to follow the program.
 
I've never seen dwg#'s referenced in tagnames. A lot of programmers seem to be lazy and will only do ControlLogix tagnames and not fill out the complete descriptor that is available. Why be so cryptic other than pure laziness? There seems to be no thought of making easier on the next guy trying to follow the program.

One thing to keep in mind is that the entire descriptor is not available when the program is uploaded from the PLC. Making the tagname more descriptive is one way around that.
 
The 2nd point, if done correctly should aid in troubleshooting. I can't tell you how much time I've wasted trying to figure out if a limit switch is wired normally open or closed or what's going to happen when I energize a solenoid (ie: will the lift raise or will it lower???).

In addition to this - use nouns and verbs correctly. An output to open a valve might be something like V30012_Open, the feedback to say the valve is open could be V30023_Opened (likewise, V30023_Closed for the closed feedback). I cannot emphasize how much easier this makes reading a large program. Someone mentioned CamelCase. When I use add-on instructions, I augment this with prefixes to indicate the function to the rest of the program, for example hmiStart for a HMI input that starts the machinery controlled by the block, or inContactor/outContactor to describe block outputs that go directly to physical IO. This makes using such a block very easy and you often don't need to look at descriptions to work out how the AOI works.
 
I have a very large ControlLogix program that someone named all of the tags to the IO registers from the Automax program they replaced ... then deleted the Automax program that was converted over because we no longer had the Automax ... I dream of day I get to be face to face with whoever pulled that stunt.
 
A good method is to use place them together.

Eg on a system with 2 valves...

Valve_1.opened
Valve_1.closed
Valve_1.fault etc

Valve_2.opened
Valve_2.closed
Valve_2.fault etc.

Doing this allows related tags to sit together and you only have to expand that tree if you need too.

-or even better yet-
Create a Custom Data Type called 'Valve', and make it an array.
So, the above becomes:
Valve[1].opened
Valve[1].closed
Valve[1].fault
Valve[2].opened
Valve[2].closed
Valve[2].fault

And, instead of SIX tags, you have ONE.
 
I've never seen dwg#'s referenced in tagnames. A lot of programmers seem to be lazy and will only do ControlLogix tagnames and not fill out the complete descriptor that is available. Why be so cryptic other than pure laziness? There seems to be no thought of making easier on the next guy trying to follow the program.

Wow. Never?
I've see a pharma customer who had a P&ID drawing xxx-310-yy

The tags of the instruments were, for example,
TIT-8310-01, where the 310 referenced the drawing number.
 
Wow. Never?
I've see a pharma customer who had a P&ID drawing xxx-310-yy

The tags of the instruments were, for example,
TIT-8310-01, where the 310 referenced the drawing number.

In my experience the p&id tag# such as TT-410C that would be the 3rd temp emitter for loop 410. The loop # has never referenced a dwg page number.

I'm not saying your way is wrong, just that I've never seen it that way.

That's the beauty of standards, there re so many to choose from.
 
I was going to start a new thread but then I saw this one

I'd really appreciate getting as much feedback from different people as possible on this. I will start first. In my previous employment I always worked for consultants or contractors. We would do PLC and HMI programming for various water/wastewater facilities in the US and Canada. This involved a number of different platforms (GE, AB, Siemens, SCADAPack, etc). The program structure we were to follow (that is the City's/county's standards) changed very little from place to place. They all also had a standard by which the tags could be named. For example they would break it out into 5 or 6 fragments. the first fragment is the location, fragment 2 major equipment, fragment 3 minor equipment, etc... then they would give you what each fragment was allowed to be. For instance in one city, a low lift pump was LLP, and a high level float is ALMHI. Some of them even used ISA standards for their tagging, and customised it to include everything that's required in their facilities. Can you guys please tell me what percentage of end users define your standard PLC program, HMI screens, and tagging system. And which percent just lets you go wild. And what do you do for the ones that DO let you go wild? do you have your own standards? I am now an employee for the municipality in my area, and one of the major tasks I have is to take care of the standards, continue to improve them, etc. I'm shocked by what I'm reading here with everyone just making things up as they go along because I didn't know this is how things were done outside of my world.
 

Similar Topics

Greetings, Please see attached image. This is a tag array from a Zenon HMI applicaiton. I am trying to create this same Tag/UDT structure in a...
Replies
1
Views
1,424
I am having trouble with getting no control of my analog output signal. I am using the SCL function block to control my analog output. The logic...
Replies
11
Views
268
hi all, i have a plc i need to get info from for a site im working on: I have a 1764 Micro Logix 1500 LSP Series C (See Attached Image) im...
Replies
2
Views
388
I currently have a weird issue involving Ethernet IP communication between a ABB CI873 (EthernetIP Module) and a 1756-L83ES. The Layout is as...
Replies
8
Views
774
Possible for two processors in same rack to have separate motion groups across a single Kinetix Rack using a single EN3TR? One 6500/5700 rack, 8...
Replies
1
Views
432
Back
Top Bottom