I received an e-mail from Alex indicating he found the testpoint problem and fixed it today:
Quote from Alex: "After we swapped the frame builder computer it has reconfigured all device files and I needed to create some symlinks on /dev/ to make tpman work again. I test the testpoints and they do work now."
Alex and Steve,
SunFire x4600 ( not MEGATRON 2 , it is fb40m2 ) and JetStor ( 16 x 1 TB drives ) were installed on side rails at the bottom of 1Y6
We cleaned up the fibres and cabling in 1Y7 also
I did a simulation of linear quadratic gaussian (LQG) controller applied to local damping. The cost function was frequency shaped to have a peak at 1 Hz. This technique prevents the controller from adding sensor noise at high and very low frequencies.
Noise was simulated to have 1/f spectrum (seismic) multiplied by stack with a resonance at 4 Hz with Q=5.
New Lumitek IR Sensor Cards are here. We got 2 pieces of Q-11-T (2" x 2"), 2 pieces of Q-11-T (0.75" x 0.75") and one Q-11 (4" x 5")
1, Vacuum envelope grounds must be connected all times! After door removal reconnect both cables immediately.
2, The crane folding had a new issue of getting cut as picture shows.
3, Too much oplev light is scattered. This picture was taken just before we put on the heavy door.
4, We were unprepared to hold the smaller side chamber door 29" od of the IOC
5, Silicon bronze 1/2-13 nuts for chamber doors will be replaced. They are not smooth turning.
Can we get some panel mount FC/APC connectors and put them on a box? Then we could have the whole setup inside of a box that is filled with foam and sits outside the PSL hut.
[Steve, Diego, Manasa]
Since the beatnotes have disappeared, I am taking this as a chance to put the FOL setup together hoping it might help us find them.
Two 70m long fibers now run along the length of the Y arm and reach the PSL table.
The fibers are running through armaflex insulating tubes on the cable racks. The excess length ~6m sits in its spool on the top of the PSL table enclosure.
Both the fibers were tested OK using the fiber fault locator. We had to remove the coupled end of the fiber from the mount and put it back in the process. So there is only 8mW of end laser power at the PSL table after this activity as opposed to ~13mW. This will be recovered with some alignment tweaking.
After the activity I found that the ETMY wouldn't damp. I traced the problem to the ETMY SUS model not running in c1iscey. Restarting the models in c1iscey solved the problem.
AP Armaflex tube 7/8" ID X 1" wall insulation for the long fiber in wall mounted cable trays installed yesterday.
The 6 ft long sections are not glued. Cable tied into the tray pressed against one an other, so they are air tight. This will allow us adding more fibers later.
Atm2: Fiber PSL ends protection added on Friday.
Alex, Gautam and Steve,
Single mode fiber 50m long is layed out into cable tray that is attached to the beam tube of the Y arm.
It goes from ETMY to PSL enclosure. It is protected at both ends with " clear- pvc, slit corrugated loom tubing " 1.5" ID
The fiber is not protected between 1Y1 and 1Y4
I positioned the fiber loaded protecting tubing and anchored them so they can do their job.
However, the area needs a good clean up.
What I did today.
1. Collimation of a beam.
2. Coupling of the IR light at the ETMY table to a fibre.
A Matlab script to calculate Wiener filter coefficients and convert fir to iir is ready. Input is a file with zero mean witness and desired signals, output is a Foton zpk command to specify iir filter.
The plot shows comparison of offline fir , iir and online iir filtering. Spectrum below 4 Hz is still oscillating due to acoustic coupling, this is not a filtering effect. At 1 Hz actuator is badly compensated, more work should be done. Other then that online and offline filtering are the same.
We decided to write a script that will check online filters for digital noise. One method can be implemented using the following algorithm:
Restriction: Single precision filter internal variables must be checked for overflows.
I applied this method to filtering a 1 Hz sine wave with a notch filter. Precise output should also be a 1 Hz wave => at other frequencies we see noise => digital noise spectrum should coincide with filter output. The plot shows the method worked out for this example.
Using this method I estimated digital noise of butter("LowPass", 2, 0.001) applied to white noise. Sampling frequency was 16 kHz.
The script estimates digital noise produces by online filters. First version of Matlab files and complied c files are in scripts/digital_noise directory.
Algorithm for 1 filter bank (max number of filters = 10):
More details on (2)
Often DQ channels have reduced sampling rate. In this case the script will upsample data adding zeros.
AI filter is not applied. But in the end only the frequency range (0, DQ RATE / 2) is analyzed.
More details on (3):
_SW2R channel value is the sum of the following numbers:
Note: as for now Matlab script assumes that input, output and decimation filters are switched ON and there are no turned ON filter switches that do not correspond to any filters
More details on (5)
Digital noise using double precision is estimated by extrapolation of digital noise with single precision. The last is calculated by subtracting outputs of the filters with single and double precision. Then this noise is multiplied by 3 * 10-7.
This extrapolation number was achieved by printf tests of the number 0.123456789012345678 with single and double precision on C. Using type 'float' variables 10 significant numbers show up, using type 'double' - 17.
I also did 'calibration tests' to achieve extrapolation number - signal was filters with an aggresive low-pass filter. At high frequencies filter output spectrum is flat => digital noise amplitude must be the same. The plot shows GUR1_X channel filtered with low-pass chebyshev type 1 filter.
However, extrapolation number is not the same for all cases. In the following example of analyzing BS_SUSPOS filter bank using extrapolation 3 * 10-7 we get noise that is slightly overestimated. In some other examples we need to take a larger number. But in average, I think, this is a good approximation.
To avoid extrapolation problem we can use long double precision (~19 digits). I was able to do this with gcc compiler. However, in mex compiler using long double in filter calculations, I do not get any better precision then using double precision. I'll think more about it.
Online filter diverges. I did offline simulations with current c-code. Offline filter also diverges, even in the simplest case
witness = randn(1e6, 1); target = witness + 0.01*randn(1e6, 1);
I tried to create a new implementation of FXLMS algorithm as a c code. Then with this c code I did offline filtering with MCL and GUR signals and compared the error signals depending on the length of the filter.
One can see the code at the svn
adaptOnline - start here and choose algorithm
adaptive_filtering - Matlab implementation of AF
current_version.c - current version of the Filter (Matt's)
fxlms_filter.c - new version of the FXLMS filter
oaf.c - agent between Matlab and C (edited Matt's file)
Data samples can be found at nodus /users/den/wiener_filtering/data
I say just fix the clipping. Don't worry about the PRM OSEM filters. We can do that next time when we put in the ITM baffles. No need for them on this round.
The LSC time had gone too high. I deleted ~20 filters and rebooted. CPU time came down to 50 usec.
The filters all looked like old trash to me, but its possible they were used.
I didn't delete anything from the DARM, CARM, etc. banks but did from the PD and TM filter banks. You can always go back in time by using the
All fine, except ITMX_sensor_UL's 60 counts deep hoop for an hour.
I made sketches of the final setup. There will be a box in the rack that contains both the heater circuit and the temperature sensor boards. One of them is in the loop while the other isn't. Instead of having many cables leading to the can, there will only be these three, though they can be made into a single wire. It will be connected to the can through a D-9 connector. The second attachment is what will be inside of the box, with all the major wires and components labeled.
Edit: I've canged the layout to (hopefully) make the labels easier to read. I've also added in a cable to the ADC that reads out the voltage across the 1 ohm resistor. I also attached the circuit diagrams for the heater circuit and the temperature sensors. The one for the heater circuit was made by Kevin and I used the same design, except I have LM7818 and LM7918, since the 15V ones were not available at the time I made the circuit.
In addition, all the wires leading to the can will all be part of one bundle of wires (I didn't clearly indicate it as such). There will be a total of 6 wires: two are needed for the wire to supply power to the heater and will have a LEMO connector on the rack end and two are needed for each temperature sensor, which will be attached to the board directly on the rack end.
Also, we don't need two voltage regulators for each temperature circuit. We can just have one of each of LM7815 and LM7915 to supply +/- 15V to the boards.
I've updated the sketches and added in front panels for the seismometer block and the 1U panel (attachments 3 and 4). There was an issue when it came to the panel on the block because the hole is only big enough for the cable that already exists there and there is no space to add in the D-9 connector. Not quite sure how to resolve this issue. Attachment 7 is the current panel on the seismometer block. Attachments 5 and 6 are the updated temperature circuit and the heater circuit.
The boxes will be located in the short racks at EX and EY to minimize cable length.
I've attached the final sketch for the panel on the granite block.
I've attached a sketch of how the panel will be mounted. We should make a small rectangular box that would raise the panel from the block by 1 cm or so to allow the cables to fit into the hole in the block without getting bent. It also has to be airtight so maybe having a thin layer of rubber between the mount and block would be good.
I've added in the dimensions to my sketch.
It seems like placing the two connectors right next to each other would allow both cables to just barely go through the hole in the block.
Can you please add dimensions to the drawing, so we can see if things fit and what the cable lenghts need to be?
For the panel on the granite slab, we should use a thinner piece of metal and mount it with an offset so that the D-sub cable can be fished through the hole in the slab. The hole is wide enough for 2 cables, but not 2 connectors.
since we're just going from the short rack (not the tall rack) to the seismometer, can't we use a cable shorter than 45' ?
the panel should be completely replaced like I described. We don't want to try to squeeze it in artificially and torque the wires. It just needs to be separated from the slab by a few more cm.
If we lay the cable along the floor then it should be around 6' to the current setup and about 20' to the actual seismometer.
Edit: 16 gauge wire should be good.
Attached is a 8-day minute trend of the heater control signals, as well as the in-loop temperature sensor (which underestimates the true fluctuations; we really need an out-of-loop sensor attached to the can or seismometer).
You can see that since the last tuning (on the 13th), its been stable at the set point of 39 C with 8.5 - 10 W of heating power. Need to add the PID loop settings (all the sliders on the MEDM screen) to the frames so that we can help in diagnosing. Also, fix the spelling of "Celcisususs".
(Just a quick report)
The fine alignment of the ABSL laser injection was successfully done.
I was able to see the DRMI fringings at the AS camera. The ABSL beam is injected from the AS port, therefore what I saw on the camera was the reflection back from the interferometer.
(Things to be done)
- A beat-note setup on the PSL table.
- Refinement of the mode matching. The beam spot on the AS camera is a bit bigger, so I should more tightly focus the injected beam.
- Fine alignments will be done tomorrow
I did a fine alignment on the Y end green setup. The green light became able to be locked again.
The alignment is finished after the realization that the 3rd steering mirror had to be adjusted too.
Since I am finishing my job at the lab, I have stored all my electronics in a box (attachment 1) and placed it under the table in the control room where some other electronics are stored. The box contains the heater circuit box, two temperature sensor boards, one temperature sensor, a short power cable and +/- 15V supply cables. In the lab I left the wires for the current setup and tied them down to the wall so that they aren't in the way (attachment 2). I left the can as is and the other temperature sensor is still attached to the inside of the can. I have labeled the wires going from the sensor as 'in' and 'out'. I've also left the wires for the heater there as well (attachment 3). I turned off the PID control and deactivated the tmux session on megatron.
Thanks to Rana and the LIGO team for giving me the opportunity to work at the 40m on this project with the seismometer.
Pasadena fire marshal inspected the lab today. No violation was found.
Fire alarm went off several minutes ago. Talked to security and they said there was no fire. It beeped twice again just now. No one has been working on the IFO today.
The fire alarm came on around 15:05 for about 2-3 minutes. We all left the lab and counted heads. I called Paul Mackel x2646 (cell 626/ 890- 3259) at Fire Protection Services. He said that this alarm test was planned and we should of got an email notice. Perhaps I missed that notes.
We just had fire alarm trigged avacuation of the 40m lab.
It turned out that the CES building second floor sensor caused this action.
The fire department weighted and pressure checked our units today. Surprisingly they found one powder filled can. We can only use HALON gas in the lab.
We had fire alarm tests and evacuation drills at 1:30pm yesterday. All flashers and horns are functioning unbearably loud and bright including clean assembly room.
I think rana did some more changes to this workstation to make it useful for commissioning activities - but the MEDM screens were still white blanks. The problem was that the firewalld wasn't disabled (last two steps of the KThorne setup wiki). I disabled it. Now donatella can run MEDM, ndscope and StripTool. DTT doesn't work to get online data because of a "Synchronization Error", I'm not bothering with this for now. I think Kruthi successfully demonstrated the fetching of offline data with DTT.
Recommended correction list:
1, refill- upgrade first aid boxes
2, maintain 18" ceiling to bookshelf clearance so the ceiling fire sprinklers are not blocked: room 101
3, label chilled water supply & return valves in IFO room
4, calibrate bake room hoods annually
5, update safety sign at fenced storage
40m still to do list:
1, clean and measure all safety glasses
2, annual crane inspection is scheduled for 8am March 19, 1013
3, make PSL encloser shelf earthquake proof
Do you see something that is not safe? Add it to this list please.
Restocked First Aid Kits Location:
Main entrance, room 100
Drill press - above N2 cylinders, room 103
Control room, next to fire extinguisher, room 102
Vertex-north wall, IFO room 104
ETMY - right on ends light switches, IFO room 104_ east end
ETMX - on vertical I-beam of crane, IFO room 104_south end
Behind 1X3 Rack, on south wall - under instrument breakers panel PC-1, IFO room 104
Last thing remaining to be fixed from 2013 Safety Audit:
replace book shelf with 83" height
In order to verify our theory about coherence corruption in linear systems due to the line
if((new_hist < 1e-20) && (new_hist > -1e-20)) new_hist = new_hist<0 ? -1e-20: 1e-20;
in the /opt/rtcds/caltech/c1/core/release/src/include/drv/fm10Gen.c in the iir_filter function I've changed -20 to other numbers and watched at the coherence input and output of the digital filter cheby1("LowPass", 3, 0.1, 0.5)cheby1("LowPass", 6, 1, 1.5). The sampling rate was 2K. The frequency responce of the filter presented in this figure.
The next plot shows psd and coherence of the signal for different numbers in the if-statement line : 1e-20 , 1e-25, 1e-100.
We can see that for present value coherence between input and output signals is small even for low frequencies. The psd of the output signal is also corrupted because at low frequencies it should have the same psd as input signal. For 1e-25 and 1e-100 we can see that coherence is close to 1 at low frequencies so if-statement does not work and we have a first order transition from bad to good filter performance with discontinious jump of coherence.
However, for 1e-25 and 1e-100 data is still corrupted by the round-off error. Lack of coherence for high frequencies can be explained by the fact that dtt tools use single precision for data analysis and output is too small to plot a right coherence. But the coherence is also not precisely 1 for low frequencies. Actually, it is 0.99 for this aggresive filter. We use double precision in the real-time code but still for such kinds of filters round-off error is present. As wrote Daniel Sigg for Cheby filter: "You need a lot more digits than you may naively suspect. In the 8th order example, the output of each SOS is amplified by ~106. This regardless of the fact that the coefficients are all of order 1. If you require a level of 10-3 attenuation in the stop band, you would have lost 9 digits already. Then, add the fact that you have to do of order 104 subtractions to get from 16kHz to 12Hz, loosing another ~2 digits. On top, the high Q section is probably 10 worse than the others and you lost 12 digits. In a real example this may stack up even worse."
Next we need to figure out what effects does round-off error introduce in the performance of the interferometer.
Pumpdown 75 - Maglev - day 12
Precondition: 66 days at atm, installed TIP-TILTs with coils that replaced PZT-Jena input steering
need to vary start/stop times in fit to test for systematics
Pasadena got 0.2" of rain on Saturday. Temperatures were high with high humidity since than.The ants were back in the Control room east side benches.
We have started using TERRO Liquid Ant Baits in January 2015 This worked very well to this point.
Tree new packages were opened yesterday and the ants are gone.
We can conclude that these baits must be replaced after 6 mounts.
The liquid baits contains BORAX and it is safe.
We found that the vertex watchdogs were not correctly running.
After I powercycled c1susaux, the problem was fixed successfully.
The symptom: the watchdogs didn't disable the coil signal even when PD_VAR signals went larger than the threshold values PD_MAX_VAR.
Also we replaced the label by the correct name "C1SUSAUX" on a tag which was tied to the front end machine mounted on the new 1X5 rack.
[Valera / Kiwamu]
It was because of a loose connection. Pushing the connector solved the issue.
We really have to think about making reliable connections and strain reliefs.
Yesterday we found that MC3 OSEM LL PD did not have a sensible signal - the readback was close to zero and it was making MC move around. I disabled the PD LL so that the damping is done with just three face plus side PDs. There still no signal from MC3 LL PD today. It needs debugging.
We are currently working on getting rid of "white stuff" in MEDM screens.
Today, we fixed OPLEV stuff, MCL filters, and time stamps.
What we did:
1. Plugged in OPLEV cables to ADC2. (See this wiki page for wiring)
2. Connected ADC2 and OPLEV in Simulink model and fixed MEDM screens for OPLEVs (Attached #1).
3. Put MCL filters for BS,ITMX,ITMY,PRM,SRM.
They don't need them, but just for getting rid of "white stuff."
They are connected to the ground, so the outputs are always 0.
4. Fixed "TIME_STRING"s in MEDM screens so that they show current time correctly.
You only need to put text monitor with channel "C1:FEC-DCU_NODE_ID_TIME_STRING" into master files(DEFAULTNAME things) and run generate_master_screens.py.
It will automatically sets DCU ID correctly!! (Great work, Joe!)
See this wiki page for more info on making MEDM screens.
5. Checked OPLEV for MC2 by pointing a laser pointer to QPD. (For MC2, OPLEV is just a transmission beam position monitor)
Each quadrant looked like they are connected to the right channel numbers.
- figure out what C1:SUS-NAME_MODE_SW1 does and fix
- fix Whitening, Dewhitening ON/OFF button in main MEDM screens, so that they switch every channels' filters
- make a new screen for MC (like the old one C1IOO_ModeCleaner.adl)
- create a new mark for new MEDM screens