40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  PSL, Page 24 of 52  Not logged in ELOG logo
ID Date Authorup Type Category Subject
  913   Fri Apr 13 13:35:37 2012 Tara, FrankSummaryNoiseBudgetPDH readout noise level verification

we re-checked the electronic noise level for each PDH loop and also checked how the noise level rises with a shot noise limited light source (halogen bulb) using the exact same setup as we use daily.
Before we had only checked the individual parts, e.g. the shot noise limit of our RF-PD, not including the rest of our setup (mixer, LO or filter stages). This was just to confirm that nothing is broken and our PDs are still OK.

Measurements were taken right after the mixer / LP-filter, but still connected to PDH servo. This is OUT1 of the common path of the TTFSS-box  and the input on the front of our ACAV PDH servo. We blocked the laser and adjusted the power of the bulb and measured the electronic noise floor using the SR785. The dark noise spectrum is the one already shown in the last noise budget. Below the plots of noise level, measured around 500Hz (100 avgs, wide marker) vs different photocurrents of the PDs. DC impedance is 2kOhms, regular DC level for RCAV is 1.7V and 1.47V for ACAV. RF-impedance is the same as measured some time ago for those diodes. Data in folder 4/11/2012 on svn.

SN_RCAV.png  SN_ACAV.png

Conclusion: New measurements agree very well with the old measurements. So our PDs still work fine and there is no excess noise in our readout we missed.

  2320   Wed Apr 10 19:05:29 2019 UltramanDailyProgressFSSSouth FSS problems


  860   Sat Mar 3 14:53:51 2012 ZachDailyProgressBEATbeat is back


We expect it to be stable by tomorrow afternoon.

 What about my dance party?! 


  862   Sat Mar 3 18:07:15 2012 ZachDailyProgressBEATbeat is back

And I stole one of your air dusters :-)

There used to be TWO label makers in the ATF---one of which looked like that one. What ever happened to those?!


NO!! no dance party for you because you didn't return our label maker.




  1110   Wed Mar 6 15:44:26 2013 ZachDailyProgressTempCtrlHeater for refcav

Is there a reason you don't want to use a Daedalus board (see bunch of ATF entries here). There will need to be some modifications, but besides these minor things it sounds like exactly what you want.

The only major thing is that I stupidly picked the SO8 package version of the BUF634, which can only dissipate less than a watt. Using one of these nifty SO8-to-DIP converters, you can replace it with a TO-220 package and have several watts.

A particularly nice thing is that each board has two channels, if you're into that sort of thing.

Anyway, let me know. I can help you get started when I'm at Caltech later this month if you decide you want it. I need to finish setting up the one for the gyro, anyway.


 To make a low noise current driver, use the BUF634 wrapped around the loop of a low noise opamp (never, ever use the AD797) as illustrated in the BUF634 datasheet.

Don't use a commercial power supply, make a protoboard setup for a NIM box.


  1132   Thu Mar 28 12:36:27 2013 ZachDailyProgressElectronics EquipmentFrequency readout noise of PDH loop

Is this really the input noise of the PDH servo (i.e., output noise / servo TF)? If so, it seems pretty high. With the right components, you should to be able to do ~100x better.


Tara was able to tame the cavity servo loop. The third attachment is the result of several SR785 measurements of the error signal power spectrum. I converted this to a frequency noise power spectrum (fourth attachment) by extracting the voltage/frequency calibration factor from the error signal as follows.


  1166   Wed May 1 11:57:02 2013 ZachNotesPMCDebra matrix for PMC design

I can't take it anymore: what the $#@& is a Debra matrix??


Considerations for PMC design is corrected and updated


  1175   Mon May 13 14:09:36 2013 ZachNotesDAQC2ATF model rebuilt


  2391   Tue Aug 13 17:05:53 2019 aaronDailyProgressNoiseBudgetChecking the differences between old and new noisebudget

Have you seen this related paper on direction dependent loss that might be interesting?

What are the specifics of the discrepancy? If your TR effect changes, it won't have perfect cancellation with TE, so thermo-optic noise could indeed be much worse. 

  2572   Fri May 15 12:09:17 2020 aaronDailyProgressNoiseBudgetBayesian Analysis

Wow, very suggestive ASD. A couple questions/thoughts/concerns:

  • It's typically much easier to overestimate than underestimate the loss angle with a ringdown measurement (eg, you underestimated clamping loss and thus are not dominated by material dissipation). So, it's a little surprising that you would find a higher loss angle than Penn et all. That said, I don't see a model uncertainty for their dilution factors, which can be tricky to model for thin films.
  • If you're assuming a flat prior for bulk loss, you might do the same for shear loss. Since you're measuring shear losses consistent with zero, I'd be interested to see how much if at all this changes your estimate.
  • I'm also surprised that you aren't using the measurements just below 100Hz. These seem to have a spectrum consistent with brownian noise in the bucket between two broad peaks. Were these rejected in your cleaning procedure?
  • Is your procedure for deriving a measured noise Gaussian well justified? Why assume Gaussian measurement noise at all, rather than a probability distribution given by the measured distribution of ASD?
  • It's not clear to me where your estimated Gaussian is coming from. Are you making a statement like "given a choice of model parameters \phi_bulk and \phi_shear, the model predicts a measured ASD at frequency f_m will have mean \mu_m and standard deviation \sigma_m"? 
  • I found taking a deep dive into Feldman Cousins method for constructing frequentist confidence intervals highly instructive for constructing an unbiased likelihood function when you want to exclude a nonphysical region of parameter space. I'll admit both a historical and philosophical bias here though :)
  • Can this method ever reject the hypothesis that you're seeing Brownian noise? I don't see how you could get any distribution other than a half-gaussian peaked at the bulk loss required to explain your noise floor.
    • I think you instead want to construct a likelihood function that tells you whether your noise floor has the frequency dependence of Brownian noise.
  2590   Wed Sep 23 00:21:02 2020 aaronMiscEquipment loanHP 8560E SA to Cryo

I entered CTN just before (Wed Sep 23 00:22:11 2020 ) to borrow a spectrum analyzer, which I took to Cryo. Wore shoe covers, goggles. Sanitized goggles and door after.

  2610   Wed Aug 18 11:12:47 2021 aaronMiscElectronics EquipmentSR560 to cryo

I borrowed one two unused SR560 from CTN to Cryo. The first one had periodic noise at 100 Hz (operated in low noise AC coupled mode, G=100, with a 30 kHz lowpass).

  2598   Thu Nov 26 11:26:14 2020 aguptaSummaryTempCtrlCavity temperature estimate

Measurement and estimation method:

  • 125N-1064 Thermal continuous tuning coefficient is 5 GHz/V
  • The south cavity is locked with nominal settings with slow PID switched on.
  • The cavity was first allowed to equilibrate at the nominal setpoint of cavity heater currents of 0.5 W common power and -0.09358 W Differential power.
  • After more than 9 hours, the cavity heaters are switched off and the cavities are allowed to reach equilibrium with the vacuum can.
  • The slow voltage control of the south cavity moves slowly in response to the temperature change of the cavity.
  • Cavity frequency change to length change factor is \frac{L_{cav} \lambda}{c} m/Hz.
  • Cavity spacer is made out of fused silica whose coefficient of expansion is 5.5\times 10^{-7}$ $\text{K}^{-1} [from Accuratus SiO2 datasheet]
  • Therefore, NPRO temperature tuning slow voltage to cavity temperature conversion factor is:

\frac{5 \times 10^{9}}{1} \frac{Hz}{V} \times \frac{L_{cav} \lambda}{c} \frac{m}{Hz} \times \frac{1 }{L_{cav} 5.5\times 10^{-7}} \frac{K}{m} = 32.265 \frac{K}{V}

  • After waiting for 60 hours, the cavity finally cooled down to equilibrium with the vacuum can. The out-of-loop temperature of the vacuum can at this point is used as the equilibrium temperature of the cold cavity.
  • The voltage change in slow voltage control of south laser from this point to setpoint is used to estimate the cavity temperature at beatnote measurement which came out to be around 37 degrees Celcius. I'm taking a generous uncertainty of \pm 1 ^\circ C during noise budget calculations to account for miscalibration of the vacuum can temperature sensor and other errors in this method.
  • The noise budget calculation was updated, Bayesian inference updated and the results in the paper draft have been updated.


Attachment 1: CavityTemperatureEstimate.pdf
  2180   Wed May 9 00:51:45 2018 anchalDailyProgressBEATBeam Profiling Beatnote detector

PFA the results of beam profile analysis of transmitted laser from south cavity.


We are profiling the transmitted laser beam from the south cavity. All measurements of z-direction are from a reference line marked on the table. A razor blade mounted with a micrometer stand is used to profile the beam. The razor moves in the vertical direction and the whole mount is fixed using holes on the optical table so it moves in steps of 25.4 mm.

The beam is first split using a beam splitter and the other port is used as witness detector. The mean value of voltage from the photodetector over 4s time is normalized by the witness detector mean value to cancel out effects of laser intensity fluctuations. The peak to peak voltage from PD over 4 s is used to estimate the standard deviation of the signal. I assumed the error to be sinusoidal and estimated standard deviation as 1/sqrt(8) times the peak to peak voltage.

The profiles at each z point is then fitted with A*(0.5 - erf(norm_x)) + C where norm_x = (x - mu)*np.sqrt(2)/w . This gives estimates of beam radius w at each z position. This data is then fitted to w0*np.sqrt(1 + ((z-zc)*1064e-6/(np.pi*w0**2))**2) to estimate the beam wasit position and wasit size. I have also added the reduced chi-square values of the fits but I'm not sure how much it matters that our standard deviation is calculated in the manner as explained above.

Attachment 1: FitGraphs.pdf
FitGraphs.pdf FitGraphs.pdf FitGraphs.pdf FitGraphs.pdf FitGraphs.pdf FitGraphs.pdf FitGraphs.pdf FitGraphs.pdf
  2187   Tue May 15 16:53:36 2018 anchalNotesBEATAnalysis for idea of sending beam at Brewster angle to Photo diode

Recently we were given the idea of sending the beam to the photodiode at Brewster angle. If we do so, ideally one particular polarization (parallel to the plane of incidence) will not reflect back. So if we send the beam polarized in this direction (or set the incidence plane such that these conditions are matched), we can minimize the reflection from PD significantly.
Sounded like a good idea, so I started reading about the InGaAs detector we have. Unfortunately, the datasheet of the C30642 detector we use does not mention either the fraction of In in InGaAs or the refractive index of it. So I went into the literature found these two papers:
Kim et al. Applied Physics Let Vol 81, 13 23 (2002) DOI: 10.1063/1.1509093
Adachi et al. Journal of Applied Physics 53, 5863 (1982); doi: 10.1063/1.331425
Using the empirical coefficients and functions from these paper, I calculated the refractive index for InGaAs for various fractions of x and the corresponding Brewster angles (Find Attached).
However, just after doing the analysis, we realized that doing this is not really possible. The Brewster angle is arctan(n2/n1) where n2 is the medium light is going into. This implies the Brewster angle would always be greater than 45 degrees and detector won't really absorb much light at this angle. So currently the conclusion is that this idea won't work.
However, there might be some error in our assumption of InGaAs as a transparent medium as the calculations do not take into account absorption of the photon at all. Attaching the python notebook too in case someone figures this out.

Attachment 1: InGaAsIncidenceAngleAnalysis.pdf
InGaAsIncidenceAngleAnalysis.pdf InGaAsIncidenceAngleAnalysis.pdf
Attachment 2: InGaAsIncidenceAngleAnalysis.zip
  2189   Wed May 16 10:40:06 2018 anchalDailyProgressBEATInstalled Beatnote detector with known beam width at the point

Using the result of the beam profile analysis, I calculated the required position and lens to put in to decrease beam width to about 300 um at the RFPD (1/3 of detector size 2mmx2mm). Attached matlab code for the same. I used a 687.5 mm Fused Silica lens for this purpose. Finally, I installed the beatnote detector after taking beam profiles with the beam profiler and finding the right position. Attached is the screenshot of the beam profile at this position shows that beam has a width of ~300 um. I have positioned the RFPD such that beam is incident at 30 degrees from normal on it.

Attachment 1: Images.pdf
Images.pdf Images.pdf Images.pdf
Attachment 2: RFPDpositioning.zip
  2201   Mon Jun 11 15:03:15 2018 anchalDailyProgressISSLoop Gain Transfer Function analysis on LTspice

With the circuit of Johannes, I ran LT spice analysis with modeling cavity pole and AOM delay to get an estimate of how the loop gain would look like. Attached is a plot of the transfer function of loop gain and the circuit schematic used. Here I used this post of Johannes on elog to use DC Gain of AOM as 1.11 dB. But in case, this changes, I have a running code which will output the new unit gain frequencies and phase margins. I'll implement this into a board soon and move forward by optimizing the choice of elements with help from LISO.
I'm seeking input on anything which makes the frequency curve as shown here less than satisfactory.

Attachment 1: ISSLoopGainAnalysis.pdf
Attachment 2: ISSLoopGainTFwithAOMDCG1.11.pdf
  2202   Wed Jun 13 18:04:32 2018 anchalDailyProgressISSLoop Gain Transfer Function analysis on LTspice

I implemented the feedback part of this circuit and measured the transfer function on SR785. Attached is the measured transfer function. It is close to the one given by LTspice except that there is a nearly flat top between ~100Hz to ~1.3kHz while analytically this was supposed to be a smooth peak.
I checked with attenuating the input signal to make sure the flat top is not due to saturation, it is in fact two peaks close together. By changing a capacitor C10 (see the last post for the circuit)., we can move these peaks closer or further. However, making them move closer decreases the overall gain of the point, so I stuck to 4.7uF value.
I'll now test this circuit with a low pass filter modeling the cavity and some delay for modeling the AOM and see if the loop gain is as expected.


With the circuit of Johannes, I ran LT spice analysis with modeling cavity pole and AOM delay to get an estimate of how the loop gain would look like. Attached is a plot of the transfer function of loop gain and the circuit schematic used. Here I used this post of Johannes on elog to use DC Gain of AOM as 1.11 dB. But in case, this changes, I have a running code which will output the new unit gain frequencies and phase margins. I'll implement this into a board soon and move forward by optimizing the choice of elements with help from LISO.
I'm seeking input on anything which makes the frequency curve as shown here less than satisfactory.


Attachment 1: ISSMeasuredTF06-13-2018.pdf
Attachment 2: ISSLTSpiceTF.pdf
  2204   Thu Jun 14 12:00:50 2018 anchalNotesPMCLatest PMC alignment

PMC in the North path got misaligned while working on the input path. We aligned it back again today. PMC locking method summary:

  • First increase the incoming power to around 13 mW. Make sure you note down the previous input power so that you can go back to it later.
  • Align the input path in order to see some lissajous figures from the output window. The try to minimize the the output path to a spot.
  • Drive the PMC PZT with signal generator at 5 Hz triangular wave with amplitude enough to transverse one full FSR.
  • Using the transmitted light which can be read from the PD measuring reflection from NCAV, try to supress other modes. TEM00 mode would be the dominant mode. Display this signal on oscilloscope trigered by the signal generator.
  • Once this has been supressed enough, align the reflection off the PMC to the PMC reflection PD. Display this signal also in the oscilloscope and align the input path further to supress all other modes as much as possible.
  • Go back to previous input power, connect back the PZT to the rack and wait for it to get autolocked.

We were able to achieve fringe visibility of 76.16% (measured by VIS program in labs programmable calculator). Also, we were able to get rid of all other modes enough that they were not visible anymore in the oscilloscope.

Keywords for future search: North Cavity Pre Mode Cleaner modecleaner visibility PMC


  2205   Mon Jun 18 14:42:45 2018 anchalPhotosISSBreadboard circuit testing

Attached is the image of circuit implemented on breadboard with modelled AOM and cavity as phase shifter and low pass filter respectively.
In the image, all red/orange wires are at +15V, all white/grey wires are GND, all green wires are at -15V, all yellow wires are carrying signal and one violet wire is the voltage offset set to 0V right now. All the opamps are OP27G except the adder and an inverter which are OP27E. The circuit corresponds to the attached LTspice circuit.

Attachment 1: Breadboard_Circuit_Labeled.jpg
Attachment 2: ISSAOMCavity.pdf
  2206   Wed Jun 20 17:54:45 2018 anchalDailyProgressISSLISO Analysis of Feedback Part of the circuit

OUr measurements of the actual circuit showed noise level in the order of several uV/sqrt(Hz). I did the noise analysis on LISO and the results indicate that the second stage amplifier's input current noise is causing most of the noise till around 30 Hz and then its input voltage noise dominates till around 200 kHz. I would work more on identifying ways to reduce the noise, would do the simulation for the loop gain transfer function and would do the stability analysis as well.

Attachment 1: ISSCircuitSchematic.jpg
Attachment 2: ISSLisoNoiseAnalysis.pdf
ISSLisoNoiseAnalysis.pdf ISSLisoNoiseAnalysis.pdf ISSLisoNoiseAnalysis.pdf
Attachment 3: ISS.fil
r R14 510 IN n1
c C7 1u n1 n2
c C4 470p n1 n4
r R15 560k n2 n4
r R16 560k n3 gnd
c C6 1u n3 gnd
op ISS2 op27 n3 n2 n4

r R18 1k n4 n5
c C8 4.7n n5 n7
... 20 more lines ...
  2207   Thu Jun 21 11:43:53 2018 anchalDailyProgressISSLISO Analysis of complete circuit

I did TF, input impedance, opamp stability and noise analyses of the complete circuit with feedback part, modeled AOM (by phase shifter) and modeled Cavity (by LPF+NOT). Attached are the results. In the process, I completed wrapping some more LISO functions in python. We can do calculate input referred noise, input impedance, opamp stability and plot only dominant noise sources. The circuit schematic is attached and for now uses OP27. Next steps are to figure out what adjustments (components and values) can lower the noise. Opamps are in the stable region only.

Attachment 1: ISSAOMCavity.pdf
Attachment 2: ISSAOMCavityNoiseAnalysis.pdf
ISSAOMCavityNoiseAnalysis.pdf ISSAOMCavityNoiseAnalysis.pdf ISSAOMCavityNoiseAnalysis.pdf ISSAOMCavityNoiseAnalysis.pdf ISSAOMCavityNoiseAnalysis.pdf
Attachment 3: ISSAOMCavity.fil
r R14 510 OUT n1
c C7 1u n1 n2
c C4 470p n1 n4
r R15 560k n2 n4
r R16 560k n3 gnd
c C6 1u n3 gnd
op ISS2 op27 n3 n2 n4

r R18 1k n4 n5
c C8 4.7n n5 n7
... 41 more lines ...
  2209   Fri Jul 6 23:43:54 2018 anchalDailyProgressPMCNew modifications to the PMC north board

Using buzzer, we found that the north path PMC responds strongly to buzzing at 484Hz. This was coincidentally the zero of one of the filters inside PMC feedback circuit. We tried to suppress the output with a 10Hz pole passive LPF at the output but it didn't work. On opening the box, we found that the actual circuit has different values and different circuit topology than assumed. In particular, the resistor at the output was found to be 30.9k instead of 1k. This I removed and shorted as we would use a more robust external LPF which does not depend on the capacitance of the cable. Secondly, the circuit topology of the filter which has a pole at 2Hz and zero at 482Hz was different than our schematic. It was a poor design with weird values. I implemented liso fitting in python wrapper and used it to optimize the circuit. Input file and jupyter notebook of optimization is attached. Also, last time Andrew changed R9 to 100 Ohms from 10 Ohms and was skeptic about the opamps stability with it. I ran a stability diagnostic for this part of the circuit as well. Input file U2Buffer.fil and jupyter notebook are attached.


A few more changes to the PMC north board. Hopefully this is the last.

Changing series resistance at the output

There was some limit to the gain before the PMC loop became unstable.  I realized that I hadn't implemented the 10 Hz pole at the output, that could be the reason.  The resistor in series with the output was only 1 kΩ.  The Noliac NAC2124 PZT on the PMC cavity has a specified capacitance of 510 nF and about 5 meters of BNC cabling should have a capacitance of 0.5 nF (for 101pF/m).  This should give a pole of about 312 Hz, we want to bring this down.  I replaced the 1 kΩ series resistance at the HV output with a 30.9 kΩ to bring to pole down to 10 Hz.  

Schematic is updated below.

Removing short from PD RF input

For whatever reason the AC coupling resistor had been deliberately shorted on the PD RF input to the board (C3).  I removed the short.  It is AC coupled again.


Altering the Acromag excitation voltage and divider resistors

I realized running the Acromags off 6 V is a little awkward.  Most power supplies come in other standard values like 5 V, 7.5 V, 9V etc.  I've raised the excitation of the binary channels to 9 V and made some changes to the divider resistors. Resistors on SW1 and SW2 binary engages were changed to equal values of 1790 Ω for R1 and R2 (see option D, attachment, PSL:2058). On the blanking pin used to activate the AD602, equal values for R1 and R2 of 154 Ω were used.  These resistor choices give a high voltage of 4.5 V and a low of 0.66 V.  There is also a margin of error if the power supply used goes a little over voltage.

I've ordered standard barrel 2.1x5.5 mm panel Jacks so that the unit can be powered from a standard 9V plug pack.


Attachment 1: LowPrefFilter.fil
r R11 7.96k IN n1
r R12 79.6k n1 OUT
c C11 0.1u n1 n4
r R13 3301 n4 OUT
op LT1028 LT1028 GND n1 OUT
Attachment 2: PMCLowPrefFilterOpt.ipynb
 "cells": [
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   "outputs": [],
   "source": [
... 706 more lines ...
Attachment 3: U2Buffer.fil
r R10 49.9 IN GND
r R4 220k GND n3
r R5 220k n3 n2
c C9 2u n3 gnd
r R9 1000 n2 gnd
r R2 9.09k n2 OUT
op U2 LT1028 IN n2 OUT
Attachment 4: U2Stability.ipynb
 "cells": [
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   "outputs": [],
   "source": [
... 515 more lines ...
Attachment 5: D980352-A_AWade20180201Mods_--AGupta20180707Mods.pdf
  2211   Thu Jul 12 15:18:26 2018 anchalDailyProgressPMCNew modifications to the PMC north board

We earlier found that the intended LPF isn't working so we thought of this external LPF idea. So I checked today the PZT input with LCR meter to see if it is in good condition or not. It gave C = 406.4nF, L=60.6 mH and R = 31kOhm 17MOhm. From the spec sheet, the C value looks 20% below the rated value but the spec value has uncertainity of +- 15%, so maybe our PZT is still good.

With the measured values, I calculated again (fitted using LISO) what good value of output resistor would make it closest to 10Hz pole. The value came out to be 37.1k Ohm. I have replaced this output resistor with 39k Ohm now. I'm attaching updated schematic for future reference.

keywords for search: PMC North Driver Board Schematic


should probably put back the 30k resistor. It makes a low pass filter with the PZT capacitance (not the cable capacitance). This is to prevent shorting of the HV drive.


Attachment 1: D980352-AGupta20180712Mods.pdf
  2213   Mon Jul 23 18:07:14 2018 anchalDailyProgressISSIntroduced zero to cancel cavity pole. Mostly final circuit.

After discussion with Johannes, I added a zero near the cavity pole to neutralize its effect at higher frequencies. I also replaced the passive high frequency boost with an active one in stage 3. Attached is the new circuit schematic (Mostly final one as it looks good). Also attached are open loop transfer function from LTSpice.
Next steps are to do noise analysis and individual opamp stability analysis in LISO one last time.

Attachment 1: CRYO_ISS2LoopGainTF.pdf
Attachment 2: Cryo_ISS2_AOMCavity_Schematic.pdf
Attachment 3: Cryo_ISS2_AOMCavity_LTSpiceAnalysis.zip
  2215   Tue Jul 24 13:47:48 2018 anchalDailyProgressISSIntroduced zero to cancel cavity pole. Mostly final circuit.

Here is LISO analysis on the version 2 of this circuit. I'll take Johannes' advice and remove the active filter on stage 3 and move the addition to stage 4 in the next version.

The first file is the transfer function and the input impedance of just the feedback circuit (the 5 stages).

The second file is open loop transfer function of feedback circuit with modeled AOM and Cavity, the input referred noise and the opamps'stability in the closed loop.

Attachment 1: Cryo_ISS2_LISO_Analysis.pdf
Cryo_ISS2_LISO_Analysis.pdf Cryo_ISS2_LISO_Analysis.pdf
Attachment 2: CRYO_ISS2AOMCavityLisoAnalysis.pdf
CRYO_ISS2AOMCavityLisoAnalysis.pdf CRYO_ISS2AOMCavityLisoAnalysis.pdf CRYO_ISS2AOMCavityLisoAnalysis.pdf
  2217   Thu Jul 26 18:30:51 2018 anchalDailyProgressISSNoise analysis of soldered circuit

I soldered the servo circuit on a prototype board. The transfer function of the soldered board is matching very well with the analytical calculation. We found a few more corrections required in the circuit relating to the voltage offset compensation resistors. Then I did a complete noise analysis of the circuit using SR785. Attached are the results. First I measured the transfer function of each individual stage by sourcing the input of the circuit and taking the ratio of the output to the input of each stage separately. Then, I used 2 different methods to calculate input referred noise at different stages of the circuit (which are soldered together).
Method 1: I connected a 50 Ohm terminator at the input of the stage and measured output noise of the stage. Then I divided it by the transfer function of the stage.
Method 2: I only measured output noise at the output of each stage. And calculated the input referred noise by dividing the output noise by transfer function and subtracting the excess noise from the previous stage at its input.
In the process, I have written a module which can be used by others too to fit transfer function data and calculate input referred noise in general using SR785. I would put this code on github soon.
It seems that as the LISO analysis shows, most of the noise below 20-30 Hz is due to the amplification of input current noise of the first stage amplifier. Next steps are to figure out a better opamp if any to reduce noise in this region. We are well below the shot noise for 2mW 1550 nm laser above 30 Hz.

Attachment 1: ISS_Noise_Analysis_Method1.pdf
ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf ISS_Noise_Analysis_Method1.pdf
Attachment 2: ISS_Noise_Analysis_Method2.pdf
ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf ISS_Noise_Analysis_Method2.pdf
  2219   Mon Jul 30 13:28:37 2018 anchalDailyProgressISSNoise analysis of soldered circuit

Just replotting the measured noise with LISO prediction for comparison.

Attachment 1: ISS_Noise_Analysis_Meas_vs_LISO.pdf
  2220   Mon Jul 30 16:54:50 2018 anchalDailyProgressISSUnderstanding the ISS box we found

I was given an ISS box which was made in 2013. It is numbered D1300694-v1 and the schematics are present in DCC. I tried to go through the schematic to get an understanding of it and mark the differences of the real circuit on the schematic. PFA a commented schematic which marks the measured component values and shows what is not present on this circuit.

Breif Description of this circuit and what it intended to do:
The circuit is DC coupled and the PD signal first goes through an instrumentation amplifier with about 1.33 gain. Then a 5V reference is subtracted from this signal (so the servo do DC stabalization to keep PD signal at 5V).
Then the signal goes through 3 stages of filtering and amplification.
Stage 1: (Always On) Is a simple gain of 6.36
Stage 2: Is a 554 Hz Zero and 10kHz pole with DC gain of 18 (Called Boost 1)
Stage 3: Is a 0 Hz Pole and 4.57MHz zero with the open loop gain of AD829 at DC. (Called Boost 2)
The Boost 1 and 2 are supposed to start only when rms value of PD signal is below a certain threshold. Currently, this functionality is not working due to a problem in RMS-to-DC converter as specified in elog 40m/9332.

I will see if I can find a way to hack this circuit to do what we want to do without making any irreversible changes.

Attachment 1: D1300694-v1_Commented_AG.pdf
D1300694-v1_Commented_AG.pdf D1300694-v1_Commented_AG.pdf D1300694-v1_Commented_AG.pdf D1300694-v1_Commented_AG.pdf D1300694-v1_Commented_AG.pdf D1300694-v1_Commented_AG.pdf
  2221   Mon Jul 30 18:58:27 2018 anchalDailyProgressISSMinor version improvement in design.

It seems difficult to implement our AC coupled circuit in D1300694_v1 board which is DC coupled.

Meanwhile, I was looking into improving noise performance of present design ISS3, and it seems we can get some improvement directly by including a buffer at the input (to have good input impedance) and reduce resistance values in stage 1 to lower the impact of the current noise of first stage amplifier. This design ISS3_1 and its LISO analysis are attached.

Attachment 1: Cryo_ISS3_1schematic.pdf
Attachment 2: Cryo_ISS3_1_LISO_Analysis.pdf
  2222   Wed Aug 1 11:16:22 2018 anchalDailyProgressISSFinal Design for ISS Servo v3.2

I checked with some replacements of opamp at stage 1 to reduce the noise due to current noise. It seems AD743 is the best balanced opamp for this location. Attached is the circuit schematic of this final version v3.2 , with LISO analysis and also the analysis done to reach to this opamp.

Attachment 1: Cryo_ISS3_2schematic.pdf
Attachment 2: Cryo_ISS3_2_LISO_Analysis.pdf
Cryo_ISS3_2_LISO_Analysis.pdf Cryo_ISS3_2_LISO_Analysis.pdf
Attachment 3: Cryo_ISS3_1_ISS1_Optimization.pdf
Cryo_ISS3_1_ISS1_Optimization.pdf Cryo_ISS3_1_ISS1_Optimization.pdf
  2225   Mon Aug 6 15:02:57 2018 anchalDailyProgressISSFinal Design for ISS Servo v3.2

Yes I realized this later. AD743, unfortunately, was the best choice for us. Its replacement ADA4627 from Analog Devices is worse than OPA827 which is the next best choice according to the LISO simulation. So we'll go ahead with OPA827 in the Stage 1. I'll put the final schematic with board design soon.


AD743 is discontinued.  We have a few in stock, and there are still a few SOIC-16 version that you can buy. 

But better to design with a op amp that is replaceable into the future.


I checked with some replacements of opamp at stage 1 to reduce the noise due to current noise. It seems AD743 is the best balanced opamp for this location. Attached is the circuit schematic of this final version v3.2 , with LISO analysis and also the analysis done to reach to this opamp.



  2226   Mon Aug 13 17:36:39 2018 anchalSummaryPDPhotodiode Transimpedance Amplification Circuit

Redesigned D1400384-v2 is ready and uploaded on dcc. PCB Layout, circuit schematic, Gerber files, LISO analysis, front panel and full BOM are attached.
The circuit is kept the same except for replacing LT1128 with OPA827 in the transimpedance amplifier stages and adding few OMIT and ZERO resistances to have more options for using the circuit. Following are the notes (also present as ReadMe.txt in the .zip file in dcc):

1) To not have whitening option, do not populate IC5, U8, U9 and their peripheral resistors and capacitors and put a 0 Ohm resistor (Jumper) at R20 and R26

2) To have fixed transimpedance, do not populate IC8 and its peripheral resistors and capacitors and populate R7 and R22 with the desired transimpedance.

3) In case of switchable transimpedance, R11=R15=100 and R14=R28=10k are the two options in present design. These can also be changed according to choice. Mark the front panel accordingly with the choices.

4) For low transimpedances, it is better to replace U5 and U7 with LT1128 instead.

  2227   Mon Aug 13 17:41:39 2018 anchalSummaryISSDCC link of finished design

The board design is finished and all the files have been uploaded on dcc (LIGO-D1800214-v1). PCB Layout, circuit schematic, Gerber files, LISO analysis, front panel and full BOM are attached. There are two copies of ISS circuits on the single board and they will be mounted on rack with a 2U front panel.

1) The Noise performance analysis is present in the LISO_and_LTSpice_Files folder.
2) The present values in stage 4 of the circuit has cavity pole neutralization for a pole frequency of ~40kHz. To make this different, change the capacitor C22 and C53 accordingly.
3) The resistors R9 and R14 in Stage 0 can be populated to give an overall gain to the circuit.

  2228   Wed Aug 29 12:01:54 2018 anchalSummaryPMCSummarization of efforts to fix PMC Servo problems

I and Andrew measured transfer functions of each stage of PMC Servo box using Agilent 4395A and HP 41800A probe. Attached are the measured results overplotted with LISO analysis. It seems the PMC Servo box is functioning as it is designed for. Note that in the plots, at higher frequencies there are flat or increasing magnitude regions. These are just because of measurement reaching noise floor. We check independently with sweeps at increased power for higher frequencies and the curves match LISO analysis more or less.
Next, we connected the PZT to the servo box and measured the transfer function with PZT. Again this came out as expected with a good one pole low pass filter behavior as the circuit is designed for. The transfer function (5th plot in the file) keeps going small with a linear slope well up to 10 MHz (measured till this point). So everything checks out fine with he PMC servo box.
But as we lock the servo and measure the closed loop transfer function of the system, we see a strange flat region above 400Hz. Even after the low pass filter with PZT, in a closed loop, it looks like something is actively canceling the pole above 400Hz. But there is nothing else active in the loop. The 6th plot is the measured open loop transfer function (calculated from closed loop transfer function). Note that this flatness is not noise floor or saturation of any kind. We verified this by changing source power and the frequency response at output changes proportionately to this source power change (eg if source power is changed from 5mV to 50mV, the frequency response at the output at 500Hz changes from 4.5mVpkpk to 45mVpkpk), maintaining the flat behavior above 400Hz.
The open loop transfer(G)  function was calculated from closed loop transfer function (C) using this formula:
                                                G = 1 + (1.216)/C
where 1.216 is the measured flat response of the buffer in between the test input (FP2Test) and test output (FP3Test).
So we would like if someone can give some suggestions with this.
Addition: Attaching up-to-date schematic


This circuit just doesn't do what it says it should do.  Need to inject waveform at FP1test and probe at each stage.  Then compare against LISO model.  If something is busted we need to know at which point we are getting this extra zero in the response. There is a lot not great about this particular board but it should just have a flat response above 488 Hz.

I don't think AD602 is in the LISO library.  Should be able to add it as some kind of hack op amp with fixed gain, 100nV/rtHz of noise (with 10 Hz corner) and some appropriate current noise with corner of 1 kHz.  Maybe check the AD602 datasheet.

We need to clean this up this week or do something drastic like replacing electronics with minicircuits or removing MC altogether.  For now we need to move onto solving bigger problems like the ISS, thermal stability, PLL readout noise 

Also, on the ISS do you now have a prototype working servo circuit and photodetector?


We earlier found that the intended LPF isn't working so we thought of this external LPF idea. So I checked today the PZT input with LCR meter to see if it is in good condition or not. It gave C = 406.4nF, L=60.6 mH and R = 31kOhm. From the spec sheet, the C value looks 20% below the rated value but the spec value has uncertainity of +- 15%, so maybe our PZT is still good.

With the measured values, I calculated again (fitted using LISO) what good value of output resistor would make it closest to 10Hz pole. The value came out to be 37.1k Ohm. I have replaced this output resistor with 39k Ohm now. I'm attaching updated schematic for future reference.

keywords for search: PMC North Driver Board Schematic


should probably put back the 30k resistor. It makes a low pass filter with the PZT capacitance (not the cable capacitance). This is to prevent shorting of the HV drive.




Attachment 1: D980352-AGupta20180712Mods.pdf
Attachment 2: PMC_Servo_LISO_Analysis_Vs_Measured.pdf
PMC_Servo_LISO_Analysis_Vs_Measured.pdf PMC_Servo_LISO_Analysis_Vs_Measured.pdf PMC_Servo_LISO_Analysis_Vs_Measured.pdf PMC_Servo_LISO_Analysis_Vs_Measured.pdf PMC_Servo_LISO_Analysis_Vs_Measured.pdf PMC_Servo_LISO_Analysis_Vs_Measured.pdf
  2232   Wed Sep 12 16:27:19 2018 anchalDailyProgressBEATBack to beat

Attached are transfer function measurements of the North and South Cavity Reflection RFPD (14.75MHz resonant RFPD) along with dark noise around 14.75 MHz.

The transfer functions are measured by injecting into the test in port and reading out from RF port at -15dBm source power. The noise spectra are measured by shorting the test in port and taking spectrum from RF port when the detectors are on. In both measurements, the photodiode is blocked with a beam dump.
These measurements were required because of the conclusions made in PSL:2230. Indeed as suspected, the south path resonant RFPD measuring reflection of the cavity at 14.75 MHz has a ~100 times weaker response than the north counterpart as seen in the attached plots. Since the dark noise of south RFPD is about half of the noise of north RFPD (see plot 2), it suggests that south RFPD circuit itself is not working properly and is not amplifying the signal enough. Andrew mentioned that he and Craig saw this earlier and decided to shift FSS to higher frequencies with crystal oscillators. We have the OCOX preamp for 36 MHz and 37 Mhz ready to go with RFPDs at 35.5 MHz that can be tuned to these frequencies. So future steps are to replace the RFPDs with these 35.5MHz ones and tuning them to 36 MHz and 37 MHz and putting in broadband EOM driven by resonant EOM drivers at these frequencies. See future posts for updates on these steps.

Edit:[09/14/2018, 16:12] Changed plots to physical units. Used 2k Transimpedance for Bode Plot and 2.5kHz bandwidth (801 points in 2MHz) for noise plots.

Edit:[09/22/2018, 10:12] Added how measurements were taken, the reason for them and some conclusions. I'm getting into the third year now!

Attachment 1: NorthandSouth_14750kHz_RFPD_Measurements.pdf
NorthandSouth_14750kHz_RFPD_Measurements.pdf NorthandSouth_14750kHz_RFPD_Measurements.pdf
  2240   Wed Sep 26 16:59:17 2018 anchalSummaryFSSCharacteristics of new RFPDs in FSS

We installed new RFPDs with components s.t. they are tuned near 35.5 MHz. We tuned the inductor L1 and capacitor C40 to bring the peaks and notches to desired values. Attached are TFs and dark noise measurements of these two photodiodes. The transfer function measurements are adjusted with the transfer function of the cables up to the photodiodes. The photodiodes were blocked with a beam dump during measurements and are supplied with +-18 V through the new power strip under the table. In the analysis, 2000 Ohms of DC transimpedance is assumed for TFs. Note: This was a wrong assumption. So do not trust the y-axis. This is a transfer function measurement through test-in ports which could be wrong.
Following are some measured numbers:

South Path:
SN 010
RFPD tuned to 37 MHz.
Inductor L1 changed to 146-06J08SL
+5V regulator LM309H replaced with new one.
Measured Peak at 36.882 MHz
Measured Notch at 74.237 MHz

North Path:
SN 009
RFPD tuned to 36 MHz.
Measured Peak at 36.247 MHz
Measured Notch at 72.356 MHz

Except for South RFPD being low Q (as it was written on it). the two RFPDs have similar response and same amount of dark noise. This should reduce the contributions from south path in the excess noise measured in the last BN measurement.

Attachment 1: NorthandSouth_35500kHz_RFPD_Measurements.pdf
NorthandSouth_35500kHz_RFPD_Measurements.pdf NorthandSouth_35500kHz_RFPD_Measurements.pdf
  2241   Wed Sep 26 17:17:18 2018 anchalNotesPDCaution about RF Cage in resonant RFPDs

The RF Cage that goes on top of the circuit in resonant RFPDs is grounded. It helps in avoiding interferance, however, if some component, most likely the tunable inductors touch this cage when they are closed, it creates parasitic inductance and/or capacitance. I observed this happening in one of our RFPDs where the resonant frequency would drop significantly as well as the peak magnitude once the cage is put on. I circumvented this problem by applying a layer of insulation tape on the inside of the RF cage cover. This helps avoiding any parasitic contact with the gnd.
Issued in Public Interest.

  2247   Mon Oct 8 15:10:17 2018 anchalSummaryPDTransimpedance and Dark Noise measurement of all RFPDs in PSL


Transimpedance measurements of all RFPDs in PSL were taken at the setup at 40m. All measurement results and data are in the git folder link below. Dark Noise measurement was also attempted but it turned out that the measurement is limited by Agilent 4395A's noise floor and hence this measurement needs to be done again using low noise preamplifiers.

Git folder containing data, plots, results and jupyter notebook.

Measurement Method:
I used the transimpedance measurement setup at 40m to take these measurements. It includes a laser current driver which is modulated through a bias-tee. This, in turn, gives an amplitude modulated laser. The laser is then sent through 2 focusing lenses to fall on a beamsplitter. One output of this beam splitter is read by a reference photodiode whose transimpedance is known to good accuracy. The other output is read by the 'RFPD under test'. The DC outputs of the RFPDs are read through an oscilloscope with1 MOhm DC coupling and is averaged over 10s. The RF outputs of the reference photodiode (B) and RFPD under test (A) are connected to input ports B and A of an Agilent 4395A network analyzer. The length of these RF output cables is the same. The RF source from Agilent 4395A is split using an RF splitter with one half feeding back to R port and the other half feeding into the bias-tee connected with laser current driver. The splitting of the source wasn't necessary but is mentioned here as it was done for some other reason which is not used in the analysis. Then 25 separate runs of transfer function A/B are measured in 4395A in the range 10 kHz to 1 MHz with 801 points at 10kHz IFBW (saved as SNxxx_LF_*.txt) and 25 separate runs in range 1MHz to 100 MHz with 801 points at 30kHz IFBW (saved as SNxxx_HF_*.txt). These runs are then stitched together in the analysis to create 25 datafiles (saved as SNxxx_TF_*.txt).
From this point onwards, analysis mentioned in repo iris in file iris.py is used. I didn't explore any other methods of analyzing data and calculating transimpedance as it seemed that Craig had already worked on this and figured out a good method for doing so. I'll describe this analysis in my own words, however, the best description can be obtained from Craig himself. Each of the 25 transfer function is first converted into transimpedance with physical units. Following formula is used for doing so:

                                                                                                                                                               Z_{AC,PD} = Z_{AC,Ref} R_{PC} e^{-i \delta \phi}} T_{meas}
ZAC,PD : Calculated RF Transimpedance
Z AC,Ref : Known RF transimpedance of reference photodiode
RPC : Photocurrent ratio at DC of reference PD to RFPD under test. This is calculated as:
                                       R_{PC} = \frac{\frac{V_{DC,Ref}}{Z_{DC,Ref}}}{\frac{V_{DC,PD}}{Z_{DC,PD}}}
\delta \phi: Extra phase delay in RFPD under test's light path due to the extra distance of light travel (\Delta L). This is calculated as:
                                       \delta \phi = \frac{\Delta L f}{c}
Tmeas : Measured transfer function A/B from Agilent 4395A

This formula can be derived easily by first taking the ratio of light powers on the two photodiodes at DC and then taking ratio at AC and using photocurrent ratio at DC to substitute for unknown values like power attenuation, the fraction of power falling on PD and ratio of responsivity of the two photodiodes. Note that this circumvents any differences due to the different focusing of light on photodiodes, losses due to mirror and beamsplitter and different responsivities of the two photodiodes. The extra path length (\Delta L) is measured using a ruler. The uncertainty in this measurement and all other measurements are carried forward and described later.
After this conversion, the median values of real and imaginary parts of the complex transimpedance is taken out of the 25 traces separately at each frequency point. These median values are used to create a complex median transimpedance representing the estimate of the analysis. Covariance of the real and imaginary parts of the 25 transfer function is used to create a covariance matrix at each frequency point. This is transformed into covariance of magnitude and phase basis. From this, the variance in magnitude and phase of the transimpedance is extracted. This variance is added with other noise sources (Uncertainties in DC voltage levels and known DC and AC transimpedances) in quadrature to get an estimate of the uncertainty of transimpedance at each frequency point.
Apart from transimpedance, dark noise measurement was also attempted. I took the spectrum of RF out when a beam dump is placed in front of the RFPD under test. The spectrum is taken from 10kHz to 100 MHz with 801 points and 10 kHz bandwidth. To estimate noise of 4395A, I took the same spectrum with input port A shorted. The two spectrums are then subtracted in quadrature to get an estimate of the dark noise. However, it is found that these measurements are in fact limited by the noise of 4395A itself. So we have decided to take dark noise measurements separately with low noise preamplifiers later. The data files of this attempt are still in the data folder with the analysis in the jupyter notebook.

Uncertainty handling:

The uncertainty in transfer function measurement is estimated using the method described above. Othe sources of uncertainties are the following:

  • RFPD DC transimpedance: These are read off from the resistor values in the actual circuit. I have assumed 2% uncertainty in each resistor value in the DC transimpedance circuit. Since transimpedance is created through 3 resistors, the uncertainty is 2\sqrt{3}% in the calculated transimpedance.
  • Reference Photodiode: Reference Photodiode's marked dc and ac transimpedance are assumed to have 1% error in them. This number came in a discussion with Gautum.
  • DC Voltage level: Uncertainty in this value was simply eye-balled during the measurement. Without any amplitude modulation, I just saw how much the 10s averaged value fluctuate and used at as the uncertainty.
  • Extra Path Length: Since extra path length of light was measured quite crudely with a ruler, I took uncertainty in this measurement as 1 cm. 

Plots and results:
In the attached folder, plots for each RFPD are there. The *TI_Four_Squares.pdf plots show median transimpedance with each TF sweep also plotted in red on left. The right 2 boxes are residuals of TF sweep from the median transimpedance calculated.
Further, for comparison, RFPD counterparts of north and south paths taking reflection measurements from the cavity and PMC are plotted together.
All the characteristic results are tabulated in CTN_Lab_All_RFPD_Characteristics.xlsx file in the data folder.

PSL All RFPD Characterisitics
SN Position Peak Freq. (MHz) TI at Peak (V/A) Notch Freq. (MHz) TI at Notch (V/A) DC TI (V/A)
SN009 North Cavity Refl 36.036 2594 +/- 191 73.109 77.8 +/- 9.2 2020 +/- 68
SN010 South Cavity Refl 36.67 1529 +/- 99 74.237 76.8 +/- 8.5 2222 +/- 75
SN020 North PMC Refl 21.692 2891 +/- 248 42.413 137.6 +/- 12.0 2222 +/- 75
SN001 South PMC Refl 15.107 14430 +/- 1256 29.402 558.0 +/ 37.2 2222 +/- 75
SN101 Beat Note 27.34 1178 +/- 77 No Notch No Notch 2222 +/- 75


  • All RFPDs have roughly the intended peaks in their transimpedance and the notches are close to 2\omega value.
  • North and South Cavity Relfection PDs have an almost similar response. This is good to have equivalent paths. So I think we solved the problem which initiated this whole project.
  • North and South PMC Reflection PDs are quite different primarily dude to different frequencies at which they will be operated at. The low peak frequency in South path has resulted in a very high transimpedance at the peak. But since PMCs only affect the mode shape, this should not affect the equivalency of the two paths.

Edit Tue Oct 9 09:54:40 2018 (awade): Narrowed table width to prevent horizontal scrolling.

Edit Wed May 15 19:48:20 2019:

See https://nodus.ligo.caltech.edu:30889/ATFWiki/doku.php?id=main:experiments:psl:rfpd for the latest changes in RFPD.

Attachment 1: All_RFPD_TI_and_Dark_Noise_Measurements.pdf
All_RFPD_TI_and_Dark_Noise_Measurements.pdf All_RFPD_TI_and_Dark_Noise_Measurements.pdf All_RFPD_TI_and_Dark_Noise_Measurements.pdf All_RFPD_TI_and_Dark_Noise_Measurements.pdf All_RFPD_TI_and_Dark_Noise_Measurements.pdf All_RFPD_TI_and_Dark_Noise_Measurements.pdf All_RFPD_TI_and_Dark_Noise_Measurements.pdf
  2248   Thu Oct 11 12:02:46 2018 anchalSummaryPMCSouth PMC servo card ready to use

I have mounted south PMC servo card on a 1U chassis with two acromag cards. The card should be ready to use.

Changes to Servo Card:
I switched resistor R44 with 39k (as we did in North PMC card) to create a 10Hz pole with PZT capacitance. The updated schematic is attached.

Acromag XT1541-000 Configuration:
Attached .zip file contains configuration file and the screenshot of configuration info.
IP Address:
Subnet Mask:
Gateway Address:
Host Name: XT1541-000-SPMC-DAC

XT1541-000-SPMC-DAC Pin Connections
Signal Name Acromag Card Pin Servo Card Pin Notes
PMCSW1 DIO 0 P1-6A Connected through resistor divider (see option D, attachment, PSL:2058 and PSL:2070)
R1 = 3k || 4.3k ||150k \Omega = 1746.55 \Omega
R2 = 3.3k || 3.9k || 470k \Omega = 1780.73 \Omega
This gives Voff = 0.66 V , Von = 4.5 V with Vexc = 9 V on the DAC and Rpullup = 10k  \Omega
PMCSW2 DIO 1 P1-7A Connected through resistor divider (see option D, attachment, PSL:2058 and PSL:2070)
R1 = 3k || 4.3k ||150k \Omega = 1746.55 \Omega
R2 = 3.3k || 3.9k || 470k \Omega = 1780.73 \Omega
This gives Voff = 0.66 V , Von = 4.5 V with Vexc = 9 V on the DAC and Rpullup = 10k  \Omega
BLANKING DIO 2 P1-9A Connected through resistor divider (see option D, attachment, PSL:2058 and PSL:2070)
R1 = 270 || 390 ||4.7k \Omega = 154.31 \Omega
R2 = 300 || 330 || 390k \Omega = 157.08 \Omega
This gives Voff = 0.66 V , Von = 4.5 V with Vexc = 9 V on the DAC and Rpullup = 1k  \Omega
MGAIN2 OUT 00 P1-4A -

Acromag XT1221-000 Configuration:
Attached .zip file contains configuration file and the screenshot of configuration info.
IP Address:
Subnet Mask:
Gateway Address:
Host Name: XT1221-000-SPMC-ADC
All channels are configured for range \pm10 V with averaging factor set to 200.

XT1221-000-SPMC-ADC Pin Connections
Signal Name Acromag Card Pin Servo Card Pin Notes
LODET2 IN0+ P1-1A RTN and IN0- connected to GND
PMCERR IN1+ P1-2A RTN and IN1- connected to GND
PMCOUT IN2+ P1-3A RTN and IN2- connected to GND


Attachment 1: D980352-E01_South_PMC-Mods-AG-10-11-18.pdf
Attachment 2: SouthPMCBoard.jpg
Attachment 3: South_PMC_Acromag_Configuration.zip
  2250   Fri Oct 19 17:05:10 2018 anchalSummaryNoiseBudgetSummary of present noise budget

Attached is the latest full noise budget we have. I generated it by rerunning current noise budget notebook. The aim of this post is to create a checkpoint of where we are, how the analysis was done and what we are going to do in the future.

Current Measurements:
There are 5 measurements of ASD of the beat note currently. 1 set (dark red) is from un-dated data (committed as ported from 40mSVN). Others have dates marked on them. These data sets are the spectrum of beat note frequency. No post-processing is done on these measurements and they are plotted as measured.

Coating Brownian Noise (Green):

  • This is calculated using Harry et al. (2001) Eq 21 (written slightly differently here with only coating contribution)
                                              S_x^{\text{(cBr)}}(f) = \frac{2 k_\text{B} T}{\pi^2 f} \frac{d \phi_\text{c}}{w^2 E_\text{s}^2 E_\text{c}(1-\sigma_\text{c}^2)} \left[E_\text{c}^2 (1+\sigma_\text{s})^2 (1-2\sigma_\text{s})^2 + E_\text{s}^2 (1+\sigma_\text{c})^2(1-2\sigma_\text{c})\right]
  • Here, d: Coating Thickness  =  4.6806 \pm 0.0004 \mu m
              w: Beam spot size on mirrors = 215.4 \pm 0.5 \mu m
              \phi_c: Coating Dielectric Loss Angle assuming \phi_c = \phi_{||} = \phi_{\perp} = (2.41 \pm 0.2)\times 10^{-5}
              E_s: Substrate's Young modulus = (72 \pm 1)\times 10^9 Pa
              E_c: Coating Young modulus =  (100 \pm 20)\times 10^9 Pa
               \sigma_s: Substrate's Poisson ratio = 0.170 \pm 0.001
               \sigma_c: Coating Poisson Ratio = 0.311 \pm 0.062
  • Noise from above formula is in displacement. It is converted into frequency noise using the conversion factor for the cavity, f_{conv} = \frac{c}{L \lambda} = (7.65 \pm 0.05)\times 10^{15} Hz/m.
  • It is the highest estimated source of noise in relevant frequency ranges.
  • This is an oversimplified model and we are working on incorporating analysis due to Hong et al. (2013) for calculating this noise.

Coating Thermo-Optic Noise (Pink):

  • This is calculated using analysis given in Evans et al. (2008). Particularly, Eq 4:
                                              S^{\Delta z}_{TO} = S^{\Delta T}_{TO}(\bar{\alpha_c}d - \bar{\beta}\lambda -\bar{\alpha_s}d\frac{C_c}{C_s})
  • Here, S^{\Delta z}_{TO}: Noise spectral density of displacement noise due to thermo-optic noises.

                    S^{\Delta T}_{TO}: Profile-weighted temperature fluctuation PSD, calculated using:
                                                                S_T(f) = \frac{2^{3/2} k_\text{B} T^2}{\pi\kappa_\text{s}w}M(f/f_\text{T})     with          M(\Omega) = \Re\left[\int\limits_0^\infty\! \mathrm{d}u\, \frac{u\ \mathrm{e}^{-u^2/2}}{\left(u^2-\mathrm{i}\Omega\right)^{1/2}}\right]      
                       \bar{\alpha_c}: Effective thermoelastic coefficient for coating, calculated using Evans et a. (2008) Eq A1 and A4:
                                                                \bar{\alpha_k} = \alpha_k \frac{1+\sigma_s}{1-\sigma_k}\left [ \frac{1+\sigma_k}{1+\sigma_s} + (1-2\sigma_s)\frac{E_k}{E_s} \right ]        and        \bar{\alpha_c} = \sum^{N}_{k=1} \bar{\alpha_k} \frac{d_k}{d}
                                          Here,  \alpha_k : Thermoelastic coefficient for the k-th layer. \alpha_{AlGaAs} = (5.24 \pm 0.52) \times 10^{-6} K^{-1} and \alpha_{GaAs} = (5.97 \pm 0.6) \times 10^{-6} K^{-1}
                                                     d_k : Thickness of each layer. This is read from coatingLayers.csv which contains optimized. There are 57 layers in total.
                                                    Rest variables are the same as previously stated.
                      \bar{\beta}: Effective thermo-refractive coefficient for coating, calculated using Evans et a. (2008) Eq B3-B8. This is bit tedious calculations so I'll leave out the details.
                      \lambda : Wavelength of beam light = 1064 nm
                     C_c: Effective heat capacity per unit volume of the coating,C_c = \sum^N_{k=1} C_k \frac{d_k}{d} where C_k is the heat capacity of the kth layer.
                                                                        C_{AlGaAs} = (1.698 \pm 0.001)\times 10^6 \frac{J}{Km^3}        and       C_{GaAs} = (1.75 \pm 0.09)\times 10^6 \frac{J}{Km^3}
                      C_s : Heat capacity per unit volume of substrate = (1.6 \pm 0.1)\times 10^6 \frac{J}{Km^3}
                      Rest variables are as stated before.

  • Same as before, the calculated noise is displacement noise and is converted into frequency noise.
  • This noise has been reduced significantly by making thermoelastic and thermorefractive noise cancel each other Its further analysis is at low priority as it is well below other noise sources.

Substrate Brownian Noise (Yellow):

  • This is calculated using Cole et al. (2013) Eq.1.:
                                              S_x^{\text{(sBr)}}(f) = \frac{2 k_\text{B} T}{\pi^{3/2} f} \frac{1-\sigma_\text{s}^2}{w E_\text{s}}\phi_\text{s}
  • Here all variables are as stated before.
  • Note: This is less by a factor of 2 from expression in the paper because the expressions in papers are for 2 mirrors together. We in our calculation take into account the number of mirrors separately.
  • This noise source is the third highest source of noise in relevant frequency ranges. It is hard to make any change other than changing substrate material itself to reduce this noise source.
  • This is a much better-understood source of noise and there are no proposed changes in its analysis for now.

Substrate Thermo Elastic Noise (Sky Blue):

  • This is calculated using Somiya et al (2010) Eq 3 and 8: (Analytical expression for the theory by Cerdonio et al. (2001))
                                S_x^{\text{(subTE)}}(f) = \frac{4 k_\text{B} T^2}{\pi^{1/2}} \frac{\alpha_\text{s}^2 (1+\sigma_\text{s})^2 w}{\kappa_\text{s}} J(f/f_\text{T})       where    J(\Omega) = -\operatorname{Re}\left\{\frac{\mathrm{e}^{\mathrm{i}\Omega/2}}{\Omega^2} (1 - \mathrm{i}\Omega)\, (\operatorname{Erfcom}\!{\left[\frac{\Omega^{1/2}(1+\mathrm{i})}{2}\right]})\right\} + \frac{1}{\Omega^2} - \frac{1}{(\pi\Omega^3)^{1/2}}   
  • Here, \kappa_s : Substrate Heat Conductivity = 1.38 \pm 0.2 W/(K m)
              f_\text{T}: Thermal relaxation frequency calculated by Cerdonio et al. (2001) Eq 9, f_T = \frac{1}{2\pi}\frac{\kappa_s}{C w^2}
  • Note: There is a difference of $\sqrt{2}$ factor from Somiya and Cerdonio's expression because w in Somiya et al. and r0 are related as $r_0 = w/\sqrt{2}$ as explained in Black et al. PRL 93, 241101 (2004).
  • This noise source is the highest noise source up to 90 Hz and is second to Coating Brownian Noise in the above frequencies.
  • There no proposed changes in the analysis for this source for now.

PDH Shot Noise (Orange):

  • This is calculates using (in W^2/Hz):
                                                              S_P^\text{(PDHshot)} = 2h\nu P_0 \left[J_0(\Gamma)^2 (1-\eta) +3 J_1(\Gamma)^2\right]
  • Here, \Gamma: PDH modulation index of FSS = 0.2 \pm 0.005 \, rad
              \eta: Cavity Visibility = 0.35 \pm 0.05
            P_0: Incident power on FSS EOM = 3 \pm 0.2 \, mW
  • This is then converted into frequency noise spectral density by using PDH Slope (Also accounting for cavity pole):
                                                                S_f^\text{(PDHshot)} = S_f^\text{(PDHshot)} \left(\frac{1 + \frac{f}{f_p}}{\Gamma'} \right)^2
  • Here, f_p : Cavity Pole = 136 \pm 9 kHz
              \Gamma^' :  PDH slope = 8.85 \pm 0.86 mW/Hz
  • This is a fairly low noise source and is a straightforward calculation. No updates required here other than remeasuring \Gamma and \eta .

PLL Oscillation Noise (Grey):

  • This is directly measured and the data on the attached graph is from 2012.
  • This data should be taken again and if possible should be included in automated scripts.

PLL Readout Noise (Purple):

  • This is calculated with what is referred to as "Tara's Magic Number":
    S^{f}_{PLL} = (f\times0.0207\times5.04\times 10^{-5})^2
  • I have no idea how this formula emerged. It would be best to measure the noise from PLL again and dissect and measure all independent noise sources again.

Seismic Noise (Black):

  • This was measured last in 2011 October with a seismometer on the table.
  • This doesn't affect much our region of interest but should be updated as we are 7 years in the future now.

Photothermal Noise (Brown):

  • This is the coupling mechanism of intensity noise into frequency noise.
  • To calculate this, following conversion from incident power noise to photothermal noise is used:
                                           S^{photoThermal}_f(f) = |H(f)|^2 P_{abs}^2 S_{RIN}
  • Here,  H(f) :  Photothermal Transfer function in (m/W)
               P_{abs}: Power absorbed by mirror calculated by P_{abs} = \alpha_c \frac{P_0 \mathcal{F}}{\pi}
                              Here, \alpha_c : Coating absorptivity = (6 \pm 1)\times 10^{-6}
                                        P_0: Incident Power
                                         \mathcal{F}: Cavity finesse = 15000 \pm 1000
                S_{RIN}: Relative Intensity Noise Spectral Density
  • Relative Intensity Noise is measured directly. For the plot attached, RIN was measured only on the south path and north path's RIN was assumed same.
  • Photothermal Transfer Function is calculated due to Farsi et al. (2012) Eq. A51:
                              H(f) = H_\text{c}(f) + H_\text{s}(f) + H_\text{tr}(f)
  • Here, H_\text{c}(f) : is contribution through the coating, calculated using Eq. A44 (Details excluded)
               H_\text{s}(f): is contribution through the substrate, calculated using Eq. A45 (Details excluded)
               H_\text{tr}(f): is contribution through the thermorefractive process, calculated using Eq. A49 (Details excluded)
  • This noise, it turns out is quite low in the relevant frequency range. No further updates are required in the analysis.
  • The RIN needs to be measured again though for both the paths.

Residual NPRO Noise (Green):

  • This calculation requires free-running frequency noise of NPRO. It is assumed to be following which is taken from Wilke et al. Opt. Lett. 25, 14 1019-1021 (2000):
                                              \sqrt{S_{\nu}(f)} = (10^4 \text{ Hz/Hz}^{-1/2})\times(1 \text{ Hz}/f) .
  • Open Loop Transfer Function of FSS was measured in 2004 (see PSL:1504). The measurements are fitted with model transfer functions to get zeros and poles which are then used to estimate OLTF at frequency points of interest.
  • The assumed NPRO free-running noise is then suppressed by these OLTFs (north and south) and added in quadrature.
  • We need to measure the OLTFs again and if possible, measure the true free-running frequency noise of the NPROs.

Near future plan:

We should be able to finish aligning South Path with the newly installed PMC by end of this week. Then if everything works fine, we should start taking beat note measurements every week and focus on updating old data in the estimate plots.

Attachment 1: 20181019_154643noiseBudget.pdf
  2251   Tue Nov 6 13:41:04 2018 anchalSummaryPMCPMC installed on South Path


  • The PMC on the south path has been installed with the PMC servo card on the rack.

  • I added sliders for setting max, min and step size of autolocker scanning in PMC interface medm windows.

  • I used one PLCX-25.4-103.0-UV-1064 and three steering mirrors in front of EOM to mode match with PMC.

  • I laid down new cables for PMC reflection RFPD signals and EOM.

  • I removed the power supply providing 9V to PMC Servo Cards and made a voltage regulator box with LM7809CT which converts 3-pin 18V to two BNC 9V.

  • We are now using external mini-circuits in-line mixers (ZFM-3-S+) and low pass filters (SLP-1.9+) instead of using onboard mixer and filter on PMC servo card and injecting signal through FP1Test input.

  • I mounted the inline hanging mixers and splitters on the rack with LO delay lines inside the rack so there are no hanging parts now.

  • I changed requirements in ALConfig_NPMC.ini and ALConfig_SPMC.ini so that we can inject the signal from FP1Test and autolocker still functions.

  • The HV supply of PMC servo boards was found to be around 180V. We changed it to the designed 160V.

  • Attaching few pics for above changes.

Few numbers:

South PMC Mode matching ~ 70%
Modulation frequency = 14.75 MHz
Modulation Index \approx 0.142 rad

Few notes:

  • When aligning to PMC, it is a good idea to keep a white screen infront of transmission and work in dark with IR viewer to get an idea of what is happening.
  • A camera on the back side of PMC also helps when sufficient light starts building up in the cavity.
  • While finding optimum LO delay using the SRS delay box DB64, use the rated 2.5 ns extra lag written in the datasheet.
  • Once maximum swing in PDH error signal is found, check locking once and see if the transmission is good or not. You might be locking to the sideband as the servo locks to one kind of slope only. If you find feeble transmission, just add T/2 delay in the delay box where T is the time period of modulation frequency. This lands you to near right spot.
  • While soldering an SMA connector to the cable, put the heat shrink in first and past it to the cable before proceeding. I made this mistake few times.
Attachment 1: South_PMC_Alignment.jpg
Attachment 2: NorthAndSouthPMCServoCardsonRack.jpg
Attachment 3: 9VConverter.jpg
Attachment 4: FGMixersLPFandSplitters.jpg
  2252   Mon Nov 12 11:53:50 2018 anchalNotesopticChanged half waveplate angle after South EAOM

For some reason after the weekend, I found that the laser power on the south path decreased by about 300 uW. On checking power with a laser power meter, I found that a PBS, right after South EAOM and a half waveplate, is dumping more than half of the power as it is vertically polarized. The half waveplate is supposed to rotate the vertical polarization from EOAM into horizontal for cleaning by the PBS. I have rotated this waveplate to get maximum output from PBS.

Still, the loss at this stage seems much more in comparison to North Path.
Loss at North Path after EAOM  due to horizontal polarization at output = (354 uW)/(2431 uW) x 100 = 14.56%
Loss at South Path after EAOM due to horizontal polarization at output = (545 uW)/(1957 Uw) x 100 = 27.85%
I have checked that input polarization is correctly vertical for both EAOMs.(Only about ~1% light horizontally polarized for both paths at this point). Also, both EAOMs (New Focus 4104) are currently terminated with 50 Ohm terminators at their modulation ports.


  2253   Sun Nov 18 18:50:39 2018 anchalSummarySouth CavitySouth Path up and running again

The South PMC is installed and the South FSS is running again. Attached is the beam path profile from ala mode used for the south path.
While aligning this beam into the cavity (which is a very difficult task apparently), I disturbed the north path by mistake. So I had to align both paths from scratch again.

Few notes for aligning beam into cavities in future:

  • The only way to know if the beam is reflecting off the mirror, not the enclosure or something else inside the tank, is to bend and look through an IR viewer. So my first step would be to do this and ensure the beam is at least hitting the mirror. This step requires the removal of the thermal shield.
  • After this, it takes a while to actually start seeing the reflection from the mirror. I bend to see into the cavity to see if the reflection from the mirror is hitting something else and change angles accordingly.
  • At this stage, once we get the reflection, we very nicely just match it with the incident beam. BUT, make sure you are not seeing anything in the transmission. It is possible that the beam is simply going through the spacer. A way to check if the transmitted light is through the cavity or spacer is by changing laser frequency (Slow input to laser) slightly.
  • Once we get the coincident reflection with no transmission, scan the slow input about 0.75 V to see if any of the modes are excited. If you get lucky, some lower order mode gets excited to give some information about how wrong the incident beam is.
  • From this point onwards, it is just walking of beam all over the mirror of the cavity and scanning laser frequency to get any glimpse of the fundamental mode.
  • Once the fundamental mode is caught, we actuate the fast input to the laser with ~3 Vpp sinusoidal signal at around 4 Hz. Adjust the periscope to get some tangible transmission and then just do the usual optimization by walking the beam.

Important things to remember:

  • Make the autolock condition of PMC less hard so that it remains locked with the fluctuating laser frequency.
  • Every time you are moving a knob, double check if you are moving the right one. This is how I fucked up a perfectly good alignment on the North side.

Also, I have made correct length cables for FSS LO delays for both paths and both cavities are getting locked nicely. At North cavity, I see ~70% mode matching and at South cavity ~60%. These were measured with laser power meter.

Future steps are to align ouput of the cavities onto Beat note detector and start measuring noisebudget weekly. After that, we'll concentrate on increasing mode matching and reducing noise sources in the paths.

Attachment 1: SouthOptimizedPath.pdf
  2254   Tue Nov 20 17:31:13 2018 anchalDailyProgressOtherPrecav Beatnote Freq counter and PID optimization

I learned today from Andrew on how to setup the pre-cavity beat note frequency counter and use it for cavity heater PID. Now, I need to figure out good PID parameters to start heating up cavities in a controlled fashion. For now, I have kept the differential heating off to keep the cavities stable.

But then, I realized that the Slow PIDs in FSS aren't functioning. Whenever I switched them on, it would take the SLOWOUT so far away that the frequency lock will break. So to fix this, I read more about PID tuning and figured that the pre-defined PID constants for Slow PID might be wrong. I ran the PIDAutoTuner (which I have changed a little bit, see git commit) which gave very different values for these constants. Further, the newly found values were even worse. So I started looking into the PID code itself and when I was checking the error signal, the obvious truth revealed. The FASTMON channels which are used as the process variable in the SLOW PID were not being updated. Then I realised a whole batch of channels are stuck to 0.

So I restarted the channels by restarting the AcromagBoot.conf service on the acromag computer. This suddenly made everything SUPER UNSTABLE. Even with locks and autolockers switched off, the laser frequency was just dancing and giving a light show out of the PMC! While trying to fix this, I also realized that the variable gains in the PMC controls have been reset to 0 in some cycle of restarting services. So I found the right values again by monitoring the error signal.

Finally, I had to restart the acromag computer as it was running 2 different instances of EPICS channel causing the above mashup.

After everything got settled back, I ran the PIDAutotuner code and it updated the PID constants values in the SLOW PID. The setpoint for both south and north SLOW PIDs is 1V. I have updated default values in .db files.

PMC Variable Gain value:

South: 30 dB (No oscillations happen upto here, so no harm in keeping it here unless we find any wacky behavior)
North: 22 dB (Oscillations start at 24 dB, I'll increase the margin if need be)

SLOW PID parameters:

  K_p K_i K_d
South -0.00040 -0.00017 -0.00062
North -0.00041 -0.00015 -0.00076

My take:

I personally feel the SLOW PIDs are just fine with a long range of values unless we have a better measure of what is bad and what is good, particularly, along with the cavity heater PID. Because SLOW PIDs for frequency are important only when we are bringing the cavities to 26.5 MHz apart. Once they are there, it doesn't matter much. I'll think more about this.

Near Future Steps:

Once I set the cavities on course to reach 26.5 MHz, I'll start finishing the code to take weekly noise budgets. Then I'll work on the weekdays to improve something in the experiment and check with noise budget taken during the weekends. I'll start with optimizing lens positions and then installing ISS.

  2255   Wed Nov 21 17:54:00 2018 anchalDailyProgressTempCtrlNotes about Cavity Heater PID

Last night I ran PIDAutoTune.py for Cavity heaters.

Breif description of this code:
PIDAutoTune.py : Originally written by awade, this code implements Relay method to find PID constants for a  general PID setup with EPICS channel. For now, one needs to make some changes in the code itself for different setups, but I'm trying to make it more general slowly. Relay Methos involves in actuating in a hard step function manner. The code simply switched back and forth between +h and -h (h is called Relay Amplitude ahead) according to which side of setpoint the process is. The system ideally reaches an oscillatory state and the amplitude and time period of these oscillations provide means to estimating the PID constants. Refer 'Relay-based PID Tuning' by D. Williams for more details.

So after running this code for the first time, I understood the direction (or sign of Kp) required. Using these and with a more settled pre-cavity beat frequency, I ran the code again with the following parameters:
Relay Amplitude = 1.0 W
Initial Differential Heating (Actuator) = 0.0 W
Common Heating = 0.5 W
Setpoint = 500 MHz
This gave the following results:
Critical Gain, Kc = 0.107
Critical Time Period = 1663 s (Note the high oscillation time)
PID constants: Kp = 0.0214, Ki = 2,576e-5, Kd = 11.87

Manual feedback:

So the above values obviously didn't work like any other first result. But I found important insights from them (listed below). Then I just manually tried to bring the frequency down to the region of interest (around 27 MHz) and this manual tweaking also gave me some intelligence about these cavity heaters (listed below). I was able to reach around 34 MHz with an almost stable beatnote.

Conclusions from this run:

  • The heaters of the two cavities are not equally effective. The South Cavity heater is almost twice as better as the North one. So because of this, with our present PID which uses differential heating, we can not do this very well. So I will probably make a provision for setting an offset from 0 around which the differential heating should be actuating.

  • The PIDlocker needs to be adapted with lasers crossing each other in frequency. This basically changes the required direction of actuation. We need to put in something which detects if the lasers are flipped so that the sign of PID constants is changed. For this, I'll put in a new channel for changing signs of the constants and modify PID locker accordingly.

  • Because of the long critical time period, the Kd constant will probably need to be much more than the allowed region in HOPR and LOPR. I have already made it +-50 in the database file.

Current measurement:

I'm running a new PIDAutoTuner measurement:
RelayAmplitude = 0.75 W
Offset = 0.25 W (So Differential Heater switches between -0.5W to 1W)
Setpoint = 34 MHz
Initial Differential Heater (Actuator) = 0 W
Common Heater = 0.5 W
Runtime = 15 hrs
I'm hoping I'll get more accurate data this time as the frequency is very stable with at most 100 kHz fluctuations pk-pk.


  2257   Thu Nov 22 12:49:35 2018 anchalDailyProgressTempCtrl 

The configuration run:

I ran overnight PIDAutoTune with following parameters:
RelayAmplitude = 0.75 W
Offset = 0.25 W (So Differential Heater switches between -0.5W to 1W)
Setpoint = 34 MHz
Initial Differential Heater (Actuator) = 0 W
Common Heater = 0.5 W
Runtime = 15 hrs
This gave the following results:
Critical Gain, Kc = -12.27416
Critical Time Period = 84.3s (Note the reduction in time from the last measurement)
PID constants: Kp = -2.4548, Ki = -0.05824, Kd = -68.98078

Conclusions and next steps over the long weekend:

Today, I manually brought the frequency to near 27.3 MHz and switched on the PID with the estimated parameters. It looked like it was doing a good job except for momentary jumps in the actuation. This might be readout error or simply that we need some sort of LPF on the actuation calculation. Even 0.1s actuation on South heater causes a big problem because of huge change in current and because the south heater is a much more effective heater than north.

Just to check my hypothesis, I modified the PIDLocker_beta.py code to create a condition that actuation will be changed only if it is changing by less than 0.5 or if it has been asked to change in last two timesteps. I see that this successful in avoiding the harsh jumps. Now I'm running it to see how it works with an initial error of about 5 MHz. It is much more than I would like to start this PID (for reasons stated below) but I need to go for the weekend now.


  • In my opinion, since the PID parameters turned out to be so huge, they will properly work in small deviation from setpoint only. Definitely within ~50 MHz of setpoint which was maximum amplitude during Relay tuning.
  • This also suggests that we probably cannot create an all regime working PID with our actuators. We simply need more ability to actuate if current cooling times are going to be constant for a faster convergence to the desired setpoint from far off place.
  • I and Awade were discussing this yesterday. If we ant convergence to 27.34 MHz from initial points as far away as ~500-900 MHz, we need some artificially intelligent code.
  • Not too intelligent though. In awade's words "we need something dumber than neural networks (because of the time involved in making and training them) and smarter than a PID".
  • I'm thinking of a code which looks at higher derivatives than first, maybe up to the third derivative.
  • If we get a code like this, which we can train during night times it might be a good thing to have to save about (6hrs to a day) while bringing the frequency to the desired point. I'll keep this at a lower priority for now though as we have other pressing issues to work on.
  2258   Wed Nov 28 10:42:47 2018 anchalNotesTempCtrlTemperature control efforts in last few days

Tying the estimated PID coefficients:

From the configuration run (see PSL:2257), I estimated some new PID coefficients. I left PID on for the long weekend with the new coefficient with the initial point about 5 MHz off from lock set point. Apparently, the system never converged (see the orange trace in attached screenshot of StripTool). It instead kept oscillating.

At this point, it seems that maybe the PID control won't work good enough. We need to keep beatnote frequency within 10kHz of setpoint to reach desired resolution range and avoid jumps in Marconi. We either need a new way of temperature control, or if PID works nearby setpoint with no hard changes, we need to reach there with almost zero slope.

Trying out a new method for driving frequency:

This week I started working on a new method to drive the frequency to setpoint with near to zero first derivative. The purpose of this method is to reach close enough to setpoint in a calm manner so that PID can function nicely. If it works out better, it can be used as primary control near setpoint as well.

Plan Schematic:

There would be three codes working together to achieve temperature driving (and/or control).

  • DataMiner.py: This code will constantly monitor beat note frequency and calculate second derivatives with data sampled at 10 Hz, 1 Hz and 100 mHz. It will keep writing this data to a knowledge file. Also, this code will look for signs of beatnote frequency flipping (cavity frequencies crossing eachother which reversed required sign of actuation). These second derivatives will be logged with the applied actuation signal. Idea is to create overtime a file which represents what happens to beatnote frequency when heat is applied.
  • DataInterpreter.py: This code will read the knowledge file and fit it to \frac{d^2 f_{BN}}{dt^2} = c_0 + c_1 h + c_2 h^2 where f_{BN} is beatnote frequency and h is applied differential heat in watts. This is the simplest non-trivial model for effect of actuation. We might to think further about this part. The fitted coefficients (for both signs of beatnote frequency, so 6 in total) will be written on EPICS channels.
  • ChimpLocker.py: This code will fit a fifth order polynomial track to reach the setpoint frequency from present frequency. The data points it would use would for this fitting would be Inital Frequency, Initial Slope, Setpoint Frequency, Setpoint Slope (always set to 0) and time required to reach setpoint. The last variable will be chosen to make sure actuation remain in limits. This is the part which a simple PID lacks. Then, the coefficients from DataInterpreter.py would be used to calculate the differential heat required to effect the right second derivatives to create the projected track. If the frequency deviates from track, a new track would be calculated.

This plan is in an infant stage. We might need to change a lot of things and models depending on what data is acquired. So, for now, to reduce development time (with a possible chance of failure), I've only incorporated the DataMiner code which is on Git/cit_ctnlab/ctn_scripts/ now. I've also written a DataMinerHelper.py which spans the actuation space slowly while keeping frequency in range so that good knowledge data can be mined. These two codes are near final release.

Depending on what the knowledge data looks like, we will decide if we should go further with this plan. Until then, I'll work on noiseBudget code again.

Minor update:

I have reconfigured the ufc-6000 to have a sampling rate of 0.1 Hz which is minimum possible from design. I have changed ufc2.py to make sure it is set to this sampling rate everytime we read precavity beatnote frequency data.

Attachment 1: Screenshot_from_2018-11-26_16-32-54.png
  2260   Mon Dec 3 10:44:19 2018 anchalNotesTempCtrlPlan of action for installing new heater shield and temperature sensors

We have come to the conclusion that to properly tune PID, we need to accurately model a physical system that represents the cavity thermodynamics and use it to tune PID coefficients. For this, we need good temperature sensors on the cavity (not present right now) and better heat actuation with known control. Awade also mentioned that we have new gold plated heat shields ready to be installed. So we have decided to replace the heat shield and install new temperature sensors as well. Following is the plan of action for the same:

  1. Collect/order required components:
    Platinum 1kOhm RTDs (From Cryo lab).
    REF200 for the current source for RTDs (From Cryo Lab)
    Glue for sticking RTDs to heat shield: VME Varnish (Name might be wrong, ask Aaron. From Cryo Lab).
    Appropriate transimpedance amplifier for AD590 (see ATF:2250) in Vacuum Can Temperature sensors.
    Kapton tape heater stickers (PSL lab)
    New Heat Shields (PSL Lab)
    Vacuum compatible wires (PSL Lab)
    D-sub crimp tool (Maybe Koji has it or look for it in other labs)
    New feedthrough cap with more pins (2x2 for heater pads + 4x2 for RTDs) (see this link, check with Aaron and 40m also)
  2. Temperature sensor circuit:
    Design and solder new temperature sensor circuit. Refer to Aaron's designs (sent in email).
    Test the circuit with RTDs.
    Solder about 3 inch long vacuum compatible wires (2 at each end) of RTDs with male D-sub pins crimped to their ends.
  3. Heater pads and heat shield:
    Determine the size and number of heater pads required in each heat shield.
    Using a new blade, scrape off the insulation on top of pads of heater stickers.
    Solder about small length vacuum compatible wires at the pads of heater stickers. If two pads need to be connected, connect them in series using such small wires.
    Crimp male D-sub pins to the ends of the wires.
    Install the pads on the inside of heat shields making sure to avoid the opening for cavity supports.
  4. New Vacuum Can Temperature Sensor circuit:
    Modify the circuit (maybe solder a new one on a prototype board) for AD590 temperature sensors.
    Use ATF:2250 to select a new opamp or look for better ones.
    We want to reduce thermal drifts and keep input-referred current noise of the opamp low.
    Insulate the new box well with thermocol shields and keep connectors identical.
  5. Assemble and testing:
    Using a very small amount of varnish, stick RTDs to the heat shield on the outer side.
    If possible and if feedthrough cap allows, add two back-up RTDs on the heat shield as well.
    Test the temperature sensors and heater pads and record data.
    Using mass and material properties of heat shield (by calculating specific heat), get an estimate of heater pad's heating power as a function of current sent.
    Test the new temperature sensor box for vacuum can by replacing it with the existing circuit.
  6. Replacing old shields and sensors:
    Disconnect all wires going into the vacuum can.
    Clear up space on the table (behind south PMC, there is some space) for temporarily storing optics.
    Take off the beatnote detection setup by lifting the platform out.
    Open the vacuum can (following its own procedures).
    Take out the cavities with the heat shields.
    Stick aluminum tape on the inside of vacuum can. It is currently dark colored inside.
    Replace the heat shields with the new ones.
    With the appropriate feedthrough cap, crimp vacuum compatible wires of good length (to keep slack) to the feedthrough cap.
    Crimp female D-sub pins at the end of these wires and connect them to heater pads and RTDs.
    Place the cavities with shields on back in the can and close the can. Pump down.
  7. Aligning again:
    Put back the beatnote platform back in place.
    Align the laser into the cavities again. (Use PSL:2253 for notes)
    Align the output from cavities to overlap the beams properly.
    Test if we are back to comfortably locking and moving beams in beatnote frequency space.
  8. Plant model and PID tuning:
    Do Step response tests to figure out cavities specific heat and conductivity with Vacuum Can and each other.
    Treating Cavities and Vacuum can as point masses, model a set of differential equations representing thermodynamics of cavities. (See PSL:2191 and PSL:2194)
    Write a code to simulate the model and work as a fake plant for the PIDlocker_beta.py
    Run some tests to see if the fake plant responds similar to the real plant and modify it accordingly.
    Run PIDlocker_beta.py with the fake plant to tune the PID coefficients faster than with actual plant.
    Test with the tuned parameters. Tune. Test. Repeat.

Hopefully, by the end of this work, we get better stability on beatnote frequency locking to get good spectrum reading at higher resolution from Marconi.

  2261   Tue Dec 4 15:05:56 2018 anchalDailyProgressTempCtrlOptimal circuit for transimpedance of temperature sensor for Vacuum Can

Choosing better TIA opamp (Continued from ATF:2250):

I'm summarizing the analysis of Awade and Zach (40m:8125 and ATF:1752) in the context of the specific application of transimpedance amplifier for the AD590 temperature sensor.

Summary of offsets and thermal coefficients op amps
Parameter \\\\   opamp Unit OP27 OP07 LT1012 OPA827 OPA140 LT1028/LT1128
Input Voltage Offset \mu V 30 30 30 75 30 30
Thermal coefficient of input voltage offset \mu V/ K 0.2 0.3 0.2 0.1 0.35 0.25
Input current offset nA 15 0.9 0.03 0.003 0.005 25
Thermal coefficient of input current offset pA/K 80 8 0.3 Not mentioned Not mentioned Not mentioned
Long term offset drift \mu V/ Month 0.2 0.3 0.3 Not mentioned Not mentioned 0.3
Input bias current nA 20 1.5 0.08 0.003 0.005 40
Thermal coefficient of input bias current pA/K 100 13 0.6 Not mentioned Not mentioned Not mentioned
Voltage noise density nV/\sqrt{Hz} 3.5 @ 10Hz 10.3 @ 10Hz 17 @ 10Hz 7.5 @ 10Hz 8 @ 10 Hz 1 @ 10 Hz
Current noise density pA/\sqrt{Hz} 1.7 @ 10Hz 0.32 @ 10Hz 0.02 @ 10Hz 0.0022  @ 1kHz 0.0008 @ 1kHz 4.7 @ 10 Hz

AD590 datasheet says that it has input current noise density of 40 pA/\sqrt{Hz} without mentioning the frequency of this value or corner frequency (or any plot showing this data).

I did a liso analysis with a simple transimpedance circuit of transimpedance = 16667 Ohm and tried all the above opamps. Attached is input referred noise calculated by total output voltage noise density divided by the transfer function of the circuit.

It is clear from this analysis that we would be comfortable below 40 pA/\sqrt{Hz} with OP07, LT1012, OPA827, and OPA140. So to choose a particular opamp, we need to look into offset voltage and current drift of these opamps. The voltage offset drifts do not matter much as 1 uV/K translates to 60 uK/K of temperature readout difference per kelvin change in chip temperature. We need to achieve stability up to mK only. The current offset drift of 1pA/K translates as 1uK/K of temperature readout difference per kelvin change in chip temperature. So with given values, in my opinion, even current offset drift does not matter much. But it would be good to have low current offset and bias current features of FET inputs. So the winner is chosen as OPA827.

I'm attaching .fil and notebook file of the analysis in .zip file as well.

Edit: Wed Dec 5 15:39:29 2018

Adding one more calculation here. Assuming that the resistor used is thin film resistor with 50 ppm/K thermal drift, drift in transimpedance would be (1.6k*50e-6) Ohm/K. Then 1 K change in resistor temperature will look like:
\frac{300 \mu A \times (1.6e3 \times 50e-6 )\Omega}{1 \frac{\mu A}{K} \times 1.6e3 \Omega} = 15 mK 

15 mK change in perceived temperature. So this is the most important factor for us and we need to use the least possible thermal coefficient resistor available with very good insulation of the circuit. On Digikey, I'm seeing a minimum of 10ppm/K resistor for 1.65kOhm value. This should give us 3mK change per K change in resistor temperature. I'll look further if we can get even better resistors.

Attachment 1: VacCanTemSensorTIAOpampOptimization.pdf
Attachment 2: AD590TIAmp.zip
ELOG V3.1.3-