For Modelling of the OLTF, I measured the response of the BS suspension. I used the OSEM sensor for measurement. The attatchment1 is the measured TF from C1:SUS-BS_LSC_EXC to C1:SUS-BS_SUSPOS_IN1 with exciting with random force. The measured data was fitted and the resonant frequency is 1.029(±0.005) Hz and quality factor is 12.25 (± 0.2). Additionally I did same measurement for ITMX and ITMY. The attachment 2 and 3 are the results for ITMX and ITMY. Each eigenfrequency and Q are 1.063 (±0.008) Hz and 7.33 (±0.13) (ITMX), 1.022 (±0.005) Hz and 9.41 (±0.09) (ITMY).
After that, I locked the MICH with AS55, and measured the PSD of error signal. I compensated the that PSD by the modelled OLTF with this suspension TF and the servo TF. The result is in attachment 4. Above 1 Hz it is quite close to the previous data by Keiko (elog#6385) But below 1 Hz there is a large dip. The error signal has also this dip. I looked for a integral filter between 0.2 Hz and 1 Hz, but I connot find a such filter. And when I locked MICH with using ASDC, there was same dip at same frequency. I don't think it's true free running noise, and I will try to fix it.
I completely forgot to mention that I fitted the modelled OLTF into the measured OLTF. I used the fitted OLTF for compensation.
I made sure the yesterday's result was collect. I measured not only the error signal but also the feedback signal. And I compared those signals and measured the TF in order to confirm my servo filter model is not wrong.
The reason of dip at low frequency region is maybe the coherence of the ground motion. The ITMX and ITMY suspensions are put close. If ground motion has coherence, the mirrors move in common mode. That will suppress the free running noise. The attachment is the free running noise of Sep 13rd and Sep 12nd.
I found the bug in my calibration code, and I fixed it.
And I put the white Gaussian noise on the BS actuator, and calibrated to the differential length with my new code. We already know the efficiency of the actuator(elog#8242), so I could estimate how much I put the disturbance and compare the two values. The result is in attachment 1. x_exc means the value of the disturbance.
You can see the PSD of the differential motion decrease factor of 3 by decreasing the disturbance by factor of 3 (except for the region from 1 Hz to 5 Hz), and the value at lower frequency than resonant frequency of the suspension is comparable to the value estimated with the actuator efficiency. Also there is no dip when I put the larger disturbance than free running noise.
Between 1 Hz and 5 Hz there seems to be a resonance of something (seismic stack?). And also on resonance of the suspension there seems to be some other noise source. One possibility is the active damping of each suspension.
Actually still there seems to be a dip between 0.1 Hz and 1 Hz. But if you consider about those effect, I think this result doesn't seems to be so strange. But according to the documentation of LIGO document-T000058, which I found the seismic motion in 40 m Lab is written in, the seismic motion at 0.1 Hz is 10^-7. I'm not sure about this factor of 10 difference. One possibility is the geophone doesn't have good sensitivity at low frequency. I'm still not sure this result is really collect.
I update the LSC calibration screen. This screen is for real time calibration of each DOF with using error signal and control signal. The formula of the calibration is
x_dis = V_err/H + A V_fb
,where x_dis is the disturbance without surpression, V_err and V_fb are error signal and control signal, H is the transfer function from the displacement to output and A is the efficiency of the actuator.
I will put the filter of 1/H into the CINV filter bank and actuator efficiency into the A filter bank.
I update the LSC calibration screen. This screen is for real time calibration of each DOF with using error signal and control signal. The formula of the calibration is
I fixed the filter of the MICH real-time calibration. You can find C1CAL screen from the LSC menu 'calibration' of sitemap.
C1CAL_MICH_CINV : the servo to convert the error signal to displacement.
the inverse of the transfer function from the distance to the error signal, which has the unit of count/m. In the formula this filter is represented by 1/H.
I assume this H is independent of frequency and time, and I calculated by the amplitude of the fringe of error signal. But it may change every day by drift of laser intensity and so on. So we should follow the actual H somehow. The temporary value of H is 3.76*10^7 count/m .
C1CAL_MICH_A : the servo to convert the feedback signal to displacement. In formula This transfer function is represented by A
the transfer function of the suspension of the BS. This is modeled from the measurement in elog#9127. The resonant frequency is 1.029 Hz and Q is 12.25.
the response of the actuator on BS_SUS, which has the unit of m/count. The value is 1.99*10^-8 m/count. This value is measured in the measurement in elog#9121.
C1CAL_MICH_W : the servo to handle the calibrated signal.
the filter to convert the unit of signal from m to um. When this filter is on, the output is written in unit of um.
I measured the power spectrum of the calibrated free running noise. The measured port was C!CAL_MICH_W_OUT. The result is in attachment 1. Also in this figure there are the plots of the Verr/H and Vfb*A.
In low frequency region, where control loop suppresses the disturbance, you can see that the displacement is equal to the displacement of actuation (I'm not sure what happens at the point of 0.03Hz), and in high frequency region, where control loop doesn't work, the displacement is equal to the value of the Verr divided by MICH sensitivity. Also this result is similar to the my calibration result.elog#9131
The real time calibration system is not correct in high frequency.
The attachment are the plot of two free running noise. Blue curve is the plot of noise calibrated with OLTF. Green one is the just fft analysed signal of the real time calibration system output. You can see the ripple in high frequency region in green curve. That is because the anti-aliasing filter and digital anti-aliasing filter. I assume the sensitivity of MI as constant but Rana mentioned that we should take these filters into account.
modeled OLTF and sensitivity H
I put the AA filter and DAA filter effects into matlab calibration script. The attachment 2 is the modeled sensitivity of the MICH. You can find each filter properties in elog#8555 (analog AA filter) and in elog#3961. I estimate the H gain by measuring the fringe. The attachment 3 is the plot of fringe and I averaged with green points. The actual number is 3.48e7 count/m.
attachment 2: the sensitivitiy of MICH
attachment 3: fringe of the MICH
I modeled OLTF with this H and the fitted into the measurement data. That is in attachment 4. In this OLTF I also included the DAI filter and AI filter, and ' sample and hold circuit' of DAC TF . These are mentioned in two references. Additionally I added the time delay 309.6 us. Yuta mentioned that in C1SUS has 125us time delay. In MICH control we have also C1LSC , so I think this time delay is reasonable. I compensated the error signal with these OLTF and MICH sensitivity.
attachment 4: OLTF of the MICH control
You can see that the ripple is gone in blue curve and after 5 kHz the curve is flat.
I'm trying to put the inverted AA filter and DAA filter in C1CAL_INCV servo. But the ploblem is the difference of sampling frequency, so I couldn't fix yet. One possibility is putting approximated filter. I hope I will find some good way to design these filters.
I esitimated the FPMI noise propagated from the residual noise of IR PDH control of both ARMS. I will summarize and write these staff in this afternoon.
Then we can estimate the noises.
Measurement with ARMs
ITMX: 5.0843e-9 /f^2 [m/count]
ITMY: 4.9677e-9 / f^2 [m/count]
In high frequency region there is the difference between xarm and yarm. These difference are already there in error signal. I'm not sure where these noise comes from. We will make measurement with Green PDH from tomorrow, so we can also check with those measurement.
In other region the two noises are very close and also very similar to the plot of the seismic motion in the control room (attached on the front of TV screen).
Measurement with FPMI
i)By locking the FPMI with AS55Q and arms using POX,POY we measured the OLTF on AS55Q, the response from BS actuation to error signal on AS55Q for H_mich. The fitted, measured OLTF and the residual function is in attachment1. I fitted two parameters and they are time-delay and the gain. The time delay is -275 usec. The time delay in three different control are almost same. The response from BS to AS55Q is in attachment 2.
With these two measuremets, I calclated the H_mich in FPMI. This H_mich should be different from simple MI because the cavity refrectivity is different from the front mirror. Acrually it changed and the value was
Hmich = 4.4026e7
ii) I excited the ETMX and ETMY and measure the response from actuation to the error signal of MICH on AS55Q. The response is in attachment 3 and 4. from these result I calculated the H_L-l by using the formula as I mentioned. The value was
H_Lx-l = 175.7650 (XARM)
H_Ly-l = 169.8451 (YARM)
iii) I measured the error signal of MICH and XARM and YARM and with measured H_L-l, I estimated the FPMI noise caused by ARM locking. You can see in the higher frequency region than 10 Hz is dominated by noise caused by ARM control in-loop noises. 150 Hz and 220Hz are the UGF of each arms, so the two peaks are caused by arm control. You can see the small difference between FPMI noise and noise from arms. There are two possibilities, one is that these measurement is not same time measurement so they should have small difference. and other possibility is the error of the caliculation. But I think it doesn't look so bad estimation.
We will do same measurement with lock the arms the ALS system on tomorrow. Then we will check the PDH servo or other noise source and investigate the ALS system
Hidden in Nakano-kun's previous entries was that the phase margin of the X-Arm was only 9 degrees!! This extremely close to instability and makes for huge gain peaking. The feedback loop is increasing noise above 100 Hz rather than suppress. After some tweaks of the LSC filters we got a much more stable loop/.
So we today started to examine the sources of phase lag in the arm cavity sweeps. There were a few unfortunate choices in the XARM LSC filter bank which we tuned to get less delay.
Then I wrote a bunch of detail about how that worked, but the ELOG ate my entry because it couldn't handle converting my error signal noise plot into a thumbnail. Then it crashed and I restarted it. We also have now propagated the changes to the Y arm by copy/paste the filters and the result there is pretty much the same: low phase margin is now 38 deg phase margin. Noise is less bad.
I made the plot of the phase of the digital filters which Rana change and also of the AA, AI, DAA, DAI filters. Now the biggest phase delay come from the timedelay of the digital system.
The UGF is around 150 Hz at that frequency the time delay has biggest phase delay. Second one is the FM9 filter (this filter is BOOST filter). Then we have the AA filter, AI filter and so on, but these delay is roughly 5 degree.
As I said in previous entry, the time delay of the XARM control is roughly 300 usec, and we have 120 usec even only in C1SUS. Also between the C!SUS and C1LSC we have another 120 usec time delay. We want to increase the UGF to 300 Hz but because of the time delay of the digital system we cannot increase. So we should fix this problem.
After changing these filters, the FPMI noise is become better at high frequency. Before we have peak around the 100 Hz (because of 8 degree phase margin...), but they are gone. i attached the noise spectrum. This plot is measured by the real time calibration output. But even then, you can see the extra noise around 100 Hz in FPMI conpare to only MICH.
I added the DAQ channel to all output of calibration servo. The name of channels are C1CAL_(plant name)_W_OUT_DQ.
I recompiled and restarted the model. Also I committed the changes to the svn of the calibration model.
I fixed the XARM and YARM real time calibration servo.
I also change the C1CAL_MICH_A servo. Now the actuator response and the suspension TF are combined together and that filter name is BS_act. C1CAL_XARM_A and C1CAL_YARM_A have same kind of filters, ETMX_act and ETMY_act.
There are AI filter in each A servo and inv_AA, inv_DAA filters in CINV servo, but it's doesn't work correctly yet.
We succeeded in stabilizing both the arms using ALS and get IR to resonate at the sametime.
At each step we measured the _PHASE_OUT_Hz calibrated error signals for Y in this configuration so as to get the in-loop noise of ALS control of YARM
1. we stabilized YARM off IR resonance by using ALS, misaligned ETMX, closed XARM green shutter. That means no IR flashing and no green in XARM.
2. we aligned the ETMX with XARM green shutter closed.
3. we opened the green shutter and locked the green laser with PDH to the XARM.
4. we stabilized the XARM using ALS and off resonance for IR.
5.We brought the XARM to IR resonance with YARM stabilized off IR resonance.
6. we brought the YARM to IR resonance
Beat frequencies when both the arms were stabilized and had IR resonating :
X arm beat frequency = 73.2 MHz; Y arm beat frequency = 26.6 MHz.
1.the ALS in-loop noise in X and Y arms with IR off resonance and resonating.
2.the ALS in-loop noise in Y arm in each step from 1 to 6.(will follow soon)
The Y arm ALS in-loop noise doesn't seem to be different in any of the configurations in step 1 to 6. This seems to mean that the ALS of the two arms are decoupled.
Actually we are not sure what changed from the last few days (when we were seeing some sort of coupling between the ALS of X and Y arm) except for YARM green PDH servo gain changed (see this entry),
We locked MICH with 2 arms stabilized by ALS control.
We measured the power spectrum of the LSC-MICH_IN1 at each step so as to know the in-loop noise of MICH. And also we measured the OLTF of MICH loop and the error signal with BS excited at 580 Hz and MICH notch filter at same frequency enabled to obtain the MICH calibration factor.
1. We locked MICH using the AS55Q error signal and fedback to BS actuator. (Red curve)
2. We locked MICH and locked both the arms using POX11 and POY11 error signals and fedback to ETMs actuators.(Blue curve)
3. We stabilized both the arms using ALS. We use the ALS error signals and fedback to ETMs actuators. And then we locked MICH.(Magenta curve)
The green and brown curve are the ALS in-loop noise, which is the _PHASE_OUT_Hz calibrated error signals. So for these two curves the unit of vertical axis is Hz/rHz. The other curves are the MICH in-loop noises and these are not calibrated. So for these curves the unit of vertical axis is counts/rHz.
The UGF of MICH loop is 10 Hz with phase margin of 45 degrees (measured today). The FPMI noise with ALS stabilized arms is much larger than the FPMI with IR PDH locked arms above 30 Hz. That is because the ALS arm stability is not as good as the stability of PDH locked arms. We have to analyze and verify the calibrated numbers for FPMI + ALS with model.
We replaced the laser for optical lever of ETMY. And also we aligned the path so that beam spot hits the center for each optics. I attached the spectrum of the SUS-ETMY_OPLEV_SUM, the red curve is with old laser, and blue curve is with the new laser. We also measured without laser so as to measure the QPD dark noise (green curve). The change is significant, and seems much closer to other oplev spectrum.(Brown curve is the oplev spectrum of ITMY)
The new laser is:
Manufacture name: JDSU, Model number: 1103P, Serial number: PA892324
The injection power is 3.7 mW and the out coming power is 197 uW (measured just before the QPD). The output value of the SUS-ETMY_OPLEV_SUM is about 8500.
First we measure 2 spectrum ( including the dark noise). After that we replace the laser and align the optical lever path. We changed the post of one of the mirror (just before the QPD) because the hight was too low. Inside of the chamber is darker than before - actually we had scattering light inside the chamber before. We dumped the reflected light from QPD. And then we measured the spectrum of the oplev output. I also aligned oplev of ETMY after restoring the YARM configuration using IFO configure screen.
We don't know actually what was the problem, laser quality or the scattering light or some clipping. But the oplev seems to be better.
Steve: Atm2 shows increased gains correction later for UGF elog 9206
I wrote the down script for ALS. This script is (script)/ALS/ALSdown.py When this script is running, it watches the feedback signal of the ALS control loop so as to shut down the servo immediately when the suspension is kicked.
When the value of C1:ALS-X(Y)ARM_OUT becomes larger than the threshold (right now it is 4500 counts), it changes the servo gain to 0, turns off all filters except for FM5 (the filter for phase compensation), resets the history of the phase tracker of each arm and prints the time on window when the suspension kicked
I put the switch on the C1ALS screen, and if you push this switch the window will open (like when you turn on the c1ass script) and the script start to run. For stopping this script, you have to close that window or press Ctrl + C on that window. This is little bit inconvenient, but we will make autolocker script for ALS and this downscript will be included that script soon. So I think it is enough to protect the suspensions right now.
I modified the ALS down script. When the value of C1:ALS-X(Y)ARM_OUT becomes larger than the threshold, it turn off the output ON/OFF switch immediately. That is because the ALS servo has ramp time. When script changes the gain to 0, it takes some seconds. That is not good for suspensions.
After changing servo gain to 0 and turning off the filters, the script waits ramp time and turn on the servo output switch.
Our goal is to realize PRMI+one arm again. However we found that the noise level of the Y-arm is worse than before (entry).
Today we went through into the servo gains of the ALS related loops.
- What we did
Step 1 to 6 is for Yarm
Alignment of the cavity and the green:
1. Locked arms using IR PDH, aligned the green beam to increase the transmission. Now the value of ALS-TRY_OUTPUT is more than 0.8.
Checking and adjustment of the end green PDH gain:
2. Measured the OLTF of green PDH loop.
3. The gain of the PDH box was 8.2. We found that the UGF was too high and the phase mergin was too low (20deg)
Therefore, the gain was reduced to the gain to 6.8. Now, the UGF and phase margin are 17.7 kHz, 41.96 degree, respectively.
Phase tracker loop:
4. Measured the OLTF of the phase tracker loop. The UGF was 2 kHz, and phase margin was 45 degree.
We found that these were already the nominal and optimized numbers.
For a reference: the filter bank C1:ALS-BEATX_FINE_PHASE has the gain of 110.
5. Disable the IR PDH lock, and stabilized Yarm by ALS. We measured the OLTF of the ALS loop (attachment 1).
The UGF and phase margin were turned out to be 125 Hz and 41 degree. respectively. This looks pretty optimal.
The ALS servo gain (the gain of the C1:ALS-YARM module) was 15.0.
6. We measured the in-loop noise of the ALS loop (C1:BEATY_FINE_PHASE_OUT_HZ) (attachment 2).
The comparison of the in-loop performance is discussed below.
After these adjustment, we found that the ALS in-loop noise of Yarm decreased in high frequency band.
(see this entry for the comparison. Sorry for my laziness! I don't have the overlaid plot)
If we believe this is true, lowering the end PDH gain improved the noise level between 100Hz to 1kHz.
This sounds weird as we decreased the PDH gain, rather than increased. We should confirm this effect by increasing the gain.
Now the in-loop RMS is started to be dominated by the peaks at 3, 16, and 24 Hz.
We should compare the current in-loop spectrum with the previous spectrum when the ALS was working fine.
By the way:
We suffered from frequent disruptions of the ALS servo during our investigation.
As we speculated that this was caused by the malfunction of the green PDH loop, we left the arm still and observed
how the green PDH lock is robust. Our discovery was that the green PDH loop had frequent interruptions (every 5~10min).
From this observation, we strongly feel that we need to look into the entire end PDH loop.
I centered the oplev of the ETMY, because I found that Yarm lost lock every 10 minutes, and the ETMY oplev was misaligned very much. I attached the 40 minutes trend of oplev and LSC-TRY. Yarm looks more stable. After centering of the oplev, the YARM looks to be more stable.
We found that we need to look into the entire end PDH loop to figure out what causes the worse noise level of the Y-arm than before.(entry)
Today, I measured in-loop noise of the end PDH loop and the ALS loop with different end PDH servo gain of Y-arm to make sure the PDH servo gain change the noise level of the ALS control loop.
- What I did
Measuring the OLTF of the end PDH loop:
1. Measured the OLTF of the PDH loop with the end PDH servo gain 6 and 7.
The UGF and phase margine: 16 kHz and 53 degree(gain 7)
7.8 kHz and 86 degree(gain 6)
I couldn't measure the OLTF with higher servo gain than 7 because the loop was not stable enough. I guess that is because of the noise of the SR560, which I used for node of the excitation signal.
Calibration of the end PDH error signal
2. Locked the cavity using IR and turn on the notch filter at 580 Hz of the C1:LSC-XARM. Excited the ETMY using awg with sinusoidal signal at 580 Hz. Set the end PDH servo gain to 6 and measured error signal of the end PDH. The calibration factor of the end PDH error signal H is calculated by
H = abs(G + 1) / A * Verr / Vin
where G is the OLTF of the end PDH, A is the actuator response of the ETMY, Vin is the amplitude of the excitation signal and Verr is the error signal at 580 Hz. This H convert the error signal to the fluctuation of the cavity length, so it has the unit of V/m. We can change that unit to V/Hz by multiplying f/L, where f is the laser frequency of IR and L is the length of the arm. In this case the H convert the error signal to the fluctuation of the resonant frequency of the cavity.
The actual number was
H = 1.4e7 [V/m] (2.0e-6 [V/Hz])
In-loop noise of the end PDH loop
3. Measured the error signal of the PDH loop with the end PDH servo gain of 6.0, 7.0, 8.0 and 9.0. I calibrated these signals with above H, so these unit is Hz/rHz. I attached the result of these in-loop noise. When the end PDH servo gain is 9.0, the end PDH loop looks unstable. And 8.0 looks to be the optimal gain in terms of the in-loop noise of end PDH loop.
ALS in-loop noise:
4. Stabilized the Y-arm with ALS control loop with different end PDH servo gain, and measured in-loop noise of the ALS control loop. I attached these results and discussed about this results below.
Now we can say that too high PDH servo gain makes ALS loop very noisy. Compare to when the PDH servo gain is 7 or 8, the ALS in-loop noise is roughly 4 times higher when the PDH servo gain is 9.0, which means the PDH loop is not stable. However between 100 Hz and the end PDH in-loop noise has no big difference between when the servo gain is 6 and 9. If this high frequency noise comes from the end PDH control and this effect is linear, these noises should be same level. Also the PDH servo gain of 7.0 looks optimal gain in terms of the in-loop noise of ALS control loop, although the 8.0 has smallest end PDH in-loop noise. Actually PDH in-loop noise are smaller than ALS in-loop noise.
I'm wondering what causes the 60 Hz peak in black curve. When the gain become higher, the peak at 60 Hz looks to become larger. The UGF of the ALS loop is above 100Hz, so it's not because of that. I feel there is some hint for understanding this result in this peak.
From this observation, I could make sure that the end PDH servo gain change the ALS in-loop noise, but that effect doesn't look so simple.
By the way
We should take care about 60 Hz comb peaks. You can see huge peaks in PDH in-loop noise and also in ALS in-loop noise.
I wrote the script to scan the cavity using ALS until it finds IR resonance . This script is (script)/ALS/ALSfindIRresonance.py I attached the time series of the C1:ALS-OFFSETTER and IR transmission of XARM when the script was working.
When you start this script, it start rough scan. It steps the offset of the C1:ALS-OFFSETER with ramp time, and for each step it checks the value of C1:LSC-TR. At rough scan, one step is 0.1 count. When IR transmission become larger than threshold, this script start fine scan. In fine scan, this script steps the offset by 0.01 for the range of 2. For each step, C1:LSC_TR value is measured, and after fine scan it set the offset to the value which had the maximal C1:LSC-TR.
I put new button 'Scan %ARM' to the ALS screen. You can run this script by pushing that button.
For PRMI + 2arm, we tried to make the ALS control noise better. As this entry we had huge 60 Hz comb noise in PDH loop of YARM.
So we tried to figure out the problem and fix it.
We checked which power supply the staff in Y-end are connected to, and change some of them to connect to 1Y4 AC power supply from wall AC. What we changed was
1.Main end laser
3.Green REFL PD
We checked error signal of PDH control and compared before and after. The 60 Hz peak get better from -80 dBVpk to -90 dBVpk. Also I attached the plot of XARM, privious YARM (the data of Yesterday night), and current YARM ALS in-loop noises. The RMS of ALS in-loop noise of Y-arm get better by factor of 2. However, even the 60 Hz comb noise get better than before, RMS get worse by comb noise.
We would like to make these noise better at least until these noises don't affect to RMS, so we should continue to check.
PSL temperature changed
The beat note of Xarm looked somehow strange before (elog). It should be the highest when the green transmission power is highest, in other words when the end green PDH locks with a TEM00 mode. But it was not like that. When the end PDH locked with other modes (GTRX: below 0.3), the beat note was higher than TEM00 mode (GTRX: around 0.5).
We guessed that end green laser was somewhere around the point where there were 2 stable TEM00 modes . In order to move away from this unstable region of the end laser, we changed PSL temperature to obtain beat note at a different green laser frequency where we do not have any of the weird modes oscillating.
We changed the PSL temperature from 31.63 degree to 31.33 degree. We measured the in-loop noise of ALS loop and I attached it. There is not big difference in Yarm, but the Xarm in-loop noise become better in high frequency region. We think before the xend green laser was in a not-so-good state and the laser had more frequency noise then.
After change PSL temperature, Xarm ALS is so stable. Actually Xarm is being locked right now and it is locked for more than 50 minutes!!
Although the Xarm ALS is so stable, Yarm ALS is not stable right now. It lost lock by ~5min. We don't know what is the reason, so we will try to fix it tomorrow.
As this entry, Yarm ALS is not stable enough to lock PRMI + 2 arms. We tried to figure out what is the reason.
What we did
Check connection and alignment
1. Check the Green REFL PD.
Reflection is hitting the center of PD.
2. Check all the BNC connections
All connection are fine.
3. Check which power supply the PDH box is connected to.
PDH box is connected to 1Y4 AC power supply.
Check the control signal and error signal
4. Connected the PZT OUTMON to PC
Before the PZT output was not connected to the monitor channel. We connected that.
5. Saw the time series of the error signal and control signal (PZT output)
When the Yarm lost end PDH lock, we found that control signal kicked the PZT of end green laser. And also we saw the saturation of control signal. We are not sure where this saturation comes from.
With these check, we couldn't find any problem in connection or alignment. But the PDH control signal looks somehow strange. We tried to compare the Yarm signals with that of the Xarm, but we could not conclude anything meaningful.
We don't understand right now but we will continue to check that. We will add more details to the discussion once we have looked into the PDH box signals using oscilloscope.
In 2arms + MICH configuration, residual motion of the cavity will couple with MICH signal. When cavity length change, the reflectivity of cavity also change. And that cause the phase shift in reflected light. That phase shift is detected in MICH signal. When we try to lock the DRMI + arm, that coupling will be problem for lock acquisition. For practice to estimate that coupling, I estimated the coupling between the cavity motion and the AS55Q signal.
What I did
- Measurement steps
I did the same measurement as that of this entry. For the estimation below steps are needed. The detail of each step will be written below.
--Measurement and calibration of the AS55Q error signal with MICH + 2arms locked by ALS control
--Measurement of the ALS in-loop noise and estimation of residual motion of the cavities.
--Calibration of the coupling from residual arm motion to AS55Q signal
- Calibration of the AS55Q signal
1. Sensor gain estimation
We used the same method as the previous entry,
We excited the BS at 580 Hz with a given amplitude (Vin). We enabled the notch filter at 580 Hz in the LSC MICH servo. We measured the peak height (Verr) of the AS55Q error signal. We used the actuator response (A_bs) of BS measured in this entry.
We can get the sensor gain (H) of AS55Q in unit of count/m
H = ------- -------
By this calculation H = 4.2e+07.
2. Fitting of OLTF for the MICH loop
We measured the OLTF of the MICH loop. Modelled OLTF is fitted into the measurement data. That modelled OLTF includes the actuator response of BS, the MICH servo filters, DAI,DAA,AI,AA filters, the TF of sample and hold circuit. (About DAI, DAA filters and S/H circuit please read this entry. About AI,AA filters please read this entry) Also I put time-delay into that OLTF. I estimated that time-delay and the gain of OLTF by fitting. The time delay was 311usec.
3. Estimation of the MICH free running noise
With modeled OLTF, I estimated the MICH free running noise.
Estimation of the coupling from residual cavity motion to AS55Q signal
The ALS in-loop noise data has the unit of Hz/rHz (disturbance of the cavity resonant frequency). By multiplying L_arm/f_laser we can convert the unit to m/rHz (disturbance of the cavity length) .
I used the same coupling constant between residual motion of cavity and MICH noise as this entry. For estimation of the coupling constant, we excited ETMs and measured the TF from excitation signal to AS55Q error signal. I assumed the cavity pole as 4000 Hz. The result is discussed below
ALS in-loop noise include the sensor noise. in high frequency region the in-loop noise is dominated by the sensor noise. So in this region in-loop noise does not mean actual residual motion of the cavity. And this sensor noise pushes the mirror. So we have to estimate the actual motion of the cavity by multiplying the servo transfer function of the control in this region.
I made 2 plots. Both include the MICH free running noise and estimated coupling noise from both arms. In one plot, for estimation of the coupling I multiplied only coupling constant to calibrated in-loop noise of the ALS loop. In another plot, I multiplied coupling constant and OLTF of ALS loop in order to estimate the actual motion of the cavity. If the 3 curves are coincide in first plot, that means the ALS in-loop noise is same as the residual cavity motion in that region and the MICH free running noise is dominated by coupling from residual cavity motion. If those curves are coincide in second plot, that means the ALS in-loop noise is sensor noise in that region.
Above 40 Hz, the 3 curves are totally in coincident in first plot. On the other hand in second plot the 3 curves look similar in this region. That may mean above 40 Hz the ALS noise are dominated by sensor noise and MICH free running noise is dominated by the coupling from residual cavity motion. Also in the region between 10 Hz and 40 Hz, the MICH free running noise seems to be dominated by coupling from cavity motion.
In second plot, the coupling from cavity motion is overestimated. It's possibly because of overestimation of coupling constant, but I'm not sure.
Koji mentioned that we should measure the residual motion of the cavity by using POX and POY. Now the ALS is much more stable than before, so I think we can easily do the measurement again with out of loop measurement. That will be more strait forward measurement.
Control signal measurement of end PDH control
The Yarm ALS wasn't robust. Yesterdays night, we found that suspension kicked by something and that was the reason why the end PDH control lost lock. To make sure that the PDH loop itself is robust, I measured control signals of End PDH loops. When the gain inclease, the peak at UGF appeared and become unstable. Both arms does not seems unstable before the peaks appear.
Xarm PDH servo gain optimization
I optimized the x end PDH servo gain with measuring OLTF. Now the servo gain is 5.0. UGF is around 10 kHz and phase margin is 40 degree.
Also I measured out of loop noise. I locked the arm using IR PDH, and measure the ALS error signal. The high frequency noise become better.
I calibrated the ALS-OFFSETTER output.
I measured the FSR of cavity in unit of counts. That was 395 counts. Our cavity FSR is 3.8 MHz, so 1 count of the OFFSETTER output is 9.7 kHz.
As Jenne's Elog we want to see Spectrum and time series of REFL 165 (our PRMI LSC locking PD) to see if the signal is saturated while bring the arms into resonance.
I started to connect the spectrum analyser and the 'scope to REFL165 output.
Directional coupler (Mini=-circuits ZMDC-10-2 ZMDC-20-3) was connected just before the dimod boad input. The main output of coupler is plugged into demod board's input.The other output of the coupler is connected to AG4395A using BNC cable.
The spectrum analyser output can be read using netgpibdata in control room. The IP address is 192.168.113.108 and the GPIB address is 17. For this I dissconected the network hub from another AG4395A, which is at the front of 1X2 lack.
I didn't connected the 300 MHz 'scope right now, but tomorrow it will be connected using power splitter and also be able to get data by internet. For connect 'scope to network, I disconected the network hub from SR785.
When PRMI + 2arms are locked yesterday, we heard the noise from suspension violin mode. For attenuation of that noise, we should design the resonant filter at that frequency and put into the ALS servo. I tried to measure the violin mode of ETMs SUS.
1.The arms were locked by IR PDH. I used awggui to excite the suspention. I injected the Normal waveform, 10 Hz of bandwidth wave into C1:SUS-ETMs_ULCOIL_EXC. I put cheby filter in the FIlter of awggui. The order of that filter was 4, that has same bandwidth as that of injection wave and ripple was 4dB. I increase the injection gain with some ramp time(5sec). I swept from 600 Hz to 700 Hz. During that injection I saw the PDH error signal (POX11I and POY11I) in order to find resonance peak of violin mode.
In ETMX resonances were easily found. That were at 631 Hz and 691 Hz. the 631 Hz peak was seen ALS error signal yesterday. On the other hand, I couldn't find ETMY violin mode. No peaks appeared any frequency.
2. For find the ETMY violin mode, I used dtt swept sine measurement. The excitation channel was C1:SUS-ETMs_ULCOIL_EXC. I measured the TF from excitation channel to POX11I and POY11I error signal. The measurement range was above 400 Hz and below 1000Hz,. The number of point is 600. I attached that result.
In ETMX curve, the coherence become bad near the resonant frequency of violin mode and also the TF is large. Although ETMX violin modes are obvious, ETMY violin modes are not visible. At 660 Hz, 780 Hz, 900 Hz the coherence is not good. That is because 60 Hz comb noise.
I attached the spectrum of the POX and POY error signal. Black and red curve is measured different time. I didn't inject any signal in both measurement, but the violin mode excitation has huge difference. Also there are peaks at beat frequency between violin mode and bounce mode(16 Hz), yaw motion(3 Hz). In ALS in-loop noise or XARM in-loop measurement, sometimes this region had big spikes. That was because of this resonance. And also that resonance peak couples to POY11I.
I will measure the Q and design the resonant filter for ALS.
I measured the spectrum of the REFL165 output using AG4395A. As this entry we put the directional coupler between REFL165 output and demod board input, so I measure the signal from the coupler during the PRMI was locked.
After measure REFL165, I also measured REFL55 output in order to make sure that the signal is not smaller than noise because of coupler. I terminated the couple output of coupler on the REFL165, and take signal from REFL55 output port directly. Both plots seems same except for around the resonant frequency of each PDs. From this plot we cannot say that the coupler reduce signal to spectrum analyser too much.
After this measurement I reconnected the REFL165 to analyser and reconnected the REFL55 output to demod board.
As Jenne's Elog we want to see Spectrum and time series of REFL 165 (our PRMI LSC locking PD) to see if the signal is saturated while bring the arms into resonance.
I started to connect the spectrum analyser and the 'scope to REFL165 output.
We changed the Directional coupler from ZMDC-20-3 to ZMDC-20-5-S+ because that coupler seemed to introduce some high frequency noise.
I connected the 'scope between REFL165 output and demod board input. I split the signal from coupler using the splitter (Mini-Circuits ZFSC-2-5). One signal is going to 'scope CH1 and the other is going to spectrum analyzer. I connected the 'scope to 40MARS. The IP adress is 192.168.113.25. I connected that by cabling from 1X2.
The command to get the data from spectrum analyzer right now
From command line, put ./netgpibdata -i 192.168.113.108 -d AG4395A -a 17 -f meas01
(EDIT JCD: You must first be in the correct folder: /opt/rtcds/caltech/c1/scripts/general/netgpibdata/)
(EDIT JCD again: "meas01" in the command line instruction will be the name of the filename. Also, the output file meas01.dat has a comment in the first line that must be deleted before you can plot the data. This sucks, and we should write a script to strip that line, then make nice plots.)
Please take notice that although IP address of AG4395A is same as written in the help of netgpibdata, the GPIB address is not same. It's 17.
How to use 'scope from control room.
Open the browser. Put the IP adress of 'scope (192.168.113.25) into adrress bar of the browser. If it's on the network, below screen will open.
You can control 'scope, get the data, and so on from control room.
Please take notice that Google Chrome cannot connect the 'scope. So you have to use the Firefox or other browser.
We lowered the c1iscey machine to make space upside of the computer for heat flow.
First we turned off the computer. And then we droped the computer down by 1 notches in the rack. Now the upside and downside spaces are almost same. We restarted the computer after that and we leave the door open.
We took a bunch of measurements. Transfer function and power spectrum using DTT. They will be used to obtain calibrated MICH in-loop and free-running noise. Detail Elog with plots will follow very soon.
Estimation of free-running MICH displacement noise:
Method 1. Assuming AS55_Q_err to be a linear sensor, as shown in (1) of figure below, free-running MICH noise (V_d) can be estimated by measuring V_err and the OLTF G. H can be estimated by using method explained in elog
Method 2. Considering that the AS55_Q signal might be distorted or saturated, method 1 may not be precise. In method 2, we will use the ASDC as the sensor (S' in (3)) instead and lock MICH using ASDC in mid-fringe to calibrate the ITM actuators.
What we did:
1. Estimate H' from free-running ASDC signal (bright to dark fringe).
2. With MICH locked on ASDC, give an excitation signal to C1:LSC-SUS_XXXX_EXC (XXXX could be ITMX or ITMY) and measure R'. [(3) of schematic]
3. Measure OLTF of MICH locked on ASDC (hence estimate L). [(3) of schematic]
4. With MICH locked on AS55_Q, give an excitation signal to C1:LSC-SUS_XXXX_EXC (XXXX could be ITMX or ITMY) and measure R1. [(2) of the schematic]
OLTF of MICH locked on ASDC
Actuator excitation to MICH transfer function (MICH locked using ASDC)
* y axis (no units)
Actuator excitation to MICH transfer function (MICH locked using AS55Q)
Free-running MICH noise
1. By using the second sensor, we also eliminate the effect of the MICH servo loop locked on AS55_Q (Estimated V_d does not depend on G but only on G').
2. The free-running MICH noise is still suppressed at 1Hz. This should be coming from the effect of the UGF of the loop at ~10Hz and the vicinity to the pendulum frequency at 1Hz.
Edit/Masayuki// This noise curve is not collect, especially in low frequency region. We used the measured OLTF for compensating the free running noise, but that is not collect in low frequency region. So we should model the OLTF and fit that into the measured OLTF. We will fix this soon.
The MC lost lock around 8+hrs ago. The transmission from PMC was 0.77 this morning, so we aligned the PSL to the PMC using the two steering mirrors before the PMC. We brought the PMC transmission to 0.841. We also aligned the MC, and the MC transmission reflection now is 0.59.
This week I wrote Matlab code, most of which can be found in /users/masha
First, I wrote a simulation seismicFilter.m which filters noisy seismic noise with a desired signal of non-seismic noise. The signals are purely simulated, so I played around with zero-pole-gain generation of transfer functions to obtain them. The function takes the number of taps, the filter type (Wiener or adaptive nlms) as well as an iteration step size and number of iterations, and generates PSD plots of the witness signal, the desired signal, the estimated (filtered) signal, and the error. I'm not sure that I am properly implementing the Wiener part of the code, and I assume the line "[W, R, P] = miso_firlev(TAPS, noisySeismicSignal1, seismicSignal2); " generates W, a filter with TAPS number of weights, but then "[y, error] = filter(W, 1, noisySeismicSignal1);" generates an error signal of size TAPS rather than N, the size of the original signal. Perhaps I should calculate error using e(t) = d(t + a) - w(t)*x(t), where "a" is the delay.
I have various screenshots in my directory of what seismicFilter.m generates, and I will take a larger screenshot, as well as generate a learning curve (for error vs. number of taps) when I can use Sasha's computer for a bit, since it both has more computing power and a larger screen.
The funciton filterConvergence.m, meanwhile, is similar, except it takes two file names as real data, and uses realDataFilter.m to run the filtering. Currently, I am working with data from C1:IOO-MC_F_DQ-Online and C1:PEM-SEIS_GUR1_X_IN1_DQ-Online, and I will include screenshots of these once I get on Sasha's computer.
In order to generate the data, meanwhile, I had to modify the python script, and thus wrote mashaImportingData.py for myself. Likewise, plotSignalFromFile.m visualizes this data, both in the time domain and in the frequency domain.
On the side, I wrote an NLMS filter in adaptiveFilterSimulationNLMS.m, and compared is to Matlab's NLMS filter in NLMStest.m (using generated data) and adaptiveFilterSimulation.m using twn input signals. Right now, it's faster on smaller inputs and smaller tap sizes, but then begins to choke and run slower than the Matlab one when these get to big. In order to improve it, I have to develop a better method of generating the initial weights.
As far as machine learning goes, once I find the number of taps for the convergence of both the Wiener filter and the NLMS filter, I will email Denis for further instructions. At some point, however, I should generate learning sets from the seismometers and the MCL (or the DARM), and thus have to find adequate times at which I can take data (probably not from the DARM, however, because it was rarely on).
Thanks for reading!
Last night I (with the help of Jenne and Jenne's advice - not to implicate her in this or anything) changed the filters for GUR1, GUR2, and STS in C1:PEM-RMS, adding a butterworth bandpass filter at each corresponding frequency band as well as a gain to convert from counts to micros/sec, and then adding a low pass filter in case of aliasing upon squaring.
Currently the seismic signals are going crazy, and producing "Nan" output on the strip graph (which leads to the instantaneously sharp spikes - which leads to the entire signal being filled on the visualizer on the wall). I checked the DataViewer output and the tdsdata output using both grep and wc, and it seems that both every single signal point is present and is a real number (also not a small real number, thereby debunking floating-point error). I'm currently not sure why seismic-strip reads out 'Nan' - perhaps because it's taking the log of 0, taking a negative log, taking the root of a negative number, or dividing by zero.
Does anyone know if the seismic-strip Nan issue is a program bug? If it's not (and therefore a filter bug), please let me know as well.
I'll be in lab for the rest of the night changing the butterworth filters to odd-order elliptic filters (at Rana's suggestion), as well as changing the cut-off frequency for the low-pass filters.
I'll E-log about it when I'm done.
Just to be sure that my numbers are correct - The STS, GUR1, and GUR2 channels all have gain 10, right? (I parsed through the e-log, and these seem to be the most recent numbers
Thanks for your help,