[Date Prev][Date Next][Date Index]
Personal impressions of EPICS meeting
- Subject: Personal impressions of EPICS meeting
- From: Harvey Rarback 312-702-9931 <RARBACK@cars3.uchicago.edu>
- Date: Wed, 8 Nov 1995 23:16:46 -0600 (CST)
Folks,
I have been asked to post my 'notes' from the EPICS Collaboration meeting
recently held in Chicago and the APS. They probably contain many errors and
certainly contain many omissions, but I present them as the personal impressions
of a 'beam weenie'. BTW, I only counted four of us CAT types attending the
meeting -- I think we should try to be more of a presence in the Collaboration
in order to influence the direction of EPICS toward being more useful for
beamline control and data acquisition.
Chip Watson - Working on cdev API for C++ and C. Asked how many people
program in C++? About two people (out of about 30) raised their
hands!
Jeff Hill - His priorities:
1. Finish portable ca server (promised by the end of this month).
2. Implement option of caching instead of queing ca server
requests (done at request of CEBAF and easy to implement)
3. Support for larger arrays. (Many of us beat on him to do
this *soon*.)
4. Support for structures and user-defined data types will not
be here until version 4.
5. Version 4 will also include option of setting priority for
server requests.
Mike Oothuodt (LANL) - One lesson they learned in doing an upgrade to LANCE is
the importance of protyping GUI's (with paper screens!)
for their customers very early in the development cycle.
Stephanie Allison (SLAC) - Control system at SLC is VAX/VMS based. She has
written a sharable image which is a layer on top of
ezca, for error handling, VMS time stamps, etc.
Jim Kowalkowski - Driver for Systran's IndustryPack ADC is finished. The
hardware works up to spec. Greenspring's cheap ADC is lousy
(nominally 12 bits, he can only get 9 real bits).
New utilities he has put in R3.12.2 (undocumented):
1. Added new token to databases with a gdct interface to
attach an arbitrary string to a data base, which can
then be fetched via a new utility. The idea is
to identify which application's db is running.
2. Wrote a general purpose server to provide information
from vxWorks and EPICS. Need to add PVSStart to
vxWorks startup script and then can use new clients rdbls
(to get a list of records) and rdb_applist (to get the
application string). PVSStart uses John Winans' bulk
data transfer library; it is easy to add more server
capability.
Mike Borland (ASD) - Physicists love his SDDS format and toolkit. Documentation
now at http://www.aps.anl.gov/asd/oag/oaghome.html
Claude Saunders - Working on Tcl/TK wrapper for the fantastic SDDS toolkit. He
has built an easy to use APS library layer on top of Tcl/TK
which enforces a standard look and feel. (Only use one
button on mouse, because 'operators can't learn how to use
more than one button'.) All his top level widgets have a
menu bar with at least File and Help (which includes
context-sensitive help where the cursor turns into a question
mark and give information when buttons are clicked). a
status line is always underneath the menu bar which always
gives feedback on what the widget is doing.
Matthias Clausen (DESY) - Uses an IRM, developed at FNAL. It is a VME
module which starts from a MVME 162 but has *lots*
of digital and analog I/O added. The module is
now available commercially and can quickly be
added to a system when more I/O is needed.
He is also working on a system status display
which can show the status of all his IOCs --
hardware configuration, memory, CPU usage, etc.
Finally, he has an IDL GUI application which can
display data it fetches from CORBA. It looks
fairly general purpose and we should check it out.
Fred Vong - medm's strip chart now uses monitors instead of sampling.
Janet Anderson - Finished with first version of stripTool, a Motif
application to do stripcharting of multiple PV's. It is
included in latest EPICS distribution. Does *not* use
Xrt/graph.
Marty - R3.12.2 will be out RSN.
Following release will support default.dctsdr only in ASCII.
Brief synopsis of new scheme (explained better in update to ch. 10 of
Application Developers Guide, which will be completely rewritten soon):
DCT and sdr file formats will no longer be supported, but he has
written a utility to convert existing default.dctsdr files into the
new formats.
cat_ascii, replace_ascii and makesdr will no longer exist.
APS is going over to CVS to support new application directory trees.
User code that accesses internal db structures must be modified.
Still use the same dbStatic API for device configuration.
New ASCII files (all in /base/rec):
- menu choices (combines many old menu files)
- recordtype (with consistent easier to use syntax)
- record instances (same format as now used by dbLoadRecord)
- device choice
- driver choice
- breakpoint conversion table
Recommended scheme to use for dbLoadAscii:
path '/base/rec'
include 'menuGlobal.ascii'
...
path 'your development path, like ../src/O.mv167'
include ...
In startup files, dbLoad -> dbLoadAscii, dbLoadRecord, dbLoadTemplates
This release will automatically generate .h files to:
- create enums for menu choices. *Use them.*
- #define all record field names.
- include a routine that will calculate all offsets in records (to
allow compilation on arbitrary platforms).
Changes that need to be made to record support:
- #define GEN_SIZE_OFFSET /* force use of offset calculation */
#include 'xxrecord.h' /* existing header */
#undef GEN_SIZE_OFFSET /* only calculate offsets once */
- new routine recGblInitConstantLink() must be used to assign links
- highly encouraged to use new enum definitions
Online add/delete of records and modification of links: he is
thinking about this, but is currently hung up about the problem of
recomputing lock sets which can be very costly and may be
unacceptable in a realtime environment. I asked for gdct support for
adding record instances. Whatever the scheme decided upon, it will
allow for phased implementation of modifiable links, recordtype by
recordtype and device support will have both behaviors for a while.
Bob Dalesio - he wrote yet another save/restore utility which runs in vxWorks.
Can work in principle to do a 'glitchless reboot'. It turns out
that CEBAF, LANL, and LBNL each have their own versions and it
was agreed that some order should come from this chaos: maybe
the new BURT should support warm reboots.
John Winans - EPICS time structures are offset from POSIX.4 time structures,
but he is working on a simple fix so that we can use vxWorks and
POSIX time routines with EPICS timestamps.
--Harvey
----
Harvey Rarback phone: (312)702-9931
CARS fax: (312)702-5454
University of Chicago Internet: rarback@cars3.uchicago.edu
5640 South Ellis Avenue ESnet: 47583::RARBACK
Chicago, IL 60637 'My husband is a very friendly guy.'