EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Naming conventions for devices and Epics records
From: "Strong, William Herb" <[email protected]>
To: "Purcell, J. David" <[email protected]>, tech talk <[email protected]>
Date: Fri, 17 Nov 2006 11:51:55 -0500
There were a couple of other problems at SNS with the naming convention.


It was in a state of flux for the first part of the project.  Several
signals were named, renamed, and renamed again to keep up with changes
in the convention.  The naming convention must be cast in concrete very
early BEFORE people start using it.

The distribution of the naming convention could have been better.  When
people start naming signals, train them on the convention.  You need a
naming guru to assure consistency.  

Make sure any subcontractors working on signal naming are aware of the
convention.  Give them plenty of good examples.  If you need bad
examples, I have plenty.

Teach any subcontractors the EPCIS alarm capabilities for each record
type.  One of our subs defined separate records for each of the limits,
limit enable status, etc.  Instead of one ai record, they defined about
30 records with ai, ao, bi, and bo for one device.

Make sure you understand the importance of Kay's last comment.

Herb Strong
ORNL Spallation Neutron Source Cryogenic Controls
Office 865-574-8303    Cell 865-406-5468     Fax 865-241-6739 
 
-----Original Message-----
From: Purcell, J. David [mailto:[email protected]] 
Sent: Friday, November 17, 2006 11:19 AM
To: tech talk
Subject: RE: Naming conventions for devices and Epics records

Eric,
Following up on Kay's comments, a problem here at SNS has been that
there has not been a consequence for not following the convention.
Because the emphasis was always on construction and beam on target,
"bad" names have been allowed and now are deeply entrenched in our
controls system.  Updating them is very difficult when you consider the
IOCs, control screens, relational database and supporting application,
etc.  Updating all of these situations is time consuming but doable.
The biggest problem is, however, the archiver.  I am not an expert by
any means but I haven't been told by anyone that there is a non-clunky
way to change a PV name and have archived data continue to stay related.


I would suggest making adherence to your convention a part of employees
expected performance.  A tool, as mentioned by Kay, would help.

If I can find our official SNS Naming document, I'll forward it to you.
I have hard copy but our document control has misnamed it.  I kidding
but the electronic copy is illusive.  These two links provide a little
information on the SNS convention.

https://ics-web1.sns.ornl.gov/STANDARDS/Naming%20Conventions%20Instructi
onal%20Document.pdf

http://ics-web1.sns.ornl.gov/CONTROLS/sysSubsys.html

Dave





-----Original Message-----
From: Kay-Uwe Kasemir [mailto:[email protected]] 
Sent: Friday, November 17, 2006 10:25 AM
To: tech talk
Subject: Re: Naming conventions for devices and Epics records


On Nov 17, 2006, at 09:49 , Lecorche Eric wrote:

> Hi,
>
> As we are starting our new Spiral2 project, I am now gathering some  
> pieces of information in order to establish naming conventions both  
> for devices and Epics records and taking into account habits  
> inherited from the existing Ganil installation.
>
> I already got a document from Diamond describing such naming  
> conventions but I would be interested by having others coming from  
> other labs.
>
> Can some labs send me some documents relevant for this topic ?

Hello Eric:

Whatever you do, write your naming standard
like a computer language definition, for example using BNF:

  <name> ::= <system> ":" <device> ":" <signal>
  <system> ::= <system-id> <system-instance> "-" <subsystem-id>  
<subsystem-instance>
  <system-instance> ::= "" | "_" <instance>
  <instance> ::= <integer> | <integer> <a-to-z>
  ...

An additional, verbose, more human readable explanation is nice,
but allow no misconception about the use of upper/lower case, '_' or  
':',
or the structure of instance numbers.

This asserts that you get parsable names, which you'll need
for name-related tools. Actually, try to write a name parser right away,
for example in perl, to
a) check if your naming standard allows parsing
b) have such a tool to check names as soon as the first person tries
    to define the first process variable.

That way, you might avoid ending up with names like  
DTL_Xyz:Gadget105:Value, wondering:
Is this the 105th gadget of the overall drift tube linac, or the 5th  
gadget on DTL #1?
How do I write a regular expression that gives me all the devices on  
DTL #2?

-Kay



Replies:
Re: Naming conventions for devices and Epics records Andrew Johnson
References:
RE: Naming conventions for devices and Epics records Purcell, J. David

Navigate by Date:
Prev: Re: Naming conventions for devices and Epics records Kay-Uwe Kasemir
Next: RE: Naming conventions for devices and Epics records Gurd, Pamela A.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Naming conventions for devices and Epics records Gurd, Pamela A.
Next: Re: Naming conventions for devices and Epics records Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·