don't use IN_1/IN_2: recall pizza meeting from a few weeks back: use IN1/EXC + Al-Gebra
Measured loop TFs - PRCL is a big mystery. Used these to finalize loop gains.
I went through the wiring of the c1auxex crate today to disentangle the pin assignments. The full detail can be found in attachment #1, #2 has less detail but is more eye candy. The red flagged channels are now marked for removal at the next opportunity. This will free up DAQ channels as follows:
This should be enough for temperature sensing, NPRO diagnostics, and even eventual remote PDH control with new servo boxes.
Neither of the Menlo FPD310 fiber coupled PDs in the beat mouth have an optoelectronic response (V/W) as advertised. This possibly indicates a damaged RF amplification stage inside the PD.
I have never been able to make the numbers work out for the amount of DC light I put on these PDs, and how much RF beat power I get out. Today, I decided to measure the PD response directly.
In the end, I decided that slightly modifying the Jenner laser setup was the way to go, instead of futzing around with the PDFR laser. These PDs have a switchable gain setting - for this measurement, both were set to the lower gain such that the expected optoelectronic response is 409 V/W.
[Attachment #1] - Sketch of the experimental setup.
[Attachment #2] - Measured TF responses, the RF modulation was -20dBm for all curves. I varied the diode laser DC current a little to ensure I recovered identical transfer functions. Assumptions used in making these plots:
[Attachment #3] - Tarball of data + script used to make Attachment #2.
The unit mentioned in the x-axis was wrong. So I have remade the graphs. The point where frequency equals to zero is actually the frequency corresponding to the laser, which is in the range of 1014 Hz and it caliberated as zero.
The cavity scan data obtained from the Finesse simulation is attached here. Fig1 indicates the cavity scan data in the absence of induced misalignment. In that case only the fundemental mode is resonating. But when a misalignment is induced, higher order modes are also present as seen in Fig2. This is in the absence of surface figure error in the mirrors. Now I am trying to provide perturbations to the mirror surface in the form of zernike polynomials and get the scan data fom the simulation. These cavity scan data can be used to develop fitting models. Once we have a model, we can use it to analyse the data from the experimental cavity scan.
I want to use the Fiber Coupled laser from the PDFR system to characterize the response of the fiber coupled PDs we use in the BeatMouth. The documentation is pretty good: for a first test, I did the following in this order:
Seems like stuff is working as expected. I don't know what the correct setpoint for the TEC is, but once that is figured out, the 1x16 splitter should give me 250 uW from each output for 4mW input. This is well below any damage threshold of the Menlo PDs. Then the plan is to modulate the intensity of the diode laser using the Agilent, and measure the optoelectronic response of the PD in the usual way. I don't know if we have a Fiber coupled Reference Photodiode we can use in the way we use the NF1611 in the Jenne laser setup. If not, the main systematic measurement error will come from the power measurement using a Fiber Power Meter.
I have modified the code for frequency scanning and have made it completely command line enabled. The code is written in python. It is saved in the name "frequency_scanning_argparse.py". I have uploaded it to the Mode-Spectroscopy Github repository.
Inorder to use this code there are two ways.
1. We can mention the ' frequency' on which marconi need to work. Then it will change the marconi frequency to that perticular value.
eg: Type in the terminal as follows for changing the marconi frequency to 59 Mhz.
python frequency_scanning_argparse.py 59e6
2. Inorder to give a scan to the marconi frequency, provide the 'start frequency', 'end frequency' and the 'number of points' in between. This will be more conveniant when we want to run the scan in different ranges.
eg: Type in the terminal as follows for a start frequency of 59 Mhz, end frequency of 62MHz and number of points in between equal to 1000.
python frequency_scanning_argparse.py 59e6 62e6 1000
In both cases the code will show you the frequency of the marconi before we run this code and it will change the marconi frequency to the desired frequency.
Attachment #1 shows the measured PRCL loop shape. The blue line is meant to be the "expected" loop shape. While the measured loop shape tracks the expectation down to ~100 Hz, I cannot explain the shape below it. I am also not sure what to make of the fact that there is high coherence down to 10 Hz fron IN2 to IN1, but no coherence between EXC/IN2. I confirmed that the low-frequency boost filters were ON during the measurement. I don't understand how a pendulum TF + the digital filters we used can account for the shape below 100Hz.
gautam 11pm: After discussing with Koji, I conclude that the low frequency loop shape is consistent with the excitation amplitude being insufficient below 100 Hz. Coherence is good between In1/In2 because they are the same signal effectively - what we need is coherence between In1 and EXC, which isn't plotted. It is still strange that Coherence between In2/EXC is ZERO....
With Koji's help, I got repeatable and reliable DRMI locking going again tonight - this is with the AS path optics for the spectroscopy measurement in place, although the AUX laser remained shuttered tonight. Results + spectra tomorrow, but here's what I did:
As I have found before, it is significantly easier to get the locking going post 11pm - the wall Seis BLRMS don't look that much quieter at midnight compared to 10pm, but this might be a scaling issue. I'll do a quantitative assessment next time... Also, Foton takes between 25-45 secs to save an updated filter (timed twice today).
Today I made the led (1050nm) circuit inside a box as given in my previous elog. Steve drilled a 1mm hole in the box as an aperture for led light.
Resistance (R) used = 665 .
We connected a power supply and IR has been detected using the card.
Later we changed the input voltage and measured the optical power using a powermeter.
Since the optical power values are very less, we may need to drill a larger hole.
Now the hole is approximately 7mm from led, therefore aperture angle is approximately 2*tan-1(0.5/7) = 8deg. From radiometric curve given in the datasheet of LED1050E, most of the power is within 20 deg. So a hole of size 2* tan(10) *7 = 2.5mm may be required.
I have also attached a photo of the led beam spot on the IR detection card.
Koji's collection of Yend components put away. I cleaned up the Xend bench today.
Loadcells, leveling wedge mounts and related items placed under flowbench cabinet next to Guralp staff.
Steve mentioned two unlabelled optics were found at EX, relics from the Endtable upgrade.
These are now labelled and forked down on the SP table.
I worked a bit on recovering the DRMI locking again tonight. I decided to shutter the AUX laser on the PSL table at least until I figured out the correct locking settings. As has become customary now, there was a cable in the AS beampath (leading from the AS55 DC monitor to nothing, through the enclosure side panel, it is visible in Attachment #3 in this elog) which I only found after 30mins of futility - please try and remove all un-necessary cables and leave the AS beampath in a usable state after working on the AS table! In the end, I got several short (~3mins) stretches in tonight, but never long enough to do the loop characterization I wanted to get in tonight, probably wrong gains in one or more of the loops. In the last 30 minutes, the IMC has been frequently losing lock, so I am quitting for now. The AUX laser remains shuttered.
Per this elog, we don't need any AIOut channels or Oplev channels. However, the latest wiring diagram I can find for the EX Acromag situation suggests that these channels are hooked up (physically). If this is true, there are 12 ADC channels that are occupied which we can use for other purposes. Question for Johannes: Is this true? If so, Kira has plenty of channels available for her Temperature control stuff..
As an aside, we found that the EPICS channel names for the TRX/TRY QPD gain stages are somewhat strangely named. Looking closely at the schematic (which has now been added to the 40m DCC tree, we can add out custom mods later), they do (somewhat) add up, but I think we should definitely rename them in a more systematic manner, and use an MEDM screen to indicate stuff like x4 or x20 or "Active" etc. BTW, the EX and EY QPDs have different settings. But at least the settings are changed synchronously for all four quadrants, unlike the WFS heads...
Unrelated: I had to key the c1iscaux and c1auxey crates.
The unfortunate discovery today was that the attenuator switches on the IMC WFS heads are actually assigned to individual segments, and they are active. That means that we have been running the WFS with an uneven gain setting. The attached PDFs show that the signals with the attenuators on and off all at the same time, while the WFS servo output was frozen. A more annoying feature is that when some of the attenuators are on, this does not lower the gain completely. I mean that the attenuated channels show some reduction of the gain, but that is not the level of reduction we see when all attenuators are turned on. This RF could come from some internal RF coupling or some similar effect.
Moreover, the demodulation phases are quite off for most of the segments.
So far, the WFS is running with this uneven attenuation. We take time to characterize the gain and retune the demod phases and input matrices.
Oopss !! I made a mistake while taking the values from my notes. Sorry.
> The percentage error which I found out =[(analytical value - finesse value)/analytical value]*100
Yes, I this does not give us 0.70%
(3.893408 - 3.8863685)/3.893408 *100 = 0.18%
But any way, go for the fitting.
The percentage error which I found out =[(analytical value - finesse value)/analytical value]*100
But inorder to find the finesse value, I just used curser to get the central frequency of each peak and by substracting one from the other I found TMS and FSR.
The resolution was 6500 Hz. Thus, it seems that this method is not actually reliable. I am trying to find the central frequency of each mode with the help of lorentzian fits. I am attaching a fit which I did today. I have plotted its residual graph also.
I am uploading 4 python scripts to the github.
1. Analytical Solution
2. Finesse model- cavity scan
3. Finesse model- fitting
4. Finesse model- residual
Hmm? What is the definition of the percentage error? I don't obtain these numbers from the given values.
And how was the finesse value obtained from the simulation result? Then what is the frequency resolution used in Finesse simulation?
Why is this happening so frequently now? Last few lines of error log:
I fixed it by running the reboot script.
Hmm? What is the definition of the percentage error? I don't obtain these numbers from the given values.
And how was the finesse value obtained from the simulation result? Then what is the frequency resolution used in Finesse simulation?
Aim: To calibrate CCD of GigE using LED1050E.
The following table shows some of the specifications for LED1050E as given in Thorlabs datasheet.
The circuit diagram is given in Attachment 1.
Considering a power supply voltage Vcc = 15V, current I = 20mA & forward voltage of led VF = 1.25V, resistance in the circuit is calculated as,
R = (Vcc - VF)/I = 687.5
Attachment 2 gives a plot of resistance (R) vs input voltage (Vcc) when a current of 20mA flows through the circuit. I hope I can proceed with this setup soon.
As of now, I have made the codes needed to sweep the marconi frequency for taking the cavity scan data, the photo diode at the y-end is conected to the spectrum analyser already and I also have the finesse simulation of the Ideal Fabry-perot cavity. By seeing my last elog entry, Gautam suggested me that I need to take a different approach for estimating the FSR and TMS value from the Finesse graph. That is, by using least square fit models. Now I am trying to do that and get a better estimate of the error values. Based on my understanding I am dividing this project into various tasks.
1. Getting a better estimate of the error value by using least square fits. Also plotting a graph of frequency Vs mode number and finding the value of Free Spectral Range from its slop.
2. Inserting zernike polynomials to the Finesse simulation and with the help of least square fit, plotting the graph of frequency Vs mode number. Understanding the shifts from the Ideal graph we obtained from step 1. Using this data, plotting the phase map corresponding to this.
3. Repeating step 2 by taking different zernike polynomials and creating a data base which will be useful for the analysis of the real data. This will also prepare me to do the fitting models easily.
4. Collecting data from the IFO and applying these fitting models to it. Finding the set of zernike polynomials which are similar to the actual fugure error of the mirror. Plotting the Phase map corresponding to those zernike polynomials.
If you feel that there is some mistake in the steps, please correct me. It will be really helpful!
The values obtained from both analytical and finesse solution is given in the above table along with the corresponding percentage errors.finesse1.pdf
The parameters used for this calculation are listed below.
The cavity scan data obtained from Finesse is also attached here.
Aim: To develop a neural network in order to correlate the intensity fluctuations in the scattered light to the angular motion of the test mass. A block diagram of the technique employed is given in Attachment 1.
I have used Keras to implement supervised learning using neural network (NN). Initially I had developed a python code that converts a video (59 sec) of scattered light, after an excitation (sine wave of frequency 0.2 Hz) is applied to ETMX pitch, to image frames (of size 480*720) and stores the 2D pixel values of 1791 images frames captured into an hdf5 file. This array of shape (1791,36500) is given as an input to the neural network. I have tried to implement regular NN only, not convolution or recurrent NN. I have used sequential model in Keras to do this. I have tried with various number of dense layers and varied the number of nodes in each layer. I got test accuracy of approximately 7% using the following network. There are two dense layers, first one with 750 nodes with a dropout of 0.1 ( 10% of the nodes not used) and second one with 500 nodes. To add nonlinearity to the network, both the layers are given an activation function of tanh. The output layer has 1 node and expects an output of shape (1791,1). This model has been compiled with a loss function of categorical crossentropy, optimizer = RMSprop. We have used these since they have been mostly used in the image analysis examples. Then the model is trained against the dataset of mirror motion. This has been obtained by sampling the cosine wave fit to the mirror motion so that the shapes of the input and output of NN are consistent. I have used a batch size ( number of samples per gradient update) = 32 and epochs (number of times entire dataset passes through NN) = 20. However, using this we got an accuracy of only 7.6%.
I think that the above technique gives overfitting since dense layers use all the nodes during training apart from giving a dropout. Also, the beam spot moves in the video. So it may be necessary to use convolution NN to extract the information.
The video file can be accesses from this link https://drive.google.com/file/d/1VbXcPTfC9GH2ttZNWM7Lg0RqD7qiCZuA/view.
Gabriele told us that he had used the beam spot motion to train the neural network. Also he informed that GPUs are necessary for this. So we have to figure out a better way to train the network.
gautam noon 11Jun: This link explains why the straight-up fully connected NN architecture is ill-suited for the kind of application we have in mind. Discussing with Gabriele, he informed us that training on a GPU machine with 1000 images took a few hours. I'm not sure what the CPU/GPU scaling is for this application, but given that he trained for 10000 epochs, and we see that training for 20 epochs on Optimus already takes ~30minutes, seems like a futile exercise to keep trying on CPU machines.
I was checking on the slow machine channels and found something I could not understand.
On the IOO WFS HEAD screen, there are two sets of 4 switches (magenta rectangles in Attachment 1) labeled 2/4/8/16dB.
But as far as I could confirm with the WFS demod (D980233) and WFS head (D980012) drawings, they are the gain (attenuation) switches for the individual segments.
Their epics variable names are "C1:IOO-WFS1_SEG1_ATTEN", "C1:IOO-WFS1_SEG2_ATTEN", etc...
"C1:IOO-WFS1_SEG1_ATTEN", "C1:IOO-WFS1_SEG2_ATTEN", etc...
I confirmed the switches are alive (effective), and they are not all ON or OFF. I wonder what is the real situation there...
Unfortunately, this has happened (and seems like it will happen) enough times that I set up a script for rebooting the machine in a controlled way, hopefully it will negate the need to repeatedly go into the VEA and hard-reboot the machines. Script lives at /opt/rtcds/caltech/c1/scripts/cds/rebootC1LSC.sh. SVN committed. It worked well for me today. All applicable CDS indicator lights are now green again. Be aware that c1oaf will probably need to be restarted manually in order to make the DC light green. Also, this script won't help you if you try to unload a model on c1lsc and the FE crashes. It relies on c1lsc being ssh-able. The basic logic is:
Given the various changes to the IFO config since last Thursday when I was last able to lock the DRMI, I wanted to try once again tonight. However, I had no success. By my judgement, the alignment is fine as judged by looking at mode flashes on the cameras. However, despite following the usual alignment procedures, I did not get a single lock in tonight.
Perhaps we can use a flip mount on the BS that combines the PSL and AUX beams on the AS table, so we have the option of recovering the usual IFO config when we so desire - while Jon needs the SRC locked for his measurement, it would be nice to not have to figure out the correct demod phases etc each time there is a change in the optical setup of the AUX beam.
Among the things that we hadn't taken care of yesterday before beginning to look for transmission signals were the polarization of the AUX beam on the AS table and optimizing the PLL feedback. The AUX beam is s-polarized on the PSL table (choice due to availablility of mirrors), and I added a half waveplate in front of the fiber to match it's axes. I placed another half-waveplate at the fiber output and send the reflection port of a PBS cube onto a PDA1CS photodetector. By alternatingly turning the waveplates I minimized the reflected light, giving strongly p-polarized light on the AS table for best results when interfering with the IFO beam. I wiggled the fiber and found no strong dependency of the output polarization on fiber bending. Attachment 2 shows the current layout.
The beat signal between AUX and PSL table is at -20dBm, and I adjusted the PLL gain and PI-corner to get reliable locking behavior. I think it's a good idea to keep the AUX beam on the AS table blocked while it's not in use, and only unblock it when it is phaselocked to avoid a rogue beam with no fixed phase relation to the PSL in the IFO.I blocked the beam after completing this work today.
I used the signal chain that Keerthana, Koji, and I set up yesterday to look for mode flashed of the AUX light in the YARM using the RF beat with the PSL carrier in transmission. To align the AUX beam to the arm the following steps were performed:
This was followed by a sweep over two full FSRs. Attachment #1 shows the trace recorded by the AG4395 using the max data hold setting during the sweep. Essentially the beat between AUX and PSL carrier traced out the arm's transmission curve. At minimum transmission there was still a ~82dB beat on the transmission PD visible.
The YEND QPD is currently blocked and sees no light.
It isn't clear to me in the drawing where the Agilent is during this measurement. Over 40m of cabling, the loss of signal can be a few dB, and considering we don't have a whole lot of signal in the first place, it may be better to send the stronger RF signal (i.e. Marconi pickoff) over the long cable rather than the weak beat signal from the Transmission photodiode.
I worked a bit on the PSL table today
Local backup on chiara seems not working since Nov 19, 2017.
2017-11-18 07:00:01,504 INFO Updating backup image of /cvs/cds
2017-11-18 07:03:00,113 INFO Backup rsync job ran successfully, transferred 1954 files.
2017-11-19 07:00:02,564 INFO Updating backup image of /cvs/cds
2017-11-19 07:00:02,592 ERROR External drive not mounted!!!
Just to inform, I'm working in optimus to develop python code to train the neural network since it requires a lot of memory.
I opted for the quickest fix - I raised the height of the offending steering mirror using a 0.25" shim. In the long term, we can get a taller post machined. After raising the mirror height, I then checked the DC centering of the spot on the DC PD using a scope.
Looking at the performance of the X arm ASS, I no longer see the strange oscillatory behaviour I described in my previous post . Moreover, the TRX level was ~1 before be raising the steering mirror - but it is now ~1.2. So we were certainly losing some power.
I think this table will help us to fix the scanning range of the Marconi frequency. This will also help in predicting the position of the resonance peak corresponding to the injected frequency.
fdiff = fm ±80 MHz ; fdiff = N*FSRy ; FSRy = 3.893 MHz.
FSS slow wasn't running so PSL PZT voltage was swinging around a lot. Reason was that was c1psl unresponsive. I keyed the crate, now it's okay. Now ITMX is stuck - Johannes just told be about an un-elogged c1susaux reboot. Seems that ITMX got stuck at ~4:30pm yesterday PT. After some shaking, the optic was loosened. Please follow the procedure in future and if you do a reboot, please elog it and verify that the optic didn't get stuck.
(Johannes, Koji, Keerthana)
The PLL loop ensures that the frequency difference between the PSL laser and the AUX laser is equal to the frequency we provide to the Local Oscillator (LO) with the help of a Marconi. Only a small pick off part of both the AUX and PSL lasers are going to the PLL loop. The other part of both the lasers are going to the interferometer. Before entering into the optical fibre, the AUX laser passes through an AOM which changes its frequency by an amount of 80MHz. When the PLL is locked, the frequency coming out of the PLL will be equal to the frequency set up in the Marconi (fm). When it passes through AOM, the frequency becomes fdiff = fm ±80 MHz. If this frequency beam and the PSL laser beam is aligned properly, and if this frequency is equal to the product of an integer and the free spectral range of the cavity, this will resonate in the cavity. Then we expect to get a peak in the ETM transmission spectrum corresponding to the frequency we injected through the optical Fibre.
Through out the experiment we need to make sure that the PSL is locked. Thus, the signal detected by the photo detector when only PSL is resonating inside the cavity, act as a DC signal. Then we give a narrow scan to the Marconi. When fdiff = N*FSRy this condition is satisfied, we will observe a peak in the output. Here FSRy is the free spectral range of the cavity which is approximately equal to 3.893 MHz.
Yesterday afternoon, Johannes, Koji and myself tried to observe this peak. We aligned the cavity by observing the output signal from the AS100 photo detector. We made the alignment in such a way that the intensity output getting from this photo detector is maximum. We used a Spectrum analyser to see the output. After that we connected a photo detector to collect the YEND transmission signal from the ETM mirror. We used a lens to focus this directly to the photodetector. Then we connected this photodetector to the spectrum analyser, which was located near the AS table. We took a large cable to meet this purpose. But still the cable was not lengthy enough, so we joined it with another cable and finally connected it with the spectrum analyser. Then we gave a scan to the Marconi from 51 MHZ to 55 MHz. We repeated this experiment with a scan of 55 MHz to 59 MHz also. We repeated this a few times, but we were not able to see the peak.
We assume that this can be because of some issue with the alignment or it can be because of some issue with the photo detector we used. We would like to repeat this experiment and get the signal properly.
I am attaching a flow chart of the setup and also a picture of the mirrors and photo detector we inserted in the Y-End table.
While Keerthana and johannes were working at the end, I made a little cleaning at the yend. I salvaged large amount of hardware inclding optics, optomechanics. We all together should work on returning them to appropriate locations.
Got this 1U box from the Y arm that we could potentially use (attachment 1). It doesn't have handles on the front but I guess we could attach them if necessary. Attachment 2 is a switch that could be used instead of a light up switch, but now we need to add LEDs on the front panel that indicate that the switch is functional. Attachment 3 is a terminal block that we can use to attach the 16 gage wire to since it is thick and attaching it directly to the board would be difficult. If this is alright to use then I'll change up my designs for the front panel and PCB to accomodate these parts.
I though that the "C1LSC_TRIG_MTRX" MEDM screen completely controls the triggring of LSC signals. But today while trying to trigger the X-arm locking servo on AS110 instead of TRX, I found some strange behaviour. Summary of important points:
All very strange, not sure what's going on here. The simulink model diagram also didn't give me any clues. Need's further investigation.
For some time now, I've been puzzled by the unreliability of the ASS_X dither alignment servo. Leaving the servo on, TRX often begins to decay to a lower value, and even after freezing the dither at the maximum TRX values, I can manually align the mirrors to increase TRX. We have suspected some kind of clipping in the TRX path that is responsible for this behaviour. Today I decided to investigate this a bit further. To have the arm locked and to inspect the beam, we have to change the locking trigger - TRX is what is normally used, but I misaligned the Y arm completely, and used AS110 as a trigger instead. There is some strangeness in the triggering topology, but this deserves a separate elog.
Once the arm was locked (and relocks using the AS110 trigger in the event of an unlock), I was able to trace the beampath on the EX table with an IR card. The TRX beam is rather large and weak, so it is hard to see, but as best as I can tell, the only real danger of clipping (or perhaps the beam is already clipped) is on the final steering mirror before the beam hits the (Thorlabs) PD. Steve/Pooja are working on getting a photo of this, and will upload it here shortly. Options to mitigate this:
The EX QPD has stopped working since the Acromag install. If it were working, we wouldn't have to rely on the alternate triggering with AS110 and instead just use the QPD as TRX, while we debug the Thorlabs PD path.
We added the following channels to C0EDCU.ini and restarted the daqd processes. Channels seem to have been added successfully, we will check trend writing later today. Motivation is to have a long term record of annulus pressure (even though we are not currently pumping on the annulus).
plot next day
Aha! Video is back!
I think it would be good to add a flag whereby the video can be saved to disk in some uncompressed video format (ogg, avi, ?) instead of displayed to a matplotlib window. We could then use the default to just display video, but use the save-to-disk flag to grab a few minutes of video for image processing.
In the meantime, I've impemented a simple Python video feed streamer which does work, and which students can use as a base framework to implement more complicated things (e.g., stream multiple feeds in one window, save a video stream movie or animation).
I was wondering why the PMC modulation sidebands are showing up on the control room analyzer with ~6dB difference in amplitude. Then I realized that it is reasonable for the cabling to have 6dB higher loss at 80 MHz compared to 20 MHz.
I spent a day trying to modify Joe B.'s LLO camera client-server code without ultimate success. His codes now runs without throwing any errors, but something inside the black-box handoff of his camera source code to gstreamer appears to be SILENTLY FAILING. Gautam suggested a call with Joe B., which I think is worth a try.
It uses the same PyPylon API to interface with the GigE cameras as does Joe's code. However, it uses matplotlib instead of gstreamer to render the imaging. The matplotlib code is optimized for maximum refresh rate and I observed it to achieve ~5 Hz for a single video feed. However, this demo code does not set any custom cameras settings (it just initializes a camera with its defaults), so it's quite possible that the refresh rate is actually limited by, e.g., the camera exposure time.
Location of the code (on the shared network drive):
This demo initializes a single GigE camera with its default settings and continuously streams its video feed in a pop-up window. It runs continuously until the window is closed. I installed PyPylon from source on the SL7 machine (rossa) and have only tested it on that machine. I believe it should work on all our versions of Linux, but if not, run the camera software on rossa for now.
From within the above directory, the code is executed as
$python stream_camera_to_mpl.py [Camera IP address]
with a single argument specifying the IP address of the desired camera. At the time I tested, there was only one GigE camera on our network, at 192.168.113.152.
I couldn't locate an appropriate heat sink for the driver, which is still in factory condiction, but since the PSL AOM also runs on 80MHz I used that one instead.
We have the appropriate heatsink - I'd like to minimize interference with the main beam wherever possible.
For the PSL beat the AOM drive is not needed, and the power in the optical fiber should not exceed 100 mW, so the offset voltage to the AOM RF driver has to remain below 300 mV.
If damage to the fiber is a concern, I think it's better to use a PBS + waveplate to attenuate the power going into the fiber. When the AOM switching is hooked up to CDS, it's easy to imagine a wrong button being pressed or a wrong value being typed in.
It would probably also be good to have a pickoff monitor for the NPRO DC power so that we can confirm its health (in the short run, we can hijack a PSL Acromag channel for this purpose, as we now do for FSS_RMTEMP). I don't know that we need an EOM for the PLL, as in order to get that going, we probably need some fast electronics for the EOM path, like an FSS box.
STEVE: I ordered the right heatsink for the acousto after Koji pointed out that the vertical fins are 20% more efficient. Why? Because hot air rises. It will be here in 3-4 days.
> While the laser output is going strong, the controller displays a power output of only 10 mW, which makes me think that the power monitoring PD is busted.
NPRO internal power monitor often shows smaller value than the actual due to a broken PD or misalignment. I don't think we need to fix it.
STEVE: Aux Lightwave M126-1064-200, sn259 [July 2009] 1.76A, ADJ 9, 9mW on it's display should not mislead you. It's output 320mW
I brought the NPRO from the Crackle experiment over to the 40m Lab and set it up on the PSL table to replace the slowly dying AUX laser. I also brought along a Faraday isolator, broadband EOM, and an ISOMET AOM with driver electronics from the optics storage in the Crackle Lab.
This laser is a much newer model, made in 2008, and still has all its mojo, but we should probably keep up the practice of turning it off when it's not going to be used for a while. I measured 320 mW leaving the laser, and 299mW of that going through the Faraday isolator, whose Brewster-angle polarizer I had to clean because they were a little dusty. While the laser output is going strong, the controller displays a power output of only 10 mW, which makes me think that the power monitoring PD is busted. This is a completely different failure mode from what we've seen with the other NPROs that we can hopefully get repaired at some point, particularly because the laser is newer, but for now it's installed on the PSL table. This likely means that the noise eater isn't working on this unit either, for different reasons, but at least we have plenty of optical power.
The setup is very similar to before, with the addition of a Faraday isolator and a broadband EOM, in case we decide to get more bandwidth in the PLL. I changed the Crystal Technologies 3200-113 200 MHz AOM for an ISOMET 80 MHz AOM with RF driver from the Crackle lab's optics storage and sized the AUX beam to a diameter of 200 micron. I couldn't locate an appropriate heat sink for the driver, which is still in factory condiction, but since the PSL AOM also runs on 80MHz I used that one instead. The two AOMs saturate at different RF powers, so care must be taken to not drive the AUX AOM too high. At 600 mV input to the driver the deflection into the first order was maximal at 73 % of the input power, with the second order beam and the first order on the other side cleary visible.
In order to speed things up I didn't spend too much time on mode-matching, but the advantage of the fiber setup is that we can always improve later if need be without affecting things downstream. I coupled the first order beam into the fiber to the AS table with 58% efficiency, and restored the beat with the PSL laser on the NewFocus 1611. The contrast there is only about 20%, netting a -20 dBm beat note. This is only a marginal improvement from before, so the PLL will work as usual, but if we get the visibility up a little in the future we won't need to amplify the PD signal for the PLL anymore.
Some more things I wanted to do but didn't get to today are
I'll resume this work tomorrow. I turned the aux laser and the AOM driver input off. For the PSL beat the AOM drive is not needed, and the power in the optical fiber should not exceed 100 mW, so the offset voltage to the AOM RF driver has to remain below 300 mV.
We talked about touch interface of medm. We realized that android (and iOS) has vnc clients. I just installed VNC viewer on my phone and connected to my mac. Typing is tricky but I managed to get into pianosa, then launched sitemap. We could unlock/lock the IMC by screen touch!
Basically we can connect to one of the laptops (or control machines) from a tablet (either android or ipad). It'd be better to put both in a same network. It'd be great if we have a tablet case with a keyboard so that we can type without blocking the screen.