PHOT_bias_group_N

This is the generic description of the 6 PHOT_bias_group_N (N=1,2...6) scripts. The upper level script PHOT_set_bias_volt calls these procedures.

// Purpose       : Send the appropriate TC to set a determined bias voltage
//                 for a group 1 matrix. The bias voltage is expressed in
//                 volts
// Author        : Diego A. Cesarsky
// Arguments     :
// string  biasName    The bias name in accordance with the MIB convention
// float   bias        The corresponding bias voltage [volts]
//
// Description   : Extremely unsatisfactory code to find the bias name and
//                 issue the corresponding TC. If bias name is not found,
//                 the procedure sets an error condition
//
// Comments      : The code is awful since it has to use dedicated TCs for
//                 each bias of each group, namely 20 different TCs. There
//                 are similar CUS procedures for each of the other 5 groups.
//                 There are two "sanity checks":
//                 1- group number has to agree with procedure name
//                 2- bias number has to agree with bias name
//
// Version       : 0.1 07-aug-2006 Creation by DAC
// History       :
//               :

Input variables:

procedure PHOT_bias_group_1 {
    int grpNb = 1 in [1,1]; // The group number (sort of sanity check)
    int biasNb = 1; // The bias number (sort of sanity check)
    string biasName = "VH"; // The corresponding bias name as per MIB
    double bias = 1.62312; // The bias voltage to be set for biasName
}{

Important note: The variable biasName has to agree with the name defined in the MIB for that particular bias variable. Otherwise the script (see code excerpt below) will not find the appropriate telecommand. As an extra check, the calling program has also to specify the corresponding bias number (both pieces of information appear in the CALU bias voltage tables and are read by the calling program PHOT_set_bias_volt)

   }
    // Bias name Pacs_BOLC_SET_VDL
    if(biasName == "VDL" && biasNb == 6) {
        Pacs_BOLC_SET_VDL_G1(bias);
        sentTC = true;
    }
    // Bias name Pacs_BOLC_SET_VSS
    if(biasName == "VSS" && biasNb == 7) {
        Pacs_BOLC_SET_VSS_G1(bias);
        sentTC = true;
    }