Update Noise measurement analysis

This includes normalization with transfer function of the geophone
This commit is contained in:
Thomas Dehaeze 2019-03-19 16:43:10 +01:00
parent 8ac9f2c319
commit 1de409fadc
27 changed files with 585 additions and 289 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 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>
<!-- 2019-03-15 ven. 16:46 -->
<!-- 2019-03-19 mar. 16:42 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Measurement Analysis</title>
@ -245,6 +245,28 @@ for the JavaScript code in this tag.
}
/*]]>*///-->
</script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
displayAlign: "center",
displayIndent: "0em",
"HTML-CSS": { scale: 100,
linebreaks: { automatic: "false" },
webFont: "TeX"
},
SVG: {scale: 100,
linebreaks: { automatic: "false" },
font: "TeX"},
NativeMML: {scale: 100},
TeX: { equationNumbers: {autoNumber: "AMS"},
MultLineWidth: "85%",
TagSide: "right",
TagIndent: ".8em"
}
});
</script>
<script type="text/javascript"
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS_HTML"></script>
</head>
<body>
<div id="content">
@ -253,14 +275,17 @@ for the JavaScript code in this tag.
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul>
<li><a href="#org77cefe9">1. Measurement Description</a></li>
<li><a href="#org9f4b317">2. Importation of the data</a></li>
<li><a href="#org3defd95">3. Variables for analysis</a></li>
<li><a href="#orgdb61c3a">4. Measurement 1 - Effect of Ty stage</a></li>
<li><a href="#orgaed21d3">5. Measurement 2 - Effect of Ry stage</a></li>
<li><a href="#org70fba3b">6. Measurement 3 - Effect of the Hexapod</a></li>
<li><a href="#org9d0ea22">7. Measurement 4 - Effect of the Splip-Ring and Spindle</a></li>
<li><a href="#org80c9209">8. Measurement 5 - Transmission from ground to marble</a></li>
<li><a href="#orgc1db046">1. Measurement Description</a></li>
<li><a href="#org9b5288f">2. Importation of the data</a></li>
<li><a href="#org0c9206e">3. Variables for analysis</a></li>
<li><a href="#org876fa12">4. Coherence between the two vertical geophones on the Tilt Stage</a></li>
<li><a href="#org0e81d2f">5. Data Post Processing</a></li>
<li><a href="#org07adbbe">6. Normalization</a></li>
<li><a href="#org854c7bf">7. Measurement 1 - Effect of Ty stage</a></li>
<li><a href="#orga8c4982">8. Measurement 2 - Effect of Ry stage</a></li>
<li><a href="#orga79f5f4">9. Measurement 3 - Effect of the Hexapod</a></li>
<li><a href="#org8731abc">10. Measurement 4 - Effect of the Splip-Ring and Spindle</a></li>
<li><a href="#org33dc0ed">11. Measurement 5 - Transmission from ground to marble</a></li>
</ul>
</div>
</div>
@ -269,22 +294,19 @@ for the JavaScript code in this tag.
<a href="../index.html">Back to main page</a>.
</p>
<div id="outline-container-org77cefe9" class="outline-2">
<h2 id="org77cefe9"><span class="section-number-2">1</span> Measurement Description</h2>
<div id="outline-container-orgc1db046" class="outline-2">
<h2 id="orgc1db046"><span class="section-number-2">1</span> Measurement Description</h2>
<div class="outline-text-2" id="text-1">
<div id="org5681d9d" class="figure">
<div id="org25ddba6" class="figure">
<p><img src="./figs/setup_picture.png" alt="setup_picture.png" />
</p>
<p><span class="figure-number">Figure 1: </span>Picture of the setup for the measurement</p>
</div>
<p>
Sensors:
The sensor used are 3 L-4C geophones (<a href="../actuators-sensors/index.html#MissingReference">Documentation</a>).
</p>
<ul class="org-ul">
<li>3 L-4C (<a href="../actuators-sensors/index.html#MissingReference">Documentation</a>) <a href="file:///home/tdehaeze/MEGA/These/Measurements/actuators-sensors/index.html#MissingReference">table</a></li>
</ul>
<p>
Each motor are turn off and then on.
@ -296,8 +318,8 @@ The goal is to see what noise is injected in the system due to the regulation lo
</div>
</div>
<div id="outline-container-org9f4b317" class="outline-2">
<h2 id="org9f4b317"><span class="section-number-2">2</span> Importation of the data</h2>
<div id="outline-container-org9b5288f" class="outline-2">
<h2 id="org9b5288f"><span class="section-number-2">2</span> Importation of the data</h2>
<div class="outline-text-2" id="text-2">
<p>
First, load all the measurement files:
@ -322,10 +344,10 @@ meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">4</span>
</div>
<p>
For the measurements 1 to 4, the measurement channels are shown table <a href="#orgd93730c">1</a>.
For the measurements 1 to 4, the measurement channels are shown table <a href="#orgde7c9fb">1</a>.
</p>
<table id="orgd93730c" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgde7c9fb" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 1:</span> Channels for measurements 1 to 4</caption>
<colgroup>
@ -378,9 +400,9 @@ For the measurements 1 to 4, the measurement channels are shown table <a href="#
<p>
For the measurement 5, the channels are shown table <a href="#org5758635">2</a>.
For the measurement 5, the channels are shown table <a href="#orgb2a1d3a">2</a>.
</p>
<table id="org5758635" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgb2a1d3a" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 2:</span> Channels for measurement 5</caption>
<colgroup>
@ -413,35 +435,11 @@ For the measurement 5, the channels are shown table <a href="#org5758635">2</a>.
</tr>
</tbody>
</table>
<p>
When using two geophone sensors on the same tilt stage (measurements 1 and 2), we post-process the data to obtain the z displacement and the rotation of the tilt stage:
</p>
<div class="org-src-container">
<pre class="src src-matlab">meas1_z = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">+</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas1_tilt = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">-</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track1 = meas1_z;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track1_Y_Magnitude = <span style="color: #CC9393;">'Meter / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track1_Name = <span style="color: #CC9393;">'Ry Z'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track2 = meas1_tilt;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track2_Y_Magnitude = <span style="color: #CC9393;">'Rad / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track2_Name = <span style="color: #CC9393;">'Ry Tilt'</span>;
meas2_z = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">+</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas2_tilt = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">-</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track1 = meas2_z;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track1_Y_Magnitude = <span style="color: #CC9393;">'Meter / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track1_Name = <span style="color: #CC9393;">'Ry Z'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track2 = meas2_tilt;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track2_Y_Magnitude = <span style="color: #CC9393;">'Rad / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track2_Name = <span style="color: #CC9393;">'Ry Tilt'</span>;
</pre>
</div>
</div>
</div>
<div id="outline-container-org3defd95" class="outline-2">
<h2 id="org3defd95"><span class="section-number-2">3</span> Variables for analysis</h2>
<div id="outline-container-org0c9206e" class="outline-2">
<h2 id="org0c9206e"><span class="section-number-2">3</span> Variables for analysis</h2>
<div class="outline-text-2" id="text-3">
<p>
We define the sampling frequency and the time vectors for the plots.
@ -450,11 +448,11 @@ We define the sampling frequency and the time vectors for the plots.
<div class="org-src-container">
<pre class="src src-matlab">Fs = <span style="color: #BFEBBF;">256</span>; <span style="color: #7F9F7F;">% [Hz]</span>
dt = <span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">/</span><span style="color: #DCDCCC;">(</span>Fs<span style="color: #DCDCCC;">)</span>;
t1 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">]</span>;
t2 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">]</span>;
t3 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">]</span>;
t4 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">4</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">]</span>;
t5 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">5</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">]</span>;
t1 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">0</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">-</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">]</span>;
t2 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">0</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">-</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">]</span>;
t3 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">0</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">-</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">]</span>;
t4 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">0</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">4</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">-</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">]</span>;
t5 = dt<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">[</span><span style="color: #BFEBBF;">0</span><span style="color: #7CB8BB;">:</span>length<span style="color: #BFEBBF;">(</span>meas<span style="color: #D0BF8F;">{</span><span style="color: #BFEBBF;">5</span><span style="color: #D0BF8F;">}</span>.Track1<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">-</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">]</span>;
</pre>
</div>
@ -477,41 +475,168 @@ Then we define the windows that will be used to average the results.
</div>
</div>
<div id="outline-container-orgdb61c3a" class="outline-2">
<h2 id="orgdb61c3a"><span class="section-number-2">4</span> Measurement 1 - Effect of Ty stage</h2>
<div id="outline-container-org876fa12" class="outline-2">
<h2 id="org876fa12"><span class="section-number-2">4</span> Coherence between the two vertical geophones on the Tilt Stage</h2>
<div class="outline-text-2" id="text-4">
<p>
The configuration for this measurement is shown table <a href="#org1660151">3</a>.
We first compute the coherence between the two geophones located on the tilt stage. The result is shown on figure <a href="#org6414ae2">2</a>.
</p>
<div class="org-src-container">
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>coh, f<span style="color: #DCDCCC;">]</span> = mscohere<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #7CB8BB;">:</span><span style="color: #BFEBBF;">)</span>, meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #7CB8BB;">:</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<div id="org6414ae2" class="figure">
<p><img src="figs/coherence_vertical_tilt_sensors.png" alt="coherence_vertical_tilt_sensors.png" />
</p>
<p><span class="figure-number">Figure 2: </span>Coherence between the two vertical sensors positionned on the Tilt Stage</p>
</div>
<p>
We then compute the transfer function from one sensor to the other (figure <a href="#org0f2e1db">3</a>).
</p>
<div class="org-src-container">
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>tf23, f<span style="color: #DCDCCC;">]</span> = tfestimate<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #7CB8BB;">:</span><span style="color: #BFEBBF;">)</span>, meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #7CB8BB;">:</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<div id="org0f2e1db" class="figure">
<p><img src="figs/tf_vertical_tilt_sensors.png" alt="tf_vertical_tilt_sensors.png" />
</p>
<p><span class="figure-number">Figure 3: </span>Transfer function from one vertical geophone on the tilt stage to the other vertical geophone on the tilt stage</p>
</div>
<p>
Even though the coherence is not very good, we observe no resonance between the two sensors.
</p>
</div>
</div>
<div id="outline-container-org0e81d2f" class="outline-2">
<h2 id="org0e81d2f"><span class="section-number-2">5</span> Data Post Processing</h2>
<div class="outline-text-2" id="text-5">
<p>
When using two geophone sensors on the same tilt stage (measurements 1 and 2), we post-process the data to obtain the z displacement and the rotation of the tilt stage:
</p>
<table id="org1660151" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<div class="org-src-container">
<pre class="src src-matlab">meas1_z = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">+</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas1_tilt = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">-</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track1 = meas1_z;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track1_Y_Magnitude = <span style="color: #CC9393;">'Meter / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track1_Name = <span style="color: #CC9393;">'Ry Z'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track2 = meas1_tilt;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track2_Y_Magnitude = <span style="color: #CC9393;">'Rad / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">}</span>.Track2_Name = <span style="color: #CC9393;">'Ry Tilt'</span>;
meas2_z = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">+</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas2_tilt = <span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #7CB8BB;">-</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">2</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track1 = meas2_z;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track1_Y_Magnitude = <span style="color: #CC9393;">'Meter / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track1_Name = <span style="color: #CC9393;">'Ry Z'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track2 = meas2_tilt;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track2_Y_Magnitude = <span style="color: #CC9393;">'Rad / second'</span>;
meas<span style="color: #DCDCCC;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #DCDCCC;">}</span>.Track2_Name = <span style="color: #CC9393;">'Ry Tilt'</span>;
</pre>
</div>
</div>
</div>
<div id="outline-container-org07adbbe" class="outline-2">
<h2 id="org07adbbe"><span class="section-number-2">6</span> Normalization</h2>
<div class="outline-text-2" id="text-6">
<p>
Parameters of the geophone are defined below.
The transfer function from geophone velocity to measured voltage is shown on figure <a href="#org56c2445">4</a>.
</p>
<p>
Measurements will be normalized by the inverse of this transfer function in order to go from voltage measurement to velocity measurement.
</p>
<div class="org-src-container">
<pre class="src src-matlab">L4C_w0 = <span style="color: #BFEBBF;">2</span><span style="color: #7CB8BB;">*</span><span style="color: #BFEBBF;">pi</span>; <span style="color: #7F9F7F;">% [rad/s]</span>
L4C_ksi = <span style="color: #BFEBBF;">0</span>.<span style="color: #BFEBBF;">28</span>;
L4C_G0 = <span style="color: #BFEBBF;">276</span>.<span style="color: #BFEBBF;">8</span>; <span style="color: #7F9F7F;">% [V/(m/s)]</span>
L4C_G = L4C_G0<span style="color: #7CB8BB;">*</span><span style="color: #DCDCCC;">(</span>s<span style="color: #7CB8BB;">/</span>L4C_w0<span style="color: #DCDCCC;">)</span><span style="color: #7CB8BB;">^</span><span style="color: #BFEBBF;">2</span><span style="color: #7CB8BB;">/</span><span style="color: #DCDCCC;">(</span><span style="color: #BFEBBF;">(</span>s<span style="color: #7CB8BB;">/</span>L4C_w0<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">^</span><span style="color: #BFEBBF;">2</span> <span style="color: #7CB8BB;">+</span> <span style="color: #BFEBBF;">2</span><span style="color: #7CB8BB;">*</span>L4C_ksi<span style="color: #7CB8BB;">*</span><span style="color: #BFEBBF;">(</span>s<span style="color: #7CB8BB;">/</span>L4C_w0<span style="color: #BFEBBF;">)</span> <span style="color: #7CB8BB;">+</span> <span style="color: #BFEBBF;">1</span><span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<div id="org56c2445" class="figure">
<p><img src="figs/L4C_bode_plot.png" alt="L4C_bode_plot.png" />
</p>
<p><span class="figure-number">Figure 4: </span>Bode plot of the L4C Geophone</p>
</div>
<p>
Time domain data are just normalized using the sensibility of the sensor (\(276.8 V/m/s\)).
</p>
</div>
</div>
<div id="outline-container-org854c7bf" class="outline-2">
<h2 id="org854c7bf"><span class="section-number-2">7</span> Measurement 1 - Effect of Ty stage</h2>
<div class="outline-text-2" id="text-7">
<p>
The configuration for this measurement is shown table <a href="#org7881134">3</a>.
</p>
<table id="org7881134" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 3:</span> Stages configuration - Measurement 1</caption>
<colgroup>
<col class="org-left" />
<col class="org-right" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left">Time</th>
<th scope="col" class="org-right">0-309</th>
<th scope="col" class="org-left">0-309</th>
<th scope="col" class="org-left">309-end</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">Ty</td>
<td class="org-right">OFF</td>
<td class="org-left">ON</td>
<td class="org-left">OFF</td>
<td class="org-left"><b>ON</b></td>
</tr>
<tr>
<td class="org-left">Ry</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">SlipRing</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Spindle</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Hexa</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
</tbody>
</table>
<p>
We then plot the measurements in time domain (figure <a href="#org1bae9b4">2</a>).
We then plot the measurements in time domain (figure <a href="#org7592c33">5</a>).
</p>
<div class="important">
@ -523,10 +648,10 @@ How can we explain that?
</div>
<div id="org1bae9b4" class="figure">
<div id="org7592c33" class="figure">
<p><img src="figs/meas1.png" alt="meas1.png" />
</p>
<p><span class="figure-number">Figure 2: </span>Time domain - measurement 1</p>
<p><span class="figure-number">Figure 5: </span>Time domain - measurement 1</p>
</div>
<p>
@ -534,58 +659,58 @@ To understand what is going on, instead of looking at the velocity, we can look
</p>
<div class="org-src-container">
<pre class="src src-matlab">tdisp = t1<span style="color: #DCDCCC;">(</span>ceil<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">340</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">)</span>;
xdisp = cumtrapz<span style="color: #DCDCCC;">(</span>tdisp, meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">340</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">)</span>;
xdisp = cumtrapz<span style="color: #DCDCCC;">(</span>tdisp, <span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">/</span><span style="color: #BFEBBF;">276</span>.<span style="color: #BFEBBF;">8</span><span style="color: #BFEBBF;">)</span><span style="color: #7CB8BB;">.*</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">340</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span><span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<p>
Then we plot the position with respect to time (figure <a href="#org8cf5d4c">3</a>).
Then we plot the position with respect to time (figure <a href="#orgf6e2558">6</a>).
</p>
<div id="org8cf5d4c" class="figure">
<div id="orgf6e2558" class="figure">
<p><img src="figs/meas1_disp.png" alt="meas1_disp.png" />
</p>
<p><span class="figure-number">Figure 3: </span>Y displacement of the Ty stage</p>
<p><span class="figure-number">Figure 6: </span>Y displacement of the Ty stage</p>
</div>
<p>
We when compute the power spectral density of each measurement before and after turning on the stage.
</p>
<div class="org-src-container">
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>pxx111, f111<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx112, f112<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">350</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>pxx111, f11<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx112, f12<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">350</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx121, f121<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx122, f122<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">350</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx121, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx122, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">350</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx131, f131<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx132, f132<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">350</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx131, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">300</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx132, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">1</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">350</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<p>
We finally plot the power spectral density of each track (figures <a href="#org0c5575c">4</a>, <a href="#orgb46f4f5">5</a>, <a href="#org1e537d2">6</a>).
We finally plot the power spectral density of each track (figures <a href="#org2b52faf">7</a>, <a href="#org3106809">8</a>, <a href="#org28f9d2d">9</a>).
</p>
<div id="org0c5575c" class="figure">
<div id="org2b52faf" class="figure">
<p><img src="figs/meas1_ry_z_psd.png" alt="meas1_ry_z_psd.png" />
</p>
<p><span class="figure-number">Figure 4: </span>PSD of the Z velocity of Ry stage - measurement 1</p>
<p><span class="figure-number">Figure 7: </span>PSD of the Z velocity of Ry stage - measurement 1</p>
</div>
<div id="orgb46f4f5" class="figure">
<div id="org3106809" class="figure">
<p><img src="figs/meas1_ry_tilt_psd.png" alt="meas1_ry_tilt_psd.png" />
</p>
<p><span class="figure-number">Figure 5: </span>PSD of the Rotation of Ry Stage - measurement 1</p>
<p><span class="figure-number">Figure 8: </span>PSD of the Rotation of Ry Stage - measurement 1</p>
</div>
<div id="org1e537d2" class="figure">
<div id="org28f9d2d" class="figure">
<p><img src="figs/meas1_ty_y_psd.png" alt="meas1_ty_y_psd.png" />
</p>
<p><span class="figure-number">Figure 6: </span>PSD of the Ty velocity in the Y direction - measurement 1</p>
<p><span class="figure-number">Figure 9: </span>PSD of the Ty velocity in the Y direction - measurement 1</p>
</div>
<div class="important">
@ -606,84 +731,108 @@ It does not seems to have any effect on the Z motion of the tilt stage.
</div>
</div>
<div id="outline-container-orgaed21d3" class="outline-2">
<h2 id="orgaed21d3"><span class="section-number-2">5</span> Measurement 2 - Effect of Ry stage</h2>
<div class="outline-text-2" id="text-5">
<div id="outline-container-orga8c4982" class="outline-2">
<h2 id="orga8c4982"><span class="section-number-2">8</span> Measurement 2 - Effect of Ry stage</h2>
<div class="outline-text-2" id="text-8">
<p>
The tilt stage is turned ON at around 326 seconds (table <a href="#orgee97535">4</a>).
The tilt stage is turned ON at around 326 seconds (table <a href="#org6ee7543">4</a>).
</p>
<table id="orgee97535" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org6ee7543" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 4:</span> Stages configuration - Measurement 2</caption>
<colgroup>
<col class="org-left" />
<col class="org-right" />
<col class="org-left" />
<col class="org-left" />
</colgroup>
<thead>
<tr>
<th scope="col" class="org-left">Time</th>
<th scope="col" class="org-right">0-326</th>
<th scope="col" class="org-left">0-326</th>
<th scope="col" class="org-left">326-end</th>
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">Tilt</td>
<td class="org-right">OFF</td>
<td class="org-left">ON</td>
<td class="org-left">Ty</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Ry</td>
<td class="org-left">OFF</td>
<td class="org-left"><b>ON</b></td>
</tr>
<tr>
<td class="org-left">SlipRing</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Spindle</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Hexa</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
</tbody>
</table>
<p>
We plot the time domain (figure <a href="#org943e97d">7</a>) and we don't observe anything special in the time domain.
We plot the time domain (figure <a href="#org17e1967">10</a>) and we don't observe anything special in the time domain.
</p>
<div id="org943e97d" class="figure">
<div id="org17e1967" class="figure">
<p><img src="figs/meas2.png" alt="meas2.png" />
</p>
<p><span class="figure-number">Figure 7: </span>Time domain - measurement 2</p>
<p><span class="figure-number">Figure 10: </span>Time domain - measurement 2</p>
</div>
<p>
We compute the PSD of each track and we plot them (figures <a href="#orged7cb6c">8</a>, <a href="#org98e7915">9</a> and <a href="#org225fd06">10</a> ).
We compute the PSD of each track and we plot them (figures <a href="#org5ee261f">11</a>, <a href="#org7cc110d">12</a> and <a href="#org04b24ea">13</a> ).
</p>
<div class="org-src-container">
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>pxx211, f211<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx212, f212<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>pxx211, f21<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx212, f22<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx221, f221<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx222, f222<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx221, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx222, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx231, f231<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx232, f232<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx231, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx232, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">2</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">326</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<div id="orged7cb6c" class="figure">
<div id="org5ee261f" class="figure">
<p><img src="figs/meas2_ry_z_psd.png" alt="meas2_ry_z_psd.png" />
</p>
<p><span class="figure-number">Figure 8: </span>PSD of the Z velocity of Ry Stage - measurement 2</p>
<p><span class="figure-number">Figure 11: </span>PSD of the Z velocity of Ry Stage - measurement 2</p>
</div>
<div id="org98e7915" class="figure">
<div id="org7cc110d" class="figure">
<p><img src="figs/meas2_ry_tilt_psd.png" alt="meas2_ry_tilt_psd.png" />
</p>
<p><span class="figure-number">Figure 9: </span>PSD of the Rotation motion of Ry Stage - measurement 2</p>
<p><span class="figure-number">Figure 12: </span>PSD of the Rotation motion of Ry Stage - measurement 2</p>
</div>
<div id="org225fd06" class="figure">
<div id="org04b24ea" class="figure">
<p><img src="figs/meas2_ty_y_psd.png" alt="meas2_ty_y_psd.png" />
</p>
<p><span class="figure-number">Figure 10: </span>PSD of the Ty velocity in the Y direction - measurement 2</p>
<p><span class="figure-number">Figure 13: </span>PSD of the Ty velocity in the Y direction - measurement 2</p>
</div>
<div class="important">
@ -695,14 +844,14 @@ We observe no noticeable difference when the Tilt-stage is turned ON expect a sm
</div>
</div>
<div id="outline-container-org70fba3b" class="outline-2">
<h2 id="org70fba3b"><span class="section-number-2">6</span> Measurement 3 - Effect of the Hexapod</h2>
<div class="outline-text-2" id="text-6">
<div id="outline-container-orga79f5f4" class="outline-2">
<h2 id="orga79f5f4"><span class="section-number-2">9</span> Measurement 3 - Effect of the Hexapod</h2>
<div class="outline-text-2" id="text-9">
<p>
The hexapod is turned off after 406 seconds (table <a href="#org6a7c5e2">5</a>).
The hexapod is turned off after 406 seconds (table <a href="#org3542637">5</a>).
</p>
<table id="org6a7c5e2" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="org3542637" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 5:</span> Stages configuration - Measurement 3</caption>
<colgroup>
@ -721,69 +870,87 @@ The hexapod is turned off after 406 seconds (table <a href="#org6a7c5e2">5</a>).
</thead>
<tbody>
<tr>
<td class="org-left">Tilt</td>
<td class="org-left">ON</td>
<td class="org-left">ON</td>
<td class="org-left">Ty</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Ry</td>
<td class="org-left"><b>ON</b></td>
<td class="org-left"><b>ON</b></td>
</tr>
<tr>
<td class="org-left">SlipRing</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Spindle</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Hexa</td>
<td class="org-left">ON</td>
<td class="org-left"><b>ON</b></td>
<td class="org-left">OFF</td>
</tr>
</tbody>
</table>
<p>
The time domain result is shown figure <a href="#orgd89f632">11</a>.
The time domain result is shown figure <a href="#orgcdae346">14</a>.
</p>
<div id="orgd89f632" class="figure">
<div id="orgcdae346" class="figure">
<p><img src="figs/meas3.png" alt="meas3.png" />
</p>
<p><span class="figure-number">Figure 11: </span>Time domain - measurement 3</p>
<p><span class="figure-number">Figure 14: </span>Time domain - measurement 3</p>
</div>
<p>
We then compute the PSD of each track before and after turning off the hexapod and plot the results in the figures <a href="#orge69c923">12</a>, <a href="#orga7bda42">13</a> and <a href="#org8b479d2">14</a>.
We then compute the PSD of each track before and after turning off the hexapod and plot the results in the figures <a href="#org862aff7">15</a>, <a href="#org62414c0">16</a> and <a href="#orgc015c93">17</a>.
</p>
<div class="org-src-container">
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>pxx311, f311<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">400</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx312, f312<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">420</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<pre class="src src-matlab"><span style="color: #DCDCCC;">[</span>pxx311, f31<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">400</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx312, f32<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track1<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">420</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx321, f321<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">400</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx322, f322<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">420</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx321, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">400</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx322, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track2<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">420</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx331, f331<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">400</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx332, f332<span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">420</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx331, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span><span style="color: #BFEBBF;">1</span><span style="color: #7CB8BB;">:</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">400</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
<span style="color: #DCDCCC;">[</span>pxx332, <span style="color: #7CB8BB;">~</span><span style="color: #DCDCCC;">]</span> = pwelch<span style="color: #DCDCCC;">(</span>meas<span style="color: #BFEBBF;">{</span><span style="color: #BFEBBF;">3</span><span style="color: #BFEBBF;">}</span>.Track3<span style="color: #BFEBBF;">(</span>ceil<span style="color: #D0BF8F;">(</span><span style="color: #BFEBBF;">420</span><span style="color: #7CB8BB;">/</span>dt<span style="color: #D0BF8F;">)</span><span style="color: #7CB8BB;">:</span>end<span style="color: #BFEBBF;">)</span>, psd_window, <span style="color: #BFEBBF;">[]</span>, <span style="color: #BFEBBF;">[]</span>, Fs<span style="color: #DCDCCC;">)</span>;
</pre>
</div>
<div id="orge69c923" class="figure">
<div id="org862aff7" class="figure">
<p><img src="figs/meas3_hexa_z_psd.png" alt="meas3_hexa_z_psd.png" />
</p>
<p><span class="figure-number">Figure 12: </span>PSD of the Z velocity of the Hexapod - measurement 3</p>
<p><span class="figure-number">Figure 15: </span>PSD of the Z velocity of the Hexapod - measurement 3</p>
</div>
<div id="orga7bda42" class="figure">
<div id="org62414c0" class="figure">
<p><img src="figs/meas3_ry_z_psd.png" alt="meas3_ry_z_psd.png" />
</p>
<p><span class="figure-number">Figure 13: </span>PSD of the Z velocity of the Ry stage - measurement 3</p>
<p><span class="figure-number">Figure 16: </span>PSD of the Z velocity of the Ry stage - measurement 3</p>
</div>
<div id="org8b479d2" class="figure">
<div id="orgc015c93" class="figure">
<p><img src="figs/meas3_ty_y_psd.png" alt="meas3_ty_y_psd.png" />
</p>
<p><span class="figure-number">Figure 14: </span>PSD of the Ty velocity in the Y direction - measurement 3</p>
<p><span class="figure-number">Figure 17: </span>PSD of the Ty velocity in the Y direction - measurement 3</p>
</div>
<div class="important">
<p>
Turning ON induces some motion on the hexapod in the z direction (figure <a href="#orge69c923">12</a>), on the tilt stage in the z direction (figure <a href="#orga7bda42">13</a>) and on the y motion of the Ty stage (figure <a href="#org8b479d2">14</a>):
Turning ON induces some motion on the hexapod in the z direction (figure <a href="#org862aff7">15</a>), on the tilt stage in the z direction (figure <a href="#org62414c0">16</a>) and on the y motion of the Ty stage (figure <a href="#orgc015c93">17</a>):
</p>
<ul class="org-ul">
<li>at 17Hz</li>
@ -794,14 +961,14 @@ Turning ON induces some motion on the hexapod in the z direction (figure <a href
</div>
</div>
<div id="outline-container-org9d0ea22" class="outline-2">
<h2 id="org9d0ea22"><span class="section-number-2">7</span> Measurement 4 - Effect of the Splip-Ring and Spindle</h2>
<div class="outline-text-2" id="text-7">
<div id="outline-container-org8731abc" class="outline-2">
<h2 id="org8731abc"><span class="section-number-2">10</span> Measurement 4 - Effect of the Splip-Ring and Spindle</h2>
<div class="outline-text-2" id="text-10">
<p>
The slip ring is turned on at 300s, then the spindle is turned on at 620s (table <a href="#org0a0a7e8">6</a>). The time domain signals are shown figure <a href="#org31e7fd0">15</a>.
The slip ring is turned on at 300s, then the spindle is turned on at 620s (table <a href="#orgb7f824f">6</a>). The time domain signals are shown figure <a href="#orgcdcd20d">18</a>.
</p>
<table id="org0a0a7e8" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<table id="orgb7f824f" border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
<caption class="t-above"><span class="table-number">Table 6:</span> Stages configuration - Measurement 4</caption>
<colgroup>
@ -822,11 +989,32 @@ The slip ring is turned on at 300s, then the spindle is turned on at 620s (table
</tr>
</thead>
<tbody>
<tr>
<td class="org-left">Ty</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Ry</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">SlipRing</td>
<td class="org-left">OFF</td>
<td class="org-left">ON</td>
<td class="org-left">ON</td>
<td class="org-left"><b>ON</b></td>
<td class="org-left"><b>ON</b></td>
</tr>
<tr>
<td class="org-left">Spindle</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
<td class="org-left"><b>ON</b></td>
</tr>
<tr>
@ -835,53 +1023,46 @@ The slip ring is turned on at 300s, then the spindle is turned on at 620s (table
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
</tr>
<tr>
<td class="org-left">Spindle</td>
<td class="org-left">OFF</td>
<td class="org-left">OFF</td>
<td class="org-left">ON</td>
</tr>
</tbody>
</table>
<div id="org31e7fd0" class="figure">
<div id="orgcdcd20d" class="figure">
<p><img src="figs/meas4.png" alt="meas4.png" />
</p>
<p><span class="figure-number">Figure 15: </span>Time domain - measurement 4</p>
<p><span class="figure-number">Figure 18: </span>Time domain - measurement 4</p>
</div>
<p>
The PSD of each track are computed using the code below.
</p>
<div id="org0404dd0" class="figure">
<div id="orgf66254d" class="figure">
<p><img src="figs/meas4_hexa_z_psd.png" alt="meas4_hexa_z_psd.png" />
</p>
<p><span class="figure-number">Figure 16: </span>PSD of the Z velocity of the Hexapod - measurement 4</p>
<p><span class="figure-number">Figure 19: </span>PSD of the Z velocity of the Hexapod - measurement 4</p>
</div>
<div id="org45aa86c" class="figure">
<div id="org5ec6b1b" class="figure">
<p><img src="figs/meas4_ry_z_psd.png" alt="meas4_ry_z_psd.png" />
</p>
<p><span class="figure-number">Figure 17: </span>PSD of the Ry rotation in the Y direction - measurement 4</p>
<p><span class="figure-number">Figure 20: </span>PSD of the Ry rotation in the Y direction - measurement 4</p>
</div>
<div id="org2f4d69a" class="figure">
<div id="orgd33d363" class="figure">
<p><img src="figs/meas4_ty_y_psd.png" alt="meas4_ty_y_psd.png" />
</p>
<p><span class="figure-number">Figure 18: </span>PSD of the Ty velocity in the Y direction - measurement 4</p>
<p><span class="figure-number">Figure 21: </span>PSD of the Ty velocity in the Y direction - measurement 4</p>
</div>
<div class="important">
<p>
Turning ON the splipring seems to not add motions on the stages measured.
It even seems to lower the motion of the Ty stage (figure <a href="#org2f4d69a">18</a>): does that make any sense?
It even seems to lower the motion of the Ty stage (figure <a href="#orgd33d363">21</a>): does that make any sense?
</p>
<p>
@ -897,26 +1078,26 @@ Turning ON the spindle induces motions:
</div>
</div>
<div id="outline-container-org80c9209" class="outline-2">
<h2 id="org80c9209"><span class="section-number-2">8</span> Measurement 5 - Transmission from ground to marble</h2>
<div class="outline-text-2" id="text-8">
<div id="outline-container-org33dc0ed" class="outline-2">
<h2 id="org33dc0ed"><span class="section-number-2">11</span> Measurement 5 - Transmission from ground to marble</h2>
<div class="outline-text-2" id="text-11">
<p>
This measurement just consists of measurement of Y-Z motion of the ground and the marble.
</p>
<p>
The time domain signals are shown on figure <a href="#orgdac3588">19</a>.
The time domain signals are shown on figure <a href="#orgc71b335">22</a>.
</p>
<div id="orgdac3588" class="figure">
<div id="orgc71b335" class="figure">
<p><img src="figs/meas5.png" alt="meas5.png" />
</p>
<p><span class="figure-number">Figure 19: </span>Time domain - measurement 5</p>
<p><span class="figure-number">Figure 22: </span>Time domain - measurement 5</p>
</div>
<p>
We compute the PSD of each track and we plot the PSD of the Z motion for the ground and marble on figure <a href="#orga4d8654">20</a> and for the Y motion on figure <a href="#orgcf2a406">21</a>.
We compute the PSD of each track and we plot the PSD of the Z motion for the ground and marble on figure <a href="#org69a4967">23</a> and for the Y motion on figure <a href="#orgf96e7c0">24</a>.
</p>
<div class="org-src-container">
@ -928,22 +1109,22 @@ We compute the PSD of each track and we plot the PSD of the Z motion for the gro
</div>
<div id="orga4d8654" class="figure">
<div id="org69a4967" class="figure">
<p><img src="figs/meas5_z_psd.png" alt="meas5_z_psd.png" />
</p>
<p><span class="figure-number">Figure 20: </span>PSD of the ground and marble in the Z direction</p>
<p><span class="figure-number">Figure 23: </span>PSD of the ground and marble in the Z direction</p>
</div>
<div id="orgcf2a406" class="figure">
<div id="orgf96e7c0" class="figure">
<p><img src="figs/meas5_y_psd.png" alt="meas5_y_psd.png" />
</p>
<p><span class="figure-number">Figure 21: </span>PSD of the ground and marble in the Y direction</p>
<p><span class="figure-number">Figure 24: </span>PSD of the ground and marble in the Y direction</p>
</div>
<p>
Then, instead of looking at the Power Spectral Density, we can try to estimate the transfer function from a ground motion to the motion of the marble.
The transfer functions are shown on figure <a href="#org4a54f35">22</a> and the coherence on figure <a href="#orge7213d2">23</a>.
The transfer functions are shown on figure <a href="#orgd1bec89">25</a> and the coherence on figure <a href="#org4f5ea21">26</a>.
</p>
<div class="org-src-container">
@ -953,10 +1134,10 @@ The transfer functions are shown on figure <a href="#org4a54f35">22</a> and the
</div>
<div id="org4a54f35" class="figure">
<div id="orgd1bec89" class="figure">
<p><img src="figs/meas5_tf.png" alt="meas5_tf.png" />
</p>
<p><span class="figure-number">Figure 22: </span>Transfer function estimation - measurement 5</p>
<p><span class="figure-number">Figure 25: </span>Transfer function estimation - measurement 5</p>
</div>
<div class="org-src-container">
@ -966,10 +1147,10 @@ The transfer functions are shown on figure <a href="#org4a54f35">22</a> and the
</div>
<div id="orge7213d2" class="figure">
<div id="org4f5ea21" class="figure">
<p><img src="figs/meas5_coh.png" alt="meas5_coh.png" />
</p>
<p><span class="figure-number">Figure 23: </span>Coherence - measurement 5</p>
<p><span class="figure-number">Figure 26: </span>Coherence - measurement 5</p>
</div>
<div class="important">
@ -984,7 +1165,7 @@ But the coherence is not good above 20Hz, so it is difficult to estimate resonan
</div>
<div id="postamble" class="status">
<p class="author">Author: Thomas Dehaeze</p>
<p class="date">Created: 2019-03-15 ven. 16:46</p>
<p class="date">Created: 2019-03-19 mar. 16:42</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>

View File

@ -23,25 +23,22 @@
[[../index.org][Back to main page]].
* Measurement Description
#+begin_src matlab :exports none :results silent
<<matlab-init>>
#+end_src
* Measurement Description
#+name: fig:setup_picture
#+caption: Picture of the setup for the measurement
#+attr_latex: :scale 1
[[file:./figs/setup_picture.png]]
Sensors:
- 3 L-4C ([[file:../actuators-sensors/index.org::*L-4C][Documentation]]) [[file:~/MEGA/These/Measurements/actuators-sensors/index.org::tab:L4C][table]]
The sensor used are 3 L-4C geophones ([[file:../actuators-sensors/index.org::*L-4C][Documentation]]).
Each motor are turn off and then on.
The goal is to see what noise is injected in the system due to the regulation loop of each stage.
* Importation of the data
#+begin_src matlab :exports none :results silent
<<matlab-init>>
#+end_src
First, load all the measurement files:
#+begin_src matlab :exports code :results silent
meas = {};
@ -94,10 +91,97 @@ For the measurement 5, the channels are shown table [[tab:meas_5]].
|---------+------------------+-------------------+------------------+-------------------|
| Meas. 5 | Input 1: Floor Z | Input 2: Marble Z | Input 3: Floor Y | Input 4: Marble Y |
* Variables for analysis
We define the sampling frequency and the time vectors for the plots.
#+begin_src matlab :exports code :results silent
Fs = 256; % [Hz]
dt = 1/(Fs);
t1 = dt*[0:length(meas{1}.Track1)-1];
t2 = dt*[0:length(meas{2}.Track1)-1];
t3 = dt*[0:length(meas{3}.Track1)-1];
t4 = dt*[0:length(meas{4}.Track1)-1];
t5 = dt*[0:length(meas{5}.Track1)-1];
#+end_src
For the frequency analysis, we define the frequency limits for the plot.
#+begin_src matlab :exports code :results silent
fmin = 1; % [Hz]
fmax = 100; % [Hz]
#+end_src
Then we define the windows that will be used to average the results.
#+begin_src matlab :exports code :results silent
psd_window = hanning(2*fmin/dt);
#+end_src
* Coherence between the two vertical geophones on the Tilt Stage
We first compute the coherence between the two geophones located on the tilt stage. The result is shown on figure [[fig:coherence_vertical_tilt_sensors]].
#+begin_src matlab :results none
[coh, f] = mscohere(meas{1}.Track1(:), meas{1}.Track2(:), psd_window, [], [], Fs);
#+end_src
#+begin_src matlab :results none :exports none
figure;
plot(f, coh);
set(gca, 'xscale', 'log');
ylim([0, 1]);
xlabel('Frequency [Hz]'); ylabel('Coherence');
#+end_src
#+NAME: fig:coherence_vertical_tilt_sensors
#+HEADER: :tangle no :exports results :results raw :noweb yes
#+begin_src matlab :var filepath="figs/coherence_vertical_tilt_sensors.pdf" :var figsize="normal-normal" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src
#+NAME: fig:coherence_vertical_tilt_sensors
#+CAPTION: Coherence between the two vertical sensors positionned on the Tilt Stage
#+RESULTS: fig:coherence_vertical_tilt_sensors
[[file:figs/coherence_vertical_tilt_sensors.png]]
We then compute the transfer function from one sensor to the other (figure [[fig:tf_vertical_tilt_sensors]]).
#+begin_src matlab :results none
[tf23, f] = tfestimate(meas{1}.Track1(:), meas{1}.Track2(:), psd_window, [], [], Fs);
#+end_src
#+begin_src matlab :results none :exports none
figure;
ax1 = subaxis(2,1,1);
plot(f, abs(tf23));
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
set(gca, 'XTickLabel',[]);
ylabel('Magnitude [V/(m/s)]');
ax2 = subaxis(2,1,2);
plot(f, 180/pi*angle(tf23));
set(gca,'xscale','log');
yticks(-180:90:180);
ylim([-180 180]);
xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
linkaxes([ax1,ax2],'x');
#+end_src
#+NAME: fig:tf_vertical_tilt_sensors
#+HEADER: :tangle no :exports results :results raw :noweb yes
#+begin_src matlab :var filepath="figs/tf_vertical_tilt_sensors.pdf" :var figsize="wide-tall" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src
#+NAME: fig:tf_vertical_tilt_sensors
#+CAPTION: Transfer function from one vertical geophone on the tilt stage to the other vertical geophone on the tilt stage
#+RESULTS: fig:tf_vertical_tilt_sensors
[[file:figs/tf_vertical_tilt_sensors.png]]
Even though the coherence is not very good, we observe no resonance between the two sensors.
* Data Post Processing
When using two geophone sensors on the same tilt stage (measurements 1 and 2), we post-process the data to obtain the z displacement and the rotation of the tilt stage:
#+begin_src matlab :results silent
meas1_z = (meas{1}.Track1+meas{1}.Track2)/2;
meas1_tilt = (meas{1}.Track1-meas{1}.Track2)/2;
meas{1}.Track1 = meas1_z;
meas{1}.Track1_Y_Magnitude = 'Meter / second';
meas{1}.Track1_Name = 'Ry Z';
@ -115,39 +199,63 @@ When using two geophone sensors on the same tilt stage (measurements 1 and 2), w
meas{2}.Track2_Name = 'Ry Tilt';
#+end_src
* Variables for analysis
We define the sampling frequency and the time vectors for the plots.
* Normalization
Parameters of the geophone are defined below.
The transfer function from geophone velocity to measured voltage is shown on figure [[fig:L4C_bode_plot]].
#+begin_src matlab :exports code :results silent
Fs = 256; % [Hz]
dt = 1/(Fs);
t1 = dt*[1:length(meas{1}.Track1)];
t2 = dt*[1:length(meas{2}.Track1)];
t3 = dt*[1:length(meas{3}.Track1)];
t4 = dt*[1:length(meas{4}.Track1)];
t5 = dt*[1:length(meas{5}.Track1)];
Measurements will be normalized by the inverse of this transfer function in order to go from voltage measurement to velocity measurement.
#+begin_src matlab :results none
L4C_w0 = 2*pi; % [rad/s]
L4C_ksi = 0.28;
L4C_G0 = 276.8; % [V/(m/s)]
L4C_G = L4C_G0*(s/L4C_w0)^2/((s/L4C_w0)^2 + 2*L4C_ksi*(s/L4C_w0) + 1);
#+end_src
For the frequency analysis, we define the frequency limits for the plot.
#+begin_src matlab :exports code :results silent
fmin = 1; % [Hz]
fmax = 100; % [Hz]
#+begin_src matlab :results none :exports none
freqs = logspace(-2, 2, 1000);
figure;
ax1 = subaxis(2,1,1);
plot(freqs, abs(squeeze(freqresp(L4C_G, freqs, 'Hz'))));
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
set(gca, 'XTickLabel',[]);
ylabel('Magnitude [V/(m/s)]');
ax2 = subaxis(2,1,2);
plot(freqs, 180/pi*angle(squeeze(freqresp(L4C_G, freqs, 'Hz'))));
set(gca,'xscale','log');
yticks(-180:90:180);
ylim([-180 180]);
xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
linkaxes([ax1,ax2],'x');
#+end_src
Then we define the windows that will be used to average the results.
#+begin_src matlab :exports code :results silent
psd_window = hanning(2*fmin/dt);
#+NAME: fig:L4C_bode_plot
#+HEADER: :tangle no :exports results :results raw :noweb yes
#+begin_src matlab :var filepath="figs/L4C_bode_plot.pdf" :var figsize="wide-tall" :post pdf2svg(file=*this*, ext="png")
<<plt-matlab>>
#+end_src
#+NAME: fig:L4C_bode_plot
#+CAPTION: Bode plot of the L4C Geophone
#+RESULTS: fig:L4C_bode_plot
[[file:figs/L4C_bode_plot.png]]
Time domain data are just normalized using the sensibility of the sensor ($276.8 V/m/s$).
* Measurement 1 - Effect of Ty stage
The configuration for this measurement is shown table [[tab:conf_meas1]].
#+CAPTION: Stages configuration - Measurement 1
#+NAME: tab:conf_meas1
| Time | 0-309 | 309-end |
|------+-------+---------|
| Ty | OFF | ON |
| Time | 0-309 | 309-end |
|----------+-------+---------|
| Ty | OFF | *ON* |
| Ry | OFF | OFF |
| SlipRing | OFF | OFF |
| Spindle | OFF | OFF |
| Hexa | OFF | OFF |
We then plot the measurements in time domain (figure [[fig:meas1]]).
@ -159,9 +267,9 @@ We then plot the measurements in time domain (figure [[fig:meas1]]).
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(t1(ceil(300/dt):ceil(340/dt)), meas{1}.Track1(ceil(300/dt):ceil(340/dt)));
plot(t1(ceil(300/dt):ceil(340/dt)), meas{1}.Track2(ceil(300/dt):ceil(340/dt)));
plot(t1(ceil(300/dt):ceil(340/dt)), meas{1}.Track3(ceil(300/dt):ceil(340/dt)));
plot(t1(ceil(300/dt):ceil(340/dt)), (1/276.8).*meas{1}.Track1(ceil(300/dt):ceil(340/dt)));
plot(t1(ceil(300/dt):ceil(340/dt)), (1/276.8).*meas{1}.Track2(ceil(300/dt):ceil(340/dt)));
plot(t1(ceil(300/dt):ceil(340/dt)), (1/276.8).*meas{1}.Track3(ceil(300/dt):ceil(340/dt)));
hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{1}.Track1_Name, meas{1}.Track2_Name, meas{1}.Track3_Name}, 'Location', 'northeast')
@ -181,7 +289,7 @@ We then plot the measurements in time domain (figure [[fig:meas1]]).
To understand what is going on, instead of looking at the velocity, we can look at the displacement by integrating the data. The displacement is computed by integrating the velocity using =cumtrapz= function.
#+begin_src matlab :exports code :results silent
tdisp = t1(ceil(300/dt):ceil(340/dt));
xdisp = cumtrapz(tdisp, meas{1}.Track3(ceil(300/dt):ceil(340/dt)));
xdisp = cumtrapz(tdisp, (1/276.8).*meas{1}.Track3(ceil(300/dt):ceil(340/dt)));
#+end_src
Then we plot the position with respect to time (figure [[fig:meas1_disp]]).
@ -206,14 +314,14 @@ Then we plot the position with respect to time (figure [[fig:meas1_disp]]).
We when compute the power spectral density of each measurement before and after turning on the stage.
#+begin_src matlab :exports code :results silent
[pxx111, f111] = pwelch(meas{1}.Track1(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx112, f112] = pwelch(meas{1}.Track1(ceil(350/dt):end), psd_window, [], [], Fs);
[pxx111, f11] = pwelch(meas{1}.Track1(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx112, f12] = pwelch(meas{1}.Track1(ceil(350/dt):end), psd_window, [], [], Fs);
[pxx121, f121] = pwelch(meas{1}.Track2(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx122, f122] = pwelch(meas{1}.Track2(ceil(350/dt):end), psd_window, [], [], Fs);
[pxx121, ~] = pwelch(meas{1}.Track2(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx122, ~] = pwelch(meas{1}.Track2(ceil(350/dt):end), psd_window, [], [], Fs);
[pxx131, f131] = pwelch(meas{1}.Track3(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx132, f132] = pwelch(meas{1}.Track3(ceil(350/dt):end), psd_window, [], [], Fs);
[pxx131, ~] = pwelch(meas{1}.Track3(1:ceil(300/dt)), psd_window, [], [], Fs);
[pxx132, ~] = pwelch(meas{1}.Track3(ceil(350/dt):end), psd_window, [], [], Fs);
#+end_src
We finally plot the power spectral density of each track (figures [[fig:meas1_ry_z_psd]], [[fig:meas1_ry_tilt_psd]], [[fig:meas1_ty_y_psd]]).
@ -221,8 +329,8 @@ We finally plot the power spectral density of each track (figures [[fig:meas1_ry
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f111, sqrt(pxx111));
plot(f112, sqrt(pxx112));
plot(f11, sqrt(pxx111)./abs(squeeze(freqresp(L4C_G, f11, 'Hz'))));
plot(f12, sqrt(pxx112)./abs(squeeze(freqresp(L4C_G, f12, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -246,8 +354,8 @@ We finally plot the power spectral density of each track (figures [[fig:meas1_ry
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f121, sqrt(pxx121));
plot(f122, sqrt(pxx122));
plot(f11, sqrt(pxx121)./abs(squeeze(freqresp(L4C_G, f11, 'Hz'))));
plot(f12, sqrt(pxx122)./abs(squeeze(freqresp(L4C_G, f12, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -271,8 +379,8 @@ We finally plot the power spectral density of each track (figures [[fig:meas1_ry
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f131, sqrt(pxx131));
plot(f132, sqrt(pxx132));
plot(f11, sqrt(pxx131)./abs(squeeze(freqresp(L4C_G, f11, 'Hz'))));
plot(f12, sqrt(pxx132)./abs(squeeze(freqresp(L4C_G, f12, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -303,26 +411,30 @@ It does not seems to have any effect on the Z motion of the tilt stage.
#+end_important
* Measurement 2 - Effect of Ry stage
The tilt stage is turned ON at around 326 seconds (table [[tab:conf_meas2]]).
#+CAPTION: Stages configuration - Measurement 2
#+NAME: tab:conf_meas2
| Time | 0-326 | 326-end |
|------+-------+---------|
| Tilt | OFF | ON |
| Time | 0-326 | 326-end |
|----------+-------+---------|
| Ty | OFF | OFF |
| Ry | OFF | *ON* |
| SlipRing | OFF | OFF |
| Spindle | OFF | OFF |
| Hexa | OFF | OFF |
We plot the time domain (figure [[fig:meas2]]) and we don't observe anything special in the time domain.
#+begin_src matlab :exports results :results silent
figure;
hold on;
plot(t2(ceil(300/dt):ceil(350/dt)), meas{2}.Track1(ceil(300/dt):ceil(350/dt)));
plot(t2(ceil(300/dt):ceil(350/dt)), meas{2}.Track3(ceil(300/dt):ceil(350/dt)));
plot(t2(ceil(300/dt):ceil(350/dt)), meas{2}.Track2(ceil(300/dt):ceil(350/dt)));
plot(t2(ceil(300/dt):ceil(350/dt)), (1/276.8).*meas{2}.Track1(ceil(300/dt):ceil(350/dt)));
plot(t2(ceil(300/dt):ceil(350/dt)), (1/276.8).*meas{2}.Track3(ceil(300/dt):ceil(350/dt)));
plot(t2(ceil(300/dt):ceil(350/dt)), (1/276.8).*meas{2}.Track2(ceil(300/dt):ceil(350/dt)));
hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{2}.Track1_Name, meas{2}.Track2_Name, meas{2}.Track3_Name}, 'Location', 'northeast')
xlim([300, 350]);
#+end_src
#+NAME: fig:meas2
@ -338,21 +450,21 @@ We plot the time domain (figure [[fig:meas2]]) and we don't observe anything spe
We compute the PSD of each track and we plot them (figures [[fig:meas2_ry_z_psd]], [[fig:meas2_ry_tilt_psd]] and [[fig:meas2_ty_y_psd]] ).
#+begin_src matlab :exports code :results silent
[pxx211, f211] = pwelch(meas{2}.Track1(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx212, f212] = pwelch(meas{2}.Track1(ceil(326/dt):end), psd_window, [], [], Fs);
[pxx211, f21] = pwelch(meas{2}.Track1(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx212, f22] = pwelch(meas{2}.Track1(ceil(326/dt):end), psd_window, [], [], Fs);
[pxx221, f221] = pwelch(meas{2}.Track2(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx222, f222] = pwelch(meas{2}.Track2(ceil(326/dt):end), psd_window, [], [], Fs);
[pxx221, ~] = pwelch(meas{2}.Track2(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx222, ~] = pwelch(meas{2}.Track2(ceil(326/dt):end), psd_window, [], [], Fs);
[pxx231, f231] = pwelch(meas{2}.Track3(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx232, f232] = pwelch(meas{2}.Track3(ceil(326/dt):end), psd_window, [], [], Fs);
[pxx231, ~] = pwelch(meas{2}.Track3(1:ceil(326/dt)), psd_window, [], [], Fs);
[pxx232, ~] = pwelch(meas{2}.Track3(ceil(326/dt):end), psd_window, [], [], Fs);
#+end_src
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f211, sqrt(pxx211));
plot(f212, sqrt(pxx212));
plot(f21, sqrt(pxx211)./abs(squeeze(freqresp(L4C_G, f21, 'Hz'))));
plot(f22, sqrt(pxx212)./abs(squeeze(freqresp(L4C_G, f22, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -376,8 +488,8 @@ We compute the PSD of each track and we plot them (figures [[fig:meas2_ry_z_psd]
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f221, sqrt(pxx221));
plot(f222, sqrt(pxx222));
plot(f21, sqrt(pxx221)./abs(squeeze(freqresp(L4C_G, f21, 'Hz'))));
plot(f22, sqrt(pxx222)./abs(squeeze(freqresp(L4C_G, f22, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -401,8 +513,8 @@ We compute the PSD of each track and we plot them (figures [[fig:meas2_ry_z_psd]
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f231, sqrt(pxx231));
plot(f232, sqrt(pxx232));
plot(f21, sqrt(pxx231)./abs(squeeze(freqresp(L4C_G, f21, 'Hz'))));
plot(f22, sqrt(pxx232)./abs(squeeze(freqresp(L4C_G, f22, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -428,24 +540,26 @@ We compute the PSD of each track and we plot them (figures [[fig:meas2_ry_z_psd]
#+end_important
* Measurement 3 - Effect of the Hexapod
The hexapod is turned off after 406 seconds (table [[tab:conf_meas3]]).
#+CAPTION: Stages configuration - Measurement 3
#+NAME: tab:conf_meas3
| Time | 0-406 | 406-end |
|------+-------+---------|
| Tilt | ON | ON |
| Hexa | ON | OFF |
| Time | 0-406 | 406-end |
|----------+-------+---------|
| Ty | OFF | OFF |
| Ry | *ON* | *ON* |
| SlipRing | OFF | OFF |
| Spindle | OFF | OFF |
| Hexa | *ON* | OFF |
The time domain result is shown figure [[fig:meas3]].
#+begin_src matlab :exports results :results silent
figure;
hold on;
plot(t3(ceil(380/dt):ceil(420/dt)), meas{3}.Track1(ceil(380/dt):ceil(420/dt)));
plot(t3(ceil(380/dt):ceil(420/dt)), meas{3}.Track2(ceil(380/dt):ceil(420/dt)));
plot(t3(ceil(380/dt):ceil(420/dt)), meas{3}.Track3(ceil(380/dt):ceil(420/dt)));
plot(t3(ceil(380/dt):ceil(420/dt)), (1/276.8).*meas{3}.Track1(ceil(380/dt):ceil(420/dt)));
plot(t3(ceil(380/dt):ceil(420/dt)), (1/276.8).*meas{3}.Track2(ceil(380/dt):ceil(420/dt)));
plot(t3(ceil(380/dt):ceil(420/dt)), (1/276.8).*meas{3}.Track3(ceil(380/dt):ceil(420/dt)));
hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{3}.Track1_Name, meas{3}.Track2_Name, meas{3}.Track3_Name}, 'Location', 'northeast')
@ -464,21 +578,21 @@ The time domain result is shown figure [[fig:meas3]].
We then compute the PSD of each track before and after turning off the hexapod and plot the results in the figures [[fig:meas3_hexa_z_psd]], [[fig:meas3_ry_z_psd]] and [[fig:meas3_ty_y_psd]].
#+begin_src matlab :exports code :results silent
[pxx311, f311] = pwelch(meas{3}.Track1(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx312, f312] = pwelch(meas{3}.Track1(ceil(420/dt):end), psd_window, [], [], Fs);
[pxx311, f31] = pwelch(meas{3}.Track1(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx312, f32] = pwelch(meas{3}.Track1(ceil(420/dt):end), psd_window, [], [], Fs);
[pxx321, f321] = pwelch(meas{3}.Track2(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx322, f322] = pwelch(meas{3}.Track2(ceil(420/dt):end), psd_window, [], [], Fs);
[pxx321, ~] = pwelch(meas{3}.Track2(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx322, ~] = pwelch(meas{3}.Track2(ceil(420/dt):end), psd_window, [], [], Fs);
[pxx331, f331] = pwelch(meas{3}.Track3(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx332, f332] = pwelch(meas{3}.Track3(ceil(420/dt):end), psd_window, [], [], Fs);
[pxx331, ~] = pwelch(meas{3}.Track3(1:ceil(400/dt)), psd_window, [], [], Fs);
[pxx332, ~] = pwelch(meas{3}.Track3(ceil(420/dt):end), psd_window, [], [], Fs);
#+end_src
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f311, sqrt(pxx311));
plot(f312, sqrt(pxx312));
plot(f31, sqrt(pxx311)./abs(squeeze(freqresp(L4C_G, f31, 'Hz'))));
plot(f32, sqrt(pxx312)./abs(squeeze(freqresp(L4C_G, f32, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -502,8 +616,8 @@ We then compute the PSD of each track before and after turning off the hexapod a
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f321, sqrt(pxx321));
plot(f322, sqrt(pxx322));
plot(f31, sqrt(pxx321)./abs(squeeze(freqresp(L4C_G, f31, 'Hz'))));
plot(f32, sqrt(pxx322)./abs(squeeze(freqresp(L4C_G, f32, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -527,8 +641,8 @@ We then compute the PSD of each track before and after turning off the hexapod a
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f331, sqrt(pxx331));
plot(f332, sqrt(pxx332));
plot(f31, sqrt(pxx331)./abs(squeeze(freqresp(L4C_G, f31, 'Hz'))));
plot(f32, sqrt(pxx332)./abs(squeeze(freqresp(L4C_G, f32, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -556,23 +670,24 @@ Turning ON induces some motion on the hexapod in the z direction (figure [[fig:m
#+end_important
* Measurement 4 - Effect of the Splip-Ring and Spindle
The slip ring is turned on at 300s, then the spindle is turned on at 620s (table [[tab:conf_meas4]]). The time domain signals are shown figure [[fig:meas4]].
#+CAPTION: Stages configuration - Measurement 4
#+NAME: tab:conf_meas4
| Time | 0-300 | 300-620 | 620-end |
|----------+-------+---------+---------|
| SlipRing | OFF | ON | ON |
| Ty | OFF | OFF | OFF |
| Ry | OFF | OFF | OFF |
| SlipRing | OFF | *ON* | *ON* |
| Spindle | OFF | OFF | *ON* |
| Hexa | OFF | OFF | OFF |
| Spindle | OFF | OFF | ON |
#+begin_src matlab :exports results :results silent
figure;
hold on;
plot(t4, meas{4}.Track1);
plot(t4, meas{4}.Track2);
plot(t4, meas{4}.Track3);
plot(t4, (1/276.8).*meas{4}.Track1);
plot(t4, (1/276.8).*meas{4}.Track2);
plot(t4, (1/276.8).*meas{4}.Track3);
hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{4}.Track1_Name, meas{4}.Track2_Name, meas{4}.Track3_Name}, 'Location', 'southwest')
@ -591,25 +706,25 @@ The slip ring is turned on at 300s, then the spindle is turned on at 620s (table
The PSD of each track are computed using the code below.
#+begin_src matlab :exports none :results silent
[pxx411, f411] = pwelch(meas{4}.Track1(1:ceil(280/dt)), psd_window, [], [], Fs);
[pxx412, f412] = pwelch(meas{4}.Track1(ceil(280/dt):ceil(600/dt)), psd_window, [], [], Fs);
[pxx413, f413] = pwelch(meas{4}.Track1(ceil(640/dt):end), psd_window, [], [], Fs);
[pxx411, f41] = pwelch(meas{4}.Track1(1:ceil(280/dt)), psd_window, [], [], Fs);
[pxx412, f42] = pwelch(meas{4}.Track1(ceil(280/dt):ceil(600/dt)), psd_window, [], [], Fs);
[pxx413, f43] = pwelch(meas{4}.Track1(ceil(640/dt):end), psd_window, [], [], Fs);
[pxx421, f421] = pwelch(meas{4}.Track2(1:ceil(280/dt)), psd_window, [], [], Fs);
[pxx422, f422] = pwelch(meas{4}.Track2(ceil(280/dt):ceil(600/dt)), psd_window, [], [], Fs);
[pxx423, f423] = pwelch(meas{4}.Track2(ceil(640/dt):end), psd_window, [], [], Fs);
[pxx421, ~] = pwelch(meas{4}.Track2(1:ceil(280/dt)), psd_window, [], [], Fs);
[pxx422, ~] = pwelch(meas{4}.Track2(ceil(280/dt):ceil(600/dt)), psd_window, [], [], Fs);
[pxx423, ~] = pwelch(meas{4}.Track2(ceil(640/dt):end), psd_window, [], [], Fs);
[pxx431, f431] = pwelch(meas{4}.Track3(1:ceil(280/dt)), psd_window, [], [], Fs);
[pxx432, f432] = pwelch(meas{4}.Track3(ceil(280/dt):ceil(600/dt)), psd_window, [], [], Fs);
[pxx433, f433] = pwelch(meas{4}.Track3(ceil(640/dt):end), psd_window, [], [], Fs);
[pxx431, ~] = pwelch(meas{4}.Track3(1:ceil(280/dt)), psd_window, [], [], Fs);
[pxx432, ~] = pwelch(meas{4}.Track3(ceil(280/dt):ceil(600/dt)), psd_window, [], [], Fs);
[pxx433, ~] = pwelch(meas{4}.Track3(ceil(640/dt):end), psd_window, [], [], Fs);
#+end_src
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f411, sqrt(pxx411));
plot(f412, sqrt(pxx412));
plot(f413, sqrt(pxx413));
plot(f41, sqrt(pxx411)./abs(squeeze(freqresp(L4C_G, f41, 'Hz'))));
plot(f42, sqrt(pxx412)./abs(squeeze(freqresp(L4C_G, f42, 'Hz'))));
plot(f43, sqrt(pxx413)./abs(squeeze(freqresp(L4C_G, f43, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -633,9 +748,9 @@ The PSD of each track are computed using the code below.
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f421, sqrt(pxx421));
plot(f422, sqrt(pxx422));
plot(f423, sqrt(pxx423));
plot(f41, sqrt(pxx421)./abs(squeeze(freqresp(L4C_G, f41, 'Hz'))));
plot(f42, sqrt(pxx422)./abs(squeeze(freqresp(L4C_G, f42, 'Hz'))));
plot(f43, sqrt(pxx423)./abs(squeeze(freqresp(L4C_G, f43, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -660,9 +775,9 @@ The PSD of each track are computed using the code below.
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f431, sqrt(pxx431));
plot(f432, sqrt(pxx432));
plot(f433, sqrt(pxx433));
plot(f41, sqrt(pxx431)./abs(squeeze(freqresp(L4C_G, f41, 'Hz'))));
plot(f42, sqrt(pxx432)./abs(squeeze(freqresp(L4C_G, f42, 'Hz'))));
plot(f43, sqrt(pxx433)./abs(squeeze(freqresp(L4C_G, f43, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -703,10 +818,10 @@ The time domain signals are shown on figure [[fig:meas5]].
#+begin_src matlab :exports results :results silent
figure;
hold on;
plot(t5, meas{5}.Track1);
plot(t5, meas{5}.Track2);
plot(t5, meas{5}.Track3);
plot(t5, meas{5}.Track4);
plot(t5, (1/276.8).*meas{5}.Track1);
plot(t5, (1/276.8).*meas{5}.Track2);
plot(t5, (1/276.8).*meas{5}.Track3);
plot(t5, (1/276.8).*meas{5}.Track4);
hold off;
xlabel('Time [s]'); ylabel('Velocity [m/s]');
legend({meas{5}.Track1_Name, meas{5}.Track2_Name, meas{5}.Track3_Name, meas{5}.Track4_Name}, 'Location', 'northeast')
@ -735,8 +850,8 @@ We compute the PSD of each track and we plot the PSD of the Z motion for the gro
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f51, sqrt(pxx51));
plot(f52, sqrt(pxx52));
plot(f51, sqrt(pxx51)./abs(squeeze(freqresp(L4C_G, f51, 'Hz'))));
plot(f52, sqrt(pxx52)./abs(squeeze(freqresp(L4C_G, f52, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');
@ -759,8 +874,8 @@ We compute the PSD of each track and we plot the PSD of the Z motion for the gro
#+begin_src matlab :exports none :results silent
figure;
hold on;
plot(f53, sqrt(pxx53));
plot(f54, sqrt(pxx54));
plot(f53, sqrt(pxx53)./abs(squeeze(freqresp(L4C_G, f53, 'Hz'))));
plot(f54, sqrt(pxx54)./abs(squeeze(freqresp(L4C_G, f54, 'Hz'))));
xlim([fmin, fmax]);
xticks([1, 10, 100]);
set(gca, 'xscale', 'log'); set(gca, 'yscale', 'log');