This afternoon around 2:45, ITMX started ringing up at ~.9Hz for about a minute and then got stuck again. When I noticed this evening, I tried to free it with the alignment sliders but was unable to see any signal on UL or UR. It also looks like the damping for ITMY was turned off at the same time ITMX got stuck (not at the start of its ring up). SRM also has a spike in its motion at this time, and another one minute later that ended up with the LR OSEM at a much higher level, though the mirror does not appear to be stuck. We didn't see any strange behavior from any of the other optics.
Teng and I were working on diagnosing a problem with the ITMY UL whitening, but by the time we disconnected any applicable cables, the damping for ITMY was already off. Later we unplugged the ITMX PD whitening cables after verifying that the ITMX damping was also already off. This problem may have occured earlier, while Teng, Eric, and I were examining and pushing in the cables at 1X5 without unplugging anything.
We found that the reason for the bad phase on the ITMY free swing data is because the whitening filter for UL is not being properly turned on. We are in the process of investigating the source of this problem. Right now all the cables to the PD whitening boxes in 1X5 are switched between ITMY and ITMX.
When we plugged in the back cables yesterday on the whitening boxes after switching them, two of the ITMX PDMon channels (UR and LR) got stuck at 0. This caused me to believe ITMX was still stuck even when it was freed. However, it was left in a stuck state overnight and freed again today after this issue was discovered. The alignment sliders have been set to 0 as a safety net to keep ITMX from getting stuck again if c1susaux is restarted again. We switched the cables back and the problem was still there.
The ITMY UL whitening filter problem, which the cables were originally switched to diagnose, was also still there. Ericq suggested we turn off all the whitening filters in order to get diagonalization data that would not show a phase difference between coils. We ran the diagonalization again with all the dewhitening filters off and got much cleaner results, with no visible cross-coupling peaks remaining between the degrees of freedom (see attachemnt 1). We did not apply this matrix to the damping, however, because there are elements which have the wrong sign compared to the ideal matrix. Significant adjustments to the output matrix will probably need to be made if this result is to be used. We also verified that the phase problem had been solved in DTT, where we saw the same sign discrepancies as in the matrix below.
Damping can be turned back on, using the old, non-diagonalized matrix currently in effect. There is enough free swing data to diagonalize ITMY now, so feel free to mess with it.
Matrix (wrong signs red, suspiciously small elements orange):
pit yaw pos side butt
UL 1.633 0.138 1.224 0.136 0.984
UR -0.202 -1.768 1.179 0.132 -1.028
LR -2.000 0.094 0.776 0.107 1.001
LL -0.165 2.000 0.821 0.111 -0.987
SD 0.900 1.131 -1.708 1.000 -0.107
Motivated by the strange pitch/yaw coupling behavior we ran into while doing diagonalization, we looked at the oplev pitch and yaw free swing spectra for all 4 test masses (see attachment 1). We saw the same behavior there: At the peak frequencies for the angular degress of freedom, the oplevs saw significant contributions from both pitch and yaw. We also examined the phase between pitch and yaw at these peaks and found that consistently, pitch and yaw were in phase at one of the resonance frequencies and out of phase at the other (ignoring the pos and side peaks).
This corresponds physically to angular motion about some axis that is diagonal, ie not perfectly vertical or horizontal. If we trust the oplev calibration, and Eric says that we do, then the angle of this axis of rotation with the horizontal (pitch axis) is
Where Y and P are yaw and pitch ASD values. This will always give an angle between 0 and 90 degrees; which quadrant the axis of rotation occupies can be dermined by looking at the phase between pitch and yaw at the same frequencies. 0 phase means that the axis of rotation lies somewhere less than 90 degrees counterclockwise from the horizontal as viewed from the AR face of the optic, and a phase of 180 degrees means the axis is clockwise from horizontal (see attachment 2). Qualitatively, these features show up the same way for segments of data taken at different times. In order to get some quantitative sense of the error in these angles, we found them using spectrogram values with a bandwidth of 0.02 Hz averaged over 4000 seconds.
Results (all numbers in degrees unless otherwise specified):
peak 1 ( 0.692 Hz):
ptich/yaw phase: -179.181
peak 2 ( 0.736 Hz):
pitch/yaw phase: 0.0123677
peak 1 ( 0.502 Hz):
ptich/yaw phase: -179.471
peak 2 ( 0.688 Hz):
pitch/yaw phase: -0.43991
peak 1 ( 0.73 Hz):
ptich/yaw phase: -0.227034
peak 2 ( 0.85 Hz):
pitch/yaw phase: -179.856
peak 1 ( 0.724 Hz):
ptich/yaw phase: 6.03312
peak 2 ( 0.844 Hz):
pitch/yaw phase: -176.838
ETMY and ITMX both show a more significant (~4x) contribution from pitch on one peak, and from yaw on the other. This is reflected in the fact that they each have one angle somewhat close to 0 (below 30 degrees) and one close to 90 (above 60 degrees). The other two test masses don't follow this rule, meaning that the 2 angular frequency peaks do not correspond to pitch and yaw straightforwardly.
Also, besides ITMX, the axes of rotation are at least several degrees away from being perpendicular to each other.
Summary: At the 40m meeting yesterday, Eric Q. gave the suggestion that we accept the input matrix weirdness and adjust the output matrix by driving each coil individually so that it refers to the same degrees of freedom. After testing this strategy, I don't think it will work.
Yesterday evening I tested this idea by driving one ITMY coil at a time, and measuring the response of each of the free swing modes at the drive frequency. I followed more or less the same procedure as the standard diagonalization: responses to each of the possible stimuli are compared to build a matrix, which is inverted to describe the responses given the stimuli. For the input matrix, the sensor readings are the responses and the free swing peaks are the stimuli. For the output matrix, the sensors transformed by the diagonalized input matrix as the responses of the dofs which are compared, and the drive frequency peak associated with a coil output is the stimulus. However, the normalization still happens to each dof independently, not to each coil independently.
The output matrix I got had good agreement with the ITMY input matrix in the previous elog: for each dof/osem the elements had the same sign in both input and output matrices, so there are no positive feedback loops. The relative magnitude of the elements also corresponded well within rows of the input matrix. So the input and output matrices, while radically different from the ideal, were consistent with each other and referred to the same dof basis. So, I applied these new matrices (both input and output) to the damping loops to test whether this approach would work.
drive-generated output matrix:
UL UR LR LL SD
pit 1.701 -0.188 -2.000 -0.111 0.452
yaw 0.219 -1.424 0.356 2.000 0.370
pos 1.260 1.097 0.740 0.903 -0.763
sid 0.348 0.511 0.416 0.252 1.000
but 0.988 -1.052 0.978 -0.981 0.060
However, when Gautam attempted to lock the Y arm, we noticed that this change significantly impacted alignment. The alignment biases were adjusted accordingly and the arm was locking. But when the dither was run, the lock was consistently destroyed. This indicates that the dither alignment signals pass through the SUS screen output matrix. If the output matrix pitch and yaw columns refer instead to the free swing eigenmodes, anything that uses the output matrix and attempts to align pitch and yaw will fail. So, the ITMY matrices were restored to their previous values: a close to ideal input matrix and naive output matrix. We could try to change everything that is affected by the output matrices to be independent of a transformation to the free swing dof basis, and then implement this strategy. But to me, that seems like an unneccessary amount of changes with unpredictable consequences in order to fix something that isn't really broken. The damping works fine, maybe even better, when the input matrix is set by the output matrix: we define pitch, for example, to be "The mode of motion produced by a signal to the coils proportional to the pitch row of the naieve output matrix," and the same for the other dofs. Then you can drive one of these "idealized" dofs at a time and measure the sensor responses to find the input matrix. (That is how the input matrix currently in use for ITMY was found, and it seems to work well.)
Johannes acquired a crate to contain the Acromag setup and wiring, and installed a rail along the bottom panel so that the ADC units will be oriented vertically with the ehternet ports facing up. We briefly talkes about what the layout should be, and are thinking of using 2 rails, one for ADCs and one for DACs. We want to design a generic front panel to accept 25 pin D-Sub inputs and maybe also BNCs, which we can use for all the Acromag crates.
I got the epics session for the acromag to run on c1iscex and was able to access the channel values using caget on donatella. However, I get the following warning:
cas warning: Using dynamically assigned TCP port 48154,
cas warning: but now two or more servers share the same UDP port.
cas warning: Depending on your IP kernel this server may not be
cas warning: reachable with UDP unicast (a host's IP in EPICS_CA_ADDR_LIST)
It seems like there might be a way to assign a port for each unit, if this is a problem.
Also, c1iscex doens't have tmux; what's the best way to run the modbusApp and then detach? Right now I just left an epics session running in an open terminal.
We believe the optimal OSEM damping would use an input matrix diagonalized to the free swing modes of the optic, and an output matrix which drives the coils appropriately to damp these free swing modes. As was discovered, a free swinging optic does not necessarily have eigenmodes that match up perfectly with pitch and yaw, however in the current state the "TO_COIL" output matrix that determines the drive signals in response to the diagonlized sensor output also controls the drive signals for the oplevs, LSC/ASC, and alignment biases. So attempts to diagonalize the output matrix to agree with the input matrix have resulted in problems elsewhere. (See previous elog). So, we want to expand the "TO_COIL" matrices to treat the OSEM sensor inputs separately from the others.
Here are the channels we are planning to switch over from c1auxex to Acromag, and their current pin numbers on the existing VME boards.
C1:SUS-ETMX_UL_AIOut #C0 S0
C1:SUS-ETMX_LL_AIOut #C0 S1
C1:SUS-ETMX_UR_AIOut #C0 S2
C1:SUS-ETMX_LR_AIOut #C0 S3
C1:SUS-ETMX_Side_AIOut #C0 S4
C1:SUS-ETMX_OL_SEG1 #C0 S5
C1:SUS-ETMX_OL_SEG2 #C0 S6
C1:SUS-ETMX_OL_SEG3 #C0 S7
C1:SUS-ETMX_OL_SEG4 #C0 S8
C1:SUS-ETMX_OL_X #C0 S9
C1:SUS-ETMX_OL_Y #C0 S10
C1:SUS-ETMX_OL_S #C0 S11
C1:SUS-ETMX_ULPD #C0 S12
C1:SUS-ETMX_LLPD #C0 S13
C1:SUS-ETMX_URPD #C0 S14
C1:SUS-ETMX_LRPD #C0 S15
C1:SUS-ETMX_SPD #C0 S16
C1:SUS-ETMX_ULV #C0 S17
C1:SUS-ETMX_LLV #C0 S18
C1:SUS-ETMX_URV #C0 S19
C1:SUS-ETMX_LRV #C0 S20
C1:SUS-ETMX_SideV #C0 S21
C1:SUS-ETMX_ULPD_MEAN #C0 S12
C1:SUS-ETMX_LLPD_MEAN #C0 S13
C1:SUS-ETMX_SDPD_MEAN #C0 S16
C1:ASC-QPDX_S1WhiteGain #C0 S0
C1:ASC-QPDX_S2WhiteGain #C0 S1
C1:ASC-QPDX_S3WhiteGain #C0 S2
C1:ASC-QPDX_S4WhiteGain #C0 S3
C1:SUS-ETMX_ULBiasAdj #C0 S4
C1:SUS-ETMX_LLBiasAdj #C0 S5
C1:SUS-ETMX_URBiasAdj #C0 S6
C1:SUS-ETMX_LRBiasAdj #C0 S7
C1:LSC-EX_GREENLASER_TEMP #C0 S0 This appears to have the same pin as another channel-- is it not being used?
C1:SUS-ETMX_UL_ENABLE #C0 S0
C1:SUS-ETMX_LL_ENABLE #C0 S1
C1:SUS-ETMX_UR_ENABLE #C0 S2
C1:SUS-ETMX_LR_ENABLE #C0 S3
C1:SUS-ETMX_SD_ENABLE #C0 S4
C1:ASC-QPDX_GainSwitch1 #C0 S7
C1:ASC-QPDX_GainSwitch2 #C0 S8
C1:ASC-QPDX_GainSwitch3 #C0 S9
C1:ASC-QPDX_GainSwitch4 #C0 S10
C1:AUX-GREEN_X_Shutter2 #C0 S15
We set up the chassis in 1X7 today. Steve is ordering a longer 25 pin cable to reach. Until then the PSL diagnostic channels will not be usable.
I took data of the ETMX SUSPOS, SUSPIT and SUSYAW channels while driving each of the 4 face coils. I manually turned off all the damping except the side.
Excitation: I used white noise bandpassed from 0.4 to 5 Hz in order to examine the responses around the resonance frequencies. To avoid ringing things up too much, I started with a very weak drive signal and gradually increased it until it seemed to have an effect on the mirror motion by looking at the oplev signals/sensor RMS values on the SUS screen; it's possible I'll need to do it again with a stronger signal if there's not enough coherence in the data.
Finding the matrix: The plan is to estimate the transfer function of the coil drive signal with the sensed degrees of freedom (specified by the already diagonalized input matrix). This transfer function can be averaged around the resonance peak for each dof to find the elements of the matrix that converts signals to dof responses, (the "response matrix", which is the inverse of the output matrix). Each column of the response matrix gets normalized so that the degrees of freedom influence the drive signals in the right ratio.
I've attached a schematic for how we will connect the Acromag mosules to the slow channel I/O curently going to c1auxex. The following changes are made:
I looked into converting the QPD whitening switches for the X end to Acromag.
The plan from here:
To measure the modulation depth of the 29.5 MHz sideband, we plan to connect a bidirectional coupler between the EOM and the triple resonant circuit box. This will let us measure the power going into the EOM and the power in the reflection. According to the manual for the EOM (Newport 4064), the modulation depth is 13 mrad/V at a wavelength of 1000 nm. Before disconnecting these we will turn off the Marconi.
Hopefully we can be gentle enough that the EOM can be realigned without too much trouble. Before touching anything we'll measure the beam power before and after the EOM so we know what to match after.
If anyone has an objection to this plan, speak now or we will proceed tomorrow morning.
Rebooted c1iscaux, c1auxex and c1auxey which were all not reponding to telnet. The watchdogs for the ETMs were turned off and then I keyed all 3 crates. All slow machines are reponding to telnet now. Both green lasers locked to the arms so I didn't do any burt restore.
We set out to measure the 29.5 MHz power going to the EOM today but decided to start by looking at the output of the RF AM stabilizer box first. We wanted to measure the AM noise with a mixer, so we needed to know the power it was giving. We looked at the ouput that goes to the power combiner on the PSL table and found it was putting out only -2.0 dBm (~0.5 Vpp)! This was measured by taking a spectrum with the AG4395 and confirmed by looking on a scope.
To find out if this could be adjusted, we found an old MEDM screen (/opt/rtcds/caltech/c1/medm/c1lsc/master/C1LSC_RFADJUST.adl) and moved the 29.5 MHz EOM Mod Index Adjust slider while measuring the voltage coming in to the MOD CONTOL connection on the front of the AM stabilizer box. Moving the slider from 0 to 10 changes the input voltage linearly from -10 V to 10 V measured with a DMM at the cross-connects as we couldn't find an appropriate adapter for the LEMO cable. The 29.5 MHz modulation only appeared for slider values between 0 and 5, after which it abruptly shuts off. However, changing the slider value between 0 and 5 (Voltage from -10 to 0) does not change the amplitude of the output.
This seems like a problem; further investigation into the AM stabilizer box is neccessary. This DCC document outlines how to test the box, but we can't find a schematic. Since we don't have any mixers that can handle signals as small as -2 dBm, we gave up trying to measure the AM noise and will attempt to measure that and the reflection power from the EOM + resonant circuit once this problem has been diagnosed and fixed.
GV: After some digging, I found the schematic for the RF AM stabilization box (updated wiki and added it to the 40m document tree). According to it, there should be up to +22dBm of RF AM stabilized output to the EOM available, though we measured -2dBm yesterday, and could not vary this level by adjusting the EPICS voltage value. Neglecting losses in the cabling and the power combiner on the PSL, this translates to a paltry 0.178Vrms*0.6*8mard/Vrms ~ 0.85 mrad of modulation depth (gain at 29.5 MHz of the triple resonant circuit taken from this elog)... I think we need to pull this 1U chassis out and debug more thoroughly...
We looked at the RF AM stabilizer box to see if we could find out 1) Why the output power is so low, and 2) Why it can't be changed with the DC input "MOD CONT IN." Details to follow, attached is the annotated schematic from DCC document D000037.
We are not returning the box tonight so the PSL shutter remains closed.
[rana, gautam, lydia]
Today we looked at the schematics for the RF AM stabilizer box and decided that there were an unnecessary amount of attenuators and amplifiers cancelling each other out and adding noise. At the end of the path are 2 HELA-10D amplifiers which we guessed based on the plots for the B version would have an acceptable amount of compression if the output of the second one is ~27dBm. This means the input to the first one should be a few dBm. This should be achieved with as simple a path as possible.
This begged the question, do we need the amplitude to be stabilized at all? Maybe it's good enough already when it comes into this box from the RF distribution box. So I tried to measure the AM noise of the 29.5 MHz signal that usually goes into the AM stabilizer:
It seems like I'm getting mostly noise from the SR560. Maybe it would be better to use an SR785 to take data instead of DAQ, and then skip the SR560? At low frequencies it seems like the AM noise measurement may be actually meaningful. In any case, if the actual AM noise from the crystal is lower than any of these other noise sources, it means we probably don't need to stabilize the amplitude with a servo, which means we can simplify the AM stabilizer board considerably to just amplify what it gets to 27 dBm.
Here's what I'm planning to do to the RF AM stabilizer box. I'm going to take out several of the components along the path to the EOM (comments in green), including the dead ERA-4 and ERA-5 amplifiers, the variable attenuator which is controlled by a switch that can't be accessed outside the box, and the feedback path from the daughter board servo. I'm arranging things so that the output of the HELA-10 does not exceed the maximum output power.
I wasn't quite as sure what to do about the path to the ASC box (comments in blue). I talked with Gautam and he said this gets split equally between several singals, one of which goes to the LO of the demod board which expects -10 dBm and currently gets -12 dBm (can go up to -8 by turning switch). So maybe we don't actually want the signal to be anywhere near +27 dBm at the output. The plans for the box are here, it looks like +27 in will end up with +10 at each output, which is way more than what's currently coming out. But maybe this needs to be increased to match the other path?
Also we haven't measured the actual response of the variable attenuator U4 for various switch positions; it's the same model as the one I'm removing from the EOM path and that one had slightly different behavior for different switch positions than what the spec sheet says. Same goes for the HELA-10 units along this path: what is their actual gain? So perhaps these should be measured and then a single attenuator should be chosen to get the right output signal level. Alternatively it could just be left alone, if it is at an OK level right now. Advice on what to do here would be appreciated.
I'll work on the EOM path tonight and wait for feedback on the rest of it.
EDIT: Gautam pointed out that there's some insertion loss from the components I'll be removing that hasn't been accounted for. Also the plans have been updated to reflect that I'm replacing AT5 with a 1dB attenuator (from 6 dB).
I made some of the changes. Gautam and I will finish tomorrow.
While I was soldering the sharpest tip of the soldering iron (the one whose power supply shows the temperature) stopped working and I switched to a different one. Not sure how to fix this.
Do we want to replace all of the removed ERA's with 50 Ohm resistors, or just the one along the spare output path? I shorted one of them with a piece of wire and left all the others open.
I couldn't get one of the attenuators off (AT1, at beginning of ASC path). In trying I messed up the solder pad. Part of the connecting trace on the PCB board is exposed so we should be able to fix it.
Since the "stablizer box" doesn't really need to stabilize, it just needs to amplify, I decided to replace it with an off the shelf amplifier we already had, ZHL-2. I worked on getting it set up today, but didn't connect anything so that people have a chance to give some feedback.
So, I think the remaining thing to do is to connect the splitter to ASC out and to the line to the EOM, the +24V supply to the amplifier, and the 29.5 MHz input to the attenuator. I wanted to wait on this to get confiration that the setup is OK. Eventually we can put all of this in a box.
Also, I noticed that in the clear cabinet with the Sorensens next to this rack, the +24 V unit is not supplying any voltage and has a red light that says "OVP."
I tested the amplifier with the Agilent network analyzer and measured 19.5 dB of gain between 29 and 30 mHz. The phase only changed by 1 degree over this same 1 MHz span. Since everything seems to be in order I'll hook it up this afternoon, unless there are any objections.
I set everything up and connected it as shown on the block diagram attached to the previous entry, with the exception of the DC power. This is becuase there is no place open to connect to on the DIN rail where the DC power is distributed, so the +24V power will have to be shut off to the other equipment in 1X1 before we can connect the amplifier. (The amplifier is in 1X2, but the DC power distribution was more accessible in 1X1.) I also added 3 new +24 V clips with fuses despite needing only one, so next time we need to connect something new it's not such a hassle.
The RF distribution box where the 29.5 MHz signal originates should not be turned on until the amplifer has DC power. Since we may have a power interruption tomorrow, the plan is to wait until things are shut down in preparation, and then shut off anyhting else necessary before connecting the new clips on the rail to the existing ones.
To install the replacement amplifier, I did the following:
Still to be done:
I made a tentative front panel design for the newly installed amplifier box. I used this chassis diagram to place the holes for attaching it. I just made the dimensions match the front of the chassis rather than extending out to the sides since the front panel doesn't need to screw into the rack; the chassis is mounted already with separate brackets. For the connector holes I used a caliper to measure the feedthroughs I'm planning to use and added ~.2 mm to every dimension for clearance, because the front panel designer didn't have their dimensions built in. Please let me know if I should do something else.
The input and coupled output will be SMA connectors since they are only going to the units directly above and below this one. The main output to the EOM is the larger connector with better shielded cables. I also included a hole for a power indicator LED.
EDIT: I added countersinks for 4-40 screws on all the screw clearance holes.
Johannes, if you're going to be putting a front panel order in soon, please include this one.
Also, Steve, I found a caliper in the drawer with a dead battery and the screws to access it were in bad shape- can this be fixed?
This is already how it's hooked up. The hole on the from that says +24 V is for an indicator light.
The amplifier unit should use the three pin dsub connectors (3w3?) that we use on many of the other units for DC power, and preferably go through the back panel. You can leave out the negative pin, since you just need +24 and ground.
I installed the front panel today. While I had the box out I also replaced the fast decoupling capacitor witha 0.1 uF ceramic one. I made SMA cables to connect to the feedthroughs and amplifier, trying to keep the total lengths as close as possible to the cables that were there before to avoid destroying the demod phases Gautam had found. I didn't put in indicator lights in the interest of getting the mode cleaner operational again ASAP.
I turned the RF sources back on and opened the PSL shutter. MC REFL was dark on the camera; people were taking pictures of the PD face today so I assume it just needs to be realigned before the mode cleaner can be locked again.
I've attached a schematic for what's in the box, and labeled the box with a reference to this elog.
I pulled out the box and found the problem: the +24 V input to the amplifier was soldered messily and shorted to ground. So I resoldered it and tested the box on the bench (drove with Marconi and checked that the gain was correct on scope). This also blew the fuse where the +24 power is distributed, so I replaced it. The box is reinstalled and the mode cleaner is locking again with the WFS turned on.
Since I tried to keep the cable lengths the same, the demod phases shouldn't have changed significantly since the amplifier was first installed. Gautam and I checked this on a scope and made sure the PDH signals were all in the I quadrature. In the I vs. Q plot, we did also see large loops presumably corresponding to higher order mode flashes.
Walking over to the 1X1, I noticed that the +24V Sorensen that should be pushing 2.9A of current when our new 29.5MHz amplifier is running, was displaying 2.4A. This suggests the amplifier is not being powered. I toggled the power switch at the back and noticed no difference in either the MC locking behaviour or the current draw from the Sorensen.
This week, the other SURF students and I got acquainted with the caltech campus, LIGO 40m lab and the expectations of the SURF program. We went to a lot of safety meetings and lectures that established a framework for the jobs we will be doing over the course of the summer. I went on several tours of the 40m interferometer (one each with Jenne, Jamie and Steve) to get an overview of the layout and specifics of the setup. I read parts of R. Ward and A. Parameswaran's theses and Saulson's book in order to prepare myself and gain a broader understanding of the purpose of LIGO.
I also began working in Python this week, primarily graphing PSDs of data from the C1:SUS-ETMY_SENSOR_LR, C1:SUS-ETMY_SENSOR_LL, C1:SUS-ETMY_SENSOR_UR, and C1:SUS-ETMY_SENSOR_UL channels. I will eventually be using Python to generate the plots for the summary pages, so this is good practice. The code that I have been working on can be found in /users/elizabeth.davison/script5.py. Additionally, I have been going through the G1 summary pages and attempting to understand the plots available on them and the code that is available.
My plans for the upcoming week begin with modifying my code and potentially calibrating the channel data so that it is in units of length instead of counts. I will also access the code from the G1 pages and go over it in depth, hopefully gaining insight into the structure of the website.
I have been working on configuration of the Daily Summary webpages and have been attempting to create a "PSL health" page. This page will display the PMC power, the temperature on the PSL table and the PSL table microphone levels. Thus far, I have managed to make the extra PSL tab and configure the graph of the interior temperature, using channel C1:PSL-FSS_RMTEMP.
I have been attempting to make a spectrogram for one of the PMC channels, but there is an issue with the spectrogram setup, as Duncan Macleod noted in ELOG 6686:
"At the moment a package version issue means the spectrogram doesn't work, but the spectrum should. At the time of writing, to use the spectrum simple add 'plot-dataplot2'."
Because of this issue, I have also been trying to make the spectrogram plots work. Thus far, I have fixed the issue with one of the spectrogram plots, but there are several problems with the other four that I need to address. I have also been looking at the microphone channels and trying to make the plot for them work. I checked which microphone was on the PSL table and plotted it in matplotlib to make sure it was working. However, when I tried to incorporate it into the daily summary pages, the script stops at that point! It might simply be taking an excessively long time, but I have to figure out why this is the case.
(I am using channel C1:PEM-MIC_6_IN1_DQ, if this is blatantly wrong, please let me know!!)
The main point of this ELOG is that I have working test-daily summary pages online! They can be found here:
Also, if anyone has more requests for what they would like to see on the finalized summary pages site, please respond to this post or email me at: firstname.lastname@example.org
Over the past week, I have been focusing on the issues I brought up in my last ELOG, 6956. I spent quite a while attempting to modify the script and create my own spectrogram function within the existing code. I also checked out the channels on the PSL table for the PSL health page and produced a spectrogram plot of the PMC reflected, transmitted, and input powers, the PZT Voltage and the laser output power. When I was entering these channels into the configuration script, I came across an issue with the way the python script parses this. If there were spaces between the channel names (for example: C1:PSL-PMC_INPUT_DC, C1:PSL-PMC_RFPDDC... etc) the program would not recognize the channels. I made some alterations to the parsing script such that all white spaces at the beginning and end of the channels were stripped and the program could find them.
The next thing that I worked on was attempting to see if the microphone channels were actually stopping the program or just taking an extraordinarily long time. I tried running the program with shorter time samples and that seemed to work quite well! However, I had to leave it running overnight in order to finish. I am sure that this difference comes from the fact that the microphone channels are fast channels. I would like to somehow make it run more quickly, and am thinking about how best to do this.
I finally got my spectrogram function to work after quite a bit of trouble. There were issues with mismatched data and limit sets that I discovered came from times when only a few frames (one or two) were in one block. I added some code to ignore small data blocks like those and the program works very well now! It seems like the best way to get the right limits is to let the program automatically set the limits (they are nicely log-scaled and everything) but there are some issues that produce questionable results. I spent a while adding a colormap option to the script so that the spectrogram colors can be adjusted! This mostly took so long because, on Monday night, some strange things were happening with the PMC that made the program fail (zeros were being output, which caused an uproar in the logarithmic data limits). I was incredibly worried about this and thought that I had somehow messed up the script (this happened in the middle of when I was tinkering with the cmap option) so I undid all of my work! It was only when I realized it was still going on and Masha and Jenne were talking about the PMC issues that I figured out that it was an external issue. I then went in and set manual limits so that a blank spectrogram and redid everything.
The spectrogram is not operational and the colormap can be customized. I need to fix the problem with the autoscaled axes (perhaps adding a lower bound?) so that the program does not crash when there is an issue.
Yesterday, I spoke with Rana about what my next step should be. He advised me to look at ELOGs from Steve (6678) and Koji (6675) about what they wanted to see on the site. These gave me a good map of what is needed on the site and where I will go next.
I need to find out what is going on with the weather channels and figure out how to calibrate the microphones. I will also be making sure there are correct units on all of the plots and figure out how to take only a short section of data for the microphone channels. I have already modified the tab template so that it is similar to Koji's ELOG idea and will be making further changes to the layout of the summary pages themselves. I will also be working on having the right plots up consistently on the site.
The summary pages are now online (Daily Summary), and will eventually be found on the 40m Wiki page under "LOGS-Daily Summary". (Currently, the linked website is the former summary page site)
Currently, all of the IFO and Acoustic channels have placeholders (they are not showing the real data yet) and the Weather channels are not working, although the Weather Station in the interferometer room is working (I am looking into this - any theories as to why this is would be appreciated!!).
I am looking for advice on what else to include in these pages. It would be fantastic if everyone could take a moment to look over what I have so far (especially the completed page from July 23, 2012) and give me their opinions on:
1. What else you would like to see included
2. Any specific applications to your area of work that I have overlooked
3. What the most helpful parts of the pages are
4. Any ways that I could make the existing pages more helpful
5. Any other questions, comments, clarifications or suggestions
Finally, are the hourly subplots actually helpful? It seems to me like they would be superfluous if the whole page were updating every 1-2 hours (as it theoretically eventually will). These subplots can be seen on the July 24, 2012 page.
My email address is email@example.com.
Rana and I traced the cables that ran from c1pem1 to the Weather Station monitor. We found that the flat blue cable that is plugged into c1pem1 was not connected to the black cable from the Weather Station. We don't know why they are unplugged, but the Weather Station had been inactive since 2010. Rana plugged them back in (they are now connected via a sketchy connector that had its pins askew) and now the channels are outputting correct data! Everything else seems to be in good order and now I can use the data from the Weather Station for the summary pages!
This week, I made several modifications to the Summary page scripts, made preliminary Microphone BLRMS channels and, with Rana's help, got the Weather Station working again.
I changed the spectrogram and spectrum options in the Summary Pages so that, given the sampling frequency (which is gathered by the program), the NFFT and overlap are calculated internally. This is an improvement over user-entered values because it saves the time of having to know the sampling frequency for each desired plot. In addition, I set up another .sh file that can generate summary pages for any given day. Although this will probably not be useful in the final site, it is quite helpful now because I can go back and populate the pages. The current summary pages file is called "c1_summary_page.sh" and the one that is set up to get a specific day is called "liz_c1_summary_page.sh". I also made a few adjustments to the .css file for the webpage so that plots completely show up (they were getting cut off on the edges before) and are easier to see. I also figured out that the minute and second trend options weren't working because the channel names have to be modified to CHANNEL.mean, CHANNEL.min and CHANNEL.max. So that is all in working order now, although I'm not sure if I should just use the mean trends or look at all of them (the plots could get crowded if I choose to do this). Another modification I made to the python summary page script was adding an option to have an image on one of the pages. This was useful because I can now put requested MEDM screens up on the site. The image option can be accessed if, in the configuration file, you use "image-" instead of "data-" for the first word of the section header.
I also added a link to the final summary page website on the 40 meter wiki page (my summary page are currently located in the summary-test pages, but they will be moved over once they are more finalized). I fleshed out the graphs on the summary pages as well, and have useful plots for the OSEM and OPLEV channels. Instead of using the STS BLRMS channels, I have decided to use the GUR BLRMS channels that Masha made. I ELOGged about my progress and asked for any advice or recommendations a few days ago (7012) and it would still be great if everyone could take a look at what I currently have up on the website and tell me what they think! July 22 and 23 are the most finalized pages thus far, so are probably the best to look at.
This week, I also tried to fix the problems with the Weather Station, which had not been operational since 2010. All of the channels on the weather station monitor seemed to be producing accurate data except the rain gauge, so I went on the roof of the Machine Shop to see if anything was blatantly wrong with it. Other than a lot of dust and spiders, it was in working condition. I plan on going up again to clean it because, in the manual, it is recommended that the rain collector be cleaned every one to two years... I also cleared the "daily rain" option on the monitor and set all rain-related things to zero. Rana and I then traced the cabled from c1pem1 to the weather station monitor, and found that thy were disconnected. In fact, the connector was broken apart and the pins were bent. After we reconnected them, the weather station was once again operational! In order to prevent accidental disconnection in the future, it may be wise to secure this connection with cable ties. It went out of order again briefly on Tuesday, but I reconnected it and now it is in much sturdier shape!
The most recent thing that I have been doing in relation to my project has been making BLRMS channels for the MIC channels. With Jenne's assistance, I made the channels, compiled and ran the model on c1sus, made filters, and included the channels on the PEM MEDM screen . I have a few modifications to make and want to . One issue that I have come across is that the sampling rate for the PEM system is 2 kHz, and the audio frequencies range all the way up to 20 kHz. Because of this, I am only taking BLRMS data in the 1-1000 Hz range. This may be problematic because some of these channels may only show noise (For example, 1-3 and 3-10 Hz may be completely useless).
The pictures below are of the main connections in the Weather Station. This first is the one that Rana and I connected (it is now better connected and looks like a small beige box), located near the beam-splitter chamber, and the second is the c1pem1 rack. For more information on the subject, there is a convenient wiki page: https://wiki-40m.ligo.caltech.edu/Weather_Station
The summary pages can now be accessed from the "Daily Summary" link under LOGS on the 40 meter Wiki page.
Over the past week, I have continued refining the summary pages. They are now online in their final home, and can be easily accessed from the 40 meter Wiki page! (It can be accessed by the Daily Summary link under "LOGS"). I have one final section to add plots to (the IFO section is currently still only "dummy" plots) but the rest are showing correct data! I have many edits to make in order for them to be more intelligible, but they are available for browsing if anyone feels so inclined.
I also spent quite a while formatting the pages so that the days are in PDT time instead of UTC time. This process was quite time consuming and required modifications in several files, but I tracked my changes with git so they are easy to pinpoint. I also did a bit of css editing and rewriting of a few html generation functions so that the website is more appealing. (One example of this is that the graphs on each individual summary page are now full sized instead of a third of the size.
This week, I also worked with the BLRMS mic channels I made. I edited the band pass and low pass filters that I had created last week and made coherence plots of the channels. I encountered two major issues while doing this. Firstly, the coherence of the channels decreases dramatically above 40 Hz. I will look at this more today, but am wondering why it is the case. If nothing could be done about this, it would render three of my channels ineffective. The other issue is that the Nyquist frequency is at 1000 Hz, which is the upper limit of my highest frequency channel (300-1000 Hz). I am not sure if this really affects the channel, but it looks very different from all of the other channels. I am also wondering whether the channels below 20 Hz are useful at all, or whether they are just showing noise.
The microphone calibration has been something I have been trying to figure out for quite some time, but I recently found a value on the website that makes the EM172 microphones and has a value for their sensitivity. I determined the transfer factor from this sensitivity as 39.8107 mV/Pa, although I am not sure if all of the mics will be consistent with this.
Please check the summary pages out at the link below and let me know if there are any modifications I should make! All existing pages are up to date and contain all of the pages I have.
Questions, comments, and suggestions will be appreciated! Contact me at firstname.lastname@example.org
Over the past week, I have been working on my progress report and finalizing the summary pages. I have a few more things to address in the pages (such as starting at 6 AM, including spectrograms where necessary and generating plots for the days more than ~a week ago) but they are mostly finalized. I added all of the existing acoustic and seismic channels so the PEM page is up to date. The microphone plots include information about the transfer factor that I found on their information sheet (http://www.primomic.com/). If there are any plots that are missing or need editing, please let me know!
I also modified the c1_summary_page.sh script to run either the daily plots or current updating plots by taking in an argument in the command line. It can be run ./c1_summary_page.sh 2012/07/27
or ./c1_summary_page.sh now to generate the current day's pages. (Essentially, I combined the two scripts I had been running separately.) I have been commenting my code so it is more easily understandable and have been working on writing a file that explains how to run the code and the main alterations I made. The most exciting thing that has taken place this week is that the script went from taking ~6 hours to run to taking less than 5 minutes. This was done by using minute trends for all of the channels and limiting the spectrum plot data.
The summary pages for each day now contain only the most essential plots that give a good overview of the state of the interferometer and its environment instead of every plot that is created for that day.
I am waiting for Duncan to send me some spectrogram updates he has made that downsample the timeseries data before plotting the spectrogram. This will make it run much more quickly and introduce a more viable spectrogram option.
Today's Summary Pages can be accessed by the link on the wiki page or at:
Over the past week I have been continuing to finalize the daily summary pages, attempting to keep the total run time under half an hour so that they can be run frequently. I have had many hang ups with the spectrograms and am currently using second trends (with this method, the entire script takes 15 minutes to run). I also have a backup method that takes 3 minutes of data for every 12 minutes, but could not implement any interpolation correctly. This might be a future focus, or the summary pages could be configured to run in parallel and full data for the spectrograms can be used. I configured Steve's tab to include one page of images and one page of plots and fixed the scripts so that it corrects for daylight savings time (at the beginning of the running, the program prints 'DST' or 'Not DST').
Right now, I am focusing on making coherence plots in a spectrogram style (similar to the matlab 'coh_carpet' function) and a spectrogram depicting Gaussianity (similar to the plots made by the RayleighMonitor). I have also been working on my final paper and presentation.
I just wrote a short description of how to run the daily summary pages and the configuration process for making changes to the site. It can be found in /users/public_html/40m-summary and is named README.txt. If I need to clarify anything, please let me know! The configuration process should be relatively straightforward, so it will be easy to add plots or change them when there are changes at the 40 meter.
[Koji, Jenne, Manasa, Annalisa, Rana, Nic]
Trying to take an image or movie of the ETMY Transmon cam, we got instead this attached image.
I think it is just some scattered green light, but others in the control room think that it is a message from somewhere or someone...
It is not an angel, it is clearly a four leaf clover (also known as "quadrifoglio"). It is very rare, it brings good luck!
Very nice!! I was wondering, shouldn't the driving matrix be such that MICH pushes on SRM as well?
I uninstalled gstreamer-devel and gst-plugins-base-devel on Rosalba. Here is the command I ran:
$ sudo yum remove gstreamer-devel gstreamer-plugins-base-devel
Actually, I had installed these myself a few days earlier, before I knew that I should be recording such changes in the elog. I'm sorry!
I installed the package x264-devel on allegra.martian. This package provides headers and libraries for the popular h264 video codec. I am going to use this in the GStreamer streaming media server on Allegra.
I installed nds2-client-devel on rossa using the following command:
$ sudo yum install nds2-client-devel
I installed git on rossa using:
$ sudo yum install git
I installed the following packages on rossa:
numpy, ipython, matplotlib, python-matplotlib
I installed the Python bindings for sqlite on Allegra using
$ sudo yum install python-sqlite python-sqlite2
I installed the following packages on Graphviz in order to support visualization of GStreamer pipeline graphs: