IEEE tag naming standard?

SW3

Member
Join Date
Mar 2015
Location
denver
Posts
2
Hello! Long time lurker and gatherer of information - love this forum.

I am trying to find some sort of tag naming standard if it exists, whether ISO, IEEE, IEC, CEN or anything else out there.

I have worked with many types of PLCs, on many different types of jobs - and as expected I have seen many many different types of naming conventions! From working at Siemens, to working on sky scraper BMSs in NYC, and working on small scale projects for a start up, it's never been done to any standard other then "How was it labeled on the PnID?" - which ultimately is derived from some agreement or convention established by the initial designer.

I'd like to see if anyone has any solid resources for a tag naming convention because I now work at a software startup and we are reaching a milestone where this software will be integrated into a new distributed control system project, and I am trying to help us in future proofing and not stepping on our own feet by using my prior experience and any existing standards for developing our own tag naming convention that is both easy to use, and intuitive. Our system is data type agnostic, so anything goes if there are some creative ideas out there!

Thanks for any help/suggestions!
 
Welcome to the forum! The short answer is no: I can tell you my standard, or my company's standard, and then everyone else here will drop in and tell you how different theirs is. There are certainly good and bad ways of doing it (anyone who calls an input tag "Prox1" gets nothing but dirty looks from me), but in general, look at your application and work out something that, given all the tags you're likely to have, is intuitive to someone coming in fresh, easy to extend to new items, and logical.
 
SW3,

Everyone has their own standard.
What I try to do is get with the maintenance people who will be working on equipment and ask then "what would you call this prox switch"?

Let them tell you so that when the machine gets turned over to them, they will be more comfortable with the names.
I also try to put the print information in the symbol line (slc 500). px 3513 can be found on page 35 line 13.

Still learning logix 5000.

regards,
james
 
I understand that IEC 60204 along with IEC61346 "Industrial systems, installations and equipment - Structuring principles and reference designations" is the IEC standard to cover this.
My department try to use it for all our internal new projects and with a couple of SI's.
The main drawback with it is the long tag name which has no text description in it. For example the full identifier for a water intake heating pump in one of our systems is:
+MC01=SIW.D01-M01 where this represents +"location"="function"."circuit"-"product"
It is confusing without having some knowledge of how each part of the code is made up, and whilst there is guidance in the standard a lot of it is left to the users requirements.
In my example above
+MC01 refers to Motor Centre 01
=SIW is Services Intake Water
.D01 is power circuit 01
-M01 is motor 01
The benefits are how the tag is used consistently between physical devices, wire numbers, drawing numbers, PLC code structure, symbolic names, tag names in Scada etc.
E.g. the group of drawings on which this motor is represented will be called =SIW.D01. Another motor which circulates water for heating fuel would be on a drawing =SFW.D01.
If it is on sheet 1, the wire numbers will be SIWD011yxx where y is the column and xx are sequential from 01 for wires in that column.
The symbolic name in the PLC for the output address will be =SIW.D01-M01. We create objects for each device with their own instance datablock, so the symbolic name for this iDB would be =SIW.D01-M01*HF where HF is our name for this type of object.
In the SCADA project, the structure of the tag would match the structure of the iDB.
Because the drawing package is made up of a group of drawings it is very easy to add extra devices and keep the sequence logical. It prevents items of related functions being spread all over one set of numerically sequential drawings as changes are made over time.

I am a big fan, but those used to a flat structure do take time to get used to it.
 
If you have a bad editor, that won't tell you what type or scope a variable is by hovering over it or something, Hungarian notation is popular. However, there is no reason to be using a bad editor this day in age, so use a platform that has a good editor and don't use Hungarian notation.
 
Tag names should be easy to understand(user friendly no matter who looks at your program). OEM's like to use tags like M01 for motor 01 but it is still unclear to most people. I do tags like this EXAMPLE [CONVEYOR_1_AMPS] or [WASTE_BELT_RPM]. Don't be vague with your tag or description. Take the time to give a good descriptive tag and description. It might take you a extra 30mins to write your program but it will save you 30min down the road when troubleshooting a year from now.
 
I stick with how things are labeled on P&IDs as well as the label on the equipment in the field. Keeps tags short and relevant.

So, if a motor on the P&ID is labeled "M1001", and in the field it's "M1001", then in the PLC is is also labeled "M1001", with an appropriate description ("CIP Supply Pumps"). Which of course matches the electrical tag and description. That way it should be pretty fluid because a maintenance guy will look at the field device first, hopefully it's labeled then he might look at the electrical label...then he'll find it in the PLC.

The problem with jtashaffer's suggestion is there is no rhyme or reason, I've seen programs like that and unless the programmer is extremely disciplined you get deviations of similar tags, for example:
- CONVEYOR_1_AMPS
- Conveyor1_AMPS
Same but different!

In my real world experience it was:
- Heat_Zone_1_Temp
- Heat_Zn2_Temp
- Heat_Oven_3_Temp
- Heat_zone4_temp

(And same variations for all devices an oven!)

All 4 of these zones did the exact same thing...but confused the heck out of me to keep them all straight!

Had they used:
- TT1011
- TT2011
- TT3011
- TT4011

It would have been clear!

so in short, regardless of the path you take, keep it disciplined!

EDIT: This was on a ControlLogix mind you, no reason not to create a proper UDT!
 
Last edited:
well I am very disciplined with my tags. It makes it easier to search or monitor tags also.
I set all of them up like this:

[EQUIPMENT ID][ACTION]
CONVEYOR_1_AMPS
CONVEYOR_1_RPM
CONVEYOR_1_Hz
CONVEYOR_1_HMI_SP
CONVEYOR_1_VFD_FAULT
CONVEYOR_1_HMI_START_PB
CONVEYOR_1_HMI_STOP_PB
CONVEYOR_1_MANUAL_START_SS
CONVEYOR_1_MANUAL_STOP_SS
and so on.
It is long but there is a method to the madness
When I build a cabinet All my wires labels match my tag names. For my local I/O I label my wire with the local address and the tag name I have labeled it with in the program.
 
jtashaffer -

Please don't take it negatively/personally, I'm sure your quality of work is better than what I've experienced. Programmers moving from say a PLC5/SLC/Micrologix platfrom don't always adjust well to the non-structured "freedom" that a Logix platform provides. As a result it has to be created and without a true 'standard' you have to come up with one on your own. Which you've done, but if a programmer just makes it up as they go my example is likely occur.
 
well I am very disciplined with my tags. It makes it easier to search or monitor tags also.
I set all of them up like this:

[EQUIPMENT ID][ACTION]
CONVEYOR_1_AMPS
CONVEYOR_1_RPM
CONVEYOR_1_Hz
CONVEYOR_1_HMI_SP
CONVEYOR_1_VFD_FAULT
CONVEYOR_1_HMI_START_PB
CONVEYOR_1_HMI_STOP_PB
CONVEYOR_1_MANUAL_START_SS
CONVEYOR_1_MANUAL_STOP_SS
and so on.
It is long but there is a method to the madness
When I build a cabinet All my wires labels match my tag names. For my local I/O I label my wire with the local address and the tag name I have labeled it with in the program.

Are you saying you put the PLC Tag name on the wire? I hope not as that would be a nightmare system IMHO.

IMHO prints should be done using the page and line reference method and that will give you your wire numbers. P&ID drawings should give you your tag names as Paully's 5.0 detailed.

Wire numbers should come from Page line reference only. Even PLC IO in IMHO.

Many people will argue this point with what if prints are lost,etc. But IMO if prints are lost with no backup your buisness or factory is running poorly and you have bigger problems.

I don't try to tailor my design to solve poor management issues.

On small systems you can get away with almost anything but when you get to large equipment with 15-20 panels with 2-10 doors on each panel and 400-600 page drawing sets labeling PLC IO wiring with the address is a real PITA to work with and just slows things down. Same goes for applying PLC tag names to wires.
 
Thanks so far for everyones responses - This post has just reaffirmed the variety of naming conventions in our industry though haha.

I do like the idea of maintaining continuity from the field to the I/O panel to the tag listing though - this is something that really helps any 2nd or 3rd parties that come to the job, say on maintenance contracts maybe 5, 10 or 20 years down the road - which unfortunately (fortunately for reliabilities sake?) a reality.

Thanks as well to those who suggested actual publications that try and manage/standardize this rather unwieldily subject.

Keep the suggestions coming!
 
Greeting and welcome to the forum.

Here is a link to an ISA standard tag naming chart that I have posted before.

http://www.plctalk.net/qanda/attachment.php?attachmentid=5391

ISA tag nomenclature usually refers to measured variable, not the instrumentation method. For example, dimension sensors use the first letter Z whether they be prox, ultrasonic, laser, mechanical limit switch, etc. Subsequent letters describe the instrument function but not necessarily the instrumentation method. So the ultrasonic distance sensor would be ZT-### for a transmitter, or ZS-### for a switch, also ZSL-### for a low switch, ZSH-### for a high switch, etc.
 

Similar Topics

Looking for some explanation/history between North American electrical symbols standards (how they relate, what are the latest, what is the...
Replies
3
Views
1,712
Dear friends across the pond, Does anyone know which one is the IEEE standard regarding the harmonics performance of the VSDs? Regards Nik
Replies
4
Views
2,115
OK, so I have a ControlLogix L61 Processor and I am communicating with a Veeder-Root 350+. I have established the comm and am getting valid data...
Replies
15
Views
5,539
I am working on a project in which our customer is requiring IEEE C37.90.1 standards for the PLC equipment. The IO is not a problem using signal...
Replies
2
Views
2,215
Back
Top Bottom