2019-05-15 08:43:38 +02:00
<?xml version="1.0" encoding="utf-8"?>
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" lang = "en" xml:lang = "en" >
< head >
2020-11-12 10:30:56 +01:00
<!-- 2020 - 11 - 12 jeu. 10:27 -->
2019-05-15 08:43:38 +02:00
< meta http-equiv = "Content-Type" content = "text/html;charset=utf-8" / >
< title > Vibrations induced by simultaneous scans of the translation stage and of the slip-ring< / title >
< meta name = "generator" content = "Org mode" / >
< meta name = "author" content = "Dehaeze Thomas" / >
2020-11-12 10:30:56 +01:00
< link rel = "stylesheet" type = "text/css" href = "https://research.tdehaeze.xyz/css/style.css" / >
< script type = "text/javascript" src = "https://research.tdehaeze.xyz/js/script.js" > < / script >
2019-05-15 08:43:38 +02:00
< / head >
< body >
< div id = "org-div-home-and-up" >
< a accesskey = "h" href = "../index.html" > UP < / a >
|
< a accesskey = "H" href = "../index.html" > HOME < / a >
< / div > < div id = "content" >
< h1 class = "title" > Vibrations induced by simultaneous scans of the translation stage and of the slip-ring< / h1 >
< div id = "table-of-contents" >
< h2 > Table of Contents< / h2 >
< div id = "text-table-of-contents" >
< ul >
2020-11-12 10:30:56 +01:00
< li > < a href = "#org5be3e39" > 1. Measurement description< / a > < / li >
< li > < a href = "#orgedd4b9f" > 2. Data Analysis< / a >
2019-05-15 08:43:38 +02:00
< ul >
2020-11-12 10:30:56 +01:00
< li > < a href = "#org5c43df8" > 2.1. Load data< / a > < / li >
< li > < a href = "#org64ca923" > 2.2. Voltage to Velocity< / a > < / li >
< li > < a href = "#org28e12e9" > 2.3. Time domain plots< / a > < / li >
< li > < a href = "#org2072860" > 2.4. Frequency Domain< / a > < / li >
< li > < a href = "#org556cfcd" > 2.5. Ty motion and current< / a >
2019-05-15 15:49:48 +02:00
< ul >
2020-11-12 10:30:56 +01:00
< li > < a href = "#orga6f989f" > 2.5.1. Data pre-processing< / a > < / li >
< li > < a href = "#orgf4ca54c" > 2.5.2. Time domain data< / a > < / li >
2019-05-15 15:49:48 +02:00
< / ul >
< / li >
2020-11-12 10:30:56 +01:00
< li > < a href = "#org7e6aef2" > 2.6. Conclusion< / a > < / li >
2019-05-15 08:43:38 +02:00
< / ul >
< / li >
< / ul >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org5be3e39" class = "outline-2" >
< h2 id = "org5be3e39" > < span class = "section-number-2" > 1< / span > Measurement description< / h2 >
2019-05-15 08:43:38 +02:00
< div class = "outline-text-2" id = "text-1" >
< p >
< b > Setup< / b > :
All the stages are OFF except the translation stage and the Slip-Ring.
< / p >
< p >
Each of the signal is amplified by voltage amplifiers with the following settings:
< / p >
< ul class = "org-ul" >
< li > Gain: 40dB< / li >
< li > AC/DC option: AC< / li >
< li > Low pass filter: 1kHz< / li >
< / ul >
< p >
The slip-ring is rotating at 60rpm. At the same time, scans with the translation stage are done at 1Hz with an amplitude of 600000cnt (= 3mm).
< / p >
< p >
Two geophones are used to measure the motion in the vertical direction of the marble and of the sample.
< / p >
< p >
< b > Goal< / b > :
< / p >
< ul class = "org-ul" >
< li > The goal is to estimate the vibrations induced by the simultaneous scans of the spindle (here the slip-ring is used as the spindle is not fully functional yet) and of the translation stage< / li >
< / ul >
< p >
< b > Measurements< / b > :
< / p >
< p >
Three measurements are done:
< / p >
< table border = "2" cellspacing = "0" cellpadding = "6" rules = "groups" frame = "hsides" >
< colgroup >
< col class = "org-left" / >
< col class = "org-left" / >
< / colgroup >
< thead >
< tr >
< th scope = "col" class = "org-left" > Measurement File< / th >
< th scope = "col" class = "org-left" > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td class = "org-left" > < code > mat/data_050.mat< / code > < / td >
< td class = "org-left" > Slip-Ring at 1Hz, Ty OFF< / td >
< / tr >
< tr >
< td class = "org-left" > < code > mat/data_051.mat< / code > < / td >
< td class = "org-left" > Slip-Ring at 1Hz, Ty ON (The current and cnt error of Ty is also registered)< / td >
< / tr >
< tr >
< td class = "org-left" > < code > mat/data_052.mat< / code > < / td >
< td class = "org-left" > Slip-Ring at 1Hz, Ty 1Hz 600000cnt< / td >
< / tr >
< / tbody >
< / table >
< p >
Each of the measurement < code > mat< / code > file contains one < code > data< / code > array with 3 columns:
< / p >
< table border = "2" cellspacing = "0" cellpadding = "6" rules = "groups" frame = "hsides" >
< colgroup >
< col class = "org-right" / >
< col class = "org-left" / >
< / colgroup >
< thead >
< tr >
< th scope = "col" class = "org-right" > Column number< / th >
< th scope = "col" class = "org-left" > Description< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td class = "org-right" > 1< / td >
< td class = "org-left" > Geophone on the marble< / td >
< / tr >
< tr >
< td class = "org-right" > 2< / td >
< td class = "org-left" > Geophone at the sample location< / td >
< / tr >
< tr >
< td class = "org-right" > 3< / td >
< td class = "org-left" > Time< / td >
< / tr >
< / tbody >
< / table >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-orgedd4b9f" class = "outline-2" >
< h2 id = "orgedd4b9f" > < span class = "section-number-2" > 2< / span > Data Analysis< / h2 >
2019-05-15 08:43:38 +02:00
< div class = "outline-text-2" id = "text-2" >
< p >
2020-11-12 10:30:56 +01:00
< a id = "orgf5774c2" > < / a >
2019-05-15 08:43:38 +02:00
< / p >
2020-11-12 10:30:56 +01:00
< div class = "note" id = "org87cd5df" >
2019-05-15 08:43:38 +02:00
< p >
All the files (data and Matlab scripts) are accessible < a href = "data/disturbance_ty_sr.zip" > here< / a > .
< / p >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org5c43df8" class = "outline-3" >
< h3 id = "org5c43df8" > < span class = "section-number-3" > 2.1< / span > Load data< / h3 >
2019-05-15 08:43:38 +02:00
< div class = "outline-text-3" id = "text-2-1" >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > ty_of = load(< span class = "org-string" > 'mat/data_050.mat'< / span > , < span class = "org-string" > 'data'< / span > ); ty_of = ty_of.data;
ty_on = load(< span class = "org-string" > 'mat/data_051.mat'< / span > , < span class = "org-string" > 'data'< / span > ); ty_on = ty_on.data;
ty_1h = load(< span class = "org-string" > 'mat/data_052.mat'< / span > , < span class = "org-string" > 'data'< / span > ); ty_1h = ty_1h.data;
2019-05-15 08:43:38 +02:00
< / pre >
< / div >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org64ca923" class = "outline-3" >
< h3 id = "org64ca923" > < span class = "section-number-3" > 2.2< / span > Voltage to Velocity< / h3 >
2019-05-15 08:43:38 +02:00
< div class = "outline-text-3" id = "text-2-2" >
2019-05-15 15:49:48 +02:00
< p >
2019-10-08 10:49:14 +02:00
We convert the measured voltage to velocity using the function < code > voltageToVelocityL22< / code > (accessible < a href = "file:///home/thomas/Cloud/These/meas/src/index.html" > here< / a > ).
2019-05-15 15:49:48 +02:00
< / p >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > gain = 40; < span class = "org-comment" > % [dB]< / span >
2019-05-15 15:49:48 +02:00
2020-11-12 10:30:56 +01:00
ty_of(< span class = "org-type" > :< / span > , 1) = voltageToVelocityL22(ty_of(< span class = "org-type" > :< / span > , 1), ty_of(< span class = "org-type" > :< / span > , 3), gain);
ty_on(< span class = "org-type" > :< / span > , 1) = voltageToVelocityL22(ty_on(< span class = "org-type" > :< / span > , 1), ty_on(< span class = "org-type" > :< / span > , 3), gain);
ty_1h(< span class = "org-type" > :< / span > , 1) = voltageToVelocityL22(ty_1h(< span class = "org-type" > :< / span > , 1), ty_1h(< span class = "org-type" > :< / span > , 3), gain);
2019-05-15 15:49:48 +02:00
2020-11-12 10:30:56 +01:00
ty_of(< span class = "org-type" > :< / span > , 2) = voltageToVelocityL22(ty_of(< span class = "org-type" > :< / span > , 2), ty_of(< span class = "org-type" > :< / span > , 3), gain);
ty_on(< span class = "org-type" > :< / span > , 2) = voltageToVelocityL22(ty_on(< span class = "org-type" > :< / span > , 2), ty_on(< span class = "org-type" > :< / span > , 3), gain);
ty_1h(< span class = "org-type" > :< / span > , 2) = voltageToVelocityL22(ty_1h(< span class = "org-type" > :< / span > , 2), ty_1h(< span class = "org-type" > :< / span > , 3), gain);
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org28e12e9" class = "outline-3" >
< h3 id = "org28e12e9" > < span class = "section-number-3" > 2.3< / span > Time domain plots< / h3 >
2019-05-15 15:49:48 +02:00
< div class = "outline-text-3" id = "text-2-3" >
< p >
2020-11-12 10:30:56 +01:00
We plot the measured velocity of the marble (figure < a href = "#orgd7a043f" > 1< / a > ), sample (figure < a href = "#orgd957b15" > 2< / a > ) and the relative velocity of the sample with respect to the marble (figure < a href = "#org0571475" > 3< / a > ).
2019-05-15 15:49:48 +02:00
< / p >
< p >
2020-11-12 10:30:56 +01:00
We also integrate the relative velocity to obtain the relative displacement (figure < a href = "#orgca7d76b" > 4< / a > ).
2019-05-15 15:49:48 +02:00
< / p >
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(ty_1h(< span class = "org-type" > :< / span > , 3), ty_1h(< span class = "org-type" > :< / span > , 1), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Marble - Ty 1Hz'< / span > );
plot(ty_on(< span class = "org-type" > :< / span > , 3), ty_on(< span class = "org-type" > :< / span > , 1), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Marble - Ty ON'< / span > );
plot(ty_of(< span class = "org-type" > :< / span > , 3), ty_of(< span class = "org-type" > :< / span > , 1), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Marble - Ty OFF'< / span > );
2019-05-15 15:49:48 +02:00
hold off;
2020-11-12 10:30:56 +01:00
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Velocity [m/s]'< / span > );
xlim([0, 2]);
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "orgd7a043f" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/ty_marble_time.png" alt = "ty_marble_time.png" / >
< / p >
< p > < span class = "figure-number" > Figure 1: < / span > Velocity of the marble in the vertical direction< / p >
< / div >
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(ty_1h(< span class = "org-type" > :< / span > , 3), ty_1h(< span class = "org-type" > :< / span > , 2), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Sample - Ty - 1Hz'< / span > );
plot(ty_on(< span class = "org-type" > :< / span > , 3), ty_on(< span class = "org-type" > :< / span > , 2), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Sample - Ty - ON'< / span > );
plot(ty_of(< span class = "org-type" > :< / span > , 3), ty_of(< span class = "org-type" > :< / span > , 2), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Sample - Ty - OFF'< / span > );
2019-05-15 15:49:48 +02:00
hold off;
2020-11-12 10:30:56 +01:00
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Velocity [m/s]'< / span > );
xlim([0, 2]);
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "orgd957b15" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/ty_sample_time.png" alt = "ty_sample_time.png" / >
< / p >
< p > < span class = "figure-number" > Figure 2: < / span > Velocity of the sample in the vertical direction< / p >
< / div >
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(ty_1h(< span class = "org-type" > :< / span > , 3), ty_1h(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_1h(< span class = "org-type" > :< / span > , 1), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative Velocity - Ty - 1Hz'< / span > );
plot(ty_on(< span class = "org-type" > :< / span > , 3), ty_on(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_on(< span class = "org-type" > :< / span > , 1), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative Velocity - Ty - ON'< / span > );
plot(ty_of(< span class = "org-type" > :< / span > , 3), ty_of(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_of(< span class = "org-type" > :< / span > , 1), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative Velocity - Ty - OFF'< / span > );
2019-05-15 15:49:48 +02:00
hold off;
2020-11-12 10:30:56 +01:00
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Velocity [m/s]'< / span > );
xlim([0, 2]);
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "org0571475" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/ty_relative_time.png" alt = "ty_relative_time.png" / >
< / p >
< p > < span class = "figure-number" > Figure 3: < / span > Relative velocity of the sample with respect to the marble< / p >
< / div >
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(ty_1h(< span class = "org-type" > :< / span > , 3), lsim(1< span class = "org-type" > /< / span > s, ty_1h(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_1h(< span class = "org-type" > :< / span > , 1), ty_1h(< span class = "org-type" > :< / span > , 3)), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative Displacement- Ty - 1Hz'< / span > );
plot(ty_on(< span class = "org-type" > :< / span > , 3), lsim(1< span class = "org-type" > /< / span > s, ty_on(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_on(< span class = "org-type" > :< / span > , 1), ty_on(< span class = "org-type" > :< / span > , 3)), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative Displacement- Ty - ON'< / span > );
plot(ty_of(< span class = "org-type" > :< / span > , 3), lsim(1< span class = "org-type" > /< / span > s, ty_of(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_of(< span class = "org-type" > :< / span > , 1), ty_of(< span class = "org-type" > :< / span > , 3)), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative Displacement- Ty - OFF'< / span > );
2019-05-15 15:49:48 +02:00
hold off;
2020-11-12 10:30:56 +01:00
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Displacement [m]'< / span > );
xlim([0, 2]);
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "orgca7d76b" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/ty_relative_disp_time.png" alt = "ty_relative_disp_time.png" / >
< / p >
< p > < span class = "figure-number" > Figure 4: < / span > Relative Displacement of the sample with respect to the marble< / p >
< / div >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org2072860" class = "outline-3" >
< h3 id = "org2072860" > < span class = "section-number-3" > 2.4< / span > Frequency Domain< / h3 >
2019-05-15 15:49:48 +02:00
< div class = "outline-text-3" id = "text-2-4" >
< p >
We first compute some parameters that will be used for the PSD computation.
< / p >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > dt = ty_of(2, 3)< span class = "org-type" > -< / span > ty_of(1, 3);
2019-05-15 15:49:48 +02:00
2020-11-12 10:30:56 +01:00
Fs = 1< span class = "org-type" > /< / span > dt; < span class = "org-comment" > % [Hz]< / span >
2019-05-15 15:49:48 +02:00
2020-11-12 10:30:56 +01:00
win = hanning(ceil(10< span class = "org-type" > *< / span > Fs));
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
< p >
Then we compute the Power Spectral Density using < code > pwelch< / code > function.
< / p >
< p >
First for the geophone located on the marble
< / p >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > [pxof_m, f] = pwelch(ty_of(< span class = "org-type" > :< / span > , 1), win, [], [], Fs);
[pxon_m, < span class = "org-type" > ~< / span > ] = pwelch(ty_on(< span class = "org-type" > :< / span > , 1), win, [], [], Fs);
[px1h_m, < span class = "org-type" > ~< / span > ] = pwelch(ty_1h(< span class = "org-type" > :< / span > , 1), win, [], [], Fs);
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
< p >
And for the geophone located at the sample position.
< / p >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > [pxof_s, f] = pwelch(ty_of(< span class = "org-type" > :< / span > , 2), win, [], [], Fs);
[pxon_s, < span class = "org-type" > ~< / span > ] = pwelch(ty_on(< span class = "org-type" > :< / span > , 2), win, [], [], Fs);
[px1h_s, < span class = "org-type" > ~< / span > ] = pwelch(ty_1h(< span class = "org-type" > :< / span > , 2), win, [], [], Fs);
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
< p >
Finally, for the relative velocity.
< / p >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > [pxof_r, f] = pwelch(ty_of(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_of(< span class = "org-type" > :< / span > , 1), win, [], [], Fs);
[pxon_r, < span class = "org-type" > ~< / span > ] = pwelch(ty_on(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_on(< span class = "org-type" > :< / span > , 1), win, [], [], Fs);
[px1h_r, < span class = "org-type" > ~< / span > ] = pwelch(ty_1h(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > ty_1h(< span class = "org-type" > :< / span > , 1), win, [], [], Fs);
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
< p >
And we plot the ASD of the measured velocities:
< / p >
< ul class = "org-ul" >
2020-11-12 10:30:56 +01:00
< li > figure < a href = "#org177c365" > 5< / a > for the geophone located on the marble< / li >
< li > figure < a href = "#org7f50f38" > 6< / a > for the geophone at the sample position< / li >
< li > figure < a href = "#org5c98070" > 7< / a > for the relative velocity< / li >
2019-05-15 15:49:48 +02:00
< / ul >
2019-05-15 08:43:38 +02:00
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(f, sqrt(px1h_m), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Marble - Ty 1Hz'< / span > );
plot(f, sqrt(pxon_m), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Marble - Ty ON'< / span > );
plot(f, sqrt(pxof_m), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Marble - Ty OFF'< / span > );
2019-05-15 08:43:38 +02:00
hold off;
2020-11-12 10:30:56 +01:00
< span class = "org-type" > set< / span > (< span class = "org-variable-name" > gca< / span > , < span class = "org-string" > 'xscale'< / span > , < span class = "org-string" > 'log'< / span > );
< span class = "org-type" > set< / span > (< span class = "org-variable-name" > gca< / span > , < span class = "org-string" > 'yscale'< / span > , < span class = "org-string" > 'log'< / span > );
xlabel(< span class = "org-string" > 'Frequency [Hz]'< / span > ); ylabel(< span class = "org-string" > 'ASD of the measured velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$'< / span > )
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
xlim([1, 500]);
2019-05-15 08:43:38 +02:00
< / pre >
< / div >
2019-05-15 15:49:48 +02:00
2020-11-12 10:30:56 +01:00
< div id = "org177c365" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/psd_marble_compare.png" alt = "psd_marble_compare.png" / >
< / p >
< p > < span class = "figure-number" > Figure 5: < / span > Comparison of the ASD of the measured velocities from the Geophone on the marble< / p >
< / div >
2019-05-15 08:43:38 +02:00
< div class = "org-src-container" >
2019-05-15 15:49:48 +02:00
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(f, sqrt(px1h_s), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Sample - Ty 1Hz'< / span > );
plot(f, sqrt(pxon_s), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Sample - Ty ON'< / span > );
plot(f, sqrt(pxof_s), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Sample - Ty OFF'< / span > );
2019-05-15 15:49:48 +02:00
hold off;
2020-11-12 10:30:56 +01:00
< span class = "org-type" > set< / span > (< span class = "org-variable-name" > gca< / span > , < span class = "org-string" > 'xscale'< / span > , < span class = "org-string" > 'log'< / span > );
< span class = "org-type" > set< / span > (< span class = "org-variable-name" > gca< / span > , < span class = "org-string" > 'yscale'< / span > , < span class = "org-string" > 'log'< / span > );
xlabel(< span class = "org-string" > 'Frequency [Hz]'< / span > ); ylabel(< span class = "org-string" > 'ASD of the measured velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$'< / span > )
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
xlim([1, 500]);
2019-05-15 08:43:38 +02:00
< / pre >
< / div >
2019-05-15 15:49:48 +02:00
2020-11-12 10:30:56 +01:00
< div id = "org7f50f38" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/psd_sample_compare.png" alt = "psd_sample_compare.png" / >
< / p >
< p > < span class = "figure-number" > Figure 6: < / span > Comparison of the ASD of the measured velocities from the Geophone at the sample location< / p >
< / div >
2019-05-15 08:43:38 +02:00
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
hold on;
2020-11-12 10:30:56 +01:00
plot(f, sqrt(px1h_r), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative - Ty 1Hz'< / span > );
plot(f, sqrt(pxon_r), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative - Ty ON'< / span > );
plot(f, sqrt(pxof_r), < span class = "org-string" > 'DisplayName'< / span > , < span class = "org-string" > 'Relative - Ty OFF'< / span > );
2019-05-15 08:43:38 +02:00
hold off;
2020-11-12 10:30:56 +01:00
< span class = "org-type" > set< / span > (< span class = "org-variable-name" > gca< / span > , < span class = "org-string" > 'xscale'< / span > , < span class = "org-string" > 'log'< / span > );
< span class = "org-type" > set< / span > (< span class = "org-variable-name" > gca< / span > , < span class = "org-string" > 'yscale'< / span > , < span class = "org-string" > 'log'< / span > );
xlabel(< span class = "org-string" > 'Frequency [Hz]'< / span > ); ylabel(< span class = "org-string" > 'ASD of the measured velocity $\left[\frac{m/s}{\sqrt{Hz}}\right]$'< / span > )
legend(< span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'southwest'< / span > );
xlim([1, 500]);
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "org5c98070" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/psd_relative_compare.png" alt = "psd_relative_compare.png" / >
< / p >
< p > < span class = "figure-number" > Figure 7: < / span > Comparison of the ASD of the relative velocity< / p >
< / div >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org556cfcd" class = "outline-3" >
< h3 id = "org556cfcd" > < span class = "section-number-3" > 2.5< / span > Ty motion and current< / h3 >
2019-05-15 15:49:48 +02:00
< div class = "outline-text-3" id = "text-2-5" >
< p >
The position of the translation stage and current flowing in its actuator are measured using the elmo software and saved as an csv file.
< / p >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-orga6f989f" class = "outline-4" >
< h4 id = "orga6f989f" > < span class = "section-number-4" > 2.5.1< / span > Data pre-processing< / h4 >
2019-05-15 15:49:48 +02:00
< div class = "outline-text-4" id = "text-2-5-1" >
< p >
2020-11-12 10:30:56 +01:00
Let’ s look at at the start of the csv file.
2019-05-15 15:49:48 +02:00
< / p >
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-bash" > sed -n 1,30p mat/Ty-when-Rz-1Hz-and-Ty-1Hz.csv | nl -ba -
2019-05-15 08:43:38 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< pre class = "example" id = "org149992b" >
1 Elmo txt chart ver 2.0
2
3 [File Properties]
4 Creation Time,2019-05-13 05:33:43
5 Last Updated,2019-05-13 05:33:43
6 Resolution,0.001
7 Sampling Time,5E-05
8 Recording Time,5.461
9
10 [Chart Properties]
11 No.,Name,X Linear,X No.
12 1,Chart #1,True,0
13 2,Chart #2,True,0
14
15 [Chart Data]
16 Display No.,X No.,Y No.,X Unit,Y Unit,Color,Style,Width
17 1,1,2,sec,N/A,ff0000ff,Solid,TwoPoint
18 2,1,3,sec,N/A,ff0000ff,Solid,TwoPoint
19 2,1,4,sec,N/A,ff007f00,Solid,TwoPoint
20
21 [Signal Names]
22 1,Time (sec)
23 2,Position [cnt]
24 3,Current Command [A]
25 4,Total Current Command [A]
26
27 [Signals Data Group 1]
28 1,2,3,4,
29 0,-141044,-0.537239575086517,-0.537239575086517,
30 0.001,-143127,-0.530803752974691,-0.530803752974691,
< / pre >
2019-05-15 15:49:48 +02:00
< p >
The real data starts at line 29.
We then load this < code > cvs< / code > file starting at line 29.
< / p >
2019-05-15 08:43:38 +02:00
< div class = "org-src-container" >
2020-11-12 10:30:56 +01:00
< pre class = "src src-matlab" > tye_on = csvread(< span class = "org-string" > "mat/Ty-when-Rz-1Hz.csv"< / span > , 29, 0);
tye_1h = csvread(< span class = "org-string" > "mat/Ty-when-Rz-1Hz-and-Ty-1Hz.csv"< / span > , 29, 0);
2019-05-15 08:43:38 +02:00
< / pre >
2019-05-15 15:49:48 +02:00
< / div >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-orgf4ca54c" class = "outline-4" >
< h4 id = "orgf4ca54c" > < span class = "section-number-4" > 2.5.2< / span > Time domain data< / h4 >
2019-05-15 15:49:48 +02:00
< div class = "outline-text-4" id = "text-2-5-2" >
< p >
We plot the position of the translation stage measured by the encoders.
< / p >
< p >
There is 200000 encoder count for each mm, we then divide by 200000 to obtain mm.
< / p >
< p >
2020-11-12 10:30:56 +01:00
The result is shown on figure < a href = "#org10136ca" > 8< / a > .
2019-05-15 15:49:48 +02:00
< / p >
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
2020-11-12 10:30:56 +01:00
subplot(1, 2, 1);
plot(tye_on(< span class = "org-type" > :< / span > , 1), (tye_on(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > mean(tye_on(< span class = "org-type" > :< / span > , 2)))< span class = "org-type" > /< / span > 200000);
xlim([0, 5]);
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Position [mm]'< / span > );
legend({< span class = "org-string" > 'Ty - ON'< / span > }, < span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'northeast'< / span > );
subplot(1, 2, 2);
plot(tye_1h(< span class = "org-type" > :< / span > , 1), (tye_1h(< span class = "org-type" > :< / span > , 2)< span class = "org-type" > -< / span > mean(tye_1h(< span class = "org-type" > :< / span > , 2)))< span class = "org-type" > /< / span > 200000);
xlim([0, 5]);
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Position [mm]'< / span > );
legend({< span class = "org-string" > 'Ty - 1Hz'< / span > }, < span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'northeast'< / span > );
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "org10136ca" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/ty_position_time.png" alt = "ty_position_time.png" / >
< / p >
< p > < span class = "figure-number" > Figure 8: < / span > Y position of the translation stage measured by the encoders< / p >
< / div >
< p >
2020-11-12 10:30:56 +01:00
We also plot the current as function of the time on figure < a href = "#org553205c" > 9< / a > .
2019-05-15 15:49:48 +02:00
< / p >
< div class = "org-src-container" >
< pre class = "src src-matlab" > < span class = "org-type" > figure< / span > ;
2020-11-12 10:30:56 +01:00
subplot(1, 2, 1);
plot(tye_on(< span class = "org-type" > :< / span > , 1), tye_on(< span class = "org-type" > :< / span > , 3)< span class = "org-type" > -< / span > mean(tye_on(< span class = "org-type" > :< / span > , 3)));
xlim([0, 5]);
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Current [A]'< / span > );
legend({< span class = "org-string" > 'Ty - ON'< / span > }, < span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'northeast'< / span > );
subplot(1, 2, 2);
plot(tye_1h(< span class = "org-type" > :< / span > , 1), tye_1h(< span class = "org-type" > :< / span > , 3)< span class = "org-type" > -< / span > mean(tye_1h(< span class = "org-type" > :< / span > , 3)));
xlim([0, 5]);
xlabel(< span class = "org-string" > 'Time [s]'< / span > ); ylabel(< span class = "org-string" > 'Current [A]'< / span > );
legend({< span class = "org-string" > 'Ty - 1Hz'< / span > }, < span class = "org-string" > 'Location'< / span > , < span class = "org-string" > 'northeast'< / span > );
2019-05-15 15:49:48 +02:00
< / pre >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "org553205c" class = "figure" >
2019-05-15 15:49:48 +02:00
< p > < img src = "figs/ty_current_time.png" alt = "ty_current_time.png" / >
< / p >
< p > < span class = "figure-number" > Figure 9: < / span > Current going through the actuator of the translation stage< / p >
< / div >
< / div >
< / div >
< / div >
2020-11-12 10:30:56 +01:00
< div id = "outline-container-org7e6aef2" class = "outline-3" >
< h3 id = "org7e6aef2" > < span class = "section-number-3" > 2.6< / span > Conclusion< / h3 >
2019-05-15 15:49:48 +02:00
< div class = "outline-text-3" id = "text-2-6" >
2020-11-12 10:30:56 +01:00
< div class = "important" id = "org6da1178" >
2019-05-15 15:49:48 +02:00
< ul class = "org-ul" >
< li > < / li >
< / ul >
2019-05-15 08:43:38 +02:00
< / div >
< / div >
< / div >
< / div >
< / div >
< div id = "postamble" class = "status" >
< p class = "author" > Author: Dehaeze Thomas< / p >
2020-11-12 10:30:56 +01:00
< p class = "date" > Created: 2020-11-12 jeu. 10:27< / p >
2019-05-15 08:43:38 +02:00
< / div >
< / body >
< / html >