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"
viewBox="0 0 445.25269 309.88137"
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
id="metadata839">
<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">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2020-10-23 ven. 23:04 -->
<!-- 2020-10-25 dim. 09:06 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Encoder - Test Bench</title>
<meta name="generator" content="Org mode" />
@ -31,55 +31,60 @@
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org0d09252">1. Experimental Setup</a></li>
<li><a href="#org4c1706c">2. Huddle Test</a>
<li><a href="#org62e3fd3">1. Experimental Setup</a></li>
<li><a href="#org12a748d">2. Huddle Test</a>
<ul>
<li><a href="#org169c9b3">2.1. Load Data</a></li>
<li><a href="#org71d6eed">2.2. Time Domain Results</a></li>
<li><a href="#org526b687">2.3. Frequency Domain Noise</a></li>
<li><a href="#orgcc6a5f5">2.1. Load Data</a></li>
<li><a href="#org38dca56">2.2. Time Domain Results</a></li>
<li><a href="#orgb3db033">2.3. Frequency Domain Noise</a></li>
</ul>
</li>
<li><a href="#org25a61fe">3. Comparison Interferometer / Encoder</a>
<li><a href="#org99db9f6">3. Comparison Interferometer / Encoder</a>
<ul>
<li><a href="#orgb31234a">3.1. Load Data</a></li>
<li><a href="#org4fa5441">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="#org625a811">3.4. Difference between Encoder and Interferometer as a function of position</a></li>
<li><a href="#org1d63b9a">3.1. Load Data</a></li>
<li><a href="#org185e20d">3.2. Time Domain Results</a></li>
<li><a href="#org04cd372">3.3. Difference between Encoder and Interferometer as a function of time</a></li>
<li><a href="#org0271741">3.4. Difference between Encoder and Interferometer as a function of position</a></li>
</ul>
</li>
<li><a href="#org2e4bf3b">4. Identification</a>
<li><a href="#orga08d704">4. Identification</a>
<ul>
<li><a href="#org8a892bd">4.1. Load Data</a></li>
<li><a href="#org7e3c2ba">4.2. Identification</a></li>
<li><a href="#orgaa05248">4.1. Load Data</a></li>
<li><a href="#org0d4f0cd">4.2. Identification</a></li>
</ul>
</li>
</ul>
</div>
</div>
<div id="outline-container-org0d09252" class="outline-2">
<h2 id="org0d09252"><span class="section-number-2">1</span> Experimental Setup</h2>
<div id="outline-container-org62e3fd3" class="outline-2">
<h2 id="org62e3fd3"><span class="section-number-2">1</span> Experimental Setup</h2>
<div class="outline-text-2" id="text-1">
<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>
<div id="org5bc9553" class="figure">
<div id="org4fd66dc" class="figure">
<p><img src="figs/exp_setup_schematic.png" alt="exp_setup_schematic.png" />
</p>
<p><span class="figure-number">Figure 1: </span>Schematic of the Experiment</p>
</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>
<p><span class="figure-number">Figure 2: </span>Side View of the encoder</p>
</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>
<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 id="outline-container-org4c1706c" class="outline-2">
<h2 id="org4c1706c"><span class="section-number-2">2</span> Huddle Test</h2>
<div id="outline-container-org12a748d" class="outline-2">
<h2 id="org12a748d"><span class="section-number-2">2</span> Huddle Test</h2>
<div class="outline-text-2" id="text-2">
<p>
The goal in this section is the estimate the noise of both the encoder and the intereferometer.
</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 id="outline-container-org169c9b3" class="outline-3">
<h3 id="org169c9b3"><span class="section-number-3">2.1</span> Load Data</h3>
<div id="outline-container-orgcc6a5f5" class="outline-3">
<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="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>);
@ -111,11 +121,11 @@ encoder = detrend(encoder, 0);
</div>
</div>
<div id="outline-container-org71d6eed" class="outline-3">
<h3 id="org71d6eed"><span class="section-number-3">2.2</span> Time Domain Results</h3>
<div id="outline-container-org38dca56" class="outline-3">
<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 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>
<p><span class="figure-number">Figure 4: </span>Huddle test - Time domain signals</p>
@ -127,7 +137,7 @@ encoder = detrend(encoder, 0);
</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>
<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 id="outline-container-org526b687" class="outline-3">
<h3 id="org526b687"><span class="section-number-3">2.3</span> Frequency Domain Noise</h3>
<div id="outline-container-orgb3db033" class="outline-3">
<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="org-src-container">
<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 id="org7e02bb2" class="figure">
<div id="orgd4d1e96" class="figure">
<p><img src="figs/huddle_test_asd.png" alt="huddle_test_asd.png" />
</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 id="outline-container-org25a61fe" class="outline-2">
<h2 id="org25a61fe"><span class="section-number-2">3</span> Comparison Interferometer / Encoder</h2>
<div id="outline-container-org99db9f6" class="outline-2">
<h2 id="org99db9f6"><span class="section-number-2">3</span> Comparison Interferometer / Encoder</h2>
<div class="outline-text-2" id="text-3">
<p>
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>
</div>
<div id="outline-container-orgb31234a" class="outline-3">
<h3 id="orgb31234a"><span class="section-number-3">3.1</span> Load Data</h3>
<div id="outline-container-org1d63b9a" class="outline-3">
<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="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>);
@ -183,18 +193,18 @@ u = detrend(u, 0);
</div>
</div>
<div id="outline-container-org4fa5441" class="outline-3">
<h3 id="org4fa5441"><span class="section-number-3">3.2</span> Time Domain Results</h3>
<div id="outline-container-org185e20d" class="outline-3">
<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 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>
<p><span class="figure-number">Figure 7: </span>One cycle measurement</p>
</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>
<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 id="outline-container-orge79e200" 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>
<div id="outline-container-org04cd372" class="outline-3">
<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="org-src-container">
<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 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>
<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 id="outline-container-org625a811" 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>
<div id="outline-container-org0271741" class="outline-3">
<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">
<p>
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 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>
<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 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>
<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 id="outline-container-org2e4bf3b" class="outline-2">
<h2 id="org2e4bf3b"><span class="section-number-2">4</span> Identification</h2>
<div id="outline-container-orga08d704" class="outline-2">
<h2 id="orga08d704"><span class="section-number-2">4</span> Identification</h2>
<div class="outline-text-2" id="text-4">
</div>
<div id="outline-container-org8a892bd" class="outline-3">
<h3 id="org8a892bd"><span class="section-number-3">4.1</span> Load Data</h3>
<div id="outline-container-orgaa05248" class="outline-3">
<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="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>);
@ -303,8 +313,8 @@ u = detrend(u, 0);
</div>
</div>
<div id="outline-container-org7e3c2ba" class="outline-3">
<h3 id="org7e3c2ba"><span class="section-number-3">4.2</span> Identification</h3>
<div id="outline-container-org0d4f0cd" class="outline-3">
<h3 id="org0d4f0cd"><span class="section-number-3">4.2</span> Identification</h3>
<div class="outline-text-3" id="text-4-2">
<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>
@ -322,14 +332,14 @@ win = hann(ceil(10<span class="org-type">/</span>Ts));
</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>
</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>
</div>
@ -339,7 +349,7 @@ win = hann(ceil(10<span class="org-type">/</span>Ts));
</div>
<div id="postamble" class="status">
<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>
</body>
</html>

View File

@ -56,6 +56,9 @@ The displacement of the mass (relative to the mechanical frame) is measured both
** Introduction :ignore:
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:
#+begin_src matlab :tangle no :exports none :results silent :noweb yes :var current_dir=(file-name-directory buffer-file-name)
<<matlab-dir>>