--+------------------------------------------------------------------------+ --+ SOHO Project -- Control File --+ ---------------------------- --+ --+ Name : MDI_LHOP , !Proc_s , !Print --+ Purpose : (See Procedure headers) --+ --+ Sub_system : PLM --+ Drawing No : 3137-ZA042-SCB Issue : A/00 --+ Project No : SH-MAR-SW-70224 --+ Origin : UK --+ Author : Jon B. CARTER --+------------------------------------------------------------------------+ --+ Principle : --+ --------- --+ Holding CF for a group of related Procedures, originally written in --+ MDI's own Control File language. --+ --+ Passed parameters : --+ ----------------- --+ !Proc_s : Name of required Procedure. --+ !Print : CF Log print indicator ( "yes" (default) | "no" ). --+ --+ Prerequisites : --+ ------------- --+ Control File MDI_ON must have been successfully performed. --+ --+ History : --+ ------- --+ Issue SIC Note Time Date Name/Updates --+ +---+ +------+ +---+ +------+ +-------------------------------------+ --+ 1/00 211 17:18 07/01/94 A.J. TURK -- Conversion from MDI language. --+ 1/01 289 16:53 02/02/94 Ph. IATRINO -- During debug phase. --+ 1/02 360 10:56 05/05/94 Ed COBB/Ph. IATRINO -- Rationalization --+ 1/03 393 10:48 12/05/94 Ed COBB -- MDI UPdates --+ 1/07 443 16:45 17/06/94 Ed COBB -- CF Errors. --+ 1/08 444 08:24 18/06/94 Ed COBB -- CF Errors. --+ --+------------------------------------------------------------------------+ Common Var Bool !GZ_Window -- Open window flag (on CF start) Bool !GZ_Spool -- Automatic Spool (at End of CF exec) Bool !GZ_Halt -- Check Error flag (to halt if error) Bool !GZ_Test -- Execution test flag (to not send TC) Int !GZ_Trace -- Level of Trace (TBD) Int !GM_NbErr -- MDI Global Error Count Int !GM_Conf -- MDI Configuration End Common -------------------------------------------------------------------------------< Extern Group MWTM , PWP12TM Procedure AskReal , AskStr , AskInt Procedure CheckAna , CheckDig , CheckReg Procedure CheckArgReal , CheckArgStr , CheckArgInt Procedure DispMess Procedure ExConnect , ExDisconnect Procedure ExitCF Procedure Message Procedure OpenWindow Procedure PrintAna , PrintDig , PrintReg , PrintParam Procedure SendCommand Procedure Lower , Upper Procedure WaitAna , WaitDig , WaitReg , WaitTime End Extern -------------------------------------------------------------------------------< Program MDI_LHOP , Unique Defarg Str(80) !Proc_s Str(3) !Print = "yes" End Defarg Var Str( 3) !ExpName = "MDI" Str(10) !Phase = " " Str(49) !Title = " " Str(80) !S = &80s(" ") Str(80) !Question = "" Str(80) !Check = "" Int !NbErr = 0 Main @OpenWindow() Select !Proc_s Case "lhopcom" @lhopcom() Case "lhopoff" @lhopoff() Case "lhopon" @lhopon() Default !Title = "*ERROR: UNKNOWN PROCEDURE: "+!Proc_s @Message("DCL" , "date" , !ExpName , " " , !Title , *!S) -- Beep Halt !Title = "*Operator CONTinue" @Message("DC" , "date" , !ExpName , " " , !Title , *!S) Return !Rstat End Select @ExitCF (!NbErr) @PrintCF (!ExpName , !Print ) Return !Rstat End Program ----------------------------------------------------------------------------------< Procedure lhopcom ( ) --. --. This procedure file performs the Optics Package Controller --. commissioning --. Var Str( 3) !ExpName = "MDI" Str(10) !Phase = " " Str(49) !Title = " " Str(80) !S = &80s(" ") Int !NbErr = 0 Str(80) !Get_dig = "" Str(80) !Question = "" Str(80) !Check = "" Int !Get_int = 0 Real !Get_real = 0.0 Str(80) !LM_S0 = "" Str(80) !LM_S1 = "" Main !Title = "-EXECUTING PROCEDURE: lhopcom." @Message( "DCL" , "date" , !ExpName , !Phase , !Title , *!S ) !Title = "~Optics Package Controller Commissioning" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) Inhibit "MKHOPH2" Inhibit "MKHOPH3" Inhibit "MKHOPSPT" !Title = "~HOP set point 15 (0000 1111)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHOPSPT" , "15" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckReg( "MKHOPSPT" , "= 15" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @CheckDig( "MKHOPH2" , "= OFF" , *!NbErr ) @CheckDig( "MKHOPH3" , "= OFF" , *!NbErr ) !Title = "~HOP set point 63 (0011 1111)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHOPSPT" , "63" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckReg( "MKHOPSPT" , "= 63" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @CheckDig( "MKHOPH2" , "= OFF" , *!NbErr ) @CheckDig( "MKHOPH3" , "= OFF" , *!NbErr ) !Title = "~HOP set point 0 (0000 0000)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHOPSPT" , "0" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckReg( "MKHOPSPT" , "= 0" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @CheckDig( "MKHOPH2" , "= OFF" , *!NbErr ) @CheckDig( "MKHOPH3" , "= OFF" , *!NbErr ) !Title = "~HOP set point 128 (1000 0000) (oph2, spt 0)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) Inhibit "MKHOPSPT" Inhibit "MKHOPH2" @SendCommand ( "MBHOPSPT" , "128" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckReg( "MKHOPSPT" , "= 0" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @CheckDig( "MKHOPH2" , "= ON" , *!NbErr ) @CheckDig( "MKHOPH3" , "= OFF" , *!NbErr ) !Title = "~Point 255 (1111 1111) (oph2,oph3,spt 63)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHOPSPT" , "255" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckReg( "MKHOPSPT" , "= 63" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @CheckDig( "MKHOPH2" , "= ON" , *!NbErr ) @CheckDig( "MKHOPH3" , "= ON" , *!NbErr ) !Title = "~Point 64 (0100 0000) (oph3,spt 0)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) Inhibit "MKHOPSPT" Inhibit "MKHOPH2" @SendCommand ( "MBHOPSPT" , "64" ) @WaitTime ( "00h00m45s" , *!S ) Expect "MKHOPSPT", 0 , 1 Expect "MKHOPH2" , "OFF" , 1 Expect "MKHOPH3" , "ON" , 1 Enable "MKHOPSPT" Enable "MKHOPH2" Enable "MKHOPH3" Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckReg( "MKHOPSPT" , "= 0" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @CheckDig( "MKHOPH2" , "= OFF" , *!NbErr ) @CheckDig( "MKHOPH3" , "= ON" , *!NbErr ) !Title = "-CCD CAMERA Heater Commissioning" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) !Question = "MDI to display Thermal Page?" !Check = "in Y, y" @AskStr ( !Question , !Check , *!LM_S0 , *!S , *!NbErr ) Inhibit "MKHCMSPT" @PrintParam( "MKHCMSPT", "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) !Title = "~CCD set point 1 (001)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHCMSPT" , "1" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @PrintParam( "MKHCMSPT" , "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) @SendCommand ( "MBHCMSPT" , "0" ) @WaitTime ( "00h00m45s" , *!S ) !Title = "~CCD set point 2 (010)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHCMSPT" , "2" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @PrintParam( "MKHCMSPT" , "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) @SendCommand ( "MBHCMSPT" , "0" ) @WaitTime ( "00h00m45s" , *!S ) !Title = "~CCD set point 4 (100)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHCMSPT" , "4" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @PrintParam( "MKHCMSPT", "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) @SendCommand ( "MBHCMSPT" , "0" ) @WaitTime ( "00h00m45s" , *!S ) !Title = "~CCD set point 7 (111)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHCMSPT" , "7" ) @WaitTime ( "00h00m45s" , *!S ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @PrintParam( "MKHCMSPT", "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) !Title = "~CCD set point 0 (000)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHCMSPT" , "0" ) @WaitTime ( "00h00m45s" , *!S ) @PrintParam( "MKHCMSPT", "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) Enable "MKHCMSPT" !GM_NbErr = !GM_NbErr + !NbErr !Title = "-FINISHED PROCEDURE: lhopcom." @Message( "DCL" , "date" , !ExpName , !Phase , !Title , *!S ) Return End Procedure -------------------------------------------------------------------------------< Procedure lhopoff ( ) --. --. This procedure file powers OFF the Optics Package Controller: --. Var Str( 3) !ExpName = "MDI" Str(10) !Phase = " " Str(49) !Title = " " Str(80) !S = &80s(" ") Int !NbErr = 0 Str(80) !Question = "" Real !Get_real = 0.0 Str(80) !LM_S1 = "" Main !Title = "-EXECUTING PROCEDURE: lhopoff." @Message( "DCL" , "date" , !ExpName , !Phase , !Title , *!S ) !Title = "Switching OFF Optics Package heater" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) Inhibit "MKPWHOP" Inhibit "MKHOPH2" Inhibit "MKHOPH3" Inhibit "MKHOPSPT" Inhibit "MUHOPCTL" @SendCommand ( "MBPWHOPF" , "" ) @WaitTime ( "00h00m45s" , *!S ) Expect "MKPWHOP" , "OFF" , 1 Enable "MKPWHOP" Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select @CheckDig ( "MKPWHOP" , "= OFF" , *!NbErr ) @PrintParam( "MTOPTS13", "ANA" ) @PrintParam( "MTOPTS15", "ANA" ) @PrintParam( "QTMI1A" , "ANA" ) !GM_NbErr = !GM_NbErr + !NbErr !Title = "-FINISHED PROCEDURE: lhopoff." @Message( "DCL" , "date" , !ExpName , !Phase , !Title , *!S ) Return End Procedure -------------------------------------------------------------------------------< Procedure lhopon ( ) --. --. This Procedure powers ON the Optics Package Controller. --. Var Str( 3) !ExpName = "MDI" Str(10) !Phase = " " Str(49) !Title = " " Str(80) !S = &80s(" ") Int !NbErr = 0 Str(80) !Question = "" Str(80) !Get_dig = "" Int !Get_int = 0 Real !Get_real = 0.0 Str(80) !LM_S1 = "" Main !Title = "-EXECUTING PROCEDURE: lhopon." @Message( "DCL" , "date" , !ExpName , !Phase , !Title , *!S ) !Title = "~Switch ON Optics Package heater" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) !Title = "Switch ON to set point 64 (oph3)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBPWHOPN" , "" ) @WaitTime ( "00h00m45s" , *!S ) Expect "MKPWHOP" , "ON" , 1 Enable "MKPWHOP" Expect "MKHOPH2" , "OFF" , 2 Expect "MKHOPH3" , "ON" , 2 Enable "MKHOPH2" Enable "MKHOPH3" @SendCommand ( "MBHOPSPT" , "64" ) @WaitTime ( "00h00m45s" , *!S ) Expect "MKHOPSPT" , 0 , 1 Enable "MKHOPSPT" !Title = "~CCD set point 0 (000)" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) @SendCommand ( "MBHCMSPT" , "0" ) @WaitTime ( "00h00m45s" , *!S ) @PrintParam( "MKHCMSPT", "REG" ) @PrintParam( "M+15HTR" , "ANA" ) @PrintParam( "MTOPTS6" , "ANA" ) Select !GM_Conf Case 1 @PrintAna ( "MIPWA" , "Nominal Side Current" ) Case 2 @PrintAna ( "MIPWB" , "Redundant Side Current" ) Default End Select !Get_dig = Get( "MKPWHOP" ) If !Get_dig <> "ON" Then !Title = "*ERROR : Optics package htr is NOT ON" @Message( "DC" , "time" , !ExpName , !Phase , !Title , *!S ) Halt !Title = "*Operator CONTinue" @Message("DC" , "time" , !ExpName , " " , !Title , *!S) End If @CheckDig( "MKPWHOP" , "= ON" , *!NbErr ) @CheckDig( "MKHOPH2" , "= OFF", *!NbErr ) @CheckDig( "MKHOPH3" , "= ON" , *!NbErr ) @CheckReg( "MKHOPSPT", "= 0" , *!NbErr ) @PrintParam( "MUHOPCTL" , "ANA" ) @PrintParam( "QTMI1A" , "ANA" ) !GM_NbErr = !GM_NbErr + !NbErr !Title = "-FINISHED PROCEDURE: lhopon." @Message( "DCL" , "date" , !ExpName , !Phase , !Title , *!S ) Return End Procedure -------------------------------------------------------------------------------< Procedure PrintCF( str(3) !ExpName, str(8) !Print) --. Print the control file log file if required by !Print ; --. - using the 'Spool' statement if the variable !GZ_Spool is TRUE, --. - using the dialog box window if the variable !GZ_Spool is FALSE. --. Var str(80) !S = &80s(" ") Main If !Print = "yes" Then If !GZ_Spool = TRUE Then Spool CF Else Cflog @Message ("DC", "date", !ExpName, " ", \ "++++Print the CFLog, then type CONT+++", *!S) Halt @Message ("DC", "date", !ExpName, " ", \ "+Operator continue.", *!S) End If End If Return End Procedure ----------------------------------------------------------------------------------<