#pragma section-numbers on = Conditions = All tests described can be executed from SAFE MODE of from SPECTROSCOPY. As these tests do '''not''' ensure that the grating remains configured with senseful controller parameters, it is safe to end them by sending the SAFE MODE OBCP One should care that the DPU_HK_LIST command has been commanded to "SPEC - BOTH". This is performed by the PACS_Spec_HK_Setup_OBS.cus script. Their analysis relies only on HK & diagnostic HK data. = Open Loop Operations = || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_DEG_MODE_Diaghk_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_DEGMODE_OBS || || || Configures the grating with SLOW default parameters || || || Specific Open Loop Test || || || || || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || = Amplitude = The amplitude of the excitation of the inductosyn (& sine and cosine) has to be adjusted first. The amplitude can be adapted by manual commanding with the following command DMC_WRT_GRAT_INDUC_AMPL. The following procedures run a loop over 10 values of the amplitude which should surround the correct value. The first time, when it's not established that we are really surrounding the correct values of the amplitude, the test should be run in open loop. If needed, potential further tests can be performed in closed loop. The SINE & COSINE Diaghk values have no meaning when the controller of the calibration sources is switched on => !!! THESE PROCEDURES DEMAND THE CALIBRATION SOURCES TO BE OFF !!! == Open Loop == || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_DEG_MODE_Diaghk_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_DEGMODE_OBS || || || Configures the grating with SLOW default parameters || || || PACS_Spec_Gra_Ampl_Open_Loop_OBS || || || Loops over various amplitudes & performs +/- 10 degrees movements for each|| 2000 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || == Closed Loop == || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_SINCOS_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || || calUname="CONFGrat" calUrow="FMILT" || Configures the grating with SLOW default parameters || 198 || || PACS_Spec_Gra_Ampl_Loop_OBS || || || Loops over various amplitudes & performs +/- 10 degrees movements for each|| 1919 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || = PID = == First Check == The first test's purpose is to check that a given set of parameters provides the most basic stability. The test consists in writing the paramters, enabling the grating for a few seconds, and desabling it. || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk1khz_Setup_OBS || || || Starts the grating specific Diaghk flow || || || PACS_Spec_Gra_Cont_Check_1_OBS || || calUname="CONFGrat" calUrow= || Write all parameters, enables for a few seconds || || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || == Second Check == The second check is a variation of the first one. It is about the same, except for the addition of a grating movement. || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk1khz_Setup_OBS || || || Starts the grating specific Diaghk flow || || || PACS_Spec_Gra_Cont_Check_2_OBS || || calUname="CONFGrat" calUrow= || Write all parameters, enable, performs a grating movement of -10 degrees, disable || || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || == PID Loop == All the following tests loop over a serie of sets of grating PID parameters. The acquisition of Diaghk in there can be performed at 200Hz (PACS_Spec_Gra_Diaghk1khz_Setup_OBS) or at 1KHz (PACS_Spec_Gra_Diaghk1khz_Setup_OBS). 200Hz is actually sufficient. === Simple, short Loop === For each set of PID, a few small movements and 2 movements of 5 degree are executed. All the sets to be tested must be hardcoded individually || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk1khz_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || || calUname="CONFGrat" calUrow="FMILTFast" || Configures the grating with default parameters || 198 || || PACS_Spec_Gra_PID_loop_OBS || || || A reasonable grid of PID parameters must be hardcoded || 619 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || {{{ Execution Date : Phase I : 20061107 to 20061109 Phase II : }}} {{{ Status : Phase I : OBSW updates needed. Test needs to be rerun @ Phase II Phase II : }}} === Fast browsing of the PID space === The following test loops over a serie of sets of grating PID parameters as well. Each time only 10 small movements are performed, three loops are nested, over sets of Kp, Ki & Kd respectively => ALL POSSIBLE COMBINATIONS OF THE INPUT PID PARAMETERS WILL BE TESTED. High Ki/Kp ratios have proven very unstable. Too high Kd as well. Start from SAFE_MODE || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_Setup_OBS || || || Starts the Diaghk flow || || || CONF_grating_OBS || || calUrow="FMILTFast" or "FMILT_R_Fast" || Configures the grating with default parameters || 198 || || PACS_Spec_Gra_PID_loop_Short_OBS || || || A reasonable grid of PID parameters must be hardcoded || ~20/PID || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || === PID loop with basic characterisation === When a reasonnable set of Kp,Ki,Kd has been found, the vicinity of that set in the PID space can be explored in more detail with the following procedure, which makes a restricted number of movements all over the grating range for each set of parameters => more time consuming (PACS_Spec_Gra_PID_loop_FR_OBS calls PACS_Spec_Gra_Tune_PID for each set of parameters) || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_SINCOS_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || || calUname="CONFGrat" calUrow="FMILTFast" || Configures the grating with default parameters || 198 || || PACS_Spec_Gra_PID_loop_FR_OBS || || || A reasonable grid of PID parameters must be hardcoded || ~200/PID|| || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || = Grating Behaviour Characterisation = Once a possibly acceptable set of PID parameters has been found, the grating behaviour should be characterised in all its aspects. This is the goal of the following tests. == Grating Healthcheck == This test homes the grating a number of times, on both sides of the grating range, and performs large amplitude movements in between. It allows to check for the grating range, the presence or absence of hard points in the path, the behaviour of the driving current throughout the range and it allows to establish the GRAT_CUR_POS vs HALL A & B characteristics. || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_SINCOS_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || || calUname="CONFGrat" calUrow= || Configures the grating || 198 || || PACS_Spec_Gra_Healthcheck_OBS || || n_homes=3 || n_homes homings, alternating home[0] & [1] + large movements each time|| 670 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || == Slew Time Cal == This is the main grating characterisation test. It performs series of grating movements of all amplitudes, all over the grating range. It can be coupled to the next sub-test (Tune PID) to gain time. || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_SINCOS_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || || calUname="CONFGrat" calUrow= || Configures the grating || 198 || || PACS_Spec_Gra_Slew_Time_Cal || || || Performs movements of all sizes, throughout the range || 618 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || == PID Check ("Tune PID") == This test performs a set of small amplitude movements every 10 degrees of the grating range. If the set of PID that was kept was selected based on PACS_Spec_Gra_PID_loop_FR_OBS, this test doesn't need to be performed, as it was then part of that procedure. || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_SINCOS_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || || calUname="CONFGrat" calUrow= || Configures the grating || 198 || || PACS_Spec_Gra_Tune_PID_OBS || || || Climbs the grating range with a set of small movements every 5 degrees || 241 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || == Full Characterisation == This test performs the full characterisation of the grating behaviour for a given set of PID parameters. Starting from SAFE MODE. || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk1khz_Setup_OBS || || || Starts the grating specific Diaghk flow || || || CONF_grating_OBS || Yes || calUrow="FMILT" or "FMILT_R" || Configures the grating || 198 || || PACS_Spec_Gra_Healthcheck_OBS || Yes || n_homes=4 || n_homes homings, alternating home[0] & [1] + large movements each time|| 893 || || PACS_Diaghk_Reset_OBS || || || stops diaghk flow || || || PACS_Spec_Gra_Diaghk_Setup_OBS || || || Starts the grating specific Diaghk flow || || || RECONF_grating_OBS || Yes || calUrow="FMILTFast" or "FMILT_R_Fast" || Configures the grating || 202 || || PACS_Spec_Gra_Slew_Time_Cal || || || Performs movements of all sizes, throughout the range || 618 || || PACS_Spec_Gra_Tune_PID_OBS || || || Climbs the grating range with a set of small movements every 5 degrees || 201 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || || = Special Tests = == Influence of ENABLE / DISABLE == This test performs a serie of homings, enable, disable and movements through the range to investigate the behaviour of the "noise" on the GRAT_CUR_POS before & after disable of the controller (observed to be different). Start from SAFE_MODE || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Cont_Red_Stability_OBS || || || || 1842 || || PACS_SAFE_MODE.tcl || || || || || == Torque - GRAT_OUTPUT - Frictions == The following test will disable the grating controller repetetively at several positions through the range in order to investigate about the importance of the "parasitic torque" applied to the grating and the possible existence of friction on top of it. Start from SAFE_MODE || Script || TCL || Parameters || Comments || Duration [sec] || || PACS_Spec_HK_Setup_OBS || || || Sets DPU HK List to SPEC BOTH || || || PACS_Spec_Gra_Diaghk_Setup_OBS || || || Starts the Diaghk flow || || || CONF_grating_OBS || Yes || calUrow="FMILTFast" or "FMILT_R_Fast" || Configures the grating || 198 || || PACS_Spec_Gra_Friction_OBS || || || || 4650 || || PACS_Diaghk_Reset_OBS || || || || || || PACS_SAFE_MODE.tcl || || || || ||