40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
  40m Log, Page 326 of 335  Not logged in ELOG logo
ID Date Author Type Categoryup Subject
  4498   Thu Apr 7 13:12:23 2011 KojiHowToVIDEOVideo switching tip

Long time ago, I looked at the manual of the video switcher.
http://media.extron.com/download/files/userman/Plus_Ultra_MAV_C.pdf
Here is the summary. This will be the basic of the more sophisticated switching program which may have GUI.

In principle, you can manually control the matrix via telnet. At the console machines, you can connect to the matrix using telnet

telnet 192.168.113.92

This opens TCP/IP port 23 of the specified machine. You will receive some messages.
Then type some command like:
--------------------

  • 1*2!       (connect input#1 to output#2)
  • 1,           (save the current setting into preset1)
  • 1.           (restore the setting from preset1)

--------------------

Basicaly that's all. There are many other features but I don't think we need them.

We can create a simple program with any of the language as any of the language has the capability of the TCP/IP connection.
e.g. C, Perl, Python. Tcl/Tk
Any of them are fine.

Now what we have to think about is how to implement the interface in the epics screen (or whatever).
It needs some investigation how the people is thinking as the ideal interface.
But, first of all, you should make the above three operations available as a simple UNIX command like:

videoswitch -i 192.168.113.92 1 2
videoswitch -i 192.168.113.92 -store 1
videoswitch -i 192.168.113.92 -recall 1
(There is no such command yet. These are showing what it should be!)

This can be done by a single day work and our life will be much better.

  4529   Fri Apr 15 02:30:24 2011 KojiHowToVIDEOVideo switching tip

I have made a small python script to handle the video matrix.

It is too far from the perfection, but I release it as it is already useful in some extent.

The script is in the /cvs/cds/rtcds/caltech/c1/scripts/general directory.

usage:

videoswitch.py in_ch_name out_ch_name

in_ch_name is one of the followings

MC2F, IFOPO, OMCR, FI, AS_Spare, ITMYF, ITMXF, ETMYF, ETMXF,
PMCR, RCR, RCT, PSL_Spare, PMCT, ETMXT, MC2T, POP, IMCR, REFL,
MC1F, SRMF, AS, ETMYT, PRM, OMCT, Quad1, Quad2, Quad3

out_ch_name is one of the followings

Mon1, Mon2, Mon3, Mon4, Mon5, Mon6, Mon7,
ETMY, MC1, PSL1, PSL2, ETMX, MC2, CRT9,CRT10,Projector,
Quad1_1, Quad1_2, Quad1_3, Quad1_4,
Quad2_1, Quad2_2, Quad2_3, Quad2_4,

Quad3_1, Quad3_2, Quad3_3, Quad3_4

  4546   Wed Apr 20 20:42:55 2011 kiwamuUpdateVIDEOtoday's video session

[Steve / Suresh / Kiwamu]

90 % of unused video cables have been removed.

Still a couple of video cables are floating around the video MUX. They will be removed in the next week's session.

DSC_2931_ss.jpg

DSC_2938_ss.jpg

 

  5265   Thu Aug 18 22:24:08 2011 jamieOmnistructureVIDEOUpdated 'videoswitch' script

I have updated the 'videoswitch' program that controls the video MUX.  It now includes the ability to query the video mux for the channel mapping:

controls@pianosa:~ 0$ /opt/rtcds/caltech/c1/scripts/general/videoswitch -h
Usage:
videoswitch [options] [OUT]      List current output/input mapping [for OUT]
videoswitch [options] OUT IN     Set output OUT to be input IN

Options:
  -h, --help            show this help message and exit
  -i, --inputs          List input channels and exit
  -o, --outputs         List output channels and exit
  -l, --list            List all input and output channels and exit
  -H HOST, --host=HOST  IP address/Host name
controls@pianosa:~ 0$

  6991   Thu Jul 19 02:14:37 2012 JenneUpdateVIDEOMade a video gui

I learned a little bit of python scripting while looking at the videoswitch script, and I made a video medm screen. 

Each monitor has a dropdown menu for all the common cameras we use (medm only lets you put a limited # of lines on a dropdown menu...when we want to add things like OMCR or RCT, we'll need to add another dropdown set)

Each monitor also has a readback to tell you what is on the TV.  So far, the quads only say "QUAD#", not what the 4 components are. 

I put a set of epics inputs in the PEM model, under a subsystem with top-names VID to represent the different monitors.  The readbacks on the video screen look at these, with the names corresponding to the numbers listed in the videoswitch script.  The videoswitch script now does an ezcawrite to these epics inputs so that even if you change the monitors via command line, the screen stays updated.

For example, since MC2F's camera is plugged in to Input #1 of the video matrix, if you type "./videoswitch MON1 MC2F", the script will write a "1" to the channel "C1:VID-MON1", and the screen will show "MC2F" in the Mon1 cartoon.

This required a quick recompile of the PEM model, but not the framebuilder since these were just epics channels.

There is also a dropdown menu for "Presets", which right now only include my 2 arm locking settings.

All of the dropdowns just call an iteration of the videoswitch script.

  7020   Tue Jul 24 18:33:12 2012 YaakovUpdateVIDEOCentering the MCR camera

Jenne and I centered the MCR camera on the AP table.

We moved the camera as far as it could go on its mount without shifting its screws, and adjusted the optic that the camera looks at for the rest of the way.

  7026   Wed Jul 25 11:41:00 2012 YaakovUpdateVIDEOCentering the MCR camera

Quote:

Jenne and I centered the MCR camera on the AP table.

We moved the camera as far as it could go on its mount without shifting its screws, and adjusted the optic that the camera looks at for the rest of the way.

 The spot was still off center on the quad display in the control room, so I re-recentered it today.

  135   Wed Nov 28 19:02:41 2007 AndreyBureaucracyWIKI-40M UpdateNew WIKI-40M page describing Matlab Suspension Modeling

I created the WIKI-40m page with some details about my today's talk on the 40-m lab meeting.

The address is:

http://lhocds.ligo-wa.caltech.edu:8000/40m/Modeling_of_suspensions

(or you can go to the main page, http://lhocds.ligo-wa.caltech.edu:8000/40m/ , and click on the link "Modeling of suspensions").

The WIKI-40m page describes my transfer functions and contains the pdf-file of my presentation.
  219   Wed Jan 2 11:38:56 2008 tobinSummaryWIKI-40M Updatewiki spam
Our wiki keeps getting spammed. It turns out that you can upload attachments without a password, which is a bug. I'll ask David Barker whether there's a fix for this.
  1941   Tue Aug 25 03:30:23 2009 YoichiSummaryWIKI-40M UpdateGreen lock and phase noise
While Koji and I were discussing about the green laser lock, we wondered if the common motion of the cavity mirrors,
which won't be suppressed by the green laser servo, will cause any problem to the locking.

Since the common motion of the cavity mirrors is equivalent to the change of the path length from the laser to the
input mirror, it will show up as a phase noise in the error signal.
Unfortunately, since we inject the green laser from the end mirror, this phase noise has opposite sign for the
PSL and the green laser.

I calculated the magnitude of the phase noise using an extremely rough estimate of the common motion of the mirrors.
It is explained in the 40m wiki.
http://lhocds.ligo-wa.caltech.edu:8000/40m/Upgrade_09/GreenLock

The result plot is attached.
(Probably the seismic noise I used is an over estimate.)
  2127   Wed Oct 21 11:41:29 2009 ZachUpdateWIKI-40M UpdatePSL Table Diagram wiki entry

 I made a wiki entry for the PSL table diagram under the PSL directory on the 40mHomePage. I tried to use the ImageLink macro to use a resized (smaller) version of the diagram as a link to the full image, which it is designed to do if there is no target given, but it didn't seem to work. Instead, I had to create a second page that had the full-sized diagram, and I used ImageLink with a smaller version to link to that page.

The inventory that is shown is clearly incomplete. Part of this is due to the fact that many labels were either missing or impossible to read without touching stuff. For those components with labels missing, I tried to infer what they were to the best of my knowledge, but I wasn't able to for all of them. In true wiki spirit, everyone is encouraged to fill in any additional information they might have on these components. 

  2128   Wed Oct 21 13:07:54 2009 KojiUpdateWIKI-40M UpdatePSL Table Diagram wiki entry

http://lhocds.ligo-wa.caltech.edu:8000/40m/PSL_Table_Diagram

Thanks. I love this. Could you also put the original file that is editable for future modification by anyone?

Quote:

 I made a wiki entry for the PSL table diagram under the PSL directory on the 40mHomePage. I tried to use the ImageLink macro to use a resized (smaller) version of the diagram as a link to the full image, which it is designed to do if there is no target given, but it didn't seem to work. Instead, I had to create a second page that had the full-sized diagram, and I used ImageLink with a smaller version to link to that page.

The inventory that is shown is clearly incomplete. Part of this is due to the fact that many labels were either missing or impossible to read without touching stuff. For those components with labels missing, I tried to infer what they were to the best of my knowledge, but I wasn't able to for all of them. In true wiki spirit, everyone is encouraged to fill in any additional information they might have on these components. 

 

  2129   Wed Oct 21 15:07:45 2009 AlbertoUpdateWIKI-40M UpdatePhotodiodes' configuration for the Upgrade

I uploaded on the Wiki (here) the results of an inventory over our current PDs, a list of the new ones that we're going to need for the new control scheme.

  2133   Thu Oct 22 15:44:16 2009 ZachUpdateWIKI-40M UpdateMOPA diagram

 I have updated the PSL Diagram wiki page to include MOPA. As with the PSL diagram, clicking the photo on the main page takes you to a larger image. The inventory is pretty meager as I didn't have time to sit and read labels (if indeed there are any). I will look through the documentation at the 40m to see if there is a record of what is there. Again, if you know something, please amend the list!!

http://lhocds.ligo-wa.caltech.edu:8000/40m/PSL_Table_Diagram

  2134   Thu Oct 22 15:49:29 2009 ZachUpdateWIKI-40M UpdatePSL Table Diagram wiki entry

Quote:

http://lhocds.ligo-wa.caltech.edu:8000/40m/PSL_Table_Diagram

Thanks. I love this. Could you also put the original file that is editable for future modification by anyone?

Quote:

 I made a wiki entry for the PSL table diagram under the PSL directory on the 40mHomePage. I tried to use the ImageLink macro to use a resized (smaller) version of the diagram as a link to the full image, which it is designed to do if there is no target given, but it didn't seem to work. Instead, I had to create a second page that had the full-sized diagram, and I used ImageLink with a smaller version to link to that page.

The inventory that is shown is clearly incomplete. Part of this is due to the fact that many labels were either missing or impossible to read without touching stuff. For those components with labels missing, I tried to infer what they were to the best of my knowledge, but I wasn't able to for all of them. In true wiki spirit, everyone is encouraged to fill in any additional information they might have on these components. 

 

 Do you mean the diagram or the inventory? The diagrams are online as attachments (small versions on the main "PSL Table Diagram" page and large versions on the linked pages). The inventory is easily editable on the wiki itself. It's just rendered in table form using the CSV parse utility for "comma-separeted values" (though you actually need to use semicolons, for reasons unknown).

  2135   Thu Oct 22 21:58:26 2009 KojiUpdateWIKI-40M UpdatePSL Table Diagram wiki entry

Diagram. I don't want to say PNG is an editable format for this purpose...
You have the PPT, PDF or any drawing format to create this diagram.

Quote:

http://lhocds.ligo-wa.caltech.edu:8000/40m/PSL_Table_Diagram

Thanks. I love this. Could you also put the original file that is editable for future modification by anyone?

 Do you mean the diagram or the inventory? The diagrams are online as attachments (small versions on the main "PSL Table Diagram" page and large versions on the linked pages). The inventory is easily editable on the wiki itself. It's just rendered in table form using the CSV parse utility for "comma-separeted values" (though you actually need to use semicolons, for reasons unknown).

 

  2136   Thu Oct 22 23:14:54 2009 ZachUpdateWIKI-40M UpdatePSL Table Diagram wiki entry

Quote:

Diagram. I don't want to say PNG is an editable format for this purpose...
You have the PPT, PDF or any drawing format to create this diagram.

Quote:

http://lhocds.ligo-wa.caltech.edu:8000/40m/PSL_Table_Diagram

Thanks. I love this. Could you also put the original file that is editable for future modification by anyone?

 Do you mean the diagram or the inventory? The diagrams are online as attachments (small versions on the main "PSL Table Diagram" page and large versions on the linked pages). The inventory is easily editable on the wiki itself. It's just rendered in table form using the CSV parse utility for "comma-separeted values" (though you actually need to use semicolons, for reasons unknown).

 

 

Good news and bad news. For the MOPA diagram, which I did recently, I have GIMP file with separate layers for the background image, ray traces, and labels. Unfortunately, I didn't realize that this was the best way to do it until I had done most of the ray tracing for the main diagram, so, although I have that file in GIMP as well, only the labels are on a separate layer. If this is a major issue I can do the tracing again. The other thing is that the original files are quite large: 17.3 MB for the MOPA, and 64.1(!) MB for the main diagram. Let me know what you think.

  3073   Sat Jun 12 19:43:19 2010 AlbertoUpdateWIKI-40M UpdateIFO modeling Wiki Page updated

Today I started writing the IFO modeling wiki page.

The idea is to make it a reference place where to share our modeling tools for the 40m.

  3100   Wed Jun 23 11:25:14 2010 Katharine and SharmilaUpdateWIKI-40M UpdateMaglev

Weekly update


Lab work

We compared the magnetic field strength for 4 magnets in the original setup. The standard deviation was 3.15 G which corresponds to a variation of 2.4%. We had encountered difficulties with the stability of the Gaussmeter. The tip of the Gaussmeter was unsteady and wobbling which led to huge variations for a small change in distance. We stabilized the meter by taping it to a pencil and securing it with wire ties to an aluminum block. We then used translation stages to find the point of maximum field strength for each magnet, which allowed us much more stable readings.

Readings

We are reading and learning about feedback control systems. 

Modelling

Learning to model in Comsol. Our goals for the 1X1 model include incorporating the gravitational force in the measurements and find the distance for which attraction is the strongest, and experimenting with the mesh density and boundary conditions of the domain.

Meetings/seminars

Attended many meetings, including:
Laser safety training
SURF safety training
LIGO seminars
Journal club
LIGO experimental group meeting

  3101   Wed Jun 23 11:31:12 2010 nancyUpdateWIKI-40M UpdateWeekly Update

This week I attended a whole lot of orientations, lectures, and meetings related to SURF. Done with general and laser safety training.

read Nergis' thesis for, and other material on WFS.

got confused with how the sidebands and shifted carrier frequencies are chosen for the Interferometer, read initial chapters of Regehr's thesis for teh same.

Made a plan for proceeding with the WFS work through discussions with Koji.

Understood the MC cavity and drew a diagram for it and the sensors.

Did Calculations for Electric field amplitudes inside and outside the MC cavity.

Saw the hardware of the WFS and QPD inside, and their routes to computers. Figured out which computer shows up the conditioned data from teh sensors.

Tried calculating the cavity axis for MC using geometry and ray tracing. Too complicated to be done manually.

Read some material (mainly Seigman) for physics of calculating the eigen-axis of the MC cavity with mirrors mis-aligned. Will calculate that using simulations, using the ABCD matrices approach.

Made a simple feedback simulink model yesterday to learn simulink. Made it run/compile. Saw the behaviour thru time signals at different points.

in the night, Made a simulink model of the sensor-mirror thing, with transfer functions for everything as dummy TFs. Compiles, shows signals in time. Remaining part is to put in real/near-real TFs in the model.

  3143   Wed Jun 30 11:39:20 2010 nancyUpdateWIKI-40M UpdateWeekly Update

Wednesday Morning E-log :

 

Most of the time through this week, i was working towards making the simulink model work.

It involved learning simulink functions better, and also improving on the knowledge of control theory in general, and control theory of our system.

1. Thusrday : found tfs for the feedback loop. and tried many different filters and gains to stabilize the system (using the transient response of the system). - not through

2. Friday : decided to use error response and nullify the steady state error instead of looking at convergence of output. tried many other filter functions for that.

Rana then showed me his files for WFS.

3. Sunday - played with rana's files, learnt how to club simluink with matlab, and also about how to plot tfs using bode plots in matlab.

4. Monday : Read about state-space models, and also how to linearize in matlab. done with the latter, but the former still needs deeper understanding.

read ray-optics theory to calculate the geometric sensing matrix.

It first requires to calculate the eigen mode of the cavity with tilted mirrors. this eigen mode is needed to be found out using ray-optics transfer matrices for the optics involved  . figured out  matrices for the tilted plane mirrors, and am working on computing the same for MC2.

5. Tuesday : went to Universal Studios , Hollywood :P

6. Wednesday (today) : Writing the report to be submitted to SFP.

  3145   Wed Jun 30 12:13:39 2010 Sharmila, KatharineUpdateWIKI-40M Updateweekly update

Weekly Project Update:

We are studying Haixing's circuit diagram for the quadrant maglev control circuit.  We have analyzed several of the sub-circuits and plotted transfer functions for these in MatLab.  To check the circuit, we will compare the calculated transfer functions with those obtained from the HP control systems analyzer.

To learn how to use the control systems analyzer, we are reading App Note 243 as well as an online manual (477 pages in the first volume).  We are beginning with a simple test circuit, and are comparing its measured frequencyresponse with calculated transfer functions.  We currently have obtained a response graph beginning at 100 Hz (which we have not yet figured out how to print), and we are planning to investigate behavior at lower frequencies.

We also have been continuing our reading on control systems after a failed attempt at magnetic levitation. 

  3165   Wed Jul 7 11:23:08 2010 Sharmila, KatharineUpdateWIKI-40M Update 

Weekly Update:

Last Weds-Thurs, we wrote and edited our progress reports.

Tuesday (and Weds morning):  Continued circuit analysis of Haixing's circuit and plotting transfer functions (almost have one for entire circuit).  Hooked up OSEM and circuit to power supply, but the LED didn't appear to light up in IR.  Now we are going to hook the OSEM directly to the power supply, sans circuit, to see if the problem is with the circuit or OSEM.

  3166   Wed Jul 7 11:35:59 2010 GopalUpdateWIKI-40M Update6.30.10 - 7.7.10 Weekly Update

Summary of this Week's Activities:

6/30: 2nd and 3rd drafts of Progress Report

7/1: 4th draft and final drafts of Progress Report; submitted to SFP

7/5: Began working through busbar COMSOL example

7/6: LIGO meeting and lecture; meeting with Koji and Steve to find drawing of stacks; read through Giaime's thesis, Chapter 2 as well as two other relevant papers.

7/7: Continued working on busbar in COMSOL; should finish this as well as get good headway on stack design by the end of the day.

  3214   Wed Jul 14 11:32:36 2010 Sharmila, KatharineUpdateWIKI-40M Update 

Weekly update:

We correctly connected our circuit to power source to verify that it was functional and that our LED in the shadow sensor turned on.  It did, but we also noticed a funky signal from the LED driver.  We continued to attempt 1x1 levitation, but determined that the temporary flag we were using out of convenience (a long, thin cylindrical magnet) was weakly attracted to residually magnetized OSEM components.  We then switched to an aluminum screw as our flag.

We resoldered and applied heat shrink to the wires connecting our coil to the BNC terminal, since they were falling apart.

We sat down with Rana and removed circuit components in the LED drive part by part to determine what was tripping up the circuit.  We determined a rogue capacitor to be at fault and removed it from the circuit.

We used a spectrum analyzer to measure the frequency response of our circuit (see details in last elog).  We are currently making a Simulink block diagram so we can check the stability of our setup, but are temporarily set back because our plotted calculation of the transfer function clearly doesn't match the measured one.

  3219   Wed Jul 14 13:03:04 2010 Gopal UpdateWIKI-40M Update7.8.10 - 7.14.10 Weekly Update

Summary of this Week's Activities:

Wed. 7/7: COMSOL Busbar tutorials; began stack design; began base; Viton rubber research

Thurs. 7/8: Completed Viton rubber research; updated materials; finished designing the base layer

Fri. 7/9: Research model coupling papers; extensive eLog entry about base design and troubleshooting

Sun. 7/11: Played around with Busbar to find first eigenfrequency; continued crashing COMSOL

Mon. 7/12: Intrusions in COMSOL eLog tutorial entry; research eigenfrequency analysis; successfully got first eigenmode of rectangular bar

Tues. 7/13: Updated Poisson ratio of Viton and subsequently succeeded in running eigenfrequency tests on base stack layer. Systematic Perturbation Tests were documented in the most recent elog entry. Discussed results with Rana and decided this didn't make sense. Analytical study required.

Wed. 7/14: Went over to machine shop to experimentally extrapolate spring constant of Viton. Calculations to be done in the afternoon.

  3255   Wed Jul 21 11:57:59 2010 GopalUpdateWIKI-40M Update7.14.10-7.21.10 Weekly Update

Summary of this week's activities:

7/14: Analytical calculation of Viton spring constant; updated Viton values in models; experimental confirmation of COMSOL eigenfrequencies (single stack layer)

7/15: Extensions to 2-, 3-, and 4-layer stack legs. Eigenfrequency characterizations performed for each level. Meshing issues with 4-layer stack prevented completion.

7/19: Debugged the 4-layer stack. Turned out to be a boundary condition issue because of non-sequential work-plane definitions. Successful characterization of single-leg eigenfrequencies.

7/20: Prototype three-legged stack completed, but dimensions are incorrect. Read Sievers paper for details of triple-legged stack. Sorted through many stack design binders in efforts to distinguish IOC/OOC, BSC/ITMX/ITMY, MC1/MC3, and MC2 dimensions.

7/21: Researched frequency domain analysis testing in COMSOL. Attempting to first find transfer function of a single-layer stack --> currently running into some run-time errors that will need some more debugging in the afternoon.

  3256   Wed Jul 21 12:03:14 2010 Katharine, SharmilaUpdateWIKI-40M Updateweekly update

This past week, we levitated our small cylindrical magnet (with the flag made from heat shrink).  Though the levitated magnet didn't appear very jittery to the eye, we looked at the PD current on the scope and could see oscillations that corresponded to the flag hitting the sides of the OSEM.  The oscillations were more pronounced as we gently hit/vibrated the lab bench, and by pounding on the bench Rana knocked the levitated magnet completely out of the setup.  So, we're currently working on building a new, stabler mount.  The biggest challenge here is fixing the OSEM in place, but we're experimenting with different optics pieces to see which is the most stable for our purposes.   Jenne taught us how to make through holes using the drill press so we can add slats of aluminum to adjust the height of the OSEM mount.  We also plan to fix some heavy plates to the bottom of our system to decrease its vibration frequency.

We also calculated the transfer function of our circuit, which seems to match the measured frequency response to within a small factor.  We're playing with Rana's Simulink models and are currently modeling our own system to determine what gains we would expect to use and get a better understanding of our circuit.


Once our system is successfully mounted stably, we plan to experimentally observe the effects of changing the gain and integrator by looking at time series measurements of the PD current, as well as using the spectrum analyzer to compare the frequency response of our system at different gain settings.

  3305   Wed Jul 28 12:09:06 2010 Sharmila,KatharineUpdateWIKI-40M UpdateMaglev

We have modeled our maglev setup in simulink but we have a few corrections to make since the system goes into undamped oscillations for an impulse in the input.

We have made a stable mount for the system and started to work on the 2X2 system using this mount. We have to figure out a way to match the magnets with the gain. We have attached the simulink block.

Picture_1.png

  3307   Wed Jul 28 12:31:00 2010 GopalUpdateWIKI-40M Update7.21.10-7.28.10 Weekly Update

Summary of this week's activities:

7/21: Frequency Domain Analysis of rectangular bar; discussed with Koji how to convert complex eigenfrequencies into phase factors.

7/23: Created Wiki page about FDA; Journal Club

7/26: Recreated Stack_1234.mph due to boundary value issues; FDA for 1,2,3,4,5 Hz

7/27: Discovered MC2 logbooks for later design; ran the complete x-translational FDA for Stack_1234.mph

7/28: Finished y-translational FDA (posted previously); "Tapered Cantilever" COMSOL tutorial for gravity-load analysis.

  3363   Wed Aug 4 20:58:22 2010 GopalUpdateWIKI-40M Update7.28.10 - 8.4.10 Weekly Update

Summary of this week's activities:

7/28:    Finished Y-Translational 4-Stack Analysis

"Tapered Cantilever" COMSOL tutorial

Tried (and failed) isolating gravity from oscillation

7/29:    Developed tilt/rotation load combinations for torsional inputs and showed these to work in the model

Tried using Normal Vector mode on top plate to obtain output tilts; worked for the rectangular bar, but not for the full stack

Talked to Jan about a 1st-order alternative to gravity - requires Weak Form (only found in COMSOL 3.5 right now)

Began Z-Translational 4-Stack Analysis -- Ran Overnight

7/30:    Progress Report 1st Draft

Completed Z-Translational 4-Stack Analysis

8/1:      Progress Report 2nd Draft

8/2:      Progress Report 3rd Draft

Submitted Progress Report

8/3:      Finalized Eigenfrequency Analysis for MC1/MC3 Stack

24 Physical Eigenmodes plotted and recorded, as expected

Should be good enough for the final report --> focus on transfer function analysis for the remainder of the SURF

8/4:      Prescribed Displacement Tests on Simple Rectangular Block --> shown to better produce displacement-displacement transfer functions

X-to-X Transfer Function seems much better when plotted

Should now be able to do the Displacement portion of Transfer Function Analysis on MC1/MC3 for Translational Modes

(I apologize that this update is a little late)

  3397   Wed Aug 11 11:51:45 2010 Gopal UpdateWIKI-40M Update8.5.10 - 8.11.10 Weekly Update

Summary of this Week's Activities:

Thursday, August 5:

X-Displacement Transfer Function Measurement

JPL Tour

Friday, August 6:

Y-Displacement Transfer Function Measurement

Z-Displacement Transfer Function Measurement

Monday, August 9:

Worked on COMSOL/MatLab Interface --> problems may be due to older version

Discussed with Koji options for calling our COMSOL sales representative

Jan and I decided that there is in fact something wrong with the installations on both my Mac and Kallo

Reinstalled on both machines, but the problem was not solved

Jan said we'd go see Larry tomorrow

Tuesday, August 10:

Attempted to figure out Time-Dependent Modal Analysis --> don't think it's what we need

Began reading the LiveLink for MatLab documentation --> even the directions in this produced issues

Discovered "Prescribed acceleration" option for gravity:

A test with it on the simplest stack eliminated the unwanted oscillation, which I guess is a partial success...

Trying the same thing with Koji on a simple pendulum, however, didn't produce the expected increase in resonant frequency

(Jan was unable to see Larry today, but we're meeting on Wednesday instead).

Wednesday, August 11 (morning):

Some background research on multiple-layer stack theory

Began working on presentations

 

 

 

  6192   Thu Jan 12 21:22:16 2012 Leo SingerConfigurationWIKI-40M UpdateUnable to create Wiki page

 I can't create a new page on the 40m wiki.  The page that I was trying to create is

http://blue.ligo-wa.caltech.edu:8000/40m/Stewart

I get this message when I try to save the new page:

Page could not get locked. Unexpected error (errno=13).

  6193   Thu Jan 12 23:13:42 2012 KojiConfigurationWIKI-40M UpdateUnable to create Wiki page

Quote:

 I can't create a new page on the 40m wiki.  The page that I was trying to create is

http://blue.ligo-wa.caltech.edu:8000/40m/Stewart

I get this message when I try to save the new page:

Page could not get locked. Unexpected error (errno=13).

This address for wiki is obsolete. Recently it was switched to https://wiki-40m.ligo.caltech.edu/
Jamie is working on automatic redirection from the old wiki to the new place.

The new one uses albert.einstein authentication.

 

  7774   Sat Dec 1 16:58:14 2012 ManasaUpdateWIKI-40M UpdateOptical tables

I have updated the wiki with the layout of the out-of-vac optical tables: Updated optical tables

I used the new camera to take pictures.

Lesson learnt after the update:

To use the new canon to take better pictures of optics tables; set the camera to manual mode; no flash and iso at around 800 or higher if you can hold the camera still for that long. The autofocus works beautifully...so you will not need any minor tweaking of lens to take pictures. 

  15054   Wed Nov 27 17:51:52 2019 gautamUpdateWienerMCL FF status

The old MCL filters are not completely useless - I find a factor of ~2 reduction in the MCL RMS when I turn the FF on. It'd be interesting to see how effective the FF is during the periods of enhanced seismic activity we see. I also wonder if this means the old PRC angular FF filters are also working, it'd help locking, tbc with PRMI carrrier...

Update: The PRC angular FF loops also do some good it seems - though the PIT loop probably needs some retuning.

  15282   Tue Mar 24 19:41:57 2020 gautamUpdateWienerSeismic feedforward for MCL

Summary:

I think the feedforward filters used for stabilizing MCL with vertex seismometers would benefit from a retraining (last trained in Sep 2015). 

Details:

I wanted to re-familiarize myself with the seismic feedforward methodology. Getting good stabilization of the PRC angular motion as we have been able to in the past will be a big help for lock acquisition. But remotely, it is easier to work with the IMC length feedforward (IMC is locked more often than the PRC). So I collected 2 hours of data from early Sunday morning and went through the set of steps (partially).

Attachment #1 shows the performance of a first attempt.

  • 1 hour of data was used as a training set, and another hour to validate the trained filter.
  • All the data was downsampled to 64 Hz.
  • The number of FIR filter taps was 32 seconds * 64 Hz. 
  • Going through some old elogs, there were a number of suggestions from various people about how the training should be done
    • There was a suggestion that pre-filtering the target signal by the (inverse) actuator TF (i.e. TF from MC2 drive to MCL) is beneficial, presumably because it gives the Wiener filter fitting fewer parameters to fit.
    • There was also suggestions that some frequency-dependent weighting of the target signal should be done (e.g. by bandpassing MCL between 0.1 Hz - 10 Hz) to emphasize subtraction in this band.
    • For this particular example, in my limited paramter space exploration, I found that neither of these measures had particularly significant impact.
  • In any case, the time-domain FIR filtering seems to approach the theoretical best possible performance (based on coherence information). 
  • I have not yet checked what the theoretical limit on subtraction will be based on the seismometer noise ASD.

Attachment #2 shows a comparison between the filter used in Attachment #1 and the filters currently loaded into the OAF system. 

  • In the band where significant subtraction is possible, there is some difference in the shape of the filter.
  • Why should this have changed? I guess there are multiple possibilities - seismometer recentering, signal chain changes, ...

Attachment #3 is the asd after implementing a time domain Wiener filter, while Attachment #4 is an actual measurement from earlier today - it's not quite as good as Attachment #3 would have me expect but that might also be due to the time of the day. 

Conclusions and next steps:

On the basis of Attachments #3 and #4, I'd say it's worth it to complete the remaining steps for online implementation: FIR to IIR fitting and conversion to sos coefficients that Foton likes (prefereably all in python). Once I've verified that this works, I'll see if I can get some data for the motion on the POP QPD with the PRMI locked on carrier. That'll be the target signal for the PRC angular FF training. Probably can't hurt to have this implemented for the arms as well.

While this set of steps follows the traditional approach, it'd be interesting if someone wants to try Gabriele's code which I think directly gives a z-domain representation and has been very successful at the sites.

* The y-axes on the spectra are labelled in um/rtHz but I don't actually know if the calibration has been updated anytime recently. As I type this, I'm also reminded that I have to check what the whitening situation is on the Pentek board that digitizes MCL.

  15290   Wed Apr 1 00:51:41 2020 gautamUpdateWienerSlightly improved MCL FF

Summary:

Retraining the MCL filters resulted in a slight improvement in the performance. Compared to no FF, the RMS in the 0.5-5 Hz range is reduced by approximately a factor of 3

Details:

Attachment #1 shows my re-measurement of the MC2 position drive to MCL transfer function.

  • The measurement was made using DTT swept sine, with the amplitude enveloped appropriately to avoid knocking the IMC out of lock.
  • Coherence was >0.97 for all datapoints.
  • Fitting was done using Lee's IIRrational, with the weighting being the coherence. I think there are some features of the fitting I don't fully understand, but I wanted to try and do everything in python and for this simple fit, it came out nicely I think. 

Attachment #2 shows the IIR fits to the FIR filters calculated here

  • Again, IIRrational was used. 
  • In the frequency band where subtraction is possible, the fit is good.
  • But there is definitely room for improvement in the way this is done, for now, I did quite a bit "by eye" and tweaked the order of the filter and the minimum number of excess poles relative to zeros to get the AC coupling, but it'd be nice to make all of this iterative and quantitative (e.g. by minimizing a cost function).
  • One nice feature of IIRrational is that it directly gives me a formatted string I can paste into foton. The order of these fits were 22, so I split them into two 19+3 order filters to be compatible with the realtime system before loading the coefficients (the overall gain was allocated to a single filter arbitrarily, with the other filter in the pair set to have unity gain in the zpk representation).

Attachment #3 shows several MCL spectra.

  • Blue trace is the unsubtracted test dataset.
  • Red is the performance of the calculated FIR filter, but the filtering is done offline.
  • Gold is the performance of the IIR fit to the FIR filter, as shown in Attachment #2, applied offline to the test dataset.
  • Green is the calculated ASD of MCL from a ~1 hour stretch from earlier tonight, when I left the feedforward loop on. So this is an actual measurement of the online performacne of the filter.
  • Grey is the performance of the old filter loaded in the CDS system - the filtering is done using scipy, and the sos coefficients from the C1OAF.txt file.

Conclusions + next steps

  1. Retraining the filters has resulted in a slight improvement, especially at ~3 Hz.
  2. More tests need to be done to confirm that noise isn't being reinjected in the frequency bands where subtraction isn't possible (e.g. using arm cavities as OOL sensors).
  3. The online filter isn't quite as good as what we would expect from calculations (green trace is noisier than gold). Need to think about why this is.
  4. Why can't we get more subtraction at 1 Hz?
  5. Now that I have the infrastructure ready, I will attempt to revive the PRC angular FF loops, which was the whole point of this exercise. 
  2425   Thu Dec 17 02:57:08 2009 JenneUpdateWienerFilteringL1 DARM Static Wiener Filtered data

This is perhaps best put in the LLO elog, but I'm not yet a 'person' there, so I can't write to their elog (yet another thing for the eternal to-do list).  So for now, we're putting things here...

This isn't totally finalized, but I do want to get what I have posted before I hop on a plane in the morning.  Mostly it just needs more time to run, to make the plot longer.  Hopefully I'll be able to edit this in the morning and have a longer-duration plot. 

What's plotted:

This spectrogram shows the amplitude spectra of L1:LSC-DARM_CTRL, after being subtracted via a Static Wiener Filter.  Each spectra is normalized by the very first one, which was created from the same data that was used to determine the Wiener Filter.  The X-axis is time.  The Y-axis is frequency, and the Color/Z-axis is amplitude in dB.  I'm only looking at Science Mode time, so other times when the IFO isn't in science mode, I plot a black stripe to fill in the plot.  The start time of the plot is 83675598, which is Jul 08 2006 06:33:04 UTC. 

Why?

The idea is to see that the filter does equally well a long time after it was created, as when it was initially made.  This will help tell us how often it is useful to recompute the Wiener filters.  Less often is nice, because redoing the Wiener filters may also include remeasuring the high precision transfer functions...if the filter isn't working as well anymore it may be because the transfer function has changed ever so slightly. 

How the plot is created / the background story:

I use one hour of DARM_CTRL data and the following seismometer channels to create an optimal Wiener Filter (pem indicates L0:PEM- , sei indicates L1:SEI- , and lsc indicates L1:LSC- ) :

chans = {[pem 'EX_SEISX'],...
         [pem 'EX_SEISY'],...
         [pem 'EX_SEISZ'],...
         [pem 'EY_SEISX'],...
         [pem 'EY_SEISY'],...
         [pem 'EY_SEISZ'],...
         [pem 'LVEA_SEISX'],...
         [pem 'LVEA_SEISY'],...
         [pem 'LVEA_SEISZ'],...
         [sei 'LVEA_STS2_X'],...
         [sei 'LVEA_STS2_Y'],...
         [sei 'LVEA_STS2_Z'],...
         [sei 'ETMX_STS2_X'],...
         [sei 'ETMX_STS2_Y'],...
         [sei 'ETMX_STS2_Z'],...
         [sei 'ETMY_STS2_X'],...
         [sei 'ETMY_STS2_Y'],...
         [sei 'ETMY_STS2_Z'],...
         [lsc 'DARM_CTRL']};

I then apply this one filter to ten minute chunks of science mode data, for some long period of time.  The game plan is to have a month long plot, but it takes a while to fetch all of the data in separate 10min intervals (~45sec per iteration, times ~3000 iterations), so this plot isn't a full month.  Even if I don't get a chance to plot a full month by Thursday morning, it'll go up here within the next few days. The particular times chosen have the most science mode data within a 30 day period.  I can easily run the code for some other time, if there is a known time (or season) which might be more interesting.  For the spectrogram plot, I then normalize each amplitude spectra by the first one, which comes from the first ten minutes in the hour which was used to make the filter.  This makes it easier to see how the filter's efficacy changes over time.

The analogous analysis for Hanford is in the 40m elog: 1606.  The Hanford stuff in the elog has some cool BLRMS plots also, but I'm not sure that they're so helpful when I only have a few days of L1 data so far.  I'll do those and add them later.

Conclusions:

I can't really say anything yet about the long-term efficacy of a Wiener Filter for LLO yet, since my code hasn't finished filtering my one month of S5 L1 data.  It definitely looks like (so far) that there was a big seismic event around the (arbitrarily defined) 'Day 4'. 

  2426   Thu Dec 17 07:47:29 2009 JenneUpdateWienerFilteringL1 DARM Static Wiener Filtered data

This surface plot is the same as the previous one, with a little more data than I had previously. 

This time around, I also include the "BLRMS" plots for this data.  The first one takes each residual and normalizes it by the DARM_CTRL signal at that time, separates the spectra into bands, and integrates underneath the spectra within that band.  The second one is the raw DARM_CTRL signal's spectra at each time, and integrates under the spectra for each band, and the third BLRMS plot does the same thing for the residuals.  Unfortunately, these plots don't have the same handy black stripe during time which I don't analyze that the spectrogram utilizes.

From the second BLRMS plot we can see that the large red splotch in the spectrogram is due to higher noise in the DARM spectrum, and that (by looking at the Ratio BLRMS plot) the Wiener filter still does a pretty good job during this time.  I expect that for later times when the seismic (or something) event is gone, the Wiener filter will continue performing almost as well as it had been initially.

Again, once the script finishes applying the filter to the many ten minute chunks (the huge time drain is the data fetching, so this shouldn't be a limiting factor for using Wiener filters online), I'll post a final plot.

  2475   Tue Jan 5 01:31:09 2010 JenneUpdateWienerFilteringNew Wiener Filters installed in PEM IIR matrix on OAF screen

Using the techniques employed at LLO, and then by Rana here at the 40m a few weeks ago, Wiener filters have been installed on the inputs of all of the PEM IIR channels which are hooked up to the 110B PEM ADCU.  Some slight modifications have taken place to the code, and it's all been checked in to the 40m svn. 

I have installed the filters into:  All 6 Wilcoxon accelerometers, the Ranger seismometer, and one of the Guralps (GUR1).  The other Guralp is currently connected through the ASS/OAF machine's ADC, so it's not used in this test. The filters are all labeled "Wiener", and are FM1 in the C1:ASS-TOP_PEMIIR_## filter banks.

The first figure below is the output of the Wiener Filter calculation program.  It shows the uncorrected MC_L (black) and the corrected MC_L (red), using the optimal wiener filter.  This is as good as we should be able to do with these sensors in these positions.

The second figure is a DTT shot of me trying out the nifty new filters.  They seem to maybe do a teensy bit on the microseism, but otherwise it's a bit unremarkable.  Hopefully I'll get better subtraction during the day, when the base level for MC_L is higher.  Here, Black is uncorrected MC_L, Red is the corrected MC_L, Blue is the actuation channel, and green is an example seismometer channel to illustrate the ground motion at the time.

 

For posterity, since it's not all in one elog that I can find, the order of operations to install a Wiener Feed Forward filter is as follows:

1.  (When you can borrow the IFO) Take a very careful TF of the plant, between your actuation point and your error signal readout.  At the 40m, this means between C1:ASS-TOP_SUS_MC1_EXC and C1:IOO-MC_L, since we actuate by pushing on the MC1 coils.  At the sites / future 40m, this would be between the HEPI (or STACIS) and the error signal.  The limit of how good your Feed Forward can do will depend heavily on how good this TF is.  Coherence should be above ~0.95 for all points.  Export this data from DTT as a .txt file, using units "Complex (abs/rad)". 

2. Run fitMC12MCL.m (or equivalent wrapper file) to fit the transfer function you just took with some Poles and Zeros.  Make sure to edit the wrapper file with your new .txt file's name so you're getting a fresh TF (if you've just taken one).

3. (Again, when you can borrow the IFO) Run getMCdata.m (or equivalent) to fetch witness channel data and error signal data.  At the 40m, this usually means C1:IOO-MC_L, and witness sensors which are around the MC chambers.  This data should be taken at a time when the cavity is locked, but pretty much on it's own. (i.e. probably shouldn't have Common Mode feedback on the MC - so the MC should be locked, but not the full IFO, for example.)

4.  Run c1winoiir.m (the main program here, which contains some of these notes). This will take in the TF data you've fit, and the witness channel data you have, and calculate the optimal combination of Wiener filters for your witness channels.  It pre-filters your witness data by your TF, then calculates the Wiener filter.  The resulting FIR filters are saved in a file.

5.  Run firfit.m  This will take the FIR Wiener filters you've just created, and convert them conveniently to IIR filters, in a format to be copied directly into Foton.  For each witness channel, you'll get the IIR filter in 2 formats:  the first is for copying into the Foton .txt file (ex ASS.txt), and the second is for copying into the Foton gui, in the "Command" box on the filter design screen.  The "o" at the end of the copy-able filter indicates to Foton that it is a Z-Plane Online filter.  Copy filters appropriately (there should be a line preceding each set of SOS filter formats to indicate which channel this Wiener filter is for...these channel names are extracted from your getMCdata.m)

6. Save your Foton file, and update your Coefficients in MEDM.  Enable your outputs to actuators, and watch magic happen!

 

On the To-Do list:

Check the transfer of signal btwn PEMIIR matrix and the 9x1 'matrix' that sends the signals to the SUS inputs.  In the SimuLink, the input to the 9x1 matrix is a bundle of 8 numbers (the 8 outputs of the PEMIIR matrix), but it looks like it only pays attention to the first one.  Need to figure out how to make it realize that it's a bundle, not a single number. 

Also, the OAF up / down scripts don't seem to be working on any of the control room computers.  This needs to be checked in to / fixed (but not tonight....)

  2480   Tue Jan 5 17:32:59 2010 JenneUpdateWienerFilteringNew Wiener Filters installed in PEM IIR matrix on OAF screen

EDIT 6 Jan 2010:  Shouldn't have done this.  My bad.  The AA32 is on the other PEM matrix because the Adaptive code runs at 64Hz, so there's downsampling, calculating, and upsampling which goes on.  The Feed Forward path all runs at 2kHz, the regular rate of the ASS/OAF machine.  All of these filters are turned off (although I haven't deleted them from Foton).  Since we're focusing on low frequency stuff and trying to get that to do some subtraction, we're not worrying about the junk at higher frequencies just yet.

 

I have put AA32 filters into the PEMIIR matrix's input filter banks (ie, C1:ASS-TOP_PEMIIR_##), to match the ones that are in the same places in the regular PEM matrix on the OAF screen. 

I redid the uncorrected vs. corrected MC_L DTT printout, shown below. You can see that there's less junk at higher frequencies in the Blue (actuation channel) trace, which is good.

  2660   Sun Mar 7 07:01:21 2010 ranaUpdateWienerFilteringGuralp Huddle Test software

We need to do a new huddle test of the Guralps for the Wiener filtering paper. The last test had miserable results.

I tried to use recent data to do this, but it looks like we forgot to turn the Guralp box back on after the power outage or that they're far off center.

So instead I got data from after the previous power outage recovery.

I tried to use our usual Wiener filter method to subtract Guralp1-Z from Guralp2-Z, but that didn't work so well. It was very sensitive to the pre-weighting.

Instead I used the new .m file that Dmass wrote for subtracting the phase noise from his doubling noise MZ. That worked very well. It does all of the subtraction in the frequency domain and so doesn't have to worry about making a stable or causal filter. As you can see, it beats our weighted Wiener filter at all frequencies.

huddlez.png

The attached plot shows the Guralp spectra (red & green), the residual using time-domain Wiener filtering (black) and the Dmass f-domain code (yellow).

As soon as Jenne brings in her beer cooler, we're ready to redo the Huddle Test.

 

  2672   Sat Mar 13 22:16:03 2010 ranaUpdateWienerFilteringGuralp Huddle Test software

I used some recent better data to try for better Z subtraction.

Dmass helped me understand that sqrt(1-Coherence) is a good estimate of the theoretical best noise subtraction residual. This should be added to DTT. For reference the Jan statistic is the inverse of this.

This should get better once Steve centers the Guralps. 

  3489   Mon Aug 30 18:35:22 2010 JenneUpdateWienerFilteringSecret Hiding Place for Raw Data

As it turns out, data seems to fall off the 16Tb drives after ~20 days.  Which makes it a good thing that I saved all of my raw data from my good Mode Cleaner / seismic weekend for offline Wiener Filtering in the following secret place:

/cvs/cds/caltech/users/jenne/AdaptiveFiltering/mat/MCseis_raw_data_7Aug2010

It's not linked to the svn, since it's a boatload of data.

  4226   Sat Jan 29 03:13:44 2011 ranaUpdateWienerFilteringImprovement in H1 Wiener FF prediction by using weights and taps

(Jenne, Rana)

Tonight we noticed that there were significant improvements to be had in the predicted DARM Wiener filtering FF performance by using weighting filters and more taps in the FIR filter.

The plots below tell the story:

The first one shows the improvement in the residual (black & blue) by applying a weighting filter. The weight filter tilts the spectrum up at HF and applies and all real pole BP from 10-20 Hz.

The second plot shows the improvement gotten by using 3000 instead of 2000 taps for the Wiener filter. With the larger number of taps we not only get the big improvement at LF, but also some beefy reduction in the higher frequency stack modes and the LOS roll mode.

I'm not sure why we haven't run across this before; the weighting filter was arrived at today by just iterating by hand on the placement of poles and zeros until the trace looked nice.

Jenne is going to run this new filter on the S5-month that we have been using for stationarity testing.

* Some notes:

** this Wiener stuff is faster, by far, on rossa than either megatron or rosalba or my laptop. More than a factor of 3.

*** there is a bug with Macports/Matlab - if you get fftw3 with Macports, it sets itself as the right version to use. This confuses matlab in some cases.

     if you get the error about libfftw3.dylib, whe trying fft in matlab after installing macports, then you can fix it by setting the Matlab lib/ path with the fftw libraries to be ahead of /opt/local/lib in the LD_LIBRARY_PATH in your .cshrc.

  4231   Mon Jan 31 10:31:30 2011 josephbUpdateWienerFilteringImprovement in H1 Wiener FF prediction by using weights and taps

Rossa is a rather beefy machine. It effectively has 8 Intel i7 Cores (2.67 Ghz each) and 12 Gigs of ram.  Megatron only has 8 Gigs of ram and just 8 Opterons (1 GHz each).  Rosalba has 4 Quad Core2  (2.4 GHz) with only 4 Gigs of ram. 

MC damp dataviewer diaggui AWG c1ioo c1sus c1iscex RFM The Dolphins Sim.Plant Frame builder TDS
                       
  4348   Thu Feb 24 10:56:04 2011 JenneUpdateWienerFilteringOne month of H1 S5 data is now on Rossa

Just in case anyone else wants to access it, we now have 30 days of H1 S5 DARM data sitting on Rossa's harddrive.  It's in 10min segments.  This is handy because if you want to try anything, particularly Wiener Filtering, now we don't have to wait around for the data to be fetched from elsewhere.

  4968   Thu Jul 14 17:34:35 2011 Ishwita, ManuelHowToWienerFilteringWiener-Hopf equations

Since we are using Wiener filtering in our project, we studied the derivation of Wiener-Hopf equations. Whatever we understood we have written it as a pdf document which is attached below...

  5087   Mon Aug 1 23:29:24 2011 Manuel, IshwitaUpdateWienerFilteringGetting Data by matlab

We tried to acquire data from the seismometers and the mode cleaner using the Matlab function

datalist = NDS2_GetData({'C1:PEM-SEIS_GUR1_X_IN1_DQ'}, 996258376 , 10, CONFIG.nds.C)

and encountered the following error

Warning: daq_request_data failed
 
??? Error using ==> NDS2_GetData
Fatal Error getting channel data.

The same error was obtained with the following other channels

C1:PEM-SEIS_GUR2_X_IN1_DQ

C1:PEM-SEIS_STS_1_X_IN1_DQ

But we are able to get data from channel

C1:LSC-MC_OUT_DQ

for the same gps time.

We checked with Dataviewer that the data are saved (we viewed data of last 24h) for every channel.

ELOG V3.1.3-