The DØ High Voltage System
S.Ahn, F.Bartlett, S.Fuess, S.Krzywdzinski, B.MacKinnon, L.Paterno
Fermi National Accelerator Laboratory
Batavia, IL 60510, USAABSTRACT
The DØ experiment at the Fermilab Tevatron Collider uses approximately 1000 independently controlled highvoltage supplies in the detector. The VME-based front-end of the high voltage system employs Motorola 68020
processors running the pSOS operating system. Host processes, running on VAX/VMS computers, communicate
to the front-end computers via a local area network. The DØ Control Data Acquisition package, CDAQ, handles all
the communication between the host and the front-end. The front-end hardware and software is structured to ensure
robustness and flexibility. The host software provides intelligent and intuitive high-level control and monitoring of
the entire DØ high voltage system, which helps optimize the response of detector components.

I.

OVERVIEW OF THE SYSTEMThe DØ [1] detector consists of several components which have distinct high voltage requirements. Within adetector component high voltage modules of differing characteristics are used. The design goal of the DØ highvoltage system was to optimize the detector performance by meeting the individual and collective high voltage needs
for the 1000 high voltage supplies. The operation of the detector also demands an uninterrupted and accurate supplyof high voltage for long periods of time. Reliability is the most critical requirement for the system. The data taking
conditions change frequently and requires the control and monitoring of the entire system with minimum effort. The
high voltage system must be robust, flexible, intelligent and intuitive. The DØ high voltage system meets most ofthese requirements.
The high voltage system consists of front-end systems and host-level processes which communicate through thestandard DØ control path [2]. An individual front-end is a VMEbus-based system with six Motorola 68020
microprocessors handling up to 192 high voltage supplies. DØ employs 7 functionally identical replications of thisfront-end unit. The host contains a set of processes on VAX/VMS which are part of the DØ control and monitoring
system. The host processes use CDAQ services to communicate with front-end nodes which reside on token-ring.
In the following sections we will discuss the various components of the system and our experience with it.

II.

HARDWARE

The DØ high voltage hardware consists of VMEbus-based high voltage modules [3], a crate controller, microprocessors that control the high voltage hardware and a token ring for communication with external systems.
A.

High Voltage modules

A high voltage module consists of a control board and 8 independently controllable high voltage supplies. There are
7 types of supplies with differing resolutions and voltage and current limits. The resolution is determined by therange of the 15 bit ADC and the maximum voltage limit. A typical supply provides up to 5.5 kV at a current of 1mA.
High voltage is generated by a pulse-width modulator and a Cockroft-Walton voltage multiplier (fig.1) The supplies
deliver voltage linearly over a wide range. The accuracy of the delivered voltage is largely determined by the noiselevel of the high voltage components which are typically 0.05% of the full voltage. The supplies also exhibit longterm stability when properly installed and maintained. For the 5.5 kV supply the long term voltage stability is better
than 10 volts over 6 months.

+ 12 Vx4 Voltage
Multiplier

HV Enable
Flyback
Transformer

Clock B

Clock A

18 db/octave
filter, 3db at
1600 Hz11 kΩ
1120:1
divider

Voltage
Readback

4.64 k ΩRamp generator
125 kHz.22 µF
Comp.
Filter of form−(ω1s +1)/ω2s
ω1=1380 rad/sec

Pulse Width
Modulator

10 Ω

Current
Measurement- 12 V

Current
Readback_To High Voltage Control Board

From High Voltage Control Board

Fig.1 Block diagram of a high voltage supply
B.

Front-end System

The front-end system consists of a crate controller which handles the communication between the host and the highvoltage controller. The crate controller polls at 15 Hz to detect and report significant events. Signifcant events
include high voltage trips, temperature alarm and inadequate low voltage supplies for the system. The crate
controller communicates with the master process via command/ready queues.

III.

SOFTWARE

A.

Front-end Process

A front-end node consists of one master and multiple subordinate processes. The master process coordinates theactivities of up to 4 subordinate processes. Each subordinate process handles up to 48 high voltage supplies. Thesubordinate process directly controls the high voltage hardware through memory I/O. The master and subordinate
processes execute the user command within well defined states as seen in the state transition diagrams shown infig.2.
Master Processor States

Missing Hardware

Subordinate Processor States

Initializing
Hardware Present

Offline

SetOnCmd

OffHold

Off

DisableCmd

SetOffCmd

Disabled
EnableCmd

SetOffCmd

Pause
BeginRampCmd

SetOnCmd

BeginRampCmd

SetOffCmd

TripSignal

SetOffCmd

TrippedPauseRampCmd SetOffCmd

On

ResetTripCmd

Ramp

TripSignal

SetOffCmd ResetTripCmd
TripSignal

TrippedPauseRampCmd
orTargetVoltage

TripSignal

Fig.2 State Transition Diagram
The front-end maintains a set of circular buffers which are used for monitoring and diagnostic purposes. A commandstatus buffer records up to 256 of the most recent control commands and their execution status. The master process
records the time-averaged voltage, current, and standard deviation of current at 5 minute intervals in a slow historybuffer which can hold 400 events. The subordinate process maintains a fast history buffer at approximately 25 Hz
which can hold 1500 events.
B.

Host Process

The host consists of 3 processes: the control process, the global high voltage client and the system high voltage
monitor (HVMON). The system level Data Flow Diagram of the host control processes is shown in fig.3.

UserCommandUser
CommandGlobal
HVControl

User
Display

Detector
HVControl

HeartbeatMessage
Event
Message

Filtered
Event
Message

Event
Message
HardwareDeviceDatabase

FilterProfileAlarm
Processes

Event
Message

HV Control
Request/Response

Control
Data
Acquisition

Control
Messages

Fig.3 Data Flow Diagram
The host control process sends commands to the front-end and reads back data periodically. It receives high-voltage
command scripts from a user-defined or process-defined menu system. The script and parameter files are used tocontrol the high voltage in an intuitive manner. The user can also control the high voltage using a keyboard and inthat case the control process also provides a simple editor. Although a single process can control the entire DØdetector, we assigned one process for each major detector component. Presently, there are 11 high voltage processes
running simultaneously. The control processes are also servers to the global high voltage client process. Thecontrol process periodically sends out a heartbeat signal to the central alarm server to report its state.
The global high voltage client process broadcasts, via the DØ alarm processor, the high voltage commands fullvoltage, stand-by, or reset_trip. The control process then executes the corresponding script files, whose contents
vary for each detector component. The global command can be ignored by the control processes when explicitlyrequested by a user. The global command is also announced using DECTalk.

The system high voltage monitor periodically reads high voltage data to determine the status of each supply. Thestatus is represented using color block characters. The high voltage status of the entire DØ and a brief summary are
shown in the display (fig.4). The arrangement of the high voltage channels closely resembles their physicalarrangement. The status condition for each channel is defined by algebraic and logical relations. The definition iscompiled to an interpretive form which is executed at run time. The definitions can also be inherited from anotherchannel. All status changes are recorded in a database. The system high voltage monitor offers many tools that canbe used in conjunction with regular periodic activities, but in practice user commands are rare.
The user interface to all the host processes was designed using the VAX Screen Management facility(SMG). It wasoriginally designed to work in environments which did not have X display capabilities.

Fig.4 HVMON display
C.

Diagnostics Support Package

A number of diagnotics tools were created for the high voltage system. The command queue buffer was used todebug command execution problems. About 1.5 days of slow history data is kept on the front-end to study the longterm high voltage behavior of the detector. The fast history is used to debug both the detector and the high voltage
system. The history data is accessible from the control process, the system high voltage monitor and other standalone processes. The history data is stored in Ntuple files, which can be viewed using PAW.

IV.

EXPERIENCES AND LESSONS

Initially, DØ developed PC applications for controlling the high voltage. The PC environment was particularly
useful during the hardware development phase and is now occasionally used when there are network disruptions
which prevent the use of the operational system. It can also calibrate high voltage electronics and has an extensive
help facility. However, because it was rarely used during the running of the experiment, casual users did notremember the command sequences and felt uncomfortable with it. We think an identical user interface for both thePC and host system would have avoided this problem.

ACKNOWLEDGMENTS
The authors wish to acknowledge the considerable contributions of the members of the Accelerator and Computing
Divisions of the Fermi National Accelerator Laboratory as well as those of the DØ Collaboration.

REFERENCES[1] S. Abachi, et al., (Fermilab PUB93-179-E) Nucl. Instr. and Meth. A338 (1994) 185.
[2] S. Ahn, et al., (Fermilab PUB93-324-E) Nucl. Instr. and Meth. A352 (1994) 250-253.
[3] S. Ahn, et al., Conference Record of the 1991 IEEE Nuclear Science Symposium. Vol 2, p984.