#!/bin/bash # to run do: bash CuFluo_exposure.sh # prerequisites: # - the hostname is set # - export PATH=/afs/psi.ch/project/sls_det_software/latest_slsDetectorPackage/build/bin:$PATH # - export LD_LIBRARY_PATH=/afs/psi.ch/project/sls_det_software/latest_slsDetectorPackage/build/bin:$LD_LIBRARY_PATH # - detector is on # - source filename_creator.sh # # - source pccalib.sh [pc] (mpc2012/pc-jungfrau-test) # - xray tube is on and ramped for 40 kV, 60 mA, set to Cu if [[ "$0" == *"CuFluo_exposure_both_speeds.sh"* ]]; then echo "script changes env. variables: should be invoked with source, not sh " exit fi if [ ! -v $1 ]; then echo $0 echo "printing filenames for module " $1 source filename_creator.sh $1 N shutter=1 sls_detector_put stop #just in case sls_detector_put powerchip 1 sls_detector_put period 0.002 sls_detector_put exptime 0.000010 sls_detector_put highvoltage 200 # configure for receiver on mpc2012/pc-jungfrau-test/mpc2198/mpc3282 # source pccalib.sh [pc] (mpc2012/pc-jungfrau-test/mpc2198/mpc3282) sls_detector_put udp_dstport 32410 sls_detector_put udp_dstip $DSTIP #10.1.4.105 sls_detector_put udp_dstmac $DSTMAC #3C:FD:FE:A2:14:D8 sls_detector_put udp_srcip $SRCIP #10.1.4.9 sls_detector_put udp_srcmac 00:ab:be:cc:dd:e2 sls_detector_put readoutspeed half_speed #half_speed #sls_detector_put reg 0x59 0x1310 #0001 0011 0001 0000 #sls_detector_put readoutspeed 0 #sls_detector_put reg 0x59 0x0100 #0000 0001 0000 0000 KILLRCV="killall ju_udp_receiver_3threads_2_0" $KILLRCV #CLI=/afs/psi.ch/project/sls_det_software/bin/sl7_binaries_to_be_removed_soon/xrayClient_sl7 #/vacuumClient_sl7 CLI=/afs/psi.ch/project/sls_det_software/bin/xrayClient_sl8 #/vacuumClient_sl7 $CLI setv 40 $CLI setc 60 $CLI HV on sls_detector_put clearbit 0x5d 0 #sls_detector_put vref_prech 1000 #sls_detector_put vref_ds 1100 $CLI shutter $shutter off #$CLI shutter 1 off echo "warmin up the board" sls_detector_put frames 40000 sls_detector_put start sleep 81 sls_detector_put stop echo "end of board warm up" sls_detector_put frames 1000 $KILLRCV sleep 1 $TKPG0 & sleep 5 echo "recording G0 pede" sls_detector_put start sleep 3 # 1000 frames at 500 frames per second takes 2s echo "recording G1 pede" sls_detector_put gainmode forceswitchg1 sls_detector_put start sleep 3 echo "recording G2 pede" sls_detector_put gainmode forceswitchg2 sls_detector_put start sleep 3 sls_detector_put gainmode dynamic $KILLRCV echo "closed G0 pede file and open the G0 CuFluo file" sleep 1 $TKFG0 & sleep 5 sls_detector_put frames 230000 $CLI shutter $shutter on #$CLI shutter 1 on sleep 1 sls_detector_put start sleep 470 # 200k frames at 500 frames per second takes 400s $CLI shutter $shutter off #$CLI shutter 1 off $KILLRCV echo "closed G0 CuFluo file and open HG0 pede file" sleep 1 $TKPHG0 & sleep 3 sls_detector_put settings highgain0 #sls_detector_put vref_prech 1000 #sls_detector_put vref_ds 1100 sls_detector_put frames 1000 echo "recording HG0 pede" sls_detector_put start sleep 3 # 1000 frames at 500 frames per second takes 2s $KILLRCV echo "closed HG0 pede file and open the HG0 CuFluo file" sleep 1 $TKFHG0 & sleep 5 sls_detector_put frames 230000 $CLI shutter $shutter on #$CLI shutter 1 on sleep 1 sls_detector_put start sleep 470 echo "finish exposure at half speed" # 200k frames at 500 frames per second takes 400s $CLI shutter $shutter off #$CLI shutter 1 off sleep 2 echo "close shutter" $KILLRCV sleep 1 # source filename creator to save data in fullspeed folder source filename_creator.sh $1"_fullspeed" N # set detector for full speed sls_detector_put readoutspeed full_speed sleep 1 sls_detector_put clearbit 0x5d 0 #sls_detector_put vref_prech 1000 #sls_detector_put vref_ds 1100 sls_detector_put frames 1000 $TKPG0 & sleep 5 echo "recording G0 pede" sls_detector_put start sleep 3 # 1000 frames at 500 frames per second takes 2s echo "recording G1 pede" sls_detector_put gainmode forceswitchg1 sls_detector_put start sleep 3 echo "recording G2 pede" sls_detector_put gainmode forceswitchg2 sls_detector_put start sleep 3 sls_detector_put gainmode dynamic $KILLRCV echo "closed G0 pede file and open the G0 CuFluo file" sleep 1 $TKFG0 & sleep 5 sls_detector_put frames 230000 $CLI shutter $shutter on #$CLI shutter 1 on sleep 1 sls_detector_put start sleep 470 # 200k frames at 500 frames per second takes 400s $CLI shutter $shutter off #$CLI shutter 1 off $KILLRCV echo "closed G0 CuFluo file and open HG0 pede file" sleep 1 $TKPHG0 & sleep 5 sls_detector_put settings highgain0 #sls_detector_put vref_prech 1000 #sls_detector_put vref_ds 1100 sls_detector_put frames 1000 echo "recording HG0 pede" sls_detector_put start sleep 3 # 1000 frames at 500 frames per second takes 2s $KILLRCV echo "closed HG0 pede file and open the HG0 CuFluo file" sleep 1 $TKFHG0 & sleep 5 sls_detector_put frames 230000 $CLI shutter $shutter on #$CLI shutter 1 on sleep 1 sls_detector_put start sleep 470 # 200k frames at 500 frames per second takes 400s $CLI shutter $shutter off #$CLI shutter 1 off sleep 2 $KILLRCV sls_detector_put highvoltage 0 sls_detector_put clearbit 0x5d 0 echo "Script finished" else echo "Specify module number as a first argument" echo "Script finished" fi