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

From Ciswikidb
Jump to navigation Jump to search
 
(29 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=='''CODA Startup'''==
+
__TOC__
  
go to injector -> spin -> mott measurement control and open scripts there
 
see "startcoda help" for diretions on using CODA
 
  
Obsolete way:
+
=='''CODA Startup'''==
  
  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 20:
 
# '''Go'''  
 
# '''Go'''  
  
[[file:RunControl_screen2.png|none|300px]]
+
 
  
 
To stop a run:
 
To stop a run:
Line 40: Line 37:
 
</ol>
 
</ol>
 
and start from number 5.
 
and start from number 5.
 +
 +
=='''Resetting / Restarting DAQ Processes'''==
 +
* From the terminal where '''startCoda''' was executed:
 +
Restart All Components:
 +
'''% restartStuff'''
 +
Restart Platform (if components cannot connect):
 +
'''% restartPlatform'''
 +
 +
=='''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 = 10;
 +
 +
  /*
 +
    Trigger Prescale := 1 / 2^(prescale)
 +
    prescale is fixed to 0 for Mott_Int
 +
  */
 +
  prescale = 0;
 +
 +
trigger_rules: (
 +
  { /* rule 1 */
 +
    period = 80;
 +
    timestep = 2;
 +
  },
 +
  { /* rule 2 */
 +
    period = 60;
 +
    timestep = 2;
 +
  },
 +
  { /* rule 3 */
 +
    period = 1;
 +
    timestep = 0;
 +
  },
 +
  { /* rule 4 */
 +
    period = 1;
 +
    timestep = 0;
 +
  }
 +
  );
 +
 +
random_pulser:
 +
  {
 +
    enabled = 0;
 +
    prescale = 7;
 +
  }
 +
 +
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 = 260;
 +
    ptw = 500;
 +
    nsb = 5;
 +
    nsa = 28;
 +
    np = 1;
 +
 +
    delay8 = 0;
 +
    delay9 = 2;
 +
    delay11 = 4;
 +
 +
    threshold =
 +
      [
 +
      10,      // CH1 - E LEFT
 +
      10,      // CH2 - E RIGHT
 +
      10,      // CH3 - T LEFT
 +
      10,      // CH4 - T RIGHT
 +
      10,      // CH5 -
 +
      10,      // CH6 -
 +
      10,      // CH7 -
 +
      10,      // CH8 -
 +
      10,      // CH9 -
 +
      10,      // CH10 -
 +
      10,      // CH11 - Mott Trigger
 +
      10,      // CH12 -
 +
      10,      // CH13 - Delayed Helicity
 +
      10,      // CH14 - T_Settle
 +
      10,      // CH15 - Pat Sync
 +
      10      // CH16 - Pair Sync
 +
      ];
 +
 +
    dac =
 +
      [
 +
      3050,  // CH1 - E LEFT      Range - 1.0 V
 +
      3050,  // CH2 - E RIGHT          - 1.0 V
 +
      3300,  // CH3 - T LEFT            - 1.0 V
 +
      3300,  // CH4 - T RIGHT          - 1.0 V
 +
      3300,  // CH5 -                  - 1.0 V
 +
      3300,  // CH6 -                  - 1.0 V
 +
      3300,  // CH7 -                  - 1.0 V
 +
      3300,  // CH8 -                  - 1.0 V
 +
      3300,  // CH9 -                  - 1.0 V
 +
      3300,  // CH10 -                  - 1.0 V
 +
      3300,  // CH11 - Mott Trigger    - 1.0 V
 +
      3300,  // CH12 -                  - 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>

Latest revision as of 05:04, 28 July 2022


CODA Startup

  • 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.

Resetting / Restarting DAQ Processes

  • From the terminal where startCoda was executed:

Restart All Components:

% restartStuff

Restart Platform (if components cannot connect):

% restartPlatform

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 = 10;

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

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

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

 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 = 260;
    ptw = 500;
    nsb = 5;
    nsa = 28;
    np = 1;

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

    threshold =
      [
       10,       // CH1 - E LEFT
       10,       // CH2 - E RIGHT
       10,       // CH3 - T LEFT
       10,       // CH4 - T RIGHT
       10,      // CH5 - 
       10,      // CH6 - 
       10,      // CH7 - 
       10,      // CH8 - 
       10,      // CH9 -
       10,      // CH10 - 
       10,      // CH11 - Mott Trigger
       10,      // CH12 -
       10,      // CH13 - Delayed Helicity
       10,      // CH14 - T_Settle
       10,      // CH15 - Pat Sync
       10       // CH16 - Pair Sync
       ];

    dac =
      [
       3050,   // CH1 - E LEFT      Range - 1.0 V
       3050,   // CH2 - E RIGHT           - 1.0 V
       3300,   // CH3 - T LEFT            - 1.0 V
       3300,   // CH4 - T RIGHT           - 1.0 V
       3300,   // CH5 -                   - 1.0 V
       3300,   // CH6 -                   - 1.0 V
       3300,   // CH7 -                   - 1.0 V
       3300,   // CH8 -                   - 1.0 V
       3300,   // CH9 -                   - 1.0 V
       3300,   // CH10 -                  - 1.0 V
       3300,   // CH11 - Mott Trigger     - 1.0 V
       3300,   // CH12 -                  - 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
       ]; 
  }
  );