J. Kissel
WP 10150
ECR E2100204
IIET Ticket 21642
After Fil installed the changes to the low-pass filter (relevant to State 3 for) for ITMX (S1000346) and ITMY (S1102654) PUM drivers (see LHO:60997), as per ECR E2100204, and I discovered that the benchtop data for the response was not of high enough quality for a calibration group level fit (see LHO:61214), I've spent two days by CER rack SUS-C6 grabbing really high quality data.
As a result, we now have *very* low noise data from 0.2 Hz to 10 kHz, from which I was able to extract low-order, sub-Nyquist frequency, (almost all) real zero:pole pair fits that leave a residual (ratio of measurement / fit) better than magnitude and phase of 0.001 and 0.1 deg between 1 Hz and 2 kHz. This should allow for compensation in the COILOUTF banks to be equally exquisite.
Assuming we continue *not* using the ITMs for DARM control during observation-ready data, the ITMs don't really need this exquisite level of compensation, but:
- I needed the practice in measuring coil driver electronics in prep for measuring where it matters -- on the ETMs,
- I needed the practice with the new(ish) measurement device -- the SR785 Accessory Suite (D1900068),
- I wanted to exercise all the mysteries out of the measurement data, and make sure I had all equipment necessary, while at the corner station so I minimized the number of trips to the end station,
- I needed the practice fitting the data "on the fly" to make *sure* that my chosen measurement parameters (frequency vector, source amplitude, etc.) resulted in data of high enough quality for above mentioned exquisite fit, again, for when it matters.
So, hurray! In passing, we get awesome frequency response compensation for the ITMs too. While it may not matter for DARM calibration, this actually may help out with decreasing Length to Angle coupling, as now that we will be sure that the *relative* differences in *frequency* response of the 4 OSEMs in the PUM length drive will be the same, we can then run through our usual coil balancing technique, and be sure that when we're driving at ~3 - 4 Hz in any given state, we'll know that it is an *over all gain* difference we're balancing, not a frequency response difference.
OK, enough motivation / justification. Let's get to the measurement technique, data, and results.
%%%% Measurement Technique %%%%%
In order to grab the data, I used an SR785 for my data acquisition system and the D1900068 Accessory box to convert the SR785's single-ended source voltage to differential drive suitable for the PUM driver chassis. In order to simplify the data as much as I could for the fitting routine, I grabbed transfer functions of the driver with output of the driver disconnected from the QUAD's AOSEM cabling, and instead replaced it, and loaded the output of each channel with a 40 Ohm resistor via a custom-made jig that Fil's made. I drove 4 V (peak) single-ended into the accessory box, which drove 2 V (peak) on to each differential leg, creating a 4 V differential drive through the box, which is ~1/5th the range that the nominally connected DAC can drive. I drove from 0.2 Hz to 10 kHz, again, knowing that I want a good fit between 1 Hz and 1 kHz, and a supremely awesome fit between 10 and 100 Hz. Unfortunately, that meant each measurement of each channel, in each state, took ~10 minutes. But -- this is the price one pays for this kind of sub 1% accuracy (just talk to the PCAL team!).
Note, I did *not* use a GPIB setup for automated SR785 setup and data gathering because I was already spending a lot of time figuring out the new-to-me SR785 Accessory box, taking ~4 hours worth of mission critical data, and trying not to mess up. So I sacrificed debugging the infrequently-used, oft-headache-inducing GPIB to CDS network interface (or to any laptop interface), especially while the wireless internet signal was weak in the CER. At LHO, we just don't use this system enough and don't have the person power to ensure that it's a well-maintained easy to use system.
Diagrams / Pictures are worth a thousand words, so check out
- D1900027-v2_CoilDriverChassisSetup_DummyOsemChain.pdf for the measurement set-up using the 40 Ohm load,
- D1900027-v2_CoilDriverChassisSetup_RealOsemChain.pdf for the measurement set-up with the real AOSEM impedance, and
- 2022-01-11_ITM_PUMDriver_MeasSetup.pdf for pictures.
%%%% Data and Fitting Routine %%%%
The raw data for each chassis is committed to
/ligo/svncommon/CalSVN/aligocalibration/trunk/Common/Electronics/H1/Data/SUSElectronics/ITMX/PUM/2022-01-10/
and
/ligo/svncommon/CalSVN/aligocalibration/trunk/Common/Electronics/H1/Data/SUSElectronics/ITMY/PUM/2022-01-11/
with more detailed measurement notes about the SR785 setup included in there. Hopefully the filenames are long enough to be self-explanatory.
However, also, you don't need to understand the filenaming scheme, because the processing/fitting.plot script for each ITM are commmited here:
/ligo/gitcommon/suspensions/ligo/electronics/fits/
fit_ITMX_PUM_driver_20220110.py
fit_ITMY_PUM_driver_20220111.py
These use IIRrational as the work horse for the fitting.
%%%% Results %%%%
You may find the results attached.
For the poles and zeros, check out
2022-01-10_H1SUSITMX_PUMDriver_S1000346_FitResults.txt and
2022-01-11_H1SUSITMY_PUMDriver_S1102654_FitResults.txt
and for plots of the residuals between measurement and fit, check out the remaining *ResidualSummary.pdf attachments. Repeating what I said in the intro, these residuals are all less that 0.1% / 0.1 deg in magnitude / phase.
%%%% Commentary %%%%
While the vast majorit of the fit results were beautiful (again, low-order, sub-Nyquist frequency, (almost all) real zero:pole pair), some were more interesting.
(1) Recall that there are two switchable filters, the low-pass and the acquire filters. ECR E2100204 only modifies the low-pass filter stage, but because the acquire filter stage has a pole-zero pair response when it's both ON and OFF, we can't *just* measure State 3 and measure the change in low pass in isolation. So, as described at the very end of LHO:61231,
(a) Fitting State 1 alone yields the Acquire OFF zero:pole pair
(b) Fitting State 2 alone yields the Acquire ON zero:pole pair
(c) The ratio of State 3 to State 1 will have only the lowpass filter zeros:poles
Interestingly, that means that can get independent fits of (a) and (c), as well as
(d) Fitting State 3 alone yields a cross-check of (a) and (c)
And for the most part, comparing the fit results between (c) and (d) yield the same frequencies for poles and zeros to less that 1% difference (assuming values from the simpler data set (c) are the "expected" values in the percent difference calculation).
However, there are a few random fits (e.g. IMTX State 3 LL, ITMY State 3 / State 1 UR) that are just not like the others. I think, in this case, even though it'll look wonky in the foton file to have one or two filter banks have "not like the other" results we'll just have to be OK with it. They're not *that* much different, and we'll have this aLOG that'll tell the story as to why.
(2) State 2 apparently needs a super-Nyquist zero:pole pair at ~43.5:33 kHz in order to achieve complete and utter awesomeness. Since it's highly likely that we'll *not* be using State 2's high-gain response in observation-ready, I think it's OK that we leave out this zero:pole pair in the compensation. Not compensating for this z:p pair only results in a systematic error of 1.7e-4 % / 0.0385 deg at 100 Hz and 0.017% / 0.384 deg at 1 kHz.
(3) The order (number of z:p pairs) of all of the fits is less than 4 for all fits. I *tried* restricting the fits to only use real zeros and poles, but apparently somehow ITMX's LL coil fit to State 3 still needs a pair of complex zeros in order to explain the data. I think we can safely use the real zeros from the State 3 / State 1 fit for the compensation and be happy.
(4) Still on the to-do list is to show the residual between the data and the *chosen* zeros:poles (i.e. what's left over after some of the "reality check" exclusions mentioned the above commentary), and then propagate that would-be error in compensation of the PUM actuator to the overall DARM response function. I'm pretty sure that the answers going to be "completely negligible" but -- that's the goal -- and we'll have proof in modelling that confirms it and provides a quantitative value for it, so we can make statements in papers that define what "negligible" means.