Difference between revisions of "How to run UITF Mott CODA"

From Ciswikidb
Jump to navigation Jump to search
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
__TOC__
 +
 
=='''CODA Startup'''==
 
=='''CODA Startup'''==
  
go to injector -> spin -> mott measurement control and open scripts there
+
* Go to '''Injector -> Spin -> Mott Screen''' and open script '''STARTCODA'''. See '''STARTCODA HELP''' for directions on using CODA
see "startcoda help" for diretions on using CODA
 
  
Obsolete way:
 
  
  From an accelerator machine: '''ssh -X idaq@opsmdaq0'''  
+
* From an accelerator machine: '''ssh -X idaq@itfmdaq0'''  
 
Note: '''idaq''' is the injector DAQ account and uses ssh authorized_keys for login - no need to enter password
 
Note: '''idaq''' is the injector DAQ account and uses ssh authorized_keys for login - no need to enter password
  
Execute the following few steps:
+
Execute the following:
  '''% startcoda'''
+
  '''% startCoda'''
  
 
=='''Start and Stop a Run'''==
 
=='''Start and Stop a Run'''==
 +
[[file:CODA3_desktop.png|right|750px]]
  
 
From Run Control panel, select in the following order (Note: if any of the selection is already completed, move to the next step):
 
From Run Control panel, select in the following order (Note: if any of the selection is already completed, move to the next step):
# '''Sessions''' => '''inj'''
+
# '''Configurations''' => '''CODA Config''' => '''Mott_Sample'''
# '''Configurations''' => '''Cool''' => '''Mott_Sample'''
 
# '''Platform''' => '''Connect'''
 
 
# '''Configure'''
 
# '''Configure'''
 
# '''Download'''  
 
# '''Download'''  
Line 23: Line 22:
 
# '''Go'''  
 
# '''Go'''  
  
[[file:RunControl_screen2.png|none|300px]]
+
 
  
 
To stop a run:
 
To stop a run:
Line 40: Line 39:
 
</ol>
 
</ol>
 
and start from number 5.
 
and start from number 5.
 +
 +
=='''Configuration File'''==
 +
 +
The DAQ Configuration file is found
 +
* on itfmdaq0:
 +
    /opt/idaq/itfsbcmdaq0/cfg/uitf_mott.cfg
 +
* on itfsbcmdaq0:
 +
    ~/cfg/uitf_mott.cfg
 +
 +
An example file is found below:
 +
 +
<pre>
 +
/* -*- mode: c; -*- */
 +
 +
Date_Created="";
 +
 +
ti:
 +
{
 +
  blocklevel = 1;
 +
  bufferlevel = 1;
 +
 +
  /*
 +
    Trigger Prescale := 1 / 2^(prescale)
 +
    prescale is fixed to 0 for Mott_Int
 +
  */
 +
  prescale = 0;
 +
 +
trigger_rules: (
 +
  { /* rule 1 */
 +
    period = 10;
 +
    timestep = 0;
 +
  },
 +
  { /* rule 2 */
 +
    period = 10;
 +
    timestep = 0;
 +
  },
 +
  { /* rule 3 */
 +
    period = 10;
 +
    timestep = 0;
 +
  },
 +
  { /* rule 4 */
 +
    period = 10;
 +
    timestep = 1;
 +
  }
 +
  );
 +
 +
random_pulser:
 +
  {
 +
    enabled = 0;
 +
    prescale = 0xF;
 +
  }
 +
 +
fixed_pulser:
 +
  {
 +
    enabled = 0;
 +
    nevents = 0xffff;
 +
    period = 1;
 +
    timestep = 1;
 +
  }
 +
}
 +
 +
helicity_decoder:
 +
{
 +
  address = 0xa80000;
 +
  slot = 21;
 +
 +
  input_delay = 0x100; // 0x100 = 2048 ns (1 = 8 ns)
 +
  trigger_latency_delay = 0x40; // 0x40 = 512 ns (1 = 8ns)
 +
 +
  use_internal_helicity = 0;
 +
 +
internal_helicity:
 +
  {
 +
    helicity_pattern = 2; // 2 = OCTET
 +
    window_delay = 10;
 +
    settle_time = 0x40; // 0x40 = 512 ns (1 = 8ns)
 +
    stable_time = 0x80; // 0x80 = 1024 ns (1 = 8ns)
 +
    seed = 0xabcdef01;
 +
  }
 +
}
 +
 +
fadc250: (
 +
  {
 +
    type = "integrating";
 +
    address = 0xee0000;
 +
    slot = 18;
 +
    sd_fp_address = 0xeb00;
 +
 +
    init_arg = 0x13;
 +
    mode = 1;
 +
 +
    pl = 0;
 +
    ptw = 0;
 +
    nsb = 1;
 +
    nsa = 498;
 +
    np = 1;
 +
 +
    delay8 = 0;
 +
    delay9 = 0;
 +
    delay11 = 0;
 +
 +
    threshold =
 +
      [ 1, 1, 1, 1,
 +
1, 1, 1, 1,
 +
1, 1, 1, 1,
 +
1, 1, 1, 1 ];
 +
 +
    dac =
 +
      [ 3300, 3300, 3300, 3300,
 +
3300, 3300, 3300, 3300,
 +
3300, 3300, 3300, 3300,
 +
3300, 3300, 3300, 3300 ];
 +
 +
  },
 +
  {
 +
    type = "counting";
 +
    address = 0xed0000;
 +
    slot = 13;
 +
    sd_fp_address = 0xea00;
 +
 +
    init_arg = 0x13;
 +
    mode = 1;
 +
 +
    pl = 85;
 +
    ptw = 50;
 +
    nsb = 5;
 +
    nsa = 28;
 +
    np = 1;
 +
 +
    delay8 = 0;
 +
    delay9 = 2;
 +
    delay11 = 4;
 +
 +
    threshold =
 +
      [
 +
      600,    // CH1 - E LEFT
 +
      600,    // CH2 - E RIGHT
 +
      600,    // CH3 - E UP
 +
      600,    // CH4 - E DOWN
 +
      600,    // CH5 - dE LEFT
 +
      600,    // CH6 - dE RIGHT
 +
      600,    // CH7 - dE UP
 +
      600,    // CH8 - dE DOWN
 +
      1750,      // CH9 - BFM
 +
      1750,      // CH10 - Free (Timing)
 +
      1000,      // CH11 - Mott Trigger
 +
      1750,      // CH12 - Free (Timing_bar)
 +
      10,        // CH13 - Delayed Helicity
 +
      10,        // CH14 - T_Settle
 +
      10,        // CH15 - Pat Sync
 +
      10        // CH16 - Pair Sync
 +
      ];
 +
 +
    dac =
 +
      [
 +
      3300,  // CH1 - E LEFT    Range - 0.5 V
 +
      3300,  // CH2 - E RIGHT          - 0.5 V
 +
      3300,  // CH3 - E UP            - 0.5 V
 +
      3300,  // CH4 - E DOWN          - 0.5 V
 +
      3300,  // CH5 - dE LEFT          - 0.5 V
 +
      3300,  // CH6 - dE RIGHT        - 0.5 V
 +
      3300,  // CH7 - dE UP            - 0.5 V
 +
      3300,  // CH8 - dE DOWN          - 0.5 V
 +
      3300,    // CH9 - BFM            - 1.0 V
 +
      3300,    // CH10 - Free            - 1.0 V
 +
      3300,    // CH11 - Mott Trigger      - 1.0 V
 +
      3300,    // CH12 - Free            - 1.0 V
 +
      3300,    // CH13 - Delayed Helicity  - 1.0 V
 +
      3300,    // CH14 - T_Settle        - 1.0 V
 +
      3300,    // CH15 - Pat Sync        - 1.0 V
 +
      3300    // CH16 - Pair Sync        - 1.0 V
 +
      ];
 +
 +
  }
 +
  );
 +
 +
</pre>

Revision as of 05:54, 6 April 2022

CODA Startup

  • Go to Injector -> Spin -> Mott Screen and open script STARTCODA. See STARTCODA HELP for directions on using CODA


  • From an accelerator machine: ssh -X idaq@itfmdaq0

Note: idaq is the injector DAQ account and uses ssh authorized_keys for login - no need to enter password

Execute the following:

% startCoda

Start and Stop a Run

CODA3 desktop.png

From Run Control panel, select in the following order (Note: if any of the selection is already completed, move to the next step):

  1. Configurations => CODA Config => Mott_Sample
  2. Configure
  3. Download
  4. Prestart (or Start. Note that Start combines both Prestart and Go)
  5. Go


To stop a run:

  1. End

To start a new run, select:

  1. Prestart (or Start. Note that Start combines both Prestart and Go)
  2. Go
  3. End

and if you want to apply a change or you need a new configuration:

  1. Reset

and start from number 5.

Configuration File

The DAQ Configuration file is found

  • on itfmdaq0:
   /opt/idaq/itfsbcmdaq0/cfg/uitf_mott.cfg
  • on itfsbcmdaq0:
   ~/cfg/uitf_mott.cfg

An example file is found below:

/* -*- mode: c; -*- */

Date_Created="";

ti:
{
  blocklevel = 1;
  bufferlevel = 1;

  /*
     Trigger Prescale := 1 / 2^(prescale)
     prescale is fixed to 0 for Mott_Int
  */
  prescale = 0;

 trigger_rules: (
   { /* rule 1 */
     period = 10;
     timestep = 0;
   },
   { /* rule 2 */
     period = 10;
     timestep = 0;
   },
   { /* rule 3 */
     period = 10;
     timestep = 0;
   },
   { /* rule 4 */
     period = 10;
     timestep = 1;
   }
   );

 random_pulser:
  {
    enabled = 0;
    prescale = 0xF;
  }

 fixed_pulser:
  {
    enabled = 0;
    nevents = 0xffff;
    period = 1;
    timestep = 1;
  }
}

helicity_decoder:
{
  address = 0xa80000;
  slot = 21;

  input_delay = 0x100; // 0x100 = 2048 ns (1 = 8 ns)
  trigger_latency_delay = 0x40; // 0x40 = 512 ns (1 = 8ns)

  use_internal_helicity = 0;

 internal_helicity:
  {
    helicity_pattern = 2; // 2 = OCTET
    window_delay = 10;
    settle_time = 0x40; // 0x40 = 512 ns (1 = 8ns)
    stable_time = 0x80; // 0x80 = 1024 ns (1 = 8ns)
    seed = 0xabcdef01;
  }
}

fadc250: (
  {
    type = "integrating";
    address = 0xee0000;
    slot = 18;
    sd_fp_address = 0xeb00;

    init_arg = 0x13;
    mode = 1;

    pl = 0;
    ptw = 0;
    nsb = 1;
    nsa = 498;
    np = 1;

    delay8 = 0;
    delay9 = 0;
    delay11 = 0;

    threshold =
      [ 1, 1, 1, 1,
	1, 1, 1, 1,
	1, 1, 1, 1,
	1, 1, 1, 1 ];

    dac =
      [ 3300, 3300, 3300, 3300,
	3300, 3300, 3300, 3300,
	3300, 3300, 3300, 3300,
	3300, 3300, 3300, 3300 ];

  },
  {
    type = "counting";
    address = 0xed0000;
    slot = 13;
    sd_fp_address = 0xea00;

    init_arg = 0x13;
    mode = 1;

    pl = 85;
    ptw = 50;
    nsb = 5;
    nsa = 28;
    np = 1;

    delay8 = 0;
    delay9 = 2;
    delay11 = 4;

    threshold =
      [
       600,     // CH1 - E LEFT
       600,     // CH2 - E RIGHT
       600,     // CH3 - E UP
       600,     // CH4 - E DOWN
       600,     // CH5 - dE LEFT
       600,     // CH6 - dE RIGHT
       600,     // CH7 - dE UP
       600,     // CH8 - dE DOWN
       1750,      // CH9 - BFM
       1750,      // CH10 - Free (Timing)
       1000,      // CH11 - Mott Trigger
       1750,      // CH12 - Free (Timing_bar)
       10,        // CH13 - Delayed Helicity
       10,        // CH14 - T_Settle
       10,        // CH15 - Pat Sync
       10        // CH16 - Pair Sync
       ];

    dac =
      [
       3300,   // CH1 - E LEFT     Range - 0.5 V
       3300,   // CH2 - E RIGHT          - 0.5 V
       3300,   // CH3 - E UP             - 0.5 V
       3300,   // CH4 - E DOWN           - 0.5 V
       3300,   // CH5 - dE LEFT          - 0.5 V
       3300,   // CH6 - dE RIGHT         - 0.5 V
       3300,   // CH7 - dE UP            - 0.5 V
       3300,   // CH8 - dE DOWN          - 0.5 V
       3300,     // CH9 - BFM            - 1.0 V
       3300,     // CH10 - Free             - 1.0 V
       3300,     // CH11 - Mott Trigger       - 1.0 V
       3300,     // CH12 - Free             - 1.0 V
       3300,     // CH13 - Delayed Helicity   - 1.0 V
       3300,     // CH14 - T_Settle         - 1.0 V
       3300,     // CH15 - Pat Sync         - 1.0 V
       3300     // CH16 - Pair Sync         - 1.0 V
       ];

  }
  );