40m QIL Cryo_Lab CTN SUS_Lab TCS_Lab OMC_Lab CRIME_Lab FEA ENG_Labs OptContFac Mariner WBEEShop
 SUS Lab eLog, Page 3 of 37 Not logged in
ID Date Author Type Category Subject
1827   Mon Nov 11 20:35:13 2019 DuoDailyProgress First sign of ITMY LL noisemon saturation

Noisemon has been installed in LLO ITMY station. Its LL channel starts to saturate at 10/30 00:00:00. I checked the noisemon output at that time (attachment 1).

Attachment 1: Screenshot_from_2019-11-11_20-33-46.png
1826   Fri Nov 8 13:32:15 2019 DuoDailyProgress Noisemon and FastIMON at L1

I checked the October 25 data at L1. The drive signal is zero, according to the bottom plot in attachment 1 and 2. The fastimon channel has a lot of lines. Noisemon still has the 65Hz harmonics.

I also checked the Nov 7 noisemon and fastimon data. We still see the harmonics on Nov 7. Also, one channel is completely dysfunctioning. The fastimon is similar to Oct 25.

Attachment 1: Oct 25 noisemon. We still see the harmonics in the noise.

Attachment 2: Oct 25 fastimon. Two channels are messy.

Attachment 3,4,5: Nov 7 noisemon data. Analyzed in attachment 4. Data in attachment 5.

Attachment 6: Nov 7 fastimon data. Similar to Oct 25 - a lot of lines.

Attachment 1: Screenshot_from_2019-11-08_13-14-42.png
Attachment 2: Screenshot_from_2019-11-08_13-11-51.png
Attachment 3: Screenshot_from_2019-11-08_13-53-45.png
Attachment 4: nm1107.pdf
Attachment 5: Desktop.zip
Attachment 6: Screenshot_from_2019-11-08_14-22-20.png
1825   Wed Oct 23 20:37:53 2019 DuoDailyProgress Nosiemon check

Although L1 has been down since the beginning of October, I checked the spectrum at the output of the nosiemon at L1 ITMY. It looks like the UL channel, as we have seen before, still has the lines,

Attachment 1: Screenshot_from_2019-10-23_20-48-13.png
1824   Tue Oct 8 17:31:27 2019 DuoSummary Noisemon check

Noisemon has been installed at L1 for a while. Now we have it on ITMX and ITMY. ITMX was installed first and ITMY was installed on September 11.

Recently, after it was installed at ITMY, we were trying to check the functionality of the circuit - if it measures DAC nosie properly between 20 - 100Hz. When we were doing that, we encountered some strange harmonics of 65Hz in UL channel. It is shown in attachment 6, data from 9/25 ETMY.

We traced back to where it was installed at ETMY, 9/11, and we still see the lines there (attachment 5).

Then we went to check ITMX, since the data was consistent when it was first installed. However, when we use 9/25 data, we see attachment 4. The UL channel measurement is way above the other three channels. Tracing back the dates, we found in ITMX it started 9/10 (attachment 3), comparing to 9/9 (attachment 2) when it was still good.

All the data and scripts are in attachment 1.

Notes (in case you read about noisemon for the first time):

All the plots are

$drive\times \sqrt{1-coherence}$

It is suppose to be DAC nosie + Noisemon noise + ADC noise, which DAC noise being dominant between 20 - 100Hz. The purple curves are DAC noise model. The measurements are expected to be close to it between 20Hz and 100Hz.

Attachment 1: Desktop.zip
Attachment 2: itmx99.pdf
Attachment 3: itmx910.pdf
Attachment 4: itmx925.pdf
Attachment 5: itmy911.pdf
Attachment 6: itmy925.pdf
1823   Wed Oct 2 13:50:03 2019 DuoDailyProgress ITMY noisemon

This is the DAC noise of ITMY PUM coil driver in L1. The data is from September 25, 2019 00:00:00 UTC. I did not subtract the ADC noise and the noisemon noise since I did it for ITMX. The noisemon noise is far below the total noise, and the ADC noise only dominates high frequency. After subtraction, the mismatch above 500Hz will disappear.

There are some lines around 65Hz. I checked the data a few days arounds 9/25. I see them in all the data. I do not understand why yet.

Spectra of the PUM drive signal is attached in 3, noisemon output in 4. I do not see anything at 65Hz in those channels.

ADC noise and Noisemon noise are subtracted in attachment 5.

I checked these data

9/23 00:00, 8:00, 20:00

9/24 8:00,

9/25 0000,0800,2000

9/26 0800,2000

9/27 0000.0800.2000

10/1 0800

The 65Hz harmonics stays there.

I checked time domain for 9/15. It is not saturating. (Attachment 6&7)

Attachment 8 is a check on the output of the noisemon signal when L1 is down. It is from 9/24 1600. Surprisingly, I see the 65Hz harmonics in UL spectrum while I cannot see it when the interferometer is online. I do not see the harmonics in the other three channels.

In attachment 9, I checked ITMX from the same time (9/24 1600, interferometer down). The 65Hz harmonics is there in all channels, and the UL output is higher.

Attachment 1: plot.pdf
Attachment 2: Desktop.zip
Attachment 3: drive.pdf
Attachment 4: nm.pdf
Attachment 5: plot.pdf
Attachment 6: Archive.zip
Attachment 7: ts.png
Attachment 8: Screenshot_from_2019-10-04_16-43-25.png
Attachment 9: Screenshot_from_2019-10-04_17-11-12.png
1822   Wed Sep 11 17:24:43 2019 DuoSummaryElectronicsITMX DAC noise

I did a quick estimation of the subtraction result. I subtracted the ADC noise and the noisemon noise.

$NoSubtraction=\sqrt{1-coherence}\times drive$

Now I subtract it:

$WithSubtractionDACNoise=\sqrt{NoSubtraction^2-NoisemonNoise^2-ADCNoise^2}$

The ADC noise and Noisemon noise are converted to DAC volts (divided by the transfer function of the noisemon and coil driver).

Form the results from 10-200Hz, it seems that the calculated noise is DAC noise.

Attachment 2 is the result: subtracted noises vs. model compared to aLIGO noise.

Attachment 1 shows how the subtraction is done: we subtract noisemon noise from the total noise. (Noisemon noise contains ADC noise) Noisemon noise and ADC noise is neglegible at that frequency.

It seems at low frequency what we see there might still be DAC noise, if not other unknown sources.

Quote:

I don't agree about this. Doesn;t this ignore the noise of the noisemon circuit (analog readout noise + ADC noise) ? I think you must have a model for than noise in order to infer the DAC noise. Or maybe my pringle suggestion has better SNR?

 Quote: This is how we calculate the DAC noise spectrum. The unit is V/rtHz. $drive\times\sqrt{1-coherence}$

Attachment 1: plot.pdf
Attachment 2: beforeSub.pdf
1821   Sat Aug 31 19:21:13 2019 ranaSummaryElectronicsITMX DAC noise

I don't agree about this. Doesn;t this ignore the noise of the noisemon circuit (analog readout noise + ADC noise) ? I think you must have a model for than noise in order to infer the DAC noise. Or maybe my pringle suggestion has better SNR?

 Quote: This is how we calculate the DAC noise spectrum. The unit is V/rtHz. $drive\times\sqrt{1-coherence}$

1820   Fri Aug 30 14:45:42 2019 ranaComputingDAQDownload data with pyNDS

I'm attaching a script to download data from the LIGO sites with python.

I recommend using it in your anaconda3 ENV:

conda install -c conda-forge nds2-client python-nds2-client

and then before running the script you have to initialize your Kerberos token:

kinit miley.cyrus@LIGO.ORG

then you run the script:

python getData.py --ifo=L1 --fs=1024

as usual, run with the -O or -OO flags to silence the debug messages.

Attachment 1: ChanList_darm.txt
SUS-ETMY_L2_MASTER_OUT_LL_DQ
SUS-ETMY_L2_NOISEMON_LL_OUT_DQ

Attachment 2: getData.py
#!/usr/bin/env python
# this function gets some data (from the 40m) and saves it as
# a .mat file for the matlabs
# Ex. python -O getData.py

import scipy.io as sio
import scipy.signal as sig
from astropy.time import Time
import nds2

... 101 more lines ...
1819   Fri Aug 30 13:15:07 2019 DuoSummaryElectronicsITMX DAC noise

The PUM noisemon board has been installed in Livingston ITMX test mass. After the installation, we fetched the coil driver drive signal, noisemon output signal and the coherence between them.

This is how we calculate the DAC noise spectrum. The unit is V/rtHz.

$drive\times\sqrt{1-coherence}$

The data fetching configurations are:

- Start time: 1250467218. Locked for more than 20hrs from there, if you check here: https://ldas-jobs.ligo-la.caltech.edu/~detchar/summary/day/20190822/

- Bin size: 0.1Hz

- Window: Hanning

- Average: 1000

Attachment 1 and 2: plot of the DAC noises in volts compared to the G1401399 model.

Attachment 3 and 4: plot of the DAC noises projected to the displacement of the test mass and incohrerently summed from all the four test masses.

All the data are attached as xml files. They are directly saved from DTT and can be opened in DTT.

To reproduce the plots, run the python code in the zip file. The code runs without any parameters.

Attachment 1: plot.pdf
Attachment 2: Desktop.zip
Attachment 3: projected.pdf
Attachment 4: Archive.zip
1818   Wed Aug 28 16:15:51 2019 ranaDailyProgress Changed bin size to 0.1Hz and got it

Can't tell what's going on. Pleaese make the plots readable and describe in the elog what precisely is being calculated.

1817   Wed Aug 28 13:39:29 2019 DuoDailyProgress Changed bin size to 0.1Hz and got it

The bin size was 1Hz. I changed it to 0.1Hz. Now we get some real data.

Attachment 1: plot.pdf
Attachment 2: Desktop.zip
1816   Wed Aug 28 13:20:01 2019 DuoDailyProgress Window changed to BMH

The result is lower when I change the window but still not the same as alog post. A factor of 2 larger at 30Hz.

Attachment 1: plot.pdf
1815   Tue Aug 27 14:59:00 2019 DuoDailyProgress Average 10

No. Did not reproduce it. Attachment 3 is the same plot without restrictions on the y axis range.

 Quote: Trying to see if I can reproduce https://alog.ligo-la.caltech.edu/aLOG/uploads/43363_20190213151300_subtraction_offset.png when I use average of 10.

Attachment 1: plot.pdf
Attachment 2: Desktop.zip
Attachment 3: plot.pdf
1814   Tue Aug 27 14:41:04 2019 DuoDailyProgress Average 10

Trying to see if I can reproduce https://alog.ligo-la.caltech.edu/aLOG/uploads/43363_20190213151300_subtraction_offset.png when I use average of 10.

Attachment 1: ETMY_Feb.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4821 more lines ...
1813   Mon Aug 26 15:13:41 2019 DuoDailyProgress Noise vs number of avg

More avg - more smoothiness but the shape of the noise curve is the same.

Attachment 1: Archive.zip
Attachment 2: plot_10.pdf
Attachment 3: plot_100.pdf
1812   Mon Aug 26 14:57:47 2019 DuoDailyProgress ETMY noise vs. ITMX noise

The formula used to calculate the noise is

Noise = Sqrt[1 - coherence] * drive

ETMY is about the same as ITMX.

Attachment 1: plot.pdf
Attachment 2: Archive.zip
1811   Fri Aug 23 15:22:59 2019 DuoDailyProgress L1 noise and average

Going to see if # of average makes any difference.

Attachment 1: l1_10.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4821 more lines ...
Attachment 2: l1_50.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4821 more lines ...
Attachment 3: l1_100.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4821 more lines ...
Attachment 4: l1_500.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4821 more lines ...
1810   Fri Aug 23 15:11:36 2019 DuoDailyProgress ETMY noisemon

Will compare ITMX with ETMY.

Attachment 1: l1_ETMY_template.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4801 more lines ...
Attachment 2: Screenshot_from_2019-08-23_15-11-05.png
1809   Fri Aug 23 13:42:16 2019 DuoDailyProgress Noisemon Data from all four channels

Plotted.

 Quote: L1 noisemon data for all four channels.

Attachment 1: plot.pdf
Attachment 2: Archive.zip
1808   Thu Aug 22 18:13:19 2019 DuoDailyProgress Noisemon Data from all four channels

L1 noisemon data for all four channels.

Attachment 1: l1_template.xml
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 4801 more lines ...
1806   Tue Aug 20 18:15:11 2019 DuoDailyProgress Noisemon data more avg

Increase avg to 1000. We are going to calculate the DAC noise from this.

Attachment 1: plot.pdf
Attachment 2: Archive.zip
1805   Tue Aug 20 10:31:12 2019 DuoDailyProgress Noisemon test

I calculated the noise based on L1 data. My calculation is

(1-coherence) * drive = noise in DAC counts

noise in volts = noise in DAC counts * 20 / 2^16

Is this correct?

Attachment 1: Archive.zip
Attachment 2: plot.pdf
1804   Thu Aug 15 17:23:40 2019 DuoDailyProgress L1 noisemon 1-coherence

Noisemon installed in ITMX at L1. I pulled the 1-coherence data. trying to compare with Valery's measurement: https://alog.ligo-la.caltech.edu/aLOG/index.php?callRep=43240.

Attachment 1: dat
<?xml version="1.0"?>
<!DOCTYPE LIGO_LW [
<!ELEMENT LIGO_LW ((LIGO_LW|Comment|Param|Time|Table|Array|Stream)*)>
<!ATTLIST LIGO_LW Name CDATA #IMPLIED Type CDATA #IMPLIED>
<!ELEMENT Comment (#PCDATA)>
<!ELEMENT Param (#PCDATA)>
<!ATTLIST Param Name CDATA #IMPLIED Type CDATA #IMPLIED Dim CDATA #IMPLIED
Unit CDATA #IMPLIED>
<!ELEMENT Table (Comment?,Column*,Stream?)>
<!ATTLIST Table Name CDATA #IMPLIED Type CDATA #IMPLIED>

... 1921 more lines ...
Attachment 2: Screenshot_from_2019-08-16_09-53-19.png
Attachment 3: Screenshot_from_2019-08-16_09-52-44.png
Attachment 4: Screenshot_from_2019-08-16_09-52-07.png
Attachment 5: Screenshot_from_2019-08-16_09-51-24.png
1803   Sat Aug 3 23:19:55 2019 DuoSummaryElectronicsOp amp oscillation caused by capacitive loading and its fix

When we connect the voltage monitor channel of the noisemon board to a long cable (100ft), the op amp (LT1792) oscillates. Usually putting a 50 ohm resistor at the end will fix it. In this post, I studied how the oscillation happens and why putting a 50 ohm resistor will fix it.

We know 1) op amp has a dominant pole, giving a phase shift of 90 degrees 2) op amp oscillates when the loop gain is unity and the phase shift is 180 degrees. 3) Op amp has some non-zero output resistance.

Based on 3), we can see that when the output is capacitively loaded, there will be another pole in the transfer function due to the RC configuration. Since both R and C are small, it will be at high frequency (as op amp oscillations usually are). Thus, beyond the dominant pole, the phase will keep shifting to 180 degree based on 1). When this happens before the loop gain drops to unity, there will be oscillation based on 2).

Fix: insert a resistor at the output. This fixes the problem since it adds a zero with frequency a bit higher than the parasitic pole. This zero pulls the phase up so that when the loop gain reaches unity, the phase is around 90, at least far from 180, preventing oscillation from happening. The transfer function of this is simulated in LISO. From the plot, we can see the effect of the output resistance pulling the phase up to zero (90 in the case of an opamp because of the dominant pole).

Attachment 1: osci.fil
uinput vin 1
gnuterm pdf
r rout 50 vin vout
r rproc 50 vout rproc_1
c cload 1n rproc_1 GND
uoutput vout:db:deg
freq log 1 1G 1000 ### from data file

Attachment 2: osci.pdf
1802   Mon Jul 29 13:59:02 2019 DuoNoise HuntingElectronicsNoisemon board test plan

Voltage monitor test data. Theory: 20 * log(1/2 * 1/3) = -15.6dB. ~1dB less attenuation from calculation.

Quote:

Transfer function. The simulation and the test results differs by a phase of 180 degree (attachment 3). I added 180 degree got attachment 1.

Quote:

Noisemon transfer function with phase, in dB counts.

 Quote: 1. Transfer functions of 1-4 channels, compare with simulations. 2. Noise of 1-4 channels, compare with simulations. 3. If feasible, nonlinearity. 4. Functionality of fast current, slow current and  voltage monitor channels. All test results will reply to this post.

Attachment 1: Desktop
           0   -14.423977          180
1   -14.401674   -179.99416
2   -14.393744    179.94778
3   -14.352913    179.65042
4   -14.313849    179.05284
5   -14.353559    179.54588
6   -14.366872    179.65906
7   -14.366401    179.50722
8   -14.384005    179.51443
9   -14.367351    179.73422

... 9991 more lines ...
Attachment 2: Screenshot_from_2019-07-29_13-59-25.png
1801   Wed Jul 24 00:12:18 2019 DuoNoise HuntingElectronicsNoisemon board test plan

Transfer function. The simulation and the test results differs by a phase of 180 degree (attachment 3). I added 180 degree got attachment 1.

Quote:

Noisemon transfer function with phase, in dB counts.

 Quote: 1. Transfer functions of 1-4 channels, compare with simulations. 2. Noise of 1-4 channels, compare with simulations. 3. If feasible, nonlinearity. 4. Functionality of fast current, slow current and  voltage monitor channels. All test results will reply to this post.

Attachment 1: TransferFunction.pdf
Attachment 2: tf.zip
Attachment 3: TransferFunction1.pdf
1800   Tue Jul 23 18:44:34 2019 DuoNoise HuntingElectronicsNoisemon board test plan

Noisemon transfer function with phase, in dB counts.

 Quote: 1. Transfer functions of 1-4 channels, compare with simulations. 2. Noise of 1-4 channels, compare with simulations. 3. If feasible, nonlinearity. 4. Functionality of fast current, slow current and  voltage monitor channels. All test results will reply to this post.

Attachment 1: tf
           1    9.7050228     123.2298    10.239232    123.21356   -10.019529   -118.16026   -10.616507   -118.89268
2   -34.514286     31.98028    -24.85087    15.130191   -47.043491    52.538929   -48.512966    55.107563
3   -36.056171   -4.5462341   -36.446568   -56.627953   -31.206287    61.423027   -32.429966    45.018265
4   -21.379314    33.787785   -19.129549    22.378428   -25.811764    58.529861   -23.563175     49.62664
5     -11.7675    27.131598   -10.383668    28.965872   -11.698998    37.911072   -11.602596     37.31863
6   -2.9505889    27.217129   -2.9378238    27.117661   -5.3381448    27.359547   -5.3463163    25.167641
7    1.4774156    15.846872    1.6330251    17.754173  -0.70415765    18.485508  -0.56274724    16.864006
8    6.3308201    11.971453    6.3700743    13.936064    8.5621395    16.351494    8.6424751    15.114208
9    12.133464   -6.1598492    12.190346   -4.7948561    13.710788   -6.6996503    13.754128   -7.9086943
10    17.565397   -19.773212    17.708769   -17.956547    17.125546   -19.085073     17.13752   -20.339249

... 990 more lines ...
1799   Tue Jul 23 16:31:19 2019 DuoNoise HuntingElectronicsNoisemon board test plan

I forgot to add the ADC noise. Now that I put the ADC noise there, the noise matches beautifully.

 Quote: Noise compared with LISO. In the region we care about noise (20 - 100 Hz), we can see it matches well with LISO calculations. But why not at all frequencies ??

Attachment 1: noise.zip
Attachment 2: noise.pdf
1798   Fri Jul 19 23:55:19 2019 DuoNoise HuntingElectronicsNoisemon board test plan

Noise compared with LISO.

In the region we care about noise (20 - 100 Hz), we can see it matches well with LISO calculations.

But why not at all frequencies ??

Attachment 1: noise.pdf
Attachment 2: noise.zip
1797   Thu Jul 18 16:44:30 2019 DuoNoise HuntingElectronicsNoisemon board test plan

Analyzed Noisemon + Coil driver TF. The coil driver is in LP_OFF and ACQ_OFF status. The TFMeasured.txt file in the zip is in counts (ADC over DAC) so we need to add 20log10(2) to convert it to volts.

Quote:

Noisemon + Coil driver TF and noise data. This is raw data measured from the lab. TF data is in counts dB. It needs to be converted to volts dB (+6.02dB). The noise is in ADC counts: 2^16 counts is 40V.

 Quote: 1. Transfer functions of 1-4 channels, compare with simulations. 2. Noise of 1-4 channels, compare with simulations. 3. If feasible, nonlinearity. 4. Functionality of fast current, slow current and  voltage monitor channels. All test results will reply to this post.

Attachment 1: tf.pdf
Attachment 2: tf.zip
1796   Thu Jul 18 11:50:43 2019 DuoNoise HuntingElectronicsNoisemon board test plan

Noisemon + Coil driver TF and noise data. This is raw data measured from the lab. TF data is in counts dB. It needs to be converted to volts dB (+6.02dB). The noise is in ADC counts: 2^16 counts is 40V.

 Quote: 1. Transfer functions of 1-4 channels, compare with simulations. 2. Noise of 1-4 channels, compare with simulations. 3. If feasible, nonlinearity. 4. Functionality of fast current, slow current and  voltage monitor channels. All test results will reply to this post.

Attachment 1: noise
           0 0.0060799727 0.0036104703 0.0035354728 0.0043438259
1  0.011494039 0.0093825972 0.0096197175  0.012887708
2  0.011482876 0.0092526972  0.007686412  0.010214086
3  0.007793535  0.010190732 0.0093236016 0.0063966918
4  0.008946578  0.010989403  0.010403648 0.0065775975
5 0.0091153961 0.0096783806 0.0093079647 0.0084264427
6 0.0066599683 0.0073985206 0.0084112696 0.0085661933
7 0.0089498917 0.0082680834 0.0077745947  0.009830121
8  0.010017198 0.0076360367  0.008065613  0.010290137
9 0.0086757941 0.0073405644 0.0076935664 0.0088897012

... 991 more lines ...
Attachment 2: tf
           0    17.698841    18.056847    18.090052    17.871181
1 -0.0032254728   0.89752418    0.1702327  -0.15558846
2   -23.998034   -20.766872   -26.681761   -29.600937
3    -18.63299   -15.572646   -21.355885   -24.697672
4   -27.239981   -20.098402   -30.695086   -28.402729
5   -17.836342   -22.218195   -15.790459   -14.902033
6   -6.2559071   -7.0367184   -5.5133157   -5.1673536
7    2.6998141    2.9237394    2.8741286    2.8509607
8    6.9691806    6.9828043    7.2662587    7.3255196
9    12.865563    12.936651    13.216954    13.254182

... 9991 more lines ...
1795   Wed Jul 17 13:35:02 2019 DuoDailyProgress Unknown issue

I connected the DAC to ADC direclty (picture 1) and send a sine signal into the DAC. However, I did not get the sine signal back from the ADC. I sent the signal in X1:CRY-DITHER_W_MOD_EXC, channel 9 of DAC and expect the signal from X1:CRY-E_REFLDC_IN1, channel 16 of ADC. However, picture 2 shows what I get: a constant signal around 4400 counts.

Attachment 1: image1.jpeg
Attachment 2: Screenshot_from_2019-07-17_13-34-29.png
1791   Fri Jul 12 13:45:39 2019 DuoNoise HuntingElectronicsNoisemon board test plan

1. Transfer functions of 1-4 channels, compare with simulations.

2. Noise of 1-4 channels, compare with simulations.

3. If feasible, nonlinearity.

4. Functionality of fast current, slow current and  voltage monitor channels.

All test results will reply to this post.

1790   Sat Jun 8 15:52:48 2019 DuoMisc Arrival date of noisemon

We ordered the board from Screaming Circuits and chose to provide the component ourselves. However, the parcel we ordered from Verical was lost by Fedex on its way to Screaming Circuits. The original delivery date was delay from late May to June 13.

Once the board arrives, we will test the board - TF, noise etc. Any others?

1789   Wed Apr 17 16:34:37 2019 DuoDailyProgress Noisemon update

We added differential drivers at the outputs of all the monitors. After that the routing becomes impossible at the output connectors.

I replaced the signal ground with an additional signal layer, and reversed the order of the channels on the layout.

Having exhausted all the possible routing tricks, I finally managed to connect the whole board.

Attachment 1: MonitorCircuit.SchDoc
Attachment 2: MonitorBoard.SchDoc
Attachment 3: MonitorBoard1.PcbDoc
Attachment 4: noisemon.pdf
1788   Mon Apr 1 20:25:20 2019 DuoDailyProgress Changes on noisemon being made

Attachment: new PCB schematics with all the changes made.

We (Chris and I) had a conversation with Rich last week and the following work on the noisemon board has been suggested:

1. Name of power nets: +VCC to +15, -VCC to -15. +V to +18; -V to -18, making it clearer what the power is.

2. Fix the off-grid problems of the schematics.

3. Draw the circuits on the schematics in the standard way. (Rich gave me a bunch of snippets that shows the standard way to draw the circuits, like how to draw a sallen key filter)

4. Ground the shells of the D connectors.

5. Add 1 Ohm resistors at the inputs of the power regulators

6. Use polymer tantalum with at least 35V rating. Previously we are not using polymer ones. Rich said the ones (non-polymer ones) we were using burn and explode sometimes.

7. Add "No error checking" for those pins not being used (e.g. unused op amp pins)

8. Disassemble the "repeat()" in the sheet symbol. Making four sheet symbols and connect them directly to the connectors.

9. Change the outputs of the current monitor, noise monitor and the voltage monitor to differential. Previously we had one of the pins of the D connectors pairs grounded. Now we add a differential driver at the end. It doubles the gain and the range.

Rich said my PCB routing was OK, so all the changes can be reflected on the schematics. I have made all the changes on the schematics (I do have the previous version). The current schematics is attached.

However, "#9 change the outputs to differential" requires a lot more space and the current PCB routing does not have enough free space between the components. Thus, this requires routing the whole PCB again, which is what I am working on now.

Attachment 1: noisemon.pdf
1787   Tue Feb 19 18:11:43 2019 DuoDailyProgress Tuesday report

Some clean up work on the noisemon is done.

1. Added compensate capacitor.

2. Added mounting holes.

3. Added DCC number. https://dcc.ligo.org/LIGO-D1900052

4. Renumbered the components.

5. Added 0 ohm resistor between power ground and signal ground.

6. Added more test points for the voltage monitor and current monitor.

7. Increased schematics font size.

Next I will create the Bill Of Materials. I need to assemble the manufacturer information and put meaningful and consistent descriptions for the components.

Attachment 1: noisemon.pdf
1786   Fri Feb 15 18:38:00 2019 ranaNoise HuntingElectronicsNoiseMon nonlinearity?

Before making a wide deployment, we should also test the latest noisemon circuit for downconversion.

1. Measure the noise output with no DAC signal
2. Measure the noise output with 0.1x the reference DAC signal (low noise ETM drive)
3. Drive a line at high frequency in addition to the reference signal
4. adjust the ampltiudes of the high frequency drive and the reference signal independently and look at how the 20-100 Hz noise changes.
1785   Tue Feb 5 20:55:34 2019 DuoSummary Noisemon test results

Based on the test results posted, I did the following analysis:

1. Compared measured transfer function to the LISO calculations. Attachment 4 and 6. The transfer functions match well with LISO.

2. Compared measured noise at the output to the LISO calculations. Attachment 1 and 3. The noise is more than LISO calculations by roughly a factor of 2, but I think it is expected - there is coil driver noises (amplified more than 300 times). Also, LISO uses ideal resistors, considering that the noise here is dominated by resistor noise. We also have plots of the noise spectrum with DAC noises injected. In this case, the noise in the passband (20 - 100Hz) is much more, suggesting that the board noise is dominated by the DAC noise.

3. Compared input-referenced measured noise to DAC noise. Attachment 2 and 5. We divided the noise by the transfer function and compare it directly with the DAC noise model. We can see that, in the passband, the board noise is about a factor of 10 less than the DAC noise (channel 2 and 4 has more noise; the signal is polluted by the ADC).

4. A simple calculation based on the transfer function comparing the ADC noise and the amplified DAC noise.

DAC noise > 300nV/rtHz. Passband amplification > 50dB > 300. Amplified DAC noise in the passband > 90uV/rtHz, compared to ADC noise 4uV/rtHz.

FYI: 1. I cannot attachment PDF plots directly since it will stuck the elog server. I put some PNG plots, but PDF plots can still be found in the compressed files.

2. Also, channel 2 is more noisey. It comes from ADC not the noisemon.

Attachment 1: MeasuredNoiseAndLISO.tgz
Attachment 2: InputRefVsDAC.tgz
Attachment 3: MeasuredNoiseAndLISO.png
Attachment 4: BodePlot.png
Attachment 5: InputRefVsDAC.png
Attachment 6: BodePlot.zip
1784   Fri Feb 1 12:35:13 2019 not DuoDailyProgress Update on the noisemon board

Duo's noisemon has been in the EE shop/cryo lab for testing.  It is a drop-in replacement for the existing monitor board, including both noisemon and Vmon/Imon/RMSmon circuits for all four channels.

Duo is still working on a log entry summarizing the performance of the new board vs simulation.  This entry shows some measurements of the performance of the new board vs the old board.

Attachments:

1. Transfer functions of the new noisemon board, in coil driver state 1.
2. Noise spectra of the new noisemon board, in coil driver state 1, with and without DAC noise input.
3. Transfer function of an old noisemon board, in coil driver state 1.
4. Noise spectra of an old noisemon board, in coil driver state 1, with (REF traces) and without (live traces) DAC noise input.
Attachment 1: new_noisemon_tf.png
Attachment 2: new_noisemon_spectra.png
Attachment 3: old_noisemon_tf.png
Attachment 4: old_noisemon_spectra.png
1783   Sun Jan 20 16:00:37 2019 DuoDailyProgress Update on the noisemon board

Two more oscillations problems are resolved, and there is no more oscillations. In the time series (the inputs are terminated), we see only the 60Hz noise.

- Some big bypass capacitors are used to regulate the power.

- A small capacitor is attached to the negative feedback loop in the second HP filter.

New board/components arrived. I will assemble and test them immediately.

Attachment 1: TF_20-01-2019_155018_Spectrum.pdf
Attachment 2: TF_20-01-2019_155018.txt
# SR785 Measurement - Timestamp: Jan 20 2019 - 15:50:18
#---------- Measurement Setup ------------
# Start frequency (Hz) = 5.000000
# Stop frequency (Hz) = 1000.000000
# Number of frequency points = 200
# Excitation amplitude (mV) = 10.000000
# Settling cycles = 1
# Integration cycles = 10
#---------- Measurement Parameters ----------
# Measurement Group:  "Swept Sine" "Swept Sine"

... 220 more lines ...
Attachment 3: noisespectrum_20-01-2019_150429_Spectrum.pdf
Attachment 4: noisespectrum_20-01-2019_150429.txt
# SR785 Measurement - Timestamp: Jan 20 2019 - 15:04:29
#---------- Measurement Setup ------------
# Start Frequency (Hz): 0.000000
# Frequency Span (Hz): 1600.000000
# Frequency Resolution: 400
# Number of Averages: 100
# Averaging Mode: RMS
# Window function: BMH
#---------- Measurement Parameters ----------
# Measurement Group:  "FFT" "FFT"

... 420 more lines ...
Attachment 5: TimeSeries.jpg
1782   Tue Jan 8 22:47:07 2019 DuoDailyProgress Isolated test of the oscillating op amp

After a few days of struggling (and essential help from Chris), mystery is resolved. Fortunately, the oscillation does not have much to do with my circuit design. It is caused by the RLC resonance formed by 1) the inductance of the parallel wires + 2) capacitance of the signal ground plane and the power ground plane.

As is seen in the picture, I twisted the two grounding wires together (reduce the inductance) and the oscillation is gone.

You can also connect the planes on the board (removing the capacitance) and the oscillation will disappear as well.

 Quote: It seems there can be multiple reasons for an op amp to oscillate. I wanted to identify the nature of the oscillation. I want to isolate one stage and see what is going on. I used the extra empty board and assembled the last stage on it. Putting in nothing at all (the input is GND), I get a signal of 5.792MHz, 321mV at the output. Now that the problem is even more clear, I will keep looking into this.

Attachment 1: asdf.jpg
Attachment 2: aqf.jpg
1781   Sun Jan 6 15:37:39 2019 DuoDailyProgress Isolated test of the oscillating op amp

It seems there can be multiple reasons for an op amp to oscillate. I wanted to identify the nature of the oscillation.

I want to isolate one stage and see what is going on. I used the extra empty board and assembled the last stage on it. Putting in nothing at all (the input is GND), I get a signal of 5.792MHz, 321mV at the output.

Now that the problem is even more clear, I will keep looking into this.

Attachment 1: oscilliscope.jpg
Attachment 2: board.jpg
1780   Fri Jan 4 22:18:53 2019 DuoDailyProgressElectronicsUpdates

Photo attached in attachment 1.

The times series output is shown in attachment 2 (Attached picture since I cannot get data from the oscilliscope, which requires floppy disk data transfer). There is an 87mV/rtHz oscillation at about 1.4MHz (op amp oscillation?).

I tested the noise with SR785, both time and frequency domains, in attachment 4 and 5. In time domain, I only see the 60Hz noise, not the 1.4MHz one (maybe because SR785 does not reach that high frequency). In frequency domain, noise in the passband is generally less than 10uVrms/rtHz. With a gain of 125, 10uV/rtHz corresponds to roughly 100nV/rtHz.

Attachment 3 is the transfer function, which is as we wanted, with a gain 2.5 less since this version does not have the last stage.

Internal saturation: what input do we use to test it?

Note: the noise FFT measurement has a lot of time dependence. It fluctuates a lot. Also sometimes (just a few hours before this measurement), I cannot reproduce the noise measurement mysteriously - it gives me much higher noise.

 Quote: add photo of stuffed board add time series of output with input terminated check for internal saturations use the software from Craig to download and plot the SR785 data
Attachment 1: time_series.jpg
Attachment 2: board.jpg
Attachment 3: TransferFunction.zip
Attachment 4: NoiseFrequency.zip
Attachment 5: NoiseTimeSeries.zip
Attachment 6: TransferFunction.pdf
Attachment 7: NoiseTimeSeries.pdf
Attachment 8: NoiseFrequency.pdf
1779   Thu Jan 3 16:24:22 2019 DuoDailyProgress Noise in the last Low pass sallen key filter

The reason for this problem was found. The gain of the sallen key filters was too high. There is an intrinsic limit of the sallen key filters - they cannot have a gain more than a certain value. Otherwise, they will be unstable. See this TI document  for details.

 Quote: Progress: 1. Board assembled 2. One design error found and fixed in the instrumental amplifier. Now the instrumental amplifier is working Issue: Noise above 100Hz (pass band 20-100Hz), as shown in the transfer function in the picture.  The noise comes from the last stage of the circuit: the low pass sallen key filter. The first two high pass stages works well. (structure of the circuit: differential input - passive filter - instrumental amplifier - high pass - high pass - low pass - output) I have tried 1. Checking the connections - the connections are good 2. Replacing the opamp - did not work

1778   Thu Jan 3 15:33:40 2019 DuoDailyProgress New, Full noisemon completed

Here is a full version of the noisemon, with four channels and the power regulator. I did the routing again since the previous routing 1) did not leave enough space for connectors/other components; 2) Altium does not transfer properly from the schematics to the PCB layout when expanding to 4 channels.

Attachment 1: MonitorCircuit.SchDoc
Attachment 2: MonitorBoard.PcbDoc
Attachment 3: MonitorBoard.SchDoc
1777   Mon Dec 17 11:20:32 2018 ranaDailyProgressElectronicsSR785 netgpibdata
1. add photo of stuffed board
2. add time series of output with input terminated
3. check for internal saturations
4. use the software from Craig to download and plot the SR785 data
1776   Sat Dec 15 15:30:44 2018 DuoDailyProgress Noise in the last Low pass sallen key filter

Progress:

1. Board assembled

2. One design error found and fixed in the instrumental amplifier. Now the instrumental amplifier is working

Issue:

Noise above 100Hz (pass band 20-100Hz), as shown in the transfer function in the picture.

The noise comes from the last stage of the circuit: the low pass sallen key filter. The first two high pass stages works well.

(structure of the circuit: differential input - passive filter - instrumental amplifier - high pass - high pass - low pass - output)

I have tried

1. Checking the connections - the connections are good

2. Replacing the opamp - did not work

Attachment 1: IMG_0488.JPG
1775   Wed Dec 12 21:50:44 2018 DuoDailyProgress New board arrived and other components on the board placed in Altium

The new board arrived this afternoon. I tried the connections - it has enough layers and is grounded. I will assemble the board tomorrow.

In the meanwhile, I have put other unchanged components on the board into Altium, not quite finished (put them in schematics but not PCB, gives me error when importing changes). I will prioritize assembling the new board.

A picture of the board is attached.

Attachment 1: board.jpg
1774   Fri Dec 7 18:27:27 2018 DuoMisc Noisemon problem identified and another order placed

Progress: The reason why the board from oshpark did not work is found. The board has 6 layers, but Oshpark only make 2 or 4 layer boards. They just ignored two layers (the two ground layers) so there is no ground at all on the board.

Some known issues is fixed in the new board (capacitor footprint, connector in the wrong direction). The new board will arrive next Wednesday.

Some good quality connectors are made - next board will be ready to test once arrived.

Next: I plan to put other components into Altium by Wednesday.

ELOG V3.1.3-