40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  40m Log, Page 162 of 335  Not logged in ELOG logo
ID Date Author Type Category Subjectup
  1987   Tue Sep 15 15:46:05 2009 steveUpdatePEMPEM and VAC

FSS_RMTEMP is moving up and  daily fluctuations  are  less . 120 and 16 days plots are below.

Attachment 1: 120dpem.jpg
120dpem.jpg
Attachment 2: 16dpem.jpg
16dpem.jpg
  1615   Thu May 21 12:58:32 2009 robConfigurationALARMPEM count-half disabled

I've disabled the alarm for PEM_count_half, using the mask in the 40m.alhConfig file.  We can't do anything about it, and it's just annoying.

  6935   Sat Jul 7 16:34:41 2012 MashaUpdatePEMPEM no longer freaking out (as much).

Hi everybody,

Sorry for flooding the ELOG about the PEM channels. Today I

- Changed all of the GUR1 and GUR2 filters to elliptic, and lowered the orders of their low-pass filters.

- Lowered the order of the low-pass filters on the STS channels

- Changed the parameters in seismic.strip, which I saved as MashaTemplate2.

 

Attached is the most recent status of the channels as seen with StripTools:

Attachment 1: Masha.png
Masha.png
  6936   Sat Jul 7 17:28:11 2012 MashaUpdatePEMPEM no longer freaking out (as much).

Quote:

Hi everybody,

Sorry for flooding the ELOG about the PEM channels. Today I

- Changed all of the GUR1 and GUR2 filters to elliptic, and lowered the orders of their low-pass filters.

- Lowered the order of the low-pass filters on the STS channels

- Changed the parameters in seismic.strip, which I saved as MashaTemplate2.

 

Attached is the most recent status of the channels as seen with StripTools:

I'm not currently sure how to apply my template to seismic.strip shown on the wall (I saved it as seismic.strip on Pianossa and copied the old file to seismic.stripOld). I understand the job is being run on Megatron. I'll play around with this later tomorrow. (In other words, the display currently on the wall, while it does not have the Nan spikes like yesterday and this morning does not currently display the template I made).

  303   Fri Feb 8 17:55:53 2008 joshConfigurationPEMPEM-AS_MIC now in PSL enclosure
I have moved the microphone to the PSL enclosure, hanging near the south (Y) side from a support rod for the overhanging storage area so that it's reasonably close to the PMC. I've fastened it in many places using cable ties to make sure that it won't fall.

Alberto helped me solder together a female BNC-female 3.5 mm stereo adapter so that I can use the DAQ to output through BNC to PC speakers. My plan is do sweep sine output through PC speakers to find the transfer function of sound from outside the enclosure to inside the enclosure and by moving the microphone more centrally over the PSL table, check if there are any strong resonances. Hopefully I can use this technique at other places around the interferometer or measure the effect of installing acoustic foam.
  298   Tue Feb 5 17:39:05 2008 jweinerConfigurationPEMPEM-AS_MIC taken down from AS table, will put in PSL enclosure soon
I took down the microphone that Andrey hung above the AS table his first week in lab. I want to hang the microphone above the PMC to check the effect of acoustic noise on the PMC. The cables were a little more tangled than I thought so I've only taken the microphone down and haven't hung it back up yet, but on Thursday I'll have enough time to carefully put it up inside the PSL and see what I can find out about acoustic noise inside the PSL. I think the microphone should be sensitive enough for the frequencies we're interested in, and I'll hopefully find out if it's sufficient once I put it up in the PSL. The microphone cable and microphone are on top of the PSL for now.
  3449   Fri Aug 20 16:17:35 2010 steveUpdatePEMPEM-count channels are not working

C1: PEM-count channels are dead since August 12, 2010

  6468   Thu Mar 29 20:13:21 2012 jamieConfigurationPEMPEM_SLOW (i.e. seismic RMS) channels added to fb master

I've added the PEM_SLOW.ini file to the fb master file, which should give us the slow seismic RMS channels when the framebuilder is restarted. Example channels:

[C1:PEM-RMS_ACC6_1_3]
[C1:PEM-RMS_GUR2Y_0p3_1]
[C1:PEM-RMS_STS1X_3_10]
etc.

I also updated the path to the other _SLOW.ini files.

I DID NOT RESTART FB.

I will do it first thing in the am tomorrow, when Kiwamu is not busy getting real work done.

Here's is a the diff for /opt/rtcds/caltech/c1/target/fb/master:h

controls@pianosa:/opt/rtcds/caltech/c1/target/fb 1$ diff -u master~ master
--- master~	2011-09-15 17:32:24.000000000 -0700
+++ master	2012-03-29 19:51:52.000000000 -0700
@@ -7,11 +7,12 @@
 /opt/rtcds/caltech/c1/chans/daq/C0EDCU.ini
 /opt/rtcds/caltech/c1/chans/daq/C1MCS.ini
 /opt/rtcds/caltech/c1/target/gds/param/tpchn_c1mcs.par
-/cvs/cds/rtcds/caltech/c1/chans/daq/SUS_SLOW.ini
-/cvs/cds/rtcds/caltech/c1/chans/daq/MCS_SLOW.ini
-/cvs/cds/rtcds/caltech/c1/chans/daq/RMS_SLOW.ini
-/cvs/cds/rtcds/caltech/c1/chans/daq/IOP_SLOW.ini
-/cvs/cds/rtcds/caltech/c1/chans/daq/IOO_SLOW.ini
+/opt/rtcds/caltech/c1/chans/daq/SUS_SLOW.ini
+/opt/rtcds/caltech/c1/chans/daq/MCS_SLOW.ini
+/opt/rtcds/caltech/c1/chans/daq/RMS_SLOW.ini
+/opt/rtcds/caltech/c1/chans/daq/IOP_SLOW.ini
+/opt/rtcds/caltech/c1/chans/daq/IOO_SLOW.ini
+/opt/rtcds/caltech/c1/chans/daq/PEM_SLOW.ini
 /opt/rtcds/caltech/c1/target/gds/param/tpchn_c1rfm.par
 /opt/rtcds/caltech/c1/chans/daq/C1RFM.ini
 /opt/rtcds/caltech/c1/chans/daq/C1IOO.ini
controls@pianosa:/opt/rtcds/caltech/c1/target/fb 1$

 

  6484   Wed Apr 4 13:25:29 2012 jamieConfigurationPEMPEM_SLOW (i.e. seismic RMS) channels aquiring

Quote:

I've added the PEM_SLOW.ini file to the fb master file, which should give us the slow seismic RMS channels when the framebuilder is restarted. Example channels:

[C1:PEM-RMS_ACC6_1_3]
[C1:PEM-RMS_GUR2Y_0p3_1]
[C1:PEM-RMS_STS1X_3_10]
etc.

 The framebuilder seems to have been restarted, or restarted on it's own, so these channels are now being acquired.

Below is a minute trend of a smattering of the available RMS channels over the last five days.

2012-04-04-132346_1182x914_scrot.png

  10347   Thu Aug 7 14:50:43 2014 HarryUpdateGeneralPER Measurement

 Purpose

I wanted to do a more robust measurement of PER of PM fibers for FOL, so I thought up this scheme.

Methods

I put together a setup as depicted below in order to take measurements of PER.

PERFinalSetup.png

The first thing to do was to calibrate the whole setup. In order to do so, I first used the quarter and half wave plates closest to the NPRO to eliminate as much ellipticity from the output beam as possible, and then rotate the newly linearized light to be in alignment with the transmittance of the first polarizing beam splitter (P-Polarization).

I then aligned the fiber's fast axis with the P-Polarization on both the input and output sides. This was important so that no virtual ellipticity would be measured in the final measurement of PER.

I then mode matched and fiber coupled the first PBS output into the fibers, to about 30 mW (~60% coupling).

Photodiode Calibration

I wanted to measure both intensity of P and S simultaneously, so as to minimize the random little time-varying changes that would affect the measurements, so I used a powermeter and a PD, calibrated with the aformentioned powermeter.

In order to be able to compare the photodiode (PDA520) output to the powermeter (Orion) output, I fixed them each in their positions, and varied the laser power to produce the type of linear relationship we expect to see between PD Voltage and Optical Power. In this case, the conversion was P = V*2.719.

PDCalibration.png

PER Measurement

As opposed to the first method, which took only one datum, this method records P and S simultaneously, at different points through rotation of a linearly polarized beam.

Using the second HWP, I rotated the linearly polarized beam before it entered the fiber, at each point, recording the outputs of the PD and the Powermeter.

These data were then converted to be the same units, and fit to a sine wave.

Polarization_Intensity_Variation.png

As you can see, the intensities vary nearly identically, at a half wavelength phase difference, which is what one expects in this case. The PER of each polarization can be calculated by dividing the maximum value of one by the minimum of the other, and vice versa. The fact that these oscillate as we expect shows that the beam is relatively well linearized, and essentially that everything is working as it is assumed to be.

By looking at these fits, however, it is visible that they do not overlap with the actual extrema of the data. So, in order to produce more realistic values of extrema, those particular regions were fit to second order polynomials.

Extrema.png

The values of these extrema yield the following measurements:

(SMin / PMax) = 0.007 +/- .004  --->  -21.54 +/- 2.48 dB

(PMin / SMax) = 0.022 +/- .009  --->  -16.58 +/- 1.78 dB

Conclusion

The problem I find with these measurements is that they're hard to reproduce.

Plus they seem high, since non-PM fibers advertise extinction ratios around -30 dB., plus I measured it at roughly -24 dB the first time I tried.

Moving Forward

 

The next thing to do in terms of fiber characterization is to measure the frequency noise they introduce.

With respect to FOL, I just need some time to work on the PSL table, and at the Y end to couple the dumped SHG light, and then we can start using 1064nm beat notes to test//implement the feedback control system.

Attachment 5: PEReport.zip
  8669   Tue Jun 4 10:44:13 2013 SteveUpdateendtable upgradePI pzt holders are ready

The PI pzt holders are back from the shop. They are numbered 1, 2 & 3 and machined to match.

Tapered black delrin opener is to gauge the gap if it is too small to fit pzt. This is to prevent holder to be opened too much.

Attachment 1: PIpztholders.jpg
PIpztholders.jpg
  12964   Wed May 3 16:02:36 2017 SteveUpdateGeneralPI pzt inventory check

One is broken, two are ready to steer green and 3 available in un known condition

 

Attachment 1: IMG_3678.JPG
IMG_3678.JPG
Attachment 2: PIpztETMYgreen.jpg
PIpztETMYgreen.jpg
  12967   Wed May 3 16:47:45 2017 KojiUpdateGeneralPI pzt inventory check

I also have a functional one on my desk, which has one of the wires repaired.

Quote:

One is broken, two are ready to steer green and 3 available in un known condition

 

 

  13793   Thu Apr 26 19:46:26 2018 ranaUpdatePEMPID Quixote

Increased the Integral gain (from -1 to -4) on the EX temperature controller. This didn't work a few weeks ago, but now with the added P gain, it seems stable. Daily temperature swings are now ~3x smaller.

Notes for Kira on what we need to do tomorrow (Friday):

  1. add the MEDM screen EPICS values to the DAQ so that we can plot those trends DONE
  2. add the out-of-loop sensor to the EX can
  3. reboot the AUX-EX so we can pick up the new channels and the fixed spelling of the old channels DONE
  4. Re-install EX seismometer and hook up seismometer channels to PEM DAQ so we can start testing its performance.

For those who are flabbergasted by the way I calibrated the TEMP_MON channel from volts to deg C, here's how:

XMgrace->Data->Transformations->Geometric Transforms...

use the 'scale' and 'translate' fields to change the slope and offset for calibration in the obvious ways

Attachment 1: dv.pdf
dv.pdf
  13803   Tue May 1 11:15:19 2018 KiraUpdatePEMPID Quixote

I added an out of loop sensor to the can by placing the lab temperature sensor inside the can. I'm not sure which channel is logging this temperature though. I also noticed that the StripTool still had the old misspelled name for the temperature readout so I fixed that as well.

I've attached a picture of the setup.

Quote:

Increased the Integral gain (from -1 to -4) on the EX temperature controller. This didn't work a few weeks ago, but now with the added P gain, it seems stable. Daily temperature swings are now ~3x smaller.

Notes for Kira on what we need to do tomorrow (Friday):

  1. add the MEDM screen EPICS values to the DAQ so that we can plot those trends DONE
  2. add the out-of-loop sensor to the EX can
  3. reboot the AUX-EX so we can pick up the new channels and the fixed spelling of the old channels DONE
  4. Re-install EX seismometer and hook up seismometer channels to PEM DAQ so we can start testing its performance.

For those who are flabbergasted by the way I calibrated the TEMP_MON channel from volts to deg C, here's how:

XMgrace->Data->Transformations->Geometric Transforms...

use the 'scale' and 'translate' fields to change the slope and offset for calibration in the obvious ways

 

Attachment 1: IMG_20180501_154826.jpg
IMG_20180501_154826.jpg
  3930   Tue Nov 16 09:02:54 2010 AidanUpdateGreen LockingPID loop - calibration of SR620 output

 [Aidan, Kiwamu]

Kiwamu and I roughly calibrated the analogue output from the SR620 frequency counter yesterday. The input channel, intuitively named C1:PSL-126MOPA_126MON, now reads the measured frequency in MHz with an error of about 0.1MHz - this is, I think, due to the bit noise on the D/A conversion that Kiwamu discovered earlier. That is, the output range of the SR620 corresponds to around 100MHz and is digitized at 10-bit resolution, and ...

100MHz/(10^2) ~= 0.098MHz. [Sad Face]

Calibration:

We set the EPICS range to [-100, 100] (corresponding to [-5V, 5V]), connected a Marconi to the Freq Counter, input a variety of different frequencies and measured the counts on the EPICS channel.

The linear fit to the calibration data was F = 2.006*EPICScount - 0.2942. From this we worked out the maximum and the minimum for the range settings that give the channel in MHz: EGUF = -200.8942 and EGUL = 200.3058. The previous range was [-410, 410]

 

Calibration of SR620 analogue output
Input Frequency (MHz) Measured EPICS Value
10  5.191
20  9.98
30 15.21
40 20.00
50 25.18
60 29.99
70 35.18
71 35.565
72 35.9894
73 36.3861
74 37.17
75 37.576
76 37.9669
77 38.3575
78 39.166
79 39.5691
80 39.978
   

 

  10334   Tue Aug 5 19:20:05 2014 AkhilUpdateGeneralPID loop Design for beat note stabilization

 Today I and EricQ went inside the lab and set up the cables running from the a DAC channel into  PZT input so that we can use the PID controller to tune in the PZT offset to maintain the beat note within a detectable range (This is plan B as the main plan of actuating on the laser temperature can be achieved only after the fiber setup with the PSL is ready). I obtained all the poles and zeroes of plant and started designing a PID loop to test it with the existing system.

I will put in my PID values into the already existing PERL controller code (that is used for controller design in the 40m) and run tests with the PID loop while actuating on the PZT offset. 

 

  10353   Fri Aug 8 14:42:41 2014 AkhilUpdateGeneralPID loop Design for beat note stabilization

 The attached in a zip file are the Simulink feedback loop models for the FOL for both X and Y ends. The controller PID values are estimated by setting a temperature count reference point to 5344, which corresponds to 100 MHz frequency.  The plant transfer function is as calculated in my previous elogs.

 We were not  able to test the PID loop , with the green laser by PZT actuation because of the misalignment of the arms and non-existence of the beat note since last few days. However, we have a complete idea of the design and PID parameters that will be used for the FOL with infrared laser. So we decided that it would be better to test the loop by temperature actuation after the fiber optics is installed and the coupling of infrared laser into the fiber is complete. As of now, we have planned to place the FOL box inside so that it can be used to obtain the green laser beat note on the StripTool graphs. 

Attachment 1: PID.zip
  3932   Tue Nov 16 12:47:30 2010 AidanUpdateGreen LockingPID loop but no green

The PID loop is ready to be run on the green beat note but, since the tanks are open, there is no green transmission from the end getting to the PSL table. Nevertheless, here's the screen for the PID loop. The loop script is still in my directory /cvs/cds/caltech/users/abrooks/GRNXSlowServo

The medm screen is attached. It shows the current beat note frequency in MHz ()

In c1auxey/ETMYaux.db I added a couple of channels. These are all displayed on the MEDM screen. I added them to autoBurt.req as well.

  • C1:LSC-EX_GRNLSR_TEMP_NOM: the zero-volt setpoint temperature of the end laser (as set on the front panel of the Mephisto controller). This must be entered manually in EPICS as there is no way to read it remotely. [Sad Face]
  • C1:LSC-EX_GRNLSR_TEMP_CALC: the sum of the zero-volt set point temperature and the offset temperature set by the input voltage from C1:LSC-EX_GREENLASER_TEMP

I rebooted c1auxey to get these to work.

Once we get the green beat back again, the PID loop should servo on the end laser temperature to drive the Beat Frequency to the Frequency Setpoint, C1:LSC-EX_GRN_PID_SETPT, which can be set by the pink slider.

RA: All MEDM screens must be in the proper MEDM directory!! Also, all perl scripts must have a .pl extension!!! Also, all scripts must be in the scripts directory even if they are in development!!! And all scripts should use 'env' rather than have absolute pathnames for the location of perl, csh, tcsh, python, etc.

Attachment 1: Screenshot-C1LSC_EX_GRN_SLOW.adl.png
Screenshot-C1LSC_EX_GRN_SLOW.adl.png
  3934   Tue Nov 16 16:00:26 2010 AidanUpdateGreen LockingPID loop but no green

Quote:

RA: All MEDM screens must be in the proper MEDM directory!! Also, all perl scripts must have a .pl extension!!! Also, all scripts must be in the scripts directory even if they are in development!!! And all scripts should use 'env' rather than have absolute pathnames for the location of perl, csh, tcsh, python, etc.

 That's not unreasonable. But if we try 

 grep "perl" /cvs/cds/rtcds/caltech/c1/scripts/*/* 

you can see that we've got a fair amount of housekeeping to attend to. We might want to think about tidying up the scripts directory as part of the cds upgrade.

 

 

 

 

  13887   Thu May 24 15:18:12 2018 KiraUpdatePEMPID loop restarted

Rana said that it wasn't necessary to gather more data on the temperature fluctuations so I have reconnected the heater circuit and restarted the PID loop with the can on the seismometer.

  11189   Wed Apr 1 11:42:30 2015 manasaUpdateComputer Scripts / ProgramsPID script in python

Since none of us here are experts in pearl, I have put together a python script for a simple PID controller. This can be imported into any main scripts that will run the actual PID loop. The script, PID.py, exists in /scripts/general/

  3908   Fri Nov 12 12:06:11 2010 AidanConfigurationGreen LockingPID script working - now it needs to be tuned

 I've set up a PID script that senses the EX-PSL Green Beat note (from the frequency counter) and actuates on the temperature of the end laser to drive the beat note to a given setpoint.

  • I've added the necessary EPICS channels to c1iscaux and rebooted it so that the channels are live. They are listed in a new database file slow_grnx_pid.db
  • This database was added to the list of those loaded by startup.cmd.  
  • The PID script, GRNXSlowServo, is just a modified version of FSSSlowServo.
  • The version I've been running is currently in /cvs/cds/caltech/users/abrooks/.
  • There's also an MEDM screen in this directoy, C1LSC_EX_GRN_SLOW.adl, there that shows the PID settings.

Right now the script only passes the initial sanities checks, that is:

  1. It runs.
  2. You can enable/disable it without any errors and it starts actuating.

The settings all need to be tuned up - e.g. maximum_increment, hard_stops, time_step, PID constants.

Additionally, the units in the whole thing are pretty useless - some of the channels are in VOLTS, others in WATTS. I'd like to change all these to be in Hz. 


EPICS channels added:

  • grecord(ao,"C1:LSC-EX_GRN_SLOWKD")
  • grecord(ao,"C1:LSC-EX_GRN_SLOWKP")
  • grecord(ao,"C1:LSC-EX_GRN_SLOWKI")
  • grecord(ao,"C1:LSC-EX_GRN_PID_SETPT")
  • grecord(ao,"C1:LSC-EX_GRN_TIMEOUT")
  • grecord(stringin,"C1:LSC-EX_GRN_SLOWVERSION")
  • grecord(bi,"C1:LSC-EX_GRN_SLOWLOOP")
  • grecord(bi,"C1:LSC-EX_GRN_DEBUG")
  • grecord(bi,"C1:LSC-EX_GRN_SLOWBEAT")
 

 

Attachment 1: Screen_shot_2010-11-12_at_12.05.01_PM.png
Screen_shot_2010-11-12_at_12.05.01_PM.png
  13718   Thu Mar 29 17:14:42 2018 KiraUpdatePEMPID test

[Kira, Gautam]

We closed the loop today and implemented the PID script. I have attached the StripTool graph for an integral value of 0.5 and proportional value of 20. We had some issues getting it to work properly and it would oscillate between some low values of the control voltage. The set point here was -3.20, which corresponds to about a 20 degree increase in temperature. The next step would be to find which values of Kp, Ki, and Kd would work in this case and low pass filter the signal from the temperature sensor, and also create an MEDM screen for easier PID control.

Attachment 1: PID_test.png
PID_test.png
  13722   Fri Mar 30 06:16:45 2018 ranaUpdatePEMPID test

Can't really figure out what this plot means. We need to see the sensor (in units of deg C) and the control signal (in heating power (W)). The plot should show a few step responses with the PID loop on, so that we can see the loop response time. Please zoom in on the axes so that we can see what's happening.

Quote:

[Kira, Gautam]

We closed the loop today and implemented the PID script. I have attached the StripTool graph for an integral value of 0.5 and proportional value of 20. We had some issues getting it to work properly and it would oscillate between some low values of the control voltage. The set point here was -3.20, which corresponds to about a 20 degree increase in temperature. The next step would be to find which values of Kp, Ki, and Kd would work in this case and low pass filter the signal from the temperature sensor, and also create an MEDM screen for easier PID control.

 

  13723   Fri Mar 30 16:10:46 2018 KiraUpdatePEMPID test

I created two new channels today, C1:PEM-SEIS_EX_TEMP_MON_CELCIUS, which turns the output voltage signal into degrees C, and C1:PEM-SEIS_EX_TEMP_CTRL_WATTS, which takes the input voltage from the DAC and turns it into a value of watts. I'm trying to stabilize the temperature at 35 degrees, but it's taking a lot longer than expected. Perhaps we'll need to use different values for P and I and decrease the noise in the sensor, since right now there's about a 10 degree variation between the highest and lowest values.

  13726   Wed Apr 4 16:23:10 2018 KiraUpdatePEMPID test

I did a step response for the loop from 35 degrees to 40 degrees. The PID is not properly tuned, so the signal oscillates. In the graph, the blue curve is the temperature of the can in celcius and the green curve is the heating power in watts. The x-axis is in minutes. Before, the signal was too noisy to do a proper step response, so I placed a 3.3 microF capacitor in parallel with the resistor in my temperature sensor circuit (I'll draw and attach this updated version). This created a 5 Hz low pass filter and the signal is now pretty clean.

-----

I also added in new Epics channels so that we could log the data using Data Viewer. The channels I added were C1:PEM-SEIS_EX_TEMP_MON_CELCIUS and C1:PEM-SEIS_EX_TEMP_CTRL_WATTS. I used 13023 as a guide on how to do this.

Update: the channels work and show data in Data Viewer

-----

Edit: I've attached a photo of the circuit with the capacitor indicated. It is in parallel with the resistor below it. I've attached an updated circuit diagram as well.

Attachment 1: step_response.png
step_response.png
Attachment 2: capacitor.jpg
capacitor.jpg
Attachment 3: IMG_20180412_120427.jpg
IMG_20180412_120427.jpg
  13618   Wed Feb 7 17:01:25 2018 gautamUpdatePEMPID test plan

[kira, gautam]

We did a survey of the lab today to figure out some of the logistics for the PID control test for the seismometer can. Kira will upload sketches/photos from our survey. Kira tells me we need

  • +/- 15V for the temperature sensors
  • +/- 20V, 5A for heater circuit (to be confirmed by Kira after looking at voltage regulator datasheet for dropout voltage)
  • 2 ADC channels for temperature sensing (one inside can and one outside)
  • 1 DAC channel for controlling MOSFET

There are no DAC channels available in the c1ioo rack. In fact, there is a misleading SCSI cable labelled "c1ioo DAC0" that comes into the rack 1X3 - tracing it back to its other end, it goes into the c1ioo expansion chassis - but there are no DAC cards in there, and so this cable is not actually transporting any signals!

So I recommend moving the whole setup to the X end (which is the can's real home anyways). We plan to set it up without the seismometer inside for a start, to make sure we don't accidentally fry it. We have sufficient ADC and DAC channels available there (see Attachments #1 and #2, we also checked hardware), and also Sorensens to power the heater circuit / temperature sensing circuit. Do we want to hook up the Heater part of this setup to the Sorensens, which also power everything else in the rack? Or do we want to use the old RefCav heater power supply instead, to keep this high-current draw path isolated from the rest of our electronics?

If this looks okay (after pics are uploaded), we will implement these changes (hardware + software) tomorrow.

-----

I have attached the sketch of the whole system (attachment 3) with all the connections and inputs that we will need. Attachment 4 is the rack with the ADC and DAC channels labeled. Attachment 5 is the space where we could set up the can and have the wires go over the top and to the rack.

Attachment 1: ADC_EX.png
ADC_EX.png
Attachment 2: DAC_EX.png
DAC_EX.png
Attachment 3: IMG_20180207_170628.jpg
IMG_20180207_170628.jpg
Attachment 4: dac_adc.jpg
dac_adc.jpg
Attachment 5: IMG_20180207_165833.jpg
IMG_20180207_165833.jpg
  13619   Wed Feb 7 19:14:19 2018 ranaUpdatePEMPID test plan
  1. The heater circuit should get its own dedicated supply.
  2. We do not want to ever use the old Ref Cav heater for anything. Its unreliable and noisy.
  3. Steve should update all the sticky labels on all the power supplies in the lab to indicate what voltage they should be set at. Even if the label is correct, the date should be updated.
  13624   Thu Feb 8 12:24:37 2018 KiraUpdatePEMPID test plan

Some points before we can set up the can:

  1. Cable length and type
    • For the DAC, we can use the LEMO outputs and change it to BNC, then have a long BNC cable running over the top of the lab and to the can 
    • ADC is also LEMO, which we can convert to BNC and have a cable run from that to the temperature sensors
    • Sorensens use plain cables, so we need to find ones that can take a few amps of current and have them be long enough to reach the can and temperature sensors
  2. Making sure that there is enough space for the can
    • Can measures about 59 cm in diameter, which does fit in the space we chose
  3. Finding Sorensens that work and can provide +/-24V to the heater circuit (since Rana said we want the heater to have its own supply)
    • Found two Sorensens, but only one works for our purpose (update: found a second one that works)
    • The other can only proviide up to 20V before shorting and has been labeled
    • Grounding (see point 5) - we want to have these power supplies be independent, but we must still specify a ground
    • There is exactly enough space to fit in the two Sorensens below the ones that are currently there
  4. DIN fuses for 15V and 24V
    • 15V fuses can be easily installed since we don't need a very high current for the temperature sensors
    • the 24V fuses seem to be able to handle 6.3A according to the datasheet, but it only says 4V on the fuse itself. Not sure if this is the wrong darasheet...
  5. Connecting the crcuit to the DAC and what connectors to use
    • Using the rightmost DAC because there's less important things connected to it, and use the LEMO conncectors to provide the input
    • Connect the grounds of the DAC and the new Sorensens that we're going to install to the grounds of the rest of the Sorensens
    • *confirm that this setup will work and if not find an alternative
  6. Which channels to use for the ADC
    • channels 29, 30, 31 are available, so we can use any two of those (one for each sensor)

Also, I need to eventually remake the connections on my circuit board because they are all currently test points. I also need to find a box for the heater circuit and figure out what to do with the MOSFET and heat sink for it. This can either be done before setting everything up, or we can just change it later once we have the final setup for the can ready.

If all of this looks good then we can begin the setup.


gautam:

  1. I recommend using a DAC output from the rightmost AI board because (i) only the green steering mirror PZTs are hooked up to it while the other has ETMX suspension channels and (ii) the rightmost AI board has differential receiving from the DAC, and in light of the recent discussions about ground loops, this seems to be the way to go. Outputs 5-8 are currently unused, while outputs 1-4 are used for the EX green input steering mirror control.
  2. Converters required:
    • 2 pin LEMO to BNC --- 2pcs for each temp sensor.
    • Single pin LEMO to BNC --- 1pc for AI board to heater circuit input (readily available)
  13626   Thu Feb 8 17:32:44 2018 KiraUpdatePEMPID test plan

[Kira, Steve]

We set up a new rail for the Sorensens (attachment 1) and placed one of them down on this new rail (attachment 2). Unfortunately the older rail that had been used to support the other Sorensens (the top one in attachment 1) is thick and does not allow another one of the Sorensens to slide in between the current ones. So we will have to support all the ones on top with a temporary support, take out the old rail, and then insert the new ones before letting the new bottom rail carry the weight of all of the Sorensens. We will do that tomorrow.

In addition, we have to figure out how to lead all the cables to the can, but there are no holders on the side of the lab to do so. So, we decided that we would have a new one installed on the side shown in attachment 3 so that we wouldn't have to place the wires along the floor.

Also, there has been some space made for the can along with the new insulation. The stuff mounted on the wall was removed and will be reattached tomorrow so that it doesn't get in the way of the can anymore.

Attachment 1: IMG_20180208_171423.jpg
IMG_20180208_171423.jpg
Attachment 2: IMG_20180208_172107.jpg
IMG_20180208_172107.jpg
Attachment 3: IMG_20180208_171853.jpg
IMG_20180208_171853.jpg
Attachment 4: IMG_20180208_171932.jpg
IMG_20180208_171932.jpg
  13629   Fri Feb 9 15:29:32 2018 KiraUpdatePEMPID test plan

[Kira, Steve]

We installed and labeled the Sorensens today.

Attachment 1: IMG_20180209_152158.jpg
IMG_20180209_152158.jpg
  13634   Thu Feb 15 16:03:57 2018 KiraUpdatePEMPID test plan

I checked channels 6 and 7 on the ADC and they have long wires leading to BNC ends and are currently not being used, so we could probably just attach the temperature sensors to those channels.

  13768   Thu Apr 19 11:29:11 2018 ranaUpdatePEMPID tune

Yesterday, I changed the P gain of the PID loop from zero to  +0.1. Seems good so far; will monitor for a couple days to see if we're in the right ballpark. Main issue in the stability may now be that the quantization noise is too big for the temperature sensor. If so, we should consider subtracting off the DC value (with a V ref) and then amplifying before ADC.

Attachment 1: Screen_Shot_2018-04-19_at_11.27.08_AM.png
Screen_Shot_2018-04-19_at_11.27.08_AM.png
  13780   Mon Apr 23 20:06:35 2018 ranaUpdatePEMPID tune

This shows a step response of the EX seis temp control with K_I = -1 and K_P = -0.1. The time constants for both heatup and cooldown are ~2 hours.

I'm not so sure if the PID code itself makes sense though:

  # The basic finite-difference PID approximation
  e[0] = (p-s)
  print("Error signal = {}" .format(e[0])) 

  # These are the main equations of the PID Process
  u[0] = u[1]
  u[0] = u[0] + Kp * (e[0] - e[1])
  u[0] = u[0] + Ki * (e[0])
  u[0] = u[0] + Kd * (e[0] - 2*e[1] + e[2])

 

Seems like the Proportional term uses the difference (or derivative) of the error signal. This makes it more likely to pick up some high frequency noise; maybe we should low pass this signal somewhat, or at least implement a running average.

Since we still don't have an out of loop sensor or a PSL room temperature monitor or a particle counter in the frames, I've disabled the PID loop to see how much the can temperature varies with no feedback. Please leave it this way for a few days.

Attachment 1: HeaterTest.png
HeaterTest.png
  13735   Fri Apr 6 16:17:20 2018 KiraUpdatePEMPID tuning

I have been trying to tune the PID and have managed to descrease the oscillations without saturating the actuator. I'm going to model the system to calculate the exact values of P, I and D in order to get rid of the oscillations altogether. I was going to record the data using Data Viewer, but there seems to be some issue with that, so I'm using StripTool for now.

Attachment 1: PID_tuning_progress.png
PID_tuning_progress.png
  13736   Fri Apr 6 18:28:57 2018 ranaUpdatePEMPID tuning

Made some changes:

  1. Set P and D gains to zero. We only need slow drift control.
  2. Changed names of the python script and .ini file to distinguish it from the FSS stuff. Lives in scripts/PEM/
  3. removed debug flag from argParse. To run in non-debug mode you use the "-O" option of python as usual.
  4. Fixed the upper/lower limit convention for the heater. Was backwards.
  5. Removed the "rail" function that was defined. We can just use numpy.clip since that's already built in.

There is also now a StripTool file in the scripts/PEM directory which has appropriate channel names and scales for PID loop tuning. Use this file!

I'm leaving it running over the weekend with K_I = -0.003. There is a StripTool on rossa which you can watch. The code itself is running on a tmux session on megatron. Let's ONLY run this code there until we're satisfied that things are good.

Update Sun Apr 8 00:40:11 2018: Lowered gain by factors of 3 down to -0.0001 Saturday afternoon. Seems like still oscillating a bit, now with a ~4 hour period. Setting it to -3e-5 now. Usually we have a linear feedback loop, but our actuation voltage actually gets squared (P = I^2 R) before being integrated to produce temperature. Wonder if we should think of linearizing the feedback control signal to make the loop act nicer.

Update Sun Apr 8 21:09:48 2018: Set K_I = -1e-5 earlier today. Seems to have stabilized nearly, but temperature swings are still +/- 1 K. Will need to add some proportional feedback (K_P) to increase the loop bandwidth, but system is at least sort of stable now. Probably should start construction of EY,BS systems now.

Attachment 1: HeaterTest.png
HeaterTest.png
  8755   Wed Jun 26 11:45:06 2013 gautamUpdateGeneralPID tuning-Doubling Oven at Y end

 

Summary

Having established the serial link between the Doubling oven at the Y-end and the Raspberry pi, I wanted to use this interface to collect time-series from the oven after applying a step function in an effort to measure the transfer function of the oven. The idea was that knowing the transfer function of the oven, I could use some simple PID tuning rules like the Ziegler-Nichols rule or put everything in SIMULINK and find the optimal PID gains. However, I am unable to extract the oven transfer function from the time series data collected.

Methodology:

Last night, between 920pm and 940pm I applied a step function to the doubling oven by changing the setpoint of the controller from 35.7 Celsius to 39 Celsius (having checked elog 3203 to get an idea of a 'safe' step to apply). I then used the Pi to collect time series data for 6 minutes, then returned the set-point back to 35.7 Celsius, and took another time-series to make sure things were back to normal. Having gotten the time series data, I attempted to fit it using some exponentials which I derived as follows:

oven-loop.pdf

 

I couldn't think of a way to get the laplace transform of the time-series data collected, so I approximated the oven transfer function as a system with a one simple pole i.e. G(s)=K/(1+Ts), where K and T are parameters that characterise the oven transfer function. I then plugged in the above expression for Y(s) into Mathematica (knowing X(s)=constant/s, and H(s) = 250 + 60/s +25s from the PID gains) and did an inverse laplace transform to find a y(t) with two unknown parameters K and T to which I could fit the time-series data.

Results:

The time-series data collected via the Pi after applying the step was this:

Time_series.png

 The inverse laplace transform from mathematica yielded the following (formidable!) function (time, the independent variable, is x, and the fitting parameters are a=K and b=T where K and T are as described earlier):

 

(39*(exp(x*(1/(2*(25*a - b)) - (125*a)/(25*a - b) - sqrt(1 - 500*a+ 56500*a^2 + 240*a*b)/(2*(25*a - b)))) - exp(x*(1/(2*(25*a - b)) - (125*a)/(25*a - b) + sqrt(1 - 500*a + 56500*a^2 + 240*a*b)/(2*(25*a - b)))))*a)/sqrt(1 - 500*a + 56500*a^2 + 240*a*b)

My best attempts to fit this using MATLAB's cftool have given me useless fits:

 fit_attempt.png

I tried changing the start-points for the fitting parameters but I didn't get any better fits.

To Do:

  1. Explore other fitting options.
  2. Try and find a way to Laplace transform the time-series data so I can do the fitting in the s-domain.
  3. I have some tweaking to do as far as the python scripts on the pi are concerned.
  4. I have to get the current temperature readings onto one of the unused Y-arm EPICS channels, and log that data ~ once every 10 seconds.

Misc Remarks:

  1. The time-series data has a 'stepped' appearance because of the resolution of the temperature sensor: it is 0.1 Celsius.
  2. The sampling rate of the data-acquisition is limited; right now, I wait for 0.15 seconds after sending the command word to the controller before reading the data. When I set the wait-period any lower than this, I get errors. This has to be investigated more as I feel I should be able to get better sampling with the advertised baudrate of 115200, but in any case, it looks like it is sufficient for our purposes.

 

  10882   Fri Jan 9 10:52:37 2015 SteveUpdateSUSPIT trend plots at the ends

100 and 10 days trends of ETMX and ETMY_SUSPIT.  One can see clearly the earthquaks of Dec.30 and 31 on the 10 day plot. You can not see the two shakes  M3.0 & M4.3 of Jan. 3 

The long term plot looks OK , but   the 10 day plot show the problem of ETMX as it was shaken 4 times.

 

Attachment 1: susPITends.png
susPITends.png
  15088   Mon Dec 9 21:22:46 2019 shrutiUpdateGeneralPLL / PM measurement of Xend NPRO PZT

In short:

Using the same setup as before with a LPF changed to have a cutoff of 5 MHz, the PLL was implemented and a TF measurement of the phase modulation was attempted. But, the beatnote drift was too high to get a prolonged phase lock (many times over 5MHz in <5 min).
 

Steps undertaken:

1. Normally I would unlock the IMC (Disabling the servo between the 'Filter' and 'Polarity' on the Mode Cleaner Servo Screen), but today I did not have to since Rana had kept it unlocked.

2. Misaligned the ITMX. This is to prevent cavity resonances from returning to the laser

3. Turned up the air on the HEPA at the PSL table to 100% during the measurement

4. Cables were connected as before (diagram shown in attachment of elog 15069)

5. The X end laser NPRO was actuated for the TF measurement using a long cable connected to TO AUX_X LASER PZT

 

Thoughts and observations:

- Reading out the error signal after amplification cannot distinguish between a locked loop or one out of its range. The error signal would be very small in both cases.

- Looking at the beat note on an oscilloscope, there also seemed to be an additional amplitude modulation that I had not noticed earlier. Rana suggested that it may have something to do with the pre-mode cleaner and the AOM being driven at 80 MHz

- Even though the TF was attempted, it seemed too noisy, suggesting that the PLL did not seem to work

- Rana also suggested that it may be a better idea to use the PZT of one of the lasers as the VCO for the PLL feedback instead of the Marconi.

 

Quote:

I worked on the setup up for the phase modulation measurement of the X end NPRO PZT. A previous similar measurement can be found here (12077). The setup was assembled based on the schematic in Attachment1.

Mixer used: Level 7, Mini circuits ZP-3+
LPF: up to 1.9MHz


Cables exiting the PSL table:
1. LO (Marconi -> Mixer)
2. RF (PSL+X beat note -> Mixer) The cable for this was taken from the Beat Mouth (otherwise connected to the oscilloscope)
3. Ext modulator (SR560 -> Marconi)

The long cable labled 'X Green Beat' was used to connect to the PZT (from the network analyzer).

Observations: The beat note kept floating between 0 and ~100 MHz

The PLL part of the circuit was tested coarsely with the spectrum analyzer function of the Agilent, where the loop was seen to stabilize when the carrier frequency of the Marconi was close to the instantaneous beat frequency.

 

 

 

  15101   Tue Dec 17 20:08:09 2019 shrutiUpdateGeneralPLL / PM measurement of Xend NPRO PZT

1. Some calculations

For a Unity Gain Frequency (UGF) of 1 kHz, assumed PZT response K_{VCO} of 1 MHz/V, Mixer response K_{M} of 25 mV/\pi rad, the required gain of the amplifier is

G = 2 \pi \times \text{UGF}/ (K_{VCO} K_M)

G ~ 0.8

2. Progress

- Measured the mixer response

Measuring mixer response:

- PSL laser temperature was adjusted so that beat frequency was roughly 25 MHz and the amplitude was found to be roughly -30dBm.

- At the RF port instead of the beat signal, a signal of 25 MHz + few kHz at -30 dBm was inputted. The LO was a 25 MHz signal was sent from the Marconi at 7 dBm.

- The mixer output was measured, with setup as in Attachment 1  Figure (A), on an oscilloscope. The slope near the small angle region of the sine curve would be the gain (in V/rad) and was found to be: K_M \approx 25 \text{ mV}/ \pi rad

- Since from the above calculations it seemed like an amplifer gain of 1 should work for the PLL, I rearranged the set up as in Figure (B) of Attachment 1 to actuate the X end NPRO PZT, I adjusted the PSL temperature (slow control) to try and match the frequency to 25 MHz, but couldn't lock the loop. I was monitoring the error signal after amplification (50 ohm output of the SR 560) which showed oscillations when the beat frequency was near 25 MHz and nothing significant otherwise.

- I used a 20 dB attenuator at the amplifier output and saw the beat note oscillate for longer, but maybe because it was a 50 ohm component in a high impedance channel it did not work either (?). I tried other attenuator combinations with no better luck.

- Is there a better location to add the attenuator? Should I pursue amplifying the beat signal instead?

- Also, it seemed like the beat note drift was higher than earlier. Could it be because the PMC was unlocked?

 

Quote:
 

 

Attachment 1: 20191217.png
20191217.png
  15129   Thu Jan 16 19:32:23 2020 shrutiUpdateGeneralPLL / PM measurement of Xend NPRO PZT

With Gautam's help today the PLL managed to be be locked for a few brief moments. Turns out the signal power of the beat was an issue.

What was changed prior to/ during the experiment:

1. The PSL shutter was closed so not light goes into the input mode cleaner.

2. HEPA turned up (will be turned back down to ~30%)

3. AOM driver offset voltage decreased from 1V to ~100 mV (this will be reverted to 1V by the end of today). This increases the beat signal by deflecting the zeroth order beam to create the beat.

4. Output of servo SR 560 sent to the PZT of the X NPRO laser (the cable was disconnected from the pomona box at the X end)

5. The SR560, mixer, LPF and cables required for connections were moved into the PSL enclosure.

6. The error and control signals were hooked up to the oscilloscope where the beat outputs were visible (the setup has been reverted back to the original).

 

Elog 14687 has a detailed description of the conditions that provide a stable lock. I was told that the PI controller (LB1005) may be a better servo than the SR560, but today it was not used.

1) Parameters during the more successful attempts:

LPF: 5 MHz, Mixer: ZP-3+

Gain set at SR560: varied, but generally 200

Filter at SR560: 1 Hz low pass (single pole? at least by the label)

2) The LO had to be very close (<2 MHz) to the beat frequency in order to achieve a lock for ~30s


gautam edits:

  • the error signal for the PLL was being sourced from the 20dB coupled port on the BeatMouth.
  • additionally, most of the power in the PSL beam coupled into the fiber was being deflected into the first order beam by team ringdown.
  • The Vpp of the mixer output (when using the coupled beat and low PSL beam power) was a paltry 5-10 mVpp no.
  • I suggested using the direct NF1611 output for this measurement instead of the coupled output (alternatively, use an amp). it's probably also better to use the LB1005 for locking the PLL, long term, this can be set up to be controlled remotely, and a slow PID servo can be used to extend the duration of the lock by servoing either the marconi carrier freq or the EX temp ctrl.
Quote:

1. Some calculations

For a Unity Gain Frequency (UGF) of 1 kHz, assumed PZT response K_{VCO} of 1 MHz/V, Mixer response K_{M} of 25 mV/\pi rad, the required gain of the amplifier is

G = 2 \pi \times \text{UGF}/ (K_{VCO} K_M)

G ~ 0.8

2. Progress

- Measured the mixer response

Measuring mixer response:

- PSL laser temperature was adjusted so that beat frequency was roughly 25 MHz and the amplitude was found to be roughly -30dBm.

- At the RF port instead of the beat signal, a signal of 25 MHz + few kHz at -30 dBm was inputted. The LO was a 25 MHz signal was sent from the Marconi at 7 dBm.

- The mixer output was measured, with setup as in Attachment 1  Figure (A), on an oscilloscope. The slope near the small angle region of the sine curve would be the gain (in V/rad) and was found to be: K_M \approx 25 \text{ mV}/ \pi rad

- Since from the above calculations it seemed like an amplifer gain of 1 should work for the PLL, I rearranged the set up as in Figure (B) of Attachment 1 to actuate the X end NPRO PZT, I adjusted the PSL temperature (slow control) to try and match the frequency to 25 MHz, but couldn't lock the loop. I was monitoring the error signal after amplification (50 ohm output of the SR 560) which showed oscillations when the beat frequency was near 25 MHz and nothing significant otherwise.

- I used a 20 dB attenuator at the amplifier output and saw the beat note oscillate for longer, but maybe because it was a 50 ohm component in a high impedance channel it did not work either (?). I tried other attenuator combinations with no better luck.

- Is there a better location to add the attenuator? Should I pursue amplifying the beat signal instead?

- Also, it seemed like the beat note drift was higher than earlier. Could it be because the PMC was unlocke

  15148   Thu Jan 23 20:08:49 2020 shrutiUpdateGeneralPLL / PM measurement of Xend NPRO PZT

Setup Update:

- No more SR 560, upgraded to LB1005 P-I controller.  Because: Elog 14687. Schematic of new setup shown in Attachment 1.

- For this, the Marconi was moved to the other (east) side of the PSL table and a power supply was also placed in the enclosure.

I think that the RF power at the mixer in this new configuration is 0 dBm (since the spectrum analyzer read ~ -20 dBm)

Progress Today:

- Turned up the HEPA to 100%, closed the PSL shutter, misaligned the ITMX, connected the LB1005 to the PZT. [The PZT has been reconnected to the X arm PDH servo, HEPA back to 20-30%]

- Tried to look for the PSL+X beat, but it was not there. Gautam identified the flipmount in the path which sorted it out (eventually), but there was no elog about itsurprise.

- After much trial, the loop seemed to lock with PI corner 1 kHz, gain ~2.9 (as read on knob), LFGL set to 90 dB. The beat note looked quite stable on the oscilloscope, but the error signal had an rms of ~100 mV (Rana pointed out that it could be the laser noise) and the lock lasted for ~1 min each time.

The parameters were similar to that in elog 14687. Why do we require such a high PI corner frequency and LFGL?

Attachment 1: Image-1.jpg
Image-1.jpg
  15169   Tue Jan 28 19:40:15 2020 shrutiUpdateGeneralPLL / PM measurement of Xend NPRO PZT

Over the past few days, I have been trying to make measurements of the phase modulation transfer function by modulating the X end laser PZT via PLL.

The setup was modified every time during the experiment in the same manner as mentioned in elog 15148.

I could not make the PLL lock for long enough to take a proper TF measurement, resulting in TFs that look like Attachment 1. The next step would be to use the method of a delay line frequency discriminator instead of the PLL.


Comments about locking with LB1005 PI controller:

  1. I do not understand why the high PI corner frequency of 1kHz or 3kHz was required to lock.
  2. The rms level of the error signal when locked was ~100 mV, which is 25% of the total mixer range (~400 mVpp). Decreasing the gain only caused the loop to go out of lock and did not decrease this noise in the error signal.
  3. The setup was also partly inside the PSL enclosure, with the HEPA turned to 100%, which is probably a noisy environment for this measurement. Closing and opening the shutters or any disturbance near the enclosure resulted in movement of the beat note up to 5 MHz.
  4. It may have been a better idea to actuate the PSL laser instead of the X NPRO because of its larger range, but would this solve the issue with the noise?
Attachment 1: PMTF.pdf
PMTF.pdf
Attachment 2: BeatSpectrum.pdf
BeatSpectrum.pdf
  2230   Tue Nov 10 19:21:53 2009 AlbertoUpdateABSLPLL Alignment

I've been trying to lock the PLL for the AbsL Experiment but I can't see the beat (between the auxiliary NPRO and the PSL).

I believe the alignment of the PLL is not good. The Farady Isolator is definitely not perfectly aligned (you can see it from the beam spot after it) but still it should be enough to see something at the PLL PD.

it's probably just that the two beams don't overlap well enough on the photodiode. I'll work on that later on.

I'm leaving the lab now. I left the auxiliary NPRO on but I closed its shutter.

All the flipping mirrors are down.

  2576   Mon Feb 8 14:13:03 2010 AlbertoUpdateABSLPLL Characterization

Lately I've been trying to improve the PLL for the AbsL experiment so that it could handle larger frequency steps and thus speed up the cavity scan.

The maximum frequency step that the PLL could handle withouth losing lock is given by the DC gain of the PLL. This is the product of the mixer's gain factor K [rad/V ], of the laser's calibration C [Hz/V] and of the PLL filter DC gain F(0).

I measured these quantities: K=0.226 V/rad; C=8.3e6 Hz/V and F(0)=28.7dB=21.5. The max frequency step should be Delta_f_max = 6.4MHz.

Although in reality the PLL can't handle more than a 10 KHz step. There's probably some other effect that I'm not.

I'm attaching here plots of the PLL Open Loop Gain, of the PLL filter and of a spectra of the error point measured in different circumstances.

I don't have much time to explain here how I took all those measurements. After I fix the problem, I'm going to go go through those details in an elog entry.

Does anyone have any suggestion about what, in principle, might be limiting the frequency step?

I already made sure that both cables going to the mixer (the cable with the beat signal coming from the photodiode and the cable with the LO signal coming from the Marconi) had the same length. Although ideally, for phase locking, I would still need 90 degrees of phase shift between the mixing signals, over the entire frequency range for which I do the cavity scan. By now the 90 degrees are not guaranteed.

Also, I have a boost that adds another 20 dB at DC to the PLL's filter. Although it doesn't change anything. In fact, as said above calculating the frequency step, the PLL should be able to handle 100KHz steps, as I would want the PLL to do.

Attachment 1: 2010-02-08_Old_PDH_Box_Filter_TF_gain_knob_0_Boost_OFF.png
2010-02-08_Old_PDH_Box_Filter_TF_gain_knob_0_Boost_OFF.png
Attachment 2: 2010-02-08_PLL_OLG_gain_knob_0_Boost_OFF.png
2010-02-08_PLL_OLG_gain_knob_0_Boost_OFF.png
Attachment 3: 2010-02-08_PLL_Noise_Budget.png
2010-02-08_PLL_Noise_Budget.png
  2581   Tue Feb 9 09:07:06 2010 AlbertoUpdateABSLPLL Characterization

Quote:

Lately I've been trying to improve the PLL for the AbsL experiment so that it could handle larger frequency steps and thus speed up the cavity scan.

The maximum frequency step that the PLL could handle withouth losing lock is given by the DC gain of the PLL. This is the product of the mixer's gain factor K [rad/V ], of the laser's calibration C [Hz/V] and of the PLL filter DC gain F(0).

I measured these quantities: K=0.226 V/rad; C=8.3e6 Hz/V and F(0)=28.7dB=21.5. The max frequency step should be Delta_f_max = 6.4MHz.

Although in reality the PLL can't handle more than a 10 KHz step. There's probably some other effect that I'm not.

I'm attaching here plots of the PLL Open Loop Gain, of the PLL filter and of a spectra of the error point measured in different circumstances.

I don't have much time to explain here how I took all those measurements. After I fix the problem, I'm going to go go through those details in an elog entry.

Does anyone have any suggestion about what, in principle, might be limiting the frequency step?

I already made sure that both cables going to the mixer (the cable with the beat signal coming from the photodiode and the cable with the LO signal coming from the Marconi) had the same length. Although ideally, for phase locking, I would still need 90 degrees of phase shift between the mixing signals, over the entire frequency range for which I do the cavity scan. By now the 90 degrees are not guaranteed.

Also, I have a boost that adds another 20 dB at DC to the PLL's filter. Although it doesn't change anything. In fact, as said above calculating the frequency step, the PLL should be able to handle 100KHz steps, as I would want the PLL to do.

I might have found the problem with the PLL that was preventing me from scanning the frequencies by 100KHz steps. A dumb flimsy soldering in the circuit was making the PLL unstable.

After I fixed that problem and also after writing a cleverer data acquisition script in Python,  I was able to scan continuosly the range 10-200MHz in about 20min (versus the almost 1.5-2 hrs that I could do previously). I'm attaching the results to this entry.

The 'smears' on the right side of the resonance at ~33MHz, are due to the PSL's sideband. I think I know how to fix that.

As you can see, the problem is that the model for the cavity transmission still does not match very well the data. As a result, the error on the cavity length is too big (~> 10 cm - I'd like to have 1mm).

Anyway, that was only my first attempt of scanning. I'm going to repeat the measurement today too and see if I can come out better. If not, than I have to rethink the model I've been using to fit.

Attachment 1: 2010-02-08_PRCtransmissivity_EntireFreqRange_VsFit.png
2010-02-08_PRCtransmissivity_EntireFreqRange_VsFit.png
  2261   Thu Nov 12 18:10:27 2009 AlbertoUpdateABSLPLL Locked

I locked the PLL and made some first measuremtns of the spectrum of the error signal. I'll post them later.

I closed the shutter of the NPRO.

  11925   Mon Jan 11 19:01:56 2016 gautamUpdateLSCPLL Marconi Investigation

EDIT 01/12/2016 6PM: I've updated the plots of the in-loop spectra such that they are calibrated throughout the entire domain now. I did so by inferring the closed-loop transfer function (G/(1-G)) from the measured open-loop transfer function (G), and then fitting the inferred TF using vectfit4 (2 poles). The spectra were calibrated by multiplying the measured spectra by the magnitude of the fitted analytic TF at the frequency of interest.

EricQ brought back one of the Marconis that was borrowed by the Cryo lab to the 40m today (it is a 2023B - the Marconi used for all previous measurements in this thread was 2023A). Koji had suggested investigating the frequency noise injected into the PLL by the Marconi, and I spent some time investigating this today. We tried to mimic the measurement setup used for the earlier measurements as closely as possible. One Marconi was used as a signal source, the other as the LO for the PLL loop. All measurements were done with the carrier on the signal Marconi set to 310MHz (since all our previous measurements were done around this value). We synced the two Marconis by means of the "Frequency Standard" BNC connector on the rear panel (having selected the appropriate In/Out configurations digitally first). Two combinations were investigated - with either Marconi as LO and signal source. For each combination, I adjusted the FM gain on the Marconi (D in the plot legends) and the overall control gain on the SR560 (G in the plot legends) such that their product remained approximately constant. I measured the PLL OLG at each pair to make sure the loop shape was the same throughout all trials. Here are the descriptions of the attached plots:

Attachment #1: 2023A as LO, 2023B as source, measured OLGs

Measured OLG for the various combinations of FM gain and SR560 gain tested. The UGF is approximately 30kHz for all combinations - the exceptions being D 1.6MHz, G=1e4 and D=3.2MHz, G=1e4. I took the latter two measurements just because these end up being the limiting values of D for different carrier frequencies on the Marconi.

Attachment #2: 2023A as LO, 2023B as source, measured spectra of control signal (uncalibrated above 30kHz)

I took the spectra down to 2Hz, in two ranges, and these are the stitched versions. 

Attachment #3: 2023B as LO, 2023A as source, measured OLGs

Attachment #4: 2023B as LO, 2023A as source, measured spectra of control signal (uncalibrated above 30kHz)

So it appears that there is some difference between the two Marconis? Also, if the frequency noise ASD-frequency product is 10^4 for a healthy NPRO, these plots suggest that we should perhaps operate at a lower value of D than the 3.2MHz/V we have been using thus far? 

As a quick trial, I also took quick spectra of the PLL control signals for the PSL+Aux X and PSL+Aux Y beat signals, with the 2023B as the LO (Attachment #5). The other difference is that I have plotted the spectrum down to 1 Hz (they are uncalibrated above 30Hz). The PSL+Y combination actually looks like what I would expect for an NPRO (for example, see page 2 of the datasheet of the Innolight Mephisto) particularly at lower frequencies - not sure what to make of the PSL+X combination. Also, I noticed that the amplitude of the PSL+Y beatnote was going through some large-amplitude (beat-note fluctuates between -8dBm and -20dBm) but low frequency (period ~10mins) oscillations. This has been observed before, not sure why its happening though. 

More investigations to be done later tonight.

Attachment 1: 2023ALockedto2023B.pdf
2023ALockedto2023B.pdf
Attachment 2: 2023ALockedto2023B_spectra.pdf
2023ALockedto2023B_spectra.pdf
Attachment 3: 2023BLockedto2023A.pdf
2023BLockedto2023A.pdf
Attachment 4: 2023BLockedto2023A_spectra.pdf
2023BLockedto2023A_spectra.pdf
Attachment 5: TestSpectra.pdf
TestSpectra.pdf
Attachment 6: 2016_01_AUXLaser.tar.gz
  2338   Wed Nov 25 20:24:49 2009 AlbertoUpdateABSLPLL Open Loop Gain Measured

I measured the open loop gain of the PLL in the AbsL experiment.

I repeated the measurement twice: one with gain knob on the universal PDH box g=3.0; the second measurement with g=6.0

The UGF were 60 KHz and 100 KHz, respectively.

That means that one turn of the knob equals to about +10 dB.

Attachment 1: 2009-09-25_OLgain_g3png.png
2009-09-25_OLgain_g3png.png
Attachment 2: 2009-09-25_OLgain_g6png.png
2009-09-25_OLgain_g6png.png
ELOG V3.1.3-