\documentstyle[11pt,a4]{article} \begin{document} \begin{titlepage} { \hoffset=1truein \hsize=5.25truein \vsize=10.25truein \font\small=cmssbx10 at 14.4truept \font\medium=cmssbx10 at 17.28truept \font\large=cmssbx10 at 20.74truept \hrule height 0pt \parindent=0pt \parskip=0pt \hskip 3.9truein \large EDOC098\par \vskip .5truein \large EUROGAM PROJECT\par \vskip 1.5truein \hrule height 2pt \vskip 20pt \large NSF DATA ACQUISITION SYSTEM\par \vskip .5truein Autofill users manual\par \vskip 20pt \hrule height 2pt \vskip 1truein \medium Edition 2.4\par \vskip 5pt December 1994\par \vfill \medium Nuclear Structure Software Support Group\par \vskip 5pt Liverpool University\par \vskip .5truein } \end{titlepage} \setlength{\parskip}{1ex} \setlength{\parindent}{0em} \section{INTRODUCTION} This manual is a brief guide on how to operate the Autofill system from a terminal, with regards to operator intervention in the fill cycle and viewing the state of the system. It assumes that the user is already familiar with the Autofill mechanics and electronics. This document is updated to reflect {\bf sofware version 2.4} The Autofill {\bf computer} consists of a MVME147 CPU and three types of IO-cards. These cards reside in a VME crate. The IO cards read bias shutdown information(XVME240), sensor voltages(XVME560) and activate valves(XVME260). These cards have status LED's on the front which will show {\bf green} when the system is operating. The computer can be reset by pressing the RESET button on the CPU- board. The software in the crate consists of VxWorks (to handle communication, file access etc) and the Autofill control software itself. The crate is connected to a remote file server via ethernet. It uses this server for booting and data storage. Terminals can be connected to either of the four serial ports provided, but intervention in the fill cycle can only take place from the {\bf console} (serial port 1). \section{BOOTING} When the power is turned on the system will start booting VxWorks and various messages appear on the console terminal. After the VxWorks boot, the Autofill software is loaded and started. If the boot was successful there will be a message saying {\bf EUROGAM AUTOFILL starting}. Then the startup tests are performed and the status output to the screen. After a few seconds delay the screen will be initialised and the following information will be displayed on the first and last lines of the screen: \begin{itemize} \item Autofill Software Revision number and generation date \item System state \item CPU name \item Name of the serial port the terminal is connected to \item Name of the configuration \item Name of file server \end{itemize} If the startup has failed the message {\bf DOWN} will appear in the the system state field (upper right hand corner) on the screen. Normally this field will display {\bf OK}, {\bf FILLING} etc. to tell the state of the system. The {\bf system state} can have the following values: \begin{itemize} \item OK - no fill errors, automatic fill and network communication OK \item TESTING - the Autofill is being initialised \item S\_ALONE - the Autofill has lost contact with the server (but is still operational) \item FILLING - one (or more) detectors are being filled \item BIAS\_SHD - one (or more) detectors are warm \item FILL\_ERR - fill(s) have not been completed, mechanical or electronic problem \item WARNING - warning about potential problems \item DOWN - a fatal error has occurred \item MAN FILL - the array or parts of it are being filled manually \end{itemize} After a successful boot the login prompt appears on the screen and the system is ready for operation. An operator can now log on by supplying the correct {\em user id} and {\em password}. Only {\em privileged} users can intervene in the fill cycle and even those will only be allowed to do so from the console terminal placed by the detector array. Other users can {\em view} the state of the Autofill but not intervene. \section{SCREEN LAYOUT} After login a new screen picture is drawn. It is divided into four regions: \begin{itemize} \begin{description} \item[INFO] Displays configuration name and current time. \item[DISPLAY] Displays output from commands given by the operator. This region occupies the bulk of the screen below the INFO region. \item[COMMAND] The operator enters the commands here and receives messages when typing errors are made. It always displays the list of available commands. Occupies five lines near the bottom of the screen. The prompt consists of the user name + $">"$. E.g {\bf crew$>$}. \item[STATUS] Display the overall status of the system and a status for each manifold. Faults are indicated by BLINKING at the {\bf manifold identifier(s) } which fail(s). This$/$these can then be investigated further by using the {\bf SHOW} command. The STATUS line also tells the current {\em working} values for manifold and detector. (described later). The status line is the bottom line of the screen. The rightmost part of the status line display the overall system state (the same as the one displayed in the login window). \end{description} \end{itemize} \newpage \section{COMMAND INPUT} The Autofill System is operated through a series of short commands which are typed in after the prompt. If a command is not completed within thirty seconds of the first key being typed it will be ignored. All commands can be given in abbreviated form, the minimum requirement is indicated by underlining in the displayed command list, e.g {\underline AV}OID. The commands can be given in either upper of lower case and the input line can be edited as follows: \begin{itemize} \begin{description} \item[CTRL H] - backspace \item[CTRL X] - erase the entire command line \item[CTRL A] - redisplay previous command line \end{description} \end{itemize} Terminology: \begin{itemize} \item {\bf Position identifier}: A number in the range 1-72 giving the physical position of the detector in the array. \item {\bf Manifold identifier}: A letter in the range A-L corresponding to the labelling of the 12 manifolds. \item {\bf Multiple positions}: A {\em manifold id}, a {\em set} of positions, a {\em range} of positions or the keyword {\em all}. \end{itemize} Commands can take up to five arguments which must be provided on the command line itself. When the command specifies {\em multiple positions} a confirmation is prompted for before the action is allowed to take place. Example: \begin{verbatim} FILL A 12:30 AVOID ALL CANCEL 23-34 CLEAR 2,4,34,53 \end{verbatim} \newpage \section{COMMANDS DESCRIPTION} \subsection{SHOW} This command is used for investigating the state of the Autofill System. It can display information in three degrees of detail, \begin{itemize} \item A top-level overview where information on all positions are displayed together (PRESENCE, AVOIDED, SHUTDOWN, FILLING, ERROR, WARNING ). If applicable it will also tell if there is a {\bf fill inhibit} on the main 300 liter liquid nitogen dewars. The inhibit should be one DURING fills and for {\bf one hour} after the last valve has been closed. If any measurement of dewar levels are done it will be displayed below the overview. ADC values and approximate percentages are displayed. Example: {\bf SHOW} or {\bf SHOW ALL}. \item Show a selected manifold, with indicators for each detector on that manifold. On this level the operator will be able to view the following detector states and configuration parameters \begin{itemize} \item physical position \item position info \item status information \item value of liquid sensor ADC (millivolts) \item time of last valve opening \item time of last valve closure \item time of next fill \end{itemize} Example: {\bf SHOW C} \item Detailed view of one specific position. The following details are shown: \begin{itemize} \item physical position \item position info \item status information ( with details of warnings ) \item time of last valve opening \item time of last valve closure \item duration of last fill \item time of next fill + delay (if any) \item predefined fill times \item current sensor voltage for detector and manifold \item sensor reference voltage for detector and manifold \item exhaust nitrogen indication \item maximum allowed fill time (timeout) \end{itemize} Example: {\bf SHOW 43} \end{itemize} The {\bf status information} displays on or more of these messages: \begin{itemize} \item OK - the normal state when not fillling \item Purging - detector waiting for the manifold to get purged of air \item Filling - detector filling \item Closing - valve closing after complete fill \item Delayed - scheduled fill time passed, pending delayed fill \item Avoided - detector is avoided \item BiasShd - bias shutdown signal from GE detector \item Liquid - sensor sees liquid \item Gas - sensor sees gas \item Overfull - sensor sees liquid when no fill should take place \item Underfull - latest fill timed out \item Warning - a potential problem has been detected \item Fill\_abt - a fill has been aborted due to overfull manifold OR one of the other detectors on the manifold has overfilled \end{itemize} All error messages are showed {\bf blinking}. {\bf SHOW ADC} This command displays all ADC values together. The values are {\bf highlighted} when the corresponding detector is undergoing a fill. {\bf SHOW EXHAUST} Display information about the exhaust manifolds. (if they are installed). \subsubsection{SHOW by using single key strokes} For the benefit of quick operation the {\bf SHOW} command has been enhanced with some {\em single keystroke} commands. These enable the user to display manifolds and positions without explicitly having to type a new show command each time. This is of use if you want to scan quickly through several manifolds or positions. The {\bf working manifolds} and {\bf working detector} are used as a reference for these single key commands. The working values are set explicitely by a SHOW command and can be further manipulated by key strokes as described below. The advantages will soon become apparent. The key-strokes are: \begin{itemize} \begin{description} \item[CTRL Y] SHOW the working manifolds or detector. \item[CTRL F] Increment working manifold setting. \item[CTRL B] Decrement working manifold setting. \item[CTRL U] Increment working detector setting (within working manifold). \item[CTRL D] Decrement working detector setting (within working manifold). \end{description} \end{itemize} {\bf Example of use}: After login a SHOW ALL command is automatically executed and we start from there. The working values are set to the first position in the array which has a detector present. The working values are indicated on the display with a '$>$'. Typing CTRL F will move the arrow down and you will also notice a change in the {\bf working} field on the bottom line of the screen. Try the same with CTRL B. Note the {\em wrap-around} if you reach the bottom or top of the manifold list. Now, using CTRL D and CTRL U you should not see any change in the working manifold but note that the {\em working} detector value changes. Typing CTRL Y causes the working manifold to be shown, and typing CTRL Y again shows the working detector. Repeating CTRL Y causes the display to toggle between manifold and detector. This key-stroke will always cause {\em display} of the current working manifold or detector but does not change the values. Now, make the system show a manifold. Typing CTRL U and CTRL D will change the working detector as always and "wraps" around at the bottom of the list. Thus changing it on e.g manifold D does not change the setting on manifold E. You will notice the arrow pointing to the working detector in the manifold. Typing CTRL F or CTRL D will cause a new manifold to be shown. Type CTRL Y to show the {\em working} detector in the manifold you are working with. Use CTRL U and CTRL D to scan through the other detectors on that manifold. All this enables the user to "walk" through the array displaying all information by the use of single key-strokes. Note that CTRL Y means "dipping" down where the arrow is. \subsection{HELP} Online help, either general or specific for each command. Help exists for each command described in this document as well as the following general topics: \begin{itemize} \item Display - explaining display layout \item Positions - explaining how to specify which positions to act on \item Working - explaining about work manifold, work detectors. \item Syntax - explaining command line, and help file syntax. \end{itemize} The HELP command does not work when the system in stand alone. \subsection{FILL} Set an unscheduled fill. This command sets the next fill to the specified time; omitting the time argument will cause a fill to start immediately. WARNING! Any fills scheduled before the time set by FILL will be skipped. Examples: \begin{itemize} \begin{description} \item [FILL 1 12:30] - the next fill of detector 1 will be at 12:30 \item [FILL K] - all detectors on manifold K will be filled immediately \end{description} \end{itemize} \subsection{DELAY} Delay the next fill. This delays the next fill with the specified number of minutes. A fill can not be delayed by a total of more than 60 minutes. Example: DELAY ALL 20 - delay fill at all detectors by 20 minutes \subsection{TO} Set the maximum allowed fill time (timeout). The value must be in the range 1 to 60 minutes. Example: TO 10-24 20 - set timeout at positions 10-24 to 20 minutes \subsection{AVOID} Avoid the specified detector(s). This command will stop all filling operations on the specified detectors(s) and also prevent alarms from being raised. Example: AVOID 34,41,44 - avoid detectors 31,41,44 \subsection{UNAVOID} Enable all fill operations (will also re-enable a detector which has been taken out through bias-shutdown). Essentially the opposite of AVOID. Example: UNAVOID 45 - unavoid detector 45 \subsection{CLEAR} Clear errors and warnings for the specified positions. Example: CLEAR 23 - clear alarm conditions for position 23 \subsection{CANCEL} Stop ongoing fills for the specified positions. If the fill is delayed, cancel it still. Example: CANCEL D - cancel filling of detectors on manifold D \subsection{FTIMES} Shows the most recent fill duration of the specified detector. It also gives date and start time for the fills and a status. If the argument is omitted the command will be executed for the {\em working} detector. A special version is {\bf FTIMES LAST}. This will show the the latest fill on all detectors. Information included is: time, duration, status and whether or not the fill was scheduled. Example: FTIMES 45 \subsection{QUIT} Log out from the autofill user progam. This does {\em not} affect the fill cycles. \newpage \section{MANUAL MODE} On front of each manifold control unit there is a key which when turned clockwise will make the switches on the manifold control units override the computer. If one or more of these keys are switched to manual mode the computer will stop operating the valves, but the user can still use the {\bf show} command as in normal operation. All commands for intervention will disappear from the menu (i.e all users are regarded as non-privileged). The status field will indicate {\bf MANUAL}. \newpage \section{SYSTEM MAINTENANCE} System maintenance might take place from one of \begin{itemize} \begin{description} \item [ADMIN MODE] a separate mode of the autofill user progam that allows certain alterations to the configuration. \item [SHELL] - logging into the VxWorks shell allows a "free hand" \item [REMOTE HOST] - in order to edit a configuration access to the remote SUN host is necessary. \end{description} \end{itemize} The {\bf ADMIN} mode contains a set of commands for configuration and for extracting information about the configuration. This mode is entered by giving the command ADMIN. The commands SHOW, QUIT and HELP are available in both modes. As in the normal mode, commands are grouped according to user privilege. \subsection{PRESET} Set the prescheduled fill times. This command sets up to four new fill times or adds them to the old ones. A maximum of six preset fill times are allowed. The times are given on the form HH:MM and uses the 24 hour clock. Giving ADD as an options causes the given times to be added to the current ones. The option CLR erases all prescheduled fill times. WARNING! Any value in the "next fill" is lost and set to the most imminent of the new ones. Examples: \begin{itemize} \begin{description} \item[PRESET 10 ADD 12:00] - adds a new fill time for detector 10 \item[PRESET ALL 08:00 16:00] - set all fill times to 8 a.m and 8 p.m. \item[PRESET K CLR] - clears all fill times at manifold K. \end{description} \end{itemize} \subsection{CONN} Shows how a position is connected to the XVME-boards. The position need not be occupied for this command to work. Example: CONN 23 \subsection{IOUSG} Shows which channels on a XVME board are occupied. The short VME-address of the board must be given as argument. These addresses are printed on front of the VME boards. Example: IOUSG 4000 \subsection{INSERT} Inserts a new detector into the system. After insertion the detector will be AVOIDED. Insertion can only take place one detector at a time. Privileged command. Example: INSERT 12 \subsection{REMOVE} Remove a detector from the configuration. This can only be done to an AVOIDED detector. Removing a detector from a position does NOT affect the configuration information associated with that position. Privileged command. Example: REMOVE 12 \subsection{DGEN} Generates a new configuration (see Technical Manual). First the file $.src$ is run through the {\em configuration generating program} {\bf afDgen} and a new $O.bin$ is created. If you want to restart with this new configuration type Y when asked for confirmation. This will erase the two backup files ($C.bin$ and $P.bin$) and then reboot the crate. Now the new configuration will be loaded and run. After this you should log on and check that this configuration is what you really intended. Note that all detectors are AVOIDED after a {\em dgen}. The old configuration is stored in the file old.bin, and can thus be retrieved. All these files reside in the Autofill {\bf work} directory on your server. This directory is currently {\em /eg/autoFill/work}. You need to log on to the server in order to edit the configuration file. DGEN is a privileged command. \subsection{NORMAL} Returns to normal autofill mode. \subsection {SETTING THE CLOCK} The clock can be set from the VxWorks shell through the command {\bf setDate}. This commmand allows you to type in the date and the time. A simpler way is to use the command {\bf rdate}. This will pick up the time of the SUN server and set the Autofill time accordingly. The rdate command is always executed when the system is booted so a reboot guarantees that the the clock gets synchronised with the servers clock. \newpage \section{KNOWN PROBLEMS} The Autofill uses a SUN file server for backup of the system state, help files and recording fill times. If there is a problem with the network or the file server this can't be done. However, you can still operate the Autofill System from the terminals and the fill cycle continues unaffected. NB! The FTIMES command will not work, and fill durations are not recorded in stand alone mode. When a network OR server problem is detected first time the response will be slow and you'll get a message saying the file server is not responding. There will eventually be a S\_ALONE message on the screen. The HELP command also requires access to the file server. However, no damage is done if you do the HELP or FT commands. Reconnect attempts are done at each login and otherwise at regular intervals. IMPORTANT! Never reboot while the system is stand alone ! It will have no disk to boot from and the Autofill will be unable to start. \section{TROUBLESHOOTING} \subsection{Terminal does not respond} \begin{itemize} \item The terminal is in HOLD mode. Type HOLD again to restart. \item Poor connection between crate and terminal. \item Autofill or VxWorks software has crashed. In these cases a reboot is recommended. \end{itemize} \subsection{CRATE does not boot} \begin{itemize} \item The server is down. \item Problems with the ethernet. \item Problems with remote file system. \item VxWorks boot parameters have been corrupted. \end{itemize} You will have to fill manually until there is a successfull reboot. \subsection{Power on tests fail} \begin{itemize} \item Fault on an XVME cards (message FAILED) \item XVME card specified in configuration is out (message NOT PRESENT) \end{itemize} \subsection{Detector or manifold overfull} \begin{itemize} \item Valve stuck open. \item Fault in sensor circuit or XVME560 card. \item Ribbon cable from front of XVME560 to manifold control unit is out. \item Ribbon cable from sensor to manifold control unit is out. \end{itemize} \subsection{Detector or manifold underfull} \begin{itemize} \item Valve stuck closed. \item Ice blockage in pipes or detectors \item Connection from XVME260 to rear broken (ribbon cable) \item Dewar empty. \item ADC threshold needs adjusting (see below). \item Exhaust pipe has been connected to the wrong sensor. \item Fault in sensor circuit or XVME560 card. \end{itemize} \section {Adjusting sensor circuitry} When doing this you could use the command {\bf SHOW ADC} as an aid. In room temperature the ADC values should be in the region -600 to -650 mV. When gas flows through the exhaust pipes the expected value is between -600 and about -200. When liquid flows through the value quickly drops to about zero. All channels should be adjusted until they satisfy this. An initial adjustment in room temperature is normally sufficient. Error indications: \begin{itemize} \item The value sticks at around 0 mV. Check that the connection between the XVME560 card and the rear of the crate is good. \item The value sticks at around 7000 mV. Check that the sensor is connected. \item If unexpected ADC values appear at multiple channels connected to the same XVME560, it may be an electrical fault and the XVME560 should be replaced. \end{itemize} \section{OTHER FEATURES} \subsection{SHELL LOGIN} Logging on to VxWorks {\bf SHELL} allows debugging and manipulation of some system variables. You have full access to VxWorks but be careful! The {\bf cd} command must NOT be given. The user id for shell login is "vw". \begin{itemize} \begin{description} \item [bias shutdown disable] enableBs=0 \item [key switch disable] enableKey=0 \item [disable message logging to server] enableLog=0 \end{description} \end{itemize} Setting these variables to 1 re-enables the corresponding function. Typing {\bf Res} returns control to the login window. \subsection{REMOTE LOGIN} A {\bf remote login} facility exists to allow you access to a SUN station. Login requires normal id and the remote machine will then ask for a password after a short delay. Shell and remote logins can only take place from the console. NB! At the moment the "remote login" is only available to software personnel. It is important that any problems that are thought to emerge from software be reported. \newpage \font\medium=cmssbx10 at 17.28truept \font\large=cmssbx10 at 20.74truept \large \vskip 1.5truein Jomar H{\o}nsi \vskip 0.5truein Liverpool, 10th of January 1995 \vskip 2.5truein E-mail: jh@ns.ph.liv.ac.uk \vskip 0.5truein Telephone: int + 51 794 3398 \end{document}