Friday 9 October 2009

Tag Naming - P&ID and in ControlDraw

Ever since P&ID’s were first drawn, tag names have been used to identify the instruments. And as they are intended to identify every single instrument, the tags have to be unique.
More than that, the tags always have some meaning, providing a clue as to the purpose and location of the instrument.
Tag naming is one of the first things you need to understand when you start a new project, because most projects have different ways of tagging.

How are Tags constructed?
Generally they have a letter prefix, a number or code, and often a suffix.
Conventionally these tagnames were allocated by instrument engineers whilst at the same time keeping a record of the used tag names in an Instrument Index. More modern CAD systems may keep the index and tags at the same time.
The ISA S5.1 ISA S5.1 standard, codes for Process Instrumentation provides a basis for the letter parts, but not for the number part, and methods of assigning these vary from company to company and even from plant to plant. You can always work out that PIC (or maybe PC) means a pressure indicating controller. But the next part, 1299 say or r123- or whatever is not obvious. Whenever I start working with P&ID I ask for the Equipment/Tagging standard, no two are the same! The standards cover much more than just instruments, for example equipment tags (R for reactor etc), the Area numbers and much more has a company standard. I get bored by the pipe naming.
One classic scheme is to number the instruments within the P&ID, and with part of the P&ID number in the tag. Often In turn the P&ID drawing number contains a higher level, say an area.
So we might have TIC3012-5 where 30 is the area, 12 indicates the twelfth PID in that area and 5 is the fifth Temperature measurement on the P&ID.
A more advanced scheme used by many practitioners is to base Tags on the Equipment number, so the Tags relate to the equipment, and even better so that if there are several similar equipment items the tags within each are the same.
For example, V3249-01 (or perhaps R3249-V01) might be the first valve in reactor R3249, V3250-01 the first valve in reactor R3250, and so on.
Some also have a standard so that similar items have similar sub-number, even in different type of equipment, for example Discharge valves are always V####-01

But when it comes to describing – or even programming – a controlled entity such as a
Unit or Equipment module, it is very useful to have some things that the classic method does not cover. One is Tagnames that are consistent within objects so when you look inside two similar objects (say 2 reactors) the Tags are the same – at least when you exclude the part that identifies which reactor. Then you only have to use nice short names. like V01 or FC02. It can save a lot of time.
Another issue is that, on an HMI, long tag names are unfriendly and clutter the screen. Yes, the best graphics have an option to not display the tagnames, but when you do show them short ones are easier on the eye. And combining Equipment based tagging with Unit relative graphics makes it possible.

The ISA letter parts have a problem - they are based on a very old concept – panel instruments.
In particular the use of the A for alarm letter has become almost a distraction. The A letter meant something in the old days, it might imply a need to use a trip amp and an annunciator lamp, things that had to be purchased. Now, everything can have an alarm, do you really want to change the P&ID because you added an alarm?
Similarly using I to show that something should be displayed? I would hope that everything should be displayable.


The reality is often that there are inconsistencies in the P&ID tag names, even when the tagging scheme is equipment based. (For example when the P&ID tagging has a shared common resource ‘inside’ the first equipment that uses it)

What’s all this got to do with ControlDraw?

ControlDraw provides several ways to handle this:
The External Tag can be set to match whatever the P&ID tag is.
Variants can often be used to reconcile inconsistent tags
Clones can be used to position an object within the P&ID Equipment but still in the right module
Scripts can extract the information from the tag and use it consistently.

Extract the meaning of the Tags with Scripts
Now, whatever the tag naming scheme, there is always some useful information contained within the tag name. And ControlDraw provides several useful ways to deploy that information. The most powerful is by using Scripts.
The Scripts can use parts of the hierarchy of tagnames, for example to set the Engineering Units according to the instrument letters.
TagPrefix0 is the first letters of the lowest level in the hierarchy of tagnames
Select Case TagPrefix0
Case "FT","FI","FIA"
CalcTag = "m3/hr"
Case "PT","PI","PIA"
CalcTag = "Bar"
Case "TT","TI","TIA"
CalcTag = "DegC"
Case "LT","LI","LIA", "CV", "FCV", "LCV","PCV", "TCV"
CalcTag = "%"
Case Else
End Select