--+------------------------------------------------------------------------+ --+ SOHO Project -- Control File --+ ---------------------------- --+ --+ Name : MDI_SPT1 , !MDI_Config , !Print --+ Purpose : MDI SPECIAL PERFORMANCE TEST No.1 --+ --+ Sub_system : PLM --+ Drawing No : 3137-ZA042-SCB Issue : A/00 --+ Project No : SH-MAR-SW-70222 --+ Origin : UK --+ Author : Alan TURK --+------------------------------------------------------------------------+ --+ Principle : --+ --------- --+ This Control File performs the MDI Special Performance test using --+ the MDI stimulus telescope. --+ --+ Passed parameters : --+ ----------------- --+ !MDI_Config : MDI configuration ( 1 (default) | 2 ). --+ !Print : CF Log print indicator ( "yes" (default) | "no" ). --+ --+ Prerequisites : --+ ------------- --+ (a) Ensure Ground Equipment SVM Simulator is configured to the correct --+ Redundancy under test. --+ --+ (b) PLM is powered ON and is in the ready mode. --+ --+ (c) Non-Operational Heaters are powered OFF. --+ --+ (d) Experiment Sub-System is powered OFF. --+ --+ (e) Ensure the Purge Equipment is mated to the MDI Sensor and is --+ switched ON and Purging. --+ --+ History : --+ ------- --+ Issue SIC Note Time Date Name/Updates --+ +---+ +------+ +---+ +-------+ +-------------------------------------+ --+ 1/00 211 20:25 10/01/94 A.J. Turk -- Conversion from MDI language. --+ 1/01 289 09:56 07/02/94 A.J. Turk -- During debug phase. --+ 1/02 360 10:56 18/04/94 Ed COBB -- Rationalization --+ --+------------------------------------------------------------------------+ 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_Conf -- MDI Configuration Int !GM_NbErr -- MDI Global Error Count End Common -------------------------------------------------------------------------------< Extern Cfile MDI_LAM , MDI_IMAGE , MDI_DIST , MDI_LASER , MDI_ON , MDI_LFD Cfile MDI_LLT , MDI_FOCUS , MDI_OFF 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_SPT1 , Unique Defarg Int !MDI_Config = 1 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 = "" Str(80) !Resp_s = "" Int !NbErr = 0 Int !Spt_Errs = 0 -- No. of Errors detected in 'SPT1' CF Main @OpenWindow() @CheckArgInt(!MDI_Config, "Arg 1 as Config No.", ">= 1 and <= 2", *!NbErr ) If( !NbErr <> 0 ) Then !Title = "*ERROR: INVALID Input Argument (see above)" @Message( "DC", "date", !ExpName, !Phase, !Title, *!S) !Rstat = "ARG_NOK" If !GZ_Test = FALSE Then Halt End If Return !Rstat End If !Title = "-START OF MDI SPT1 CF : 'MDI_SPT1'" @Message( "DCL", "date", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_ON , !MDI_Config , "no" !Spt_Errs = !Spt_Errs + !GM_NbErr !Question = "READY TO OPEN MDI FRONT DOOR? (y/n)" !Check = "in Y, N, y, n" @AskStr ( !Question , !Check , *!Resp_s , *!S , *!NbErr ) @Upper( !Resp_s , *!Resp_s ) If !Resp_s = "Y" Then PERFORM/NO MDI_LFD , "lfdon" , "no" PERFORM/NO MDI_LFD , "lfdopen" , "no" End If PERFORM/NO MDI_LAM , "lamon" , "no" !Title = "~(a) LIMB TRACKER checks" @Message( "DC", "time", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_LLT , "llton" , "no" PERFORM/NO MDI_LLT , "lltcntr" , "no" PERFORM/NO MDI_LLT , "lltcom" , "no" !Title = "~(b) IMAGE tests" @Message( "DC", "time", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_IMAGE , "mdipict" , "no" PERFORM/NO MDI_IMAGE , "mdiltc" , "no" !Title = "~(c) FOCUS tests" @Message( "DC", "time", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_FOCUS , "mdifocus" , "no" !Title = "~(d) DISPLACEMENT AND DISTORTION tests" @Message( "DC", "time", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_DIST , "mdimrot" , "no" PERFORM/NO MDI_DIST , "mdiprot" , "no" PERFORM/NO MDI_DIST , "mdipdist" , "no" !Question = "IS JITTER MIRROR READY? (y/n)" !Check = "in Y, N, y, n" @AskStr ( !Question , !Check , *!Resp_s , *!S , *!NbErr ) @Upper( !Resp_s , *!Resp_s ) If !Resp_s = "Y" Then !Title = "~(e) IMAGE STABILIZATION tests" @Message( "DC", "time", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_IMAGE , "mdiiss" , "no" End If !Question = "MDI STIM TELESCOPE READY (laser)? (y/n)" !Check = "in Y, N, y, n" @AskStr ( !Question , !Check , *!Resp_s , *!S , *!NbErr ) @Upper( !Resp_s , *!Resp_s ) If !Resp_s = "Y" Then !Title = "~(f) LASER CALIBRATION tests" @Message( "DC", "time", !ExpName, !Phase, !Title, *!S) PERFORM/NO MDI_LASER , "mdilaser" , "no" End If PERFORM/NO MDI_LLT , "lltoff" , "no" PERFORM/NO MDI_LAM , "lamoff" , "no" !Question = "READY TO CLOSE MDI FRONT DOOR? (y/n)" !Check = "in Y, N, y, n" @AskStr ( !Question , !Check , *!Resp_s , *!S , *!NbErr ) @Upper( !Resp_s , *!Resp_s ) If !Resp_s = "Y" Then PERFORM/NO MDI_LFD , "lfdclose" , "no" PERFORM/NO MDI_LFD , "lfdoff" , "no" End If !Spt_Errs = !Spt_Errs + !GM_NbErr PERFORM/NO MDI_OFF , "no" !Spt_Errs = !Spt_Errs + !GM_NbErr !Title = "-END OF MDI SPT1 CF : 'MDI_SPT1'" @Message( "DCL", "date", !ExpName, !Phase, !Title, *!S) @ExitCF (!Spt_Errs) @PrintCF (!ExpName , !Print ) Return !Rstat End Program ----------------------------------------------------------------------------------< Procedure PrintCF(str(3) !ExpName, Str(3) !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 -------------------------------------------------------------------------------<