DMC_grat_scan_nochop

At each grating position, data is taken with chopper at position P#11 (P#5 ramps), and then on BB1 and BB2 (P#9 ramps at positions P#7 and P#8)

DMC sequence pseudo code:

WAIT                              1     ; have a defined start
LABEL                             0     ; set Label to 0
LOOP                              P#1   ; main loop measurement
   LOOP                           P#2   ; grating loop up
      WAIT                        1     ; sync. for grating
      MOVE_GRATING_RELATIVE       P#3   ; increment grating position
      LABEL                       3     ; first chopper pos.
      WAIT                        P#5   ; take P#5 ramps
      LOOP                        P#6   ; calibration loop
         WAIT                     1     ; sync. for chopper
         MOVE_CHOPPER_ABSOLUTE    P#7   ; chop to BB1
         LABEL                    65    ; BB1
         WAIT                     P#9   ; take P#9 ramps
         WAIT                     1     ; sync. for chopper
         MOVE_CHOPPER_ABSOLUTE    P#8   ; chop to BB2
         LABEL                    129   ; BB2
         WAIT                     P#9   ; take P#9 ramps
      END_LOOP                          ; calibration done
      MOVE_CHOPPER_ABSOLUTE       P#11  ; chopper to default
   END_LOOP                             ; grating scan up done
   LOOP                           P#10  ; grating loop down
      WAIT                        1     ; sync. for grating
      MOVE_GRATING_RELATIVE       P#4   ; decrement grating position
      LABEL                       19    ; first chopper pos.
      WAIT                        P#5   ; take P#5 ramps
      LOOP                        P#6   ; calibration loop
         WAIT                     1     ; sync. for chopper
         MOVE_CHOPPER_ABSOLUTE    P#7   ; chop to BB1
         LABEL                    81    ; BB1
         WAIT                     P#9   ; take P#9 ramps
         WAIT                     1     ; sync. for chopper
         MOVE_CHOPPER_ABSOLUTE    P#8   ; chop to BB2
         LABEL                    145   ; BB2
         WAIT                     P#9   ; take P#9 ramps
      END_LOOP                          ; calibration done
      MOVE_CHOPPER_ABSOLUTE       P#11  ; chopper to default
   END_LOOP                             ; grating scan down done
END_LOOP                                ; main loop done
WAIT                              1     ; complete last plateau
LABEL                             0     ; reset LABEL to 0

Input variabke(s):

int[] procedure DMC_grat_scan_nochop {
    int nb_up_dn = 1;          // Seq P#1  Nb of sequences: up down up ...
    int nb_grat_steps_up = 10; // Seq P#2  Nb of grating up steps
    int nb_ramps_grat_pos = 2; // Seq P#5  Nb of ramps per grating position
    int nb_CS1_CS2 = 0;        // Seq P#6  Nb of cycles on CS, per grat position
    int nb_ramps_cs = 2;       // Seq P#9  Nb of ramps per plateau on the CS
    int nb_grat_steps_dn = 10; // Seq P#10 Nb of grating down steps
}{

The only role of PACS' DMC scripts is the computation of the duration of DEC/MEC sequences, needed as input variable when starting the associated OBCP.