nass-micro-station-measurem.../slip-ring-test/index.org

40 KiB

Measurements

Effect of the rotation of the Slip-Ring

The data and matlab files are accessible here.

Measurement Description

Random Signal is generated by one DAC of the SpeedGoat.

The signal going out of the DAC is split into two:

  • one BNC cable is directly connected to one ADC of the SpeedGoat
  • one BNC cable goes two times in the Slip-Ring (from bottom to top and then from top to bottom) and then is connected to one ADC of the SpeedGoat

Two measurements are done.

Data File Description
mat/data_001.mat Slip-ring not turning
mat/data_002.mat Slip-ring turning

For each measurement, the measured signals are:

Data File Description
t Time vector
x1 Direct signal
x2 Signal going through the Slip-Ring

The goal is to determine is the signal is altered when the spindle is rotating.

Here, the rotation speed of the Slip-Ring is set to 1rpm.

Load data

We load the data of the z axis of two geophones.

  sr_off = load('mat/data_001.mat', 't', 'x1', 'x2');
  sr_on  = load('mat/data_002.mat', 't', 'x1', 'x2');

Analysis

Let's first look at the signal produced by the DAC (figure fig:random_signal).

  figure;
  hold on;
  plot(sr_on.t,  sr_on.x1);
  hold off;
  xlabel('Time [s]'); ylabel('Voltage [V]');
  xlim([0 10]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/random_signal.png

Random signal produced by the DAC

We now look at the difference between the signal directly measured by the ADC and the signal that goes through the slip-ring (figure fig:slipring_comp_signals).

  figure;
  hold on;
  plot(sr_on.t,  sr_on.x1  -  sr_on.x2,  'DisplayName', 'Slip-Ring - $\omega = 1rpm$');
  plot(sr_off.t, sr_off.x1 - sr_off.x2,'DisplayName', 'Slip-Ring off');
  hold off;
  xlabel('Time [s]'); ylabel('Voltage [V]');
  xlim([0 10]);
  legend('Location', 'northeast');
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/slipring_comp_signals.png

Alteration of the signal when the slip-ring is turning
  dt = sr_on.t(2) - sr_on.t(1);
  Fs = 1/dt; % [Hz]

  win = hanning(ceil(1*Fs));
  [pxx_on,  f] = pwelch(sr_on.x1  - sr_on.x2,  win, [], [], Fs);
  [pxx_off, ~] = pwelch(sr_off.x1 - sr_off.x2, win, [], [], Fs);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/psd_noise.png

ASD of the measured noise

Conclusion

Remaining questions:

  • Should the measurement be redone using voltage amplifiers?
  • Use higher rotation speed and measure for longer periods (to have multiple revolutions) ?

Measure of the noise of the Voltage Amplifier

The data and matlab files are accessible here.

Measurement Description

Goal:

  • Determine the Voltage Amplifier noise

Setup:

  • The two inputs (differential) of the voltage amplifier are shunted with 50Ohms
  • The AC/DC option of the Voltage amplifier is on AC
  • The low pass filter is set to 1hHz
  • We measure the output of the voltage amplifier with a 16bits ADC of the Speedgoat

Measurements:

  • data_003: Ampli OFF
  • data_004: Ampli ON set to 20dB
  • data_005: Ampli ON set to 40dB
  • data_006: Ampli ON set to 60dB

Load data

  amp_off = load('mat/data_003.mat', 'data'); amp_off = amp_off.data(:, [1,3]);
  amp_20d = load('mat/data_004.mat', 'data'); amp_20d = amp_20d.data(:, [1,3]);
  amp_40d = load('mat/data_005.mat', 'data'); amp_40d = amp_40d.data(:, [1,3]);
  amp_60d = load('mat/data_006.mat', 'data'); amp_60d = amp_60d.data(:, [1,3]);

Time Domain

The time domain signals are shown on figure fig:ampli_noise_time.

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/ampli_noise_time.png

Output of the amplifier

Frequency Domain

We first compute some parameters that will be used for the PSD computation.

  dt = amp_off(2, 2)-amp_off(1, 2);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));

Then we compute the Power Spectral Density using pwelch function.

  [pxoff, f] = pwelch(amp_off(:,1), win, [], [], Fs);
  [px20d, ~] = pwelch(amp_20d(:,1), win, [], [], Fs);
  [px40d, ~] = pwelch(amp_40d(:,1), win, [], [], Fs);
  [px60d, ~] = pwelch(amp_60d(:,1), win, [], [], Fs);

We compute the theoretical ADC noise.

  q = 20/2^16; % quantization
  Sq = q^2/12/1000; % PSD of the ADC noise

Finally, the ASD is shown on figure fig:ampli_noise_psd.

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/ampli_noise_psd.png

Amplitude Spectral Density of the measured voltage at the output of the voltage amplifier

Conclusion

Questions:

  • Where does those sharp peaks comes from? Can this be due to aliasing?

Noise induced by the voltage amplifiers seems not to be a limiting factor as we have the same noise when they are OFF and ON.

Measure of the noise induced by the Slip-Ring

The data and matlab files are accessible here.

Measurement Description

Goal:

  • Determine the noise induced by the slip-ring

Setup:

  • 0V is generated by the DAC of the Speedgoat
  • Using a T, one part goes directly to the ADC
  • The other part goes to the slip-ring 2 times and then to the ADC
  • The parameters of the Voltage Amplifier are: 80dB, AC, 1kHz
  • Every stage of the station is OFF

First column: Direct measure Second column: Slip-ring measure

Measurements:

  • data_008: Slip-Ring OFF
  • data_009: Slip-Ring ON
  • data_010: Slip-Ring ON and omega=6rpm
  • data_011: Slip-Ring ON and omega=60rpm
/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/img/VID_20190503_160831.gif
Slip-Ring rotating at 6rpm
/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/img/VID_20190503_161401.gif
Slip-Ring rotating at 60rpm

Load data

We load the data of the z axis of two geophones.

  sr_off = load('mat/data_008.mat', 'data'); sr_off = sr_off.data;
  sr_on  = load('mat/data_009.mat', 'data'); sr_on  = sr_on.data;
  sr_6r  = load('mat/data_010.mat', 'data'); sr_6r  = sr_6r.data;
  sr_60r = load('mat/data_011.mat', 'data'); sr_60r = sr_60r.data;

Time Domain

We plot the time domain data for the direct measurement (figure fig:sr_direct_time) and for the signal going through the slip-ring (figure fig:sr_slipring_time);

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_direct_time.png

Direct measurement
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_slipring_time.png

Measurement of the signal going through the Slip-Ring

Frequency Domain

We first compute some parameters that will be used for the PSD computation.

  dt = sr_off(2, 3)-sr_off(1, 3);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));

Then we compute the Power Spectral Density using pwelch function.

  [pxdir, f] = pwelch(sr_off(:, 1), win, [], [], Fs);
  [pxoff, ~] = pwelch(sr_off(:, 2), win, [], [], Fs);
  [pxon,  ~] = pwelch(sr_on(:, 2),  win, [], [], Fs);
  [px6r,  ~] = pwelch(sr_6r(:, 2),  win, [], [], Fs);
  [px60r, ~] = pwelch(sr_60r(:, 2), win, [], [], Fs);

And we plot the ASD of the measured signals (figure fig:sr_psd_compare);

  figure;
  hold on;
  plot(f, sqrt(pxoff), 'DisplayName', 'OFF');
  plot(f, sqrt(pxon),  'DisplayName', 'ON');
  plot(f, sqrt(px6r),  'DisplayName', '6rpm');
  plot(f, sqrt(px60r), 'DisplayName', '60rpm');
  plot(f, sqrt(pxdir), 'k-', 'DisplayName', 'Direct');
  hold off;
  set(gca, 'xscale', 'log');
  set(gca, 'yscale', 'log');
  xlabel('Frequency [Hz]'); ylabel('ASD of the measured Voltage $\left[\frac{V}{\sqrt{Hz}}\right]$')
  legend('Location', 'northeast');
  xlim([0.1, 500]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_psd_compare.png

Comparison of the ASD of the measured signals when the slip-ring is ON, OFF and turning

Conclusion

Questions:

  • Why is there some sharp peaks? Can this be due to aliasing?
  • It is possible that the amplifiers were saturating during the measurements => should redo the measurements with a low pass filter before the voltage amplifier

Measure of the noise induced by the slip ring when using a geophone

The data and matlab files are accessible here.

First Measurement without LPF

Measurement Description

Goal:

  • Determine if the noise induced by the slip-ring is a limiting factor when measuring the signal coming from a geophone

Setup:

  • The geophone is located at the sample location
  • The two Voltage amplifiers have the same following settings:

    • AC
    • 60dB
    • 1kHz
  • The signal from the geophone is split into two using a T-BNC:

    • One part goes directly to the voltage amplifier and then to the ADC.
    • The other part goes to the slip-ring=>voltage amplifier=>ADC.

First column: Direct measure Second column: Slip-ring measure

Measurements:

  • data_012: Slip-Ring OFF
  • data_013: Slip-Ring ON

Load data

We load the data of the z axis of two geophones.

  sr_off = load('mat/data_012.mat', 'data'); sr_off = sr_off.data;
  sr_on  = load('mat/data_013.mat', 'data'); sr_on  = sr_on.data;

Time Domain

We compare the signal when the Slip-Ring is OFF (figure fig:sr_geophone_time_off) and when it is ON (figure fig:sr_geophone_time_on).

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_geophone_time_off.png

Comparison of the time domain signals when the slip-ring is OFF
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_geophone_time_on.png

Comparison of the time domain signals when the slip-ring is ON

Frequency Domain

We first compute some parameters that will be used for the PSD computation.

  dt = sr_off(2, 3)-sr_off(1, 3);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));

Then we compute the Power Spectral Density using pwelch function.

  % Direct measure
  [pxdoff, ~] = pwelch(sr_off(:, 1), win, [], [], Fs);
  [pxdon,  ~] = pwelch(sr_on(:, 1),  win, [], [], Fs);

  % Slip-Ring measure
  [pxsroff, f] = pwelch(sr_off(:, 2), win, [], [], Fs);
  [pxsron,  ~] = pwelch(sr_on(:, 2),  win, [], [], Fs);

Finally, we compare the Amplitude Spectral Density of the signals (figure fig:sr_geophone_asd);

  figure;
  hold on;
  plot(f, sqrt(pxdoff), 'DisplayName', 'Direct - OFF');
  plot(f, sqrt(pxsroff), 'DisplayName', 'Slip-Ring - OFF');
  plot(f, sqrt(pxdon),  'DisplayName', 'Direct - ON');
  plot(f, sqrt(pxsron),  'DisplayName', 'Slip-Ring - ON');
  hold off;
  set(gca, 'xscale', 'log');
  set(gca, 'yscale', 'log');
  xlabel('Frequency [Hz]'); ylabel('ASD of the measured Voltage $\left[\frac{V}{\sqrt{Hz}}\right]$')
  legend('Location', 'northeast');
  xlim([0.1, 500]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_geophone_asd.png

Comparison of the Amplitude Spectral Sensity
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_geophone_asd_zoom.png

Comparison of the Amplitude Spectral Sensity - Zoom

Conclusion

  • The fact that the Slip-Ring is turned ON adds some noise to the signal.
  • The signal going through the Slip-Ring is less noisy than the one going directly to the ADC.
  • This could be due to less good electromagnetic isolation.

Questions:

Measurement using an oscilloscope

Measurement Setup

Know we are measuring the same signals but using an oscilloscope instead of the Speedgoat ADC.

Observations

Then the Slip-Ring is ON (figure fig:oscilloscope_sr_on), we observe a signal at 40kHz with a peak-to-peak amplitude of 200mV for the direct measure and 100mV for the signal going through the Slip-Ring.

Then the Slip-Ring is OFF, we don't observe this 40kHz anymore (figure fig:oscilloscope_sr_off).

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/img/IMG_20190506_160420.jpg
Signals measured by the oscilloscope - Slip-Ring ON - Yellow: Direct measure - Blue: Through Slip-Ring
/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/img/IMG_20190506_160438.jpg
Signals measured by the oscilloscope - Slip-Ring OFF - Yellow: Direct measure - Blue: Through Slip-Ring

Conclusion

  • By looking at the signals using an oscilloscope, there is a lot of high frequency noise when turning on the Slip-Ring
  • This can eventually saturate the voltage amplifiers (seen by a led indicating saturation)
  • The choice is to add a Low pass filter before the voltage amplifiers to not saturate them and filter the noise.

New measurements with a LPF before the Voltage Amplifiers

Setup description

A first order low pass filter is added before the Voltage Amplifiers with the following values:

\begin{aligned} R &= 1k\Omega \\ C &= 1\mu F \end{aligned}

And we have a cut-off frequency of $f_c = \frac{1}{RC} = 160Hz$.

We are measuring the signal from a geophone put on the marble with and without the added LPF:

  • with the slip ring OFF: mat/data_016.mat
  • with the slip ring ON: mat/data_017.mat

Load data

We load the data of the z axis of two geophones.

  sr_lpf_off = load('mat/data_016.mat', 'data'); sr_lpf_off = sr_lpf_off.data;
  sr_lpf_on  = load('mat/data_017.mat', 'data'); sr_lpf_on  = sr_lpf_on.data;

Time Domain

We compare the signal when the Slip-Ring is OFF (figure fig:sr_lpf_geophone_time_off) and when it is ON (figure fig:sr_lpf_geophone_time_on).

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_lpf_geophone_time_off.png

Comparison of the time domain signals when the slip-ring is OFF
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_lpf_geophone_time_on.png

Comparison of the time domain signals when the slip-ring is ON

Frequency Domain

We first compute some parameters that will be used for the PSD computation.

  dt = sr_lpf_off(2, 3)-sr_lpf_off(1, 3);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));

Then we compute the Power Spectral Density using pwelch function.

  % Direct measure
  [pxd_lpf_off, ~] = pwelch(sr_lpf_off(:, 1), win, [], [], Fs);
  [pxd_lpf_on,  ~] = pwelch(sr_lpf_on(:, 1),  win, [], [], Fs);

  % Slip-Ring measure
  [pxsr_lpf_off, f] = pwelch(sr_lpf_off(:, 2), win, [], [], Fs);
  [pxsr_lpf_on,  ~] = pwelch(sr_lpf_on(:, 2),  win, [], [], Fs);

Finally, we compare the Amplitude Spectral Density of the signals (figure fig:sr_lpf_geophone_asd);

  figure;
  hold on;
  plot(f, sqrt(pxd_lpf_off), 'DisplayName', 'Direct - OFF');
  plot(f, sqrt(pxsr_lpf_off), 'DisplayName', 'Slip-Ring - OFF');
  plot(f, sqrt(pxd_lpf_on),  'DisplayName', 'Direct - ON');
  plot(f, sqrt(pxsr_lpf_on),  'DisplayName', 'Slip-Ring - ON');
  hold off;
  set(gca, 'xscale', 'log');
  set(gca, 'yscale', 'log');
  xlabel('Frequency [Hz]'); ylabel('ASD of the measured Voltage $\left[\frac{V}{\sqrt{Hz}}\right]$')
  legend('Location', 'northeast');
  xlim([0.1, 500]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_lpf_geophone_asd.png

Comparison of the Amplitude Spectral Sensity
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/sr_lpf_geophone_asd_zoom.png

Comparison of the Amplitude Spectral Sensity - Zoom

Comparison of with and without LPF

  figure;
  hold on;
  plot(f, sqrt(pxdon),  'DisplayName', 'Direct - ON');
  plot(f, sqrt(pxsron),  'DisplayName', 'Slip-Ring - ON');
  plot(f, sqrt(pxd_lpf_on),  'DisplayName', 'Direct - ON - LPF');
  plot(f, sqrt(pxsr_lpf_on),  'DisplayName', 'Slip-Ring - ON - LPF');
  hold off;
  set(gca, 'xscale', 'log');
  set(gca, 'yscale', 'log');
  xlabel('Frequency [Hz]'); ylabel('ASD of the measured Voltage $\left[\frac{V}{\sqrt{Hz}}\right]$')
  legend('Location', 'northeast');
  xlim([0.1, 500]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/comp_with_without_lpf.png

Comparison of the measured signals with and without LPF

Conclusion

  • Using the LPF, we don't have any perturbation coming from the slip-ring when it is on.
  • However, we should use a smaller value of the capacitor to have a cut-off frequency at $1kHz$.

Measure of the influence of the AC/DC option on the voltage amplifiers

The data and matlab files are accessible here.

Measurement Description

Goal:

  • Measure the influence of the high-pass filter option of the voltage amplifiers

Setup:

  • One geophone is located on the marble.
  • It's signal goes to two voltage amplifiers with a gain of 60dB.
  • One voltage amplifier is on the AC option, the other is on the DC option.

Measurements: First measurement (mat/data_014.mat file):

Column Signal
1 Amplifier 1 with AC option
2 Amplifier 2 with DC option
3 Time

Second measurement (mat/data_015.mat file):

Column Signal
1 Amplifier 1 with DC option
2 Amplifier 2 with AC option
3 Time
/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/img/IMG_20190503_170936.jpg
Picture of the two voltages amplifiers

Load data

We load the data of the z axis of two geophones.

  meas14 = load('mat/data_014.mat', 'data'); meas14 = meas14.data;
  meas15 = load('mat/data_015.mat', 'data'); meas15 = meas15.data;

Time Domain

The signals are shown on figure fig:ac_dc_option_time.

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/ac_dc_option_time.png

Comparison of the signals going through the Voltage amplifiers

Frequency Domain

We first compute some parameters that will be used for the PSD computation.

  dt = meas14(2, 3)-meas14(1, 3);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));

Then we compute the Power Spectral Density using pwelch function.

  [pxamp1ac, f] = pwelch(meas14(:, 1), win, [], [], Fs);
  [pxamp2dc, ~] = pwelch(meas14(:, 2), win, [], [], Fs);

  [pxamp1dc, ~] = pwelch(meas15(:, 1), win, [], [], Fs);
  [pxamp2ac, ~] = pwelch(meas15(:, 2), win, [], [], Fs);

The ASD of the signals are compare on figure fig:ac_dc_option_asd.

  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/ac_dc_option_asd.png

Amplitude Spectral Density of the measured signals

Conclusion

  • The voltage amplifiers include some very sharp high pass filters at 1.5Hz (maybe 4th order)
  • There is a DC offset on the time domain signal because the DC-offset knob was not set to zero

Transfer function of the Low Pass Filter

The computation files for this section are accessible here.

First LPF with a Cut-off frequency of 160Hz

Measurement Description

Goal:

  • Measure the Low Pass Filter Transfer Function

The values of the components are:

\begin{aligned} R &= 1k\Omega \\ C &= 1\mu F \end{aligned}

Which makes a cut-off frequency of $f_c = \frac{1}{RC} = 1000 rad/s = 160Hz$.

  \begin{tikzpicture}
    \draw (0,2)
          to [R=\(R\)] ++(2,0) node[circ]
          to ++(2,0)
          ++(-2,0)
          to [C=\(C\)] ++(0,-2) node[circ]
          ++(-2,0)
          to ++(2,0)
          to ++(2,0)
  \end{tikzpicture}

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/lpf.png

Schematic of the Low Pass Filter used

Setup:

  • We are measuring the signal from from Geophone with a BNC T
  • On part goes to column 1 through the LPF
  • The other part goes to column 2 without the LPF

Measurements: mat/data_018.mat:

Column Signal
1 Amplifier 1 with LPF
2 Amplifier 2
3 Time
/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/img/IMG_20190507_102756.jpg
Picture of the low pass filter used

Load data

We load the data of the z axis of two geophones.

  data = load('mat/data_018.mat', 'data'); data = data.data;

Transfer function of the LPF

We compute the transfer function from the signal without the LPF to the signal measured with the LPF.

  dt = data(2, 3)-data(1, 3);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));
  [Glpf, f] = tfestimate(data(:, 2), data(:, 1), win, [], [], Fs);

We compare this transfer function with a transfer function corresponding to an ideal first order LPF with a cut-off frequency of $1000rad/s$. We obtain the result on figure fig:Glpf_bode.

  Gth = 1/(1+s/1000)
  figure;
  ax1 = subplot(2, 1, 1);
  hold on;
  plot(f, abs(Glpf));
  plot(f, abs(squeeze(freqresp(Gth, f, 'Hz'))));
  hold off;
  set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
  set(gca, 'XTickLabel',[]);
  ylabel('Magnitude');

  ax2 = subplot(2, 1, 2);
  hold on;
  plot(f, mod(180+180/pi*phase(Glpf), 360)-180);
  plot(f, 180/pi*unwrap(angle(squeeze(freqresp(Gth, f, 'Hz')))));
  hold off;
  set(gca, 'xscale', 'log');
  ylim([-180, 180]);
  yticks([-180, -90, 0, 90, 180]);
  xlabel('Frequency [Hz]'); ylabel('Phase');

  linkaxes([ax1,ax2],'x');
  xlim([1, 500]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/Glpf_bode.png

Bode Diagram of the measured Low Pass filter and the theoritical one

Conclusion

As we want to measure things up to $500Hz$, we chose to change the value of the capacitor to obtain a cut-off frequency of $1kHz$.

Second LPF with a Cut-off frequency of 1000Hz

Measurement description

This time, the value are

\begin{aligned} R &= 1k\Omega \\ C &= 150nF \end{aligned}

Which makes a low pass filter with a cut-off frequency of $f_c = 1060Hz$.

Load data

We load the data of the z axis of two geophones.

  data = load('mat/data_019.mat', 'data'); data = data.data;

Transfer function of the LPF

We compute the transfer function from the signal without the LPF to the signal measured with the LPF.

  dt = data(2, 3)-data(1, 3);

  Fs = 1/dt; % [Hz]

  win = hanning(ceil(10*Fs));
  [Glpf, f] = tfestimate(data(:, 2), data(:, 1), win, [], [], Fs);

We compare this transfer function with a transfer function corresponding to an ideal first order LPF with a cut-off frequency of $1060Hz$. We obtain the result on figure fig:Glpf_bode_bis.

  Gth = 1/(1+s/1060/2/pi);
  figure;
  ax1 = subplot(2, 1, 1);
  hold on;
  plot(f, abs(Glpf));
  plot(f, abs(squeeze(freqresp(Gth, f, 'Hz'))));
  hold off;
  set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
  set(gca, 'XTickLabel',[]);
  ylabel('Magnitude');

  ax2 = subplot(2, 1, 2);
  hold on;
  plot(f, mod(180+180/pi*phase(Glpf), 360)-180);
  plot(f, 180/pi*unwrap(angle(squeeze(freqresp(Gth, f, 'Hz')))));
  hold off;
  set(gca, 'xscale', 'log');
  ylim([-180, 180]);
  yticks([-180, -90, 0, 90, 180]);
  xlabel('Frequency [Hz]'); ylabel('Phase');

  linkaxes([ax1,ax2],'x');
  xlim([1, 500]);
  <<plt-matlab>>

/tdehaeze/nass-micro-station-measurements/media/commit/8d8c03773cd65ccdf7f567d624493e7035223120/slip-ring-test/figs/Glpf_bode_bis.png

Bode Diagram of the measured Low Pass filter and the theoritical one

Conclusion

The added LPF has the expected behavior.