Title: High Voltage How To Supplement file: $ESALIB/doc/hv/howto-supplement by: zms date: 6/24/2003 0. Overview Initial use of the HV control revealed a few problems. These problems, implemented fixes, and the impact on how to operate the program are described in this note. 1. Problem I 1.1 Description Turning HV on in a chassis, turns all defined channels on. The expected behavior is to exclude the channels which are marked with the on flag to be off. This flag is the last field in a channel defining line in the hv.dat setup file. This problem was not present in the HV program used in E158 run II. I have introduced the problem when I implemented using the concept of groups for issuing various commands to the CAEN HV chassis. 1.2 The Fix This problem was fixed as follows. Channels marked with the on flag in the hv.dat file set to 0 are excluded from the list of channels in a group. With this fix in place, these marked channels are excluded from any HV operations. That is, they cannot be turned on or off, cannot be read, etc.. These channels have "absent" in the status field in the "ChanStat" display, meaning that they are not available. 1.3 How to A channel marked with the on flag set to 0 can be made available as follows: a. Modify the hv.dat file to change the on flag from 0 to 1, b. In the "HVControls" dialog select the chassis in the Chassis list for which channels were modified if the hv.dat file was modified for one chassis only. If channels were modified in more than one chassis, then select the module in Modules list which controls the chassis of interest. c. In the HV program click on "More..." push button, this will bring the "Command" dialog. d. In the Command dialog select the "Purge Group" command from the Command options menu. e. In the Command dialog select the proper scope from the Scope options menu. That is, if you want the command be executed in one chassis only, then the Chassis scope is appropriate. f. Finally, click Okay button. You need to wait for at least 10 seconds before going to the next step. How long should you wait? When the group is purged or deleted, reading channels from the deleted group will fail. When that happens, you should see messages in the logger, which look somewhat like this: "HVNetCliX::_done: mix=x,cix=y,chn=255,f=17(18),..." where mix is the module index and cix is the chassis index; these have numeric values like 1,2,3, etc.. If you see these messages appearing with regularity, you have waited long enough. g. Restart the HV program. h. If all went well, you should now be able to control the previously unavailable channels. 2. Problem II 2.1 Description During one of the owl shifts, one of the two HV chassis tripped. The HV program continued reading status of all channels in both chassis, but the voltage values were all 0's from one of them. The HV program did not thing there was anything wrong with that. A few hours later someone noticed that there was a problem... 2.2 The Fix Extensive modifications were needed in a number of software modules to fix this problem. Now the HV program will generate errors when the following conditions are present: a. The software status of a channel is on and the hardware status of the channel is off. This condition arises when the HV chassis or a single channel trips. b. A HV on command was executed and a channel fails to transition to the hardware status on within three consecutive checks of the channel. c. Various other failed conditions, like over-voltage, out of tolerance, trip, etc. The failed channels are now displayed in red in the ChanStat display. Two new fields are added to each line showing the channel status. These are labeled "soft" and "hard" and stand for software on status and hardware on status. When the HV on command is executed, each affected channel is first marked as "req", meaning requested. When the hardware on status becomes "on" then the software on status is upgraded to "on" as well, The software on status remains "on" until the HV off command is executed or the program is restarted. When the program is restarted, the software on status is set to match the hardware on status for each defined channel. 2.3 How to The only new thing here is how to clear the condition when the software on status is on and the hardware on status is off. In this situation, it is necessary to force the chassis or channel to off state by clicking the appropriate Off button on the HVControls dialog. After the error condition clears, the chassis or channel can be turned back on. A brief review of the toggle buttons on the HVCOntrols dialog may be useful. Read if it is off, hv program does not issue channel voltage, current, and status read commands to the ioserv program. Check when it is on, hv program periodically checks all available channels. The checking includes: 1. do the soft and hard on states agree, 2. did the channel status word indicate some abnormal hardware condition, 3. and finally, is the read voltage within tolerance. The checking is done only when the Read is on. ErrOn when it is on, hv program displays errors in the logger pane in the main window and also writes these errors to a log file. Turn this off to suppress error messages. ErrSnd when it is on, hv program sends error messages to DAQCntrl program. UseOn At this point it became rather useless and I should remove it from the dialog.