ATF Control System

2/11/1997

This is one of a set of tutorial documents describing the ATF control system. The summary-overview slides presented to the ATF hardware/software meeting is found here(*), and should be read first. Detailed information on the Matlab and Fortran interfaces, along with some further background information will be found here.

The following comments are largely the results of Nan Phinney (nan@slac.stanford.edu) and myself (Keith Jobe, rkj@slac.stanford.edu) while we visited with Marc Ross and Doug McCormick (all from SLAC) in 2/97.

As part of the SLAC contribution to the Linear Collider Development, and most specifically, the Accelerator Test Facility, we offer these contributions. Additional contributions are welcome, and any errors should be brought to my attention (rkj@slac.stanford.edu).

Overview

This document is a description of the architecture of the ATF control system.

The ATF control system is largely a CAMAC-based system using a few VaxStations as front end processors and a DEC-Alpha (VMS) running the Vista control system for the operator interface and console displays.

There are a large number of smaller VaxStations and Macintoshes which serve as terminal servers and X-displays using both TCPIP and DECNET transport (VaxServers do not service TCPIP-based displays).

Vista System

The VISTA control system runs on the Alpha and has a large number of local global sections (database files) mapped for device control. (A global section is basically disk-shadowed memory. Being in memory when used and also on disk, global sections can be made to survive computer reboots.)

These databases are mapped using their logical names (sho log d*) and contain all of the current channel information. Any VISTA-specific initialization occurs automatically; the mapping of the databases occurs automatically upon the first reference to a channel within them.

Each channel consists of a database name ("DR_STR"), followed by a "::", and then further unique information. In most cases, this consists of the device name ("ZV13R") and further channel information (":" + "CURRENT.DAC.WRITE"). Putting this together, we get "DR_STR::ZV13R:CURRENT.DAC.WRITE". The information following the "::" must be unique within a database, and is generally unique across all databases.

Each channel consists of a channel name, a label, a value, and a number of hardware and software parameters. The value may be an integer, real, string, scalar or array (and other types as well). The databases are rather large, about 1.5 pages/channel (800 bytes per channel), so additional channel information is often stored in the parameters (which come whether they are used or not) rather than create additional channels. The device "s" location is an example of this. (The device s-location is also available from the VATF_GET_TWISS file).

Database Updating

The VISTA control system allows each channel to specify a handler, get routine, and a put routine. This functionality is not used for most channels in the ATF.

Each system has a reader program (a standalone program) which uses the database and specialized code to read most bpm, status, and analog channels. These programs (there are several) update the VISTA database every few seconds with the latest parameters.

The database may also be updated by calling one of the VATF_MAG_CHECK or VATF_BPM_GET routines.

SAD Data

The SAD program is used as the modeling engine for the linac, transport, and ring. The official decks are found in ATF$SAD_FILE:. These files can be a bit difficult, since the device names (almost) match the database names, and there is a large amount of additional information in the file.

The VATF_GET_TWISS routine will read the appropriate file for the region specified (or for any file explicitly specified), and return the TWISS data in the stanfard format.

Logging In

The ATF computer farm consists of VaxStations and Macintoshes. Each has a strength and a weakness.

VaxStations

Upon logging into a VaxStation with your brand-new account, you are faced with a connection to the wrong machine (the one in front of you) and the wrong security. I recommend that you:

DEC-Terminals could use the following:

The display can be set with a $ set disp/cre/node=<my_node> command, where the node number is usually written on a piece of tape on the display. A typical node name is ATFST4

Macintoshes

Have some VersaTerm pro help you in setting up a VersaTerm Pro session. You will probably want to set the terminal type to VT200-7bit, edit-cursor, delays=0.

The display can be set with a $ set disp/cre/node=<my_node>/trans=tcpip command, where the node name can be found by entering $ sho term. A typical node names is jlcatf_p71_3.kek.jp (jlcatf_p71_3 will work).


Links to: The KEK ATF home page, the SLAC ATF page, KEK Institutional Home Page, SLAC Accelerator Department, and the SLAC Institutional Home Page.

* These links require Acrobat Reader.

This page is maintained by Keith Jobe