Valid for
summer 2003 and later.
Controlling
the High Voltage
· The HV PC is
on the middle level, on the west side of the cavern and is labeled “HV PC”.
This PC controls the LeCroy Mainframes 1,2,3 and 4 and corresponds to
SuperModule 1 planes and shield mux boxes.
·There are now
two HV PCs, the second one is further along the west side, but next to the
middle of supermodule 2. This PC
controls the LeCroy Mainframes 5,6,7 and 8 and corresponds to SuperModule 2
planes and shield mux boxes. Four files
are necessary for the operation of hv and hv monitor. In the home directory of user minos, there is a script “hv”, an
executable “hv.exe” (can be generated with the make command in the hvsrc
subdirectory) which is called by the hv script, a mainframe map “mfmap.db” and
a channel map containing the logical, geometrical and voltage information
called “hvmap.db”. There are two main
ways to examine the hv, monitor mode and interactive mode. Monitor mode is reached by typing “hv mon”
or “hvm; hvt” at the command prompt.
Interactive mode (for changing voltages) is reached by typing “hv”.
· Open a ssh
connection to dcshv1.minos-soudan.org to control supermodule 1, and ssh to
dcshv2.minos-soudan.org to control supermodule 2. Once you have a command prompt, type “hv” and you should get a
prompt:
|HV|MF1-4> for
sm1
|HV|MF5-8> for
sm2
This is the hv
program prompt. (n.b. the mainframes are the 4 large blue LeCroy boxes. MF3 and
MF4 are next to the HV PC on the westside. MF1 and MF2 are directly opposite on
the eastside.) This “hv” program is a
script which interactively calls the hv.exe program. “hv” only takes one parameter, and it will put the script into monitor
mode, like “hv mon”, although it appears that a number of parameters will do
this.
· As of this
writing/revision (July 12th, 2003), both hv programs should be run
in monitor mode whenever the detector is unattended AND the voltages are ramped
up on more than zero channels. In other
words, if you have all HV channels turned off for debugging, do not run the
monitor (it’ll send email to a slew of people). To switch on monitor mode, exit from the controller program, and
type (in order) “hvm” and then “hvt”.
These are aliases set up so that even if the terminal window is closed,
the monitor will continue to run. Do
this on both supermodules whenever you aren’t debugging the detector. (to see what the aliases are, type alias)
. Monitor mode will read all channels
every ten minutes, writing to the database.
·There are a
number of relevant commands that the hv program will take (once at the hv
prompt, NOT from the script).
Typing the
first three letters of each command will also work. As an operator, you will most likely only use READ, STAT, SET,
OFF, and ZERO. You may also use select,
but its use is not currently supported fully (its buggy still).
·READ will read
all channels for which a voltage has been requested.
·STAT returns
the state of each mainframe, and if all is okay, it should tell you that each
of the mainframes are “enabled: HV OK”, and that the Imax is –100 counts. If you have recently entered an OFF command,
it will tell you that the mainframes are “enabled: HV OFF” and so on. If you have pushed in the interlock button
on the front of any mainframe, it will tell you that the mainframe is
“INTERLOCKED: HV OFF” and you will not be able to control the mainframe
remotely. If you look at the front of a
mainframe, there is a square colored pushbutton in the center, and a column of
three LEDs in the right module. Pushing
the interlock will toggle the enable light.
·OFF turns all
mainframes off, and will return the status immediately following. All channels should now be near zero volts.
·ON will switch
the mainframes back up, and the voltages will now be set to whatever you last
“SET” them to. This is an important
point, if you change something in the map and then switch OFF and then ON, you
will likely get an error on the changed channel, since the mainframe is setting
the voltage to what it has in memory, and the hvmap.db file may be different,
which the program will compare it with.
Use OFF and then SET to change voltages. If you remove a channel, use ZERO first, since SET only modifies
channels in the file.
·ZERO will set
every channel in all mainframes that the program controls to zero volts, both
the demand and the default.
·SET will read
in the hvmap.db file and begin commanding the mainframes to store the demand
and default voltages in memory. At the
end of SET, all the mainframes will turn on.
·SELECT puts the
program in a special mode which only controls a range of planes. If you wish to modify the voltage on only
one channel, say pmt 0 on plane 459 (above 248 is SM2, so we’re now on dcshv2),
you must type “SEL 2459” (prefix 1 or 2 for supermodule number). To get a range of planes, put a colon and the
second plane, like “SEL 2459:2463”. All
following commands must now be done under MANual mode. Type “MAN” and then give the voltage when it
asks (remember negative sign) and it will set all the channels on that
plane/planes to that voltage. So on selecting
459, you are affecting the voltages on all 3 PMT’s on both sides of plane
459. To shut down these channels to do
work on them, just give a voltage of zero when “MAN” requests it. This voltage is not actually set in SELECT
mode until the operator gives an ON command, which will affect only these
selected planes. If you shut down the
program, it will forget these settings; a read will likely return errors, you
must “SELECT”, “MAN” and then hit enter when it requests a voltage for it to
set them back to default voltages from the hvmap.db file. And of course ON will finish the job.
·It has happened
that the communication buffers get gunky, if this might be a problem, type
“CLEAR”, although this only helped in one case.
·Finally, there
is a setting which allows you to set the current limiting values. The default we use is 100 counts. So if it ever gets screwy (seen by looking
at output of a STAT command), issue a LIMIT command and give 100 as the value
by typing “LIMIT 100”.
This program
writes every READ to a mysql database on dcsdcp.minos-soudan.org. You can look at this data from minos-gateway
by using mysql –host=dcsdcp.minos-soudan.org –user=reader –password=numi96. use the database “dcs” and the relevant
table is HVTABLE and HVTABLEVLD. Our
concept of validity tables up at the
mine is purely an internal invention and is different from the final validity
tables generated at fnal and distributed by dbmauto (also to be
implemented). For example, to list all
the planes and times for which there were errors, so long as they happened
after july 1st, 2003, type ‘SELECT GEOMMAP, HV_TIMESTAMP FROM
HVTABLE WHERE ALARMBIT!=0 AND HV_TIMESTAMP>”2003-07-01 00:00:00” ORDER BY
HV_TIMESTAMP DESC;’ at the command prompt (without the outer single quotes of
course, but with the quotes around the datetime).
If you have a
problem with hv, email Erik Beall at ebeall@physics.umn.edu