Difference between revisions of "PITA scan"

From PREX Wiki
Jump to: navigation, search
(Getting Started)
Line 6: Line 6:
  
 
== Getting Started ==
 
== Getting Started ==
 +
 +
<span style="color:red"> '''https://prex.jlab.org/wiki/index.php/PITA_scan_HOWTO''' </span>
 +
 +
 
<span style="color:red"> '''Do NOT test this script - it actually changes the EPICS variables!''' </span>  
 
<span style="color:red"> '''Do NOT test this script - it actually changes the EPICS variables!''' </span>  
  

Revision as of 13:43, 4 February 2020

In the process of editing and updating this page. Please contact Juliette Mammei crowder@jlab.org with questions or suggestions.

PREX Main<< Information for Shift Takers << Shift Leader << HOW TOs << Expert Tools

This page will tell you step-by-step how to run a PITA/IA scan.

Getting Started

https://prex.jlab.org/wiki/index.php/PITA_scan_HOWTO


Do NOT test this script - it actually changes the EPICS variables!

  • You need to be logged on to the adaq account:
    •  ssh apar@adaq1 
  • Analysis macros are located in
    •  /adaqfs/home/apar/yufan/scan 
  • If you'd like to move the pita scan files to another directory:
    1. Move the ENTIRE /scan FOLDER. The code uses other python classes that you will need in the scan directory.
    2. Go to the directory where you moved the files, and type
      •  chmod +x scan.py 

How to Run the PITA/IA Scan

  1. Make sure that Channel Access is granted on IOC ioceegstep1
  2. Open the file parameters_PITA.txt
    • Changes to make
      1. Change the crate_number to
        • Counting House: 0
        • Injector: 3
      2. Change wait_time to how long (in seconds) you'd like to take data for each PITA value
      3. Change step_size to how much you would like to increase/decrease the EPICS variable for each step
      4. Change max_step to the number of steps you would like the program to run
      5. Change beam_current to the beam current you use in the PITA scan
      6. Example
        • If you set step_size = 100 and max_step = 3, and the original PITA read value was 371, then PITA1 and PITA2 will go as: 371+100, 371-100, 371+200, 371-200, 371+300, 371-300
  3. Run the PITA/IA scan by typing
    •  ./scan.py pita 
    •  ./scan.py aia 
    •  ./scan.py cia 
  4. If the scan finished successfully, you will see "pita/aia/cia SCAN finished" printed to the terminal
  5. If the scan had an error, you will see "Something went wrong! Check the error.txt file" printed to the terminal
    • Errors will be printed in the error.txt file
  6. You can double-check the behavior of the script by looking at the log.txt file

How does it work?

The script does the following:

  1. Read the origin EPICS read variable and origin scandata1 values
  2. Set cleandata to NOT CLEAN(0)
  3. Set the scandata1 value to the new PITA/IA voltage through the socket
  4. Set cleandata to CLEAN(1)
  5. Wait for wait_time (set by user)
  6. Set cleandata to NOT CLEAN(0)
  7. Set PITA Scan:PITA1,PITA2 or AIA scan:DAC03,DAC04,DAC05,DAC06 or CIA scan:DAC11,DAC12,DAC13,DAC14 to the new set point
  8. Check if the set value is updated
  9. Set APPLY TO CELL variable to 1 (click the button) only apply for PITA scan
  10. Check the readback value of EPICS
  11. Set the scandata1 value1 to the new set point through the socket
  12. Set cleandata to CLEAN(1)
  13. Waiting for wait_time (set by user)
    1. if the beam_current is less than 3uA (tripped), then set cleandata to NOT CLEAN(0), wait until the beam is back for 10 seconds, set the timer back and set cleandata to CLEAN(1), then restart waiting for wait_time
    2. there is also a counter to indicate how many times the beam is tripped during one waiting step which shows the log.txt file
  14. Repeat as next values
  15. After setting all the set points
  16. Set cleandata to NOT CLEAN(0)
  17. Change EPICS variable and scandata1 to their original values
  18. Finish