Deleted old measurement on the spindle

This commit is contained in:
Thomas Dehaeze 2019-05-15 16:46:54 +02:00
parent 1117428eaa
commit 8f0cd2d3c0
12 changed files with 75 additions and 245 deletions

Binary file not shown.

View File

@ -1,211 +0,0 @@
#+TITLE:Measurement of the sample vibrations when rotating the Spindle
:DRAWER:
#+STARTUP: overview
#+LANGUAGE: en
#+EMAIL: dehaeze.thomas@gmail.com
#+AUTHOR: Dehaeze Thomas
#+HTML_LINK_HOME: ../index.html
#+HTML_LINK_UP: ../index.html
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="../css/htmlize.css"/>
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="../css/readtheorg.css"/>
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="../css/zenburn.css"/>
#+HTML_HEAD: <script type="text/javascript" src="../js/jquery.min.js"></script>
#+HTML_HEAD: <script type="text/javascript" src="../js/bootstrap.min.js"></script>
#+HTML_HEAD: <script type="text/javascript" src="../js/jquery.stickytableheaders.min.js"></script>
#+HTML_HEAD: <script type="text/javascript" src="../js/readtheorg.js"></script>
#+HTML_MATHJAX: align: center tagside: right font: TeX
#+PROPERTY: header-args:matlab :session *MATLAB*
#+PROPERTY: header-args:matlab+ :comments org
#+PROPERTY: header-args:matlab+ :results none
#+PROPERTY: header-args:matlab+ :exports both
#+PROPERTY: header-args:matlab+ :eval no-export
#+PROPERTY: header-args:matlab+ :output-dir figs
#+PROPERTY: header-args:shell :eval no-export
:END:
* Experimental Setup
* Signal Processing
** Matlab Init :noexport:ignore:
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
<<matlab-dir>>
#+end_src
#+begin_src matlab :exports none :results silent :noweb yes
<<matlab-init>>
#+end_src
** Load Data
Measurement =data_001.mat= corresponds to a measurement where the spindle is not turning and =data_002.mat= where the spindle is turning at 1rpm.
=x1= is the signal coming from the geophone located on the marble and =x2= is the signal from the geophone located on the sample station.
#+begin_src matlab :results none
data1 = load('mat/data_001.mat', 't', 'x1', 'x2');
data2 = load('mat/data_002.mat', 't', 'x1', 'x2');
#+end_src
** Time domain Data
#+begin_src matlab :results none
figure;
hold on;
plot(data1.t, data1.x1);
plot(data2.t, data2.x1);
hold off;
#+end_src
#+begin_src matlab :results none
figure;
hold on;
plot(data1.t, data1.x2);
plot(data2.t, data2.x2)
hold off;
#+end_src
** ASD and Frequency domain data
#+begin_src matlab :results none
dt = data1.t(2) - data1.t(1);
Fs = 1/dt;
windows_psd = hanning(ceil(10*Fs));
#+end_src
#+begin_src matlab :results none
[pxx1m, f] = pwelch(data1.x1, windows_psd, [], [], Fs); f(1) = []; pxx1m(1) = [];
[pxx1h, ~] = pwelch(data1.x2, windows_psd, [], [], Fs); pxx1h(1) = [];
[pxx2m, ~] = pwelch(data2.x1, windows_psd, [], [], Fs); pxx2m(1) = [];
[pxx2h, ~] = pwelch(data2.x2, windows_psd, [], [], Fs); pxx2h(1) = [];
#+end_src
** Some plots
#+begin_src matlab :results none
figure;
hold on;
plot(f, sqrt(pxx1m));
plot(f, sqrt(pxx2m));
hold off;
set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]')
#+end_src
#+begin_src matlab :results none
figure;
hold on;
plot(f, sqrt(pxx1h));
plot(f, sqrt(pxx2h));
hold off;
set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]')
#+end_src
#+begin_src matlab :results none
figure;
hold on;
plot(f, sqrt(pxx2m));
plot(f, sqrt(pxx2h));
hold off;
set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('PSD [m/s/sqrt(Hz)]')
#+end_src
#+begin_src matlab :results none
figure;
hold on;
plot(f, cumtrapz(f, pxx1m))
plot(f, cumtrapz(f, pxx2m))
set(gca, 'XScale', 'log');
xlabel('Frequency [Hz]'); ylabel('CAS [m]')
#+end_src
** Scaling to take into account the sensibility of the geophone and the voltage amplifier
The Geophone used are L22. Their sensibility is shown on figure [[fig:geophone_sensibility]].
#+begin_src matlab :results none
S0 = 88; % Sensitivity [V/(m/s)]
f0 = 2; % Cut-off frequnecy [Hz]
S = S0*(s/2/pi/f0)/(1+s/2/pi/f0);
#+end_src
We also take into account the gain of the electronics which is here set to be $60dB$.
#+begin_src matlab :results none
G0_db = 60; % [dB]
G0 = 10^(G0_db/20); % [abs]
#+end_src
We divide the ASD measured (in $\text{V}/\sqrt{\text{Hz}}$) by the gain of the voltage amplifier to obtain the ASD of the voltage across the geophone.
We further divide the result by the sensibility of the Geophone to obtain the ASD of the velocity in $m/s/\sqrt{Hz}$.
#+begin_src matlab :results none
scaling = 1./squeeze(abs(freqresp(G0*S, f, 'Hz'))); scaling(1) = 0;
#+end_src
** Computation of the ASD of the velocity
#+begin_src matlab :results none
figure;
hold on;
plot(f, sqrt(pxx1h).*scaling);
plot(f, sqrt(pxx2h).*scaling);
hold off;
set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('ASD of the measured Velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$')
xlim([0.1, 500]);
#+end_src
#+begin_src matlab :results none
figure;
hold on;
plot(f, (sqrt(pxx1).*scaling)./(2*pi*f));
plot(f, (sqrt(pxx2).*scaling)./(2*pi*f));
hold off;
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('ASD of the displacement $\left[\frac{m}{\sqrt{Hz}}\right]$')
xlim([0.1, 500]);
#+end_src
** RMS value of the difference between the two geophones
We also compute the Power Spectral Density of the difference between the two geophones. This is done in order to estimate the relative displacement of the sample with respect to the granite.
#+begin_src matlab :results none
[pxxd1, ~] = pwelch(data1.x2-data1.x1, windows_psd, [], [], Fs); pxxd1(1) = [];
[pxxd2, ~] = pwelch(data2.x2-data2.x1, windows_psd, [], [], Fs); pxxd2(1) = [];
#+end_src
#+begin_src matlab :results none
figure;
hold on;
plot(f, (sqrt(pxxd1).*scaling)./(2*pi*f));
plot(f, (sqrt(pxxd2).*scaling)./(2*pi*f));
hold off;
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('ASD of the displacement $\left[\frac{m}{\sqrt{Hz}}\right]$')
xlim([0.1, 500]);
#+end_src
#+begin_src matlab :results none
psd_d1 = ((sqrt(pxxd1).*scaling)./(2*pi*f)).^2;
psd_d2 = ((sqrt(pxxd2).*scaling)./(2*pi*f)).^2;
df = f(2) - f(1);
figure;
hold on;
plot(f, sqrt(cumsum(df.*psd_d1, 'reverse')));
plot(f, sqrt(cumsum(df.*psd_d2, 'reverse')));
hold off;
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('CAS $\left[m\right]$')
xlim([0.1, 500]);
#+end_src

View File

@ -1,12 +0,0 @@
#+TITLE:Measurement of the sample vibrations when rotating the Spindle
Measurement:
- one geophone on the marble
- one geophone at the sample position
Every stage is powered on.
| Data file | Description |
|--------------+----------------------------|
| data_001.mat | nothing is turning |
| data_002.mat | spindle is turning at 1rpm |

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 158 KiB

View File

@ -116,13 +116,15 @@ A movie showing the experiment is shown on figure [[fig:exp_sl_sp_gif]].
We convert the measured voltage to velocity using the function =voltageToVelocityL22= (accessible [[file:~/MEGA/These/meas/src/index.org][here]]).
#+begin_src matlab
of(:, 1) = voltageToVelocityL22(of(:, 1), of(:, 3), 60);
sr(:, 1) = voltageToVelocityL22(sr(:, 1), sr(:, 3), 60);
sp(:, 1) = voltageToVelocityL22(sp(:, 1), sp(:, 3), 60);
gain = 60; % [dB]
of(:, 2) = voltageToVelocityL22(of(:, 2), of(:, 3), 60);
sr(:, 2) = voltageToVelocityL22(sr(:, 2), sr(:, 3), 60);
sp(:, 2) = voltageToVelocityL22(sp(:, 2), sp(:, 3), 60);
of(:, 1) = voltageToVelocityL22(of(:, 1), of(:, 3), gain);
sr(:, 1) = voltageToVelocityL22(sr(:, 1), sr(:, 3), gain);
sp(:, 1) = voltageToVelocityL22(sp(:, 1), sp(:, 3), gain);
of(:, 2) = voltageToVelocityL22(of(:, 2), of(:, 3), gain);
sr(:, 2) = voltageToVelocityL22(sr(:, 2), sr(:, 3), gain);
sp(:, 2) = voltageToVelocityL22(sp(:, 2), sp(:, 3), gain);
#+end_src
** Time domain plots
@ -172,6 +174,21 @@ We convert the measured voltage to velocity using the function =voltageToVelocit
#+RESULTS: fig:slip_ring_spindle_sample_time
[[file:figs/slip_ring_spindle_sample_time.png]]
#+begin_src matlab :exports none :tangle no
xlim([0, 1]);
#+end_src
#+NAME: fig:slip_ring_spindle_sample_zoom
#+HEADER: :tangle no :exports results :results value raw replace :noweb yes
#+begin_src matlab :var filepath="figs/slip_ring_spindle_sample_zoom.pdf" :var figsize="wide-normal" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src
#+NAME: fig:slip_ring_spindle_sample_zoom
#+CAPTION: Velocity as measured by the geophone at the sample location - Time domain
#+RESULTS: fig:slip_ring_spindle_sample_zoom
[[file:figs/slip_ring_spindle_sample_zoom.png]]
** Frequency Domain
We first compute some parameters that will be used for the PSD computation.
#+begin_src matlab :results none
@ -193,11 +210,18 @@ First for the geophone located on the marble
And for the geophone located at the sample position.
#+begin_src matlab
[pxof_s, f] = pwelch(of(:, 2), win, [], [], Fs);
[pxof_s, ~] = pwelch(of(:, 2), win, [], [], Fs);
[pxsr_s, ~] = pwelch(sr(:, 2), win, [], [], Fs);
[pxsp_s, ~] = pwelch(sp(:, 2), win, [], [], Fs);
#+end_src
And finally for the relative velocity between the sample and the marble.
#+begin_src matlab
[pxof_r, ~] = pwelch(of(:, 2)-of(:, 1), win, [], [], Fs);
[pxsr_r, ~] = pwelch(sr(:, 2)-sr(:, 1), win, [], [], Fs);
[pxsp_r, ~] = pwelch(sp(:, 2)-sp(:, 1), win, [], [], Fs);
#+end_src
And we plot the ASD of the measured velocities:
- figure [[fig:sr_sp_psd_marble_compare]] for the geophone located on the marble
- figure [[fig:sr_sp_psd_sample_compare]] for the geophone at the sample position
@ -252,11 +276,37 @@ And we plot the ASD of the measured velocities:
#+RESULTS: fig:sr_sp_psd_sample_compare
[[file:figs/sr_sp_psd_sample_compare.png]]
#+begin_src matlab :results none
figure;
hold on;
plot(f, sqrt(pxsp_r), 'DisplayName', 'Spindle - 6rpm');
plot(f, sqrt(pxsr_r), 'DisplayName', 'Slip-Ring - 6rpm');
plot(f, sqrt(pxof_r), 'DisplayName', 'OFF');
hold off;
set(gca, 'xscale', 'log');
set(gca, 'yscale', 'log');
xlabel('Frequency [Hz]'); ylabel('ASD of the relative velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$')
legend('Location', 'southwest');
xlim([2, 500]);
#+end_src
#+NAME: fig:sr_sp_psd_relative_compare
#+HEADER: :tangle no :exports results :results value raw replace :noweb yes
#+begin_src matlab :var filepath="figs/sr_sp_psd_relative_compare.pdf" :var figsize="full-tall" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src
#+NAME: fig:sr_sp_psd_relative_compare
#+CAPTION: Comparison of the ASD of the relative velocity
#+RESULTS: fig:sr_sp_psd_relative_compare
[[file:figs/sr_sp_psd_relative_compare.png]]
** Conclusion
#+begin_important
- The slip-ring rotation induces almost no vibrations on the marble, and only a little vibrations on the sample above 100Hz.
- The spindle rotation induces a lot of vibrations of the sample as well as on the granite.
- There is a huge peak at 24Hz on the sample vibration but not on the granite vibration. The peak is really sharp, could this be due to magnetic effect?
- Should redo the measurement with piezo accelerometers
- There is a huge peak at 24Hz on the sample vibration but not on the granite vibration
- The peak is really sharp, could this be due to magnetic effect?
- Should redo the measurement with piezo accelerometers.
#+end_important

View File

@ -121,13 +121,15 @@ Each of the measurement =mat= file contains one =data= array with 3 columns:
We convert the measured voltage to velocity using the function =voltageToVelocityL22= (accessible [[file:~/MEGA/These/meas/src/index.org][here]]).
#+begin_src matlab
z_ty(:, 1) = voltageToVelocityL22(z_ty(:, 1), z_ty(:, 3), 40);
e_ty(:, 1) = voltageToVelocityL22(e_ty(:, 1), e_ty(:, 3), 40);
e_of(:, 1) = voltageToVelocityL22(e_of(:, 1), e_of(:, 3), 40);
gain = 40; % [dB]
z_ty(:, 2) = voltageToVelocityL22(z_ty(:, 2), z_ty(:, 3), 40);
e_ty(:, 2) = voltageToVelocityL22(e_ty(:, 2), e_ty(:, 3), 40);
e_of(:, 2) = voltageToVelocityL22(e_of(:, 2), e_of(:, 3), 40);
z_ty(:, 1) = voltageToVelocityL22(z_ty(:, 1), z_ty(:, 3), gain);
e_ty(:, 1) = voltageToVelocityL22(e_ty(:, 1), e_ty(:, 3), gain);
e_of(:, 1) = voltageToVelocityL22(e_of(:, 1), e_of(:, 3), gain);
z_ty(:, 2) = voltageToVelocityL22(z_ty(:, 2), z_ty(:, 3), gain);
e_ty(:, 2) = voltageToVelocityL22(e_ty(:, 2), e_ty(:, 3), gain);
e_of(:, 2) = voltageToVelocityL22(e_of(:, 2), e_of(:, 3), gain);
#+end_src
** Time domain plots

View File

@ -14,13 +14,15 @@ e_of = load('mat/data_042.mat', 'data'); e_of = e_of.data;
% We convert the measured voltage to velocity using the function =voltageToVelocityL22= (accessible [[file:~/MEGA/These/meas/src/index.org][here]]).
z_ty(:, 1) = voltageToVelocityL22(z_ty(:, 1), z_ty(:, 3), 40);
e_ty(:, 1) = voltageToVelocityL22(e_ty(:, 1), e_ty(:, 3), 40);
e_of(:, 1) = voltageToVelocityL22(e_of(:, 1), e_of(:, 3), 40);
gain = 40; % [dB]
z_ty(:, 2) = voltageToVelocityL22(z_ty(:, 2), z_ty(:, 3), 40);
e_ty(:, 2) = voltageToVelocityL22(e_ty(:, 2), e_ty(:, 3), 40);
e_of(:, 2) = voltageToVelocityL22(e_of(:, 2), e_of(:, 3), 40);
z_ty(:, 1) = voltageToVelocityL22(z_ty(:, 1), z_ty(:, 3), gain);
e_ty(:, 1) = voltageToVelocityL22(e_ty(:, 1), e_ty(:, 3), gain);
e_of(:, 1) = voltageToVelocityL22(e_of(:, 1), e_of(:, 3), gain);
z_ty(:, 2) = voltageToVelocityL22(z_ty(:, 2), z_ty(:, 3), gain);
e_ty(:, 2) = voltageToVelocityL22(e_ty(:, 2), e_ty(:, 3), gain);
e_of(:, 2) = voltageToVelocityL22(e_of(:, 2), e_of(:, 3), gain);
% Time domain plots
% We plot the measured velocity of the marble and sample in the vertical direction (figure [[fig:ty_z_time]]) and in the X direction (figure [[fig:ty_e_time]]).

Binary file not shown.

View File

@ -24,7 +24,6 @@ Vibrations during scans:
- [[file:disturbance-sr-rz/index.org][Measurement of the vibrations induced by the rotation of the slip-ring and spindle]]
- [[file:disturbance-ty-sr/index.org][Measurement of the vibrations induced by the simultaneous rotation of the slip-ring and scan of the translation stage]]
- [[file:disturbance-ty/index.org][Measurement of the vibrations induced by translation stage scans]]
- [[file:disturbance-measurement/index.org][Measurement of the vibrations induced by spindle rotation]]
Ground motion:
- [[file:ground-motion/index.org][Ground motion measurements]]