40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  PSL, Page 11 of 52  Not logged in ELOG logo
ID Date Author Type Category Subject
  2105   Sat Feb 24 21:25:08 2018 ranaDailyProgressMode matchingemcee Hammer my mode

also Haocun at MIT started to convert alamode to python a few years ago. I don't know if anyone has gone further: https://github.com/Haocun/alm

  2104   Fri Feb 23 20:44:12 2018 CraigDailyProgressMode matchingemcee Hammer my mode

Today I altered beamPath.m in alamode to support gwmcmc.m, which is pretty much emcee for matlab.  (The gw in gwmcmc stands for Goodman-Weare MCMC algorithm, not gravitational waves). 

It's capabilities are pretty limited, all it can do is move around optics.  It cannot set hard limits on where an optic can be placed yet, and it cannot vary a lens' focal length.  It would be easy to add these capabilities for the future.

My log likelihood for the MCMC algorithm is -0.5 * [ weight1 * (1 - overlap)^2 + weight2 * positionSensitivity^2 ], where weight1 = 100 and weight2 = 1.  The user can choose how much to weight each metric which quantifies the quality of the mode match.  Overlap and positionSensitivity were already calculated for me by alamode.

I ran the MCMC on our North path mode matching, allowing two of our lens to move around by about 20 cm for our old lens focal lengths.  Initially, Lens1 was 0.9625 m from the PMC and Lens2 was 1.3717 m.
I get two peaks of different mode matching, which I thought was pretty cool.  My final results for the Lens2 position ended up pretty far away from where I started, which is not physically possible in our setup.  Need to add hard limits to this. 

Not sure how to distribute this.  It's in the tar in this ELOG.  Will also copy this to Git/labutils/alm.  Once it's cleaned up, our future person could make a pull request on github/alm.


This fragility of MM is one of those things we ought to develop a MCMC for. Jenne did something like this for the 40m input mode matching a long time ago, but that was before I understood what corner plots were for.

I wonder if JamMT or alaMode have the ability to be run to generate corner plots. If so, we could find out the sensitivity to lens positions and lens focal length errors in a visually useful way for each mode matching solution (generated from the discrete set of available focal lengths in the CVI catalog).

Might be a project to give to the CTN SURF this summer.


Attachment 1: MCMCAlamodeOptimizedModeMatchingSolutionXAxis.png
Attachment 2: NorthPathModeMatchingMCMC.tar
  2103   Fri Feb 23 13:15:22 2018 awadeMiscSafetyWater leak in the lab

Checked the piping again this morning.  The water is just a slow drip now. The facilities people put duct tape around the pipe crack and isolated the source of water on the floor above.  Don't think its safe yet to turn the rack back on, given the proximity of the water and the quality of the patch job. 

I called facilities to find out what the status of the job was and the timelines for fixing.  They didn't have the poly pipe in stock and have reordered. The earliest they can get to starting on the job will be Monday.  The guy responsible is away today.  We should call ext 4969 (Caltech plumbing shop) early on Monday to get an update on expected completion time of the job. Until then we should redirect effort into SURF search, noise budgeting, scatter modeling, PID modeling, FSS sub-noise budget etc.



We have a steady drip of water coming down from the recently updated pipes.  Apparently the pipe is cracked all the way up to the ceiling.

We've shut down the UPS and all the circuits around that corner of the lab.  Facilities people are here looking into the issue. 

There was quite a lot of water pooled around the west side of the optical table. Craig has mopped this up, although it did get under the table legs and under the tiles.  All the electrical stuff under the table was on racks off the ground. Dripping is coming from pipes directly above the rack but it appears that none of it has made it into the rack itself.  We are removing all the very valuable electronics (e.g. marconi and oscilloscopes) and none appear to have water on or around them.

Lasers are shut down.



  2102   Fri Feb 23 07:51:51 2018 ranaDailyProgressMode matchingemcee Hammer my mode

This fragility of MM is one of those things we ought to develop a MCMC for. Jenne did something like this for the 40m input mode matching a long time ago, but that was before I understood what corner plots were for.

I wonder if JamMT or alaMode have the ability to be run to generate corner plots. If so, we could find out the sensitivity to lens positions and lens focal length errors in a visually useful way for each mode matching solution (generated from the discrete set of available focal lengths in the CVI catalog).

Might be a project to give to the CTN SURF this summer.

  2101   Fri Feb 23 07:49:50 2018 ranaDailyProgressTempCtrlNew PID beta python script and tuning BN frequency PID

Something new in PID loops ! Awesome. Let's see some before/after comparison time series and spectra.


The differential term is approximated by the backward difference (see ch 10, Åström and Murray). For the case where the derivative is filtered with the characteristic time Tf the D term is given by 

D_k = \frac{K_d}{T_f + \Delta t} (p_k-p_{k-1}) + \frac{T_f}{T_f + \Delta t} D_{k-1}

  2100   Thu Feb 22 15:15:20 2018 awade, CraigMiscSafetyWater leak in the lab

We have a steady drip of water coming down from the recently updated pipes.  Apparently the pipe is cracked all the way up to the ceiling.

We've shut down the UPS and all the circuits around that corner of the lab.  Facilities people are here looking into the issue. 

There was quite a lot of water pooled around the west side of the optical table. Craig has mopped this up, although it did get under the table legs and under the tiles.  All the electrical stuff under the table was on racks off the ground. Dripping is coming from pipes directly above the rack but it appears that none of it has made it into the rack itself.  We are removing all the very valuable electronics (e.g. marconi and oscilloscopes) and none appear to have water on or around them.

Lasers are shut down.


  2099   Thu Feb 22 00:44:35 2018 Craig, awadeDailyProgressMode matchingFirst pass North path mode matching solution

Just an update on North path mode matching.  Today I found an optimized North path mode matching using alamode, installed the two new mode matching lenses, replaced the green light resonant EOM we accidentally installed with an IR broadband one again, and took some more beam profile measurements for sanity.

Tomorrow I want to align into the North cavity and lock this dang thing.  There are still some post-Faraday isolator waveplates missing in the North path too.



Attachment 1: AlamodeOptimizedModeMatchingSolutionXAxis.png
Attachment 2: NorthPathBeamProfilePlotsAndScripts.tar
  2098   Tue Feb 20 22:28:46 2018 Craig, awadeDailyProgressMode matchingFirst pass North path mode matching solution

So awade and I decided that the mode matching in the North path was so bad that we are redoing the entire thing from the PMC forward.
Our old mode-matching used short focal length lenses, which caused too tight of beam waists, short Rayleigh ranges, and was highly sensitive to lens position.  The results were posted in the ELOG this is replying to.  Based on measurements we took and propagated forward with alamode, we ended up with a beam width of about 1 mm at the cavity, with absolutely no waist there.

Now we are starting with the PMC beam waist as calculated by Evan in LittlePMC.ipynb, and mode matching that beam into our cavity.  I just measured the PMC exit beam, to see if Evan's calculations were correct.  They were.
Evan quotes a PMC beam waist of 332 µm located at the center of the triangle base.  We ran the exit beam through a single lens with focal length = 343.63 mm placed 10.0 cm after the PMC, and measured the beam profile after the lens at 14 bolt holes each spaced one inch apart.  We we get is plot 1.

In the plot, the first waist we see is the PMC waist, and the second is the waist for the EOM.  I am in the process of adding the other mode matching lens to this new beam profile.  With this more collimated beam, it will be a lot easier to place optics which are relatively insensitive to lens placement.

EDIT: Added in new beam profile measurements in dark blue after adding in PBS, HWP, QWP, EOM, and two steering mirrors, and measuring all of their path lengths.  I assumed a 2 cm lithium niobate crystal in the EOM, with index of refraction of 2.23.  Measurement still agrees very well with alamode fitting.  Also took photo of new optical arrangement.

Attachment 1: PredictedPostPMCBeamProfileXAxis.png
Attachment 2: NorthPathBeamProfilePlotsAndScripts.tar
Attachment 3: NorthPathPostPMCOpticalTable.jpg
  2097   Mon Feb 19 23:47:37 2018 Craig, awadeDailyProgressMode matchingFirst pass North path mode matching solution

Today I took some measurements of the North path beam profile, calculated a beam waist using awade's GaussProFit.m, and used alamode to find our current overall beam profile up to the cavities.
This is a coarse estimate, I doubt it is completely correct.  The main concern is the length of the path uncertainties.  On some of the path lengths I had to take my best guess, particularly about where in the vaccum can the cavity is. 
Our cavities target waist is 178.55 µm, but this beam profile puts our beam size at 2.5 mm in the cavity. 
This is obviously wrong.  It's pointless to say anything more about this until we get this fixed, but I wanted to post my code here in a tarball.  Green points on the plot are my beam profile measurements.  Will continue working on this tomorrow.

Some facts:
Cavity target waist: 178.55 µm
Cavity length = 3.68 cm
Cavity mirrors RoC = 0.5 m
Lens 1 focal length = 103.1 mm
Lens 2 focal length = 154.7 mm
Pre EOM Lens focal length = 103.1 mm
Beam Intensity Profile GFit value = 98% (This is a measure of how Gaussian our beam is, apparently the PMC is doing its job very well.)

EDIT: awade and I fixed the beam waist measurements by dividing them by two.  I failed to realize that alamode and GaussProFit assume beam waist radii, not full beam waist diameters.
Attached are our new North path mode matches.

Attachment 1: NorthPathBeamModeMatchSolution.tar
Attachment 2: ModeMatchingSolutionXAxis.png
Attachment 3: ModeMatchingSolutionYAxis.png
  2096   Sat Feb 17 18:04:53 2018 CraigDailyProgressMode matchingSet up beam profiler for North path mode matching

Today I set up the North path to do some proper mode matching using the beam profiler.

awade has been fighting the RFAM hump we see jumping around at 2 kHz in our beatnote spectrum.  To do this, he has been realigning the North path left and right.  The last thing he did was replace the broadband 14.75 MHz EOM with a resonant one.  After realigning, we were unable to recover the TEM00 mode of the North cavity.

Our North path mode matching should not be so fragile that we cannot do basic optics steering without destroying the mode.  Also, with our PMC, we should be near 100% visibility on the North path, but the best number I was able to get was 39% last time we found it.  Finally, when I look at the cavity shields when purposely severely misaligning the periscopes into the cavities, I see that the spot size for the South path is significantly smaller than the spot size for the North.  This all points to abysmal mode matching on our North path (to say nothing of the South, which also needs improvement, but it okay at least for now).

I took out the second steering mirror after the new 14.75 MHz EOM, and placed the beam profiler just after it. (pics 2 and 3)  This will give us our initial beam, and allow us to figure out what we are injecting into our North telescope.  Then we can use alamode to find the optimal spots for our lenses given our cavity position.  I don't anticipate huge changes in the telescope, maybe moves on the order of centimeters. 

I also fought with the DELL computer with Windows and DataRay on it for about an hour and a half because it would not boot, eventually succeeding in getting it to boot by going into its BIOS and disabling booting from something called a "Diskette Drive" and instead booting from the hard disk drive (HDD). 

I took a first data point, see picture 4.  Beam looks very nice and Gaussian.  I will get more tomorrow and fit it using alamode.

Attachment 1: NorthPathGeneralSetup.jpg
Attachment 2: SecondNorthPathSteeringMirror.jpg
Attachment 3: BeamProfilerInstalled.jpg
Attachment 4: FirstBeamProfilerDataPoint.jpg
  2095   Sat Feb 17 00:23:38 2018 Craig, awadeDailyProgressBEATBeatnote Stabilization PID results from today

Top plot is smoking gun that awade's new PID beatnote controller works on a timescale of half a day.

I've been trying to relock the North path tonight, so I looked at the North slow volts to get an idea of where the resonance frequency should be.  I also plotted the beatnote for good measure, to see if there was any slewing going on. 

Turns out, the nice damped oscillation in the beatnote frequency you see is due to awade's PID loop controlling the North cavity shield temperature this morning.  Pretty cool.

This is incredibly useful, because it means that when we get a beatnote again, once it settles down, we'll always be able to take low-range, low noise PLL measurements because the Ncav shield temp is being actuated to keep the beatnote from moving around.

It seems like awade can probably do even better, what with all the overshooting.  Get down from under-coupled to critically coupled PID control.

EDIT:  The NCAV Shield Heater PID loop settings were
P = 0.02500
I  = 0.00001
D = 0.00000

Attachment 1: Screenshot_from_2018-02-17_00-23-28.png
  2094   Fri Feb 16 12:41:32 2018 awade, CraigDailyProgressNoiseBudget200-3000 Hz hump search

Following up on the last optimization of RFAM (see PSL:2087), I tried to obtain the -80 dBm RFAM at the north FSS refl PD with the flipper mirror up.  For some reason I am unable to reproduce the previous achieved RFAM lower bound (-80 dBm). 

We seem to be limited to -50 dBm with the flipper up.  I'm not sure what is going on here. Its possible that the large unfocused beam of the flipper reflection is givening secondary beams going through the Faraday isolator and we are actually looking at RF components mixed down with itself on a secondary reflection.  Also even after installing a PBS before the PMC there is still significant polarization drift.  The RFAM stays optimal for only 15 minutes or less. The EOM has an insulated hat, the waveplates and PMC do not. I don't know if we need to attempt a temperature control of these critical components.

Below I have attached a few ASDs taken with Criag's new live calibrated ASD generator (see PSL:2090).  One is taken before optimization of the RFAM on the north path, the next is imediatly after at 19:34 pm yesterday and the third is from this morning.  The system stopped logging BN spectra some time after 7 pm yesterday. When I checked early this morning at about 1 am it hump had returned.  I don't have the csv data files handy, so I am unable to complie them into a single plot, but you can see that the hump was greatly reduced with polarization optimization into the north 14.75 MHz EOM. 

It seems like this hump that pops up is a 14.75 MHz residual AM issue.  I'm guessing that the mechanism is that the lock point error offset is allowing intensity noise to couple into our measurement.  However, in the past Evan implemented an ISS only to find that it didn't improve the BN noise. A good test would be to inject an AM modulation line or swept sine and see how it propagates to the BN above what we would expect from photo thermal noise.   We need to address how to stabilize or remove this polarization drift. Active control sounds like a massive pain. Passive temperature stabilization might buy us an 30 to 60  minutes of good measurement but is not a good permanent solution.  Ideally we would locate the worst offending optic that is causing drift and deal with that.

Edit awade Fri Feb 16 13:07:12 2018: staring at the second attachment Beatnote_ASD_20180215_193422.pdf, something doesn't seem quite right. We definitely saw 0.3-0.6 Hz/sqrtHz on the SR785 last night. However, the roll up below 100 Hz in the auto generated ASD doesn't seem to have the same characteristic shape for scatter that we were looking at before.  Craig was working on scatter in the transmission table but the scatter shelf was back this morning so not likely that we really found the worst offending scatter.  Also, not sure if we are limited by the ADC noise above a 1 kHz there.  We need to go back an measure this with the SR785 and also check the PLL loop gain.  

Attachment 1: Beatnote_ASD_20180215_121922.pdf
Attachment 2: Beatnote_ASD_20180215_193422.pdf
Attachment 3: Beatnote_CurrentASD.pdf
  2093   Thu Feb 15 18:45:35 2018 CraigDailyProgressscatterNeed more Black Glass Hexagonal Bases

Made nine black glass hex beam dumps today.  Only stopped because we ran out of hex bases.  Need to order more.
Cleaned the glass days ago with the Branson 8200 ultrasonic cleaner.  Wiped down with methanol to remove water evaporate residual.  Have enough black glass for at least three more hex beam dumps, plus some weird big ones or ones with holes in the middle.
Will now dump all beams in transmission with black glass dumps.  Hope to see some reduction in the scatter shelf, but not optimistic since we think the main scatterers are coming from the windows of the vaccan.

Attachment 1: HexagonalBlackGlassBeamDumps.jpg
Attachment 2: RemainingBlackGlass.jpg
  2092   Thu Feb 15 10:36:22 2018 awadeDailyProgressTempCtrlNew PID beta python script and tuning BN frequency PID

With some activity around the table we have had to lock and unlock the PLL and reset the IOC a few times.  This this has lead to some step function changes to the driving heat to the shields that has made it hard to control the beat note frequency.  The new cavity shield heater driver, along with acromag voltage DAC, provides more stable heating than the bench top power supply that was being used before.  However, for our ultimate measurement we want to be able to dial in a beat note frequency and have it held to a set point within 100 Hz.  

Issues with the finite-difference approximation in the PID python script

Up until now we have been using a python port that Yinzi wrote of a 40m perl script used for PID locking.  This script used the finite-difference PID approximation.  Essentially this version of PID computes the discreet derivative of the actuators action and adds this on each loop cycle to the live value of the actuator output. The ideal form of PID controller signal is

v(t) = K_p e(t) + K_i \int_0^t e(\tau) \textrm{d}\tau+K_d \frac{\textrm{d}e(t)}{\textrm{d}t},

where the error signal e(t) = s - p  is the set point minus process variable. In the finite-difference approximation this is reduced on each step to

v(t_k) = v(t_{k-1}) + \Delta t\frac{\textrm{d}v(t)}{\textrm{d}t}

where for the case of discrete differentiation 

\left.\frac{\textrm{d}v(t)}{\textrm{d}t}\right|_{t=t_k} = K_p \left [ e(t_k)-e(t_{k-1})\right ] + K_i \left [e(t_k)\right ] + K_d \left [e(t_k)-2e(t_{k-1}) + e(t_{k-2})\right ]

The above two equations are strait forward to implement and can can be very fast. However, speed is rarely an issue with most of our applications with EPICS channels sampled at 10 Hz.  Even faster frequencies are probably not an issue implemented in python on any consumer grade computer.

One thing that is obvious is that on each iteration of the PID loop work is done to subtract a number added on the last iteration.  For the implantation used with EPICS the actuation value is written out to the channel and then read back in for the next step. This allows the user to manually kick the actuator values from a medm screen and means that the system state is robust if/when the PID process is killed.  However, for finite precision variables/EPICS channels this can lead to a rounding error which can propagate a proportional gain into integration and mix the differential term with integration and proportional action. This is more pronounced when the K value products with the error variables are small compared to the number precision used.  We've been using EPICS channels with precision 4 that has lead to some strange behavior.  This has been problematic for making intuitive adjustments to the PID variables given that the P, I and D terms are not as orthogonal as they should have been.

I've attached the finite-difference version of the script below for comparison. Two other features it had were the application of hard limits to prevent the actuator driving beyond its physical limits and a slew rate limit.  Both of these features are kind of the right idea but implemented in the wrong way. 

The rail limit on the actuator is supposed to prevent the PID controller from destroying the plant.  However, in this implementation of discreet PID control applying a saturation function to the control signal applies a non-linear correction to the Kp and Kd terms as well when the integrator drives to the edges of the actuation range. All of the information or 'memory' of the controller should be contained in the integration term.  At the edge of the range all these terms mix.  A better implementation would be to compute the degree of overshoot beyond the controller's limits and feed back to the integrator (a loop within the loop) to pull the control signal back within range within some characteristic time. This way we smooth the edges of the controller's response at the edge of its range; in the Fourier domain this means less strange conversion and instability at the edge when actuator saturates and hits a hard non-linear step in response. In practice this doesn't require a separate while loop in the PID algorithm, it can just be a separate term that feeds the actuator saturation back to the integrator running value with some characteristic time variable (see below).

The slew limit is supposed to limit the impact of higher frequency noise and that of glitches and kicks to the process.  The differentiator term in the PID has a response proportional to f,  for a good stable loop some kind of pole needs to be added at a frequency above the band of interest to make the system stable.  Usually some low pass response in the plant, sensor or actuator is enough.  Applying the artificial slew rate limit to the controller's actuator isn't strictly the best way to address stability and immunity to glitches as once this value is saturated it mixes P, I and D terms, just as in the above case with integration.  A better approach would be to apply some LP filtering or averaging of the Kd terms alone to shape the response of this term only.

Improved beta python PID locker script

I've rewritten part of the PID locker script to do away with the above mentioned finite-difference approach.  The changes follow the example given in Åström and Murray's book Feedback Systems, chapter 10. The terms used in the controller output are computed once for every iteration of the loop with only the integral carrying over from each cycle.  This avoids the round error issues metioned above and allows sweperate treatment of integrator wind-up and filtering of the derivative term. 

The proportional term (P) is just proportional the process error signal e(t_k) = s_k - p_k,

P_k = K_p e(t_k)

The integral carries values from the previous iteration of the loop as well as a saturation feedback

I_k = I_{k-1} + K_i \Delta t e(t_k) + \Delta t/T_t (v_{k-1}-sat(v_{k-1}))

Here sat() is the saturation function applied to the output of the PID controller, this may be a hard rail limit or a softer edged function that models the saturation of the actuator. This second term in the integrand term brings the integral term back into range gracefully within some characteristic time Tt. The actual python script gives the option to omit this Tt term, setting it to a large number in the case it is omitted from the .ini config file. The user should take care not to set this channel to zero. It might be a good idea in the future to set this to a non-reciprocal number.

The differential term is approximated by the backward difference (see ch 10, Åström and Murray). For the case where the derivative is filtered with the characteristic time Tf the D term is given by 

D_k = \frac{K_d}{T_f + \Delta t} (p_k-p_{k-1}) + \frac{T_f}{T_f + \Delta t} D_{k-1}

where pk is the process variable and \Delta t is the time step. The first term contains the instantaneous derivative of the process in each iteration. The second is a kind of averaging in the time domain or pole added in the frequency domain.  This may potentially improve stability of loops when the plant response is faster and also improve response to glitches. When Tf is set to zero, Dk reduces to the familiar discrete derivative. If the user omits a channel for Tf then the value defaults to zero.

Code for the beta python PID locker is attached below and is also committed into the ctn_scripts git repository.

Testing beta

I am currently testing the beta script on the laser slow frequency controls and the cavity heater shields. They seem to be working well on the laser slow controls.  Previously the applied actuator voltage would flicker up and down between iterations by 0.5 mV or so now it is on order of 0.1 mV (the least significant bit).  Using the only the integrator term to carry values between iterations seems to be beneficial here. It seems that the loop is using the laser electronics less to do its filtering.

The beat note frequency control with feedback to the north cavity shield is still a work in progress. The beta script works much better than its predecessor for the orthogonality of the P, I and D terms.  Previously just applying a small proportional term was effectively leading to tiny integration, making it hard to judge what combination of values of P an I to choose. The response of the cavity to heating is very slow, I'm finding that the currently with values of  P = 0.013, I = 0.0001 and D = 0 that I'm getting oscillations on the order of 30 minutes. 

I'm thinking that I might need to apply an active relay test to determine the critical period and gain of the system. This would be faster to converge than a step test and involve less uncertainty given the strong coupling of the system to the temperature drift of the environment.  This kind of simple auto tuning could be integrated into the beta script to given initial estimates of the gain parameters using the Ziegler–Nichols rules.

We may also need to consider implementing feed forward.  This might be something best left for a SURF.


For further reading see for reference chapter 10 of Murray: http://www.cds.caltech.edu/~murray/books/AM08/pdf/fbs-pid_08Nov16.pdf

Attachment 1: PIDLocker_scripts_finitediffAndNewBeta.zip
  2091   Wed Feb 14 17:43:30 2018 CraigDailyProgressComputersws3 hosting beatnote ASDs online

I have installed apache2 on ws3 and made dailyNoisebudgetPlotter.py save Beatnote_CurrentASD.png to /var/www/html/, and created a website on our new server which updates itself every minute with the latest beatnote ASD.

We still need to add port forwarding from the gateway to ws3.  Once we do, to see our beatnote webpage, go to http://ws3.ligo.caltech.edu/Beatnote_CurrentASD.html.

EDIT: Added port forwarding from gateway (public IP:, local IP: to ws3 (local IP: on port 8088 for both servers.  Had to modify both /etc/apache2/ports.conf and /etc/apache2/sites-enabled/000-default.conf to listen to port 8088 instead of 80, then run sudo service apache2 restart.

To visit our website, go to

  2090   Wed Feb 14 02:21:55 2018 CraigDailyProgressBEATws3 is making beatnote ASDs every five minutes

Made crontab on ws3 make calibrated beatnote spectra every 5 minutes.  One example is below.

Plot is made in ~/Git/cit_ctnlab/ctn_noisebudget/dailyNoisebudgets/dailyNoisebudgetPlotter.py. Calibration is just the Marconi FM Deviation multiplied by the ASD.  Full calibration requires the whole PLL open loop gain.

Made a bash script nbPlotterRunner.sh which runs dailyNoisebudgetPlotter.py.  It runs the plotter, and can be called by crontab.

Overall Hz/rtHz levels seem okay.

Attachment 1: Beatnote_ASD_20180214_022002_ASD.pdf
  2089   Tue Feb 13 00:02:52 2018 CraigDailyProgressDAQASD estimates - SR785 vs Gabriele's cymac3 ADC

There appears to be a factor of 5/3 difference between the ASD output of the SR785 and the CRIME lab's cymac3 ADC.  To be clear, \frac{5}{3}\mathrm{ASD_{cymac3}} = \mathrm{ASD_{SR785}}.  I am not sure why at this point.
Earlier today, Gabriele helped me calibrate cymac3, telling me the voltage range (+- 10V) and ADC bit number (16, so 2^16 = 65k counts), giving a calibration of \dfrac{20}{2^{16}} \dfrac{\mathrm{V}}{\mathrm{counts}}.  When I apply this calibration to the median-averaging ASD code Gautam provided me, I appear to underestimate the true ASD, where the "true ASD" is as reported by my SR785. 

The first plot is the SR785's response to a 1 Vrms sine wave at 512 Hz, with 1 Hz bin widths.  The ASD peak at 512 Hz reaches 0.7086 Vrms/rtHz.

The second plot is the calibrated cymac3 ADC response with 1 Hz bin widths.  At 512 Hz it reaches only 0.4252 Vrms/rtHz.

In the end, I decided to just apply the mystery gain of 5/3 to the ADC.  This is the final plot.  Seems close enough.

This ratio of 5/3 is suspicious and makes me think the calibration of the ADC is wrong.  I am having trouble locating the ADC datasheet.  I checked around at a couple of injection frequencies and things seem consistent with the correction factor applied.  I will look more into the ADC in the morning, but I don't want to spend very much more time on this.  The whole point is to have a quick, constant check on our beatnote ASD which is continually being saved and compared to the ASD from five minutes ago, ten minutes ago, an hour, a day, to easily see how our final product, the beatnote ASD, is moving all the time.  If we kill a bunch of noise, we want to know when and why.

EDIT: I checked the time series signal and found that the ADC was reporting half of what I was putting in.  This is because the cymac3 is expecting differential inputs, and our beatnote BNC is grounding the low input.  I didn't understand differential and single-sided ADCs until today, after reading this.  Turns out the fully-differential is able to double its input range sensitivity with the same voltage range input by splitting the input 50/50 and flipping the low input's phase by 180 degrees.  If you ground the low input, you halve your signal.  I corrected for this by multiplying my calibration by a factor of two to account for my signal being halved.

So now my factor of 5/3 becomes a factor of 5/6. 

But the problem still remains, why is the median-averaged ASD from the ADC and RMS ASD from my SR786 for my 1 Vrms sine wave injection giving different final results?
To explain this correctly, I have to go through the median ASD estimation process in Gautam's python code. 
First, we use scipy.signal.spectrogram to estimate a bunch of PSDs from our input time series.  We take the square root to get ASDs.  Then, we collapse along the time dimension by taking the median value for each frequency bin, call this the median ASD.  Finally, we divide by the bias factor of \sqrt{\ln{2}} to get from a median ASD to an RMS ASD, the industry standard.  This shown in Evan's thesis, Appendix B.

However, I misunderstood some of Evan's assumptions in this thesis.  Importantly, the Rayleigh distribution for magnitude is only good for zero-mean Gaussian noise.  If you inject a signal, your mean and your median are gonna be about the same at that frequency, because the signal completely drowns out the noise.  You have to first eliminate your signal, apply the \sqrt{\ln{2}} bias to go from a median to RMS ASD, then add the signal back in.

If you ignorantly multiply your entire ASD, including signal, by \sqrt{\ln{2}}, like I did, you will find that your ADC calibration results seem to be overestimated by a factor of about 5/6, because \sqrt{\ln{2}}=0.83255461115, \text{and } 5/6 = 0.8333333333.

To test this, Gautam and I used the RIGOL function generator to generate 1 Vrms of noise.  We found that (1) the two channels of the RIGOL produce very different actual levels of noise when 1 Vrms is requested, and (2) our median-averaged ASD python code produced the same noise levels as the RMS ASD taken by diaggui, which we are sure is right.

This is encouraging.  We now trust that the median averaged ASD estimation code is doing the right thing, particularly since it matches up with diaggui's output.  But the python code has the advantage of (1) being in python, (2) being median-averaged, and therefore robust to glitches, which our PLL has every time we change the Marconi carrier frequency, and (3) being easily callable and controllable whenever we want to take a permanent spectra. 

I plan to make a crontab tonight which runs the dailyNoisebudgetPlotter.py every minute or so.  I also have some javascript code from Max Isi which updates a webpage client-side to show whatever new plot has been produced.
I won't save every plot we make permanently, because each plot is ~200K, and there are 1440 minutes in a day, so 288M in plots would quickly become ridiculous.  But I think saving one from every thirty minutes is good, ~1M of plots each day is doable.

Attachment 1: SR785Calibration_1Vrms_512Hz_SineWaveInjection_Attenuation_4dBVpk_Avg_20_Span_800Hz_13-02-2018_000748_Spectrum.pdf
Attachment 2: ADC_Calibration_Signal_20180212_235937.pdf
Attachment 3: ADC_Calibration_Signal_20180213_000203.pdf
  2088   Mon Feb 12 20:03:53 2018 awade, CraigMiscLab InfrastructureFlipped circuit breaker at around 8 pm

Flipped circuit breaker at around 8 pm.

I looks like we've overloaded the UPS group one circuit.  I was operating a heat gun off some of the table power and flipped the circuit breaker.  

Unfortunately the lasers were running off this circuit. The whole point of the UPS was to avoid the hard shutdowns. We switching the lasers to group 2 on the UPS so that this doesn't happen again.

  2087   Mon Feb 12 16:29:50 2018 awade, CraigDailyProgressNoiseBudget200-3000 Hz hump search

Attempting to identify the source of the 200-3000kHz hump.  

Optimizing polarization into north BBEOM and AEOM

I made a number of optimizations of polarization into the modulating optics over the weekend.  The BBEOM used for fast actuation of the north FSS loop was optimized by driving the BBEOM with a 20 Vpp @ 101 Hz sin wave and minimizing the residual AM (as seen on the PMC reflection PD).

For the amplitude modulator used for the ISS RIN suppression, I deactivated this optically.  The polarization was aligned horizontal going into the AEOM and the following quarter-wave plate was set for maximum throughput.  In this configuration applied voltage to the AEOM results in little to no actuation.  I did this to remove the AEOM from consideration in diagnosing the 14.75 MHz RFAM residual.  

Attempting to improve the north AM residual from the 14.75 MHz modulation

I found that the residual AM, as see by the FSS Relf PD, was considerably higher than it could or should be. The initial level of AM was about -30 dBm.  With some adjustment of the two wave plates before the EOM I found I could reduce this level to -37 dBm. However, this was still a long way from the previous <-70 dBm achieved in the past.

After checking I was actually using a lambda/2 + lambda/4 pair I found that the pointing through the EOM (NP 4004) itself had an impact on the degree of AM reduction. It turns out that the strait shoot through the center of the aperture had a higher minimum RFAM residual compared to aligning the beam a little to the left on the output aperture (looking along the axis of the device). The beam is still well clear of the aperture but I was able to get to -72 dBm of residual AM.

What I found was that the AM would reduce for a minute or two and then creep back up to ~-40 dBm.  I suspected that this was temperature related. I pointed a heat gun at the EOM+ wave plates area at a distance of 1.5 meter for 5 seconds: it blew the AM reduction back up to -30 dBm.  It didn't seem to matter if the thermal hat was on the EOM or not.  I'm pretty sure these wave plates are zero-order but not sure how to tell just by looking at the optic, its possible that the label on the mount doesn't tell the truth.  

When I tried this optimization again today I had a lot of trouble finding an and optimal input polarization.  Eventually I've identified a source of polarization drift that is occurring somewhere between the 21.5 MHz PMC modulator and just before the wave plates into the 14.75 MHz oscillator.  This path is basically a two steering mirrors and the PMC.  I put a PBS in transmission between the PMC and the input to the north 14.75 MHz EOM. I found that the stability of the polarization alignment into that EOM improved significantly.  It was possible to get the residual AM to dip down to the -80 dBm noise floor of the analyzer (for that BW setting). There is, however, still a strong thermal dependence somewhere there which leads to the residual RFAM rising again.  

Side note: the orders for PMC mirrors indicate that p-pol mirrors were used.  Evan's notes don't seem justify this choice. I am working on the assumption that the PMCs should be operated using p- polarized light.




  2086   Sun Feb 11 16:14:23 2018 awadeNotesComputersPSL lab backups of lab computers

Ran a backup of ws3, the computer used for medm interfaces in the lab, it completed successfully:

controls@ws3:/media/controls/CTNLABBAK$ sudo dd if=/dev/sda bs=64K | bzip2 > /media/controls/CTNLABBAK/ws3Image.bz2
3815602+1 records in
3815602+1 records out
250059350016 bytes (250 GB) copied, 38551.7 s, 6.5 MB/s


The external drive is in the hard drives draw in the blue cabinet.



Clone of acromag1 was successful:

(pyenv)controls@acromag1:/mnt/external$ sudo dd if=/dev/sda bs=64K | bzip2 > /mnt/external/acromag1Image.bz2
3815602+1 records in
3815602+1 records out
250059350016 bytes (250 GB) copied, 58210.3 s, 4.3 MB/s

It hasn't reported any errors, not sure how to check the integrity.  

I am backing up ws3 now.


We don't have a full image of either acromag1 or ws3 in the PSL lab.  This could be a problem if we have a drive failer.  

I'd like to rebuild acromag1 at some stage using something newer than Ubuntu 12.01, but first we need backups.

In a tmux session on acromag1, I ran

sudo dd if=/dev/sda bs=64K | bzip2 > /mnt/external/acromag1Image.bz2

This should clone the whole drive into a compressed image but its going to take a while. To restore expect to run

bzcat /media/usb/acromag1Image.bz2 | dd of=/dev/sda


Will check tomorrow to see if successful.





  2085   Fri Feb 9 18:50:06 2018 awade, CraigDailyProgressBEATBN spectrum Feb 09, 2018

These measurments followed some dumping work around the refcav relfection photodiodes. See, PSL:2084.


OLG was measured using out1/out2 method.  The G/(1+G) invertion to OLG was done directly on the SR785. Plotted in attachement 1.

UGF is about 37 kHz

BN spectrum

Current beat note is at 17 MHz.  North cavity heater is set to 0.77320 W.

PLL settings are:
Marconi FM Devn: 10 kHz
SR560 Gain: 50
Beat note strength: -3.3 dBm

Calibrated BN spectrum is attached below, attachment 2

Data in third attachement and commited to the ctn_labdata git.

Attachment 1: PLLOLTF_09-02-2018_182645_TF.pdf
Attachment 2: 20180209_190340_CalibratedSpectrum_Spectrum.pdf
Attachment 3: 20180209_dailyBNSpectrum.tar.gz
  2084   Fri Feb 9 18:36:40 2018 awade, CraigDailyProgressscatterScatter dumping around FSS reflection PDs

I reinstalled the green glass dump in the north cavity FSS REFL PD prompt reflection path.  For some reason this was removed and a razor blade dump was in use instead.

The south FSS reflection PD was reangled the from 40 deg to 30 deg incidence.  The  polarization incident on the detector was flipped from s-pol to p-pol using a lambda/2 wave plate.  I installed a green glass dump to capture the prompt reflection from the PD. 

Looking at the output of the south Faraday reflection port there are two additional dots that are not coming from the cavity.  They appear to be either coming from inside the Faraday or from on of the optics immediately after (maybe the half-wave plate). We need to check the source of these DC fields.

A stitched beat note spectrum will be posted presently.

Attachment 1: 20180209_SouthReflectionPDWtDumping.JPG
Attachment 2: 20180209_NorthReflectionPDWtDumping.JPG
  2083   Fri Feb 9 11:36:08 2018 awadeDailyProgressNoiseBudget200-3000 Hz hump search

So  1-2 kHz feature has popped up from time to time in previous beats.  It seems to be mostly arise from changes to the AEOM (installing) and poor polarization alignment of the RF EOMs and BB EOMS.  I can't find in the elog anywhere where it was explicitly pined down by tara optimized it out with fine tuning alignment of RF EOM (see PSL:1311).  Evan also made a measurement of the coherence between the RFAM (PSL:1524) and the beat, this looks like a pretty credible source of the hump.

My suspicion is that this noise hump is too high to be seismic (unless its unconverted).  RIN coupling in through photo thermal effects should dominate at lower frequencies unless the power spectrum of intensity noise is strongly skewed to  higher frequency components.  I've attached the Photo thermal transfer function from the noise budget notebook below for reference.  This has a trace with previous RIN measured in the old setup. We need  to measure RIN again, however, unless its very different its unlikely the source. 

Hypothesis #1:

The the RFAM out of the resonant modulation EOMs is poorly optimized.  The stationary component of this residual AM creates a DC offset in the error signal that isn't wholly nulled by the FSS offset adjust. This lock point error means that the actual lock point of the FSS is slightly down the cavity fringe and that any small fluctuations in intensity vary the slope of the error signal are directly coupled to first order as if they were frequency noise.  If the error signal is properly zeroed on the resonance we would be immune to this effect to first order.  Slow temperature variations may slightly change the polarizations so optimizing the voltage offset in the FSS may not hold true after a room temperature change.  In the past (PSL:1994) we had suppressed the AM component 80 dBm/sqrtHz when measuring on the reflection PD using a flipper mirror in front of the cavity.  It had been better that this in the past and is worse in the north path by an order of magnitude. This has not been checked in the last few months.

Hypothesis #2:

We are not just looking at a stationary lock point error from RFAM but also a component that originates from the FSS EOM path or is coupled back through it.  The BBEOM in the FSS loop can induce intensity changes if it not a optimal polarization alignment.  This may convert what is supposed to be a phase correction to the light into an intensity change.  If there is noise in the EOM path of the FSS this can convert into noise through hypothesis #1.  There could also be a feed back where the RIN is made worse by dynamically feeding back through the FSS making more RIN from the BBEOM.  

One possibility here to test this hypothesis is to inject a signal in the BBEOM path to see if we can induce a narrow peak (or possible band passed noise component) that couples all the way through to the BN and the FSS error spectrum. 


Not that the ISS is not currently turned on.  The optics need a quick tune up and the loops should be switched back on. The ISS was inducing some phase as part of the AEOMs operation.  You can see this in the actuation signal of the FSS as it fights to compensate the ISS.  Between the two of them they should suppress intensity noise and the higher frequency discrepancy with the reference cavity frequency: but, they are not entirely orthogonal in practice.  The ISS definitly make the FSS EOM work harder.

Some measurements to make

  • Free running RIN of both the north and south paths
  • RIN when ISS activated and comparison of BN spectrum change
  • RFAM residual and why it isn't lower
  • Signal injection test in the FSS EOM path to see bad conversion of phase actuation in to intensity
  • AEOM phase conversion

Need to make thermal hats for all the remaining Lithium Niobate based modulators and maybe even the wave plates.



There is a big noise bump at 200-3000 Hz. Its not explained by the noise budget. How come?

Make some hypothesis an then test them.


  2082   Thu Feb 8 18:38:04 2018 ranaDailyProgressNoiseBudgetFebruary 7th Noisebudget

There is a big noise bump at 200-3000 Hz. Its not explained by the noise budget. How come?

Make some hypothesis an then test them.

  2080   Thu Feb 8 16:48:07 2018 awade, CraigDailyProgressNoiseBudgetBN spectrum Feb 08, 2018

Checking PLL OLG

Measured the OLG using out1/out2 method.  Did the G/(1+G) invertion to OLG directly on the SR785. Plotted in attachement 1.

Looks like a UGF of about 16.5 kHz

BN spectrum

Current beat note is at 8.98 MHz.  North cavity heater is set to 0.77422 W and will probably need to be raised a little to get us a little higher in BN frequency.

PLL settings are:
Marconi FM Devn: 10 kHz
SR560 Gain: 20
Beat note strength: -1.17 dBm

Calibrated BN spectrum is attached below, attachment 2




Attachment 1: 20180208_172015_PLLOLTF_08-02-2018_171734.pdf
Attachment 2: 20180208_175847_CalibratedSpectrum.pdf
Attachment 3: 20180208_dailyBNSpectrum.tar.gz
  2079   Thu Feb 8 12:42:49 2018 awadeDailyProgressLab InfrastructureUltrasonic bath broken

I turned on the ultrasonic bath this morning.  It looks like one of the front panel buttons for incrementing values of temperature and time is latched in the on state.  The interface now just sits there cycling 0-99 through set time with all other buttons disabled.  

I tried massaging the button to see if I could break the short but it appears to be stuck.  Don't think the bath will be serviceable anymore so we're down an ultrasonic bath.

  2078   Wed Feb 7 21:47:44 2018 Craig, awadeDailyProgressNoiseBudgetFebruary 7th Noisebudget

Interactive Noise Budget Link

Lots has happened in January, and we were without a beatnote for about a week there as we added the PMC to the North path.  I quickly took and calibrated a beatnote spectrum to see if any changes occurred, and none did.
I calibrated this in the quick and dirty way, which is taking our PLL control signal, multiplying it by the Marconi FM Deviation (10 kHz), dividing it by sqrt(2) to get Hz_rms and not the Hz_peak of the Marconi, and dividing by 2 again for the impedance mismatch between the SR560 output (50 Ω) and SR785 input (1 MΩ).

It looks like we have a very similar noise floor overall.  The biggest limiter is still scattering at low frequencies. 

Some stats:
PLL UGF: 17.5 kHz
Marconi FM Devn: 10 kHz
SR560 Gain: 20
Beatnote Frequency: 11.185 MHz
Beatnote Strength: -1 dBm (with 20 µW of power on the Newport 1811 RFPD)

To do:

2) FSS noise measurement added to noisebudgets, see if they can explain the 2 kHz hump.
3) Make this coherence measurement between our accelerometers and beatnote.

Edit: Gautam has helped me realize that my impedance matching multiplier has been incorrect ever since the beginning.  Since the SR785 is high impedance, it is nominally not affecting the system it is measuring, and should not be divided by two.  This convention was started by me a long time ago when I was using the Agilent (50 Ω input impedance) in conjunction with the SR785 (1 MΩ), so to get them to match I would divide the SR785 by two, but I should have been multiplying the Agilent by two. 
TL;DR: All of my noise curves below (Nov 2, Nov 13, Dec 13, Feb 7) should be multiplied by a factor of two.

Attachment 1: 20180207_221703noiseBudget.pdf
  2077   Wed Feb 7 17:37:10 2018 CraigDailyProgressBEATBeatnote Required

Some quick settings:

North visibility: 39%
Power on RFPD in trans: 200 µW (TOO MUCH)
Power on RFPD in trans with ND filter: 20 µW
Beatnote Freq: 17.945 MHz (Slewing down at 1 kHz/min)
Beatnote Strength: -1 dBm with ND filter on
South Slow Volts: -6.0375 V
North Slow Volts: 3.5596 V

Next step: Beatnote spectra, then vent and dump scatterers.

  2076   Wed Feb 7 16:40:30 2018 awadeNotesComputersPSL lab backups of lab computers

Clone of acromag1 was successful:

(pyenv)controls@acromag1:/mnt/external$ sudo dd if=/dev/sda bs=64K | bzip2 > /mnt/external/acromag1Image.bz2
3815602+1 records in
3815602+1 records out
250059350016 bytes (250 GB) copied, 58210.3 s, 4.3 MB/s

It hasn't reported any errors, not sure how to check the integrity.  

I am backing up ws3 now.


We don't have a full image of either acromag1 or ws3 in the PSL lab.  This could be a problem if we have a drive failer.  

I'd like to rebuild acromag1 at some stage using something newer than Ubuntu 12.01, but first we need backups.

In a tmux session on acromag1, I ran

sudo dd if=/dev/sda bs=64K | bzip2 > /mnt/external/acromag1Image.bz2

This should clone the whole drive into a compressed image but its going to take a while. To restore expect to run

bzcat /media/usb/acromag1Image.bz2 | dd of=/dev/sda


Will check tomorrow to see if successful.




  2075   Tue Feb 6 18:46:14 2018 awadeNotesComputersPSL lab backups of lab computers

We don't have a full image of either acromag1 or ws3 in the PSL lab.  This could be a problem if we have a drive failer.  

I'd like to rebuild acromag1 at some stage using something newer than Ubuntu 12.01, but first we need backups.

In a tmux session on acromag1, I ran

sudo dd if=/dev/sda bs=64K | bzip2 > /mnt/external/acromag1Image.bz2

This should clone the whole drive into a compressed image but its going to take a while. To restore expect to run

bzcat /media/usb/acromag1Image.bz2 | dd of=/dev/sda


Will check tomorrow to see if successful.



  2074   Mon Feb 5 22:17:24 2018 awadeDailyProgressNorth CavityRealigning North Refcav after PMC installation

Today I moved the 2nd mode matching lens forward (towards the refcav) in the north path by 1.5 cm. I also temporarily removed both MM lenses and reconfigured the heights from 3.1" to 3 " and properly centered the beams through the lenses. After these adjustments I found that the first pericope mirror was a little too low so I raised it by just a fraction so that a beam centered on the lower mirror would hit the center of the second mirror.

Unfortunately these adjustments have altered the beam path enough that I was unable to recover the TEM00 main mode.  I searched for the fundamental mode in the slow laser voltage range of 2.9 to 2.6 V but could only initially find spurious HOM that were too weak to decern on the CCD camera.  I think some of the changes in the lens positions have shifted the mode a little, but from Antonio's earlier modeling of the MM solutions (see PSL:1660) it shouldn't be more than a 4% viability change for lens position change of order 1 cm.

Its likely that I've missed alignment/frequency in the large parameter space.  Will try again tomorrow.


Attempting to optimize alignment into the north reference cavity. This is just a working note.

  2073   Mon Feb 5 20:17:37 2018 CraigDailyProgressRFQuartz Oscillator vs Marconi Phase Noise Measurement via Delay Line

I checked the phase noise of the quartz oscillator to make sure we aren't modulating our laser with a noisy sine wave.
Long story short, the quartz oscillator is about as good as the Marconi, and will be fine for locking our PMCs.

I learned from [1] and [2] what a delay line interferometer was, and how I could use it to measure our phase noise.  Since I already understood (approximately) what my mixer calibration was from the PLL math I'd done before, I used the PLL mixer for the delay line. 

Quick overview of delay line math: We want to characterize the noise associated with a signal V_\mathrm{in}(t) = V_\mathrm{in} \cos(\Omega t + \phi(t)).  We split the signal, one part goes into a mixer's local oscillator, and the other is run through a long cable to delay it by a time \tau.  Then the delayed signal is mixed with itself, and low pass filtered, giving an output of V_\mathrm{out}(t) = V_\mathrm{out} \cos(\Omega \tau + \phi(t) - \phi(t - \tau)).  If we are demodulating in quadrature, i.e. \Omega \tau \approx (n+1)\, \pi /2, and our phase noise is small \phi \ll 1, then V_\mathrm{out} \cos(\Omega \tau + \phi(t) - \phi(t - \tau)) \approx V_\mathrm{out} \sin(\phi(t) - \phi(t - \tau)) \approx V_\mathrm{out} [\phi(t) - \phi(t - \tau)], giving a linear relationship between our phase noise and mixer output signal.  Taking the FFT and calling our mixer calibration in volts/radians K_d gives us |V_\mathrm{out}(f)| = K_d \, |\phi(f)|.

One cable was 15.24 cm long, while the another was 15.494 meters, giving a difference of 15.342 meters.  According to the cable's documentation, the signal travel velocity was 1.46 ns/ft, making the relative time delay \tau= 73.489 ns.  Our modulation frequency \Omega = 21.5 MHz, so \Omega \, \tau = 1.5800, and \Omega \, \tau \approx \pi/2.  This is highly convenient, and I suspect these cables were made in the past for exactly this measurement.

I used a mixer calibration of 0.4074 volts/rad, based on my old mixer cal measurement.  This was probably not perfectly accurate, since for my old calibration I used LO = RF = +13 dBm power levels, and here I was using LO = RF = +10 dBm for the Marconi and LO = RF = +16 dBm for the quartz oscillator, but its fine to a factor of 2.


The first plot is the phase noise measurement.  The orange is the SR785 noise floor with 50Ω termination, the dark blue is a 21.5 MHz freerunning signal from the Marconi, and the light blue is the 21.5 MHz quartz oscillator.  Each measurement was taken with -50 dBVpk attenuation and 20 averages.  Here we see the Marconi and quartz oscillator are similar in noise magnitude, with the Marconi having a more complicated landscape and the quartz having something close to a  1/\sqrt{f} dependance until it runs into the SR785 noise floor.

The second plot is the frequency noise derived from the phase noise using |\nu(f)| = f \, |\phi(f)|.  From this we can see the frequency noise is well below anything we have to be concerned about right now.

I will use the quartz oscillator to lock our PMC tonight.  +7 dBm to the PMC EOM and LO should do it.

[1] EQ's Thesis, Appendix A
[2] Phase Noise Characterization of Microwave Oscillators

Attachment 1: DelayLinePhaseNoiseMeasurement_QuartzOscillatorVsMarconi_Spectra.pdf
Attachment 2: DelayLineFrequencyNoiseMeasurement_QuartzOscillatorVsMarconi_Spectra.pdf
Attachment 3: DelayLineFrequencyNoiseMeasurement_QuartzOscillatorVsMarconi.tgz
Attachment 4: DelayLinePhaseNoiseMeasurement_QuartzOscillatorVsMarconi.tgz
  2072   Sun Feb 4 20:35:19 2018 awadeDailyProgressNorth CavityRealigning North Refcav after PMC installation

Attempting to optimize alignment into the north reference cavity. This is just a working note.

Scanning laser frequency with the PMC locked

So when the laser is scanning frequency (using the PZT input) the PMC must have enough actuation range to follow a particular fringe whilest staying locked.  I've found that using a standard triangle ramp creates a discontinuity at the edges of the scan.  For the purposes of alignment I am uses a sine wave at 5 Hz initially with 1Vpp x gain 10 of the HV amp (plugged into the laser fast input).  Once I actually found some modes I turned the range down to about 0.3 Vpp x10 gain.

It took a few attempts of locking the PMC and slowly moving the laser slow (temperature) controls to find the TEM01 mode of the refcav. After about 1 GHz of tuning (about 0.25 V of slow voltage) the PMC runs out of range an must be locked on the next lowest fringe. This is about 32 V/FSR on the PMC.    From there I was able to align the refcav to the TEM01 and then crab walk down to the TEM00. 

Walking mode matching lenses

Initial best fringe visibility was about 31%.  I've started walking the two mode matching lenses that are mounted on micrometer translation stages.  I've moved the lens closest to the cavity 8 turns clockwise (4 mm, back from towards the cavity): this improved visibility to 55% (refl PD Vmin = 440 mV, Vmax = 1542 mV). This is the limit of this lens's motion, we will need to move its mounting full 1" bolt holes to provided more range.

I then moved the second lens (the one further from the refcav) back forward by 3 turns (1.5 mm away from towards the cavity) which improved fringe vis to 59% (refl PD Vmin = 400 mV, Vmax = 1542 mV). This lens in now at its maximum range of translation.  At 59% this is about as good as the south path now and better than its been so far since the rebuild.  We should work to get the MM up to >95%, an achievable goal, before relocking the PLL.

Tomorrow we will need to carefully shift both lenses to find a more optimal position for mode matching. 


  2071   Sun Feb 4 02:15:24 2018 KojiDailyProgressRFQuartz Oscillator for Driving the 21.5 MHz EOMs

Another info about ASMA202. In fact, ASMA202 and ASMA203 were very similar.



  2070   Sat Feb 3 18:08:26 2018 awadeDailyProgressPMCA few more modifications to the PMC north board

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: D980352-A_AWade20180202Mods.pdf
  2069   Sat Feb 3 18:03:10 2018 CraigDailyProgressRFQuartz Oscillator for Driving the 21.5 MHz EOMs

There's something happening here.
What it is ain't exactly clear.
There's awade with a gun over there,
tellin' me I got to repair.

On Wednesday, awade gave me an old broken quartz oscillator RF amplifier card and said, "get to work, punk".  He was busy installing the PMC into the North path, and we need a stable, strong 21.5 MHz oscillator to drive the EOMs.  awade was able to lock the PMC using our PLL's Marconi, but we need that Marconi for the PLL, so this quartz oscillator is our best bet.

However, the dang thing is broken.  I soldered together a D9 to 64 pin custom cable so we could control and power the card, and replaced the -15V voltage regulator which was shorted to -24V.  Still, after powering a special +10V power supply line, the card would pull as many amps as I offered it and current-limit the +10V power supply.  There was a short somewhere.

After studying the D980353 schematics for a while, I saw that the mysterious white chips called SMA-202s where the only chips powered via the +10V line.  They are responsible for the final stage of RF amplification, supposedly up to ~30 dBm of output power.  Unfortunately, we were unable to find any documentation on this chip whatsoever.  We were able to find something seemingly similar on a chip called the ASMA-203, but the connection is tenuous at best. 

In any case, we only need +13 dBm of 21.5 MHz RF, since both the LO and EOMs take +7 dBm of power, and we have a North and South path (+13 dBm / 4 = +7 dBm).  So I soldered on some pickoffs before the broken SMA-202s and just after the working ERA-5SMs.  From the green pickoff I am able to retrieve the +2 dBm sine wave shown in attachment 3, with the help of a 32 MHz minicircuits low pass filter.  This wave seems stable enough, so my plan is to amplify this up to +13 dBm using another ERA-5SM in series, then measure the phase noise using a delay line interferometer as shown in Eric Q's thesis, Appendix A.  If the frequency noise is good enough, I'll package up the RF stuff nicely in the 1U box, power the North EOM and PMC mixer LO, and try and lock the North PMC using our new quartz oscillator sine wave.

Attachment 1: QuartzOscillatorCard.jpg
Attachment 2: QuartzOscillatorCard2.jpg
Attachment 3: QuartzOscillatorPickoffOutput2.jpg
  2068   Fri Feb 2 22:53:24 2018 awadeHowToOtherHow to flip binary channels in EPICS/IOC

In some cases hardware logic is inverted relative to its function.  That is, a high state (voltage) disengages an amplifier (as in the case of the AD602) and a low state engages.  I've found that this is an issue when drop the PMC controls into an auto locker script where some of the logic of the PMC servo card is inverted.  It also flips the medm screen buttons around the wrong way.

A quick software fix in the EPICS IOC db entry is to use the following:

  field(SCAN, ".1 second")
  field(DESC, "TEST")

record(calcout, "C3:PSL-NCAV_BLANKING_TEMP")
  field(SCAN, ".1 second")

record(bo, "C3:PSL-NCAV_PMC_BLANKING")
  field(OUT,"@asynMask(BIO_Reg_PMCN, 2, 0x1)")
  field(SCAN, ".1 second")

  2067   Thu Feb 1 20:01:02 2018 awadeDailyProgressPMCNotes configuring PMC

Changing some power levels on the mode cleaner

I've been locking the mode cleaner using about 1.2 mW of light.  I haven't done the detailed calculations for shot noise or dark noise S2N of PD. Back of the envelope says that

 S_{L, \textrm{shot noise}} = \frac{\sqrt{hc}}{8}\frac{\sqrt{\lambda}}{\mathcal{F}\sqrt{P_c}}  (eq. 5.1, E. Black, 2001, AJP: DOI = 10.1119/1.1286663)

where F is finesse and Pc is carrier power.  The mode cleaners have a finesse of 310 (according to Evan's python notebook).  So 1 mW of 1064 nm would put us at 5.9e-18 m/sqrtHz.  I haven't made measurements of various noises but I'd say we're not shot noise limited.  

The issue at the moment is that the DC level is so low that near the lowest bits of the acromag ADC.  This makes it hard to implement a non-fancy autolocker without amplifying the DC signal.  I'd like to turn the power up at the mode cleaner to 6 mW and dump the rest at the input of the Faraday isolator before the ref cavs.  This way we get a stronger signal for locking and auto locking the PMC.  Only issue will be that we must take care not to dump excess power into cavities when tuning up the EOM polarization alignment.

I checked the saturation power of the  21.5 MHz "good" photodetector used for the PMC locking in the past: this occurs at 50.6 mW of 1064 nm and gives DC voltage 688 mV.  This agrees with previous measurments (PSL:981). At 6 mW we are well clear of damaging the PMC reflection PD.

Adding channels 

Over the last two days I've added an number of channels to the IOC.  These are to control the north PMC, its auto locker and monitors. Some are just calculated front end channels to put signals into real physical units.


Channel name AcromagName:PhysicalChannel:Card IP Function
C3:PSL-NCAV_PMC_SW1 Bio_Reg_PMCN:DIO00:XT1541 Mixer engage (1)/Test1 engauge (0)
C3:PSL-NCAV_PMC_SW2 Bio_Reg_PMCN:DIO01:XT1541 Engage for Test2 input injected at the HV amp stage.
C3:PSL-NCAV_PMC_BLANKING Bio_Reg_PMCN:DIO02:XT1541 Engage for AD602 variable gain amplifier (acts as loop engauge)
C3:PSL-NCAV_PMC_MGAIN_DB SOFT   dB unit soft channel for medm screen
C3:PSL-NCAV_PMC_MGAIN DAC_Reg_PMCN:OUT00:XT1541 Broadband loop gain setting. 1/10 from ADC to AD602 chip
C3:PSL-NCAV_PMC_OFFSET SOFT   Offset at error signal summed point in volts
C3:PSL-NCAV_PMC_OFFSET_APPLIED DAC_Reg_PMCN:OUT01:XT1541 Offset, applied at U2. 1/1000 from ADC to output fo AD797
C3:PSL-NCAV_PMC_RAMP_ATPZT SOFT   Ramp voltage in true voltage at PZT (HV output)
C3:PSL-NCAV_PMC_RAMP DAC_Reg_PMCN:OUT02:XT1221 RAMP, injected at HV amp
C3:PSL-NCAV_PMC_LOMON ADC_Reg_PMCN:IN1+:XT1221 Monitor of LO level
C3:PSL-NCAV_PMC_ERRMON ADC_Reg_PMCN:IN2+:XT1221   PMC error monitor
C3:PSL-NCAV_PMC_FASTMON ADC_Reg_PMCN:IN3+:XT1221 Fast (actuator) output monitor, buffered from 2.49k/121k divider
C3:PSL-NCAV_PMC_FASTMON_PZTVoltage SOFT   Computed actual HV output voltage (as seen by PZT), 121kΩ/2.49kΩ
C3:PSL-NCAV_PMC_FASTMON_PZTDISPLACEMENT SOFT   Real displacement of PZT computed from zero volts value 3.3µm/200.0V * PZTVoltage


Also there are two soft channels for managing the auto locker state of engage and activity: C3:PSL-NCAV_PMC_AUTOLOCK_EN and C3:PSL-NCAV_PMC_AUTOLOCK_BLINK

Polarization in the PMC

The  new mode cleaners specs are summarized in the wiki HERE. The mirrors are coated for p-polarized light so another half-wave plate was needed after the 21.5 MHz resonant EOM. It was also necessary to rotate the polarization back to s-pol before the 14.75 MHz EOM; the wave plates are already there, they will need fine tuning again for AM reduction.  

With more power through the FSS 14.75 MHz EOM we might actually be in a better position for AM reduction.  Operating close to the extinguishing point of the PBSs can leave junk light and poorly defined varying residual polarization.  We'll see how it goes in improving AM.

The Faraday isolator automatically dumps all the light in the wrong axis, so changes before will only affect the power output and not the refcav operation.


  2066   Thu Feb 1 15:25:58 2018 awade, CraigDailyProgressPMCUpdate working schematic of PMC servo card (older card)

I've implemented medm screen.  I've added a few more soft channels so that the front end channels are in real physical units and the ADC and DAC are in applied voltages scaled by the correct values.  So the PZT voltage displayed is in the full voltage applied to the PZT, error signal offset is the offset realized at the summed point and variable gain is in proper units of dB. The computations are all within the IOC soft channels, future changes to hardware will require updates to the .db files.

In making these changes I found that values applied at the sliders didn't make sense relative to the changes in the outputs.  I opened the box up and found that there had been a few more hacks that I hadn't noticed before.  These are documented in the attached schematic (this one is correct version for the North PMC board this time).  

Changes relative to schematic:

Red markings indicate changes to the North path PMC that were found on Feb 02, 2018 when checking schematic against values on the board.

1. INOFFSET2  impedance was halved at some point, this doubles the input offset gain.  C9 capacitance has been doubled to keep LP filter the same (0.36 Hz).
2. Output pole is committed on U9 and is implemented as a passive pole with 1 kΩ in series on the output and capacitor to ground the cable + PZT.
3. The 70 kHz notch is committed
4. R9 was set to 10 Ω for some reason.  Design says 1 kΩ but there is an above mentioned instability issue they may have been trying to quell. I changed R9 to 100Ω to match the other PMC board.


Another difference between north and south PMC boards is that north uses a LT1028 input stage op amp and south (newer version) uses an AD797.  This may affect the choice of gain in the first stage and which value of resistor to ground at the summing junction. Not sure what the stability issues there are, but if they arise this will be the first place to look.

Attachment 1: D980352-A_AWade20180201Mods.pdf
  2065   Tue Jan 30 21:29:36 2018 awade, CraigDailyProgressPMCPre mode cleaner installed in North path

North path mode cleaner electronics have been debugged, see previous post PSL:2060.

North PMC is installed, aligned and locked.

Aligning the into the north mode cleaner

I installed the mode cleaner on its base and aligned the beam in.  We are using a 21.5 MHz resonant EOM in the north path and one of the 1998/9 vintage resonant PDs on reflection.  As the paths were already installed from Antonio's original test installation it was very quick to find the TEM00 mode.  Mode matching is 91 % (Vmax =16.4 mV, Vmin=0.8 mV).  This number is probably a little off as I'm only using 1.2 mW at the moment: its hard to see the minimum when it is so close to the DC dark minimum.  We will probably up the power in time and dump it afterwards.

Testing locking of PMC

I used the PLL Marconi for the initial test. Carrier was set to 21.5 MHz and power was +10 dBm.  This is then put through a Mini Circuits splitter ZFSC-2-1W+ with +7dBm going to the EOM and +7 dBm going to the PMC LO input.  I used a phase delayer switch box to find an ok PDH error signal.  The error signal was only on the order of 160 mVpp.  This board uses a Level 23 mixer (Mini circuits Ray-3) and we could be using more optical power. I didn't really check the polarization of light going into the EOM carefully either, just a quick check with a PBS and power meter to minimize p-pol.

The Noliac NAC2124 PZTs used in the small mode cleaners have a maximum voltage of 200V with a full actuation range of 3.3 um.   I powered the HV with 160 V from the second bank of kepco HV supplies. This should give a full actuation range of 2.64 um or 2.5 FSR. The design of the board is for a single sided HV amplification stage with a positive rail splitting offset. So it is not possible to drive the PZT negative into its compression regime.  This prevents overdriving the PZT in the negative direction.

I put the error signal zero crossing at the resonance using initial offset channel, found the resonance using a ramp offset and managed to get a lock.

21.5 MHz source for driving both PMC locks

Craig is working on resurrecting the VME crate 21.5 MHz frequency reference card (Dxxxx-v-xy) that was previously used. It basically needs a bunch of pins shorted to ground to disable the phase and on/off controls.  Also it needs +/-24V AND 10 V supplies.  We will work on integrating a regulated 10V from the 18V or 24 supplies. But for now we will just use the previous BNC 10 V power in and a bench top supply.


More to do

  • We want the mode cleaners to be as non-disruptive as possible.  Take a TF of the PDH loop and tune to get a robust lock so we can set and forget this part of the experiment. 
  • It would be good to resurrect the auto lockers again, the PMCs are much easier than FSS. The python scripts are already written: only needs an customized .ini config files.
  • Fix layout of medm screen and add soft channels in real physical units relative to the PMCs
  • Install 10 Hz LP filter at the output for stablity.  The series 1kHohm resistor at the output may not be enough with the PZT.


  2064   Mon Jan 29 20:22:06 2018 CraigDailyProgressscatterPre-Vent Vaccan Tranmission Scattering Drawing

I drew the basic scatterers I see when viewing the inside of our vaccan from the transmission port with the IR viewer.  There are a couple of main points:

1) There are some definite ghost beams coming directly from reflections off the vaccan window.  They exist both on the REFL and TRANS side of the can, the TRANS ones are drawn below.  To make sure they were coming from the window, I took out our half wave plates and the lenses immediately behind the vaccan and blocked the main beam.  All points seen in the drawing remained steady.

2) The south cavity shield is in general brighter in IR than the north.  Both shields are bright relative to the rest of the vaccan interior.

3) It seems like the cavities are already angled slightly in the plane of the table.  Along the axis of the vaccan, if viewed from above, the cavities would be angled clockwise slightly, by maybe 3-4 degrees.  Perhaps Tara thought of scatterers when first assembling the can but was unable to completely mitigate them.

4) There is a distinct height difference in the main beam spots on the transmission window.  SCAV's beam is about 0.5 cm higher on the window than NCAV's.

5) In REFL, which is not shown in the drawing here, the south path has a visible scattered beam on the mirror itself, not on the cavity shield.  This is our most likely candidate for our main scattering noise.

 In short, we have to vent.  We want to start pumping up tomorrow.  Our first order of business will be to investigate the wedge angle of the windows and make a geometric model of the beam paths in our vaccan.  Then we can precisely place the cavities, place our cleaned beam dumps, lower the laser power and test our new alignments in air, mode match, then pump back down.  This will be a week of effort, plus another week for unforeseen circumstances.

Attachment 1: TransmissionViewportDrawingInIR.jpg
  2063   Sat Jan 27 00:36:11 2018 awadeDailyProgressFSSStrong Ringing in the North FSS

Did you have a look at the transfer function and try to optimize the loop? I could be wrong but I recall a few small blips in the OLTF that cause a unity gain crossing at those high frequencies.  They are PZT resonances and/or the fast/EOM path notch + its harmonic. This is what previously limited us in going higher than ~120 kHz in both of the paths. 

Frequency of 435 kHz is almost exactly a quarter of the 1.7 MHz resonance peak of the EOM. Don't know of a mechanism that would down convert harmonics (usually goes up) but you should be wary of things like this. Error spectra like this need to go out to 3-5 MHz.  If the EOM resonance is at 1.7 MHz, you want be able to see what is going on there. 

Just make a transfer function as a diagnostic check before going on a superstitious noise hunt. Its been a while since the last optimization, with changing power levels and improved alignment, the optical part of the loop gain has changed. Also the sliders have been moved around. The stability of these peaks in the noise might be an illusion if its a fixed physical peak that above your UGF frequency.

I found it easiest to tune with SR785, SR780 and Agilent all together taking the error PSD, crossover TF and common TF. That way you can move gain sliders around and intuitively see exactly what is going on. Common and Fast gain in the FSS are not completely orthogonal in adjusting common and crossover TF.


Are the ISS turned off and terminated?

Did you check the 14.75 MHz EOM polarization optimization? This will generate some offset in the error function.




With the cavities locked, we are seeing essentially a sine wave at 435 kHz from our North FSS mixer monitor.  In the past, we were able to change the frequency by moving around the Common and Fast Gain sliders, but this sine wave is curiously stable.  I hooked up the Agilent to take a look, and both cavities seem to have resonant peaks.  The South FSS peaks strongly at 153.75 kHz, with visible harmonics.  The North peaks broadly at 435 kHz, with no apparent harmonics. 
I split the North RFPD RF output to look directly at the 14.75 MHz line, and sure enough, you can see the broad 435 kHz peaks at 14.25 MHz and 15.25 MHz.

This leads me to belive that either the RFPDs or the laser light itself is the source of these peaks.  We need to model our RFPDs anyway with the coming installation of the PMCs.


  2062   Fri Jan 26 23:33:58 2018 CraigDailyProgressFSSStrong Ringing in the North FSS

With the cavities locked, we are seeing essentially a sine wave at 435 kHz from our North FSS mixer monitor.  In the past, we were able to change the frequency by moving around the Common and Fast Gain sliders, but this sine wave is curiously stable.  I hooked up the Agilent to take a look, and both cavities seem to have resonant peaks.  The South FSS peaks strongly at 153.75 kHz, with visible harmonics.  The North peaks broadly at 435 kHz, with no apparent harmonics. 
I split the North RFPD RF output to look directly at the 14.75 MHz line, and sure enough, you can see the broad 435 kHz peaks at 14.25 MHz and 15.25 MHz.

This leads me to belive that either the RFPDs or the laser light itself is the source of these peaks.  We need to model our RFPDs anyway with the coming installation of the PMCs.

Attachment 1: NorthFSSErrorSignalSpectrum_26-01-2018_230627_Spectrum.pdf
Attachment 2: SouthFSSErrorSignalSpectrum_26-01-2018_230848_Spectrum.pdf
  2061   Thu Jan 25 19:05:38 2018 CraigDailyProgressFSSHigher Order Mode Power and Modulation Depth Estimate

NCAV total incident power P_0^\text{NCAV} = 1.102 \, \text{mW}

SCAV total incident power P_0^\text{SCAV} = 0.887 \, \text{mW}

NCAV carrier transmission power P_c^\text{NCAV} = 717 \, \mu\text{W}

SCAV carrier transmission power P_c^\text{SCAV} = 433 \, \mu\text{W}

NCAV estimated sideband power P_s^\text{NCAV} = 12.1 \, \mu\text{W}

SCAV estimated sideband power P_s^\text{SCAV} = 11.4 \, \mu\text{W}

NCAV estimated higher order mode power P_\text{HOM}^\text{NCAV} = 361 \, \mu\text{W}

SCAV estimated higher order mode power P_\text{HOM}^\text{SCAV} = 431 \, \mu\text{W}

NCAV modulation depth $\Gamma_\text{NCAV} = 0.257$

SCAV modulation depth $\Gamma_\text{SCAV} = 0.321$

 P_0 = P_c + 2 P_s + P_\text{HOM}, where P_0 is total laser power incident on the cavity, P_c is the power in the carrier, P_s is the power in the sidebands, and P_\text{HOM} is the power in the higher order modes, aka junk light.  I want to estimate P_\text{HOM} for our current mode matching to see how the PMCs will help us reduce PDH shot noise.

To get the above numbers, I measured the peak transmission power of the carrier resonance and the sideband resonance while scanning each cavity about its resonance frequency.  The trans power voltage is measured by each cavity's DCPD, which were realigned just prior to this measurement.  I then measured the carrier transmission power with the cavity locked using the Thorlabs power meter.

NCAV Peak Carrier DCPD Volts: 2.85 V
SCAV Peak Carrier DCPD Volts: = 4.16 V
NCAV Peak Sideband DCPD Volts: = 0.048 V
SCAV Peak Sideband DCPD Volts: = 0.110 V

NCAV power ratio  P_s /P_c = 0.0168
SCAV power ratio P_s /P_c = 0.0264

NCAV carrier transmission power P_c = 717 µW
SCAV carrier transmission power P_c = 433 µW

From the DCPD power ratios and the carrier trans, I estimate the power in the sidebands, assuming a lossless, critically-coupled cavity and all resonant power is transmitted and nothing else (i.e. no 'polluting' light like HOMs):

NCAV sideband transmission power P_s = 12.1 µW
SCAV sideband transmission power P_s = 11.4 µW

This gives power in the higher order modes, assuming P_\text{HOM} = P_0 - P_c - 2P_s :

NCAV higher order mode power P_\text{HOM} = 361 µW
SCAV higher order mode power P_\text{HOM} = 431 µW

Finally, I estimate the modulation depth \Gamma using the transmission power ratios by solving the equation below numerically in Mathematica (zipped attachment):


From the above results,

NCAV Percentage of light in HOMs: 32.8%
SCAV Percentage of light in HOMs: 48.6%

This is not great, we can surely do better with the mode matching to avoid unnecessarily scattering light into HOMs off the cavities.

Attachment 1: ModulationDepthCalc.nb.gz
Attachment 2: ModulationDepthCalc.pdf
ModulationDepthCalc.pdf ModulationDepthCalc.pdf
  2060   Thu Jan 25 15:34:29 2018 awadeDailyProgressFSSTesting and installing PMC electronics mk1

Some trouble shooting and unhacking of PMC servo board. 

Adding resistor pair to match 6V acromag binary channel values to PMC servo board

I added resistor pair to the acromag input as per option D in PSL:2058 for SW1 and SW2 binary inputs.  Values were 1.79 kΩ parallel to acromag 10 kΩ and 359 Ω for the series resistances.

For a 6 V supply I see 5.06 V in the on state and 0.696 V in the off state.  I will buy or find some low profile 6 V plug pack supplies to run the binary inputs directly. for the FSS and PMC boxes.

Hooking up the 'Blanking' Pin

There is a pin labeled 'Blanking' in the schematic.  I wasn't seeing any gain after the AD602, it turns out this is a on/off gain and needs to be drawn to ground to switch the amplifier on.  Two options are to manually resolder the pull up resistor to ground instead of +5V or add another channel.  I opted to add another channel in case it becomes useful in the future to kill the loop while still being able to see error signal after U2.

In the case of the blanking pin, the pull up resistor is 1 kΩ, not clear why this is the case, it may be needed to ensure the AD602 is held in the correct state: there could also be no reason. For the 1 kΩ pullup the input series resistance should be set to 33 Ω and resistance parallel to the acromag pull down should be set at 157 Ω.  This results in an on current of 40 mA through the 157 Ω and off current of 5 mA through the 1 kΩ.  The acromag XT1541 is capable of driving up to 250 mA through each binary channel (see page 12 of manual). However, there is on order of 0.23 W of power dissipated through the 154 Ω.  I don't have a 1 W resistor handy so I'll parallel a few 1/4Wers.

Also I attached the schematics below for future reference.  There are multiple versions of the board and are two board are of different vintage.  There are slight differences in the numbering conventions of components.  North path board is revision A-C, south will be revision D.

Unhacking a previous board hack 

With all the channels connected I did some initial testing of the north path board.  I injected a ~+7 dB signal at 21.5 MHz at stepped through a couple of phases of the PD input with a -13 dBm signal.  I found that the chain of signals was correct up to TP4.  After this point at U9 (the PA85 HV op amp) the signal was fixed at a 1/5th of the HV (I used single sided 50V).  I double checked to make sure none of the earlier stages were railed and that inputs into U9 were tided to ground (0V in the case of PMCRAMP) apart from the signal being varied.

After looking around the board and realizing that some resistors had been removed (R23, R25) I searched back through the elog and found that Frank had modified to board to uses it as a HV PZT amp (see PSL:529).  C25 is also missing. The nominal value on some versions of the schematic is 0.09 µF, that would place a pole at 12 Hz.  In later versions this is removed with the assumption that series resistance with the op amp output (R44 = 63.4 kΩ) and the capacitance of the PZT+cabling (estimated 227 nF) would produce a similar passive pole at about 10 Hz. Frank modified the board by adding a 1 kΩ in series with the HV output. We're going to need a 10 Hz pole for loop stability but I think I'll add a 10 Hz BNC connector Pomona box LPF in line with the PZT.  I don't have a characterization of the PZT capacitance or cabling.  Leaving it at 1 kΩ gives us some future flexibility. 

Also looking at the connections on the board it looks like for this D980352-A edition the rail splitting buffer of U13C is actually connected to R26. In later versions this is marked as diagnostic only. The value of summing input resistor R26 is actually 14.89 kΩ which explains the 0.2 x HV supply offset mentioned above (0.020 gain from HV rail through the rail splitter and gain of 10 at the summing junction at U9.  For now it makes more sense to center the HV amp at V_HV/2 so I changed R26 from 14.89 kΩ to 6.1 kΩ

I've included changes made in the third attachment. Its the The D980352-A version of the board but the schematic is from a later version of the board.  Marked values are correct.

Attachment 1: D980352-A.pdf
Attachment 2: D980352-D.pdf
Attachment 3: D980352-A_AWade20180128Mods.pdf
  2059   Wed Jan 24 23:05:28 2018 CraigDailyProgressFSSPDH Reflected Power Measurement

awade is thinking about adding in the pre-mode cleaners to reduce scatter and clean up the higher order modes entering our main cavities. 
This made me curious as to how much laser power currently resides in our higher order modes with our current mode matching.

Unlocked REFL Voltage, as measured by the RFPD:
NCAV 1.55 V
SCAV 1.12 V

Unlocked REFL Power, as measured by the Thorlabs IR Power meter:
NCAV 979 µW
SCAV 761 µW

Locked REFL Voltage
NCAV 1.00 V
SCAV 0.404 V

Locked REFL Power (inferred linearly)
NCAV 632 µW
SCAV 275 µW

Percentage of Laser Light Reflected while cavity is locked (i.e. % of light in sidebands or higher order modes):
NCAV 64.6%
SCAV 36.1%

I am not sure what our modulation depth is, so I am not sure how much light must be in our sidebands.  Evan measured the modulation depths five years ago to be around 0.2.  This should be redone.

Will be useful to have these numbers when we install/mode match with the PMCs installed, to see if we can do better.  Since we are not PDH shot noise limited yet, this is not directly affecting our noise measurements, but this will surely limit us from measuring coatings thermal noise at some point in the future.

  2058   Wed Jan 24 18:29:13 2018 awadeDailyProgressFSSFixing the Acromag latching issues and adding resistors to match the logic levels to FSS and PMC interface boards.

In troubleshooting binary engage interfacing between acromag XT1541 and the PSL servo board for PMC locking (see context PSL:2056) I think I've located the origin of our latching issues with the acromag cards: we're not using enough excitation voltage for the acromag's internal FET buffers to clear their on-voltage thresholds.

Acromag Binary Chanels REQUIRE 6-32 V Excitation

The XT1541 manual gives a recommended voltage range of 6-32 V for the digital excitation driving voltage.  I had been running it at 5.1V because it actually worked (most of the time) and it is a bad idea to drive a 5V level logic chip at an excess of 5 V. However, often, on a power cycle, the excitation voltage of the binary outputs isn't quite enough to push over the minimum threshold and the binary output of the cards latches off. I tried a few power cycles of the cards at binary excitation voltage at 4V, 5V, 6V etc and found that 5 V was just at the threshold where the binary outputs were responsive to modbus IOC channel changes.  6V> guarantees working.

Dealing with logic with pull up resistors

Most of the inputs for binary engage in LIGO electronics have some kind of pull up resistor on their inputs.  For the FSS it is 4.99 kΩ pull up to +5V.  In the pre-modecleaner servo boards (LIGO-D980352-D) there is a 10 kΩ pull up to +5V.  Aidan had previously come up with a solution for interfacing with the 4.99 kΩ pull up resistors in the FSS boxes input logic (see PSL:1573).  This was to add a ~810 Ω resistor in parallel with the acromag's internal 10 kΩ resistor to bring the off state voltage below the 0.8 V threshold of the HCT157D input chip (see option B in attached). This is satisfactory for ensuring that the off-state of the acromag forms a voltage divider back from the +5V rail to ground through the 810 Ω || 10 kΩ of the acromag + added resistor. It gives a value of 0.66 V at the HCT157D's input. However, as it stands, the on state is whatever the minimum of the acromag is (6V). That value exceeds the acceptable limit for the logic.

If we add one more resistor, it is possible to divide down whatever the acromag binary channels put out to 5V while also ensuring the off state is below 0.8 V.  The attached figure shows the four options for configuring a resistor network to adapt the acromags to driving the pulled-up inputs digital logic switches.

  • Option A connects the acromag directly to the digital logic.  In this case the 10 kΩ pull-down inside the acromag along with the 4.99 kΩ pull up to +5V gives an off state voltage of 3.34V (too high for 0.8V switching threshold) and an on-voltage limited to that of the source.
  • Option B  is what we use now for the FSS. This gives a useable off voltage (0.66 V for R1 = 820 Ω and Rpullup = 4.99 kΩ), but is limited to the on voltage of the source.
  • Option C is not great, you would need a really large value for R2 to bring the voltage divided between the input and +5V pullup rail close to 5 V, R1 would then need to be made very small, greatly increasing the current requirment.
  • Option D best.  In the case of the FSS interface, with a pull up voltage of +5V and Rpullup  = 4.99 kΩ, choice of R1 = 820 Ω and R2 = 164 Ω brings the on state to 5.0V (from a 6.0 excitation) and the off state falls to 0.66 V.

The current requirements for option D are also fine.  In the on state the acromag will need to source about 6.7 mA, which is fine. In the off state 0.8 mA will be sourced via the +5V pull up, which is also ok.

Here are the equations for choosing R1 and R2

R_1 = \frac{R_\textrm{pull up}}{(V_\textrm{pullup}/V_\textrm{off}-1)-R_\textrm{pull up}/R_\textrm{pull down}}

where Vpull up is the voltage of the pull up rail, Voff is the desired off state voltage, Rpull up is the pull up resistance of the input logic and Rpull down is the pull down resistance of the driving circuit. Using this value we can also find that the best series resistance is

R_2 = R_1(\frac{V_\textrm{excitation}}{V_\textrm{on}}-1)

where Vexcitation is the  high value of the driving circuit and Von is the desired on (high) voltage at the input logic.


Choice of pull down and series R for PMC boards

The pull ups on the PMC board logic are 10 kΩ. So to interface the acromag a good choice would be 1.79 kΩ parallel to acromag 10 kΩ and 359 Ω for the series resistances (in configuration D)


Small correction to above equations

Thu Jan 25 22:00:23 2018: I didn't quite include all the stuff in the above equations.  They will give good values for cases where R1<<Rpull up  and R2<<Rpull down. Here is the full equation in the case that the pull up resistor and/or pull up reistor values are comparible to the choices needed for R1 and R2​.

R_1 = \frac{R_\textrm{pull up}}{(V_\textrm{pull up}/V_\textrm{off}-1)-R_\textrm{pull up}/(R_\textrm{pull down}+R_2)}

where Vpull up is the voltage of the pull up rail, Voff is the desired off state voltage, Rpull up is the pull up resistance of the input logic and Rpull down is the pull down resistance of the driving circuit. Likewise

R_2 = \frac{R_1(V_\textrm{excitation}/V_\textrm{on}-1)}{1+(1-V_\textrm{pull up}/V_\textrm{on})R_1/R_\textrm{pull up}}

where Vexcitation is the  high value of the driving circuit and Von is the desired on (high) voltage at the input logic. As is very likely the case the pull up voltage rail is actually the same as the required on voltage and the above equation for R2 reduces to the value in the previous section.

Its a bit cicular here R1<--> R2. Just try some values, if logic pull up and source pull down are ≥5 kΩ then the equations in the second above are fine. 




When Craig restarted the acromag IOC yesterday the North path FSS loop engage binary channel went into a permanent latch off mode.  This is a recurring problem that can be fixed by plugging the 5 V power in line to the acromag binary channels in with the FSS control boxes unplugged. Sometimes you need to plug and unplug a few times.  

It could be an issue with the way we have used 820 Ω resistors to bring the pull up 10 kΩ down to 758 Ω. It probably should be buffered somehow.  For now its good enough to get it working, once it's powered up its fine.

As an intermediate fix I soldered a 1000 µF electrolitic cap in line with the 5V supply to give it juice when first powered up.  This seems to make the latching go away most of the time (90%) when first powering up the units. So... slight improment.


Attachment 1: Acromag-to-pullup-logic_options.pdf
  2057   Tue Jan 23 23:33:03 2018 awadeDailyProgressTempCtrlMoved table environment temperature monitor

I moved the temperature monitor for the table air temperature away from 20 cm from the vacuum can to closer to the middle of the table around 4 pm today.

Should be more isolated from changes in the vacuum can heater.

  2056   Mon Jan 22 21:43:07 2018 awade, CraigDailyProgressElectronics EquipmentResurrecting mode cleaner electronics

We need to address some of the sources of scatter from the input side of the vaccum can.  Looking into the cavities through the input widow of the vacuum can we can see some ghost beams hitting about 2 cm to the side of the center of the input mirror.  Its a bit hard to take a photo and/or diagnose exactly where this is coming from.  One possibility is that it is coming from the prompt reflection of the cavity coming back from the window. 

If this is the case, the source of light would be junk higher order modes from the poor mode matching. We should expect the cavity to be impedance matched and transmitting most of the light. To test this out we need to resurrect the mode cleaners and their electronics. There is only so much we can do in adjusting positioning of lenses; a good deal of the mode mismatch is the astigmatism of the beams. 

Aidan has made up a 1U box to retrofit the old PMC Servo LIGO VME cards (D980352-A), pictured attachment #1 below.  These include a pair of acromag cards (XT1221 and XT1541) to provide binary channels to engage the loop, readout monitors and provide set points for gain and offset. I've finished wiring these up and checked the connections.  Tomorrow I will update the acromag IOC to add these new cards on IPs and for XT1221 and XT1541 respectvly. Channel allocations will be as follows:

Summary of channel allocations for North PMC box
Channel name Ch number:Card IP Function
C3:PSL-NCAV_PMC_SW1 DIO00:XT1541 Mixer engage (1)/Test1 engauge (0)
C3:PSL-NCAV_PMC_SW2 DIO01:XT1541 Engage for Test2 input injected at the HV amp stage.
C3:PSL-NCAV_PMC_MGAIN OUT00:XT1541 Broadband loop gain setting. 1/10 from ADC to AD602 chip
C3:PSL-NCAV_PMC_OFFSET OUT01:XT1541 Offset, applied at U2. 1/10 from ADC to output fo AD797
C3:PSL-NCAV_PMC_RAMP OUT02:XT1221 RAMP, injected at HV amp
C3:PSL-NCAV_PMC_LOMON IN1+:XT1221 Monitor of LO level
C3:PSL-NCAV_PMC_ERRMON IN2+:XT1221   PMC error monitor
C3:PSL-NCAV_PMC_PMCOUT IN3+:XT1221 Fast (actuator) output monitor



Attachment 1: 2018-01-30_21.29.02.jpg
  2055   Mon Jan 22 20:30:11 2018 Craig, awadeDailyProgressTempCtrlDebugging vac can heater circuit issues: oscillations everywhere

awade and I have made some changes to the heater circuit Kevin and Kira made.  The heater circuit is now working as expected, and is currently heating the vaccan again.

1. awade decreased the resistive load of the vaccan heaters from 49.3 Ω to 12.2 Ω.  This caused some expected and unexpected issues.

Expected Issue 1: The lower resistive load gave less heating power per amp of current pulled.  We need to increase the amps our heater circuit could deliver to get. 

Fix: We increased the C3:PSL-HEATERN_OUT limit from 0.5 A to 1.5 A.  We also switched out the 1 amp power switch which shuts itself off when more than one amp flows through it.

Unexpected Issue 1: ~ 1 MHz, 100 mV voltage oscillation ringing in the heater circuit at the drain and source of the MOSFET when 0.2 to 1.5 amps would run through the circuit.  These oscillations would couple to all electronics near the inducting heaters, including the temperature sensors on the can and the table.

Fix: We placed a pair of capacitors, one 10 nF and one 10 pF, over the heater resistive load R_LOAD.  The resistive heaters can act as inductors at high frequency when large currents are run through them.  The capacitors pass the HF through without issue.

Unexpected Issue 2: Changing the power applied to the heater circuit caused our temperature sensors and FSS monitors to flucutate.

Fix: This one is not quite fully fixed.  We did a number of things to isolate the heater circuit from the rest of the electronics rack.  We added two more Sorenson power supplies exclusively for the heater circuit.  We removed the grounding wires from the temperature sensor pins on the acromag ADC.  We stopped the inductive oscillations coupling into the temperature sensors.

Now, the temperature sensors are working and seem to be completely isolated from the heater circuit, likely because there are no more inductive oscillations near them.  However, the FSS Fast out monitors are still coupled to whether the heater circuit is on, despite being on completely different power supplies (if the heater circuit is turned all the way on from 0 to 1.5 amps, the FSS Fast out monitor will move down by about 200 mV). 
We are still investigating this issue, its very important that our electronics are not coupled in a way we don't understand.

EDIT: It seems like our FSS Fast out monitors, and the rest of our electronics, are completely decoupled from the heater circuit's on or off state.

Attachment 1: CTN-Lab-Heater-Circuit.pdf
ELOG V3.1.3-