Reports 1-1 of 1 Clear search Modify search
MIF (General)
hirotaka.yuzurihara - 16:48 Monday 17 June 2024 (29943) Print this report
Implemented the script to subtract the dark offset values for QPDs.

[Ushiba, Yuzu]

We implemented the script to subtract the dark offset values for QPDs.

  • The script checks whether the beam shutters (GR/IR) are closed, takes averages of PD values over 60 s, assigns the dark values in the offsets and turn on the switches for OFFSET.
  • Script is located in /opt/rtcds/userapps/release/asc/k1/scripts/subtract_dark_offset.py
  • Usage
    • To subtract the dark offset for all PDs, run subtract_dark_offset.py
    • To subtract the dark offset for all QPDs, run subtract_dark_offset.py -p QPD
    • To subtract the dark offset except for QPDs, run subtract_dark_offset.py -p notQPD
  • The PD list to subtract the dark offset is located in /opt/rtcds/userapps/release/asc/k1/scripts/pd_20240617.txt
    • When you want to add the PD, please edit this list by yourself.
    • This list was constructed from the document for ADC/DAC channel assignment and checked by eyeball of Ushiba-san. Note that we didn't include the PDs related to ISS and f3 WFS(recently Hirose-san is working on), because we don't know the expected situation.
    • The current number of PDs is 285. To avoid the low-level DAQ error, we limit the number of channels (120) and read data. In maximum, we read channel data three times. It takes more than 3 minutes.
  • I prepared the button to launch this script in the bottom of Commissioning dock. (See attached screenshot)
Images attached to this report
Comments to this report:
hirotaka.yuzurihara - 9:15 Tuesday 18 June 2024 (29953) Print this report

I missed including the PD related to Green-Y and IR-Y. So, I added them and run the script 8:55~9:00 this morning. See the attached screenshot, especially IRY. In addition, I tested the botton at the medm screen. It works well.

During this work, I requested the LOCK_ACQUISITION to PR2, PR3, BS, SR2, SR3, ITMX, ITMY, ETMX, and ETMY due to my operation mistake. (I thought the medm screen is in the edit mode. But, it was not.)

 

Note that the title has the type: QPDs --> PDs

Images attached to this comment
takafumi.ushiba - 15:13 Saturday 22 June 2024 (30062) Print this report

Today, I found several problems of dark offset subtraction.

1. K1:PSL-IP_QPD{1,2}_DC_SEG{1,2,3,4}
Even when closing laser shutters, IR beams seem to hit on these QPDs.
So, we need to erase these channels from dark offset subtraction.

2. K1:NAB-IYA_BAFFLEPD_{A,B,C,D}
Even when all shuters are closed, these PD have a large signal (~1000 - 10000 cnts).
So, I checked the current situation of IYA baffle PDs and found that PD driver is turned off now.
I'm not sure why the driver is off and IYA baffle PDs are connected correctly, so I didn't turn on the PD driver.
After recovering the situation, we need to perform the dark ofset subtraction again for these PDs.

hirotaka.yuzurihara - 8:21 Friday 28 June 2024 (30151) Print this report

I removed the channels which Ushiba-san mentioned.
 

To treat the issue that INMON data makes the bias on the OFFSET due to the alias, I replaced the channel names (INMON -> IN1) and reduced the maximum number of channels to read the data at the same time (120 -> 12). During testing the script, the DAQ trouble occured. I attach the screenshot. The accident time is before 7:30, probably 7:25? This happended during the code test. I did't update any OFFSET values.
I heard previously Ushiba-san tried to read the IN1 data of 32 channels and the DAQ trouble occurred. So I set 12. But the 12 channels seems still too much.

The error message from the script is as below.

Traceback (most recent call last):
  File "/opt/rtcds/userapps/trunk/asc/k1/scripts/./subtract_dark_offset.py", line 112, in
    zeroOffs(channels[i:i+n_max], fout)  
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/rtcds/userapps/trunk/asc/k1/scripts/./subtract_dark_offset.py", line 33, in zeroOffs
    d = z.avg(t_ave, list_of_chans)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/cdsutils/avg.py", line 69, in avg
    for buf in conn.iterate(*args):
               ^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/cdsutils/nds.py", line 104, in iterate
    return super(connection, self).iterate(*nargs, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/nds2.py", line 1340, in iterate
    return _nds2.connection_iterate(self, *args)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: Low level daq error occured [13]: Requested data were not found.

Images attached to this comment
hirotaka.yuzurihara - 9:17 Friday 28 June 2024 (30153) Print this report

Note for future work:

I could read the following 12 channels in the first loop:
K1:LSC-POP_PDA3_DC_IN1
K1:LSC-POP_PDA1_DC_IN1
K1:LSC-POP_PDA2_DC_IN1
K1:LSC-POP_PDA1_RF17_Q_IN1
K1:LSC-POP_PDA1_RF17_I_IN1
K1:LSC-POP_PDA1_RF45_Q_IN1
K1:LSC-POP_PDA1_RF45_I_IN1
K1:LSC-POP_PDA2_RF51_Q_IN1
K1:LSC-POP_PDA2_RF51_I_IN1
K1:LSC-POP_PDA2_RF90_Q_IN1
K1:LSC-POP_PDA2_RF90_I_IN1
K1:ASC-POP_QPDA1_DC_SEG1_IN1

I could read the following 12 channels in the second loop:
K1:ASC-POP_QPDA1_DC_SEG2_IN1
K1:ASC-POP_QPDA1_DC_SEG3_IN1
K1:ASC-POP_QPDA1_DC_SEG4_IN1
K1:ASC-POP_QPDA2_DC_SEG1_IN1
K1:ASC-POP_QPDA2_DC_SEG2_IN1
K1:ASC-POP_QPDA2_DC_SEG3_IN1
K1:ASC-POP_QPDA2_DC_SEG4_IN1
K1:ASC-POP_FORWARD_QPDA1_DC_SEG1_IN1
K1:ASC-POP_FORWARD_QPDA1_DC_SEG2_IN1
K1:ASC-POP_FORWARD_QPDA1_DC_SEG3_IN1
K1:ASC-POP_FORWARD_QPDA1_DC_SEG4_IN1
K1:ASC-POP_FORWARD_QPDA2_DC_SEG1_IN1

When I read the following 12 channels in the third loop, the DAQ trouble occurred.
K1:ASC-POP_FORWARD_QPDA2_DC_SEG2_IN1
K1:ASC-POP_FORWARD_QPDA2_DC_SEG3_IN1
K1:ASC-POP_FORWARD_QPDA2_DC_SEG4_IN1
K1:ASC-POP_QPDA1_RF17_Q1_IN1
K1:ASC-POP_QPDA1_RF17_I1_IN1
K1:ASC-POP_QPDA1_RF17_Q2_IN1
K1:ASC-POP_QPDA1_RF17_I2_IN1
K1:ASC-POP_QPDA1_RF17_Q3_IN1
K1:ASC-POP_QPDA1_RF17_I3_IN1
K1:ASC-POP_QPDA1_RF17_Q4_IN1
K1:ASC-POP_QPDA1_RF17_I4_IN1
K1:ASC-POP_QPDA2_RF17_Q1_IN1

takahiro.yamamoto - 11:00 Friday 28 June 2024 (30154) Print this report
A problem seemed to occur when the channels related to the ASC model were read in the 2nd subset of 12 channels.
So reading 12 channels in simultaneously is probably not a problem.
After reading the 1st subset of 12 channels, garbage collection or port closing doesn't work...?

Check list for the next maintenance day.
  1. Read 20-30 channels from other 2kHz model on ASC computer such as ADS model (it's problem only on ASC model or not).
  2. Read 20-30 channels from other 2kHz model on other computer such as VIS TWR models (it's problem only on ASC computer or not).
  3. Read 20-30 channels from 16kHz model such as LSC model (it's problem only on 2kHz model or not).
  4. Read 20-30 DQ channels instead of TP from ASC model (it's problem only for TP or not. Though sampling rate is different between DQ and TP, sampling rate is not a issue if 3. is passed).
  5. Read 20-30 channels by multiple process per 12-channels as follows (it's problem on garbage collection of the script or not).
    #!/bin/bash
    for x in ...
    do
        python3 ./subtract_dark_offset.py [12-channels]
    done
  6. Measure 12 channels from ASC model and then measure another 12 channels from ASC model in one diaggui process (It's problem only on cdsutils or not).

These are only what I can think of right now.
Search Help
×

Warning

×