TITLE: 07/17 Eve Shift: 2330-0500 UTC (1630-2200 PST), all times posted in UTC
STATE of H1: Observing at 145Mpc
OUTGOING OPERATOR: TJ
CURRENT ENVIRONMENT:
SEI_ENV state: CALM
Wind: 16mph Gusts, 10mph 3min avg
Primary useism: 0.04 μm/s
Secondary useism: 0.20 μm/s
QUICK SUMMARY:
Observing at 145Mpc and have been Locked for almost 3 hours. Everything is looking good.
TJ, Elenna, Oli, Sheila
I had noticed a bit ago that SR3 M1 DITHER P has been outputting a 32 consistantly (overview). It seems like the OFFSET has been on for most of over 5 years(ndscope1). Over 5 years ago it stopped moving around (ndscope2) and had stayed at 32 almost all the time since then, probably when the SR3_CAGE_SERVO stopped being used. I spoke to Sheila, and she says she knew about it, and that it was just a remnant of the cage servo that no one bothered to offload into the opticalignment sliders, and that we can offload it to the sliders so that it isn't sitting there anymore. We will probably do this at the next lockloss.
Closes FAMIS 26052. Last checked in alog 85627.
"BSC high freq noise is elevated for these sensor(s)!!!
ITMY_ST1_CPSINF_H3"
By eye, BS_ST2 had elevated counts compared to last week. Otherwise, signals are either comparable or lower.
Locking was straight forward, needed to run an initial alignment, but it was all hands off. There were a bunch of SDFs from commissioning today that we knew would be there.
Briefly dropped observing to make a sqz adjustment from 2106-2108UTC
Camilla, TJ, Dave:
On 26jun2025 I started my HWS camera control code on the four HWS machines [h1hwsmsr, h1hwsmsr1, h1hwsex and h1hwsey]. The code disables the HWS cameras when H1 is in observation mode and re-enables them on lock-loss.
Data since that time has shown no clear correlation between HWS camera status and the 2Hz DARM comb. The comb appears to have persisted until the 4th July, at which point it diminished.
Camilla and TJ decided we should try turning off the camera control code and keep the HWS cameras enabled.
Following the 11:43 lock loss this morning (at which point the cameras were enabled by the code) I stopped the camera control python code on all four machines between the times 11:54 and 11:57 PDT. Note that Ctrl-C inside the tmux sessions did not work, I had to "kill -9 " the python processes.
Attached camera control MEDM from 12:03 shows the cam-ctrl agents have stopped, with their GPS times not updating (denoted by purple boxes).
For now I have removed the CCTL (Cam Control) box from the CDS overview, but I am keeping the cam_ctrl_ioc running and the channels remain in the DAQ.
Looking at the measurement of CSOFT from this alog, and also remembering that CSOFT P tends to be highly coherent with DARM from 10-15 Hz, I decided to make some adjustments to the CSOFT P lowpass filter that would both suppress noise around 10 Hz, and also maybe buy back some phase at 1 Hz. I designed a 7 Hz low pass filter with only 40 dB of attentuation. The current lowpass filter design has 60 dB of attenuation, which seems like overkill. I adjusted the low pass to be elliptic, low Q, which gives us back about 5 degrees of phase, but reduces the gain at 10 Hz and above by a factor of 10. I didn't get a chance to try it in lock, but I changed the guardian to engage this filter on the way up to NLN (line 3341 of ISC_LOCK). There will be an SDF diff. The new filter is in FM7, the old filter is in FM9.
Jennie, Rahul
On Tuesday Rahul and I took the measurements for the horizontal coupling in the ISS array currently on the optical table.
The QPD read 9500 e-7 W.
The X position was 5.26 V, the Y position was -4.98 V.
PD | DC Voltage [mV] pk-pk | AC Voltage [mV] pk-pk |
1 | 600 | 420 |
2 | 600 | 380 |
3 | 600 | 380 |
4 | 600 | 420 |
5 | 800 | 540 |
6 | 800 | 500 |
7 | 600 | 540 |
8 | 800 | 540 |
After thinking about this data I realise we need to retake it as we should record the mean value for the DC coupled measurements. This was with a 78V signal applied from the PZT driver and an input dither signal of 2 Vpp at 100Hz on the oscilloscope and I think 150 mA pump current on the laser.
Rahul, Jennie W
Yesterday we went back into the lab and retook the DC and AC measurements while horizontal dither was on while measuring using the 'mean' setting and without changing the overall input pointing from what it was in the above measurement.
PD | DC Voltage [V] mean | AC Voltage [V] mean |
1 | -4.08 | -0.172 |
2 | -3.81 | 0.0289 |
3 | -3.46 | 0.159 |
4 | -3.71 | 0.17 |
5 | -3.57 | -0.0161 |
6 | -3.5 | 0.00453 |
7 | -2.91 | 0.187 |
8 | -3.36 | 0.0912 |
QPD direction | Mean Voltage [V] | Pk-Pk Voltage [V] |
X | 5.28 | 2.20 |
Y | -4.98 | 0.8 |
QPD sum is roughly 5V.
Next time we need to plug in the second axis of the PZT driver so as to take the dither coupling measurement in the vertical direction.
horizontal dither calibration = 10.57 V/mm
dither Vpk-pk on QPD x-direction = 2.2V
dither Vpk-pk on QPD y-direction = 0.8V
dither motion in horizontal direction in V on QPD = sqrt(2.2^2 + 0.8^2)
motion in mm on QPD that corresponds to dither of input mirror = sqrt(2.2^2 + 0.8^2) / 4.644 = 0.222 mm
Code is here for calibration of horizontal beam motion to QPD motion plus calibration of dither measurements.
To work out the relative intensity noise:
RIN = change in power/ power
= ( change in current/ current) / responsivity of PD
= (change in voltage/voltage) / (responsitvity * load resistance)
Therefore to minimise RIN we want to minimise change in voltage / voltage for each PD.
To get the least coupling to array input alignment we work out
relative RIN coupling = (delta V/ V) / beam motion at QPD
This works because the QPD is designed to be in the same plane as the PD array.
PD | DC Voltage [V] mean | AC Voltage [mV] pk-pk | Beam Motion at QPD [mm] | Relative Coupling [1/m] |
1 | -4.08 | 420 | 0.222 | 465 |
2 | -3.81 | 380 | 0.222 | 450 |
3 | -3.46 | 380 | 0.222 | 496 |
4 | -3.71 | 420 | 0.222 | 511 |
5 | -3.57 | 540 | 0.222 | 683 |
6 | -3.5 | 500 | 0.222 | 645 |
7 | -2.91 | 540 | 0.222 | 838 |
8 | -3.36 | 540 | 0.222 | 726 |
These are all a factor of 50 higher than those measured by Mayank and Shiva but after discussion with Keita either we need higher resolution measurements or we need to further optimise input alignment to the array to minimise the coupling.
Based on a recent bruco, it appeared that PRCL had relatively high coherence, especially near 100 Hz. I ran an injection today during commissioning to check the coupling. I adjusted the overall PRCL feedforward gain and found a lower coupling when the gain was reduced from 1.3 to 1. As soon as the gain reduced beyond 1, the coupling around 20 Hz started to get worse. I chose to use a new gain of 1, and updated the guardian and SDF. These changes are loaded. I also took a longer measurement of PRCL, on the off chance we want to do another iterative feedforward shaping in the future.
Sheila, Camilla
We ran a couple of squeezing angle scans to check the settings of the ADF servo.
One thing that we realized is that the ADF Q demod signal is divided by H1:SQZ-ADF_OMC_TRANS_Q_NORM rather than mulitplied which is what we had thought. We changed the coefficent from 0.18 to 5.8. The first png attachment shows that this transforms the blue ellipse into the orange one. It would be a bit better if we first adjusted the demod phase to maximize the Q signal, so that the ellipse would be aligned along the axis, and the rescaled version would be more like a circle. However you can see in the right side plot that this gives us a reasonably linear readback of sqz angle as we change the RF6 demod angle (which is actually cabled up to RF3 phase) about 150 degrees where our best squeezing is.
Camilla turned the servo back on in sqzparams.
For future reference, a slightly better way to do this would be to move the demod phase to maximize Q, do a scan and set H1:SQZ-ADF_OMC_TRANS_Q_NORM to the ratio (max of Q)/ (max of I). Then you can do a smaller scan around the point with the best squeezing, and in sqzparams set sqz_ang_adjust_ang to the readback angle that you think is best.
This didn't work at the start of today's the lock as the ADF frequency had been left near 10kHz. Once I put the ADF back to 322Hz it seemed to work fine.
For operators, this means that if the squeezing looks bad, running SCAN_SQZANG_FDS alone won't change the SQZ angle. You would need to:
If the servo is running away, try the above instructions, if that doesn't work, the servo can be turned off via editing use_sqz_angle_adjust = False in sqz/h1/guardian/sqzparams.py. Please alog and tag SQZ.
Since we've had this servo running, the range has been higher and sqz more stable, see attached.
Thu Jul 17 10:07:21 2025 INFO: Fill completed in 7min 17secs
Matt, Sheila, Camilla,
/ligo/home/matthewrichard.todd/Templates/sqz/20250717_SQZdata.xml
and screenshot attached.Before we started we scanned the SQZ angle from 0 to 280deg using 'ezcastep H1:SQZ-CLF_REFL_RF6_PHASE_PHASEDEG -s '3' '+2,150'' to set it later for ADF plot attached, then we ran SCAN_ALIGNMENT_FDS, checked NLG, adjusted OPO temp. Starting angle at 141deg, SQZ_ANG_ADJUST changed it to 148deg.
Type | Time (UTC) | Angle | DTT Ref | Notes |
FDS | 15:51:00 - 15:54:00 | (-)148.4 | ref 1 | FDS after scan alignment and sqz ang |
No SQZ | 15:54:30 - 16:02:00 | N/A | ref 0 | |
FIS Mean SQZ (no ADF) | 16:04:00 - 16:07:00 | N/A | ref 2 | |
FIS | 16:08:00 - 16:11:00 | (-) 148 | ref 3 | |
FIS Mid + SQZ (+50deg) | 16:12:00 - 16:15:00 | (-) 198 | ref 4 | |
FIS Mid + SQZ (+100deg) | 16:15:30 - 16:18:30 | (-)248 | ref 5 | |
FIS Mid + SQZ (+150deg) | 16:24:00 - 16:27:00 | (+)120 | ref 6 | Had to change sign here, think we are going the correct direction again. |
FIS Mid + SQZ (+200deg) | 16:27:30 - 16:30:30 | (+)170 | ref 7 | |
FIS Mid + SQZ (+250deg) | 16:31:00 - 16:34:00 | (+)220 | ref 8 | |
ASQZ | 16:36:30 - 16:39:20 | (+)245 | ref 9 | Note we flipped sign in last 10sec of data so only have 2m50s here |
FIS Mid - SQZ (-50deg) |
16:40:30 - 16:43:30 | (-)98 | ref 10 | |
16:44:00 - 16:47:00 | (-)48 | ref 11 | Note that we'd already gone over ASQZ here | |
FIS Mid - SQZ (-20deg) | 16:48:00 - 16:51:00 | (-)128 | ref 12 | |
FIS Mid - SQZ (-75deg) | 16:51:30 - 16:54:30 | (-)73 | ref 13 | |
ASQZ | 16:55:30 - 16:58:30 | (-)65 | ref 14 | ASQZ again at different SQZ angle (looks the same) |
FIS Mid - SQZ (-35deg) | 16:59:00 - 17:02:00 | (-)113 | ref15 | |
FDS Mid SQZ + | 17:06:30 - 17:09:30 | (-)203 | ref16 | |
FDS Mid SQZ - | 17:12:00 - 17:15:00 | (-)120 | ref17 |
OPO Setpoint | Amplified Max | Amplified Min | UnAmp | Dark | NLG | OPO Gain | Note |
80uW | 0.0948 | 0.0023 | 0.00705 | -2.24e-5 | 13.4 | -8 | With changing OPO temp |
I took 5 minutes of no-sqz data at 524 kHz and saved the outputs as .gwf files in /ligo/home/elenna.capote/OMC_DCPD/251707-103227_xcorr_data
Just some quick directions on how to run a script to get the full 524 kHz DCPD data, and then save it in a useful file format.
The script to save this is in /ligo/home/elenna.capote/OMC_DCPD/H1OMCDPCD_HF.py
Right now it is set to collect data from these two channels (line 62 of the code):
channels = ["H1:OMC-DCPD_A0_OUT", "H1:OMC-DCPD_B0_OUT"]
The amount of time to collect data is set on line 66:
duration = 600 # seconds
To run the code:
> conda activate labutils
> python H1OMCDPCD_HF.py
The files will be saved in /ligo/home/elenna.capote/OMC_DCPD in a new folder labeled with a datetime and "xcorr_data" since I have traditionally used this script to collect data for cross correlation measurements. However, you can change the label on line 71, label="xcorr_data"
The output is a set of 1 second HDF5 frames for each second of data collection (so 600 seconds = 600 files). To put this data into a single .gwf format of the full data length, which can easily be read in with GWPY, use the combine.py script. Copy combine.py into the new directory with the frames and run it. The code generates a file for each OMC DCPD channel at the full rate, and at a decimated 64 kHz rate.
This is a bit odd the way it is set up, but the way this works ensures that even if you have to quit the script early, you don't lose all the data, since it saves each file by the second.
Lockloss at 2025-07-17 04:11 UTC due to a power issue with ETMX and TMSX. Currently in contact with Dave and Fil is on his way in.
ETMX M0 and R0 watchdogs tripped
ETMX and TMSX OSEMs are in FAULT
ETMX ESD off
ETMX HWWD notified that it would trip soon, so SEI_ETMX was preemptively put into ISI_OFFLINE_HEPI_ON to keep ISI from getting messed up when it trips
H1SUSETMX ADC channels zeroed out at 21:11:39. SWWDs did not trip because there is no RMS on the OSEM signals, but the HWWD completed its 20 minute countdown and powered down the three ISI coil drivers at 21:32. This indicates ETMX's top stage OSEMs have lost power.
I've opened WP12692 to cover Fil going to EX to investigate.
During the recovery the +24VDC power supply for the SUS IO Chassis was glitched which stopped all the h1susex and h1susauxex models. To recover I first did a straight forward reboot of h1susauxex (no Dolphin), it came back with no issues.
To reboot h1susex was more involved, remember that the EX Dolphin switch was damaged by the 06 April 2025 power outage and has no network control. The procedure to reboot h1susex I used was:
When h1susex came back, I verified all the IO Chassis cards were present (they were all there)
I unpaused the SEI and ISC IPC by writing a 0 to their IPC_PAUSE channels.
The HWWD came back in nominal state.
I reset the SUS SWWD DACKILLs and unbypassed the SEI SWWD.
DIAG_RESET to clear all the IPC errors (it did so) and clear DAQ CRCs (they cleared).
Handed systems over to control room (Oli and Ryan S).
From Fil:
-18VDC Power supply had failed and was replaced.
Power supply is in rack VDD-2, location U25-U28, right-hand supply, label [SUS-C1 C2]
old supply (removed) S1202024
new supply (installed) S1300288
Last night's HWWD sequence is shown below. Reminder that at +40mins the SUS part of the HWWD trips, which sets bit2 of the STAT. This opens internal relay switches, but since we don't route the SUS drives through the HWWD unit (too noisy) this has no effect on operations. The delay between 22:52 and 23:20 is because h1iopsusex was down between 23:01 and 23:20.
Fan motor seized on failed power supply.
Wed16Jul2025
LOC TIME HOSTNAME MODEL/REBOOT
23:15:13 h1susauxex h1iopsusauxex
23:15:26 h1susauxex h1susauxex
23:20:21 h1susex h1iopsusex
23:20:34 h1susex h1susetmx
23:20:47 h1susex h1sustmsx
23:21:00 h1susex h1susetmxpi
TITLE: 07/15 Day Shift: 1430-2330 UTC (0730-1630 PST), all times posted in UTC
STATE of H1: Preventive Maintenance
OUTGOING OPERATOR: Ibrahim
CURRENT ENVIRONMENT:
SEI_ENV state: CALM
Wind: 15mph Gusts, 9mph 3min avg
Primary useism: 0.02 μm/s
Secondary useism: 0.14 μm/s
QUICK SUMMARY: We've only been at low noise for 20 min, but magnetic injections are running now. Maintenance day today.
Maintenance was delayed by 1 hour this day due to a Fermi GRB notice (E581020) that we received on site a few minutes before 1500UTC. We were not in Observing at the time, but we were in a low noise state. I brought us back into observing at 1510UTC where we stayed until one hour after the initial BRD notice.
Jim, Elenna
We had a 6.6 earthquake begin rolling in from Panama, so Jim and I tried to take the ASC arm control loops to the high bandwidth state. I also turned off the LSC feedforward which drives the ETMY PUM.
This obviously creates a lot of noise in DARM, but we are curious to see if it helps us ride out a large earthquake.
This consists of:
Some of these things can be done by hand, but others, like transitioning filters and gains together have to be done with guardian code to ensure they are done at the same time. I copied and pasted lines of code into a guardian shell.
These are the lines of code that will do everything I mentioned above:
ezca.get_LIGOFilter('ASC-CHARD_Y').ramp_gain(300, ramp_time=10, wait=False)
ezca.switch('ASC-CHARD_Y', 'FM3', 'FM8', 'FM9', 'OFF')
ezca.switch('ASC-DHARD_Y', 'FM1', 'FM3', 'FM4', 'FM5', 'FM8', 'OFF')
ezca.switch('ASC-CHARD_P', 'FM9', 'ON')
ezca.switch('ASC-CHARD_P', 'FM3', 'FM8', 'OFF')
ezca['ASC-CHARD_P_GAIN'] = 80
ezca.get_LIGOFilter('ASC-DSOFT_Y').ramp_gain(30, ramp_time=5, wait=False)
ezca.get_LIGOFilter('ASC-DSOFT_P').ramp_gain(10, ramp_time=5, wait=False)
ezca.switch('ASC-DHARD_P', 'FM4', 'FM8', 'OFF')
ezca['LSC-PRCLFF_GAIN'] = 0
ezca['LSC-MICHFF_GAIN'] = 0
ezca['LSC-SRCLFF1_GAIN'] = 0
I saved this as a script called "lownoise_asc_revert.py" in my home directory. This is a bit of a misnomer since it also reverts the LSC feedforward.
We are still locked so far, but we are waiting to see how this goes (R wave just arrived).
We lost lock when the ground motion got to be about 2.5 micron/s.
This was a "large earthquake" aka within the yellow band on the EQ response zone plot. Since these earthquakes are highly likely to cause lockloss, Jim and I are thinking we could try this high bandwidth control reversion for these earthquakes to see if this can help us survive the earthquake. This would take us out of observing and kill the range (we were at about 70 Mpc before the lockloss), but we could then go back to lownoise once the earthquake passes.
Jim also thinks he can make some adjustments to other seismic controls, but I'll let him explain how that would work since he is the expert.
I refined the script to include some sleeps, and wrote another script to revert the reversion so it will put the ASC and LSC feedforward back in the nominal low noise state.
Both scripts are attached. They should be tested!
I have added buttons to run modified versions of Elenna's scripts to my seismic overview ISI_CONFIG screen, the smaller red and blue buttons that say "ASC Hi Gn" and "ASC Low noise" in the upper left, but I don't think we are ready to suggest anyone use them yet. I added a bit of code to ask if you are sure, so they shouldn't be very easy to launch accidentally. I'm trying to compile some data to estimate how much run time we lose or could gain before investing much more effort in automating this.
Jennie W, Rahul
Yesterday we made some measurements to calibrate the spot size on the QPD as we scan the beam position across it.
We used a connector Fil made us to plug in the OT301 QPD amplifier into a DC power supply after checking it contained voltage regulators that could cope with a voltage between 12 and 19 V ( as the unit says it expects DC supply but the previous one we were using was AC with a 100mA current rating and was getting too hot so we assume that was the incorrect one). We hooked it up at 16V (this draws about 150mA of current). The QPD readout looks normal and does not have any of the strange sawtooth we saw with the original power cable.
We moved the M2MS beam measurement system out of the way of the translation stage.
To calibrate the QPD we need to change the lateral position of the M1 mirror and lens to change the yaw positioning on the QPD and measure the X and Y voltages from the QPD.
We need to check we are centred first. The QPD bullseye readout shows the beam is off a tiny bit in yaw but this was as good as we could get at centering the beam when we moved the QPD. All 8 PDs are reading about 4.6 V so this means the beam is well centred in the array plane.
We measure 11000 counts on the bullseye qpd readout at this M1 position.
Translation Stage inch |
QPD X (mV ) |
QPD Y (V) |
---|---|---|
4.13 | 239e-3 | -1.77 |
4.14 | 252e-3 | -1.84 |
4.15 | 2.34 | -1.60 |
4.16 | 4.46 | -1.17 |
4.17 | 4.26 | -1.11 |
4.18 | 5.62 | -835e-3 |
4.19 | 7.80 | -600e-3 |
4.20 | 7.81 | -321e-3 |
4.21 | 8.45 | -222e-3 |
4.22 | 8.82 | +70.6e-3 |
4.23 |
9.19 |
771e-3 |
4.24 | 9.28 | 1.12 |
4.25 | 9.37 | 1.88 |
4.26 | 9.36 | 2.36 |
4.27 | 9.37 | 2.38 |
4.28 | 9.44 | 2.71 |
4.29 | 9.47 | 3.10 |
4.30 | 9.50 | 3.41 |
4.31 | 9.49 | 3.35 |
4.32 | 9.51 | 3.72 |
4.33 | 9.55 | 4.27 |
4.34 | 9.58 | 4.55 |
4.35 | 9.62 | 4.86 |
4.36 | 9.66 | 5.44 |
4.37 | 9.65 | 5.31 |
4.38 | 9.63 | 5.60 |
4.39 | 9.69 | 5.75 |
4.40 | 9.69 | 6.00 |
4.41 | 9.70 | 6.15 |
4.42 | 9.70 | 6.16 |
4.43 | 9.71 | 6.33 |
4.44 | 9.71 | 6.50 |
4.45 | 9.72 | 6.72 |
4.46 | 9.74 | 7.09 |
4.47 | 9.73 | 6.87 |
4.48 | 9.74 | 7.40 |
4.49 | 9.75 | 7.46 |
4.50 | 9.74 | 7.46 |
4.51 | 9.76 | 7.75 |
4.52 | 9.74 | 7.67 |
4.53 | 9.73 | 7.82 |
4.54 | 9.74 | 7.96 |
4.55 | 9.73 | 8.08 |
4.56 | 9.72 | 8.33 |
4.57 | 9.71 | 8.43 |
4.58 | 9.70 | 8.50 |
4.13 | 448e-3 | -1.98 |
4.12 | -1.02 | -2.34 |
4,11 | -1.17 | -2.14 |
4.10 | -2.92 | -2.43 |
4.09 | -4.63 | -3.30 |
4.08 | -5.91 | -3.18 |
4.07 | -6.97 | -3.40 |
4.06 | -8.17 | -4.24 |
4.05 | -8.13 | -4.28 |
4.04 | -8.52 | -4.47 |
4.03 | -8.76 | -4.77 |
4.02 | -8.89 | -5.27 |
4.01 | -9.01 | -5.45 |
4.0 | -9.08 | -5.44 |
3.99 | -9.10 | -5.85 |
3.98 | -9.11 | -5.91 |
3.97 | -9.11 | -5.93 |
3.96 | -9.12 | -6.16 |
3.95 | -9.12 | -6.18 |
3.94 | -9.13 | -6.34 |
3.93 | -9.13 | -6.49 |
3.92 | -9.12 | -6.49 |
3.91 | -9.13 | -6.61 |
3.90 | -9.11 | -6.55 |
3.89 | -9.11 | -6.70 |
3.88 | -9.10 | -6.46 |
4.13 | ||
I plotted the data from lowest reading on the translation stage to highest and fitted the linear region using Calibrate_QPD.m which is attached.
Data is shown in attached pdf.
The slop of the linear region in V/inch is 112 V/inch. Which means to if the beam moved 8.93 e-3 inches on the QPD in yaw, the yaw readout would change by 1 Volt.
I altered the code to plot in mm and the constant is 4.4 V/mm.
D'oh I read the scale on the translation stage wrong so the x readings are actually lower by a factor of 10.
This makes the slope 44.1 V/mm which is more in line with the 65.11 V/mm Mayank and Shiva found for the QPD calibration here.
Ours could be different because we have a slightly different beam size and we moved the QPD in its housing to centre it which could have changed X to Y coupling in the QPD readout.
This implies our beam diameter on the QPD is around 0.4mm which makes a lot more sense considering the diode is 3mm!
As a cross-check we used the QPD 'bullseye' readout unit and Rahul changed the translation stage in yaw and we measured the beam dropping from 10400 counts in the middle of the QPP to 100s of counts at the edges.
Translation Stage [inch] | QPD Sum Counts |
---|---|
0.413 | 10400 |
0.365 | 500 |
0.413 | 10400 |
0.49 | 400 |
diode size ~ ((0.49-0.365)*0.0254*1000) = 3.175 mm.
I redid the graphs for the horizontal motion of the input beam to X motion on the QPD with better labels (first attached graph) and did a fit for the Y data on the QPD collected at each horizontal position of the input beam (second attached graph). The third graph attached is comparing both fits on one graph.
If we take into account the input beam horizontal axis is not aligned with the QPD, we can work out the resultant calibration relative to the mirror displacement as:
V change along mirror displacement axis = sqrt((change V in X)^2 + (change V in Y)^2)
Calibration = V change along mirror displacemnt axis/change in mirror position
= 4.644 V/mm.
angle of QPD horizontal axis with mirror displacement axis = tan^-1(Voltage change V in Y/ Voltage change in X) = 38.8 degrees.
I got the above caluclation of the QPD calibration in the horizontal direction wrong as I use the total change in voltage we measured across the whole range of horizontal scan and not just the linear region where the beam is close to centred on the QPD.
The horizontal beam scan calibration is actually:
sqrt(11.8^2 + 44.1^2) = 10.6 V/mm
with an angle of tan^-1(11.8/44.1) = 14.9 degrees to the X direction on the QPD.