Use online CSS and JS

This commit is contained in:
2021-02-20 23:09:27 +01:00
parent bd054638b2
commit 36181282b6
37 changed files with 8722 additions and 8640 deletions

View File

@@ -1,66 +1,61 @@
<?xml version="1.0" encoding="utf-8"?>
<?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-05-05 mar. 10:34 -->
<!-- 2021-02-20 sam. 23:08 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Simulation of Scientific Experiments</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="Dehaeze Thomas" />
<link rel="stylesheet" type="text/css" href="./css/htmlize.css"/>
<link rel="stylesheet" type="text/css" href="./css/readtheorg.css"/>
<script src="./js/jquery.min.js"></script>
<script src="./js/bootstrap.min.js"></script>
<script src="./js/jquery.stickytableheaders.min.js"></script>
<script src="./js/readtheorg.js"></script>
<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>
</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>
<a accesskey="H" href="../../index.html"> HOME </a>
</div><div id="content">
<h1 class="title">Simulation of Scientific Experiments</h1>
<div id="table-of-contents">
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org03b2a76">1. Simscape Model</a></li>
<li><a href="#org6ed78a0">2. Tomography Experiment with no disturbances</a>
<li><a href="#org5e41cbf">1. Simscape Model</a></li>
<li><a href="#orge687eef">2. Tomography Experiment with no disturbances</a>
<ul>
<li><a href="#orge3f0741">2.1. Simulation Setup</a></li>
<li><a href="#org1836f98">2.2. Analysis</a></li>
<li><a href="#org8cf54cb">2.3. Conclusion</a></li>
<li><a href="#orgd7be9f9">2.1. Simulation Setup</a></li>
<li><a href="#org3cc37e4">2.2. Analysis</a></li>
<li><a href="#org635d5aa">2.3. Conclusion</a></li>
</ul>
</li>
<li><a href="#org16d8e58">3. Tomography Experiment with included perturbations</a>
<li><a href="#orgbaff4a2">3. Tomography Experiment with included perturbations</a>
<ul>
<li><a href="#org9d04c8b">3.1. Simulation Setup</a></li>
<li><a href="#org746ee08">3.2. Analysis</a></li>
<li><a href="#org42ba456">3.3. Conclusion</a></li>
<li><a href="#org2adb412">3.1. Simulation Setup</a></li>
<li><a href="#org0574e3b">3.2. Analysis</a></li>
<li><a href="#orga01299f">3.3. Conclusion</a></li>
</ul>
</li>
<li><a href="#org7202245">4. Tomography Experiment with Ty raster scans</a>
<li><a href="#org2e6a61c">4. Tomography Experiment with Ty raster scans</a>
<ul>
<li><a href="#org0b606be">4.1. Simulation Setup</a></li>
<li><a href="#org2e0557a">4.2. Analysis</a></li>
<li><a href="#org6c8cc28">4.3. Conclusion</a></li>
<li><a href="#orgea8ee40">4.1. Simulation Setup</a></li>
<li><a href="#org10c7f76">4.2. Analysis</a></li>
<li><a href="#org9121d09">4.3. Conclusion</a></li>
</ul>
</li>
<li><a href="#org72f01ab">5. Tomography when the micro-hexapod is not centered</a>
<li><a href="#orgfc40faa">5. Tomography when the micro-hexapod is not centered</a>
<ul>
<li><a href="#org98d14be">5.1. Simulation Setup</a></li>
<li><a href="#org6dc8ae4">5.2. Analysis</a></li>
<li><a href="#orgb632268">5.3. Conclusion</a></li>
<li><a href="#orgbab9ef9">5.1. Simulation Setup</a></li>
<li><a href="#org012e268">5.2. Analysis</a></li>
<li><a href="#org75b29bc">5.3. Conclusion</a></li>
</ul>
</li>
<li><a href="#org8fa1632">6. Raster Scans with the translation stage</a>
<li><a href="#org3ba6838">6. Raster Scans with the translation stage</a>
<ul>
<li><a href="#orgdd9a5de">6.1. Simulation Setup</a></li>
<li><a href="#orgad49d2c">6.2. Analysis</a></li>
<li><a href="#org57c774f">6.3. Conclusion</a></li>
<li><a href="#org5f4e508">6.1. Simulation Setup</a></li>
<li><a href="#orgf069548">6.2. Analysis</a></li>
<li><a href="#org3446ba0">6.3. Conclusion</a></li>
</ul>
</li>
</ul>
@@ -85,26 +80,26 @@ This has several goals:
The document in organized as follow:
</p>
<ul class="org-ul">
<li>In section <a href="#orgfc7d050">1</a> the Simscape model is initialized</li>
<li>In section <a href="#org3effbb8">2</a> a tomography experiment is performed where the sample is aligned with the rotation axis. No disturbance is included</li>
<li>In section <a href="#org4e7f626">3</a>, the same is done but with disturbance included</li>
<li>In section <a href="#orgb31e3fb">5</a> the micro-hexapod translate the sample such that its center of mass is no longer aligned with the rotation axis. No disturbance is included</li>
<li>In section <a href="#org6aaeb53">6</a>, scans with the translation stage are simulated with no perturbation included</li>
<li>In section <a href="#org5180d92">1</a> the Simscape model is initialized</li>
<li>In section <a href="#org141b5a6">2</a> a tomography experiment is performed where the sample is aligned with the rotation axis. No disturbance is included</li>
<li>In section <a href="#org95498dc">3</a>, the same is done but with disturbance included</li>
<li>In section <a href="#orgd1d4e24">5</a> the micro-hexapod translate the sample such that its center of mass is no longer aligned with the rotation axis. No disturbance is included</li>
<li>In section <a href="#orgeec7f3c">6</a>, scans with the translation stage are simulated with no perturbation included</li>
</ul>
<div id="outline-container-org03b2a76" class="outline-2">
<h2 id="org03b2a76"><span class="section-number-2">1</span> Simscape Model</h2>
<div id="outline-container-org5e41cbf" class="outline-2">
<h2 id="org5e41cbf"><span class="section-number-2">1</span> Simscape Model</h2>
<div class="outline-text-2" id="text-1">
<p>
<a id="orgfc7d050"></a>
<a id="org5180d92"></a>
</p>
<p>
We load the shared simulink configuration and we set the <code>StopTime</code>.
</p>
<div class="org-src-container">
<pre class="src src-matlab">load('mat/conf_simulink.mat');
set_param(conf_simulink, 'StopTime', '2');
<pre class="src src-matlab"> load(<span class="org-string">'mat/conf_simulink.mat'</span>);
<span class="org-matlab-simulink-keyword">set_param</span>(<span class="org-variable-name">conf_simulink</span>, <span class="org-string">'StopTime'</span>, <span class="org-string">'2'</span>);
</pre>
</div>
@@ -113,16 +108,16 @@ We first initialize all the stages.
The nano-hexapod is considered to be a rigid body.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeGround();
initializeGranite();
initializeTy();
initializeRy();
initializeRz();
initializeMicroHexapod();
initializeAxisc();
initializeMirror();
initializeNanoHexapod('type', 'rigid');
initializeSample('mass', 1);
<pre class="src src-matlab"> initializeGround();
initializeGranite();
initializeTy();
initializeRy();
initializeRz();
initializeMicroHexapod();
initializeAxisc();
initializeMirror();
initializeNanoHexapod(<span class="org-string">'type'</span>, <span class="org-string">'rigid'</span>);
initializeSample(<span class="org-string">'mass'</span>, 1);
</pre>
</div>
@@ -130,7 +125,7 @@ initializeSample('mass', 1);
No controller is used (Open Loop).
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeController('type', 'open-loop');
<pre class="src src-matlab"> initializeController(<span class="org-string">'type'</span>, <span class="org-string">'open-loop'</span>);
</pre>
</div>
@@ -138,7 +133,7 @@ No controller is used (Open Loop).
We don&rsquo;t gravity.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeSimscapeConfiguration('gravity', false);
<pre class="src src-matlab"> initializeSimscapeConfiguration(<span class="org-string">'gravity'</span>, <span class="org-constant">false</span>);
</pre>
</div>
@@ -146,38 +141,38 @@ We don&rsquo;t gravity.
We log the signals for further analysis.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeLoggingConfiguration('log', 'all');
<pre class="src src-matlab"> initializeLoggingConfiguration(<span class="org-string">'log'</span>, <span class="org-string">'all'</span>);
</pre>
</div>
</div>
</div>
<div id="outline-container-org6ed78a0" class="outline-2">
<h2 id="org6ed78a0"><span class="section-number-2">2</span> Tomography Experiment with no disturbances</h2>
<div id="outline-container-orge687eef" class="outline-2">
<h2 id="orge687eef"><span class="section-number-2">2</span> Tomography Experiment with no disturbances</h2>
<div class="outline-text-2" id="text-2">
<p>
<a id="org3effbb8"></a>
<a id="org141b5a6"></a>
</p>
<p>
In this section, a tomography experiment is performed with the sample aligned with the rotation axis.
No disturbance is included.
</p>
</div>
<div id="outline-container-orge3f0741" class="outline-3">
<h3 id="orge3f0741"><span class="section-number-3">2.1</span> Simulation Setup</h3>
<div id="outline-container-orgd7be9f9" class="outline-3">
<h3 id="orgd7be9f9"><span class="section-number-3">2.1</span> Simulation Setup</h3>
<div class="outline-text-3" id="text-2-1">
<p>
And we initialize the disturbances to be equal to zero.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeDisturbances(...
'Dwx', false, ... % Ground Motion - X direction
'Dwy', false, ... % Ground Motion - Y direction
'Dwz', false, ... % Ground Motion - Z direction
'Fty_x', false, ... % Translation Stage - X direction
'Fty_z', false, ... % Translation Stage - Z direction
'Frz_z', false ... % Spindle - Z direction
);
<pre class="src src-matlab"> initializeDisturbances(...
<span class="org-string">'Dwx'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - X direction</span>
<span class="org-string">'Dwy'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - Y direction</span>
<span class="org-string">'Dwz'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - Z direction</span>
<span class="org-string">'Fty_x'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - X direction</span>
<span class="org-string">'Fty_z'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - Z direction</span>
<span class="org-string">'Frz_z'</span>, <span class="org-constant">false</span> ...<span class="org-comment"> % Spindle - Z direction</span>
);
</pre>
</div>
@@ -186,7 +181,7 @@ We initialize the reference path for all the stages.
All stage is set to its zero position except the Spindle which is rotating at 60rpm.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeReferences('Rz_type', 'rotating', 'Rz_period', 1);
<pre class="src src-matlab"> initializeReferences(<span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating'</span>, <span class="org-string">'Rz_period'</span>, 1);
</pre>
</div>
@@ -194,7 +189,7 @@ All stage is set to its zero position except the Spindle which is rotating at 60
We simulate the model.
</p>
<div class="org-src-container">
<pre class="src src-matlab">sim('nass_model');
<pre class="src src-matlab"> <span class="org-matlab-simulink-keyword">sim</span>(<span class="org-string">'nass_model'</span>);
</pre>
</div>
@@ -202,23 +197,23 @@ We simulate the model.
And we save the obtained data.
</p>
<div class="org-src-container">
<pre class="src src-matlab">tomo_align_no_dist = simout;
save('./mat/experiment_tomography.mat', 'tomo_align_no_dist', '-append');
<pre class="src src-matlab"> tomo_align_no_dist = simout;
save(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'tomo_align_no_dist'</span>, <span class="org-string">'-append'</span>);
</pre>
</div>
</div>
</div>
<div id="outline-container-org1836f98" class="outline-3">
<h3 id="org1836f98"><span class="section-number-3">2.2</span> Analysis</h3>
<div id="outline-container-org3cc37e4" class="outline-3">
<h3 id="org3cc37e4"><span class="section-number-3">2.2</span> Analysis</h3>
<div class="outline-text-3" id="text-2-2">
<div class="org-src-container">
<pre class="src src-matlab">load('./mat/experiment_tomography.mat', 'tomo_align_no_dist');
<pre class="src src-matlab"> load(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'tomo_align_no_dist'</span>);
</pre>
</div>
<div id="orgfcc6055" class="figure">
<div id="org3dd3ed3" class="figure">
<p><img src="figs/exp_tomo_without_dist.png" alt="exp_tomo_without_dist.png" />
</p>
<p><span class="figure-number">Figure 1: </span>X-Y-Z translation of the sample w.r.t. granite when performing tomography experiment with no disturbances (<a href="./figs/exp_tomo_without_dist.png">png</a>, <a href="./figs/exp_tomo_without_dist.pdf">pdf</a>)</p>
@@ -226,10 +221,10 @@ save('./mat/experiment_tomography.mat', 'tomo_align_no_dist', '-append');
</div>
</div>
<div id="outline-container-org8cf54cb" class="outline-3">
<h3 id="org8cf54cb"><span class="section-number-3">2.3</span> Conclusion</h3>
<div id="outline-container-org635d5aa" class="outline-3">
<h3 id="org635d5aa"><span class="section-number-3">2.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-2-3">
<div class="important">
<div class="important" id="orgbee0f3e">
<p>
When everything is aligned, the resulting error motion is very small (nm range) and is quite negligible with respect to the error when disturbances are included.
This residual error motion probably comes from a small misalignment somewhere.
@@ -240,32 +235,32 @@ This residual error motion probably comes from a small misalignment somewhere.
</div>
</div>
<div id="outline-container-org16d8e58" class="outline-2">
<h2 id="org16d8e58"><span class="section-number-2">3</span> Tomography Experiment with included perturbations</h2>
<div id="outline-container-orgbaff4a2" class="outline-2">
<h2 id="orgbaff4a2"><span class="section-number-2">3</span> Tomography Experiment with included perturbations</h2>
<div class="outline-text-2" id="text-3">
<p>
<a id="org4e7f626"></a>
<a id="org95498dc"></a>
</p>
<p>
In this section, we also perform a tomography experiment with the sample&rsquo;s center of mass aligned with the rotation axis.
However this time, we include perturbations such as ground motion and stage vibrations.
</p>
</div>
<div id="outline-container-org9d04c8b" class="outline-3">
<h3 id="org9d04c8b"><span class="section-number-3">3.1</span> Simulation Setup</h3>
<div id="outline-container-org2adb412" class="outline-3">
<h3 id="org2adb412"><span class="section-number-3">3.1</span> Simulation Setup</h3>
<div class="outline-text-3" id="text-3-1">
<p>
We now activate the disturbances.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeDisturbances(...
'Dwx', true, ... % Ground Motion - X direction
'Dwy', true, ... % Ground Motion - Y direction
'Dwz', true, ... % Ground Motion - Z direction
'Fty_x', false, ... % Translation Stage - X direction
'Fty_z', false, ... % Translation Stage - Z direction
'Frz_z', true ... % Spindle - Z direction
);
<pre class="src src-matlab"> initializeDisturbances(...
<span class="org-string">'Dwx'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Ground Motion - X direction</span>
<span class="org-string">'Dwy'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Ground Motion - Y direction</span>
<span class="org-string">'Dwz'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Ground Motion - Z direction</span>
<span class="org-string">'Fty_x'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - X direction</span>
<span class="org-string">'Fty_z'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - Z direction</span>
<span class="org-string">'Frz_z'</span>, <span class="org-constant">true</span> ...<span class="org-comment"> % Spindle - Z direction</span>
);
</pre>
</div>
@@ -274,7 +269,7 @@ We initialize the reference path for all the stages.
All stage is set to its zero position except the Spindle which is rotating at 60rpm.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeReferences('Rz_type', 'rotating', 'Rz_period', 1);
<pre class="src src-matlab"> initializeReferences(<span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating'</span>, <span class="org-string">'Rz_period'</span>, 1);
</pre>
</div>
@@ -282,7 +277,7 @@ All stage is set to its zero position except the Spindle which is rotating at 60
We simulate the model.
</p>
<div class="org-src-container">
<pre class="src src-matlab">sim('nass_model');
<pre class="src src-matlab"> <span class="org-matlab-simulink-keyword">sim</span>(<span class="org-string">'nass_model'</span>);
</pre>
</div>
@@ -290,23 +285,23 @@ We simulate the model.
And we save the obtained data.
</p>
<div class="org-src-container">
<pre class="src src-matlab">tomo_align_dist = simout;
save('./mat/experiment_tomography.mat', 'tomo_align_dist', '-append');
<pre class="src src-matlab"> tomo_align_dist = simout;
save(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'tomo_align_dist'</span>, <span class="org-string">'-append'</span>);
</pre>
</div>
</div>
</div>
<div id="outline-container-org746ee08" class="outline-3">
<h3 id="org746ee08"><span class="section-number-3">3.2</span> Analysis</h3>
<div id="outline-container-org0574e3b" class="outline-3">
<h3 id="org0574e3b"><span class="section-number-3">3.2</span> Analysis</h3>
<div class="outline-text-3" id="text-3-2">
<div class="org-src-container">
<pre class="src src-matlab">load('./mat/experiment_tomography.mat', 'tomo_align_dist', 'tomo_align_no_dist');
<pre class="src src-matlab"> load(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'tomo_align_dist'</span>, <span class="org-string">'tomo_align_no_dist'</span>);
</pre>
</div>
<div id="org8030dba" class="figure">
<div id="org7188a2d" class="figure">
<p><img src="figs/exp_tomo_dist.png" alt="exp_tomo_dist.png" />
</p>
<p><span class="figure-number">Figure 2: </span>X-Y-Z translations and rotations of the sample w.r.t. the granite when performing tomography experiment with disturbances (<a href="./figs/exp_tomo_dist.png">png</a>, <a href="./figs/exp_tomo_dist.pdf">pdf</a>)</p>
@@ -314,10 +309,10 @@ save('./mat/experiment_tomography.mat', 'tomo_align_dist', '-append');
</div>
</div>
<div id="outline-container-org42ba456" class="outline-3">
<h3 id="org42ba456"><span class="section-number-3">3.3</span> Conclusion</h3>
<div id="outline-container-orga01299f" class="outline-3">
<h3 id="orga01299f"><span class="section-number-3">3.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-3-3">
<div class="important">
<div class="important" id="org2449de1">
<p>
Here, no vibration is included in the X and Y directions.
</p>
@@ -327,32 +322,32 @@ Here, no vibration is included in the X and Y directions.
</div>
</div>
<div id="outline-container-org7202245" class="outline-2">
<h2 id="org7202245"><span class="section-number-2">4</span> Tomography Experiment with Ty raster scans</h2>
<div id="outline-container-org2e6a61c" class="outline-2">
<h2 id="org2e6a61c"><span class="section-number-2">4</span> Tomography Experiment with Ty raster scans</h2>
<div class="outline-text-2" id="text-4">
<p>
<a id="orgd4f0240"></a>
<a id="org4907e7b"></a>
</p>
<p>
In this section, we also perform a tomography experiment with scans of the Translation stage.
All the perturbations are included.
</p>
</div>
<div id="outline-container-org0b606be" class="outline-3">
<h3 id="org0b606be"><span class="section-number-3">4.1</span> Simulation Setup</h3>
<div id="outline-container-orgea8ee40" class="outline-3">
<h3 id="orgea8ee40"><span class="section-number-3">4.1</span> Simulation Setup</h3>
<div class="outline-text-3" id="text-4-1">
<p>
We now activate the disturbances.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeDisturbances(...
'Dwx', true, ... % Ground Motion - X direction
'Dwy', true, ... % Ground Motion - Y direction
'Dwz', true, ... % Ground Motion - Z direction
'Fty_x', true, ... % Translation Stage - X direction
'Fty_z', true, ... % Translation Stage - Z direction
'Frz_z', true ... % Spindle - Z direction
);
<pre class="src src-matlab"> initializeDisturbances(...
<span class="org-string">'Dwx'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Ground Motion - X direction</span>
<span class="org-string">'Dwy'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Ground Motion - Y direction</span>
<span class="org-string">'Dwz'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Ground Motion - Z direction</span>
<span class="org-string">'Fty_x'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Translation Stage - X direction</span>
<span class="org-string">'Fty_z'</span>, <span class="org-constant">true</span>, ...<span class="org-comment"> % Translation Stage - Z direction</span>
<span class="org-string">'Frz_z'</span>, <span class="org-constant">true</span> ...<span class="org-comment"> % Spindle - Z direction</span>
);
</pre>
</div>
@@ -362,7 +357,7 @@ The Spindle which is rotating at 60rpm and the translation stage not moving as i
However, vibrations of the Ty stage are included.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeReferences('Rz_type', 'rotating', 'Rz_period', 1);
<pre class="src src-matlab"> initializeReferences(<span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating'</span>, <span class="org-string">'Rz_period'</span>, 1);
</pre>
</div>
@@ -370,7 +365,7 @@ However, vibrations of the Ty stage are included.
We simulate the model.
</p>
<div class="org-src-container">
<pre class="src src-matlab">sim('nass_model');
<pre class="src src-matlab"> <span class="org-matlab-simulink-keyword">sim</span>(<span class="org-string">'nass_model'</span>);
</pre>
</div>
@@ -378,23 +373,23 @@ We simulate the model.
And we save the obtained data.
</p>
<div class="org-src-container">
<pre class="src src-matlab">scans_rz_align_dist = simout;
save('./mat/experiment_tomography.mat', 'scans_rz_align_dist', '-append');
<pre class="src src-matlab"> scans_rz_align_dist = simout;
save(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'scans_rz_align_dist'</span>, <span class="org-string">'-append'</span>);
</pre>
</div>
</div>
</div>
<div id="outline-container-org2e0557a" class="outline-3">
<h3 id="org2e0557a"><span class="section-number-3">4.2</span> Analysis</h3>
<div id="outline-container-org10c7f76" class="outline-3">
<h3 id="org10c7f76"><span class="section-number-3">4.2</span> Analysis</h3>
<div class="outline-text-3" id="text-4-2">
<div class="org-src-container">
<pre class="src src-matlab">load('./mat/experiment_tomography.mat', 'scans_rz_align_dist');
<pre class="src src-matlab"> load(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'scans_rz_align_dist'</span>);
</pre>
</div>
<div id="org38e229c" class="figure">
<div id="org125e802" class="figure">
<p><img src="figs/exp_scans_rz_dist.png" alt="exp_scans_rz_dist.png" />
</p>
<p><span class="figure-number">Figure 3: </span>X-Y-Z translations and rotations of the sample w.r.t. the granite when performing tomography experiment and scans with the translation stage at the same time</p>
@@ -402,16 +397,16 @@ save('./mat/experiment_tomography.mat', 'scans_rz_align_dist', '-append');
</div>
</div>
<div id="outline-container-org6c8cc28" class="outline-3">
<h3 id="org6c8cc28"><span class="section-number-3">4.3</span> Conclusion</h3>
<div id="outline-container-org9121d09" class="outline-3">
<h3 id="org9121d09"><span class="section-number-3">4.3</span> Conclusion</h3>
</div>
</div>
<div id="outline-container-org72f01ab" class="outline-2">
<h2 id="org72f01ab"><span class="section-number-2">5</span> Tomography when the micro-hexapod is not centered</h2>
<div id="outline-container-orgfc40faa" class="outline-2">
<h2 id="orgfc40faa"><span class="section-number-2">5</span> Tomography when the micro-hexapod is not centered</h2>
<div class="outline-text-2" id="text-5">
<p>
<a id="orgb31e3fb"></a>
<a id="orgd1d4e24"></a>
</p>
<p>
In this section, the sample&rsquo;s center of mass is not aligned with the rotation axis anymore.
@@ -422,14 +417,14 @@ This is due to the fact that the micro-hexapod has performed some displacement.
No disturbances are included.
</p>
</div>
<div id="outline-container-org98d14be" class="outline-3">
<h3 id="org98d14be"><span class="section-number-3">5.1</span> Simulation Setup</h3>
<div id="outline-container-orgbab9ef9" class="outline-3">
<h3 id="orgbab9ef9"><span class="section-number-3">5.1</span> Simulation Setup</h3>
<div class="outline-text-3" id="text-5-1">
<p>
We first set the wanted translation of the Micro Hexapod.
</p>
<div class="org-src-container">
<pre class="src src-matlab">P_micro_hexapod = [0.01; 0; 0]; % [m]
<pre class="src src-matlab"> P_micro_hexapod = [0.01; 0; 0]; <span class="org-comment">% [m]</span>
</pre>
</div>
@@ -437,7 +432,7 @@ We first set the wanted translation of the Micro Hexapod.
We initialize the reference path.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeReferences('Dh_pos', [P_micro_hexapod; 0; 0; 0], 'Rz_type', 'rotating', 'Rz_period', 1);
<pre class="src src-matlab"> initializeReferences(<span class="org-string">'Dh_pos'</span>, [P_micro_hexapod; 0; 0; 0], <span class="org-string">'Rz_type'</span>, <span class="org-string">'rotating'</span>, <span class="org-string">'Rz_period'</span>, 1);
</pre>
</div>
@@ -445,7 +440,7 @@ We initialize the reference path.
We initialize the stages.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeMicroHexapod('AP', P_micro_hexapod);
<pre class="src src-matlab"> initializeMicroHexapod(<span class="org-string">'AP'</span>, P_micro_hexapod);
</pre>
</div>
@@ -453,14 +448,14 @@ We initialize the stages.
And we initialize the disturbances to zero.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeDisturbances(...
'Dwx', false, ... % Ground Motion - X direction
'Dwy', false, ... % Ground Motion - Y direction
'Dwz', false, ... % Ground Motion - Z direction
'Fty_x', false, ... % Translation Stage - X direction
'Fty_z', false, ... % Translation Stage - Z direction
'Frz_z', false ... % Spindle - Z direction
);
<pre class="src src-matlab"> initializeDisturbances(...
<span class="org-string">'Dwx'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - X direction</span>
<span class="org-string">'Dwy'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - Y direction</span>
<span class="org-string">'Dwz'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - Z direction</span>
<span class="org-string">'Fty_x'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - X direction</span>
<span class="org-string">'Fty_z'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - Z direction</span>
<span class="org-string">'Frz_z'</span>, <span class="org-constant">false</span> ...<span class="org-comment"> % Spindle - Z direction</span>
);
</pre>
</div>
@@ -468,7 +463,7 @@ And we initialize the disturbances to zero.
We simulate the model.
</p>
<div class="org-src-container">
<pre class="src src-matlab">sim('nass_model');
<pre class="src src-matlab"> <span class="org-matlab-simulink-keyword">sim</span>(<span class="org-string">'nass_model'</span>);
</pre>
</div>
@@ -476,23 +471,23 @@ We simulate the model.
And we save the obtained data.
</p>
<div class="org-src-container">
<pre class="src src-matlab">tomo_not_align = simout;
save('./mat/experiment_tomography.mat', 'tomo_not_align', '-append');
<pre class="src src-matlab"> tomo_not_align = simout;
save(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'tomo_not_align'</span>, <span class="org-string">'-append'</span>);
</pre>
</div>
</div>
</div>
<div id="outline-container-org6dc8ae4" class="outline-3">
<h3 id="org6dc8ae4"><span class="section-number-3">5.2</span> Analysis</h3>
<div id="outline-container-org012e268" class="outline-3">
<h3 id="org012e268"><span class="section-number-3">5.2</span> Analysis</h3>
<div class="outline-text-3" id="text-5-2">
<div class="org-src-container">
<pre class="src src-matlab">load('./mat/experiment_tomography.mat', 'tomo_not_align', 'tomo_align_no_dist');
<pre class="src src-matlab"> load(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'tomo_not_align'</span>, <span class="org-string">'tomo_align_no_dist'</span>);
</pre>
</div>
<div id="orgb824a01" class="figure">
<div id="orge17b520" class="figure">
<p><img src="figs/exp_tomo_offset.png" alt="exp_tomo_offset.png" />
</p>
<p><span class="figure-number">Figure 4: </span>X-Y-Z translation of the sample w.r.t. granite when performing tomography experiment with no disturbances (<a href="./figs/exp_tomo_offset.png">png</a>, <a href="./figs/exp_tomo_offset.pdf">pdf</a>)</p>
@@ -500,10 +495,10 @@ save('./mat/experiment_tomography.mat', 'tomo_not_align', '-append');
</div>
</div>
<div id="outline-container-orgb632268" class="outline-3">
<h3 id="orgb632268"><span class="section-number-3">5.3</span> Conclusion</h3>
<div id="outline-container-org75b29bc" class="outline-3">
<h3 id="org75b29bc"><span class="section-number-3">5.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-5-3">
<div class="important">
<div class="important" id="org970013d">
<p>
The main motion error are 1Hz X-Y translations and constant Ry error.
This is mainly due to finite stiffness of the elements.
@@ -514,33 +509,33 @@ This is mainly due to finite stiffness of the elements.
</div>
</div>
<div id="outline-container-org8fa1632" class="outline-2">
<h2 id="org8fa1632"><span class="section-number-2">6</span> Raster Scans with the translation stage</h2>
<div id="outline-container-org3ba6838" class="outline-2">
<h2 id="org3ba6838"><span class="section-number-2">6</span> Raster Scans with the translation stage</h2>
<div class="outline-text-2" id="text-6">
<p>
<a id="org6aaeb53"></a>
<a id="orgeec7f3c"></a>
</p>
<p>
In this section, scans with the translation stage are performed.
</p>
</div>
<div id="outline-container-orgdd9a5de" class="outline-3">
<h3 id="orgdd9a5de"><span class="section-number-3">6.1</span> Simulation Setup</h3>
<div id="outline-container-org5f4e508" class="outline-3">
<h3 id="org5f4e508"><span class="section-number-3">6.1</span> Simulation Setup</h3>
<div class="outline-text-3" id="text-6-1">
<p>
We initialize the stages.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeGround();
initializeGranite();
initializeTy();
initializeRy();
initializeRz();
initializeMicroHexapod();
initializeAxisc();
initializeMirror();
initializeNanoHexapod('type', 'rigid');
initializeSample('mass', 1);
<pre class="src src-matlab"> initializeGround();
initializeGranite();
initializeTy();
initializeRy();
initializeRz();
initializeMicroHexapod();
initializeAxisc();
initializeMirror();
initializeNanoHexapod(<span class="org-string">'type'</span>, <span class="org-string">'rigid'</span>);
initializeSample(<span class="org-string">'mass'</span>, 1);
</pre>
</div>
@@ -548,14 +543,14 @@ initializeSample('mass', 1);
And we initialize the disturbances to zero.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeDisturbances(...
'Dwx', false, ... % Ground Motion - X direction
'Dwy', false, ... % Ground Motion - Y direction
'Dwz', false, ... % Ground Motion - Z direction
'Fty_x', false, ... % Translation Stage - X direction
'Fty_z', false, ... % Translation Stage - Z direction
'Frz_z', false ... % Spindle - Z direction
);
<pre class="src src-matlab"> initializeDisturbances(...
<span class="org-string">'Dwx'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - X direction</span>
<span class="org-string">'Dwy'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - Y direction</span>
<span class="org-string">'Dwz'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Ground Motion - Z direction</span>
<span class="org-string">'Fty_x'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - X direction</span>
<span class="org-string">'Fty_z'</span>, <span class="org-constant">false</span>, ...<span class="org-comment"> % Translation Stage - Z direction</span>
<span class="org-string">'Frz_z'</span>, <span class="org-constant">false</span> ...<span class="org-comment"> % Spindle - Z direction</span>
);
</pre>
</div>
@@ -563,7 +558,7 @@ And we initialize the disturbances to zero.
We set the reference path to be a triangular signal for the Translation Stage.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeReferences('Dy_type', 'triangular', 'Dy_amplitude', 10e-3, 'Dy_period', 1);
<pre class="src src-matlab"> initializeReferences(<span class="org-string">'Dy_type'</span>, <span class="org-string">'triangular'</span>, <span class="org-string">'Dy_amplitude'</span>, 10e<span class="org-type">-</span>3, <span class="org-string">'Dy_period'</span>, 1);
</pre>
</div>
@@ -571,7 +566,7 @@ We set the reference path to be a triangular signal for the Translation Stage.
We simulate the model.
</p>
<div class="org-src-container">
<pre class="src src-matlab">sim('nass_model');
<pre class="src src-matlab"> <span class="org-matlab-simulink-keyword">sim</span>(<span class="org-string">'nass_model'</span>);
</pre>
</div>
@@ -579,8 +574,8 @@ We simulate the model.
And we save the obtained data.
</p>
<div class="org-src-container">
<pre class="src src-matlab">ty_scan_triangle = simout;
save('./mat/experiment_tomography.mat', 'ty_scan_triangle', '-append');
<pre class="src src-matlab"> ty_scan_triangle = simout;
save(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'ty_scan_triangle'</span>, <span class="org-string">'-append'</span>);
</pre>
</div>
@@ -588,7 +583,7 @@ save('./mat/experiment_tomography.mat', 'ty_scan_triangle', '-append');
We now set the reference path to be a sinusoidal signal for the Translation Stage.
</p>
<div class="org-src-container">
<pre class="src src-matlab">initializeReferences('Dy_type', 'sinusoidal', 'Dy_amplitude', 10e-3, 'Dy_period', 1);
<pre class="src src-matlab"> initializeReferences(<span class="org-string">'Dy_type'</span>, <span class="org-string">'sinusoidal'</span>, <span class="org-string">'Dy_amplitude'</span>, 10e<span class="org-type">-</span>3, <span class="org-string">'Dy_period'</span>, 1);
</pre>
</div>
@@ -596,7 +591,7 @@ We now set the reference path to be a sinusoidal signal for the Translation Stag
We simulate the model.
</p>
<div class="org-src-container">
<pre class="src src-matlab">sim('nass_model');
<pre class="src src-matlab"> <span class="org-matlab-simulink-keyword">sim</span>(<span class="org-string">'nass_model'</span>);
</pre>
</div>
@@ -604,23 +599,23 @@ We simulate the model.
And we save the obtained data.
</p>
<div class="org-src-container">
<pre class="src src-matlab">ty_scan_sinus = simout;
save('./mat/experiment_tomography.mat', 'ty_scan_sinus', '-append');
<pre class="src src-matlab"> ty_scan_sinus = simout;
save(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'ty_scan_sinus'</span>, <span class="org-string">'-append'</span>);
</pre>
</div>
</div>
</div>
<div id="outline-container-orgad49d2c" class="outline-3">
<h3 id="orgad49d2c"><span class="section-number-3">6.2</span> Analysis</h3>
<div id="outline-container-orgf069548" class="outline-3">
<h3 id="orgf069548"><span class="section-number-3">6.2</span> Analysis</h3>
<div class="outline-text-3" id="text-6-2">
<div class="org-src-container">
<pre class="src src-matlab">load('./mat/experiment_tomography.mat', 'ty_scan_triangle', 'ty_scan_sinus');
<pre class="src src-matlab"> load(<span class="org-string">'./mat/experiment_tomography.mat'</span>, <span class="org-string">'ty_scan_triangle'</span>, <span class="org-string">'ty_scan_sinus'</span>);
</pre>
</div>
<div id="org888f0bf" class="figure">
<div id="orgebbbb99" class="figure">
<p><img src="figs/exp_ty_scan.png" alt="exp_ty_scan.png" />
</p>
<p><span class="figure-number">Figure 5: </span>X-Y-Z translation of the sample w.r.t. granite when performing tomography experiment with no disturbances (<a href="./figs/exp_ty_scan.png">png</a>, <a href="./figs/exp_ty_scan.pdf">pdf</a>)</p>
@@ -628,10 +623,10 @@ save('./mat/experiment_tomography.mat', 'ty_scan_sinus', '-append');
</div>
</div>
<div id="outline-container-org57c774f" class="outline-3">
<h3 id="org57c774f"><span class="section-number-3">6.3</span> Conclusion</h3>
<div id="outline-container-org3446ba0" class="outline-3">
<h3 id="org3446ba0"><span class="section-number-3">6.3</span> Conclusion</h3>
<div class="outline-text-3" id="text-6-3">
<div class="important">
<div class="important" id="orgf5f4292">
<p>
Scans with the translation stage induces some errors in the Y direction and Rx translations.
</p>
@@ -648,7 +643,7 @@ Thus, this should be preferred.
</div>
<div id="postamble" class="status">
<p class="author">Author: Dehaeze Thomas</p>
<p class="date">Created: 2020-05-05 mar. 10:34</p>
<p class="date">Created: 2021-02-20 sam. 23:08</p>
</div>
</body>
</html>