Minor update

This commit is contained in:
Thomas Dehaeze 2020-10-25 09:06:14 +01:00
parent 4e653358d8
commit 63d404ef22
3 changed files with 72 additions and 56 deletions

View File

@ -14,7 +14,10 @@
height="309.88138" height="309.88138"
viewBox="0 0 445.25269 309.88137" viewBox="0 0 445.25269 309.88137"
sodipodi:docname="exp_setup_schematic.svg" sodipodi:docname="exp_setup_schematic.svg"
inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"> inkscape:version="1.0.1 (3bc2e813f5, 2020-09-07)"
inkscape:export-filename="/home/thomas/Cloud/thesis/matlab/encoder-test-bench/figs/exp_setup_schematic.png"
inkscape:export-xdpi="252"
inkscape:export-ydpi="252">
<metadata <metadata
id="metadata839"> id="metadata839">
<rdf:RDF> <rdf:RDF>

Before

Width:  |  Height:  |  Size: 225 KiB

After

Width:  |  Height:  |  Size: 225 KiB

View File

@ -3,7 +3,7 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head> <head>
<!-- 2020-10-23 ven. 23:04 --> <!-- 2020-10-25 dim. 09:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Encoder - Test Bench</title> <title>Encoder - Test Bench</title>
<meta name="generator" content="Org mode" /> <meta name="generator" content="Org mode" />
@ -31,55 +31,60 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul> <ul>
<li><a href="#org0d09252">1. Experimental Setup</a></li> <li><a href="#org62e3fd3">1. Experimental Setup</a></li>
<li><a href="#org4c1706c">2. Huddle Test</a> <li><a href="#org12a748d">2. Huddle Test</a>
<ul> <ul>
<li><a href="#org169c9b3">2.1. Load Data</a></li> <li><a href="#orgcc6a5f5">2.1. Load Data</a></li>
<li><a href="#org71d6eed">2.2. Time Domain Results</a></li> <li><a href="#org38dca56">2.2. Time Domain Results</a></li>
<li><a href="#org526b687">2.3. Frequency Domain Noise</a></li> <li><a href="#orgb3db033">2.3. Frequency Domain Noise</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org25a61fe">3. Comparison Interferometer / Encoder</a> <li><a href="#org99db9f6">3. Comparison Interferometer / Encoder</a>
<ul> <ul>
<li><a href="#orgb31234a">3.1. Load Data</a></li> <li><a href="#org1d63b9a">3.1. Load Data</a></li>
<li><a href="#org4fa5441">3.2. Time Domain Results</a></li> <li><a href="#org185e20d">3.2. Time Domain Results</a></li>
<li><a href="#orge79e200">3.3. Difference between Encoder and Interferometer as a function of time</a></li> <li><a href="#org04cd372">3.3. Difference between Encoder and Interferometer as a function of time</a></li>
<li><a href="#org625a811">3.4. Difference between Encoder and Interferometer as a function of position</a></li> <li><a href="#org0271741">3.4. Difference between Encoder and Interferometer as a function of position</a></li>
</ul> </ul>
</li> </li>
<li><a href="#org2e4bf3b">4. Identification</a> <li><a href="#orga08d704">4. Identification</a>
<ul> <ul>
<li><a href="#org8a892bd">4.1. Load Data</a></li> <li><a href="#orgaa05248">4.1. Load Data</a></li>
<li><a href="#org7e3c2ba">4.2. Identification</a></li> <li><a href="#org0d4f0cd">4.2. Identification</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
<div id="outline-container-org0d09252" class="outline-2"> <div id="outline-container-org62e3fd3" class="outline-2">
<h2 id="org0d09252"><span class="section-number-2">1</span> Experimental Setup</h2> <h2 id="org62e3fd3"><span class="section-number-2">1</span> Experimental Setup</h2>
<div class="outline-text-2" id="text-1"> <div class="outline-text-2" id="text-1">
<p> <p>
The experimental Setup is schematically represented in Figure <a href="#org5bc9553">1</a>. The experimental Setup is schematically represented in Figure <a href="#org4fd66dc">1</a>.
</p>
<p>
The mass can be vertically moved using the amplified piezoelectric actuator.
The displacement of the mass (relative to the mechanical frame) is measured both by the interferometer and by the encoder.
</p> </p>
<div id="org5bc9553" class="figure"> <div id="org4fd66dc" class="figure">
<p><img src="figs/exp_setup_schematic.png" alt="exp_setup_schematic.png" /> <p><img src="figs/exp_setup_schematic.png" alt="exp_setup_schematic.png" />
</p> </p>
<p><span class="figure-number">Figure 1: </span>Schematic of the Experiment</p> <p><span class="figure-number">Figure 1: </span>Schematic of the Experiment</p>
</div> </div>
<div id="org7f3df10" class="figure"> <div id="orge37bdbc" class="figure">
<p><img src="figs/IMG_20201023_153905.jpg" alt="IMG_20201023_153905.jpg" /> <p><img src="figs/IMG_20201023_153905.jpg" alt="IMG_20201023_153905.jpg" />
</p> </p>
<p><span class="figure-number">Figure 2: </span>Side View of the encoder</p> <p><span class="figure-number">Figure 2: </span>Side View of the encoder</p>
</div> </div>
<div id="org71727ed" class="figure"> <div id="org168fd7f" class="figure">
<p><img src="figs/IMG_20201023_153914.jpg" alt="IMG_20201023_153914.jpg" /> <p><img src="figs/IMG_20201023_153914.jpg" alt="IMG_20201023_153914.jpg" />
</p> </p>
<p><span class="figure-number">Figure 3: </span>Front View of the encoder</p> <p><span class="figure-number">Figure 3: </span>Front View of the encoder</p>
@ -87,16 +92,21 @@ The experimental Setup is schematically represented in Figure <a href="#org5bc95
</div> </div>
</div> </div>
<div id="outline-container-org4c1706c" class="outline-2"> <div id="outline-container-org12a748d" class="outline-2">
<h2 id="org4c1706c"><span class="section-number-2">2</span> Huddle Test</h2> <h2 id="org12a748d"><span class="section-number-2">2</span> Huddle Test</h2>
<div class="outline-text-2" id="text-2"> <div class="outline-text-2" id="text-2">
<p> <p>
The goal in this section is the estimate the noise of both the encoder and the intereferometer. The goal in this section is the estimate the noise of both the encoder and the intereferometer.
</p> </p>
<p>
Nothing is then to the actuator such that the relative motion between the mass and the frame is as small as possible.
Ideally, a mechanical part would clamp the two together, we here suppose that the APA is still enough to clamp the two together.
</p>
</div> </div>
<div id="outline-container-org169c9b3" class="outline-3"> <div id="outline-container-orgcc6a5f5" class="outline-3">
<h3 id="org169c9b3"><span class="section-number-3">2.1</span> Load Data</h3> <h3 id="orgcc6a5f5"><span class="section-number-3">2.1</span> Load Data</h3>
<div class="outline-text-3" id="text-2-1"> <div class="outline-text-3" id="text-2-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">load(<span class="org-string">'mat/int_enc_huddle_test.mat'</span>, <span class="org-string">'interferometer'</span>, <span class="org-string">'encoder'</span>, <span class="org-string">'t'</span>); <pre class="src src-matlab">load(<span class="org-string">'mat/int_enc_huddle_test.mat'</span>, <span class="org-string">'interferometer'</span>, <span class="org-string">'encoder'</span>, <span class="org-string">'t'</span>);
@ -111,11 +121,11 @@ encoder = detrend(encoder, 0);
</div> </div>
</div> </div>
<div id="outline-container-org71d6eed" class="outline-3"> <div id="outline-container-org38dca56" class="outline-3">
<h3 id="org71d6eed"><span class="section-number-3">2.2</span> Time Domain Results</h3> <h3 id="org38dca56"><span class="section-number-3">2.2</span> Time Domain Results</h3>
<div class="outline-text-3" id="text-2-2"> <div class="outline-text-3" id="text-2-2">
<div id="org06a0d1c" class="figure"> <div id="org1e8928d" class="figure">
<p><img src="figs/huddle_test_time_domain.png" alt="huddle_test_time_domain.png" /> <p><img src="figs/huddle_test_time_domain.png" alt="huddle_test_time_domain.png" />
</p> </p>
<p><span class="figure-number">Figure 4: </span>Huddle test - Time domain signals</p> <p><span class="figure-number">Figure 4: </span>Huddle test - Time domain signals</p>
@ -127,7 +137,7 @@ encoder = detrend(encoder, 0);
</div> </div>
<div id="orgee9ad22" class="figure"> <div id="org831d12c" class="figure">
<p><img src="figs/huddle_test_time_domain_filtered.png" alt="huddle_test_time_domain_filtered.png" /> <p><img src="figs/huddle_test_time_domain_filtered.png" alt="huddle_test_time_domain_filtered.png" />
</p> </p>
<p><span class="figure-number">Figure 5: </span>Huddle test - Time domain signals filtered with a LPF at 10Hz</p> <p><span class="figure-number">Figure 5: </span>Huddle test - Time domain signals filtered with a LPF at 10Hz</p>
@ -135,8 +145,8 @@ encoder = detrend(encoder, 0);
</div> </div>
</div> </div>
<div id="outline-container-org526b687" class="outline-3"> <div id="outline-container-orgb3db033" class="outline-3">
<h3 id="org526b687"><span class="section-number-3">2.3</span> Frequency Domain Noise</h3> <h3 id="orgb3db033"><span class="section-number-3">2.3</span> Frequency Domain Noise</h3>
<div class="outline-text-3" id="text-2-3"> <div class="outline-text-3" id="text-2-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">Ts = 1e<span class="org-type">-</span>4; <pre class="src src-matlab">Ts = 1e<span class="org-type">-</span>4;
@ -148,7 +158,7 @@ win = hann(ceil(10<span class="org-type">/</span>Ts));
</div> </div>
<div id="org7e02bb2" class="figure"> <div id="orgd4d1e96" class="figure">
<p><img src="figs/huddle_test_asd.png" alt="huddle_test_asd.png" /> <p><img src="figs/huddle_test_asd.png" alt="huddle_test_asd.png" />
</p> </p>
<p><span class="figure-number">Figure 6: </span>Amplitude Spectral Density of the signals during the Huddle test</p> <p><span class="figure-number">Figure 6: </span>Amplitude Spectral Density of the signals during the Huddle test</p>
@ -157,8 +167,8 @@ win = hann(ceil(10<span class="org-type">/</span>Ts));
</div> </div>
</div> </div>
<div id="outline-container-org25a61fe" class="outline-2"> <div id="outline-container-org99db9f6" class="outline-2">
<h2 id="org25a61fe"><span class="section-number-2">3</span> Comparison Interferometer / Encoder</h2> <h2 id="org99db9f6"><span class="section-number-2">3</span> Comparison Interferometer / Encoder</h2>
<div class="outline-text-2" id="text-3"> <div class="outline-text-2" id="text-3">
<p> <p>
The goal here is to make sure that the interferometer and encoder measurements are coherent. The goal here is to make sure that the interferometer and encoder measurements are coherent.
@ -166,8 +176,8 @@ We may see non-linearity in the interferometric measurement.
</p> </p>
</div> </div>
<div id="outline-container-orgb31234a" class="outline-3"> <div id="outline-container-org1d63b9a" class="outline-3">
<h3 id="orgb31234a"><span class="section-number-3">3.1</span> Load Data</h3> <h3 id="org1d63b9a"><span class="section-number-3">3.1</span> Load Data</h3>
<div class="outline-text-3" id="text-3-1"> <div class="outline-text-3" id="text-3-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">load(<span class="org-string">'mat/int_enc_comp.mat'</span>, <span class="org-string">'interferometer'</span>, <span class="org-string">'encoder'</span>, <span class="org-string">'u'</span>, <span class="org-string">'t'</span>); <pre class="src src-matlab">load(<span class="org-string">'mat/int_enc_comp.mat'</span>, <span class="org-string">'interferometer'</span>, <span class="org-string">'encoder'</span>, <span class="org-string">'u'</span>, <span class="org-string">'t'</span>);
@ -183,18 +193,18 @@ u = detrend(u, 0);
</div> </div>
</div> </div>
<div id="outline-container-org4fa5441" class="outline-3"> <div id="outline-container-org185e20d" class="outline-3">
<h3 id="org4fa5441"><span class="section-number-3">3.2</span> Time Domain Results</h3> <h3 id="org185e20d"><span class="section-number-3">3.2</span> Time Domain Results</h3>
<div class="outline-text-3" id="text-3-2"> <div class="outline-text-3" id="text-3-2">
<div id="org486d613" class="figure"> <div id="orgf56a137" class="figure">
<p><img src="figs/int_enc_one_cycle.png" alt="int_enc_one_cycle.png" /> <p><img src="figs/int_enc_one_cycle.png" alt="int_enc_one_cycle.png" />
</p> </p>
<p><span class="figure-number">Figure 7: </span>One cycle measurement</p> <p><span class="figure-number">Figure 7: </span>One cycle measurement</p>
</div> </div>
<div id="org2bb119e" class="figure"> <div id="org3adb535" class="figure">
<p><img src="figs/int_enc_one_cycle_error.png" alt="int_enc_one_cycle_error.png" /> <p><img src="figs/int_enc_one_cycle_error.png" alt="int_enc_one_cycle_error.png" />
</p> </p>
<p><span class="figure-number">Figure 8: </span>Difference between the Encoder and the interferometer during one cycle</p> <p><span class="figure-number">Figure 8: </span>Difference between the Encoder and the interferometer during one cycle</p>
@ -202,8 +212,8 @@ u = detrend(u, 0);
</div> </div>
</div> </div>
<div id="outline-container-orge79e200" class="outline-3"> <div id="outline-container-org04cd372" class="outline-3">
<h3 id="orge79e200"><span class="section-number-3">3.3</span> Difference between Encoder and Interferometer as a function of time</h3> <h3 id="org04cd372"><span class="section-number-3">3.3</span> Difference between Encoder and Interferometer as a function of time</h3>
<div class="outline-text-3" id="text-3-3"> <div class="outline-text-3" id="text-3-3">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">Ts = 1e<span class="org-type">-</span>4; <pre class="src src-matlab">Ts = 1e<span class="org-type">-</span>4;
@ -224,7 +234,7 @@ d_err_mean = d_err_mean <span class="org-type">-</span> mean(d_err_mean);
</div> </div>
<div id="orgf0015d1" class="figure"> <div id="orgd16ecc5" class="figure">
<p><img src="figs/int_enc_error_mean_time.png" alt="int_enc_error_mean_time.png" /> <p><img src="figs/int_enc_error_mean_time.png" alt="int_enc_error_mean_time.png" />
</p> </p>
<p><span class="figure-number">Figure 9: </span>Difference between the two measurement in the time domain, averaged for all the cycles</p> <p><span class="figure-number">Figure 9: </span>Difference between the two measurement in the time domain, averaged for all the cycles</p>
@ -232,8 +242,8 @@ d_err_mean = d_err_mean <span class="org-type">-</span> mean(d_err_mean);
</div> </div>
</div> </div>
<div id="outline-container-org625a811" class="outline-3"> <div id="outline-container-org0271741" class="outline-3">
<h3 id="org625a811"><span class="section-number-3">3.4</span> Difference between Encoder and Interferometer as a function of position</h3> <h3 id="org0271741"><span class="section-number-3">3.4</span> Difference between Encoder and Interferometer as a function of position</h3>
<div class="outline-text-3" id="text-3-4"> <div class="outline-text-3" id="text-3-4">
<p> <p>
Compute the mean of the interferometer measurement corresponding to each of the encoder measurement. Compute the mean of the interferometer measurement corresponding to each of the encoder measurement.
@ -252,7 +262,7 @@ i_mean_error = (i_mean <span class="org-type">-</span> e_sorted);
</div> </div>
<div id="orgd4f6d77" class="figure"> <div id="org81096af" class="figure">
<p><img src="figs/int_enc_error_mean_position.png" alt="int_enc_error_mean_position.png" /> <p><img src="figs/int_enc_error_mean_position.png" alt="int_enc_error_mean_position.png" />
</p> </p>
<p><span class="figure-number">Figure 10: </span>Difference between the two measurement as a function of the measured position by the encoder, averaged for all the cycles</p> <p><span class="figure-number">Figure 10: </span>Difference between the two measurement as a function of the measured position by the encoder, averaged for all the cycles</p>
@ -273,7 +283,7 @@ e_sorted_mean_over_period = mean(reshape(i_mean_error(i_init<span class="org-typ
</div> </div>
<div id="orgb5a621e" class="figure"> <div id="orgd460333" class="figure">
<p><img src="figs/int_non_linearity_period_wavelength.png" alt="int_non_linearity_period_wavelength.png" /> <p><img src="figs/int_non_linearity_period_wavelength.png" alt="int_non_linearity_period_wavelength.png" />
</p> </p>
<p><span class="figure-number">Figure 11: </span>Non-Linearity of the Interferometer over the period of the wavelength</p> <p><span class="figure-number">Figure 11: </span>Non-Linearity of the Interferometer over the period of the wavelength</p>
@ -282,12 +292,12 @@ e_sorted_mean_over_period = mean(reshape(i_mean_error(i_init<span class="org-typ
</div> </div>
</div> </div>
<div id="outline-container-org2e4bf3b" class="outline-2"> <div id="outline-container-orga08d704" class="outline-2">
<h2 id="org2e4bf3b"><span class="section-number-2">4</span> Identification</h2> <h2 id="orga08d704"><span class="section-number-2">4</span> Identification</h2>
<div class="outline-text-2" id="text-4"> <div class="outline-text-2" id="text-4">
</div> </div>
<div id="outline-container-org8a892bd" class="outline-3"> <div id="outline-container-orgaa05248" class="outline-3">
<h3 id="org8a892bd"><span class="section-number-3">4.1</span> Load Data</h3> <h3 id="orgaa05248"><span class="section-number-3">4.1</span> Load Data</h3>
<div class="outline-text-3" id="text-4-1"> <div class="outline-text-3" id="text-4-1">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">load(<span class="org-string">'mat/int_enc_id_noise_bis.mat'</span>, <span class="org-string">'interferometer'</span>, <span class="org-string">'encoder'</span>, <span class="org-string">'u'</span>, <span class="org-string">'t'</span>); <pre class="src src-matlab">load(<span class="org-string">'mat/int_enc_id_noise_bis.mat'</span>, <span class="org-string">'interferometer'</span>, <span class="org-string">'encoder'</span>, <span class="org-string">'u'</span>, <span class="org-string">'t'</span>);
@ -303,8 +313,8 @@ u = detrend(u, 0);
</div> </div>
</div> </div>
<div id="outline-container-org7e3c2ba" class="outline-3"> <div id="outline-container-org0d4f0cd" class="outline-3">
<h3 id="org7e3c2ba"><span class="section-number-3">4.2</span> Identification</h3> <h3 id="org0d4f0cd"><span class="section-number-3">4.2</span> Identification</h3>
<div class="outline-text-3" id="text-4-2"> <div class="outline-text-3" id="text-4-2">
<div class="org-src-container"> <div class="org-src-container">
<pre class="src src-matlab">Ts = 1e<span class="org-type">-</span>4; <span class="org-comment">% Sampling Time [s]</span> <pre class="src src-matlab">Ts = 1e<span class="org-type">-</span>4; <span class="org-comment">% Sampling Time [s]</span>
@ -322,14 +332,14 @@ win = hann(ceil(10<span class="org-type">/</span>Ts));
</div> </div>
<div id="org801d42d" class="figure"> <div id="org0157819" class="figure">
<p><img src="figs/identification_dynamics_coherence.png" alt="identification_dynamics_coherence.png" /> <p><img src="figs/identification_dynamics_coherence.png" alt="identification_dynamics_coherence.png" />
</p> </p>
</div> </div>
<div id="org7f77bc5" class="figure"> <div id="org4b89965" class="figure">
<p><img src="figs/identification_dynamics_bode.png" alt="identification_dynamics_bode.png" /> <p><img src="figs/identification_dynamics_bode.png" alt="identification_dynamics_bode.png" />
</p> </p>
</div> </div>
@ -339,7 +349,7 @@ win = hann(ceil(10<span class="org-type">/</span>Ts));
</div> </div>
<div id="postamble" class="status"> <div id="postamble" class="status">
<p class="author">Author: Dehaeze Thomas</p> <p class="author">Author: Dehaeze Thomas</p>
<p class="date">Created: 2020-10-23 ven. 23:04</p> <p class="date">Created: 2020-10-25 dim. 09:06</p>
</div> </div>
</body> </body>
</html> </html>

View File

@ -56,6 +56,9 @@ The displacement of the mass (relative to the mechanical frame) is measured both
** Introduction :ignore: ** Introduction :ignore:
The goal in this section is the estimate the noise of both the encoder and the intereferometer. The goal in this section is the estimate the noise of both the encoder and the intereferometer.
Nothing is then to the actuator such that the relative motion between the mass and the frame is as small as possible.
Ideally, a mechanical part would clamp the two together, we here suppose that the APA is still enough to clamp the two together.
** Matlab Init :noexport:ignore: ** Matlab Init :noexport:ignore:
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name) #+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
<<matlab-dir>> <<matlab-dir>>