40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  40m Log, Page 197 of 335  Not logged in ELOG logo
ID Date Authorup Type Category Subject
  8770   Thu Jun 27 18:11:53 2013 gautamUpdateGeneralITMx Oplev-POX looks beam okay


 Jenne just aligned the X arm and I got a chance to check the status of the POX beam coming out of the chamber. Turned the Oplev servo off so that the red beam could be blocked, turned all the lights off, and had a look at the beam in the vicinity of the mirror steering the Oplev-out beam to the QPD with an IR view-card. The beam is right now about half a centimeter from the pitch knob of the said mirror, so its not getting clipped at the moment. But perhaps the offending mirror can be repositioned slightly, along with the Oplev QPD such that more clearance is given to the POX beam. I will work this out with Steve tomorrow morning. 

  8777   Thu Jun 27 23:01:39 2013 gautamUpdateGeneralITMx Oplev-servo gains adjusted


 With rana's input, I changed the ITMx oplev servo gains given the beam path had been changed. The pitch gain was changed from 36 to 30, while the yaw gain was changed from -25 to -40. Transfer function plots attached. The UGF is ~8Hz for pitch and ~7Hz for yaw.

I had to change the envelope amplitudes in the templates for both pitch and yaw to improve the coherence. Above 3Hz, I multiplied the template presets by 10, and below 3Hz, I multiplied these by 25.





  8784   Fri Jun 28 13:10:28 2013 gautamUpdateGeneralITMx Oplev-servo gains adjusted


 As mentioned in elog 8770, I wanted to give the POX beam a little more clearance from the pick-off mirror steering the outcoming oplev beam. I tweaked the position of this mirror a little this morning, re-centred the spot, and checked the loop transfer function once again. These were really close to those I measured last night (UGF for pitch ~8Hz, for yaw ~7Hz), reported in elog 8777, so I did not have to change the loop gains for either pitch or yaw. Plots attached.




  8789   Tue Jul 2 00:25:14 2013 gautamUpdateGreen LockingUniversal PDH box tuning

 [Koji, Annalisa, Gautam]

Annalisa noticed that over the weekend the Y-arm green PDH was locked to a sideband, despite not having changed anything on the PDH box (the sign switch was left as it was). On friday, we tried turning on and off some of the filters on the slow servo (C1ALS_Y_SLOW) which may have changed something but this warranted further investigation. We initially thought that the demodulation phase was not at the optimal value, and decided to try introducing some capacitances in the path from the function generator to the LO input on the universal PDH box. We modelled the circuit and determined that significant phase change was introduced by capacitances between 1nF and 100nF, so we picked out some capacitors (WIMA FKP) and set up a breadboard on which to try these out.

After some trial and error, Koji dropped by and felt that the loop was optimized for the old laser, the various loop parameters had not been tweaked since the new laser was installed. The following parameters had to be optimized for the new laser;

  • Servo gain
  • LO frequency
  • LO modulation depth
  • Demodulation phase

The setup was as follows: 

  • PDH box error signal to Oscilloscope CH1
  • Green PD output to Oscilloscope CH2
  • No capacitor between Function Generator and the PDH box
  • 0.1Hz triangle wave (30 counts amplitude) applied to ETMY via awggui (so as to sweep the cavity and see stronger, more regular TEM00 flashes)

The PDH error signal did not have very well-defined features, so Koji tweaked the LO frequency and the modulation depth till we got a reasonably well-defined PDH signal. Then we turned the excitation off and locked the cavity to green. The servo gain was then optimized by reducing oscillations in the error signal. Eventually, we settled on values for the Servo Gain, LO frequency and modulation depth such that the UGF was ~20kHz (determined by looking at the frequency of oscillation of the error signal on an Oscilloscope), and the PDH signal had well-defined features (while the cavity was unlocked). The current parameters are

  • LO frequency: 205.020 kHz
  • modulation depth: 0.032 Vpp

We then proceeded to find the optimal demodulation phase by simulating the circuit with various capacitances between the function generator and the PDH box (circuit diagram and plots attached). The simulation seemed to suggest that there was no need to introduce any additional capacitance in this path (introducing a 1nF capacitance added a phase-lag of ~90 degrees-this was confirmed as the error-signal amplitude decreased drastically when we hooked up a 1nF capacitor on our makeshift breadboard). In the current configuration, the LO is connected directly to the PDH box.


Misc Points:

  • The phase shifter in the PDH box is not connected: the IC in the box, JSPHS-26, is designed for operation in the range 18-26MHz. If necessary, an all-pass-filter could be introduced, with a tuneable rheostat to adjust the phase for our frequency range. Right now, turning the knob marked "LO phase angle" on the front panel doesn't do anything. The mixer on the PDH board is also not used for the same reason.
  • PSL shutter was closed sometime earlier this evening, because we suspected some IR light was reaching the Green PD on the y-endtable, and was influencing the error signal. Its back open now.
  • Useful information about the old y-end laser relevant to selecting the right LO frequency, modulation depth, and servo gain can be found here and in elog 2746 and subsequent replies, though the details of how the measurement were made aren't entirely clear. The idea is that the characteristics of the piezoelectric element in the laser has some characteristics which will determine the optimal LO frequency, modulation depth and servo gain.


To Do:

Now that we are reasonably confident that the loop parameters are optimal, we need to stabilise the C1ALS_Y_SLOW loop to stabilise the beat note itself. Appropriate filters need to be added to this servo.


Circuit Diagram: 50 ohm input impedance on the source, 50 ohm output impedance seen on the PDH box, capacitance varied between 1nF and 100nF in steps.


Plots for various capacitances: Gold-green trace (largest amplitude) direct from LO, other traces at input to PDH box.


  8800   Wed Jul 3 21:19:04 2013 gautamConfigurationendtable upgradeplan of action for PZT installation

 This is an update on the situation as far as PZT installation is concerned. I measured the required cable (PZT driver board to PZT) lengths for the X and Y ends as well as the PSL table once again, with the help of a 3m long BNC cable, just to make sure we had the lengths right. The quoted cable lengths include a meter tolerance. The PZTs themselves have cable lengths of 1.5m, though I have assumed that this will be used on the tables themselves. The inventory status is as follows.

  1. Stuff ordered:
    • RG316 LEMO 00 (female) to SMB (female) cables, 10 meters - 6pcs (for the Y-end)
    • RG316 LEMO 00 (female) to SMB (female) cables, 11 meters - 6pcs (for the X-end)
    • RG316 LEMO 00 (female) to SMB (female) cables, 15 meters - 8pcs (6 for the PSL, and two spares)
    • RG316 SMA (male) to open cables, 3 meters - 3pcs (1 each for the X end, Y end and PSL table, for connecting the driver boards to the 100V DC power supply)
    • 10 pin IDC connectors for connecting the DAC interface to the PZT driver boards 
  2. Stuff we have:
    • 40 pin IDC connectors which connect to the DAC interface
    • PZT driver boards
    • PZT mounts
    • Twisted ribbon wire, which will be used to make the custom ribbon to connect the 10 pin IDC to the 40 pin IDC connector

I also did a preliminary check on the driver boards, mainly to check for continuity. Some minor modifications have been made to this board from the schematic shown here (using jumper wires soldered on the top-side of the PCB). I will have to do a more comprehensive check to make sure the board as such is functioning as we expect it to. The plan for this is to first check the board without the high-voltage power supply (using an expansion card to hook it up to a eurocrate). Once it has been verified that the board is getting powered, I will connect the high-voltage supply and a test PZT to the board to do both a check of the board as well as a preliminary calibration of the PZTs.

To this end, I need something to track the spot position as I apply varying voltage to the PZT. QPDs are an option, the alternative being some PSDs I found. The problem with the latter is that the interfaces to the PSD (there are 3) all seem to be damaged (according to the labels on two of them). I tried connecting a PSD to the third interface (OT301 Precision Position Sensing Amplifier), and hooked it up to an oscilloscope. I then shone a laser pointer on the psd, and moved it around a little to see if the signals on the oscilloscope made sense. They didn't on this first try, though this may be because the sensing amplifier is not calibrated. I will try this again. If I can get one of the PSDs to work, mount it on a test optical table and calibrate it. The plan is then to use this PSD to track the position of the reflected beam off a mirror mounted on a PZT (temporarily, using double sided tape) that is driven by feeding small-amplitude signals to the driver board via a function generator. 



The LEMO connector on the PZTs have the part number LEMO.FFS.00, while the male SMB connectors on the board have the part number PE4177 (Pasternack)

Plan of Action:

  • The first task will be to verify that the board is working by the methods outlined above.
  • Once the board has been verified, the next task will be to calibrate a PZT using it. I have to first identify a suitable way of tracking the beam position (QPD or PSD?)
  • I have identified a position in the eurocrate at 1Y4 to install the board, and I have made sure that for this slot, the rear of the eurocrate is not hooked up to the cross-connects. I now need to figure out the exact pin configuration at the DAC interface: the bank is marked 'DAC Channels 9-16' (image attached) but there are 40 pins in the connector, so I need to map these pins to DAC channels, so that when making the custom ribbon, I get the pin-to-pin map right.



The wiring scheme has been modified a little, I am uploading an updated one here. In the earlier version, I had mistaken the monitor channels as points from which to log data, while they are really just for debugging. I have also revised the coaxial cable type used (RG316 as opposed to RG174) and the SMB connector (female rather than male).






  8804   Mon Jul 8 13:45:19 2013 gautamConfigurationendtable upgradeDriver board verification

With the help of an expansion card,  I verified that the + 15V and + 24V from the eurocrate in the slot I've identified for the PZT driver boards are making their way to the board. The slot is at the right-most end of the eurocrate in 1Y4, and the rack door was getting in the way of directly measuring these voltages once I hooked up the driver board to the expansion card. So I just made sure that all the LEDs on the expansion card lit up (indicating that the eurocrate is supplying + 5, + 15 and + 24V), and then used a multimeter to check continuity between the expansion card and the driver board outside of the eurocrate. The circuit only uses + 15V and + 24V, and I checked for continuity at all the IC pins marked with these voltages on the schematic.

Since the whole point of this test was to see if the slot I identified was delivering the right voltages, I think this is sufficient. I will now need to fashion a cable that I can use to connect a DC power supply to the PZT driver boards so that these can be tested further.

The high voltage points (100V DC) remain to be tested.

  8809   Tue Jul 9 11:37:37 2013 gautamUpdateCDSset up for testing DAC Interface-board pin outs

The bank marked channel 9-16 is free, but the connector is a 40 pin IDC and I need to know the exact pin-out configuration before I can set about making the custom ribbon cable that will send the control signals from the DAC card to the PZT driver board. 

The DAC interface board on rack 1Y4 seems to be one of the first versions of this board, and has no DCC number anywhere on it. Identical modules on other racks have the DCC number D080303, but this document does not exist and there does not seem to be any additional documentation anywhere. The best thing I could find was the circuit diagram for the ADL General Standards 16-bit DAC Adapter Board, which has what looks like the pin-out for the 68 pin SCSI connector on the DAC Interface board. Koji gave me an unused board with the same part number (D080303) and I used a multimeter and continuity checking to make a map between DAC channels, and the 40 pin IDC connector on the board, but this needs to be verified (I don't even know if what is sitting inside the box on 1Y4 is the same D080303 board).

Jenne suggested making a break-out cable to verify the pin-outs, which I did with a 40-pin IDC connector and a bit of ribbon wire. The other end of the ribbon wire has been stripped so that we can use some clip-on probes and an oscilloscope to verify the pin-outs by sending a signal to DAC channels 9 through 16 one at a time. On the software side, Jenne did the following:

  • Restarted the mx_stream on c1iscey  (unrelated to this work)
  • 8 Excitation points added in the simulink model on c1scy 
  • Model compiled and installed

We have not restarted c1scy yet as Annalisa is working on some Y-arm stuff right now. We will restart c1scy and use awggui to perform the test once she is done.

 Pink edits by JCD

  8811   Tue Jul 9 12:01:20 2013 gautamUpdateCDSset up for testing DAC Interface-board pin outs


 Jenne just rebooted c1scy and daqd on the framebuilder. We will do the actual test after lunch.

  8814   Tue Jul 9 18:44:37 2013 gautamUpdateCDSDAC Interface Board-Pin Outs


The pin-outs for the DAC interface board have been determined.


  • I used a temporary break-out cable (pic attached) and connected the 40pin IDC connector on this to the DAC interface board at 1Y4.
  • I had a hypothetical pin-out map which was to be verified. So I connected pairs of ribbon wire to an oscilloscope in the configuration which I believed to be correct, and then used awggui to send a 3Hz, 10000 count sine-wave to the corresponding channel via the excitation points set up earlier.
  • I verified that the correct waveform showed up on the scope screen. I then tried sending the same signal to another DAC channel and verified that there were no accidental shorts/bad connections. The signal was fairly noisy, but this was probably because of the makeshift connections.
  • Repeated the above for all 8 channels in the bank marked 9-16 on the DAC interface board.

Turns out that my deductions using the D0902496 wiring diagram, a spare D080303 DAC to IDC adaptor and a multimeter were correct! The pin outs as determined by this test are sketched in the graphic below.

To Do:

  •  Now that the pin-outs have been determined, I need to go about making the custom ribbon that will connect the 40pin IDC on the DAC interface board to the 10-pin IDC on the PZT driver board. Because there is a pair of wires that will have to be 'skipped' while going from the 40-pin to the 10 pin IDC (corresponding to the pair not-connected between two DAC channels on the 40-pin IDC), this may be tricky.


The excitation points added to the simulink model are still there, I plan on keeping it as such till I finish installation of the boards as they will be useful for testing purposes.


Pin-Outs of the DAC to IDC Adaptor (D080303) inside the "DAC Interface Box at 1Y4":



Makeshift break-out ribbon cable:





  8817   Wed Jul 10 01:27:44 2013 gautamUpdateGreen LockingY-end Green PDH open-loop transfer function

 [Annalisa, gautam]


We have measured the open-loop transfer function of the Y-end green PDH loop. From the measurement, the loop UGF is ~12kHz.


We have been trying to measure this transfer function for some time now, and playing around with various points of injecting the excitation and measuring the output. Koji helped arrive at one that actually worked, and the scheme used to make this measurement is shown in the sketch below. The SR785 signal analyzer was used to make the measurement, while an SR560 preamp was used to sum the output from the PDH box (PZT-OUT) and the excitation, with this sum being delivered to the auxiliary laser PZT via a pomona box that sums the servo output and the signal from the LO. The transfer function measurement made was a1/a2 w.r.t the sketch attached.

  • The swept-sine measurement was done from high to low frequencies, as the open-loop gain was expected to be high at low frequencies.
  • After some trial and error, we realised that the excitation amplitude on the SR785 can be varied continuously during the course of a swept sine measurement using the dial on the front panel. We started out with a 1mVpp signal at the high end of the frequency sweep (~102kHz, the upper limit on the SR785) and went up to 17mVpp at ~30Hz). These values were determined by trial and error, and were approximately the maximum that did not kick the loop out of lock/into a higher order mode.


  • As per this paper, the expected bandwidth of this loop is expected to be ~30kHz, while the measured UGF was more like 11.7kHz. Perhaps we can get this closer to the expected 30kHz by increasing the servo gain. The measurement shown was done with the servo gain knob on the Universal PDH box set to ~7.86. We tried two other values, ~8.2 and 10 (this was the limit on the knob), but the UGF first increased to ~13kHz (for the 8.2 gain), and then decreased to ~5kHz with a gain of 10. Not sure why this was, but it can be looked into further. 

Set-up to measure Y-end Green PDH transfer function:



Measured Open Loop Transfer Function:


  8823   Wed Jul 10 22:41:06 2013 gautamConfigurationendtable upgradePZT Driver Board

 I did the following with the PZT Driver Board: 


  •  With an expansion card attached to the driver board, I used an Agilent E3620A power supply to verify that the 15V and 24V supplies were reaching the intended ICs. It turns out that the +24 V supply was only meant to power some sort of on-board high voltage supply which provided the 100V bias for the PZTs and the MJE15030s. This device does not exist on the board I am using, jumper wires have been hooked up to an SMA connector on the front panel that directly provides 100V from the KEPCO high voltage supply to the appropriate points on the circuit.

  •  All the AD797s as well as the LT1125CS ICs on the board were receiving the required +15V.


The next step was to check the board with the high-voltage power supply connected.


  •  The output from the power supply is drawn from the rear output terminal strip of the power supply via pins TB1-2 (-OUT) and TB1-7 (+OUT). I used a length of RG58 coaxial cable from the lab and crimped a BNC connector on one end, and stripped the other to attach it to the above pins.

  •  There are several options that can be configured for the power supply. I have left it at the factory default: Local sensing (i.e. operating the power supply using the keypad on the front of it as opposed to remotely), grounding network connected (the outputs of the power supply are floating), slow mode, output isolated from ground.

  • I was unsure of whether the grounding network configuration or the 'positive output, negative terminal grounded' configuration was more appropriate. Koji confirmed that the former was to be used so as to avoid ground loops. When installed eventually, the eurocrate will provide the ground for the entire system.
  • I then verified the output of the HV power supply using a multimeter from 2V up to 150V.
  • I then connected the high voltage supply to the PZT driver board with a BNC-SMA adaptor, set, for a start, to output 30V. Ensured that the appropriate points on the circuit were supplied with 30V.


I then hooked up a function generator in order to simulate a control signal from the DAC. The signal was applied to pin 2 of the jumpers marked JP1 through JP4 on the schematic, one at a time. The signal applied was a 0.2 Vpp, 0.1 Hz sine wave.




  •  The output voltage was monitored both using a DMM at the SMB output terminals, and at the monitor channels using an oscilloscope. The outputs at both these points were as expected.
  • There are 4 potentiometers on the board, which need to be tuned such that the control output to the piezos are 50V when the input signal is zero (as this corresponds to no tilt). The gain of the amplifier stage (highlighted in the attached figure) right now is ~15, and I was using 30V in place of 100V, so an input signal of 2V would result in the output saturating. This part of the circuit will have to be tuned once again after applying the full 100V bias voltage. 
  • Koji suggested decreasing the gain of the amplifier stage by switching out resistor R43 (and corresponding resistor in the other 3 stages on the board) after checking the output range of the DAC so that possibility of unwanted saturation is minimised. I need to check this and will change the resistors after confirming the DAC output range. 
  • The potentiometers will have to be tuned after the gain has been adjusted, and with 100V from the high-voltage DC power supply. 


To Do:


  • Switch out resistors
  • Tune potentiometers with 100V from the HV supply
  • Verify that the output from the board after all the tuning lies in the range 0-100V for all possible input voltages from the DAC.
  • Once the output voltage range has been verified, the next step would be to connect a PZT to the board output, affix a mirror to the tip/tilt, and perform some sort of calibration for the PZT. 








  8832   Thu Jul 11 23:50:57 2013 gautamConfiguration PZT Driver Board-changes made


Continued with tests on the PZT driver board. I made a few changes to replace defective components and also to modify the gain of the HV amplifier stage. I believe the board has been verified to be satisfactory, and is now ready for a piezo to be connected, tested and calibrated.

Changes made:

  • I tested the board with the full 100V bias voltage today, working my way up from 30V in steps of about 20V and verifying the output at each stage.
  • In order to deliver 100V to the board, it was necessary to change the maximum current limit on the KEPCO supply, which is set at default at ~1.6 mA. The KEPCO power supply placed near rack 1X2 (which I believe was used to power a piezo driver board) is labelled 150V, 12 mA, though I found that the board only drew 7mA of current when the power supply output 100V. I have set the limit to 10 mA for the time being.
  • The potentiometer in the third stage (R44 in the schematic) was faulty so I replaced it with another 100K potentiometer, which was verified to work satisfactorily.
  • We expect the DAC output to supply a voltage to the input of the PZT driver board in the range -10V to 10V. Today, I verified this by using my temporary break-out cable. I hooked this up to the DAC at 1Y4 and output a 3 Hz sine wave with amplitude of 32000 counts (the maximum) on channel 9. The output as observed on an oscilloscope (image attached) was a 10Vpp sinusoid, confirming the above hypothesis. As mentioned in my previous elog, the gain of the high-voltage amplifier stage is ~15, which would mean the output would saturate if the input were to be >6V. I have changed the gain of all 4 stages (M1-pitch, M1-yaw, M2-pitch and M2-yaw) to ~4.85 by swapping the 158k resistors (R43, R44, R69 and R70 in the schematic) for 51k resistors. 
  • It was necessary to change the value of the biasing potentiometers after the change in gain so that 0 input voltage once again provided 50V at the output, as required by the PZTs for there to be no tilt. This was done and verified. This biasing voltage now is ~10.4V in all four stages.
  • Having adjusted the gain, I tested the circuit over the expected full range of the input voltage from the DAC (from -10V to 10V) from the DS345 function generator (0.05Hz sinusoid). I monitored the output using a multimeter, as the monitor channels were peaking at ~7V, which was above the limit for the oscilloscope I was using. It was verified for all four channels that the output was between 0 V and 100 V (the safe range quoted in the datasheet for the tip-tilts, for this range of input voltages. So I think we are ready to connect a PZT to the board and conduct further tests, and calibrate the PZT. 

Pending Issues:

  • Koji pointed out that there has to be an anti-imaging filter stage between the DAC output and the filter stage, which I had not considered till this point.Another subtle point is that the DAC output is differential while the driver boards have a single-ended input, which means we effectively lose half the range of the PZTs. 
  • A suitable candidate is the D000186-rev D. Some information about the present state of this board is detailed in this elog. This board also solves the problem of the differential vs single input as the input to the AI board is differential while the output is single-ended. Koji has given me one of the boards he had collected. 
  • Some changes will have to be made to this version of the board in order to make it compatible with the existing DAC. I will first have to measure the power spectrum of the DAC output to verify that the AI boards need notches at 64k and 128k. The existing notches are at 16k and 32k, and once the DAC power spectrum has been verified, I hope to affect the necessary changes by switching out the appropriate capacitors on the existing board. 
  • The AI board is an extra element which I have now added to an updated wiring diagram, attached.

Revised Wiring Diagram:



DAC Max. Output Trace on Oscilloscope






  8845   Mon Jul 15 11:51:18 2013 gautamConfigurationendtable upgradeDAC at 1Y4-Max Output and Power Spectrum


I measured the maximum output of the DAC at 1Y4 as well as its power spectrum. The results are as follows (plots below):

  • Maximum amplitude of differential output: + 10V.
  • Power spectrum has a peak at 64 kHz.

Therefore, the gain of the high-voltage amplification stage on the PZT driver boards do not need to be changed again, as the required output range of 0-100V from the DAC board was realised when the input voltage ranged from -10V to +10 V w.r.t ground. The AI board converts the differential input to a single ended output as required by the driver board.

I will now change some resistors/capacitors on the AI board such that the position of the notches can be moved from 16k and 32k to 64k and 128k.


 Max. amplitude measurement

My previous measurement of the maximum output amplitude of the DAC was flawed as I made the measurement using a single channel of the oscilloscope, which meant that the negative pin of the DAC channel under test was driven to ground. I redid the measurement to avoid this problem. The set up this time was as follows:

  • Positive pin of DAC connected to channel 1 of oscilloscope using break out cable and mini-grabber probe
  • Negative pin of DAC connected to channel 2 of oscilloscope
  • Grounds of channels 1 and 2 connected (I just hooked the mini-grabbers together)
  • Measurement mode on oscilloscope set to channel 1 - channel2
  • Used excitation points set up earlier to output a 3 Hz sine wave with amplitude of 32000 counts from channel 9 of the DAC. 

The trace on the oscilloscope is shown below;


So with reference to ground, the DAC is capable of supplying voltages in the range [-10V 10V]. This next image shows all three traces: positive and negative pins of DAC w.r.t ground, and the difference between the two.


 Power spectrum measurement


I used the SR785 to make the measurement. The set up was as follows:

  • Positive pin of DAC to A-input of SR560
  • Negative pin of DAC to B-input of SR560
  • A-B output to Channel 1 input A of the SR785
  • SR785 configured to power spectrum measurement

Initially, I output no signal to the DAC, and obtained the following power spectrum. The peak at 65.554 kHz is marked.


I then re-did the measurement with a 200 Hz (left) and 2000 Hz(right), 1000 counts amplitude (I had to change the Ch1 input range on the SR785 from -18dBm to -6dBm) sine wave from channel 9 of the DAC, and obtained the following. The peaks at ~64 kHz are marked.

DACOnPowerSpec.pdf    DAC2kPowerSpectrum.pdf

Now that this peak has been verified, I will work on switching out the appropriate resistors/capacitors on the AI board to move the notches from 16k and 32k to 64k and 128k. 

  8848   Mon Jul 15 15:54:20 2013 gautamConfigurationendtable upgradeDAC at 1Y4- Power Spectrum -with the right units


We need the unit of the voltage power spectrum density to be V/sqrt(Hz).
Otherwise we don't understand anything / any number from the plot.

 I redid the measurement with the appropriate units set on the SR785. Power spectral density plots for no output (top), 500Hz, 1000 counts amplitude sine wave (middle) and 2000Hz, 1000 counts amplitude (bottom) are attached, with the right unit on the Y-axis.







  8853   Mon Jul 15 17:59:31 2013 gautamConfigurationendtable upgradeDAC at 1Y4- Power Spectrum -6.4kHz bandwidth


Those 'peaks' for the oscillations seem ridiculously broad.  I think you should look again, really quickly, with smaller bandwidth at, say, the 2kHz oscillation, to make sure it looks reasonable.

 I did just this, and it looks okay to me:


  8857   Tue Jul 16 14:51:09 2013 gautamConfigurationendtable upgradeAI Board-D000186-Modified notches

 I tried shifting the notch frequencies on the D000186-revision D board given to me by Koji. The existing notches were at ~16 kHz and ~32 kHz. I shifted these to notches at ~64 kHz and ~128 kHz by effecting the following changes (see schematic for component numbering) on Channel 8 of the board-I decided to check things out on one channel before implementing changes en masse:

  • R6 and R7 replaced with 511 ohm smts
  • R8 replaced with 255 ohm smt
  • R14 and R15 replaced with 549 ohm smts
  • R16 replaced with 274 ohm smt

=> New notches should be at 66.3 kHz and 131.7 kHz.

I then measured the frequency response of the modified channel using the SR785, and compared it to the response I had measured before switching out the resistors. The SR785 only goes up to 102 kHz, so I cannot verify the 128 kHz notch at this point. The position of the 64 kHz notch looks alright though. I think I will go ahead and switch out the remaining resistors in the evening.

Note 1: These plots are just raw data from the SR785, I have not tried to do any sort of fitting to poles and zeros. I will do this at some point. 

Note 2: All these smts were taken from Downs. Todd helped me locate the non-standard value resistors. I also got a plastic 25-pin D-sub backshells (the spares are in the rack), with which I have fashioned the required custom ribbon cables (40 pin IDC to 25 pin D-sub with twisted ribbon wire, and a short, 10pin IDC to 10pin IDC with straight ribbon wire).


  8873   Thu Jul 18 19:09:08 2013 gautamConfigurationendtable upgradeQPD Calibration for PZT Calibration


I have been working on setting up a QPD which can eventually be used to calibrate the PZT, and also orient the PZT in the mount such that the pitch and yaw axes roughly coincide with the vertical and horizontal.

The calibration constants have been determined to be:

X-axis: -3.69 V/mm

Y-axis: -3.70V/mm


I initially tried using the QPD setup left behind by Chloe near MC2, but this turned out to be dysfunctional. On opening out the QPD, I found that the internal circuitry had some issues (shorts in the wrong places etc.) Fortunately, Steve was able to hand me another working unit. For future reference, there are a bunch of old QPDs which I assume are functional in the cabinet marked 'Old PDs' along the Y-arm. 

I then made a circuit with which to read out the X and Y coordinates from the QPD. This consists of 4 buffer amplifiers (one for each quadrant), and 3 summing amplifiers (outputs are A+B+C+D = sum, B+C-A-D = Y-coordinate, and A+B-C-D = X-coordinate) that take the appropriate linear combinations of the 4 quadrants to output a voltage that may be calibrated against displacement of the QPD. 

The output from the QPD is via a sub-D connector on the side of the pomona box enclosing the PD and the circuitry, with 7 pins- 3 for power lines, and 4 for the 4 quadrants of the QPD. It was a little tricky to figure the pin-out for this connector, as there was no way to use continuity checking to map the pins to quadrants. Therefore, I used a laser pointer, and some trial and error (i.e. shine the light on a given quadrant, and check the sign of the X and Y voltages on an oscilloscope) to map the pin outs. Steve tells me that these QPDs were made long before colour code standardisation, but I note here the pin outs in any case for future reference (the quadrant orientations are w.r.t the QPD held with all the circuitry above it, with the active surface facing me):

Red= +Vcc

Black= -Vcc

Green = GND

Blue = Upper Left Quadrant

White = Upper Right Quadrant

Purple = Lower Left Quadrant

Grey = Lower Right Quadrant

Chloe had noted that there was some issue with the voltage regulators on her circuit (overheating) but I suspect this may have been due to the faulty internal circuitry. Also, she had used 12 V regulators. I checked the datasheet of the QPD, Op-Amp LF347 (inside the pomona box) and the OP27s on my circuit, and found that they all had absolute maximum ratings above 18V, so I used 15V voltage regulators. The overheating problem was not a problem anymore.

I then proceeded to arrange a set up for the calibration (initially on the optical bench next to MC2, but now relocated to the SP table, and a cart adjacent to it). It consists of the following:

  • He-Ne laser source
  • Y2 2-inch mirror (AR and HR coated for 532nm) glued onto the PZT and mounted on a machined Newport U100P  - see this elog for details.
  • QPD mounted on a translational stage whose micrometers are calibrated in tenths of an inch (in the plots I have scaled this to mm)
  • A neutral density filter (ND = 2.0) which I added so that the QPD amplifier output did not saturate. I considered using a lens as well to reduce the spot size on the QPD but found that after adding the ND filter, it was reasonably small.
  • High-voltage power supply (on cart)
  • Two SR power supplies (for the PZT driver board and my QPD amplifier
  • SR function generator
  • Laser power source
  • Two oscilloscopes
  • Breadboard holding my QPD amplifier circuit

Having set everything up and having done the coarse alignment using the mirror mount, I proceeded to calibrate the X and Y axes of the QPD using the translational stage. The steps I followed were:

  • Centre spot on QPD using coarse adjustment on the mirror mount: I gauged this by monitoring the X and Y voltage outputs on an oscilloscope, and adjusted things till both these went to zero.
  • Used the tilt knob on the translational stage to roughly decouple the X and Y motion of the QPD.
  • Kept Y-coordinate fixed, took the X-coordinate to close to its maximum value (I gauged this by checking where the voltage stopped changing appreciably for changes in the QPD position.
  • Using this as a starting point, I moved the QPD through its X range, noting voltage output of the X-coordinate (and also the Y) on an oscilloscope.
  • Repeated the procedure for the Y-coordinate.
  • Analysis follows largely what was done in these elogs. I am attaching the script I used to fit an error function to the datapoints, this is something MATLAB should seriously include in cftool (note that it is VERY sensitive to the initial guess. I had to do quite a bit of guessing).

The plots are attached, from which the calibration values cited above are deduced. The linear fits for the orthogonal axis were done using cftool. There is some residual coupling between the X and Y motions of the QPD, but I think this os okay my purposes. 

My next step would be to first tweak the orientation of the PZT in the mount while applying a small excitation to it in order to decouple the pitch and yaw motion as best as possible. Once this is done, I can go ahead and calibrate the angular motion of the PZT in mrad/V.


                                                            X-Axis                                                                                                                                Y-axis                                                

QPD-XCalib.pdf  QPD-YCalib.pdf



Attachment 3: Error_Function_Fitting.zip
  8874   Thu Jul 18 20:20:52 2013 gautamConfigurationendtable upgradeFirst mirror glued to PZT and mounted in modified mounts


 Yesterday, I mounted the first PZT in one of the modified mounts, and then glued a 2-inch Y2 mirror on it using superglue.


-The mirror is a 2-inch, Y2 mirror with HR and AR coatings for 532 nm light.

-The AR side of the mirror had someone's fingerprint on it, which I removed (under Manasa's guidance) using tweezers wrapped in lens cleaning paper, and methanol.

-Before gluing the mirror, I had to assemble the modified mount. Manasa handed over the remaining parts of the mounts (which are now in my newly acquired tupperware box along with all the other Piezo-related hardware). I took the one labelled A, and assembled the holder part. I then used one of the new mounts (2.5 inches, these are with the clean mounts in a cardboard box in the cupboard holding the green optics along the Y-arm) and mounted the holder on it. 

-Having assembled the mount, I inserted the piezo tip-tilt into the holder. The wedge that the machine shop supplied is useful (indeed required) for this. 

-I then cleaned the AR surface of the mirror and the top-surface of the tip-tilt. 

-The gluing was done using superglue which Steve got from the bookstore (the remaining tube is in the small fridge). We may glue the other mirror using epoxy. I placed 4 small drops of superglue on the tip-tilt's top surface, placed the mirror with its AR face in contact with the piezo, and applied some pressure for a short while until the glue spread out fairly evenly. I then left the whole setup to dry for about half an hour.

-Steve suggested using a reference piece (I used two small bolts) to verify when the glue had dried.

-Finally, I attached the whole assembly to a base.

Here it is in action in my calibration setup (note that it has not been oriented yet. i.e. the two perpendicular axes of the piezo are for the time being arbitrarily oriented. And maybe the spreading of the glue wasn't that even after all...):




Yesterday, while setting stuff up, I tested the piezo with a 0.05 Hz, 10Vpp input from the SR function generator just to see if it works, and also to verify that I had set up all my electronics correctly. Though the QPD was at this point calibrated, I did observe periodic motion of both the X and Y outputs of my QPD amp! Next step- calibration... 

  8875   Thu Jul 18 21:12:58 2013 gautamConfigurationendtable upgradeAI Board-D000186-All channels modified


 I carried some further modifications and tests to the AI Board. Details and observations here:

  • I switched out the resistors for all the remaining 7 channels, using the same substitutions as detailed here
  • I then verified that the modified transfer function for all 8 channels using the SR785. I did not collect data for all the channels as netgpib was taking ages, but I did use the cursor on the screen to verify the position of the first notch at ~64 kHz. I noticed that all the channels did not have the lowest point of the notch at the same frequency. Rather, (at least on the screen), this varied between 63kHz and 67kHz. I would put this down to component tolerance. Assuming 5% tolerance shifts the theoretical notch frequency from 66268 Hz to 63112 Hz. 
  • After verifying the transfer functions, I went to 1Y4 and plugged the AI board into the eurocrate. I then connected the input of the AI board to the DAC output using my custom ribbon cable. Next, I used the excitation points set up earlier to send a 1 kHz, 32000 counts amplitude sine wave through the channels one at a time. I monitored the output using an oscilloscope and the LEMO monitor channels on the front panel of the board.
  • I found that the single-ended output of the AI board swings between -10 V and 10 V (w.r.t ground, oscilloscope trace attached). This is good because this is the range of input voltage to the PZT driver boards required to realize the full actuation range of the PZTs.
  • I also verified that the connections on the custom ribbon cable are correct (channel map was right) and that there were no accidental shorts (I checked other channels' output monitor while driving one channel). 

I think the board is okay to be used now.



  8877   Thu Jul 18 23:34:40 2013 gautamConfigurationendtable upgradeCoarse adjustment of PZT axes orientation in mount

 I have managed to orient the PZT in the mount such that its axes are approximately aligned with the vertical and the horizontal. 

In the process, I discovered that the 4 screws on the back face of the PZT correspond to the location of the piezoelectric stacks beneath the tip-tilt platform. The PZT can therefore be oriented during the mounting process itself, before the mirror is glued onto the tip-tilt platform.

In order to verify that the pitch and yaw motion of the mirror have indeed been roughly decoupled, I centred the spot on the QPD, fed to the 'pitch' input of the PZT driver board (connected to channel 1 of the PZT) a 10 Vpp, 1 Hz sine wave from the SR function generator (having turned all the other relevant electronics, HV power supply etc ON. The oscilloscope trace of the output observed on the QPD is shown. The residual fluctuation in the Y-coordinate (blue trace) is I believe due to the tilt in the QPD, and also due to the fact that the PZT isnt perfectly oriented in the mount.

It looks like moving the tip-tilt through its full range of motion takes us outside the linear regime of the QPD calibration. I may have to rethink the calibration setup to keep the spot on the QPD in the linear range if the full range is to be calibrated, possibly decrease the distance between the mirror and the QPD. Also, in the current orientation, CH1 on the PZT controls YAW motion, while CH2 controls pitch.

Oscilloscope Trace:

Yellow: X-coordinate

Blue: Y-coordinate


  8883   Fri Jul 19 22:51:40 2013 gautamConfigurationendtable upgradeSecond mirror glued to PZT and mounted


I mounted the second PZT in a modified mount, and then glued a 1-inch Y2 mirror on it using superglue.


-The mirror is a Laseroptik 1-inch, Y2 mirror with HR and AR coatings for 532 nm light.

-The procedure for mounting the mirror was the same as detailed in elog 8874. This time, I tried to orient the Piezo such that the four screws on the back face coincided with the horizontal and vertical axes, as this appeared to (somewhat) decouple the pitch and yaw motion of the tip-tilt on the first PZT.

-One thing I forgot to mention in the earlier elog: it is best to assemble the mount fully before inserting the tip-tilt into it and gluing the mirror to the tip-tilt. In particular, the stand should be screwed onto the mount before inserting the tip-tilt into the holder, as once it is in, it will block the hole through which one can screw the stand onto the mount. 

-I have placed the mirror on the SP table along with the rest of my QPD/Piezo calibration setup. I will attempt to calibrate this second PZT once I am done with the first one. 
Here is an image of the assembly:








  8884   Fri Jul 19 23:35:31 2013 gautamConfigurationendtable upgradePreliminary Calibration of PZT

 I recalibrated the QPD today as I had shifted its position a little. I then identified the linear range of the QPD and performed a preliminary calibration of the Piezo tip-tilt within this range.



-I recalibrated the QPD as I had shifted it around a little in order to see if I could move it to a position such that I could get the full dynamic range of the piezo tilt within the linear regime of the QPD. This proved difficult because there are two reflections from the mirror (seeing as it is AR coated for 532nm and I am using a red laser). At a larger separation, these diverge and the stray spot does not bother me. But it does become a problem when I move the QPD closer to the mirror (in an effort to cut down the range in which the spot on the QPD moves). In any case, I had moved the QPD till it was practically touching the mirror, and even then, could not get the spot motion over the full range of the PZTs motion to stay within the QPD's linear regime (as verified by applying a 20Vpp 1Hz sine wave to the PZT driver board and looking at the X and Y outputs from the QPD amplifier. 

-So I reverted to a configuration in which the QPD was ~40cm away from the mirror (measured using a measuring tape).

-The new calibration constants are as follows (see attached plots):

X-Coordinate: -3.43 V/mm
Y-Coordinate: -3.41 V/mm

-I then determined the linear range of the QPD to be when the output was in the range [-0.5V 0.5V]. 

-Next, at Jenne's suggestion, I decided to do a preliminary calibration of the PZT within this linear range. I used an SR function generator to supply an input voltage to the PZT driver board's input (connected to Channel 1 of the piezo). In order to supply a DC voltage, I set a DC offset, and set the signal amplitude to 0V. I then noted the X and Y-coordinate outputs, being sure to run through the input voltages in a cyclic fashion as one would expect some hysteresis. 

-I did this for both the pitch and yaw inputs, but have only superficially analysed the latter case (I will put up results for the former later). 



-There is indeed some hysteresis, though the tilt seems to vary linearly with the input voltage. I have not yet included a calibration constant as I wish to perform this calibration over the entire dynamic range of the PZT. 


-There is some residual coupling between the pitch and yaw motion of the tip tilt, possibly due to its imperfect orientation in the holder (I have yet to account for the QPD's tilt).


-I have not included a graphical representation here, but there is significantly more pitch to yaw coupling when my input signal is applied to the tip-tilts pitch input (Channel 2), as compared to when it is input to channel 1. It is not clear to me why this is so.


-I have to think of some smart way of calibrating the PZT over its entire range of motion, keeping the spot in the QPD's linear regime throughout. One idea is to start at one extreme (say with input voltage -10V), and then perform the calibration, re-centering the spot to 0 on the QPD each time the QPD amp output reaches the end of its linear regime. I am not sure if this will work, but it is worth a shot. The other option is to replace the red laser with a green laser (from one of the laser pointers) in the hope that multiple reflections will be avoided from the mirror. Then I will have to recalibrate the set up, and see if I can get the QPD close enough to the mirror such that the spot stays within the linear regime of the QPD. More investigation needs to be done.


QPD Calibration Plots:
QPD-XCalib.pdf            QPD-YCalib.pdf



Piezo tilt vs input voltage plots:


                                                          Yaw Tilt                                                                                                                                         Pitch Tilt

Piezo_Yaw_Calib-in_QPD_linear_range-Yaw_tilt.pdf               Piezo_Yaw_Calib-in_QPD_linear_range-Pitch_tilt.pdf 
















  8900   Tue Jul 23 04:07:48 2013 gautamUpdateCDSExcitation points set up on c1scx


 In light of recent events and the decision to test the piezo tip-tilts for green beam steering on the X-end table, I have set up 8 excitation points to channels 8 through 15 of the DAC on c1scx (as was done earlier for the DAC at 1Y4 with Jenne's help) in order to verify that the pin-outs of the DAC interface board. I have not yet compiled the model or restarted the computer, and will do these tomorrow, after which I will do the test. The channels are named YYY_CHAN9 etc. 





  8909   Tue Jul 23 16:47:01 2013 gautamUpdateCDSExcitation points set up on c1scx

 I just compiled and installed the model with the excitation points on c1scx and then restarted framebuilder. The channels I set up are now showing up in the awggui dropdown menu. I will do the tests on the DAC channels shortly.

Just to keep things on record, these are the steps I followed:

  • opened the model c1scx (path: /opt/rtcds/userapps/release/sus/c1/models) with MATLAB
  • Added 8 excitation points and saved the model. A copy has been saved as c1scx.mdl.r2010b because of the recent upgrade to r2013a. 
  • ssh to c1iscex (computer running the model c1scx). 
  • Entered the following sequence of commands in terminal: rtcds make c1scx ,  rtcds install c1scx , rtcds start c1scx 
  • ssh to framebuilder, and restarted the framebuilder by entering telnet fb 8088   and then   shutdown.
  8911   Tue Jul 23 19:38:58 2013 gautamUpdateCDSCharacterisation of DAC at 1X9


 I just finished carrying out the same checks for the DAC at 1X9 (with channels 9 through 16 that are unused as of now) as those I had done for the DAC at 1Y4, as the hardware prep up till now was done with the characterisation of the DAC at 1Y4. Conclusions:

  • The accessible range of output voltage are -10 V to +10V w.r.t ground --> No change needs to be made to the gain of the HV amplifier stage on the PZT Driver Board
  • The pin-outs of the DAC Adaptor Board at 1X9 is identical to that at 1Y4 --> Custom ribbons do not need to be modified.
  • The PSD of the DAC output has a peak at 64 kHz --> Notches on AI Board do not need to be moved again.

I will now proceed to install various pieces of hardware (AI Board, PZT driver board, HV Power Supply and cabling) at 1X9, while not making the connection to the PZTs till I receive the go ahead. 

  8912   Tue Jul 23 20:41:40 2013 gautamConfigurationendtable upgradeFull range calibration and installation of PZT-mounted mirrors

 Given that the green beam is to be used as the reference during the vent, it was decided to first test the PZT mounted mirrors at the X-endtable rather than the Y-endtable as originally planned. Yesterday, I prepared a second PZT mounted mirror, completed the full range calibration, and with Manasa, installed the mirrors on the X-endtable as mentioned in this elog. The calibration constants have been determined to be (see attached plots for aproximate range of actuation):

M1-pitch: 0.1106 mrad/V

M1-yaw: 0.143 mrad/V

M2-pitch: 0.197 mrad/V

M2-yaw: 0.27 mrad/V

Second 2-inch mirror glued to tip-tilt and mounted:

  • The spot sizes on the steering mirrors at the X-end are fairly large, and so two 2-inch steering mirrors were required.
  • The mirrors already glued to the PZTs were a CVI 2-inch and a Laseroptik 1-inch mirror.
  • I prepared another Laseroptik 2-inch mirror (45 degree with HR and AR coatings for 532 nm) and glued it to a PZT mounted in a modified mount as before.
  • Another important point regarding mounting the PZTs: there are two perforated rings (see attached picture) that run around the PZT about 1cm below the surface on which the mirror is to be glued. The PZT has to be pushed in through the mount till these are clear of the mount, or the actuation will not be as desired. In the first CVI 2-inch mirror, this was not the the case, which probably explains the unexpectedly large pitch-yaw coupling that was observed during the calibration [Thanks Manasa for pointing this out]. 

Full range calibration of PZT:

Having prepared the two steering mirrors, I calibrated them for the full range of input voltages, to get a rough idea of whether the tilt varied linearly and also the range of actuation. 


  • The QPD setup described in my previous elogs was used for this calibration. 
  • The linear range of the QPD was gauged to be while the output voltage lay between -0.5V and 0.5V. The calibration constants are as determined during the QPD calibration, details of which are here.
  • In order to keep the spot always in the linear range of the QPD, I stared with an input signal of -10V or +10V (ie. one extreme), and moved both the X and Y micrometers on the translational stage till both these coordinates were at one end of the linear range (i.e -0.5V or 0.5V). I then increased the input voltage in steps of ~1V through the full range from -10V to +10V DC. The signal was applied using a SR function generator with the signal amplitude kept to 0, and a DC offset in the range -5V to 5V DC, which gave the desired input voltages to the PZT driver board (between -10V DC and 10V DC).
  • When the output of the QPD amp reached the end of the linear regime (i.e 0.5V or -0.5V), I moved the appropriate micrometer dial on the translational stage to take it to the other end of the linear range, before continuing with the measurements. The distance moved was noted. 
  • Both the X and Y coordinates were noted in order to investigate pitch-yaw coupling.

Analysis and remarks:

  • The results of the calibration are presented in the plots below. 
  • Though the measurement technique was crude (and maybe flawed because of a possible z-displacement while moving the translational stage), the calibration was meant to be rough, and I think the results obtained are satisfactory. 
  • Fitting the data linearly is only an approximation, as there is evidence of hysteresis. Also, PZTs appear to have some drift, though I have not been able to quantify this (I did observe that the output of the QPD amp shifted by an amount equal to ~0.05mm while I left the setup standing for an hour or so).  
  • The range of actuation seems to be different for the two PZTs, and also for each degree of freedom, though the measured data is consistent with the minimum range given in the datasheet (3.5 mrad for input voltages in the range -20V to 120V DC). 


PZT Calibration Plots

The circles are datapoints for the degree of freedom to which the input is applied, while the 'x's are for the other degree of freedom. Different colours correspond to data measured with the position of the translational stage at some value.

                                            M1 Pitch                                                                                             M1 Yaw

M1_Pitch_calib.pdf     M1_Yaw_calib.pdf


                                              M2 Pitch                                                                                        M2 Yaw 

M2_Pitch_calib.pdf     M2_Yaw_calib.pdf


Installation of the mirrors at the X-endtable:

The calibrated mirrors were taken to the X-endtable for installation. The steering mirrors in place were swapped out for the PZT mounted pair. Manasa managed (after considerable tweaking) to mode-match the green beam to the cavity with the new steering mirror configuration. In order to fine tune the alignment, Koji moved ITMx and ETMx in pitch and yaw so as to maximise green TRX. We then got an idea of which way the input pointing had to be moved in order to maximise the green transmission.


Attachment 5: PI_S330.20L.pdf
  8932   Mon Jul 29 13:39:25 2013 gautamConfigurationendtable upgradePZT Driver Board-further changes



I have updated the schematic of the D980323 PZT driver boards to reflect the changes made. The following changes were made (highlighted in red on the schematic):

  • Gain of all four HV amplifier stages changed from ~15 to ~5 by swapping 158k resistors R43, R44, R69 and R70 for 51k resistors.
  • Electrolytic 10 uF capacitors C11, C12, C29 and C31 swapped for 470pF, 500V mica capacitors.
  • Fixed resistor in voltage divider (R35, R40, R59 and R64) replaced with 0 ohm resistors so as to be able to apply a bias of -10V to the HV amplifier
  • The DC-DC Series components, which I think were originally meant to provide the 100V DC voltage, have been removed.
  • The path between the point at which +100V DC is delivered and jumpers J3 and J6 has been shorted (bypassing R71 and R11 for J3, R73 and R12 for J6).
  • Tantalum capacitors C38 and C39 have been replaced with electrolytic capacitors (47 uF, 25V). One of the original tantalum capacitors had burned out when I tried installing the board in the eurocrate, shorting out -15V to ground. At Koji's suggestion, I made this switch. The AD797s do not seem to be oscillating after the switch.

I have also changed the routing of the 100V from the HV power supply onto the board, it is now done using an SMA T-connector and two short lengths of RG58 cable with SMA connectors crimped on.

The boards are functional (output swings between 0 and 100V as verified with a multimeter for input voltages in the range -10V to +10V applied using a function generator.


Revised schematics:






  8935   Mon Jul 29 21:57:45 2013 gautamConfigurationendtable upgradeHardware installed at 1X9

 The following hardware has been installed on rack 1X9;

  • KEPCO high voltage power supply (kept in a plastic box at the bottom of the rack, with the 3m SMA cable carrying 100V running along the inside side wall of the rack). The HV supply has not been connected to the driver board yet.
  • AI board D000186 installed in top eurocrate. The board does not seem to fit snugly into the slot, so I used a longish screw to bolt the front panel to the eurocrate.
  • PZT driver board D980323 installed in top eurocrate adjacent to the AI board.
  • Six 11m SMB-LEMO cables have been laid out from 1X9 to the endtable. I have connected these to the PZT driver board, but the other end (to the PZTs) is left unconnected for now. They have been routed through the top of the rack, and along the cable tray to the endtable. All the cables have been labelled at both ends. 

I have also verified that the AI board is functional in the eurocrate by using the LEMO monitoring points on the front panel.

The driver boards remain to be verified, but this cannot be done until we connect the HV supply to the board. 



  8942   Tue Jul 30 19:40:47 2013 gautamConfigurationendtable upgradeDAC-PZT Driver Board Output Signal Chain Tested


 [Alex, Gautam]

The signal chain from the DAC output to the output of the PZT driver board (including the HV supply) has been verified. 

I had installed the two boards in the eurocrate yesterday and laid out the cables from 1X9 to the endtable. The output of the AI board had been verified using the monitor port on the front panel, but the output from the PZT driver board was yet to be checked because I had not connected the HV supply yesterday.

When I tried this initially today, I was not getting the expected output from the monitor channels on the front panel of the PZT driver board, even though the board was verified to be working. Alex helped debug the problem, which was identified as the -15V supply voltage not making it onto the board.

I changed the slot the board was sitting in, and used a long screw to bolt the board to the crate. Both the AI board and the PZT driver board seem to be slightly odd-sized, and hence, will not work unless firmly pushed into the eurocrate and bolted down. This would be the first thing to check if a problem is detected with this system. 

In any case, I have bolted both boards to the eurocrate, and the output from the PZT driver board is as expected when I sent a 10Vp sine wave out from the DAC. I think the cables can now be hooked up to the PZTs once we are pumped down.

  8943   Tue Jul 30 19:44:05 2013 gautamConfigurationendtable upgradeSecond mirror glued to PZT and mounted


 I have glued a fourth mirror to a PZT (using superglue) and inserted it into a modified mount. This is to be used together with the 1-inch Laseroptik mirror I had glued a couple of weeks back at the Y-endtable. I will be calibrating both these mirrors tonight such that these are ready to put in as soon as we are pumped down.

The mirror was one of those removed from the X-endtable during the switch of the steering mirrors. It is a CVI 2-inch mirror, with HR and AR coatings for 532 nm. 

  8949   Thu Aug 1 12:12:35 2013 gautamUpdateCDSNew model for endtable PZTs

I have made a new model for the endtable PZT servo, and have put it in c1iscex. Model name is c1asx. Yesterday, Koji helped me start the model up. The model seems to be running fine now (there were some problems initially, I will post a more detailed elog about this in a bit) but some channels, which are computer generated, don't seem to exist (they show up as white blocks on the MEDM GDS_TP screen). I am attaching a screenshot of the said screen and the names of the channels. More detailed elog about what was done in making the model to follow.




Channel Names:

C1:DAQ-DC0_C1ASX_STATUS (this is the channel name for the two leftmost white blocks)



  8950   Thu Aug 1 13:09:17 2013 gautamUpdateCDSNew model for endtable PZTs-procedure


 These are roughly the steps I followed in setting up the new model for the endtable PZT servo - C1ASX.

Simulink model:

I made a SIMULINK model of the servo, using MATLAB R2013a. The path to the model is /opt/rtcds/caltech/c1/userapps/release/isc/c1/models/c1asx.mdl. I am listing the parameters set on the CDS_PARAMETERS block:

  • host = c1iscex
  • site = c1
  • rate = 16k
  • dcuid = 44 (which I chose after making sure that this dcuid was not used on this list which was last updated end Feb 2013)
  • specific_cpu = 5 (again chosen after checking the available CPUs in the above list).
  • adc_Slave = 1
  • shmem_daq = 1
  • no_rfm_dma = 1
  • biquad = 1


Making, Compiling and Installing the Model:

After saving the model, I ssh-ed into c1iscex and ran the following commands:

rtcds make c1asx - this gave me a whole bunch of errors initially, which I tracked down to a naming problem in some of the from and goto flags: there should not be any spaces.

rtcds install c1asx 

rtcds start c1asx - this gave me an error which said something like 'can't start/stop model.' Koji pointed out that given that a new model is being started, there is an additional step involved, which is to add the model name to the rtsystab file (this is located at /diskless/root/etc/rtsystab on framebuilder, and is mirrored in the various computers. It would be advisable to make sure that the changes are mirrored in the corresponding file on the computer in which the new model is being installed). 

After adding the model name to the rtsystab file, I tried running rtcds start c1asx again. This time, no errors were output, but the model was not up and running as verified by looking at the C1:ASX_GDS_TP medm screen.


Koji suggested making a simple model (1 CDS parameters block, 1 ADC block and 2 filter modules, appropriately terminated) and see if that starts up, which it did. I then tried adding my servo minus the DAC block and recompiled and restarted the model. This too worked fine. I figured that the next logical step would be to add the DAC block to the model, and restart the model. But when I tried this, c1iscex crashed .

Jenne helped in restoring things to a working state (we reverted the c1asx model to just 2 filter modules, and went to the X-end and restarted the computer. This did not work the first time so I went back in and restarted it again, at which point we were able to ssh into c1iscex again and restart the four models running on it).

Since Manasa and Koji were working on getting things set up for the pumpdown,I did not try anything again till later in the evening, when Koji helped in debugging the problem further. In the meantime, at Jenne' suggestion, I made the model once again in MATLAB R2010b. In the evening, when I tried restarting the model, Koji suggested that the DAC channels in c1asx may be used by other models, at which point I realised I had set up excitation points on channels 8 through 15 of the DAC in c1scx (detailed here) in order to test the hardware at 1X9. I removed the excitation points from channels 8-11 of the DAC block in c1scx (these are the ones used in c1asx), and recompiled and restarted c1asx (using the above sequence of commands). I then tried recompiling and starting c1asx once more, and this time, it worked . At least, the GDS_TP screen suggests that the model is running alright, except for the fact that some computer generated channels seem to be missing. This problem is unresolved for now, and probably has something to do with the fact that C1ASX channels do not appear in Dataviewer.

I do not think this has to do with restarting framebuilder (I did the usual telnel fb 8088 followed by shutdown). In any case, I have added the new model to the CDS_FE_STATUS screen, and will continue to debug the same. I have also got a template medm screen (work in progress) which I will elog about soon as I get it done.


Note to self: There are 4 more excitation channels still hooked up to the DAC (channels 12-15) in the c1scx model. I plan to remove these and put them in c1asx.


  8952   Thu Aug 1 15:28:44 2013 gautamUpdateCDSNew model for endtable PZTs-problem solved



I don't know what's going on here (why the channels are white), and I don't yet have a suggestion of where to look to fix it but...

Is there a reason that you're making a new model for this?  You could just use and existing model at c1iscex, like the c1scx, and put your stuff in a top-names block.  Then you wouldn't have to worry about all of the issues with adding and integrating a new model.

Koji just fixed this.

It seems that the new model's channels were not automatically added to the master file in the framebuilder (/opt/rtcds/caltech/c1/target/master). Adding the following two lines to the master file fixed the problem;



The box is now green. It looks like C1ASX.ini is created automatically in /opt/rtcds/caltech/c1/chans but the master file needs to be manually edited. The channels are now showing up on dataviewer etc. I have updated the information on the wiki page.






  8956   Thu Aug 1 20:58:56 2013 gautamUpdateCDSNew model for endtable PZTs-MEDM Screens setup


I have made some minor changes to the model, made all the MEDM screens, and linked monitors on these to the appropriate channels. I have borrowed heavily from the C1ASS MEDM screens (particularly for the small filter modules-it was convenient to just copy and paste an existing module, and edit the channel names using EMACS/GEDIT), and have edited these to suit the needs of this servo. Some features:

  • The feedback signal (only the output of the servo to the PZTs, plus any contribution from the on-screen sliders, and not including the LO output) is monitored with both a slow (using CDS_EPICS_OUTPUT block from the CDS_PARTS library) and fast channel (using Test Point from the same library). The idea is that it would be useful to know the output to the PZTs such that if coarse adjustment ever needs to be done at the endtable, the PZTs can be restored to the middle of its operating range by means of the sliders.
  • Sliders are incorporated into the master screen for adjusting the output to the PZTs. There are text-input fields below the sliders as well, which control the same channel.
  • I have removed the 4 remaining excitation points to the DAC set up in C1SCX, and have relocated them to channels 12-15 of the DAC in C1ASX.

I think I am now ready to take some measurements and try and optimize this servo. There is no green transmission at the PSL table at the moment, so not much can be done, though the first step would be to take the power spectrum of the error signal, which would help me decide the appropriate frequencies for the LOs. I would then have to add the appropriate filters to the model. The last, and most difficult step, would be the measurement of the output matrix, though Koji has given me some ideas about how this measurement can be done. I also have a template script ready, though I will only finalise this after optimising the servo and running it a couple of times manually.


Attached are screenshots of the MEDM screens.


MAIN_SCREEN.pdf      MATRICES.pdf   



  8957   Thu Aug 1 21:28:09 2013 gautamUpdateCDSSlow channels set-up in ALS

The following slow channels have been added and are now being recorded by FB.







In order to integrate the data collected by the Raspberry-Pi from the Y-end doubling oven temperature controller and also the data from the frequency counter which will be hooked up to monitor the beat frequency, Koji helped me set up some slow EPICS record channels (in ALS as we felt this was most appropriate). The procedure for setting up slow channels was as follows (virtually identical to what is detailed in this elog:

  1. Add the channel names to the file C0EDCU.ini (path = /opt/rtcds/caltech/c1/chans/daq/C0EDCU.ini).
  2. Make a database (.db) file so that these channels are actually recorded (path = /cvs/cds/caltech/target/c1aux/als.db).
  3. Restart framebuilder. 
  4. Verify that the channels indeed exist and can be read and written to using ezcaread and ezcawrite.

I will now integrate these channels into my scripts, and make some simple MEDM screens.


  8966   Mon Aug 5 18:18:32 2013 gautamUpdateCDSChoosing LO Amplitudes and Frequencies

In order to decide what frequencies to dither the 4 degrees of freedom (M1-pitch&yaw, M2-pitch&yaw) at, I took the power spectrum of the X and Y-arm green transmission (C1:ALS-TRX_OUT, C1:ALS-TRY_OUT). Plots showing the power spectra are attached. Looking at the power spectra, I would think that for the X-arm, it would be okay to dither at 40, 50, 60 and 70 Hz. In order to check if the piezos could respond to these frequencies, I used my QPD setup and shook the PZTs with a 100Hz, 1Vpp sinusoid, and saw that the spot moved smoothly on the QPD.

 As for choosing the modulation amplitude, I did a simplistic approximation assuming that the misalignment only rotates the beam axis relative to the cavity axis, and determined what angle coupled 10% of the power into the next eigenmode. Assuming that this is small enough such that if we are already locked to TEM00, the dither won't kick it up to some higher-order mode, the LO amplitude should be in the range of 30-60 digital counts (determined using the PZT calibration constants determined here. This corresponds to a sine-wave of ~50mV amplitude reaching the PZTs (after HV amplification). I am not sure if this is too small, but according to the PZT datasheet, these platforms are supposed to have a resolution of 0.02 urad, which would correspond to the input signal changing by ~0.1 mV, so this signal should be capable of dithering the tip-tilt. 

 I have already added band-pass filters centered at these frequencies to the model (with a passband of 5Hz, 2Hz on either side), and low-pass filters to pull out the DC component of the output of the lock-in amplifiers. It remains to tune the gains of the filter stages. These parameters (frequency, amplitude of the LOs) may also have to be changed after tests). Hopefully the PZTs can be plugged in tomorrow, and I can try and make a measurement of the output matrix. 

Koji also suggested that it may be good to have a path in the model that feeds back to the PZTs by dithering the cavity mirrors as opposed to the PZT mounted mirrors. I will work on incorporating this into the SIMULINK model (c1asx.mdl) and also into the master medm screen.



  1. The spot size of the X-arm green transmission on the PD was larger than the active surface. I moved the GTRX PD a little back and put in a lens (KPX085, 62.9mm FL, AR.14) in front of the PD, such that the spot is now occupying about 1/4th of the active surface area. The lens was mounted in a Thorlabs LMR1mount, and has been labelled.
  2. I made a slight change to the SIMULINK model, so as to calibrate the PZT sliders to (approximately) volts (I added a multiplier block that multiplies the slider value by constant value 3267.8). The idea is that we can approximately relate the slider value to tilt, knowing the calibration constant in mrad/V for the PZTs.


Power Spectra of Arm Green Transmission:


  8967   Mon Aug 5 18:48:44 2013 gautamConfigurationendtable upgradeFull range calibration of PZT mounted mirrors for Y-endtable

 I had prepared two more PZT mounted mirrors for the Y-end some time back. These are:

  • A 2-inch CVI mirror (45 degree, HR and AR for 532nm, was originally one of the steering mirrors at the X-endtable, and was removed while switching those out for the PZT mounted mirrrors).
  • A 1-inch Laseroptik mirror (45 degree, HR and AR for 532nm).

I used the same QPD set-up and the methodology described here to do a full-range calibration of these PZTs. Plots attached. The calibration constants have been determined to be:

CVI-pitch: 0.316 mrad/V

CVI-yaw:  0.4018 mrad/V

Laseroptik pitch: 0.2447 mrad/V

Laseroptik yaw:  0.2822 mrad/V


  • These PZTs, like their X-end counterparts, showed evidence of drift and hysteresis. We just have to deal with this.
  • One of the PZTs (the one on which the CVI mirror is mounted) is a used one. While testing it, I thought that its behaviour was a little anomalous, but the plots do not seem to suggest that anything is amiss.


                                                        CVI YAW                                                                                                                         CVI PITCH

2-inch-CVI-Yawcalib.pdf      2-inch-CVI-Pitchcalib.pdf

                                                        Laseroptik YAW                                                                                                             Laseroptik PITCH

1-inch-Laseroptik-Yawcalib.pdf   1-inch-Laseroptik-Pitchcalib.pdf


  8972   Tue Aug 6 16:36:51 2013 gautamUpdateCDSChoosing LO Amplitudes and Frequencies-revised

I redid the power spectrum measurement for the X-arm green transmission after aligning the arm to green using the ITMX/ETMX Pitch and Yaw sliders on IFOalign.

The Y-axis now reflects the relative intensity noise (RIN), which I obtained by taking the average value of the X-arm green transmission using tdsavg. Based on this measurement, I have now picked four new frequencies at which to try and modulate the PZT mirrors: 10, 19, 34 and 39 Hz. Bandpass filters in the LIA stage have been appropriately modified. 

Power Spectrum:


  8983   Wed Aug 7 23:40:49 2013 gautamUpdateCDSX-End Green ASS - A first update

 I have done some preliminary testing of the X-End Green ASS Servo. I will write a more detailed elog about this soon, but I thought I'd note down the important stuff here.

Yesterday, while we were venting, I aligned the X-arm to the green using the sliders on IFOalign, maximizing the transmission. Then I retook a power spectrum so as to determine the LO frequencies. Jenne pointed out that LO frequencies should not be integers (it usually suffices to append a .098725 or something to the frequency) so I made the necessary changes.

I did a first run of the servo yesterday, and more runs today. Notable points:

  1. I was able to lock to 00 from a 08 or 09 mode using the PZT sliders
  2. The green transmission having locked to 00 was ~0.2. I then ran the servo and got it up to ~0.4 and then 0.6 (see time series plot attached). The servo was able to recover this level of transmission after misaligning the steering mirrors using the PZT sliders.
  3. This was not the optimal transmission level as when Koji moved ETMX a little, the transmission improved.
  4. The actuators are degenerate. Most of the time, only two of the four servos are doing anything significant. This is probably because of the fact that the two steering mirrors are so close to each other, that moving one or the other produces virtually the same effect. I do however have some cool videos of mode-hopping :)
  5. The range of actuation of the PZTs is probably not enough to maximize the green transmission from an arbitrary state because of point 4 (i.e. we need to move one mirror in some direction a lot, and move the other a lot to compensate for the change, and the overall gain in input pointing/alignment is marginal). It may be that things will be slightly better at the Y-end. It would also be interesting to see if there is any improvement in the servo performance by dithering the cavity mirrors as opposed to the PZT mirrors.
  6. To this end, I tried modifying the c1asx model to incorporate an option to dither the cavity mirrors. The plan was to make a second set of LOs in the model that output to ITMX and ETMX suspensions. However, for some reason, when I recompiled the model and restarted it, c1iscex crashed. Parity has now been restored. Note that in order to accommodate the new LOs, I had to make changes to C1SUS, C1RFM and C1SCX as well. I have since removed all my additions, saved, built and installed these models, but have not restarted them (with the exception of C1SCX which restarted when I manually restarted c1iscex). 
  7. The plan tomorrow is to try incorporating cavity dither into the model again. This time, I'll try grabbing the LO-related signals from c1ass directly, as I am not clear why my approach did not work.

More details to follow.


  8993   Sat Aug 10 05:53:51 2013 gautamUpdateCDSX-End Green ASS - Roundup

Over the last three days, I've had the interferometer to test and optimize the ASX Servo. Based on what I have seen, I think the conclusion is that with the current parameters, the servo does its job provided the input pointing set up at the endtable with the coarse adjustment knobs is reasonably good. Once the cavity is aligned and IR transmission maximized using ASS, I have been able to get the green transmission up to 0.8 which is close to the best we had pre-vent. I have not been elogging regularly over the last few days, so this one is going to be a longish one.

Major changes made:

  1. The SIMULINK model has been modified to accommodate an option to dither the cavity mirrors and not the PZT mirrors. Details are as follows:
    • I have sent the LO signals (CLK,SIN and COS) from the ASS model to the ASX model via the RFM model. Appropriate changes were made to all these three models, and recompiling and restarting the models was done without issue. The SIN and COS signals are used to demodulate green transmission at the dither frequencies. ***The CLK signal is not required to be sent between models as it is not being used by ASX (I turn the dither ON using the channels already set up for ASS). I realised this a little late, and at present the ASS and RFM models are compiled such that the CLK signal is also sent from ASS to RFM. This can be removed, thus freeing up 4 unnecessary inter-process communication channels. Also, I am not too sure if this is relevant, but the maximum computation time of both the RFM and ASX models seem to have gone up after I added these inter-process communication links.***
    • The rest of this part of the servo is a replica of the part where PZT mirrors are dithered. At present the servo output is the sum of its two branches (PZT mirror dither branch and cavity mirror dither branch) which works fine under the assumption that at any one time, only one arm will run. Ideally, the summing block should be replaced by a switch. However, when I tried (in an earlier attempt to include the cavity dither) to do this and restart the model, c1iscex crashed, and so I decided against using the switch block for this trial.
    • The control signal generated using green transmission demodulated at the ETM dither frequencies are used to actuate on M1 while the ITM ones are used to actuate on M2. Of course, by setting the appropriate off-diagonal elements in the output matrix, this can be modified as desired.
  2. The main MEDM screen has been updated to reflect the new additions to the SIMULINK model. Screenshot is attached. The picture isn't entirely accurate as the monitor channels in the upper row actually show the servo output + slider output. This needs to be changed in the model, and a new set of monitors need to be added to the MEDM screen. In the end, we require four sets of monitor-points in the model: PZT dither servo output, cavity dither servo output, sum of these with any offset from the PZT sliders, and the sum of the latter with the dither signal (this is what eventually goes to the PZT mirrors while the dither is on).
  3. I added scripts to the MEDM screen that turn the PZT mirror dither servo on and off. Note that when you want to run a new script on an MEDM screen using medmrun, you need to change the permissions of the file by going to the path where your script is located and running chmod 755 <name of script>. Manasa has updated the same on the wiki.

 Details of tests runs:

For the most part, I have been trying to optimize the PZT mirror dither servo. To this end, I did the following:

  • Went to the X-end and fixed the input pointing which was not optimal. Manasa first aligned the arm and ran ASS to maximize the IR transmission. I then used the coarse adjustment knobs on the mirror mounts to get the green transmission up to ~0.6.
  • I then set the following parameters in the servo (these are all in the script, path to which is /opt/rtcds/caltech/c1/scripts/ASX):
    1. LO frequencies of 10, 19, 34 and 39 Hz respectively for M1 PIT, M1 YAW, M2 PIT and M2 YAW.
    2. LO amplitudes of 75 for all the four degrees of freedom (determined by using PZT calibration to see what amplitude would couple 10% of power into the first higher-order-mode assuming a perfectly aligned beam to start with.
    3. LIA BP filters centered at the above frequencies with 2Hz passband on either side.
    4. LIA LP filters with corner frequency 0.5 Hz.
    5. LIA Signal filter bank gain set to 100 for all degrees of freedom.
    6. LIA Demod I phase filter bank gain set to 5 for all degrees of freedom.
    7. Control filter gains to 1 for all degrees of freedom (control filters are all integrators).
    8. Demod phase set to 0 for all degrees of freedom. I did not really try to optimize this but the servo seems to be doing reasonably well even with this setting.
    9. Overall servo gain to 1 (the servo worked well when I increased this to 5 as well, but became unstable when I increased it further).
  • I ran the servo. Observations were as follows:
    • Having fixed the input pointing to get green transmission up to ~0.6, the servo was able to improve it to ~0.8, which is the best we had after hours spent at the X-end prior to the vent.
    • Given a good input pointing, we can use the PZT mirrors to lock to 00 mode from some misaligned state using either the sliders, or by leaving the servo on, and helping it out at the points where it gets 'stuck' in some higher mode using either the sliders or by toggling the shutter.
    • In order to recover green transmission of ~0.8, it was often necessary to first run ASS to optimize the IR transmission. Otherwise, green-transmission saturates at ~0.6 or 0.4 depending on the misalignment of the arm cavity mirrors. The servo was unable to change the input pointing enough to deal with overly misaligned cavity mirrors. 
    • The servo is sometimes capable of bringing about mode-hopping from a higher order mode to a lower one, though this is not always the case as the PDH lock is sometimes too strong, in which case I toggled the shutter after which the servo kicked in.
    • I tested the servo under as many different conditions as I could. For instance, having left the green shutter open overnight, I saw that the transmission had fallen from 0.8 (which was what we saw on Thursday night) to ~0.4 on Friday morning. Running the servo got the transmission up to 0.6. I then asked Manasa to run ASS, (while leaving the ASX servo on), after which point the green transmission went up to 0.8. Sometimes, the servo locks to a 'bad' 00 mdoe, where the transmission saturates at ~0.2, but toggling the shutter fixes this most of the time.

Attempt to measure transfer function:

One of the things that came up during my presentation was how fast the loop was capable of responding. I was able to get a quantitative idea of this by playing around with the overall servo gain. Initially, it took ~30 seconds for the servo to get the transmission up to its peak value, with a servo gain of 1. When I ramped this up to 5, the response was much faster, with the peak transmission being reached in ~5seconds. 


I wanted to get a more quantitative picture, and hence tried to measure the transfer function by first injecting an excitation into the 'SIG' filter-bank in the demodulation stage. However, coherence between the IN1 and IN2 signals was very poor for all the amplitude configurations I tried. At Jenne's suggestion, I tried injecting the excitation at the control-filters stage, but found no improvement. Perhaps the amplitude envelope was wrong or the measurement technique has to be rethought. 

 Misc remarks:

  1. M1 is the first steering mirror and M2 is the second one (right before the beam enters the arm cavity).
  2. Though I have added the cavity dither feature to the model, I was not able to optimize this servo. Some calculations need to be done to get an estimate of the output matrix, after which the filter gains etc can be optimized.
  3. Today, I cleaned up my temporary setup at the SP table to calibrate the PZTs. Most of the hardware for the Y-end is now in the tupperware box. The QPD and laser have been restored to the optical bench next to MC2 where I found them. The second KEPCO HV supply which I had set up has now been installed at 1Y4 in anticipation of the PZT mirrors at the Y-endtables. It is currently powered OFF.
  4. Performance plots to follow as I have not pulled the data out yet.
  5. I had bought a cake from chandler today in an effort to clear my meal plan, but in the rush in the afternoon, completely forgot about it. It is in the fridge, and is strawberry tart, hope it tastes good.


 New MEDM screen:


  11603   Tue Sep 15 20:44:13 2015 gautamSummaryLSCChecking the delay line phase shifter DS050339
I checked out the delay line phase shifter D050339, (theory of operation here) this afternoon. I first checked that the power connection was functional, which it was, though the power connector is is not the usual chassis one (see image attached, do we need to change this?).

The box has two modes of operation - you can either change the delay by flipping switches on the front panel or via a 25pin D-sub connector on the back (the pin numberings for this connector on the datasheet are a little misleading, but I determined that pins 1-9 on the D-sub connector correspond to the 9 delays on the front panel in ascending order, pin 10 is the mode selector switch, should be high for remote operation, pins 11 and 13 are NC, pin 12 is VCC of 5V, and pins 14-25 are grounded). I first checked the front-panel mode of operation, using an oscilloscope to measure the delay between the direct signal from the Fluke 6061 and the output from the D050339. This corresponds to the first set of datapoints in the plot attached (signal was 100MHz sine wave).

I then used a 25 pin D sub breakout boards to check the remote operation mode as well, which corresponds to the second set of datapoints in the plot attached. For this measurement, I used the Agilent network analyzer to measure the phase lag between the direct signal (for all delays, I measured the phase lag at 100MHz, having first calibrated the "thru" path by connecting the R and A inputs of the network analyzer using a barrel BNC) and the delayed output from the box, and then converted it to a time delay.

Both sets of data are linear, with a slope nearly equal to 1 as expected. I conclude that the box is functioning as expected. Right now, Koji is checking a board which will be used to remotely control this box. On the hardware side it remains to make a cable going from the DS050339 Dsub input to the driver board output (also 25 pin Dsub).
Attachment 1: IMG_20150915_193100.jpg
Attachment 2: Calibration.pdf
  11613   Thu Sep 17 17:27:01 2015 gautamUpdateLSCRF micky mouse - dodgy DIN connector blocks fixed

[Steve, gautam]

We fixed the problematic DIN connectors on 1Y2, by swapping out the 3 DIN connector blocks that were of the wrong type (see attached image for the difference between the types appropriate for "Live" and "Ground").

Before doing anything, Eric turned the Wenzel multiplier off. We have not turned this back on.

Then we turned off the power supply unit at the base of 1Y2, removed the connectors from the rail, swapped out the connectors, reinstalled them on the rail, and turned the power supply back on. After swapping these out, we verified with a multimeter that between each pair of "Live" and "Ground" blocks, there was ~15V. We could now use the third unused pair of blocks to power the delay line phase shifter box, though for the moment, it remains powered by the bench power supply. 


1. POP110 RF amps are powered from the cross connect. But that +15V block has GND connections that are not connected to the ground.
    i.e. The ground potential is given by the signal ground. (Attachment 1)

    This is caused by the misuse of the DIN connector  blocks. The hod side uses an isolated block assuming a fuse is inserted.
    However, the ground sides also have the isolated blocks

2. One of the POP110 RF cable has a suspicious shiled. The rigidity of the cable is low, suggesting the broken shield. (Attachment 2)


Attachment 1: DIN_rail_terminal.jpg
  11615   Thu Sep 17 19:58:06 2015 gautamSummaryComputer Scripts / ProgramsFrequency counting algorithm

I made some changes to the c1tst model running on c1iscey in order to test my algorithm for frequency counting. I followed the steps listed in elog 8909 to make, install and start the model. 

I need to debug a few things and run some more diagnostics so I am leaving the model in its edited version (Eric had committed it to the svn before I made any changes). 

  11628   Mon Sep 21 18:31:06 2015 gautamSummaryComputer Scripts / ProgramsFrequency counting algorithm

I have been working on setting up a frequency counting module that can give us a readout of the beat frequency, divided by a factor of 2^14 using the Wenzel frequency dividers as described here. This is a summary of what I have thus far.

The algorithm, and simulink model

The basic idea is to pass the digitized signal through a Schmitt trigger (existing RCG module), which provides some noise immunity, and should in theory output a clean square wave with the same frequency as the input. The output of the Schmitt trigger module is either 0 (for input < lower threshold value) and 1 (for input greater than the high threshold value). By differencing this between successive samples, we can detect a "zero-crossing", and by measuring the time interval between successive zero crossings, we can take the reciprocal to get the frequency. The last bit of this operation (i.e. measuring the interval) is done using a piece of custom C code. Initially, I was trying to use the part "GPS" from CDS_PARTS to get the current GPS time and hence measure intervals between successive zero-crossings, but this didn't work out because the output of GPS is in seconds, and that doesn't give me the required precision to count frequency. I tried implementing some more precision timing using the clock_gettime() function, which is capable of giving nanosecond precision, but this didn't work for me. So I am now using a more crude way of measuring the interval, by using a counter variable that is incremented each time a zero-crossing is NOT detected, and then converting this to time using the FE_RATE macro (=16384). In any case, the ADC sampling rate limits the resolution of frequency counting using zero-crossing detection (more on this later). Attachment 1 shows the SIMULINK block diagram for this entire procedure.

Testing the model

I implemented all of this on c1tst, and followed the steps listed here to get the model up and running. I then used one of the DB37 breakout boards to send a signal to the ADC using the DS345 function generator. Attachment 2 shows some diagnostic plots - input signal was a 2.5Vpp (chosen to match the output from the Wenzel dividers) square wave at 2kHz:

  • Bottom left: digitized version of the input signal - I used this to set the upper and lower thresholds on the Schmitt trigger at +1000 counts and -1000 counts respectively.
  • Top left: Schmitt trigger output (red trace) and the difference between successive samples of the Schmitt trigger output (blue trace - this variable is used to detect a zero crossing)
  • Top right: Counter variable used to measure intervals between successive zero crossings, and hence, the frequency. The frequency output is held until the next zero crossing is detected, at which time counter is reset
  • Bottom right: frequency output in Hz.

The right column pointed me to the limitations of frequency counting using this method - even though the input frequency was constant (2kHz), the counter variable, and hence the frequency readout, was neither accurate nor precise. But this was to be expected given the limitations imposed by ADC sampling? We only get information of the state of the input signal once within each sampling interval, and hence, we cannot know if a zero crossing has occurred until the next sampling interval. Moreover, we can only count frequency in discrete steps. In attachments 3 and 4, I've plotted these discrete frequencies which can be measured - the error bars indicate the error in the frequency readout if the counter variable is 1 more or less than the "true" value - this can (and does) happen if the high and low times of the Schmitt trigger are not equal over time (see top left plot in Attachment 2, its not very obvious, but all the "low" times are not equal, and so, the interval between detected zero crossings is not equal). This becomes a problem for small values of the counter variable, i.e. at high input frequencies. I was having a look at the elogs Aidan wrote some years ago for a different digital frequency counting approach, and I guess the conclusion there was similar - for high input frequencies, the error is large. 

I further did two frequency sweeps using the DS345, to see if I could recover this in the frequency readout. Attachments 5 and 6 show the results of these sweeps. For low frequencies, i.e. 100-500 Hz, the jitter in the readout is small (though this will be multiplied by a factor of 2^14), but by the time the input frequency gets up to 2kHz, the jitter in the readout is pretty bad (and gets worse for even higher frequencies.

Bottom line

Some refinements can be made to the algorithm, perhaps by introducing some averaging (i.e. not reading out frequency for every pair of zero crossings, but every 5) which may improve the jitter in the readout, but I would think that the current approach is not very useful above 2kHz (corresponding to ~30MHz of pre-divider frequency), because of the limitations shown in attachments 3 and 4. 

Attachment 1: Simulink_model.pdf
Attachment 2: diagnostic_plots.pdf
Attachment 3: Error_high_frequency.pdf
Attachment 4: Error_low_frequency.pdf
Attachment 5: Frequency_sweep_100_500_Hz.pdf
Attachment 6: Frequency_sweep_100_2000_Hz.pdf
  11647   Tue Sep 29 03:14:04 2015 gautamUpdateCDSFrequency divider box

Earlier today, the front panels for the 1U chassis I obtained to house the Wenzel dividers + RF amplifiers arrived, which meant that finally I had everything needed to complete the assembly. Pictures of the finished arrangement attached. 

Summary of the arrangement:

  • Two identical channels (RF amplifier + /64 divider + /256 divider), one for each arm
  • The front panels are anodized, and isolated SMA feedthroughs are used 
  • Given the large number of units to be supplied with DC power (2 amplifiers + 4 dividers), I chose to use two D1000217 power regulators (the default configuration takes +-18V as input, and outputs regulated +-15V, which was fine for the dividers, but the ZKL-1R5 requires +12V, so I changed the resistor R2 in the schematic from a 10.7K to 8.451K so as to accommodate this).
  • The amplifiers and dividers are mounted on a steel plate, which is itself mounted on the chassis via insulating posts. 


  • I first verified the power regulator circuitry without hooking up the amplifiers/dividers - with a multimeter, I verified I was getting +15V and +12V as expected.
  • I then connected the amplifiers and dividers, and decided to first check the behaviour of each channel using the Fluke 6061 RF function generator and an oscilloscope. One of the channels (X-arm in the current configuration) worked fine - I got a 0-2.5V square wave as the output for input signals as low as -38dBm at 130MHz (consistent with out earlier observations).
  • The Y-arm channel however did not give me any output. In order to debug the problem, I decided to check the output after the amplifier first. The amplifier does not seem to be working for this channel - I get the same amplitude at the output as at the input. I verified that the correct DC power voltage of +12V was being supplied with a multimeter, but I am not sure how to debug this further. The amplifier is basically straight out of the box, and as far as I can tell, I have not done anything to damage it, as this was the first time I am connecting it to anything, and I repeated the same steps on the Y-arm as the X-arm, which seems to work alright.
  • The rest of the Y-arm signal chain was verified to be working by bypassing the amplifier stage (the attached photographs show the box in this configuration. There seems to be no issues with the divider part of the signal chain. 

Once I figure out the problem with this amplifier/replace it, the box is ready to be installed. 


Attachment 1: IMG_0014.JPG
Attachment 2: IMG_0015.JPG
  11650   Tue Sep 29 19:38:09 2015 gautamUpdateGeneralFOL fiber box revamp

The new 2x2 fiber couplers arrived today so Eric gave me an overview on the changes to be made to the existing configuration of the FOL fiber box. I removed the box from the table after ensuring that the PDs were powered OFF and removing and capping all fiber leads on the front panel. Here is a summary of the changes made.

  • On-Off positions for the rocker switches corrected - these switches for the power to the PDs were installed such that the "1" position was OFF. I flipped both the switches such that the "1" position now corresponds to ON (see Attachment #1).
  • All the couplers/beam combiners/splitters were initially removed. 
  • I then re-configured the layout as per the schematic (Attachment #2). I only needed to use one of the 4 new 2x2 couplers ordered. I think the 1x2 couplers are appropriate for mixing the PSL and AUX beams, as if we use a 2x2 coupler, half of the mixed light goes nowhere? Indeed, if we had one more such coupler, we could do away with the 2x2 coupler I am now using to divide the PSL light into two. 
  • The spec-sheets on the inside of the top cover were updated to reflect the new hardware (Attachment #3).
  • The old hardware from the box that was not used, along with their spec-sheets, are stored temporarily in a Thorlabs lab snacks box (all the fibers have been capped).
  • The finished layout is shown in Attachment #4.

I then ran a quick check to see what the power levels were at the input to the PDs, using the fiber coupled power meter. However, I found that there was no light in the fiber marked "PSL light in" (the power meter read out "Sig. Low"). The X arm Aux light had an input power of 1.12 mW, which after the various coupling losses etc went down to 63 uW just before the PD. The corresponding figures for the Y arm are 200 uW and 2.2 uW. I am not too sure of how the AUX light is coupled into fibers so I am not trying to tweak the alignment to see if I get more power. 

Attachment 1: IMG_0017.JPG
Attachment 2: FOL_schematic.pdf
Attachment 3: IMG_0018.JPG
Attachment 4: IMG_0016.JPG
  11652   Wed Sep 30 13:07:13 2015 gautamUpdateGeneralFOL fiber box revamp

Eric pointed out that the 1x2 couplers that were used in the previous arrangement and which I recycled, were in fact NOT appropriate - they are not 50-50 couplers but 90-10 couplers, which explains the measured power levels I quoted here.

I switched out these for a pair of the newly arrived 2x2 couplers, and have also replaced the datasheets on the inside of the top cover. I then redid the power level measurements, and got some sensible values this time (see Attachment #1 for revised layout and measured power levels, numbers in red are powers for PSL light, numbers in green are for AUX laser light, and all numbers are in mW). I did find that the 90-10 splitter in the PSL+Y path was not working (though the one in the PSL+X path seems to be working fine), and hence, have not quoted power levels at the output of these splitters. For now, I guess we can bypass the splitters and take the PSL+AUX light from the 2x2 couplers directly to the PDs.

Attachment 1: FOL_schematic.pdf
  11670   Tue Oct 6 16:56:40 2015 gautamUpdateGeneralFOL fiber box revamp

[gautam, ericq]

We had a look at the IR beat (PSL+Xarm) today using the new FOL fiber box, and compared it to the green beat signal for the same combination. We first switched out the green Y beat input into the RF amplifiers on the PSL table with the PSL+Xarm IR beat input (so in all the plots, the BEATY channels really correspond to the IR beat for PSL+X). The IR and green beat notes were found without much difficulty, and we compared the beat signal PSDs for the green and IR signals (see Attachment #1 - arms were locked to green and the X slow control was turned on). The pink trace (labeled REF1) corresponds to the green beat signal, and was in good agreement with an earlier reference trace Eric had saved for the same signal. The teal trace (labeled REF0) corresponds to the the IR beat signal monitored simultaneously. 

We then went back to the PSL table to check the amplitude of the signal from the broadband fiber PDs using the Agilent network analyzer. An initial measurement yielded a beat note (@~50MHz) at ~-22dbm (17mV rms). We figured that by bypassing the 90-10 splitter in this path, we could get a stronger signal. But after switching out the fiber connections we found that the signal amplitude had fallen to ~-27dbm (10mV rms). As per my earlier measurements here, we expect ~600uW of light on the PD, and a quick calculation suggested the signal should be more like 60mV, so we used the fiber power meter to check the power levels after each of the couplers again. We then found that the fiber connector on the front panel of the box for the PSL input wasnt ideal (the laser power after the first 50-50 coupler was only ~250 uW, though the input was ~1.2  mW). The power after the first coupler also fluctuated unpredictably (<100 uW to 350 uW) in response to slightly tightening/loosening the fiber connections on the front panel. I then switched the PSL input to one of the two unused fiber connectors on the front panel (meant for the 10% of the beat signal for the DC readout), and found that this input behaved much better, with ~450 uW of power available after the first 50-50 coupler. The power going into the beat PD was also measured to be ~550uW, closer to what was expected. The beat signal peak now was ~-14dbm (~30mV rms).

We then once again repeated the comparison between green and IR beat signals - but while in the control room, I noticed that the beat signal amplitude on the network analyzer in the control room was fluctuating by nearly 1.5 divisions on the vertical scale - not sure what the reason for this is. A look at the PSD of the IR beat with higher power incident on the PD was also not encouraging (see blue trace in Attachment #1), it seems to have gotten worse in the 10-30 Hz range. We also looked at the coherence between the beat spectrum and the beat note amplitude in order to look for any linear coupling between the two, but from Attachment #2, we cannot explain the disparity between the green and IR beat spectra. This warrants further investigation.

Everything on the PSL table has now been restored to the configurations before these investigations (i.e. the Y+PSL green beat cable has been reconnected to the RF amplifier, and both green beat PDs have been powered back ON. The fiber PDs are powered OFF) 

Attachment 1: 20151006_Xbeat_psd.pdf
Attachment 2: 20151006_Xbeat_coherence.pdf
  11683   Fri Oct 9 19:54:58 2015 gautamUpdateCDSFrequency divider box - installation in 1X2 rack

The new ZKL-1R5 RF amplifier that Steve ordered arrived yesterday. I installed this in the frequency divider box and did a quick check using the Fluke RF signal generator and an oscilloscope to verify that both the X and Y paths were working. 

I've now installed the box in the 1X2 rack where the olf "RF amplifiers for ALS and FOL" box used to sit (I swapped that out as I needed the L brackets on that chassis to mount mine, see Attachment #1 for the new layout). The power cable that used to power the old chassis was available, but the connector was of the wrong gender, so I had to switch this out. After verifying that I was getting the correct voltage (+15V), I connected it to the chassis.

I then did a quick check with the Fluke generator to make sure that all was working as expected - Eric had set up some ADC channels for me earlier today in the C1ALS model, and I copied over my frequency counting module from C1TST into C1ALS, and recompiled the model. The RF generator was set to generate a 25MHz signal at -20dBm, which I then split using an RF power splitter between the X and Y arms. I then checked the output using dataviewer - I recovered an output frequency of ~27.64 MHz with a jitter of ~0.02 MHz with a 20Hz low-pass filter in place (see Attachment #2), which looks consistent with the systematic error inherent in the zero-crossing counting algorithm and random fluctuations I had observed in my earlier trials, discussed here. But a more systematic investigation needs to be carried out in this regard. The interfacing between the hardware and software seems to be working alright though. I've left the RF generator near the 1x2 rack for now, though its powered off. 

The mode cleaner unlocked quite a few times while I was working but looks stable now. 


Attachment 1: IMG_0027.JPG
Attachment 2: time_seris_25MHz.pdf
  11684   Mon Oct 12 17:04:02 2015 gautamUpdateCDSFrequency divider box - further tests

I carried out some more tests on the digital frequency counting system today, mainly to see if the actual performance mirrors the expected systematic errors I had calculated here

Setup and measurement details:

I used the Fluke 6061A RF signal generator to output an RF signal at various frequencies, one at a time, between 10 and 70 MHz. I split the signal (at -15 dBm) into two parts, one for the X-channel and one for the Y-channel using a mini-circuits splitter. I then looked at the input signal using testpoints I had set up within the model, to decide what thresholds to set for the Scmitt trigger. Finally, I averaged the outputs of the X and Y channels using z avg -s 10 C1:ALS-FC_X_FREQUENCY_OUT and also looked at the standard deviation as a measure of the fluctuations in the output (these averages were taken after a low-pass filter stage with two poles at 20Hz, chosen arbitrarily).


  • Attachment #1 shows a plot of the measured RF frequency as a function of the frequency set on the Fluke 6061A. The errorbars on this plot are the standard deviations mentioned above. 
  • Attachment #2 shows a plot of the systematic error (mean measured value - expected value) for the two channels. It is consistent with the predictions of Attachments #3 and #4 in elog 11628 (although I need to change the plots there to a frequency-frequency comparison). This error is due to the inherent limitations of frequency counting using zero crossings, I can't think of a way to get around this).
  • I found that a lower threshold of 1800 and an upper threshold of 2200 worked well over this range of frequencies (the output of the Wenzel dividers goes between 0V and 2.5V, and the "zero" level for the digitized signal corresponds to ~2000, as determined by looking at a dataviewer plot of a tetspoint I had set up in my model). Koji suggested taking a look at the raw ADC input signal sampled at 64 kHz but this is not available for c1x03, the machine that c1als runs on. 



Attachment 1: calibration.pdf
Attachment 2: systematics.pdf
ELOG V3.1.3-