"HV" User's Manual

Version 2.08

for an IBM AT or Clone

 

Oct. 19,1998 (5th Edition)

 

Edited by R. Angstadt

From the Original DØ note #1175,

"DØHV User's Manual"

Version 1.0,

by

M.J. Yang.

 

 

 

 

 

 

1. Introduction 1

1.0 General 1

1.1 DØHV system 1

1.1.1 Hardware configuration overview 1

General 1

Token Ring Interface 1

Bit3 Interface 1

MASP system 2

Module Overview 3

Module front panel LED's 3

Module Registers 3

Channel registers 3

Pod A/D signals 4

Channel A/D signals 4

VME addressing 4

Pod Types and Pod Polarity 4

1.1.2 Processor tasks. 4

1.1.3 "HV" Flavors. 5

Master Command Queue Integrity. 6

1.1.4 "HV" Modes. 6

Inhibit Commands. 6

MASP verses Stand Alone Operation. 6

Stand Alone mode 7

Source of digital status 7

1.2 "HV" operation in a nutshell 8

1.2.1 On Line Help 8

1.2.2 Messages may suspend updating status. 8

1.2.3 "page0" 8

1.2.4 "page1" 9

1.2.5 "page2" 9

1.2.6 "Hot" Histogramming control. 11

1.2.7 Main Function Keys 11

1.2.8 Function Key Modifiers 11

1.2.9 Unmodified Function Keys 11

2. High voltage status 12

2.0 "HV" status color coding 12

2.1 Hardware status bits 13

2.1.0 General 13

2.1.1 Bit explanations 14

On/ Off 14

PS Enable 14

Over Voltage (OV) 15

Over Current (OC) 15

Channel External (CE) 15

Module External (ME) 15

Interlock (INT) 16

Interlock Enable 16

Watch-Dog Timer (WDT) 16

Watch-Dog Timer enable 16

2.3 Software implemented status 17

2.3.0 General 17

2.3.1 MASP Software States 17

2.3.2 MASP Software Trips 18

Current Transient Control 18

Voltage Margin Control 18

Off-line 18

System Fault 18

"Affinity" or "group fault" 18

Temperature 19

3. High voltage DAC controls 19

3.1 Hardware implementation 19

3.1.1 Set high voltage output 19

3.1.2 Set Current Trip limit reference 20

3.1.3 Set voltage trip limit 20

3.2 HV Master commands 20

3.2.1 Ramp 21

Set Ramp Rate 21

Begin Ramp 21

Hold Ramp 21

3.2.2 Difference table 22

Define voltage difference table 22

Clear voltage difference table 22

Enable/disable difference table 22

3.2.3 Set 22

On/Off 22

OV trip 22

OC trip 23

Target Voltage 23

Target Voltage and Begin Ramp 23

Current Trip Limit reference 23

Voltage Margin 23

Slow history period 23

3.2.4 Reset 23

Trip 23

3.2.5 Other Unsupported Commands 24

HV module scan 24

Define group 24

4. Detailed "HV" help notes 24

4.0 Page0 24

4.1 Page1 25

4.1.1 Scaling Target Voltage 25

4.2 Page2 27

4.2.0 General modes. 27

4.2.1 Graph mode (meter display). 29

4.2.2 Text mode. 30

4.3 Page3 30

4.3.1 Channel color coding 30

4.3.2 Data displays 31

4.3.3 Changing the plot update rate 31

4.4 Page4 31

4.4.1 Histogram parameters 31

4.4.2 Histogram statistics 32

4.4.3 Changing the plot update rate 32

4.5 <F4> Menu 32

4.5.1 Main Menu 32

"Help" 33

"Change all settings sub-menu" 33

"Download custom command sub-menu" 33

"Enable/disable sub-menu" 33

"Nominal sub-menu". 33

"Goto program set up sub-menu" 33

"File ..." 34

"Browse above file" 34

"Save all to above file" 34

"% of target v to restore to current..." 34

"V target restore from file." 34

"I trip limit restore from file" 34

"Ramp rates restore from file" 35

"v Margin restore from file" 35

"1 restore v-meter display from file" 35

"2 restore i-meter display from file" 35

"All restore from file" 35

"3 hv module scan" 35

"4 printer mode..." 36

"Open door to dos." 36

4.5.2 Change all settings sub-menu 36

"Help" 37

"V target set" 37

"I trip limit set" 37

"Ramp rates set" 37

"v Margin set" 37

"Upper v meter set" 38

"Lower v meter set" 38

"Top i meter set" 38

"Bottom i meter set" 38

"1 cause an over voltage trip!" 38

"2 cause an over current trip!" 38

4.5.3 Download custom command sub-menu 38

"Help" 39

"Numeric value of mnemonic below..." 39

"Input command (mnemonic)..." 40

"Channel (hv master channel..not yours)..." 40

"Value to send with (analog) command(s)..." 41

"Do this command! (sends the above one time.)" 42

"File name (of commands)..." 42

"Save (records on "D") commands to file...." 42

"Browse playback file." 42

"Playback above file to hv master" 42

"Open door to dos." 42

4.5.4 Enable/disable sub-menu 42

"Help" 43

"Enable/disable menu mode(toggle)..." 43

"Channel" 43

"Margin check" 43

"Transient check" 44

"Interlock" 44

"Watchdog" 44

4.5.5 "Nominal sub-menu." 45

4.5.6 ("HV") program sub-menu 45

"Help" 45

"Use hard status ..." 45

"3 two bit addressing mode (OFF=24) ..." 46

"Times same command sent to master..." 46

"Global diagnostics (toggle)..." 47

4.6 <F11> Plot all voltage & Current 47

4.6.1 What the histogram colors mean. 48

4.6.2 <F11> initialization. 48

4.6.3 <F11> global active menu keys. 48

"%" 48

"autoscaLe" 48

"Inhibit" 48

4.6.4 Keys that affect the top Current Plot. 48

"Top" 48

"Bottom" 49

"Do" 49

"Save" 49

"Restore" 49

4.6.5 Keys that affect the bottom Voltage Plot. 49

"Upper" 49

"loWer" 49

"dO" 49

"Vtx" 50

"sAve" 50

"rEstore" 50

4.7 Obsolete features: V1.0 of "HV" 50

HV module ADC reset 50

Two stage Ramp 51

Allocate/Deallocate 51

<Ctrl>-<S>/<Ctrl>-<Q> 51

5. Startup 51

5.1 initialization 51

5.1.1 HV configuration file 52

5.1.2 HV Master/Subordinate processes 52

HV Master/Subordinate processes 52

Power supply channel specification 52

Enabling external interlock trips 52

5.2 Specification file, "SPECS.DAT", format 53

5.2.0 First line 53

5.2.1 Subsequent lines 53

Detector 53

Group 53

Channel 54

5.2.2 Settings 54

Target Voltage 54

Voltage display lower limit 54

Voltage display upper limit 54

Current Trip Limit reference 54

Current display lower limit 55

Current display upper limit 55

Ramp Rate 55

Voltage Margin 55

5.2.3 Channel mapping. 55

Crate number 55

Module number 55

Port number 55

5.2.4 Channel identification 55

Power supply type ID 55

Module serial number 56

5.2.5 Channel flags 56

6. Hardware Configuration Tips 56

6.1 Hardware setup 56

6.1.1 Module control board jumpers. 56

Module crate address, J101 57

Watch-Dog Timer delay, J102 57

VME bus DTACK, J103 58

VME reset, J105 58

Serial number, J106 + J107 58

Clock select, J201 58

+12P, J401 58

-12P, J402 58

AGND, J404 59

PGND, J403 59

6.1.2 Power supply type ID 59

Power supply types 59

Reserved types 60

6.1.3 Vertical Interconnect 60

6.1.4 Bit3 PC-to-VME interface 60

AT adaptor board 60

VME adaptor board 60

 

1. Introduction

1.0 General

This write-up is intended for users of the D Zero, DØ, high voltage power supply system running the program, "HV", on the IBM PC/AT and its use with the DØ High Voltage 68K Master And Subordinate Processors or MASP. In this document "Slave" and "Subordinate" will be used interchangeably and mean the same thing.

This is divided into several sections. Section 1.1.3 describes some interface and other details concerning the use of "HV" and where it may be found on DØ maintained computers. Users familiar with the basic system and wishing to gain a quick sense of "HV" and how to use it might refer to Section 1.2, "'HV" Operation in a Nutshell", and possibly the Detailed "HV" Notes in Section 4. Section 2 explains the power supply status. Analog controls are explained in Section 3. Section 5 deals with program initialization and the specification file format that determines the formation of Detectors and Groups. High Voltage Module hardware jumpers are explained in Section 6.

1.1 DØHV system

1.1.1 Hardware configuration overview

General

Each DØ High Voltage Power Supply (HVPS) Rack consists of one VME based DØ Control Crate and up to four VME High Voltage Power Supply Crates. The control crate includes 680x0 micro-processors, memory cards, Vertical Interconnect (VI) card(s), and a Token Ring board that the Control Crate 68K micro-processor uses to send and receive messages to other computers over the Token Ring including the VAX and the P.C..

Token Ring Interface

The DØ Control 68K handles all Token Ring Communications via a message passing scheme. Token Ring Messages of list type #45 are forwarded to the 68K High Voltage Master Processor via the Master Command Queue, MCQ, which is really a circular buffer in VME memory. Any computer on the Token Ring may read any memory location in the Rack via other message list types sent to and from the DØ Control Crate.

Bit3 Interface

An optional commercially made Bit3 board set (one board plugs into an AT or clone's ISA bus and the other board plugs into a VME crate with a cable connecting them) allows a P.C. to directly access the High Voltage without going over the Token Ring.

MASP system

In the figure below "Master" refers to the High Voltage Master 68K microprocessor that accepts commands via the MCQ. "68K CON" (short for "control") is the DØ Control Crate microprocessor that handles the Token Ring messages and fills the MCQ. Once the Master receives a message it may then forward it to the appropriate 68K "SLAVE" processors in each High Voltage Power Supply Crate over the Vertical Interconnect, VI. The Bit3 provides an optional parallel interface path into the control crate. "HV" supports both interface paths but not simultaneously. Please refer to Section 1.1.3 for details on "HV" Flavors.

The VI board set makes it possible for separate physical VME crates to form one logical electrically connected VME crate. Each HVPS crate can have up to six modules of eight high voltage power supply channels to make a maximum of forty-eight channels per crate. Since there are four high voltage crates per Rack this makes one hundred and ninety-two channels per Rack. Currently six Racks supply all the channels for the DØ experiment.

Module Overview

The HVPS Module consists of one control board and eight plug-in Pods. Each Module has a 16-bit Analog to Digital Converter (ADC) which any computer on the VME bus may read by first setting a MUX register, polling until End of Conversion (EOC) and then reading the 16 bit value. Each A/D conversion takes approximately 50 µsec. This operation is not atomic (an operation that takes place in a single indivisible bus cycle) which means that only one computer or one process may read the ADC at a time with meaningful results. Thus the "SLAVE" 68K processors constantly read and store ADC copies in memory to be read by other computers including the "MASTER". (For the details of this system please refer to Bryan MacKinnon, et.,al., DØ High Voltage Software User's Guide.)

Module front panel LED's

The front of each module has one green LED at the top followed by eight red LEDs separated by each Pod's output connector. The green LED lights when that module is being accessed over the VME bus. The red LED's light only if the channel is really "ON" in the vernacular or specifically that the MSB of the Command/Status Register for that channel (the Power Supply Enable line) is valid. This means that Voltage may be present at the Pod Connector if the output voltage level is greater than zero. Other inputs from the control board to the Pod include the clock signals, and the ±12 volt Pod power.

Module Registers

There are four registers that act at the Module level beginning at location $80. Three registers are used for the operation of the on-board ADC. One for selecting the analog signal to be digitized, one for the ADC status register including End Of Convert, (EOC), and one for reading the digitized 16 bit result. The last module level register contains a sixteen bit control board ID or serial number.

Channel registers

Each channel has four sixteen bit register locations in the memory map with two going to DACs. One DAC controls the output Voltage and the other is for setting the Current Trip Limit reference. Another register is a channel digital Command/Status register while the last location allows the computer to read the channel Pod Supply Type ID.

Pod A/D signals

A Pod's ADC signals include the High Voltage Output, Current Output, Target Voltage Setting, Current Trip Limit Setting, and Voltage Trip Limit Setting. (Note: here "setting" means A/D readings that are taken on the analog side of the DAC (or the DAC output). This is distinct from the Channel register DAC registers above..) Module level A/D signals include Temperature and all the low voltage power inputs such as +5 volt, analog ±12 volts, and bulk Pod supply ("dirty") ±12 volts.

Channel A/D signals

The command voltage is a signal produced by a Digital-to-Analog-Converter (DAC) on the control board and ranges from -5.0 to +5.0 volts. Signals returned to the control board by the power supply are the Voltage Readback, Current Readback, and the Pod Supply Type ID. The voltage readback is derived from the actual high voltage output by using a voltage divider. The power supply type is the high nibble of the Supply Type ID register.

VME addressing

Control and readback of a High Voltage Module is through a scheme known as "memory mapping". The Module address jumper block works with the DØ High Voltage VME crate custom P2 backplane to automatically set the Module's base address according to which slot it is plugged into! (See Section 6.1.1, jumper 101 for more details.)

Pod Types and Pod Polarity

Pod types designed to produce a negative voltage read back as a positive number! Thus a Type Two Pod set to -2KV will read back +2KV. If set to 0 it can read out a small negative number (due to noise or a small offset) that if really at the output will be a positive voltage. Thus the user must be aware of the Pod type to determine the true sign of the output. When "HV" is first run it reads the file "DØHVPS.DAT" to determine the program scale factors for the different Pod types. Please see Section 6.1.2 for further details on Pod types.

1.1.2 Processor tasks.

The DØ HVPS is a high density design without any switches, knobs, or meters on the front panel. Modules can only be operated through a computer which has the ability to read and write to VME bus memory. The normal DØ scheme is for the "Subordinate" or "SLAVE" process in every crate to do the work of reading the ADC's and status registers into VME memory data structures including slow and fast histories. Subordinates handle the real time process control of that crate including Ramping. They keep copies of all the hardware registers and A/D readings in memory as well as checking for Transient Currents and Voltage Margins.

The "Master" takes care of communicating and orchestrating the Subordinates. Messages sent over the Token Ring from any source are received by the 68K Control Processor which fills the Master Command Queue (MCQ) on a First In First Out (FIFO) basis. The 68K Master process empties the MCQ on the same FIFO basis and coordinates the activities of all the Subordinate processes by sending commands to them if necessary. This scheme makes it possible for other computers to read back a wide variety of information with no more conflict then using VME bus cycles.

1.1.3 "HV" Flavors.

The P.C. based program "HV " is maintained in two Flavors, a Bit3 Polling Flavor and a Token Ring Flavor. Flavors are distinct from Version numbers in that they exist simultaneously while Versions are historic. Please refer to "HV.VER" for details on Version releases. Since the program is overlaid it consists of two binary files, the executable and it's overlay file. For now the following naming conventions exist:

Polling Bit3 version "HVP .EXE" and

"HVP .OVR"

 

Token Ring version "HVT .EXE" and

"HVT .OVR"

To run either Flavor first copy both files of the preferred Flavor to "HV.EXE" and "HV.OVR". For example, to run the Token Ring Flavor one would type at the DOS prompt:

"copy hvt.exe hv.exe <Enter>"

"copy hvt.ovr hv.ovr <Enter>"

(or alternatively "copy hvt.* hv.*<Enter>")

and then type "hv" <Enter> to run the program.

If one then wanted to switch to run the Bit3 Polling Flavor one would type at the DOS prompt:

"copy hvp.exe hv.exe <Enter>"

"copy hvp.ovr hv.ovr <Enter>"

and then type "hv" <Enter> to run the program.

Remember that all Flavors always look for the file "hv.ovr". If the overlay file is not the same Flavor as "hv.exe" the program will bomb or do unexpected things.

Since both Flavors need several other files to run, "HV" should always be run from a sub-directory with these other files. Currently all necessary files are being maintained in a sub-directory called "\hvolts". Since this sub-directory may not always be on the same logical disk a batch file "HV.BAT" is maintained in the path that first sets the default disk to be the logical disk that "\hvolts" is on, then sets the default to the "\hvolts" sub-directory and finally invokes "hv.exe". Both the batch and executable "HV" accept an optional argument that is the Specification File Name that the user wishes to use. The Specification File tells "HV" which Rack to access for the Token Ring Flavor and how to group the channels for that Rack.

Master Command Queue Integrity.

Both the VAX and the Token Ring Flavor of "HV" can send commands to the MCQ without interference. However at present the Bit3 Flavor of "HV" does not fill the MCQ in an atomic VME operation. Thus the Bit3 Flavor should only be used to send commands to the Master when the Token Ring is down or when the user is sure that no other Token Ring Processes (VAX, P.C., or other Computers) are sending High Voltage Master commands to that DØ Control Node.

1.1.4 "HV" Modes.

Inhibit Commands.

Note that all Flavors have a software switch controllable from the front menu that inhibits sending commands to the Master until the user actively changes it. This prevents inadvertent commands from being sent, especially from Page2 where the up and down arrow keys are used as a knob on the High Voltage setting. They are "hot" when the "HV" is enabled . ("Hot" means that immediate action is taken when the user presses a key. Most of the menus operate via hot keys that are capitalized and are in yellow to help identify them.) The "HV" enabled software switch is toggled with the <C> key (short for "Changes by pc allowed" or "...not allowed") from the first display screen, Page0.

MASP verses Stand Alone Operation.

All Flavors of "HV" have two main modes of operation. The main mode is similar to the VAX in that "HV" uses the MASP system to read and control the high voltage. In this mode "HV" sends commands to the Master as described above in "Software Configuration". "HV" gets all A/D readings from the Slave memory locations and not from the High Voltage modules themselves as that would cause hardware conflicts when two different processes; e.g, the 68K Slave and "HV". tried to control the same A/D Multiplexer and then read the value. The other mode is a Stand Alone mode in which "HV" obtains all readings directly from the High Voltage hardware and not copies from MASP memory. "HV" may be interactively toggled between modes on Page0 with the <M> key. Setting the program to the Stand Alone mode when the Master and Subordinates are active may cause them to trip the High Voltage supplies due to faulty readings due to hardware contention problems with the A/D Multiplexer and is strongly discouraged.

"HV" prevents the above by determining if the MASP system is running soon after the program is first run. If the "Master" and "Subordinate" VME memory counters are changing then "HV" will come up in the "Master active" state. If the "Master" or any of the "Subordinate" processors "crash" while "HV" is running a message will be printed to the screen saying that the "Master" or "Slave" "is not active". Usually if one of the MASP processors goes the rest soon follow and up to five messages get printed to the screen. If the user wishes to restart them the simplest thing to do is first pause the P.C. by pressing the <Pause> key and then manually re-booting the "Master" 68K by pressing it's red "reset" button on the front panel. (On the test stand presently pressing a "Subordinate" "reset" button almost always causes some of the High Voltage Channels to trip "off" if they are "on" so this is not recommended.) After the MASP system has started, pressing the <space bar> on the P.C. allows "HV" to continue.

An easy way to see if the MASP system is alive is to observe the green LED's on the High Voltage Modules' front panels. The green LED's light when they are being accessed over the VME backplane by any processor. If the green LED's are not all lit solidly it is a good sign that the MASP system has crashed and/or is hung. If the LED's light in order once every few seconds than that is probably just the "HV" reading the hardware status of all the channels. One can verify this by pressing the <Pause> key on the P.C. and seeing that no green LED's light. (A good way to resume running "HV" is to press the <Space Bar> key.)

Stand Alone mode

Note that in both modes the program response to a user command is the same and goes something like, "command sent to Master". Here "Master" means either the real MASP system or the part of "HV" that emulates some of the functions that the MASP system performs. Only Page0 displays the identity of the "Master" and which mode "HV" is really in.

At present there is only code for automatically switching to the correct mode when the program is first run. Subsequently, only the user may toggle this program mode switch.

In the Stand Alone mode "HV" does not rely on the MASP system in any way. Additional "HV" code is activated that reads the ADC directly and takes over some of the functions of the MASP system. The penalty for the this is reduced response to the keyboard and the sample rate of "HV". While the penalty does not seem too severe when using the Bit3 Flavor the response of the Token Ring Flavor suffers significantly. Many complex MASP system software functions are not present in this mode. Stand Alone mode presently supports monitoring, ON, OFF, RESET, control and simple Ramping features. Unsupported MASP features in the Stand Alone mode include any kind of Software Trip, complex Ramp algorithm, and Temperature Trips.

Source of digital status

When "HV" is using the MASP system the user can decide whether atomic status readings come from MASP memory or directly from the High Voltage Hardware. This can be done when on Page0 through Page4 by pressing first the <Alt> key and then the <F4> key and releasing both, then pressing the <G> key (for "Goto program set up sub-menu") and finally the <U> key (for "Use hard status (ON=pc, OFF=68k)"). This controls the status reading source for the colored squares on Page0 through Page2.

Specifically, on the single channel view of Page2, <Shift>-<F9>, it determines whether the "over voltage" through the "watchdog" bits come directly from hardware or from MASP memory. The MASP system generates the "Transient" through the "Temperature" trips. In Stand Alone Mode these trips are not generated by any part of the "HV" program. Note that reading DAC settings are VME atomic operations and are always read directly from the hardware by "HV" and not from copies in MASP memory.

1.2 "HV" operation in a nutshell

"HV" is organized as a many branched tree (menus) with the root (Page0) controlling which branches (Detector and A/D channel combinations) to work with on Page1 through Page4. Page1 selects the next branch by choosing which Group to display on Page2. Function keys active on Page0 through Page4 control the working set including an <F4> menu system to change settings, save and restore features. The <Shift> <Alt> and <Ctrl> keys serve to modify the Function Keys to determine where to break the branch of the working set (the whole Rack, the present Detector, the present Group, or the present Channel) at any time. While program operation is not immediately intuitive, once grasped it provides a powerful and flexible interface with occasional reminders from the on line help.

1.2.1 On Line Help

Help files for most pages can be interactively displayed one screen at a time. Typically the first screen is displayed by pressing the <H> key for help and then the <Space Bar> key to display the subsequent screens. <Esc> aborts displaying the rest of the file. Help files may be edited by the user or even completely replaced as long as the file name displayed on the last line is not changed.

1.2.2 Messages may suspend updating status.

Various information messages are displayed in response to the user's commands. Messages appearing on the screen are removed when a key is pressed. If the condition still exists, the message will be repeated. On some pages these messages put the program into a state of hibernation so that some readbacks may be suspended until the user clears the message by pressing a key. In this situation the <Space Bar> is always safe.

1.2.3 "page0"

Presently, there is a requirement that channels be located consecutively to be in the same Group. Each supply status is represented by a rectangular box color coded for various trip states. The color codes and their meanings are displayed at the bottom of the first screen, Page0. The same color code is also used on the status boxes on Page1 and Page2 although their explanation is not repeated.

Within the inner square on the right half of the first screen, "page0", are both a horizontal menu with which to select a Detector and a vertical menu which selects from a variety of A/D readings for subsequent displays. The present pick for both menus is displayed in yellow and is changed via the arrow keys. The horizontal menu gives a list of Detector names which depend on what is read in from the specification file at program load time. Specification files are user editable and provides a means for the user to customize the program so that a Rack may be operated on in smaller segments of "Detectors" and "Groups". Two main functions of this page are for the user to choose the Detector to work with from the horizontal menu and to choose which A/D to view on Page2.

The Detector on the far left is always "ALL" for the whole Rack. All of the arrow keys do little on Page0 except to select things for subsequent pages which may be viewed via the <Page Up> key. The <Page Down> key brings the user back to Page0. "HV" may be exited from Page0 through Page4 by pressing the <F10> key.

1.2.4 "page1"

An important function of "page1" is for the user to select the "Group" they are interested in. (Groups are also user definable and are read in from the specification file at program initialization time.) Then one presses the <Page Up> key to look at that group on the meter display (Page2).

1.2.5 "page2"

If the "HV" is enabled on Page0 and the Page0 vertical menu pick is on "current / Voltage" then the default for the up and down arrow keys is to change the Target Voltage and immediately Ramp the channel to the new Target Voltage. These arrow keys act as a "knob". See the <F1> and <F2> keys below for how to change what the "knob" is attached to. The "knob" increment is user selectable by pressing and holding the <Ctrl> key and then pressing the right and left arrow keys. If a right or left arrow key is pressed by itself then a new channel will be selected only if a thick red bar signifying the end of the Group is not in the direction of the arrow. The presently selected channel will be shown in inverse video at the top of the meter.

The <F1> and <F2> keys are only active on the meter display Page2. They control what the "knob" is attached to. For example, if the Page0 vertical menu pick is on "current / Voltage" then <F1> switches the "knob" between the meter's upper limit Current display, meter's lower limit Current display, and the hardware Current Trip DAC setting. <F2> switches the up and down arrows keys to the meter's upper limit voltage display, meter's lower limit voltage display, or the hardware voltage trip DAC setting. Thus the up and down arrow keys on Page2 act as a knob while the <F1> and <F2> keys select what the knob is attached to.

If the Page0 vertical menu pick is on "current / Voltage" then the meters on Page2 will display the DAC setting of the Current Trip Limit on the left and the High Voltage Setting on the right. These show up as small inward pointing triangles which may overlap the scale readings on the outside of the meters. The inside of the meters show the present readback or A/D of the Current on the left and the Voltage on the right. If the knob is attached to a DAC setting then it will change to a different color then the other small triangles.

The following keys control alternative "page2" screens. These other screens toggle back to the main screen only by pressing the same key again. Alternate screens may be reached only from the main screen. Below are the keys and their corresponding display:

 

Key(s)

Result

F9

toggle between text mode and channel meter display.

Shift-F9

toggle between single & multiple channel display within Page2.

Ctrl -F9

toggle between Page1 group and user selected group channels.

Alt-F9

toggle between tripped channels and original group channels.

1.2.3..5

move to first, second, third, etc. set of fifteen channels in group

<Tab>

move to next set of fifteen channels in group.

F1

Toggles attachment of vertical arrows to current limit trip setting, upper and then lower meter current range.

F2

Toggles attachment of vertical arrows to voltage set, upper and then lower meter voltage range.

Ctrl <-

Decreases the up and down arrow (knob) increment or step size.

Ctrl ->

Increases the up and down arrow (knob) increment or step size.

<Backspace>

move to previous set of fifteen channels in group.

 

By using the <Insert> (in user group) and <Delete> (from user group) keys in combination with the Left and Right Arrow keys one may select an arbitrary user group of up to 15 channels. There is no boundary on the user group except that they all be in the same Rack. A channel indicates its membership in this special user group with a "_" under its name at the top of "page2". After "inserting" one or more channels in the user group pressing <Page Up> displays a strip chart of those channels on "page3". Pressing <Page Up> one more time gives a histogram "page4". One backs up through the displays with the <Page Down> key.

1.2.6 "Hot" Histogramming control.

Histogramming control is active on Page0 through Page4 via the following function keys:

Key

Function

<F3>

Start/Stop the histogram update.

<Ctrl>-<F3>

Clear the histograms.

<Shift>-<F3 >

Toggle logarithmic scale "on" and "off" for the histogram display.

1.2.7 Main Function Keys

Function keys generally take immediate action and are active on Page0 through Page4:

Key

Function

<F4>

a text based save/restore menu. Several sub-menus branch from this menu including a "Change all settings sub-menu".

<F5>

Turns the supplies off.

<F6>

Resets the supplies. Note that if the Master is active a reset also sets them on!

<F7>

Ramp/pause, if the supplies are Ramping then pauses them. If supplies are not Ramping and not at their Target then they Ramp.

<F8>

Turn supplies on. This is only necessary if "HV" is running without the Master in Stand Alone mode as the Master automatically turns on the supplies with the reset command, <F6>!

1.2.8 Function Key Modifiers

The following key combinations are valid with the main Function Keys:

Key + Fx

Usage

Restrictions

<Fx> alone

The present group.

present group undefined Page0.

<Shift>

The present channel.

present channel defined only on Page2.

<Ctrl>

The present Detector.

present Detector cannot be "All" on Page0.

<Alt>

All: the whole Rack.

None! Be careful!

1.2.9 Unmodified Function Keys

<F10> ends the program when on Page0, Page1, Page2, Page3, or Page4. If in <F11> it will have to be pressed twice. If in the <F4> menus one will have to press the <Esc> key until the program is back on Page0 through Page4. <Ctrl>-<End> does the same thing as <F10>.

<F11> displays two histograms for the whole Rack. The top one is a readback of the Current and the bottom the Voltage. It also has some additional special plots designed for use with the Vertex Detector as well. Please see Section 4.6. <F11> is similar to the <F4> menus in that the function keys are de-activated until the user leaves it via the <Esc> key.

<F12> toggles on and off "HV" reading the hardware and MASP system. With readbacks suspended, more of the program's time is spent looking at the keyboard so that an arbitrary user group may be selected more quickly. Without this feature the response time to a user key stroke can be very long (6-15 seconds) depending on the Flavor being run, the number of supplies, what features of the program are in use, and if the MASP system is active or not. Additional features and keys are discussed in Section 4.

2. High voltage status

2.0 "HV" status color coding

The display of the power supply channel status is done by using a color coded scheme with certain precedence given to different types of trip conditions. For example, the Interlock trip takes precedence over the Current Trip condition. To see the complete status of a power supply channel one could go to Page2 single channel display by pressing <Page Down> until Page2 is reached and then pressing <Shift>-<F9>. This page will show all the bits. The color codes shown below are arranged from the lowest precedence to the highest:

 

Color (lowest precedence first.)

Meaning

black (if not any of others)

not there or not in the present Detector group

green

Off

bright red

On

light blue

Module External trip

light cyan

Over Current

magenta

Over Voltage trip

bright ("light") magenta

Watch-Dog Timer trip

brown

MASP Software Trip (but not Temperature).

dark gray

MASP Temperature Trip

yellow

Interlock Trip

white

Disabled

gray (checked first)

Off-line

 

The color code for the channel external trip bit is not displayed because this bit exactly tracks the "off" bit. There is no way to distinguish between a supply that has been turned "off" and one that has a channel external trip as the two bits exactly track. If the channel external trip bit was included then the supply would never show green="off". (Since they exactly track and only one may be displayed, only one will ever be displayed due to precedence.) This bit is also displayed on the <F9> and <Shift>-<F9> Page2 screens.

Although the module external trip bits also exactly track each other the program displays them as light blue to provide an immediate visual check of the hardware Trip Groups. If the supplies display green when "off" then they are not connected to any module external trip group (although they could be connected to a channel external trip group). If they display light blue then they are connected. Due to the color prioritization the supply that tripped the group on say Over Current will still stand out in light cyan. If several supplies go "off" together and show green then they are probably interlocked through the channel external bits.

In either case, all supplies in any Trip Group must receive the "ON" command before any will go "on". Timing is not critical to the High Voltage hardware but can be (has been in the past) a factor when the MASP system is running. To avoid race conditions in the MASP system a work around was developed that turned a Reset command into a combined "Reset" and "On" command.

The High Voltage modules Watch-Dog Timer (WDT) trip bit and Interlock trip bit can be disabled and enabled via software. If the WDT bit for the module is disabled then on Page0 a solid vertical bar of bright magenta will be drawn to the left of the modules. The Interlock trip bit being disabled is represented by a yellow bar to the right of the module.

2.1 Hardware status bits

2.1.0 General

All hardware status is represented by the bits in the Command/Status register of each power supply channel. Some of the bits are read only and some are both read and write. The Command/Status register data bits for OC, OV, WDT, and INT trips of the power supply channel are the bit numbers 13, 12, 6, and 5. Writing a "1" when they are "0" clears the trip status. However if any of the trip conditions are still present the corresponding trip status will be set as soon as the power supply channel is turned back on. Any computer process can also force any of the above trip conditions by writing "0" to the bit when it is "1". The OC and OV trip bits exist for each power supply channel. The WDT and INT trips operate at the module level.

The following drawing shows the bit designation:

2.1.1 Bit explanations

On/ Off

Bit 14 is the "on" and "off" command switch for a power supply channel. When <F8> is pressed alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present group, channel, Detector, or whole Rack then bit number 14 will be set to "1" ="on" for those channel(s). When <F5> is pressed twice either alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present group, channel, Detector, or whole Rack then bit number 14 will be set to "0" ="off" for those channel(s).

Note that an "on" command will cause the supply to really go "on" only if there are NO trip conditions. The state of the next bit, the PS Enable bit tells if the supply really went "on". The On/Off bit latches to whatever was last written to it. The PS Enable bit tracks the present state of the supply.

The supply should be reset and all interlocks made up first so that all trip conditions should be in their proper state for normal operation before the On/Off bit is set to "on". Please see below for further explanation.

(Note: the above discussion is for the hardware and for "HV" in the Stand Alone mode. The MASP system is different because it responds to a reset command, <F6>, by first resetting the hardware and then immediately setting Bit 14 "on"! )

PS Enable

If all of the interlocks are made up and there is no trip and the On/Off bit above is set to "on" then the supply should really be "on" and capable of producing output voltage. In other words when bit 15 is set to "one" then the red LED should light on the front panel and there may be voltage at the Pod output connector if the High Voltage DAC is not set to zero. If any trips exist then the red LED should not be lit and the readback bit 15 should be "zero" regardless of the state of the command bit 14.

Note that if a trip condition exists with bit 14 "on" and the trip is cleared, then bit 15 will immediately be "1" and the supply will really be "on" and capable of making voltage. This can occur at the time that a reset is given for latching interlocks or as soon as the external condition that caused a non-latching trip clears. Latching trips include OV, OC, Interlock, and WDT. A reset is generated when <F6> is pressed alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present Group, Channel, Detector, or whole Rack.

If the MASP system is active then the above becomes a moot point because it issues an "ON" command to bit 14 every time it is told to "Reset" the hardware! This immediate "on" is due to MASP software having internal race conditions associated with hardware group trips, and is not to be confused with how the hardware works. When "HV" is run without the Master then an "on" command via <F8> must have been explicitly given for the supply to make voltage.

Over Voltage (OV)

This is a trip condition when the output Voltage exceeds a Voltage Limit set by a trim-potentiometer located at the front panel of the power supply. This trip condition will be latched until it is reset by the user. A reset is generated when <F6> is pressed alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present Group, Channel, Detector, or whole Rack.

Over Current (OC)

This is a trip condition when the output Current exceeds the value set by the Current Trip Limit reference DAC. This trip condition will be latched until it is cleared by the user. A reset is generated when <F6> is pressed alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present Group, Channel, Detector, or whole Rack.

Channel External (CE)

When the CE signal becomes low due to conditions generated externally the PS Enable bit will go "off" ("0"). Since the CE signal is not latched and can change according to hardware conditions as soon as it clears the PS Enable bit will go to the state of the On/Off bit. Input to the CE bit can come from another power supply channel or from the Module External trip. Both may be used to tie an arbitrary number of power supplies together to form a hardware Trip Group. When any member of the Group faults then the rest of the Group will fault almost instantly.

Module External (ME)

The Module External signal goes low as a result of either an Interlock trip, a Watch-Dog-Timer trip, or a fault condition of other power supplies within the Trip Group. This is not latched so it changes to reflect the external hardware condition. When Module External signal goes low it forces the external signals of all eight on-board power supply channels to go low setting bit 15 "off". If all the channels on the module are to be include in the same hardware Trip Group, the ME bit is the preferred method.

Interlock (INT)

The Interlock signal should be at TTL high ("one") for normal operation. Otherwise a trip condition is set. This signal provides a quick way to shut down the entire system due to an unsafe condition. The signal can come either from the LEMO connector located on the front panel of each HV module or from the special P2 backplane used by the DØHV system. The Interlock trip condition will be latched until cleared by the user by pressing <F6> alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present Group, Channel, Detector, or whole Rack. Alternatively this interlock function may be interactively enabled and disabled using the following bit.

Interlock Enable

With this enabled the control logic will pull down the Module External signal when an Interlock trip condition occurs. This forces the PS Enable bit for all eight on-board power supplies to go "off". The Interlock Enable should always be enabled for normal operation. In normal operation of the DØ Detector this bit should never be disabled by software and has been removed from the menu of the Token Ring Flavor to prevent doing so. This software does not automatically enable this bit for the sake of consistency: in the Bit3 Flavor as this could corrupt the Master Processor Command Queue under some conditions.

Watch-Dog Timer (WDT)

This monitors VME bus activity to the module. If the module has not been accessed over the VME bus (if the green LED on the front panel has not been lit) for the jumper selectable length of time then this circuitry trips "off" all eight channels. This is used as a fail safe precaution against the possible hang-up of any software monitoring processes. The length of time before a WDT trip is settable by a 3-position jumper and can be a fraction of a second or up to two minutes. The WDT is latched until cleared by the user by pressing <F6> alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key for the present Group, Channel, Detector, or whole Rack. The WDT timer function can be interactively enabled and disabled using the following bit.

Watch-Dog Timer enable

With this enabled (set to "one") then the control logic can pull down the Module External signal when a WDT trip condition occurs. The Module External then forces all eight on-board power supplies to be inhibited; bit 15 will read "off". With it disabled the WDT trip is inhibited and will not cause bit 15 to go "off".

2.3 Software implemented status

2.3.0 General

The MASP system constantly scans the power supplies and monitors all signals to make sure that the system is operating correctly. When an error is detected they can detect undesirable conditions and turn "off" a supply individually or in software groups. Note that this is in addition to any hardware Trip Groups that may be set up using the CE and ME bits.

If "HV" does not support a 68K Master command with a function key or from some other way, the command may still be sent by going into the <F4> menu and then to the "Download custom command sub-menu" with the <D> key. Once there a list of commands and some channel number information can be interactively obtained with the <H> key.

The next three sections describe things that are all generated by the MASP system. The best place to view this status is on the Page2 "single channel" mode which is obtained by first selecting a Detector other than "all" on Page0 with the left and right arrows and then pressing the <Page Up> key, and then using the up and down arrows to select a group other than "MA" and then pressing the <Page Up> key to get to Page2. Once on Page2 pressing and holding the <Shift> key and then pressing the <F9> key will bring up the "single channel" display. Repeating the <Shift>-<F9> key sequence will then toggle the display back to the main Page2.

2.3.1 MASP Software States

The Master And Subordinate Processes have various software "states". Please refer to the DØHV Software User's Guide for more details. If the MASP system is not being used "HV" will try to emulate some of these states on the Page2 displays for user consistency. (Page0 shows whether the MASP system is being used.) In an abbreviated form the MASP Software States are:

Supply is:

Software State

not there, disabled, or "off"

"off"

red LED not lit and trip bit(s) set

" trip"

"on" and not Ramping

"hold" or "paused"

"on" and Ramping

"Ramp"

2.3.2 MASP Software Trips

Current Transient Control

Request the MASP system to perform Current Transient checking and trip the supply if necessary. By going to the <F4> menu and then the "Enabled/disable sub-menu" via the <T> key for "Transient" this trip may be enabled or disabled.

Transient status may be viewed on the Single Channel display of Page2 obtained by using the <Shift>-<F9> key sequence. This is the software version of an Over-Current Trip. An algorithm is used to track the Current readbacks variation to determine if the Output Voltage Current meets the fault condition criteria. If the variation is not acceptable the Subordinate then turns "off" the supply. The DØHV Software User's Guide defines a Transient as "A change in the channel Current which exceeds a predefined limit over a sample interval(s)."

Voltage Margin Control

Requests the MASP system to perform Voltage Margin checking and trip the supply if necessary. This is controlled from "HV" via the <M> key for "Margin" trip on the "Enabled/disable sub-menu" of the <F4> menu. Also the settings may be changed from the <F4> menu and then the "Change all settings sub-menu." Also the Voltage Margin value may be restored from a previously saved file.

The Voltage Margin Trip Status and its value may be viewed on the Single Channel display of Page2 obtained by using the <Shift>-<F9> key sequence. The DØHV Software User's Guide says "If the readback voltage is not within the range specified by the Voltage Margin parameter a malfunction trip will be set."

Off-line

According to the DØHV Software User's Guide this indicates whether it is (software) enabled:. "... All further operations will be disabled until the channel is reenabled." "HV" supports the proper commands to do this by going to the <F4> menu and then the "Enabled/disable sub-menu" via the <C> key for "Channel" menu pick. This software bit may only be set to "disabled" when the supply is in the "off" software state. This shows up as gray on all of the status boxes on Page0 through Page2.

System Fault

The High Voltage processors can trip the channel because it thinks there is a "system fault".

"Affinity" or "group fault"

This is a MASP trip which according to the DØHV Software User's Guide is "When a channel trips as a result of affinity membership, the group trip flag is set to indicate that it was due to this membership that it tripped." This trip may be viewed on the Single Channel display of Page2 obtained by using the <Shift>-<F9> key sequence. "HV" on the PC does not yet transparently support MASP affinity groups although going into the <F4> menu and then to the "Download custom command sub-menu" with the <D> key may be of use in some cases. Once there the commands supported can be interactively obtained with the <H> key.

Temperature

The MASP processors periodically read a temperature sensor signal located on the HVPS control board and then compare the reading to a downloadable Temperature Trip setting. If the reading is greater than the trip then the MASP system will turn "off" all supplies on the module to protect the hardware from over heating. The present default for this trip is 33 degrees Centigrade. Although "HV" does not provide a user transparent means of manipulating this trip it does show this condition by turning the color status box brown on Page0, through Page2. (If "HV" is in Stand Alone mode it will not check and trip the supply due to Over Temperature.) MASP Temperature Trips may be relatively easily enabled and disabled from the "Download custom command sub-menu" of the <F4> settings menu. If the Temperature reading of a module fails that is a member of a ME hardware group then there is still temperature protection for this module via the Trip Group when the MASP system is active.

3. High voltage DAC controls

3.1 Hardware implementation

3.1.1 Set high voltage output

This determines the output voltage of the power supply. A write to the Voltage DAC register produces a Reference Voltage used by the Pod to produce an output voltage. This DAC is an always positive 12-bits shifted left 3 bits. The hardware is such that the sign bit and the lower 3 bits of the data written to the register are ignored. This was done so that readbacks can be directly compared to settings (provided the programmer always ensures that the setting has the lower 3 bits set to 0.) There is one voltage reference DAC per HVPS channel. A Set-Target-Voltage command merely sets up a Target Setting in the P.C. memory of "HV" and in MASP system memory if it is being used. A Begin-Ramp command must be sent before software will begin incrementing the hardware DAC toward the Target value in computer memory. Before a Begin Ramp command is sent the desired Ramp Rate should be set first because the MASP software does not accept a new Ramp Rate when Ramping. (In Stand Alone mode the "HV" will.) Pressing <F7> alone or in conjunction with the <Shift>, <Ctrl> or <Alt> key toggles "on" and "off" the Ramp for a Group, Channel, Detector, or whole Rack.

Control for this register via the Target Voltage can be done interactively many ways from within "HV". One way is by going to the <F4> main menu and then the "Change all setting sub-menu" and the "V target set" will do everything for the user once the new value is entered. It also may be saved and restored with the <F4> "V target restore from file" or the "All restore from file". Page1 can also change it as a percentage from the present DAC setting by using the arrow keys and the <Insert> key twice and then pressing <F7> to begin the Ramp without leaving Page1. One channel may be changed from Page2 by pressing <F2> until the "set target voltage" prompt appears and then pressing the up or down arrows to make the change.

3.1.2 Set Current Trip limit reference

This determines the upper limit of the output Current for a supply. A VME write to the Current Trip Limit reference register sets a DAC which produces a reference analog voltage that goes to a comparitor that will trip the supply if the Current exceeds this level. This is used for comparison with the Current readback signal. The hardware implementation of the Current Trip Limit reference DAC is identical to the voltage reference DAC.

Control for this register from within "HV" can be done interactively many ways. One way is by going to the <F4> main menu and then the "Change all setting sub-menu" and the "I trip limit set". It also may be saved and restored with the <F4> "I trip limit restore from file" or the "All restore from file". Remember that pressing <F4> alone or in conjunction with the <Shift>, <Ctrl> or <Alt> key acts on a Group, Channel, Detector, or whole Rack. One channel may be changed from Page2 by pressing <F1> until the "set Current Trip" prompt appears and then pressing the up or down arrows to make a change.

3.1.3 Set voltage trip limit

This determines the upper limit of the output high voltage and is set only by adjusting the trim-potentiometer located at the front panel of the power supply module. This provides a hardware check that may be used to limit the output of the supply to prevent inadvertently damaging the Detector with a wrong DAC setting or an internal module failure.

3.2 HV Master commands

For a complete list of the Master commands please see Section 4.5.3, "Download custom command sub-menu" of <F4>. The following is an explanation of some of the commands directly supported via the "HV" interface.

3.2.1 Ramp

Set Ramp Rate

Sets the Ramp Rate of each power supply channel in volts per second. The Subordinate process will use this value to control how quickly the output will go to the Target Voltage. This command will be rejected by the MASP system if the channel is already being Ramped.

This may be saved and restored from the <F4> main menu via the "Ramp rates restore from file" or the "All restore from file" picks. Also it may be interactively changed from the "Change all setting sub-menu" with the "Ramp rates set" pick. Remember that pressing <F4> alone or in conjunction with the <Shift>, <Ctrl> or <Alt> key acts on a Group, Channel, Detector, or whole Rack.

Note that if the MASP is not active and "HV" is in the Stand Alone mode a much less sophisticated Ramping algorithm will be used. In this mode "HV" changes the present DAC setting by the "Ramp Rate" and then waits at least one second and then increments the setting again. There is additional logic to check the delay and increase it if it is shorter than one second. (Any chance of this happening is probably only possible on the Bit3 Flavor or in a Rack that is not very full and using a very fast Computer for the Token Ring Flavor.) This algorithm means that the step increment is the "Ramp Rate" when the "HV" is in Stand Alone mode. The MASP system uses a much smaller step size and a much more sophisticated and accurate Ramping algorithm.

Begin Ramp

The state of power supply channels should be cleared of all trip conditions and should have been turned "on" before Ramping can begin. ("On" corresponds to the Subordinate "hold" software state.) The Begin Ramp command starts Ramping the HV output to the Target Voltage for that channel. In order for this command to take affect the Target Voltage must be different then each channel's present Voltage Output. If this is the case and the supply is in the "pause" and/or "hold" (the Master and Subordinate have two different software states for the same thing!) then going to the <F4> menu and either restoring the Target Voltage from a file or setting it from the "Change all settings sub-menu" or using the up or down arrow key on Page2 will automatically set a new Target Voltage and send a Begin Ramp command to the Master for that supply or group of supplies. Once this has been done then if any of them are still Ramping pressing <F7> will send a Hold Ramp command to the Master. Once all are stopped Ramping pressing <F7> will send a Start Ramp command. Remember that pressing these function keys alone or in conjunction with the <Shift>, <Ctrl> or <Alt> key acts on a Group, Channel, Detector, or whole Rack.

Hold Ramp

When <F7> is pressed alone or in conjunction with the <Shift>, <Ctrl>, or <Alt> key "HV" first checks for any supply in the present Group, Channel, Detector, or whole Rack to be in the "Ramp" software state. If any are, then a Hold Ramp command will be sent to the Master for all the selected channel(s).

3.2.2 Difference table

All commands concerning the MASP difference table are not directly supported by on the P.C. based program, "HV", at this time.

Define voltage difference table

This command defines a MASP system voltage difference matrix which sets a maximum allowable voltage difference between any two power supply channels. This is not implemented on the P.C. based program, "HV", at this time.

Clear voltage difference table

Since the MASP system difference table can be done in a piece-meal manner this command is issued before a new difference table is sent. This command is not implemented on the P.C. based program, "HV", at this time.

Enable/disable difference table

Request the Master process to verify that the requests from users for changing Target Voltage settings is consistent with the defined difference table. This is not implemented on the P.C. based program ,"HV", at this time.

3.2.3 Set

On/Off

Sends command(s) to the Master to set bit 14 of the command status register to the "on" or "off" command state. See Section 2.1.1. Pressing <F5> twice sends an "off" command to the Master. Pressing the <F6> (reset) key will cause the MASP system to reset and turn "on" the modules. In Stand Alone mode the user may need to press the <F7> key to explicitly turn "on" the supplies. All of these keys work in conjunction with the <Shift>, <Ctrl> or <Alt> keys to act on a Group, Channel, Detector, or whole Rack.

OV trip

Sends command(s) to the Master to force an OV trip status. This could be used to check out the OV hardware trip mechanism when the Detector is disconnected from the modules. This command may easily be sent by going to the <F4> main menu and then the "Change all settings sub-menu" and then pressing the "1" key. Remember that pressing the <F4> key alone or in conjunction with the <Shift>, <Ctrl> or <Alt> keys to act on a Group, Channel, Detector, or whole Rack.

OC trip

Sends command(s) to the Master to force an OC trip status. This could be used to check out the OC trip mechanism when the Detector is disconnected from the modules. This command may easily be sent by going to the <F4> main menu and then the "Change all settings sub-menu" and then pressing the "2" key. Remember that pressing the <F4> key alone or in conjunction with the <Shift>, <Ctrl> or <Alt> keys to act on a Group, Channel, Detector, or whole Rack.

Target Voltage

Sends new Target Voltage setting(s) to the Master for the specified power supply channels. No immediate action is taken other than updating internal channel data structures in RAM.

Target Voltage and Begin Ramp

Informs the Subordinate process via the Master of the new Target Voltage settings and to begin Ramping.

Current Trip Limit reference

Sends new Current Trip Limit setting(s) to the Master for specified number of power supply channel(s). The command causes the Subordinate process to update the data structure as well as setting the hardware Current Trip Limit DAC.

Voltage Margin

Updates the Voltage Margin kept in the data structure. There is no hardware register for this software only value. If the MASP system is not being used then "HV" will use this value in conjunction with the <F4> "Nominal sub-menu" as tolerance limits. However "HV" has no facility in the Stand Alone mode to trip the supplies if the Voltage Margin is exceeded.

Slow history period

Sets the frequency of the MASP slow history update. Anything to do with the Slow History is not supported by the P.C. based program, "HV".

3.2.4 Reset

Trip

Sends command(s) to the Master that clear the trip status of the command/status register. Pressing the <F6> key on the P.C. alone or in conjunction with the <Shift>, <Ctrl> or <Alt> key causes the present Group, Channel, Detector, or whole Rack to be reset. Remember that in the Stand Alone mode an "on" command, <F8>, must be used before the supplies can go "on" but that if the MASP processors are being used then after they reset the supplies they will automatically set bit 14 to a "1"="on"!

3.2.5 Other Unsupported Commands

HV module scan

Request the Subordinate process to scan the HV modules. In theory this command can be sent down at any time and is supposed to cause the MASP processors to re-scan the HV hardware system. This command has been removed from the menu because at one point under some conditions it would cause the MASP processors to turn "off" supplies that were "on"!. It still may be manually issued from the "Download custom command sub-menu" on the <F4> menu if desired.

Define group

This command defines a number of power supply channels as an affinity group. An affinity group is just like a Trip Group except that the tripping mechanism is by software, i.e. by the Subordinate process. This command is not implemented in the PC display package. For details of this command please see DØ High Voltage Software User's Guide by B. MacKinnon.

4. Detailed "HV" help notes

4.0 Page0

The operation of this page has been pretty well covered in Section 1.2 "Operation in a Nutshell" Basically this page represents the status of a power supply with a color. The presently selected Detector is displayed in yellow. The right and left arrows allow selecting which Detector to look at on this and subsequent pages. The up and down arrows pick which A/D values will be displayed on succeeding pages. The present choice of A/D values is also displayed in yellow. Page0 also shows the status of whether or not the MASP system will be used. Note that "HV" should not be set to the Stand Alone mode if the MASP system is really running or it may result in tripping supplies; see Section 1.1.4 "MASP Verses Stand Alone Operation".

Page0 gives additional status including the program interface being used: Token Ring or Bit3; the program version number; what VME node is being accessed over the Token Ring (if that Flavor of the program is being run.); and a brief reminder of some of the main function keys which are displayed in yellow to show that relatively immediate action takes place when one of them is pressed.

4.1 Page1

All of the Section 1.2 "Operation in a Nutshell" function keys apply. This page provides an easy way to select a group (of meters) using the up and down arrow keys. The "MA" group at the top is a false group that acts as a holding group used internally by the program. It holds information about the up to 18 groups for that Detector and provides a means of scaling the whole Detector. Once a group other than "MA" has been selected then <F4> through <F8> function keys are defined for the presently selected group. Please refer to Section 1.2, "Operation in a Nutshell".

4.1.1 Scaling Target Voltage

Another feature of Page1 is that it provides a means to change the Target Voltage by a percentage of the present DAC setting. There is a scaling factor for every group shown to the right of the status display in per cent. The scaling factors may be changed by first selecting the group with the up and down arrow keys and then using the left and right arrow keys to temporarily change their value. The temporarily changed value is activated by pressing the <Insert> key twice to send the new (scaled) Target Voltage to the Master.

Note that the Target Voltage actually sent to the Master includes the scale factor of the top most group "MA" as a Detector scaling factor. When the <Insert> key is pressed twice a new Target Voltage is sent to the Master which is the present DAC setting multiplied by both the Detector percentage and the result multiplied by each groups scaling factor. The supplies will not Ramp to the new Target Voltage until the user presses <F7> for the Group, <Alt>-<F7> for the whole Rack or <Ctrl>-<F7> for the Detector.

Remember that different configurations may be saved and restored from the <F4> menu which may be entered directly from this page. When a save is done it should always save the state of the whole Rack. What is restored is determined by the key combination used to bring up the <F4> menu. When <F4> is pressed alone the menu will act on the Group; <Shift>-<F4> acts on the Channel; <Ctrl>-<F4> acts on the Detector and <Alt>-<F4> acts on the whole Rack. The title at the top of the <F4> page will remind the user what the menu is acting on. Below is an example of Page1:

4.2 Page2

4.2.0 General modes.

All of the Section 1.2 "Operation in a Nutshell" function keys apply. Page2 is also known as the meter (display) page. The default mode of this page (shown below) provides a way to view up to 15 channels at a time. It has two main modes of operation; a graphic mode and a text mode which the user may toggle between by pressing the <F9> key alone. The present channel is selected with the right and left arrows. In the graphic mode the end of the group is signified by a solid red bar to the left of the first meter and to the right of the last meter. Below is an example of the main mode of Page2:

 

When in graphic mode the user may toggle between the multiple channel display above and the single channel mode shown below via the <Shift>-<F9> key combination. The single channel mode displays the hardware and software status bits and the A/D's of the present channel. Single channel mode is indicated by the Group Name followed by "single channel" in the bottom right of the screen. In the normal mode this string displays the Group Name followed by "subpage x of n" where "x" is the present sub-page and "n" is the number of sub-pages in the present group. Below is the display in single channel mode:

 

Another Page2 option is obtained by pressing the <Ctrl>-<F9> key combination. This toggles the display between the originally selected Page1 group to a temporary interactively selected group of channels. Membership in this temporary user group is determined by first selecting a channel with the left and right arrow keys and then using the <Insert> (in group) and the <Delete> (from group) keys. This works across Detectors as well as from within (large) groups. It provides an interactive working group as opposed to the static way groups are determined using the "specs.dat" file . In graphics mode in the user group mode it will say "/Selected channels" in the bottom right hand corner instead of the Group Name selected on Page1 followed by "subpage x of n". In text mode the same strings occur at the top right of the page instead of the lower right. Fifteen channels is the maximum allowed number of channels in the temporary user group. A specification file defined user group allows 48 maximum channels.

While not in the "selected channel" mode, membership in the "selected channel" group is indicated in the graphic meter mode by an "_" under the channel name and in the text mode by a blue "*" in the text mode to the left of the Channel Name.

To summarize the Page2 modes please recall the <F9> chart from "Operation in a Nutshell":

 

Key(s)

Result

F9

toggle between text mode and channel meter display.

Shift-F9

toggle between single & multiple channel display within Page2.

Ctrl -F9

toggle between Page1 group and user selected group channels.

Alt-F9

toggle between tripped channels and original group channels.

1.2.3..5

move to first, second, third, etc. set of fifteen channels in group

<Tab>

move to next set of fifteen channels in group.

F1

Toggles attachment of vertical arrows to current limit trip setting, upper and then lower meter current range.

F2

Toggles attachment of vertical arrows to voltage set, upper and then lower meter voltage range.

Ctrl <-

Decreases the up and down arrow (knob) increment or step size.

Ctrl ->

Increases the up and down arrow (knob) increment or step size.

<Backspace>

move to previous set of fifteen channels in group.

 

When <Alt>-<F9> is pressed on this page and there is no tripped channel in the group then a message will flash to the screen saying so.

4.2.1 Graph mode (meter display).

Also known as the meter (display) page this provides a way to view up to 15 channels at a time. The right and left arrows change which channel is acted on by other Function keys. If the "HV" is enabled on Page0 with the Page0 vertical menu set to "Current / Voltage_ref" and Page2 in the graphic mode (<F9>) then the up and down arrows form a knob that may be used to change either the Target Voltage or the Current Trip Limit setting for the presently selected supply. The default for the knob is the Target Voltage but this may be changed by pressing the F1 and F2 function keys. Pressing the <F1> key attaches the knob sequentially through the hardware Current Trip Limit, the Upper Meter Display, and then the Lower Meter Display. Pressing the <F2> key attaches the knob to the Target Voltage, the Upper Meter Display, and then the Lower Meter Display.

With the Page0 vertical menu set to "Current / Voltage_ref" then on the meter display the DAC settings are indicated by the small left and right triangles just outside of the meter pointing toward the histogram bar. The left one is the read back of the present Current Trip Limit DAC setting and the right one is the readback of the present High Voltage DAC setting. The histogram bars on the inside of the meter are the A/D readbacks. The triangle that the knob is presently attached to changes to a different color then the other settings; (yellow but it is or'ed with the color of the numbers on the outside so it may change to a sort of green). The numbers at the top and bottom of the meters are the scale values and the vertical numbers along the outside of the meters are the fractional part of the scale.

Pressing the right or left arrow key while the <Ctrl> key is pressed changes the magnitude of the value that an up or down arrow will change whatever it is attached too. The present knob increment is displayed in the lower left corner of the display.

If there are more than 15 channels in the presently selected group it will be indicated at the bottom right hand part of the page with the string "subpage x of n". Also one may go to any set of 15 meters in the present group by pressing a "1","2", "3" etc. Another quick way to navigate through the channels is to suspend readbacks with the <F12> key, move to the channel of interest with the right and left arrow keys and then enable readbacks with the <F12> key again.

The "%" key applies to the "Top/Min Autoscale" selection. These keys allow the user a quick way to set up the meters. When the <M> key for "Min" is pressed the program will multiply the lowest reading in the group by the value entered in the "%" field and subtract the result from the lowest reading and finally set all the meters in the group to the outcome. When the <T> key for "Top" is pressed the program will multiply the highest reading in the group by the value entered in the "%" field and add the result to the highest reading and then set all the meters in the group to the sum. Pressing the <A> for "Autoscale" key is like pressing both <M> and <T>.

4.2.2 Text mode.

One may toggle Page2 between a text mode display by pressing the <F9> key and back to the graphic mode by pressing <F9> again. When Page2 is in the text mode, the arrow key definitions change slightly. The up and down arrows no longer form a knob. All arrow keys cause the presently selected channel to change. Pressing <F1> prompts the user to type in a new Current Trip Limit for that channel. Pressing <F2> likewise prompts the user for a new Target Voltage. No new values will be sent if the <Esc> key is pressed. A legend at the bottom explains the bit fields.

4.3 Page3

Also known as the strip chart (display) page. It only plots channels that have been interactively selected by the user via <Insert> in user "selected group" and <Delete> from user "selected group" using Page0 to select the Detector, Page1 to select the group, and Page2 to select the channel. All of the function keys in Section 1.2 "Operation in a Nutshell" apply. This page's plot limits are taken from the Page2 meter limits. The meter limits may be most easily changed from Page2 with the "%" and "Autoscale" options or the "knob" mechanism. Another method is to use the <F4> menu "Change..." sub-menu.

4.3.1 Channel color coding

On the left side of the display is a list of the names for each channel. Each channel is assigned a unique color which shows up on the name list as well as the split screen scrolling data areas.

4.3.2 Data displays

The screen is divided vertically in half with the first A/D selected on the Vertical Menu of Page0 being plotted in the left window and the second A/D selected on the Vertical Menu of Page0 plotted in the right window. The upper and lower display limits of each channel are indicated above and below the windows. The data plot and limits are color coordinated with the channel name list.

4.3.3 Changing the plot update rate

The requested sample time and actual update time are shown at the lower left corner of the display. The requested update rate of the strip chart can be increased to the limit of the interface by pressing the up arrow key and decreased by pressing the down arrow key. This also sets the update rate for the histogramming data collection on Page4.

4.4 Page4

This is the histogram (display) page. It only plots channels that have been interactively selected by the user via <Insert> in user "selected group" and the <Delete> from user group using Page0 through Page2. The limits for this pages' plots are taken from the meter limits on Page2. In addition to all of the normal Function keys from Section 1.2 "Operation in a Nutshell" one needs to remember the <F3> key to start and stop the histogram. The up and down arrow keys select which channel's histogram is being displayed. The combinations are:

Key

Function

<F3>

Start/Stop the histogram update.

<Ctrl>-<F3>

Clear the histograms.

<Shift>-<F3>

Select logarithmic scale for histogram display. (ON/OFF)

4.4.1 Histogram parameters

Histogram parameter buffers are initialized at the start of the histogram. Only the power supply channels of the special user group are displayed. Changing the meter limits or changing the membership of the special group are prohibited until histogramming is stopped. The vertical scale of the histogram is automatically scaled as data is accumulated.

4.4.2 Histogram statistics

Various statistics of the histogram are shown above and below the histogram data window and dynamically updated as data is collected. Statistics include the on-plot count, underflow count, overflow count, histogram bin size, mean and standard deviation of the histogram data.

There are also indicators for both the Current Trip Limit reference setting and the Target Voltage setting. They are tiny red triangles pointing at the horizontal axis of the histogram displays.

4.4.3 Changing the plot update rate

The requested sample time and actual update time are shown at the lower left corner of the display. The requested update rate of the strip chart can be increased to the limit of the interface by pressing the up arrow key and decreased by pressing the down arrow key. This also sets the update rate for the histogramming data collection on Page3.

4.5 <F4> Menu

This calls up a menu system to save, restore, set, enable and disable various parameters for both the power supply hardware and software control options. The key combinations act on the presently selected "GROUP", "CHANNEL", "DETECTOR", or whole "RACK" as displayed at the top of the menu in yellow to emphasize the present mode. For menu items the capitalized letter in yellow is "hot" in the sense that the program will immediately do whatever that menu pick says. A slight exception to this is when restoring and changing values in most cases the <Enter> key must first be pressed to execute it or <ESC> to abort the operation. Pressing <Esc> again will back the user up one menu. Menus are no more than two deep so that at most three consecutive <Esc> keys should put the user back in the page they entered the menu from (Page0 through Page4)

4.5.1 Main Menu

The following is a copy of the present menu:

 

main menu mode=RACK press ESC to exit.

Help.

Change all settings sub-menu.

Download custom command sub-menu.

Enable/disable sub-menu

Nominal sub-menu

Goto program set up sub-menu

 

File : specs.dat

Browse above file

Save all to above file.

% of target v to restore to. current= 100%

V target restore from file

I trip limit restore from file

Ramp rates restore from file

v Margin restore from file

1 restore v meter display from file

2 restore i meter display from file

All restore from file

 

3 hv module scan

4 printer mode. current= Epson mode

Open door to dos.

 

"Help"

Displays a text file with a brief explanation of the menu picks one screen at a time. Pressing <Esc> exits this mode.

"Change all settings sub-menu"

A sub-menu showing various parameters which the user can set by typing in a new value. Basically this menu pick allows the user to change all of the items in the group, Detector or Rack to the same value. This menu also supports manually changing the meter limits. The menu picks on this page are listed separately in Section 4.5.2.

"Download custom command sub-menu"

A sub-menu which allows the user to send down to the Master any command in the Master's repertoire. The group, Detector, Rack mode is not applicable to this page. This page is meant to be used in conjunction with the on line help. Although this page was implemented primarily as a debugging and development tool it may be useful to others as well. The menu picks on this page are listed separately in Section. 4.5.3

"Enable/disable sub-menu"

A sub-menu allowing the user to enable and disable various bits in the command/status register and/or the MASP system for a group, Detector or Rack. The menu picks on this page are listed separately in Section 4.5.4.

"Nominal sub-menu".

The group, Detector, Rack mode is not applicable to this page. "HV" monitoring is for the whole Rack or nothing. The menu picks on this page are listed separately in Section 4.5.5.

"Goto program set up sub-menu"

The group, Detector, Rack mode is not applicable to this page. This page allows the user to change various internal program variables including handling some error conditions. The menu picks on this page are listed separately in Section 4.5.6.

"File ..."

Allows the user to change the file name and/or file specification that "HV" will use to save to and/or will download from the file to hardware via the menu picks below. This pick only allows the user to change the name. When the <F> key is pressed the present filename will be displayed. If the <Enter>, <Esc>, or Function key is hit next then the name will be unchanged. If the <Backspace> key is hit then the last character will be deleted; then if another character key is pressed it will be appended to the prior string. The first time the filename is displayed if any key other than the <Backspace> or <Enter> is hit then the whole string will be deleted and whatever key was first hit will be the first letter of the new string. The arrow keys and other IBM editing keys are not implemented as editing keys, they delete the old string and display whichever key was pressed. See the DOS manual "dir" command for further valid filespec information.

"Browse above file"

Allows the user to view the above file one screen at a time. Press the <Esc> key to abort this process. The view is always forward through the file but the user may press <Esc> and then <B> to start over.

"Save all to above file"

The whole Rack is always saved although to be safe it might be best to make saves only in the "RACK" mode. For restoring, the Group, Detector, and Rack mode is applicable. There is no built in program protection to prevent the user from restoring values from a different Rack. In this case the program will use the Group, and Detector as read in by the specification file only at program load time. It is recommended that the user first browse the file they have selected to restore from to make sure it is a file for the present Rack.

"% of target v to restore to current..."

Allows the user to set in a percentage multiplier that the file Target Voltage will be multiplied by before it is set. This does nothing in itself to the hardware but only takes action when the "V target restore from file" is selected below.

"V target restore from file."

Reads in the Target Voltage of the file above and multiplies it by the percentage above. It sends a "HVM_HOLD_RAMP" command to the Master for selected channels (Group, Detector, or Rack) followed by the new scaled Target Voltage and then finally a "HVM_BEGIN_RAMP" command.

"I trip limit restore from file"

Reads in the Current Trip Limit setting in the file above and sends it to the Master.

"Ramp rates restore from file"

Reads in the Ramp Rate from the file and sends it to the Master. If nothing has been downloaded since the High Voltage Master has been rebooted then this should be restored else the MASP will Ramp the supplies excruciatingly slowly. One may view the present values on Page2 with the <Shift>-<F9> key combination. Also note that if the MASP system is Ramping it will ignore the command. If "HV" is in Stand Alone mode then this is what it will use to increment each supply each time it changes the voltage. In Stand Alone mode the internal default of "HV" is 33 volts per second.

"v Margin restore from file"

Reads in the Voltage Margin (Section 2.3.2) from the file and sends it to the Master. One may view the present values on Page2 with the <Shift>-<F9> key combination. In Stand Alone mode the "HV" internal default is ~100 volts. Regardless what this is set to the 68K Subordinate must be enabled before the Subordinate will trip the supply if the Voltage Margin is exceeded. "HV" will use this value to generate out of tolerance alarms if monitoring is enabled on the "Nominal sub-menu".

"1 restore v-meter display from file"

Reads in the upper and lower limits of the Voltage meters from the file and uses those for the new plot limits.

"2 restore i-meter display from file"

Reads in the upper and lower limits of the Current meters from the file and uses those for the new plot limits.

"All restore from file"

Reads in the values in the file and restores them. This is the same as restoring all of the above menu picks individually. The last thing that happens is the same thing that happens when a <V> key is pressed for "V target restore from file."

"3 hv module scan"

This causes the program to determine the hardware configuration of the Rack and set itself up accordingly. It does many of the things that happen at program load time. It goes out and reads the hardware to see which modules are really in the VME crate by reading the module's I.D. and Pod Type. Internal flags are set up to indicate if the module is present or not depending on a successful VME read of module addresses. Internal scale factors are set up as well as the Page2 meter plot limits reset.

This will do some things that the user really does not want done including changing the Page2 meter limits back to what is in the present specification file. Hence it should only be pressed if the hardware configuration has been changed since the program was loaded. (However, it might be better just to exit "HV" and begin the program over again.)

"4 printer mode..."

Controls how the internal graphic print dump routines (activated via the <P> key) will handle the printer attached to "LPT1" of the P.C. "HV" supports two modes: "Epson mode" ("portrait" style) or "IBM mode" ("landscape" style). Both modes are meant to work only with 9 pin dot matrix printers. With this set to "Epson" mode then this program is set to work with an Epson FX (9 pin ) dot matrix printer with the Epson DIP switch set to Epson mode. (Please refer to the printer manual for the one in use.) With this set to "IBM" mode then "HV" is set to work with the IBM Professional and Graphics printers and compatibles (including Epson set to IBM compatible mode).

In general an Epson printer will support the IBM mode but not vice versa. If an IBM printer is used then one must set this to the IBM mode. If the hardcopy comes out with gaps in the plot the easiest thing to do is to try flipping this software switch to the other way and see if it works!

"Open door to dos."

The intent of this was to allow the user to interact with DOS while "HV" was still loaded into memory. Unfortunately "HV" has grown so large that it is very near the DOS 640K byte limit and there probably will not be enough memory to allow the user to "browse" a file or do a directory or to do any thing else in DOS.

4.5.2 Change all settings sub-menu

This calls up a menu which allows the user to easily set hardware and software settings by first selecting an item and then typing in a value. Most of these are the same things that can be saved and restored on the <F4> main menu. This sub-menu brings in the same scope that the main menu was entered with; i.e., the presently selected "Group", the cursor "Channel", "Detector", or "Rack" depending on whether <F4> was pressed alone, or in combination with the <Shift>, <Ctrl>, or <Alt> keys. The following is what this menu looks like:

 

setting sub-menu mode=GROUP press ESC to exit.

Help.

 

V target set

I trip limit set

Ramp rates set

v Margin set

Upper v meter set

Lower v meter set

Top i meter set

Bottom i meter set

 

1 cause an over-voltage trip!

2 cause an over-current trip!

 

"Help"

Displays a text file with a brief explanation of the menu picks one screen at a time. Pressing <Esc> exits this mode.

"V target set"

Prompts the user for a value in Volts. If the <Esc> key is pressed then nothing happens and the sub-menu is presented to the user. If a valid number followed by the <Enter> key is typed in then a "HVM_HOLD_RAMP" command is sent to the Master for the selected channel(s) (Group, Detector, or Rack) followed by the new Target Voltage and then a "HVM_BEGIN_RAMP" command.

"I trip limit set"

Prompts the user for a Current value in micro-amps. If the <Esc> key is pressed then nothing happens and the sub-menu is presented to the user. If a valid number followed by the <Enter> key is typed in then that is downloaded to the hardware Current Trip Limit register for the selected channel(s) (Group, Detector, or Rack).

"Ramp rates set"

Prompts the user for a Ramp rate in volts per second. If the <Esc> key is pressed then nothing happens and the sub-menu is displayed again. If a valid real number followed by the <Enter> key is typed in then that is sent to the Master for selected channel(s) (Group, Detector, or Rack).

If nothing has been downloaded since the High Voltage Master has been rebooted, then this should be set else the MASP will Ramp the supplies excruciatingly slowly. One may view the present values on Page2 with the <Shift>-<F9> key combination. Also note that if the MASP system is Ramping it will ignore the command. If "HV" is in Stand Alone mode then this is what it will use to increment each supply each time "HV" changes the voltage. In Stand Alone mode the internal default of "HV" is 33 volts per second. ("HV" may substitute as the Master if in the Stand Alone mode as shown on Page0.)

"v Margin set"

Prompts the user for a Voltage Margin in volts. If the <Esc> key is pressed then nothing happens and the sub-menu is presented to the user. If a valid real number followed by the <Enter> key is typed in then that is sent to the Master for selected channel(s) (Group, Detector, or Rack). ("HV" may substitute as the Master if in the Stand Alone mode as shown on Page0.) Regardless what this is set to, the MASP system Margin Trip must be enabled (on the next menu) before the Subordinate will trip the supply if the Voltage Margin is exceeded. This value is also used by "HV" to generate out of tolerance alarms if monitoring is enabled on the "Nominal sub-menu".

"Upper v meter set"

Allows the user to change the upper meter plot Voltage Display in a similar manner to setting other things on this page. This is internal to the P.C. No commands are ever sent to hardware or the 68K Master.

"Lower v meter set"

Allows the user to change the lower meter plot Voltage Display in a similar manner to setting other things on this page. This is internal to the P.C. No commands are ever sent to hardware or the 68K Master.

"Top i meter set"

Allows the user to change the upper meter plot Current Display in a similar manner to setting other things on this page. This is internal to the P.C. No commands are ever sent to hardware or the 68K Master.

"Bottom i meter set"

Allows the user to change the lower meter plot Current Display in a similar manner to setting other things on this page. This is internal to the P.C. No commands are ever sent to hardware or the 68K Master.

"1 cause an over voltage trip!"

Causes the over voltage trip bit to go high which trips the selected channel(s) (Group, Detector, or Rack).

"2 cause an over current trip!"

Causes the over Current Trip Limit bit to go high which trips the selected channel(s) (Group, Detector, or Rack).

4.5.3 Download custom command sub-menu

This page provides a means to send a command directly to the Master via the MCQ. It is meant for program development and debugging. Although not for general use it might also be used for some features not directly supported by "HV". Results cannot be guaranteed and secondary effects are almost sure to occur in a system as complex as this one is. It is recommended that this page only be used for digital control and not to send DAC setting values; please see "Value to send ..." below. The screen for this page is as follows:

 

download command menu: send a command to the hv 68k master

no mode this page. press ESC to exit.

 

Help.

 

 

Numeric value of mnemonic below. current= 0

Input command (mnemonic). current= HVM_NO_COMMAND

Channel (hv master channel..not yours) current= 0

Value to send with (analog) command(s). current= $0000

Do this command! (sends the above one time.)

will be recorded to the file below if "Save.."="ON" !

 

File name (of commands) current= COMMAND.68K

Save (records on "D") commands to file. current= .. OFF

Browse playback file.

Playback above file to hv master

 

Open a door to dos

 

 

"Help"

Displays a text file with a brief explanation of the menu picks one screen at a time. Pressing <Esc> exits this mode.

"Numeric value of mnemonic below..."

This allows the user to select a command to send to the Master by typing in a number from 0 to 48. The command string in the menu pick below this one will be updated when a valid number is accepted. From 68K Master code the valid command set is as follows:

 

string # comment

----------------------------------------------------------------------------

'HVM_NO_COMMAND', { 0 PLACEHOLDER. }

'HVM_SET_ON', { 1 TURN CHANNEL ON. }

'HVM_SET_OFF', { 2 TURN OFF. }

'HVM_BEGIN_RAMP', { 3 BEGIN CHANNEL RAMP. }

'HVM_HOLD_RAMP', { 4 PAUSE RAMP. }

'HVM_RESUME_RAMP', { 5 RESUME CHANNEL RAMP. }

'HVM_RESET_TRIP', { 6 RESET ALL TRIPS. }

'HVM_DISABLE_CHANNEL', { 7 DISABLE CHAN USE. }

'HVM_ENABLE_CHANNEL', { 8 ENABLE CHAN USE. }

'HVM_SET_OC_TRIP', { 9 SET OVERCURRENT TRIP. }

'HVM_SET_OV_TRIP', { 10 SET OVERVOLTAGE TRIP. }

'HVM_SET_TARGET_VOLTAGE', { 11 SET TARGET RAMP VOLT. }

'HVM_SET_TARGET_VOLTAGE_AND_RAMP', { 12 SET TARGET AND BEGIN RAMP. }

'HVM_SET_HOLD_CURRENT_LIMIT', { 13 SET HOLD CURRENT LIMIT. }

'HVM_SET_RAMP_RATE', { 14 RATE OF RAMP. }

'HVM_SET_V_MARGIN', { 15 SET VOLT CHECK MARGIN. }

'HVM_ENABLE_TRANSIENT_CHECK', { 16 ENABLE TRANSIENT VOLTAGE CHECK.}

'HVM_DISABLE_TRANSIENT_CHECK', { 17 DISABLE IT. }

'HVM_ENABLE_V_MARGIN_CHECK', { 18 ENABLE VOLTAGE MARGIN CHECK. }

'HVM_DISABLE_V_MARGIN_CHECK', { 19 DISABLE IT. }

'HVM_ENABLE_INTERLOCK', { 20 ENABLE INTERLOCK TRIPS. }

'HVM_DISABLE_INTERLOCK', { 21 DISABLE INTERLOCK TRIP. }

'HVM_ENABLE_WATCHDOG', { 22 ENABLE WATCHDOG TRIPS. }

'HVM_DISABLE_WATCHDOG', { 23 DISABLE WATCHDOG TRIPS. }

'HVM_SET_T_MAX', { 24 SET MAX TEMPERATURE. }

'HVM_ENABLE_T_CHECK', { 25 ENABLE TEMPERATURE MARGIN CHECK. }

'HVM_DISABLE_T_CHECK', { 26 DISABLE IT. }

'HVM_SET_I_FACTOR', { 27 SET THE CURRENT FILTERED FACTOR.}

'HVM_SET_TRANSIENT_MARGIN', { 28 SET THE TRANSIENT MARGIN. }

'HVM_SET_RAMP_CURRENT_LIMIT'', { 29 SET RAMP CURRENT LIMIT. }

'HVM_DETERMINE_STATE', { 30 DETERMINE THE HW STATE. }

'HVM_DEFINE_GROUPS', { 31 DEFINE CHANNEL GROUPS. }

'HVM_DEFINE_DIFF_TABLE', { 32 DEFINE/APPEND VOLT DIF TABLE. }

'HVM_CLEAR_DIFF_TABLE', { 33 CLEAR THE TABLE. }

'HVM_ENABLE_DIFF_TABLE', { 34 ENABLE THE TABLE. }

'HVM_DISABLE_DIFF_TABLE', { 35 DISABLE THE TABLE. }

'HVM_SCAN_MODULES', { 36 CHECK WHICH HV MODULES PRESENT.}

'HVM_ENABLE_STATUS_DISPLAY', { 37 ENABLE THE MASTER STATUS DISPLAY. }

'HVM_DISABLE_STATUS_DISPLAY', { 38 DISABLE IT. }

'HVM_SET_SLOW_HISTORY_PERIOD', { 39 SET THE SLOW HISTORY PERIOD. }

'HVM_RESERVED1', { 40 # OF TICKS BETWEEN UPDATE CYCLES. }

'HVM_SET_PSOS_TIME', { 41 SET THE PSOS SYSTEM TIME. }

'HVM_SET_MASTER_DELAY', { 42 SET THE MASTER POLLING DELAY. }

'HVM_SET_SUB_DELAY', { 43 SET THE SUBORDINATE POLLING DELAY. }

'HVM_ENABLE_FH', { 44 ENABLE THE FAST HISTORY. }

'HVM_DISABLE_FH', { 45 DISABLE FAST HISTORY. }

'HVM_ENABLE_SUB', { 46 ENABLE A SUBORDINATE. }

'HVM_DISABLE_SUB', { 47 DISABLE A SUBORDINATE. }

'HVM_END' { 48 END COMMAND. }

 

"Input command (mnemonic)..."

This allows the user to select a command to send to the Master by typing in one of the strings in the left hand column from the list above. The number in the menu pick above will be updated when a new and valid string is accepted.

"Channel (hv master channel..not yours)..."

These are some useful channel definitions defined by MASP code:

 

hv_channel_lo = 0; { Index limits for channels }

hv_channel_hi = 899;

hv_all_channels = 900; { All channels index }

hv_group_lo = 901; { Index limits for groups }

hv_group_hi = 1000;

hv_no_group = 1001;

hv_no_channel=1023; { No channel indicator. }

 

While MASP channels range from 0 to 899, the only valid ones are 0-191. The following is how they are assigned:

 

crate 1

 

slot 1 2 3 4 5 6

-------------------------------------

| 7 | 15 | 23 | 31 | 39 | 47 |

| 6 | 14 | 22 | 30 | 38 | 46 |

| 5 | 13 | 21 | 29 | 37 | 45 |

| 4 | 12 | 20 | 28 | 36 | 44 |

| 3 | 11 | 19 | 27 | 35 | 43 |

| 2 | 10 | 18 | 26 | 34 | 42 |

| 1 | 9 | 17 | 25 | 33 | 41 |

| 0 | 8 | 16 | 24 | 32 | 40 |

-------------------------------------

 

 

crate 2

 

slot 1 2 3 4 5 6

-------------------------------------

| 55 | 63 | 71 | 79 | 87 | 95 |

| 54 | 62 | 70 | 78 | 86 | 94 |

| 53 | 61 | 69 | 77 | 85 | 93 |

| 52 | 60 | 68 | 76 | 84 | 92 |

| 51 | 59 | 67 | 75 | 83 | 91 |

| 50 | 58 | 66 | 74 | 82 | 90 |

| 49 | 57 | 65 | 73 | 81 | 89 |

| 48 | 56 | 64 | 72 | 80 | 88 |

-------------------------------------

 

 

crate 3

 

slot 1 2 3 4 5 6

-------------------------------------

| 103 | 111 | 119 | 127 | 135 | 143 |

| 102 | 110 | 118 | 126 | 134 | 142 |

| 101 | 109 | 117 | 125 | 133 | 141 |

| 100 | 108 | 116 | 124 | 132 | 140 |

| 99 | 107 | 115 | 123 | 131 | 139 |

| 98 | 106 | 114 | 122 | 130 | 138 |

| 97 | 105 | 113 | 121 | 129 | 137 |

| 96 | 104 | 112 | 120 | 128 | 136 |

-------------------------------------

 

 

crate 4

 

slot 1 2 3 4 5 6

-------------------------------------

| 151 | 159 | 167 | 175 | 183 | 191 |

| 150 | 158 | 166 | 174 | 182 | 190 |

| 149 | 157 | 165 | 173 | 181 | 189 |

| 148 | 156 | 164 | 172 | 180 | 188 |

| 147 | 155 | 163 | 171 | 179 | 187 |

| 146 | 154 | 162 | 170 | 178 | 186 |

| 145 | 153 | 161 | 169 | 177 | 185 |

| 144 | 152 | 160 | 168 | 176 | 184 |

-------------------------------------

 

"Value to send with (analog) command(s)..."

If the command selected above has a value associated with it then the value entered here will be sent to the channel(s). Note that High Voltage DAC values are in the range 0..$7ff8; they are always positive. Since this page does no scaling please remember that DAC settings are bit shifted 3 bits to the left so that readings of settings will compare directly. (12 bit setting and 16 bit readback.) This page was really intended as a special debugging aid and not as an exercise in user scaling and bit shifting. It is much easier and safer to use the other features provided by "HV" to do this. It is recommended that commands with values associated with them not be used. It is displayed here because a value is always sent even if the command does not use the value. It is provided here as an exercise in completeness.

"Do this command! (sends the above one time.)"

When a <D> key is pressed the above command, channel number, and optional value is sent to the Master.

"File name (of commands)..."

This allows the user to type in a DOS file specification that will be used by the "Save...", "Browse...", and "Playback..." menu picks.

"Save (records on "D") commands to file...."

If this is set to "on" then when the user presses the <D> key the command will be saved in the above file.

"Browse playback file."

Allows the user to display the file one screen at a time until the end of the file. Pressing the <Esc> key will return the user to the menu.

"Playback above file to hv master"

Opens the file above and sends the commands in the file to the Master and then closes the file.

"Open door to dos."

The intent of this was to allow the user to interact with DOS while "HV" was still loaded into memory. Unfortunately "HV" has grown so large that it is very near the DOS 640K byte limit and there probably will not be enough memory to allow the user to "browse" a file or do a directory or to do any thing else in DOS.

4.5.4 Enable/disable sub-menu

This calls up a menu which allows the user to easily set MASP software switches and the WDT Enable bit of the hardware. Pressing the <E> key toggles the state of this menu to "ENABLE" bits or "DISABLE" them when one of the other menu picks from this page are selected. This sub-menu brings in the same scope that the main menu was entered with; i.e., presently selected "Group", the cursor "Channel", "Detector", or "Rack" depending on whether <F4> was pressed alone, or in combination with the <Shift>, <Ctrl>, or <Alt> keys. The following is what this menu looks like:

 

enable/disable sub-menu mode=GROUP press ESC to exit.

Help.

 

 

Enable/disable menu mode (toggle). current= ENABLED

Channel

Margin check.

Transient check

 

Interlock

Watchdog

 

"Help"

Displays a text file with a brief explanation of the menu picks one screen at a time. Pressing <Esc> exits this mode.

"Enable/disable menu mode(toggle)..."

Toggles the state of this menu to "ENABLE" or "DISABLE" bits and/ or MASP software switches when one of the other menu picks from this page are selected. This is an internal switch for the "HV" software on the P.C. Nothing is sent to the Master or the hardware.

"Channel"

The user may abort this operation by pressing the <Esc> key. If <Enter> is pressed then a command is sent to the Master to disable or enable the channel depending on the above software switch. Basically if the channel is disabled the MASP system ignores it and pretends that the channel is not there and all subsequent commands for that channel will be ignored unless it is to enable it. See Section 2.3.3 under"Off-line". Remember that the MASP will only disable the channel if it is in the "OFF" software state. This menu pick acts on the channel(s), Group, Detector, or Rack depending on what <F4> key combination was used to call up the main menu.

At MASP boot time the default state is "enabled". A "disabled" channel should show up as "white" on the color status display on Page1 through Page2 and as "Disabled" in red for the "Master" status on the single channel display of Page2. The single channel display is obtained by pressing the <Shift> key in conjunction with the <F9> key while on Page2.

"Margin check"

The user may abort this operation by pressing the <Esc> key. If <Enter> is pressed then a command is sent to the 68K Master to disable or enable (depending on this menu's software switch) the Subordinate tripping the channel(s) if the readback(s) exceed the Voltage Margin(s) . If the margin is exceeded and this MASP software switch is enabled then the MASP software will trip off the supply! This menu pick acts on the channel(s), Group, Detector, or Rack depending on what <F4> key combination was used to call up the main menu. See Section 2.3.3 under"Voltage Margin trip". This switch does nothing in Stand Alone mode.

This Software Trip status is displayed on the "Transient" fields of the single channel display of Page2. The single channel display is obtained by pressing the <Shift> key in conjunction with the <F9> key while on Page2.

"Transient check"

The user may abort this operation by pressing the <Esc> key. If <Enter> is pressed then a command is sent to the 68K Master to disable or enable Transient Checking depending on this menu's software switch. With it enabled the MASP software checks on the Current readback to make sure that no excessive or erratic Current output exists. If it does then the MASP software will trip the supply. This menu pick acts on the channel(s), Group, Detector, or Rack depending on what <F4> key combination was used to call up the main menu. See Section 2.3.3 under "transient". This switch does nothing in Stand Alone mode.

This Software Trip status is displayed on the "Margin Check" and "68k Margin trip" fields of the single channel display of Page2. The single channel display is obtained by pressing the <Shift> key in conjunction with the <F9> key while on Page2.

"Interlock"

For the Token Ring Flavor this is only an option if the "Enable/disable" switch is set to enable because the (safety) interlock should never (normally) be disabled. Since there are no Bit3 based P.C.'s in the first floor Moving Counting House the menu pick is enabled for the Bit3 flavor for testing the modules. This interlock acts on all eight channels of the module.

The user may abort this operation by pressing the <Esc> key. If <Enter> is pressed then a command is sent to either the real MASP or the P.C. "Master" emulation software that ultimately disables or enables the Interlock Enable bit depending on this menu's software switch above. This will act on the channel(s), Group, Detector, or Rack depending on what <F4> key combination was used to call up the main menu. See Section 2.1.1 under "Interlock Enable" bit.

"Watchdog"

The user may abort this operation by pressing the <Esc> key. If <Enter> is pressed then a command is sent to either the real MASP or the P.C. "Master" emulation software that ultimately disables or enables the WDT Enable bit depending on this menu's software switch above. With this bit enabled (set to "one") then the hardware control logic can pull down the Module External signal when a WDT trip condition occurs causing all eight on-board power supplies to be inhibited; i.e., bit 15 will read "off". With the WDT Enabled bit disabled, a WDT trip is inhibited and should not cause bit 15 to go "off". This will act on the channel(s), Group, Detector, or Rack depending on what <F4> key combination was used to call up the main menu. See Section 2.1.1 under "WDT Enable" bit.

4.5.5 "Nominal sub-menu."

The group, Detector, Rack mode is not applicable to this page. "HV" monitoring is for the whole Rack or not at all. This page allows the user to control whether or not the "HV" will alarm to the screen and optionally beep when a channel's voltage A/D has exceeded its Voltage Margin setting (see Section 2.3.2 of this document). All of the channels in the Rack should have a reasonable value for their Voltage Margin set before "V monitoring ..." is turned on or the program will be too busy writing errors to the screen to pay very much attention to the keyboard. The "V" monitoring ..." on this page is completely independent of the Subordinate Voltage Margin Trip Software state. All that happens is that the "HV" prints a message to the screen saying that the channel is out of tolerance. If the "Alarm sound" is set "ON" then it will also beep. The Voltage Margin Trip Software state bit is settable from the "Enable/Disable sub-menu" above and only trips the supplies if the MASP processors are active.

All of the comparison is done internal to "HV" in all modes and not in the MASP system. Whenever this is set to "ON" it also means the "HV" will be somewhat slower responding to the keyboard. Note that "HV" monitoring is suspended while in any of the menus.

4.5.6 ("HV") program sub-menu

This calls up a menu which allows the user to change a few things about the operation of the program. These program parameters are internal so that the "Group", "Channel", "Detector", or "Rack" scope is not applicable. Basically the settings on this page are global throughout the whole program. The "3 two bit addressing..." is only applicable to the Bit3 Flavor. The following is what this sub-menu looks like:

 

program sub-menu press ESC to exit.

Help.

 

Use hard status (ON=pc,OFF=68k) current= ON ...

3-two bit addressing mode (OFF=24) current= ON ...

Times same command sent to master. current= 3

 

Global diagnostics (toggle) current= .. OFF

 

"Help"

Displays a text file with a brief explanation of the menu picks one screen at a time. Pressing <Esc> exits this mode.

"Use hard status ..."

If this is set to "OFF" and the MASP is being used then the "HV" will read the status from MASP's memory. When this is set to "ON" and MASP is being used then the "on", "off", and "trip" states were read from the hardware directly. This was an attempt to always provide the user of this program with the true status of hardware due to bugs in the early versions of the MASP software. Although most of these have been remedied, this switch may still be useful for some debugging purposes.

"3 two bit addressing mode (OFF=24) ..."

If running the Bit3 Flavor of "HV" then this changes the mode that the program operates. It is meaningless for the Token Ring Flavor. A Bit3 card for the P.C. comes in two different models: a Model 403 which only has 24 bit addressing and thus cannot work over the Vertical Interconnect. (The first Vertical Interconnect starts at 16 Megabytes which is above 24 bits.) The Bit3 model 406 has 32 bit addressing and must be used with a High Voltage Rack used in the Detector and not for a single VME crate used for testing and development. A Bit3 Model 403 could be used directly in the same VME crate as the high voltage. The default for this switch is the 32 bit Model 406. The switch should be set to match the Bit3 model being used.

Note that in practice the program will probably not work unless this is set to the 32 bit mode and a model 406 Bit3 board is used over the VI as originally intending. Presently this is probably of little use except maybe as a debugging aide to the programmer.

"Times same command sent to master..."

This provides a means of automatically sending the same command again to the 68K Master if the command was detected to fail.

Observation: In early testing on some Racks the Master would simply not get and/or honor some simple commands. Specifically turning "OFF" all of the supplies in a Rack would fail in a random manner. Sending the same command down twice seemed to fix the problem to about the 99% level of probability that they would all go off. Sending the same command 3 times seemed to reach the 99.9% level of success. However, sending down the same Target value multiple times would cause the MASP system to immediately set the High Voltage Hardware DAC to the new Target and not Ramp it there gradually!. This was almost 100% guaranteed when Ramping down and was intermittent when Ramping up.

Design of the MASP system: commands are sent to the Master by any process to the Master Processor Command Circular Buffer Queue. The Master reads the command and sends it to the Subordinate Processor which responds by storing the result of the command for that channel in its memory. To see if the Master read the command is easily done by checking the head and tail pointers to see if they are equal. Equal pointers mean that the Command Queue is empty. To see what the Subordinate did with the command one must check the Subordinate processor memory. If the Master or Subordinate processors are busy it is possible that the Master may have accepted the command (the head and tail pointers of the Circular Buffer are equal) but that the Subordinate may not have yet processed and/or replied to the command.

The algorithm to try to ensure the integrity of the commands is as follows:

1. send down the list of commands.

2. Check to see that the master processed the commands (head=tail pointer).

3. Check each channels Subordinate status and go through the list again

sending the command only for the channel(s) where the command failed.

4. Repeat number 3 above until all commands in the list are processed

successfully or the retry limit is exceeded.

The default for retrying is three. It is expected that this be used with prudence and that it not be set arbitrarily high. One effect of setting it to a large number is that the program can get tied up in the repeat loop and response to the user will be slow.

If suddenly things work only with this higher such as 5, 6, or 10, it may be an indication of interface problems: possibly a partially loose Bit3 cable or the Token Ring Network is dropping Frames for some reason. It is advisable to look for and fix the problem. Momentarily setting this higher may help determine if it is an interface problem or another class of problems such as program bug(s), memory mapping problems, and/or version incompatibilities.

"Global diagnostics (toggle)..."

The default is with this set to "OFF". With it set to "ON" various additional informational messages about the internal workings of some of the routines in "HV" will be displayed on the screen. This information is normally of interest only to the programmer debugging the program. It is really a programmers switch and is normally not of interest to the user. In many cases the messages will mess up the normal display pages and interfere with the normal operation of the program. This program switch should be left "OFF".

4.6 <F11> Plot all voltage & Current

This provides an easy way to look at the Voltage readback and Current Readback for the whole Rack. The screen is divided in half with a Current histogram displayed on the top half and the Voltage on the bottom half. It is also possible to display the real time Current reading next to an average Current reading. Similarly it is possible to display the present Voltage reading next to the Voltage DAC setting. One can easily see the whole Rack being Ramped up and down! Further the reference readings may be independently saved and restored from "basei.dat" and "basev.dat".

In addition it has some special features developed for the VTX Detector. The voltage display may be switched to the calculated voltage displayed on the chamber wire given the resistor values in "resistor.dat". It also may be used as a way to visually monitor the Currents and or Voltages by manually adjusting the plot limit so that if the histogram bar goes above the plot limit, the bar changes color.

4.6.1 What the histogram colors mean.

Color used

Meaning

purple

The present reading (Voltage or Current depending on plot).

light cyan

The reading of the Voltage DAC setting or the average Current depending on whether it is the Current or Voltage plot.

white

The present reading and the averaged references are equal. If cyan is showing then the present reading is less than the reference. If purple is showing then the present reading is greater than the reference.

red

A present reading has gone over the plot's top boundary.

green

An average reference reading is over the plot's top boundary.

yellow

Both the average reading and reference reading have gone over the plot's top boundary.

4.6.2 <F11> initialization.

When this page is first called up it reads the Voltage and Current of all of the channels, finds the max and min and then draws histograms with the limits based on the "%" entry. Using the default of 10%; the plot maximum would be 1.1 times the max and the min is .9 times the max. The Voltage and Current are updated in purple and at this point are not in any way averaged or filtered. Purple is the raw data readings.

4.6.3 <F11> global active menu keys.

"%"

Pressing the <%> key will prompt the user to enter a new value to autoscale by. This is the same internal variable used on the Page2 screens.

"autoscaLe"

Pressing the <L> key will cause the program to do the same thing that happens when <F11> is first pressed, initialize itself as in Section 4.6.2.

"Inhibit"

This menu pick is only displayed if the <D> or <O> key(s) were previously pressed. If it is displayed and the <I> key is pressed than the average or reference readings will stop being plotted. The present readings will still be displayed.

4.6.4 Keys that affect the top Current Plot.

"Top"

When the <T> key is pressed the user is prompted for a number for the maximum Current range of the plot. This works in conjunction with the <B> for "Bottom" selection to expand the Current plot to look at a particular plot range in detail.

"Bottom"

When the <B> key is pressed the user is prompted for a number for the minimum Current range of the plot. This works in conjunction with the <T> for "Top" selection to expand the Current plot to look at a particular plot range in detail.

"Do"

If the "D" key is pressed then each channel of the Current is read 10 times and then averaged and plotted until the <I> key (for"Inhibit") is pressed. This average Current is plotted in light cyan (a kind of light turquoise). If the present reading is greater than the average then this higher present reading is shown in purple. If the present reading is less than the average then cyan is visible representing the opposite situation. If they are equal then white is all that may be seen due to overlapping line pixels.

"Save"

When the <S> key is pressed "HV" stores all of the previously averaged Current values in the file "basei.dat".

"Restore"

When the <R> key is pressed "HV" reads the average file, "basei.dat", and loads the previously saved average Current values into the P.C. memory for plotting only.

4.6.5 Keys that affect the bottom Voltage Plot.

"Upper"

When the <U> key is pressed the user is prompted for a number for the maximum Voltage range of the plot. This works in conjunction with the <W> for "loWer" selection to expand the Voltage plot to look at a particular plot range in detail.

"loWer"

When the <W> key is pressed the user is prompted for a number for the minimum Voltage range of the plot. This works in conjunction with the <U> for "Upper" selection to expand the Voltage plot to look at a particular plot range in detail.

"dO"

If the <O> key is pressed then the high voltage DAC setting is read and displayed in light cyan. This may be used as a reference voltage that may be saved and restored with the <A> and <E> keys. Pressing the <I> key (for "Inhibit") disables displaying the setting. The setting is plotted in light cyan (a kind of light turquoise). If the Voltage readback is greater than the DAC then the higher than average present reading shows up in purple. If the present reading is less than the DAC setting then cyan is visible representing the opposite situation. If they are equal then white is all that may be seen due to overlapping line pixels.

"Vtx"

If the <V> key is pressed so that "Vtx wire v calc=on" then the present Current reading is multiplied by a resistance in the file "resistor.dat" for that channel and algebraically subtracted from the Voltage A/D of that channel to show the calculated voltage on the wire instead of the normal Voltage readback from the Pod. This is then drawn on the Voltage plot in purple as the present voltage reading. Pressing the <V> key again turns off this calculated wire reading and displays the normal Voltage A/D. This does not affect the top Current histogram.

"sAve"

When the <A> key is pressed "HV" stores all of the previously read Voltage DAC settings in the file "basev.dat".

"rEstore"

When the <E> key is pressed "HV" reads the average file, "basev.dat", and loads the previously saved Voltage DAC settings into the P.C. memory for plotting only. Nothing is sent to the hardware or MASP system.

4.7 Obsolete features: V1.0 of "HV"

HV module ADC reset

This feature is no longer supported because it might interfere with the MASP system and even result in the MASP tripping the Hardware. ("HVD" on the P.C. does.) The ADC of each HV module is designed to perform a calibration at power-up. However, there may be a need for re-calibration after an extended period of time. It should be noted that while performing the ADC Reset, the HV module control board stops all clock signals for all the power supply channels and will cause the outputs of the power supplies to drop sharply. It was recommended that this command be issued after operation over an extended period of time, say several days, and when the supplies were "off".

Two stage Ramp

Was only supported by "HV" on the P.C. This code has been removed because it was tied into <F7> which did not work in a consistent manner. <F7> and its <Shift>, <Alt>, and <Ctrl> variations now toggles the Ramp "on" and "off" in a reliable and consistent manner. All references to "critical voltage" on the menus have been removed. Dual slopped Ramps are only supported through the save/restore file system on the <F4> main menu.

Allocate/Deallocate

This is an item on the wish list. Its purpose was not clear at the time Version 1.0 existed. It has been removed from the menu in Version 2.0.

<Ctrl>-<S>/<Ctrl>-<Q>

Used to stop and resume the screen display update only on Page0 through Page4. It did not really stop reading the status of the hardware or other program activity. It has been removed to make the program smaller. This function has been replaced via the much better built in functionality of the <Pause> key which completely suspends the P.C. and "HV" until another key is pressed to resume operation. (The space bar is always a good key to press to resume operation as it has no control functions.)

A new key has been implemented <F12>, that suspends readbacks of the hardware. This allows the program to respond more quickly to user key strokes to configure the program to look at certain channels. Pressing <F12> again enables readbacks.

5. Startup

The program accepts an optional command line argument that is the configuration file that "HV" will use to group the supplies. Also for the Token Ring Flavor this file tells "HV" which DØ control node, $740, $741,..$745 to use. Someone wanting to look at the VTX Detector attached to node $743 might invoke the program with "hv vtx.dat <Enter>". Someone else might go to the test station with "hv specs.dat <Enter>". The node that the program will try to attach to will be the second number in the first line of the file.

If using the Bit3 Flavor the program will only go to the node that the Bit3 cable goes to. The program will ignore the node number in the file.

If no argument is given, i.e., the user types in "hv <Enter>", then the program will prompt the user for a specification file.

5.1 initialization

After the program is invoked it first looks for the file "DØHVPS.DAT" which contains the scaling information for the 16 different kinds of Pods. If it does not find this file in the default directory it says that it did not find it and quits.

5.1.1 HV configuration file

If the program found "DØHVPS.DAT" and the user did not type in the optional configuration file name on the command line then the user is prompted to enter the name of file which contains the configuration for that Rack. The default file name is "SPECS.DAT" which the program will use if the <Enter> key is pressed. If the <Q> key and then the <Enter> key is pressed the program will exit. If the <Backspace> key is hit then the last character will be deleted; then if another character key is pressed it will be appended to the prior string. The first time the filename is displayed if any key other than the <Backspace> or <Enter> is hit then the whole string will be deleted and whatever key was first hit will be the first letter of the new string. The arrow keys and other IBM editing keys are not implemented as editing keys, they delete the old string and display whichever key was pressed. See the DOS manual "dir" command for further valid filespec information.

5.1.2 HV Master/Subordinate processes

HV Master/Subordinate processes

The program will try to determine if the MASP system is running by peeking the memory location in the Control crate where the Master and Subordinate counters are. Active counters indicate that they are running and "HV" is set to use the Master. If the counters are static then the program will operate in the Stand Alone mode. In the Stand Alone mode "HV" will emulate many of the MASP system functions. In all modes messages saying "command sent to Master" will be the same. The true mode of "HV" will be displayed on Page0.

Power supply channel specification

If MASP is being used the program reads the MASP memory to determine which modules are there. In the Stand Alone the program reads the hardware directly and reports modules it found for each crate in a window with a blue back ground. In both modes "HV" checks the module serial number and the power supply type ID to make sure that the hardware is the same as what was in the configuration file. Differences are reported to the screen in a window with a purple back ground..

Enabling external interlock trips

In the Token Ring Flavor "HV" automatically enables the Interlock Trip Enable Bit for all of the modules it found. It does this through the Master if it was found or itself if in Stand Alone mode. Note that the Bit3 Flavor does not enable this bit because nothing is implemented to guarantee the integrity of the Master Processor Command Queue with this Flavor.

5.2 Specification file, "SPECS.DAT", format

5.2.0 First line

The first line of the specification file includes the number of Detectors in the file, the VME node number that the Token Ring Flavor will use to address that Rack, and a 20-character name for the user to identify and or describe the HV Rack. The following is the first line of a "specs.dat" file:

3 $073A Test Station

This line tells "HV" that there are three Detectors in the file, that it should use VME node $073A (for the Token Ring Flavor only) and that the string "Test Station" will be displayed in the upper right of Page0.

5.2.1 Subsequent lines

The following is an example of a sample specification file beginning with the second line:

CC null 000 0 0 2000 0 0 1 0 0 1 1 0 15 $0000 $00 {0}

001 0 0 2000 0 0 1 0 0 1 1 1 15 $0000 $00 {1}

002 0 0 2000 0 0 1 0 0 1 1 2 15 $0000 $00 {2}

003 0 0 2000 0 0 1 0 0 1 1 3 15 $0000 $00 {3}

004 0 0 2000 0 0 1 0 0 1 1 4 15 $0000 $00 {4}

005 0 0 2000 0 0 1 0 0 1 1 5 15 $0000 $00 {5}

006 0 0 2000 0 0 1 0 0 1 1 6 15 $0000 $00 {6}

007 0 0 2000 0 0 1 0 0 1 1 7 15 $0000 $00 {7}

test 010 1000 0 2000 500 0 1 33 100 1 2 0 6 $008B $06 {8}

011 1000 0 2000 500 0 1 33 100 1 2 1 6 $008B $06 {9}

012 999 0 2000 500 0 1 33 100 1 2 2 6 $008B $06 { 10}

013 999 0 2000 500 0 1 33 100 1 2 3 6 $008B $06 { 11}

014 999 0 2000 500 0 1 33 100 1 2 4 6 $008B $06 { 12}

tst2 015 999 0 2000 500 0 1 33 100 1 2 5 6 $008B $06 { 13}

016 999 0 2000 500 0 1 33 100 1 2 6 6 $008B $06 { 14}

017 999 0 2000 500 0 1 33 100 1 2 7 6 $008B $06 { 15}

020 999 0 2000 500 0 1 33 100 1 3 0 6 $0098 $06 { 16}

021 999 0 2000 500 0 1 33 100 1 3 1 6 $0098 $06 { 17}

CC2 t3 022 999 0 2000 500 0 1 33 100 1 3 2 6 $0098 $06 { 18}

023 999 0 2000 500 0 1 33 100 1 3 3 6 $0098 $06 { 19}

024 999 0 2000 500 0 1 33 100 1 3 4 6 $0098 $06 { 20}

025 999 0 2000 500 0 1 33 100 1 3 5 6 $0098 $06 { 21}

026 999 0 2000 500 0 1 33 100 1 3 6 6 $0098 $06 { 22}

Detector

The first column is the Detector name. This is an arbitrary 4-character string followed by a blank space. This name will appear on the horizontal Detector menu of Page0 of "HV". It will associate the groups and channels under it with the name given here. The Detector name should appear only once with the very first power supply channel within each Detector. All others must have blank spaces for their Detector name field. All power supply channels within a Detector must be listed consecutively in the data file.

Group

The second column is the group name. It is an arbitrary 4-character string followed by a blank space. The group name appears on Page1 of "HV". Group names must appear only once on the first power supply channel of each group. The rest of the channels must have blank spaces for the group name field. All channels within the same group must be listed consecutively.

Channel

The third column is a 3-character string representing the user name for that channel. It must be followed by a blank space. The channel name will be displayed on Page2, Page3 and Page4 for the user to identify the power supply channel.

5.2.2 Settings

All values of the settings listed below should be in integer form. All voltages are in Volts and all Currents in µA. The Ramp Rate is in Volts/second. When a contradiction exits between the lower and upper meter limits the program automatically sets the lower meter limit to 0 and the upper meter limit to the maximum for that Pod type. If the Target Voltage exceeds the maximum value for the particular power supply type the program will set the Target Voltage to the maximum for that Pod type.

Target Voltage

Column four is the Target Voltage setting in volts. If the user edits the file with a number that exceeds the maximum for the actual Pod type, the value restored on <F4> will be the maximum for that Pod type.

Voltage display lower limit

Column five is the Page2 lower voltage display limit. It should always be less than the upper voltage display limit. If this value is greater than the upper display limit then zero will be used by "HV".

Voltage display upper limit

Column six is the Page2 upper voltage display limit. It should always be greater than the lower voltage display limit. If this value is less than column five then the Pod type's maximum is used.

Current Trip Limit reference

Column seven is the Current Trip Limit setting that the user types in or was read from hardware when the file was made via the "Save.." feature of <F4>. If the user edited the file with a value greater than the Pod type and it is restored to hardware from <F4> then the maximum for that Pod type will be restored. Page2 displays the hardware value for that channel.

Current display lower limit

Column eight is the Page2 lower Current display limit. It should always be less than the upper Current display limit. If this value is greater than the upper display limit then 0 will be used by "HV".

Current display upper limit

Column nine is the Page2 upper Current display limit. It should always be greater than the lower Current display limit. This value is internally clamped to the maximum value of the Pod type.

Ramp Rate

Column ten is the Ramp Rate in volts that was edited by the user or was in use when the file was saved via <F4>.

Voltage Margin

Column eleven is the Voltage Margin in volts per second that was edited by the user or was in use when the file was saved via <F4>.

5.2.3 Channel mapping.

Note that the crate, module and port numbers are in a fixed order and should not be changed. The pattern shown continues to repeat until the crate is complete and then begins with the next crate in the same order. This provides a fixed mapping from crate, slot, port number to the exclusive MASP High Voltage channel number from 0..191 as explained in Section 4.5.3.

Crate number

Column twelve is the Crate number and is only for the user's reference. Crates start counting at one and go to a maximum of four.

Module number

Column thirteen is the module number and is only for the user's reference. Modules start counting at one and go to a maximum of six in each crate.

Port number

Column fourteen is the channel number for that module or port number. These numbers start at zero and go to seven. Note that zero corresponds to the bottom red LED and connector while the top port is physically number seven!

5.2.4 Channel identification

Power supply type ID

Column fifteen is a Pod type number. Each power supply Pod type has a unique 4-bit type number read by "HV" at initialization. The scaling of the program is determined by this Pod type. When a save file is made it also saves the Pod type so that the user may make sure that the kind of power supply actually in place is what is expected.

Module serial number

Column sixteen is an exclusive module number or serial number. It is a 16-bit computer readable number read from the file and compared to the value read from the hardware at program start up. If it is different the user is informed.

5.2.5 Channel flags

Column seventeen is a human readable hexadecimal byte read into a Pascal variant record or set. In Pascal a member is in the set (true) if the binary weight is the same as the set member. For example, if column seventeen had a value of 6 then that would mean that bits 2 + 4 were set. Looking at the table below shows that the WDT Enable bit was set and that the Enable transient bit, 4, was on. For the most part the user should not worry about this field for now except to be aware of it. Use the program to interactively set the Rack up and then it will be saved by the program when "Save.." is selected on the <F4> main menu.

item meaning if true

binary weight

member in special user group (across groups)

1

WDT Enable bit enabled

2

Interlock Enable bit enabled

3

MASP checking transients

4

MASP checking Voltage Margins

5

6. Hardware Configuration Tips

6.1 Hardware setup

6.1.1 Module control board jumpers.

The HV module control board hardware is described here. It is assumed that one is looking at the component side of the control board with the two VME connectors to the right. There are five low voltage power inputs to the control board. The +5 volts is for digital circuitry and the clean ±12 volt inputs are for the analog circuitry. These supplies come onto the board through the top VME P1 connector. A separate ±12 volt bulk (historically referred to as "dirty") voltage provides power to the Pod. This bulk voltage is supplied through the special DØHV J2 backplane through the lower VME P2 connector. All inputs are fused with a five Amp Pico-fuse.

Module crate address, J101

Each module occupies 256 bytes of VME "short I/O space". VME short I/O space is accessed by changing all 0's to the left of the actual address to $F. If the base address of a board is $8000 then this is accessed using the address $xxFF8000 where xx is the address over the VI. For the first module in the first crate the base address is $10FF8000, the first module in the second crate is $11FF8000 etc.

This eight position jumper block determines the high byte of a 16 bit base address for the module. It determines where in VME short I/O space the 256-byte memory allocation will reside. It is oriented vertically between the P1 and P2 connectors. The lowest jumper position corresponds to address bit 8 (marked 0 on the board) and the highest jumper position to address bit 15 (marked 7 on the board). Jumpering across two pins will make the address bit equal to "0". In a standard VME crate with all jumpers on then the module would respond to short I/O space address $0000-$00FF (module #0). With the jumper on pin 0 removed then the module would be assigned to the next available address space at $0100-$01FF. This continues on in typical binary fashion.

All of the software presently written at DØ expects the first module to begin at $8000. Thus jumper seven is left off. Additionally, jumper pins zero, one, and two are also normally left off so that when the module is plugged into a DØ High Voltage crate with it's custom J2 backplane, pins on the P2 connector are shorted so that a modules address is defined by it's position in the Crate. This saves address conflicts and changing jumpers when swapping boards. If the module is not to be used in a VME crate with a special High Voltage backplane then additional jumper(s) must be placed on pins zero, one, and/or two for the module to be accessed by any of the DØ software. Leaving pins zero, one and two off gives a base address of $x7xx. Since there are only room for six modules (counting from 0) in a DØ crate, anything of an address greater than $85xx is not looked for by the software.

Watch-Dog Timer delay, J102

This is a 3-position jumper used to determine the length of time allowed to pass without VME bus activity before a Watch-Dog Timer trip occurs. The three positions are labeled A, B, and C to the left of the jumper. They make up a 3-bit binary number n . A is bit 0, B is bit 1 and C is bit 2. Jumpering across the two pins makes the bit equal to "0". The formula for calculating the length of time is as follows:

Time (second) =   .

With the clock frequency at 16 Mhz the length of time is from slightly greater than 1 second to about two minutes.

VME bus DTACK, J103

This is a 8-position jumper oriented horizontally. It determines the timing of asserting the DTACK signal line by the HV module control board after either latching the incoming data or placing valid data on the bus. Only one position should be jumpered. With the jumper at the left most position the delay will be seven clock cycles.

VME reset, J105

This is a one-position jumper that determines if the control board gets reset whenever a bus reset is issued by the VME bus master. With jumper 105 on, all channels on the board that are "ON" when the VME crate is booted will trip. Removing jumper 105 disables this trip on VME boot feature.

Serial number, J106 + J107

This is a 16-bit binary number which can be read from the VME bus. It is to allow software processes to monitor the identity of HV modules. Both J106 and J107 are 8-position jumpers oriented horizontally. J107 is the upper byte and J106 the lower byte. The right most position corresponds to the most significant bit and the left most the least significant bit. It is recommended that each control board be assigned a unique number. This way a software process can detect if modules have been changed.

Clock select, J201

This is a 2 x 3 jumper block. The upper row of three pins (pin 2, 4, and 6) are for selecting the source of the 16 Mhz clock signal. They are from left to right: on-board 16-Mhz crystal oscillator output signal, the input clock signal to the control board, and the buffered 16-Mhz VME SYSCLK signal. The jumper selects either the clock input to be from SYSCLK or from the on-board crystal oscillator. All DØ HV control boards will be using SYSCLK and will not have the on-board crystal. Since the crystal output signal is wired directly to the clock input of the WDT circuitry, these three pins should be tied together. The lower row of three pins (pin 1, 3, and 5) are used to select the clock input to the on-board ADC at pin 3. Pin-1 has a 4-Mhz clock signal and Pin-5 a 2-Mhz clock signal. Under normal operation the jumper should be between pin 1 and 3 for 4 Mhz ADC operation.

+12P, J401

This is a one-position jumper used when there is no separate bulk or "dirty" +12 volt input via the custom back plane through the P2 connector to power the High Voltage Pods.

-12P, J402

This is a one-position jumper used when there is no separate bulk or "dirty" -12 volt input via the custom back plane through the P2 connector to power the High Voltage Pods.

AGND, J404

This is a one-position jumper to allow the clean analog ground (AGND) to be connected to the digital ground (DGND). A separate analog ground input is available via the special DØHV J2 backplane.

PGND, J403

This is a 2 x 2 jumper block that allows power supply ground(PGND) to be tied to either DGND or AGND. A separate power supply ground input is available via the special DØHV J2 backplane.

6.1.2 Power supply type ID

Power supply types

The file "DØHVPS.DAT" defines the scaling factors used by the program. This should be edited to correspond to the hardware. The maximum Current is the maximum the A/D will see which is 5 volts divided by the value of the resistor at R9 on the Pod drawings. (This is the i=e/r form of ohms law scaled to micro-amps.) All "Undefined" and "Reserved" types are filled in with values for type 3 to prevent program bombs and divide by 0's. Currently Pod types of power supplies being used within the DØ experiment are:

type no.

type

max v.

R9 ohms

Max uamp

0

Reserved

5500

4640

1077.6

1

+5.5KV@2ma

5500

2200

2272.7

2

-5.5KV@2ma

5500

2200

2272.7

3

+5.5KV@1ma

5500

4640

1077.6

4

+2KV@3ma

2000

1540

3246.8

5

-2KV@3ma

2000

1540

3246.8

6

-5.5KV@1ma

5500

4640

1077.6

7

+5.5KV@0.1ma

5500

49900

100.2

8

-5.5KV@ 0.1ma

5500

49900

100.2

9

+10V@0.1ma

10

Not Applicable

100.0

10

Undefined

5500

4640

1077.6

11

Undefined

5500

4640

1077.6

12

Undefined

5500

4640

1077.6

13

Undefined

5500

4640

1077.6

14

Undefined

5500

4640

1077.6

15

Reserved

5500

4640

1077.6

Reserved types

Note that types 0 and 15 are reserved types that should not be used to identify a real Pod type. For the Bit3 Flavor a channel without a Pod will return an $F. For the Token Ring Flavor a channel sans Pod reads back 0. If a new Pod type uses one of these numbers then some of the software routines will become non-deterministic.

6.1.3 Vertical Interconnect

The software expects the vertical interconnect (VI) addresses to be as follows:

Subordinate crate #

high byte of 32 bit address

1

$10

2

$11

3

$12

4

$13

6.1.4 Bit3 PC-to-VME interface

AT adaptor board

If using the Bit3 Flavor of "HV" then the Bit3 AT-card should be configured such that the Bit3 64 K-byte memory window appears at the PC/AT address $D000-$DFFF. No hardware byte-or word-swapping jumpers should be used. The I/O range jumper should be set to $0200 which is normally reserved by IBM for the Game Port adapter. (If their is a game port in the same P.C. as the Bit3 then there will be a hardware I/O conflict and one of them must go or neither may work.) The present code does not use any IRQ on the Bit3 board: that feature does not work when the Bit3 is used in the Polling configuration.

VME adaptor board

If using the Bit3 Flavor of "HV" then a Bit3 model 406 VME adaptor board must be used for 32-bit addressing. The bus grant (BGO-BGI) jumper block at location M2 and the bus request (BR) jumper block at location L7 should be set as shown in the manual. The SYS jumper block position 6 should be jumpered to detect bus timeouts.